@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:ital,wght@0,600;0,700;0,800;0,900;1,800&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--ink:#0b0d0e;--panel:#171b1d;--lime:#b6ff2d;--paper:#f3f5f1;--muted:#bbc1bf;--line:#343b3d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--ink);color:var(--paper);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #5daaff;outline-offset:5px}img{display:block;max-width:100%}.skip{position:absolute;top:-100px;left:20px;z-index:20;padding:12px;background:var(--lime);color:var(--ink)}.skip:focus{top:10px}.topline{padding:8px 20px;text-align:center;background:var(--lime);color:var(--ink);font-size:.75rem;letter-spacing:.14em;font-weight:700}.topline span{margin:0 12px}header{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1600px;margin:auto;padding:22px 5%;border-bottom:1px solid var(--line);background:#0b0d0e}.wordmark{font-family:'Barlow Condensed',Impact,sans-serif;font-size:2rem;font-style:italic;font-weight:900;line-height:1;letter-spacing:-.02em;flex-shrink:0}.wordmark span{display:block;color:var(--lime);font-family:'DM Sans',Arial,sans-serif;font-size:.75rem;font-style:normal;letter-spacing:.16em;margin-top:6px}nav{display:flex;gap:23px;font-size:.875rem}nav a{transition:color .2s}nav a:hover,.text-link:hover{color:var(--lime)}.header-call{padding:10px 16px;border:1px solid #4c583d;font-size:.875rem;font-weight:700;white-space:nowrap}.header-call span{color:var(--lime);margin-left:12px}.mobile-actions{display:none}
.hero{position:relative;isolation:isolate;max-width:1600px;margin:auto;min-height:720px;display:flex;align-items:center;overflow:hidden;border-bottom:4px solid var(--lime)}.hero-copy{position:relative;z-index:2;padding:60px 5% 75px;width:100%;background:linear-gradient(90deg,rgba(11,13,14,.95),rgba(11,13,14,.79) 35%,rgba(11,13,14,.08) 80%)}.eyebrow{font-size:.8rem;letter-spacing:.14em;font-weight:700;color:var(--lime);margin:0 0 24px;display:flex;align-items:center;gap:12px}.eyebrow:before{content:'';display:inline-block;width:25px;height:3px;background:currentColor;flex-shrink:0}h1,h2,h3{font-family:'Barlow Condensed',Impact,'Arial Narrow',sans-serif;font-weight:800;letter-spacing:-.015em;margin:0;line-height:1.02}h1{max-width:730px;text-transform:uppercase;font-size:clamp(3.4rem,5.8vw,6rem)}h1 span{display:block}h1 strong{display:block;font-size:1.72em;line-height:.95;letter-spacing:-.025em;font-weight:900;color:var(--lime);text-shadow:0 0 50px #b6ff2d25}h1 em{display:block;font-size:.72em;font-style:italic;margin-top:12px;color:#fff}.intro{font-size:1.06rem;color:#e1e6e0;max-width:550px;margin:27px 0}.actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap}.button{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:58px;padding:16px 24px;font-size:.95rem;font-weight:700;border-radius:2px;transition:transform .2s,box-shadow .2s,background .2s}.button span{font-size:1.3rem}.button:hover{transform:translateY(-3px)}.lime{color:var(--ink);background:var(--lime);box-shadow:5px 5px 0 #638b20}.lime:hover{background:#caff60;box-shadow:7px 7px 0 #638b20}.text-link{text-decoration:underline;text-underline-offset:6px;font-weight:600;font-size:.875rem}.hero-notes{display:flex;gap:25px;margin-top:30px;font-size:.875rem;color:#d5dad3}.hero-notes span:before{content:'✓';color:var(--lime);margin-right:8px}.hero-photo{position:absolute;inset:0;z-index:-1}.hero-photo img{height:100%;width:100%;object-fit:cover;object-position:60% center;filter:brightness(.76) saturate(.82)}.photo-label{position:absolute;bottom:0;right:0;display:flex;gap:40px;background:var(--lime);color:var(--ink);font-size:.75rem;font-weight:700;letter-spacing:.08em;padding:12px 30px;clip-path:polygon(20px 0,100% 0,100% 100%,0 100%)}
.section{max-width:1600px;margin:auto;padding:90px 6%}h2{font-size:clamp(2.7rem,4.6vw,4.8rem);text-transform:uppercase}h3{font-size:2.7rem;text-transform:uppercase}.services{background:var(--paper);color:var(--ink)}.services .eyebrow{color:#47681a}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:45px}.section-heading h2{max-width:700px}.section-heading>p{color:#505957;margin:0;flex-shrink:0}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.service-grid article{position:relative;display:flex;flex-direction:column;background:var(--panel);color:var(--paper);padding:30px;border-top:4px solid var(--lime);transition:transform .25s,box-shadow .25s;overflow:hidden}.service-grid article:hover{transform:translateY(-7px);box-shadow:0 14px 24px #0002}.service-grid article:nth-child(2){background:#20262a}.service-grid article:nth-child(3){background:#111719}.number{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:.75rem;font-weight:700;letter-spacing:.08em;color:var(--lime);margin-bottom:35px}.number b{font-family:'Barlow Condensed',Impact,sans-serif;font-size:3.7rem;line-height:1;color:#697574;letter-spacing:-.03em}.service-grid p{color:#c2c9c7;margin:18px 0 30px}.service-grid a{margin-top:auto;display:flex;justify-content:space-between;gap:10px;border-top:1px solid #414a49;padding-top:20px;font-size:.875rem;font-weight:600}.service-grid a span{color:var(--lime)}.service-grid a:hover{color:var(--lime)}
.about{display:grid;grid-template-columns:1fr 1.05fr;gap:9%;align-items:center;background:radial-gradient(ellipse at 18% 50%,#223018 0,transparent 48%),#0b0d0e}.brand-panel{position:relative;isolation:isolate;display:grid;place-items:center;aspect-ratio:1/1;border:1px solid #435235;background:linear-gradient(135deg,#16201088,#070909);transform:rotate(-3deg);box-shadow:15px 15px 0 #b6ff2d}.brand-panel img{width:100%;height:auto;transform:rotate(3deg)}.about-copy p:not(.eyebrow){max-width:520px;color:var(--muted)}.about-copy .text-link{display:inline-block;margin-top:14px}.area{display:grid;grid-template-columns:1fr 1fr;gap:8%;background:linear-gradient(135deg,#202728,#111616);border-top:1px solid #3e4b43;border-bottom:1px solid #3e4b43}.cities{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.cities li{font-size:1.05rem;font-weight:600;padding:15px 18px;background:#0b1011;border-left:3px solid var(--lime)}.area>div>p:not(.eyebrow){color:var(--muted);font-size:.875rem}.contact{display:grid;grid-template-columns:1fr .8fr;gap:40px 10%;align-items:center;background:var(--lime);color:var(--ink);position:relative}.contact .eyebrow{color:#354719}.contact h2{font-size:clamp(3rem,5.3vw,5.4rem)}.contact p:not(.eyebrow){max-width:450px}.contact-actions{display:grid;gap:14px;min-width:0}.dark{background:var(--ink);color:white;box-shadow:5px 5px 0 #83b923}.dark:hover{background:#26301e}.outline{border:2px solid #334914}.outline:hover{background:#c9ff64}.email{font-size:.875rem;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:5px;margin-top:8px}.form-wrap{grid-column:1/-1;min-width:0;width:100%}.form-wrap iframe{display:block;width:100%;height:630px;border:0;background:#fff;border-radius:6px;box-shadow:0 12px 35px #0002}.form-wrap>a{display:inline-block;margin-top:15px;text-decoration:underline;text-underline-offset:4px;font-size:.875rem}.booking{background:radial-gradient(ellipse at 100% 0,#223519,transparent 55%),var(--ink)}.booking h2{margin-bottom:20px}.booking>p:not(.eyebrow){color:var(--muted);margin-bottom:30px}footer{max-width:1600px;margin:auto;border-top:1px solid var(--line);padding:35px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap}footer p,footer small{font-size:.8rem;color:var(--muted)}footer .wordmark{font-size:1.8rem}
@media(max-width:1100px){header nav{display:none}.mobile-actions{display:flex;gap:28px;justify-content:center;flex-wrap:wrap;padding:12px 5%;font-size:.875rem;border-bottom:1px solid var(--line)}.mobile-actions a{padding:5px 0}.hero{min-height:660px}.hero-copy{padding-top:50px;padding-bottom:65px}.service-grid article{padding:23px}.section-heading>p{flex-shrink:1}.about{gap:7%}.section{padding:70px 5%}}
@media(max-width:760px){.topline{font-size:.75rem;letter-spacing:.04em;padding:9px 12px}.topline span{margin:0 6px}header{padding:20px 5%;gap:14px}.wordmark{font-size:1.8rem}.header-call{font-size:.8rem;border:0;padding:5px 0}.header-call span{display:none}.mobile-actions{gap:24px}.hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;overflow:visible}.hero-copy{padding:38px 6% 30px;background:radial-gradient(ellipse at 100% 50%,#24351955,transparent 60%),#0b0d0e}h1{font-size:clamp(2.8rem,10vw,4.8rem)}h1 strong{font-size:1.65em}h1 em{font-size:.8em}.eyebrow{font-size:.75rem;letter-spacing:.08em;margin-bottom:20px;gap:8px}.intro{font-size:1rem;margin:22px 0}.desktop{display:none}.actions{align-items:stretch;flex-direction:column;gap:23px}.actions .text-link{text-align:center}.hero-notes{font-size:.8rem;gap:18px;flex-wrap:wrap;margin-top:26px}.hero-photo{position:relative;z-index:0;inset:auto}.hero-photo img{height:auto;aspect-ratio:1.55;object-fit:cover;object-position:center;filter:brightness(.9) saturate(.95)}.photo-label{position:relative;justify-content:center;clip-path:none;gap:15px;padding:11px 14px;font-size:.75rem;letter-spacing:.03em}.photo-label span:last-child{display:none}.section{padding:55px 6%}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:18px}.service-grid{grid-template-columns:1fr;gap:16px}.service-grid article{padding:26px}.number{margin-bottom:20px}.number b{font-size:3.2rem}.service-grid h3{font-size:2.5rem}.service-grid p{margin-bottom:22px}.about{grid-template-columns:1fr;gap:45px}.brand-panel{width:90%;max-width:380px;margin:8px auto 0;box-shadow:9px 9px 0 var(--lime)}.area,.contact{grid-template-columns:1fr;gap:28px}.cities{gap:10px}.cities li{padding:12px;font-size:1rem}.contact .form-wrap{margin-top:10px}footer{flex-direction:column;align-items:start;padding:30px 6%}footer p,footer small{margin:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.reviews{background:linear-gradient(135deg,#171e1b,#0b0d0e);border-top:1px solid var(--line)}.reviews h2{max-width:850px;margin-bottom:36px}.reviews-widget{min-width:0;padding:24px;background:var(--paper);color:var(--ink);border-top:4px solid var(--lime);border-radius:4px}@media(max-width:760px){.reviews-widget{padding:16px 10px}.reviews h2{margin-bottom:26px}}

/* Prominent customer actions on phones, tablets, and desktop. */
.mobile-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:20px 6% 24px;max-width:1600px;margin:auto;background:linear-gradient(180deg,#1c2520,#101512);border-bottom:1px solid #536839}
.mobile-actions a{display:flex;align-items:center;justify-content:center;text-align:center;min-height:56px;padding:14px 18px;border:2px solid var(--lime);border-radius:8px;background:#25351d;color:#d7ffae;font-size:1rem;font-weight:700;line-height:1.3;box-shadow:0 4px 0 #080c06,0 0 18px #b6ff2d14;transition:transform .18s,background .18s,box-shadow .18s}
.mobile-actions a:first-child{background:var(--lime);color:#0b0d0e;box-shadow:0 4px 0 #648b20,0 0 22px #b6ff2d30}
.mobile-actions a:hover{background:#caff69;color:#0b0d0e;transform:translateY(-2px);box-shadow:0 6px 0 #48651b,0 0 22px #b6ff2d35}
.mobile-actions a:active{transform:translateY(2px);box-shadow:0 1px 0 #48651b}
@media(max-width:760px){.mobile-actions{gap:9px;padding:16px 5% 20px}.mobile-actions a{font-size:.875rem;padding:12px 6px;min-height:54px}}
@media(prefers-reduced-motion:reduce){.mobile-actions a{transition:none}.mobile-actions a:hover,.mobile-actions a:active{transform:none}}

.booking-link{max-width:360px}.form-page{height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden}.form-header{width:100%;max-width:none;padding:18px 5%;flex:none}.form-main{display:flex;flex-direction:column;flex:1;min-height:0}.form-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 5%;flex:none}.form-heading h1{font-size:2.2rem;color:var(--lime)}.form-heading p{margin:6px 0 0;color:var(--muted);font-size:.875rem}.form-main>iframe{display:block;width:100%;flex:1;min-height:0;border:0;background:white}.form-heading>a{flex-shrink:0}@media(max-width:760px){.form-header{padding:14px 5%}.form-header .wordmark{font-size:1.5rem}.form-header .text-link{font-size:.8rem}.form-heading{padding:14px 5%;flex-wrap:wrap;gap:10px}.form-heading h1{font-size:1.8rem}.form-heading p{display:none}.form-heading>a{font-size:.8rem}}
