/* SELF-HOSTED 11 Aug 2026, and it is a privacy fix rather than a performance one.
   The page told visitors it runs no tracking, which was true, while still requesting fonts
   from Google on every load and handing Google the visitor's IP address. That is the exact
   transfer a careful reader would call us on, and it is the kind of small contradiction a
   privacy policy cannot survive. One 135KB variable file covers every weight we use, and
   the page now makes NO third-party request at all. It also means it renders correctly
   opened straight from disk with no internet. */
@font-face{font-family:'Jost';src:url('Jost.ttf') format('truetype');
  font-weight:100 900;font-style:normal;font-display:swap}

/* AAVATtype product styles. Green system per the ACE colour guide (2 Jul 2026).
   Font: Jost 300 + 400 only. Light is the default site mode. */
:root{
  --emerald:#0F6A4B; --emerald-deep:#0B5338; --emerald-bright:#148F65;
  --shade1:#073525; --shade2:#084834; --shade3:#0B4F38; --pine:#0E4830;
  --emerald-mid:#107452; --vivid:#1BBC85;
  --fresh:#6FC9A6; --mint:#7AB08C; --pastel:#BFDCC4; --mint-light:#79ECC5;
  --warm-white:#FCFAF7; --ivory:#F4EFE8; --cream:#F4ECE1; --sand:#D1C1AF;
  --sand-accent:#B79A76; --sand-deep:#5C4A30; --cream-text:#F9F7DE;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Jost',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-weight:400;
  background:var(--warm-white);color:var(--emerald-deep);line-height:1.55;min-height:100vh;position:relative;overflow-x:hidden}
/* soft green orbs behind everything: the glass treatment, no warm cast */
.orbs{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.orb{position:absolute;border-radius:50%;filter:blur(80px)}
.orb.a{width:44vw;height:44vw;top:-12vw;left:-10vw;background:radial-gradient(circle,rgba(15,106,75,.10),transparent 70%)}
.orb.b{width:50vw;height:50vw;bottom:-16vw;right:-12vw;background:radial-gradient(circle,rgba(20,143,101,.12),transparent 70%)}
.orb.c{width:30vw;height:30vw;top:38%;left:44%;background:radial-gradient(circle,rgba(122,176,140,.14),transparent 70%)}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px;position:relative;z-index:1}
.wrap.narrow{max-width:680px}

/* type */
h1,h2,h3{font-weight:400;letter-spacing:-.01em;color:var(--emerald-deep)}
h1{font-size:clamp(34px,5vw,54px);line-height:1.08}
h2{font-size:clamp(26px,3.4vw,36px);line-height:1.15}
h3{font-size:20px}
p{color:var(--pine)}
.kicker{letter-spacing:.24em;text-transform:uppercase;font-size:12px;font-weight:400;color:var(--sand-deep)}
.big-word{font-weight:400;letter-spacing:.14em;font-size:clamp(44px,7vw,76px);color:var(--emerald-deep);line-height:1}
.accent{color:var(--emerald)}
.soft{color:var(--pine);opacity:.85}
.small{font-size:13.5px}
.center{text-align:center}

/* glass surfaces */
.glass{background:rgba(255,255,255,.55);border:1px solid rgba(15,106,75,.14);border-radius:18px;
  backdrop-filter:blur(14px) saturate(130%);-webkit-backdrop-filter:blur(14px) saturate(130%);
  box-shadow:0 18px 44px rgba(15,106,75,.08)}
.glass-dark{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);border-radius:18px;
  backdrop-filter:blur(16px) saturate(150%);-webkit-backdrop-filter:blur(16px) saturate(150%);
  box-shadow:0 22px 54px rgba(0,0,0,.32)}

/* buttons: emerald metallic on light grounds, fresh mint on dark grounds (hard rules) */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:inherit;font-weight:400;
  font-size:16px;letter-spacing:.02em;border-radius:40px;padding:15px 30px;cursor:pointer;border:none;
  text-decoration:none;transition:transform .18s,box-shadow .18s;-webkit-tap-highlight-color:transparent}
.btn-emerald{color:var(--cream-text);
  background:linear-gradient(118deg,rgba(255,255,255,.26),rgba(255,255,255,0) 22%,rgba(0,0,0,.18) 55%,rgba(255,255,255,.2) 78%,rgba(0,0,0,.1)),var(--emerald);
  box-shadow:0 12px 30px rgba(11,83,56,.32)}
.btn-emerald:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(11,83,56,.4)}
.btn-mint{color:var(--emerald-deep);
  background:linear-gradient(118deg,rgba(255,255,255,.4),rgba(255,255,255,0) 24%,rgba(0,0,0,.08) 56%,rgba(255,255,255,.35) 80%),var(--fresh);
  box-shadow:0 12px 28px rgba(111,201,166,.35)}
.btn-mint:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(111,201,166,.45)}
.btn-ghost{color:var(--emerald);background:transparent;border:1px solid rgba(15,106,75,.35)}
.btn-ghost:hover{border-color:var(--emerald)}
.btn.sm{font-size:14px;padding:10px 20px}

