
:root{--bg:#ffffff;--ink:#1b1b1b;--muted:#575757;--accent:#a30d24;--red:#c8102e;--soft:#f7f7f6;--line:#e3e3e0;--dark:#141414;--on-accent:#ffffff;
--head:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--body:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:18px/1.6 var(--body)}
img{max-width:100%;display:block}a{color:var(--accent)}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
h1,h2,h3{font-family:var(--head);line-height:1.15;margin:0 0 .4em;font-weight:700}
h1{font-size:clamp(38px,4.6vw,58px)}h2{font-size:clamp(28px,3vw,40px)}h3{font-size:22px}
p{max-width:64ch;margin:0 0 1em}
.btn{display:inline-block;background:var(--accent);color:var(--on-accent);padding:14px 22px;border-radius:8px;text-decoration:none;font-weight:600;min-height:44px}
.btn.ghost{background:transparent;color:var(--ink);border:2px solid var(--ink)}
.ph{background:repeating-linear-gradient(45deg,var(--line),var(--line) 12px,var(--soft) 12px,var(--soft) 24px);border-radius:14px;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:15px;margin:0;text-align:center;padding:12px}
.pending{color:var(--muted);font-style:italic}
/* header */
.site-header{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:5}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;height:76px}
.site-header img{height:48px;width:auto}
.nav{display:flex;gap:24px;align-items:center;font-size:16px}.nav a{color:var(--ink);text-decoration:none}
.nav .call{background:var(--accent);color:#fff;padding:10px 16px;border-radius:8px;font-weight:600}
.menu{display:none}
/* hero */
.hero{padding:56px 0 72px;background:linear-gradient(90deg,#fff 0 40%,var(--soft) 40%)}
.hero .wrap{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center}
.hero .ph{aspect-ratio:4/3;min-height:0;order:-1;box-shadow:0 10px 30px #0001}
.checks{list-style:none;padding:0;margin:0 0 24px}.checks li{padding-left:28px;position:relative;margin:6px 0}
.checks li:before{content:"";position:absolute;left:0;top:10px;width:14px;height:8px;border-left:3px solid var(--red);border-bottom:3px solid var(--red);transform:rotate(-45deg)}
.hero .actions{display:flex;gap:12px;flex-wrap:wrap}
/* strip */
.strip{background:var(--dark);color:#fff;padding:18px 0;font-size:16px}
.strip .wrap{display:flex;gap:40px;flex-wrap:wrap}.strip b{color:#fff}
/* services */
.services{padding:96px 0}
.svc-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:28px;margin-top:32px}
.svc-feature{background:var(--soft);border-radius:16px;overflow:hidden;display:grid;grid-template-rows:auto 1fr}
.svc-feature .ph{border-radius:0;aspect-ratio:3/2}
.svc-feature .body{padding:28px}
.svc-small{display:grid;gap:28px}
.svc-small article{border-top:3px solid var(--red);padding-top:18px}
/* why florida */
.why{background:var(--soft);padding:96px 0}
.why .wrap{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.why .ph{aspect-ratio:4/5}
/* process */
.process{padding:96px 0}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:32px;counter-reset:s}
.steps li{list-style:none;counter-increment:s}.steps li:before{content:counter(s,decimal-leading-zero);display:block;font:700 34px var(--head);color:var(--red);margin-bottom:6px}
.steps{padding:0}
/* areas */
.areas{background:var(--dark);color:#fff;padding:96px 0}
.areas a{color:#fff}
.areas .wrap{display:grid;grid-template-columns:1fr 1.2fr;gap:56px}
.county h3{color:#fff;border-bottom:1px solid #ffffff33;padding-bottom:8px}
.county ul{list-style:none;padding:0;columns:2;margin:0 0 28px}.county li{margin:6px 0}
/* faq */
.faq{padding:96px 0}.faq .wrap{max-width:860px}
details{border-bottom:1px solid var(--line);padding:18px 0}summary{font-weight:600;cursor:pointer;font-size:20px}
/* cta */
.cta{padding:0 0 96px}.cta .box{background:var(--accent);color:#fff;border-radius:18px;padding:56px;display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap}
.cta h2{color:#fff}.cta .btn{background:#fff;color:var(--accent)}
footer{border-top:1px solid var(--line);padding:56px 0;font-size:16px}
footer .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px}
footer ul{list-style:none;padding:0;margin:0}footer li{margin:6px 0}footer a{color:var(--ink);text-decoration:none}
@media(max-width:860px){
 body{font-size:17px}.nav a:not(.call){display:none}.menu{display:inline-block;background:none;border:0;font-size:26px;min-width:44px;min-height:44px}
 .site-header .wrap{height:64px}.site-header img{height:38px}
 .hero{padding:24px 0 48px;background:var(--soft)}.hero .wrap{grid-template-columns:1fr;gap:20px}.hero .ph{order:-1;aspect-ratio:16/10}
 .hero .actions{flex-direction:column}.hero .actions .btn{text-align:center}h1{font-size:36px}
 .svc-grid,.why .wrap,.areas .wrap{grid-template-columns:1fr}.why .ph{aspect-ratio:16/10}
 .steps{grid-template-columns:1fr 1fr}
 .services,.why,.process,.areas,.faq{padding:56px 0}.cta .box{padding:32px}
 footer .wrap{grid-template-columns:1fr 1fr}
}

.crumbs{font-size:15px;color:var(--muted);padding:18px 0 0}.crumbs a{color:var(--muted)}
.phero{padding:40px 0 64px;background:var(--soft)}.phero .wrap{display:grid;grid-template-columns:1fr 1.1fr;gap:48px;align-items:center}
.phero .ph{aspect-ratio:3/2}.phero.narrow .wrap{grid-template-columns:1fr}
.sec{padding:80px 0}.sec.alt{background:var(--soft)}.sec.dark{background:var(--dark);color:#fff}.sec.dark a{color:#fff}
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.split .ph{aspect-ratio:4/3}
.signs{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:24px}.signs div{border-top:3px solid var(--red);padding-top:14px}
.two{display:grid;grid-template-columns:1.3fr 1fr;gap:40px}
.mapbox{aspect-ratio:16/10;border-radius:14px}
.reading{max-width:760px;margin:0 auto}.reading p{max-width:none}
.cardlist{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.cardlist article{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.cardlist .ph{aspect-ratio:16/9;border-radius:0}.cardlist .b{padding:20px}
.citygrid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.citygrid ul{list-style:none;padding:0;columns:2}.citygrid li{margin:8px 0}
.svcrows article{display:grid;grid-template-columns:1fr 1.2fr;gap:40px;align-items:center;padding:40px 0;border-bottom:1px solid var(--line)}.svcrows article:nth-child(even) .ph{order:2}.svcrows .ph{aspect-ratio:3/2}
.contactgrid{display:grid;grid-template-columns:1fr 1fr;gap:56px}
label{display:block;font-weight:600;margin:14px 0 4px}input,textarea,select{width:100%;padding:12px;border:1px solid #bbb;border-radius:8px;font:inherit}
@media(max-width:860px){.phero .wrap,.split,.two,.citygrid,.contactgrid,.svcrows article{grid-template-columns:1fr}.svcrows article:nth-child(even) .ph{order:0}.signs,.cardlist{grid-template-columns:1fr}.sec{padding:56px 0}.phero .ph{order:-1}}

.ph img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
.ph{padding:0;overflow:hidden}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:8px;background:#fff;padding:8px;z-index:9}
a:focus-visible,button:focus-visible{outline:3px solid var(--red);outline-offset:2px}
.nav.open{display:flex;position:absolute;top:64px;left:0;right:0;background:#fff;flex-direction:column;padding:16px;border-bottom:1px solid var(--line)}
@media(max-width:860px){.nav.open a{display:block!important}}
.src{font-size:14px;color:var(--muted)}

.logo-mark{display:inline-block;width:108px;height:48px;background:url(../logo.png) left center/contain no-repeat}
@media(max-width:860px){.site-header .logo-mark{width:86px;height:38px}}
