@import url('https://api.fontshare.com/v2/css?f[]=cabinet-grotesk@500,700,800&f[]=satoshi@400,500,700&display=swap');
:root{--font-display:'Cabinet Grotesk',sans-serif;--font-body:'Satoshi',sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:clamp(1.25rem,2vw,1.5rem);--text-xl:clamp(1.65rem,3vw,2.25rem);--text-2xl:clamp(2.25rem,4.4vw,3.75rem);--text-hero:clamp(3.15rem,6.1vw,5.4rem);--paper:#f6f5f1;--surface:#fff;--ink:#142832;--muted:#58676c;--line:#14283226;--accent:#c38850;--navy:#102733;--space:clamp(24px,5vw,80px)}
body{background:var(--paper);color:var(--ink);font:400 var(--text-base)/1.65 var(--font-body)}body.dark{--paper:#122731;--surface:#192f3a;--ink:#f5f4ee;--muted:#b7c4c9;--line:#ffffff26}a{text-decoration:none}button{border:0}h1,h2,h3{font-family:var(--font-display);font-weight:700;line-height:1.05;letter-spacing:-.035em}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}p{color:var(--muted)}.wrap{width:min(1280px,calc(100% - var(--space)*2));margin:auto}.eyebrow{font-size:var(--text-xs);font-weight:700;letter-spacing:.14em;text-transform:uppercase;display:flex;align-items:center;gap:12px}.eyebrow::before{content:"";width:23px;height:2px;background:var(--accent)}.button{display:inline-flex;justify-content:center;align-items:center;gap:30px;min-height:52px;padding:14px 24px;background:var(--accent);color:#101f27;font-size:var(--text-sm);font-weight:700;border:1px solid transparent;transition:background .2s,transform .2s}.button:hover{background:#dfa672;transform:translateY(-2px)}.button:active{transform:none}.button.outline{border-color:#ffffff65;color:white;background:transparent}.button.outline:hover{background:#ffffff12}.arrow{font-size:1.3rem;font-weight:400}.text-link{font-size:var(--text-sm);font-weight:700;display:inline-flex;align-items:center;gap:20px;padding-block:12px;border-bottom:1px solid var(--ink)}.text-link:hover{gap:26px}.topbar{background:var(--navy);color:#dbe2e5;font-size:var(--text-xs)}.topbar .wrap{display:flex;justify-content:space-between;padding-block:8px}.topbar a{color:white}.site-header{position:sticky;top:0;background:#fff;z-index:20;border-bottom:1px solid #14283219;color:#142832}.header-inner{height:88px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{flex-shrink:0}.brand img{width:238px;height:auto}.desktop-nav{display:flex;gap:28px;align-items:center;font-size:var(--text-sm);font-weight:500}.desktop-nav>a:not(.button):hover{color:#9b622f}.desktop-nav .button{padding-inline:19px;min-height:46px}.menu-button{display:none;background:none;padding:10px;font-size:var(--text-sm);color:#142832;min-height:44px}.mobile-nav{display:none}.hero{position:relative;background:var(--navy);color:white;min-height:620px;isolation:isolate;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0c202ef7 0%,#0c202edd 28%,#0c202e7a 57%,#0c202e08 100%);z-index:-1}.hero-content{padding-block:85px 80px}.hero .eyebrow{color:#e4d3bd;margin-bottom:26px}.hero h1{font-size:var(--text-hero);max-width:670px;font-weight:700}.hero h1 span{color:#d5a474}.hero p{color:#d2dbe0;max-width:475px;margin-top:26px;font-size:var(--text-base);line-height:1.8}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.hero-bottom{display:flex;align-items:center;gap:14px;font-size:var(--text-xs);color:#c9d1d7;margin-top:35px}.hero-bottom b{font-weight:400;color:#c99561}.trust-strip{background:var(--surface);border-bottom:1px solid var(--line)}.trust-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:26px}.trust-item{display:flex;gap:12px;align-items:center;font-size:var(--text-sm);font-weight:500}.trust-item span:first-child{color:#976435;font-size:20px}.section{padding-block:96px}.section-intro{display:flex;justify-content:space-between;gap:60px;align-items:flex-end;margin-bottom:42px}.section-intro .eyebrow{margin-bottom:20px}.section-intro h2{max-width:590px}.section-intro>p{max-width:350px}.service-grid{display:grid;grid-template-columns:1.16fr 1fr;gap:26px}.service-card{background:var(--surface);border:1px solid var(--line)}.service-photo{width:100%;height:268px;object-fit:cover}.service-card:first-child .service-photo{object-position:center 60%}.service-body{padding:32px 34px}.service-heading{display:flex;align-items:center;gap:15px;margin-bottom:18px}.service-number{font-size:var(--text-xs);color:#996131;border:1px solid var(--line);padding:3px 9px}.service-body p{margin-bottom:22px;max-width:460px}.service-body ul{list-style:none;padding:0;margin:0 0 14px;display:grid;grid-template-columns:1fr 1fr;gap:10px 20px;font-size:var(--text-sm)}.service-body li::before{content:"+";color:#a77344;margin-right:8px}.capabilities{display:grid;grid-template-columns:1fr 1fr;margin-top:34px;gap:0 40px}.capability{display:flex;gap:22px;align-items:flex-start;padding:24px 0;border-bottom:1px solid var(--line)}.capability>span{font-size:var(--text-xs);padding-top:4px;color:#95643b}.capability h3{font:700 var(--text-base)/1.5 var(--font-body);letter-spacing:0}.capability p{font-size:var(--text-sm);margin-top:5px}.about{background:var(--navy);color:#fff;padding-block:84px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.about .eyebrow{color:#d5a474;margin-bottom:24px}.about h2{max-width:530px}.about p{color:#bfcdd3;margin-top:24px}.about .signature{padding-top:25px;margin-top:26px;border-top:1px solid #ffffff26;color:white}.signature span{display:block;color:#bdcbd2;font-size:var(--text-sm);margin-top:2px}.approach-list{margin-top:0}.approach-row{display:grid;grid-template-columns:38px 1fr;gap:20px;padding-block:22px;border-bottom:1px solid #ffffff26}.approach-row:first-child{padding-top:0}.approach-row>span{color:#d5a474;font-size:var(--text-xs);padding-top:5px}.approach-row h3{font:700 var(--text-lg)/1.25 var(--font-body);letter-spacing:-.02em}.approach-row p{font-size:var(--text-sm);margin-top:10px}.area{padding-block:85px}.area-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.area h2{margin-top:20px}.area p{max-width:480px;margin-top:24px}.towns{display:flex;flex-direction:column}.towns>div{display:flex;justify-content:space-between;align-items:center;padding:21px 0;border-bottom:1px solid var(--line);font:700 var(--text-xl)/1 var(--font-display)}.towns span{font:400 var(--text-xs)/1.5 var(--font-body);color:var(--muted);letter-spacing:.07em;text-transform:uppercase}.area-note{font-size:var(--text-sm)}.contact{padding-block:88px;background:var(--surface);border-top:1px solid var(--line)}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}.contact h2{margin:23px 0}.contact-intro>p{max-width:370px}.contact-info{margin-top:35px}.contact-info>div{margin-top:22px}.contact-info small{display:block;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:5px}.contact-info a{display:inline-block;font-size:var(--text-lg);font-weight:500;overflow-wrap:anywhere}.contact-info a:hover{color:#9b622f}.contact-info .email{font-size:var(--text-base)}.contact-tip{margin-top:32px;padding-top:22px;border-top:1px solid var(--line);max-width:350px;font-size:var(--text-sm)}.estimate-form{padding:32px;background:var(--paper);border:1px solid var(--line)}.estimate-form h3{font-size:var(--text-xl);margin-bottom:10px}.form-note{font-size:var(--text-sm);margin-bottom:24px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}.field label{font-size:var(--text-sm);font-weight:500}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:0;background:var(--surface);color:var(--ink);padding:12px;min-height:48px;font-size:var(--text-base)}.field textarea{resize:vertical;min-height:108px}.field input::placeholder,.field textarea::placeholder{color:var(--muted);opacity:.8}.field-grid .field{margin-bottom:0}.field-grid{margin-bottom:18px}.estimate-form .button{width:100%}.privacy-note{font-size:var(--text-xs);margin-top:12px}.email-review{margin-top:24px;padding-top:22px;border-top:1px solid var(--line)}.email-review h3{font-size:var(--text-lg)}.email-review pre{font:400 var(--text-sm)/1.65 var(--font-body);white-space:pre-wrap;overflow-wrap:anywhere;color:var(--muted)}.email-review .button{margin-top:12px}.copy-button{margin-top:10px;min-height:44px;background:transparent;color:var(--ink);text-decoration:underline;width:100%;font-size:var(--text-sm)}.status{font-size:var(--text-sm);margin-top:10px}.faq{padding-block:70px 85px}.faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px}.faq h2{font-size:var(--text-xl);margin-top:20px}.faq details{padding:21px 0;border-bottom:1px solid var(--line)}.faq details:first-child{padding-top:0}.faq summary{cursor:pointer;list-style:none;font-weight:700;display:flex;gap:20px;justify-content:space-between;min-height:28px}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";color:#a77344;font-size:22px;line-height:1}.faq details[open] summary::after{content:"−"}.faq details p{padding-top:16px;font-size:var(--text-sm)}footer{background:#0c1e28;color:white;padding-block:44px 24px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:32px;padding-bottom:28px}.footer-logo{width:228px;filter:invert(1);mix-blend-mode:screen}.footer-top>p{font-size:var(--text-sm);color:#c4cfd5}.footer-bottom{border-top:1px solid #ffffff20;padding-top:22px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:var(--text-xs);color:#aabcc6}.footer-meta{display:flex;align-items:center;gap:22px}.theme-toggle{color:#cbd5db;background:transparent;padding:10px 4px;min-height:44px;font-size:var(--text-xs)}.mobile-call{display:none}.image-note{font-size:var(--text-xs);margin-top:17px;text-align:right;color:var(--muted)}
@media(min-width:1600px){.hero{min-height:680px}.hero-content{padding-block:106px}.hero-image{object-position:center 57%}}
@media(max-width:1050px){.desktop-nav{gap:18px}.brand img{width:205px}.desktop-nav .button{display:none}.about-grid,.area-grid{gap:50px}.contact-grid{gap:45px}.service-body{padding:25px}.service-body ul{grid-template-columns:1fr}.hero h1{max-width:600px}}
@media(max-width:760px){:root{--space:24px}.topbar .wrap{justify-content:center}.topbar .top-phone{display:none}.header-inner{height:76px}.brand img{width:196px}.desktop-nav{display:none}.menu-button{display:block}.mobile-nav:not([hidden]){display:flex;flex-direction:column;padding:8px 24px 24px;gap:0;border-top:1px solid #14283218}.mobile-nav a{padding:13px 0}.mobile-nav .button{margin-top:10px;padding:12px}.hero{min-height:auto}.hero-content{padding-block:60px 52px}.hero::after{background:linear-gradient(90deg,#0c202eea,#0c202e92)}.hero-image{object-position:64% center}.hero h1{font-size:clamp(3.1rem,10.8vw,4.5rem);max-width:570px}.hero .eyebrow{font-size:11px;letter-spacing:.09em}.hero p{max-width:390px}.hero-actions{gap:12px}.hero-actions .button{padding:13px 18px;gap:18px}.hero-bottom{gap:8px;flex-wrap:wrap}.trust-inner{display:grid;grid-template-columns:1fr 1fr;gap:18px 8px;padding-block:23px}.trust-item{gap:9px;font-size:12px}.trust-item span:first-child{font-size:16px}.section{padding-block:62px}.section-intro{display:block;margin-bottom:30px}.section-intro>p{margin-top:24px;max-width:500px}.service-grid{grid-template-columns:1fr;gap:24px}.service-photo{height:225px}.service-body{padding:26px 24px}.service-body ul{grid-template-columns:1fr}.capabilities{grid-template-columns:1fr;margin-top:20px}.about{padding-block:58px}.about-grid,.area-grid,.contact-grid,.faq-grid{grid-template-columns:1fr;gap:38px}.about h2{max-width:400px}.about-grid{gap:43px}.approach-row{padding-block:20px}.area{padding-block:60px}.area p{margin-top:20px}.area-grid{gap:22px}.contact{padding-block:58px}.contact-grid{gap:36px}.contact-tip{max-width:100%}.estimate-form{padding:24px 20px}.field-grid{grid-template-columns:1fr;gap:18px}.faq{padding-block:54px}.faq-grid{gap:30px}.footer-top{align-items:flex-start;flex-direction:column;gap:24px}.footer-top>p{max-width:310px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:10px}.footer-meta{flex-wrap:wrap;gap:15px}footer{padding-bottom:90px}.mobile-call{position:fixed;bottom:0;left:0;right:0;z-index:19;display:grid;grid-template-columns:1fr 1fr;background:#fff;box-shadow:0 -2px 16px #00000012;padding-bottom:env(safe-area-inset-bottom)}.mobile-call a{padding:15px 10px;text-align:center;font-size:var(--text-sm);font-weight:700;background:#102733;color:white}.mobile-call a:last-child{background:var(--accent);color:#102733}.image-note{text-align:left;font-size:12px}}
