:root{--forest:#1C2B1E;--forest2:#2E4030;--moss:#3D5C40;--cream:#F5F0E8;--sand:#E8E1D4;--ember:#E8622A;--ember-dk:#B9471A;--ink2:#3D4A3F;--mute:#D8D2C6}
*{box-sizing:border-box}
html,body{overflow-x:hidden}
.soon>.wrap{width:100%}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--forest);font-family:'Barlow',system-ui,sans-serif;font-size:17px;line-height:1.6}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
.wrap{max-width:1240px;margin:0 auto}
.cond{font-family:'Barlow Condensed',sans-serif}
.eyebrow{font-family:'Barlow Condensed',sans-serif;font-weight:600;font-size:16px;letter-spacing:4px;color:var(--ember-dk);text-transform:uppercase}
.eyebrow.light{color:var(--ember)}
.rule-eyebrow{display:flex;align-items:center;gap:12px}
.rule-eyebrow::before{content:"";width:36px;height:3px;background:var(--ember)}
h1,h2,h3{font-family:'Barlow Condensed',sans-serif;font-weight:700;margin:0;line-height:1}
h1{font-size:clamp(46px,7vw,90px);line-height:.95}
h2{font-size:clamp(34px,4.5vw,56px)}
h3{font-size:28px;letter-spacing:1px}
p{margin:0}
section{padding:96px 5vw}
.btn{display:inline-block;font-family:'Barlow Condensed',sans-serif;font-weight:600;font-size:18px;letter-spacing:2px;padding:16px 28px;border-radius:3px;text-transform:uppercase;border:2px solid transparent;cursor:pointer}
.btn-ember{background:var(--ember);color:#fff}.btn-ember:hover{background:var(--ember-dk)}
.btn-ghost{border-color:var(--cream);color:var(--cream)}.btn-ghost:hover{background:var(--cream);color:var(--forest)}
.btn-forest{background:var(--forest);color:var(--cream)}

/* header */
.site-header{background:var(--forest);padding:16px 5vw;position:sticky;top:0;z-index:50}
.nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px}
.brand{display:flex;align-items:center;gap:14px;color:var(--cream)}
.brand span{font-family:'Barlow Condensed',sans-serif;font-weight:600;font-size:24px;letter-spacing:5px}
.nav-links{display:flex;flex-wrap:wrap;gap:4px 28px;font-family:'Barlow Condensed',sans-serif;font-weight:600;font-size:17px;letter-spacing:2px}
.nav-links a{color:var(--cream);padding:10px 0}
.nav-links a:hover,.nav-links a[aria-current]{color:var(--ember)}
.soon-tag{font-size:11px;letter-spacing:1px;background:var(--moss);color:var(--cream);padding:2px 6px;border-radius:2px;margin-left:6px;vertical-align:2px}

/* hero parallax */
.hero{position:relative;overflow:hidden;background:var(--moss);color:var(--cream);min-height:780px;display:flex;align-items:center;padding:64px 5vw 220px}
.hero .layers{position:absolute;inset:0;pointer-events:none}
.hero .layers svg,.hero .sun{position:absolute;will-change:transform}
.hero .layers svg{left:-2%;width:104%;bottom:0}
.hero .sun{left:44%;top:300px;width:180px;height:180px;border-radius:50%;background:var(--ember);opacity:.9}
.hero-inner{position:relative;width:100%;display:flex;flex-wrap:wrap;gap:48px;align-items:center}
.hero-copy{flex:1 1 440px;display:flex;flex-direction:column;gap:24px}
.hero-copy p{font-size:19px;max-width:520px;color:var(--mute)}
.hero-art{flex:1 1 360px;max-width:440px;border:6px solid var(--cream)}
.btns{display:flex;flex-wrap:wrap;gap:14px;margin-top:8px}

