:root{--ink:#183e3c;--blue:#137c80;--yellow:#efbd5d;--paper:#f6f3ec;--line:#d5dbd4}body{color:var(--ink);background:var(--paper)}.topbar{background:#183e3c;font-size:10px;letter-spacing:.3px;padding:12px 5%}.topbar a{color:#f4d39a}header{height:104px;background:var(--paper)}.brand img{width:64px;height:64px;filter:brightness(1.9);border:1px solid #d5dbd4}.brand{font-size:13px;letter-spacing:.3px}nav{gap:26px}.menu-toggle{display:none}.button{background:var(--ink);border-radius:4px;box-shadow:none!important;gap:0;justify-content:center;padding:17px 25px}.button:hover{background:#137c80;transform:translateY(-2px);box-shadow:none}.button span:empty{display:none}.hero{background:var(--paper);min-height:650px;grid-template-columns:1fr 1fr;padding:24px 4% 42px;gap:3%;overflow:visible}.hero-copy{padding:40px 3% 25px 2%;display:flex;flex-direction:column;justify-content:center}h1{font-size:clamp(48px,5.1vw,78px);line-height:1.06;letter-spacing:-3.8px;margin:25px 0}h1 em{color:var(--blue);white-space:normal}.hero-copy>p{max-width:440px;color:#51645e;font-size:16px;line-height:1.8}.hero .button{border-radius:4px}.hero-note{font-size:11px;color:#51645e;line-height:1.6;margin-top:24px}.move-switcher{margin-top:28px;border-color:#d5dbd4}.move-switcher>span{font-size:9px;letter-spacing:1px}.move-switcher button{font-size:12px;border-color:#c0cbc2;padding:9px 14px}.move-switcher button.active{background:var(--ink);color:white}.move-switcher p{font-size:12px;color:#51645e}.hero-art.brand-scene{min-height:610px;border-radius:180px 180px 12px 12px;background:#dbe8e2;isolation:isolate;overflow:hidden;position:relative}.scene-label{position:absolute;top:60px;left:0;width:100%;text-align:center;z-index:4;font-size:9px;letter-spacing:2px;color:#36605b}.scene-orbit{position:absolute;left:50%;top:43%;width:420px;height:420px;border:1px solid #fff9;border-radius:50%;transform:translate(-50%,-50%)}.scene-orbit:before{content:'';position:absolute;inset:32px;border:1px solid #fff9;border-radius:50%}.brand-badge{position:absolute;left:50%;top:43%;width:300px;height:300px;transform:translate(-50%,-50%);z-index:3;border-radius:50%;box-shadow:0 25px 55px #183e3c30;animation:badge-float 5s ease-in-out infinite;background:#183e3c;overflow:hidden;border:5px solid #f6f3ec}.brand-badge img{display:block;width:100%;height:100%;object-fit:cover;filter:brightness(2)}.skyline{display:flex;align-items:flex-end;gap:10px;position:absolute;bottom:120px;left:0;right:0;height:200px;opacity:.45;z-index:0}.skyline i{display:block;flex:1;background:#9bbfb3;height:100px;border-radius:2px 2px 0 0}.skyline i:nth-child(2){height:160px}.skyline i:nth-child(3){height:130px}.skyline i:nth-child(4){height:200px;clip-path:polygon(40% 0,60% 0,60% 18%,80% 18%,80% 30%,100% 30%,100% 100%,0 100%,0 30%,20% 30%,20% 18%,40% 18%)}.skyline i:nth-child(5){height:90px}.skyline i:nth-child(6){height:145px}.moving-road{position:absolute;bottom:64px;left:-10%;width:120%;height:115px;background:#244d49;border-top:7px solid #c5cdb8;border-bottom:7px solid #c5cdb8;transform:rotate(-10deg);z-index:2}.moving-road>div{position:absolute;top:49%;width:200%;height:3px;background:repeating-linear-gradient(90deg,#f6e4b7 0 50px,transparent 50px 95px);animation:drive-road 2.5s linear infinite}.scene-footer{position:absolute;bottom:22px;left:25px;right:25px;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:4}.scene-footer span{font-size:8px;letter-spacing:1.2px}.motion-toggle{border:0;background:transparent;padding:8px 0;font-size:10px;color:var(--ink);cursor:pointer;text-decoration:underline;text-underline-offset:4px}.paused *{animation-play-state:paused!important}@keyframes drive-road{to{transform:translateX(-95px)}}@keyframes badge-float{0%,100%{transform:translate(-50%,-50%) rotate(-1deg)}50%{transform:translate(-50%,-53%) rotate(1deg)}}
.service-strip{transform:none;background:#183e3c;color:#f6f3ec;display:flex;justify-content:space-between;padding:23px 6%;margin:0;font-size:11px;font-weight:500;letter-spacing:.4px;gap:25px;white-space:normal}.crew-intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:7%;align-items:center}.crew-intro p{margin:24px 0;line-height:1.8;color:#51645e;max-width:400px;font-size:15px}.crew-intro>img{width:100%;height:420px;object-fit:cover;border-radius:8px;object-position:center}.section{padding:75px 6%}.eyebrow{font-size:10px;letter-spacing:1.4px;color:#59716b}h2,.section-heading h2{font-size:clamp(34px,3.5vw,51px);line-height:1.13;letter-spacing:-2px}.services{padding-top:20px}.section-heading{gap:35px}.section-heading>p{color:#51645e}.cards{gap:16px}.service-card,.service-card:nth-child(n){background:#eeeae0;border:1px solid #d5dbd4!important;padding:28px 24px;border-radius:6px}.service-card h3{font-size:23px;margin:28px 0 14px}.service-card p{min-height:80px;color:#51645e;line-height:1.7;font-size:14px}.card-no{font-size:11px;color:#6b7d75}.card-link{display:block;margin-top:20px;font-size:12px;text-decoration:underline;text-underline-offset:5px}.service-card:hover,.service-card.reveal.is-visible:hover{box-shadow:0 10px 25px #183e3c0c;transform:translateY(-4px);background:#e7e9de}.service-group{border:1px solid #c4cec4;background:#faf8f3;border-radius:5px}.service-group>summary{font-size:18px}.service-group summary{padding:10px 0}.service-group>summary>span{font-size:13px}.service-detail summary span{font-size:20px}.service-detail p{padding-bottom:16px}.service-detail .text-link{display:inline-block;margin-bottom:8px}.service-directory{background:#e8ede6}.story{padding-top:90px;padding-bottom:90px}.photo-story{transform:none;border:0;box-shadow:none;border-radius:6px;min-height:500px}.story-photo-caption{background:#183e3c!important;color:#fff!important}.story-copy p{color:#51645e;line-height:1.8}.gallery-photo span{font-size:15px;font-weight:500}.photo-grid{gap:20px}.process{background:#183e3c}.process .eyebrow{color:#d4b779}.steps span{background:#e2bd76}.steps p{color:#d0dcd6}.estimate{background:#dbe8e2;color:var(--ink)}.estimate:before{display:none}.estimate h2{font-size:58px;letter-spacing:-2.5px}.estimate p,.estimate .fine{color:#51645e}.estimate-phone{color:var(--ink)}.estimate form{box-shadow:none;border:1px solid #c4cec4;border-radius:6px}.estimate form .button{background:#183e3c;color:white}.press-section{background:#eeeae0}.press-list>a{border:0;border-bottom:1px solid #c4cec4;background:transparent;border-radius:0;padding:25px 10px}.press-list>a:hover{background:#e4e6dc}.press-list strong{font-size:19px;padding:0}.review-section{background:#183e3c}.review-section .eyebrow{color:#bdd1c6}.review-link{border-radius:4px;border-color:#78948a;padding:22px}.review-link strong{font-size:20px}.review-link:hover{background:#28534e}.review-section .button{background:#e7c68b;color:#183e3c}.review-links>p{color:#c1d0c7}.article-card{border:1px solid #c4cec4;border-radius:5px;background:#faf8f3;padding:27px}.article-card.feature{background:#e8ede6}.article-card h3{font-size:25px}.article-card .eyebrow{line-height:1.6}.last-call{background:#e7c68b;padding:48px 6%}.last-call a{font-size:clamp(30px,4vw,52px);max-width:100%}.last-call>span{letter-spacing:1px}.floating-quote{background:#183e3c;color:white;border:0;border-radius:5px;box-shadow:0 5px 25px #183e3c33;font-weight:600}.floating-quote span{color:#c6d5ce}.reveal{transition-duration:.5s}.photo-close{background:#e7c68b}.gallery-photo b,.review-link b,.press-list b,.card-no>span:empty{display:none}footer{align-items:flex-start;border-top:1px solid #d5dbd4}.button.small{font-size:12px}.estimate form label{font-size:12px}input,select,textarea{font-size:14px;background:#fffdf8}.form-heading span{letter-spacing:.5px}.menu-toggle:focus-visible{outline:2px solid #137c80}
@media(max-width:1000px){nav{gap:16px}.hero{gap:2%;min-height:auto}.hero-copy{padding-left:0}.hero-art.brand-scene{min-height:580px}h1{font-size:52px}.brand-badge{width:270px;height:270px}.scene-orbit{width:350px;height:350px}.crew-intro>img{height:380px}.cards{grid-template-columns:1fr 1fr}.service-card p{min-height:50px}.hero-note{font-size:10px}.hero-copy>p{font-size:14px}}
@media(max-width:700px){.topbar{padding:10px 5%;font-size:9px;line-height:1.5}.topbar span{max-width:60%}.topbar a{font-size:9px;align-self:center}header{height:88px;padding:12px 5%;gap:12px;position:relative}.brand img{width:50px;height:50px}.brand{font-size:10px;gap:8px}.brand span span{font-size:7px}.button.small{padding:12px;font-size:10px}.menu-toggle{display:block;border:0;background:transparent;padding:10px 0;font-size:12px;color:var(--ink);margin-left:auto}nav{display:none;position:absolute;left:0;right:0;top:88px;background:var(--paper);padding:20px 6%;border-bottom:1px solid #c4cec4;box-shadow:0 10px 15px #183e3c0a}nav.nav-open{display:flex;flex-wrap:wrap;gap:24px;z-index:20}nav a{font-size:14px}.hero{grid-template-columns:1fr;padding:0 5% 28px;gap:20px}.hero-copy{padding:35px 1% 5px}h1{font-size:clamp(43px,11vw,68px);letter-spacing:-2.6px;margin:22px 0}.hero-copy>p{font-size:15px}.hero .actions{gap:22px}.hero-note{font-size:11px}.move-switcher{margin-top:24px}.hero-art.brand-scene{min-height:440px;border-radius:130px 130px 8px 8px}.brand-badge{width:250px;height:250px;top:43%}.scene-orbit{top:43%;width:320px;height:320px}.scene-label{top:35px;font-size:8px}.scene-footer{bottom:15px;left:20px;right:20px}.scene-footer span{font-size:7px}.moving-road{bottom:52px;height:85px}.skyline{bottom:100px;height:150px}.skyline i:nth-child(4){height:155px}.service-strip{display:grid;grid-template-columns:1fr 1fr;padding:22px 6%;gap:17px;font-size:10px}.section{padding:48px 6%}.crew-intro{grid-template-columns:1fr;gap:28px}.crew-intro p{font-size:14px}.crew-intro>img{height:auto;aspect-ratio:1.2;object-position:38% center}.services{padding-top:15px}.cards{gap:12px}.service-card,.service-card:nth-child(n){padding:20px 16px}.service-card h3{font-size:19px;margin:25px 0 12px}.service-card p{font-size:12px;min-height:100px}.card-link{font-size:11px}.section-heading h2,h2{font-size:36px}.estimate h2{font-size:45px}.photo-story{min-height:420px}.review-link strong{font-size:18px}.press-list strong{font-size:18px}.field-grid{gap:17px 12px}input,select,textarea{font-size:16px}.estimate form label{font-size:11px}.last-call a{font-size:35px}footer{padding-bottom:90px}.floating-quote{right:15px;bottom:15px}.motion-toggle{font-size:10px}}
@media(prefers-reduced-motion:reduce){.brand-scene *{animation:none!important}.reveal{opacity:1;transform:none}}

summary span{font-size:11px!important;letter-spacing:0}details[open] summary span{transform:none}.photo-close{width:auto;height:auto;padding:10px 14px;border-radius:4px;font-size:12px}.close{font-size:12px;top:14px;right:14px;padding:8px}.article-card summary span{font-size:11px}.hero-art.brand-scene{box-shadow:inset 0 0 0 1px #183e3c0a}
