/* Water Restoration Rochester MI : design family "Paint Creek village"
   evergreen + river-stone grey + brick on white, trail blazes, trail discs, creek-line waves, arch frames. */
@font-face{font-family:"Readex Pro";src:url(../fonts/readexpro.woff2?v=aa0c2991) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:"Rokkitt";src:url(../fonts/rokkitt.woff2?v=8ac0658b) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}

:root{
  --green:#2d5b46;--green-d:#1d3d2f;--grey:#5c6670;--grey-d:#444e57;--stone:#eef1f0;--creek:#e3eee8;--line:#cfd8d3;
  --brick:#9b4431;--brick-d:#7c3324;--cream:#f6efe4;--ink:#1b2320;--ink-2:#34403a;--white:#fff;
  --head:"Readex Pro",system-ui,-apple-system,"Segoe UI",sans-serif;
  --body:"Rokkitt",Georgia,"Times New Roman",serif;
  --gutter:22px;--radius:14px
}
*,*::before,*::after{box-sizing:border-box}
html{font-size:100%;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--body);font-size:1.1875rem;font-weight:430;line-height:1.62;color:var(--ink);background:var(--white)}
img{max-width:100%;height:auto;display:block}
a{color:var(--brick-d)}
h1,h2,h3,h4{font-family:var(--head);color:var(--green-d);line-height:1.18;letter-spacing:-.01em;margin:0 0 .5em}
h1{font-size:clamp(2rem,4.2vw,3.05rem);font-weight:700}
h2{font-size:clamp(1.55rem,2.7vw,2.2rem);font-weight:700}
h3{font-size:1.15rem;font-weight:600}
p{margin:0 0 1em}
ul{margin:0 0 1em}
.wrap{max-width:1200px;margin:0 auto;padding-inline:var(--gutter)}
.skip-link{position:absolute;left:-9999px;top:8px;background:var(--green-d);color:#fff;padding:10px 14px;border-radius:8px;z-index:400}
.skip-link:focus{left:12px}

/* icons */
.ico{width:1.1em;height:1.1em;flex:0 0 auto;display:inline-block;vertical-align:-.15em}
.ico-arrow{width:1em;height:1em;flex:0 0 auto;display:inline-block;vertical-align:-.12em}
.ico-phone{width:1.25em;height:1.25em;flex:0 0 auto}
.btn svg,a[href^="tel:"] svg{width:1.25em;height:1.25em;flex:0 0 auto}
.blaze{display:inline-flex;align-items:center;justify-content:center;width:28px;height:36px;border-radius:6px;flex:0 0 auto;color:#fff;background:var(--green);box-shadow:inset 0 -3px 0 rgba(0,0,0,.14)}
.blaze svg{width:18px;height:18px;flex:0 0 auto}
.blaze--stone{background:var(--grey)}
.blaze--brick{background:var(--brick)}
.blaze--cream{background:var(--cream);color:var(--brick-d)}
.eyebrow{display:flex;align-items:center;gap:10px;font-family:var(--head);font-size:.86rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--green);margin:0 0 12px}
.eyebrow .blaze{width:20px;height:26px;border-radius:4px}
.eyebrow .blaze svg{width:13px;height:13px}
.eyebrow--light{color:var(--creek)}

/* header */
.site-header{position:sticky;top:0;z-index:50;background:#fff;border-top:4px solid var(--green);border-bottom:1px solid #d9e0dc}
.masthead{display:flex;align-items:center;gap:22px;min-height:76px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);flex:0 0 auto}
.brand__mark{width:44px;height:44px;flex:0 0 auto}
.brand__text{display:flex;flex-direction:column;line-height:1.1}
.brand__name{font-family:var(--head);font-weight:700;font-size:1.14rem;color:var(--green-d)}
.brand__sub{font-family:var(--head);font-size:.74rem;font-weight:500;color:#3e4a44;letter-spacing:.05em;text-transform:uppercase;margin-top:3px}
.nav{display:flex;align-items:center;gap:2px;margin-left:auto}
.nav>a,.drop>a{display:inline-flex;align-items:center;font-family:var(--head);font-weight:500;font-size:.96rem;color:var(--ink);padding:10px 12px;border-radius:8px;text-decoration:none;white-space:nowrap}
.nav>a:hover,.drop>a:hover{background:var(--creek)}
.drop{position:relative}
.drop>a::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin:-4px 0 0 8px}
.drop__menu{display:none;position:absolute;top:100%;left:0;min-width:320px;background:#fff;border:1px solid #d9e0dc;border-radius:12px;box-shadow:0 18px 40px rgba(29,61,47,.16);padding:8px;max-height:min(72vh,560px);overflow-y:auto;overscroll-behavior:contain;z-index:60}
.drop:hover .drop__menu,.drop.is-open .drop__menu{display:block}
.drop__menu a{display:block;padding:8px 12px;border-radius:8px;color:var(--ink);font-family:var(--head);font-size:.95rem;text-decoration:none}
.drop__menu a:hover{background:var(--creek)}
.menu-close{display:none}
.mast-cta{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.mast-phone{display:flex;align-items:center;gap:10px;background:var(--brick);color:#fff;padding:9px 18px 9px 14px;border-radius:999px;text-decoration:none}
.mast-phone:hover{background:var(--brick-d)}
.mast-phone svg{width:22px;height:22px}
.mast-phone__txt{display:flex;flex-direction:column;line-height:1.1}
.mast-phone__num{font-family:var(--head);font-weight:700;font-size:1.04rem;white-space:nowrap}
.mast-phone small{font-family:var(--head);font-size:.68rem;letter-spacing:.06em;text-transform:uppercase}
.nav-toggle{display:none}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:12px;border-radius:var(--radius);padding:12px 20px;text-decoration:none;font-family:var(--head);font-weight:600;line-height:1.2;border:2px solid transparent;max-width:100%}
.btn--lg{padding:14px 24px}
.btn--brick{background:var(--brick);color:#fff}
.btn--brick:hover{background:var(--brick-d)}
.btn--cream{background:var(--cream);color:var(--brick-d)}
.btn--cream:hover{background:#fff}
.btn--line{background:transparent;color:var(--brick-d);border-color:var(--brick);padding:10px 16px;font-size:1rem}
.btn--line:hover{background:var(--brick);color:#fff}
.btn__txt{display:flex;flex-direction:column;min-width:0}
.btn__num{font-size:1.34rem;font-weight:700;letter-spacing:.01em}
.btn__sub{font-size:.88rem;font-weight:500}
.text-link{display:inline-flex;align-items:center;gap:6px;font-family:var(--head);font-weight:600;font-size:1rem;color:var(--brick-d)}
.text-link--light{color:var(--cream)}

/* bands */
.band{padding-block:64px}
.band--stone{background:var(--stone)}
.band--creek{background:var(--creek)}
.creek{line-height:0;display:block}
.creek svg{display:block;width:100%;height:48px}
.sec-intro{max-width:780px;margin-bottom:10px}
.sec-intro p{color:var(--ink-2)}

/* chips */
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.tags--center{justify-content:center;margin-top:28px}
.tag{display:inline-flex;align-items:center;gap:8px;background:var(--creek);color:var(--green-d);border:1px solid #b9d0c3;border-radius:999px;padding:7px 14px;font-family:var(--head);font-size:.9rem;font-weight:500}
.tag .ico{width:16px;height:16px;color:var(--green)}

/* hero */
.vhero{padding-block:48px 40px;background:#fff}
.vhero__grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:52px;align-items:center}
.vhero__lead{font-size:1.25rem;color:var(--ink-2);max-width:40ch;margin-bottom:22px}
.arch{margin:0;position:relative}
.arch img{width:100%;height:460px;object-fit:cover;border-radius:280px 280px 18px 18px;border:6px solid #fff;box-shadow:0 0 0 2px var(--green),0 22px 44px rgba(29,61,47,.2)}
.arch--svc img{height:420px}
.arch--sm img{height:340px;border-radius:220px 220px 16px 16px}
.arch__plate{display:flex;align-items:center;gap:8px;width:max-content;max-width:92%;margin:-24px auto 0;position:relative;background:var(--green-d);color:#fff;font-family:var(--head);font-size:.86rem;font-weight:500;padding:9px 16px;border-radius:10px}
.arch__plate .ico{width:16px;height:16px}
.bc{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-family:var(--head);font-size:.86rem;color:var(--ink-2);margin-bottom:14px}
.bc a{color:var(--ink-2)}

/* trail discs */
.trail{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:24px;position:relative}
.trail::before{content:"";position:absolute;left:25px;right:25px;top:24px;border-top:3px dashed #8aa596}
.trail__stop{position:relative;z-index:1}
.disc{display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:50%;background:var(--green);border:3px solid #fff;box-shadow:0 0 0 3px var(--green);color:#fff;font-family:var(--head);font-weight:700;font-size:1.15rem}
.trail__body h3{margin:14px 0 4px;font-size:1.08rem}
.trail__body p{margin:0;font-size:1.06rem}
.trail--v{grid-template-columns:1fr;gap:18px}
.trail--v::before{left:25px;right:auto;top:12px;bottom:12px;border-top:0;border-left:3px dashed #8aa596}
.trail--v .trail__stop{display:grid;grid-template-columns:56px 1fr;gap:14px;align-items:start}
.trail--v .trail__body h3{margin-top:10px}

/* services */
.svc-group{display:grid;grid-template-columns:240px minmax(0,1fr);gap:30px;padding-block:30px;border-top:1px solid #d6dfda}
.svc-group:first-of-type{border-top:0}
.svc-group__label{position:sticky;top:100px;align-self:start}
.svc-group__label h3{display:flex;align-items:center;gap:10px;font-size:1.2rem}
.svc-group__label p{color:var(--ink-2);font-size:1.06rem}
.svc-group__cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.svc-group__cards--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.pcard--wide{grid-column:span 2}
.pcard{display:flex;flex-direction:column;background:#fff;border:1px solid #d6dfda;border-radius:var(--radius);overflow:hidden;text-decoration:none;color:var(--ink);transition:box-shadow .2s,transform .2s}
.pcard:hover{box-shadow:0 14px 30px rgba(29,61,47,.14);transform:translateY(-2px)}
.pcard__media img{width:100%;height:170px;object-fit:cover}
.pcard__body{display:flex;flex-direction:column;gap:6px;padding:14px 16px 18px;flex:1}
.pcard__title{font-family:var(--head);font-weight:600;font-size:1.08rem;color:var(--green-d);line-height:1.25}
.pcard__desc{font-size:1.06rem;color:var(--ink-2);line-height:1.5}
.pcard__go{margin-top:auto;display:inline-flex;align-items:center;gap:4px;font-family:var(--head);font-size:.92rem;font-weight:600;color:var(--brick-d)}
.pcard--mini .pcard__media img{height:150px}

/* basement band */
.cellar{background:var(--green);color:#fff;padding-block:40px 56px}
.cellar h2,.cellar h3{color:#fff}
.cellar__intro{max-width:760px;color:#eef5f1}
.cellar__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:26px}
.cellar__panel{background:var(--green-d);border-radius:16px;overflow:hidden;display:flex;flex-direction:column}
.cellar__media img{width:100%;height:170px;object-fit:cover}
.cellar__media--mark{display:flex;align-items:center;justify-content:center;height:170px;background:repeating-linear-gradient(135deg,#24483a 0 14px,#1d3d2f 14px 28px)}
.cellar__media--mark .blaze{width:56px;height:74px;border-radius:10px}
.cellar__media--mark .blaze svg{width:32px;height:32px}
.cellar__body{padding:18px 20px 22px;display:flex;flex-direction:column;flex:1}
.cellar__body .text-link{margin-top:auto}
.cellar__cta{margin-top:26px;text-align:center}
.cellar .btn--cream{border-color:var(--cream)}
.checks{list-style:none;padding:0;margin:0 0 16px}
.checks li{display:flex;gap:10px;align-items:flex-start;margin-bottom:8px;font-size:1.06rem}
.checks .ico{width:20px;height:20px;margin-top:4px;color:var(--brick)}
.cellar .checks li{color:#f1f6f3}
.cellar .checks .ico{color:#f3c9b8}

/* handled */
.handled__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:24px}
.hcard{background:#fff;border:1px solid #d6dfda;border-top:5px solid var(--green);border-radius:6px 6px var(--radius) var(--radius);padding:22px 20px}
.hcard h3{margin:14px 0 8px}
.hcard p{margin:0;font-size:1.06rem}

/* dry-out */
.dryout__grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:52px;align-items:center}

/* cost */
.cost__answer{font-size:1.22rem;max-width:62ch}
.signs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:26px 0 20px}
.sign{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.sign__head{background:var(--grey);padding:12px 40px 12px 18px;clip-path:polygon(0 0,calc(100% - 24px) 0,100% 50%,calc(100% - 24px) 100%,0 100%);margin-right:12px}
.sign__head h3{color:#fff;margin:0;font-size:1.02rem}
.sign__range{font-family:var(--head);font-weight:700;font-size:1.55rem;color:var(--brick-d);margin:14px 18px 6px}
.sign ul{margin:0;padding:0 18px 20px 38px}
.sign li{font-size:1.06rem}
.cost__note{font-size:1.06rem}

/* gear */
.gear__list{list-style:none;padding:0;margin:22px 0 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.gear__item{display:flex;gap:12px;align-items:flex-start;background:#fff;border-radius:12px;padding:16px;border:1px solid #c9dccf}
.gear__item p{margin:0;font-size:1.04rem;line-height:1.45}

/* claim */
.claim__grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:44px;align-items:start}
.claim__card{background:var(--cream);border:1px solid #e3d4be;border-left:6px solid var(--brick);border-radius:var(--radius);padding:24px}
.checks--dark .ico{color:var(--green)}

/* categories */
.cats__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:22px}
.cat{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px}
.cat h3{margin:14px 0 8px}
.cat p{font-size:1.06rem}

/* gallery */
.mosaic{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:190px;gap:12px;margin-top:22px}
.mosaic figure{margin:0;border-radius:12px;overflow:hidden;background:var(--stone)}
.mosaic img{width:100%;height:100%;object-fit:cover}
.mosaic .m-wide{grid-column:span 2}

/* reach */
.reach{background:var(--grey-d);color:#fff;padding-block:60px}
.reach h2{color:#fff}
.reach__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:44px;align-items:center}
.reach__copy p{color:#f3f5f6}
.idplate{background:#fff;color:var(--ink);border-radius:16px;padding:24px;border-top:6px solid var(--brick)}
.idplate__name{font-family:var(--head);font-weight:700;font-size:1.2rem;color:var(--green-d);margin-bottom:10px}
.idplate__row{display:flex;gap:10px;align-items:flex-start;margin:0 0 8px}
.idplate__row .ico{margin-top:5px;color:var(--green)}
.idplate__row a{color:var(--brick-d);font-weight:700}
.email{overflow-wrap:anywhere;word-break:break-word}
.gsearch{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:8px 16px;text-decoration:none;font-family:var(--head);font-size:.94rem;font-weight:600;margin-top:10px}
.gsearch--dark{background:var(--green-d);color:#fff}
.gsearch--line{border:2px solid var(--green);color:var(--green-d)}

/* areas */
.areas__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:start}
.areas__map{position:sticky;top:100px;border-radius:16px;overflow:hidden;border:1px solid var(--line)}
.areas__map iframe{display:block}
.zip-row{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 18px}
.zip-pill{font-family:var(--head);font-weight:700;font-size:1rem;background:var(--green-d);color:#fff;border-radius:999px;padding:6px 16px}
.clusters{display:grid;gap:12px}
.cluster{border-left:3px dashed #8aa596;padding-left:14px}
.cluster h3{display:flex;align-items:center;gap:8px;font-size:1.02rem;margin:0 0 4px}
.cluster h3 .blaze{width:18px;height:24px;border-radius:4px}
.cluster h3 .blaze svg{width:12px;height:12px}
.cluster__zip{font-weight:500;color:var(--ink-2)}
.cluster__list{margin:0;font-size:1.04rem}
.areas__nearby{margin-top:14px}

/* local risk */
.risk__grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:48px;align-items:center}
.framed{margin:0}
.framed img{width:100%;height:330px;object-fit:cover;border-radius:18px;border:6px solid #fff;box-shadow:0 14px 30px rgba(29,61,47,.16)}
.risk .checks .ico{color:var(--green)}

/* FAQ */
.qa__head{max-width:860px;margin:0 auto 18px}
.qa__list{max-width:860px;margin:0 auto}
.qa__item{border-bottom:1px solid #d6dfda;padding:6px 0}
.qa__item summary{display:flex;align-items:center;gap:14px;cursor:pointer;list-style:none;padding:12px 0;font-family:var(--head);font-weight:600;font-size:1.08rem;color:var(--green-d)}
.qa__item summary::-webkit-details-marker{display:none}
.qa__disc{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex:0 0 32px;border-radius:50%;background:var(--green);color:#fff;font-size:.9rem;font-weight:700}
.qa__item[open] .qa__disc{background:var(--brick)}
.qa__a p{margin:0 0 14px 46px}

/* final band */
.finale{background:var(--brick-d);color:#fff;padding-block:40px 60px}
.finale h2{color:#fff}
.finale p{color:#fff6f1}
.finale__grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:36px;align-items:center}
.finale__act{display:flex;justify-content:flex-end}
.finale .eyebrow{color:#fde7dc}

/* footer */
.map-strip{line-height:0;border-top:1px solid var(--line)}
.map-strip iframe{display:block}
.site-footer{background:var(--green-d);color:#e8f0eb;padding-block:48px 90px}
.site-footer h3{color:#fff;font-size:.95rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:12px}
.foot-cols{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr));gap:32px}
.foot-name{font-family:var(--head);font-weight:700;font-size:1.2rem;color:#fff;margin-bottom:8px}
.site-footer p{font-size:1rem}
.foot-contact a{color:#fff;font-weight:700}
.foot-list{list-style:none;padding:0;margin:0}
.foot-list li{margin-bottom:8px;font-size:1rem}
.foot-list a{color:#e8f0eb;text-decoration:none}
.foot-list a:hover{text-decoration:underline}
.site-footer .gsearch{border:2px solid #9fbfad;color:#fff}
.foot-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;border-top:1px solid rgba(255,255,255,.18);margin-top:32px;padding-top:18px;font-size:.96rem;color:#d7e4dc}
.foot-disc{margin:12px 0 0}
.foot-disc a{color:#d7e4dc;font-size:.96rem}

/* callbar */
.callbar{display:none}

/* service pages */
.signstrip{padding-block:26px}
.signstrip__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.signplate{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px}
.signplate__label{font-family:var(--head);font-size:.78rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:#46524c;margin:0 0 2px}
.signplate__v{margin:0;font-size:1.04rem;line-height:1.4;font-weight:500}
.firstmoves__grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:44px;align-items:start}
.movelist{counter-reset:mv;list-style:none;padding:0;margin:18px 0 22px}
.movelist li{counter-increment:mv;position:relative;padding-left:52px;margin-bottom:14px;min-height:36px}
.movelist li::before{content:counter(mv);position:absolute;left:0;top:0;width:36px;height:36px;border-radius:50%;background:var(--brick);color:#fff;font-family:var(--head);font-weight:700;display:flex;align-items:center;justify-content:center}
.movelist b{font-family:var(--head);font-weight:600;color:var(--green-d)}
.snapshot{background:var(--green-d);color:#fff;border-radius:16px;padding:24px}
.snapshot h3{color:#fff;display:flex;align-items:center;gap:10px;margin-bottom:14px}
.snapshot dl{margin:0}
.snapshot__row{padding:10px 0;border-top:1px solid rgba(255,255,255,.16)}
.snapshot dt{font-family:var(--head);font-size:.8rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:#cfe3d7}
.snapshot dd{margin:2px 0 0;font-size:1.08rem;color:#fff}
.howline .trail{margin-top:26px}
.prose{max-width:800px;margin:0 auto}
.prose h2{display:flex;align-items:center;gap:12px;font-size:1.5rem;margin:34px 0 12px}
.prose h2:first-child{margin-top:0}
.prose h2 .blaze{width:22px;height:30px;border-radius:5px}
.prose h2 .blaze svg{width:14px;height:14px}
.prose a{color:var(--brick-d);text-decoration:underline}
.prose ul{padding-left:1.3em}
.prose li{margin-bottom:6px}
.trade-fact{background:#fff;border-left:5px solid var(--brick);border-radius:0 12px 12px 0;padding:14px 18px;margin:22px 0}
.trade-fact p{margin:0}
.cov-compact__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center}
.cov-compact__map{border-radius:16px;overflow:hidden;border:1px solid var(--line)}
.cov-compact__map iframe{display:block}
.related__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:20px}

/* page hero (about, contact, legal, tools) */
.phero{background:var(--stone);padding-block:44px 30px}
.phero__lead{font-size:1.22rem;color:var(--ink-2);max-width:62ch}
.about__grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:48px;align-items:center}
.contact__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.ccard{background:#fff;border:1px solid var(--line);border-top:5px solid var(--green);border-radius:6px 6px var(--radius) var(--radius);padding:22px}
.ccard h2{font-size:1.2rem;margin:14px 0 8px}
.ccard p{font-size:1.06rem}
.ccard__big{font-family:var(--head);font-weight:700;font-size:1.3rem;color:var(--brick-d)}
.acards__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:22px}
.acard{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px}
.acard h3{display:flex;align-items:center;gap:10px}
.acard h3 .blaze{width:20px;height:26px;border-radius:4px}
.acard h3 .blaze svg{width:13px;height:13px}
.acard__zip{font-family:var(--head);font-weight:600;font-size:.95rem;color:var(--brick-d);margin:0 0 6px}
.acard p{font-size:1.06rem}
.legal__body{max-width:820px}
.legal__body h2{font-size:1.35rem;margin-top:28px}
.smap__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.smap h2{font-size:1.2rem}
.smap ul{padding-left:1.1em}
.smap li{margin-bottom:6px;font-size:1.06rem}

/* tools */
.tool__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:32px;align-items:start}
.calc{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;margin:0}
.calc__field{margin-bottom:16px}
.calc__field label{display:block;font-family:var(--head);font-weight:600;font-size:1rem;margin-bottom:6px;color:var(--green-d)}
.calc select{width:100%;max-width:100%;font-family:var(--body);font-size:1.08rem;padding:10px 12px;border:1px solid #8fa39a;border-radius:10px;background:#fff;color:var(--ink)}
.calc__set{border:0;padding:0;margin:0}
.calc__set legend{font-family:var(--head);font-weight:600;color:var(--green-d);margin-bottom:10px;font-size:1.05rem}
.calc__check{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-bottom:1px solid #e1e7e3;font-size:1.08rem;cursor:pointer}
.calc__check input{width:20px;height:20px;margin-top:5px;flex:0 0 auto;accent-color:var(--green)}
.calc__out{background:var(--green-d);color:#fff;border-radius:16px;padding:26px;position:sticky;top:96px}
.calc__label{font-family:var(--head);font-size:.84rem;letter-spacing:.07em;text-transform:uppercase;color:#cfe3d7;margin:0 0 4px}
.calc__big{font-family:var(--head);font-weight:700;font-size:2rem;color:#fff;margin:0 0 8px}
.calc__detail{color:#f0f6f2}
.calc__tips{color:#f0f6f2;padding-left:1.2em}
.calc__tips li{margin-bottom:6px;font-size:1.06rem}
.calc__note{color:#dfeae4;font-size:1rem;margin-top:14px;border-top:1px solid rgba(255,255,255,.18);padding-top:12px}

/* responsive */
@media (max-width:1080px){
  .nav{display:none}
  .nav-toggle{display:inline-flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:46px;height:46px;border:1px solid #c5d1cb;border-radius:10px;background:#fff;cursor:pointer;padding:0}
  .nav-toggle span{display:block;width:22px;height:2px;background:var(--ink);border-radius:2px}
  .mast-cta{margin-left:auto}
  body.is-menu{overflow:hidden}
  body.is-menu .nav{display:flex;position:fixed;inset:0;z-index:300;background:var(--green-d);flex-direction:column;align-items:stretch;gap:2px;padding:80px 24px 40px;overflow-y:auto;margin:0}
  body.is-menu .nav>a,body.is-menu .drop>a{color:#fff;font-size:1.15rem;padding:14px 10px;border-radius:0;border-bottom:1px solid rgba(255,255,255,.14);justify-content:space-between;width:100%}
  body.is-menu .nav>a:hover,body.is-menu .drop>a:hover{background:rgba(255,255,255,.06)}
  body.is-menu .menu-close{display:flex;align-items:center;justify-content:center;position:absolute;top:16px;right:18px;width:48px;height:48px;border:2px solid #fff;border-radius:10px;background:transparent;cursor:pointer;padding:0}
  body.is-menu .menu-close svg{width:26px;height:26px;stroke:#fff;stroke-width:2.6;fill:none;stroke-linecap:round}
  body.is-menu .drop{width:100%}
  body.is-menu .drop:hover .drop__menu{display:none}
  body.is-menu .drop.is-open .drop__menu{display:block}
  body.is-menu .drop__menu{position:static;min-width:0;max-height:none;overflow:visible;box-shadow:none;border:0;border-radius:0;background:rgba(255,255,255,.06);padding:6px 0}
  body.is-menu .drop__menu a{color:#fff;font-size:1.04rem;padding:10px 18px}
  body.is-menu .drop__menu a:hover{background:rgba(255,255,255,.08)}
  .vhero__grid,.dryout__grid,.claim__grid,.reach__grid,.areas__grid,.risk__grid,.about__grid,.firstmoves__grid,.cov-compact__grid,.tool__grid{grid-template-columns:minmax(0,1fr);gap:32px}
  .handled__grid,.contact__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gear__list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .svc-group{grid-template-columns:minmax(0,1fr);gap:14px}
  .signstrip__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .finale__grid{grid-template-columns:minmax(0,1fr)}
  .finale__act{justify-content:flex-start}
  .foot-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
  .calc__out{position:static}
  .vhero__media{max-width:560px}
}
@media (max-width:900px){
  .trail{grid-template-columns:1fr;gap:18px}
  .trail::before{left:25px;right:auto;top:12px;bottom:12px;border-top:0;border-left:3px dashed #8aa596}
  .trail__stop{display:grid;grid-template-columns:56px 1fr;gap:14px;align-items:start}
  .trail__body h3{margin-top:10px}
  .svc-group__cards,.cellar__grid,.signs,.cats__grid,.related__grid,.acards__grid,.smap__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mosaic{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:170px}
}
@media (max-width:760px){
  :root{--gutter:18px}
  body{font-size:1.125rem;padding-bottom:64px}
  .band{padding-block:44px}
  .vhero{padding-block:30px 34px}
  .arch img{height:300px;border-radius:200px 200px 16px 16px}
  .arch--svc img,.arch--sm img{height:280px}
  .framed img{height:240px}
  .callbar{display:block;position:fixed;left:0;right:0;bottom:0;z-index:90;background:var(--brick);box-shadow:0 -6px 20px rgba(0,0,0,.18)}
  .callbar a{display:flex;align-items:center;justify-content:center;gap:10px;color:#fff;text-decoration:none;padding:14px 12px;font-family:var(--head);font-weight:700;font-size:1.1rem}
  .callbar small{font-weight:500;font-size:.85rem}
  body.is-menu .callbar{display:none}
  .mast-phone small{display:none}
  .areas__map iframe,.cov-compact__map iframe,.map-strip iframe{height:260px!important}
  .site-footer{padding-bottom:100px}
}
@media (max-width:620px){
  .svc-group__cards,.svc-group__cards--2,.cellar__grid,.signs,.cats__grid,.related__grid,.acards__grid,.smap__grid,.handled__grid,.contact__grid,.gear__list,.signstrip__grid,.foot-cols{grid-template-columns:minmax(0,1fr)}
  .pcard--wide{grid-column:auto}
  .svc-group__label,.areas__map{position:static}
  .svc-group .pcard{flex-direction:row}
  .svc-group .pcard__media{flex:0 0 36%}
  .svc-group .pcard__media img{height:100%;min-height:132px}
  .svc-group .pcard__body{padding:12px 14px 14px}
  .svc-group .pcard__title{font-size:1rem}
  .svc-group .pcard__desc{font-size:1rem}
  .cellar__media img{height:140px}
  .cellar__media--mark{height:96px}
  .mosaic{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-auto-rows:140px}
  .btn--lg{padding:12px 18px}
  .btn__num{font-size:1.22rem}
  .masthead{gap:10px;min-height:68px}
}
@media (max-width:470px){
  .brand__text{display:none}
  .mast-phone{padding:9px 14px 9px 12px}
  .mast-phone__num{font-size:.98rem}
}
