/*
Theme Name: Integrity Repipe
Template: rfm-theme
Author: Eddie Flores / Guard Agency
Description: Child theme for Integrity Repipe. The homepage is a faithful port of the approved v2.2 mockup (Wesley build, Willy structure/SEO check): the mockup's own CSS + markup, scrubbed of em-dashes, FAQ as native <details>, estimate form pointed at /contact-us/. No RFM chrome. v1.2.2 hardens the admin-bar avatar guard (max-height cap).
Version: 1.9.0
Requires at least: 6.4
Tested up to: 7.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: integrityrepipe-child-theme
Tags: block-theme, child-theme
*/

/* reset so the ported mockup owns the homepage cleanly */
body{margin:0}
.wp-site-blocks{padding:0 !important}

  :root{
    --purple:#5C5193; --purple-light:#8C82BF; --purple-lighter:#9E90E2;
    --purple-deep:#3b3457; --purple-ink:#2b2540;
    --ink:#1b1828; --soft:#5c5870; --line:#e7e3f1; --tint:#f6f4fc;
    --gold:#ffc400; --gold-dark:#e6a700; --bg:#ffffff; --good:#1e9e6a;
    --shadow:0 12px 32px rgba(43,37,64,.12); --shadow-sm:0 5px 16px rgba(43,37,64,.10);
  }
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{margin:0;background:var(--bg);color:var(--ink);
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
    font-size:20px;line-height:1.62;font-weight:450;-webkit-font-smoothing:antialiased}
  a{color:inherit}
  img,svg{max-width:100%;display:block}
  .wrap{max-width:1160px;margin:0 auto;padding:0 22px}
  h1,h2,h3{line-height:1.12;letter-spacing:-.5px;margin:0;font-weight:900}
  p{margin:0}
  .skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;background:#fff;padding:10px 16px;border-radius:10px;z-index:99}
  .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;
    font-weight:900;border-radius:14px;padding:18px 28px;font-size:19px;cursor:pointer;border:none;
    transition:transform .08s,box-shadow .15s,background .15s;min-height:56px}
  .btn:hover{transform:translateY(-2px)}
  .btn:focus-visible{outline:4px solid var(--purple-lighter);outline-offset:2px}
  .btn-gold{background:var(--gold);color:#241f10;box-shadow:0 10px 24px rgba(255,196,0,.4)}
  .btn-gold:hover{background:var(--gold-dark)}
  .btn-purple{background:var(--purple);color:#fff;box-shadow:0 10px 24px rgba(92,81,147,.36)}
  .btn-purple:hover{background:var(--purple-deep)}
  .btn-ghost{background:#fff;color:var(--purple);border:2.5px solid var(--purple-light)}
  .btn-ghost:hover{background:var(--tint)}

  .preview{background:var(--purple-ink);color:#e7e1f7;font-size:14px;text-align:center;padding:8px 14px;font-weight:600}
  .preview b{color:#fff}

  header.site{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);border-bottom:2px solid var(--line)}
  .nav{display:flex;align-items:center;gap:18px;padding:12px 0}
  .brand{display:flex;align-items:center;gap:12px;font-weight:900;font-size:23px;color:var(--purple-ink);text-decoration:none;letter-spacing:-.6px}
  .brand .mark{width:42px;height:42px;flex:none}
  .nav .links{display:flex;gap:24px;margin-left:16px}
  .nav .links a{text-decoration:none;color:var(--ink);font-weight:800;font-size:17px}
  .nav .links a:hover{color:var(--purple)}
  .nav .right{margin-left:auto;display:flex;align-items:center;gap:14px}
  .nav .phone{display:flex;flex-direction:column;line-height:1.05;text-decoration:none}
  .nav .phone .lab{font-size:12.5px;color:var(--soft);font-weight:800;text-transform:uppercase;letter-spacing:.07em}
  .nav .phone .num{font-size:23px;font-weight:900;color:var(--purple-ink)}
  .nav .phone .num span{color:var(--purple)}
  .burger{display:none;background:none;border:2.5px solid var(--line);border-radius:12px;padding:9px 12px;font-size:22px;cursor:pointer;color:var(--purple-ink)}

  .hero{background:linear-gradient(155deg,#5C5193 0%,#4a4179 52%,#3b3457 100%);color:#fff;position:relative;overflow:hidden}
  .hero .wrap{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;padding:56px 22px 62px}
  .hero .eyebrow{display:inline-flex;align-items:center;gap:9px;background:rgba(255,255,255,.14);
    border:1.5px solid rgba(255,255,255,.28);border-radius:999px;padding:9px 16px;font-weight:800;font-size:15px;margin-bottom:20px}
  .hero h1{font-size:50px}
  .hero h1 .hl{color:var(--gold)}
  .hero p.sub{font-size:21px;color:#ece8fb;margin:20px 0 28px;max-width:560px;font-weight:500}
  .hero .cta{display:flex;gap:14px;flex-wrap:wrap}
  .hero .trust{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px;padding-top:24px;border-top:1.5px solid rgba(255,255,255,.2)}
  .hero .trust .t{display:flex;align-items:center;gap:9px;font-weight:800;font-size:15.5px;color:#fff;background:rgba(255,255,255,.1);padding:9px 13px;border-radius:11px}
  .hero::after{content:"";position:absolute;right:-160px;top:-120px;width:520px;height:520px;border-radius:50%;
    background:radial-gradient(circle,rgba(158,144,226,.55),transparent 62%);z-index:1}

  .estimate{background:#fff;color:var(--ink);border-radius:22px;box-shadow:var(--shadow);padding:28px 26px;border-top:6px solid var(--gold)}
  .estimate h3{font-size:25px;color:var(--purple-ink)}
  .estimate .small{color:var(--soft);font-size:16px;margin:8px 0 18px;font-weight:500}
  .field{margin-bottom:13px}
  .field label{display:block;font-weight:800;font-size:15px;margin-bottom:6px;color:var(--ink)}
  .field input,.field select{width:100%;font-size:18px;padding:15px 15px;border:2.5px solid var(--line);border-radius:13px;background:var(--tint);font-weight:600}
  .field input:focus,.field select:focus{outline:none;border-color:var(--purple)}
  .estimate .btn{width:100%;margin-top:6px}
  .estimate .or{text-align:center;color:var(--soft);font-size:15px;margin:14px 0 8px;font-weight:700}
  .estimate .callnum{display:flex;align-items:center;justify-content:center;gap:9px;font-weight:900;font-size:25px;color:var(--purple-ink);text-decoration:none}
  .estimate .callnum span{color:var(--purple)}

  .badges{background:var(--purple-ink);border-bottom:4px solid var(--gold)}
  .badges .row{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;align-items:center;padding:16px 0}
  .badge{display:flex;align-items:center;gap:9px;color:#fff;font-weight:800;font-size:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:9px 17px}

  section{padding:70px 0}
  .sec-head{text-align:center;max-width:740px;margin:0 auto 44px}
  .sec-head .kicker{color:var(--purple);font-weight:900;letter-spacing:.09em;text-transform:uppercase;font-size:15px}
  .sec-head h2{font-size:39px;color:var(--purple-ink);margin:12px 0}
  .sec-head p{color:var(--soft);font-size:20px;margin:0;font-weight:500}

  .grid{display:grid;gap:22px}
  .g4{grid-template-columns:repeat(4,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g2{grid-template-columns:repeat(2,1fr)}
  .pcard{background:#fff;border:2px solid var(--line);border-radius:20px;padding:26px;box-shadow:var(--shadow-sm)}
  .ic{width:62px;height:62px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-size:30px;margin-bottom:16px}
  .ic.p{background:linear-gradient(140deg,var(--purple-light),var(--purple))}
  .ic.g{background:linear-gradient(140deg,var(--gold),#ffb000)}
  .pcard h3{font-size:21px;color:var(--purple-ink);margin-bottom:7px}
  .pcard p{color:var(--soft);font-size:17px;font-weight:500}

  .why{background:linear-gradient(160deg,var(--purple-ink),var(--purple-deep));color:#fff}
  .why .sec-head h2{color:#fff}.why .sec-head p{color:#d7cfee}
  .wcard{background:rgba(255,255,255,.07);border:1.5px solid rgba(255,255,255,.14);border-radius:20px;padding:26px}
  .wcard h3{font-size:21px;margin-bottom:7px}
  .wcard p{color:#d7cfee;font-size:17px;font-weight:500}

  .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;counter-reset:st}
  .step{background:#fff;border:2px solid var(--line);border-radius:20px;padding:32px 26px 26px;position:relative;box-shadow:var(--shadow-sm)}
  .step .n{counter-increment:st;position:absolute;top:-22px;left:26px;width:50px;height:50px;border-radius:15px;
    background:var(--gold);color:#241f10;font-weight:900;font-size:24px;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 18px rgba(255,196,0,.45)}
  .step .n::before{content:counter(st)}
  .step h3{font-size:22px;color:var(--purple-ink);margin:14px 0 7px}
  .step p{color:var(--soft);font-size:17px;font-weight:500}

  .photo{border-radius:20px;border:3px dashed var(--purple-light);background:repeating-linear-gradient(45deg,#f6f4fc,#f6f4fc 14px,#efeafa 14px,#efeafa 28px);
    display:flex;align-items:center;justify-content:center;text-align:center;min-height:260px;padding:22px}
  .photo .pl{color:var(--purple);font-weight:800;font-size:16px;max-width:360px}
  .photo .pl small{display:block;color:var(--purple-light);font-weight:600;margin-top:8px;font-size:14px}

  .reviews{background:var(--tint)}
  .rcard{background:#fff;border:2px solid var(--line);border-radius:20px;padding:26px;box-shadow:var(--shadow-sm)}
  .stars{color:var(--gold);font-size:21px;letter-spacing:2px}
  .rcard p{font-size:18px;margin:12px 0 14px;font-weight:500}
  .rcard .who{font-weight:900;color:var(--purple-ink);font-size:16px}
  .rcard .who small{display:block;color:var(--soft);font-weight:600}

  .area{display:grid;grid-template-columns:1.1fr .9fr;gap:38px;align-items:center}
  .citychips{display:flex;flex-wrap:wrap;gap:11px;margin-top:20px}
  .citychips a{background:#fff;border:2px solid var(--line);border-radius:12px;padding:10px 15px;font-weight:800;font-size:16px;color:var(--purple);text-decoration:none}
  .citychips a:hover{background:var(--tint);border-color:var(--purple-light)}

  .faq{max-width:840px;margin:0 auto}
  .qa{background:#fff;border:2px solid var(--line);border-radius:16px;margin-bottom:13px;overflow:hidden}
  .qa button{width:100%;text-align:left;background:none;border:none;padding:22px 24px;font-size:19px;font-weight:900;color:var(--purple-ink);cursor:pointer;display:flex;justify-content:space-between;gap:14px;align-items:center}
  .qa button:focus-visible{outline:3px solid var(--purple-lighter);outline-offset:-3px}
  .qa button .pm{flex:none;font-size:28px;color:var(--purple);transition:transform .2s;line-height:1}
  .qa .ans{max-height:0;overflow:hidden;transition:max-height .25s ease;padding:0 24px}
  .qa .ans p{color:var(--soft);font-size:17.5px;margin:0 0 22px;font-weight:500}
  .qa.open .ans{max-height:340px}.qa.open .pm{transform:rotate(45deg)}

  .final{background:linear-gradient(135deg,var(--purple),var(--purple-deep));color:#fff;text-align:center}
  .final h2{font-size:40px}
  .final p{font-size:21px;color:#e7e1f7;margin:14px 0 28px;font-weight:500}
  .final .cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
  .final .btn-ghost{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.4)}

  footer{background:#16121f;color:#c5bdda;font-size:16px;padding:48px 0 120px}
  footer .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}
  footer a{color:#ddd3f3;text-decoration:none}footer a:hover{text-decoration:underline}
  footer h4{color:#fff;font-size:17px;margin:0 0 12px}
  footer .legal{border-top:1px solid rgba(255,255,255,.13);margin-top:30px;padding-top:18px;color:#8f86a6;font-size:14px}

  .mobilebar{position:fixed;bottom:0;left:0;right:0;z-index:60;display:none;gap:10px;padding:11px 12px;
    background:rgba(255,255,255,.98);backdrop-filter:blur(8px);border-top:2px solid var(--line);box-shadow:0 -6px 20px rgba(43,37,64,.16)}
  .mobilebar .btn{flex:1;padding:15px;font-size:18px}

  @media(max-width:980px){
    .hero .wrap{grid-template-columns:1fr;gap:30px;padding:42px 22px 48px}.hero h1{font-size:40px}
    .g4{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:1fr}.area{grid-template-columns:1fr}.steps{grid-template-columns:1fr}
    .nav .links{display:none}.burger{display:block}footer .cols{grid-template-columns:1fr;gap:24px}
  }
  @media(max-width:620px){
    body{font-size:18px;padding-bottom:78px}
    .hero h1{font-size:33px}.sec-head h2{font-size:30px}.final h2{font-size:30px}
    .g4,.g2{grid-template-columns:1fr}.reviews .grid{grid-template-columns:1fr}
    .nav .phone .num{font-size:19px}.sec-head p{font-size:18px}
    .mobilebar{display:flex}
  }
  @media print{.preview,.mobilebar{display:none}.hero::after{display:none}}


/* ===== v1.2.0 fixes ===== */
/* FAQ now uses native <details>; map summary to the mockup .qa button look */
.qa summary{list-style:none;width:100%;padding:22px 24px;font-size:19px;font-weight:900;color:var(--purple-ink);cursor:pointer;display:flex;justify-content:space-between;gap:14px;align-items:center}
.qa summary::-webkit-details-marker{display:none}
.qa .ans{max-height:none;overflow:visible;padding:0 24px}
.qa[open] .pm{transform:rotate(45deg)}
/* the first-pill stretch fix (flex rows must not stretch their items) */
.hero .trust{align-items:flex-start}
.badges .row{align-items:center}

/* v1.2.2: our global `img{max-width:100%}` reset blew up the WP admin-bar
   Gravatar (admin-only). width:16 alone left it 16x260 (pinched sliver) because
   nothing capped height. max-height is the real cap. Lock all dims + object-fit. */
#wpadminbar img.avatar{width:16px !important;height:16px !important;min-width:16px !important;min-height:16px !important;max-width:16px !important;max-height:16px !important;object-fit:cover !important;border-radius:50% !important;vertical-align:middle !important}


/* ===== Whole-House Repipe (mockup) (scoped to .ir-pg-repipe) ===== */
:root{--purple:#5C5193;--purple-light:#8C82BF;--purple-lighter:#9E90E2;--purple-deep:#3b3457;--purple-ink:#2b2540;
    --ink:#1b1828;--soft:#5c5870;--line:#e7e3f1;--tint:#f6f4fc;--gold:#ffc400;--gold-dark:#e6a700;--good:#1e9e6a;--red:#c0392b;
    --shadow:0 12px 32px rgba(43,37,64,.13);--shadow-sm:0 5px 16px rgba(43,37,64,.10)}
.ir-pg-repipe{box-sizing:border-box}
.ir-pg-repipe{scroll-behavior:smooth}
.ir-pg-repipe{margin:0;background:#fff;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;font-size:20px;line-height:1.6;-webkit-font-smoothing:antialiased}
.ir-pg-repipe img, .ir-pg-repipe svg{max-width:100%;display:block}
.ir-pg-repipe .wrap{max-width:1080px;margin:0 auto;padding:0 22px}
.ir-pg-repipe h1, .ir-pg-repipe h2, .ir-pg-repipe h3{margin:0;line-height:1.13;letter-spacing:-.5px;font-weight:900}
.ir-pg-repipe p{margin:0}
.ir-pg-repipe .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;font-weight:900;border-radius:14px;padding:18px 28px;font-size:20px;cursor:pointer;border:none;min-height:58px;transition:transform .08s,background .15s}
.ir-pg-repipe .btn:hover{transform:translateY(-2px)}
.ir-pg-repipe .btn:focus-visible{outline:4px solid var(--purple-lighter);outline-offset:2px}
.ir-pg-repipe .btn-gold{background:var(--gold);color:#241f10;box-shadow:0 10px 24px rgba(255,196,0,.42)}
.ir-pg-repipe .btn-gold:hover{background:var(--gold-dark)}
.ir-pg-repipe .btn-purple{background:var(--purple);color:#fff;box-shadow:0 10px 24px rgba(92,81,147,.36)}
.ir-pg-repipe .btn-purple:hover{background:var(--purple-deep)}
.ir-pg-repipe .preview{background:var(--purple-ink);color:#e7e1f7;font-size:14px;text-align:center;padding:8px 14px;font-weight:600}
.ir-pg-repipe .preview b{color:#fff}
.ir-pg-repipe .bar{background:#fff;border-bottom:2px solid var(--line);position:sticky;top:0;z-index:40}
.ir-pg-repipe .bar .in{display:flex;align-items:center;justify-content:space-between;padding:12px 0;gap:12px}
.ir-pg-repipe .brand{display:flex;align-items:center;gap:11px;font-weight:900;font-size:22px;color:var(--purple-ink)}
.ir-pg-repipe .brand .mark{width:40px;height:40px;flex:none}
.ir-pg-repipe .bar .call{display:flex;align-items:center;gap:9px;background:var(--purple);color:#fff;text-decoration:none;font-weight:900;font-size:19px;padding:11px 18px;border-radius:12px}
.ir-pg-repipe .bar .call:hover{background:var(--purple-deep)}
.ir-pg-repipe .hero{background:linear-gradient(155deg,#5C5193,#4a4179 52%,#3b3457);color:#fff;position:relative;overflow:hidden}
.ir-pg-repipe .hero .wrap{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:38px;align-items:center;padding:46px 22px 54px}
.ir-pg-repipe .hero .eyebrow{display:inline-flex;align-items:center;gap:9px;background:rgba(255,255,255,.14);border:1.5px solid rgba(255,255,255,.28);border-radius:999px;padding:9px 16px;font-weight:800;font-size:15px;margin-bottom:18px}
.ir-pg-repipe .hero h1{font-size:44px}
.ir-pg-repipe .hero h1 .hl{color:var(--gold)}
.ir-pg-repipe .hero p.sub{font-size:21px;color:#ece8fb;margin:18px 0 24px;font-weight:500}
.ir-pg-repipe .checks{display:grid;gap:11px;margin:0 0 26px;padding:0}
.ir-pg-repipe .checks li{list-style:none;display:flex;align-items:center;gap:12px;font-weight:700;font-size:18px}
.ir-pg-repipe .checks .ck{flex:none;width:30px;height:30px;border-radius:50%;background:var(--good);display:flex;align-items:center;justify-content:center}
.ir-pg-repipe .hero .cta{display:flex;gap:14px;flex-wrap:wrap}
.ir-pg-repipe .hero .btn-ghost{background:rgba(255,255,255,.14);color:#fff;border:2px solid rgba(255,255,255,.4)}
.ir-pg-repipe .hero::after{content:"";position:absolute;right:-150px;top:-120px;width:480px;height:480px;border-radius:50%;background:radial-gradient(circle,rgba(158,144,226,.55),transparent 62%);z-index:1}
.ir-pg-repipe .lead-card{background:#fff;color:var(--ink);border-radius:22px;box-shadow:var(--shadow);padding:28px 26px;border-top:7px solid var(--gold)}
.ir-pg-repipe .lead-card h3{font-size:25px;color:var(--purple-ink)}
.ir-pg-repipe .lead-card .sm{color:var(--soft);font-size:16px;margin:8px 0 18px;font-weight:500}
.ir-pg-repipe .field{margin-bottom:13px}
.ir-pg-repipe .field label{display:block;font-weight:800;font-size:15px;margin-bottom:6px}
.ir-pg-repipe .field input, .ir-pg-repipe .field select{width:100%;font-size:18px;padding:15px;border:2.5px solid var(--line);border-radius:13px;background:var(--tint);font-weight:600}
.ir-pg-repipe .field input:focus, .ir-pg-repipe .field select:focus{outline:none;border-color:var(--purple)}
.ir-pg-repipe .lead-card .btn{width:100%}
.ir-pg-repipe .lead-card .or{text-align:center;color:var(--soft);font-weight:700;font-size:15px;margin:14px 0 8px}
.ir-pg-repipe .lead-card .cn{display:flex;align-items:center;justify-content:center;gap:9px;font-weight:900;font-size:25px;color:var(--purple-ink);text-decoration:none}
.ir-pg-repipe .strip{background:var(--purple-ink);border-bottom:4px solid var(--gold)}
.ir-pg-repipe .strip .row{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;padding:15px 0}
.ir-pg-repipe .chip{color:#fff;font-weight:800;font-size:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:9px 17px}
.ir-pg-repipe section{padding:60px 0}
.ir-pg-repipe .sec-head{text-align:center;max-width:760px;margin:0 auto 36px}
.ir-pg-repipe .sec-head .k{color:var(--purple);font-weight:900;letter-spacing:.09em;text-transform:uppercase;font-size:15px}
.ir-pg-repipe .sec-head h2{font-size:35px;color:var(--purple-ink);margin:10px 0}
.ir-pg-repipe .sec-head p{color:var(--soft);font-size:19px;font-weight:500}
.ir-pg-repipe .grid{display:grid;gap:22px}
.ir-pg-repipe .g4{grid-template-columns:repeat(4,1fr)}
.ir-pg-repipe .g3{grid-template-columns:repeat(3,1fr)}
.ir-pg-repipe .g2{grid-template-columns:repeat(2,1fr)}
.ir-pg-repipe .card{background:#fff;border:2px solid var(--line);border-radius:20px;padding:24px;box-shadow:var(--shadow-sm)}
.ir-pg-repipe .ic{width:60px;height:60px;border-radius:17px;display:flex;align-items:center;justify-content:center;font-size:30px;margin-bottom:14px;background:linear-gradient(140deg,var(--purple-light),var(--purple))}
.ir-pg-repipe .card h3{font-size:20px;color:var(--purple-ink);margin-bottom:6px}
.ir-pg-repipe .card p{color:var(--soft);font-size:16.5px;font-weight:500}
.ir-pg-repipe /* cost block */
  .cost{background:var(--tint)}
.ir-pg-repipe .costcard{background:#fff;border:2px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:30px;max-width:880px;margin:0 auto}
.ir-pg-repipe .costrow{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}
.ir-pg-repipe .costrow:last-child{border-bottom:none}
.ir-pg-repipe .costrow .lbl{font-weight:800;color:var(--purple-ink);font-size:18px}
.ir-pg-repipe .costrow .lbl small{display:block;color:var(--soft);font-weight:500;font-size:15px}
.ir-pg-repipe .costrow .amt{font-weight:900;color:var(--purple);font-size:20px;white-space:nowrap}
.ir-pg-repipe .disclaim{background:#fff6da;border:1.5px solid #ffe39a;border-radius:14px;padding:16px 20px;margin:18px auto 0;max-width:880px;color:#6b5410;font-weight:600;font-size:16px}
.ir-pg-repipe .factors{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;max-width:880px;margin:24px auto 0}
.ir-pg-repipe .factor{display:flex;gap:12px;align-items:flex-start;background:#fff;border:2px solid var(--line);border-radius:14px;padding:16px 18px}
.ir-pg-repipe .factor .d{flex:none;width:36px;height:36px;border-radius:10px;background:linear-gradient(140deg,var(--gold),#ffb000);display:flex;align-items:center;justify-content:center;font-size:18px}
.ir-pg-repipe .factor b{color:var(--purple-ink)}
.ir-pg-repipe .factor span{color:var(--soft);font-size:16px;font-weight:500}
.ir-pg-repipe /* compare */
  .cmp{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:880px;margin:0 auto}
.ir-pg-repipe .cmpcard{border:2px solid var(--line);border-radius:20px;padding:26px;background:#fff;box-shadow:var(--shadow-sm)}
.ir-pg-repipe .cmpcard h3{font-size:23px;color:var(--purple-ink);margin-bottom:10px;display:flex;align-items:center;gap:10px}
.ir-pg-repipe .cmpcard ul{margin:0;padding-left:20px}
.ir-pg-repipe .cmpcard li{margin:8px 0;color:var(--soft);font-size:16.5px;font-weight:500}
.ir-pg-repipe .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;counter-reset:st}
.ir-pg-repipe .step{background:var(--tint);border:2px solid var(--line);border-radius:20px;padding:30px 24px 24px;position:relative}
.ir-pg-repipe .step .n{counter-increment:st;position:absolute;top:-20px;left:24px;width:46px;height:46px;border-radius:14px;background:var(--gold);color:#241f10;font-weight:900;font-size:22px;display:flex;align-items:center;justify-content:center}
.ir-pg-repipe .step .n::before{content:counter(st)}
.ir-pg-repipe .step h3{font-size:20px;color:var(--purple-ink);margin:12px 0 6px}
.ir-pg-repipe .step p{color:var(--soft);font-size:16.5px;font-weight:500}
.ir-pg-repipe .reviews{background:var(--tint)}
.ir-pg-repipe .rcard{background:#fff;border:2px solid var(--line);border-radius:20px;padding:24px;box-shadow:var(--shadow-sm)}
.ir-pg-repipe .stars{color:var(--gold);font-size:20px;letter-spacing:2px}
.ir-pg-repipe .rcard p{font-size:17.5px;margin:10px 0 12px;font-weight:500}
.ir-pg-repipe .rcard .who{font-weight:900;color:var(--purple-ink);font-size:15px}
.ir-pg-repipe .rcard .who small{display:block;color:var(--soft);font-weight:600}
.ir-pg-repipe .faq{max-width:840px;margin:0 auto}
.ir-pg-repipe .qa{background:#fff;border:2px solid var(--line);border-radius:16px;margin-bottom:13px;overflow:hidden}
.ir-pg-repipe .qa button{width:100%;text-align:left;background:none;border:none;padding:22px 24px;font-size:19px;font-weight:900;color:var(--purple-ink);cursor:pointer;display:flex;justify-content:space-between;gap:14px;align-items:center}
.ir-pg-repipe .qa button:focus-visible{outline:3px solid var(--purple-lighter);outline-offset:-3px}
.ir-pg-repipe .qa .pm{flex:none;font-size:28px;color:var(--purple);transition:transform .2s;line-height:1}
.ir-pg-repipe .qa .ans{max-height:0;overflow:hidden;transition:max-height .25s ease;padding:0 24px}
.ir-pg-repipe .qa .ans p{color:var(--soft);font-size:17.5px;margin:0 0 22px;font-weight:500}
.ir-pg-repipe .qa.open .ans{max-height:460px}
.ir-pg-repipe .qa.open .pm{transform:rotate(45deg)}
.ir-pg-repipe .final{background:linear-gradient(135deg,var(--purple),var(--purple-deep));color:#fff;text-align:center}
.ir-pg-repipe .final h2{font-size:38px}
.ir-pg-repipe .final p{font-size:21px;color:#e7e1f7;margin:14px 0 26px;font-weight:500}
.ir-pg-repipe .final .btn-ghost{background:rgba(255,255,255,.14);color:#fff;border:2px solid rgba(255,255,255,.4)}
.ir-pg-repipe footer{background:#16121f;color:#a89fc0;font-size:15px;padding:34px 0 120px;text-align:center}
.ir-pg-repipe footer a{color:#ddd3f3;text-decoration:none}
.ir-pg-repipe footer .legal{color:#8f86a6;font-size:13.5px;margin-top:10px}
.ir-pg-repipe .mobilebar{position:fixed;bottom:0;left:0;right:0;z-index:60;display:none;gap:10px;padding:11px 12px;background:rgba(255,255,255,.98);backdrop-filter:blur(8px);border-top:2px solid var(--line);box-shadow:0 -6px 20px rgba(43,37,64,.16)}
.ir-pg-repipe .mobilebar .btn{flex:1;padding:15px;font-size:18px}
@media(max-width:980px){
.ir-pg-repipe .hero .wrap{grid-template-columns:1fr;gap:28px;padding:38px 22px 44px}
.ir-pg-repipe .hero h1{font-size:36px}
.ir-pg-repipe .g4{grid-template-columns:repeat(2,1fr)}
.ir-pg-repipe .g3{grid-template-columns:1fr}
.ir-pg-repipe .steps{grid-template-columns:1fr}
.ir-pg-repipe .cmp{grid-template-columns:1fr}
.ir-pg-repipe .factors{grid-template-columns:1fr}
}
@media(max-width:620px){
.ir-pg-repipe{font-size:18px;padding-bottom:78px}
.ir-pg-repipe .hero h1{font-size:30px}
.ir-pg-repipe .sec-head h2{font-size:27px}
.ir-pg-repipe .final h2{font-size:27px}
.ir-pg-repipe .g4, .ir-pg-repipe .g2{grid-template-columns:1fr}
.ir-pg-repipe .reviews .grid{grid-template-columns:1fr}
.ir-pg-repipe .bar .call span.full{display:none}
.ir-pg-repipe .mobilebar{display:flex}
.ir-pg-repipe .costrow{flex-direction:column;align-items:flex-start;gap:6px}
}
@media print{
.ir-pg-repipe .preview, .ir-pg-repipe .mobilebar{display:none}
.ir-pg-repipe .hero::after{display:none}
}

/* ===== Slab Leak Repair (mockup) (scoped to .ir-pg-slab) ===== */
:root{--purple:#5C5193;--purple-light:#8C82BF;--purple-lighter:#9E90E2;--purple-deep:#3b3457;--purple-ink:#2b2540;
    --ink:#1b1828;--soft:#5c5870;--line:#e7e3f1;--tint:#f6f4fc;--gold:#ffc400;--gold-dark:#e6a700;--good:#1e9e6a;--red:#c0392b;
    --shadow:0 12px 32px rgba(43,37,64,.13);--shadow-sm:0 5px 16px rgba(43,37,64,.10)}
.ir-pg-slab{box-sizing:border-box}
.ir-pg-slab{scroll-behavior:smooth}
.ir-pg-slab{margin:0;background:#fff;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;font-size:20px;line-height:1.6;-webkit-font-smoothing:antialiased}
.ir-pg-slab img, .ir-pg-slab svg{max-width:100%;display:block}
.ir-pg-slab .wrap{max-width:1080px;margin:0 auto;padding:0 22px}
.ir-pg-slab h1, .ir-pg-slab h2, .ir-pg-slab h3{margin:0;line-height:1.13;letter-spacing:-.5px;font-weight:900}
.ir-pg-slab p{margin:0}
.ir-pg-slab .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;font-weight:900;border-radius:14px;padding:18px 28px;font-size:20px;cursor:pointer;border:none;min-height:58px;transition:transform .08s,background .15s}
.ir-pg-slab .btn:hover{transform:translateY(-2px)}
.ir-pg-slab .btn:focus-visible{outline:4px solid var(--purple-lighter);outline-offset:2px}
.ir-pg-slab .btn-gold{background:var(--gold);color:#241f10;box-shadow:0 10px 24px rgba(255,196,0,.42)}
.ir-pg-slab .btn-gold:hover{background:var(--gold-dark)}
.ir-pg-slab .btn-purple{background:var(--purple);color:#fff;box-shadow:0 10px 24px rgba(92,81,147,.36)}
.ir-pg-slab .btn-purple:hover{background:var(--purple-deep)}
.ir-pg-slab .preview{background:var(--purple-ink);color:#e7e1f7;font-size:14px;text-align:center;padding:8px 14px;font-weight:600}
.ir-pg-slab .preview b{color:#fff}
.ir-pg-slab .bar{background:#fff;border-bottom:2px solid var(--line);position:sticky;top:0;z-index:40}
.ir-pg-slab .bar .in{display:flex;align-items:center;justify-content:space-between;padding:12px 0;gap:12px}
.ir-pg-slab .brand{display:flex;align-items:center;gap:11px;font-weight:900;font-size:22px;color:var(--purple-ink)}
.ir-pg-slab .brand .mark{width:40px;height:40px;flex:none}
.ir-pg-slab .bar .call{display:flex;align-items:center;gap:9px;background:var(--purple);color:#fff;text-decoration:none;font-weight:900;font-size:19px;padding:11px 18px;border-radius:12px}
.ir-pg-slab .bar .call:hover{background:var(--purple-deep)}
.ir-pg-slab .hero{background:linear-gradient(155deg,#5C5193,#4a4179 52%,#3b3457);color:#fff;position:relative;overflow:hidden}
.ir-pg-slab .hero .wrap{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:38px;align-items:center;padding:46px 22px 54px}
.ir-pg-slab .hero .urg{display:inline-flex;align-items:center;gap:9px;background:rgba(255,196,0,.16);border:1.5px solid rgba(255,196,0,.45);color:#ffe9a8;border-radius:999px;padding:9px 16px;font-weight:800;font-size:15px;margin-bottom:18px}
.ir-pg-slab .hero h1{font-size:45px}
.ir-pg-slab .hero h1 .hl{color:var(--gold)}
.ir-pg-slab .hero p.sub{font-size:21px;color:#ece8fb;margin:18px 0 24px;font-weight:500}
.ir-pg-slab .checks{display:grid;gap:11px;margin:0 0 26px;padding:0}
.ir-pg-slab .checks li{list-style:none;display:flex;align-items:center;gap:12px;font-weight:700;font-size:18px}
.ir-pg-slab .checks .ck{flex:none;width:30px;height:30px;border-radius:50%;background:var(--good);display:flex;align-items:center;justify-content:center}
.ir-pg-slab .hero .cta{display:flex;gap:14px;flex-wrap:wrap}
.ir-pg-slab .hero .btn-ghost{background:rgba(255,255,255,.14);color:#fff;border:2px solid rgba(255,255,255,.4)}
.ir-pg-slab .hero::after{content:"";position:absolute;right:-150px;top:-120px;width:480px;height:480px;border-radius:50%;background:radial-gradient(circle,rgba(158,144,226,.55),transparent 62%);z-index:1}
.ir-pg-slab .lead-card{background:#fff;color:var(--ink);border-radius:22px;box-shadow:var(--shadow);padding:28px 26px;border-top:7px solid var(--gold)}
.ir-pg-slab .lead-card h3{font-size:25px;color:var(--purple-ink)}
.ir-pg-slab .lead-card .sm{color:var(--soft);font-size:16px;margin:8px 0 18px;font-weight:500}
.ir-pg-slab .field{margin-bottom:13px}
.ir-pg-slab .field label{display:block;font-weight:800;font-size:15px;margin-bottom:6px}
.ir-pg-slab .field input, .ir-pg-slab .field select{width:100%;font-size:18px;padding:15px;border:2.5px solid var(--line);border-radius:13px;background:var(--tint);font-weight:600}
.ir-pg-slab .field input:focus, .ir-pg-slab .field select:focus{outline:none;border-color:var(--purple)}
.ir-pg-slab .lead-card .btn{width:100%}
.ir-pg-slab .lead-card .or{text-align:center;color:var(--soft);font-weight:700;font-size:15px;margin:14px 0 8px}
.ir-pg-slab .lead-card .cn{display:flex;align-items:center;justify-content:center;gap:9px;font-weight:900;font-size:25px;color:var(--purple-ink);text-decoration:none}
.ir-pg-slab .strip{background:var(--purple-ink);border-bottom:4px solid var(--gold)}
.ir-pg-slab .strip .row{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;padding:15px 0}
.ir-pg-slab .chip{color:#fff;font-weight:800;font-size:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:9px 17px}
.ir-pg-slab section{padding:60px 0}
.ir-pg-slab .sec-head{text-align:center;max-width:740px;margin:0 auto 38px}
.ir-pg-slab .sec-head .k{color:var(--purple);font-weight:900;letter-spacing:.09em;text-transform:uppercase;font-size:15px}
.ir-pg-slab .sec-head h2{font-size:35px;color:var(--purple-ink);margin:10px 0}
.ir-pg-slab .sec-head p{color:var(--soft);font-size:19px;font-weight:500}
.ir-pg-slab .grid{display:grid;gap:22px}
.ir-pg-slab .g4{grid-template-columns:repeat(4,1fr)}
.ir-pg-slab .g3{grid-template-columns:repeat(3,1fr)}
.ir-pg-slab .g2{grid-template-columns:repeat(2,1fr)}
.ir-pg-slab .card{background:#fff;border:2px solid var(--line);border-radius:20px;padding:24px;box-shadow:var(--shadow-sm)}
.ir-pg-slab .ic{width:60px;height:60px;border-radius:17px;display:flex;align-items:center;justify-content:center;font-size:30px;margin-bottom:14px;background:linear-gradient(140deg,var(--gold),#ffb000)}
.ir-pg-slab .ic.p{background:linear-gradient(140deg,var(--purple-light),var(--purple))}
.ir-pg-slab .card h3{font-size:20px;color:var(--purple-ink);margin-bottom:6px}
.ir-pg-slab .card p{color:var(--soft);font-size:16.5px;font-weight:500}
.ir-pg-slab .why{background:linear-gradient(160deg,var(--purple-ink),var(--purple-deep));color:#fff}
.ir-pg-slab .why .sec-head h2{color:#fff}
.ir-pg-slab .why .card{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.14)}
.ir-pg-slab .why .card h3{color:#fff}
.ir-pg-slab .why .card p{color:#d7cfee}
.ir-pg-slab .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;counter-reset:st}
.ir-pg-slab .step{background:var(--tint);border:2px solid var(--line);border-radius:20px;padding:30px 24px 24px;position:relative}
.ir-pg-slab .step .n{counter-increment:st;position:absolute;top:-20px;left:24px;width:46px;height:46px;border-radius:14px;background:var(--gold);color:#241f10;font-weight:900;font-size:22px;display:flex;align-items:center;justify-content:center}
.ir-pg-slab .step .n::before{content:counter(st)}
.ir-pg-slab .step h3{font-size:20px;color:var(--purple-ink);margin:12px 0 6px}
.ir-pg-slab .step p{color:var(--soft);font-size:16.5px;font-weight:500}
.ir-pg-slab .reviews{background:var(--tint)}
.ir-pg-slab .rcard{background:#fff;border:2px solid var(--line);border-radius:20px;padding:24px;box-shadow:var(--shadow-sm)}
.ir-pg-slab .stars{color:var(--gold);font-size:20px;letter-spacing:2px}
.ir-pg-slab .rcard p{font-size:17.5px;margin:10px 0 12px;font-weight:500}
.ir-pg-slab .rcard .who{font-weight:900;color:var(--purple-ink);font-size:15px}
.ir-pg-slab .rcard .who small{display:block;color:var(--soft);font-weight:600}
.ir-pg-slab .faq{max-width:840px;margin:0 auto}
.ir-pg-slab .qa{background:#fff;border:2px solid var(--line);border-radius:16px;margin-bottom:13px;overflow:hidden}
.ir-pg-slab .qa button{width:100%;text-align:left;background:none;border:none;padding:22px 24px;font-size:19px;font-weight:900;color:var(--purple-ink);cursor:pointer;display:flex;justify-content:space-between;gap:14px;align-items:center}
.ir-pg-slab .qa button:focus-visible{outline:3px solid var(--purple-lighter);outline-offset:-3px}
.ir-pg-slab .qa .pm{flex:none;font-size:28px;color:var(--purple);transition:transform .2s;line-height:1}
.ir-pg-slab .qa .ans{max-height:0;overflow:hidden;transition:max-height .25s ease;padding:0 24px}
.ir-pg-slab .qa .ans p{color:var(--soft);font-size:17.5px;margin:0 0 22px;font-weight:500}
.ir-pg-slab .qa.open .ans{max-height:420px}
.ir-pg-slab .qa.open .pm{transform:rotate(45deg)}
.ir-pg-slab .final{background:linear-gradient(135deg,var(--purple),var(--purple-deep));color:#fff;text-align:center}
.ir-pg-slab .final h2{font-size:38px}
.ir-pg-slab .final p{font-size:21px;color:#e7e1f7;margin:14px 0 26px;font-weight:500}
.ir-pg-slab .final .btn-ghost{background:rgba(255,255,255,.14);color:#fff;border:2px solid rgba(255,255,255,.4)}
.ir-pg-slab footer{background:#16121f;color:#a89fc0;font-size:15px;padding:34px 0 120px;text-align:center}
.ir-pg-slab footer a{color:#ddd3f3;text-decoration:none}
.ir-pg-slab footer .legal{color:#8f86a6;font-size:13.5px;margin-top:10px}
.ir-pg-slab .mobilebar{position:fixed;bottom:0;left:0;right:0;z-index:60;display:none;gap:10px;padding:11px 12px;background:rgba(255,255,255,.98);backdrop-filter:blur(8px);border-top:2px solid var(--line);box-shadow:0 -6px 20px rgba(43,37,64,.16)}
.ir-pg-slab .mobilebar .btn{flex:1;padding:15px;font-size:18px}
@media(max-width:980px){
.ir-pg-slab .hero .wrap{grid-template-columns:1fr;gap:28px;padding:38px 22px 44px}
.ir-pg-slab .hero h1{font-size:37px}
.ir-pg-slab .g4{grid-template-columns:repeat(2,1fr)}
.ir-pg-slab .g3{grid-template-columns:1fr}
.ir-pg-slab .steps{grid-template-columns:1fr}
}
@media(max-width:620px){
.ir-pg-slab{font-size:18px;padding-bottom:78px}
.ir-pg-slab .hero h1{font-size:30px}
.ir-pg-slab .sec-head h2{font-size:27px}
.ir-pg-slab .final h2{font-size:27px}
.ir-pg-slab .g4, .ir-pg-slab .g2{grid-template-columns:1fr}
.ir-pg-slab .reviews .grid{grid-template-columns:1fr}
.ir-pg-slab .bar .call span.full{display:none}
.ir-pg-slab .mobilebar{display:flex}
}
@media print{
.ir-pg-slab .preview, .ir-pg-slab .mobilebar{display:none}
.ir-pg-slab .hero::after{display:none}
}
/* ===== v1.5.0: header nav is now an editable WordPress Navigation block ===== */
/* Manage items in Appearance > Editor > Navigation (reorder/add/remove from the dashboard). */
.site .wrap.nav{display:flex;align-items:center;gap:18px}
.site .wp-block-navigation{font-weight:800}
.site .wp-block-navigation .wp-block-navigation__container{gap:24px;align-items:center}
.site .wp-block-navigation .wp-block-navigation-item__content,
.site .wp-block-navigation a{color:var(--ink) !important;font-weight:800;font-size:17px;text-decoration:none}
.site .wp-block-navigation .wp-block-navigation-item__content:hover{color:var(--purple) !important}
.site .wp-block-navigation .wp-block-navigation__responsive-container-open,
.site .wp-block-navigation .wp-block-navigation__responsive-container-close{color:var(--purple-ink)}

/* ===== v1.6.0: header nav = managed WP menu (Appearance > Editor > Navigation, "Integrity Primary"). ===== */
/* Desktop */
.site .nav .wp-block-navigation{font-weight:800}
.site .nav .wp-block-navigation__container{gap:24px;align-items:center}
.site .nav .wp-block-navigation .wp-block-navigation-item__content,
.site .nav .wp-block-navigation a{color:var(--ink) !important;font-weight:800;font-size:17px;text-decoration:none}
.site .nav .wp-block-navigation .wp-block-navigation-item__content:hover{color:var(--purple) !important}
/* Mobile hamburger */
.site .wp-block-navigation__responsive-container-open{color:var(--purple-ink)}
.site .wp-block-navigation__responsive-container-open svg{width:30px;height:30px}
/* Mobile drawer (open state): full purple panel, big tappable links */
.site .wp-block-navigation__responsive-container.is-menu-open{background:var(--purple-ink);padding:64px 28px 32px}
.site .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{gap:6px}
.site .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content,
.site .wp-block-navigation__responsive-container.is-menu-open a{color:#fff !important;font-size:22px;font-weight:800;padding:12px 0;display:block;border-bottom:1px solid rgba(255,255,255,.12)}
.site .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close{color:#fff;width:34px;height:34px}

/* ===== v1.7.0: Services dropdown + Services pillar page ===== */
/* Desktop dropdown */
.site .wp-block-navigation .wp-block-navigation-submenu__toggle{color:var(--ir-ink,#1b1828) !important;font-weight:800;font-size:17px}
.site .wp-block-navigation .wp-block-navigation__submenu-container{background:#fff;border:1px solid var(--ir-line,#e7e3f1);border-radius:14px;box-shadow:0 12px 32px rgba(43,37,64,.16);padding:8px;min-width:240px}
.site .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content{color:var(--ir-ink,#1b1828) !important;font-size:16px;font-weight:700;padding:9px 12px;border-radius:9px;display:block}
.site .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item:hover .wp-block-navigation-item__content{background:var(--ir-tint,#f6f4fc);color:var(--ir-purple,#5C5193) !important}
/* Mobile drawer: submenu flattens, white text, indented */
.site .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container{background:transparent;border:none;box-shadow:none;padding:0 0 0 14px;min-width:0}
.site .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content{color:#fff !important;font-size:18px}

/* Services pillar page */
.ir-pg-services .swrap{max-width:1160px;margin:0 auto;padding:0 22px}
.ir-pg-services section{padding:64px 0}
.ir-pg-services .shero{background:linear-gradient(155deg,#5C5193 0%,#4a4179 52%,#3b3457 100%);color:#fff;text-align:center;padding:76px 0}
.ir-pg-services .shero .eyebrow{color:#fff;background:rgba(255,255,255,.14);border:1.5px solid rgba(255,255,255,.28)}
.ir-pg-services .shero h1{color:#fff;font-size:46px;margin:16px 0;line-height:1.12}
.ir-pg-services .shero h1 .hl{color:var(--ir-gold,#ffc400)}
.ir-pg-services .shero p{color:#ece8fb;font-size:20px;max-width:760px;margin:0 auto 26px;font-weight:500}
.ir-pg-services .shero .cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.ir-pg-services .grid.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.ir-pg-services .pcard p:last-child{margin-top:14px;margin-bottom:0}
.ir-pg-services .final .cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
@media(max-width:980px){ .ir-pg-services .grid.g3{grid-template-columns:1fr} .ir-pg-services .shero h1{font-size:33px} }

/* ===== v1.8.0: header nav one-line fix (no wrap) + footer CSLB ===== */
.site .wrap.nav{max-width:1240px;gap:22px;align-items:center}
.site .nav .wp-block-navigation__container{flex-wrap:nowrap !important;gap:22px}
.site .nav .wp-block-navigation .wp-block-navigation-item__content,
.site .nav .wp-block-navigation a,
.site .nav .wp-block-navigation .wp-block-navigation-submenu__toggle{font-size:16px !important;white-space:nowrap}
.site .phone,.site .phone .num,.site .phone .lab{white-space:nowrap}


/* ===== v1.9.0: Mode B - native editable blocks (WYSIWYG). Front end stays identical. ===== */
/* Footer is native blocks now; cols was a div, keep its grid + heading color */
footer .wp-block-group.cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}
footer h4.wp-block-heading{color:#fff;font-size:17px;margin:0 0 12px}
footer p.legal{border-top:1px solid rgba(255,255,255,.13);margin-top:30px;padding-top:18px;color:#8f86a6;font-size:14px}
@media(max-width:980px){ footer .wp-block-group.cols{grid-template-columns:1fr;gap:24px} }

/* CTAs render as core/button now: style the link to match .btn (both-ways, per SOP fix 6) */
.wp-block-button.btn .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;font-weight:900;border-radius:14px;padding:18px 28px;font-size:19px;min-height:56px;border:none;line-height:1.2;transition:transform .08s,box-shadow .15s,background .15s}
.wp-block-button.btn:hover .wp-block-button__link{transform:translateY(-2px)}
.wp-block-button.btn-gold .wp-block-button__link{background:var(--gold);color:#241f10;box-shadow:0 10px 24px rgba(255,196,0,.4)}
.wp-block-button.btn-gold:hover .wp-block-button__link{background:var(--gold-dark)}
.wp-block-button.btn-purple .wp-block-button__link{background:var(--purple);color:#fff;box-shadow:0 10px 24px rgba(92,81,147,.36)}
.wp-block-button.btn-purple:hover .wp-block-button__link{background:var(--purple-deep)}
.wp-block-button.btn-ghost .wp-block-button__link{background:#fff;color:var(--purple);border:2.5px solid var(--purple-light)}
.wp-block-button.btn-ghost:hover .wp-block-button__link{background:var(--tint)}
.final .wp-block-button.btn-ghost .wp-block-button__link{background:rgba(255,255,255,.14);color:#fff;border:2.5px solid rgba(255,255,255,.4)}
.hero .cta.wp-block-buttons,.final .cta.wp-block-buttons{flex-wrap:wrap}
.final .cta.wp-block-buttons{justify-content:center}

/* FAQ uses core/details now: replicate the +/- toggle without an editable span */
.qa summary{list-style:none;width:100%;padding:22px 24px;font-size:19px;font-weight:900;color:var(--purple-ink);cursor:pointer;display:flex;justify-content:space-between;gap:14px;align-items:center}
.qa summary::-webkit-details-marker{display:none}
.qa summary::after{content:"+";flex:none;font-size:28px;line-height:1;color:var(--purple);font-weight:400;transition:transform .2s}
.qa[open] summary::after{transform:rotate(45deg)}
.qa > :not(summary){margin:0;padding:0 24px 22px}
.qa > :not(summary),.qa > :not(summary) p{color:var(--soft);font-size:17.5px;font-weight:500;margin:0}

/* kicker colors that were inline in the mockup */
.why .sec-head .kicker{color:var(--purple-lighter)}
.area .kicker{color:var(--purple);font-weight:900;letter-spacing:.09em;text-transform:uppercase;font-size:15px}
.area h2.wp-block-heading{font-size:36px;color:var(--purple-ink);margin:12px 0 8px}
.area .wp-block-group > p{color:var(--soft);font-size:19px;font-weight:500}
#area{padding-top:0}

/* our .wrap owns content width; the group wrapper must not re-constrain it */
.wp-block-group.wrap{max-width:1160px;margin-inline:auto;padding:0 22px}
.badges .wp-block-group.wrap.row{max-width:1160px}
