:root {
  --ink:#14231c; --muted:#5d6a63; --paper:#f7f5ee; --surface:#fffdf8; --soft:#e8eee6;
  --brand:#1e6040; --brand-dark:#153c2a; --accent:#c59a48; --line:rgba(20,35,28,.15);
  --hero-overlay:linear-gradient(90deg,rgba(10,28,18,.84) 0%,rgba(10,28,18,.55) 43%,rgba(10,28,18,.08) 72%);
  --display:Georgia,"Times New Roman",serif; --sans:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --shadow:0 20px 60px rgba(18,34,25,.12); --radius:3px; --max:1240px; --header-h:82px;
}
html[data-mode="auto"] { --ink:#191b1d; --muted:#66696d; --paper:#f0efeb; --surface:#faf9f6; --soft:#e1e2e2; --brand:#a62d2b; --brand-dark:#1d2125; --accent:#b53b36; --line:rgba(25,27,29,.17); --hero-overlay:linear-gradient(90deg,rgba(10,11,12,.9) 0%,rgba(10,11,12,.7) 43%,rgba(10,11,12,.08) 74%); --shadow:0 20px 60px rgba(0,0,0,.15); }
* { box-sizing:border-box; }
[hidden] { display:none!important; }
html { scroll-behavior:smooth; scroll-padding-top:130px; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:var(--sans); font-size:16px; line-height:1.65; overflow-x:hidden; transition:color .42s ease,background-color .42s ease; }
body.menu-open { overflow:hidden; }
img { display:block; max-width:100%; }
a { color:inherit; text-decoration:none; }
button,input,select,textarea { font:inherit; }
button { color:inherit; }
:focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
.sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.skip-link { position:fixed; z-index:999; top:10px; left:10px; padding:12px 18px; background:#fff; color:#111; transform:translateY(-150%); }
.skip-link:focus { transform:none; }
.container { width:min(var(--max),calc(100% - 48px)); margin-inline:auto; }
.section { padding:120px 0; }
.eyebrow { margin:0 0 18px; color:var(--brand); font-size:.72rem; line-height:1; font-weight:800; letter-spacing:.17em; text-transform:uppercase; }
h1,h2 { margin:0; font-family:var(--display); font-weight:400; letter-spacing:-.042em; line-height:.98; }
h1 { font-size:clamp(3.15rem,6.5vw,6.7rem); }
h2 { font-size:clamp(2.65rem,5vw,5.2rem); }
h1 em,h2 em { color:var(--brand); font-weight:400; }
.button { display:inline-flex; min-height:52px; align-items:center; justify-content:center; gap:10px; padding:13px 23px; border:1px solid var(--brand); border-radius:var(--radius); background:var(--brand); color:#fff; font-size:.78rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; cursor:pointer; transition:background .25s,transform .25s,border-color .4s; }
.button:hover { transform:translateY(-2px); background:var(--brand-dark); border-color:var(--brand-dark); }
.button-small { min-height:44px; padding:9px 17px; font-size:.67rem; }
.text-link { display:inline-flex; align-items:center; gap:18px; padding:8px 0; border-bottom:1px solid currentColor; color:#fff; font-size:.75rem; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.text-link span { transition:transform .25s; }.text-link:hover span{transform:translate(3px,3px)}
.dark-link { color:var(--ink); }
.announcement { min-height:34px; display:flex; align-items:center; justify-content:center; gap:16px; padding:6px 20px; background:var(--brand-dark); color:#fff; font-size:.7rem; letter-spacing:.035em; text-align:center; transition:background .42s; }
.announcement a { padding-left:16px; border-left:1px solid rgba(255,255,255,.35); font-weight:800; }
.site-header { position:sticky; top:0; z-index:100; background:rgba(250,249,245,.95); border-bottom:1px solid var(--line); backdrop-filter:blur(16px); }
.header-shell { width:min(1420px,calc(100% - 40px)); height:var(--header-h); margin:auto; display:flex; align-items:center; gap:30px; }
.brand { display:inline-flex; align-items:center; gap:11px; flex:none; }
.brand-mark { display:inline-flex; flex:none; width:39px; height:39px; color:var(--brand); transition:color .42s; }
.brand-mark svg { display:block; width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.7; }
.brand-mark .mark-detail { stroke-width:1.5; transition:opacity .35s; }
html[data-mode="lawn"] .brand-mark .gear,html[data-mode="auto"] .brand-mark .leaf { opacity:0; }
.brand strong { display:block; font-family:var(--display); font-size:1.2rem; letter-spacing:.14em; line-height:1; }
.brand small { display:block; margin-top:5px; font-size:.5rem; font-weight:750; letter-spacing:.1em; white-space:nowrap; }
.brand i { color:var(--brand); font-style:normal; }
.desktop-nav { margin-left:auto; display:flex; align-items:center; gap:28px; }
.desktop-nav a { position:relative; padding:10px 0; font-size:.72rem; font-weight:750; letter-spacing:.035em; }
.desktop-nav a:after { content:""; position:absolute; right:0; bottom:6px; left:0; height:1px; background:var(--brand); transform:scaleX(0); transform-origin:right; transition:transform .25s; }
.desktop-nav a:hover:after { transform:scaleX(1); transform-origin:left; }
.menu-toggle { display:none; width:46px; height:46px; border:0; background:transparent; cursor:pointer; }
.menu-toggle span { display:block; width:24px; height:1.5px; margin:6px auto; background:currentColor; transition:.25s; }
.mode-bar { min-height:46px; display:flex; align-items:center; justify-content:center; gap:22px; border-top:1px solid var(--line); background:var(--surface); transition:background .42s,border .42s; }
.mode-label,.mode-status { color:var(--muted); font-size:.62rem; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }
.mode-switch { position:relative; display:grid; grid-template-columns:1fr 1.3fr; width:360px; padding:3px; border:1px solid var(--line); border-radius:99px; background:var(--soft); }
.switch-indicator { position:absolute; top:3px; bottom:3px; left:3px; width:calc(43.48% - 3px); border-radius:99px; background:var(--brand); box-shadow:0 5px 18px rgba(0,0,0,.12); transition:transform .42s cubic-bezier(.2,.75,.25,1),background .42s,width .42s; }
html[data-mode="auto"] .switch-indicator { width:calc(56.52% - 3px); transform:translateX(76.9%); }
.mode-switch button { position:relative; z-index:1; height:31px; border:0; border-radius:99px; background:none; color:var(--muted); cursor:pointer; font-size:.64rem; font-weight:850; letter-spacing:.035em; transition:color .3s; }
.mode-switch button[aria-pressed="true"] { color:#fff; }
.switch-icon { display:inline-flex; width:16px; height:16px; margin-right:4px; vertical-align:middle; }.switch-icon svg{width:100%;height:100%;display:block}.mobile-menu{display:none}

.hero { position:relative; min-height:calc(100svh - 162px); height:760px; overflow:hidden; color:#fff; background:#14231c; }
.hero-media,.hero-image,.hero-overlay { position:absolute; inset:0; }
.hero-image { background-size:cover; background-position:center; transition:opacity .5s ease,transform 8s ease; transform:scale(1.015); }
.hero-lawn { background-image:url("assets/images/lawn-hero.png"); background-position:center center; opacity:1; }
.hero-auto { background-position:center center; opacity:0; }
html[data-mode="auto"] .hero-lawn{opacity:0} html[data-mode="auto"] .hero-auto{opacity:1}
.hero-overlay { background:var(--hero-overlay); transition:background .42s; }
.hero-content { position:relative; z-index:2; height:100%; padding:clamp(90px,12vh,140px) 0 120px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
.hero-content .eyebrow { color:#d9c58c; }
.hero h1 { max-width:870px; text-shadow:0 2px 20px rgba(0,0,0,.16); }
.hero h1 em { color:#d8c080; }
html[data-mode="auto"] .hero h1 em { color:#d87069; }
.hero-copy { max-width:650px; margin:28px 0 30px; color:rgba(255,255,255,.82); font-size:1.04rem; line-height:1.75; }
.hero-actions { display:flex; align-items:center; gap:30px; }
.trust-list { display:flex; gap:28px; margin:45px 0 0; padding:0; list-style:none; }
.trust-list li { display:flex; align-items:center; gap:9px; font-size:.7rem; font-weight:750; letter-spacing:.035em; }
.trust-list li:before { content:"✓"; display:grid; place-items:center; width:20px; height:20px; border:1px solid rgba(255,255,255,.5); border-radius:50%; color:#e4ca84; font-size:.65rem; }
.scroll-cue { position:absolute; z-index:3; bottom:30px; left:50%; display:flex; align-items:center; gap:12px; color:rgba(255,255,255,.7); transform:translateX(-50%); font-size:.58rem; font-weight:750; letter-spacing:.12em; text-transform:uppercase; }
.scroll-cue i { font-size:1.1rem; font-style:normal; animation:down 1.8s infinite; }
.hero-note { position:absolute; z-index:3; right:3vw; bottom:28px; display:flex; align-items:center; gap:14px; max-width:280px; padding:18px 20px; border-left:1px solid rgba(255,255,255,.45); background:rgba(10,15,12,.35); backdrop-filter:blur(8px); }
.hero-note-index { font-family:var(--display); font-size:1.7rem; color:#d8c080; }.hero-note strong,.hero-note small{display:block}.hero-note strong{font-family:var(--display);font-size:1rem}.hero-note small{color:rgba(255,255,255,.7);font-size:.63rem}
@keyframes down{50%{transform:translateY(5px)}}

.section-heading { margin-bottom:65px; }.split-heading{display:grid;grid-template-columns:1.2fr .55fr;align-items:end;gap:80px}.split-heading>p{margin:0 0 8px;color:var(--muted);font-size:1rem}.centered{text-align:center}.centered h2{margin:auto}
.featured-services { display:grid; grid-template-columns:1.2fr 1fr 1fr; gap:18px; }
.service-card { position:relative; min-height:390px; padding:34px; display:flex; flex-direction:column; justify-content:flex-end; overflow:hidden; background:var(--surface); box-shadow:0 0 0 1px var(--line); transition:transform .3s,box-shadow .3s,background .42s; }
.service-card:first-child { min-height:480px; grid-row:span 2; }
.service-card:hover { z-index:1; transform:translateY(-6px); box-shadow:var(--shadow); }
.service-card .service-number { position:absolute; top:25px; left:30px; font-family:var(--display); color:var(--muted); font-size:.8rem; }
.service-card .icon { position:absolute; top:28px; right:28px; width:46px; height:46px; padding:10px; border:1px solid var(--line); color:var(--brand); }
.icon{display:inline-flex;flex:none}.icon svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.service-card h3 { margin:0 0 12px; font-family:var(--display); font-size:1.9rem; font-weight:400; letter-spacing:-.02em; }
.service-card p { margin:0; color:var(--muted); font-size:.88rem; line-height:1.65; }.service-card small{margin-top:20px;color:var(--brand);font-size:.61rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}
.all-services { margin-top:22px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.services-toggle { width:100%; min-height:68px; padding:0; display:flex; align-items:center; justify-content:space-between; border:0; background:none; cursor:pointer; font-size:.72rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }.services-toggle span:last-child{font-size:1.6rem;font-weight:300;transition:transform .3s}.services-toggle[aria-expanded="true"] span:last-child{transform:rotate(45deg)}
.service-list { display:grid; grid-template-columns:repeat(3,1fr); gap:0 35px; padding:10px 0 30px; }.service-list span{padding:13px 0;border-bottom:1px solid var(--line);font-family:var(--display);font-size:1.05rem}
.process { background:var(--brand-dark); color:#fff; transition:background .42s; }.process .eyebrow{color:#d8c080}html[data-mode="auto"] .process .eyebrow{color:#d87069}.process h2 em{color:#d8c080}html[data-mode="auto"] .process h2 em{color:#d87069}
.process-list { position:relative; display:grid; grid-template-columns:repeat(4,1fr); gap:0; margin:70px 0 40px; padding:0; list-style:none; counter-reset:steps; }.process-list:before{content:"";position:absolute;top:28px;left:4%;right:4%;height:1px;background:rgba(255,255,255,.25)}
html[data-mode="auto"] .process-list{grid-template-columns:repeat(5,1fr)}
.process-list li{position:relative;padding:75px 24px 0 0;counter-increment:steps}.process-list li:before{content:counter(steps,decimal-leading-zero);position:absolute;z-index:1;top:0;left:0;width:56px;height:56px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.4);border-radius:50%;background:var(--brand-dark);font-family:var(--display);color:#d8c080;transition:background .42s}.process-list h3{margin:0 0 10px;font-family:var(--display);font-size:1.25rem;font-weight:400}.process-list p{margin:0;color:rgba(255,255,255,.62);font-size:.76rem;line-height:1.6}.process-note{max-width:620px;margin:50px auto 0;padding-top:28px;border-top:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.65);font-family:var(--display);font-size:1.05rem;text-align:center}
.about{background:var(--surface)}.about-grid{display:grid;grid-template-columns:.9fr 1fr;gap:clamp(55px,9vw,130px);align-items:center}.about-image{position:relative}.about-image:before{content:"";position:absolute;inset:-18px 18px 18px -18px;border:1px solid var(--accent);opacity:.45}.about-image img{position:relative;width:100%;height:670px;object-fit:cover}.image-caption{position:absolute;right:-22px;bottom:28px;padding:13px 16px;background:var(--surface);box-shadow:var(--shadow);color:var(--muted);font-size:.55rem;line-height:1.5;letter-spacing:.06em;text-transform:uppercase}.image-caption strong{color:var(--ink)}
.about-copy>p:not(.eyebrow){color:var(--muted);font-size:1rem}.about-copy h2{margin-bottom:35px}.about-copy blockquote{margin:38px 0 16px;padding-left:25px;border-left:2px solid var(--accent);font-family:var(--display);font-size:1.65rem;line-height:1.35}.signature span,.signature small{display:block}.signature span{font-family:var(--display)}.signature small{margin-top:4px;color:var(--muted);font-size:.55rem;letter-spacing:.09em}
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.why-card{min-height:235px;padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .3s,transform .3s}.why-card:hover{background:var(--surface);transform:translateY(-3px)}.why-card .icon{width:37px;height:37px;color:var(--brand)}.why-card h3{margin:30px 0 10px;font-family:var(--display);font-size:1.25rem;font-weight:400}.why-card p{margin:0;color:var(--muted);font-size:.76rem;line-height:1.6}
.gallery{background:var(--soft)}.gallery-grid{display:grid;grid-template-columns:1.35fr .8fr .8fr;grid-template-rows:310px 310px;gap:14px}.gallery-item{position:relative;overflow:hidden;border:0;padding:0;background:#222;cursor:zoom-in;color:#fff}.gallery-item:first-child{grid-row:1/3}.gallery-item:nth-child(4){grid-column:2/4}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .55s}.gallery-item:hover img,.gallery-item:focus-visible img{transform:scale(1.045)}.gallery-label{position:absolute;left:18px;bottom:16px;padding:7px 10px;background:rgba(15,17,15,.75);font-size:.58rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;backdrop-filter:blur(5px)}.gallery-expand{position:absolute;top:16px;right:16px;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.88);color:#111;font-size:1rem}.demo-disclosure{margin:24px 0 0;color:var(--muted);font-size:.68rem;text-align:center}
.comparison-wrap{margin-top:18px}.comparison{position:relative;height:420px;overflow:hidden;background:#222}.comparison>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.comparison-after{clip-path:inset(0 50% 0 0)}.comparison-range{position:absolute;z-index:3;right:30px;bottom:14px;left:30px;width:calc(100% - 60px);height:44px;margin:0;accent-color:var(--brand);cursor:ew-resize}.comparison-divider{position:absolute;z-index:2;top:0;bottom:0;left:50%;width:2px;background:#fff;pointer-events:none}.comparison-divider:after{content:"↔";position:absolute;top:50%;left:50%;width:46px;height:46px;display:grid;place-items:center;border:2px solid #fff;border-radius:50%;background:var(--brand);color:#fff;transform:translate(-50%,-50%)}.comparison-tag{position:absolute;z-index:2;top:18px;padding:8px 11px;background:rgba(10,12,10,.76);color:#fff;font-size:.58rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.comparison-tag.before{left:18px}.comparison-tag.after{right:18px}.comparison-caption{display:flex;justify-content:space-between;gap:20px;padding:12px 0;color:var(--muted);font-size:.68rem}.comparison-caption strong{color:var(--ink)}
.reviews{background:var(--surface)}.reviews-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:55px}.rating{text-align:right}.rating strong{display:block;font-family:var(--display);font-size:3rem;line-height:1}.rating span{color:var(--accent);letter-spacing:.15em}.rating small{display:block;margin-top:5px;color:var(--muted);font-size:.58rem;text-transform:uppercase}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.review-card{padding:32px;background:var(--paper);border-top:2px solid var(--brand)}.review-stars{color:var(--accent);font-size:.75rem;letter-spacing:.15em}.review-card blockquote{min-height:150px;margin:22px 0;font-family:var(--display);font-size:1.3rem;line-height:1.5}.review-meta{display:flex;align-items:center;gap:13px;border-top:1px solid var(--line);padding-top:18px}.review-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--brand-dark);color:#fff;font-family:var(--display)}.review-meta strong,.review-meta small{display:block}.review-meta strong{font-size:.72rem}.review-meta small{color:var(--muted);font-size:.59rem}
.service-area{overflow:hidden}.area-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:90px;align-items:center}.map-card{position:relative;height:520px;overflow:hidden;border:1px solid var(--line);background:#e8e4d7;background-image:linear-gradient(35deg,transparent 45%,rgba(255,255,255,.8) 45% 49%,transparent 49%),linear-gradient(-45deg,transparent 43%,rgba(193,181,157,.55) 43% 47%,transparent 47%),radial-gradient(circle at 30% 30%,#d8ddcf 0 10%,transparent 10%);background-size:190px 140px,230px 180px,100% 100%}.map-lines{position:absolute;inset:0;background:repeating-radial-gradient(circle at 50% 50%,transparent 0 82px,rgba(30,96,64,.16) 83px 84px)}.map-radius{position:absolute;top:50%;left:50%;width:270px;height:270px;display:grid;place-items:center;border:1px dashed var(--brand);border-radius:50%;background:rgba(30,96,64,.1);transform:translate(-50%,-50%);font-family:var(--display)}.map-pin{position:absolute;top:105px;color:var(--brand);font-size:1.6rem;transform:translateY(-50%)}.map-radius strong{margin-top:65px;padding:5px 9px;background:var(--surface);font-size:.9rem}.map-tag{position:absolute;right:22px;bottom:22px;padding:10px 14px;background:var(--brand-dark);color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.05em}.area-copy p{color:var(--muted)}.area-copy ul{display:grid;grid-template-columns:1fr 1fr;margin:28px 0;padding:0;list-style:none}.area-copy li{padding:10px 0;border-bottom:1px solid var(--line);font-family:var(--display)}.area-copy li:before{content:"↗";margin-right:9px;color:var(--brand)}.area-copy small{color:var(--muted);font-size:.65rem}
.faq{background:var(--surface)}.faq-grid{display:grid;grid-template-columns:.7fr 1.1fr;gap:100px}.faq-intro{position:sticky;top:180px;align-self:start}.faq-intro p:not(.eyebrow){max-width:390px;color:var(--muted)}.accordion-item{border-top:1px solid var(--line)}.accordion-item:last-child{border-bottom:1px solid var(--line)}.accordion-button{width:100%;min-height:80px;padding:20px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;border:0;background:none;text-align:left;cursor:pointer;font-family:var(--display);font-size:1.2rem}.accordion-button span{flex:none;font-family:var(--sans);font-size:1.5rem;font-weight:250;transition:transform .25s}.accordion-button[aria-expanded="true"] span{transform:rotate(45deg)}.accordion-panel{padding:0 50px 24px 0;color:var(--muted);font-size:.88rem}.accordion-panel p{margin:0}
.contact{background:var(--brand-dark);color:#fff;transition:background .42s}.contact-shell{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;align-items:start}.contact .eyebrow{color:#d8c080}html[data-mode="auto"] .contact .eyebrow{color:#d87069}.contact h2 em{color:#d8c080}html[data-mode="auto"] .contact h2 em{color:#d87069}.contact-intro>p:not(.eyebrow){max-width:470px;color:rgba(255,255,255,.65)}.contact-details{margin:50px 0 35px}.contact-details>a,.contact-details>div{display:block;padding:16px 0;border-top:1px solid rgba(255,255,255,.18);font-family:var(--display);font-size:1.08rem}.contact-details span{display:inline-block;width:70px;color:rgba(255,255,255,.55);font-family:var(--sans);font-size:.58rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.contact-details small{margin-left:8px;color:rgba(255,255,255,.4);font-family:var(--sans);font-size:.55rem}.availability{display:flex;align-items:center;gap:12px;color:rgba(255,255,255,.75)!important;font-size:.72rem!important}.availability i{width:8px;height:8px;border-radius:50%;background:#79c08b;box-shadow:0 0 0 6px rgba(121,192,139,.12)}
.contact-form{position:relative;padding:42px;background:var(--surface);color:var(--ink);box-shadow:0 25px 70px rgba(0,0,0,.18)}.form-heading{display:grid;grid-template-columns:1fr auto;align-items:end;margin-bottom:30px}.form-heading span{grid-column:1/3;color:var(--brand);font-size:.6rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.form-heading strong{font-family:var(--display);font-size:2rem;font-weight:400}.form-heading small{color:var(--muted);font-size:.58rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:flex;flex-direction:column;gap:6px}.field-full{grid-column:1/3}.field span,.file-field>span:first-child,fieldset legend{font-size:.62rem;font-weight:800;letter-spacing:.055em;text-transform:uppercase}.field input,.field select,.field textarea{width:100%;min-height:49px;padding:11px 12px;border:1px solid var(--line);border-radius:0;background:var(--paper);color:var(--ink)}.field textarea{min-height:105px;resize:vertical}.field input[aria-invalid="true"],.field select[aria-invalid="true"],.consent input[aria-invalid="true"]{outline:2px solid #b52e2e}.field-error{color:#a72525;font-size:.65rem}.file-field{position:relative;display:block;margin:18px 0}.file-field input{position:absolute;top:0;left:0;width:1px;height:1px;opacity:0;pointer-events:none}.file-control{display:block!important;margin-top:7px;padding:13px;border:1px dashed var(--line);color:var(--brand);cursor:pointer;text-align:center;font-size:.7rem!important;font-weight:750!important;letter-spacing:0!important;text-transform:none!important}.contact-preference{margin:18px 0;padding:0;border:0}.contact-preference legend{margin-bottom:8px}.contact-preference label{margin-right:18px;font-size:.78rem}.contact-preference input,.consent input{accent-color:var(--brand)}.consent{display:flex;align-items:flex-start;gap:10px;margin:20px 0;color:var(--muted);font-size:.7rem}.consent input{margin-top:4px}.submit-button{width:100%;margin-top:5px}.privacy-note{margin:9px 0 0;color:var(--muted);font-size:.59rem;text-align:center}.form-errors{margin-bottom:18px;padding:12px;border-left:3px solid #aa2727;background:#f6e5e5;color:#851f1f;font-size:.75rem}.form-success{position:absolute;inset:0;z-index:2;padding:50px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--surface);text-align:center}.form-success span{width:60px;height:60px;display:grid;place-items:center;border-radius:50%;background:var(--brand);color:#fff;font-size:1.8rem}.form-success strong{margin-top:20px;font-family:var(--display);font-size:2rem;font-weight:400}.form-success p{max-width:380px;color:var(--muted)}
.footer{padding:70px 0 25px;background:#0e1712;color:#fff}.footer-grid{display:grid;grid-template-columns:1.5fr .7fr 1fr 1fr;gap:60px}.footer .brand-mark{color:#d8c080}.footer-brand p{max-width:360px;color:rgba(255,255,255,.55);font-size:.75rem}.footer h3{margin:0 0 19px;color:rgba(255,255,255,.45);font-size:.62rem;letter-spacing:.11em;text-transform:uppercase}.footer-grid>div>a:not(.brand),.footer-grid>div>div>a{display:block;padding:5px 0;color:rgba(255,255,255,.75);font-size:.74rem}.footer .brand{max-width:100%}.footer-grid>div>p{color:rgba(255,255,255,.55);font-size:.72rem}.footer-switch{margin-top:14px;padding:0 0 6px;border:0;border-bottom:1px solid rgba(255,255,255,.3);background:none;color:#fff;cursor:pointer;font-size:.67rem;font-weight:800}.footer-switch span{margin-left:7px}.footer-bottom{margin-top:55px;padding-top:23px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px;border-top:1px solid rgba(255,255,255,.13);color:rgba(255,255,255,.45);font-size:.6rem}.footer-bottom a{margin-left:16px}.footer-bottom small{flex-basis:100%;font-size:inherit}.back-top{position:fixed;z-index:80;right:20px;bottom:20px;width:46px;height:46px;border:0;border-radius:50%;background:var(--brand);color:#fff;box-shadow:0 5px 25px rgba(0,0,0,.25);cursor:pointer;opacity:0;transform:translateY(15px);pointer-events:none;transition:.3s}.back-top.visible{opacity:1;transform:none;pointer-events:auto}
.lightbox{position:fixed;z-index:500;inset:0;display:grid;grid-template-columns:70px 1fr 70px;align-items:center;padding:40px;background:rgba(5,8,6,.95);color:#fff}.lightbox[hidden]{display:none}.lightbox figure{margin:0;display:flex;flex-direction:column;align-items:center}.lightbox img{max-width:min(1150px,100%);max-height:78vh;object-fit:contain}.lightbox figcaption{margin-top:13px;font-family:var(--display)}.lightbox button{width:50px;height:50px;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:rgba(255,255,255,.08);color:#fff;cursor:pointer;font-size:1.4rem}.lightbox-close{position:absolute;top:20px;right:20px}.lightbox-next{justify-self:end}
.reveal{opacity:1;transform:none}.reveal-ready .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s,transform .7s}.reveal-ready .reveal.visible{opacity:1;transform:none}.mode-changing .mode-transition{animation:modeSwap .42s ease}@keyframes modeSwap{0%{opacity:1;transform:none}45%{opacity:0;transform:translateY(8px)}100%{opacity:1;transform:none}}

@media(max-width:1100px){.desktop-nav{gap:16px}.desktop-nav a{font-size:.65rem}.header-cta{display:none}.hero-note{display:none}.featured-services{grid-template-columns:1fr 1fr}.service-card:first-child{grid-row:auto;grid-column:1/3;min-height:390px}.why-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:360px 260px 260px}.gallery-item:first-child{grid-row:1;grid-column:1/3}.gallery-item:nth-child(4){grid-column:1/3}.about-grid{gap:60px}.about-image img{height:570px}.contact-shell{gap:45px}.footer-grid{grid-template-columns:1.4fr 1fr 1fr}.footer-grid>div:nth-child(2){display:none}}
@media(max-width:820px){:root{--header-h:68px}.container{width:min(100% - 34px,var(--max))}.section{padding:82px 0}.announcement span{display:none}.header-shell{width:calc(100% - 28px);height:var(--header-h)}.desktop-nav,.mode-label,.mode-status{display:none}.menu-toggle{display:block;margin-left:auto}.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}.mode-bar{min-height:48px;padding:6px 14px}.mode-switch{width:min(100%,390px)}.mobile-menu{position:absolute;z-index:99;top:100%;right:0;left:0;max-height:calc(100svh - 165px);padding:22px 24px 35px;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:0 26px 45px rgba(10,20,15,.22);overflow:auto;overscroll-behavior:contain}.mobile-menu:not([hidden]){display:block}.mobile-menu nav a{display:block;padding:15px 0;border-bottom:1px solid var(--line);font-family:var(--display);font-size:1.45rem}.mobile-menu .button{width:100%;margin:25px 0 16px}.mobile-phone{display:block;text-align:center;font-family:var(--display);font-size:1.2rem}.mobile-phone small{display:block;color:var(--muted);font-family:var(--sans);font-size:.55rem}.hero{height:760px;min-height:calc(100svh - 150px)}.hero-image{background-position:62% center}.hero-auto{background-position:67% center}.hero-overlay{background:linear-gradient(180deg,rgba(10,24,16,.25),rgba(10,24,16,.82) 56%,rgba(10,24,16,.96))}html[data-mode="auto"] .hero-overlay{background:linear-gradient(180deg,rgba(10,11,12,.25),rgba(10,11,12,.82) 56%,rgba(10,11,12,.97))}.hero-content{justify-content:flex-end;padding-bottom:85px}.hero h1{font-size:clamp(2.8rem,10vw,4.8rem)}.hero-copy{font-size:.9rem;margin:20px 0}.trust-list{display:grid;grid-template-columns:1fr 1fr;margin-top:25px;gap:10px 20px}.scroll-cue{display:none}.split-heading{grid-template-columns:1fr;gap:25px}.section-heading{margin-bottom:45px}.process-list,html[data-mode="auto"] .process-list{grid-template-columns:1fr}.process-list:before{top:0;bottom:0;left:25px;right:auto;width:1px;height:auto}.process-list li{min-height:110px;padding:8px 0 30px 80px}.about-grid,.area-grid,.faq-grid,.contact-shell{grid-template-columns:1fr}.about-image img{height:500px}.image-caption{right:0}.faq-intro{position:static}.reviews-grid{grid-template-columns:1fr}.review-card blockquote{min-height:auto}.area-grid,.faq-grid,.contact-shell{gap:55px}.contact-form{padding:32px}.footer-grid{grid-template-columns:1fr 1fr;gap:40px}.footer-brand{grid-column:1/3}.footer-grid>div:nth-child(2){display:block}.footer-grid>div>a:not(.brand),.footer-grid>div>div>a{padding:9px 0}}
@media(max-width:560px){.container{width:calc(100% - 28px)}.brand strong{font-size:1rem}.brand small{font-size:.42rem}.brand-mark{width:34px;height:34px}.hero{height:720px}.hero-content{padding-bottom:48px}.hero-actions{width:100%;align-items:stretch;flex-direction:column;gap:12px}.hero-actions .text-link{align-self:flex-start}.trust-list{font-size:.6rem}.featured-services{grid-template-columns:1fr}.service-card,.service-card:first-child{grid-column:auto;min-height:300px}.service-list{grid-template-columns:1fr}.why-grid{grid-template-columns:1fr 1fr}.why-card{min-height:0;padding:20px 15px}.why-card .icon{width:26px;height:26px}.why-card h3{margin:16px 0 7px;font-size:1.02rem}.why-card p{font-size:.68rem;line-height:1.5}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(2,168px);gap:10px}.gallery-item:first-child,.gallery-item:nth-child(4){grid-column:auto;grid-row:auto}.gallery-label{left:10px;bottom:9px;padding:5px 7px;font-size:.5rem}.gallery-expand{top:9px;right:9px;width:26px;height:26px;font-size:.8rem}.comparison{height:280px}.comparison-caption{display:block}.comparison-caption span{display:block;margin-top:4px}.about-image img{height:430px}.image-caption{right:-5px}.reviews-head{align-items:flex-start;flex-direction:column;gap:25px}.rating{text-align:left}.area-grid{gap:45px}.map-card{height:390px}.area-copy ul{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field-full{grid-column:auto}.form-heading{display:block}.form-heading span,.form-heading strong,.form-heading small{display:block}.form-heading small{margin-top:5px}.contact-form{margin-inline:-5px;padding:25px 20px}.contact-preference label{display:block;padding:5px 0}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-grid>div:nth-child(2){display:block}.footer-bottom{display:block}.footer-bottom>*{display:block;margin:10px 0}.footer-bottom a{margin:0 16px 0 0}.lightbox{grid-template-columns:1fr;padding:70px 12px 78px}.lightbox button{width:40px;height:40px}.lightbox img{max-height:62svh}.lightbox-prev,.lightbox-next{position:absolute;z-index:2;bottom:20px;justify-self:auto}.lightbox-prev{left:20px}.lightbox-next{right:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal-ready .reveal{opacity:1;transform:none}}

/* Owner handoff checklist */
.checklist-page{min-height:100vh;background:var(--paper)}.checklist-header{padding:28px 0;border-bottom:1px solid var(--line);background:var(--surface)}.checklist-main{padding:80px 0 110px}.checklist-main h1{max-width:900px;font-size:clamp(3rem,7vw,6rem)}.checklist-lead{max-width:700px;margin:28px 0 55px;color:var(--muted);font-size:1.05rem}.checklist-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.checklist-card{padding:30px;border:1px solid var(--line);background:var(--surface)}.checklist-card h2{font-size:1.8rem}.checklist-card ul{margin:20px 0 0;padding:0;list-style:none}.checklist-card li{position:relative;padding:10px 0 10px 28px;border-top:1px solid var(--line);font-size:.85rem}.checklist-card li:before{content:"";position:absolute;top:15px;left:0;width:13px;height:13px;border:1px solid var(--brand)}.checklist-note{margin-top:30px;padding:24px;border-left:3px solid var(--accent);background:var(--soft);color:var(--muted)}@media(max-width:700px){.checklist-grid{grid-template-columns:1fr}.checklist-main{padding-top:55px}}
