
  /* Self-hosted typography — no third-party calls at runtime (CSP: font-src 'self'). */
  @font-face{font-family:'Marcellus';src:url('/assets/fonts/marcellus.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
  @font-face{font-family:'Tiro Devanagari Sanskrit';src:url('/assets/fonts/tiro-devanagari-sanskrit.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
  @font-face{font-family:'Hanken Grotesk';src:url('/assets/fonts/hanken-grotesk.woff2') format('woff2-variations'),url('/assets/fonts/hanken-grotesk.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}


  :root{
    --serif:'Marcellus',Georgia,'Times New Roman',serif;
    --deva:'Tiro Devanagari Sanskrit','Noto Serif Devanagari',serif;
    --sans:'Hanken Grotesk',ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;

    /* light day palette */
    --ground:#F7F3EA; --ground-2:#FCFAF3; --surface:#FFFFFF; --sunken:#F2EBDB;
    --ink:#231E19; --ink-soft:#655C50; --hair:#E7DECB;
    --head:#16203E; --accent:#B45F03; --accent-2:#D97706;

    /* brand constants (stable across themes) */
    --indigo:#0E1530; --saffron:#D97706; --saffron-lt:#F0B664; --saffron-dp:#B45F03;
    --ivory:#FAF7F0; --terra:#9B2C2C; --sage:#5F7548;

    /* night band = fixed dark island */
    --night-ink:#EEE8DA; --night-soft:#AAB1CC; --night-hair:rgba(240,182,100,.16);

    --maxw:1180px; --radius:18px;
  }
  @media (prefers-color-scheme:dark){
    :root:not([data-theme="light"]){
      --ground:#0A0F20; --ground-2:#0E1530; --surface:#141C39; --sunken:#0A1026;
      --ink:#ECE6D7; --ink-soft:#A6ADC8; --hair:rgba(240,182,100,.14);
      --head:#F3EEE1; --accent:#F0B664; --accent-2:#F6CE86;
    }
  }
  :root[data-theme="dark"]{
    --ground:#0A0F20; --ground-2:#0E1530; --surface:#141C39; --sunken:#0A1026;
    --ink:#ECE6D7; --ink-soft:#A6ADC8; --hair:rgba(240,182,100,.14);
    --head:#F3EEE1; --accent:#F0B664; --accent-2:#F6CE86;
  }

  *{box-sizing:border-box}
  html{scroll-behavior:smooth;scroll-padding-top:84px;-webkit-text-size-adjust:100%}
  @media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
  body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--sans);
    font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
  h1,h2,h3,h4{margin:0;color:var(--head);font-weight:400;line-height:1.1;text-wrap:balance}
  p{margin:0}
  a{color:inherit}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
  section{padding:96px 0}
  @media (max-width:720px){section{padding:64px 0}}

  .serif{font-family:var(--serif)}
  .eyebrow{font:600 12px/1 var(--sans);letter-spacing:.26em;text-transform:uppercase;color:var(--accent);
    display:inline-flex;align-items:center;gap:11px}
  .eyebrow::before{content:"";width:22px;height:1px;background:currentColor;opacity:.6}
  .lead{color:var(--ink-soft);font-size:1.12rem;max-width:60ch}

  /* mark animation — only the hero mark turns */
  .ak-spin{transform-box:fill-box;transform-origin:center;animation:ak-rot 26s linear infinite}
  @keyframes ak-rot{to{transform:rotate(360deg)}}
  @media (prefers-reduced-motion:reduce){.ak-spin{animation:none}}
  .mark svg,.mark>svg{display:block;width:100%;height:auto}

  /* buttons */
  .btn{display:inline-flex;align-items:center;gap:9px;font:600 15px/1 var(--sans);letter-spacing:.01em;
    padding:15px 26px;border-radius:999px;cursor:pointer;border:1.5px solid transparent;text-decoration:none;
    transition:transform .16s ease, box-shadow .16s ease, background .16s, border-color .16s, color .16s}
  .btn-primary{background:linear-gradient(118deg,#F3C377,#D97706);color:#2c1a05;
    box-shadow:0 12px 30px -12px rgba(217,119,6,.65)}
  .btn-primary:hover{transform:translateY(-2px);box-shadow:0 18px 40px -12px rgba(217,119,6,.75)}
  .btn-ghost{background:transparent;border-color:var(--hair);color:var(--ink)}
  .btn-ghost:hover{border-color:var(--accent-2);color:var(--accent)}

  /* nav */
  .nav{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--ground) 85%,transparent);
    backdrop-filter:blur(12px);border-bottom:1px solid var(--hair)}
  .nav .wrap{display:flex;align-items:center;gap:20px;height:72px}
  .brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex:none}
  .brand .mark{width:34px}
  .brand b{font-family:var(--serif);font-size:18px;letter-spacing:.16em;text-transform:uppercase;color:var(--head)}
  .navlinks{display:flex;gap:26px;margin-left:14px}
  .navlinks a{font-size:14.5px;color:var(--ink-soft);text-decoration:none;font-weight:500;transition:color .15s}
  .navlinks a:hover{color:var(--accent)}
  .navright{margin-left:auto;display:flex;align-items:center;gap:12px}
  .iconbtn{width:40px;height:40px;border-radius:999px;border:1px solid var(--hair);background:var(--surface);
    color:var(--ink);cursor:pointer;display:grid;place-items:center;font-size:16px}
  .iconbtn:hover{border-color:var(--accent-2)}
  .menubtn{display:none}
  @media (max-width:880px){
    .navlinks{display:none;position:absolute;top:72px;left:0;right:0;flex-direction:column;gap:0;
      background:var(--ground);border-bottom:1px solid var(--hair);padding:8px 0}
    .navlinks.open{display:flex}
    .navlinks a{padding:14px 24px;font-size:16px}
    .menubtn{display:grid}
    .nav .btn{display:none}
  }

  /* night band */
  .night{position:relative;overflow:hidden;color:var(--night-ink);
    background:
      radial-gradient(60% 120% at 50% -8%, #253063 0%, transparent 55%),
      radial-gradient(70% 90% at 82% 120%, #3a2a12 0%, transparent 58%),
      linear-gradient(165deg,#0A0F22,#0C1330 60%,#080c1c)}
  .night h1,.night h2,.night h3{color:var(--night-ink)}
  .night .lead,.night p{color:var(--night-soft)}
  .night .eyebrow{color:var(--saffron-lt)}
  .night .btn-ghost{border-color:var(--night-hair);color:var(--night-ink)}
  .night .btn-ghost:hover{border-color:var(--saffron-lt);color:var(--saffron-lt)}
  .stars{position:absolute;inset:0;pointer-events:none;opacity:.5;
    background-image:
      radial-gradient(1.6px 1.6px at 12% 20%,rgba(255,240,205,.5),transparent),
      radial-gradient(1.5px 1.5px at 78% 12%,rgba(255,240,205,.4),transparent),
      radial-gradient(1.4px 1.4px at 62% 66%,rgba(255,240,205,.4),transparent),
      radial-gradient(1.4px 1.4px at 30% 78%,rgba(255,240,205,.32),transparent),
      radial-gradient(1.4px 1.4px at 90% 52%,rgba(255,240,205,.3),transparent),
      radial-gradient(1.3px 1.3px at 46% 34%,rgba(255,240,205,.24),transparent)}

  /* hero */
  .hero{padding:92px 0 104px}
  .hero .grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;position:relative;z-index:2}
  @media (max-width:900px){.hero .grid{grid-template-columns:1fr;gap:40px;text-align:center}}
  .hero .deva{font-family:var(--deva);color:var(--saffron-lt);font-size:1.35rem;margin:18px 0 14px}
  .hero h1{font-family:var(--serif);font-size:clamp(2.5rem,6vw,4.2rem);letter-spacing:.01em}
  .hero h1 .amp{color:var(--saffron-lt)}
  .hero .sub{margin-top:22px;font-size:1.18rem;color:var(--night-soft);max-width:52ch}
  @media (max-width:900px){.hero .sub{margin-inline:auto}}
  .hero .cta{margin-top:34px;display:flex;gap:14px;flex-wrap:wrap}
  @media (max-width:900px){.hero .cta{justify-content:center}}
  .hero .keys{margin-top:26px;font-size:13px;color:var(--night-soft);letter-spacing:.02em;display:flex;gap:10px;flex-wrap:wrap}
  @media (max-width:900px){.hero .keys{justify-content:center}}
  .hero .keys span{white-space:nowrap}
  .hero .keys i{color:var(--saffron);font-style:normal;margin:0 2px}
  .heromark{position:relative;display:grid;place-items:center}
  .heromark .glow{position:absolute;width:78%;aspect-ratio:1;border-radius:50%;
    background:radial-gradient(circle,rgba(217,119,6,.34),transparent 66%);filter:blur(6px)}
  .heromark .mark{position:relative;width:min(430px,84vw);
    filter:drop-shadow(0 26px 60px rgba(217,119,6,.28))}
  .ghostwrap{position:absolute;inset:0;overflow:hidden;z-index:1;pointer-events:none}
  .ghost{position:absolute;right:-8%;top:50%;transform:translateY(-50%);width:min(760px,90vw);opacity:.06;color:#E79A2C}
  .ghost svg{width:100%;height:auto;display:block}

  /* standards strip */
  .strip{border-top:1px solid var(--night-hair);border-bottom:1px solid var(--night-hair)}
  .strip .wrap{display:flex;flex-wrap:wrap;gap:14px 34px;justify-content:center;padding:22px 24px}
  .chip{font:600 12.5px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--night-soft)}
  .chip b{color:var(--saffron-lt);font-weight:700}

  /* section head */
  .shead{max-width:para;margin-bottom:52px}
  .shead h2{font-family:var(--serif);font-size:clamp(2rem,4vw,2.9rem);margin-top:16px}
  .shead .lead{margin-top:16px}

  /* manifesto */
  .manifesto{font-family:var(--serif);font-size:clamp(1.7rem,3.6vw,2.6rem);line-height:1.28;color:var(--head);max-width:22ch}
  .manifesto .q{color:var(--accent)}
  .manifesto-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
  @media (max-width:820px){.manifesto-grid{grid-template-columns:1fr;gap:28px}}

  /* steps */
  .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
  @media (max-width:900px){.steps{grid-template-columns:1fr 1fr}}
  @media (max-width:520px){.steps{grid-template-columns:1fr}}
  .step{background:var(--ground-2);border:1px solid var(--hair);border-radius:var(--radius);padding:28px 24px 30px;position:relative}
  .step .n{font-family:var(--serif);font-size:15px;color:var(--accent);letter-spacing:.1em}
  .step .ic{width:44px;height:44px;margin:6px 0 16px;color:var(--accent-2)}
  .step h3{font-family:var(--serif);font-size:1.42rem;margin-bottom:9px}
  .step p{color:var(--ink-soft);font-size:.98rem}

  /* guards */
  .guards-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}
  @media (max-width:860px){.guards-grid{grid-template-columns:1fr;gap:40px}}
  .guards-mark{display:grid;place-items:center;position:relative}
  .guards-mark .glow{position:absolute;width:70%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(217,119,6,.3),transparent 66%)}
  .guards-mark .mark{position:relative;width:min(340px,74vw);filter:drop-shadow(0 20px 44px rgba(217,119,6,.26))}
  .guardlist{display:grid;grid-template-columns:1fr 1fr;gap:18px 26px}
  @media (max-width:520px){.guardlist{grid-template-columns:1fr}}
  .guard{display:flex;gap:13px;align-items:flex-start}
  .guard .dot{flex:none;width:34px;height:34px;border-radius:10px;background:rgba(240,182,100,.12);
    border:1px solid var(--night-hair);display:grid;place-items:center;color:var(--saffron-lt)}
  .guard h4{font-family:var(--serif);font-size:1.12rem;color:var(--night-ink);margin-bottom:3px;font-weight:400}
  .guard p{font-size:.9rem;color:var(--night-soft);line-height:1.5}

  /* two audiences */
  .two{display:grid;grid-template-columns:1fr 1fr;gap:22px}
  @media (max-width:820px){.two{grid-template-columns:1fr}}
  .panel{border:1px solid var(--hair);border-radius:var(--radius);padding:36px 32px;background:var(--surface)}
  .panel.accent{background:linear-gradient(180deg,var(--ground-2),var(--surface));border-color:color-mix(in srgb,var(--accent-2) 30%,var(--hair))}
  .panel .tag{font:600 12px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}
  .panel h3{font-family:var(--serif);font-size:1.7rem;margin:12px 0 6px}
  .panel .dvn{font-family:var(--deva);color:var(--accent);font-size:1rem;margin-bottom:14px}
  .ticks{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-direction:column;gap:13px}
  .ticks li{display:flex;gap:12px;align-items:flex-start;color:var(--ink-soft);font-size:1rem}
  .ticks svg{flex:none;margin-top:3px;color:var(--accent-2)}
  .ticks b{color:var(--ink);font-weight:600}

  /* security grid */
  .secgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
  @media (max-width:860px){.secgrid{grid-template-columns:1fr 1fr}}
  @media (max-width:560px){.secgrid{grid-template-columns:1fr}}
  .sec{padding:26px 24px;border:1px solid var(--hair);border-radius:14px;background:var(--ground-2)}
  .sec .ic{color:var(--accent-2);width:30px;height:30px;margin-bottom:14px}
  .sec h4{font-family:var(--serif);font-size:1.2rem;margin-bottom:7px}
  .sec p{color:var(--ink-soft);font-size:.95rem}

  /* dpdp rights */
  .rights{display:flex;flex-wrap:wrap;gap:12px}
  .right{border:1px solid var(--hair);background:var(--surface);border-radius:999px;padding:11px 20px;
    font-weight:600;font-size:.95rem;color:var(--ink);display:flex;align-items:center;gap:9px}
  .right em{font-style:normal;color:var(--ink-soft);font-weight:500;font-size:.82rem}
  .right .b{width:7px;height:7px;border-radius:50%;background:var(--accent-2)}

  /* faq */
  .faq{max-width:820px;margin:0 auto}
  details{border-bottom:1px solid var(--hair);padding:6px 0}
  summary{list-style:none;cursor:pointer;padding:20px 44px 20px 4px;position:relative;
    font-family:var(--serif);font-size:1.22rem;color:var(--head)}
  summary::-webkit-details-marker{display:none}
  summary::after{content:"+";position:absolute;right:8px;top:16px;font-size:1.6rem;color:var(--accent);
    font-family:var(--sans);transition:transform .2s}
  details[open] summary::after{transform:rotate(45deg)}
  details p{padding:0 44px 22px 4px;color:var(--ink-soft)}

  /* final cta */
  .final{text-align:center}
  .final h2{font-family:var(--serif);font-size:clamp(2.1rem,5vw,3.4rem)}
  .final .deva{font-family:var(--deva);color:var(--saffron-lt);font-size:1.3rem;margin-bottom:16px}
  .waitlist{margin:32px auto 0;max-width:520px;display:flex;gap:10px}
  @media (max-width:520px){.waitlist{flex-direction:column}}
  .waitlist input{flex:1;padding:15px 20px;border-radius:999px;border:1px solid var(--night-hair);
    background:rgba(255,255,255,.06);color:var(--night-ink);font:500 15px var(--sans)}
  .waitlist input::placeholder{color:var(--night-soft)}
  .waitlist input:focus{outline:2px solid var(--saffron);outline-offset:1px}
  .finenote{margin-top:14px;font-size:.85rem;color:var(--night-soft)}

  /* footer */
  footer{background:var(--indigo);color:var(--night-soft);border-top:1px solid var(--night-hair)}
  .foot{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px;padding:64px 0 30px}
  @media (max-width:820px){.foot{grid-template-columns:1fr 1fr;gap:32px}}
  @media (max-width:520px){.foot{grid-template-columns:1fr}}
  .foot .brand b{color:var(--night-ink)}
  .foot h5{color:var(--saffron-lt);font:600 12px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;margin:0 0 16px}
  .foot ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px}
  .foot a{color:var(--night-soft);text-decoration:none;font-size:.95rem}
  .foot a:hover{color:var(--saffron-lt)}
  .foot .about{color:var(--night-soft);font-size:.95rem;margin:16px 0 0;max-width:34ch}
  .footbar{border-top:1px solid var(--night-hair);padding:20px 0;display:flex;justify-content:space-between;
    gap:14px;flex-wrap:wrap;font-size:.85rem;color:var(--night-soft)}

  :focus-visible{outline:2px solid var(--accent-2);outline-offset:2px;border-radius:6px}
  .toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%) translateY(20px);background:var(--indigo);
    color:#FAF7F0;padding:13px 22px;border-radius:999px;border:1px solid rgba(240,182,100,.3);
    box-shadow:0 18px 44px -16px rgba(0,0,0,.6);opacity:0;pointer-events:none;transition:.25s;z-index:80;font-size:14px}
  .toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* ---- multi-page additions ---- */
.navlinks a[aria-current]{color:var(--accent)}
.pagehead{padding:74px 0 4px}
.pagehead h1{font-family:var(--serif);font-size:clamp(2.15rem,5vw,3.3rem);margin-top:14px}
.pagehead .lead{margin-top:18px}
.pagehead .mark{width:62px;display:block;margin-bottom:22px}
.crumb{display:inline-flex;gap:7px;align-items:center;color:var(--ink-soft);font-size:.86rem;text-decoration:none;letter-spacing:.04em;text-transform:uppercase;font-weight:600}
.crumb:hover{color:var(--accent)}
.pagehead .deva{font-family:var(--deva);color:var(--accent);font-size:1.15rem;margin:14px 0 2px}
.prose{max-width:70ch}
.prose p{color:var(--ink-soft);margin-top:16px}
.prose h3{font-family:var(--serif);color:var(--head);font-size:1.4rem;margin-top:32px}
.callout{border:1px solid var(--hair);border-left:3px solid var(--accent-2);background:var(--ground-2);border-radius:14px;padding:24px 28px;margin-top:26px}
.callout h4{font-family:var(--serif);font-size:1.24rem;margin-bottom:8px;color:var(--head)}
.callout p{color:var(--ink-soft)}
.night .callout{background:rgba(240,182,100,.06);border-color:var(--night-hair);border-left-color:var(--saffron)}
.night .callout h4{color:var(--night-ink)} .night .callout p{color:var(--night-soft)}

/* ---- section "read more" links ---- */
.morelink{display:inline-flex;align-items:center;gap:6px;margin-top:18px;font:600 14px/1 var(--sans);letter-spacing:.02em;color:var(--accent);text-decoration:none;transition:gap .15s,color .15s}
.morelink:hover{gap:11px;color:var(--accent-2)}
.night .morelink{color:var(--saffron-lt)}
.contactgrid .waitlist{flex-direction:column;align-items:stretch}

/* ---- honeypot (spam trap) ---- */
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0;pointer-events:none}
