/*! The Foundations Press — layer v4 (press-v4.css)
 * Replaces press-v3.css. Stampd editorial aesthetic: alternating dark/light sections,
 * large condensed typography, section watermarks, ruled grid system.
 * Written against real class names — zero attribute-wildcard selectors.
 * Version the filename on every change: /assets/* is cached for a year.
 */

:root{
  --p-gold:#8B7355; --p-gold-l:#b09a72; --p-teal:#2E8B8B; --p-purple:#5B4A8A;
  --p-parch:#F5EDDA; --p-red:#B23A2F;
  --p-ink:#111; --p-dark:#0e0e0e; --p-card:#161616; --p-card-rule:#2a2a2a;
  --p-cream:#f4f1ea; --p-stone:#f5f5f3; --p-rule:#e3e3e0; --p-mute:#6b6b68;
  --p-sans:"Archivo","Archivo Narrow","Arial Narrow",Arial,sans-serif;
  --p-serif:"Amiri",Georgia,serif;
  --p-gutter:clamp(24px,5vw,80px);
}

/* ═══════════ 0. UNDO v1's wildcard damage ═══════════ */
.product-badge,.product-type,.product-title,.product-price,.product-note,.product-desc,.product-grid,
.tier-grid,.tier-num,.tier-title,.tier-text,
.gate-list,.gate-label,.gate-title,.gate-text,
.lp-card-grid,.related-card-label,.curriculum-pages-grid,.curriculum-page-link,
.stat-item,.stat-num,.stat-label,.stats-bar,.stats-inner{
  background:transparent!important; border:0!important;
}
.product-card:hover,.program-card:hover,.partner-card:hover,.commission-card:hover,
.lp-card:hover,.related-card:hover,.tier-card:hover{ border-color:var(--p-rule)!important; }

