*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}

:root{
  --olive:    #2D5016;
  --olive2:   #3A6820;
  --olive3:   #4A7E28;
  --terra:    #D4622A;
  --terra2:   #B04E20;
  --cream:    #F5F1E8;
  --cream2:   #EAE4D4;
  --ink:      #1C1A16;
  --ink2:     #3D3830;
  --ink3:     #7A7268;
  --rule:     #D8D0C0;
  --white:    #FFFFFF;
  --green:    #2A6B3A;
  --amber:    #C17820;
}

body{
  font-family: 'Georgia', serif;
  background: var(--cream);
  color: var(--ink);
  font-size: 17px;
  line-height: 1.78;
}
a{color:var(--olive)}
a:hover{color:var(--terra)}
p{margin-bottom:1em}
img{display:block;max-width:100%}

/* ── COMPLIANCE BARS ── */
.adv-wrap{background:var(--ink)}
.adv-in{
  max-width:1040px;margin:0 auto;padding:8px 24px;
  font-family:system-ui,sans-serif;font-size:11px;
  color:rgba(255,255,255,.5);
  display:flex;align-items:center;gap:10px;flex-wrap:wrap
}
.adv-badge{
  background:var(--terra);color:white;
  font-size:9px;font-weight:800;letter-spacing:1px;
  text-transform:uppercase;padding:2px 8px;flex-shrink:0
}

.indep-bar{
  background:var(--cream2);border-bottom:1px solid var(--rule);
  padding:7px 24px;font-family:system-ui,sans-serif;
  font-size:11px;color:var(--ink3);text-align:center;line-height:1.5
}
.indep-bar strong{color:var(--ink2)}

/* ── COOKIE ── */
#ck{
  position:fixed;bottom:0;left:0;right:0;z-index:99;
  background:var(--ink);color:rgba(255,255,255,.82);
  padding:12px 24px;display:flex;align-items:center;gap:14px;
  flex-wrap:wrap;font-family:system-ui,sans-serif;font-size:13px;
  border-top:3px solid var(--terra)
}
#ck p{margin:0;flex:1;min-width:200px}
#ck a{color:#F4A46A}
.ck-b{display:flex;gap:8px}
.ck-b button{
  padding:7px 16px;font-size:12px;font-weight:700;
  cursor:pointer;border:none;font-family:system-ui,sans-serif
}
.ck-ok{background:var(--terra);color:white}
.ck-no{background:transparent;color:rgba(255,255,255,.4);border:1px solid rgba(255,255,255,.2)!important}

