:root{--ink:#191714;--cream:#f5f0e6;--paper:#fffdf8;--yellow:#f3b700;--red:#d94b28;--blue:#174d67;--line:rgba(25,23,20,.18);--display:'Montserrat',sans-serif;--body:'DM Sans',sans-serif;--shadow:0 24px 80px rgba(25,23,20,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}.progress{position:fixed;inset:0 0 auto;z-index:100;height:4px;background:transparent}.progress span{display:block;width:0;height:100%;background:var(--red)}
.topbar{position:fixed;z-index:90;top:0;left:0;right:0;height:86px;display:flex;align-items:center;gap:28px;padding:12px 4vw;background:rgba(245,240,230,.9);backdrop-filter:blur(16px);border-bottom:1px solid rgba(25,23,20,.1);transition:.3s}.brand{width:92px;overflow:hidden;border-radius:4px}.brand img{width:100%;height:56px;object-fit:contain}.topbar nav{display:flex;align-items:center;gap:22px;margin-left:auto}.topbar nav a{text-decoration:none;font-weight:700;font-size:.9rem}.topbar nav a:hover{color:var(--red)}.cart-button,.nav-toggle{border:0;background:var(--ink);color:#fff;border-radius:999px;padding:12px 18px;font:700 .86rem var(--body);cursor:pointer}.cart-button span{display:inline-grid;place-items:center;background:var(--yellow);color:var(--ink);width:23px;height:23px;border-radius:50%;margin-left:5px}.nav-toggle{display:none}
.hero{position:relative;min-height:100svh;display:grid;align-items:end;padding:150px 7vw 90px;isolation:isolate;background:#211f1b;color:#fff;overflow:hidden}.hero-image{position:absolute;inset:-8%;z-index:-3;background:url('assets/hero.jpg') center/cover no-repeat;transform:translate3d(0,var(--hero-y,0),0) scale(1.06);filter:saturate(.8) contrast(1.05)}.hero-wash{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(20,17,13,.9) 0%,rgba(20,17,13,.56) 48%,rgba(20,17,13,.12) 78%),linear-gradient(0deg,rgba(20,17,13,.72),transparent 50%)}.hero-copy{max-width:900px}.eyebrow,.section-number{text-transform:uppercase;letter-spacing:.15em;font-weight:800;font-size:.78rem}.eyebrow{color:var(--yellow)}h1,h2,h3{font-family:var(--display);line-height:.98;margin:0}h1{font-size:clamp(3.4rem,8.2vw,8.8rem);letter-spacing:-.065em;text-transform:uppercase}h1 em{font-style:normal;color:var(--yellow)}.hero-lead{font-size:clamp(1rem,1.45vw,1.28rem);max-width:650px;margin:30px 0}.hero-actions,.download-row{display:flex;gap:14px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border:2px solid transparent;border-radius:999px;font-weight:800;text-decoration:none;cursor:pointer;font-family:var(--body);transition:transform .2s,background .2s,color .2s}.button:hover{transform:translateY(-3px)}.primary{background:var(--yellow);color:var(--ink)}.ghost{border-color:#fff;color:#fff}.dark{background:var(--ink);color:#fff}.outline-light{border-color:rgba(255,255,255,.65);color:#fff}.full{width:100%}.beat{position:absolute;border-radius:50%;border:2px solid rgba(243,183,0,.32);z-index:-1;transform:translate3d(0,var(--beat-y,0),0)}.beat:after{content:"";position:absolute;inset:18%;border:2px solid rgba(243,183,0,.24);border-radius:inherit}.beat-one{width:430px;height:430px;right:-120px;top:120px}.beat-two{width:210px;height:210px;right:27%;bottom:-60px}.scroll-cue{position:absolute;right:4vw;bottom:24px;margin:0;text-transform:uppercase;letter-spacing:.14em;font-size:.7rem}.scroll-cue span{font-size:1.3rem;color:var(--yellow)}
.manifesto{background:var(--yellow);overflow:hidden}.ticker{border-block:1px solid rgba(25,23,20,.35);white-space:nowrap;overflow:hidden;font:900 clamp(3rem,8vw,8rem)/1 var(--display);letter-spacing:-.07em;padding:20px 0}.ticker span{display:inline-block;animation:ticker 24s linear infinite}@keyframes ticker{to{transform:translateX(-50%)}}.manifesto-grid{display:grid;grid-template-columns:.7fr 2.2fr 1.2fr;gap:42px;align-items:start;padding-block:100px}.manifesto h2,.section-heading h2{font-size:clamp(2.7rem,5vw,5.5rem);letter-spacing:-.06em}.manifesto h2 span,.section-heading h2 span,.contact h2 span{color:var(--red)}.manifesto-grid>p:last-child{font-size:1.12rem;margin-top:0}
.about{min-height:900px;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;background:var(--paper);position:relative;overflow:hidden}.about-photo{position:absolute;inset:0 35% 0 0;background:url('assets/about-wide.png') center/cover no-repeat;background-attachment:fixed}.about-card{grid-column:2;position:relative;z-index:2;margin:90px 7vw 90px -90px;background:var(--paper);padding:70px;box-shadow:var(--shadow)}.about-card h2{font-size:clamp(2.5rem,4.2vw,4.9rem);letter-spacing:-.055em}.about-card p{margin:25px 0 0}.about-card .highlight{border-left:5px solid var(--yellow);padding-left:18px;font-weight:700}
.products{padding:120px 0;background:var(--cream)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:60px}.section-heading>p{max-width:430px;margin:0 0 8px}.product-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:24px}.product-card{grid-column:span 4;background:var(--paper);border:1px solid var(--line);min-width:0;transition:transform .25s,box-shadow .25s;overflow:hidden}.product-card:nth-child(4n+1),.product-card:nth-child(4n+4){grid-column:span 5}.product-card:nth-child(4n+2),.product-card:nth-child(4n+3){grid-column:span 7}.product-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.product-image{aspect-ratio:4/3;overflow:hidden;background:#fff}.product-image img{width:100%;height:100%;object-fit:contain;transition:transform .5s}.product-card:hover img{transform:scale(1.04)}.product-body{padding:25px}.product-body h3{font-size:clamp(1.45rem,2.2vw,2.2rem);letter-spacing:-.035em}.product-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px}.price{font:900 1.5rem var(--display);color:var(--red)}.card-actions{display:flex;gap:8px;margin-top:20px}.card-actions button{flex:1;border:1px solid var(--ink);background:transparent;min-height:44px;border-radius:999px;font-weight:800;cursor:pointer}.card-actions .add{background:var(--ink);color:#fff}.code{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:#6f675d}
.institutions{position:relative;background:var(--blue);color:#fff;min-height:750px;display:grid;grid-template-columns:1fr 1fr;align-items:center;overflow:hidden;padding:100px 7vw}.institutions-copy{max-width:680px;position:relative;z-index:2}.institutions h2{font-size:clamp(3.3rem,6vw,7rem);letter-spacing:-.065em}.institutions-copy>p:not(.eyebrow,.small-note){max-width:620px;font-size:1.1rem}.institutions-image{justify-self:end;width:min(480px,90%);position:relative;z-index:2;transform:rotate(2deg);box-shadow:30px 30px 0 var(--yellow)}.institutions-image img{width:100%;aspect-ratio:1/1;object-fit:cover}.institutions-orbit span{position:absolute;border:1px solid rgba(255,255,255,.15);border-radius:50%;width:650px;height:650px;right:-150px;top:40px}.institutions-orbit span:nth-child(2){inset:100px -90px auto auto;width:520px;height:520px}.institutions-orbit span:nth-child(3){inset:160px -30px auto auto;width:390px;height:390px}.small-note{font-size:.85rem;opacity:.72}
.delivery{padding:120px 0;background:var(--paper)}.delivery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.info-card{padding:34px;border-top:6px solid var(--yellow);background:var(--cream)}.info-card>span{font:900 3.5rem var(--display);color:rgba(25,23,20,.14)}.info-card h3{font-size:1.8rem}.delivery-banner{margin-top:25px;background:var(--ink);color:#fff;padding:28px 34px;display:flex;align-items:center;gap:16px}.delivery-banner strong{font:800 1.35rem var(--display);text-transform:uppercase}.delivery-banner span{color:var(--yellow);font-weight:700}.text-button{margin-left:auto;border:0;background:none;color:#fff;text-decoration:underline;font:700 1rem var(--body);cursor:pointer}
.contact{display:grid;grid-template-columns:1fr .7fr 1fr;gap:60px;padding:120px 7vw;background:var(--yellow)}.contact h2{font-size:clamp(4rem,7vw,8rem);letter-spacing:-.07em}.contact-intro>p:last-child{max-width:460px;font-size:1.1rem}.contact-details{border-left:1px solid rgba(25,23,20,.3);padding-left:40px}.contact-details .label{text-transform:uppercase;letter-spacing:.12em;font-size:.73rem;font-weight:800;margin:0}.contact-details p{margin:0 0 24px}.contact-form{display:grid;gap:16px}.contact-form label{font-weight:800;font-size:.86rem}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:6px;border:0;border-bottom:2px solid var(--ink);background:rgba(255,255,255,.22);padding:12px;font:inherit;border-radius:0}.contact-form input:focus,.contact-form textarea:focus{outline:3px solid rgba(25,23,20,.2)}.form-note{font-size:.76rem;margin:0;opacity:.72}
footer{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:35px;background:var(--ink);color:#fff;padding:65px 7vw;font-size:.9rem}footer a{color:#fff}.footer-brand img{width:120px;height:72px;object-fit:contain;filter:brightness(0) invert(1)}.footer-legal button{display:block;color:#fff;border:0;background:none;text-decoration:underline;padding:0;margin-bottom:8px;cursor:pointer}.footer-legal p{opacity:.6}
dialog{border:0;padding:0;max-height:90vh;color:var(--ink);box-shadow:var(--shadow)}dialog::backdrop{background:rgba(15,13,11,.78);backdrop-filter:blur(6px)}.dialog-close{position:absolute;right:18px;top:14px;z-index:3;border:0;background:var(--ink);color:#fff;width:42px;height:42px;border-radius:50%;font-size:1.8rem;cursor:pointer}.product-dialog{width:min(1000px,92vw)}.dialog-product{display:grid;grid-template-columns:1fr 1fr}.dialog-product>img{width:100%;height:100%;min-height:620px;object-fit:contain;background:#fff}.dialog-copy{padding:65px 50px;overflow:auto}.dialog-copy h2{font-size:clamp(2.3rem,4vw,4.4rem);letter-spacing:-.055em}.dialog-copy .description{white-space:pre-line}.dialog-copy .price{font-size:2rem}.policy-dialog{width:min(820px,92vw);padding:60px 55px}.policy-dialog h2{font-size:clamp(2.2rem,4vw,4rem);margin-bottom:25px}.policy-dialog h3{font-size:1.35rem;margin-top:30px}.policy-dialog li{margin-bottom:9px}
.cart{position:fixed;z-index:110;top:0;right:0;width:min(440px,94vw);height:100dvh;background:var(--paper);padding:30px;transform:translateX(105%);transition:transform .32s;display:flex;flex-direction:column;box-shadow:var(--shadow)}.cart.open{transform:none}.cart-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:18px}.cart-head h2{font-size:2rem}.cart-head button{border:0;background:none;font-size:2rem;cursor:pointer}.cart-items{overflow:auto;flex:1;padding:18px 0}.cart-empty{color:#746d64}.cart-row{display:grid;grid-template-columns:58px 1fr auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.cart-row img{width:58px;height:58px;object-fit:contain;background:#fff}.cart-row strong{display:block;line-height:1.2}.qty{display:flex;align-items:center;gap:8px}.qty button{border:1px solid var(--line);background:#fff;width:27px;height:27px;border-radius:50%;cursor:pointer}.cart-total{display:flex;justify-content:space-between;font-size:1.2rem;padding:20px 0}.cart-backdrop{display:none;position:fixed;inset:0;z-index:105;border:0;background:rgba(15,13,11,.55)}.cart.open~.cart-backdrop{display:block}
.reveal{opacity:0;transform:translateY(35px);transition:opacity .75s,transform .75s}.reveal.visible{opacity:1;transform:none}
@media (max-width:980px){.topbar{height:76px}.nav-toggle{display:block;margin-left:auto}.topbar nav{display:none;position:absolute;top:75px;left:0;right:0;background:var(--cream);padding:24px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.topbar nav.open{display:flex}.cart-button{padding:10px 13px}.hero{padding-inline:25px}.manifesto-grid{grid-template-columns:1fr;gap:15px}.about{display:block;padding:70vh 20px 70px}.about-photo{inset:0 0 35%}.about-card{margin:0 auto;padding:45px;width:min(720px,100%)}.section-heading{display:block}.section-heading>p{margin-top:25px}.product-card,.product-card:nth-child(n){grid-column:span 6}.institutions{grid-template-columns:1fr;gap:70px}.institutions-image{justify-self:start}.contact{grid-template-columns:1fr 1fr}.contact-intro{grid-column:1/-1}footer{grid-template-columns:1fr 1fr}}
@media (max-width:650px){.wrap{width:min(100% - 28px,1180px)}.brand{width:70px}.brand img{height:48px}.cart-button{font-size:0;padding:8px}.cart-button span{font-size:.8rem;margin:0}.hero{min-height:860px}.hero-copy{padding-top:80px}.hero-actions .button{width:100%}.scroll-cue{display:none}.manifesto-grid,.products,.delivery{padding-block:75px}.about{padding-top:58vh}.about-card{padding:32px 24px}.product-grid{display:block}.product-card{margin-bottom:18px}.institutions{padding:75px 22px}.institutions-image{box-shadow:15px 15px 0 var(--yellow)}.download-row .button{width:100%}.delivery-grid{grid-template-columns:1fr}.delivery-banner{align-items:flex-start;flex-direction:column}.text-button{margin-left:0}.contact{grid-template-columns:1fr;padding:75px 22px;gap:45px}.contact-intro{grid-column:auto}.contact-details{border-left:0;padding-left:0;border-top:1px solid rgba(25,23,20,.3);padding-top:30px}footer{grid-template-columns:1fr}.dialog-product{display:block}.dialog-product>img{min-height:0;height:350px}.dialog-copy{padding:45px 24px}.policy-dialog{padding:55px 24px}.topbar nav a{font-size:1.1rem}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker span{animation:none}.reveal{opacity:1;transform:none}.product-card,.product-image img,.button{transition:none}.hero-image,.beat{transform:none!important}.about-photo{background-attachment:scroll}}

.facebook-link{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin-top:8px;border-radius:50%;color:#fff}.facebook-link:hover{color:var(--yellow)}.facebook-link:focus-visible{outline:2px solid var(--yellow);outline-offset:3px}