/* nav */
nav{position:sticky;top:0;z-index:50;background:rgba(252,250,247,.8);backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(15,106,75,.1)}
nav .bar{max-width:1080px;margin:0 auto;padding:16px 24px;min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.wordmark{display:inline-flex;align-items:baseline;letter-spacing:.4em;font-weight:400;font-size:16px;color:var(--emerald);text-decoration:none;white-space:nowrap}
.wordmark i,.wordmark .lc{display:inline;background:none;width:auto;height:auto;font-style:normal;font-weight:300;text-transform:lowercase;letter-spacing:.05em}
nav .links{display:flex;gap:22px;align-items:center}
nav .links a{color:var(--pine);text-decoration:none;font-size:15px}
nav .links a:hover{color:var(--emerald)}
nav .links a.btn-emerald,nav .links a.btn-emerald:hover,nav .links a.btn-emerald:visited{color:var(--cream-text)}
@media(max-width:720px){nav .links a.hideable{display:none}}

/* sections */
section{padding:72px 0;position:relative;z-index:1}
.dark-band{background:linear-gradient(135deg,var(--shade1) 0%,var(--shade2) 40%,var(--shade3) 75%,var(--emerald-deep) 100%);color:var(--cream-text)}
.dark-band h2,.dark-band h3,.dark-band p{color:var(--cream-text)}
.dark-band .kicker{color:var(--cream-text);opacity:.85}

/* cards / grids */
.grid{display:grid;gap:18px}
.g3{grid-template-columns:repeat(3,1fr)}
.g2{grid-template-columns:repeat(2,1fr)}
@media(max-width:860px){.g3,.g2{grid-template-columns:1fr}}
.card{padding:26px 24px}
.tag{display:inline-block;font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding:4px 12px;border-radius:20px;
  background:rgba(15,106,75,.1);color:var(--emerald)}
.tag.free{background:var(--emerald);color:var(--cream-text)}

/* quiz */
.q-progress{height:5px;border-radius:4px;background:rgba(15,106,75,.12);overflow:hidden;margin:26px 0 34px}
.q-progress i{display:block;height:100%;width:0;border-radius:4px;background:linear-gradient(90deg,var(--emerald-mid),var(--emerald));transition:width .3s}
.q-count{font-size:13px;color:var(--sand-deep);letter-spacing:.14em;text-transform:uppercase}
.q-text{font-weight:300;font-size:clamp(24px,3.4vw,32px);color:var(--emerald-deep);margin:14px 0 30px;min-height:3.2em}
.opts{display:flex;flex-direction:column;gap:10px}
.opt{font-family:inherit;font-weight:400;font-size:16.5px;text-align:left;padding:15px 20px;border-radius:14px;cursor:pointer;
  background:rgba(255,255,255,.6);border:1px solid rgba(15,106,75,.16);color:var(--pine);transition:all .14s}
.opt:hover{border-color:var(--emerald);color:var(--emerald-deep)}
.opt.on{background:var(--emerald);border-color:var(--emerald);color:var(--cream-text)}
.q-nav{display:flex;justify-content:space-between;align-items:center;margin-top:30px}
.linkish{background:none;border:none;font-family:inherit;font-size:14.5px;color:var(--emerald);cursor:pointer;text-decoration:underline;text-underline-offset:3px}

/* factor bars */
.frow{display:grid;grid-template-columns:130px 1fr;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid rgba(15,106,75,.1)}
.frow:last-child{border-bottom:none}
.frow .fw{font-weight:400;color:var(--emerald-deep)}
.frow .ff{font-size:12px;color:var(--sand-deep);letter-spacing:.06em}
.bar{height:7px;border-radius:5px;background:rgba(15,106,75,.1);overflow:hidden;margin-bottom:7px}
.bar i{display:block;height:100%;border-radius:5px;background:linear-gradient(90deg,var(--emerald-mid),var(--emerald))}
.dark-band .bar{background:rgba(249,247,222,.16)}
.dark-band .bar i{background:linear-gradient(90deg,var(--mint),var(--pastel))}
.frow .fd{font-size:14px;color:var(--pine)}

/* share card area */
.cardpick{display:flex;gap:10px;justify-content:center;margin:18px 0}
.cardpick button{font-family:inherit;font-size:14px;padding:9px 20px;border-radius:26px;cursor:pointer;border:1px solid rgba(15,106,75,.3);background:transparent;color:var(--emerald)}
.cardpick button.on{background:var(--emerald);color:var(--cream-text);border-color:var(--emerald)}
.cardframe{max-width:420px;margin:0 auto;border-radius:16px;overflow:hidden;box-shadow:0 24px 60px rgba(11,83,56,.25)}
.cardframe img{display:block;width:100%}

/* pricing */
.tier{position:relative;display:flex;flex-direction:column;gap:10px}
.tier .price{font-size:44px;font-weight:300;color:var(--emerald-deep)}
.tier .price span{font-size:16px}
.tier ul{list-style:none;display:flex;flex-direction:column;gap:8px;margin:8px 0 16px}
.tier ul li{padding-left:24px;position:relative;font-size:15px;color:var(--pine)}
.tier ul li:before{content:'';position:absolute;left:2px;top:9px;width:9px;height:9px;border-radius:50%;border:1.5px solid var(--emerald)}
.tier.popular{border:1.5px solid var(--emerald)}
.pop-badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--emerald);color:var(--cream-text);
  font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:5px 16px;border-radius:20px;white-space:nowrap}

/* inputs */
.field{display:flex;gap:10px;max-width:440px;margin:0 auto}
.field input{flex:1;font-family:inherit;font-size:15.5px;padding:13px 18px;border-radius:30px;border:1px solid rgba(15,106,75,.25);
  background:rgba(255,255,255,.75);color:var(--emerald-deep);outline:none}
.field input:focus{border-color:var(--emerald)}
.note-line{font-size:13px;color:var(--sand-deep);margin-top:10px}

footer{padding:44px 0 60px;border-top:1px solid rgba(15,106,75,.1);position:relative;z-index:1}
footer .small{color:var(--pine);opacity:.75}
.honesty{font-size:13px;color:var(--pine);opacity:.8;max-width:640px}
