
*{margin:0;padding:0;box-sizing:border-box}
:root{--cream:#fffefb;--ink:#201515;--char:#36342e;--muted:#939084;--sand:#c5c0b1;--light:#eceae3;--orange:#ff4f00;--orange-d:#e04400}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;background:#fffefb;color:#36342e;font-size:16px;line-height:1.25;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:#201515;text-decoration:none}
a:hover{text-decoration:underline}
:focus-visible{outline:2px solid #ff4f00;outline-offset:2px}
h1,h2,h3{color:#201515;line-height:1.08;font-weight:500}
.container{max-width:1200px;margin:0 auto;padding:0 24px}
.skip{position:absolute;left:-9999px;top:0;background:#201515;color:#fffefb;padding:10px 16px;border-radius:4px;z-index:100}
.skip:focus{left:8px;top:8px}
.label{display:block;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:#939084;margin-bottom:12px}
.section{padding:72px 0;border-bottom:1px solid #c5c0b1}
.section-head{max-width:680px;margin-bottom:40px}
.section-head h2{font-size:clamp(30px,4vw,48px);line-height:1.04;letter-spacing:-.5px;margin-bottom:14px}
.section-head p{font-size:17px;line-height:1.45}
.serif{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400;letter-spacing:-.02em}
.btn{display:inline-block;font-family:inherit;font-size:16px;font-weight:600;line-height:1;padding:12px 20px;border-radius:4px;border:1px solid transparent;cursor:pointer;text-align:center;transition:background .15s,color .15s,border-color .15s}
.btn:hover{text-decoration:none}
.btn-orange{background:#ff4f00;border-color:#ff4f00;color:#fffefb}
.btn-orange:hover{background:#e04400;border-color:#e04400}
.btn-lg{padding:16px 24px}
.btn-dark{background:#201515;border-color:#201515;color:#fffefb;border-radius:8px;padding:16px 24px}
.btn-dark:hover{background:#c5c0b1;border-color:#c5c0b1;color:#201515}
.btn-light{background:#eceae3;border-color:#c5c0b1;color:#36342e;border-radius:8px;padding:16px 24px}
.btn-light:hover{background:#c5c0b1;color:#201515}
.topbar{background:#151a20;color:#f7f5f1;font-size:13px}
.topbar .container{display:flex;justify-content:space-between;align-items:center;gap:8px 24px;flex-wrap:wrap;padding-top:8px;padding-bottom:8px}
.topbar span,.topbar a{color:#f7f5f1}
.topbar a{font-weight:500}
.site-header{background:#fffefb;border-bottom:1px solid #c5c0b1;position:sticky;top:0;z-index:60}
.nav{display:flex;align-items:center;gap:12px;min-height:64px;position:relative}
.logo{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:600;letter-spacing:-.2px;color:#201515}
.logo:hover{text-decoration:none}
.logo-mark{width:28px;height:28px;flex:none;border-radius:6px;background:#ff4f00;color:#fffefb;display:grid;place-items:center;font-size:15px;font-weight:700}
#nav-toggle{position:absolute;opacity:0;pointer-events:none}
.nav-links{display:flex;align-items:center;gap:2px;list-style:none;margin-left:auto}
.nav-links a{display:block;padding:22px 12px;font-weight:500;color:#201515}
.nav-links a:hover{box-shadow:rgb(197,192,177) 0 -4px 0 0 inset;text-decoration:none}
.nav-links a[aria-current="page"]{box-shadow:rgb(255,79,0) 0 -4px 0 0 inset}
.burger{display:none;width:40px;height:40px;border:1px solid #c5c0b1;border-radius:5px;background:#eceae3;color:#201515;place-items:center;cursor:pointer}
.hero{border-bottom:1px solid #c5c0b1}
.hero .container{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;padding-top:80px;padding-bottom:80px}
.hero h1{font-size:clamp(42px,5.6vw,72px);line-height:.92;letter-spacing:-.02em;font-weight:600;margin-bottom:24px}
.hero .lede{font-size:20px;line-height:1.25;color:#36342e;max-width:32em;margin-bottom:32px}
.hero-ctas{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.hero-meta{display:flex;gap:8px 20px;flex-wrap:wrap;font-size:14px;font-weight:500;color:#939084}
.hero-card{border:1px solid #c5c0b1;border-radius:8px;padding:16px;background:#fffefb}
.hero-card h3{font-size:22px;font-weight:600;letter-spacing:-.4px;margin:0 0 6px}
.hero-card p{font-size:15px;line-height:1.45}
.hero-card .row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid #eceae3}
.hero-card .price{font-weight:600;color:#201515;font-size:15px}
.hero-card .more,.card .more{font-weight:600;font-size:14px;color:#201515}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.card{border:1px solid #c5c0b1;border-radius:5px;padding:24px;background:#fffefb;transition:border-color .15s}
.card:hover{border-color:#a39e8d}
.icon{width:40px;height:40px;border-radius:10px;background:#eceae3;border:1px solid #c5c0b1;display:grid;place-items:center;color:#201515;margin-bottom:16px}
.card h3{font-size:20px;font-weight:600;letter-spacing:-.4px;margin-bottom:8px}
.card p{font-size:15px;line-height:1.5;margin-bottom:14px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.media{border:1px solid #c5c0b1;border-radius:8px;padding:16px;background:#fffefb}
.copy h2{font-size:clamp(28px,3.6vw,40px);line-height:1.04;letter-spacing:-.5px;margin-bottom:12px}
.copy>p{font-size:17px;line-height:1.45}
.benefits{list-style:none;display:grid;gap:20px;margin:28px 0}
.benefits li{display:flex;gap:14px}
.benefit-icon{flex:none;width:36px;height:36px;border-radius:50%;background:#eceae3;border:1px solid #c5c0b1;display:grid;place-items:center;color:#201515}
.benefits h3{font-size:17px;font-weight:600;letter-spacing:-.2px;margin-bottom:4px}
.benefits p{font-size:15px;line-height:1.45}
.minis{list-style:none;display:grid;gap:12px;margin-top:24px}
.minis li{position:relative;padding-left:30px;font-size:15px}
.minis li::before{content:"✓";position:absolute;left:0;top:0;width:20px;height:20px;border:1px solid #c5c0b1;background:#eceae3;color:#201515;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:700;line-height:1}
.areas{background:#eceae3}
.areas-top{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:28px}
.areas h2{font-size:clamp(26px,3.4vw,40px);line-height:1.05;letter-spacing:-.5px;max-width:20em}
.pills{display:flex;flex-wrap:wrap;gap:12px}
.pill{display:inline-flex;align-items:center;padding:0 16px;height:40px;border:1px solid #c5c0b1;border-radius:20px;background:#fffefb;color:#36342e;font-weight:500;font-size:14px}
.pill:hover{background:#c5c0b1;color:#201515;text-decoration:none}
.quote-card{border:1px solid #c5c0b1;border-radius:8px;padding:24px;background:#fffefb}
.stars{color:#201515;letter-spacing:3px;font-size:14px;margin-bottom:12px}
.quote-card blockquote p{font-size:15px;line-height:1.5;margin-bottom:16px}
.quote-card cite{font-style:normal;font-size:13px;font-weight:500;color:#939084}
.cta-box{border:1px solid #201515;border-radius:8px;padding:56px 32px;text-align:center;background:#fffefb}
.cta-box h2{font-size:clamp(30px,4vw,44px);line-height:.98;letter-spacing:-.02em;font-weight:600;max-width:17em;margin:0 auto 16px}
.cta-box p{max-width:38em;margin:0 auto 28px;font-size:17px;line-height:1.4}
.cta-box .row{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
footer.site{background:#151a20;color:#f7f5f1}
.f-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;gap:40px;padding:56px 0 40px}
.f-brand .logo{color:#f7f5f1}
.f-brand p{margin:16px 0 20px;font-size:14px;line-height:1.55;color:#c5c0b1;max-width:32em}
footer.site h4{font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:#f7f5f1;margin-bottom:16px}
footer.site ul{list-style:none;display:grid;gap:10px}
footer.site ul a{color:#c5c0b1;font-size:14px}
footer.site ul a:hover{color:#fffefb}
.f-contact p{font-size:14px;line-height:1.7;color:#c5c0b1}
.f-contact a{color:#c5c0b1}
.f-contact a:hover{color:#fffefb}
.socials{display:flex;gap:10px}
.socials a{width:32px;height:32px;border:1px solid #c5c0b1;border-radius:14px;display:grid;place-items:center;color:#f7f5f1}
.socials a:hover{background:rgba(247,245,241,.12);text-decoration:none}
.f-bottom{border-top:1px solid rgba(247,245,241,.16);padding:20px 0;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px;color:#c5c0b1}
.f-bottom a{color:#c5c0b1}
.f-bottom a:hover{color:#fffefb}
@media(max-width:991px){
.burger{display:grid}
.nav-cta{margin-left:auto}
.nav-links{display:none;position:absolute;top:100%;left:-24px;right:-24px;background:#fffefb;border:1px solid #c5c0b1;border-top:0;flex-direction:column;align-items:stretch;gap:0;padding:8px 24px 16px;margin-left:0}
.nav-links a{padding:14px 0}
#nav-toggle:checked ~ .nav-links{display:flex}
.hero .container{grid-template-columns:1fr;gap:40px;padding-top:56px;padding-bottom:56px}
.split{grid-template-columns:1fr;gap:40px}
.cards{grid-template-columns:repeat(2,1fr)}
.f-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
.section{padding:48px 0}
.hero h1{font-size:40px}
.cards{grid-template-columns:1fr}
.f-grid{grid-template-columns:1fr;gap:32px}
.nav-cta{display:none}
.burger{margin-left:auto}
.topbar .container{justify-content:center;text-align:center}
.cta-box{padding:40px 20px}
}

.btn-primary{background:#ff4f00;border-color:#ff4f00;color:#fffefb}
.btn-primary:hover{background:#e04400;border-color:#e04400}
.btn-secondary{background:#eceae3;border-color:#c5c0b1;color:#36342e;border-radius:8px;padding:16px 24px}
.btn-secondary:hover{background:#c5c0b1;color:#201515}
.btn-outline{background:transparent;border-color:#201515;color:#201515;border-radius:8px;padding:16px 24px}
.btn-outline:hover{background:#201515;color:#fffefb}
.topbar-inner{display:flex;justify-content:space-between;align-items:center;gap:8px 24px;flex-wrap:wrap;padding-top:8px;padding-bottom:8px}
.header-inner{display:flex;align-items:center;gap:12px;min-height:64px;position:relative}
.site-nav{display:flex;align-items:center;gap:2px;list-style:none;margin-left:auto}
.site-nav a{display:block;padding:22px 12px;font-weight:500;color:#201515}
.site-nav a:hover{box-shadow:rgb(197,192,177) 0 -4px 0 0 inset;text-decoration:none}
.site-nav a[aria-current="page"]{box-shadow:rgb(255,79,0) 0 -4px 0 0 inset}
.main-nav{display:flex;align-items:center;gap:2px;list-style:none;margin-left:auto}
.main-nav a{display:block;padding:22px 12px;font-weight:500;color:#201515}
.main-nav a:hover{box-shadow:rgb(197,192,177) 0 -4px 0 0 inset;text-decoration:none}
.mainnav{display:flex;align-items:center;gap:2px;list-style:none;margin-left:auto}
.mainnav a{display:block;padding:22px 12px;font-weight:500;color:#201515}
.mainnav a:hover{box-shadow:rgb(197,192,177) 0 -4px 0 0 inset;text-decoration:none}
.brand{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:600;letter-spacing:-.2px;color:#201515}
.brand:hover{text-decoration:none}
.page-hero{border-bottom:1px solid #c5c0b1;padding:64px 0 56px}
.page-hero h1{font-size:clamp(36px,5vw,60px);line-height:1;letter-spacing:-.02em;font-weight:600;margin-bottom:16px}
.page-hero .lead{font-size:19px;line-height:1.4;color:#36342e;max-width:38em}
.lead{font-size:19px;line-height:1.4;color:#36342e}
.section-alt{background:#eceae3;border-bottom:1px solid #c5c0b1}
.intro{max-width:680px;margin-bottom:40px}
.intro h2{font-size:clamp(30px,4vw,48px);line-height:1.04;letter-spacing:-.5px;margin-bottom:14px}
.intro p{font-size:17px;line-height:1.45}
.content{max-width:760px}
.content h2{font-size:clamp(26px,3.4vw,38px);letter-spacing:-.4px;margin-bottom:12px}
.content h3{font-size:22px;font-weight:600;letter-spacing:-.3px;margin:28px 0 10px}
.content p{font-size:16px;line-height:1.55;margin-bottom:16px}
.content-section{padding:72px 0;border-bottom:1px solid #c5c0b1}
.content-section .lead{font-size:18px;max-width:42em}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.service-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.service-cards .card{padding:24px}
.checklist{list-style:none;margin:0 0 24px}
.checklist li{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.5;padding:8px 0;border-bottom:1px solid #eceae3}
.checklist li::before{content:"✓";flex:none;width:20px;height:20px;border-radius:50%;background:#ff4f00;color:#fffefb;display:grid;place-items:center;font-size:12px;font-weight:700;margin-top:2px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;list-style:none;counter-reset:step}
.steps li{border:1px solid #c5c0b1;border-radius:5px;padding:24px;background:#fffefb}
.steps li::before{counter-increment:step;content:counter(step,decimal-leading-zero);display:block;font-size:13px;font-weight:600;color:#ff4f00;margin-bottom:12px;letter-spacing:.5px}
.steps h3{font-size:20px;font-weight:600;letter-spacing:-.4px;margin-bottom:8px}
.steps p{font-size:15px;line-height:1.5}
.process{padding:72px 0;border-bottom:1px solid #c5c0b1}
.process h2{font-size:clamp(30px,4vw,48px);letter-spacing:-.5px;margin-bottom:14px}
.process .lead{font-size:17px;line-height:1.45;max-width:680px;margin-bottom:40px}
.comparison-table{width:100%;border-collapse:collapse;font-size:15px}
.comparison-table th,.comparison-table td{text-align:left;padding:14px 16px;border-bottom:1px solid #eceae3}
.comparison-table thead th{font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:#939084;border-bottom:1px solid #c5c0b1}
.comparison-table tbody tr:nth-child(even){background:#eceae3}
.table-wrap{overflow-x:auto;border:1px solid #c5c0b1;border-radius:5px;background:#fffefb}
.table-wrap table{width:100%;border-collapse:collapse;font-size:15px}
.table-wrap th,.table-wrap td{text-align:left;padding:14px 16px;border-bottom:1px solid #eceae3}
.table-wrap thead th{font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:#939084;border-bottom:1px solid #c5c0b1}
.table-wrap tbody tr:last-child td{border-bottom:0}
.pricing-note{font-size:14px;color:#939084;margin-top:16px;line-height:1.5}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.form-row label{display:block;font-size:13px;font-weight:600;color:#201515;margin-bottom:6px}
.form-row input,.form-row select,.form-row textarea{width:100%;font-family:inherit;font-size:15px;padding:10px 12px;border:1px solid #c5c0b1;border-radius:4px;background:#fffefb;color:#36342e}
.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:2px solid #ff4f00;outline-offset:1px;border-color:#ff4f00}
.form-note{font-size:13px;color:#939084;margin-top:12px;line-height:1.5}
.quote-form-section{padding:72px 0;border-bottom:1px solid #c5c0b1}
.quote-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.quote-form label{display:block;font-size:13px;font-weight:600;color:#201515;margin-bottom:6px}
.quote-form input,.quote-form select,.quote-form textarea{width:100%;font-family:inherit;font-size:15px;padding:10px 12px;border:1px solid #c5c0b1;border-radius:4px;background:#fffefb;color:#36342e}
.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{outline:2px solid #ff4f00;outline-offset:1px;border-color:#ff4f00}
.quote-form .full{grid-column:1/-1}
.quote-intro{max-width:680px;margin-bottom:40px}
.quote-intro h2{font-size:clamp(30px,4vw,48px);letter-spacing:-.5px;margin-bottom:14px}
.quote-intro p{font-size:17px;line-height:1.45}
.quote-side{border:1px solid #c5c0b1;border-radius:5px;padding:24px;background:#fffefb}
.quote-side h3{font-size:20px;font-weight:600;letter-spacing:-.4px;margin-bottom:10px}
.quote-side p{font-size:15px;line-height:1.5;margin-bottom:14px}
.quote-after{font-size:14px;color:#939084;margin-top:16px;line-height:1.5}
.quote-cta{display:flex;gap:16px;flex-wrap:wrap;margin-top:24px}
.cta{padding:72px 0;border-bottom:1px solid #c5c0b1;background:#eceae3}
.cta-banner{background:#201515;color:#fffefb;border-radius:8px;padding:48px 40px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px}
.cta-banner h2{color:#fffefb;font-size:clamp(26px,3.4vw,40px);letter-spacing:-.4px;margin-bottom:8px}
.cta-banner p{color:#c5c0b1;font-size:17px;line-height:1.45;max-width:34em}
.cta-banner .btn{flex:none}
.cta-banner .btn-orange{background:#ff4f00;border-color:#ff4f00}
.cta-banner .btn-orange:hover{background:#e04400;border-color:#e04400}
.cta-banner .btn-light{background:#fffefb;border-color:#fffefb;color:#201515}
.cta-banner .btn-light:hover{background:#c5c0b1;border-color:#c5c0b1}
.testimonial{border:1px solid #c5c0b1;border-radius:5px;padding:24px;background:#fffefb}
.testimonial blockquote{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:18px;line-height:1.5;color:#201515;margin-bottom:14px}
.testimonial figcaption{font-size:14px;font-weight:500;color:#939084}
.testimonial figcaption strong{color:#201515;font-weight:600}
.map-section{padding:72px 0;border-bottom:1px solid #c5c0b1}
.map-section h2{font-size:clamp(26px,3.4vw,38px);letter-spacing:-.4px;margin-bottom:14px}
.map-placeholder{border:1px solid #c5c0b1;border-radius:8px;background:#eceae3;display:grid;place-items:center;text-align:center;min-height:320px;padding:32px;color:#939084;font-size:14px}
.map-placeholder strong{display:block;font-size:17px;font-weight:600;color:#201515;margin-bottom:6px}
.muted-note{font-size:14px;color:#939084;line-height:1.5;margin-top:16px}
.site-footer{background:#201515;color:#c5c0b1;border-top:1px solid #36342e}
.footer-inner{max-width:1200px;margin:0 auto;padding:48px 24px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px;margin-bottom:40px}
.footer-col h3{color:#fffefb;font-size:14px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;margin-bottom:14px}
.footer-col ul{list-style:none}
.footer-col li{margin-bottom:10px}
.footer-col a{color:#c5c0b1;font-size:14px}
.footer-col a:hover{color:#fffefb;text-decoration:none}
.footer-col p{font-size:14px;line-height:1.5;color:#c5c0b1}
.footer-legal{border-top:1px solid #36342e;padding-top:20px;display:flex;justify-content:space-between;align-items:center;gap:8px 24px;flex-wrap:wrap;font-size:13px;color:#939084}
.footer-legal a{color:#c5c0b1}
.footer-legal a:hover{color:#fffefb;text-decoration:none}
.footer-bottom{border-top:1px solid #36342e;padding-top:20px;display:flex;justify-content:space-between;align-items:center;gap:8px 24px;flex-wrap:wrap;font-size:13px;color:#939084}
.footer-bottom a{color:#c5c0b1}
.footer-bottom a:hover{color:#fffefb;text-decoration:none}
@media (max-width:900px){
.grid,.service-cards,.steps{grid-template-columns:1fr 1fr}
.footer-grid{grid-template-columns:1fr 1fr}
.quote-form{grid-template-columns:1fr}
.hero .container{grid-template-columns:1fr;gap:32px}
}
@media (max-width:640px){
.grid,.service-cards,.steps{grid-template-columns:1fr}
.form-row{grid-template-columns:1fr}
.footer-grid{grid-template-columns:1fr}
.cta-banner{padding:32px 24px}
.site-nav,.main-nav,.mainnav{display:none}
.burger{display:grid}
}

.alt{background:#eceae3}
.alt h1,.alt h2,.alt h3{color:#201515}
.alt .section-head p{color:#36342e}
.alt .card{background:#fffefb}
