/* The breadcrumb is defined once, in assets/css/v21-system.css (v22 §14). */
/* The :root block that stood here was deleted on 2026-10-04
   (v25 Gate 3d). It declared 22 token(s), several of which
   disagreed with the same names in other sheets. They resolve
   through the v21-era alias block in assets/css/v24-tokens.css
   now, so this file decides layout and the token sheet decides
   colour. Nothing below this line was changed. */

  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{margin:0;background:var(--cream);color:var(--ink);font-family:'Spectral',Georgia,serif;font-weight:400;font-size:18px;line-height:var(--sp-lh-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
  body.ta{font-family:'Noto Sans Tamil','Spectral',serif}
  body.te{font-family:'Noto Sans Telugu','Spectral',serif}
  body.kn{font-family:'Noto Sans Kannada','Spectral',serif}
  body.ml{font-family:'Noto Sans Malayalam','Spectral',serif}
  body.hi,body.sa{font-family:'Noto Serif Devanagari','Spectral',serif}
  h1,h2,h3,h4{font-family:'Marcellus',serif;font-weight:400;line-height:1.18;letter-spacing:.01em;color:var(--espresso)}
  body.ta h1,body.ta h2,body.ta h3,body.te h1,body.te h2,body.te h3,body.kn h1,body.kn h2,body.kn h3,body.ml h1,body.ml h2,body.ml h3,body.hi h1,body.hi h2,body.hi h3,body.sa h1,body.sa h2,body.sa h3{font-family:inherit}
/* SCOPED 2026-10-04 (v25 Gate 3d). This was `a`, so it removed the
   colour AND the underline from every link on the page, prose
   included. On the wedding guide that left nine body links with no
   visual distinction at all, which is SC 1.4.1. A link that carries
   a class is a component and keeps the page treatment it was written
   for; a bare <a> in a sentence gets the system affordance from
   v24-base.css, which is the only thing that tells a reader it is a
   link. */
a[class]{color:inherit;text-decoration:none}
  img{max-width:100%;display:block}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 30px}
  .eyebrow{font-family:'Marcellus SC',serif;text-transform:uppercase;letter-spacing:.3em;font-size:.7rem;color:var(--gold-deep)}
  .sanskrit{font-family:'Noto Serif Devanagari',serif}
  .btn{display:inline-flex;align-items:center;gap:8px;font-family:'Marcellus SC',serif;letter-spacing:.14em;text-transform:uppercase;font-size:.74rem;padding:13px 24px;border-radius:3px;transition:all .3s ease;cursor:pointer;border:1px solid transparent;white-space:nowrap}
  .btn-primary{background:var(--saffron);color:#fff;border-color:var(--saffron);box-shadow:0 6px 18px -8px rgba(198,90,34,.6)}
  .btn-primary:hover{background:var(--saffron-dark);transform:translateY(-1px)}
  .btn-ghost{background:transparent;color:var(--espresso);border-color:var(--gold)}
  .btn-ghost:hover{background:var(--espresso);color:var(--cream);border-color:var(--espresso)}
  .btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--saffron);outline-offset:2px}

  .utility{background:var(--espresso);color:rgba(250,243,229,.82);font-size:.76rem}
  .utility .wrap{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:8px 30px;flex-wrap:wrap}
  .utility .u-left{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
  .utility a{color:var(--gold-soft)}
  .utility .om{font-family:'Noto Serif Devanagari',serif;color:var(--gold-soft)}
  .nav-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0}
  .brand{display:flex;align-items:center;gap:13px}
  .brand .mark{width:104px;height:46px;flex:0 0 104px}
  .brand .wordmark .full{font-family:'Marcellus',serif;font-size:1.06rem;color:var(--espresso);letter-spacing:.02em;line-height:1}
  .brand .wordmark .sub{font-family:'Marcellus SC',serif;font-size:.76rem;letter-spacing:.07em;color:var(--saffron);text-transform:uppercase;display:block;margin-top:3px}
  nav.links{display:flex;align-items:center;gap:16px}
  nav.links a:not(.btn){font-size:.82rem;letter-spacing:.03em;white-space:nowrap;color:var(--muted);transition:color .25s;position:relative}
  nav.links a:not(.btn):hover{color:var(--saffron)}
  .lang-wrap{position:relative;display:flex;align-items:center;gap:6px;margin-left:6px}
  .lang-wrap svg{color:var(--gold-deep)}
  #langSel{appearance:none;background:var(--cream-2);border:1px solid var(--line-gold);color:var(--ink);font-family:'Marcellus SC',serif;letter-spacing:.08em;font-size:.72rem;padding:8px 26px 8px 12px;border-radius:4px;cursor:pointer}
  .lang-wrap::after{content:"▾";position:absolute;right:10px;color:var(--gold-deep);pointer-events:none;font-size:.7rem}
  .nav-toggle{display:none;background:none;border:0;color:var(--espresso);font-size:1.6rem;cursor:pointer;line-height:1}

  .hero{position:relative;overflow:hidden;padding:70px 0 84px;background:radial-gradient(ellipse at 76% 42%, rgba(226,133,58,.16), transparent 54%),linear-gradient(180deg,var(--cream),var(--cream-2))}
  .hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.06fr .94fr;gap:56px;align-items:center}
  .hero h1{font-size:var(--sp-t-hero);margin:.16em 0 .28em}
  .hero h1 em{font-style:normal;color:var(--saffron)}
  .hero .name-line{font-family:'Marcellus',serif;font-size:1.26rem;color:var(--gold-deep);margin:0 0 4px}
  .hero .creds-line{font-family:'Marcellus SC',serif;letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;color:var(--muted);margin:0 0 22px}
  .hero p.lede{font-size:1.08rem;color:var(--muted);max-width:42ch;margin:0 0 28px}
  .hero-cta{display:flex;gap:14px;flex-wrap:wrap}
  .portrait{position:relative;display:flex;justify-content:center}
  .portrait .frame{position:relative;width:min(92%,420px);border-radius:12px;overflow:hidden;border:1px solid var(--line-gold);box-shadow:var(--shadow)}
  .portrait .frame img{width:100%;display:block;aspect-ratio:4/5;object-fit:cover;object-position:center top}

  .creed{background:var(--espresso);color:var(--cream)}
  .creed .wrap{display:flex;align-items:center;justify-content:center;gap:26px;padding:18px 30px;flex-wrap:wrap;text-align:center}
  .creed .item{font-family:'Marcellus',serif;letter-spacing:.06em;font-size:1.02rem;color:var(--gold-soft)}
  /* on --espresso: --saffron-bright is the palette's on-dark saffron (5.45:1) */
  .creed .sep{color:var(--saffron-bright);font-size:1.1rem}

  section{position:relative;padding:92px 0}
  .section-head{max-width:660px;margin-bottom:48px}
  .section-head.center{margin:0 auto 48px;text-align:center}
  .section-head h2{font-size:var(--sp-t-h1);margin:.3em 0 .35em}
  .section-head p{color:var(--muted);font-size:1.06rem;margin:0}
  .rule{display:flex;align-items:center;justify-content:center;gap:16px;color:var(--gold-text);margin:0 auto 8px;max-width:200px}
  .rule .r{flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--line-gold),transparent)}

  .about{background:var(--surface)}
  .about-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
  .about-copy p{margin:0 0 16px}
  .about-copy h3{font-family:'Marcellus SC',serif;letter-spacing:.04em;font-size:var(--sp-t-sm);color:var(--saffron-dark);margin:24px 0 12px;display:flex;align-items:center;gap:12px}
  .about-copy h3::before{content:"";width:22px;height:1px;background:var(--gold)}
  .creds{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 8px}
  .cred{background:var(--cream-2);border:1px solid var(--line-gold);border-radius:40px;padding:7px 16px;font-family:'Marcellus SC',serif;font-size:.66rem;letter-spacing:.1em;color:var(--gold-deep);text-transform:uppercase}
  .scripture{display:flex;flex-wrap:wrap;gap:9px 24px;margin:0;padding:0;list-style:none}
  .scripture li{position:relative;padding-left:18px;color:var(--muted);font-size:.95rem;width:calc(50% - 12px)}
  .scripture li::before{content:"";position:absolute;left:0;top:.62em;width:7px;height:7px;background:var(--gold);transform:rotate(45deg)}
  .about-media{position:relative;border-radius:10px;overflow:hidden;border:1px solid var(--line-gold);box-shadow:var(--shadow)}
  .about-media img{width:100%;display:block}

  .cer{background:var(--cream)}
  .cer-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
  .cer-card{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:28px 28px;box-shadow:var(--shadow-sm)}
  .cer-card .hd{display:flex;align-items:center;gap:14px;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--line)}
  .cer-card .hd .ic{color:var(--saffron);flex:0 0 auto}
  .cer-card .hd h3{margin:0;font-size:var(--sp-t-lg)}
  .cer-list{list-style:none;margin:0;padding:0}
  .cer-list li{padding:10px 0;border-bottom:1px dotted var(--line);font-size:.98rem;color:var(--ink);display:flex;justify-content:space-between;gap:12px;align-items:center;cursor:pointer;transition:color .2s}
  .cer-list li:last-child{border-bottom:0}
  .cer-list li:hover{color:var(--saffron-dark)}
  .cer-list li .nm{display:flex;flex-direction:column}
  .cer-list li .rg{color:var(--muted-2);font-size:.78rem;font-style:italic;font-family:var(--sp-display)}
  .cer-list li .chev{color:var(--gold-text);flex:0 0 auto;opacity:.6;transition:transform .2s,opacity .2s}
  .cer-list li:hover .chev{opacity:1;transform:translateX(3px)}
  .cer-note{text-align:center;color:var(--muted);font-size:.9rem;margin-top:24px}

  /* muhurtham */
  .muh{background:linear-gradient(180deg,var(--espresso),var(--espresso-2));color:var(--cream)}
  .muh .section-head h2{color:var(--gold-soft)}
  .muh .section-head p{color:rgba(250,243,229,.78)}
  .muh .rule{color:var(--gold-soft)} .muh .rule .r{background:linear-gradient(90deg,transparent,rgba(231,207,156,.4),transparent)}
  .muh-panel{display:grid;grid-template-columns:.95fr 1.05fr;gap:34px;align-items:start}
  .muh-form{background:rgba(255,255,255,.05);border:1px solid rgba(231,207,156,.28);border-radius:12px;padding:28px 28px}
  .muh-form .field{margin-bottom:14px}
  .muh-form label{display:block;font-family:'Marcellus SC',serif;letter-spacing:.1em;text-transform:uppercase;font-size:.62rem;color:var(--gold-soft);margin-bottom:6px}
  .muh-form input,.muh-form select{width:100%;background:rgba(250,243,229,.95);border:1px solid var(--line-strong);color:var(--ink);padding:11px 13px;border-radius:5px;font-family:'Spectral',serif;font-size:.96rem}
  .muh-form .frow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  .muh-form .loc{font-size:.8rem;color:var(--gold-soft);margin:2px 0 14px;display:flex;align-items:center;gap:7px}
  .muh-form .btn-primary{width:100%;justify-content:center;margin-top:4px}
  .muh-result{border:1px solid rgba(231,207,156,.28);border-radius:12px;padding:8px 28px 24px;min-height:200px;background:rgba(0,0,0,.12)}
  .muh-empty{color:rgba(250,243,229,.6);text-align:center;padding:60px 20px;font-family:var(--sp-display);font-size:1.2rem;font-style:italic}
  .muh-day{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:18px 0 14px;border-bottom:1px solid rgba(231,207,156,.22);flex-wrap:wrap}
  .muh-day .d{font-family:'Marcellus',serif;font-size:1.3rem;color:var(--gold-soft)}
  .muh-day .sun{font-size:.86rem;color:rgba(250,243,229,.8)}
  .muh-group{margin-top:16px}
  .muh-group h4{font-family:'Marcellus SC',serif;letter-spacing:.12em;text-transform:uppercase;font-size:var(--sp-t-eyebrow);margin:0 0 8px;display:flex;align-items:center;gap:9px}
  .muh-group.good h4{color:#8fce7e} .muh-group.avoid h4{color:#e79a6a}
  .krow{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px dotted rgba(231,207,156,.18);font-size:.95rem;color:var(--cream)}
  .krow:last-child{border-bottom:0}
  .krow .kt{color:rgba(250,243,229,.85)} .krow .kv{font-family:'Marcellus',serif;color:var(--gold-soft);white-space:nowrap}
  .muh-note{margin-top:16px;padding-top:14px;border-top:1px solid rgba(231,207,156,.22);font-size:.86rem;color:rgba(250,243,229,.82)}
  .muh-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
  .muh-actions .btn{font-size:.68rem;padding:11px 16px}
  .btn-gold{background:var(--gold);color:#241505;border-color:var(--gold)} .btn-gold:hover{background:var(--gold-soft)}

  .modes{background:var(--surface)}
  .modes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-bottom:32px}
  .mode{border:1px solid var(--line-gold);border-radius:8px;padding:32px 28px;text-align:center;background:linear-gradient(170deg,#fff,var(--cream));transition:transform .35s,box-shadow .35s}
  .mode:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
  .mode .ic{color:var(--saffron);margin-bottom:14px;display:flex;justify-content:center}
  .mode h3{margin:0 0 8px;font-size:var(--sp-t-lg)}
  .mode p{margin:0;color:var(--muted);font-size:.95rem}
  .modes-extra{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;align-items:center}
  .chip{border:1px solid var(--line);border-radius:40px;padding:9px 18px;font-size:.86rem;color:var(--ink);background:var(--cream-2)}
  .chip b{color:var(--saffron-dark);font-weight:400;font-family:'Marcellus',serif}

  .how{background:var(--cream)}
  .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
  .step{border:1px solid var(--line);border-radius:8px;padding:28px 24px;background:var(--surface);box-shadow:var(--shadow-sm)}
  .step .n{font-family:'Marcellus',serif;font-size:2rem;color:var(--saffron);line-height:1}
  .step h3{font-size:var(--sp-t-lg);margin:12px 0 8px}
  .step p{color:var(--muted);font-size:.93rem;margin:0}

  .contact{background:linear-gradient(180deg,var(--cream),var(--cream-2))}
  .contact-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:52px;align-items:start}
  .contact-info h3{font-size:var(--sp-t-h3);margin:0 0 6px}
  .info-row{display:flex;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}
  .info-row .ic{color:var(--saffron);flex:0 0 22px;margin-top:3px}
  .info-row .label{font-family:'Marcellus SC',serif;letter-spacing:.1em;font-size:.8rem;text-transform:uppercase;color:var(--gold-deep);display:block;margin-bottom:3px}
  .info-row .val{color:var(--ink);font-size:1rem} .info-row .val a{color:var(--saffron-dark)}
  .form{background:var(--surface);border:1px solid var(--line-gold);border-radius:10px;padding:32px 30px;box-shadow:var(--shadow)}
  .form h3{margin:0 0 4px} .form>p{color:var(--muted);font-size:.9rem;margin:0 0 18px}
  .field{margin-bottom:14px}
  .field label{display:block;font-family:'Marcellus SC',serif;letter-spacing:.1em;text-transform:uppercase;font-size:.64rem;color:var(--gold-deep);margin-bottom:6px}
  .field input,.field select,.field textarea{width:100%;background:var(--cream);border:1px solid var(--line-strong);color:var(--ink);padding:12px 14px;border-radius:4px;font-family:'Spectral',serif;font-size:.98rem}
  .field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  .form .btn-primary{width:100%;justify-content:center;margin-top:6px}
  .form .hint{color:var(--muted-2);font-size:.78rem;margin-top:10px;text-align:center}
  .foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:40px;margin-bottom:40px}
  .foot-brand .full{font-family:'Marcellus',serif;font-size:1.16rem;color:var(--cream)}
  .foot-brand .sub{font-family:'Marcellus SC',serif;letter-spacing:.2em;text-transform:uppercase;font-size:.62rem;color:var(--saffron-bright);margin-top:4px}
  .foot-brand p{color:rgba(250,243,229,.6);font-size:.9rem;margin:14px 0 0;max-width:38ch}
  .foot-col h3{font-family:'Marcellus SC',serif;letter-spacing:.16em;text-transform:uppercase;font-size:var(--sp-t-eyebrow);color:var(--gold-soft);margin:0 0 16px}
  .foot-col a{display:block;color:rgba(250,243,229,.72);font-size:.9rem;padding:5px 0;transition:color .25s} .foot-col a:hover{color:#fff}
  .foot-bottom{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;border-top:1px solid rgba(231,207,156,.2);padding-top:24px;color:rgba(250,243,229,.55);font-size:.8rem}

  .reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}
  .reveal.in{opacity:1;transform:none}

  /* modal */
  .modal-back{position:fixed;inset:0;background:rgba(30,17,7,.66);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:400;display:none;align-items:center;justify-content:center;padding:20px}
  .modal-back.open{display:flex}
  .modal{background:var(--surface);border:1px solid var(--line-gold);border-radius:12px;max-width:640px;width:100%;max-height:88vh;overflow:auto;box-shadow:var(--shadow);position:relative}
  .modal .mhead{padding:28px 32px 18px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--surface)}
  .modal .mhead .cat{font-family:'Marcellus SC',serif;letter-spacing:.16em;text-transform:uppercase;font-size:.62rem;color:var(--saffron)}
  .modal .mhead h3{margin:6px 0 0;font-size:var(--sp-t-xl)}
  .modal .mhead .rg{color:var(--muted-2);font-style:italic;font-family:var(--sp-display);font-size:1.05rem}
  .modal .mclose{position:absolute;top:20px;right:22px;background:none;border:0;font-size:1.6rem;color:var(--muted);cursor:pointer;line-height:1}
  .modal .mbody{padding:22px 32px 30px}
  .modal .mbody p{margin:0 0 18px;color:var(--ink)}
  .modal .meta{display:flex;gap:22px;flex-wrap:wrap;margin:0 0 20px}
  .modal .meta .m{background:var(--cream-2);border:1px solid var(--line-gold);border-radius:8px;padding:12px 18px}
  .modal .meta .m .k{font-family:'Marcellus SC',serif;letter-spacing:.1em;text-transform:uppercase;font-size:.58rem;color:var(--gold-deep)}
  .modal .meta .m .v{font-family:'Marcellus',serif;color:var(--espresso);font-size:1.05rem}
  .modal h4{font-family:'Marcellus SC',serif;letter-spacing:.06em;font-size:var(--sp-t-sm);color:var(--saffron-dark);margin:22px 0 10px;display:flex;align-items:center;gap:10px}
  .modal h4::before{content:"";width:20px;height:1px;background:var(--gold)}
  .modal ul{margin:0;padding-left:2px;list-style:none}
  .modal ul li{position:relative;padding:6px 0 6px 20px;color:var(--muted);font-size:.96rem}
  .modal ul li::before{content:"";position:absolute;left:0;top:.85em;width:6px;height:6px;background:var(--gold);transform:rotate(45deg)}
  .modal .mfoot{margin-top:24px;display:flex;gap:12px;flex-wrap:wrap}

  /* floating action buttons */
  .wa-fab{position:fixed;bottom:22px;left:22px;z-index:350;width:54px;height:54px;border-radius:50%;background:#25d366;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 26px -10px rgba(37,211,102,.7);transition:transform .25s}
  .wa-fab:hover{transform:translateY(-2px)}
  .msg{max-width:85%;padding:11px 14px;border-radius:12px;font-size:.94rem;line-height:1.55}
  .msg.bot{background:var(--surface);border:1px solid var(--line);color:var(--ink);align-self:flex-start;border-bottom-left-radius:4px}
  .msg.user{background:var(--saffron);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}
  .msg.bot a{color:var(--saffron-dark)}
  .typing{display:flex;gap:4px;padding:6px 2px}
  .typing span{width:7px;height:7px;border-radius:50%;background:var(--gold);animation:bl 1.2s infinite}
  .typing span:nth-child(2){animation-delay:.2s} .typing span:nth-child(3){animation-delay:.4s}
  @keyframes bl{0%,60%,100%{opacity:.3}30%{opacity:1}}

  @media(max-width:980px){
    .hero-grid{grid-template-columns:1fr;text-align:center}
    .hero p.lede{margin-left:auto;margin-right:auto} .hero-cta{justify-content:center}
    .portrait{order:-1;margin-bottom:6px}
    .about-grid,.contact-grid,.muh-panel{grid-template-columns:1fr;gap:34px}
    .cer-grid{grid-template-columns:1fr} .modes-grid{grid-template-columns:1fr}
    .steps{grid-template-columns:1fr 1fr} .scripture li{width:100%} .foot-grid{grid-template-columns:1fr 1fr}
  }
  /* The desktop nav is tight even at 1200px once Marcellus loads. Collapse to
     the menu button while there is still real room. */
  @media(max-width:1140px){
    nav.links{display:none}
    nav.links.open{display:flex;flex-direction:column;position:absolute;top:100%;right:14px;left:14px;background:var(--surface);border:1px solid var(--line-gold);border-radius:8px;padding:18px;gap:14px;align-items:flex-start;box-shadow:var(--shadow)}
    .nav-toggle{display:block}
    .nav-toggle{display:block;padding:6px 10px;min-width:44px;min-height:44px}
  }
  @media(max-width:680px){
    body{font-size:17px}
    .steps,.foot-grid{grid-template-columns:1fr} .field-row,.muh-form .frow{grid-template-columns:1fr}
    section{padding:64px 0}
  }
  @media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}

  .book{background:var(--surface)}
  .book-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:26px}
  .book-tile{display:flex;flex-direction:column;gap:4px;align-items:center;text-align:center;padding:26px 18px;border:1px solid var(--line-gold);border-radius:12px;background:linear-gradient(170deg,#fff,var(--cream));transition:transform .3s,box-shadow .3s}
  .book-tile:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
  .book-tile .ic{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:6px}
  .book-tile.call .ic{background:#e9f3e4;color:#4c7a3f}
  .book-tile.wa .ic{background:#e3f9ec;color:#1eaf5d}
  .book-tile.mail .ic{background:#fbeede;color:var(--saffron-dark)}
  .book-tile.sched .ic{background:#f0e6d0;color:var(--gold-deep)}
  .book-tile .t{font-family:'Marcellus',serif;font-size:1.12rem;color:var(--espresso)}
  .book-tile .s{font-size:.82rem;color:var(--muted)}
  .cal-wrap{border:1px solid var(--line);border-radius:12px;overflow:hidden;min-height:110px;background:var(--cream)}
  #cal-embed{min-height:110px}
  .cal-fallback{padding:26px 24px;text-align:center;color:var(--muted);font-size:.92rem}
  .cal-fallback b{color:var(--saffron-dark);font-weight:400;font-family:'Marcellus',serif}
  @media(max-width:820px){.book-tiles{grid-template-columns:1fr 1fr}}
  @media(max-width:520px){.book-tiles{grid-template-columns:1fr}}

  .test{background:var(--cream)}
  .test-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;max-width:880px;margin:0 auto}
  .t-card{border:1px solid var(--line);border-radius:8px;padding:30px 28px;background:var(--surface);box-shadow:var(--shadow-sm)}
  .t-card .stars{color:var(--saffron);letter-spacing:3px;font-size:.9rem}
  .t-card p{color:var(--ink);font-style:italic;font-family:var(--sp-display);font-size:1.18rem;margin:12px 0 16px;line-height:1.5}
  .t-card .who{font-family:'Marcellus SC',serif;letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;color:var(--gold-deep)}
  @media(max-width:820px){.test-grid{grid-template-columns:1fr}}

  /* FAQ */
  .faq{background:var(--surface)}
  .faq-list{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:14px}
  .faq-item{border:1px solid var(--line);border-radius:10px;background:var(--cream);overflow:hidden;transition:border-color .25s,box-shadow .25s}
  .faq-item[open]{border-color:var(--line-gold);box-shadow:var(--shadow-sm)}
  .faq-item summary{list-style:none;cursor:pointer;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-family:'Marcellus',serif;font-size:1.08rem;color:var(--espresso);font-weight:500}
  .faq-item summary::-webkit-details-marker{display:none}
  .faq-item summary .q-ico{flex:0 0 auto;width:26px;height:26px;border-radius:50%;border:1.5px solid var(--gold);color:var(--gold-deep);display:grid;place-items:center;font-size:1.1rem;line-height:1;transition:transform .3s,background .25s,color .25s}
  .faq-item[open] summary .q-ico{transform:rotate(45deg);background:var(--saffron);border-color:var(--saffron);color:#fff}
  .faq-item .faq-a{padding:0 24px 22px;color:var(--muted);line-height:1.72;font-size:1rem}
  @media(max-width:640px){.faq-item summary{font-size:1rem;padding:17px 18px}.faq-item .faq-a{padding:0 18px 18px}}


  /* --- sub-page / article additions --- */  .crumbs span{margin:0 8px;opacity:.6}
  .page-hero{background:linear-gradient(180deg,var(--cream) 0%,var(--cream-2) 100%);padding:74px 0 54px;border-bottom:1px solid var(--line-gold)}
  .page-hero .eyebrow{margin-bottom:10px}
  .page-hero h1{font-family:var(--sp-display);font-weight:600;font-size:var(--sp-t-h1);line-height:1.08;color:var(--espresso);margin:0 0 18px}
  .page-hero .lede{font-size:1.16rem;color:var(--muted);max-width:760px;line-height:1.7}
  .prose{max-width:760px;margin:0 auto}
  .prose h2{font-family:'Marcellus',serif;font-size:var(--sp-t-h3);color:var(--espresso);margin:44px 0 14px;font-weight:500}
  .prose h3{font-family:'Marcellus',serif;font-size:var(--sp-t-lg);color:var(--saffron-dark);margin:28px 0 8px;font-weight:500}
  .prose p{margin:0 0 16px;color:var(--ink)}
  .prose ul{margin:0 0 18px;padding-left:0;list-style:none}
  .prose ul li{position:relative;padding-left:26px;margin-bottom:11px;color:var(--ink)}
  .prose ul li::before{content:"";position:absolute;left:2px;top:11px;width:8px;height:8px;border:1.5px solid var(--gold);border-radius:50%;transform:rotate(45deg)}
  .prose ol{padding-left:22px;margin:0 0 18px}
  .prose ol li{margin-bottom:11px}
  .prose strong{color:var(--espresso-2)}
  .callout{background:var(--surface);border:1px solid var(--line-gold);border-left:4px solid var(--saffron);border-radius:8px;padding:20px 24px;margin:26px 0;box-shadow:var(--shadow-sm)}
  .callout p{margin:0;color:var(--muted)}
  .callout strong{color:var(--saffron-dark)}
  .quote-card{background:var(--cream-2);border:1px solid var(--line-gold);border-radius:10px;padding:28px 30px;margin:30px auto;max-width:760px}
  .quote-card .stars{color:var(--saffron);letter-spacing:3px;margin-bottom:10px}
  .quote-card p{font-style:italic;font-size:1.12rem;color:var(--espresso);margin:0 0 8px;font-family:var(--sp-display)}
  .quote-card .who{font-size:.86rem;color:var(--muted-2);letter-spacing:.05em}
  .page-cta{background:var(--espresso);color:var(--cream);border-radius:12px;padding:40px 36px;margin:44px auto 0;max-width:760px;text-align:center}
.page-cta .btn-ghost{color:#fdf6e9;border-color:rgba(231,207,156,.55)}.page-cta .btn-ghost:hover{background:rgba(253,246,233,.10)}
  .page-cta h2{color:#fff;margin:0 0 10px;border:0}
  .page-cta p{color:var(--gold-soft);margin:0 0 22px}
  .page-cta .btn-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
  .related{max-width:760px;margin:40px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:16px}
  .related a{display:block;border:1px solid var(--line);border-radius:10px;padding:18px 20px;text-decoration:none;background:var(--surface);transition:border-color .25s,box-shadow .25s}
  .related a:hover{border-color:var(--line-gold);box-shadow:var(--shadow-sm)}
  .related .k{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-deep)}
  .related .t{font-family:'Marcellus',serif;color:var(--espresso);font-size:1.06rem;margin-top:4px}
  @media(max-width:640px){.related{grid-template-columns:1fr}}
  @media(max-width:640px){.brand .mark{width:78px;height:35px;flex:0 0 78px}}
  section.body-wrap{padding:52px 0}
.emblem{background-image:url("../img/emblem.webp");background-size:contain;background-position:left center;background-repeat:no-repeat;display:inline-block}.foot-emblem{width:104px;height:46px;display:block;margin:0 0 14px}.lineage-seal .seal-mark{display:block!important}
.foot-bottom a{color:rgba(231,207,156,.85);text-decoration:none}.foot-bottom a:hover{color:#fff}.foot-legal{margin:0 8px}
