+ {{title}} +
++ {{#if custom_excerpt}}{{custom_excerpt}}{{else}}{{excerpt words="18"}}{{/if}} +
+ +diff --git a/assets/built/broadsheet-hybrid.css b/assets/built/broadsheet-hybrid.css new file mode 100644 index 0000000..d63908c --- /dev/null +++ b/assets/built/broadsheet-hybrid.css @@ -0,0 +1,718 @@ +/* ============================================================ + FT & NYT HYBRID BROADSHEET DESIGN TOKENS & SYSTEM + Aesthetics: FT Warm Linen (#FFF1E5) + Hairline Borders (#E2D3C4) + Structure: NYT 3-Zone Front Page Lead + Opinion Rail + 4-Col Ribbons + Responsive: Mobile (iPhone) to Desktop 1440px + ============================================================ */ + +:root { + --ft-bg-paper: #FFF1E5; + --ft-bg-card: #F8EBE0; + --ft-bg-contrast: #201D1A; + --ft-ink-primary: #111111; + --ft-ink-secondary: #4A443E; + --ft-ink-muted: #7A726A; + --ft-accent-green: #0E4D36; + --ft-accent-green-light: #E7F3EE; + --ft-accent-burgundy: #9E2A2B; + --ft-border-hairline: #E2D3C4; + --ft-border-bold: #111111; +} + +body { + background-color: var(--ft-bg-paper) !important; + color: var(--ft-ink-primary) !important; + font-family: 'Source Serif 4', Georgia, serif; + font-size: 16px; + line-height: 1.55; + -webkit-font-smoothing: antialiased; +} + +.site { + background-color: var(--ft-bg-paper) !important; +} + +/* 1. TOP TELEMETRY BAR */ +.ft-top-telemetry-bar { + background: #181513; + color: #E2D5C7; + font-family: 'Inter', -apple-system, sans-serif; + font-size: 11px; + padding: 7px 32px; + border-bottom: 1px solid #2D2723; +} +.ft-telemetry-inner { + max-width: 1320px; + margin: 0 auto; + display: flex; + justify-content: space-between; + align-items: center; +} +.ft-tel-left { + display: flex; + gap: 12px; + align-items: center; +} +.ft-tel-date { + color: #FFF; + font-weight: 600; +} +.ft-tel-bullet { + color: #665D56; +} +.ft-tel-center { + display: flex; + gap: 12px; + align-items: center; + font-family: 'JetBrains Mono', monospace; + font-size: 10.5px; +} +.ft-badge-up { + background: var(--ft-accent-green); + color: #fff; + padding: 1px 5px; + border-radius: 2px; + font-size: 9px; + font-weight: 700; +} +.ft-tel-right { + display: flex; + gap: 14px; + align-items: center; +} +.ft-tel-link { + color: #E2D5C7; + text-decoration: none; + font-weight: 600; +} +.ft-tel-link:hover { color: #FFF; } +.ft-tel-btn { + background: var(--ft-accent-green); + color: #fff !important; + padding: 3px 8px; + border-radius: 2px; + font-weight: 700; + text-transform: uppercase; + font-size: 10px; + text-decoration: none; +} + +/* 2. REFINED MASTHEAD & NAVIGATION */ +.ft-nav { + background: var(--ft-bg-paper) !important; + border-bottom: 2px solid var(--ft-border-bold) !important; +} +.ft-nav-inner { + max-width: 1320px !important; + padding: 0 32px !important; +} +.ft-nav-logo { + font-family: 'Cinzel', 'Playfair Display', Georgia, serif !important; + font-size: 26px !important; + font-weight: 900 !important; + letter-spacing: 0.16em !important; + color: var(--ft-ink-primary) !important; +} + +/* 3. FRONT PAGE LEAD GRID (NYT 3-ZONE) */ +.ft-broadsheet-lead-zone { + max-width: 1320px; + margin: 0 auto; + padding: 24px 32px 32px; + border-bottom: 1px solid var(--ft-border-hairline); +} +.ft-lead-grid { + display: grid; + grid-template-columns: 3.2fr 4.3fr 2.5fr; + gap: 28px; +} + +/* ZONE 1 (Left 32%) */ +.ft-lead-col-left { + padding-right: 24px; + border-right: 1px solid var(--ft-border-hairline); + display: flex; + flex-direction: column; + gap: 24px; +} +.ft-lead-kicker { + font-family: 'Inter', -apple-system, sans-serif; + font-size: 11px; + font-weight: 700; + text-transform: uppercase; + letter-spacing: 0.12em; + color: var(--ft-accent-green); + display: block; + margin-bottom: 6px; +} +.ft-lead-kicker a { color: inherit; text-decoration: none; } +.ft-kicker-burgundy { color: var(--ft-accent-burgundy) !important; } +.ft-lead-headline { + font-family: 'Newsreader', 'Source Serif 4', Georgia, serif; + font-size: 32px; + line-height: 1.15; + font-weight: 700; + color: var(--ft-ink-primary); + margin-bottom: 12px; +} +.ft-lead-headline a { color: inherit; text-decoration: none; } +.ft-lead-headline a:hover { color: var(--ft-accent-green); } +.ft-dateline { + font-family: 'Inter', -apple-system, sans-serif; + font-weight: 800; + font-size: 12px; + color: var(--ft-ink-primary); + text-transform: uppercase; + letter-spacing: 0.05em; +} +.ft-lead-prose { + font-size: 16px; + line-height: 1.6; + color: var(--ft-ink-secondary); + margin-bottom: 16px; +} + +/* SEMAFOR TAKEAWAY DRAWER */ +.ft-takeaway-drawer { + background: var(--ft-bg-card); + border: 1px solid var(--ft-border-hairline); + border-left: 3px solid var(--ft-accent-green); + padding: 14px 16px; + display: flex; + flex-direction: column; + gap: 8px; + font-size: 13.5px; + border-radius: 2px; + margin-bottom: 14px; +} +.ft-takeaway-row { + display: grid; + grid-template-columns: 80px 1fr; + gap: 10px; + line-height: 1.45; +} +.ft-takeaway-tag { + font-family: 'Inter', -apple-system, sans-serif; + font-size: 10px; + font-weight: 700; + text-transform: uppercase; + letter-spacing: 0.06em; + color: var(--ft-accent-green); +} +.ft-lead-byline { + font-family: 'Inter', -apple-system, sans-serif; + font-size: 11.5px; + color: var(--ft-ink-muted); +} +.ft-lead-byline strong, .ft-lead-byline a { + color: var(--ft-ink-primary); + text-decoration: none; +} +.ft-lead-byline a:hover { text-decoration: underline; } + +.ft-lead-secondary-story { + border-top: 1px solid var(--ft-border-hairline); + padding-top: 20px; +} +.ft-secondary-headline { + font-family: 'Newsreader', 'Source Serif 4', Georgia, serif; + font-size: 20px; + line-height: 1.25; + font-weight: 600; + margin-bottom: 8px; +} +.ft-secondary-headline a { color: inherit; text-decoration: none; } +.ft-secondary-headline a:hover { color: var(--ft-accent-green); } +.ft-secondary-excerpt { + font-size: 14px; + color: var(--ft-ink-secondary); + line-height: 1.45; + margin-bottom: 8px; +} + +/* ZONE 2 (Center 43%) */ +.ft-lead-col-center { + padding-right: 24px; + border-right: 1px solid var(--ft-border-hairline); + display: flex; + flex-direction: column; + gap: 20px; +} +.ft-visual-frame { + width: 100%; + height: 310px; + background: #D8C8B8; + border: 1px solid var(--ft-border-hairline); + overflow: hidden; + border-radius: 2px; +} +.ft-visual-frame img { + width: 100%; + height: 100%; + object-fit: cover; + transition: transform 0.3s ease; +} +.ft-visual-frame:hover img { transform: scale(1.02); } +.ft-photo-caption { + font-family: 'Inter', -apple-system, sans-serif; + font-size: 11.5px; + color: var(--ft-ink-muted); + line-height: 1.4; + margin-top: 6px; +} +.ft-photo-credit { + text-transform: uppercase; + font-size: 10px; +} +.ft-center-story-body { margin-top: 8px; } +.ft-center-headline { + font-family: 'Newsreader', 'Source Serif 4', Georgia, serif; + font-size: 26px; + line-height: 1.2; + font-weight: 700; + margin-bottom: 8px; +} +.ft-center-headline a { color: inherit; text-decoration: none; } +.ft-center-headline a:hover { color: var(--ft-accent-green); } +.ft-center-excerpt { + font-size: 15px; + color: var(--ft-ink-secondary); + line-height: 1.55; + margin-bottom: 8px; +} + +.ft-center-dual-split { + display: grid; + grid-template-columns: 1fr 1fr; + gap: 18px; + border-top: 1px solid var(--ft-border-hairline); + padding-top: 18px; +} +.ft-mini-card { + display: flex; + flex-direction: column; + gap: 6px; +} +.ft-mini-card-bordered { + padding-left: 18px; + border-left: 1px solid var(--ft-border-hairline); +} +.ft-mini-headline { + font-family: 'Newsreader', 'Source Serif 4', Georgia, serif; + font-size: 16.5px; + font-weight: 600; + line-height: 1.3; +} +.ft-mini-headline a { color: inherit; text-decoration: none; } +.ft-mini-headline a:hover { color: var(--ft-accent-green); } +.ft-mini-excerpt { + font-size: 13.5px; + color: var(--ft-ink-secondary); + line-height: 1.45; + margin-bottom: 4px; +} + +/* ZONE 3 (Right 25% - OPINION RAIL) */ +.ft-lead-col-right { + display: flex; + flex-direction: column; + gap: 20px; +} +.ft-rail-header { + border-top: 3px solid var(--ft-border-bold); + border-bottom: 1px solid var(--ft-border-hairline); + padding: 8px 0; + display: flex; + justify-content: space-between; + align-items: center; + font-family: 'Inter', -apple-system, sans-serif; + font-size: 11px; + font-weight: 800; + text-transform: uppercase; + letter-spacing: 0.12em; +} +.ft-rail-accent { color: var(--ft-accent-green); } + +.ft-jauhari-spotlight-card { + background: #201D1A; + color: #FFF1E5; + padding: 16px; + border-radius: 2px; + display: flex; + flex-direction: column; + gap: 10px; +} +.ft-jauhari-meta-row { + display: flex; + align-items: center; + gap: 12px; +} +.ft-jauhari-avatar-frame { + width: 44px; + height: 44px; + border-radius: 50%; + border: 2px solid var(--ft-accent-green); + overflow: hidden; + background: #444; + flex-shrink: 0; +} +.ft-jauhari-avatar-frame img { + width: 100%; + height: 100%; + object-fit: cover; +} +.ft-jauhari-info { + font-family: 'Inter', -apple-system, sans-serif; + line-height: 1.2; +} +.ft-jauhari-name { + font-size: 13px; + font-weight: 700; + color: #FFF; +} +.ft-jauhari-tag { + font-size: 10px; + text-transform: uppercase; + color: #92C5B2; + font-weight: 600; + letter-spacing: 0.06em; +} +.ft-jauhari-headline { + font-family: 'Newsreader', 'Source Serif 4', Georgia, serif; + font-size: 17px; + line-height: 1.3; + font-weight: 700; + color: #FFF1E5; +} +.ft-jauhari-headline a { color: inherit; text-decoration: none; } +.ft-jauhari-headline a:hover { color: #92C5B2; } +.ft-jauhari-quote { + font-size: 13px; + color: #D5C8BD; + line-height: 1.45; +} + +.ft-columnist-stack { + display: flex; + flex-direction: column; + gap: 14px; +} +.ft-columnist-row { + display: grid; + grid-template-columns: 42px 1fr; + gap: 12px; + align-items: flex-start; + padding-bottom: 12px; + border-bottom: 1px solid var(--ft-border-hairline); +} +.ft-col-avatar { + width: 42px; + height: 42px; + border-radius: 50%; + overflow: hidden; + border: 1px solid var(--ft-border-hairline); + background: #E8D8C8; +} +.ft-col-avatar img { + width: 100%; + height: 100%; + object-fit: cover; +} +.ft-col-details { + display: flex; + flex-direction: column; + gap: 3px; +} +.ft-col-byline { + font-family: 'Inter', -apple-system, sans-serif; + font-size: 11.5px; + font-weight: 700; + text-transform: uppercase; + color: var(--ft-accent-green); + letter-spacing: 0.05em; +} +.ft-col-byline a { color: inherit; text-decoration: none; } +.ft-col-bio-snippet { + font-size: 12.5px; + color: var(--ft-ink-secondary); + line-height: 1.35; +} + +.ft-wire-box { + background: var(--ft-bg-card); + border: 1px solid var(--ft-border-hairline); + border-top: 3px solid var(--ft-accent-burgundy); + padding: 14px; +} +.ft-wire-header { + font-family: 'Inter', -apple-system, sans-serif; + font-size: 10px; + font-weight: 800; + text-transform: uppercase; + letter-spacing: 0.1em; + color: var(--ft-accent-burgundy); + margin-bottom: 6px; +} +.ft-wire-item { + padding: 6px 0; + border-bottom: 1px solid var(--ft-border-hairline); +} +.ft-wire-item:last-child { border-bottom: none; } +.ft-wire-time { + font-family: 'JetBrains Mono', monospace; + font-size: 9.5px; + color: var(--ft-accent-burgundy); + font-weight: 700; +} +.ft-wire-title { + font-size: 12.5px; + font-weight: 600; + line-height: 1.35; + margin-top: 2px; +} +.ft-wire-title a { color: inherit; text-decoration: none; } +.ft-wire-title a:hover { color: var(--ft-accent-green); } + +/* 4. COMPUTATIONAL SUITE & HORIZONTAL TOPIC RIBBONS */ +.ft-broadsheet-engines-ribbons { + max-width: 1320px; + margin: 0 auto; + padding: 0 32px 48px; +} + +.ft-comp-dock { + background: var(--ft-bg-card); + border: 1px solid var(--ft-border-hairline); + border-top: 4px solid var(--ft-accent-green); + padding: 24px; + margin: 32px 0 40px; + border-radius: 2px; +} +.ft-comp-header { + display: flex; + justify-content: space-between; + align-items: center; + margin-bottom: 20px; +} +.ft-comp-title { + font-family: 'Cinzel', serif; + font-size: 20px; + font-weight: 700; + letter-spacing: 0.08em; + text-transform: uppercase; + color: var(--ft-ink-primary); +} +.ft-comp-subtitle { + font-size: 13px; + color: var(--ft-ink-muted); + font-family: 'Inter', -apple-system, sans-serif; +} +.ft-status-pill { + background: var(--ft-accent-green-light); + color: var(--ft-accent-green); + font-family: 'Inter', -apple-system, sans-serif; + font-size: 10px; + font-weight: 700; + padding: 3px 8px; + border-radius: 2px; + text-transform: uppercase; +} +.ft-comp-grid { + display: grid; + grid-template-columns: repeat(3, 1fr); + gap: 20px; +} +.ft-comp-card { + background: #fff; + border: 1px solid var(--ft-border-hairline); + padding: 18px; + display: flex; + flex-direction: column; + gap: 8px; + border-radius: 2px; +} +.ft-dock-badge { + align-self: flex-start; + background: var(--ft-accent-green-light); + color: var(--ft-accent-green); + font-family: 'Inter', -apple-system, sans-serif; + font-size: 9.5px; + font-weight: 700; + padding: 2px 6px; + border-radius: 2px; + text-transform: uppercase; +} +.ft-dock-name { + font-family: 'Newsreader', 'Source Serif 4', Georgia, serif; + font-size: 18px; + font-weight: 700; +} +.ft-dock-desc { + font-size: 13px; + color: var(--ft-ink-secondary); + line-height: 1.45; + margin-bottom: 8px; +} +.ft-dock-link { + font-family: 'Inter', -apple-system, sans-serif; + font-size: 11px; + font-weight: 700; + text-transform: uppercase; + letter-spacing: 0.06em; + color: var(--ft-accent-green); + text-decoration: none; + margin-top: auto; +} +.ft-dock-link:hover { text-decoration: underline; } + +/* HORIZONTAL TOPIC RIBBONS */ +.ft-section-ribbon { + padding: 28px 0; + border-bottom: 1px solid var(--ft-border-hairline); +} +.ft-ribbon-bar { + border-top: 2px solid var(--ft-border-bold); + border-bottom: 1px solid var(--ft-border-hairline); + padding: 7px 0; + margin-bottom: 20px; + display: flex; + justify-content: space-between; + align-items: center; +} +.ft-ribbon-tag-name { + font-family: 'Cinzel', serif; + font-size: 18px; + font-weight: 700; + letter-spacing: 0.08em; + text-transform: uppercase; +} +.ft-ribbon-tag-name a { color: inherit; text-decoration: none; } +.ft-ribbon-view-all { + font-family: 'Inter', -apple-system, sans-serif; + font-size: 11px; + font-weight: 700; + text-transform: uppercase; + color: var(--ft-accent-green); + text-decoration: none; +} +.ft-ribbon-grid-4 { + display: grid; + grid-template-columns: repeat(4, 1fr); + gap: 20px; +} +.ft-ribbon-card { + display: flex; + flex-direction: column; + gap: 8px; + padding-right: 16px; + border-right: 1px solid var(--ft-border-hairline); +} +.ft-ribbon-card:last-child { border-right: none; padding-right: 0; } +.ft-ribbon-thumb { + width: 100%; + height: 140px; + background: #E8D8C8; + border-radius: 2px; + overflow: hidden; + margin-bottom: 4px; +} +.ft-ribbon-thumb img { + width: 100%; + height: 100%; + object-fit: cover; +} +.ft-ribbon-card-headline { + font-family: 'Newsreader', 'Source Serif 4', Georgia, serif; + font-size: 17px; + line-height: 1.25; + font-weight: 600; +} +.ft-ribbon-card-headline a { color: inherit; text-decoration: none; } +.ft-ribbon-card-headline a:hover { color: var(--ft-accent-green); } +.ft-ribbon-card-excerpt { + font-size: 13.5px; + color: var(--ft-ink-secondary); + line-height: 1.45; +} +.ft-ribbon-card-byline { + font-family: 'Inter', -apple-system, sans-serif; + font-size: 11px; + color: var(--ft-ink-muted); + margin-top: auto; +} +.ft-ribbon-card-byline a { color: inherit; text-decoration: none; } + +/* ============================================================ + RESPONSIVE SYSTEM (Mobile & Tablet Breakpoints) + ============================================================ */ +@media (max-width: 992px) { + .ft-broadsheet-lead-zone, .ft-broadsheet-engines-ribbons { padding-left: 20px; padding-right: 20px; } + .ft-lead-grid { grid-template-columns: 1fr; gap: 32px; } + .ft-lead-col-left, .ft-lead-col-center { + padding-right: 0; + border-right: none; + border-bottom: 1px solid var(--ft-border-hairline); + padding-bottom: 28px; + } + .ft-comp-grid { grid-template-columns: 1fr; gap: 16px; } + .ft-ribbon-grid-4 { grid-template-columns: repeat(2, 1fr); gap: 20px; } + .ft-ribbon-card:nth-child(2) { border-right: none; padding-right: 0; } +} + +@media (max-width: 768px) { + .ft-broadsheet-lead-zone, .ft-broadsheet-engines-ribbons { padding-left: 16px; padding-right: 16px; } + + .ft-top-telemetry-bar { + padding: 6px 16px; + } + .ft-telemetry-inner { + flex-direction: column; + gap: 6px; + align-items: stretch; + } + .ft-tel-left { + justify-content: space-between; + font-size: 10.5px; + } + .ft-tel-center { + display: flex; + overflow-x: auto; + white-space: nowrap; + -webkit-overflow-scrolling: touch; + padding: 4px 0; + font-size: 10px; + scrollbar-width: none; + } + .ft-tel-center::-webkit-scrollbar { display: none; } + .ft-tel-right { + display: flex; + justify-content: space-between; + border-top: 1px solid #2D2723; + padding-top: 5px; + font-size: 11px; + } + + .ft-lead-headline { font-size: 26px; line-height: 1.18; } + .ft-visual-frame { height: 210px; } + .ft-center-headline { font-size: 22px; line-height: 1.22; } + .ft-center-dual-split { grid-template-columns: 1fr; gap: 16px; } + .ft-mini-card-bordered { + padding-left: 0; + border-left: none; + border-top: 1px solid var(--ft-border-hairline); + padding-top: 16px; + } + + .ft-takeaway-drawer { padding: 12px; } + .ft-takeaway-row { grid-template-columns: 1fr; gap: 3px; } + + .ft-ribbon-grid-4 { grid-template-columns: 1fr; gap: 18px; } + .ft-ribbon-card { + border-right: none; + padding-right: 0; + border-bottom: 1px solid var(--ft-border-hairline); + padding-bottom: 14px; + } + .ft-ribbon-card:last-child { border-bottom: none; } + .ft-ribbon-thumb { height: 170px; } +} diff --git a/default.hbs b/default.hbs new file mode 100644 index 0000000..662e367 --- /dev/null +++ b/default.hbs @@ -0,0 +1,321 @@ + + + +
+ + +Deterministic Shariah engines executing AAOIFI 2026.4 standards and Islamic estate distribution algorithms
+Mathematical calculation of Islamic inheritance shares under Ashab al-Furud, Asabah, and Rad. Automated Radd, Awl, and spouse shares.
+ Launch Engine → +Calculates operational zakat liability across equities, cash, private equity, and gold, with automated dividend purification deductions.
+ Launch Engine → +Interactive curriculum and templates for Muslim family wealth preservation, Waqf covenants, and emergency estate dossiers.
+ Explore Curriculum → ++ {{#if custom_excerpt}}{{custom_excerpt}}{{else}}{{excerpt words="18"}}{{/if}} +
+ ++ Kuala Lumpur — + {{#if custom_excerpt}}{{custom_excerpt}}{{else}}{{excerpt words="38"}}{{/if}} +
+ + {{!-- SEMAFOR-STYLE STRUCTURED TAKEAWAY DRAWER --}} ++ Kuala Lumpur — + {{#if custom_excerpt}}{{custom_excerpt}}{{else}}{{excerpt words="38"}}{{/if}} +
++ {{#if custom_excerpt}}{{custom_excerpt}}{{else}}{{excerpt words="22"}}{{/if}} +
+ ++ {{#if custom_excerpt}}{{custom_excerpt}}{{else}}{{excerpt words="32"}}{{/if}} +
+ +{{#if custom_excerpt}}{{custom_excerpt}}{{else}}{{excerpt words="32"}}{{/if}}
+ +{{#if custom_excerpt}}{{custom_excerpt}}{{else}}{{excerpt words="16"}}{{/if}}
+ +{{#if custom_excerpt}}{{custom_excerpt}}{{else}}{{excerpt words="16"}}{{/if}}
+ ++ {{#if custom_excerpt}}“{{custom_excerpt}}”{{else}}“{{excerpt words="22"}}”{{/if}} +
+ {{/foreach}} + {{/get}} +
+ {{/if}}
+