@font-face{font-family:"Oswald";font-style:normal;font-weight:200;font-display:swap;src:url("/assets/oswald-200.woff2") format("woff2")}
@font-face{font-family:"Oswald";font-style:normal;font-weight:300;font-display:swap;src:url("/assets/oswald-300.woff2") format("woff2")}
@font-face{font-family:"Oswald";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/oswald-400.woff2") format("woff2")}
@font-face{font-family:"Oswald";font-style:normal;font-weight:500;font-display:swap;src:url("/assets/oswald-500.woff2") format("woff2")}
@font-face{font-family:"Oswald";font-style:normal;font-weight:600;font-display:swap;src:url("/assets/oswald-600.woff2") format("woff2")}
@font-face{font-family:"Oswald";font-style:normal;font-weight:700;font-display:swap;src:url("/assets/oswald-700.woff2") format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:100;font-display:swap;src:url("/assets/inter-100.woff2") format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:200;font-display:swap;src:url("/assets/inter-200.woff2") format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:300;font-display:swap;src:url("/assets/inter-300.woff2") format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/inter-400.woff2") format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:500;font-display:swap;src:url("/assets/inter-500.woff2") format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;src:url("/assets/inter-600.woff2") format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:700;font-display:swap;src:url("/assets/inter-700.woff2") format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:800;font-display:swap;src:url("/assets/inter-800.woff2") format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:900;font-display:swap;src:url("/assets/inter-900.woff2") format("woff2")}


  :root{
    --char:#16181B; --char2:#1E2125; --ink:#0F1113; --grey:#3A3F45; --grey2:#5a6068;
    --amber:#FFB100; --amber-dk:#E89F00; --amber-glow:rgba(255,177,0,.28);
    /* cool whites only — no cream/beige */
    --fog:#F4F6F8; --surface:#ffffff; --cool:#E9EDF1; --line:#D8DEE4; --line-dk:rgba(255,255,255,.1);
    --disp:"Oswald",Impact,sans-serif; --sans:"Inter",system-ui,sans-serif; --wrap:1180px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{font-family:var(--sans);color:var(--ink);background:var(--fog);line-height:1.6;-webkit-font-smoothing:antialiased;padding-bottom:64px}
  .wrap{max-width:var(--wrap);margin:0 auto;padding:0 30px}
  a{color:inherit;text-decoration:none}
  h1,h2,h3{font-family:var(--disp);font-weight:700;line-height:1;letter-spacing:.005em;text-transform:uppercase;color:var(--ink)}
  .eyebrow{font:700 12px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--amber-dk);display:inline-flex;align-items:center;gap:11px}
  .eyebrow::before{content:"";width:24px;height:3px;background:var(--amber)}
  /* CSS-only photo placeholders (no remote img) */
  .ph{position:relative;background:linear-gradient(150deg,#2a2f35,#121417);overflow:hidden}
  .ph::after{content:attr(data-l);position:absolute;left:15px;bottom:13px;font:700 10px/1.3 var(--sans);letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.58)}
  .ph::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:24px 24px}
  .ph.amber{background:linear-gradient(150deg,#FFB100,#b87f00)}
  .ph.amber::after{color:rgba(20,16,0,.62)}

  .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:700 14px/1 var(--sans);letter-spacing:.02em;padding:15px 26px;cursor:pointer;transition:transform .14s ease,background .14s ease;border:2px solid transparent}
  .btn:hover{transform:translateY(-2px)}
  .btn-amber{background:var(--amber);color:var(--ink)}
  .btn-amber:hover{background:var(--amber-dk)}
  .btn-ghost{border-color:rgba(255,255,255,.34);color:#fff}
  .btn-ghost:hover{background:#fff;color:var(--ink);border-color:#fff}
  .btn-lg{padding:18px 34px;font-size:15.5px}
  .btn svg{width:18px;height:18px}
  /* big phone button — the family's loud amber CTA */
  .tap{display:inline-flex;align-items:center;gap:14px;background:var(--amber);color:var(--ink);font-family:var(--disp);font-weight:700;font-size:30px;letter-spacing:.01em;padding:16px 30px 16px 24px;text-transform:uppercase;transition:transform .14s ease,background .14s ease}
  .tap:hover{transform:translateY(-2px);background:var(--amber-dk)}
  .tap .ic{width:46px;height:46px;background:var(--ink);display:grid;place-items:center;flex:none}
  .tap .ic svg{width:24px;height:24px;color:var(--amber)}
  .tap .t{display:flex;flex-direction:column;line-height:1;text-align:left}
  .tap .t small{font:700 11px/1 var(--sans);letter-spacing:.16em;color:rgba(20,16,0,.66);margin-bottom:6px}

  @keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.78)}}
  @keyframes glow{0%,100%{box-shadow:0 0 0 0 var(--amber-glow)}50%{box-shadow:0 0 0 7px transparent}}
  .live{display:inline-flex;align-items:center;gap:9px;font:700 12.5px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase}
  .live .dot{width:11px;height:11px;border-radius:50%;background:var(--amber);animation:pulse 1.6s ease-in-out infinite,glow 1.6s ease-in-out infinite}

  /* TOPBAR — slim charcoal ops line */
  .topbar{background:var(--char);color:#cfd4da;font-size:12.5px;border-bottom:1px solid var(--line-dk)}
  .topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:9px 30px;letter-spacing:.03em}
  .topbar .l{display:flex;gap:22px;flex-wrap:wrap;align-items:center}
  .topbar .l .live{color:#fff}
  .topbar .l .live .dot{box-shadow:none}
  .topbar b{color:var(--amber)}

  /* NAV — charcoal control header */
  header.nav{position:sticky;top:0;z-index:40;background:rgba(22,24,27,.95);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);border-bottom:1px solid var(--line-dk)}
  .nav .wrap{display:flex;align-items:center;justify-content:space-between;padding:14px 30px}
  .brand{display:flex;align-items:center;gap:13px}
  .brand .mark{width:44px;height:44px;background:var(--amber);display:grid;place-items:center;position:relative}
  .brand .mark svg{width:25px;height:25px;color:var(--ink)}
  .brand .bn{font-family:var(--disp);font-weight:700;font-size:23px;letter-spacing:.01em;color:#fff;text-transform:uppercase}
  .brand .bn small{display:block;font:700 9px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--amber);margin-top:5px}
  nav.links{display:flex;gap:26px;font:700 13.5px/1 var(--sans);letter-spacing:.04em;text-transform:uppercase}
  nav.links a{padding:6px 0;color:#cfd4da;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}
  nav.links a:hover{color:#fff;border-color:var(--amber)}
  .nav-cta{display:flex;align-items:center;gap:18px}
  .nav-cta .num{font-family:var(--disp);font-weight:700;font-size:19px;color:#fff;letter-spacing:.02em}
  .nav-cta .btn-amber{padding:12px 20px}

  /* HERO — billboard alert, full-bleed charcoal */
  .hero{position:relative;background:var(--char);color:#fff;overflow:hidden;padding:78px 0 84px}
  .hero::before{content:"";position:absolute;inset:0;background:
     radial-gradient(120% 90% at 82% 0%,rgba(255,177,0,.10),transparent 55%),
     linear-gradient(180deg,#1b1e22,#121417);z-index:0}
  /* hi-vis hazard stripe edge — roadwork cue */
  .hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:8px;z-index:2;
     background:repeating-linear-gradient(115deg,var(--amber) 0 26px,var(--char) 26px 52px)}
  .hero .wrap{position:relative;z-index:1}
  .hero .alert{display:inline-flex;align-items:center;gap:12px;background:rgba(255,177,0,.12);border:1px solid rgba(255,177,0,.4);padding:9px 16px;margin-bottom:24px}
  .hero .alert .live .dot{width:9px;height:9px}
  .hero .alert b{font:700 12.5px/1.3 var(--sans);letter-spacing:.06em;color:var(--amber);text-transform:uppercase}
  .hero .alert span{font:500 12.5px/1.3 var(--sans);color:#cfd4da}
  .hero h1{font-size:72px;max-width:14ch;letter-spacing:.004em}
  .hero h1 em{color:var(--amber);font-style:normal}
  .hero .lead{font:500 19px/1.5 var(--sans);color:#cbd1d8;max-width:50ch;margin:24px 0 34px;text-transform:none}
  .hero .lead b{color:#fff;font-weight:700}
  .hero .cta-row{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
  .hero .answer{font:600 14px/1.4 var(--sans);color:#cbd1d8;display:flex;align-items:center;gap:9px}
  .hero .answer svg{width:18px;height:18px;color:var(--amber);flex:none}

  /* DISPATCH STATUS BAND — signature ops strip */
  .status{background:var(--char2);border-top:1px solid var(--line-dk);border-bottom:1px solid var(--line-dk)}
  .status .wrap{display:flex;align-items:center;flex-wrap:wrap;gap:0;padding:0 30px}
  .status .cell{display:flex;align-items:center;gap:12px;padding:20px 28px;flex:1 1 auto;border-right:1px solid var(--line-dk)}
  .status .cell:last-child{border-right:0}
  .status .cell .ix{width:34px;height:34px;border:2px solid var(--amber);display:grid;place-items:center;flex:none}
  .status .cell .ix svg{width:18px;height:18px;color:var(--amber)}
  .status .cell .tx{display:flex;flex-direction:column;line-height:1.2}
  .status .cell .tx b{font:700 13.5px/1.1 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:#fff}
  .status .cell .tx span{font:500 12px/1.2 var(--sans);color:#9aa1a9;margin-top:4px}
  .status .cell.open .tx b{color:var(--amber)}

  section{padding:90px 0}
  .head{max-width:680px}
  .head h2{font-size:42px;margin-top:14px;letter-spacing:.005em}
  .head p{color:var(--grey2);font:400 17px/1.55 var(--sans);margin-top:14px;text-transform:none}
  .center{margin:0 auto;text-align:center}
  .center .eyebrow{justify-content:center}

  /* RESPONSE TRACKER — horizontal amber-noded progress bar */
  .tracker{background:var(--fog)}
  .track{position:relative;margin-top:50px;display:grid;grid-template-columns:repeat(4,1fr)}
  .track::before{content:"";position:absolute;left:11%;right:11%;top:21px;height:4px;background:var(--cool);z-index:0}
  .track::after{content:"";position:absolute;left:11%;width:66%;top:21px;height:4px;background:var(--amber);z-index:1}
  .track .node{position:relative;z-index:2;text-align:center;padding:0 12px}
  .track .node .dot{width:46px;height:46px;border-radius:50%;background:var(--surface);border:4px solid var(--amber);display:grid;place-items:center;margin:0 auto 18px;position:relative}
  .track .node .dot svg{width:21px;height:21px;color:var(--ink)}
  .track .node .dot.done{background:var(--amber)}
  .track .node h3{font-size:21px}
  .track .node .step{font:700 11px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--amber-dk);display:block;margin-bottom:7px}
  .track .node .time{font:600 14.5px/1.4 var(--sans);color:var(--grey);margin-top:8px;text-transform:none}
  .track .node .time b{color:var(--ink)}
  .track-note{text-align:center;margin-top:38px;font:500 14px/1.5 var(--sans);color:var(--grey2)}

  /* WHEN TO CALL NOW — triage tiles, big amber-bordered buttons */
  .triage{background:var(--char);color:#fff}
  .triage .head h2{color:#fff}.triage .head p{color:#aab1b9}
  .triage .head .eyebrow{color:var(--amber)}
  .triage .grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:46px}
  .tile{display:flex;flex-direction:column;justify-content:space-between;gap:24px;min-height:184px;background:var(--char2);border:2px solid rgba(255,177,0,.34);padding:22px;transition:transform .15s ease,border-color .15s ease,background .15s ease}
  .tile:hover{transform:translateY(-4px);border-color:var(--amber);background:#23262b}
  .tile .ic{width:42px;height:42px;display:grid;place-items:center;background:rgba(255,177,0,.14);border:1px solid rgba(255,177,0,.4)}
  .tile .ic svg{width:22px;height:22px;color:var(--amber)}
  .tile .nm{font-family:var(--disp);font-weight:600;font-size:18px;line-height:1.05;text-transform:uppercase}
  .tile .call{font:700 11px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--amber);display:inline-flex;align-items:center;gap:7px;margin-top:10px}
  .tile .call::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--amber)}
  .triage .foot{margin-top:34px;text-align:center;font:500 15px/1.5 var(--sans);color:#cbd1d8}
  .triage .foot b{color:#fff}

  /* EMERGENCY SERVICES STRIP — action/verb tiles, charcoal + amber labels */
  .actions .grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:46px}
  .act{position:relative;background:var(--char);color:#fff;padding:26px 22px 22px;min-height:158px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;transition:transform .15s ease}
  .act:hover{transform:translateY(-4px)}
  .act::before{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:var(--amber)}
  .act .ic{width:38px;height:38px;display:grid;place-items:center;color:var(--amber)}
  .act .ic svg{width:30px;height:30px}
  .act .lab{font-family:var(--disp);font-weight:600;font-size:19px;color:var(--amber);text-transform:uppercase;line-height:1.04}
  .act .lab span{display:block;font:600 12px/1.3 var(--sans);color:#aab1b9;text-transform:none;margin-top:8px}
  .act .ph-link{font:700 11px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:#fff;display:inline-flex;align-items:center;gap:7px;margin-top:14px}
  .act .ph-link svg{width:14px;height:14px;color:var(--amber)}

  /* FAST PROOF BAND — speed-framed honest proof + one testimonial */
  .proof{background:var(--cool)}
  .proof .grid{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}
  .proof .points{display:grid;gap:16px;margin-top:32px}
  .proof .pt{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);padding:18px 20px}
  .proof .pt .ic{width:42px;height:42px;display:grid;place-items:center;background:var(--char);flex:none;position:relative}
  .proof .pt .ic::after{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:var(--amber)}
  .proof .pt .ic svg{width:18px;height:18px;color:var(--amber)}
  .proof .pt b{font:700 15px/1.3 var(--sans);display:block;color:var(--ink)}
  .proof .pt span{font:400 13.5px/1.5 var(--sans);color:var(--grey2);text-transform:none}
  .proof .quote{background:var(--char);color:#fff;padding:38px 36px;position:relative}
  .proof .quote .qm{font-family:var(--disp);font-size:60px;color:var(--amber);line-height:.5;display:block}
  .proof .quote blockquote{font:500 21px/1.45 var(--sans);color:#eef1f4;margin-top:18px;text-transform:none}
  .proof .quote cite{display:block;margin-top:22px;font:700 14px/1.5 var(--sans);font-style:normal;color:#fff;text-transform:none}
  .proof .quote cite span{display:block;color:#9aa1a9;font-weight:500;margin-top:3px}

  /* COVERAGE MAP — stylized SVG, amber pins, fastest-response framing */
  .cov .grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:54px;align-items:center}
  .cov .towns{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
  .cov .towns span{background:var(--surface);border:1px solid var(--line);padding:8px 15px;font:600 13.5px/1 var(--sans)}
  .cov .legend{display:flex;gap:22px;margin-top:22px;flex-wrap:wrap}
  .cov .legend .lg{display:inline-flex;align-items:center;gap:9px;font:600 13px/1 var(--sans);color:var(--grey)}
  .cov .legend .lg i{width:13px;height:13px;border-radius:50%;background:var(--amber);box-shadow:0 0 0 4px var(--amber-glow)}
  .cov .legend .lg.b i{background:var(--grey2);box-shadow:none}
  .mapwrap{position:relative;background:var(--char);border:1px solid var(--line-dk);padding:14px;overflow:hidden}
  .mapwrap svg{display:block;width:100%;height:auto}
  .mapwrap .tag{position:absolute;left:24px;top:24px;background:var(--amber);color:var(--ink);font:700 11px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;padding:8px 13px}
  @keyframes ping{0%{transform:scale(.7);opacity:.9}70%{transform:scale(2.6);opacity:0}100%{opacity:0}}
  .pin-ping{transform-box:fill-box;transform-origin:center;animation:ping 2.4s ease-out infinite}

  /* PHONE CTA FINAL — full charcoal band */
  .final{background:var(--char);color:#fff;text-align:center;position:relative;overflow:hidden}
  .final::before{content:"";position:absolute;inset:0;background:radial-gradient(90% 120% at 50% 0%,rgba(255,177,0,.12),transparent 60%)}
  .final .wrap{position:relative;z-index:1}
  .final h2{font-size:54px;color:#fff;letter-spacing:.006em}
  .final h2 em{color:var(--amber);font-style:normal}
  .final p{font:500 18px/1.5 var(--sans);color:#cbd1d8;margin:18px auto 34px;max-width:46ch;text-transform:none}
  .final .tap{margin:0 auto}
  .final .after{margin-top:26px;display:inline-flex;align-items:center;gap:12px;font:600 14px/1.4 var(--sans);color:#cbd1d8}
  .final .after .live .dot{width:9px;height:9px}
  .final .after b{color:#fff}

  /* FOOTER — control-board masthead, family chrome */
  footer{background:var(--ink);color:rgba(232,237,240,.62)}
  footer .top{border-top:4px solid var(--amber)}
  footer .mast{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;padding:46px 0 30px;border-bottom:1px solid var(--line-dk);flex-wrap:wrap}
  footer .mast .bn{font-family:var(--disp);color:#fff;font-size:30px;font-weight:700;text-transform:uppercase;letter-spacing:.01em}
  footer .mast .bn small{display:block;font:700 10px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--amber);margin-top:8px}
  footer .mast .say{font:600 16px/1.4 var(--sans);color:rgba(232,237,240,.85);max-width:32ch;text-align:right}
  footer .mast .say .live{color:var(--amber);margin-bottom:7px}
  footer .cols{display:grid;grid-template-columns:1fr 1fr 1fr 1.4fr;gap:30px;padding:34px 0}
  footer h4{color:#fff;font:700 12px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;margin-bottom:15px}
  footer ul{list-style:none;display:grid;gap:9px;font-size:14px}
  footer .contact b{color:var(--amber);font-family:var(--disp);font-size:22px;display:block;margin-bottom:6px}
  footer .copy{border-top:1px solid var(--line-dk);padding:18px 0 30px;font-size:12.5px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}

  /* STICKY BOTTOM CALL BAR — family chrome, site-wide */
  .callbar{position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--amber);color:var(--ink);box-shadow:0 -8px 24px -12px rgba(0,0,0,.5)}
  .callbar .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 30px;min-height:64px}
  .callbar .l{display:flex;align-items:center;gap:14px}
  .callbar .l .live .dot{background:var(--ink);box-shadow:none}
  .callbar .l .tx{display:flex;flex-direction:column;line-height:1.15}
  .callbar .l .tx b{font-family:var(--disp);font-weight:700;font-size:18px;text-transform:uppercase;letter-spacing:.02em}
  .callbar .l .tx span{font:600 12px/1 var(--sans)}
  .callbar .cb-btn{display:inline-flex;align-items:center;gap:11px;background:var(--ink);color:var(--amber);font-family:var(--disp);font-weight:700;font-size:21px;letter-spacing:.02em;text-transform:uppercase;padding:12px 22px;transition:transform .14s ease}
  .callbar .cb-btn:hover{transform:translateY(-2px)}
  .callbar .cb-btn svg{width:20px;height:20px}

  @media(prefers-reduced-motion:reduce){
    *{animation:none !important}
    .btn:hover,.tap:hover,.tile:hover,.act:hover,.cb-btn:hover{transform:none}
  }

  @media(max-width:920px){
    .hero h1{font-size:48px}
    .head h2{font-size:32px}.final h2{font-size:38px}
    .status .wrap{flex-direction:column;align-items:stretch}
    .status .cell{border-right:0;border-bottom:1px solid var(--line-dk);padding:16px 0}
    .status .cell:last-child{border-bottom:0}
    .triage .grid{grid-template-columns:repeat(2,1fr)}
    .actions .grid{grid-template-columns:repeat(2,1fr)}
    .proof .grid,.cov .grid{grid-template-columns:1fr;gap:36px}
    .track{grid-template-columns:1fr 1fr;gap:34px 12px}
    .track::before,.track::after{display:none}
    footer .cols{grid-template-columns:1fr 1fr}
    footer .mast{flex-direction:column;align-items:flex-start}
    footer .mast .say{text-align:left}
    nav.links,.topbar .l{display:none}
  }
  @media(max-width:760px){
    body{padding-bottom:74px}
    .wrap{padding:0 20px}
    .hero{padding:54px 0 60px}
    .hero h1{font-size:38px}
    .hero .lead{font-size:17px}
    .tap{font-size:24px;padding:14px 22px 14px 18px}
    .tap .ic{width:40px;height:40px}
    .triage .grid,.actions .grid{grid-template-columns:1fr}
    .track{grid-template-columns:1fr}
    .final h2{font-size:30px}
    footer .cols{grid-template-columns:1fr}
    .callbar .wrap{padding:9px 16px}
    .callbar .l .tx{display:none}
    .callbar .cb-btn{font-size:18px;padding:11px 18px}
  }

/* Approved PHP hero v2 and photo services v2, direct source port. */
.sr-hero{position:relative;color:#fff;overflow:hidden;background:var(--char)}
.sr-hero .wrap{position:relative;z-index:2}
.sr-hero-bg{position:absolute;inset:0;z-index:0}
.sr-hero-bg .sr-vimg,.sr-hero-bg .sr-ph{position:absolute;inset:0;min-height:0}
.sr-alert{display:inline-flex;align-items:center;gap:11px;margin-bottom:22px;flex-wrap:wrap}
.sr-topline{display:block;text-align:center;font:700 12.5px/1.5 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--amber);margin:0 0 16px;text-wrap:balance}
.sr-topline-under{margin:20px 0 0;max-width:46ch;text-align:center;white-space:nowrap} /* ONE LINE always (Alex): never wraps */
.sr-prof-top{display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:center}
.sr-ff-wide{margin-top:34px;background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--amber);padding:22px 24px}
.sr-ff-wide .sr-ff-grid{grid-template-columns:repeat(3,1fr)}
.sr-checklist .mk-sign svg{width:12px;height:12px;color:var(--amber-dk)}
.sr-alert .sr-live .dot{width:9px;height:9px}
.sr-alert .sub{font:500 12.5px/1.3 var(--sans);color:var(--on-dark-mut);text-transform:none}
.sr-alert .sub::before{content:"·";margin-right:9px;color:#6b7178}
.sr-hero h1{font-size:52px;max-width:24ch;letter-spacing:.004em;color:#fff;text-transform:uppercase;text-wrap:balance;font-family:var(--disp);font-weight:600;line-height:1.04}
.sr-hero h1 em{color:var(--amber);font-style:italic;letter-spacing:.01em} /* italic city accent (Alex 2026-07-24: "fancy italicized" pop) */
.sr-lead{font:500 18px/1.5 var(--sans);color:#cbd1d8;max-width:50ch;margin:22px 0 30px;text-transform:none}
.sr-hero .sr-lead b{color:#fff;font-weight:700}
.sr-cta-row{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.sr-hero-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.sr-callrow{display:inline-flex;align-items:center;gap:9px;margin-top:20px;font:600 15px/1.3 var(--sans);color:#cbd1d8;text-transform:none;flex-wrap:wrap}
.sr-cta-row .sr-callrow{margin-top:0}
.sr-callrow .lb{color:var(--on-dark-mut);font-weight:500}
.sr-callrow a{display:inline-flex;align-items:center;gap:8px;font-family:var(--disp);font-weight:600;font-size:20px;letter-spacing:.01em;color:var(--amber);text-transform:uppercase}
.sr-callrow a svg{width:17px;height:17px;color:var(--amber)}
.sr-callrow a:hover{color:#fff}
.sr-answer{font:600 14px/1.4 var(--sans);color:#cbd1d8;display:flex;align-items:center;gap:9px;text-transform:none;margin-top:22px}
.sr-answer svg{width:18px;height:18px;color:var(--amber);flex:none}
.sr-baseline{position:absolute;left:0;right:0;bottom:0;height:4px;z-index:3;background:var(--amber)}
.sr-heroV2{padding:40px 0 46px}
.sr-heroV2 .sr-hero-bg .sr-vimg.tint-side::after,.sr-heroV2 .sr-hero-bg .sr-vimg::after{background:linear-gradient(180deg,rgba(20,23,26,0) 55%,rgba(20,23,26,.42)),linear-gradient(95deg,rgba(20,23,26,.94),rgba(20,23,26,.78) 55%,rgba(20,23,26,.6))}
.sr-heroV2 .sr-hero-grid{display:grid;grid-template-columns:1.16fr .84fr;gap:56px;align-items:center}
.sr-heroV2 h1{font-size:56px;font-weight:700;line-height:1.01}
.sr-heroV2 .sr-alert{margin-bottom:16px}
.sr-heroV2 .sr-lead{margin:18px 0 0;max-width:46ch}
.sr-heroV2 .sr-callrow{margin-top:22px}
.sr-heroV2 .sr-bigform{padding:26px 26px 24px}
.sr-bigform h3{margin:0 0 16px}
.sr-svc-photo{background:var(--surface)}
.sr-svc-pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:46px}
.sr-actp{position:relative;color:#fff;min-height:240px;display:flex;flex-direction:column;justify-content:flex-end;padding:22px;overflow:hidden;transition:transform .15s ease}
.sr-vimg-card{position:relative;overflow:hidden}
.sr-actp:hover{transform:translateY(-4px)}
.sr-actp-ph{position:absolute;inset:0;z-index:0}
.sr-actp-ph .sr-vimg,.sr-actp-ph .sr-ph{position:absolute;inset:0;min-height:0}
.sr-actp-ph .sr-vimg.tint-dark::after{background:linear-gradient(165deg,rgba(20,23,26,.42),rgba(var(--amber-rgb),.30) 60%,rgba(20,23,26,.58))} /* deep-review 2026-07-23: slight site-accent hue on service-tile photos for text readability (FM reads blue via its palette var) */
.sr-actp::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(20,23,26,.16) 0%,rgba(20,23,26,.36) 45%,rgba(20,23,26,.68) 100%)} /* F99 (Alex 2026-07-22): photo tiles carried NO scrim — white text washed out on light imagery; charcoal-ink gradient, firm behind the text block, slight up top */
.sr-actp .sr-badge{position:absolute;top:14px;right:14px;z-index:3;width:36px;height:36px;background:var(--amber);display:grid;place-items:center}
.sr-actp .sr-badge svg{width:18px;height:18px;color:var(--ink)}
.sr-actp-bd{position:relative;z-index:3;display:flex;flex-direction:column}
.sr-actp-bd .lab{font-family:var(--disp);font-weight:600;font-size:21px;color:#fff;text-transform:uppercase;line-height:1.05}
.sr-actp-bd .sub{font:600 12.5px/1.4 var(--sans);color:#cfd4da;text-transform:none;margin-top:8px}
.sr-actp-bd .go{margin-top:14px;font:700 11px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--amber);display:inline-flex;align-items:center;gap:7px}
.sr-actp-bd .go::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--amber)}
.sr-svc-all{margin-top:34px}
/* Working controls and inner-page additions to the actual approved Storm Response components. */
:root{--heading-font:var(--disp);--body-font:var(--sans);--accent:var(--amber);--wash:var(--fog);--amber-rgb:255,177,0;--on-dark-mut:#cbd1d8;--muted:var(--grey2)}
[hidden]{display:none!important}html{scroll-padding-top:110px}img{display:block;max-width:100%;width:100%;height:100%;object-fit:cover}figure{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #007c9d;outline-offset:4px}button:disabled{opacity:.65;cursor:wait}.skip-link{position:fixed;top:-100px;left:16px;z-index:1000;background:white;color:#111;padding:12px}.skip-link:focus{top:12px}.ph.real:before,.ph.real:after{display:none}.ph.real img{position:absolute;inset:0}.nav .wrap{gap:20px}.brand .bn{line-height:1.1}.brand .bn small{line-height:1.2}nav.links{gap:16px;align-items:center;font-size:12px;letter-spacing:.02em}.nav-cta{gap:13px}.nav-cta .num{white-space:nowrap}.nav-cta .btn{font-size:12px;padding:12px 16px}.nav-group{position:relative}.nav-parent{display:flex;align-items:center;gap:1px}.nav-disclosure{display:grid;place-items:center;width:28px;height:34px;background:transparent;border:0;color:white}.nav-disclosure span{display:block;font-size:0;width:7px;height:7px;border-right:1.5px solid;border-bottom:1.5px solid;transform:translateY(-2px) rotate(45deg)}.nav-disclosure[aria-expanded=true] span{transform:translateY(2px) rotate(225deg)}.nav-panel{position:absolute;top:calc(100% + 16px);left:0;width:285px;background:var(--char);border:1px solid #4b5159;box-shadow:0 12px 30px #0003;padding:10px;z-index:80}.nav-panel a{display:block;line-height:1.4;padding:10px 12px!important;border:0!important;text-transform:none;font-size:14px}.nav-panel a:hover{background:var(--grey)}.menu-toggle{display:none;border:1px solid #67707a;background:transparent;color:white;padding:10px 12px;font-size:14px}.section-cta{display:inline-block;font-size:15px;font-weight:700;color:#785000;text-decoration:underline;text-underline-offset:4px;margin-top:22px;padding:5px 0;line-height:1.5}.section-cta:hover{color:var(--ink)}main p a{color:#785000;text-decoration:underline;text-underline-offset:3px}.triage p a,.scope-band p a{color:var(--amber)}p+p{margin-top:16px}.head h2{margin-top:0;line-height:1.12}.head p{line-height:1.75}.sr-hero-bg .ph{position:absolute;inset:0}.sr-hero-bg:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,23,26,0) 55%,rgba(20,23,26,.42)),linear-gradient(95deg,rgba(20,23,26,.94),rgba(20,23,26,.78) 55%,rgba(20,23,26,.6))}.hero-brand{display:inline-flex;align-items:center;gap:11px;color:var(--amber);font:700 12px/1.4 var(--sans);text-transform:uppercase;letter-spacing:.14em;margin-bottom:21px}.hero-brand:before{content:'';width:26px;height:2px;background:var(--amber)}.sr-hero-grid>*{min-width:0}.sr-hero .sr-lead p{font:inherit;margin:0}.sr-hero .sr-lead p+p{margin-top:14px}.sr-topline-under{white-space:normal;text-align:left;line-height:1.6;margin-top:25px}.sr-hero .sr-callrow a{font-size:25px}.tracker{background:var(--fog)}.tracker .head{max-width:800px}.track .node h3{font-size:25px;line-height:1.15}.track .node .dot{font:600 21px var(--disp)}.track:after{width:auto;right:11%}.track .node .time{font:400 16px/1.75 var(--sans);text-align:left;margin-top:17px}.track .node{padding:0 17px}.tracker>.wrap>.section-cta{display:table;margin:27px auto 0}.triage .head{max-width:800px}.triage .grid{grid-template-columns:repeat(4,minmax(0,1fr))}.tile h3{color:white;font-size:25px;line-height:1.15}.tile p{color:#cbd1d8;font-size:15px;line-height:1.7;margin-top:14px}.tile .nm{font-size:24px}.triage .section-cta{color:var(--amber)}.sr-svc-pgrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.sr-actp{min-height:310px;padding:25px}.sr-actp-ph .ph{position:absolute;inset:0}.sr-actp-ph .ph:after{display:block;content:'';position:absolute;inset:0;background:linear-gradient(165deg,rgba(20,23,26,.42),rgba(255,177,0,.22) 60%,rgba(20,23,26,.58))}.sr-actp-bd .lab{font-size:28px;line-height:1.1}.sr-actp-bd .sub{font-weight:400;font-size:16px;line-height:1.65;color:#edf0f3;margin-top:13px}.sr-actp-bd .go{font-size:11px;line-height:1.4}.sr-actp-bd p{line-height:inherit}.sr-badge svg{width:20px;height:20px}.sr-svc-all .section-cta{color:#785000}.feature{background:white}.feature-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}.feature-grid>*{min-width:0}.feature .text-only{display:block;max-width:800px;margin:auto}.feature h2{font-size:38px;line-height:1.14;margin-bottom:23px}.feature p{font-size:17px;line-height:1.8}.feature .ph{aspect-ratio:4/3}.compare{background:var(--cool)}.compare-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:36px}.compare-grid article{background:white;border:1px solid var(--line);padding:28px}.compare-mark{width:40px;height:40px;display:grid;place-items:center;background:var(--char);color:var(--amber);margin-bottom:20px}.compare-mark svg{width:23px;height:23px}.compare-grid h3{font-size:27px;line-height:1.13;margin-bottom:18px}.compare-grid p{font-size:16px;line-height:1.8}.prose{max-width:790px;margin:auto}.prose-section{background:white}.prose-section h2{font-size:34px;line-height:1.16;margin-bottom:23px}.prose-section p{font-size:17px;line-height:1.85}.prose-section ul{padding-left:24px;margin-top:18px}.prose-section li+li{margin-top:12px}.cov .head{max-width:none}.cov .mapwrap{padding:10px}.cov .mapwrap img{height:auto;aspect-ratio:8/5}.cov figcaption,figcaption{font-size:12px;line-height:1.6;color:var(--grey2);margin-top:10px}figcaption a{text-decoration:underline}.scope-band{background:var(--char);color:#fff;border-top:5px solid var(--amber);padding:44px 0}.scope-band .wrap{display:grid;grid-template-columns:1.4fr .6fr;gap:50px;align-items:center}.scope-band h2{color:white;font-size:36px;line-height:1.14;margin-bottom:18px}.scope-band p{color:#cbd1d8;line-height:1.8}.scope-band .section-cta{padding:17px 24px;background:var(--amber);color:var(--ink);text-decoration:none;margin:0}.faq{background:var(--fog)}.faq-list{max-width:900px;margin-top:35px}.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq summary{font:600 24px/1.2 var(--disp);cursor:pointer;padding-right:18px}.faq details p{font-size:16px;line-height:1.8;margin-top:18px}.editorial-open{padding:58px 0 38px;border-bottom:1px solid var(--line)}.editorial-open .eyebrow{color:#785000}.editorial-open h1{font-size:48px;line-height:1.12;margin:20px 0 24px}.editorial-open .lead{font-size:20px;line-height:1.75;color:var(--grey)}.article-meta{font-size:13px;color:var(--grey2);margin-top:23px}.article-image{max-width:980px;height:365px;margin:35px auto 0}.editorial-page .prose-section{padding:40px 0}.editorial-page .feature{padding:44px 0}.editorial-page .feature-grid{display:block;max-width:790px;margin:auto}.editorial-page .feature figure{margin-top:25px}.editorial-page .compare{padding:45px 0}.editorial-page .compare>.wrap{max-width:940px}.editorial-page .head{max-width:790px}.editorial-page .tracker{padding:45px 0}.editorial-page .track{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.editorial-page .track:before,.editorial-page .track:after{display:none}.editorial-page .final{margin-top:30px}.final h2{max-width:900px;margin:auto;font-size:47px;line-height:1.1}.final-copy p{max-width:55ch;line-height:1.7}.final .sr-callrow{display:flex;justify-content:center;margin:28px auto 0;max-width:none;font-size:15px}.final .sr-callrow a{color:var(--amber);text-decoration:none}.sr-cta-form{max-width:560px;margin:28px auto 0;text-align:left}.final .lead-form p{max-width:none;text-align:left;margin:0 0 15px;font-size:14px;line-height:1.6;color:var(--grey2)}.final .lead-form h2{font-size:24px;line-height:1.2;color:var(--ink);margin:0 0 10px}.final .lead-form .form-status{margin:14px 0 0}.final .lead-form .form-status:empty{display:none}.final .lead-form .form-progress{font-size:12px}.callbar .bar-actions{display:flex;align-items:center;gap:22px}.bar-inspect{font-size:14px;font-weight:700;text-decoration:underline}.callbar .cb-btn{font-size:21px}footer .cols h2{color:#fff;font:700 12px/1.4 var(--sans);letter-spacing:.1em;text-transform:uppercase;margin-bottom:16px}footer ul,footer .contact p,footer .copy{color:#b9c1c9}footer .contact p{font-size:14px;margin-top:12px}footer .section-cta{color:var(--amber)}footer a:hover{text-decoration:underline}
.lead-form{padding:26px 26px 24px;background:white;border:0;border-top:5px solid var(--amber);color:var(--ink);box-shadow:0 22px 60px #0003;scroll-margin-top:125px}.lead-form h2{font:600 24px/1.2 var(--disp);margin:0 0 10px;color:var(--ink)}.lead-form .form-intro{font-size:14px;line-height:1.6;color:var(--grey2);margin:0 0 18px}.lead-form label{display:block;font-size:13px;font-weight:600;margin-bottom:12px}.lead-form label span{font-weight:400}.lead-form input:not([type=checkbox]),.lead-form select,.lead-form textarea{width:100%;display:block;padding:12px 13px;background:var(--fog);border:1px solid #a5adb5;color:var(--ink);font-size:15px;min-height:44px;margin-top:5px}.lead-form textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.form-grid>*{min-width:0}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--amber);border:0;color:var(--ink);min-height:46px;padding:12px 20px;font-weight:700;line-height:1.3}.lead-form .button{width:100%;font-size:14px}.lead-form .button:hover{background:var(--amber-dk)}.lead-form .button span{margin-left:10px}.lead-form .consent{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.6;margin:15px 0}.lead-form .consent input{flex:none;width:17px;height:17px;margin-top:2px}.consent a{text-decoration:underline;color:var(--ink)}.honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-progress{font-size:12px;margin-bottom:12px;color:var(--grey2)}.form-back{display:block;border:0;background:transparent;color:var(--ink);text-decoration:underline;font-size:13px;margin-top:10px;padding:6px 0}.form-status{font-size:13px;line-height:1.5;margin-top:12px}.form-status:empty{display:none}.turnstile-slot{display:none}.turnstile-slot[data-turnstile-sitekey]{display:block;min-width:300px;min-height:65px}.lead-form [aria-invalid=true]{border-color:#b52222!important;outline-color:#b52222}
.cost-section{background:var(--cool)}.ks-calculator{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin-top:35px;background:white;border-top:5px solid var(--amber);padding:30px}.ks-calc-controls label{display:block;font-weight:700;font-size:14px;margin-top:20px}.ks-calc-controls label:first-child{margin-top:0}.ks-calc-controls input,.ks-calc-controls select{display:block;margin-top:7px;width:100%;padding:11px;border:1px solid #a5adb5;background:var(--fog);font-size:16px}.ks-calc-help{font-size:13px;color:var(--grey2);line-height:1.6;margin-top:8px}.ks-calc-result{align-self:center}.ks-calc-result output{display:block;font:600 40px/1.1 var(--disp);color:var(--ink);margin:18px 0}.ks-calc-result p{font-size:15px;line-height:1.7}.ks-calc-result .eyebrow{color:#785000}.ks-calc-result .button{margin-top:24px}.ks-source{font-size:13px;line-height:1.6;margin-top:20px;color:var(--grey2)}.ks-model-method{margin-top:18px;border-top:1px solid var(--line);padding-top:18px}.ks-model-method summary{cursor:pointer;font-weight:700}.ks-model-method p{font-size:14px;line-height:1.75;margin-top:16px}.ks-model-method a{text-decoration:underline}
@media(max-width:1200px){.nav .wrap{flex-wrap:wrap}.menu-toggle{display:block;margin-left:auto}nav.links{display:none;flex-basis:100%;order:3;flex-direction:column;align-items:stretch;gap:0;padding:10px 0}nav.links.open{display:flex}.nav-panel{position:static;width:100%;box-shadow:none;margin:3px 0 9px}.nav-parent{justify-content:space-between}.nav-parent>a,nav.links>a{padding:12px 0}.nav-disclosure{width:44px;height:44px}}
@media(max-width:920px){.sr-heroV2 .sr-hero-grid{grid-template-columns:1fr;gap:32px}.sr-heroV2{padding:40px 0 50px}.sr-heroV2 h1{font-size:46px}.feature-grid{grid-template-columns:1fr;gap:30px}.sr-svc-pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.track .node{padding:0 10px}.scope-band .wrap{grid-template-columns:1fr;gap:24px}.ks-calculator{gap:25px;padding:24px}.topbar .wrap{justify-content:center}.callbar .l .tx span{display:none}}
@media(max-width:560px){body{padding-bottom:68px}.wrap{padding-inline:22px}.nav .wrap{padding:12px 18px}.brand{gap:10px}.brand .mark{width:35px;height:35px}.brand .bn{font-size:23px}.brand .bn small{font-size:8px;letter-spacing:.2em}.nav-cta{display:none}.topbar .wrap{padding:7px 18px;font-size:12px}.sr-heroV2{padding:32px 0 42px}.sr-heroV2 h1{font-size:40px;max-width:22ch;line-height:1.06;text-wrap:initial}.hero-brand{font-size:10px;letter-spacing:.09em;margin-bottom:17px}.sr-hero .sr-lead{font-size:17px;line-height:1.7;margin-top:20px}.sr-topline-under{font-size:11px;letter-spacing:.04em;margin-top:20px}.sr-hero .sr-callrow{margin-top:15px}.sr-hero .sr-callrow a{font-size:23px}.lead-form{padding:22px 19px}.lead-form h2{font-size:25px}.form-grid{grid-template-columns:1fr;gap:0}.lead-form input,.lead-form select,.lead-form textarea{font-size:16px!important}section{padding:52px 0}.head h2,.feature h2{font-size:32px}.head p{font-size:16px}.track{margin-top:32px;grid-template-columns:1fr;gap:30px}.track .node{text-align:left;padding:0}.track .node .dot{margin:0 0 17px}.track .node .time{margin-top:13px}.track .node h3{font-size:26px}.triage .grid{grid-template-columns:1fr;margin-top:30px}.tile{min-height:0;gap:20px;padding:24px}.tile .nm{font-size:27px}.tile p{font-size:16px}.sr-svc-pgrid{grid-template-columns:1fr;margin-top:30px}.sr-actp{min-height:300px}.sr-actp-bd .lab{font-size:29px}.compare-grid{grid-template-columns:1fr;gap:22px;margin-top:26px}.compare-grid article{padding:25px}.feature h2,.prose-section h2{font-size:31px}.feature p,.prose-section p{font-size:17px;line-height:1.8}.cov .grid{gap:27px}.scope-band h2{font-size:31px}.faq-list{margin-top:22px}.faq summary{font-size:25px}.editorial-open{padding:32px 0 28px}.editorial-open h1{font-size:38px;line-height:1.13}.editorial-open .lead{font-size:18px}.article-image{height:240px;margin-top:28px}.editorial-page .prose-section{padding:30px 0}.editorial-page .track{grid-template-columns:1fr}.final h2{font-size:36px;line-height:1.15}.final p{font-size:17px}.final .sr-callrow{font-size:14px}.final .sr-callrow a{font-size:23px}.ks-calculator{grid-template-columns:1fr;padding:20px}.ks-calc-result output{font-size:35px}.ks-calc-result .eyebrow{font-size:10px;letter-spacing:.12em}footer .cols{grid-template-columns:1fr 1fr;gap:28px 22px}footer .contact{grid-column:1/-1}footer .mast .bn{font-size:28px}.callbar .l{display:none}.callbar .wrap{padding:8px 14px;min-height:64px;display:block}.callbar .bar-actions{justify-content:space-between;gap:12px}.bar-inspect{font-size:12px}.callbar .cb-btn{font-size:18px;padding:11px 14px;gap:9px}.callbar .cb-btn svg{width:17px;height:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Error-page label: dark amber retains family color with readable contrast. */
.studio-error .eyebrow{color:#785000}


/* Assigned phone: explicit boxed control in the existing reference header. */
.nav-cta .num{border:1px solid var(--amber);padding:10px 12px;white-space:nowrap;background:transparent;color:var(--amber);line-height:1.2}

/* Site-owned operator revision: purpose-specific reading sections. */

.sr-introduction{padding:70px 0 62px;background:var(--surface)}.sr-introduction h2{font-size:46px;line-height:1.12;max-width:900px;margin-bottom:36px}.intro-body{display:grid;grid-template-columns:.82fr 1.18fr;gap:52px;align-items:start}.intro-body figure{background:var(--char)}.intro-body .ph{height:350px}.intro-body figcaption{padding:24px 26px;border-bottom:5px solid var(--amber);color:white}.intro-body figcaption strong{display:block;font:600 25px/1.2 var(--disp);text-transform:uppercase}.intro-body figcaption span{display:block;font-size:15px;line-height:1.65;margin-top:10px;color:#e1e5e9}.intro-conversation p{font-size:18px;line-height:1.85}.intro-conversation p:first-child{font-size:20px;line-height:1.75}.intro-assurance{font:600 26px/1.4 var(--disp);text-transform:uppercase;border-top:1px solid var(--line);padding-top:24px;margin-top:32px;color:var(--ink)}.sr-damage-depth{padding:66px 0;background:var(--cool)}.sr-damage-depth h2,.sr-building-scope h2,.sr-edge-detail h2,.sr-condition h2{font-size:38px;line-height:1.15;max-width:870px}.damage-reading{display:grid;grid-template-columns:.7fr 1.3fr;gap:48px;margin-top:34px;align-items:start}.depth-illustration{background:var(--char);padding:30px 24px;color:white;position:sticky;top:110px}.depth-label{font-size:14px;margin-bottom:25px;padding-bottom:15px;border-bottom:1px dashed #7c8287;color:#e1e5e9}.roof-layer{padding:19px 15px;margin-top:8px;font:600 21px/1.25 var(--disp);color:var(--ink);text-transform:uppercase;background:var(--amber);border-bottom:4px solid #a96e00}.connection{background:#d9e1e7;border-color:#a8b5bf;margin-inline:9px}.supporting{background:#aebdc8;border-color:#8295a3;margin-inline:18px}.depth-illustration p{font-size:15px;line-height:1.7;margin-top:24px;color:#e1e5e9}.damage-reading article+article{margin-top:26px;border-top:1px solid #c4cdd5;padding-top:26px}.damage-reading h3{font-size:25px;line-height:1.2;margin-bottom:12px}.damage-reading article p,.building-scope-body p,.edge-reading p,.condition-body p{font-size:17px;line-height:1.85}.sr-building-scope{padding:66px 0;background:var(--surface)}.building-scope-body{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;margin-top:30px}.building-scope-body dl{border-left:5px solid var(--amber);background:var(--fog)}.building-scope-body dl>div{padding:22px 26px;border-bottom:1px solid var(--line)}.building-scope-body dt{font:600 25px/1.2 var(--disp);text-transform:uppercase}.building-scope-body dd{font-size:16px;line-height:1.7;margin-top:10px}.sr-edge-detail{padding:66px 0;background:var(--surface)}.edge-flow{display:flex;align-items:center;gap:22px;background:var(--char);border-left:5px solid var(--amber);padding:28px 32px;margin:32px 0}.edge-flow span{font:600 25px/1.2 var(--disp);color:white;text-transform:uppercase;flex:1}.edge-flow b{color:var(--amber);font-size:25px}.edge-reading{display:grid;grid-template-columns:1fr 1fr;gap:45px}.edge-reading h3{font-size:26px;margin-bottom:14px}.sr-condition{padding:62px 0;background:var(--fog)}.condition-body{margin-top:30px;display:grid;grid-template-columns:1fr 1fr;gap:30px}.condition-body article{border-top:4px solid var(--amber);background:var(--surface);padding:26px 28px}.condition-body article:last-child:nth-child(odd){grid-column:1/-1}.condition-body h3{font-size:25px;line-height:1.25;margin-bottom:15px}.sr-condition.request-note{background:var(--surface)}.request-note .wrap{max-width:1050px}.request-note .condition-body{display:block;border-left:5px solid var(--amber);padding-left:28px}.request-note .condition-body article{border:0;padding:0 0 22px;background:none}.request-note .condition-body article+article{border-top:1px solid var(--line);padding-top:22px}.request-note .condition-body h3{font-size:24px}.sr-article-note{padding:42px 0}.sr-article-note .wrap{display:grid;grid-template-columns:minmax(0,750px) 235px;gap:45px;justify-content:center}.sr-article-note .prose{max-width:none;margin:0}.sr-article-note aside{align-self:start;background:var(--char);border-top:5px solid var(--amber);padding:25px;font:500 24px/1.45 var(--disp);color:#fff}
@media(max-width:900px){.intro-body{gap:32px;grid-template-columns:1fr 1.1fr}.intro-body .ph{height:300px}.damage-reading{gap:28px;grid-template-columns:.8fr 1.2fr}.building-scope-body{gap:30px}.sr-article-note .wrap{grid-template-columns:1fr}.sr-article-note aside{max-width:700px}.edge-flow{gap:15px;padding:25px}.edge-flow span{font-size:23px}}
@media(max-width:600px){.sr-introduction,.sr-damage-depth,.sr-building-scope,.sr-edge-detail,.sr-condition{padding:44px 0}.sr-introduction h2{font-size:35px;margin-bottom:27px}.intro-body,.damage-reading,.building-scope-body,.edge-reading,.condition-body{grid-template-columns:1fr;gap:26px}.intro-conversation{grid-row:1}.intro-conversation p{font-size:17px}.intro-conversation p:first-child{font-size:19px}.intro-body .ph{height:250px}.intro-body figcaption{padding:23px}.intro-assurance{font-size:23px;line-height:1.4}.sr-damage-depth h2,.sr-building-scope h2,.sr-edge-detail h2,.sr-condition h2{font-size:31px}.depth-illustration{position:static;padding:25px}.roof-layer{font-size:20px}.damage-reading h3{font-size:24px}.edge-flow{flex-direction:column;align-items:flex-start;gap:10px;padding:24px}.edge-flow b{transform:rotate(90deg);margin-left:12px}.edge-flow span{font-size:24px}.condition-body article{padding:23px}.condition-body h3{font-size:24px}.request-note .condition-body{padding-left:22px}.sr-article-note{padding:32px 0}.sr-article-note .wrap{gap:24px}.sr-article-note aside{font-size:23px}}

.brand>.brand-mark-approved{width:44px;height:44px;flex:none}.footer-identity{display:flex;align-items:center;gap:16px}.footer-identity>.brand-mark-approved{width:48px;height:48px;flex:none}.brand .mark{display:none}@media(max-width:560px){.brand>.brand-mark-approved{width:36px;height:36px}.footer-identity{align-items:flex-start}.footer-identity>.brand-mark-approved{width:38px;height:38px}}

/* Existing-roof identification and repair budgets use the storm family's ruled detail language. */
.sr-system-identification{padding:68px 0;background:#f4f5f5}.sr-system-identification>.wrap>p{max-width:72ch}.sr-system-identification dl{margin:32px 0}.sr-system-identification dl>div{display:grid;grid-template-columns:270px 1fr;gap:36px;border-top:1px solid #b9bfc1;padding:26px 0}.sr-system-identification dt b{display:block;font-weight:800;font-size:28px;color:#171d22}.sr-system-identification dt span{display:block;margin-top:7px;font-size:15px}.sr-system-identification dd{margin:0;max-width:72ch;line-height:1.8}.repair-budgets{margin-top:42px;padding-top:28px;border-top:1px solid #5c646a}.repair-budgets>h3{font-size:24px;color:#ffb100}.repair-budgets dl>div{display:grid;grid-template-columns:220px 1fr;gap:30px;padding:21px 0;border-bottom:1px solid #5c646a}.repair-budgets dt{font-weight:800;color:white}.repair-budgets dd{margin:0;line-height:1.7}.repair-budgets dd strong,.repair-budgets dd span{display:block}.repair-budgets dd span{margin-top:7px;color:#e0e4e7}@media(max-width:700px){.sr-system-identification dl>div,.repair-budgets dl>div{grid-template-columns:1fr;gap:12px}.sr-system-identification{padding:44px 0}}

.repair-budgets{padding:30px;background:#16181b;color:#fff}.repair-budgets dd strong{color:#fff}@media(max-width:700px){.repair-budgets{padding:24px 20px}}

/* Resources: three practical tools/guides, then two longer articles. */
@media(min-width:900px){.sr-resource-cards .sr-svc-pgrid{grid-template-columns:repeat(6,minmax(0,1fr))}.sr-resource-cards .sr-actp{grid-column:span 2}.sr-resource-cards .sr-actp:nth-child(n+4){grid-column:span 3}}
@media(min-width:561px) and (max-width:899px){.sr-resource-cards .sr-svc-pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.sr-resource-cards .sr-actp:first-child{grid-column:1/-1}}

/* Resources are task destinations; Blog is the article collection. */
.resource-page{--resource-accent:var(--rust,#ab5328);--resource-dark:var(--slate,#26333d);--resource-pale:var(--cool,#eef2f4);background:#fff}
.resource-page a:focus-visible,.reading-trail a:focus-visible{outline:3px solid currentColor;outline-offset:5px}
.resource-trail,.reading-trail{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:14px;line-height:1.5}
.resource-trail a,.reading-trail a{text-decoration:underline;text-underline-offset:4px}
.reading-trail{padding-top:26px;padding-bottom:0}
.resource-opening{padding:28px 0 44px;background:var(--resource-pale);border-bottom:1px solid var(--line)}
.resource-opening-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(250px,.85fr);gap:64px;align-items:start;margin-top:30px}
.resource-kind-directory .resource-opening-grid,.resource-kind-blog-index .resource-opening-grid{display:block;max-width:850px}
.resource-opening h1{font-size:clamp(34px,4vw,54px);line-height:1.09;max-width:22ch;text-wrap:balance}
.resource-intro{font-size:18px;line-height:1.65;margin-top:20px;max-width:68ch}
.resource-answer{padding:24px 26px;background:#fff;border:1px solid var(--line);border-radius:3px}
.resource-answer h2{font-size:24px;line-height:1.15;margin:0 0 12px}
.resource-answer p{font-size:16px;line-height:1.65;margin:0}
.resource-jumps{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}
.resource-jumps a{font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:4px;padding:5px 0}
.resource-page section{scroll-margin-top:130px}
.resource-directory,.resource-blog{padding:54px 0 64px}
.resource-directory h2,.resource-blog h2{font-size:32px;line-height:1.2;margin:0 0 28px}
.resource-destinations,.resource-articles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.resource-destination,.resource-articles article{min-width:0;background:#fff}
.resource-photo{display:block;overflow:hidden}
.resource-photo img{display:block;width:100%;height:auto;aspect-ratio:1.85;object-fit:cover;transition:transform 180ms ease-out}
.resource-photo:hover img{transform:scale(1.025)}
.resource-destination-copy,.resource-article-copy{padding:24px 0 0}
.resource-destination h3,.resource-articles h3{font-size:29px;line-height:1.18;margin:0 0 14px;text-wrap:balance}
.resource-destination p,.resource-articles p{font-size:17px;line-height:1.7;max-width:65ch;margin:0 0 20px}
.resource-action{display:inline-flex;align-items:center;min-height:44px;padding:10px 18px;background:var(--resource-accent);color:#fff;font-size:15px;font-weight:700;line-height:1.5;border-radius:3px}
.resource-action:hover{background:var(--resource-dark);color:#fff}
.resource-date.resource-date{font-size:13px;font-weight:600;margin-bottom:12px;color:var(--muted,#505760)}
.resource-bridge{padding:38px 0;background:var(--resource-pale);border-top:1px solid var(--line)}
.resource-bridge>.wrap{display:flex;align-items:center;justify-content:space-between;gap:32px}
.resource-bridge h2{font-size:29px;line-height:1.15;margin:0 0 12px;max-width:30ch}
.resource-bridge p{font-size:17px;line-height:1.65;max-width:65ch;margin:0}
.resource-bridge .resource-action{flex:none}
.resource-reading{padding:56px 0;background:#fff}
.resource-reading-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr);gap:60px}
.resource-reading h2{font-size:31px;line-height:1.15;max-width:20ch}
.resource-prose{font-size:17px;line-height:1.8;max-width:72ch}
.resource-prose p+p{margin-top:18px}
.resource-prose a{text-decoration:underline;text-underline-offset:4px}
.resource-prose .section-cta{display:inline-block;margin-top:20px}
.resource-official{background:var(--resource-pale)}
.resource-official .resource-reading-grid{padding:30px;background:white;border:1px solid var(--line)}
@media(max-width:850px){.resource-opening-grid{grid-template-columns:1fr;gap:26px}.resource-answer{max-width:700px}.resource-reading-grid{grid-template-columns:1fr;gap:22px}.resource-reading h2{max-width:32ch}.resource-bridge>.wrap{align-items:flex-start;flex-direction:column;gap:20px}}
@media(max-width:560px){.resource-opening{padding:22px 0 30px}.resource-opening-grid{margin-top:24px}.resource-opening h1{font-size:35px}.resource-intro{font-size:17px}.resource-answer{padding:20px}.resource-jumps{gap:6px 20px}.resource-destinations,.resource-articles{grid-template-columns:1fr;gap:38px}.resource-directory,.resource-blog,.resource-reading{padding:36px 0}.resource-directory h2,.resource-blog h2{font-size:29px}.resource-destination h3,.resource-articles h3{font-size:27px}.resource-official .resource-reading-grid{padding:22px}.resource-reading h2{font-size:28px}.resource-prose{font-size:16px;line-height:1.8}.resource-bridge{padding:30px 0}.resource-bridge h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){.resource-photo img{transition:none}.resource-photo:hover img{transform:none}}

.resource-storm-response{--resource-accent:var(--amber);--resource-dark:var(--char);--resource-pale:var(--fog)}.resource-storm-response .resource-opening{background:var(--char);color:#fff;border-bottom:5px solid var(--amber)}.resource-storm-response .resource-opening h1{color:#fff;max-width:24ch;font-size:clamp(36px,4.4vw,58px)}.resource-storm-response .resource-answer{background:var(--char2);border:1px solid #50545b}.resource-storm-response .resource-answer h2{color:var(--amber)}.resource-storm-response .resource-jumps{border-color:#50545b}.resource-storm-response .resource-jumps a{color:var(--amber)}.resource-storm-response .resource-destinations{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.resource-storm-response .resource-destination{border-bottom:3px solid var(--amber);background:var(--fog)}.resource-storm-response .resource-destination-copy{padding:26px}.resource-storm-response .resource-destination h3{font-size:29px}.resource-storm-response .resource-action{color:var(--char);border-radius:2px}.resource-storm-response .resource-action:hover{background:#e59e00;color:var(--char)}.resource-storm-response .resource-articles{gap:44px}.resource-storm-response .resource-articles article{background:var(--fog)}.resource-storm-response .resource-article-copy{padding:28px}.resource-storm-response .resource-blog h3{font-size:31px;line-height:1.13}.resource-storm-response .resource-official{background:var(--fog)}.resource-storm-response .resource-official .resource-reading-grid{border:0}.resource-storm-response .resource-reading h2{font-size:32px}.resource-storm-response .resource-bridge{border-top:3px solid var(--amber)}@media(max-width:900px){.resource-storm-response .resource-destinations{grid-template-columns:1fr}.resource-storm-response .resource-destination{display:grid;grid-template-columns:1fr 1.3fr}.resource-storm-response .resource-destination .resource-photo img{height:100%}}@media(max-width:560px){.resource-storm-response .resource-destination{display:block}.resource-storm-response .resource-opening h1{font-size:36px}.resource-storm-response .resource-article-copy,.resource-storm-response .resource-destination-copy{padding:23px}.resource-storm-response .resource-blog h3{font-size:29px}}

.resource-kind-tool .resource-opening-grid{grid-template-columns:1fr;max-width:920px}.resource-calculator{padding:42px 0 50px}.resource-calculator> .wrap>h2{font-size:32px;line-height:1.2;margin:0 0 24px;max-width:34ch}.resource-calculator-notes{max-width:74ch;margin:28px auto 0;font-size:16px;line-height:1.75}.resource-calculator-notes p+p{margin-top:16px}@media(max-width:560px){.resource-calculator{padding:32px 0}.resource-calculator> .wrap>h2{font-size:28px}}

:root{--experience-ink:#16181b;--experience-accent:#ffb100;--experience-paper:#fff}
/* Site-owned explanatory tools extend the pinned family; they do not replace its shell. */
.roof-experience,.weather-history,.weather-teaser,.sv-upgrade,.sv-commercial-ledger,.sr-repair-timeline{padding:80px 0;scroll-margin-top:130px}
.experience-heading{max-width:790px;margin-bottom:36px}.experience-heading h2,.weather-heading h2{margin:0 0 20px}.experience-heading p{max-width:72ch}
.roof-experience [hidden],.weather-history [hidden],.sv-upgrade [hidden]{display:none!important}
.choice-controls{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 28px}.choice-controls button,.weather-controls button,.sv-upgrade button{font:inherit;font-weight:700;min-height:48px;padding:12px 18px;border:1px solid currentColor;cursor:pointer;line-height:1.3;background:transparent;color:inherit;border-radius:3px}
.choice-controls button[aria-pressed=true]{background:var(--experience-ink);color:var(--experience-paper);border-color:var(--experience-ink)}
.choice-controls button:hover,.weather-controls button:hover,.sv-upgrade button:hover{box-shadow:0 3px 8px #00000018}
.roof-experience :focus-visible,.weather-history :focus-visible,.weather-teaser :focus-visible,.sv-upgrade :focus-visible{outline:3px solid var(--experience-accent);outline-offset:4px}
.choice-stage{display:grid;grid-template-columns:1.16fr 1fr;gap:42px;align-items:center}.choice-figure{margin:0}.choice-figure svg{width:100%;height:auto;display:block}.choice-figure figcaption{font-size:13px;line-height:1.55;margin-top:12px;max-width:62ch}.choice-panel h3{font-size:26px;line-height:1.15;margin:0 0 18px}.choice-panel p{font-size:16px;line-height:1.75;margin:0 0 18px;max-width:70ch}.choice-reading{min-width:0}.choice-panel+.choice-panel{margin-top:30px}.choice-panel:not([hidden]){margin-top:0}.choice-implication{font-weight:650;padding-top:18px;border-top:1px solid #89949b}.roof-experience>.wrap>.section-cta{display:inline-block;margin-top:28px}
.choice-figure [data-diagram-part]{transition:opacity .18s ease-out,stroke-width .18s ease-out}.choice-experience[data-enhanced] .choice-figure [data-diagram-part]{opacity:.23}.choice-experience[data-enhanced] .choice-figure .is-active{opacity:1;filter:drop-shadow(0 3px 2px #26333d25)}
.lc-roof-explorer{background:#eef2f4}.lc-water-explorer{background:#26333d;color:#fff}.lc-water-explorer .section-cta{color:#ffd0ad}.lc-water-explorer .choice-controls button[aria-pressed=true]{color:#26333d;background:#fff;border-color:#fff}.lc-water-explorer .choice-figure figcaption{color:#d5e0e7}.lc-water-explorer .choice-panel h3{color:#fff}
.sv-shingle-studio{background:#f5f6f7}.shingle-photo-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:36px}.shingle-photo-strip figure{margin:0}.shingle-photo-strip img{width:100%;aspect-ratio:1.6;object-fit:cover;display:block}.shingle-photo-strip figcaption{font-weight:800;font-size:18px;margin-top:12px}.sv-material-tabs .choice-stage,.sv-choice-workbench .choice-stage{display:block}.sv-material-tabs .choice-panel{display:grid;grid-template-columns:280px 1fr;column-gap:48px}.sv-material-tabs .choice-panel h3{grid-row:1/6}.sv-material-tabs .choice-panel p{max-width:72ch}.sv-project-choices{background:#20242b;color:#fff}.sv-project-choices .experience-heading h2,.sv-project-choices .choice-panel h3{color:#fff}.sv-project-choices .choice-controls button[aria-pressed=true]{background:#b72a2a;border-color:#d94343;color:#fff}.sv-project-choices .section-cta{color:#fff}.sv-choice-workbench .choice-panel{max-width:860px;border-top:1px solid #67707b;padding-top:28px}.sv-choice-workbench .choice-panel h3{max-width:28ch;font-size:32px}
.sv-upgrade{background:#f5f6f7}.sv-upgrade>.wrap{display:grid;grid-template-columns:1fr 1.05fr;gap:56px;align-items:start}.sv-upgrade h2{font-size:34px}.sv-upgrade p{line-height:1.75}.upgrade-workspace{background:#fff;padding:32px;box-shadow:0 10px 28px #20242b0c}.upgrade-inputs{display:grid;grid-template-columns:1fr 1fr;gap:20px}.upgrade-inputs label{display:block;font-weight:700;font-size:15px}.upgrade-inputs input{display:block;width:100%;border:1px solid #87909a;padding:12px;font:inherit;margin:9px 0 20px;min-height:48px}.sv-upgrade button[type=submit]{background:#b72a2a;color:#fff;border-color:#b72a2a}.sv-upgrade .upgrade-reset{margin-left:8px}.upgrade-workspace output{display:block;margin-top:24px;font-size:20px;line-height:1.6;font-weight:700;min-height:95px}.upgrade-workspace .upgrade-privacy{font-size:13px;color:#535d68;margin-bottom:0}
.sv-commercial-ledger{background:#20242b;color:#fff}.sv-commercial-ledger h2,.sv-commercial-ledger h3{color:#fff}.sv-commercial-ledger header{display:grid;grid-template-columns:1fr 1.4fr;gap:45px;margin-bottom:35px}.sv-commercial-ledger header h2{grid-row:1/4}.sv-commercial-ledger header p{max-width:68ch}.commercial-ledger-lines{border-top:1px solid #78808a}.commercial-ledger-lines>div{display:grid;grid-template-columns:1fr 1.4fr;gap:45px;border-bottom:1px solid #78808a;padding:24px 0}.commercial-ledger-lines h3{font-size:23px;margin:0}.commercial-ledger-lines p{margin:0;line-height:1.75}.sv-commercial-ledger .section-cta{color:#fff}
.sr-concern-section{background:#16181b;color:#fff}.sr-concern-section h2,.sr-concern-section h3{color:#fff}.sr-concerns .choice-stage{display:block}.sr-concerns .choice-panel{background:#f4f6f8;color:#16181b;padding:32px 40px;display:grid;grid-template-columns:280px 1fr;column-gap:48px}.sr-concerns .choice-panel h3{color:#16181b;grid-row:1/6;font-size:32px}.sr-concerns .choice-controls button[aria-pressed=true]{background:#ffb100;color:#16181b;border-color:#ffb100}.sr-concerns .choice-panel .choice-implication{font-size:15px}.sr-concerns .choice-panel .section-cta{color:#16181b}.sr-shingle-forces{background:#f4f6f8}.sr-commercial-water{background:#f4f6f8}.sr-repair-timeline{background:#fff}.sr-permanent-sequence{display:flex;gap:24px;margin-top:35px;border-top:2px solid #16181b;padding-top:24px}.sr-permanent-sequence>div{flex:1}.sr-permanent-sequence>div>span{display:block;font:700 30px Oswald,sans-serif;color:#16181b;margin-bottom:14px}.sr-permanent-sequence h3{font-size:22px}.sr-permanent-sequence p{line-height:1.7;font-size:15px}
.weather-heading{max-width:850px;margin-bottom:34px}.weather-browser-layout{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.6fr);gap:48px;align-items:start}.weather-plot{margin:0}.weather-plot>figcaption{font-weight:750;font-size:20px;line-height:1.3;margin:0 0 25px}.weather-bar-row{display:grid;grid-template-columns:55px 1fr 52px;gap:12px;align-items:center;min-height:46px;text-decoration:none!important;color:inherit!important;font-size:15px;font-variant-numeric:tabular-nums}.weather-year-label{font-weight:700}.weather-bar-track{display:flex;height:17px;align-items:center;background:#e2e6e9}.weather-bar-track i{height:100%;display:block}.hail-bar{background:var(--experience-accent)}.wind-bar{background:var(--experience-ink)}.weather-bar-value{text-align:right;font-weight:700}.weather-chart-note{font-size:13px;line-height:1.6;margin:22px 0 0}.weather-legend{display:inline-flex;align-items:center;gap:6px;margin-right:12px}.weather-legend:before{content:'';width:10px;height:10px;display:inline-block}.hail-key:before{background:var(--experience-accent)}.wind-key:before{background:var(--experience-ink)}.weather-scope{padding:26px 0;margin-top:25px;border-top:1px solid #a2aab2}.weather-scope h3{font-size:22px;line-height:1.25;margin:0 0 16px}.weather-scope p{font-size:14px;line-height:1.75;margin:0 0 18px}.weather-status{font-weight:650;line-height:1.6;margin:0 0 22px}.weather-year{border-top:1px solid #9ca7b0;scroll-margin-top:130px}.weather-year:last-of-type{border-bottom:1px solid #9ca7b0}.weather-year>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:22px 0;cursor:pointer;color:inherit;font-size:24px;font-weight:700}.weather-year>summary:after{content:'+';font-size:26px;font-weight:400}.weather-year[open]>summary:after{content:'−'}.weather-year>summary>span:nth-child(2){font-size:14px;font-weight:500;margin-left:auto}.weather-year>summary::-webkit-details-marker{display:none}.weather-table-wrap{overflow:auto}.weather-year table{width:100%;border-collapse:collapse;background:#fff;color:#20242b;font-size:13px}.weather-year caption{text-align:left;font-weight:650;padding:0 0 15px}.weather-year th,.weather-year td{text-align:left;vertical-align:top;padding:14px 10px;border-bottom:1px solid #d4dbe0;line-height:1.55}.weather-year thead{background:var(--experience-ink);color:var(--experience-paper)}.weather-year td small{display:block;margin-top:5px;font-size:12px}.weather-year td a{white-space:nowrap}.weather-empty-note{font-size:13px;line-height:1.65;margin-top:24px}.weather-controls{display:flex;align-items:end;gap:20px;padding:22px 26px;margin-bottom:32px;background:#e9edf0;flex-wrap:wrap;color:#16181b}.weather-controls label{font-size:14px;font-weight:700;flex:1;min-width:145px}.weather-controls select{display:block;width:100%;min-height:48px;padding:10px 30px 10px 12px;font:inherit;background:#fff;color:#16181b;border:1px solid #83909b;margin-top:8px;border-radius:0}.weather-controls button{min-height:48px}.weather-teaser>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.weather-teaser h2{margin:0 0 22px}.weather-teaser p{line-height:1.7}.weather-teaser .weather-teaser-scope{font-size:13px;margin-top:24px;max-width:62ch}.weather-teaser .weather-plot{padding:30px;background:#fff;color:#20242b}.weather-teaser{background:#eef2f4}
.weather-local-craftsman .weather-plot{padding:26px;background:#eef2f4}.weather-local-craftsman .weather-year>summary{font-family:'Zilla Slab',serif}.weather-summit-value .weather-browser-layout{grid-template-columns:1fr 1.5fr}.weather-summit-value .weather-overview{background:#f5f6f7;padding:30px}.hail-size-plot .weather-bar-row{grid-template-columns:55px 1fr 55px;gap:14px}.hail-size-plot .weather-bar-track{background:transparent;border-bottom:1px solid #c5cbd0;height:21px}.hail-size-line{height:3px!important;background:#b72a2a;position:relative;align-self:center}.hail-size-line:after{content:'';position:absolute;right:0;top:-5px;width:13px;height:13px;background:#b72a2a;border-radius:50%}.weather-storm-response .weather-browser-layout{grid-template-columns:1fr}.weather-storm-response .weather-overview{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;background:#16181b;color:#fff;padding:40px}.weather-storm-response .weather-scope{margin:0;border:0;padding:0}.weather-storm-response .weather-scope h3,.weather-storm-response .weather-scope a{color:#fff}.weather-storm-response .weather-overview .wind-bar,.weather-storm-response .weather-overview .wind-key:before{background:#c2cbd2}.weather-storm-response .weather-overview .weather-bar-track{background:#3d454d}.weather-storm-response .weather-bar-row[data-selected]{outline:1px solid #ffb100;outline-offset:3px}.weather-storm-response .weather-year>summary{font-family:Oswald,sans-serif}.weather-storm-response .weather-controls{border-top:4px solid #ffb100}
@media(prefers-reduced-motion:reduce){.choice-figure [data-diagram-part]{transition:none}}
@media(max-width:800px){.roof-experience,.weather-history,.weather-teaser,.sv-upgrade,.sv-commercial-ledger,.sr-repair-timeline{padding:52px 0}.choice-stage,.weather-browser-layout,.weather-summit-value .weather-browser-layout,.weather-teaser>.wrap,.sv-upgrade>.wrap,.weather-storm-response .weather-overview{grid-template-columns:1fr;gap:28px}.choice-stage{align-items:start}.choice-controls{gap:8px}.choice-controls button{padding:10px 12px;flex:1 1 auto;font-size:14px}.choice-panel h3{font-size:25px}.experience-heading{margin-bottom:25px}.choice-figure{max-width:620px}.sv-material-tabs .choice-panel,.sr-concerns .choice-panel{display:block}.sr-concerns .choice-panel{padding:26px 23px}.sv-choice-workbench .choice-panel h3{font-size:27px}.shingle-photo-strip{gap:12px}.shingle-photo-strip figcaption{font-size:14px}.shingle-photo-strip img{aspect-ratio:.95}.upgrade-workspace{padding:24px}.upgrade-inputs{grid-template-columns:1fr;gap:0}.sv-upgrade .upgrade-reset{margin-top:10px}.weather-controls{padding:20px;gap:18px}.weather-controls label{flex-basis:100%}.weather-storm-response .weather-overview{padding:26px 22px}.weather-summit-value .weather-overview{padding:24px}.weather-year table,.weather-year tbody,.weather-year tr,.weather-year th,.weather-year td{display:block;width:100%}.weather-year thead{display:none}.weather-year tbody tr{padding:16px 0;border-top:1px solid #aab2b8}.weather-year tbody th,.weather-year tbody td{padding:4px 10px;border:0}.weather-year tbody th{font-size:16px}.weather-year td[data-label=Measurement]:before{content:'Reported: ';font-weight:650}.weather-year td[data-label=Source]{padding-top:12px;padding-bottom:8px}.weather-year td a{display:inline-block;min-height:28px}.weather-year caption{display:block;padding-top:10px}.weather-year>summary{font-size:23px}.weather-bar-row{grid-template-columns:52px 1fr 36px;gap:10px}.weather-teaser .weather-plot{padding:22px}.sr-permanent-sequence{display:block;border:0;padding:0}.sr-permanent-sequence>div{display:grid;grid-template-columns:32px 1fr;gap:18px;border-top:1px solid #9aa4ac;padding:22px 0}.sr-permanent-sequence h3{margin:3px 0 12px}.sr-permanent-sequence p{margin:0 0 14px}.sv-commercial-ledger header,.commercial-ledger-lines>div{display:block}.sv-commercial-ledger header{margin-bottom:24px}.commercial-ledger-lines h3{margin-bottom:14px}}

.experience-heading h2,.weather-heading h2{font-size:36px;line-height:1.12}.weather-overview .weather-plot>figcaption{color:inherit}.shingle-photo-strip{margin-bottom:42px}.sv-choice-table{overflow:auto;margin:22px 0;grid-column:1/-1}.sv-choice-table table{width:100%;border-collapse:collapse;font-size:14px;color:#fff}.sv-choice-table th,.sv-choice-table td{padding:16px 14px;vertical-align:top;border:1px solid #75818f;text-align:left;line-height:1.6}.sv-choice-table caption{text-align:left;margin-bottom:12px;font-weight:700}.sv-choice-table thead{background:#333a43}.sv-choice-table td{min-width:160px}.weather-year td a{min-height:32px;padding-block:4px}@media(max-width:800px){.experience-heading h2,.weather-heading h2{font-size:29px}.sv-choice-table table{font-size:13px}.sv-choice-table td{min-width:140px}}
/* Contact: storm-response call rail and centered open request. */
/* Operator-directed legacy contact composition, within Local Craftsman. */
.sr-contact-hero{position:relative;isolation:isolate;background:var(--char);padding:70px 0;color:#fff}
.sr-contact-backdrop{position:absolute;inset:0;z-index:-1}.sr-contact-backdrop:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#15232de8,#15232da6)}.sr-contact-backdrop img{object-fit:cover}
.sr-contact-hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}.sr-contact-hero-grid>*{min-width:0}.sr-contact-hero h1{font-size:clamp(40px,4.3vw,60px);line-height:1.06;max-width:none;margin:0 0 25px;color:#fff}.sr-contact-hero header>p{font-size:19px;line-height:1.7;max-width:44ch}.sr-contact-call{background:#fff;color:var(--char);border-color:#fff;font-size:16px;margin-top:27px}.sr-contact-call:hover{background:var(--cool);border-color:var(--cool)}.sr-contact-hero header>.sr-contact-offer{font-size:14px;line-height:1.6;margin-top:18px;color:#e2e9ed}
.sr-contact-form-card{background:#fff;color:var(--ink);border-top:4px solid var(--amber)}.sr-contact-form-card .lead-form{padding:28px 30px 18px;margin:0;border:0;max-width:none}.sr-contact-form-card .lead-form h2{font-size:29px;line-height:1.1;margin-bottom:12px}.sr-contact-relationship{font-size:12px;line-height:1.6;margin:0!important;padding:0 30px 25px;color:var(--grey2)}
.sr-contact-methods{padding-top:66px;padding-bottom:68px;text-align:center}.sr-contact-methods h2{font-size:38px;line-height:1.13;margin:0 0 23px}.sr-contact-methods>p{max-width:70ch;margin:0 auto;font-size:17px;line-height:1.75}.sr-contact-method-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:36px auto 0;max-width:900px}.sr-contact-method-grid article{border:1px solid var(--line);border-top:3px solid var(--amber);padding:29px 30px 25px;background:#fff}.sr-contact-method-grid h3{font-size:28px;line-height:1.2;margin-bottom:15px}.sr-contact-method-grid p{font-size:16px;line-height:1.75}.sr-contact-method-grid .section-cta{margin-top:15px}
.sr-contact-place{background:var(--cool);padding:60px 0}.sr-contact-place>.wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center}.sr-contact-place h2{font-size:36px;line-height:1.12;margin-bottom:22px}.sr-contact-place p{font-size:17px;line-height:1.75}.sr-contact-place img{height:auto;aspect-ratio:8/5;object-fit:contain}.sr-contact-place figcaption{font-size:12px;line-height:1.5;margin-top:8px}.sr-contact-place figcaption a{color:inherit;text-decoration:underline}
.sr-contact-close{padding:60px 0 65px;background:var(--amber);color:#fff;text-align:center}.sr-contact-close h2{font-size:40px;line-height:1.1;margin-bottom:20px;color:#fff}.sr-contact-close p{max-width:56ch;margin:0 auto;font-size:18px;line-height:1.7}.sr-contact-number{display:block;width:max-content;max-width:100%;font:700 34px/1.2 var(--disp);margin:25px auto 0;color:#fff}.sr-contact-close .sr-contact-call{margin-top:23px}
@media(max-width:900px){.sr-contact-hero-grid{gap:35px}.sr-contact-hero{padding:48px 0}.sr-contact-form-card .lead-form{padding:25px 22px 18px}.sr-contact-relationship{padding:0 22px 23px}.sr-contact-hero h1{font-size:44px}.sr-contact-place>.wrap{gap:35px}}
@media(max-width:700px){.sr-contact-hero{padding:33px 0 38px}.sr-contact-hero-grid{grid-template-columns:1fr;gap:28px}.sr-contact-hero h1{font-size:39px;max-width:15ch;margin-bottom:18px}.sr-contact-hero header>p{font-size:17px;line-height:1.65}.sr-contact-hero .sr-contact-call{margin-top:21px}.sr-contact-hero header>.sr-contact-offer{font-size:13px;margin-top:14px}.sr-contact-form-card .lead-form h2{font-size:27px}.sr-contact-methods{padding-top:40px;padding-bottom:42px}.sr-contact-methods h2,.sr-contact-place h2{font-size:32px}.sr-contact-method-grid{grid-template-columns:1fr;gap:20px;margin-top:26px}.sr-contact-method-grid article{padding:25px 24px}.sr-contact-place{padding:42px 0}.sr-contact-place>.wrap{grid-template-columns:1fr;gap:28px}.sr-contact-close{padding:42px 0 45px}.sr-contact-close h2{font-size:34px}.sr-contact-close p{font-size:17px}.sr-contact-number{font-size:31px}.sr-contact input,.sr-contact button,.sr-contact select,.sr-contact textarea{scroll-margin-bottom:95px}}

.sr-contact-hero h1{font-size:64px;letter-spacing:.005em;max-width:16ch}.sr-contact-form-card .lead-form h2{font-family:var(--disp);font-size:33px}.sr-contact-call{background:var(--amber);border-color:var(--amber);color:var(--char)}.sr-contact-method-grid article{border-top:0;border-left:4px solid var(--amber);text-align:left}.sr-contact-methods>p:last-child{margin-top:25px;font-size:14px}.sr-contact-close,.sr-contact-close h2,.sr-contact-number{color:var(--char)}.sr-contact-close .sr-contact-call{background:var(--char);border-color:var(--char);color:#fff}@media(max-width:700px){.sr-contact-hero h1{font-size:44px}.sr-contact-form-card .lead-form h2{font-size:29px}}

/* Developed answers use the owning family's type, palette and section vocabulary. */
.depth-section{padding:60px 0}.depth-section h2{font-size:clamp(30px,3.3vw,43px);line-height:1.12;margin-bottom:23px;max-width:32ch}.depth-section header>p,.depth-section>.wrap>p{max-width:78ch;font-size:17px;line-height:1.75}.depth-section header{margin-bottom:30px}.depth-section p+p{margin-top:17px}.depth-section dl{margin:0}.depth-section dt{font-weight:700}.depth-section dd{margin:0;font-size:16px;line-height:1.75}.roof-warranty{background:#eef2f4}.warranty-reading>div{display:grid;grid-template-columns:.5fr 1fr;gap:50px;padding:24px 0;border-top:1px solid #b8c1c8}.warranty-reading dt{font-size:22px;line-height:1.2}.roof-warranty.summit-value .warranty-reading{display:grid;grid-template-columns:1fr 1fr;gap:0 48px}.roof-warranty.summit-value .warranty-reading>div{display:block}.roof-warranty.summit-value dt{margin-bottom:14px}.roof-warranty.storm-response{background:#f4f6f8}.roof-warranty.storm-response dt{font-family:var(--disp);font-size:25px;font-weight:600}.roof-warranty.local-craftsman dt{font-family:var(--slab);font-size:26px}.claim-payment{background:#fff}.claim-bases{display:grid;grid-template-columns:1fr 1fr;gap:46px;padding-bottom:30px}.claim-bases dt{font-size:23px;margin-bottom:13px;line-height:1.2}.claim-example{background:#eef2f4;padding:28px 32px;max-width:950px;margin:0 0 28px}.claim-example figcaption{font-size:15px;font-weight:650;line-height:1.6;max-width:78ch;margin-bottom:16px}.claim-example dl>div{display:grid;grid-template-columns:1fr auto;gap:25px;align-items:center;padding:12px 0;border-top:1px solid #b9c3cb}.claim-example dt{font-size:16px;line-height:1.5;font-weight:500}.claim-example dd{font-size:25px;line-height:1.3;font-weight:750;font-variant-numeric:tabular-nums}.claim-example dl>div:last-child{border-top:2px solid #687984}.claim-example dl>div:last-child dt{font-weight:700}.claim-payment.summit-value .claim-example{border-top:3px solid var(--red)}.claim-payment.storm-response .claim-example{border-top:3px solid var(--amber)}.claim-payment.local-craftsman .claim-example{border-top:3px solid var(--rust)}.claim-explanation{max-width:80ch}.claim-explanation p{font-size:16px;line-height:1.8}.depth-source{font-size:13px;line-height:1.65;margin-top:23px;color:#4f5c66}.depth-source p{font-size:13px;line-height:1.65}.depth-source a{color:inherit;text-decoration:underline;text-underline-offset:3px}.depth-source p+p{margin-top:8px}.repair-price-context{margin:29px 0 35px;padding:29px 32px;background:#fff;border:1px solid #b7c1c9;color:#202a31}.repair-price-context h3{font-size:26px;line-height:1.16;margin-bottom:15px;color:inherit}.repair-price-context>p{font-size:15px;line-height:1.7;max-width:82ch}.repair-price-context table,.material-budget table{border-collapse:collapse;text-align:left;width:100%;margin:22px 0}.repair-price-context th,.repair-price-context td,.material-budget th,.material-budget td{padding:14px 20px;border-bottom:1px solid #bac5cf;font-size:16px;line-height:1.5;vertical-align:top}.repair-price-context thead,.material-budget thead{background:#e6ecf0}.repair-price-context tbody th,.material-budget tbody th{font-weight:550}.repair-price-context td{white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:650}.material-budget{background:#eef2f4}.material-budget>.wrap{max-width:1050px}.material-budget table{background:#fff}.material-budget th:first-child{width:48%}.material-budget td{font-variant-numeric:tabular-nums}.resource-decisions{background:#edf1f4}.resource-decisions>.wrap>div{display:grid;grid-template-columns:1fr 1fr;gap:50px}.resource-decisions article{padding:20px 0;border-top:1px solid #aebcc6}.resource-decisions h3{font-size:25px;line-height:1.2;margin-bottom:14px}.resource-decisions h3 a{color:inherit;text-decoration:underline;text-underline-offset:5px}.resource-decisions p{font-size:16px;line-height:1.65;max-width:58ch}
@media(max-width:750px){.depth-section{padding:40px 0}.depth-section h2{font-size:32px;max-width:100%}.warranty-reading>div,.claim-bases,.resource-decisions>.wrap>div{grid-template-columns:1fr;gap:16px}.roof-warranty.summit-value .warranty-reading{grid-template-columns:1fr;gap:0}.warranty-reading>div{padding:21px 0}.claim-bases{gap:23px}.claim-example{padding:20px 18px}.claim-example dl>div{gap:14px;align-items:start}.claim-example dd{font-size:23px}.claim-example dt{font-size:14px}.repair-price-context{padding:23px 16px}.repair-price-context th,.repair-price-context td,.material-budget th,.material-budget td{padding:12px 9px;font-size:14px}.repair-price-context td{white-space:normal}.repair-price-context table{table-layout:fixed}.repair-price-context th:first-child{width:62%}.resource-decisions>.wrap>div{gap:10px}.material-budget th:first-child{width:43%}}

/* September 14 centered FAQ composition, replacing the side-heading treatment. */
.faq{background:#fff;padding:66px 0 70px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.faq .faq-layout{display:block;max-width:850px;margin:0 auto}.faq .head,.faq .sec-head{display:block;text-align:center;max-width:850px;margin:0 auto 32px}.faq .head h2,.faq .sec-head h2{max-width:100%;margin:0 auto 18px;font-size:38px;line-height:1.15}.faq .head p,.faq .sec-head p{max-width:65ch;margin:0 auto 14px}.faq .faq-list,.faq .faq-layout>div:last-child{max-width:850px;margin:0 auto}.faq details,.faq details:first-child{padding:0;margin:0 0 12px;border:1px solid var(--line);background:var(--cool)}.faq summary{display:flex;position:relative;align-items:center;justify-content:center;list-style:none;text-align:center;padding:23px 64px 23px 30px;font-size:22px;line-height:1.3;min-height:72px;cursor:pointer}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:23px;top:50%;transform:translateY(-50%);font:400 27px/1 Arial,sans-serif}.faq details[open]{background:#fff}.faq details[open] summary:after{content:"−"}.faq details[open] summary{border-bottom:1px solid var(--line)}.faq details p{margin:0;padding:20px 30px 0;font-size:16px;line-height:1.8;text-align:left}.faq details p:last-child{padding-bottom:24px}.faq details p+p{padding-top:14px}.faq>.wrap>.section-cta{display:table;margin:24px auto 0}@media(max-width:700px){.faq{padding:42px 0 46px}.faq .head,.faq .sec-head{margin-bottom:25px}.faq .head h2,.faq .sec-head h2{font-size:31px}.faq summary{font-size:20px;padding:20px 49px 20px 19px;min-height:70px}.faq summary:after{right:17px}.faq details p{padding:18px 20px 0;font-size:16px}.faq details p:last-child{padding-bottom:22px}}

.faq{background:var(--fog)}.faq details,.faq details:first-child{background:#fff;border:0;border-bottom:2px solid var(--line)}.faq summary{font-family:var(--sans);text-transform:none;font-size:19px;font-weight:650;letter-spacing:0}.faq summary:after{background:var(--amber);width:30px;height:30px;text-align:center;color:var(--char)}.faq details[open]{border-bottom-color:var(--amber)}.faq details[open] summary{border-bottom-color:var(--line)}

.material-budget{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.sr-contact-form-card .lead-form{box-shadow:none;border-radius:0}@media(max-width:700px){.sr-contact-hero header>.sr-contact-call{display:none}}

/* September 16: explicit next steps have visible, rectangular click targets. */
body .btn.section-cta{display:inline-flex;align-items:center;justify-content:center;max-width:100%;min-height:48px;padding:13px 21px;border:2px solid var(--amber);border-radius:0;background:var(--amber);color:var(--ink);font:700 14px/1.45 var(--sans);letter-spacing:0;text-align:center;text-decoration:none;white-space:normal;margin-top:22px}
body .btn.section-cta:hover{background:var(--amber-dk);border-color:var(--amber-dk);color:var(--ink);text-decoration:none}
body .btn.section-cta.btn-outline{background:transparent;border-color:var(--char);color:var(--char)}
body .btn.section-cta.btn-outline:hover{background:var(--char);color:#fff}
.sr-svc-all{text-align:center}.sr-svc-all .section-cta{margin-top:0}
.sr-actp-bd .go{align-self:flex-start;justify-content:center;min-height:44px;padding:10px 12px;border:1px solid var(--amber);border-radius:0;color:var(--amber);font:700 12px/1.3 var(--sans);letter-spacing:0;text-transform:none;text-align:center}.sr-actp-bd .go:before{display:none}.sr-actp:hover .go,.sr-actp:focus-visible .go{background:var(--amber);color:var(--ink)}
.service-system-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}body .service-system-links .btn.section-cta{margin-top:0}
.sr-callrow a.btn{min-height:48px;padding:10px 17px;border:1px solid var(--amber);border-radius:0;text-decoration:none;line-height:1.25}
.sr-callrow a.btn:hover{background:var(--amber);color:var(--ink)}.sr-callrow a.btn:hover svg{color:var(--ink)}
.sr-contact-number{border:2px solid currentColor;padding:12px 22px;text-decoration:none}.sr-contact-number:hover{background:var(--char);border-color:var(--char);color:#fff}


.callbar .bar-inspect{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;border:2px solid var(--ink);border-radius:0;text-decoration:none;line-height:1.2;text-align:center}
.callbar .bar-inspect:hover{background:var(--ink);color:var(--amber)}
@media(max-width:560px){body .btn.section-cta{padding:12px 17px}.callbar .bar-inspect{padding:10px;font-size:12px}.callbar .cb-btn{font-size:17px;padding:11px 12px}.callbar .bar-actions{gap:10px}.sr-callrow a.btn{font-size:22px}.service-system-links{gap:10px}}

/* September 16 operator correction: normal full forms, designed into the page. */
.sr-heroV2 .sr-hero-grid,.sr-contact-hero-grid{grid-template-columns:minmax(0,1fr) minmax(460px,1fr);gap:56px;align-items:center}
.sr-heroV2 .sr-hero-copy{max-width:540px}
.lead-form.lead-form-full{border-radius:0}
.lead-form-full .form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 14px}
.lead-form-full .form-grid.form-address-row{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr)}
.lead-form-full .form-grid label{min-width:0}
.lead-form-full input:not([type=checkbox]),.lead-form-full select,.lead-form-full textarea{font-size:16px;min-height:46px;border-radius:0}
.lead-form-full .button{min-height:48px;border-radius:0}
.sr-contact-form-card .lead-form-full{padding:28px 28px 18px}
@media(max-width:920px){.sr-heroV2 .sr-hero-grid,.sr-contact-hero-grid{grid-template-columns:minmax(0,1fr);gap:30px}.sr-heroV2 .lead-form-full,.sr-contact-form-card{width:100%;max-width:640px;margin-inline:auto}.sr-heroV2 .sr-hero-copy{max-width:700px}.sr-contact-hero header{max-width:700px}}
@media(max-width:560px){.sr-heroV2{padding:30px 0 36px}.sr-heroV2 .sr-hero-grid,.sr-contact-hero-grid{gap:26px}.lead-form.lead-form-full{padding:22px 19px}.lead-form-full .form-grid{gap:0 12px}.lead-form-full label{font-size:13px;margin-bottom:14px}.lead-form-full .consent{font-size:12px;line-height:1.65;margin:14px 0 18px}.sr-contact-form-card .lead-form-full{padding:24px 20px 18px}.lead-form-full input,.lead-form-full select,.lead-form-full textarea,.lead-form-full button{scroll-margin-top:120px;scroll-margin-bottom:88px}body:has(.lead-form:focus-within) .callbar{visibility:hidden;pointer-events:none}}
@media(max-width:359px){.lead-form-full .form-grid,.lead-form-full .form-grid.form-address-row{grid-template-columns:minmax(0,1fr)}}

/* Footer contact hierarchy: one primary button and a plain, generous phone target. */
footer .contact h2{margin-bottom:6px}
footer .contact .footer-phone{display:inline-flex;align-items:center;min-height:44px;padding:0;border:0;background:transparent;color:var(--amber);font:600 26px/1.2 var(--disp);letter-spacing:0;text-decoration:none;white-space:nowrap}
footer .contact .footer-phone:hover{text-decoration:underline;text-underline-offset:4px}
footer .contact p{margin:4px 0 16px;line-height:1.6}
footer .contact .footer-inspection{min-height:48px;max-width:100%;padding:12px 16px;background:var(--amber);border-color:var(--amber);color:var(--ink);font-size:14px;line-height:1.3;text-decoration:none}
footer .contact .footer-inspection:hover{background:var(--amber-dk);border-color:var(--amber-dk);color:var(--ink);text-decoration:none}

/* September 17: resource tasks retain the site's family and a clear reading path. */
.resource-page .resource-opening{position:relative;isolation:isolate;padding:30px 0 52px}
.resource-page .resource-opening>.wrap{position:relative}
.resource-page .resource-opening-grid{display:block;max-width:none;margin-top:34px}
.resource-page .resource-opening-with-photo .resource-opening-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:64px;align-items:center}
.resource-page .resource-opening-copy{min-width:0;max-width:850px}
.resource-page .resource-opening h1{margin:0;max-width:22ch;font-size:clamp(40px,4.3vw,60px);line-height:1.08}
.resource-page .resource-intro{font-size:18px;line-height:1.7;max-width:66ch;margin-top:22px}
.resource-page .resource-intro p+p{margin-top:16px}
.resource-page .resource-opening-art{margin:0;min-width:0}
.resource-page .resource-opening-art img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.resource-page .resource-answer{padding:22px 0 0;margin-top:26px;max-width:70ch;background:transparent;border:0;border-top:1px solid currentColor;border-radius:0}
.resource-page .resource-answer h2{color:inherit;font-size:23px;line-height:1.2;margin:0 0 10px}
.resource-page .resource-answer p{font-size:16px;line-height:1.7;margin:0}
.resource-page .resource-jumps{margin-top:30px;padding-top:16px;gap:4px 24px}
.resource-page .resource-jumps a{display:inline-flex;align-items:center;min-height:44px;padding:6px 0;line-height:1.45}
.resource-page .resource-intro a,.resource-page .resource-answer a{color:inherit;text-decoration:underline;text-underline-offset:4px}
.resource-page .resource-reading{padding:52px 0;background:#fff}
.resource-page .resource-reading-grid{display:block;max-width:760px;margin-inline:auto;padding:0;background:transparent;border:0}
.resource-page .resource-reading h2{font-size:34px;line-height:1.17;max-width:30ch;margin:0 0 22px}
.resource-page .resource-prose{font-size:17px;line-height:1.8;max-width:72ch}
.resource-page .resource-prose p+p{margin-top:18px}
.resource-page .resource-prose li{margin:10px 0}
.resource-page .resource-prose ul{padding-left:22px}
.resource-page .resource-prose a:not([data-cta]),.resource-page .resource-calculator-notes a,.resource-page .resource-blog-heading a,.resource-page .resource-article-copy p a{color:var(--resource-accent);text-decoration:underline;text-underline-offset:4px}
.resource-page .resource-action{display:inline-flex;align-items:center;justify-content:center;min-height:46px;margin-top:0;padding:12px 20px;border:2px solid transparent;border-radius:0;line-height:1.4;text-decoration:none;font-size:15px;font-weight:700}
.resource-page .resource-prose>.resource-action{margin-top:24px}
.resource-page .resource-blog-heading{max-width:790px;margin-bottom:32px}
.resource-page .resource-blog-heading h2{margin:0 0 16px}
.resource-page .resource-blog-heading p{font-size:18px;line-height:1.7}
.resource-page .resource-latest{background:#fff;padding:60px 0 68px}
.resource-page .resource-latest .resource-articles{gap:40px}
.resource-page .resource-latest .resource-articles article{background:transparent;border:0;padding-bottom:0}
.resource-page .resource-latest .resource-article-copy{padding:24px 0 0}
.resource-page .resource-blog-actions{margin-top:38px;padding-top:28px;border-top:1px solid var(--line)}
.resource-page .resource-reference-feature{background:var(--resource-pale);padding:56px 0}
.resource-page .resource-reference-feature-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:64px;align-items:center}
.resource-page .resource-reference-feature h2{font-size:35px;line-height:1.15;max-width:28ch;margin:0 0 24px}
.resource-page .resource-reference-feature figure{min-width:0;margin:0}
.resource-page .resource-reference-feature img{height:auto;aspect-ratio:4/3;width:100%;object-fit:cover}
.resource-page .resource-reference-feature figcaption{font-size:13px;line-height:1.6;padding-top:10px}
.resource-page .resource-inline-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.resource-page .resource-reference-context{background:var(--resource-dark);color:#fff}
.resource-page .resource-reference-context h2{color:inherit}
.resource-page .resource-reference-context .resource-prose a:not([data-cta]){color:inherit}
.resource-page .resource-close{background:var(--resource-pale);padding:54px 0 60px;border-top:1px solid var(--line)}
.resource-page .resource-close-copy{max-width:820px;margin-inline:auto;text-align:center}
.resource-page .resource-close h2{font-size:38px;line-height:1.12;margin:0 auto 20px;max-width:28ch}
.resource-page .resource-close p{font-size:17px;line-height:1.75;max-width:62ch;margin-inline:auto}
.resource-page .resource-close-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:28px}
.resource-page .resource-close .resource-phone{background:transparent;color:var(--resource-dark);border-color:currentColor}
@media(max-width:850px){.resource-page .resource-opening-with-photo .resource-opening-grid{gap:32px;grid-template-columns:1fr 1fr}.resource-page .resource-reference-feature-grid{gap:36px}.resource-page .resource-opening h1{font-size:44px}}
@media(max-width:650px){.resource-page .resource-opening{padding:24px 0 34px}.resource-page .resource-opening-grid{margin-top:26px}.resource-page .resource-opening-with-photo .resource-opening-grid{grid-template-columns:1fr;gap:30px}.resource-page .resource-opening h1{font-size:38px;max-width:24ch}.resource-page .resource-intro{font-size:17px;margin-top:20px}.resource-page .resource-answer{margin-top:24px;padding-top:20px}.resource-page .resource-answer h2{font-size:23px}.resource-page .resource-jumps{margin-top:24px;gap:2px 20px}.resource-page .resource-reading,.resource-page .resource-reference-feature{padding:38px 0}.resource-page .resource-reading h2,.resource-page .resource-reference-feature h2{font-size:30px;line-height:1.2;margin-bottom:20px;max-width:28ch}.resource-page .resource-reading-grid{padding:0}.resource-page .resource-reference-feature-grid{grid-template-columns:1fr;gap:28px}.resource-page .resource-latest{padding:40px 0 48px}.resource-page .resource-latest .resource-articles{gap:40px}.resource-page .resource-blog-heading{margin-bottom:28px}.resource-page .resource-blog-heading p{font-size:17px}.resource-page .resource-close{padding:40px 0 46px}.resource-page .resource-close h2{font-size:32px;line-height:1.15}.resource-page .resource-close-actions{align-items:stretch;flex-direction:column;gap:12px}.resource-page .resource-close-actions a{width:100%}}

.resource-page.resource-storm-response{--resource-accent:#775300;--resource-dark:var(--char);--resource-pale:var(--fog)}
.resource-page.resource-storm-response .resource-opening{background:var(--char);color:#fff;border-bottom:4px solid var(--amber)}
.resource-page.resource-storm-response .resource-opening h1{color:#fff;max-width:21ch;line-height:1.04;font-size:clamp(44px,5vw,68px)}
.resource-page.resource-storm-response .resource-opening-art{border-bottom:4px solid var(--amber)}
.resource-page.resource-storm-response .resource-intro{color:#e0e4e8}
.resource-page.resource-storm-response .resource-answer{border-color:#585e65}
.resource-page.resource-storm-response .resource-answer h2{color:var(--amber)}
.resource-page.resource-storm-response .resource-jumps{border-color:#585e65}
.resource-page.resource-storm-response .resource-jumps a{color:var(--amber)}
.resource-page.resource-storm-response .resource-action{background:var(--amber);color:var(--ink)}
.resource-page.resource-storm-response .resource-action:hover{background:var(--amber-dk)}
.resource-page.resource-storm-response .resource-reference-context h2{color:var(--amber)}
.resource-page.resource-storm-response .resource-close{border-top:3px solid var(--amber)}
.resource-page.resource-storm-response.resource-kind-reference .compare{background:#fff}
@media(max-width:650px){.resource-page.resource-storm-response .resource-opening h1{font-size:43px}.resource-page.resource-storm-response .resource-opening-art img{aspect-ratio:16/9}}

.resource-page .resource-close .resource-action.resource-phone{background:transparent;color:var(--resource-dark);border-color:currentColor}

.resource-page.resource-storm-response.resource-kind-reference .compare{background:var(--char);color:#fff}.resource-page.resource-storm-response.resource-kind-reference .compare h2,.resource-page.resource-storm-response.resource-kind-reference .compare h3{color:#fff}.resource-page.resource-storm-response.resource-kind-reference .compare-grid article{background:transparent;border-color:#72777d}.resource-page.resource-storm-response.resource-kind-reference .compare-mark{color:var(--amber)}

/* About introduction: preserve the selected backlit roofer and roofing context. */
img[src*="crew-action-028"]{object-position:58% 50%!important}

/* Shared rich-text links stay visible in every family prose wrapper. */
main a.contextual-link{text-decoration:underline;text-underline-offset:3px}

/* Resources share the exact marketing hero; their full introduction follows it. */
.resource-page [data-resource-intro]{padding:60px 0;background:var(--surface);color:var(--ink)}
.resource-kind-directory [data-resource-intro],.resource-kind-reference [data-resource-intro],.resource-kind-guide [data-resource-intro]{background:var(--fog)}
.resource-introduction-content{max-width:850px;margin-inline:auto}
.resource-page [data-resource-intro] .resource-trail{color:var(--muted);margin-bottom:28px}
.resource-page [data-resource-intro] .resource-trail a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.resource-page [data-resource-intro] h2{font-size:38px;line-height:1.15;max-width:30ch;margin:0 0 24px}
.resource-introduction-prose{font-size:18px;line-height:1.8;max-width:74ch}
.resource-introduction-prose p+p{margin-top:18px}
.resource-introduction-summary{max-width:74ch;margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.resource-introduction-summary h3{font-size:25px;line-height:1.2;margin:0 0 12px}
.resource-introduction-summary p{font-size:16px;line-height:1.75}
.resource-page [data-resource-intro] .resource-jumps{border-color:var(--line);margin-top:30px}
.resource-page [data-resource-intro] .resource-jumps a{color:var(--resource-accent)}
@media(max-width:650px){.resource-page [data-resource-intro]{padding:40px 0}.resource-page [data-resource-intro] .resource-trail{margin-bottom:24px}.resource-page [data-resource-intro] h2{font-size:31px;line-height:1.18;margin-bottom:22px}.resource-introduction-prose{font-size:17px;line-height:1.8}.resource-introduction-summary{margin-top:24px;padding-top:22px}.resource-introduction-summary h3{font-size:24px}}

/* September 17: sections replanned WITHIN the approved Storm Response family. */
:root{--blue:#805200;--blue-hover:#5f3e00;--gold:var(--amber);--paper:var(--surface);--mist:var(--fog);--sky:var(--cool);--muted:var(--grey2);--heading:var(--disp);--body:var(--sans);--space:clamp(56px,6vw,84px)}
/* Content compositions follow the page's subject, not a striped template. */
.page-content>section:not(.sr-hero):not(.cre-close):not(.contact-opening){padding-block:var(--space)}.cre-welcome>.wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center}.welcome-story{max-width:690px}.welcome-photo{height:460px}.welcome-photo img{height:100%;object-fit:cover}.cre-welcome h2{margin-bottom:26px}.cre-services{background:var(--mist)}.cre-services .section-heading{margin-inline:auto;text-align:center}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 28px}.service-grid article{min-width:0;background:white;display:flex;flex-direction:column}.service-grid figure{aspect-ratio:1.8;overflow:hidden}.service-grid figure img{height:100%;object-fit:cover}.service-copy{padding:24px;display:flex;flex:1;flex-direction:column;align-items:flex-start}.service-copy h3{font-size:24px}.service-copy p{font-size:16px;line-height:1.55;margin-top:12px}.service-copy .btn{margin-top:23px}.service-copy p:last-of-type{margin-bottom:auto}.service-directory .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-directory .service-grid article{display:grid;grid-template-columns:42% 58%}.service-directory .service-grid figure{aspect-ratio:auto;height:100%;min-height:270px}.service-directory .service-copy{padding:26px}.cre-feature header{max-width:850px;margin-bottom:35px}.feature-body{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.feature-body figure{height:400px}.feature-body img{height:100%;object-fit:cover}.feature-reading{max-width:70ch}.feature-body:not(:has(figure)){display:block;max-width:810px}.wide-photo .feature-body,.about-story .feature-body{display:flex;flex-direction:column;gap:34px}.wide-photo figure,.about-story figure{width:100%;height:380px}.wide-photo .feature-reading,.about-story .feature-reading{max-width:850px;margin-inline:auto}.about-story header{text-align:center;margin-inline:auto}.about-story figure img{object-position:center 42%!important}.cre-sequence{background:var(--mist)}.sequence-list{margin:0;padding:0 0 0 38px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 60px}.sequence-list li{padding-left:10px}.sequence-list li::marker{font:650 24px var(--heading);color:var(--blue)}.sequence-list p{font-size:17px;margin-top:12px}.cre-principles{background:white}.cre-principles .sequence-list{display:block;padding:0;max-width:880px;margin:auto}.cre-principles .section-heading{text-align:center;margin-inline:auto}.cre-principles article{display:grid;grid-template-columns:35% 1fr;gap:35px;border-top:1px solid var(--line);padding:26px 0}.cre-principles article p{margin:0}.cre-comparison{background:#fff}.comparison-list{max-width:1040px}.comparison-list article{display:grid;grid-template-columns:35% 1fr;gap:44px;padding:30px 0;border-top:1px solid var(--line)}.comparison-list article:first-child{border-top:2px solid var(--blue)}.comparison-list h3{font-size:25px}.comparison-list article p{margin-top:12px}.comparison-list article p:first-child{margin:0}.comparison-list .btn{margin-top:22px}.cre-triage{background:var(--sky)}.cre-triage .comparison-list{display:grid;grid-template-columns:1fr 1fr;gap:30px;max-width:none}.cre-triage article{display:block;border:0;padding:0 28px 0 0}.cre-triage h3{margin-bottom:17px}.cre-area .section-heading{max-width:850px}.area-map{display:grid;grid-template-columns:2fr 1fr;background:var(--sky)}.area-map>img{height:350px;object-fit:cover}.area-label{align-self:center;padding:35px}.area-label strong{font:650 25px var(--heading)}.area-label p{font-size:16px}.area-label .btn{margin-top:24px}.cre-band{background:var(--sky);text-align:center}.cre-band .section-heading{margin-inline:auto;margin-bottom:26px}.cre-faq{background:white}.cre-faq .section-heading{text-align:center;max-width:800px;margin-inline:auto}.faq-list{max-width:850px;margin:0 auto}.faq-list details{border-top:1px solid var(--line);padding:0}.faq-list details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer}.faq-list summary{font-family:var(--heading);font-size:20px;line-height:1.4;font-weight:550;list-style:none;position:relative;padding:23px 44px 23px 0}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:4px;font:400 26px var(--body);color:var(--blue)}.faq-list details[open] summary:after{content:'−'}.faq-answer{padding:0 35px 25px 0;font-size:17px}.cre-reading{padding-block:55px!important}.reading-body{max-width:820px;margin:auto}.reading-body>h2{margin-bottom:24px}.reading-body ul{padding-left:25px;margin-top:22px}.reading-takeaway{padding:22px 25px;background:var(--mist);font-weight:650}.cre-notes{background:var(--mist)}.note-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 50px}.note-list h3{margin-bottom:15px}.cre-repair-scope{background:var(--mist)}.scope-explanations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin:42px 0}.scope-explanations h3{font-size:22px}.scope-explanations p{font-size:16px}.scope-budget{padding-top:35px;border-top:1px solid var(--line)}.scope-budget>h3{font-size:30px;max-width:860px;margin-bottom:24px}.scope-budget dl>div,.cre-system-notes dl>div,.cre-building-scope dl>div{display:grid;grid-template-columns:32% 1fr;gap:40px;padding:25px 0;border-top:1px solid var(--line)}dt{font-weight:750}dd{margin:0}.scope-budget dd strong{display:block}.cre-system-notes{background:var(--mist)}.cre-system-notes dt{font:650 23px var(--heading)}.cre-system-notes dt small{display:block;font:500 14px/1.5 var(--body);color:var(--muted);margin-top:9px}.cre-building-scope .section-heading{max-width:900px}.cre-building-scope dl{max-width:1050px}.cre-close{background:var(--sky);padding-block:70px}.cre-close header{text-align:center;max-width:850px;margin:0 auto 35px}.cre-close header>.btn{margin-top:22px}.cre-close .lead-form{padding:35px 40px;background:white}.cre-close .lead-form h2{font-size:25px}
/* Contact has one centered form; supporting information follows it. */
.contact-opening{padding:65px 0;background:var(--mist)}.contact-opening header{max-width:780px;text-align:center;margin:0 auto 38px}.contact-opening h1{font-size:clamp(37px,4.4vw,60px)}.contact-opening header p{font-size:21px}.contact-form-panel{max-width:900px;margin:auto;padding:38px 42px;background:white}.contact-form-panel .lead-form{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-form-panel .lead-form label,.contact-form-panel .form-address-row label:first-child,.contact-form-panel .form-address-row label:last-child{grid-column:span 1}.contact-form-panel .lead-form>label,.contact-form-panel .lead-form>.button{grid-column:1/-1}.contact-form-panel textarea{height:90px}.contact-relationship{margin-top:22px;padding-top:20px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}.contact-help>.wrap{max-width:980px}.contact-help> .wrap>h2,.contact-help>.wrap>p{text-align:center}.contact-methods{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin:38px 0}.contact-methods .btn{margin-top:24px}.contact-location{background:var(--sky);text-align:center}.contact-location .wrap{max-width:800px}.contact-location .btn,.contact-finish .btn{margin-top:25px}.contact-finish{text-align:center}.contact-finish .wrap{max-width:800px}
/* Resources retain the standard hero but carry their own task and reading flow. */
.resource-intro-content{max-width:850px;margin:auto}.resource-trail,.reading-trail{display:flex;gap:15px;align-items:center;font-size:14px;margin-bottom:30px}.reading-trail{padding-top:30px}.resource-introduction h2{margin-bottom:24px}.resource-summary{padding:25px 30px;background:var(--mist);margin-top:28px}.resource-summary h3{font-size:21px}.resource-summary p{font-size:16px}.resource-jumps{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.resource-directory{background:var(--mist)}.resource-destinations{display:grid;grid-template-columns:1fr 1fr;gap:30px}.resource-destinations article{display:grid;grid-template-columns:40% 1fr;gap:25px;background:white;padding:22px}.resource-destinations figure{height:235px;min-height:235px}.resource-destinations img{height:100%;object-fit:cover}.resource-destinations p{font-size:16px}.resource-destinations .btn{margin-top:23px}.resource-blog{background:white}.resource-articles{display:flex;flex-direction:column;gap:38px}.resource-articles article{display:grid;grid-template-columns:35% 1fr;gap:40px;padding-bottom:38px;border-bottom:1px solid var(--line)}.resource-articles figure{height:260px}.resource-articles img{height:100%;object-fit:cover}.resource-articles time{font-size:14px;color:var(--muted)}.resource-articles h3{font-size:29px;margin-top:12px}.resource-articles .btn{margin-top:25px}.cre-reading-open{padding:55px 0 50px;background:var(--mist)}.cre-reading-open h1{max-width:950px;margin:auto;text-align:center}.reading-deck{font-size:21px;max-width:780px;margin:25px auto 0;text-align:center}.article-meta{font-size:14px;text-align:center;color:var(--muted)}.article-hero{max-width:940px;height:390px;margin:40px auto 0}.article-hero img{height:100%;object-fit:cover}.blog-opening .resource-trail{justify-content:center}.cre-utility .cre-reading-open h1{text-align:left;max-width:820px}.cre-utility .reading-deck{text-align:left;font-size:18px;max-width:820px}.cre-utility .cre-reading{padding-block:30px!important}.cre-utility{padding-bottom:45px}
/* Decision tools retain their tested state logic. */
.roof-experience{background:var(--mist)}.experience-heading{max-width:850px;margin-bottom:35px}.choice-controls{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:25px}.choice-controls button,.weather-controls button{min-height:46px;padding:11px 17px;background:white;border:1px solid var(--blue);color:var(--blue);border-radius:3px;font-size:15px;font-weight:700}.choice-controls button[aria-pressed=true]{background:var(--blue);color:white}.choice-stage{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:45px;align-items:center}.choice-stage:not(:has(.choice-figure)){display:block}.choice-figure svg{display:block;width:100%;height:auto}.choice-figure figcaption{font-size:12px}.choice-panel h3{font-size:26px;margin-bottom:18px}.choice-panel p{font-size:17px}.choice-panel .btn,.choice-panel .section-cta{margin-top:24px}.choice-implication{padding-top:18px;border-top:1px solid var(--line);font-weight:650}.choice-figure [data-diagram-part]{opacity:.25;transition:opacity .15s}.choice-figure .is-active{opacity:1}.roof-experience>.wrap>.btn{margin-top:32px}.sr-repair-timeline{background:var(--sky)}.sr-permanent-sequence{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px;margin-top:35px}.sr-permanent-sequence>div{display:flex;gap:22px}.sr-permanent-sequence>div>span{font:650 35px var(--heading);color:var(--blue)}.sr-permanent-sequence p{font-size:16px}.shingle-photo-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-bottom:30px}.shingle-photo-strip img{height:230px;object-fit:cover}.shingle-photo-strip figcaption{font:600 19px var(--heading);color:var(--ink)}.depth-section{background:white}.depth-section header{max-width:850px;margin-bottom:30px}.warranty-reading,.claim-bases{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;margin:30px 0}.warranty-reading>div,.claim-bases>div{border-top:1px solid var(--line);padding-top:22px}.warranty-reading dt,.claim-bases dt{font:600 22px var(--heading);margin-bottom:15px}.claim-example{background:var(--mist);padding:30px;margin:30px 0}.claim-example figcaption{font:600 24px var(--heading);color:var(--ink);margin:0 0 20px}.claim-example dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.claim-example dd{font-size:25px;font-weight:750;margin-top:5px}.claim-explanation{max-width:850px}.depth-source{font-size:14px;max-width:850px;margin-top:24px}.resource-decisions>.wrap>div{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:30px}.resource-decisions h3 a{color:var(--blue)}.material-budget h2{margin-bottom:22px}.material-budget table{margin-top:28px}.material-budget>.wrap>p{max-width:850px}.repair-price-context{padding:30px;background:white;margin:28px 0}.repair-price-context h3{font-size:27px}.repair-price-context table{margin:25px 0}table{border-collapse:collapse;width:100%;font-size:16px}th{text-align:left}th,td{padding:17px 19px;border-bottom:1px solid var(--line)}thead{background:var(--sky)}tbody th{font-weight:650}table caption{text-align:left;margin:0 0 14px;font-weight:700}.cost-section{background:var(--mist)}.ks-calculator{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin-top:35px}.ks-calc-controls{display:grid;grid-template-columns:1fr 1fr;gap:15px 22px;background:white;padding:30px}.ks-calc-controls label{font-weight:700;font-size:16px}.ks-calc-controls label:first-child,.ks-calc-controls label:last-child{grid-column:1/-1}.ks-calc-controls input,.ks-calc-controls select,.weather-controls select{display:block;width:100%;min-height:48px;padding:10px 12px;border:1px solid #829dac;background:white;border-radius:2px;color:var(--ink);margin-top:7px}.ks-calc-help{grid-column:1/-1;font-size:14px;line-height:1.5;margin:0;color:var(--muted)}.ks-calc-result{align-self:center;padding:35px}.ks-calc-result .eyebrow{font:600 21px var(--heading);margin-bottom:15px}.ks-calc-result output{display:block;font:650 clamp(29px,3.2vw,44px)/1.2 var(--heading);letter-spacing:-.035em;font-variant-numeric:tabular-nums}.ks-calc-result .button{margin-top:25px}.ks-source{font-size:14px;max-width:900px;margin-top:25px;color:var(--muted)}.cost-methodology,.ks-methodology{margin-top:25px;max-width:950px}.cost-methodology summary,.ks-methodology summary{font-weight:750;min-height:44px;padding:8px 0}.cost-methodology p,.ks-methodology p{font-size:16px}.ks-material-comparison{margin-top:28px}.ks-material-comparison dl{display:flex;gap:20px;margin-top:20px}.ks-material-comparison dd{font-weight:700}
/* Weather records are data, not proof of damage. */
.weather-heading{max-width:850px;margin-bottom:30px}.weather-teaser{background:var(--mist)}.weather-teaser>.wrap{display:grid;grid-template-columns:1.2fr 1fr;gap:65px;align-items:center}.weather-teaser .btn{margin-top:25px}.weather-teaser-scope,.weather-chart-note{font-size:13px;color:var(--muted)}.weather-plot{padding:25px;background:white}.weather-plot>figcaption{font:600 21px var(--heading);color:var(--ink);margin:0 0 26px}.weather-bar-row{display:grid;grid-template-columns:55px 1fr 52px;align-items:center;gap:14px;color:var(--ink);text-decoration:none;min-height:45px;font-size:14px;font-weight:700}.weather-bar-row:hover{background:var(--mist)}.weather-bar-track{display:flex;min-height:15px;background:#e1e9ed}.weather-bar-track i{display:block;height:15px}.hail-bar{background:var(--blue)}.wind-bar{background:#a87000}.weather-bar-value{text-align:right}.weather-chart-note{line-height:1.55;margin-top:22px}.weather-legend:before{content:'';display:inline-block;width:11px;height:11px;background:var(--blue);margin-right:6px}.wind-key:before{background:#a87000}.weather-legend{margin-right:15px}.weather-controls{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-end;margin-bottom:35px;background:var(--mist);padding:25px}.weather-controls label{flex:1;min-width:170px;font-size:14px;font-weight:700}.weather-controls button{margin-bottom:0}.weather-browser-layout{display:grid;grid-template-columns:34% 1fr;gap:35px}.weather-overview .weather-plot{padding:20px;background:var(--mist)}.weather-scope{font-size:14px;margin-top:30px;color:var(--muted)}.weather-scope h3{font-size:20px;color:var(--ink)}.weather-scope .btn{font-size:14px;margin-top:22px}.weather-status{margin-bottom:20px;font-weight:700}.weather-year{border-top:1px solid var(--line)}.weather-year>summary{display:flex;justify-content:space-between;gap:15px;list-style:none;padding:20px 0;font-weight:750;font-size:20px}.weather-year>summary span:last-child{font-size:14px;align-self:center;font-weight:500}.weather-table-wrap{overflow-x:auto}.weather-table-wrap table{font-size:13px;min-width:570px}.weather-table-wrap th,.weather-table-wrap td{padding:13px 10px;vertical-align:top}.weather-table-wrap td small{display:block;line-height:1.4;font-size:11px;margin-top:7px}.weather-empty-note{font-size:13px;color:var(--muted);margin-top:20px}

@media(max-width:1050px){.cre-welcome>.wrap{gap:40px}.welcome-photo{height:430px}.service-copy{padding:20px}.feature-body{gap:38px}.service-directory .service-grid article{display:flex}.service-directory .service-grid figure{height:230px;min-height:0;aspect-ratio:auto}.resource-destinations article{display:block}.resource-destinations figure{height:190px;min-height:0;margin-bottom:20px}.weather-browser-layout{grid-template-columns:1fr}.weather-overview{display:grid;grid-template-columns:1fr 1fr;gap:30px}.weather-scope{margin:0}}
@media(max-width:760px){.cre-welcome>.wrap{display:flex;flex-direction:column;gap:32px}.welcome-photo{width:100%;height:270px}.section-heading{margin-bottom:28px}.service-grid,.service-directory .service-grid{grid-template-columns:1fr;gap:28px}.service-grid figure{height:205px;aspect-ratio:auto}.service-copy{padding:23px}.service-copy .btn{margin-top:22px}.service-directory .service-grid figure{height:205px}.feature-body{display:flex;flex-direction:column;gap:25px}.feature-body figure{height:250px;width:100%}.cre-feature header{margin-bottom:25px}.wide-photo figure,.about-story figure{height:280px}.sequence-list{grid-template-columns:1fr;gap:28px;padding-left:28px}.cre-principles article{display:block;padding:25px 0}.cre-principles article p{margin-top:15px}.comparison-list article{display:block;padding:25px 0}.cre-triage .comparison-list{grid-template-columns:1fr;gap:25px}.cre-triage article{padding:0}.area-map{display:block}.area-map>img{height:255px}.area-label{padding:28px}.faq-list summary{font-size:18px;padding-block:21px}.faq-answer{padding-right:12px;font-size:16px}.cre-reading{padding-block:40px!important}.note-list{grid-template-columns:1fr;gap:28px}.scope-explanations{grid-template-columns:1fr;gap:28px;margin:30px 0}.scope-budget>h3{font-size:27px}.scope-budget dl>div,.cre-system-notes dl>div,.cre-building-scope dl>div{display:block}.scope-budget dd,.cre-system-notes dd,.cre-building-scope dd{margin-top:13px}.cre-close{padding:50px 0}.cre-close header{margin-bottom:28px}.contact-opening{padding:35px 0}.contact-opening header p{font-size:18px}.contact-form-panel{padding:25px 20px}.contact-methods{grid-template-columns:1fr;gap:32px}.contact-relationship{font-size:12px}.resource-intro-content{max-width:none}.resource-summary{padding:22px}.resource-jumps{gap:10px}.resource-jumps .btn{flex-grow:1}.resource-destinations{grid-template-columns:1fr}.resource-destinations article{padding:22px}.resource-destinations figure{height:190px}.resource-articles article{display:block;padding-bottom:30px}.resource-articles figure{height:230px;margin-bottom:20px}.cre-reading-open{padding:38px 0}.reading-deck{font-size:18px}.article-hero{height:260px;margin-top:28px}.reading-trail{padding-top:20px;margin-bottom:0}.choice-stage{grid-template-columns:1fr;gap:25px}.choice-controls{gap:8px}.choice-controls button{font-size:14px;flex-grow:1}.sr-permanent-sequence{grid-template-columns:1fr}.shingle-photo-strip{grid-template-columns:1fr;gap:23px}.shingle-photo-strip img{height:240px}.warranty-reading,.claim-bases{grid-template-columns:1fr;gap:25px}.claim-example{padding:22px}.claim-example dl{grid-template-columns:1fr}.claim-example dl>div{border-top:1px solid var(--line);padding-top:15px}.resource-decisions>.wrap>div{grid-template-columns:1fr}.repair-price-context{padding:20px}th,td{padding:13px 10px;font-size:14px}.ks-calculator{grid-template-columns:1fr;gap:20px;margin-top:28px}.ks-calc-controls{padding:22px;gap:14px}.ks-calc-result{padding:20px 8px}.ks-calc-result output{font-size:34px}.ks-material-comparison dl{display:block}.ks-material-comparison dl>div{margin-top:17px}.weather-teaser>.wrap{grid-template-columns:1fr;gap:30px}.weather-plot{padding:20px}.weather-controls{padding:20px;gap:16px}.weather-controls label{min-width:100%;flex:auto}.weather-controls button{width:100%}.weather-overview{display:block}.weather-scope{margin-top:28px}.weather-browser-layout{gap:30px}.weather-table-wrap{max-width:calc(100vw - 36px)}.weather-table-wrap table{min-width:0}.weather-table-wrap thead{display:none}.weather-table-wrap tr{display:block;padding:12px 0;border-bottom:1px solid var(--line)}.weather-table-wrap th,.weather-table-wrap td{display:block;border:0;padding:5px 0;font-size:14px}.weather-table-wrap td:before{content:attr(data-label) ': ';font-weight:750}.weather-table-wrap td small{font-size:12px;margin-top:4px}.weather-table-wrap caption{font-size:13px}}


.section-heading{max-width:820px;margin-bottom:34px}.section-heading h2,.cre-feature h2,.cre-reading h2,.cre-welcome h2,.contact-help h2,.contact-location h2,.contact-finish h2{font-size:40px;line-height:1.12}.section-heading p{margin-top:20px;line-height:1.75}.page-content>section:not(.sr-hero){font-size:17px;line-height:1.75}.cre-welcome,.cre-feature,.cre-reading,.cre-area,.cre-building-scope{background:white}.cre-welcome p+p,.feature-reading p+p,.reading-body p+p{margin-top:20px}.section-heading h2,.cre-feature h2,.cre-welcome h2{max-width:27ch}.cre-welcome .welcome-photo{border-bottom:5px solid var(--amber)}.cre-services .section-heading h2,.cre-faq .section-heading h2{margin-inline:auto}.collection-action{margin-top:30px;text-align:center}.related-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.btn-small{font-size:13px;padding:12px 17px}.reading-body>.btn,.feature-reading>.btn,.welcome-story>.btn{margin-top:25px}.hero-phone{margin-top:24px;font-size:22px;padding:14px 25px}.sr-heroV2 .sr-topline-under{margin-top:20px}.nav.site-header{position:sticky;top:0}.sr-svc-photo .sr-svc-pgrid{grid-template-columns:repeat(3,minmax(0,1fr))}.sr-svc-photo .sr-actp{min-height:340px}.sr-svc-photo .sr-svc-all{margin-top:30px}.sr-svc-photo+.sr-svc-photo{padding-top:0}.cre-close>.wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:center}.cre-close header{text-align:left;margin:0}.cre-close h2{font-size:44px;line-height:1.12}.cre-close header p{margin-top:22px}.cre-close .lead-form{padding:28px;border-top:5px solid var(--amber)}.cre-close .lead-form h2{font-size:27px}.cre-close .lead-form .form-intro{font-size:14px}.cre-close .lead-form label{font-size:13px}.about-story figure{max-width:1000px;height:auto;aspect-ratio:3/2;margin-inline:auto}.about-story figure img{height:auto;aspect-ratio:3/2;object-position:center!important}.about-story header h2{margin-inline:auto}.cre-feature .caption{font-size:13px}.cre-principles .section-heading h2{margin-inline:auto}.cre-faq{border-top:1px solid var(--line)}.faq-list summary{font-size:25px;text-transform:uppercase}.faq-list summary:after{color:var(--ink)}.cre-sequence li::marker{color:var(--ink)}.contact-opening{background:var(--char);border-bottom:6px solid var(--amber)}.contact-opening header h1{color:white;max-width:19ch;margin-inline:auto}.contact-opening header>p{color:#d7dce1;line-height:1.7;margin-top:22px}.contact-opening .hero-actions{margin-top:25px}.contact-opening .btn-outline{background:var(--amber);border-color:var(--amber);color:var(--ink)}.contact-form-panel{max-width:780px;padding:0 0 28px}.contact-form-panel .lead-form{box-shadow:none;padding:30px 34px 10px}.contact-relationship{margin:5px 34px 0;padding-top:18px}.contact-help h2,.contact-location h2,.contact-finish h2{margin-inline:auto}.contact-help>.wrap>p,.contact-location p,.contact-finish p{margin-top:20px}.contact-methods article{border-left:4px solid var(--amber);padding-left:25px}.contact-methods h3{font-size:28px;line-height:1.2;margin-bottom:16px}.cre-reading-open h1{font-size:52px;line-height:1.1}.resource-introduction{background:white}.resource-introduction h2{font-size:39px;line-height:1.15}.resource-summary{border-left:4px solid var(--amber)}.resource-jumps{display:flex;gap:12px}.resource-destinations h3,.resource-articles h3{font-size:28px;line-height:1.15}.cre-triage{border-top:4px solid var(--amber)}.cre-triage h3{font-size:29px;line-height:1.2}.cre-comparison h3,.cre-principles h3{font-size:28px;line-height:1.2}.cre-close input,.contact-opening input{accent-color:var(--amber)}.choice-controls button[aria-pressed=true]{background:var(--amber);color:var(--ink);border-color:var(--amber)}.weather-bar-track .hail-bar{background:#956100}.weather-bar-track .wind-bar{background:#4e5964}
@media(max-width:920px){.cre-close>.wrap{grid-template-columns:1fr;gap:30px}.cre-close header{max-width:740px}.cre-close .lead-form{width:100%;max-width:740px;margin:auto}.sr-svc-photo .sr-svc-pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.sr-svc-photo .sr-svc-pgrid{grid-template-columns:1fr}.cre-close h2{font-size:36px}.section-heading h2,.cre-feature h2,.cre-welcome h2,.cre-reading h2,.resource-introduction h2,.contact-help h2,.contact-location h2,.contact-finish h2{font-size:33px}.cre-reading-open h1{font-size:39px}.cre-close .lead-form{padding:23px 20px}.contact-form-panel .lead-form{padding:25px 20px 10px}.contact-relationship{margin-inline:20px}.about-story figure{height:auto;aspect-ratio:3/2}.hero-phone{font-size:20px}.cre-faq .faq-list summary{font-size:24px}.contact-opening h1{font-size:43px}}

/* Weather overview retains a coherent family dark surface and readable series labels. */
.weather-history.weather-storm-response .weather-overview{background:var(--char);color:#dce1e6}.weather-history.weather-storm-response .weather-overview .weather-plot{background:var(--char2);color:#fff}.weather-history.weather-storm-response .weather-overview figcaption,.weather-history.weather-storm-response .weather-bar-row,.weather-history.weather-storm-response .weather-scope h3{color:#fff}.weather-history.weather-storm-response .weather-chart-note,.weather-history.weather-storm-response .weather-scope,.weather-history.weather-storm-response .weather-scope p{color:#dce1e6}.weather-history.weather-storm-response .weather-bar-row:hover{background:#30353b}.weather-history.weather-storm-response .weather-bar-track .hail-bar,.weather-history.weather-storm-response .hail-key:before{background:var(--amber)}.weather-history.weather-storm-response .weather-bar-track .wind-bar,.weather-history.weather-storm-response .wind-key:before{background:#b9c5ce}.weather-history.weather-storm-response .weather-bar-track{background:#3a4149}

/* About is a company-purpose introduction, not an article with a lead image. */
.cre-about-intro{background:#fff}.cre-about-intro>.wrap{display:grid;grid-template-columns:1fr 1.05fr;gap:58px;align-items:center}.cre-about-intro figure{width:100%;aspect-ratio:3/2;height:auto}.cre-about-intro figure img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.about-purpose h2{font-size:40px;line-height:1.12;margin-bottom:25px}.about-purpose p{font-size:17px;line-height:1.75}.about-purpose p+p{margin-top:18px}.cre-about .cre-principles{background:var(--cool)}.cre-about .cre-principles .section-heading{max-width:none;text-align:left}.cre-about .cre-principles .section-heading h2{margin:0;max-width:30ch}.cre-about .cre-principles .sequence-list{display:grid;grid-template-columns:1fr 1fr;gap:36px 60px;max-width:none}.cre-about .cre-principles article{display:block;border-top:1px solid #aeb9c3;padding:24px 0 0}.cre-about .cre-principles article h3{margin-bottom:15px}.cre-about .cre-reading .reading-body{max-width:980px}.cre-about .cre-reading h2{max-width:28ch}
.contact-opening{position:relative;isolation:isolate}.contact-backdrop{position:absolute;inset:0;z-index:-1;overflow:hidden}.contact-backdrop img{height:100%;width:100%;object-fit:cover;filter:brightness(.24)}.contact-map{margin:28px auto 0;max-width:800px}.contact-map img{width:100%;height:auto}.contact-map figcaption{font-size:12px}.weather-teaser .hail-bar,.weather-teaser .hail-key:before{background:#805200}.weather-teaser .wind-bar,.weather-teaser .wind-key:before{background:#697681}
@media(max-width:900px){.cre-about-intro>.wrap{grid-template-columns:1fr;gap:30px}.about-purpose{grid-row:1}.cre-about-intro figure{max-width:650px;margin:auto}.cre-about .cre-principles .sequence-list{gap:30px}}
@media(max-width:700px){.about-purpose h2{font-size:33px}.cre-about .cre-principles .sequence-list{grid-template-columns:1fr}.ks-calc-controls{grid-template-columns:1fr}.ks-calc-controls label{grid-column:1/-1}.ks-calc-controls input,.ks-calc-controls select{width:100%}.contact-map{margin-top:24px}}

.weather-teaser.weather-storm-response .weather-chart-note{color:var(--grey2)}.weather-teaser.weather-storm-response .weather-bar-track .hail-bar,.weather-teaser.weather-storm-response .hail-key:before{background:#805200}.weather-teaser.weather-storm-response .weather-bar-track .wind-bar,.weather-teaser.weather-storm-response .wind-key:before{background:#697681}

/* Operator: balanced persistent actions, without a redundant upper utility strip. */
.callbar .bar-actions{display:grid;grid-template-columns:repeat(2,220px);gap:16px}.callbar .bar-inspect,.callbar .cb-btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;height:48px;padding:10px 16px;font:700 15px/1.2 var(--sans);text-align:center;box-sizing:border-box}.callbar .cb-btn svg{width:18px;height:18px;flex:none}.callbar .cb-btn{gap:9px}.callbar .bar-inspect{border:1px solid var(--char);background:transparent}.callbar .cb-btn{border:1px solid var(--char)}
@media(max-width:700px){.callbar .bar-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.callbar .bar-inspect,.callbar .cb-btn{font-size:13px;padding:10px 8px;min-height:46px;height:46px}.callbar .call-prefix{display:none}.callbar .cb-btn svg{width:17px;height:17px}}

/* Body compositions from the September 17 visual study, within Storm Response. */
.callbar .bar-actions{grid-template-columns:repeat(2,240px)}.callbar .cb-btn>span{white-space:nowrap}
@media(max-width:700px){.callbar .bar-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
.cre-visual{padding:80px 0;background:#fff;color:var(--ink)}
.cre-visual .visual-heading{max-width:840px;margin:0 0 36px}
.cre-visual h2{font-size:40px;line-height:1.15;max-width:28ch}
.cre-visual h3{font-size:25px;line-height:1.2;margin:0 0 12px}
.cre-visual .visual-heading p{margin:20px 0 0;line-height:1.75}
.cre-visual p+p{margin-top:18px}.cre-visual>.wrap>.btn{margin-top:28px}
.cre-visual figure{margin:0;min-width:0}.cre-visual img{width:100%;height:auto;display:block;aspect-ratio:3/2;object-fit:cover}
.cre-visual figcaption{font:400 13px/1.6 var(--sans);color:#53616c;padding-top:12px;max-width:65ch}
.visual-pair{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.visual-notes{display:grid;gap:26px;min-width:0;margin:0;padding:0;list-style:none}
.visual-notes article{padding-top:22px;border-top:1px solid #b8c2ca}
.visual-pair .visual-notes{margin-top:28px}
.cre-paired-details{background:#f1f4f5}
.work-explanation,.field-explanation,.assembly-explanation,.runoff-explanation{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.work-photo{position:static}.work-photo img{aspect-ratio:5/4}
.visual-takeaway{font:500 25px/1.35 'Oswald',sans-serif;border-left:5px solid var(--amber);padding:15px 20px;margin-top:28px}
.visual-notes.ordered{counter-reset:work}
.visual-notes.ordered>li{position:relative;padding:0 0 22px 58px;border-bottom:1px solid #c4ccd2;counter-increment:work}
.visual-notes.ordered>li:before{content:counter(work,decimal-leading-zero);position:absolute;left:0;top:0;color:#926100;font:500 31px/1 'Oswald',sans-serif}
.field-explanation{grid-template-columns:1.1fr 1fr}.field-explanation .visual-notes article:first-child{padding-top:0;border:0}
.cre-field-study{background:#f1f4f5}.field-explanation .visual-photo img{aspect-ratio:16/9}
.cre-assembly-study{background:#f1f4f5}.assembly-explanation{grid-template-columns:1.05fr 1fr;gap:52px}
.assembly-explanation figure+figure{margin-top:28px}.assembly-explanation .visual-notes article:first-child{padding-top:0;border:0}
.building-explanation{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start}
.building-explanation dl{margin:0}.building-explanation dl>div{padding:24px 0;border-top:1px solid #b8c2ca}
.building-explanation dt{font:500 26px/1.2 'Oswald',sans-serif;text-transform:uppercase;margin-bottom:12px}.building-explanation dd{margin:0}
.building-photos{display:grid;grid-template-columns:1fr 1fr;gap:20px}.building-photos img{aspect-ratio:1/1}
.membrane-rows{border-top:1px solid #aeb9c3}.membrane-rows>article{display:grid;grid-template-columns:340px 1fr;gap:44px;align-items:center;padding:32px 0;border-bottom:1px solid #aeb9c3}
.membrane-rows img{aspect-ratio:3/2}.membrane-rows h3{font-size:32px}.material-summary{font-weight:700;margin-bottom:14px}
.material-note{background:#f1f4f5;padding:28px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.material-note span{font:500 25px/1.2 'Oswald',sans-serif;text-transform:uppercase;margin-bottom:15px}
.context-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;margin-top:30px}.context-photos img{aspect-ratio:16/10}
.cre-roof-context .visual-heading{max-width:960px}.cre-roof-context .visual-heading p{max-width:82ch}
.runoff-path{display:flex;flex-direction:column;align-items:center;gap:4px;margin-top:24px;padding:22px;background:#16181b;color:white;font-weight:650;text-align:center}
.runoff-path span[aria-hidden]{color:var(--amber);font-size:22px;line-height:1.2}
@media(max-width:900px){.work-explanation,.field-explanation,.assembly-explanation,.runoff-explanation{gap:32px}.work-photo{position:static}.building-explanation{grid-template-columns:1fr}.membrane-rows>article{grid-template-columns:260px 1fr;gap:30px}.visual-pair{gap:30px}}
@media(max-width:700px){.cre-visual{padding:52px 0}.cre-visual h2{font-size:33px}.cre-visual h3{font-size:25px}.cre-visual .visual-heading{margin-bottom:28px}.visual-pair,.work-explanation,.field-explanation,.assembly-explanation,.runoff-explanation,.building-photos,.context-photos,.membrane-rows>article{grid-template-columns:1fr;gap:28px}.visual-pair{gap:42px}.cre-visual img,.work-photo img,.field-explanation .visual-photo img,.building-photos img{aspect-ratio:3/2}.visual-notes.ordered>li{padding-left:49px}.building-explanation{gap:24px}.membrane-rows>article{padding:28px 0}.context-photos{gap:26px}.material-note{padding:24px}.visual-takeaway{font-size:23px}}

/* Complete service directory: one collection per property type. */
.sr-service-directory .sr-svc-pgrid{display:flex;flex-wrap:wrap;justify-content:center;gap:18px}
.sr-service-directory .sr-actp{flex:0 1 calc((100% - 54px)/4);min-width:0;min-height:365px;padding:23px}
.sr-service-directory .sr-actp-bd .lab{font-size:27px}
.sr-service-directory.directory-commercial{background:var(--cool);padding-top:var(--space)}
.cre-close .closing-phone{display:inline-flex;align-items:center;justify-content:center;gap:10px;margin-top:26px;min-height:52px;padding:15px 24px;background:var(--amber);border:2px solid var(--amber);color:var(--ink);font-size:17px;line-height:1.3;text-decoration:none}
.cre-close .closing-phone:hover{background:var(--char);border-color:var(--char);color:var(--amber)}
.cre-close .closing-phone svg{width:19px;height:19px;flex:none}
@media(max-width:1100px){.sr-service-directory .sr-actp{flex-basis:calc((100% - 18px)/2);min-height:330px}}
@media(max-width:700px){.sr-service-directory .sr-actp{flex-basis:100%;min-height:320px}.cre-close .closing-phone{width:100%;font-size:16px}}

.weather-method{margin-top:18px;border-block:1px solid var(--line);padding:16px 0}.weather-method summary{font:700 16px/1.5 var(--sans)}.weather-method p{font-size:14px;line-height:1.7;margin-top:16px}

/* BEGIN SEPTEMBER 17 CRAFT REVISION */
/* Claremore craft revision: the approved Storm Response type, palette and hero
   remain. Content hierarchy and reading rhythm are authored below the hero. */
.page-content{--craft-h2:clamp(30px,3.1vw,42px);--craft-h3:clamp(22px,1.8vw,26px)}
.page-content :is(.section-heading,.visual-heading,.experience-heading,.weather-heading) h2,
.page-content :is(.cre-reading,.cre-feature,.cre-welcome,.depth-section) h2,
.page-content :is(.craft-home-repair,.craft-home-business,.craft-home-area,.craft-service-intro) h2{
 font-size:var(--craft-h2);line-height:1.14;max-width:29ch;text-wrap:balance
}
.page-content :is(.cre-comparison,.cre-principles,.cre-visual,.craft-decision,.scope-explanations) h3{font-size:var(--craft-h3);line-height:1.22;text-wrap:balance}
.page-content>section:not(.sr-hero):not(.cre-close):not(.contact-opening){padding-block:clamp(52px,5.5vw,80px)}
.page-content p{max-width:72ch}
.sr-hero p,.lead-form p{max-width:none}
.cre-welcome>.wrap{grid-template-columns:1.1fr 1fr;gap:64px}
.cre-welcome .welcome-photo{height:425px;border:0}
.cre-welcome h2{max-width:24ch}
.welcome-story p{font-size:17px;line-height:1.7}
.cre-home .sr-svc-photo{background:var(--fog)}
.sr-svc-photo .section-heading{max-width:780px}
/* One scrim, concentrated behind the text, preserves the photographic subject. */
.sr-svc-photo .sr-actp-ph .ph:after{display:none}
.sr-svc-photo .sr-actp:after{background:linear-gradient(180deg,rgba(22,24,27,0) 0%,rgba(22,24,27,.05) 28%,rgba(22,24,27,.88) 58%,#16181b 85%)}
.sr-svc-photo .sr-actp{min-height:374px;padding:26px}
.sr-svc-photo .sr-actp-bd .lab{font-size:27px;line-height:1.16}
.sr-svc-photo .sr-actp-bd .sub{font-size:15px;line-height:1.6;color:#f3f5f7;margin-top:10px}
.sr-svc-photo .sr-actp-bd .go{align-self:flex-start;margin-top:20px;background:var(--amber);color:var(--ink);border-color:var(--amber)}
.sr-svc-photo .sr-actp-bd .go:before{display:none}
.craft-home-repair{background:var(--char);color:#e9edf1}
.craft-home-repair>.wrap{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center}
.craft-repair-photo figure{height:440px}
.craft-repair-copy h2{color:#fff;margin-bottom:24px}
.craft-repair-copy p{line-height:1.75}
.craft-repair-copy p a{color:var(--amber)}
.craft-repair-copy>.btn{margin-top:28px}
.craft-home-business{background:white}
.craft-home-business>.wrap>figure{height:340px;overflow:hidden}
.craft-home-business img{object-position:center 57%}
.craft-business-copy{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;margin-top:38px;align-items:start}
.craft-business-copy h2{max-width:20ch}
.craft-business-copy .btn{margin-top:24px}
.craft-home-area{background:var(--cool)}
.craft-home-area>.wrap{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center}
.craft-home-area h2{margin-bottom:22px}
.craft-home-area .btn{margin-top:25px}
.craft-home-area img{height:auto;aspect-ratio:8/5;object-fit:contain}
.craft-home-area figcaption{font-size:12px;margin-top:12px}
.craft-service-intro{background:#fff}
.craft-service-intro>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.craft-service-copy h2{margin-bottom:25px}
.craft-service-copy p{font-size:17px;line-height:1.75}
.craft-service-intro figure{height:430px}
.craft-service-copy .btn{margin-top:24px}
.craft-decision{background:var(--cool)}
.craft-decision-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:32px}
.craft-decision-options article{border-top:3px solid var(--char);padding:25px 0 0;min-width:0}
.craft-decision-options h3{margin-bottom:17px}
.craft-decision-options p{font-size:16px;line-height:1.75}
.craft-decision-options .btn{margin-top:22px}
.craft-decision>.wrap>.btn{margin-top:30px}
.craft-decision .section-note{font-size:15px;max-width:80ch;margin-top:28px}
/* A real sequence gets a progression. Its photo introduces the work, then the
   horizontal steps remain comparable without following the reader's scroll. */
.cre-work-sequence .work-explanation{display:block}
.cre-work-sequence .work-photo{position:static;display:grid;grid-template-columns:1.3fr .7fr;gap:42px;align-items:center;margin-bottom:44px}
.cre-work-sequence .work-photo img{aspect-ratio:2.2/1;max-height:295px}
.cre-work-sequence .visual-takeaway{border:0;padding:0;margin:0;font:500 27px/1.38 var(--disp);max-width:26ch}
.cre-work-sequence .visual-notes.ordered{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:28px}
.cre-work-sequence .visual-notes.ordered>li{border-bottom:0;border-top:2px solid var(--line);padding:55px 0 0}
.cre-work-sequence .visual-notes.ordered>li:before{top:14px;font-size:26px;color:#805200}
.cre-work-sequence .visual-notes h3{font-size:23px}
.cre-work-sequence .visual-notes p{font-size:16px;line-height:1.7}
.cre-faq>.wrap{display:grid;grid-template-columns:.75fr 1.35fr;gap:64px;align-items:start}
.cre-faq .section-heading{text-align:left;margin:0;max-width:none}
.cre-faq .section-heading h2{margin:0;max-width:16ch}
.cre-faq .faq-list{margin:0;max-width:none}
.cre-faq .faq-list summary{font-size:22px;line-height:1.3;letter-spacing:0;padding:22px 35px 22px 0;font-weight:500}
.cre-faq .faq-answer{font-size:16px;line-height:1.75}
.cre-faq .faq-list details[open] summary{color:#805200}
.cre-faq .faq-list summary:after{font-size:23px}
.resource-page [data-resource-intro] h2{font-size:var(--craft-h2);max-width:30ch;text-wrap:balance}
.resource-intro-content{max-width:100%;margin:0}
.resource-introduction .resource-summary{max-width:780px;border:0;padding:22px 26px}
.resource-introduction .resource-summary h3{font-size:23px;line-height:1.2;margin-bottom:12px}
.resource-introduction .resource-trail{margin-bottom:26px}
.resource-jumps{max-width:900px}
.resource-jumps .btn{font-size:13px;max-width:100%;white-space:normal}
.cost-section .section-heading h2{max-width:32ch}
.cost-section .ks-calc-result{background:var(--char);color:#fff;padding:34px}
.cost-section .ks-calc-result :is(p,.eyebrow){color:#e9edf1}
.cost-section .ks-calc-result output{color:var(--amber);font:600 clamp(34px,3.8vw,51px)/1.15 var(--disp);letter-spacing:0}
.cost-section .ks-calc-result .eyebrow{font:600 15px/1.4 var(--sans);letter-spacing:0;text-transform:none}
.cost-section .ks-calc-result .eyebrow:before{display:none}
.cost-section .ks-calc-controls label:has(select[data-basis]){grid-column:1/-1}
.cost-section .ks-calc-result .button{background:var(--amber);color:var(--ink)}
.material-budget table{max-width:1000px}
.material-budget tbody td{font-weight:700}
.resource-decisions h3{font-size:25px;line-height:1.2}
.cre-reading-open h1{max-width:27ch;text-wrap:balance}
.cre-article .reading-body>h2{font-size:34px;max-width:30ch}
@media(max-width:1000px){
 .craft-home-repair>.wrap,.craft-home-area>.wrap,.craft-service-intro>.wrap,.craft-business-copy,.cre-welcome>.wrap{gap:36px}
 .craft-service-intro figure{height:400px}.craft-repair-photo figure{height:440px}
 .cre-faq>.wrap{gap:36px;grid-template-columns:.7fr 1.3fr}
}
@media(max-width:760px){
 .page-content{--craft-h2:32px;--craft-h3:23px}
 .cre-welcome>.wrap,.craft-home-repair>.wrap,.craft-home-area>.wrap,.craft-service-intro>.wrap,.craft-business-copy,.cre-faq>.wrap{display:grid;grid-template-columns:1fr;gap:30px}
 .cre-welcome .welcome-photo{height:275px}.craft-home-repair .craft-repair-photo{order:2}
 .craft-repair-photo figure,.craft-service-intro figure{height:auto;aspect-ratio:3/2}
 .craft-home-business>.wrap>figure{height:auto;aspect-ratio:16/10}
 .craft-business-copy{margin-top:28px}.craft-business-copy h2{max-width:none}
 .sr-svc-photo .sr-actp{min-height:335px;padding:24px}
 .craft-decision-options{grid-template-columns:1fr;gap:28px}
 .cre-work-sequence .work-photo{grid-template-columns:1fr;gap:20px;margin-bottom:30px}
 .cre-work-sequence .work-photo img{aspect-ratio:3/2;max-height:none}
 .cre-work-sequence .visual-takeaway{font-size:24px;max-width:none}
 .cre-work-sequence .visual-notes.ordered{grid-template-columns:1fr;gap:24px}
 .cre-work-sequence .visual-notes.ordered>li{padding:23px 0 0 46px}
 .cre-work-sequence .visual-notes.ordered>li:before{top:24px;font-size:24px}
 .cre-faq .section-heading h2{max-width:none}.cre-faq .faq-list summary{font-size:21px}
 .resource-introduction .resource-summary{padding:22px}.cost-section .ks-calc-result{padding:26px 22px}
 .cre-article .reading-body>h2{font-size:30px}
}

/* Company pages: Storm Response identity, page-specific reading and intake. */
.company-craft{--space:78px}
.company-craft .company-purpose,.company-craft .company-context,.company-craft .company-contact-support{background:#fff}
.company-craft :is(.company-purpose,.company-values,.company-context,.company-contact-support,.company-contact-location) h2{font-size:clamp(32px,3vw,42px);line-height:1.12;max-width:24ch;text-wrap:balance;margin:0 0 24px}
.company-craft :is(.company-purpose,.company-values,.company-context,.company-contact-support,.company-contact-location) p{font-size:17px;line-height:1.75}
.company-craft :is(.company-purpose,.company-values,.company-context,.company-contact-support,.company-contact-location) p+p{margin-top:18px}
.company-craft :is(.company-purpose-copy,.company-context header>div,.company-coverage-copy,.company-request-note)>.btn{margin-top:24px}
.company-craft .company-purpose>.wrap{display:grid;grid-template-columns:1.03fr 1fr;gap:60px;align-items:center}
.company-craft .company-purpose-copy{grid-column:2;grid-row:1}
.company-craft .company-purpose-photo{grid-column:1;grid-row:1;margin:0;min-width:0}
.company-craft .company-purpose-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block}
.company-craft .company-purpose-photo figcaption{margin-top:12px;font-size:13px;color:var(--grey2)}
.company-craft .company-values{background:var(--char);color:#edf0f2;--space:84px}
.company-craft .company-values>.wrap{display:grid;grid-template-columns:.72fr 1.6fr;gap:70px;align-items:start}
.company-craft .company-values h2{color:#fff;max-width:15ch}
.company-craft .company-values header p{color:#dce1e6}
.company-craft .company-value-list article{display:grid;grid-template-columns:.85fr 1.35fr;gap:30px;padding:25px 0;border-top:1px solid #60666c}
.company-craft .company-value-list article:first-child{padding-top:0;border-top:0}
.company-craft .company-value-list article:last-child{padding-bottom:0}
.company-craft .company-value-list h3{font:700 21px/1.35 var(--sans);letter-spacing:0;text-transform:none;color:var(--amber);max-width:20ch}
.company-craft .company-value-list article p{margin:0;color:#edf0f2;font-size:16px;line-height:1.7}
.company-craft .company-value-list article p+p{margin-top:14px}
.company-craft .company-context header{display:grid;grid-template-columns:.78fr 1.22fr;gap:70px;align-items:start;margin-bottom:34px}
.company-craft .company-context header h2{max-width:19ch}
.company-craft .company-context-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.company-craft .company-context-photos figure{min-width:0;margin:0}
.company-craft .company-context-photos img{width:100%;aspect-ratio:16/10;height:auto;object-fit:cover;display:block}
.company-craft .company-context-photos figcaption{font-size:14px;line-height:1.6;color:var(--grey);padding:16px 0 0;max-width:56ch}
.company-craft .company-contact-guidance{display:grid;grid-template-columns:1.2fr .8fr;gap:90px;align-items:start}
.company-craft .company-contact-guidance header{max-width:60ch}
.company-craft .company-request-note{padding-top:5px}
.company-craft .company-contact-support h3{font:700 21px/1.35 var(--sans);letter-spacing:0;text-transform:none;color:var(--ink);margin-bottom:13px}
.company-craft .company-request-note p{font-size:16px}
.company-craft .company-request-note>.btn{padding:12px 20px;font-size:13px;background:var(--cool);border-color:var(--cool);color:var(--ink)}
.company-craft .company-request-note>.btn:hover{background:var(--line);border-color:var(--line)}
.company-craft .company-call-strip{display:grid;grid-template-columns:1fr auto;gap:50px;align-items:center;background:var(--char);padding:30px 34px;margin-top:38px;color:#edf0f2}
.company-craft .company-call-strip h3{color:#fff;margin-bottom:10px}
.company-craft .company-call-strip p{font-size:16px;line-height:1.65;max-width:68ch;color:#edf0f2}
.company-craft .company-call-strip .company-phone{background:var(--amber);border-color:var(--amber);color:var(--ink);min-height:54px;white-space:nowrap;font-size:16px}
.company-craft .company-call-strip .company-phone:hover{background:var(--amber-dk);border-color:var(--amber-dk)}
.company-craft .company-phone svg{height:21px;width:21px;flex:none}
.company-craft .company-safety-note{max-width:90ch;margin-top:22px}
.company-craft .company-safety-note p{font-size:13px;line-height:1.65;color:var(--grey)}
.company-craft .company-contact-location{background:var(--cool)}
.company-craft .company-contact-location>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
.company-craft .company-coverage-copy>p{max-width:60ch}
.company-craft .company-contact-finish{margin-top:32px;padding-top:26px;border-top:1px solid #b5bec7;scroll-margin-top:100px}
.company-craft .company-contact-location .company-contact-finish h2{font:700 21px/1.35 var(--sans);letter-spacing:0;text-transform:none;color:var(--ink);margin-bottom:12px;max-width:none;text-wrap:initial}
.company-craft .company-contact-finish p{font-size:16px;line-height:1.7}
.company-craft .company-contact-finish>.btn{margin-top:21px}
.company-craft .company-coverage-map{margin:0;min-width:0}
.company-craft .company-coverage-map img{width:100%;height:auto;aspect-ratio:8/5;object-fit:contain;display:block;background:#e5e8e8}
.company-craft .company-coverage-map figcaption{font-size:12px;line-height:1.6;margin-top:12px;color:var(--grey)}
.company-craft .company-coverage-map figcaption a{text-decoration:underline;text-underline-offset:3px}
.company-craft .company-reading .wrap{max-width:960px}
.company-craft .company-reading h2{font-size:38px;margin-bottom:24px}
.company-craft .company-reading p+p{margin-top:18px}
.company-craft .company-reading .btn{margin-top:22px}
.company-craft :is(.company-purpose,.company-values,.company-context,.company-contact-support,.company-contact-location) .btn:focus-visible{outline:3px solid var(--ink);outline-offset:4px}
.company-craft :is(.company-values,.company-call-strip) .btn:focus-visible{outline-color:var(--amber)}
@media(max-width:1000px){
 .company-craft .company-purpose>.wrap{gap:35px;grid-template-columns:1fr 1fr}
 .company-craft .company-values>.wrap{grid-template-columns:1fr;gap:35px}
 .company-craft .company-values h2{max-width:26ch;margin-bottom:0}
 .company-craft .company-value-list article{grid-template-columns:.75fr 1.25fr;gap:35px}
 .company-craft .company-contact-guidance,.company-craft .company-contact-location>.wrap,.company-craft .company-context header{gap:40px}
 .company-craft .company-call-strip{gap:25px;padding:27px}
 .company-craft .company-call-strip .company-phone{font-size:14px;padding-inline:20px}
}
@media(max-width:760px){
 .company-craft{--space:50px}
 .company-craft .company-values{--space:52px}
 .company-craft .company-purpose>.wrap,.company-craft .company-contact-guidance,.company-craft .company-contact-location>.wrap,.company-craft .company-context header{grid-template-columns:1fr;gap:28px}
 .company-craft .company-purpose-copy,.company-craft .company-purpose-photo{grid-column:auto;grid-row:auto}
 .company-craft .company-purpose-photo{max-width:630px;width:100%;margin-inline:auto}
 .company-craft :is(.company-purpose,.company-values,.company-context,.company-contact-support,.company-contact-location) h2{font-size:32px;max-width:25ch;margin-bottom:20px}
 .company-craft .company-value-list article{grid-template-columns:1fr;gap:12px;padding:24px 0}
 .company-craft .company-value-list h3{max-width:none;font-size:20px}
 .company-craft .company-context header{margin-bottom:29px}
 .company-craft .company-context header h2{margin-bottom:0}
 .company-craft .company-context-photos{grid-template-columns:1fr;gap:28px}
 .company-craft .company-context-photos img{aspect-ratio:3/2}
 .company-craft .company-contact-guidance{gap:26px}
 .company-craft .company-request-note{padding-top:24px;border-top:1px solid var(--line)}
 .company-craft .company-call-strip{grid-template-columns:1fr;gap:23px;padding:26px 24px;margin-top:30px}
 .company-craft .company-call-strip .company-phone{justify-self:start;font-size:15px;min-height:50px;white-space:normal}
 .company-craft .company-contact-location>.wrap{gap:32px}
 .company-craft .company-contact-finish{margin-top:28px;padding-top:24px}
 .company-craft .company-coverage-map{max-width:630px}
}

/* Keep location and map together before the final action on mobile. */
.company-contact-location>.wrap{grid-template-areas:"coverage map" "finish map";row-gap:0!important}
.company-coverage-copy{grid-area:coverage}.company-coverage-map{grid-area:map}
.company-contact-finish{grid-area:finish}
@media(max-width:760px){.company-contact-location>.wrap{grid-template-areas:"coverage" "map" "finish";row-gap:28px!important}.company-craft .company-contact-finish{margin-top:0}}

/* Readable directory actions and subject-preserving coatings crop. */
.resource-destinations .btn{min-height:46px;border:1px solid var(--char);background:#fff;color:var(--ink)}
.resource-destinations .btn:hover,.resource-destinations .btn:focus-visible{background:var(--char);color:#fff;border-color:var(--char)}
.company-contact-finish>.btn{min-height:46px}
.sr-service-directory a[href="/commercial-roofing/roof-coatings/"] .sr-actp-ph img{object-position:100% 50%!important}

.resource-blog:has(.resource-blog-actions) .resource-articles article:last-child{border-bottom:0;padding-bottom:0}