/* Restore buttons v1 damaged */
.faq-q{
  display:flex!important; justify-content:space-between!important; align-items:center!important;
  width:100%!important; min-height:0!important; padding:18px 0!important;
  border:0!important; background:transparent!important; color:var(--p-ink)!important;
  font-family:var(--p-sans)!important; font-stretch:75%!important; font-weight:500!important;
  font-size:13px!important; letter-spacing:.14em!important; text-transform:uppercase!important; text-align:left!important;
}
.faq-q:hover{ background:transparent!important; color:var(--p-gold)!important; }
.faq-q::after{ color:var(--p-ink); font-size:18px; letter-spacing:0; }
.faq-list{ border-top:1px solid var(--p-ink)!important; }
.faq-item{ border-bottom:1px solid var(--p-rule)!important; }
.faq-a{ font-family:var(--p-serif); font-size:17px; line-height:1.7; color:#2a2a2a!important; }

.announce-close{
  min-height:0!important; padding:2px 8px!important; border:0!important; background:transparent!important;
  color:#d8d4cb!important; font-size:18px!important; letter-spacing:0!important;
}
.announce-close:hover{ background:transparent!important; color:#fff!important; }

.nav-hamburger{ min-height:0!important; padding:8px!important; border:0!important; background:transparent!important; gap:5px; }
.nav-hamburger span{ display:block; width:22px; height:2px; background:var(--p-ink); }
.nav-hamburger span:nth-child(2){ width:16px; } .nav-hamburger span:nth-child(3){ width:10px; }
.nav-hamburger:hover{ background:transparent!important; }
@media (max-width:768px){ .nav-links{ display:none; } .nav-links.is-open,.nav-links[style*="flex"]{ display:flex!important; } }

.tfp-logo{ letter-spacing:0!important; font-stretch:100%!important; font-weight:400!important; }
.tfp-wm .top,.tfp-wm .bot{ font-family:var(--p-sans)!important; font-stretch:75%; font-size:8px!important; letter-spacing:.35em!important; }
.tfp-wm .mid{ font-family:var(--p-sans)!important; font-stretch:75%; font-weight:700!important; font-size:14px!important; letter-spacing:.28em!important; }
.tfp-mark span,.footer-mark span{ border-radius:0!important; }
.footer-brand{ letter-spacing:0!important; font-stretch:100%!important; }

/* ═══════════ 1. Global page rhythm ═══════════ */
hr.divider{ display:none!important; }
section.section{
  border-top:1px solid var(--p-rule)!important;
  padding-top:clamp(72px,9vw,128px)!important;
  padding-bottom:clamp(72px,9vw,128px)!important;
}
section:nth-of-type(even):not(.press-hero){ background-color:transparent; }
.section-alt{ background:var(--p-stone)!important; }

/* Labels — all of them, one rule */
.section-label,.prog-for,.partner-tag,.tier-num,.gate-label,.seq-num,.why-label,
.ep-num,.press-pub,.disc-anchor,.disc-qanchor,.product-type,.lp-eyebrow,
.related-card-label,.curriculum-pages-label,.footer-col-title,.stat-label{
  font-family:var(--p-sans)!important; font-stretch:75%; text-transform:uppercase;
  letter-spacing:.28em!important; font-size:10px!important; color:var(--p-mute)!important; font-weight:500!important;
}

/* Section titles — MUCH larger, condensed, editorial */
.section-title{
  font-family:var(--p-sans)!important; font-stretch:75%!important;
  font-size:clamp(38px,5.5vw,80px)!important; font-weight:700!important;
  letter-spacing:-.02em!important; line-height:.98!important;
  margin-bottom:.45em!important; color:var(--p-ink)!important;
}
.section-intro,.gov-intro,.commission-intro,.contact-intro{
  font-family:var(--p-serif)!important; font-size:20px!important; line-height:1.65!important; color:#2a2a2a!important; max-width:640px;
}
.disc-text,.seq-text,.why-text,.prog-text,.partner-text,.comm-text,.gate-text,.tier-text,
.pipeline-box p,.ai-disclosure,.source-hierarchy,.founder-text p,.press-sub,.store-footer{
  font-size:15px!important; line-height:1.65!important; color:#333!important;
}

/* Stats bar — dramatic large numerals */
.stats-bar{ border-top:1px solid var(--p-rule)!important; border-bottom:1px solid var(--p-rule)!important; background:#fff!important; }
.stat-item{ border-right:1px solid var(--p-rule)!important; padding:clamp(32px,4vw,56px) clamp(24px,3vw,48px)!important; }
.stat-item:last-child{ border-right:0!important; }
.stat-num{
  font-family:var(--p-sans)!important; font-stretch:75%!important; font-weight:700!important;
  font-size:clamp(52px,6vw,88px)!important; letter-spacing:-.04em!important; line-height:1!important;
  color:var(--p-ink)!important; display:block; margin-bottom:8px;
}
.stat-label{ font-size:9px!important; letter-spacing:.32em!important; }

/* ═══════════ 2. Hero ═══════════ */
#hero.press-hero .container{ max-width:none!important; padding:0!important; }
.press-hero{ min-height:min(88vh,860px)!important; }
.press-hero p{ font-family:var(--p-serif)!important; font-size:20px!important; line-height:1.5!important; }
.press-hero .cta-row,.press-hero .lp-cta-row{ gap:12px; }
.press-hero .btn-gold,.press-hero.is-dark a.btn-gold{ background:var(--p-cream)!important; color:var(--p-ink)!important; border-color:var(--p-cream)!important; }
.press-hero .btn-gold:hover,.press-hero.is-dark a.btn-gold:hover{ background:transparent!important; color:var(--p-cream)!important; }
.press-hero .btn-outline{ color:var(--p-cream)!important; border-color:rgba(244,241,234,.6)!important; }
.press-hero .btn-outline:hover{ background:var(--p-cream)!important; color:var(--p-ink)!important; }
.press-hero.is-light .btn-gold{ background:var(--p-ink)!important; color:var(--p-cream)!important; border-color:var(--p-ink)!important; }
.press-hero.is-light .btn-outline{ color:var(--p-ink)!important; border-color:var(--p-ink)!important; }

/* LP/blog hero */
.lp-hero{ background:transparent!important; padding:0!important; border:0!important; }
.lp-hero-inner.press-hero{ min-height:min(72vh,720px)!important; padding:120px var(--p-gutter) 56px!important; }
.lp-hero-inner.press-hero .lp-breadcrumb,.lp-hero-inner.press-hero .lp-breadcrumb a{
  color:rgba(244,241,234,.6)!important; font-family:var(--p-sans)!important; font-stretch:75%;
  font-size:10px!important; letter-spacing:.2em; text-transform:uppercase;
}
.lp-hero-inner.press-hero .lp-eyebrow{ color:rgba(244,241,234,.7)!important; margin-bottom:14px; }
.lp-hero-inner.press-hero.is-light .lp-breadcrumb,.lp-hero-inner.press-hero.is-light .lp-breadcrumb a,
.lp-hero-inner.press-hero.is-light .lp-eyebrow{ color:var(--p-mute)!important; }
.lp-h1{
  font-family:var(--p-sans)!important; font-stretch:75%!important;
  font-size:clamp(36px,5vw,72px)!important; font-weight:700!important;
  letter-spacing:-.02em!important; line-height:.98!important;
}
.lp-hero-inner:not(.press-hero){ padding:96px var(--p-gutter) 56px; max-width:none; border-bottom:1px solid var(--p-rule); }
.lp-hero-inner:not(.press-hero) > *{ max-width:760px; }

/* ═══════════ 3. Homepage panels ═══════════ */
.press-panel{ border-top:0!important; }
.press-panel.is-hidden{ display:none!important; }
.press-panel-cap{ font-size:11px; }

/* ═══════════ 4. Cards — flat, ruled, square ═══════════ */
.why-block,.program-card,.partner-card,.commission-card,.tier-card,.pipeline-box,
.ai-disclosure,.episode,.lp-card,.related-card,.blog-cta{
  background:#fff!important; border:1px solid var(--p-rule)!important; border-radius:0!important; padding:32px!important;
}
.section-alt .why-block,.section-alt .program-card,.section-alt .partner-card,
.section-alt .commission-card,.section-alt .episode{ background:#fff!important; }
.lp-card,.related-card{ background:var(--p-stone)!important; border:0!important; border-top:2px solid var(--p-ink)!important; }
.lp-card h3{ color:var(--p-ink)!important; font-size:13px!important; margin-bottom:10px!important; }
.lp-section .lp-card p,.lp-card p,.related-card p{ font-size:15px!important; line-height:1.6!important; color:#333!important; }
.prog-icon,.founder-moon{ display:none!important; }
.prog-features li{ border-bottom:1px solid var(--p-rule)!important; padding:8px 0!important; font-size:14px!important; }
.prog-features li::before{ content:"— "!important; color:var(--p-gold)!important; }
.prog-title,.partner-title,.comm-title,.tier-title,.seq-title,.pipeline-box h3,.ep-title,.disc-name,.why-title{
  color:var(--p-ink)!important;
}
.why-title{ font-family:var(--p-serif)!important; font-size:21px!important; font-weight:400!important; line-height:1.4!important; }
.disc-name{ font-family:var(--p-sans)!important; font-stretch:75%; text-transform:uppercase; font-size:20px!important; letter-spacing:.04em; font-weight:700; }
.disc-source{ font-family:var(--p-serif)!important; font-style:italic; font-size:14px!important; color:var(--p-gold)!important; }
.discipline{ border-bottom:1px solid var(--p-rule)!important; padding-bottom:28px!important; margin-bottom:28px!important; }

/* Gates — rule-left, no fill */
.gate{ background:transparent!important; border:0!important; border-left:2px solid var(--p-ink)!important; padding:4px 0 4px 20px!important; }
.gate-title{ font-family:var(--p-sans)!important; font-stretch:75%; text-transform:uppercase; letter-spacing:.06em; font-size:15px!important; color:var(--p-ink)!important; }
.gov-scholars{ font-family:var(--p-sans)!important; font-stretch:75%; text-transform:uppercase; letter-spacing:.12em; font-size:12px!important; color:var(--p-ink)!important; }

/* Notices */
.program-notice{ background:var(--p-stone)!important; border:0!important; border-left:2px solid var(--p-gold)!important; padding:18px 24px!important; font-size:14px!important; line-height:1.6; }
.program-notice a,.program-notice strong{ color:var(--p-ink)!important; }

/* Arabic quote block */
.arabic-quote{ background:transparent!important; border:0!important; border-top:1px solid var(--p-ink)!important; border-bottom:1px solid var(--p-ink)!important; padding:40px 0!important; margin:48px 0!important; }
.arabic-quote .arabic-text{ font-size:40px!important; line-height:1.8!important; color:var(--p-ink)!important; }
.arabic-quote p{ font-family:var(--p-serif)!important; }
.arabic-attr{ font-family:var(--p-sans)!important; font-stretch:75%; text-transform:uppercase; letter-spacing:.22em; font-size:10px!important; color:var(--p-mute)!important; font-style:normal!important; }

/* Dark CTA panels */
.license-box,.lp-cta-box{ background:var(--p-ink)!important; border:0!important; border-radius:0!important; padding:72px 56px!important; text-align:left!important; }
.license-box h2,.license-box h3,.lp-cta-box h2{ color:var(--p-cream)!important; }
.license-box p,.lp-cta-box p{ color:rgba(244,241,234,.75)!important; font-family:var(--p-serif)!important; font-size:19px!important; max-width:560px; }
.license-price{ font-family:var(--p-sans)!important; font-stretch:75%!important; text-transform:uppercase; letter-spacing:.2em; font-size:11px!important; font-style:normal!important; color:var(--p-gold-l)!important; }
.license-box .btn,.lp-cta-box .btn{ color:var(--p-cream)!important; border-color:var(--p-cream)!important; }
.license-box .btn-gold,.lp-cta-box .btn-gold{ background:var(--p-cream)!important; color:var(--p-ink)!important; }
.license-box .btn-gold:hover,.lp-cta-box .btn-gold:hover{ background:transparent!important; color:var(--p-cream)!important; }

/* Buttons */
.btn-gold{ background:var(--p-ink)!important; color:var(--p-cream)!important; border-color:var(--p-ink)!important; }
.btn-gold:hover{ background:transparent!important; color:var(--p-ink)!important; }
.interest-option,.platform-btn,.curriculum-page-link{
  display:inline-flex; align-items:center; min-height:38px; padding:0 18px!important;
  border:1px solid var(--p-ink)!important; background:transparent!important; color:var(--p-ink)!important;
  font-family:var(--p-sans)!important; font-stretch:75%; text-transform:uppercase;
  letter-spacing:.16em; font-size:11px!important; border-radius:0!important; text-decoration:none!important;
}
.interest-option:hover,.platform-btn:hover,.curriculum-page-link:hover{ background:var(--p-ink)!important; color:var(--p-cream)!important; }
.interest-quiz{ background:#fff!important; border-top:1px solid var(--p-rule)!important; border-bottom:0!important; }
.interest-quiz h2{ font-size:13px!important; letter-spacing:.2em!important; color:var(--p-mute)!important; margin-bottom:18px!important; }
.quick-nav{ border-bottom:1px solid var(--p-rule)!important; }
.quick-nav-link{ font-family:var(--p-sans)!important; font-stretch:75%; letter-spacing:.2em!important; font-size:10px!important; color:var(--p-mute)!important; }
.quick-nav-link.active{ color:var(--p-ink)!important; border-bottom-color:var(--p-ink)!important; }
.nav-dropdown{ border-radius:0!important; border:1px solid var(--p-rule)!important; background:#fff!important; }
.nav-dropdown-item > a::after{ content:" ▾"; }

/* ═══════════ 5. PROGRAMS SECTION — dark editorial ═══════════ */
#programs.section{
  background:var(--p-dark)!important;
  color:var(--p-cream)!important;
  border-top:0!important;
  position:relative;
  overflow:hidden;
}
/* Watermark: "V" for the five disciplines */
#programs.section::before{
  content:'V';
  position:absolute; right:-40px; bottom:-60px;
  font-family:var(--p-sans); font-size:min(440px,38vw); font-weight:900; font-stretch:75%;
  line-height:1; letter-spacing:-.06em;
  color:rgba(255,255,255,.03); pointer-events:none; user-select:none; z-index:0;
}
#programs .container{ position:relative; z-index:1; }
#programs .section-label{ color:rgba(244,241,234,.4)!important; }
#programs .section-title{ color:var(--p-cream)!important; }
#programs .section-intro{ color:rgba(244,241,234,.75)!important; }
#programs .program-card{
  background:rgba(255,255,255,.04)!important; border-color:rgba(255,255,255,.1)!important; color:var(--p-cream)!important;
  transition:background .22s;
}
#programs .program-card:hover{ background:rgba(255,255,255,.08)!important; border-color:rgba(255,255,255,.2)!important; }
#programs .prog-title{ color:var(--p-cream)!important; font-family:var(--p-sans)!important; font-stretch:75%; font-size:18px!important; letter-spacing:.03em; }
#programs .prog-for{ color:rgba(244,241,234,.45)!important; }
#programs .prog-text{ color:rgba(244,241,234,.72)!important; }
#programs .prog-features li{ border-color:rgba(255,255,255,.1)!important; color:rgba(244,241,234,.8)!important; font-size:14px!important; }
#programs .program-notice{ background:rgba(139,115,85,.15)!important; border-color:var(--p-gold-l)!important; color:rgba(244,241,234,.8)!important; }
#programs .program-notice a,.programs .program-notice strong{ color:var(--p-gold-l)!important; }
#programs a.btn{ color:var(--p-cream)!important; border-color:rgba(244,241,234,.35)!important; background:transparent!important; }
#programs a.btn:hover{ background:var(--p-cream)!important; color:var(--p-ink)!important; border-color:var(--p-cream)!important; }
#programs a.btn-gold{ background:var(--p-gold-l)!important; border-color:var(--p-gold-l)!important; color:var(--p-ink)!important; }
#programs a.btn-gold:hover{ background:transparent!important; color:var(--p-cream)!important; border-color:var(--p-gold-l)!important; }

/* ═══════════ 6. CERTIFICATION TIERS ═══════════ */
.tier-grid{ gap:0!important; border:1px solid var(--p-rule); }
.tier-card{
  border:0!important; border-right:1px solid var(--p-rule)!important;
  border-top:3px solid var(--p-ink)!important;
  padding:40px 32px!important;
  position:relative; overflow:hidden;
}
.tier-card:last-child{ border-right:0!important; }
.tier-card.t2{ border-top-color:var(--p-teal)!important; }
.tier-card.t3{ border-top-color:var(--p-gold)!important; }
.tier-card.t1,.tier-card.t2,.tier-card.t3{ background:#fff!important; }
/* watermark tier number — homepage tier-card */
.tier-card.t1::after{ content:'I'; }
.tier-card.t2::after{ content:'II'; }
.tier-card.t3::after{ content:'III'; }
.tier-card::after{
  position:absolute; right:-12px; bottom:-24px;
  font-family:var(--p-sans); font-size:120px; font-weight:900; font-stretch:75%;
  line-height:1; letter-spacing:-.04em; color:rgba(0,0,0,.04);
  pointer-events:none; user-select:none;
}

/* watermark tier number — /islamic-teacher-certification/ lp-card grid */
.lp-card-grid{ position:relative; }
.lp-card-grid .lp-card{ position:relative!important; overflow:hidden!important; }
.lp-card-grid .lp-card:nth-child(1)::after{ content:'I'; }
.lp-card-grid .lp-card:nth-child(2)::after{ content:'II'; }
.lp-card-grid .lp-card:nth-child(3)::after{ content:'III'; }
.lp-card-grid .lp-card::after{
  position:absolute; right:-12px; bottom:-24px;
  font-family:var(--p-sans); font-size:120px; font-weight:900; font-stretch:75%;
  line-height:1; letter-spacing:-.04em; color:rgba(0,0,0,.04);
  pointer-events:none; user-select:none;
}
.tier-num{ margin-bottom:16px!important; }
.tier-title{ font-family:var(--p-sans)!important; font-stretch:75%; text-transform:uppercase; font-size:16px!important; font-weight:700; letter-spacing:.04em; margin-bottom:16px!important; }
.cert-quote{ font-family:var(--p-serif)!important; font-size:22px!important; color:var(--p-ink)!important; line-height:1.55!important; }
@media (max-width:768px){
  .tier-card{ border-right:0!important; border-bottom:1px solid var(--p-rule)!important; }
  .tier-card:last-child{ border-bottom:0!important; }
}

/* ═══════════ 7. THE STORE — dark shelf ═══════════ */
#store.section{ background:var(--p-dark)!important; color:var(--p-cream)!important; border-top:0!important; }
#store .section-label{ color:rgba(244,241,234,.55)!important; }
#store .section-title{ color:var(--p-cream)!important; }
#store .store-intro{ font-family:var(--p-serif)!important; font-style:italic; font-size:18px!important; color:rgba(244,241,234,.75)!important; margin-top:0!important; }
#store .store-intro + .store-intro{ font-family:var(--p-sans)!important; font-style:normal; font-stretch:75%; text-transform:uppercase; letter-spacing:.2em; font-size:10px!important; color:rgba(244,241,234,.45)!important; margin-top:6px!important; }
#store .container > h3{
  color:var(--p-cream)!important; font-family:var(--p-sans)!important; font-stretch:75%; text-transform:uppercase;
  font-size:11px!important; letter-spacing:.34em!important; font-weight:600;
  margin:64px 0 0!important; padding-bottom:16px; border-bottom:1px solid var(--p-card-rule);
}
#store .product-grid{ margin-top:0!important; gap:0!important; border-left:1px solid var(--p-card-rule); }
#store .product-card{
  background:var(--p-dark)!important; border:0!important;
  border-right:1px solid var(--p-card-rule)!important; border-bottom:1px solid var(--p-card-rule)!important;
  padding:0!important; color:var(--p-cream)!important; transition:background .25s;
  display:flex; flex-direction:column;
}
#store .product-card:hover{ background:var(--p-card)!important; }
#store .product-card > *:not(.shelf-cover){ margin-left:22px!important; margin-right:22px!important; }
#store .shelf-cover{
  position:relative; display:block; width:100%; aspect-ratio:3/3.8; overflow:hidden;
  border-bottom:1px solid var(--p-card-rule);
  background:linear-gradient(180deg,#141414 0%,#0c0c0c 100%);
}
#store .shelf-cover svg{
  position:absolute; left:50%; bottom:0; width:62%; height:auto;
  transform:translateX(-50%); transition:transform .38s cubic-bezier(.2,.7,.2,1); display:block;
}
#store .product-card:hover .shelf-cover svg{ transform:translateX(-50%) translateY(-12px); }
#store .shelf-cover::after{ content:''; position:absolute; left:0; right:0; bottom:0; height:1px; background:#3a3a3a; }
#store .product-badge{
  margin:20px 22px 12px!important; padding:5px 9px!important; align-self:flex-start;
  border:1px solid rgba(244,241,234,.35)!important; color:rgba(244,241,234,.8)!important; background:transparent!important;
  font-family:var(--p-sans)!important; font-stretch:75%; font-size:9px!important; letter-spacing:.22em!important; text-transform:uppercase;
}
#store .badge-free{ border-color:var(--p-red)!important; color:#e0705f!important; }
#store .product-type{ color:rgba(244,241,234,.4)!important; margin-bottom:6px!important; }
#store .product-title{
  color:var(--p-cream)!important; font-family:var(--p-sans)!important; font-stretch:75%;
  font-size:14px!important; letter-spacing:.05em!important; line-height:1.3!important;
  margin-bottom:10px!important; min-height:2.6em; font-weight:600;
}
#store .product-price{
  font-family:var(--p-sans)!important; font-stretch:75%!important; font-weight:700!important;
  font-size:28px!important; letter-spacing:-.02em!important; color:var(--p-cream)!important; margin-bottom:4px!important;
}
#store .product-note{ font-family:var(--p-serif)!important; font-style:italic; font-size:14px!important; color:rgba(244,241,234,.5)!important; margin-bottom:12px!important; }
#store .product-note.is-empty{ display:none!important; }
#store .product-desc{ font-size:13px!important; line-height:1.6!important; color:rgba(244,241,234,.65)!important; margin-bottom:24px!important; flex-grow:1; }
#store .btn{ margin-bottom:24px!important; align-self:flex-start; color:var(--p-cream)!important; border-color:rgba(244,241,234,.4)!important; background:transparent!important; }
#store .btn:hover{ background:var(--p-cream)!important; color:var(--p-ink)!important; border-color:var(--p-cream)!important; }
#store .btn-gold{ background:var(--p-cream)!important; color:var(--p-ink)!important; border-color:var(--p-cream)!important; }
#store .btn-gold:hover{ background:transparent!important; color:var(--p-cream)!important; }
#store .store-footer{ margin-top:56px!important; color:rgba(244,241,234,.45)!important; font-family:var(--p-sans)!important; font-stretch:75%; text-transform:uppercase; letter-spacing:.18em; font-size:10px!important; line-height:2.2!important; }
#store .store-footer a{ color:var(--p-cream)!important; text-decoration:underline!important; }
#store .container{ max-width:1200px!important; }