/* generic */
.intro{display:flex;flex-direction:column;gap:12px;max-width:740px}
.intro p{font-size:18px;color:var(--ink2)}
.grid{display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(270px,1fr))}
.card{background:#fff;border-radius:4px;padding:32px;display:flex;flex-direction:column;gap:14px}
.card p{color:var(--ink2);font-size:16px}
.split{display:flex;flex-wrap:wrap;gap:56px;align-items:center}
.split>*{flex:1 1 400px;min-width:0}
.split p{font-size:18px;color:var(--ink2)}
.sand{background:var(--sand)}
.dark{background:var(--forest);color:var(--cream)}
.dark p{color:var(--mute)}
.teaser{display:flex;flex-direction:column;gap:12px}
.teaser img{border-radius:4px;aspect-ratio:4/3;object-fit:cover}
.teaser h3{font-size:26px;line-height:1.1}
.ridge{display:block;width:100%;height:80px;margin-bottom:-1px}

/* signup */
.signup{background:var(--ember);color:#fff;padding:72px 5vw}
.signup .wrap{display:flex;flex-wrap:wrap;gap:32px;align-items:center;justify-content:space-between}
.signup .wrap>*{flex:1 1 300px;min-width:0}
.signup p{font-size:18px}
.signup form{display:flex;flex-wrap:wrap;gap:12px}
.signup input{flex:1 1 220px;padding:16px 18px;font-size:17px;border:none;border-radius:3px;font-family:inherit}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* coming soon */
.soon{background:var(--forest);color:var(--cream);min-height:70vh;display:flex;align-items:center}
.soon .split p{color:var(--mute)}
.soon-badge{display:inline-block;font-family:'Barlow Condensed',sans-serif;font-weight:700;letter-spacing:4px;font-size:16px;color:var(--forest);background:var(--ember);padding:6px 14px;border-radius:2px;align-self:flex-start}
.soon ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.soon li{display:flex;gap:12px;align-items:baseline;font-size:18px;color:var(--cream)}
.soon li::before{content:"";flex:0 0 10px;height:10px;background:var(--ember);transform:rotate(45deg);position:relative;top:-2px}

/* brands */
.filters{display:flex;flex-wrap:wrap;gap:8px}
.filters button{font-family:'Barlow Condensed',sans-serif;font-weight:600;font-size:16px;letter-spacing:2px;padding:12px 20px;border-radius:3px;cursor:pointer;min-height:44px;background:transparent;color:var(--cream);border:2px solid var(--cream)}
.filters button[aria-pressed=true]{background:var(--cream);color:var(--forest)}
.note{display:flex;gap:14px;align-items:flex-start;max-width:680px;border:1px solid var(--moss);border-radius:3px;padding:16px 20px}
.note p{color:var(--cream);font-size:16px}
.brands{display:grid;gap:28px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}
.brand-card{background:#fff;border-radius:4px;padding:32px;display:flex;flex-direction:column;gap:16px}
.brand-card[hidden]{display:none}
.logo-box{height:150px;background:var(--cream);border-radius:3px;display:flex;align-items:center;justify-content:center}
.logo-box img{width:100%;max-width:340px}
.brand-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.brand-head h2{font-size:32px}
.brand-cat{font-family:'Barlow Condensed',sans-serif;font-weight:600;font-size:14px;letter-spacing:2px;color:var(--ember-dk)}
.uses{font-size:14px;font-weight:600;color:var(--forest2)}
.like{background:var(--cream);border-radius:3px;padding:16px 18px;display:flex;flex-direction:column;gap:6px}
.like p{font-size:15px}
.visit{margin-top:auto;align-self:flex-start;font-family:'Barlow Condensed',sans-serif;font-weight:600;font-size:17px;letter-spacing:2px;border-bottom:2px solid var(--ember);padding:10px 0 4px}

/* footer */
.site-footer{background:var(--forest);color:#A9B5A6;padding:56px 5vw}
.site-footer .wrap{display:flex;flex-wrap:wrap;gap:24px 32px;justify-content:space-between;align-items:center}
.site-footer .links{display:flex;flex-wrap:wrap;gap:8px 24px;font-family:'Barlow Condensed',sans-serif;font-weight:600;font-size:16px;letter-spacing:2px}
.site-footer .links a{color:var(--mute)}
.site-footer small{font-size:14px}

@media (max-width:640px){section{padding:64px 6vw}.hero{min-height:0;padding-bottom:200px}.brand span{font-size:20px;letter-spacing:4px}.nav-links{gap:0 18px;font-size:15px}}
@media (prefers-reduced-motion:reduce){.hero .layers svg,.hero .sun,.hero-copy,.hero-art{transform:none!important}}
