/* Sub Zero Repair Southport — design signature: midnight-teal-brass */
:root{
  --primary:#123243; --primary-dark:#0b1f2b; --accent:#b08a3e; --accent-dark:#8c6c2f;
  --ink:#12201e; --body:#31413e; --muted:#6a7a76; --line:#e2e7e4; --bg:#ffffff;
  --panel:#f5f7f5; --panel-2:#eef2f0; --tint:#e7efec; --radius:100px; --card-radius:16px;
  --maxw:1160px; --shadow:0 10px 34px rgba(8,32,29,.10); --shadow-sm:0 4px 14px rgba(8,32,29,.08);
  --serif:"Marcellus",Connecticut,serif; --sans:"Work Sans",system-ui,Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--sans);color:var(--body);background:var(--bg);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--serif);color:var(--ink);line-height:1.15;font-weight:400;margin:0 0 .5em}
h1{font-size:2.5rem;letter-spacing:.2px}
h2{font-size:1.85rem}
h3{font-size:1.28rem}
p{margin:0 0 1rem}
a{color:var(--accent-dark);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.eyebrow{font-family:var(--sans);text-transform:uppercase;letter-spacing:.18em;font-size:.74rem;font-weight:700;color:var(--accent-dark);margin:0 0 .6rem}
.section{padding:64px 0}
.section.tint{background:var(--panel)}
.section.dark{background:var(--primary);color:#dfeae7}
.section.dark h2,.section.dark h3{color:#fff}
.center{text-align:center}
.lead{font-size:1.12rem;color:var(--body)}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--sans);
  font-weight:700;font-size:.98rem;padding:.8rem 1.5rem;border-radius:var(--radius);border:2px solid transparent;
  cursor:pointer;transition:.15s;text-decoration:none;line-height:1}
.btn:hover{text-decoration:none;transform:translateY(-1px)}
.btn-primary{background:var(--accent);color:#241a06;border-color:var(--accent)}
.btn-primary:hover{background:var(--accent-dark);border-color:var(--accent-dark);color:#fff}
.btn-secondary{background:var(--tint);color:var(--primary);border-color:var(--tint)}
.btn-secondary:hover{background:#d8e5e0;color:var(--primary-dark)}
.btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}
.btn-ghost:hover{background:rgba(255,255,255,.12);color:#fff}
.btn-lg{padding:.95rem 1.9rem;font-size:1.05rem}
.btn-block{display:flex;width:100%}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.header-inner{display:flex;align-items:center;gap:18px;padding:12px 22px;max-width:var(--maxw);margin:0 auto}
.logo{display:flex;align-items:center;gap:11px;font-family:var(--serif);font-size:1.12rem;color:var(--ink)}
.logo:hover{text-decoration:none}
.monogram{width:40px;height:40px;border-radius:12px;background:var(--primary);color:var(--accent);
  display:grid;place-items:center;font-family:var(--serif);font-size:1.3rem;font-weight:400;flex:none}
.logo b{font-weight:400;display:block;font-size:1.08rem;line-height:1.1}
.logo span{display:block;font-family:var(--sans);font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.main-nav{display:flex;gap:20px;margin-left:auto;align-items:center}
.main-nav a{color:var(--body);font-weight:500;font-size:.96rem}
.main-nav a:hover{color:var(--accent-dark);text-decoration:none}
.header-cta{display:flex;align-items:center;gap:10px;margin-left:6px}
.phone-pill{display:inline-flex;align-items:center;gap:.4rem;font-weight:700;color:var(--primary);
  border:2px solid var(--line);border-radius:var(--radius);padding:.55rem 1rem;font-size:.94rem}
.phone-pill:hover{border-color:var(--accent);text-decoration:none;color:var(--primary-dark)}
.nav-toggle{display:none}

/* Hero — archetype B: asymmetric with book-card */
.hero{background:linear-gradient(180deg,#f7faf8,#eef3f0);border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center;padding:66px 0}
.hero h1{font-size:2.9rem;margin-bottom:.3em}
.hero .lead{max-width:38ch}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0 20px}
.hero-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.chip{display:inline-flex;align-items:center;gap:.4rem;background:#fff;border:1px solid var(--line);
  border-radius:var(--radius);padding:.42rem .95rem;font-size:.85rem;font-weight:600;color:var(--primary);box-shadow:var(--shadow-sm)}
.book-card{background:#fff;border:1px solid var(--line);border-radius:var(--card-radius);padding:30px;box-shadow:var(--shadow)}
.book-card h2{font-size:1.5rem;margin-bottom:.25em}
.book-card .hours{font-weight:700;color:var(--primary);margin:.2rem 0 1rem}
.book-card ul{list-style:none;padding:0;margin:1.1rem 0 0}
.book-card li{padding:.35rem 0 .35rem 1.7rem;position:relative;font-size:.95rem}
.book-card li:before{content:"✓";position:absolute;left:0;color:var(--accent-dark);font-weight:800}

/* Word-mark marquee */
.wordmark{background:var(--primary-dark);color:#cde0db;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.08)}
.wordmark .track{display:flex;flex-wrap:wrap;justify-content:center;gap:.2rem 1rem;padding:16px 22px;
  font-family:var(--serif);font-size:1.05rem;letter-spacing:.03em;max-width:var(--maxw);margin:0 auto}
.wordmark .track span{opacity:.85}
.wordmark .track i{color:var(--accent);font-style:normal;opacity:.6}

/* Cred strip */
.cred-strip{background:var(--panel-2);border-bottom:1px solid var(--line)}
.cred-strip .wrap{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 26px;padding:14px 22px;font-size:.9rem;font-weight:600;color:var(--primary)}
.cred-strip b{color:var(--accent-dark)}

/* Valueprop stat strip */
.valueprop{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center}
.valueprop .stat h3{font-family:var(--serif);font-size:2rem;color:var(--primary);margin:0}
.valueprop .stat p{font-size:.9rem;color:var(--muted);margin:.2rem 0 0}

/* Service INDEX — numbered rows */
.service-index{border-top:1px solid var(--line)}
.svc-row{display:grid;grid-template-columns:64px 1fr 40px;gap:20px;align-items:center;padding:22px 6px;border-bottom:1px solid var(--line);transition:.15s}
.svc-row:hover{background:var(--panel);padding-left:16px}
.svc-row .num{font-family:var(--serif);font-size:1.6rem;color:var(--accent);opacity:.8}
.svc-row h3{margin:0 0 .15em;font-size:1.25rem}
.svc-row p{margin:0;font-size:.95rem;color:var(--muted)}
.svc-row .arrow{font-size:1.5rem;color:var(--accent-dark);text-align:right}
.svc-row:hover{text-decoration:none}
a.svc-row:hover{text-decoration:none}

/* Why-us ruled columns */
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.why-grid .why{padding:24px 26px;border-left:1px solid var(--line)}
.why-grid .why:first-child{border-left:none;padding-left:0}
.why-grid h3{font-size:1.15rem;display:flex;align-items:center;gap:.5rem}
.why-grid p{font-size:.94rem;color:var(--muted);margin:0}

/* Specialist split */
.split{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.split .split-body h2{margin-top:0}
.split ul{padding-left:1.1rem}
.split ul li{margin:.3rem 0}

/* Tiles / cards */
.tiles,.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.tile,.card{background:#fff;border:1px solid var(--line);border-radius:var(--card-radius);padding:24px;box-shadow:var(--shadow-sm);transition:.15s}
.tile:hover,.card:hover{box-shadow:var(--shadow);transform:translateY(-2px);text-decoration:none}
.tile h3,.card h3{margin:0 0 .35em}
.tile p,.card p{font-size:.93rem;color:var(--muted);margin:0}
.card-grid.cols-2{grid-template-columns:repeat(2,1fr)}
.card-grid.cols-4{grid-template-columns:repeat(4,1fr)}

/* Brand chips / mono */
.brand-chips{display:flex;flex-wrap:wrap;gap:12px}
.brand-card{display:flex;flex-direction:column;gap:.2rem}
.brand-mono{display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);
  border-radius:var(--radius);padding:.6rem 1.3rem;font-family:var(--serif);font-size:1.02rem;color:var(--primary);font-weight:400}
.brand-mono:hover{border-color:var(--accent);color:var(--accent-dark);text-decoration:none}

/* Accordion (common problems) */
.accordion details{border:1px solid var(--line);border-radius:12px;margin-bottom:12px;background:#fff;overflow:hidden}
.accordion summary{cursor:pointer;padding:18px 22px;font-family:var(--serif);font-size:1.15rem;color:var(--ink);list-style:none;position:relative}
.accordion summary::-webkit-details-marker{display:none}
.accordion summary:after{content:"+";position:absolute;right:22px;color:var(--accent-dark);font-size:1.4rem;font-weight:700}
.accordion details[open] summary:after{content:"–"}
.accordion details[open] summary{border-bottom:1px solid var(--line)}
.accordion .acc-body{padding:16px 22px 20px;font-size:.96rem;color:var(--body)}

/* Process timeline — horizontal */
.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;position:relative}
.timeline:before{content:"";position:absolute;top:26px;left:8%;right:8%;height:2px;background:var(--line)}
.timeline .step{text-align:center;position:relative}
.timeline .dot{width:52px;height:52px;border-radius:50%;background:var(--primary);color:var(--accent);
  font-family:var(--serif);font-size:1.3rem;display:grid;place-items:center;margin:0 auto 14px;position:relative;z-index:1;border:4px solid #fff}
.timeline h3{font-size:1.08rem;margin:0 0 .3em}
.timeline p{font-size:.9rem;color:var(--muted);margin:0}

/* Valueprop strip (band) */
.value-band{background:var(--tint);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.value-band .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding:34px 22px}
.value-band h2{margin:0;font-size:1.5rem}

/* Reviews — stacked single-column dark band */
.reviews-stack{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:18px}
.review-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:24px 26px}
.stars{color:var(--accent);letter-spacing:2px;font-size:1.05rem;margin-bottom:.5rem}
.review-card p{margin:0 0 .7rem;color:#eaf2ef;font-size:1.02rem}
.review-card .author{font-weight:700;color:#fff;font-size:.92rem}
.reviews .review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.reviews.light .review-card{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.reviews.light .review-card p{color:var(--body)}
.reviews.light .review-card .author{color:var(--primary)}

/* FAQ */
.faq-item{border-bottom:1px solid var(--line);padding:6px 0}
.faq-item summary{cursor:pointer;padding:16px 0;font-family:var(--serif);font-size:1.15rem;color:var(--ink);list-style:none;position:relative;padding-right:30px}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:after{content:"+";position:absolute;right:4px;top:16px;color:var(--accent-dark);font-size:1.3rem}
.faq-item[open] summary:after{content:"–"}
.faq-item .faq-a{padding:0 0 16px;color:var(--body);font-size:.98rem}

/* Booking block */
.booking-embed{text-align:center}
.booking-embed iframe{margin:0 auto;display:block}

/* Blog strip */
.blog-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.post-card{background:#fff;border:1px solid var(--line);border-radius:var(--card-radius);overflow:hidden;box-shadow:var(--shadow-sm);transition:.15s}
.post-card:hover{box-shadow:var(--shadow);transform:translateY(-2px);text-decoration:none}
.post-card .pc-body{padding:20px 22px}
.post-card h3{font-size:1.12rem;margin:0 0 .35em}
.post-card p{font-size:.9rem;color:var(--muted);margin:0}
.post-card .pc-tag{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--accent-dark);font-weight:700}

/* Final NYA */
.final-cta{background:var(--primary);color:#dfeae7;text-align:center}
.final-cta h2{color:#fff;font-size:2rem}
.final-cta p{max-width:52ch;margin:0 auto 1.4rem;color:#bcd2cc}
.final-cta .hero-cta{justify-content:center}

/* Subpage hero */
.subpage-hero{background:linear-gradient(180deg,#f7faf8,#eef3f0);border-bottom:1px solid var(--line);padding:52px 0 40px}
.subpage-hero h1{font-size:2.4rem;margin-bottom:.3em}
.subpage-hero .lead{max-width:60ch}
.subpage-hero .hero-cta{margin-top:20px}
.breadcrumbs{font-size:.82rem;color:var(--muted);padding:12px 0}
.breadcrumbs a{color:var(--muted)}
.breadcrumbs a:hover{color:var(--accent-dark)}

/* Content body */
.content-body{max-width:820px}
.content-body h2{margin-top:1.8em}
.content-body h3{margin-top:1.4em}
.content-body ul,.content-body ol{padding-left:1.3rem}
.content-body li{margin:.35rem 0}
.layout{display:grid;grid-template-columns:1fr 300px;gap:44px;align-items:start}
.sidebar{position:sticky;top:90px}
.sidebar .side-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--card-radius);padding:22px;margin-bottom:18px}
.sidebar h3{font-size:1.1rem}
.sidebar ul{list-style:none;padding:0;margin:0}
.sidebar li{padding:.3rem 0;border-bottom:1px solid var(--line);font-size:.92rem}
.sidebar li:last-child{border:none}

/* Callout */
.callout{background:var(--tint);border-left:4px solid var(--accent);border-radius:0 12px 12px 0;padding:18px 22px;margin:1.6rem 0}
.callout.warn{background:#fdf6ec;border-color:#c98a2b}
.callout h3{margin:0 0 .3em;font-size:1.1rem}
.callout p{margin:0;font-size:.96rem}

/* Error table */
.error-table{width:100%;border-collapse:collapse;margin:1.4rem 0;font-size:.93rem}
.error-table th,.error-table td{border:1px solid var(--line);padding:10px 13px;text-align:left;vertical-align:top}
.error-table th{background:var(--panel-2);font-family:var(--sans);font-weight:700;color:var(--primary)}
.error-table tr:nth-child(even) td{background:var(--panel)}

/* Inline NYA */
.inline-cta{background:var(--primary);color:#eaf2ef;border-radius:var(--card-radius);padding:28px 30px;margin:2rem 0;
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px}
.inline-cta h3{color:#fff;margin:0 0 .2em}
.inline-cta p{margin:0;color:#bcd2cc;font-size:.95rem}
.inline-cta .hero-cta{margin:0}

/* Pricing */
.pricing-card{max-width:520px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:var(--card-radius);padding:34px;box-shadow:var(--shadow);text-align:center}
.pricing-card .price{font-family:var(--serif);font-size:3rem;color:var(--primary)}
.pricing-card .price small{font-size:1rem;color:var(--muted)}

/* Contact / NAP */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.nap-block{background:var(--panel);border:1px solid var(--line);border-radius:var(--card-radius);padding:26px}
.nap-block h3{margin-top:0}
.nap-block dl{margin:0}
.nap-block dt{font-weight:700;color:var(--primary);margin-top:.8rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.08em}
.nap-block dd{margin:.15rem 0 0}
.map-slot{background:var(--panel-2);border:1px dashed var(--line);border-radius:var(--card-radius);min-height:280px;display:grid;place-items:center;color:var(--muted);text-align:center;padding:20px}

/* Photo slot */
.photo-slot{background:repeating-linear-gradient(45deg,var(--panel),var(--panel) 12px,var(--panel-2) 12px,var(--panel-2) 24px);
  border:1px dashed #c7d2ce;border-radius:var(--card-radius);min-height:220px;display:grid;place-items:center;
  color:var(--muted);font-size:.85rem;text-align:center;padding:20px;font-weight:600}

/* Area list */
.area-cols{columns:3;column-gap:26px}
.area-cols a{display:block;padding:.28rem 0;font-size:.94rem}
.region-block{margin-bottom:34px}
.region-block h3{border-bottom:2px solid var(--accent);display:inline-block;padding-bottom:.2rem}

/* Footer */
.site-footer{background:var(--primary-dark);color:#9fb6b0;padding:52px 0 26px;font-size:.9rem}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;margin-bottom:32px}
.site-footer h4{color:#fff;font-family:var(--sans);font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;margin:0 0 .9rem}
.site-footer a{color:#bccdc8;display:block;padding:.2rem 0}
.site-footer a:hover{color:var(--accent)}
.footer-brand .logo b{color:#fff}
.footer-brand p{margin:.9rem 0 0;font-size:.86rem;line-height:1.6}
.footer-disclaimer{border-top:1px solid rgba(255,255,255,.12);padding-top:20px;font-size:.78rem;color:#7f958f;line-height:1.6}
.footer-legal{margin-top:14px;font-size:.8rem}

/* Mobile bottom bar */
.mobile-call-bar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:60;background:#fff;
  border-top:1px solid var(--line);padding:9px 12px;gap:10px;box-shadow:0 -6px 20px rgba(8,32,29,.1)}
.mobile-call-bar .btn{flex:1;padding:.85rem}

/* Responsive */
@media(max-width:980px){
  h1{font-size:2.1rem}.hero h1{font-size:2.2rem}
  .hero-grid{grid-template-columns:1fr;gap:32px;padding:44px 0}
  .valueprop{grid-template-columns:repeat(2,1fr);gap:20px}
  .why-grid,.timeline,.tiles,.card-grid,.card-grid.cols-4,.blog-strip,.reviews .review-grid{grid-template-columns:1fr 1fr}
  .why-grid .why{border-left:none;border-top:1px solid var(--line);padding-left:26px}
  .why-grid .why:first-child{padding-left:26px}
  .timeline:before{display:none}
  .split,.contact-grid{grid-template-columns:1fr;gap:28px}
  .layout{grid-template-columns:1fr}.sidebar{position:static}
  .area-cols{columns:2}
  .main-nav{display:none}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  body{font-size:16px;padding-bottom:70px}
  .tiles,.card-grid,.card-grid.cols-4,.blog-strip,.reviews .review-grid,.valueprop,.why-grid,.timeline{grid-template-columns:1fr}
  .area-cols{columns:1}
  .header-cta .phone-pill span{display:none}
  .hero-cta{flex-direction:column}.hero-cta .btn{width:100%}
  .inline-cta,.value-band .wrap{flex-direction:column;align-items:flex-start;text-align:left}
  .mobile-call-bar{display:flex}
  .footer-grid{grid-template-columns:1fr}
  .section{padding:44px 0}
}

/* Generated service photography */
.service-feature-photo{margin:0 0 2rem;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.service-feature-photo img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.service-feature-photo figcaption{padding:.7rem 1rem;color:var(--muted);font-size:.82rem}

/* Generated imagery for former placeholder slots */
.site-photo{margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.site-photo img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}

.monogram img{width:100%;height:100%;display:block;border-radius:inherit}

/* FINAL BUTTON CONTRAST GATE */
:root{--final-cta-dark:#14372f;--final-cta-light:#ffffff;--final-focus:#ffbf47}
a.btn,button.btn,.btn-primary,.btn-secondary,.btn-dark,.btn-light,.btn-ghost,.btn-outline,.btn-outline-light,.btn-ghost-light,.btn-ghost-dark,.header-book-btn,.header-cta a,.mobile-call-bar a{text-shadow:none!important;text-decoration:none;min-height:44px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center}
.btn-primary,.btn-dark,.header-book-btn,.header-cta a{color:var(--final-cta-light)!important;background:var(--final-cta-dark)!important;border-color:var(--final-cta-dark)!important}
.btn-secondary,.btn-light,.btn-ghost,.btn-outline,.btn-outline-light,.btn-ghost-light,.btn-ghost-dark{color:#111820!important;background:#fff!important;border:2px solid #111820!important}
.mobile-call-bar a{color:var(--final-cta-light)!important;background:var(--final-cta-dark)!important;border:2px solid #fff!important}
.menu-toggle,.nav-toggle,.hamburger{color:#111820!important;background:#fff!important;border:2px solid #111820!important;border-radius:8px;min-width:44px;min-height:44px}
a:focus-visible,button:focus-visible,[role="button"]:focus-visible{outline:3px solid var(--final-focus)!important;outline-offset:3px!important}
@media(max-width:480px){a.btn,button.btn,.header-book-btn,.header-cta a,.mobile-call-bar a{max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.25;box-sizing:border-box}.mobile-call-bar{padding-bottom:max(8px,env(safe-area-inset-bottom));box-sizing:border-box;max-width:100vw}.mobile-call-bar a{flex:1 1 0!important;min-width:0!important}.logo-link{min-width:0!important;max-width:calc(100vw - 88px)!important}.logo-text{min-width:0!important;max-width:100%!important}.logo-name,.logo-tag{white-space:normal!important;overflow-wrap:anywhere!important}}
/* END FINAL BUTTON CONTRAST GATE */

/* FINAL-HEADER-BRAND-FIT-GATE */
header,header *{box-sizing:border-box}
header .header-inner,header .hdr,header .header-wrap,header .nav-wrap{min-width:0}
header .logo,header .logo-link,header .brand,header [class*="site-logo"]{
  min-width:0;max-width:min(420px,38vw);flex:0 1 auto;align-items:center
}
header .logo>span:last-child,header .logo-link>span:last-child,header .brand>span:last-child,
header .logo-text,header .brand-copy{min-width:0;line-height:1.12;overflow-wrap:anywhere}
header .logo small,header .logo-link small,header .brand small,header .logo-tag{
  display:block;max-width:100%;margin-top:3px;font-size:.68em;line-height:1.2;
  letter-spacing:.03em;white-space:normal;overflow-wrap:anywhere
}
header .logo img,header .logo-link img,header .brand img,header .monogram,header .logo-mark{flex:none}
@media(max-width:1100px){
  header .logo,header .logo-link,header .brand,header [class*="site-logo"]{max-width:300px}
}
@media(max-width:900px){
  header .logo,header .logo-link,header .brand,header [class*="site-logo"]{
    max-width:calc(100vw - 104px);font-size:clamp(.78rem,3.2vw,1rem)
  }
}
@media(max-width:480px){
  header .logo,header .logo-link,header .brand,header [class*="site-logo"]{
    max-width:calc(100vw - 88px);font-size:clamp(.72rem,3.45vw,.92rem)
  }
  header .logo small,header .logo-link small,header .brand small,header .logo-tag{
    font-size:.62em;letter-spacing:.01em
  }
}


/* FINAL-HEADER-REGION-LINE-GATE */
@media(min-width:901px){
  header .logo small,header .logo-link small,header .brand small,header .logo-tag{
    white-space:nowrap;overflow-wrap:normal
  }
}

/* FULL-INDEX-SERVICE-COVERAGE */
.full-index-coverage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}
.full-index-coverage-grid a{display:flex;justify-content:space-between;gap:10px;padding:12px 14px;border:1px solid rgba(20,30,40,.15);border-radius:9px;background:#fff;color:inherit;font-weight:600;text-decoration:none}
.full-index-coverage-grid a:hover{border-color:currentColor;transform:translateY(-1px)}
.full-index-coverage-grid span{font-weight:500;opacity:.68}

/* PHILADELPHIA FINAL CTA + HEADER SAFETY GATE */
:root{--final-cta-dark:#102f2d;--final-cta-light:#fff}
a.btn,button.btn,.btn-primary,.btn-secondary,.btn-dark,.btn-light,.btn-ghost,.btn-outline,
.btn-outline-light,.btn-ghost-light,.btn-ghost-dark,.header-book-btn,.header-cta a,.hdr-cta a,
.mobile-call-bar a{text-shadow:none!important;text-decoration:none;min-height:44px;box-sizing:border-box;
display:inline-flex;align-items:center;justify-content:center}
.btn-primary,.btn-dark,.header-book-btn,.header-cta a,.hdr-cta a{
color:var(--final-cta-light)!important;background:var(--final-cta-dark)!important;
border:2px solid var(--final-cta-dark)!important}
.btn-secondary,.btn-light,.btn-ghost,.btn-outline,.btn-outline-light,.btn-ghost-light,
.btn-ghost-dark{color:#111820!important;background:#fff!important;border:2px solid #111820!important}
.mobile-call-bar a:first-child{color:#111820!important;background:#fff!important;border:2px solid #111820!important}
.mobile-call-bar a:last-child{color:#fff!important;background:#102f2d!important;border:2px solid #102f2d!important}
.brand,.logo,.site-brand,.brand-lockup{min-width:0;max-width:100%}
.brand-txt,.brand-copy,.logo-text,.site-brand-copy{min-width:0;line-height:1.08}
.brand-txt small,.brand-copy small,.logo-text small,.site-brand-copy small{display:block;white-space:normal}
@media(max-width:1180px){.nav,.desktop-nav,.main-nav{gap:12px}.nav a,.desktop-nav a,.main-nav a{font-size:.88rem}}

/* VERIFIED PHILADELPHIA GEO MAP */
.geo-map-card{max-width:1160px;margin:2rem auto;border:1px solid rgba(16,47,45,.18);border-radius:18px;
overflow:hidden;background:#fff;box-shadow:0 14px 38px rgba(13,31,30,.10)}
.geo-map-card iframe{display:block;width:100%;height:340px;border:0;background:#e7ecea}
.geo-map-caption{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 20px;color:#17211f}
.geo-map-caption strong{display:block}.geo-map-caption span{display:block;color:#56615f;font-size:.92rem;margin-top:3px}
.geo-map-caption a{color:#0d4e49;font-weight:700;white-space:nowrap}
@media(max-width:680px){.geo-map-card{margin:1.25rem 16px}.geo-map-card iframe{height:270px}
.geo-map-caption{align-items:flex-start;flex-direction:column}.geo-map-caption a{white-space:normal}}

/* PHILADELPHIA RESPONSIVE HEADER OVERLAP GATE V4 */
html,body{max-width:100%;overflow-x:clip}
header .hdr,header .header-inner,header .header-wrap{max-width:100%;box-sizing:border-box}
header nav,header .main-nav,header .desktop-nav{min-width:0}
@media(max-width:980px){
  header .hdr,header .header-inner,header .header-wrap{flex-wrap:wrap;gap:10px 14px}
  header nav.main,header .main-nav,header .desktop-nav{
    order:3;width:100%;max-width:100%;margin-left:0;display:flex;gap:16px;overflow-x:auto;
    padding:7px 2px 4px;scrollbar-width:none;-webkit-overflow-scrolling:touch
  }
  header nav.main::-webkit-scrollbar,header .main-nav::-webkit-scrollbar,header .desktop-nav::-webkit-scrollbar{display:none}
  header nav.main a,header .main-nav a,header .desktop-nav a{white-space:nowrap;flex:none;font-size:.84rem}
  header .hdr-cta,header .header-cta{margin-left:auto;min-width:0;flex:none}
}
@media(max-width:560px){
  header .hdr-cta .btn-book-hdr,header .header-cta .header-book-btn{display:none!important}
  header .pill,header .phone-link{max-width:36vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  header:not(:has(> .seed-drawer-toggle)) .hdr-cta,
  header:not(:has(> .seed-drawer-toggle)) .header-cta{display:none!important}
  header:not(:has(> .seed-drawer-toggle)) nav.main,
  header:not(:has(> .seed-drawer-toggle)) .main-nav,
  header:not(:has(> .seed-drawer-toggle)) .desktop-nav{
    display:flex!important;flex-flow:row nowrap!important;justify-content:flex-start!important;
    overflow-x:auto!important;overflow-y:hidden!important;width:100%!important;max-width:100%!important
  }
  header:not(:has(> .seed-drawer-toggle)) nav a{flex:0 0 auto!important;white-space:nowrap!important}
}
@media(max-width:900px){
  header:has(> .seed-drawer-toggle) > div:first-child nav,
  header:has(> .seed-drawer-toggle) > div:first-child .nav,
  header:has(> .seed-drawer-toggle) > div:first-child .main-nav,
  header:has(> .seed-drawer-toggle) > div:first-child .site-nav{display:none!important}
  header:has(> .seed-drawer-toggle) > div:first-child .header-cta,
  header:has(> .seed-drawer-toggle) > div:first-child .hdr-cta{display:none!important}
  header:has(> .seed-drawer-toggle) > div:first-child{padding-right:68px!important;min-height:70px}
  header:has(> .seed-drawer-toggle) > .seed-drawer-toggle{right:16px!important;top:12px!important}
}


/* Final contrast gate: generic .lead must not override dark hero text. */
.hero p.lead{color:inherit}

.audited-area-panel{max-width:1180px;margin:3rem auto;padding:2rem;border:1px solid currentColor;border-radius:18px}.audited-area-panel ul{display:flex;flex-wrap:wrap;gap:.7rem;list-style:none;padding:0}.audited-area-panel li{padding:.45rem .8rem;border:1px solid currentColor;border-radius:999px}

.local-operating-brief{max-width:1180px;margin:4rem auto;padding:clamp(1.5rem,4vw,3rem)}.local-operating-brief>h2{max-width:850px}.local-brief-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.local-brief-grid>article,.local-brief-grid>div,.local-brief-grid>section{padding:1.25rem;border:1px solid currentColor;border-radius:16px}.local-brief-grid h3{margin-top:0}@media(max-width:760px){.local-brief-grid{grid-template-columns:1fr}}

/* emergency-nav-148 */
.emergency-nav{color:#b7cc72!important;font-weight:850!important}


/* production-copy-2026-08-09 */
.verified-service-area{padding:64px 20px;background:var(--paper,#f7f5f0)}.coverage-list{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0}.coverage-list li{padding:8px 12px;border:1px solid currentColor;border-radius:999px}.footer-warranty{margin:18px 0 0;font-size:.92rem;line-height:1.5}


/* local-seo-context-2026-08-09 */
.local-seo-context{padding:48px 20px}.local-seo-context p{max-width:74ch}

/* market-service-preparation-2026-08-09 */
.market-preparation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}.market-preparation-grid article{padding:20px;border:1px solid currentColor;border-radius:18px}.market-preparation-grid p{line-height:1.65}


/* local-diagnostic-notes-v2 */
.local-diagnostic-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.local-diagnostic-grid article{padding:1.1rem;border:1px solid currentColor;border-radius:1rem}.local-diagnostic-grid p{line-height:1.65}
/* NETWORK BRAND START */
:root{--network-brand-dark:#25272B;--network-brand-accent:#D18CA6;--network-brand-paper:#F7EFF2}
.network-brand-icon{width:42px;height:42px;object-fit:cover;border-radius:12px;flex:0 0 auto}.network-brand-name{font:800 clamp(13px,1.4vw,18px)/1.12 system-ui;max-width:230px}.network-brand-lockup{display:flex;align-items:center;gap:10px}.maintenance-nav{font-weight:750}.network-maintenance{color:#172027;background:var(--network-brand-paper);padding-bottom:64px}.maintenance-hero,.maintenance-grid,.maintenance-local,.maintenance-related,.maintenance-cta{width:min(1120px,calc(100% - 36px));margin:auto}.maintenance-hero{padding:72px 0 38px}.maintenance-hero h1{font-size:clamp(2.2rem,7vw,5rem);line-height:1.02;max-width:900px;margin:.15em 0}.maintenance-hero>p{max-width:780px;font-size:1.08rem}.maintenance-brand{font-weight:750;color:var(--network-brand-dark)}.maintenance-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.maintenance-grid article,.maintenance-local,.maintenance-related{background:white;border:1px solid color-mix(in srgb,var(--network-brand-dark) 18%,transparent);border-radius:18px;padding:26px}.maintenance-grid article span{color:var(--network-brand-accent);font-weight:900}.maintenance-grid h2{font-size:1.35rem}.maintenance-local,.maintenance-related{margin-top:22px}.maintenance-related ul{columns:2;gap:32px}.maintenance-related li{margin:.55em 0}.maintenance-cta{margin-top:24px;padding:32px;border-radius:18px;background:var(--network-brand-dark);color:white}.maintenance-cta a{display:inline-block;margin-top:10px;background:var(--network-brand-accent);color:#111;padding:12px 18px;border-radius:9px;text-decoration:none;font-weight:850}@media(max-width:900px){.hdr-cta,.header-cta{display:none!important}}@media(max-width:760px){.network-brand-name{max-width:160px}.maintenance-grid{grid-template-columns:1fr}.maintenance-related ul{columns:1}}
/* NETWORK BRAND END */

/* network-skip-link-2026-08-09 */
.network-skip-link{position:absolute;left:-9999px;top:0;z-index:10000;padding:.75rem 1rem;background:#fff;color:#111}.network-skip-link:focus{left:.75rem;top:.75rem}


/* OWNER-TRUST-PROOF START */
.owner-trust-proof{padding:clamp(34px,5vw,64px) 20px;background:linear-gradient(135deg,#f7f4ee,#fff);border-top:4px solid #7b5b82}.owner-trust-inner{max-width:880px;margin:auto}.owner-trust-proof h2{margin:0 0 12px;font-size:clamp(1.55rem,3vw,2.25rem)}.owner-trust-proof p{margin:0;max-width:78ch;line-height:1.7}
/* OWNER-TRUST-PROOF END */












/* responsive quick-reference cards: factory controlled */
.quick-reference-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0 30px}
.quick-reference-grid article{min-width:0;padding:18px;border:1px solid rgba(80,80,80,.22);border-radius:12px;background:rgba(255,255,255,.72)}
.quick-reference-grid h4{margin:0 0 7px;font-size:1rem;line-height:1.25}.quick-reference-grid p{margin:0;line-height:1.55}
.compact-service-request .compact-request-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:28px;border:1px solid rgba(90,90,90,.2);border-radius:16px;background:rgba(255,255,255,.68)}
.compact-service-request h2{margin:.15em 0}.compact-service-request p{margin:.35em 0;max-width:720px}.compact-service-request a{white-space:nowrap}
@media(max-width:700px){.quick-reference-grid{grid-template-columns:1fr}.compact-service-request .compact-request-inner{display:block;padding:22px}.compact-service-request a{display:inline-flex;margin-top:12px;white-space:normal}}

/* responsive layout fixes: factory controlled 2026-08-11 */
html,body{max-width:100%;overflow-x:hidden;overflow-x:clip}
.net-menu-toggle,.menu-toggle,.nav-toggle,.hamburger,.seed-drawer-toggle{box-sizing:border-box;min-width:44px!important;min-height:44px!important}
@media(min-width:841px) and (max-width:1320px){header .hdr-cta,header .header-cta{display:none!important}}
@media(max-width:980px){body.seed-drawer-enabled nav.main{display:none!important}}

/* regional menu touch-size fix: factory controlled 2026-08-11 */
.menu{box-sizing:border-box!important;min-width:44px!important;min-height:44px!important;padding:10px 12px!important;display:inline-flex;align-items:center;justify-content:center}

/* card flow fix: factory controlled 2026-08-11 */
.card-grid>*{min-width:0;max-width:100%;overflow-wrap:anywhere}
@media(max-width:700px){.card-grid{grid-template-columns:minmax(0,1fr)!important}.card-grid>*{width:100%;box-sizing:border-box}}



/* qualified same-day advantage: factory controlled */
.same-day-advantage{width:min(1120px,calc(100% - 36px));margin:18px auto 28px;padding:16px 20px;display:flex;gap:14px;align-items:center;justify-content:space-between;border:1px solid currentColor;border-radius:14px;background:color-mix(in srgb,currentColor 5%,transparent)}
.same-day-advantage strong{font-size:clamp(1rem,2vw,1.2rem)}.same-day-advantage span{max-width:720px;line-height:1.45}
@media(max-width:700px){.same-day-advantage{display:block}.same-day-advantage span{display:block;margin-top:6px}}



/* home visible phone: factory controlled */
.home-visible-phone{width:min(1120px,calc(100% - 36px));margin:14px auto;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid currentColor;border-radius:14px}.home-visible-phone a{font-weight:900;color:inherit;white-space:nowrap}@media(max-width:620px){.home-visible-phone{display:block}.home-visible-phone a{display:block;margin-top:6px}}













































/* FINAL-CONVERSION-GEOMETRY START */
.hero-review-proof{display:inline-flex;align-items:center;gap:.4rem;margin-top:14px;padding:8px 12px;border-radius:999px;color:inherit;font-weight:800;text-decoration:none;border:1px solid currentColor;width:max-content;max-width:100%}
.network-hero-trust{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}.network-hero-trust span{display:inline-flex;align-items:center;min-height:36px;padding:7px 11px;border:1px solid currentColor;border-radius:999px;font-size:.86rem;font-weight:800;line-height:1.2}
.booking-section{padding-block:clamp(36px,5vw,58px)!important}.booking-section iframe{display:block;margin:14px auto 0!important;width:100%;max-width:900px;border-radius:16px}
.net-menu-toggle,.menu-toggle,.nav-toggle,.hamburger{box-sizing:border-box!important;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-width:84px!important;min-height:44px!important;padding:10px 13px!important;line-height:1!important;white-space:nowrap}
@media(min-width:841px){.net-menu-toggle{display:none!important}}
/* FINAL-CONVERSION-GEOMETRY END */

























































/* GLOBAL-LAYOUT-RESILIENCE START */
*,*::before,*::after{box-sizing:border-box}
html,body{max-width:100%;overflow-x:clip}
img,svg,video,iframe{max-width:100%}
.content-body,.wrap,.container,.section-inner,.contact-grid,.contact-grid>*{min-width:0}
.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.contact-grid>*,.nap-block,.map-slot,.booking-cta{min-width:0!important;max-width:100%!important;overflow-wrap:anywhere;word-break:normal}
.map-slot{width:100%!important;height:auto!important;min-height:240px;aspect-ratio:16/10!important}
.card-grid>*,.tile-grid>*,.service-grid>*,.brand-grid>*,.footer-grid>*{min-width:0;max-width:100%;overflow-wrap:anywhere}
.brand-card-grid{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr))!important}
.brand-card,.brand-card>*{min-width:0;max-width:100%;overflow-wrap:anywhere}
.content-body table,.error-table{display:block;width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}
header .header-in,header .header-inner,header .hdr,header .header-wrap,header .nav-wrap{width:100%;max-width:min(1440px,calc(100% - 32px))!important;min-width:0;margin-inline:auto!important;display:flex;align-items:center;flex-wrap:nowrap!important}
header .brand,header .logo,header .logo-link{flex-shrink:0!important;min-width:min(220px,28vw)!important}
header .brand .network-brand-name,header .logo .network-brand-name,header .logo-link .network-brand-name{min-width:0;overflow-wrap:normal;word-break:normal}
header .brand,header .logo,header .logo-link,header .network-brand-lockup{display:flex!important;align-items:center!important;align-self:center!important;gap:10px!important;height:auto!important;min-height:44px;line-height:1.15!important;position:relative!important;inset:auto!important}
header :is(.brand,.logo,.logo-link,.network-brand-lockup) .network-brand-icon{flex:0 0 42px!important;width:42px!important;height:42px!important;object-fit:contain!important}
header :is(.brand,.logo,.logo-link,.network-brand-lockup) .network-brand-name{display:block!important;max-width:250px!important;font-size:clamp(.84rem,1.15vw,1.04rem)!important;line-height:1.18!important;font-weight:800!important;letter-spacing:0!important;white-space:normal!important;overflow-wrap:normal!important;word-break:keep-all!important;hyphens:none!important;text-wrap:balance}
header .nav{min-width:0;gap:clamp(10px,1.35vw,22px)!important}
header nav,header .main-nav,header .site-nav{display:flex;align-items:center;justify-content:flex-end;flex:1 1 auto;min-width:0;flex-wrap:nowrap!important;gap:clamp(10px,1.15vw,18px)!important}
header nav{overflow:hidden!important}
header nav>a,header .main-nav>a,header .site-nav>a{white-space:nowrap;flex:0 0 auto}
header nav>a.logo,header .main-nav>a.logo,header .site-nav>a.logo{display:none!important}
header nav :is(.area-cta,.nav-cta,.mobile-only),header .main-nav :is(.area-cta,.nav-cta,.mobile-only),header .site-nav :is(.area-cta,.nav-cta,.mobile-only){display:none!important}
header .header-cta,header .hdr-cta,header .nav-actions,header .header-actions{display:flex;align-items:center;justify-content:flex-end;gap:clamp(8px,1vw,14px);flex-wrap:nowrap;min-width:0}
header .header-cta>* ,header .hdr-cta>*,header .nav-actions>*,header .header-actions>*{flex:0 1 auto;min-width:0;max-width:100%;white-space:nowrap}
header .btn,header .phone-pill,header .header-phone-pill{display:inline-flex;align-items:center;justify-content:center;min-height:42px;line-height:1.15;text-align:center}
@media(min-width:901px) and (max-width:1500px){header .header-cta,header .hdr-cta,header .nav-actions,header .header-actions{display:none!important}header nav .maintenance-nav,header nav .emergency-nav,header nav .call-link,header nav a[href^="tel:"],header nav a[href$="/contact/"],header nav a[href$="/common-problems/"]{display:none!important}}
@media(min-width:901px) and (max-width:1120px){header nav a[href$="/blog/"],header nav a[href$="/about/"],header nav a[href$="/brands/"],header nav a[href$="/pricing/"]{display:none!important}}
@media(min-width:901px){header :is(.net-menu-toggle,.menu-toggle,.menu-button,.nav-toggle,.hamburger,.seed-drawer-toggle,button.menu){display:none!important}}
@media(max-width:900px){
  .contact-grid{grid-template-columns:minmax(0,1fr)!important;gap:24px!important}
  .brand-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .content-body{width:100%!important;padding-inline:clamp(18px,5vw,28px)!important}
  header .header-in,header .header-inner,header .hdr,header .header-wrap,header .nav-wrap{width:calc(100% - 20px)!important;max-width:none!important;padding-inline:10px!important;gap:8px!important}
  body.seed-drawer-enabled header .site-nav,body.seed-drawer-enabled header nav.main,body.net-menu-enabled header nav.net-mobile-target{display:none!important}
  header .brand,header .logo,header .logo-link{flex:1 1 auto!important;min-width:0!important;max-width:calc(100% - 52px)!important}
  header :is(.brand,.logo,.logo-link,.network-brand-lockup) .network-brand-icon{flex-basis:38px!important;width:38px!important;height:38px!important}
  header :is(.brand,.logo,.logo-link,.network-brand-lockup) .network-brand-name{flex:1 1 auto!important;min-width:0!important;max-width:none!important;font-size:.88rem!important}
  header :is(.net-menu-toggle,.menu-toggle,.menu-button,.nav-toggle,.hamburger,.seed-drawer-toggle,button.menu){display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 44px!important;width:44px!important;min-width:44px!important;max-width:44px!important;padding:8px!important;font-size:0!important;line-height:1!important;overflow:hidden!important}
  header .seed-drawer-toggle{position:absolute!important;inset:13px 16px auto auto!important;top:13px!important;right:16px!important;bottom:auto!important;left:auto!important;transform:none!important;align-self:center!important;height:44px!important;min-height:44px!important;margin:0!important;z-index:20!important}
  header:has(.seed-drawer-toggle) :is(.net-menu-toggle,.menu-toggle,.menu-button,.nav-toggle,.hamburger,button.menu){display:none!important}
  header:has(.menu-button) .net-menu-toggle{display:none!important}
  header :is(.net-menu-toggle,.menu-toggle,.menu-button,.nav-toggle,.hamburger,.seed-drawer-toggle,button.menu)::before{content:"☰";font-size:22px;line-height:1}
  header .header-cta,header .hdr-cta,header .nav-actions,header .header-actions{display:none!important}
  header nav,header .main-nav,header .site-nav{display:none!important}
}
@media(min-width:901px) and (max-width:1120px){
  main :is(.hero,.home-hero,.hero-section,.hero-wrap,.hero-inner,.hero-in,.hero-grid,.hero-content,.hero-copy){max-width:100%!important;min-width:0!important}
  main :is(.hero,.home-hero,.hero-section){grid-template-columns:minmax(0,1fr)!important}
  main :is(.hero,.home-hero,.hero-section)>:is(.hero-copy,.hero-content,.hero-inner,.hero-in){width:100%!important;max-width:100%!important;grid-column:1/-1!important}
  main :is(.hero,.home-hero,.hero-section) :is(h1,.network-hero-trust,.owner-review-preview,.hero-cta,.hero-btns,.cta-row){max-width:calc(100vw - 48px)!important;margin-left:auto!important;margin-right:auto!important}
}
@media(max-width:900px){header .menu-button{position:absolute!important;inset:13px 16px auto auto!important;top:13px!important;right:16px!important;bottom:auto!important;left:auto!important;transform:none!important;height:44px!important;min-height:44px!important;margin:0!important;z-index:20!important}}
@media(max-width:560px){
  .inline-cta,.contact-grid,.footer-grid{grid-template-columns:minmax(0,1fr)!important}
  .brand-card-grid{grid-template-columns:minmax(0,1fr)!important}
  .inline-cta{width:100%;padding:22px 18px!important}
  .inline-cta a,.contact-grid a.btn,.contact-grid .btn-primary{max-width:100%;white-space:normal;overflow-wrap:anywhere}
  .map-slot{min-height:220px}
}
/* GLOBAL-LAYOUT-RESILIENCE END */

/* network advantage grid balance */
.valueprop .wrap,.value-props,.advantage-grid,.benefit-grid,.trust-grid{justify-content:center}
.network-hero-trust{width:min(100%,1120px)!important;margin:16px auto 0!important;display:grid!important;justify-content:center!important;align-items:stretch!important;gap:9px!important}
.network-hero-trust:has(> :nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:900px!important}
.network-hero-trust:has(> :nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr))!important;max-width:1120px!important}
.network-hero-trust:has(> :nth-child(5):last-child){grid-template-columns:repeat(5,minmax(0,1fr))!important;max-width:1240px!important}
.network-hero-trust>span{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-width:0!important;min-height:52px!important;padding:10px 14px!important;text-align:center!important;white-space:normal!important;border:1px solid color-mix(in srgb,currentColor 42%,transparent)!important;border-radius:14px!important;background:color-mix(in srgb,currentColor 9%,transparent)!important;box-shadow:0 8px 24px rgba(0,0,0,.08)!important;font-weight:800!important;line-height:1.25!important;letter-spacing:.01em!important}
.verified-experience{width:100%;padding:clamp(18px,2.5vw,30px) clamp(18px,4vw,48px);text-align:center}
.verified-experience .wrap{width:min(920px,100%);margin-inline:auto}.verified-experience p{margin:0;line-height:1.65}.verified-experience strong{display:block;margin-bottom:4px;font-size:clamp(1.05rem,1.8vw,1.35rem)}
.owner-review-preview{display:flex!important;width:max-content!important;max-width:100%!important;margin:calc(14px + var(--review-shift,0px)/4) auto 8px!important;align-items:center!important;justify-content:center!important;padding:var(--review-py,9px) var(--review-px,14px)!important;border-radius:var(--review-radius,999px)!important;border:2px solid var(--review-border,#87a6b5)!important;background:var(--review-bg,#edf4f7)!important;color:var(--review-fg,#263f4c)!important;box-shadow:var(--review-shift,0px) 8px 22px rgba(0,0,0,.12)!important;font-weight:850!important;line-height:1.2!important;text-align:center!important;white-space:normal!important}.review-preview-v2,.review-preview-v6,.review-preview-v10{border-style:dashed!important}.review-preview-v3,.review-preview-v7,.review-preview-v11{letter-spacing:.025em!important;border-left-width:6px!important}.review-preview-v4,.review-preview-v8,.review-preview-v12{box-shadow:0 4px 0 var(--review-border)!important}.review-preview-v5,.review-preview-v9{border-radius:6px!important;text-transform:none}.review-preview-v6,.review-preview-v12{padding-left:calc(var(--review-px,14px) + 8px)!important;padding-right:calc(var(--review-px,14px) + 8px)!important}.owner-review-preview[data-review-position="2"]{margin-left:0!important}.owner-review-preview[data-review-position="3"]{margin-block:10px 16px!important}.owner-review-preview[data-review-position="1"]{transform:translateY(4px)}
.valueprop .wrap:has(> :nth-child(3):last-child),.value-props:has(> :nth-child(3):last-child),.advantage-grid:has(> :nth-child(3):last-child),.benefit-grid:has(> :nth-child(3):last-child),.trust-grid:has(> :nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:1040px;margin-inline:auto}
.valueprop .wrap:has(> :nth-child(4):last-child),.value-props:has(> :nth-child(4):last-child),.advantage-grid:has(> :nth-child(4):last-child),.benefit-grid:has(> :nth-child(4):last-child),.trust-grid:has(> :nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr))!important}
@media(max-width:900px){.network-hero-trust:has(> :nth-child(3):last-child),.network-hero-trust:has(> :nth-child(4):last-child),.network-hero-trust:has(> :nth-child(5):last-child){grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:720px!important}}
@media(max-width:760px){.valueprop .wrap,.value-props,.advantage-grid,.benefit-grid,.trust-grid{grid-template-columns:1fr!important;max-width:none}.network-hero-trust:has(> :nth-child(3):last-child),.network-hero-trust:has(> :nth-child(4):last-child),.network-hero-trust:has(> :nth-child(5):last-child){grid-template-columns:1fr!important;max-width:none!important}}
/* end network advantage grid balance */








/* network footer design variant: factory controlled */
.network-footer-v3{position:relative;isolation:isolate;border-radius:44px 44px 0 0!important;box-shadow:0 -18px 45px rgba(0,0,0,.12);}.network-footer-v3 h2,.network-footer-v3 h3,.network-footer-v3 h4{line-height:1.2}.network-footer-v3 .footer-brand-lockup{display:inline-flex!important;align-items:center!important;align-self:start!important;justify-self:start;grid-column:1/-1!important;grid-row:auto!important;gap:12px;margin:0 0 22px!important;padding:0!important;width:auto!important;max-width:min(100%,720px);height:auto!important;min-height:42px;line-height:1.2;text-align:left}.network-footer-v3 .footer-brand-lockup .network-brand-icon{flex:0 0 42px;width:42px!important;height:42px!important;object-fit:contain}.network-footer-v3 .footer-brand-lockup .network-brand-name{display:block;min-width:0;font-size:clamp(1rem,1.35vw,1.2rem);line-height:1.18;font-weight:700;overflow-wrap:anywhere}.network-footer-v3 :is(.footer-disclaimer,.footer-warranty,.footer-company-summary,.footer-company-hours,[data-manifest-service-areas=true],.footer-bottom){max-width:960px;margin:16px auto 0!important;text-align:center!important;line-height:1.65;padding-inline:18px;overflow-wrap:anywhere}.network-footer-v3 :is(.footer-disclaimer,.footer-warranty,[data-manifest-service-areas=true]) a{display:inline-flex;justify-content:center;max-width:100%}
.network-footer-v3{border-radius:36px 36px 0 0!important;border-top:1px solid currentColor!important}.network-footer-v3 :is(.footer-grid,.foot-grid,.grid,.footer-inner){grid-template-columns:1.4fr repeat(2,1fr)!important}.network-footer-v3 .footer-col:nth-child(5){grid-column:2/4}
@media(max-width:900px){.network-footer-v1 :is(.footer-grid,.foot-grid,.grid,.footer-inner),.network-footer-v2 :is(.footer-grid,.foot-grid,.grid,.footer-inner),.network-footer-v3 :is(.footer-grid,.foot-grid,.grid,.footer-inner),.network-footer-v4 :is(.footer-grid,.foot-grid,.grid,.footer-inner),.network-footer-v5 :is(.footer-grid,.foot-grid,.grid,.footer-inner),.network-footer-v6 :is(.footer-grid,.foot-grid,.grid,.footer-inner),.network-footer-v7 :is(.footer-grid,.foot-grid,.grid,.footer-inner),.network-footer-v8 :is(.footer-grid,.foot-grid,.grid,.footer-inner),.network-footer-v9 :is(.footer-grid,.foot-grid,.grid,.footer-inner),.network-footer-v10 :is(.footer-grid,.foot-grid,.grid,.footer-inner),.network-footer-v11 :is(.footer-grid,.foot-grid,.grid,.footer-inner),.network-footer-v12 :is(.footer-grid,.foot-grid,.grid,.footer-inner),.network-footer-v13 :is(.footer-grid,.foot-grid,.grid,.footer-inner),.network-footer-v14 :is(.footer-grid,.foot-grid,.grid,.footer-inner),.network-footer-v15 :is(.footer-grid,.foot-grid,.grid,.footer-inner){grid-template-columns:repeat(2,minmax(0,1fr))!important}.network-footer-v1 .footer-col,.network-footer-v2 .footer-col,.network-footer-v3 .footer-col,.network-footer-v4 .footer-col,.network-footer-v5 .footer-col,.network-footer-v6 .footer-col,.network-footer-v7 .footer-col,.network-footer-v8 .footer-col,.network-footer-v9 .footer-col,.network-footer-v10 .footer-col,.network-footer-v11 .footer-col,.network-footer-v12 .footer-col,.network-footer-v13 .footer-col,.network-footer-v14 .footer-col,.network-footer-v15 .footer-col{grid-column:auto!important;grid-row:auto!important;transform:none!important}}@media(max-width:560px){[class*=network-footer-v] :is(.footer-grid,.foot-grid,.grid,.footer-inner){grid-template-columns:1fr!important}[class*=network-footer-v] .footer-col,[class*=network-footer-v] .footer-brand{grid-column:1!important;grid-row:auto!important;transform:none!important}[class*=network-footer-v] .footer-col{padding:14px 0!important;border-left:0!important}.network-footer-v4 .footer-col,.network-footer-v14 .footer-col{padding:16px!important}.network-footer-v5 a:not(.btn){display:inline-flex;padding:4px 9px;border:1px solid rgba(255,255,255,.2);border-radius:999px}.network-footer-v9{padding-left:12px!important}.network-footer-v11 h2,.network-footer-v11 h3,.network-footer-v11 h4{letter-spacing:.12em!important;text-transform:uppercase}.network-footer-v13 .footer-disclaimer,.network-footer-v13 .footer-warranty{text-align:center}}
/* end network footer design variant */

/* HEADER-TEXT-RESILIENCE START */
body>:is(.utility,.trust-ribbon,.signal){position:relative;z-index:30;width:100%;max-width:100%;min-width:0;height:auto!important;min-height:32px;overflow:visible!important;line-height:1.35!important;text-align:center}
body>.utility{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;align-items:center;gap:8px 24px;padding-block:8px!important}
body>.utility>span{display:block!important;min-width:0;max-width:100%;margin:0!important;padding:0!important;white-space:normal!important;overflow:visible!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;text-align:center;line-height:1.35!important}
body>.trust-ribbon{display:block!important;padding:8px 16px!important;white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important}
body>.signal{overflow:visible!important}
body>.signal>.signal-track{width:min(1180px,100%);max-width:100%;min-width:0;margin-inline:auto!important;padding:8px 16px!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-wrap:wrap!important;gap:4px 22px!important;white-space:normal!important;overflow:visible!important;transform:none!important;translate:none!important;animation:none!important}
body>.signal>.signal-track>*{display:inline-block;min-width:0;max-width:100%;white-space:normal!important;overflow:visible!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;line-height:1.35!important;text-align:center}
body>header{max-width:100%;min-width:0;overflow:visible!important}
header>:is(.header-in,.header-inner,.hdr,.header-wrap,.nav-wrap,.bar,.site-header-inner){min-width:0;overflow:visible!important}
header :is(.brand,.logo,.logo-link,.network-brand-lockup){min-width:0!important;max-width:min(320px,42vw)!important;overflow:visible!important}
header :is(.brand,.logo,.logo-link,.network-brand-lockup) .network-brand-name{display:block!important;min-width:0!important;max-width:100%!important;height:auto!important;max-height:none!important;overflow:visible!important;white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;text-wrap:balance;letter-spacing:0!important;font-family:system-ui,-apple-system,"Segoe UI",sans-serif!important;font-size:clamp(.78rem,1.05vw,1rem)!important;line-height:1.17!important;text-align:left!important}
header .network-brand-name[data-brand-size="long"]{font-size:clamp(.74rem,.92vw,.9rem)!important}
header .network-brand-name[data-brand-size="xlong"]{font-size:clamp(.7rem,.82vw,.84rem)!important}
header :is(nav,.main-nav,.site-nav),header :is(.header-cta,.hdr-cta,.nav-actions,.header-actions){min-width:0}
@media(max-width:900px){
 body>.utility{grid-template-columns:minmax(0,1fr)!important;gap:3px!important;padding:7px 14px!important;font-size:clamp(.64rem,2.5vw,.74rem)!important}
 body>.utility>span:last-child{display:block!important}
 body>.signal>.signal-track{font-size:clamp(.62rem,2.45vw,.72rem)!important;gap:3px 14px!important;padding:7px 12px!important}
 body>.trust-ribbon{font-size:clamp(.68rem,2.55vw,.8rem)!important;line-height:1.4!important}
 body>header:has(>:is(.header-in,.header-inner,.hdr,.header-wrap,.nav-wrap,.bar,.site-header-inner)){display:block!important}
 header>:is(.header-in,.header-inner,.hdr,.header-wrap,.nav-wrap,.bar,.site-header-inner),body>header:not(:has(>:is(.header-in,.header-inner,.hdr,.header-wrap,.nav-wrap,.bar,.site-header-inner))){display:grid!important;grid-template-columns:minmax(0,1fr) 44px!important;align-items:center!important;column-gap:8px!important;height:auto!important;min-height:72px!important;padding:12px 14px!important}
 header :is(.brand,.logo,.logo-link,.network-brand-lockup){grid-column:1!important;grid-row:1!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;align-self:center!important}
 header :is(.brand,.logo,.logo-link,.network-brand-lockup) .network-brand-icon{flex:0 0 38px!important;width:38px!important;height:38px!important}
 header :is(.brand,.logo,.logo-link,.network-brand-lockup) .network-brand-name{font-size:clamp(.76rem,3.3vw,.9rem)!important;line-height:1.16!important}
 header .network-brand-name[data-brand-size="long"]{font-size:clamp(.7rem,3.05vw,.82rem)!important}
 header .network-brand-name[data-brand-size="xlong"]{font-size:clamp(.66rem,2.8vw,.76rem)!important}
 header :is(.net-menu-toggle,.menu-toggle,.menu-button,.nav-toggle,.hamburger,.seed-drawer-toggle,button.menu){grid-column:2!important;grid-row:1!important;position:static!important;inset:auto!important;transform:none!important;justify-self:end!important;align-self:center!important;margin:0!important;flex:0 0 44px!important;width:44px!important;min-width:44px!important;max-width:44px!important;height:44px!important;min-height:44px!important}
 header :is(nav,.main-nav,.site-nav,.header-cta,.hdr-cta,.nav-actions,.header-actions,.call){grid-column:1/-1}
}
@media(max-width:350px){header :is(.brand,.logo,.logo-link,.network-brand-lockup){gap:7px!important}header :is(.brand,.logo,.logo-link,.network-brand-lockup) .network-brand-icon{flex-basis:34px!important;width:34px!important;height:34px!important}header :is(.brand,.logo,.logo-link,.network-brand-lockup) .network-brand-name{font-size:.72rem!important}header .network-brand-name[data-brand-size="long"]{font-size:.66rem!important}header .network-brand-name[data-brand-size="xlong"]{font-size:.62rem!important}}
/* HEADER-TEXT-RESILIENCE END */

/* HEADER-CONTENT-GEOMETRY START */
/* A header may never cover the first heading or first article. */
body>header{position:relative!important;inset:auto!important;top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;transform:none!important;translate:none!important;z-index:40!important}
body>main{position:relative!important;inset:auto!important;margin-top:0!important;transform:none!important;translate:none!important;clear:both!important;z-index:1}
body>main>:first-child{position:relative!important;margin-top:0!important;transform:none!important;translate:none!important;clear:both!important}

/* Legacy drawer templates place their toggle beside, not inside, the header
   row. Keep that control anchored to the row so it cannot create a second
   phantom line or extend the header over the first content block. */
body>header:has(> .seed-drawer-toggle){position:relative!important}
body>header:has(> .seed-drawer-toggle)>:is(.header-in,.header-inner,.hdr,.header-wrap,.nav-wrap,.bar,.site-header-inner){padding-right:70px!important}
body>header> .seed-drawer-toggle{position:absolute!important;top:14px!important;right:14px!important;bottom:auto!important;left:auto!important;transform:none!important;margin:0!important;z-index:44!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important}

/* Preserve each desktop header. Use the compact control only on phones. */
@media(max-width:840px){
 body>header:has(>:is(.header-in,.header-inner,.hdr,.header-wrap,.nav-wrap,.bar,.site-header-inner)){display:block!important}
 header>:is(.header-in,.header-inner,.hdr,.header-wrap,.nav-wrap,.bar,.site-header-inner),body>header:not(:has(>:is(.header-in,.header-inner,.hdr,.header-wrap,.nav-wrap,.bar,.site-header-inner))){display:grid!important;grid-template-columns:minmax(0,1fr) 44px!important;align-items:center!important;column-gap:12px!important;width:100%!important;max-width:min(1180px,calc(100% - 32px))!important;height:auto!important;min-height:72px!important;margin-inline:auto!important;padding:12px 0!important;overflow:visible!important}
 header :is(.brand,.logo,.logo-link,.network-brand-lockup){grid-column:1!important;grid-row:1!important;width:auto!important;min-width:0!important;max-width:min(440px,calc(100% - 8px))!important;margin:0!important;padding:0!important}
 header :is(nav,.main-nav,.site-nav,.header-cta,.hdr-cta,.nav-actions,.header-actions,.call){display:none!important}
 header :is(.net-menu-toggle,.menu-toggle,.menu-button,.nav-toggle,.hamburger,.seed-drawer-toggle,button.menu){display:inline-flex!important;grid-column:2!important;grid-row:1!important;position:static!important;inset:auto!important;transform:none!important;justify-self:end!important;align-self:center!important;margin:0!important;flex:0 0 44px!important;width:44px!important;min-width:44px!important;max-width:44px!important;height:44px!important;min-height:44px!important;padding:8px!important;font-size:0!important;line-height:1!important;overflow:hidden!important}
 header:has(> .seed-drawer-toggle)> .seed-drawer-toggle{display:none!important}
 header:has(> .seed-drawer-toggle) .net-menu-toggle{display:inline-flex!important}
 header :is(.net-menu-toggle,.menu-toggle,.menu-button,.nav-toggle,.hamburger,.seed-drawer-toggle,button.menu)::before{content:"☰";font-size:22px;line-height:1}
}

/* Prevent the combined bottom/top padding of adjacent homepage sections from
   looking like a missing component while preserving deliberate breathing room. */
body.home main>section,body:not([class]) main>section{margin-block:0!important}
main>#book+section,main>.booking-section+section{padding-top:min(48px,6vw)!important}
main>section:has(+ .owner-review-section),main>section:has(+ [data-owner-review-section]){padding-bottom:min(48px,6vw)!important}
main>#reviews,main>.owner-review-section,main>[data-owner-review-section]{padding-block:48px!important;margin-block:0!important}
@media(max-width:900px){main>#book+section,main>.booking-section+section{padding-top:36px!important}}
/* HEADER-CONTENT-GEOMETRY END */

/* NETWORK-LEGAL-LINKS */
.footer-legal-links{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;padding:14px 20px 20px;font-size:.86rem}.footer-legal-links a{color:inherit;text-underline-offset:3px}

/* Mandatory homepage content layer: 2026-08-23 */
.network-home-section{padding:clamp(54px,7vw,92px) 0;background:var(--cream,#f6f2ea);color:var(--ink,#17242b)}
.network-home-section:nth-of-type(even){background:var(--paper,#fff)}
.network-home-shell{width:min(1120px,calc(100% - 36px));margin:auto}
.network-home-kicker{margin:0 0 10px;text-transform:uppercase;letter-spacing:.13em;font-size:.78rem;font-weight:850;color:var(--accent,#9d6f38)}
.network-home-section h2{max-width:850px;margin:0 0 16px;font-size:clamp(1.8rem,4vw,3rem);line-height:1.08}
.network-home-section>.network-home-shell>p:not(.network-home-kicker){max-width:760px;line-height:1.72}
.network-link-grid,.network-problem-grid,.network-standard-grid,.network-review-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:28px}
.network-link-grid a,.network-problem-grid a,.network-standard-grid article,.network-review-card{min-width:0;padding:20px;border:1px solid color-mix(in srgb,var(--ink,#17242b) 15%,transparent);border-radius:16px;background:#fff;color:inherit;text-decoration:none;box-shadow:0 12px 28px rgba(15,31,39,.06)}
.network-link-grid a{display:flex;align-items:center;min-height:64px;font-weight:800}
.network-problem-grid a{display:flex;flex-direction:column;gap:8px}.network-problem-grid span{font-size:.9rem;opacity:.72}
.network-standard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.network-standard-grid h3{margin:0 0 8px}.network-standard-grid p{margin:0;line-height:1.65}
.network-review-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.network-review-card p{line-height:1.68}.network-review-stars{letter-spacing:.12em;color:var(--accent,#9d6f38);font-weight:900}.network-review-author{display:flex;justify-content:space-between;gap:12px;margin-top:18px;padding-top:14px;border-top:1px solid rgba(0,0,0,.1)}.network-review-author span{font-size:.82rem;text-align:right;opacity:.68}
.network-faq-list{display:grid;gap:12px;margin-top:26px}.network-faq-list details{border:1px solid color-mix(in srgb,var(--ink,#17242b) 16%,transparent);border-radius:14px;background:#fff;padding:0 20px}.network-faq-list summary{cursor:pointer;padding:18px 32px 18px 0;font-weight:850}.network-faq-list details p{margin:0;padding:0 0 20px;max-width:850px;line-height:1.7}
.network-home-v2 .network-link-grid,.network-home-v7 .network-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.network-home-v3 .network-review-card,.network-home-v8 .network-review-card{border-top:4px solid var(--accent,#9d6f38)}.network-home-v4 .network-standard-grid,.network-home-v9 .network-standard-grid{gap:24px}.network-home-v5 .network-home-shell,.network-home-v10 .network-home-shell{width:min(1040px,calc(100% - 36px))}
@media(max-width:900px){.network-link-grid,.network-problem-grid,.network-standard-grid,.network-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.network-home-section{padding:48px 0}.network-link-grid,.network-problem-grid,.network-standard-grid,.network-review-grid,.network-home-v2 .network-link-grid,.network-home-v7 .network-link-grid{grid-template-columns:1fr}.network-review-author{align-items:flex-start}}
