:root{--green:#0b2e22;--green2:#164a35;--lime:#d6ff32;--yellow:#f5c842;--orange:#ff6933;--cream:#f5f0e6;--ink:#101612;--muted:#657068}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif}.site-header{position:absolute;z-index:10;top:0;left:0;width:100%;height:96px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff24;color:#fff}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.brand-mark{width:45px;height:45px;border-radius:50% 50% 45% 55%;background:var(--lime);color:var(--green);display:grid;place-items:center;font:24px 'Archivo Black';transform:rotate(-7deg);box-shadow:inset -5px -5px 0 #8fad20}.brand-mark span{transform:rotate(7deg)}.brand strong{font:24px 'Archivo Black';letter-spacing:1px}.brand small{display:block;font-size:8px;letter-spacing:1.8px}.site-header nav{display:flex;gap:30px}.site-header nav a{color:#fff;text-decoration:none;font-size:14px;font-weight:600}.site-header nav a:hover{color:var(--lime)}.header-cta,.button{display:inline-flex;justify-content:center;align-items:center;gap:13px;text-decoration:none;font-weight:700;border:0;cursor:pointer}.header-cta{background:var(--lime);color:var(--green);padding:14px 20px;border-radius:4px}.menu-toggle{display:none;background:none;border:0;color:#fff;font-size:25px}.hero{height:min(900px,100vh);min-height:710px;position:relative;background:#071a13;color:white;display:flex;align-items:center;overflow:hidden}.hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,17,12,.98) 0%,rgba(3,17,12,.85) 32%,rgba(3,17,12,.12) 70%),url('assets/hero-ipe.png') center/cover}.hero-content{position:relative;z-index:1;width:680px;margin-left:8vw;padding-top:70px}.eyebrow{font-size:12px;letter-spacing:3px;font-weight:800;color:#74977e;margin:0 0 18px}.hero .eyebrow{color:var(--lime)}.status{display:inline-flex;gap:8px;align-items:center;background:#ffffff12;border:1px solid #ffffff25;padding:8px 13px;border-radius:30px;font-size:12px;margin-bottom:26px}.status i{width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 12px var(--lime)}h1,h2,h3{font-family:'Archivo Black';text-transform:uppercase;line-height:.96;margin:0}h1{font-size:clamp(54px,6.4vw,98px);letter-spacing:-4px}h1 em,.promo h2 em{font-style:normal;color:var(--lime)}.hero-copy{max-width:570px;font-size:18px;line-height:1.6;color:#d7ded9}.hero-actions{display:flex;gap:12px;margin:32px 0}.button{padding:17px 23px;border-radius:4px}.button.primary{background:var(--lime);color:var(--green)}.button.primary:hover{background:#e4ff72;transform:translateY(-2px)}.button.secondary{color:#fff;border:1px solid #ffffff55;background:#ffffff0b}.social-proof{display:flex;gap:18px;align-items:center;margin-top:44px}.rating{display:flex;flex-direction:column}.rating strong{font:34px 'Archivo Black'}.rating span,.stars,.google-score span{color:var(--yellow);letter-spacing:2px}.social-proof p{font-size:12px;color:#aab6ae;margin:0;line-height:1.5}.social-proof p b{font-size:14px;color:#fff}.divider{height:40px;width:1px;background:#ffffff35}.scroll-hint{position:absolute;right:4vw;bottom:42px;z-index:1;font-size:9px;letter-spacing:2px;writing-mode:vertical-rl}.scroll-hint span{color:var(--lime);font-size:18px;margin-top:8px}.ticker{background:var(--lime);color:var(--green);overflow:hidden;padding:15px 0;font:15px 'Archivo Black';white-space:nowrap}.ticker div{animation:ticker 24s linear infinite}@keyframes ticker{to{transform:translateX(-50%)}}.section{padding:110px 7vw}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:50px}.section-heading h2,.location h2{font-size:clamp(42px,5vw,76px);letter-spacing:-3px}.section-heading>p{width:390px;color:var(--muted);line-height:1.7}.category-grid{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:12px}.category{position:relative;min-height:390px;padding:30px;background:#ebe5d9;display:flex;flex-direction:column;transition:.25s}.category:hover{transform:translateY(-6px);box-shadow:0 16px 40px #123a2815}.category.featured{background:var(--green);color:white}.category>span{position:absolute;right:25px;top:25px;color:#9caa9f;font-size:12px}.category-icon{font-size:50px;color:var(--orange);margin:50px 0 45px}.category h3{font-size:31px}.category p{font-size:14px;line-height:1.6;color:#667169}.category.featured p{color:#b6c6bb}.category a{margin-top:auto;color:inherit;text-decoration:none;font-weight:700;font-size:13px}.category a:hover{color:var(--orange)}.promo{min-height:690px;display:grid;grid-template-columns:1fr 1fr;background:var(--green);color:#fff}.promo-copy{padding:100px 8vw}.promo h2{font-size:clamp(42px,5vw,75px);letter-spacing:-3px}.promo-copy>p:not(.eyebrow){color:#afc0b4;line-height:1.7;max-width:530px}.promo ul{list-style:none;margin:35px 0 0;padding:0}.promo li{border-top:1px solid #ffffff1f;padding:18px 0;display:flex;justify-content:space-between}.promo li span{color:#92a59a;width:55%;font-size:13px}.promo-visual{position:relative;overflow:hidden;background:var(--yellow);color:var(--green);display:grid;place-items:center}.big-word{font:clamp(170px,25vw,400px) 'Archivo Black';letter-spacing:-30px;transform:rotate(-10deg);opacity:.13}.badge{position:absolute;width:190px;height:190px;border-radius:50%;background:var(--orange);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(8deg);box-shadow:12px 12px 0 var(--green)}.badge strong{font:43px 'Archivo Black'}.badge span{text-align:center;font-size:12px}.outline-text{position:absolute;bottom:20px;font:48px 'Archivo Black';color:transparent;-webkit-text-stroke:1px var(--green);white-space:nowrap}.google-score{display:flex;align-items:center;gap:14px}.google-score>strong{font:54px 'Archivo Black'}.google-score div{display:flex;flex-direction:column}.google-score small{font-size:11px;color:var(--muted)}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.review-grid blockquote{margin:0;background:#fff;padding:35px;min-height:270px;display:flex;flex-direction:column;border-bottom:4px solid transparent}.review-grid blockquote:hover{border-color:var(--orange)}.review-grid blockquote>p{font-size:20px;line-height:1.5;font-weight:600}.review-grid footer{margin-top:auto;display:flex;align-items:center;gap:12px}.review-grid footer>b{background:var(--green);color:var(--lime);width:42px;height:42px;border-radius:50%;display:grid;place-items:center}.review-grid footer span{display:flex;flex-direction:column}.review-grid footer small{color:#879088}.location{display:grid;grid-template-columns:1.3fr 1fr;min-height:620px;background:#dfe7dd}.map-pattern{position:relative;background-color:#cbd9ca;background-image:linear-gradient(30deg,#b7c9b8 12%,transparent 12.5%,transparent 87%,#b7c9b8 87.5%),linear-gradient(150deg,#b7c9b8 12%,transparent 12.5%,transparent 87%,#b7c9b8 87.5%),linear-gradient(30deg,#b7c9b8 12%,transparent 12.5%,transparent 87%,#b7c9b8 87.5%);background-size:100px 175px}.pin{position:absolute;left:55%;top:45%;width:90px;height:90px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--orange);color:#fff;display:grid;place-items:center;font:22px 'Archivo Black';box-shadow:0 12px 30px #173d2d55}.pin::first-line{transform:rotate(45deg)}.location-card{padding:85px 7vw;background:var(--lime)}.location-card>p:not(.eyebrow){line-height:1.7}.hours{display:flex;justify-content:space-between;border-top:1px solid #173d2d33;border-bottom:1px solid #173d2d33;padding:18px 0;margin:30px 0}.hours b{color:var(--green)}.contact{display:flex;flex-direction:column;margin-bottom:25px}.contact a{color:var(--green);font:27px 'Archivo Black';text-decoration:none}.button.dark{background:var(--green);color:white}.floating-whatsapp{position:fixed;z-index:7;right:25px;bottom:25px;background:var(--orange);color:#fff;border-radius:40px;padding:15px 20px;text-decoration:none;font-weight:800;box-shadow:0 10px 30px #0004}footer{background:#071a13;color:#c2cec6;text-align:center;padding:75px 5vw 25px}.footer-brand{font:100px 'Archivo Black';letter-spacing:-8px;color:white}.footer-brand span{color:var(--lime)}.footer-links{display:flex;justify-content:center;gap:30px;margin:35px}.footer-links a{color:#fff;text-decoration:none}footer>small{display:block;border-top:1px solid #ffffff18;padding-top:20px;font-size:10px}.age-gate{position:fixed;inset:0;z-index:100;background:#06150fef;display:grid;place-items:center;padding:20px;transition:.35s}.age-gate.hidden{opacity:0;visibility:hidden}.age-card{max-width:510px;background:var(--cream);padding:45px;text-align:center;border-top:7px solid var(--lime);box-shadow:0 30px 100px #000}.age-card .brand-mark{margin:0 auto 25px}.age-card h2{font-size:38px}.age-card p:not(.eyebrow){color:var(--muted);line-height:1.6}.age-actions{display:flex;gap:10px;justify-content:center;margin:25px 0}.button.ghost{border:1px solid #b7beb8}.age-card small{color:#879088}
@media(max-width:900px){.site-header{height:75px;padding:0 20px}.site-header nav,.header-cta{display:none}.menu-toggle{display:block}.site-header.open nav{position:absolute;display:flex;flex-direction:column;top:75px;left:0;width:100%;padding:25px;background:var(--green)}.hero{min-height:760px}.hero-bg{background-position:60% center}.hero-content{margin:0 22px;padding-top:90px;width:auto}.hero-copy{font-size:16px}.section{padding:75px 22px}.section-heading{display:block}.section-heading>p{width:auto}.category-grid{grid-template-columns:1fr 1fr}.promo{grid-template-columns:1fr}.promo-copy{padding:75px 25px}.promo-visual{min-height:400px}.review-grid{grid-template-columns:1fr}.location{grid-template-columns:1fr}.map-pattern{min-height:330px}.location-card{padding:65px 25px}.footer-brand{font-size:75px}}@media(max-width:560px){h1{font-size:56px;letter-spacing:-3px}.hero-actions{flex-direction:column;align-items:stretch}.social-proof{flex-wrap:wrap}.category-grid{grid-template-columns:1fr}.category{min-height:330px}.category-icon{margin:30px 0}.section-heading h2,.location h2{font-size:43px}.google-score{margin-top:25px}.promo li{display:block}.promo li span{display:block;width:auto;margin-top:6px}.floating-whatsapp span{display:none}.age-card{padding:35px 22px}.age-actions{flex-direction:column}.footer-brand{font-size:60px}.footer-links{gap:16px;flex-wrap:wrap}}