/* ═══════════ 8. GOVERNANCE — architectural grid with rule-columns ═══════════ */
#governance.section{
  position:relative; overflow:hidden;
}
#governance.section::before{
  content:'';
  position:absolute; left:0; top:0; right:0; bottom:0;
  background-image:
    repeating-linear-gradient(90deg, transparent, transparent calc(25% - 1px), var(--p-rule) calc(25% - 1px), var(--p-rule) 25%);
  opacity:.35; pointer-events:none; z-index:0;
}
#governance .container{ position:relative; z-index:1; }

/* ═══════════ 9. Landing & blog body ═══════════ */
.lp-body{ padding:80px var(--p-gutter)!important; max-width:none!important; }
.lp-body article{ max-width:720px; margin:0 auto; }
.lp-section{ margin-bottom:56px; }
.lp-section h2{
  font-family:var(--p-sans)!important; font-stretch:75%!important;
  font-size:clamp(28px,3vw,42px)!important; font-weight:700!important; letter-spacing:-.02em!important; line-height:1!important;
  margin:0 0 .6em!important; padding-top:40px; border-top:1px solid var(--p-rule);
}
.lp-section h3{ color:var(--p-ink)!important; margin-top:1.8em!important; font-family:var(--p-sans)!important; font-stretch:75%; letter-spacing:.03em; font-size:15px!important; text-transform:uppercase; }
.lp-section p,.lp-section li,article p,article li{
  font-family:var(--p-serif)!important; font-size:20px!important; line-height:1.7!important; color:#1f1f1f!important;
}
/* Blog drop cap */
article .lp-section:first-child p:first-child::first-letter{
  float:left; font-family:var(--p-sans); font-stretch:75%; font-weight:900;
  font-size:4.4em; line-height:.8; margin:4px 8px 0 0; color:var(--p-ink);
}
.lp-section ul{ list-style:none!important; padding-left:0!important; }
.lp-section ul li{ border-bottom:1px solid var(--p-rule); padding:10px 0; margin:0!important; }
.lp-faq{ border-top:1px solid var(--p-ink)!important; margin-top:64px; }
.lp-faq h2{
  font-family:var(--p-sans)!important; font-stretch:75%; text-transform:uppercase;
  font-size:10px!important; letter-spacing:.32em!important; color:var(--p-mute)!important; margin-bottom:0!important; padding:28px 0 0;
}
.lp-faq-item{ border-bottom:1px solid var(--p-rule)!important; padding:24px 0!important; }
.lp-faq-item h3{ font-family:var(--p-sans)!important; font-stretch:75%; text-transform:uppercase!important; letter-spacing:.12em!important; font-size:13px!important; color:var(--p-ink)!important; margin:0 0 10px!important; }
.lp-faq-item p{ font-family:var(--p-serif)!important; font-size:18px!important; line-height:1.65!important; }

