/* Authoris (authoris.ai) — standalone brand stylesheet. Derived from site-operantcore.css. */
:root{
    --navy:#17262a; --navy-deep:#0f1a1d; --navy-line:#26393e;
    --cream:#f3f0e8; --cream-dark:#e9e4d6; --paper:#f8f6f0;
    --ink:#1d2526; --body:#41494a;
    --oxblood:#2e5a52; --gold:#c39a57; --gold-dim:#9b7a42;
    --mid:#848a86; --line:#d6d2c3; --faint:#b3b8b2;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  ::selection{background:var(--gold);color:var(--navy-deep)}
  body{font-family:'Newsreader',Georgia,serif;color:var(--body);background:var(--cream);
       line-height:1.65;font-size:17px;-webkit-font-smoothing:antialiased}
  .wrap{max-width:1180px;margin:0 auto;padding-left:clamp(22px,5vw,64px);padding-right:clamp(22px,5vw,64px)}

  /* ---------- type system ---------- */
  h1,h2{font-weight:600;color:var(--ink);letter-spacing:-.015em;line-height:1.04;text-wrap:balance}
  h1{font-size:clamp(3rem,7vw,5.4rem)}
  h2{font-size:clamp(2.1rem,4.2vw,3.3rem)}
  h1 em,h2 em{font-style:italic;font-weight:400}
  .lede{font-size:clamp(1.02rem,1.4vw,1.16rem);line-height:1.7;max-width:34em}
  .sans{font-family:'IBM Plex Sans',system-ui,sans-serif}

  /* numbered kicker: — 01 · THE PROBLEM */
  .kick{display:flex;align-items:center;gap:14px;margin-bottom:2.2rem}
  .kick .no{font-family:'IBM Plex Sans',sans-serif;font-weight:600;font-size:.72rem;
            letter-spacing:.08em;color:var(--gold)}
  .kick .t{font-family:'IBM Plex Sans',sans-serif;font-weight:700;font-size:.72rem;
           letter-spacing:.26em;text-transform:uppercase;color:var(--gold)}
  .kick::before{content:"";width:34px;height:1px;background:var(--gold)}
  .ondark .kick .t,.ondark .kick .no{color:var(--gold)}

  a.btn{display:inline-flex;align-items:center;gap:.8em;font-family:'IBM Plex Sans',sans-serif;
        font-weight:700;font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;
        padding:1.05em 1.9em;text-decoration:none;transition:background .18s,color .18s,border-color .18s}
  a.btn .arr{font-family:'Newsreader',serif;font-size:1.05rem;letter-spacing:0;line-height:0;transform:translateY(-1px)}
  a.btn.solid{background:var(--gold);color:var(--navy-deep)}
  a.btn.solid:hover{background:#d4ad6b}
  a.btn.ghost{border:1px solid var(--navy-line);color:var(--cream)}
  a.btn.ghost:hover{border-color:var(--gold);color:var(--gold)}

  section{padding:clamp(84px,11vw,132px) 0}
  .grid{display:grid;gap:clamp(32px,4vw,64px)}
  @media(min-width:880px){
    .g-hero{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center}
    .g-split{grid-template-columns:minmax(0,6fr) minmax(0,5fr)}
    .g-split>.right{padding-top:.9rem}
    .g4{grid-template-columns:repeat(4,1fr)}
    .g3{grid-template-columns:repeat(3,1fr)}
    .g5{grid-template-columns:repeat(5,1fr)}
  }

  /* ---------- header ---------- */
  header{background:var(--navy-deep);border-bottom:1px solid var(--navy-line)}
  header .wrap{display:flex;align-items:center;justify-content:space-between;height:76px}
  .mark{display:flex;align-items:center;gap:14px;text-decoration:none}
  .mark svg{display:block}
  .mark .w{font-family:'IBM Plex Sans',sans-serif;font-weight:700;font-size:.86rem;
           letter-spacing:.3em;color:var(--cream)}
  .mark .sub{font-family:'IBM Plex Sans',sans-serif;font-weight:600;font-size:.6rem;
             letter-spacing:.24em;color:var(--mid);display:block;margin-top:2px}
  nav{font-family:'IBM Plex Sans',sans-serif;font-size:.72rem;font-weight:700;
      letter-spacing:.22em;text-transform:uppercase}
  nav a{color:var(--faint);text-decoration:none;margin-left:2.6em;transition:color .15s}
  nav a:hover{color:var(--gold)}
  nav a.cta{color:var(--gold)}

  /* ---------- hero ---------- */
  .hero{background:var(--navy);color:var(--cream);padding:clamp(90px,11vw,150px) 0 0;overflow:hidden}
  .hero .meta{font-family:'IBM Plex Sans',sans-serif;font-weight:600;font-size:.68rem;
              letter-spacing:.3em;text-transform:uppercase;color:var(--mid);margin-bottom:3rem}
  .hero .meta b{color:var(--gold);font-weight:600}
  .hero h1{color:var(--cream)}
  .hero h1 em{color:var(--gold)}
  .hero .lede{color:#b9bdb3;margin:2rem 0 2.6rem}
  .hero .plate{display:flex;justify-content:center}
  .hero .actions{display:flex;gap:1.2em;flex-wrap:wrap;align-items:center}

  /* tenets strip */
  .tenets{background:var(--navy-deep);border-top:1px solid var(--navy-line);margin-top:clamp(70px,8vw,110px)}
  .tenets .wrap{display:grid;grid-template-columns:repeat(2,1fr);}
  @media(min-width:880px){.tenets .wrap{grid-template-columns:repeat(4,1fr)}}
  .tenet{padding:30px 28px 32px 0;border-left:1px solid var(--navy-line);padding-left:28px}
  .tenet:first-child{border-left:none;padding-left:0}
  .tenet h3{font-size:1.02rem;font-weight:600;color:var(--cream);margin-bottom:.35em}
  .tenet p{font-family:'IBM Plex Sans',sans-serif;font-size:.8rem;color:var(--mid);line-height:1.55}

  /* ---------- bands ---------- */
  .band-cream{background:var(--cream)}
  .band-paper{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .band-navy{background:var(--navy);color:var(--cream)}
  .band-ink{background:var(--navy-deep);color:var(--cream)}
  .band-ox{background:var(--oxblood);color:#e6efe9;position:relative;overflow:hidden}
  .ondark h2{color:var(--cream)}
  .ondark .lede{color:#adb3aa}
  .band-ox h2{color:#f2f6f1}
  .band-ox h2 em{color:#e3c58f}
  .band-ox .lede{color:#c9d8d0}
  .band-ox .kick .t,.band-ox .kick .no{color:#e3c58f}
  .band-ox .kick::before{background:#e3c58f}

  /* ---------- ledger table (BEFORE/DURING/AFTER) ---------- */
  .ledger{margin-top:clamp(48px,6vw,80px);border-top:1px solid var(--ink)}
  .ledger .lrow{display:grid;grid-template-columns:1fr;gap:8px 0;
                padding:clamp(28px,3.5vw,44px) 0;border-bottom:1px solid var(--line);position:relative}
  @media(min-width:880px){.ledger .lrow{grid-template-columns:64px minmax(0,5fr) minmax(0,6fr);gap:0 3vw;align-items:baseline}}
  .ledger .idx{font-family:'IBM Plex Sans',sans-serif;font-size:.72rem;font-weight:600;
               color:var(--mid);letter-spacing:.08em;padding-top:.9em}
  .ledger .word{font-size:clamp(1.9rem,3.2vw,2.7rem);font-weight:600;color:var(--ink);
                letter-spacing:.04em}
  .ledger p{max-width:36em;color:var(--body);font-size:.99rem}
  .ledger .tag{font-family:'IBM Plex Sans',sans-serif;font-size:.66rem;font-weight:700;
               letter-spacing:.22em;color:var(--gold-dim);text-transform:uppercase;display:block;margin-top:.55em}

  /* ---------- numbered columns ---------- */
  .cols{margin-top:clamp(44px,5.5vw,72px)}
  .col{border-top:1px solid var(--line);padding-top:1.3em}
  .ondark .col{border-top-color:var(--navy-line)}
  .col .n{font-family:'IBM Plex Sans',sans-serif;font-size:.68rem;font-weight:600;
          letter-spacing:.14em;color:var(--gold);display:block;margin-bottom:1.4em}
  .col h3{font-size:1.08rem;font-weight:600;color:var(--ink);margin-bottom:.45em}
  .ondark .col h3{color:var(--cream)}
  .col p{font-size:.9rem;line-height:1.6;color:var(--mid)}
  .ondark .col p{color:#939a93}

  /* ---------- from → to rows ---------- */
  .swap{margin-top:clamp(44px,5.5vw,64px);border-top:1px solid var(--ink)}
  .srow{display:grid;grid-template-columns:1fr;padding:26px 0;border-bottom:1px solid var(--line);gap:8px 0}
  @media(min-width:880px){.srow{grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:0 3vw}}
  .srow .from{font-family:'IBM Plex Sans',sans-serif;font-size:.78rem;font-weight:700;
              letter-spacing:.14em;text-transform:uppercase;color:var(--mid);padding-top:.35em}
  .srow .from b{display:block;color:var(--oxblood);margin-top:.3em}
  .srow p{font-size:.97rem;max-width:38em}

  /* ---------- definition ---------- */
  .defn{margin-top:clamp(52px,6vw,84px);padding:clamp(36px,4.5vw,56px) clamp(28px,4vw,56px);
        background:var(--navy);border-left:2px solid var(--gold);position:relative}
  .defn .dl{font-family:'IBM Plex Sans',sans-serif;font-size:.66rem;font-weight:700;
            letter-spacing:.26em;color:var(--gold);text-transform:uppercase;display:block;margin-bottom:1.2em}
  .defn p{font-size:clamp(1.15rem,1.8vw,1.5rem);line-height:1.55;color:var(--cream);
          font-style:italic;font-weight:300;max-width:none}
  .defn p b{color:var(--gold);font-style:normal;font-weight:600}

  /* ---------- oxblood watermark ---------- */
  .band-ox .wm{position:absolute;right:-140px;top:50%;transform:translateY(-50%);opacity:.13;pointer-events:none}

  /* ---------- cta ---------- */
  .cta{text-align:left}
  .cta .wrap{display:grid;gap:40px}
  @media(min-width:880px){.cta .wrap{grid-template-columns:minmax(0,7fr) minmax(0,4fr);align-items:end}}
  .cta h2{font-size:clamp(2.4rem,5vw,4rem)}
  .cta .lede{margin-top:1.6rem}
  .cta .right{display:flex;flex-direction:column;gap:1.1em;align-items:flex-start}
  .cta .mail{font-family:'IBM Plex Sans',sans-serif;font-size:.85rem;color:var(--mid);letter-spacing:.04em}
  .cta .mail a{color:var(--faint);text-decoration:none;border-bottom:1px solid var(--navy-line)}
  .cta .mail a:hover{color:var(--gold);border-color:var(--gold)}

  /* ---------- footer ---------- */
  footer{background:var(--navy-deep);border-top:1px solid var(--navy-line);
         font-family:'IBM Plex Sans',sans-serif;color:var(--mid);font-size:.78rem}
  footer .wrap{display:grid;gap:26px;padding-top:44px;padding-bottom:44px}
  @media(min-width:880px){footer .wrap{grid-template-columns:2fr 1fr 1fr;align-items:start}}
  footer .fmark{display:flex;align-items:center;gap:12px;margin-bottom:14px}
  footer .fmark .w{font-weight:700;font-size:.78rem;letter-spacing:.28em;color:var(--cream)}
  footer .legal{line-height:1.8;color:#68716d}
  footer h4{font-size:.64rem;font-weight:700;letter-spacing:.24em;color:var(--faint);
            text-transform:uppercase;margin-bottom:1em}
  footer a{color:var(--faint);text-decoration:none}
  footer a:hover{color:var(--gold)}
  footer img{height:46px;display:block;margin-top:6px}

  /* ---------- Authoris additions ---------- */
  .hero .origin{font-family:'IBM Plex Sans',sans-serif;font-size:.74rem;letter-spacing:.06em;
                color:var(--mid);margin-top:2.2rem;max-width:34em}
  .hero .origin i{font-family:'Newsreader',serif;font-size:.95rem;color:var(--faint);letter-spacing:0}
  .srow .from b{color:var(--oxblood)}
  footer .note{line-height:1.7;color:#68716d;max-width:20em}
  footer .note i{font-family:'Newsreader',serif;font-size:.92rem;color:var(--faint)}
  .hero .plate svg{max-width:100%;height:auto}
  .band-ox .wm{max-width:none}
  @media(max-width:879px){.tenet:nth-child(odd){border-left:none;padding-left:0}}
  @media(max-width:640px){nav a:not(.cta){display:none} .mark .sub{display:none}}
