:root { --lime:#d8ff3e; --ink:#101111; --muted:#747671; --line:#ddddda; --paper:#f3f3ee; --white:#fff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; font-family:Inter,Arial,sans-serif; color:var(--ink); background:var(--paper); }
a { color:inherit; text-decoration:none; }
.container { width:min(1180px, calc(100% - 48px)); margin:auto; }
.site-header { position:fixed; z-index:10; inset:0 0 auto; color:#fff; background:#151716; }
.navbar { height:92px; display:flex; align-items:center; justify-content:space-between; }
.brand { display:flex; align-items:center; gap:10px; color:#fff; }
.brand-logo { display:block; height:76px; width:auto; filter:invert(1); }
.brand-name { font-family:"Barlow Condensed",sans-serif; font-size:30px; line-height:.75; font-weight:800; letter-spacing:-1px; }
.brand-name span { color:var(--lime); font-style:italic; }
.brand-mark { display:grid; place-items:center; width:31px; height:31px; border:2px solid var(--lime); color:var(--lime); border-radius:50%; font-size:23px; font-style:italic; }
.brand-accent, em { color:var(--lime); font-style:italic; }
.nav-links { display:flex; align-items:center; gap:31px; font-size:12px; font-weight:600; text-transform:uppercase; letter-spacing:.7px; }
.nav-links > a:not(.nav-cta) { opacity:.86; transition:opacity .2s; }.nav-links > a:hover { opacity:1; }
.nav-cta { padding:13px 17px; background:var(--lime); color:var(--ink); font-weight:700; }
.nav-whatsapp { display:flex; align-items:center; justify-content:center; width:84px; height:84px; }
.nav-whatsapp img { display:block; width:68px; height:68px; object-fit:contain; }
.menu-toggle { display:none; padding:4px; border:0; color:white; background:none; }.menu-toggle span { display:block; width:25px; height:2px; margin:5px; background:currentColor; }
.hero { position:relative; display:flex; min-height:780px; color:#fff; overflow:hidden; align-items:center; background:linear-gradient(90deg,rgba(7,9,8,.92) 0%,rgba(7,9,8,.67) 43%,rgba(7,9,8,.23)), url("https://images.unsplash.com/photo-1534438327276-14e5300c3a48?auto=format&fit=crop&w=2000&q=85") center/cover; }
.hero::after { content:""; position:absolute; inset:auto 0 0; height:170px; background:linear-gradient(transparent,rgba(16,17,17,.78)); }
.hero-glow { position:absolute; width:42vw; height:42vw; min-width:440px; min-height:440px; right:-10%; bottom:-25%; border-radius:50%; background:radial-gradient(circle,rgba(216,255,62,.16),transparent 69%); filter:blur(4px); }
.hero-content { position:relative; z-index:1; padding-top:70px; }.eyebrow { display:flex; gap:10px; align-items:center; margin:0 0 19px; color:var(--lime); font-size:10px; font-weight:700; letter-spacing:1.9px; text-transform:uppercase; }.eyebrow span { width:27px; height:2px; background:currentColor; }.eyebrow.dark { color:#697225; }
h1,h2,h3 { font-family:"Barlow Condensed",sans-serif; margin:0; line-height:.83; font-weight:800; letter-spacing:-1.6px; } h1 { max-width:700px; font-size:clamp(75px,10vw,148px); } h1 em,h2 em { font-weight:700; }
.hero-copy { width:min(460px,100%); margin:28px 0; font-size:14px; line-height:1.8; color:#e2e3df; }
.hero-actions { display:flex; gap:12px; align-items:center; }.button { display:inline-flex; gap:21px; align-items:center; padding:16px 20px; font-size:11px; font-weight:700; letter-spacing:.45px; text-transform:uppercase; transition:transform .2s, background .2s; }.button:hover { transform:translateY(-2px); }.button-primary { color:var(--ink); background:var(--lime); }.button-primary span { font-size:18px; line-height:10px; }.button-ghost { color:#fff; border:1px solid rgba(255,255,255,.55); }.button-ghost:hover { background:#fff; color:var(--ink); }
.scroll-cue { position:absolute; z-index:1; bottom:34px; left:max(24px, calc((100% - 1180px)/2)); display:flex; gap:9px; align-items:center; font-size:9px; text-transform:uppercase; letter-spacing:1.5px; opacity:.78; }.scroll-cue span { width:29px; height:1px; background:var(--lime); }
.section { padding:120px 0; }
.intro { display:flex; justify-content:space-between; gap:60px; color:#fff; background:#173328; box-shadow:0 0 0 100vmax #173328; clip-path:inset(0 -100vmax); }.intro .eyebrow.dark { color:var(--lime); }.intro h2,.section-heading h2,.plans h2,.feature-panel h2 { font-size:clamp(52px,6.4vw,84px); }.intro-copy { max-width:420px; padding-top:29px; font-size:14px; line-height:1.8; color:#d1d3cc; }.text-link { display:inline-flex; align-items:center; gap:20px; margin-top:20px; color:var(--ink); font-size:11px; font-weight:700; text-transform:uppercase; }.text-link span { color:#829800; font-size:19px; }
.features { display:grid; grid-template-columns:45% 55%; min-height:600px; background:#141615; color:white; }.feature-image { background:linear-gradient(120deg,rgba(13,15,14,.12),rgba(13,15,14,.7)), url("https://images.unsplash.com/photo-1581009146145-b5ef050c2e1e?auto=format&fit=crop&w=1200&q=85") center/cover; }.feature-panel { padding:86px max(36px,calc((100vw - 1180px)/2)); padding-right:11vw; }.feature-panel h2 { margin-bottom:42px; }.feature-grid { display:grid; grid-template-columns:1fr 1fr; gap:31px 44px; }.feature-grid article { border-top:1px solid #444640; padding-top:12px; }.feature-number { color:var(--lime); font-size:11px; font-weight:700; }.feature-grid h3 { margin:20px 0 6px; font-size:25px; letter-spacing:-.4px; }.feature-grid p { margin:0; color:#a9aaa5; font-size:12px; line-height:1.55; }
.locations { overflow:hidden; color:#fff; background:#173328; }.locations .eyebrow.dark { color:var(--lime); }.locations .section-heading > p { color:#d1d3cc; }.section-heading { display:flex; justify-content:space-between; align-items:end; gap:55px; margin-bottom:50px; }.section-heading > p { max-width:320px; font-size:13px; line-height:1.8; }
.location-carousel { width:min(1280px,calc(100% - 48px)); margin:0 auto; }.carousel-track { position:relative; min-height:360px; }.location-card { position:absolute; inset:0; display:grid; grid-template-columns:43% 57%; overflow:hidden; opacity:0; pointer-events:none; transform:translateX(45px); transition:opacity .45s ease, transform .45s ease; }.location-card.active { position:relative; opacity:1; pointer-events:auto; transform:translateX(0); }.location-info { display:flex; flex-direction:column; align-items:flex-start; padding:42px 48px; color:#fff; background:linear-gradient(140deg,#1b1d1b,#292c28); }.location-count { color:var(--lime); font-size:11px; font-weight:700; letter-spacing:1px; }.location-info h3 { margin:46px 0 14px; font-size:54px; }.location-info p { margin:0; font-size:13px; line-height:1.8; color:#d1d3cc; }.card-meta { display:flex; justify-content:space-between; align-items:center; width:100%; margin-top:auto; padding-top:25px; border-top:1px solid #4c4e49; font-size:10px; font-weight:600; }.card-meta a { color:var(--lime); text-transform:uppercase; letter-spacing:.5px; } iframe { width:100%; height:100%; min-height:360px; border:0; filter:grayscale(1) contrast(1.05); }.carousel-controls { display:flex; justify-content:space-between; align-items:center; margin-top:21px; }.carousel-buttons { display:flex; gap:8px; }.carousel-button { display:grid; place-items:center; width:42px; height:42px; border:2px solid #d92828; background:transparent; color:#526000; font-size:20px; cursor:pointer; transition:.2s; }.carousel-button:hover { border-color:#d8ff3e; color:#d8ff3e; }.carousel-dots { display:flex; gap:9px; }.carousel-dot { width:8px; height:8px; padding:0; border:0; border-radius:50%; background:#c5c7c0; cursor:pointer; }.carousel-dot.active { width:24px; border-radius:8px; background:#9abb10; }
.plans { color:#fff; background:linear-gradient(90deg,rgba(9,11,9,.88),rgba(9,11,9,.42)),url("https://images.unsplash.com/photo-1583454110551-21f2fa2afe61?auto=format&fit=crop&w=1800&q=85") center 41%/cover; }.plans-inner { padding:102px 0; }.plans h2 { margin-bottom:32px; }.contact-strip { background:var(--lime); }.contact-strip .container { display:flex; align-items:center; justify-content:space-between; min-height:111px; gap:26px; }.contact-strip p { margin:0; font-size:13px; font-weight:600; }.contact-strip a { font-family:"Barlow Condensed",sans-serif; font-size:clamp(33px,4.2vw,56px); font-weight:700; letter-spacing:-.7px; }.contact-strip a span { font-family:Inter,sans-serif; font-size:22px; vertical-align:middle; } .contact-phone { color:#526000; }
footer { padding:58px 0 19px; color:#d6d8d1; background:#151716; }.footer-top { display:grid; grid-template-columns:1fr 1fr auto; gap:20px; align-items:start; padding-bottom:55px; }.footer-logo { display:block; height:58px; width:auto; filter:invert(1); }.footer-top p { margin:1px 0 0; color:#a8aba4; font-size:12px; line-height:1.8; }.social-links { display:flex; gap:9px; }.social-links a { display:grid; place-items:center; width:31px; height:31px; border:1px solid #595c56; font-size:14px; transition:border-color .2s,color .2s; }.social-links a:hover { color:var(--lime); border-color:var(--lime); }.footer-bottom { display:flex; justify-content:space-between; gap:25px; padding-top:18px; border-top:1px solid #373a35; color:#8f928b; font-size:9px; }.footer-bottom div { display:flex; gap:22px; }
@media (max-width:760px) { .container,.location-carousel { width:calc(100% - 32px); }.navbar { height:74px; }.brand-logo { height:61px; }.brand-name { font-size:25px; }.nav-links { position:absolute; display:none; top:74px; left:0; right:0; flex-direction:column; align-items:stretch; gap:0; padding:15px 24px 24px; background:#151716; }.nav-links.open { display:flex; }.nav-links a { padding:14px 0; }.nav-cta { text-align:center; margin-top:8px; }.nav-whatsapp { width:auto; margin-top:8px; }.menu-toggle { display:block; }.hero { min-height:690px; }.hero-content { padding-top:72px; }.hero-copy { font-size:13px; }.intro,.section-heading { flex-direction:column; align-items:flex-start; gap:23px; }.section { padding:80px 0; }.intro-copy { padding-top:0; }.features { grid-template-columns:1fr; }.feature-image { min-height:260px; }.feature-panel { padding:59px 24px; }.feature-grid { gap:26px 18px; }.feature-grid h3 { font-size:23px; }.section-heading { margin-bottom:33px; }.section-heading > p { margin:0; }.carousel-track { min-height:510px; }.location-card { grid-template-columns:1fr; grid-template-rows:1fr 230px; }.location-info { padding:31px 28px; }.location-info h3 { margin:30px 0 12px; font-size:48px; }.card-meta { margin-top:24px; }.location-card iframe { min-height:230px; }.carousel-controls { margin-top:16px; }.plans-inner { padding:82px 0; }.contact-strip .container { flex-direction:column; justify-content:center; align-items:flex-start; padding:27px 0; gap:6px; }.contact-phone { display:none; }.footer-top { grid-template-columns:1fr auto; }.footer-top p { grid-column:1/-1; grid-row:2; }.footer-bottom { flex-direction:column; gap:12px; }.footer-bottom div { gap:15px; flex-wrap:wrap; } }
