*{box-sizing:border-box}
:root{--bg-canvas:#1e1612;--bg-surface:#2b1e16;--bg-surface-hover:#3a2a1f;--roast:#3b2618;--text-primary:#f5ecdf;--text-muted:#d3c3ac;--accent-primary:#f59e0b;--accent-secondary:#fbbf24;--border-subtle:rgba(245,158,11,.3);--ease-kinetic:cubic-bezier(.16,1,.3,1);--shadow-elevation:0 12px 32px -4px rgba(0,0,0,.4);--glow-accent:0 0 24px -4px var(--accent-primary);--cut:3.5vw}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg-canvas);color:var(--text-primary);font:400 1.05rem/1.85 system-ui,"Segoe UI",Roboto,sans-serif;overflow-wrap:anywhere;hyphens:auto}
h1,h2,h3{font-family:system-ui,"Segoe UI",Roboto,sans-serif;font-weight:800;letter-spacing:-.035em;line-height:1.05;margin:0 0 .6em;overflow-wrap:anywhere;hyphens:auto}
h2{font-size:clamp(2rem,5vw,3.4rem)}h3{font-size:1.4rem;letter-spacing:-.02em}
p{margin:0 0 1.2em}a{color:var(--accent-secondary)}a:hover{color:#fff}
img{display:block;max-width:100%}
:focus-visible{outline:3px solid var(--accent-secondary);outline-offset:3px}
.col{max-width:1100px;margin:0 auto;padding:0 1.25rem}
.prose{max-width:70ch;margin:0 auto}.prose h2{margin-top:1.6em;font-size:clamp(1.7rem,4vw,2.4rem)}.prose h2:first-child{margin-top:0}
.prose li{margin-bottom:.5em}
.small{font-size:.9rem;color:var(--text-muted)}
.hdr{position:relative;z-index:5;height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1rem,3vw,2.5rem);background:transparent}
.brand{display:flex;align-items:center;gap:.7rem;font-weight:800;letter-spacing:-.03em;font-size:1.2rem;color:var(--text-primary);text-decoration:none}
.mark{display:grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:50%;background:var(--accent-primary);color:#1e1612;font-weight:800}
.nav ul{display:flex;gap:1.6rem;list-style:none;margin:0;padding:0}
.nav a{color:var(--text-primary);text-decoration:none;font-weight:700;padding:.4rem 0;border-bottom:2px solid transparent;transition:border-color .3s}
.nav a:hover,.nav a[aria-current]{color:var(--accent-secondary);border-color:var(--accent-primary)}
.menu-btn{display:none;background:var(--accent-primary);color:#1e1612;border:0;border-radius:50%;width:2.8rem;height:2.8rem;font-size:1.6rem;font-weight:800;cursor:pointer;line-height:1}
.field{position:relative;margin-top:-72px;padding:calc(72px + 4.5rem) 0 calc(var(--cut) + 4.5rem);background:linear-gradient(135deg,#1e1612 0%,#1e1612 38%,#5e360b 70%,#8f4f08 100%);background-size:200% 200%;animation:gradientShift 14s ease infinite;overflow:hidden}
.field::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 92% 95%,rgba(245,158,11,.4),transparent 45%);pointer-events:none}
.field .col{position:relative;z-index:1}
.field h1{font-size:clamp(2.5rem,7vw,5.4rem);font-weight:800;letter-spacing:-.045em;line-height:.98;margin:0 0 .4em;max-width:16ch}
.field.home h1{font-size:clamp(2.9rem,10.5vw,8.6rem);max-width:12ch;line-height:.92}
.lead{font-size:clamp(1.1rem,2.2vw,1.45rem);max-width:46ch;line-height:1.6}
.eyebrow,.pill{display:inline-block;background:var(--accent-primary);color:#1e1612;border-radius:999px;padding:.25rem .95rem;font-weight:800;font-size:.85rem;letter-spacing:.02em}
.eyebrow{margin-bottom:1.4rem}
@keyframes gradientShift{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
.band{position:relative;padding:calc(var(--cut) + 4rem) 0 4.5rem;margin-top:calc(var(--cut)*-1);clip-path:polygon(0 var(--cut),100% 0,100% 100%,0 100%)}
.b1{background:var(--bg-canvas)}
.b2{background:var(--roast);clip-path:polygon(0 0,100% var(--cut),100% 100%,0 100%)}
.btn{display:inline-block;background:var(--accent-primary);color:#1e1612;font:800 1rem/1 system-ui,"Segoe UI",Roboto,sans-serif;border:0;border-radius:999px;padding:1rem 1.9rem;text-decoration:none;cursor:pointer;transition:transform .5s var(--ease-kinetic),box-shadow .5s var(--ease-kinetic),background .3s}
.btn:hover{background:var(--accent-secondary);color:#1e1612;transform:translateY(-5px) scale(1.015);box-shadow:var(--shadow-elevation),var(--glow-accent)}
.btnrow{display:flex;flex-wrap:wrap;gap:.9rem;margin:1.4rem 0}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2.2rem}
.card{background:var(--bg-surface);transition:transform .5s var(--ease-kinetic),box-shadow .5s var(--ease-kinetic),background .3s;display:flex;flex-direction:column}
.card:hover{transform:translateY(-5px) scale(1.015);box-shadow:var(--shadow-elevation),var(--glow-accent);background:var(--bg-surface-hover)}
.im{position:relative;aspect-ratio:4/3}.im img{width:100%;height:100%;object-fit:cover}
.badge{position:absolute;left:1.4rem;bottom:-1.7rem;width:3.4rem;height:3.4rem;border-radius:50%;background:var(--accent-primary);color:#1e1612;display:grid;place-items:center;font-weight:800;font-size:1.3rem;box-shadow:0 4px 14px rgba(0,0,0,.4)}
.cb{padding:2.6rem 1.5rem 1.6rem;display:flex;flex-direction:column;flex:1}.cb p{color:var(--text-muted)}.cb a{margin-top:auto;font-weight:800}
.banner{aspect-ratio:16/9;width:100%;max-width:70ch;margin:0 auto 2.4rem;overflow:hidden}.banner img{width:100%;height:100%;object-fit:cover}
.rungs{margin-top:2rem}
.rung{display:grid;grid-template-columns:auto 1fr auto;gap:1.4rem;align-items:center;background:var(--bg-surface);padding:1.3rem 1.7rem;margin-bottom:.9rem;margin-left:calc(var(--i)*1.8rem);transition:transform .5s var(--ease-kinetic),box-shadow .5s var(--ease-kinetic)}
.rung:hover{transform:translateY(-5px) scale(1.015);box-shadow:var(--shadow-elevation),var(--glow-accent)}
.rung h3{margin:0 0 .2em}.rung p{margin:0;color:var(--text-muted)}.rung a{font-weight:800;white-space:nowrap}
.checks{list-style:none;padding:0;margin:2rem 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}
.checks label{display:flex;gap:1.1rem;align-items:center;background:var(--roast);padding:1.1rem 1.3rem;cursor:pointer;font-weight:700}
.checks input{width:2.2rem;height:2.2rem;flex:none;accent-color:#f59e0b;cursor:pointer}
.checks input:checked+span{text-decoration:line-through;opacity:.6}
.story{display:flex;gap:1.3rem;align-items:flex-start;padding:1.5rem 0;border-bottom:1px solid var(--border-subtle)}
.story p{margin:0 0 .4em}
.av{flex:none;width:3.8rem;height:3.8rem;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:1.3rem;color:#1e1612;background:var(--accent-primary)}
.av.a2{background:#fbbf24}.av.a3{background:#d97706}
details{background:var(--bg-surface);margin-bottom:.8rem;transition:background .3s}
details:hover{background:var(--bg-surface-hover)}
summary{cursor:pointer;padding:1.15rem 1.4rem;font-weight:800;font-size:1.1rem;list-style:none}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";float:right;color:var(--accent-primary);font-size:1.5rem;line-height:1}
details[open] summary::after{content:"\2013"}
details div{padding:0 1.4rem 1.2rem;color:var(--text-muted)}
.tool{background:var(--bg-canvas);border:2px solid var(--accent-primary);padding:clamp(1.3rem,4vw,2.6rem);margin-top:1.6rem}
.tool h3,.tool label{color:var(--accent-primary);font-weight:800;display:block}
.tool label{margin-bottom:1rem}
.two{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}
.tool input,.tool textarea{display:block;width:100%;margin-top:.4rem;background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-subtle);padding:.9rem 1rem;font:inherit}
.tool textarea{min-height:11rem;resize:vertical}.tool #cOut{background:#140e0b;min-height:9rem;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.95rem}
#cStatus{color:var(--accent-secondary);font-weight:700;min-height:1.6em}
table{border-collapse:collapse;width:100%;min-width:520px;margin:1rem 0 1.5rem}
th,td{text-align:left;padding:.8rem 1rem;border-bottom:1px solid var(--border-subtle);vertical-align:top}th{color:var(--accent-primary)}
.ft{position:relative;background:#140e0b;border-radius:50% 50% 0 0/3.5rem 3.5rem 0 0;margin-top:-3rem;padding:6rem 0 2rem}
.fgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem}
.fbrand{font-weight:800;font-size:1.5rem;letter-spacing:-.03em;margin:0 0 .3em}
.fh{font-size:.9rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-primary);margin-bottom:.8em}
.ft ul{list-style:none;margin:0;padding:0}.ft li{margin-bottom:.4em}
.legalline{margin-top:2rem;font-size:.85rem;color:var(--text-muted);text-align:center}
.copy{text-align:center;margin:1rem 0 0;font-weight:700}
.reveal{transition:all .7s var(--ease-kinetic)}
.js .reveal{opacity:0;transform:translateY(32px)}.js .reveal.reveal-visible{opacity:1;transform:translateY(0)}
@media(max-width:1024px){.nav ul{gap:1.1rem}}
@media(max-width:767px){
.menu-btn{display:block}
.nav{display:none;position:absolute;top:100%;left:0;right:0;background:rgba(30,22,18,.98);border-top:3px solid var(--accent-primary);box-shadow:var(--shadow-elevation);padding:1rem 1.5rem 1.5rem}
.nav.open{display:block}.nav ul{flex-direction:column;gap:.4rem}.nav a{display:block;padding:.7rem 0;font-size:1.15rem}
.rung{grid-template-columns:1fr;margin-left:0;gap:.6rem}
:root{--cut:6vw}
}
@media(max-width:480px){.field{padding-top:calc(72px + 3rem)}.story{flex-direction:column}.btn{width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){.field{animation:none}html{scroll-behavior:auto}.reveal,.card,.btn,.rung{transition:none}}