/* ── NAV ── */
.nav{
  background:var(--olive);
  border-bottom:3px solid var(--terra);
  position:sticky;top:0;z-index:100
}
.nav__in{
  max-width:1040px;margin:0 auto;padding:0 24px;
  display:flex;align-items:stretch;justify-content:space-between
}
.nav__brand{
  display:flex;flex-direction:column;justify-content:center;
  text-decoration:none;padding:13px 0
}
.nav__name{
  font-family:system-ui,sans-serif;font-size:15px;font-weight:800;
  color:var(--cream);letter-spacing:-.3px
}
.nav__name em{color:#F4A46A;font-style:normal}
.nav__sub{font-family:system-ui,sans-serif;font-size:10px;color:rgba(245,241,232,.45);margin-top:1px}
.nav__links{display:flex;list-style:none}
.nav__links a{
  font-family:system-ui,sans-serif;font-size:12px;
  color:rgba(245,241,232,.6);text-decoration:none;
  padding:0 14px;display:flex;align-items:center;
  border-left:1px solid rgba(255,255,255,.1)
}
.nav__links a:hover{color:var(--cream)}
@media(max-width:600px){.nav__links{display:none}}

/* ── HERO ── */
.hero{position:relative;overflow:hidden}
.hero__img{
  width:100%;height:400px;object-fit:cover;
  object-position:center 30%;
  filter:brightness(.35) saturate(.6) sepia(.2)
}
.hero__over{
  position:absolute;inset:0;
  display:flex;flex-direction:column;
  justify-content:flex-end;padding:44px;
  background:linear-gradient(to top,rgba(45,80,22,.75) 0%,transparent 60%)
}
.hero__eyebrow{
  font-family:system-ui,sans-serif;font-size:10px;font-weight:800;
  letter-spacing:2.5px;text-transform:uppercase;
  color:#F4A46A;margin-bottom:12px;
  display:flex;align-items:center;gap:10px
}
.hero__eyebrow::before{content:'';width:32px;height:1px;background:#F4A46A;opacity:.5}
.hero__h1{
  font-size:clamp(26px,4.5vw,46px);font-weight:700;
  color:var(--cream);line-height:1.1;
  letter-spacing:-.5px;max-width:720px;margin-bottom:12px
}
.hero__h1 em{font-style:normal;color:#F4A46A}
.hero__sub{
  font-size:16px;color:rgba(245,241,232,.68);
  max-width:500px;margin-bottom:20px;line-height:1.6
}
.hero__meta{
  font-family:system-ui,sans-serif;font-size:12px;
  color:rgba(245,241,232,.45);display:flex;gap:10px;flex-wrap:wrap
}
.hero__sep{opacity:.4}
@media(max-width:600px){.hero__img{height:320px}.hero__over{padding:24px}}

/* ── SIGNATURE: vertical orange rail + section numbers ── */
.page-grid{
  max-width:1040px;margin:0 auto;padding:0 24px;
  display:grid;grid-template-columns:48px 1fr;gap:0 28px
}
@media(max-width:700px){
  .page-grid{grid-template-columns:1fr}
  .rail{display:none}
}

.rail{
  position:relative;padding-top:48px
}
.rail::before{
  content:'';position:absolute;
  top:0;left:50%;transform:translateX(-50%);
  width:2px;height:100%;
  background:linear-gradient(to bottom,var(--terra) 0%,rgba(212,98,42,.15) 100%)
}
.rail-num{
  position:sticky;top:100px;
  font-family:system-ui,sans-serif;
  font-size:10px;font-weight:800;
  color:var(--terra);letter-spacing:1px;
  writing-mode:vertical-rl;
  text-orientation:mixed;
  transform:rotate(180deg);
  text-align:center;
  margin-top:20px;
  user-select:none
}

/* ── ARTICLE ── */
.article{padding:48px 0 64px}
.article__cat{
  font-family:system-ui,sans-serif;font-size:10px;font-weight:800;
  letter-spacing:2px;text-transform:uppercase;
  color:var(--terra);margin-bottom:12px
}
.article__h2{
  font-size:clamp(20px,2.8vw,30px);font-weight:700;
  color:var(--olive);margin-bottom:14px;line-height:1.2;
  letter-spacing:-.3px
}
.article__byline{
  font-family:system-ui,sans-serif;font-size:12px;color:var(--ink3);
  display:flex;gap:10px;flex-wrap:wrap;
  margin-bottom:24px;padding-bottom:18px;
  border-bottom:2px solid var(--rule)
}
.article__sep{color:var(--rule)}
.article h3{
  font-size:18px;font-weight:700;color:var(--olive);
  margin:2.2em 0 .5em;line-height:1.25;
  padding-left:14px;border-left:3px solid var(--terra)
}
.article p{color:var(--ink2)}
.article ul{
  margin:.5em 0 1em 1.4em;
  color:var(--ink2);font-size:16px;line-height:1.8
}
.article li{margin-bottom:.4em}

/* NOTA */
.nota{
  background:#FFF8EE;border-left:3px solid var(--terra);
  padding:12px 16px;font-family:system-ui,sans-serif;
  font-size:12.5px;color:#7A3A10;line-height:1.55;margin:1.5em 0
}
.nota a{color:#7A3A10;font-weight:600}

/* INFOBOX */
.ibox{
  background:var(--cream2);border:1px solid var(--rule);
  border-left:4px solid var(--olive);
  padding:18px 22px;margin:1.5em 0;
  font-family:system-ui,sans-serif
}
.ibox__title{
  font-size:10px;font-weight:800;letter-spacing:1.5px;
  text-transform:uppercase;color:var(--olive);margin-bottom:10px
}
.ibox ul{list-style:none;padding:0;margin:0}
.ibox li{
  font-size:14px;color:var(--ink2);
  display:flex;gap:8px;margin-bottom:6px;line-height:1.5;
  padding-bottom:6px;border-bottom:1px solid rgba(45,80,22,.08)
}
.ibox li:last-child{border-bottom:none;margin-bottom:0}
.ibox li::before{content:'→';color:var(--terra);font-weight:700;flex-shrink:0}

/* PULLQUOTE */
.pq{
  margin:2em 0;padding:18px 24px;
  background:rgba(45,80,22,.05);
  border-top:2px solid var(--olive);border-bottom:2px solid var(--olive)
}
.pq p{
  font-size:19px!important;font-style:italic;
  color:var(--olive)!important;line-height:1.45!important;margin:0!important
}
.pq cite{
  display:block;font-family:system-ui,sans-serif;
  font-size:12px;color:var(--ink3);font-style:normal;margin-top:8px
}

/* ARTICLE IMAGE */
.aimg{width:100%;height:260px;object-fit:cover;margin:28px 0}

/* TABLE */
.dtbl{width:100%;border-collapse:collapse;margin:1.5em 0;font-family:system-ui,sans-serif;font-size:13px}
.dtbl th{background:var(--olive);color:white;padding:9px 12px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}
.dtbl td{padding:9px 12px;border-bottom:1px solid var(--rule);color:var(--ink2);vertical-align:top}
.dtbl tr:nth-child(even) td{background:var(--cream2)}
.badge{display:inline-block;padding:2px 7px;font-size:11px;font-weight:700}
.badge.g{background:#DCFCE7;color:#166534}
.badge.y{background:#FEF3C7;color:#92400E}

/* SOURCES */
.src{
  font-family:system-ui,sans-serif;font-size:12px;color:var(--ink3);
  border-top:1px solid var(--rule);padding-top:14px;
  margin-top:26px;line-height:1.9
}
.src a{color:var(--olive)}

/* ── QUIZ SECTION ── */
.quiz-sec{
  background:var(--olive);
  padding:60px 24px;
  border-top:4px solid var(--terra)
}
.quiz-in{max-width:680px;margin:0 auto}

.quiz-head{margin-bottom:34px}
.quiz-ey{
  font-family:system-ui,sans-serif;font-size:10px;font-weight:800;
  letter-spacing:2px;text-transform:uppercase;
  color:#F4A46A;margin-bottom:10px
}
.quiz-h2{
  font-size:clamp(22px,3.5vw,34px);font-weight:700;
  color:var(--cream);line-height:1.15;margin-bottom:10px
}
.quiz-sub{
  font-family:system-ui,sans-serif;font-size:14px;
  color:rgba(245,241,232,.5);line-height:1.6
}

.pills{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:30px}
.pill{
  font-family:system-ui,sans-serif;font-size:12px;
  padding:5px 12px;border:1px solid rgba(255,255,255,.15);
  color:rgba(245,241,232,.42)
}

/* QUIZ CARD */
.qcard{background:var(--white);overflow:hidden;box-shadow:0 8px 40px rgba(0,0,0,.3)}

.qpbar{height:3px;background:rgba(45,80,22,.2)}
.qpfill{height:100%;background:var(--terra);transition:width .3s}

.qmeta{
  padding:11px 22px;background:var(--cream2);
  border-bottom:1px solid var(--rule);
  display:flex;justify-content:space-between;align-items:center;
  font-family:system-ui,sans-serif
}
.qmeta__cat{font-size:12px;font-weight:700;color:var(--olive)}
.qmeta__n{font-size:11px;color:var(--ink3)}

.qdots{display:flex;gap:5px;padding:10px 22px;border-bottom:1px solid var(--rule)}
.qdot{width:7px;height:7px;border-radius:50%;background:var(--rule);transition:all .25s}
.qdot.on{background:var(--terra);transform:scale(1.4)}
.qdot.done{background:var(--olive3)}

.qbody{padding:26px 22px;display:none}
.qbody.on{display:block}
.qnum{
  font-family:system-ui,sans-serif;font-size:10px;font-weight:800;
  letter-spacing:2px;text-transform:uppercase;color:var(--terra);margin-bottom:8px
}
.qtxt{font-size:19px;font-weight:700;color:var(--olive);line-height:1.3;margin-bottom:6px}
.qsub{font-family:system-ui,sans-serif;font-size:13px;color:var(--ink3);margin-bottom:20px;line-height:1.5}

.opts{display:flex;flex-direction:column;gap:9px}
.opt{
  display:flex;align-items:flex-start;gap:12px;
  padding:12px 14px;border:1.5px solid var(--rule);
  cursor:pointer;transition:all .15s;background:var(--white)
}
.opt:hover{border-color:var(--terra);background:#FFF5EE}
.opt.on{border-color:var(--terra);background:#FFF5EE}
.opt__k{
  font-family:system-ui,sans-serif;font-size:11px;font-weight:800;
  color:var(--ink3);flex-shrink:0;width:15px;padding-top:1px
}
.opt.on .opt__k{color:var(--terra)}
.opt__v{font-family:system-ui,sans-serif;font-size:14px;color:var(--ink);line-height:1.45}
.opt.on .opt__v{font-weight:600;color:var(--olive)}

.qnav{
  padding:14px 22px;border-top:1px solid var(--rule);
  background:var(--cream2);
  display:flex;justify-content:space-between;align-items:center
}
.qbtn{
  font-family:system-ui,sans-serif;font-size:13px;font-weight:700;
  padding:10px 22px;cursor:pointer;border:none;transition:all .15s
}
.qbtn--next{background:var(--terra);color:white}
.qbtn--next:hover{background:var(--terra2)}
.qbtn--next:disabled{background:var(--rule);color:var(--ink3);cursor:default}
.qbtn--back{background:transparent;color:var(--ink3);border:1.5px solid var(--rule)!important}
.qbtn--back:hover{border-color:var(--olive)!important;color:var(--olive)}

/* RESULT */
.rbox{padding:30px 22px;display:none;text-align:center}
.rbox.on{display:block}
.rscore-w{display:flex;align-items:baseline;justify-content:center;gap:8px;margin-bottom:4px}
.rscore{font-size:68px;font-weight:900;line-height:1}
.rscore-l{font-family:system-ui,sans-serif;font-size:13px;color:var(--ink3)}
.rlevel{font-family:system-ui,sans-serif;font-size:10px;font-weight:800;letter-spacing:2px;text-transform:uppercase;margin-bottom:8px}
.rtitle{font-size:18px;font-weight:700;color:var(--olive);margin-bottom:8px;line-height:1.25}
.rdesc{font-family:system-ui,sans-serif;font-size:14px;color:var(--ink2);line-height:1.7;margin-bottom:16px;max-width:420px;margin-left:auto;margin-right:auto}
.rbars{margin:12px 0;text-align:left}
.rb-row{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.rb-lbl{font-family:system-ui,sans-serif;font-size:12px;color:var(--ink2);width:130px;flex-shrink:0}
.rb-track{flex:1;height:6px;background:var(--rule);overflow:hidden}
.rb-fill{height:100%;transition:width .5s ease}
.rb-pct{font-family:system-ui,sans-serif;font-size:12px;font-weight:700;color:var(--ink2);width:34px;text-align:right;flex-shrink:0}
.redu{
  font-family:system-ui,sans-serif;font-size:11px;color:var(--ink3);
  margin:12px 0;line-height:1.5;
  background:var(--cream2);border:1px solid var(--rule);
  padding:10px 12px;text-align:left
}
.rnext{background:var(--cream2);border:1px solid var(--rule);padding:13px 15px;margin:12px 0;text-align:left}
.rnext__t{font-family:system-ui,sans-serif;font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--olive);margin-bottom:8px}
.rnext__i{font-family:system-ui,sans-serif;font-size:13px;color:var(--ink2);display:flex;gap:8px;margin-bottom:6px;line-height:1.5}
.rnext__i::before{content:'→';color:var(--terra);flex-shrink:0}
.rrestart{font-family:system-ui,sans-serif;font-size:12px;background:transparent;border:1px solid var(--rule)!important;color:var(--ink3);padding:8px 18px;cursor:pointer;margin-top:10px}
.rrestart:hover{border-color:var(--olive)!important;color:var(--olive)}

/* ── GUIDE FORM ── */
.form-sec{background:var(--cream2);border-top:1px solid var(--rule);padding:64px 24px}
.form-in{max-width:920px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:start}
@media(max-width:640px){.form-in{grid-template-columns:1fr;gap:28px}}

.form-ey{font-family:system-ui,sans-serif;font-size:10px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--terra);margin-bottom:10px}
.form-h2{font-size:clamp(19px,3vw,27px);font-weight:700;color:var(--olive);margin-bottom:10px;line-height:1.25}
.form-sub{font-family:system-ui,sans-serif;font-size:14px;color:var(--ink2);line-height:1.65;margin-bottom:14px}
.form-list{list-style:none}
.form-list li{font-family:system-ui,sans-serif;font-size:14px;color:var(--ink2);display:flex;gap:8px;margin-bottom:8px;line-height:1.5}
.form-list li::before{content:'✓';color:var(--olive);font-weight:700;flex-shrink:0}

.fcard{background:var(--olive);padding:28px}
.fcard-t{font-size:15px;font-weight:700;color:var(--cream);margin-bottom:18px}
.ff{margin-bottom:12px}
.ff label{display:block;font-family:system-ui,sans-serif;font-size:10px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:rgba(245,241,232,.42);margin-bottom:4px}
.ff input,.ff select{width:100%;padding:9px 11px;border:1px solid rgba(255,255,255,.15);font-size:14px;color:var(--cream);background:rgba(255,255,255,.1);font-family:system-ui,sans-serif}
.ff input:focus,.ff select:focus{outline:none;border-color:#F4A46A}
.ff select option{background:var(--olive2)}
.fsub{width:100%;padding:12px;background:var(--terra);color:white;border:none;font-size:15px;font-weight:700;cursor:pointer;font-family:system-ui,sans-serif;margin-top:4px;transition:background .15s}
.fsub:hover{background:var(--terra2)}
.fprivacy{font-family:system-ui,sans-serif;font-size:11px;color:rgba(245,241,232,.55);margin-top:10px;padding:8px 10px;background:rgba(0,0,0,.12);border-left:2px solid rgba(245,241,232,.15);line-height:1.55}
.fcon{font-family:system-ui,sans-serif;font-size:11px;color:rgba(245,241,232,.3);margin-top:8px;line-height:1.5}
.fcon a{color:rgba(245,241,232,.3)}
.fsuccess{text-align:center;padding:26px;display:none}
.fsuccess__i{font-size:34px;margin-bottom:10px}
.fsuccess__t{font-size:15px;font-weight:700;color:var(--cream);margin-bottom:5px}
.fsuccess__s{font-size:13px;color:rgba(245,241,232,.5)}
.fsuccess__dl{margin-top:14px}
.fsuccess__dl a{display:inline-block;background:#F4A46A;color:var(--ink);padding:10px 20px;font-family:system-ui,sans-serif;font-size:14px;font-weight:700;text-decoration:none}

/* ── SITE DISC ── */
.site-disc{border-top:1px solid var(--rule);padding:18px 24px;font-family:system-ui,sans-serif;background:var(--cream)}
.site-disc p{font-size:11.5px;color:var(--ink3);line-height:1.6;max-width:860px;margin:0 auto;text-align:center}
.site-disc a{color:var(--olive)}

/* ── FOOTER ── */
.footer{background:var(--ink);color:rgba(245,241,232,.5);padding:48px 24px 28px;font-family:system-ui,sans-serif}
.footer__in{max-width:1040px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:36px}
@media(max-width:600px){.footer__in{grid-template-columns:1fr;gap:22px}}
.fbrand{font-size:15px;font-weight:800;color:var(--cream);margin-bottom:4px}
.fbrand em{color:#F4A46A;font-style:normal}
.find{font-size:11px;color:rgba(245,241,232,.32);line-height:1.6;margin-bottom:10px;padding:8px 10px;background:rgba(255,255,255,.04);border-left:2px solid rgba(212,98,42,.4)}
.ftag{font-size:12px;color:rgba(245,241,232,.35);line-height:1.6;margin-bottom:10px}
.finfo{font-size:11px;color:rgba(245,241,232,.28);line-height:2}
.finfo a{color:rgba(245,241,232,.28)}
.fcol-t{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:1.2px;color:rgba(245,241,232,.2);margin-bottom:10px}
.flist{list-style:none}
.flist li{margin-bottom:6px}
.flist a{font-size:12px;color:rgba(245,241,232,.42);text-decoration:none}
.flist a:hover{color:#F4A46A}
.fbot{max-width:1040px;margin:22px auto 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.07);font-size:11px;color:rgba(245,241,232,.2);display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px}
.hidden{display:none}
