@font-face{font-family:Montserrat;src:url('assets/montserrat-400.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Montserrat;src:url('assets/montserrat-600.woff2') format('woff2');font-weight:600 800;font-display:swap}@font-face{font-family:Roboto;src:url('assets/roboto-400.woff2') format('woff2');font-weight:400;font-display:swap}
:root{--navy:#172e46;--ink:#172a3b;--muted:#5c6670;--paper:#faf9f5;--line:#dedfdc;--accent:#ad6942;--sand:#eeebe3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Roboto,Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #b5764f;outline-offset:4px}img{max-width:100%;display:block}p{margin:0 0 20px}h1,h2,h3{font-family:Montserrat,Arial,sans-serif;line-height:1.14;margin:0;letter-spacing:-.045em;font-weight:600}h2{font-size:clamp(32px,3.2vw,46px)}h3{font-size:20px;letter-spacing:-.025em}.wrap{max-width:1240px;padding-inline:40px;margin:auto}.section{padding-block:100px}.eyebrow{font-size:10px;font-family:Montserrat,Arial,sans-serif;font-weight:600;letter-spacing:.13em;margin-bottom:25px;line-height:1.5}.serif{font-family:Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.04em}.muted{color:var(--muted)}.skip{position:absolute;top:-100px;background:var(--navy);color:white;padding:12px;z-index:100}.skip:focus{top:0}.header{position:sticky;top:0;background:rgba(250,249,245,.96);border-bottom:1px solid var(--line);z-index:20}.nav{display:flex;align-items:center;gap:32px;min-height:95px}.logo{margin-right:auto}.logo img{width:196px;height:auto}.nav nav{display:flex;gap:26px;font-size:13px}.nav nav a:hover{color:var(--accent)}.button{background:var(--navy);color:#fff;display:inline-flex;align-items:center;justify-content:space-between;gap:26px;padding:17px 23px;border:1px solid var(--navy);border-radius:4px;font-size:13px;font-weight:600;line-height:1.4;transition:background .2s,transform .2s}.button:hover{background:#284562;transform:translateY(-1px)}.button span{font-size:20px;line-height:1}.button.small{padding:13px 17px;font-size:12px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.02fr 1fr;align-items:center;gap:50px;padding-top:64px;padding-bottom:66px}.hero .eyebrow{font-size:9px;letter-spacing:.1em;display:flex;align-items:center;gap:8px;margin-bottom:28px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);flex-shrink:0}.hero h1{font-size:clamp(49px,5.5vw,76px);line-height:1.03;letter-spacing:-.055em;margin-bottom:26px}.hero h1 .serif{color:var(--accent)}.lead{color:var(--muted);font-size:17px;max-width:420px;line-height:1.65;margin-bottom:30px}.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.hero-actions .button{font-size:12px;padding:16px 20px;gap:20px}.phone-link{display:flex;align-items:center;gap:8px;font-size:13px}.phone-link svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.5}.hero-note{font-size:11px;color:var(--muted);margin:15px 0 0}.hero-visual{position:relative;height:510px}.hero-image{height:100%;width:100%;object-fit:cover;object-position:55% center;border-radius:7px}.photo-caption{position:absolute;bottom:24px;left:-24px;display:flex;align-items:center;gap:16px;background:var(--paper);box-shadow:0 8px 32px #172e4610;padding:19px 24px;border-radius:4px}.caption-icon{width:40px;height:40px;display:grid;place-items:center;background:#e7ecea;color:var(--navy);border-radius:50%;font-size:20px}.photo-caption strong{display:block;font-size:13px}.photo-caption div>span{display:block;font-size:11px;color:var(--muted);margin-top:2px}.image-note{position:absolute;right:12px;bottom:6px;color:#fff;font-size:9px;text-shadow:0 1px 4px black}.trust-strip{background:#f0eee8;border-block:1px solid var(--line)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);padding-block:26px;gap:20px}.trust-grid>div{display:grid;grid-template-columns:25px 1fr;column-gap:10px;align-items:center;border-right:1px solid #d8dad6}.trust-grid>div:last-child{border:none}.trust-grid>div>span{grid-row:span 2;color:var(--accent);font-size:11px;font-family:Montserrat}.trust-grid strong{font-size:12px;font-weight:400}.trust-grid small{font-size:10px;color:var(--muted)}.repair{display:grid;grid-template-columns:1fr 1fr;gap:45px 65px}.repair-intro{padding-top:34px;color:var(--muted);font-size:15px}.repair-intro p{margin-bottom:16px}.text-link{display:inline-flex;align-items:center;gap:25px;font-size:13px;font-weight:600;color:var(--navy);padding-bottom:4px;border-bottom:1px solid #9eacb6}.text-link:hover{color:var(--accent);border-color:var(--accent)}.service-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:35px;padding-top:20px}.service-grid article{border-top:1px solid var(--line);padding-top:30px}.service-grid svg{width:35px;height:35px;stroke:var(--accent);stroke-width:1.4;fill:none;margin-bottom:17px}.service-grid h3{font-size:17px;letter-spacing:-.02em;margin-bottom:14px}.service-grid p{font-size:14px;color:var(--muted);max-width:315px;margin:0}.footnote{grid-column:1/-1;font-size:11px;color:var(--muted);margin:0}.process-section{background:var(--navy);color:#fff}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:48px}.section-heading>p{font-size:14px;color:var(--muted);margin-bottom:4px}.process-section .eyebrow{color:#c8b8a2}.process-section .section-heading>p{color:#c5ced5}.process-section h2 .serif{color:#d4b99a}.steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding:0;margin:0}.steps li{border-top:1px solid #567084;padding-top:24px}.step-number{color:#d4b99a;font-size:38px;font-family:Georgia,serif;display:block;line-height:1;margin-bottom:38px}.steps h3{font-size:17px;letter-spacing:-.025em;margin-bottom:15px}.steps p{color:#c5ced5;font-size:14px;margin:0}.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.location{background:#eeece6;border:1px solid #deded6;border-radius:5px;padding:30px 32px}.location-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:38px}.location-type{font-size:10px;letter-spacing:.1em}.canton{border:1px solid #bec5c6;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;font-size:11px}.location-title{display:flex;align-items:center;justify-content:space-between}.location-title h3{font-size:47px;font-weight:400}.location-title>span{font-size:38px;color:var(--accent)}.location>p{color:var(--muted);font-size:14px;margin:13px 0 33px}.location-footer{border-top:1px solid #d2d5d0;padding-top:21px;display:flex;align-items:center;justify-content:space-between;gap:18px}.location-footer>span{font-size:11px;color:var(--muted)}.location-footer .text-link{font-size:12px;gap:16px}.location-hint{font-size:12px;color:var(--muted);margin:24px 0 0}.faq-section{background:#f1f0eb;border-block:1px solid var(--line)}.faq-layout{display:grid;grid-template-columns:.9fr 1.3fr;gap:70px}.faq-layout .muted{margin:28px 0 17px;font-size:14px}.faq-list{border-top:1px solid #ccd2d2}.faq-list details{border-bottom:1px solid #ccd2d2}.faq-list summary{padding:23px 0;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;font-size:14px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:24px;line-height:1;color:var(--accent);transition:transform .2s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details[open] summary{padding-bottom:14px}.faq-list details p{font-size:14px;color:var(--muted);margin:0 24px 24px 0}.contact-section{background:#e8e7df}.contact-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:90px}.contact-copy{padding-top:24px}.contact-copy h2{font-size:clamp(36px,4vw,53px)}.contact-copy>p:not(.eyebrow){font-size:15px;color:var(--muted);margin-top:26px}.contact-phone{display:flex;align-items:center;gap:24px;font-family:Montserrat;font-size:27px;letter-spacing:-.025em;margin:36px 0 0}.contact-phone span{font-size:22px}.contact-email{font-size:15px;color:var(--muted);border-bottom:1px solid #b0b8b8}.contact-promise{font-size:13px;line-height:2.7;margin-top:42px}.contact-promise>span{color:var(--accent);margin-right:9px}.request-form{background:var(--paper);padding:35px;border-radius:6px;border:1px solid #dedfd6}.request-form h3{font-size:24px}.form-intro{font-size:13px;color:var(--muted);margin-top:8px;margin-bottom:25px}.request-form label,.request-form legend{display:block;font-size:12px;color:var(--ink)}fieldset{border:0;padding:0;margin:0 0 22px}legend{padding:0;margin-bottom:9px}.radio-group{display:flex;gap:12px}.radio-group label{flex:1;position:relative;cursor:pointer}.radio-group input{position:absolute;left:16px;top:16px;margin:0;accent-color:var(--navy)}.radio-group label>span{display:flex;justify-content:space-between;border:1px solid #c9cfcd;border-radius:3px;padding:11px 14px 11px 40px}.radio-group input:checked+span{border-color:var(--navy);background:#e8edef;box-shadow:inset 0 0 0 1px var(--navy)}.radio-group small{color:var(--muted);font-size:10px;align-self:center}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px 14px;margin-bottom:17px}input:not([type=radio]),textarea{display:block;width:100%;padding:12px;font-size:13px;color:var(--ink);background:#fff;border:1px solid #cdd3d1;border-radius:3px;margin-top:7px;line-height:1.45}textarea{resize:vertical;min-height:90px}input::placeholder,textarea::placeholder{color:#727d83}.optional{font-size:10px;color:var(--muted)}.form-note{font-size:11px;line-height:1.6;color:var(--muted);margin:18px 0}.form-submit{width:100%;font-size:12px;padding:15px 18px}.privacy-note{font-size:10px;color:var(--muted);line-height:1.7;margin:13px 0 0}.inline-button{background:none;border:0;border-bottom:1px solid #a5adad;padding:0;color:var(--muted);font-size:10px}.email-result{margin-top:24px;background:#eef1ed;border:1px solid #c9d4cc;padding:16px;font-size:12px;border-radius:3px}.email-result p{margin:8px 0;font-size:12px}.email-result a{text-decoration:underline}.email-result textarea{font-size:12px}.copy-button{border:1px solid var(--navy);border-radius:3px;padding:8px 13px;color:var(--navy);background:transparent;font-size:12px;margin-top:10px}#copy-status{display:block;font-size:11px;margin-top:6px}footer{background:var(--paper)}.footer-main{display:grid;grid-template-columns:1.4fr .9fr 1fr;gap:60px;padding-block:48px}.footer-brand img{width:175px;height:auto;margin-bottom:20px}.footer-main p{font-size:12px;color:var(--muted);line-height:1.8;margin:0}.footer-main h3{font-size:12px;letter-spacing:0;margin:8px 0 20px}.footer-main>div>a{display:block;font-size:13px;color:var(--muted);margin-bottom:7px}.footer-note{font-size:9px;color:var(--muted);display:block;margin-top:7px}.footer-bottom{border-top:1px solid var(--line);padding-block:20px;font-size:10px;color:var(--muted);display:flex;justify-content:space-between;gap:20px}.footer-bottom>div{display:flex;gap:24px}.footer-bottom button{border:0;background:none;padding:0;color:inherit;font-size:inherit}.mobile-cta{display:none}dialog{border:0;border-radius:7px;padding:45px;width:min(650px,calc(100% - 32px));background:var(--paper);color:var(--ink);box-shadow:0 20px 80px #0003;max-height:85vh}dialog::backdrop{background:#102234aa}dialog h2{margin:0 0 28px;font-size:34px}dialog h3{font-size:17px;margin-bottom:12px}dialog p{font-size:14px}dialog a{text-decoration:underline}.dialog-close{position:absolute;right:16px;top:12px;border:0;background:none;color:var(--ink);font-size:28px}
@media(min-width:1440px){.hero{gap:72px}.hero-visual{height:530px}}@media(max-width:1100px){.wrap{padding-inline:28px}.nav{gap:22px}.nav nav{gap:18px;font-size:12px}.logo img{width:160px}.nav-cta{gap:13px!important}.hero{gap:35px}.hero-actions{gap:16px}.hero-visual{height:485px}.photo-caption{left:-13px;padding:16px}.photo-caption strong{font-size:12px}.contact-layout{gap:50px}.location-footer{align-items:start;flex-direction:column;gap:12px}}
@media(max-width:850px){.wrap{padding-inline:24px}.nav{min-height:79px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;padding:10px;background:none;border:0;width:42px;height:42px}.menu-toggle span{height:1px;background:var(--navy);width:22px}.nav nav{display:none;position:absolute;top:78px;left:0;right:0;padding:20px 24px;background:var(--paper);box-shadow:0 12px 20px #0001;border-bottom:1px solid var(--line)}.nav nav.open{display:flex;flex-direction:column;gap:17px}.nav-cta{font-size:10px!important;padding:11px 13px!important;gap:12px!important}.hero{gap:24px;padding-top:42px;padding-bottom:45px}.hero h1{font-size:52px}.hero .eyebrow{font-size:8px}.lead{font-size:15px}.hero-visual{height:420px}.photo-caption{bottom:22px;left:10px;right:10px;gap:10px;padding:14px 12px}.photo-caption strong{font-size:10px}.photo-caption div>span{font-size:9px}.caption-icon{width:29px;height:29px;font-size:16px;flex-shrink:0}.trust-grid{grid-template-columns:repeat(2,1fr);gap:24px}.trust-grid>div:nth-child(2){border:none}.section{padding-block:70px}.repair{gap:30px}.repair-intro{padding-top:0}.service-grid{gap:24px}.section-heading{gap:30px}.section-heading>p{max-width:240px;font-size:12px}.steps{grid-template-columns:1fr 1fr;gap:35px}.step-number{margin-bottom:23px}.faq-layout{gap:35px;grid-template-columns:.8fr 1.2fr}.faq-list summary{font-size:13px}.contact-layout{gap:30px;grid-template-columns:.9fr 1.1fr}.request-form{padding:25px}.form-grid{grid-template-columns:1fr}.contact-phone{font-size:22px}.footer-main{gap:30px}}
@media(max-width:620px){html{scroll-padding-top:90px}.wrap{padding-inline:22px}.nav{gap:9px}.logo img{width:141px}.nav-cta{display:none!important}.menu-toggle{margin-left:auto}.hero{grid-template-columns:1fr;padding-top:35px;padding-bottom:35px;gap:30px}.hero .eyebrow{font-size:8px;letter-spacing:.08em;margin-bottom:22px}.hero h1{font-size:60px;line-height:1.02;margin-bottom:22px}.lead{max-width:410px;font-size:16px;margin-bottom:25px}.hero-actions{gap:17px}.hero-actions .button{font-size:11px;padding:15px 17px;gap:15px}.phone-link{font-size:12px}.hero-note{font-size:10px}.hero-visual{height:335px;margin:0}.hero-image{object-position:center}.photo-caption{left:14px;right:auto;bottom:23px;padding:16px 18px}.photo-caption strong{font-size:11px}.photo-caption div>span{font-size:10px}.caption-icon{width:34px;height:34px}.trust-grid{padding-block:25px;gap:20px 15px}.trust-grid>div{grid-template-columns:18px 1fr;column-gap:5px;padding-right:8px}.trust-grid strong{font-size:10px}.trust-grid small{font-size:9px}.trust-grid>div>span{font-size:9px}.section{padding-block:58px}.eyebrow{font-size:9px;margin-bottom:20px}h2{font-size:34px}.repair{grid-template-columns:1fr;gap:26px}.repair-intro{font-size:14px}.repair-intro p{margin-bottom:18px}.service-grid{grid-template-columns:1fr;padding-top:0;gap:26px}.service-grid article{padding-top:24px}.service-grid svg{width:29px;height:29px;margin-bottom:12px}.service-grid h3{font-size:17px}.service-grid p{max-width:none}.footnote{font-size:10px}.section-heading{display:block;margin-bottom:32px}.section-heading>p{max-width:none;margin-top:22px;font-size:13px}.steps{gap:30px 23px}.steps h3{font-size:14px}.steps p{font-size:12px}.step-number{font-size:32px;margin-bottom:22px}.location-grid{grid-template-columns:1fr;gap:18px}.location{padding:25px}.location-top{margin-bottom:27px}.location-title h3{font-size:42px}.location-footer{flex-direction:row;align-items:center;gap:12px}.location-footer>span{font-size:10px;max-width:135px}.location-footer .text-link{font-size:11px;gap:10px}.location-hint{font-size:11px;margin-top:18px}.faq-layout{grid-template-columns:1fr;gap:35px}.faq-layout .muted{margin-top:20px}.faq-list summary{font-size:13px;padding-block:20px}.faq-list details p{font-size:13px}.contact-layout{grid-template-columns:1fr;gap:35px}.contact-copy{padding:0}.contact-copy h2{font-size:40px}.contact-copy>p:not(.eyebrow){font-size:14px;margin-top:22px}.contact-phone{font-size:26px;margin-top:25px}.contact-promise{margin-top:24px;line-height:2.3;font-size:12px}.request-form{padding:25px 22px}.request-form h3{font-size:22px}.form-grid{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr 1fr;gap:30px 18px;padding-block:38px}.footer-brand{grid-column:1/-1}.footer-main h3{margin-top:0;margin-bottom:14px}.footer-main p{font-size:11px}.footer-main>div>a{font-size:12px}.footer-bottom{display:block;padding-bottom:90px}.footer-bottom>div{margin-top:12px;gap:23px}.mobile-cta{display:grid;grid-template-columns:1fr 1.7fr;position:fixed;bottom:0;left:0;right:0;z-index:25;border-top:1px solid #c5cdcf;background:var(--paper);padding:10px 16px calc(10px + env(safe-area-inset-bottom));gap:10px}.mobile-cta a{text-align:center;font-size:12px;padding:11px 9px;border:1px solid var(--navy);border-radius:3px}.mobile-cta a:last-child{background:var(--navy);color:white}dialog{padding:35px 26px}dialog h2{font-size:28px}.privacy-note{font-size:9px}}
@media(max-width:620px){.hero h1{font-size:clamp(40px,12vw,48px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
