:root{
    --bg:#0a0806;--panel:#13100c;--panel2:#1c1710;--parch:#e8dfc8;
    --gold:#c8960a;--gold-s:#e8c040;--lapis:#1e3d7a;--lapis-s:#4a7abf;
    --rose:#b03428;--line:#2e2618;--faint:#7a7060;--soft:#3a3228;
  }
  *{box-sizing:border-box;margin:0;padding:0;}
  body{background:var(--bg);color:var(--parch);
    font-family:"Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;
    line-height:1.7;min-height:100vh;}
  a{color:var(--gold);text-decoration:none;}
  a:hover{color:var(--gold-s);}
  .wrap{max-width:1080px;margin:0 auto;padding:0 24px;}

  /* ── Nav ─────────────────────────────────────────── */
  .site-header{position:sticky;top:0;z-index:100;background:rgba(10,8,6,.92);
    backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
  .nav-inner{max-width:1080px;margin:0 auto;padding:0 24px;
    display:flex;align-items:center;justify-content:space-between;height:64px;}
  .nav-brand{display:flex;align-items:center;gap:14px;text-decoration:none;}
  .nav-logo{width:38px;height:38px;object-fit:contain;}
  .nav-brand-text{line-height:1.1;}
  .nav-brand-top{display:block;font-size:10.5px;letter-spacing:.16em;
    text-transform:uppercase;color:var(--faint);}
  .nav-brand-name{display:block;font-size:15px;font-weight:600;color:var(--gold);}
  .nav-links{display:flex;align-items:center;gap:32px;list-style:none;}
  .nav-links a{font-size:13.5px;letter-spacing:.06em;text-transform:uppercase;
    color:var(--parch);transition:color .15s;}
  .nav-links a:hover,.nav-links a.active{color:var(--gold-s);}
  .nav-links a.active{border-bottom:1px solid var(--gold-s);padding-bottom:1px;}
  .nav-cta{padding:8px 18px;background:var(--rose);color:var(--parch) !important;
    border-radius:5px;font-size:13px !important;letter-spacing:.04em !important;
    text-transform:uppercase !important;transition:background .15s !important;border-bottom:none !important;}
  .nav-cta:hover{background:#8c2018 !important;}
  .nav-toggle{display:none;flex-direction:column;gap:5px;cursor:pointer;
    background:none;border:none;padding:4px;}
  .nav-toggle span{width:22px;height:2px;background:var(--parch);border-radius:1px;
    transition:all .2s;display:block;}
  .mobile-nav{display:none;flex-direction:column;background:var(--panel);
    border-bottom:1px solid var(--line);padding:16px 24px 20px;gap:14px;}
  .mobile-nav a{font-size:14px;letter-spacing:.06em;text-transform:uppercase;
    color:var(--parch);padding:8px 0;border-bottom:1px solid var(--line);}
  .mobile-nav a:last-child{border-bottom:none;}
  .mobile-nav.open{display:flex;}
  @media(max-width:680px){
    .nav-links{display:none;} .nav-toggle{display:flex;}
  }

  /* ── Hero ─────────────────────────────────────────── */
  .hero{padding:80px 0 70px;text-align:center;position:relative;overflow:hidden;}
  .hero::before{content:"";position:absolute;inset:0;
    background:radial-gradient(ellipse at 50% 0%,rgba(200,150,10,.10),transparent 65%);
    pointer-events:none;}
  .hero-eyebrow{font-size:11px;letter-spacing:.28em;text-transform:uppercase;
    color:var(--gold);margin-bottom:20px;}
  .hero-title{font-size:clamp(32px,6vw,64px);font-weight:400;line-height:1.1;
    color:var(--parch);margin-bottom:16px;}
  .hero-title em{font-style:normal;color:var(--gold-s);}
  .hero-subtitle{font-size:clamp(14px,2vw,18px);color:var(--faint);
    font-style:italic;max-width:60ch;margin:0 auto 36px;}
  .hero-seal{margin:0 auto 40px;max-width:480px;display:block;}
  .hero-seal img{width:100%;height:auto;border-radius:4px;}
  .hero-divider{width:80px;height:1px;background:var(--gold);margin:0 auto 32px;}

  /* ── Buttons ──────────────────────────────────────── */
  .btn{display:inline-flex;align-items:center;gap:8px;padding:12px 26px;
    font-family:inherit;font-size:13.5px;letter-spacing:.07em;
    text-transform:uppercase;border-radius:4px;cursor:pointer;transition:all .18s;
    text-decoration:none;border:none;}
  .btn-gold{background:var(--gold);color:#0a0806;}
  .btn-gold:hover{background:var(--gold-s);color:#0a0806;}
  .btn-outline{background:transparent;color:var(--gold);
    border:1px solid var(--gold);}
  .btn-outline:hover{background:rgba(200,150,10,.1);}

  /* ── Section ──────────────────────────────────────── */
  .section{padding:72px 0;}
  .section-divider{border:none;border-top:1px solid var(--line);margin:0;}
  .section-eyebrow{font-size:10.5px;letter-spacing:.26em;text-transform:uppercase;
    color:var(--gold);margin-bottom:12px;}
  .section-title{font-size:clamp(24px,4vw,38px);font-weight:400;
    color:var(--parch);margin-bottom:16px;line-height:1.15;}
  .section-lede{font-size:clamp(14px,2vw,17px);color:var(--faint);
    font-style:italic;max-width:68ch;margin-bottom:32px;}
  .section-body p{font-size:15.5px;color:var(--parch);margin-bottom:18px;
    max-width:70ch;}
  .section-body p:last-child{margin-bottom:0;}

  /* ── Card Grid ────────────────────────────────────── */
  .card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
  @media(max-width:760px){.card-grid{grid-template-columns:1fr;}}
  .card{background:var(--panel);border:1px solid var(--line);border-radius:10px;
    padding:28px 24px;transition:border-color .18s,transform .18s;}
  .card:hover{border-color:var(--gold);transform:translateY(-2px);}
  .card-glyph{font-size:28px;margin-bottom:14px;}
  .card-title{font-size:17px;color:var(--gold-s);margin-bottom:10px;}
  .card-body{font-size:14px;color:var(--faint);line-height:1.65;}

  /* ── Symbol banner ────────────────────────────────── */
  .symbol-row{display:flex;align-items:center;justify-content:center;
    gap:60px;padding:48px 0;flex-wrap:wrap;}
  .symbol-item{text-align:center;}
  .symbol-item img{width:120px;height:auto;opacity:.9;}
  .symbol-caption{font-size:11px;letter-spacing:.12em;text-transform:uppercase;
    color:var(--faint);margin-top:12px;}

  /* ── Placeholder blocks ───────────────────────────── */
  .placeholder{background:var(--panel2);border:1px dashed var(--line);
    border-radius:8px;padding:32px;text-align:center;font-size:13.5px;
    color:var(--soft);font-style:italic;margin-bottom:24px;}

  /* ── Quote ────────────────────────────────────────── */
  .blockquote{border-left:3px solid var(--gold);padding:20px 28px;
    background:rgba(200,150,10,.06);border-radius:0 8px 8px 0;margin:32px 0;}
  .blockquote p{font-size:17px;color:var(--parch);font-style:italic;
    line-height:1.65;margin-bottom:8px;}
  .blockquote cite{font-size:12px;color:var(--faint);letter-spacing:.08em;
    text-transform:uppercase;}

  /* ── Triad ────────────────────────────────────────── */
  .triad{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
    background:var(--line);border-radius:10px;overflow:hidden;margin:32px 0;}
  .triad-cell{background:var(--panel);padding:28px 22px;}
  .triad-label{font-size:10px;letter-spacing:.22em;text-transform:uppercase;
    color:var(--gold);margin-bottom:8px;}
  .triad-name{font-size:20px;color:var(--gold-s);margin-bottom:10px;}
  .triad-role{font-size:13px;color:var(--faint);line-height:1.6;}
  @media(max-width:640px){.triad{grid-template-columns:1fr;}}

  /* ── Contact form ─────────────────────────────────── */
  .form-group{margin-bottom:18px;}
  .form-label{display:block;font-size:12px;letter-spacing:.1em;
    text-transform:uppercase;color:var(--faint);margin-bottom:6px;}
  .form-input,.form-textarea{width:100%;background:var(--panel2);
    border:1px solid var(--line);border-radius:5px;padding:11px 14px;
    font-family:inherit;font-size:15px;color:var(--parch);outline:none;
    transition:border-color .15s;}
  .form-input:focus,.form-textarea:focus{border-color:var(--gold);}
  .form-textarea{min-height:140px;resize:vertical;}
  .form-half{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
  @media(max-width:520px){.form-half{grid-template-columns:1fr;}}

  /* ── Footer ───────────────────────────────────────── */
  .site-footer{border-top:1px solid var(--line);padding:40px 24px;
    text-align:center;color:var(--soft);font-size:12.5px;}
  .footer-logo{width:48px;margin:0 auto 14px;opacity:.6;display:block;}
  .footer-links{display:flex;justify-content:center;gap:28px;margin-bottom:14px;
    flex-wrap:wrap;}
  .footer-links a{font-size:12px;letter-spacing:.08em;text-transform:uppercase;
    color:var(--soft);}
  .footer-links a:hover{color:var(--gold);}

/* ---------- inquiry form ---------- */
/* Nav */
  .site-header{position:sticky;top:0;z-index:100;background:rgba(10,8,6,.92);
    backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
/* Hero */
  .hero{padding:64px 0 56px;text-align:center;}
/* Section */
  .section{padding:72px 0;}
/* Status banners */
  .banner{padding:16px 22px;border-radius:8px;margin-bottom:28px;font-size:14.5px;}
.banner-success{background:rgba(58,120,58,.15);border:1px solid rgba(58,120,58,.4);
    color:#90c890;}
.banner-error{background:rgba(176,52,40,.12);border:1px solid rgba(176,52,40,.4);
    color:#e08878;}
.banner-invalid{background:rgba(176,130,10,.1);border:1px solid rgba(176,130,10,.35);
    color:#d4a840;}
.banner ul{margin:10px 0 0 20px;}
.banner li{margin-bottom:4px;}
/* Form */
  .form-group{margin-bottom:18px;}
.form-input.err,.form-textarea.err{border-color:var(--rose);}
.honeypot{position:absolute;left:-9999px;opacity:0;pointer-events:none;}
.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 26px;
    font-family:inherit;font-size:13.5px;letter-spacing:.07em;text-transform:uppercase;
    border-radius:4px;cursor:pointer;transition:all .18s;text-decoration:none;border:none;}
/* Sidebar */
  .blockquote{border-left:3px solid var(--gold);padding:20px 28px;
    background:rgba(200,150,10,.06);border-radius:0 8px 8px 0;margin:32px 0;}
/* FAQ details */
  details{background:var(--panel);border:1px solid var(--line);border-radius:8px;
    padding:16px 18px;margin-bottom:10px;}
details[open]{border-color:rgba(200,150,10,.3);}
summary{font-size:14.5px;color:var(--parch);cursor:pointer;list-style:none;
    display:flex;justify-content:space-between;align-items:center;}
summary::after{content:"+";color:var(--gold);font-size:18px;transition:transform .2s;}
details[open] summary::after{transform:rotate(45deg);}
details p{font-size:13.5px;color:var(--faint);margin-top:12px;line-height:1.65;}
/* Contact info box */
  .info-box{background:var(--panel2);border:1px solid var(--line);
    border-radius:10px;padding:24px;margin-top:32px;}
/* Grid */
  .two-col{display:grid;grid-template-columns:1fr 1fr;gap:64px;}
/* Footer */
  .site-footer{border-top:1px solid var(--line);padding:40px 24px;
    text-align:center;color:var(--soft);font-size:12.5px;}

/* ---------- Study Circle of Sia ---------- */
.nav-links a{white-space:nowrap;}
.logo-frame{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;}
.logo-frame img{width:100%;height:auto;display:block;}
.event-list{display:grid;gap:16px;}
.event-card{display:grid;grid-template-columns:96px 1fr;gap:22px;align-items:start;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:20px 22px;}
.event-date{text-align:center;border:1px solid var(--line);border-radius:8px;padding:10px 4px;background:rgba(200,150,10,.06);}
.event-month{display:block;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);}
.event-day{display:block;font-size:34px;line-height:1.1;color:var(--parch);}
.event-weekday{display:block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);}
.event-kind{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--rose);margin:0 0 4px;}
.event-title{font-size:21px;font-weight:normal;color:var(--parch);margin:0 0 6px;line-height:1.3;}
.event-meta{font-size:13.5px;color:var(--gold-s);margin:0 0 10px;}
.event-meta a{color:var(--gold-s);}
.event-summary{font-size:14.5px;color:var(--faint);margin:0;line-height:1.65;}
.event-card.past{opacity:.72;}
.event-card.past .event-date{background:transparent;}
.event-note{font-size:12.5px;color:var(--faint);font-style:italic;margin-top:14px;text-align:center;}
.topic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;}
@media (max-width:820px){.two-col{grid-template-columns:1fr;gap:32px;}.event-card{grid-template-columns:72px 1fr;gap:14px;padding:16px;}.event-day{font-size:28px;}}
/* five navigation items: keep the brand on one line and switch to the menu button before the bar crowds */
.nav-brand-top{white-space:nowrap;}
@media(max-width:1020px){ .nav-links{display:none;} .nav-toggle{display:flex;} }
