*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#071512;color:#eef8f3;font:16px/1.65 system-ui,-apple-system,Segoe UI,sans-serif;overflow-x:hidden;word-wrap:break-word;overflow-wrap:break-word}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-underline-offset:2px}
.skip-link{position:fixed;left:8px;top:-80px;z-index:1000;background:#d9ff62;color:#102018;padding:10px 14px;max-width:calc(100vw - 16px);border-radius:8px;text-decoration:none;font-weight:800}
.skip-link:focus{top:8px}
.site-header{position:sticky;top:0;z-index:200;background:rgba(7,21,18,.96);border-bottom:1px solid #2b5548}
.nav-wrap{width:min(1180px,calc(100% - 32px));margin:auto;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:100%}
.brand{font-weight:900;letter-spacing:.04em;text-decoration:none;font-size:1.15rem;color:#eef8f3}
.desktop-nav{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.desktop-nav a{text-decoration:none;color:#cfe6dc}
.desktop-nav a:hover{color:#d9ff62}
.menu-button{display:none;border:1px solid #5d8878;background:#102a23;color:#fff;border-radius:10px;width:44px;height:44px;font-size:22px;cursor:pointer;flex-shrink:0;line-height:1}
.mobile-drawer{display:none;position:fixed;inset:72px 0 auto 0;width:100vw;max-width:100vw;background:#0b201a;border-bottom:1px solid #396b5b;padding:12px;overflow-x:hidden;z-index:190}
.mobile-drawer.open{display:block}
.mobile-drawer-inner{width:100%;max-width:100%;display:grid;gap:8px}
.mobile-drawer a{display:block;padding:12px;overflow-wrap:anywhere;word-break:break-word;text-decoration:none;border-radius:8px;background:#123229;color:#eef8f3}
.mobile-drawer a:hover{background:#1a4438}
.hero{min-height:620px;display:grid;align-items:end;background:linear-gradient(90deg,rgba(3,14,11,.94),rgba(3,14,11,.2)),var(--hero) center/cover no-repeat;position:relative}
.hero-inner,.container{width:min(1180px,calc(100% - 32px));margin:auto;max-width:100%}
.hero-inner{padding:110px 0 80px}
.eyebrow{color:#8fe0bd;text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.85rem}
.hero h1{font-size:clamp(2rem,6vw,4.6rem);line-height:1.05;max-width:850px;margin:.25em 0;overflow-wrap:break-word;color:#f4fff8}
.lede{font-size:1.1rem;max-width:720px;overflow-wrap:break-word;color:#cfe6dc}
.btn{display:inline-block;background:#d9ff62;color:#102018;font-weight:900;padding:13px 18px;border-radius:10px;text-decoration:none;max-width:100%}
.btn-ghost{display:inline-block;border:1px solid #5d8878;color:#eef8f3;font-weight:800;padding:12px 18px;border-radius:10px;text-decoration:none;max-width:100%;background:transparent}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.section{padding:64px 0}
.section h2{font-size:clamp(1.5rem,3.5vw,2.4rem);margin:.2em 0 .4em}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.card{min-width:0;background:#102a23;border:1px solid #315e50;border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:10px;overflow:hidden}
.card img{width:100%;height:200px;object-fit:cover;border-radius:12px}
.card h3{margin:.1em 0;font-size:1.15rem;line-height:1.25}
.card p{margin:0;color:#c6dbd2}
.card a{margin-top:auto;color:#d9ff62;text-decoration:none;font-weight:800}
.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:start}
ul.bullets{padding-left:1.2em}
ul.bullets li{margin:.3em 0}
.kpi-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}
.kpi{background:#0c2520;border:1px solid #2b5548;border-radius:14px;padding:18px;text-align:center}
.kpi b{display:block;font-size:1.6rem;color:#d9ff62}
.kpi span{font-size:.92rem;color:#c6dbd2}
.faq details{background:#102a23;border:1px solid #315e50;border-radius:14px;padding:14px 18px;margin:10px 0}
.faq summary{cursor:pointer;font-weight:800;color:#eef8f3}
.prose{max-width:820px;margin:auto}
.prose img{border-radius:16px;margin:18px 0}
.prose table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;margin:18px 0}
.prose th,.prose td{border:1px solid #315e50;padding:8px 10px;text-align:left;font-size:.95rem}
.prose blockquote{border-left:4px solid #d9ff62;margin:1em 0;padding:.4em 1em;color:#cfe6dc;background:#0c2520;border-radius:0 12px 12px 0}
.site-footer{border-top:1px solid #315e50;padding:32px 0;color:#c6dbd2;font-size:.92rem;background:#06110f}
.site-footer .container{display:flex;flex-wrap:wrap;gap:18px;justify-content:space-between;align-items:center}
.site-footer a{color:#cfe6dc;text-decoration:none;margin-left:12px}
.site-footer a:hover{color:#d9ff62}
.mobile-affiliate{display:none}
section[id]{scroll-margin-top:88px}
.affiliate-rail{margin-top:14px;display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:.85rem;color:#9ec0b3}
.affiliate-rail a{background:#d9ff62;color:#102018;font-weight:800;padding:8px 14px;border-radius:8px;text-decoration:none;margin-left:0}
.band{background:#0c2520;padding:48px 24px;border-radius:18px;margin:32px 0}
@media (max-width:880px){
  .grid{grid-template-columns:1fr 1fr}
  .two-col{grid-template-columns:1fr}
}
@media (max-width:760px){
  .desktop-nav{display:none}
  .menu-button{display:block}
  .grid{grid-template-columns:1fr}
  .kpi-row{grid-template-columns:1fr 1fr}
  .hero{min-height:520px}
  .hero-inner{padding:88px 0 60px}
  .mobile-affiliate{display:block;position:fixed;left:10px;right:10px;bottom:10px;text-align:center;background:#d9ff62;color:#102018;padding:12px 14px;border-radius:12px;font-weight:900;text-decoration:none;max-width:calc(100vw - 20px);z-index:180;box-shadow:0 6px 18px rgba(0,0,0,.4)}
  body{padding-bottom:78px}
}
@media (max-width:430px){
  .nav-wrap,.hero-inner,.container{width:calc(100% - 20px)}
  .hero h1{font-size:1.95rem}
  .lede{font-size:1rem}
  .hero-inner{padding:80px 0 50px}
  .hero{min-height:480px}
  .mobile-drawer{padding:10px}
  .menu-button{width:42px;height:42px}
  .kpi-row{grid-template-columns:1fr}
}
@media (max-width:340px){
  .nav-wrap,.hero-inner,.container{width:calc(100% - 14px)}
  .hero h1{font-size:1.75rem}
  .mobile-drawer{padding:8px}
  .mobile-drawer a{font-size:.95rem}
  .kpi{padding:14px}
}