/* Blockquote — Stampd rule-framed */
article blockquote,.blog-post blockquote{
  font-family:var(--p-serif)!important; font-size:22px!important; line-height:1.65!important;
  background:transparent!important; border:0!important;
  border-top:1px solid var(--p-ink)!important; border-bottom:1px solid var(--p-ink)!important;
  padding:28px 0!important; margin:48px 0!important;
  color:var(--p-ink)!important; font-style:normal!important;
}

/* Related posts */
.related-posts{ border-top:1px solid var(--p-ink)!important; padding-top:56px!important; }
.related-posts h3{ font-family:var(--p-sans)!important; font-stretch:75%; text-transform:uppercase; font-size:10px!important; letter-spacing:.32em!important; color:var(--p-mute)!important; margin-bottom:28px!important; }
.related-card h4{ font-family:var(--p-sans)!important; font-size:13px!important; letter-spacing:.06em!important; line-height:1.4!important; color:var(--p-ink)!important; }
.related-grid{ grid-template-columns:repeat(3,1fr)!important; gap:1px!important; background:var(--p-rule)!important; border:1px solid var(--p-rule); }
.related-card{ background:#fff!important; border:0!important; border-top:2px solid var(--p-ink)!important; padding:24px!important; }

/* ═══════════ 10. Press / blog list items ═══════════ */
.press-item{ border-bottom:1px solid var(--p-rule)!important; padding:28px 0!important; }
.press-title a{ font-family:var(--p-serif)!important; font-size:20px!important; color:var(--p-ink)!important; }
.founder-name{ font-family:var(--p-sans)!important; font-stretch:75%; text-transform:uppercase; letter-spacing:.12em; font-size:13px!important; color:var(--p-ink)!important; }
.founder-email a{ color:var(--p-ink)!important; text-decoration:underline!important; }

/* ═══════════ 11. Footer — dark bookend ═══════════ */
footer.site-footer{
  background:var(--p-dark)!important; color:#c8c4bb!important; border-top:0!important;
  padding:80px 0 40px!important;
}
footer.site-footer a{ color:#c8c4bb!important; }
footer.site-footer a:hover{ color:var(--p-cream)!important; opacity:1; }
footer.site-footer .footer-col-title{ color:#6b6660!important; }
footer.site-footer .footer-tagline{ color:#8a867e!important; font-stretch:75%; letter-spacing:.18em; text-transform:uppercase; font-size:10px!important; line-height:1.9!important; }
footer.site-footer .footer-bottom{ border-top:1px solid #2a2a2a!important; margin-top:48px; padding-top:24px; }
footer.site-footer .footer-bottom p,footer.site-footer .footer-bottom a{ color:#6b6660!important; font-size:11px!important; }
footer .tfp-mark span{ background:var(--p-gold-l)!important; }

/* ═══════════ 12. Forms ═══════════ */
.contact-form input,.contact-form select,.contact-form textarea{ border-bottom-color:var(--p-rule)!important; border-radius:0!important; }
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{ border-bottom-color:var(--p-ink)!important; }
#form-success{ border-radius:0!important; border:1px solid var(--p-teal)!important; background:#fff!important; }

/* ═══════════ 13. Mobile ═══════════ */
@media (max-width:760px){
  .press-panel{ display:none!important; }
  .announce{ display:block!important; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; padding:9px 40px 9px 14px!important; text-align:left!important; font-size:9px!important; }
  .announce-2{ display:none!important; }
  .announce-close{ display:none!important; }
  .press-hero.is-dark::after{ background:linear-gradient(0deg,rgba(0,0,0,.9) 0%,rgba(0,0,0,.72) 48%,rgba(0,0,0,.2) 80%)!important; }
  .press-hero{ min-height:min(76vh,660px)!important; padding:88px 20px 32px!important; }
  .lp-hero-inner.press-hero{ min-height:min(64vh,560px)!important; }
  .press-hero p{ font-size:18px!important; }
  .press-hero a.btn{ width:100%; }
  section.section{ padding-top:56px!important; padding-bottom:56px!important; }
  .section-title{ font-size:clamp(30px,9vw,52px)!important; }
  .stat-num{ font-size:clamp(44px,12vw,72px)!important; }
  .lp-body{ padding:44px 20px!important; }
  .lp-section p,.lp-section li,article p,article li{ font-size:18px!important; }
  article blockquote,.blog-post blockquote{ font-size:19px!important; }
  .license-box,.lp-cta-box{ padding:44px 24px!important; }
  .arabic-quote .arabic-text{ font-size:30px!important; }
  .tier-grid{ border:0; }
  .tier-card{ border:1px solid var(--p-rule)!important; border-top:3px solid var(--p-ink)!important; margin-bottom:16px; }
  .tier-card.t2{ border-top-color:var(--p-teal)!important; } .tier-card.t3{ border-top-color:var(--p-gold)!important; }
  #store .product-grid{ grid-template-columns:1fr 1fr!important; }
  #store .shelf-cover svg{ width:64%; }
  #store .product-card > *:not(.shelf-cover){ margin-left:16px!important; margin-right:16px!important; }
  #store .product-badge{ margin:16px 16px 10px!important; }
  #store .product-title{ font-size:13px!important; }
  #store .product-price{ font-size:22px!important; }
  .quick-nav-inner{ padding:0 12px; }
  .interest-option,.platform-btn,.curriculum-page-link{ width:auto!important; }
  .stat-item{ border-right:0!important; border-bottom:1px solid var(--p-rule)!important; padding:24px 20px!important; }
  .related-grid{ grid-template-columns:1fr!important; }
  #programs.section::before{ display:none; }
  #governance.section::before{ display:none; }
}
@media (max-width:480px){ #store .product-grid{ grid-template-columns:1fr!important; } #store .shelf-cover svg{ width:50%; } }

@media print{ #store.section{ background:#fff!important; color:#000!important; } .shelf-cover{ display:none!important; } }
