/* KCR legacy-page chrome. Generated by tools/build_legacy_css.py.
   Header, mega menu, footer, sticky call bar, estimate modal and
   design tokens ONLY - the page's own content keeps the styling it
   already has from the parent theme. */
:root{
    --ink:#06131F; --navy:#081C30; --navy2:#0E2A47; --green:#5CB947; --green-d:#3A8A2E; --green-t:#EAF5E6;
    --gold:#F2B84B; --gold-d:#D99A2B; --cloud:#F6F8FA; --white:#FFFFFF; --slate:#45606E; --line:#E8ECEF; --hd:#0B1F33;
  }
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:92px}
body{margin:0;font-family:'Public Sans',system-ui,sans-serif;color:#10222E;background:var(--cloud);-webkit-font-smoothing:antialiased}
html,body{overflow-x:clip}
.btn{display:inline-flex;align-items:center;gap:11px;border-radius:999px;font-weight:700;cursor:pointer;border:0;transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s,background .25s;will-change:transform}
.btn:hover{transform:translateY(-3px)}
.btn:active{transform:translateY(-1px) scale(.98)}
.btn:focus-visible{outline:3px solid rgba(92,185,71,.5);outline-offset:2px}
.btn-green{background:var(--green);color:#fff;box-shadow:0 6px 18px rgba(92,185,71,.35)}
.btn-green:hover{background:#63c44e;box-shadow:0 12px 28px rgba(92,185,71,.45)}
.btn-ghost{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.24);color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,.18)}
.btn-outline{background:transparent;border:2px solid var(--green-d);color:var(--green-d)}
.btn-outline:hover{background:var(--green-t)}
/* top bar */
  .topbar{background:var(--ink);color:#9FB3BE;font-size:13px;font-weight:500;text-align:center;padding:11px 16px}
.topbar b{color:#7ED957;font-weight:700}
/* header */
  .hdr{position:sticky;top:0;z-index:60;background:#fff;border-bottom:1px solid var(--line);transition:box-shadow .3s,padding .3s}
.hdr.scrolled{box-shadow:0 10px 30px rgba(6,19,31,.12)}
.hdr-in{display:flex;justify-content:space-between;align-items:center;height:84px;transition:height .3s}
.hdr.scrolled .hdr-in{height:68px}
.hdr img{height:52px;transition:height .3s}
.hdr.scrolled img{height:44px}
.nav{display:flex;gap:30px;font-weight:600;font-size:15px}
.nav a{color:#10222E;position:relative;padding:6px 0}
.nav a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:2.5px;background:var(--green);border-radius:2px;transition:width .3s}
.nav a:hover::after{width:100%}
.nav a.q{color:var(--green-d)}
.mbadge{display:none}
.mbar10{display:none}
@media (max-width:1180px){
.mbadge{display:block;width:clamp(150px,19vw,200px);flex-shrink:0;align-self:center;filter:drop-shadow(0 14px 28px rgba(2,10,18,.55));z-index:4}
}
@media (max-width:1023px){
.nav{display:none}
}
.c2grid{display:contents}
.c2num{font-size:22px;font-weight:800;text-align:center;white-space:nowrap}
.rings-sub{display:block;text-align:center}
.rings-sub b{font-family:'Archivo',sans-serif;font-weight:900;color:#fff}
.rings-sub .rings-count{height:14px;margin-left:0}
.rings-sub .rings-count i:nth-child(1){height:6px}
.rings-sub .rings-count i:nth-child(2){height:10px}
.rings-sub .rings-count i:nth-child(3){height:14px}
.rings-cta{position:relative;display:flex;align-items:center;gap:16px;margin-top:30px;width:100%;max-width:660px;font-size:17.5px;font-weight:700;color:#E6EFF5;letter-spacing:.01em}
.rings-cta .rline{flex:1;height:2px;border-radius:2px;background:linear-gradient(90deg,transparent,rgba(126,217,87,.5))}
.rings-cta .rline.r2{background:linear-gradient(90deg,rgba(126,217,87,.5),transparent)}
.rings-cta b{font-family:'Archivo',sans-serif;font-weight:900;background:linear-gradient(92deg,#7ED957,#C4F09A);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#7ED957}
.rings-cta .ric{position:relative;width:48px;height:48px;border-radius:999px;background:linear-gradient(135deg,#5CB947,#3A8A2E);display:flex;justify-content:center;align-items:center;flex-shrink:0;box-shadow:0 8px 20px rgba(92,185,71,.5)}
.rings-cta .ric::before,.rings-cta .ric::after{content:"";position:absolute;inset:0;border-radius:999px;border:2px solid rgba(126,217,87,.55);animation:sonar 2.6s ease-out infinite}
.rings-cta .ric::after{animation-delay:1.3s}
.rings-cta .ric svg{animation:ringring 4s ease-in-out 1.2s infinite;transform-origin:50% 12%}
.rings-count{display:flex;align-items:flex-end;gap:4px;margin-left:6px;height:22px}
.rings-count i{display:block;width:5px;border-radius:3px;background:rgba(126,217,87,.28)}
.rings-count i:nth-child(1){height:9px;animation:ringbar 2.6s ease-in-out 0s infinite}
.rings-count i:nth-child(2){height:15px;animation:ringbar 2.6s ease-in-out .35s infinite}
.rings-count i:nth-child(3){height:21px;animation:ringbar 2.6s ease-in-out .7s infinite}
.ftr{background:var(--ink);color:#8AA0AC;padding:60px 0 30px}
.ftr-g{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px}
.ftr a{color:#8AA0AC;display:block;padding:4px 0;transition:color .25s,transform .25s}
.ftr a:hover{color:#7ED957;transform:translateX(4px)}
.ftr-t{font-weight:700;font-size:12px;letter-spacing:.12em;color:#fff;margin-bottom:8px}
.ftr-bot{border-top:1px solid #12283A;display:flex;justify-content:space-between;align-items:center;padding-top:22px;margin-top:36px;font-size:13px;flex-wrap:wrap;gap:10px}
/* floating */
  .to-top{position:fixed;right:26px;bottom:96px;width:52px;height:52px;border-radius:999px;background:var(--navy);color:#fff;border:0;display:flex;justify-content:center;align-items:center;cursor:pointer;box-shadow:0 12px 30px rgba(6,19,31,.4);opacity:0;pointer-events:none;transition:opacity .3s,transform .3s;z-index:70}
.to-top.on{opacity:1;pointer-events:auto}
.to-top:hover{transform:translateY(-4px);background:var(--green)}
.mbar{position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:1px solid var(--line);box-shadow:0 -8px 24px rgba(6,19,31,.12);display:none;gap:10px;padding:12px 14px calc(14px + env(safe-area-inset-bottom));z-index:80;transform:translateY(110%);transition:transform .35s ease}
.mbar.on{transform:none}
.mbar a{flex:1;display:flex;justify-content:center;align-items:center;gap:8px;font-weight:700;font-size:15px;padding:13px 0;border-radius:999px}
.mbar .c{flex:1.5;background:#0E2A47;color:#fff;box-shadow:0 3px 10px rgba(8,28,48,.35)}
.mbar .o{border:1.5px solid var(--ink);color:var(--ink)}
@media (prefers-reduced-motion: reduce){
*{animation:none!important;transition:none!important}
}
@media (max-width:1180px){
.ftr-g{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
.nav{display:none}
.mbar{display:flex}
body{padding-bottom:76px}
}
@media (max-width:760px){
.topbar{display:none}
.hdr-in{height:62px}
.hdr.scrolled .hdr-in{height:62px}
.hdr img{height:38px}
.hdr.scrolled img{height:38px}
.hdr .btn{padding:10px 14px;font-size:13.5px;white-space:nowrap}
.ftr{text-align:center;padding:44px 0 24px}
.ftr-g{grid-template-columns:1fr;gap:26px;justify-items:center}
.ftr-g>div:first-child{align-items:center}
.ftr-g>div:first-child p{max-width:320px}
.ftr .ftr-t{margin-bottom:10px;letter-spacing:.14em}
.ftr a{padding:3px 0;font-size:14px}
.ftr-bot{flex-direction:column;align-items:center;text-align:center;gap:10px;margin-top:30px}
.mbar10{position:relative;z-index:3;display:flex;align-items:center;justify-content:center;gap:9px;background:#fff;color:var(--ink);font-weight:800;font-size:14px;padding:16px 20px;box-shadow:0 12px 26px rgba(6,19,31,.22)}
.rings-cta{font-size:14px;gap:10px;margin-top:20px}
.rings-cta .ric{width:40px;height:40px}
.rings-count{height:18px;margin-left:2px}
.rings-count i:nth-child(1){height:8px}
.rings-count i:nth-child(2){height:13px}
.rings-count i:nth-child(3){height:18px}
.mbadge{position:absolute;align-self:auto;top:72px;right:16px;width:84px}
}
/* Sergei, Aug 27: homepage mobile hero matches the city-page hero exactly (layout, not copy). */
@media (max-width:760px){
.tbar{display:inline-flex;align-self:center;justify-content:center;gap:8px;border-radius:999px;padding:8px 16px;box-shadow:0 8px 22px rgba(92,185,71,.4)}
.tbar svg{display:block;width:11px;height:11px;flex-shrink:0}
.tbar span{font-size:9.5px;letter-spacing:.08em;white-space:nowrap}
.mbadge{display:none}
.mbar10{display:none}
.svcbar{display:inline-flex;padding:11px 13px;gap:0 8px;border-radius:11px;align-self:center;width:100%;justify-content:center;flex-wrap:nowrap;background:linear-gradient(92deg,rgba(9,28,46,.78),rgba(9,28,46,.44));border:1px solid rgba(126,217,87,.34);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 12px 32px rgba(2,10,18,.4);animation:rise .9s cubic-bezier(.2,.7,.2,1) .3s both;align-items:center}
.svcbar span,.svcbar a{font-size:13.5px}
.pcard-m{display:block;background:#fff;border-radius:16px;padding:8px 8px 11px;box-shadow:0 18px 44px rgba(2,10,18,.4);animation:rise .9s cubic-bezier(.2,.7,.2,1) .4s both;width:100%}
.pcard-m .pimg{position:relative}
.pcard-m .pimg img{width:100%;height:212px;object-fit:cover;border-radius:11px;display:block}
.pcard-m .cap{display:flex;justify-content:center;align-items:center;gap:12px;padding:10px 6px 0;font-weight:700;font-size:13.5px;color:#10222E}
.hero-strip{flex-direction:column;align-items:stretch;gap:0;padding:0;font-size:15px;border-radius:18px;overflow:hidden}
.strip10{display:flex!important;align-items:center;justify-content:center;gap:8px;padding:13px 12px;font-size:13.5px;font-weight:700;color:#E6EFF5;background:rgba(242,184,75,.09);border-bottom:1px solid rgba(126,217,87,.22);white-space:nowrap}
.strip10 .gold{font-family:'Archivo',sans-serif;font-weight:900;color:#F2B84B}
.strip10 svg{flex-shrink:0}
.hero-strip .txt{padding:15px 18px}
.sbadge{display:block;width:96px;flex-shrink:0;filter:drop-shadow(0 8px 18px rgba(2,10,18,.28));margin:0 auto}
.hdr-in{gap:10px}
.hdr img{height:34px;flex-shrink:0}
.hero-in{padding-top:14px}
.hero-copy{align-items:center;text-align:center;width:100%}
.h1{text-align:center;line-height:1.12}
.hero-btns{width:100%;justify-content:center}
.trust{width:100%;justify-content:center;gap:0;border-top:1px solid rgba(255,255,255,.16);padding-top:22px;margin-top:20px}
.titem{flex:1;align-items:center!important;text-align:center!important}
.titem b{justify-content:center}
.sec-head{align-items:center!important;text-align:center}
.sec-head>div{align-items:center!important}
.eyebrow{justify-content:center}
.h2{text-align:center}
.caro-nav{justify-content:center;gap:18px}
.ftr-bot{justify-content:center}
.step{flex-direction:column;align-items:center;text-align:center;gap:16px}
.step img{width:110px;height:110px}
.step .n{margin:0 auto}
.slide{align-items:center;text-align:center}
.slide .st{justify-content:center}
.warr{align-items:center;text-align:center}
.wchips{justify-content:center}
.qform{align-items:center;text-align:center}
.qform b{text-align:center;display:block}
.form-in>div:first-child{text-align:center}
#areas .chips{justify-content:center}
#areas p{text-align:center;margin-left:auto;margin-right:auto}
.cta .rings-cta{display:none}
.call2{padding:13px 70px 14px}
.call2 .ric{left:36px}
.call2 .rings-count{right:36px}
.call2 .rings-sub{font-size:14.5px}
.call2 .rings-sub b{background:linear-gradient(92deg,#7ED957,#C4F09A);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#7ED957}
.m-text{border:1.5px solid rgba(126,217,87,.5);background:rgba(255,255,255,.13);box-shadow:0 0 16px rgba(126,217,87,.16),0 10px 26px rgba(2,10,18,.3)}
.chip-gold{margin:0}
}
/* MEGAMENU-CSS START (from menu.html â€” edit the prototype, rerun add_megamenu.py) */
.hdr>.wrap{position:static}
.hdr img.logo{height:52px}
.nav{display:flex;align-items:center;gap:28px;font-weight:600;font-size:15px}
.nav>a,.ni>a{color:#10222E;position:relative;padding:30px 0;display:inline-flex;align-items:center;gap:7px}
.nav>a::after,.ni>a::after{content:"";position:absolute;left:0;bottom:22px;width:0;height:2.5px;background:var(--green);border-radius:2px;transition:width .3s}
.nav>a:hover::after,.ni:hover>a::after{width:100%}
.ni>a svg{transition:transform .3s}
.ni:hover>a svg{transform:rotate(180deg)}
.ni:hover>a{color:var(--green-d)}
/* mega */
  .mega{position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid var(--line);box-shadow:0 50px 90px rgba(6,19,31,.25);opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .28s,transform .28s,visibility .28s;transition-delay:.14s;z-index:80}
.mega::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#3A8A2E,#7ED957 50%,#3A8A2E)}
.ni:hover .mega,.ni.open .mega{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.mega-in{max-width:1360px;margin:0 auto;display:flex;align-items:stretch;padding:0 40px;min-height:432px}
.mrail{width:262px;flex-shrink:0;border-right:1px solid var(--line);padding:20px 0 16px;display:flex;flex-direction:column}
.mrail-list{display:flex;flex-direction:column;flex:1}
.mtabs-rail{margin:0 16px 14px 15px}
.mtabs-rail b{flex:1;text-align:center}
.mrail button{all:unset;display:flex;align-items:center;gap:11px;padding:10px 16px 10px 15px;font-weight:600;font-size:14px;color:#10222E;cursor:pointer;border-left:3px solid transparent;border-radius:0 10px 10px 0;transition:background .2s,color .2s}
.mrail button svg{flex-shrink:0}
.mrail button:hover{background:var(--cloud)}
.mrail button.on{background:var(--green-t);border-left-color:var(--green);color:var(--green-d);font-weight:700}
.mrail .c1{background:#FDF3DF;color:#A96F0F;font-weight:800;font-size:9.5px;padding:3px 8px;border-radius:999px;margin-left:auto;white-space:nowrap}
.mtabs{display:flex;gap:6px;background:var(--cloud);border:1px solid var(--line);border-radius:999px;padding:4px}
.mtabs b{padding:7px 18px;border-radius:999px;font-size:13px;font-weight:700;color:var(--slate);cursor:pointer;transition:all .2s}
.mtabs b.on{background:var(--navy2);color:#fff}
.mxtra{margin-top:14px;padding-top:14px;border-top:1px dashed var(--line)}
.mxtra .xh{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:#3A8A2E}
.mxtra .xrow{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.mxtra a{font-size:12.5px;font-weight:600;color:var(--navy2);background:rgba(92,185,71,.1);border:1px solid rgba(92,185,71,.32);border-radius:999px;padding:5px 12px;text-decoration:none}
.mxtra a:hover{background:rgba(92,185,71,.18)}
.msearch{display:flex;align-items:center;gap:9px;flex:1;max-width:430px;background:var(--cloud);border:1.5px solid var(--line);border-radius:999px;padding:9px 16px;position:relative}
.msearch input{all:unset;flex:1;font-size:15px;color:#10222E;position:relative;min-width:0}
.msearch input::placeholder{color:#8A97A3}
.msearch .ghost{position:absolute;left:40px;right:44px;top:50%;transform:translateY(-50%);font-size:15px;color:#AFBAC4;pointer-events:none;white-space:nowrap;overflow:hidden}
.msx{all:unset;cursor:pointer;width:22px;height:22px;border-radius:999px;display:none;align-items:center;justify-content:center;color:#8A97A3;background:#E8ECEF;flex-shrink:0}
.msx:hover{background:#DDE3E8;color:#45606E}
.msearch.hasval .msx{display:inline-flex}
.mall{font-weight:700;font-size:13.5px;white-space:nowrap}
.mcols{display:grid;grid-template-columns:repeat(3,1fr);gap:8px 26px;align-content:start}
.mcol h5{margin:0 0 6px;font-family:'Public Sans',sans-serif;font-size:10.5px;font-weight:700;letter-spacing:.14em;color:#8A97A3;border-bottom:1px solid var(--line);padding-bottom:7px}
.mcol a{display:block;width:fit-content;position:relative;font-size:13.5px;font-weight:500;color:#2A4150;padding:5px 0;transition:color .2s}
.mcol a::after{content:"";position:absolute;left:0;bottom:1px;height:2px;width:100%;background:var(--green);border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform .22s}
.mcol a:hover{color:var(--green-d)}
.mcol a:hover::after{transform:scaleX(1)}
.mega .btn,.mega .btn:hover,.mall,.mall:hover{text-decoration:none!important}
.mcol a.btn::after{content:none}
.mfeat{width:296px;flex-shrink:0;padding:24px 0 20px 30px;display:flex}
.mega-bot{border-top:1px solid var(--line);background:var(--cloud)}
.mega-bot .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:12px;padding-bottom:12px;font-size:12.5px;font-weight:600;color:var(--slate)}
.mega-bot a{font-weight:700;font-size:13px;white-space:nowrap}
/* burger + drawer */
  .hdr-right{display:flex;align-items:center;gap:14px}
.burger{display:none;width:48px;height:48px;border-radius:12px;border:1.5px solid var(--line);background:#fff;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:5px}
.burger i{display:block;width:20px;height:2.5px;border-radius:2px;background:var(--ink);transition:.3s}
.scrim{position:fixed;inset:0;background:rgba(6,19,31,.55);opacity:0;pointer-events:none;transition:.3s;z-index:98}
.scrim.on{opacity:1;pointer-events:auto}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(370px,90vw);background:#fff;z-index:99;transform:translateX(105%);transition:transform .35s cubic-bezier(.2,.7,.2,1);display:flex;flex-direction:column;box-shadow:-20px 0 60px rgba(6,19,31,.25)}
.drawer.on{transform:none}
.dr-head{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border-bottom:1px solid var(--line)}
.dr-head img{height:40px}
.dr-x{all:unset;width:40px;height:40px;border-radius:10px;display:flex;justify-content:center;align-items:center;cursor:pointer;background:var(--cloud)}
.dr-nav{flex:1;overflow-y:auto;padding:10px 0}
.dr-nav>a,.dr-acc{display:flex;justify-content:space-between;align-items:center;width:100%;padding:15px 22px;font-weight:700;font-size:16.5px;color:var(--hd);border:0;background:none;cursor:pointer;font-family:inherit;text-align:left;box-sizing:border-box}
.dr-acc svg{transition:transform .3s}
.dr-acc.on svg{transform:rotate(180deg)}
.dr-sub{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.2,.7,.2,1);background:var(--cloud)}
.dr-sub a{display:flex;align-items:center;gap:10px;padding:11px 22px 11px 30px;font-size:14.5px;font-weight:600;color:#2A4150}
.dr-sub a .c1{background:#FDF3DF;color:#A96F0F;font-weight:800;font-size:9px;padding:2px 7px;border-radius:999px}
.dr-cta{padding:14px 18px calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--line);display:flex;gap:10px}
.dr-cta .c{flex:1.4;justify-content:center;padding:14px 0;font-size:15.5px;background:#0E2A47;color:#fff}
.dr-cta .t{flex:1;justify-content:center;padding:14px 0;font-size:15.5px}
@media (max-width:1280px){
.mfeat{display:none}
}
@media (max-width:1150px){
.mcols{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:1023px){
.nav{display:none}
.burger{display:flex}
}
/* drawer entrance + search */
  .dr-nav>*,.dr-cta{opacity:0;transform:translateX(18px);transition:opacity .4s cubic-bezier(.2,.7,.2,1),transform .4s cubic-bezier(.2,.7,.2,1)}
.drawer.on .dr-nav>*,.drawer.on .dr-cta{opacity:1;transform:none}
.drawer.on .dr-nav>*:nth-child(1){transition-delay:.06s}
.drawer.on .dr-nav>*:nth-child(2){transition-delay:.1s}
.drawer.on .dr-nav>*:nth-child(3){transition-delay:.14s}
.drawer.on .dr-nav>*:nth-child(4){transition-delay:.18s}
.drawer.on .dr-nav>*:nth-child(5){transition-delay:.22s}
.drawer.on .dr-nav>*:nth-child(6){transition-delay:.26s}
.drawer.on .dr-nav>*:nth-child(7){transition-delay:.3s}
.drawer.on .dr-nav>*:nth-child(8){transition-delay:.34s}
.drawer.on .dr-cta{transition-delay:.32s}
.dr-search{padding:12px 18px;border-bottom:1px solid var(--line)}
.dr-search .msearch{max-width:none}
.dr-mode{display:flex;margin-top:10px}
.dr-mode b{flex:1;text-align:center}
.dr-res{display:none;padding:8px 0}
.dr-res h6{margin:10px 22px 4px;font-size:10px;font-weight:700;letter-spacing:.14em;color:#8A97A3}
.dr-res a{display:block;padding:9px 22px;font-size:14.5px;font-weight:600;color:#2A4150}
.dr-res p{margin:12px 22px;font-size:13.5px;color:var(--slate);line-height:1.6}
.drawer.searching .dr-acc,.drawer.searching .dr-sub,.drawer.searching .dr-nav>a{display:none}
.drawer.searching .dr-res{display:block}
@media (max-width:760px){
.burger{width:40px;height:40px;border-radius:10px;flex-shrink:0}
.hdr img{height:30px}
.hdr .btn{padding:9px 11px;font-size:12.5px;gap:5px}
.hdr-in{gap:8px}
}
.ftr .fg2{display:grid;grid-template-columns:minmax(300px,1.35fr) .8fr 1.5fr .7fr;gap:40px 44px;align-items:start}
.ftr .ft2{font-family:'Archivo',sans-serif;font-weight:800;font-size:12px;letter-spacing:.14em;color:#fff;margin:0 0 14px}
.ftr .fg2 a{display:block;padding:5px 0;font-size:14px;line-height:1.45;white-space:nowrap}
.ftr .fsvc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:30px}
.ftr .fall{color:#7ED957;font-weight:700;margin-top:6px}
.ftr .fbrand{display:flex;flex-direction:column;gap:13px}
.ftr .fbrand p{margin:0}
@media (max-width:1180px){
.ftr .fg2{grid-template-columns:1fr 1fr;gap:38px 44px}
}
@media (max-width:760px){
.ftr .fg2{grid-template-columns:1fr;gap:34px}
.ftr .fg2 a{white-space:normal}
}
.qfm{position:fixed;inset:0;z-index:220;display:none;align-items:flex-end;justify-content:center;background:rgba(6,19,31,.58);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.qfm.open{display:flex}
.qfs{background:#fff;width:100%;max-width:600px;max-height:92vh;overflow-y:auto;border-radius:26px 26px 0 0;box-shadow:0 -18px 60px rgba(6,19,31,.35);animation:qfup .45s cubic-bezier(.2,.7,.2,1)}
@media (min-width:640px){
.qfm{align-items:center;padding:24px}
.qfs{border-radius:26px;animation-name:qfin}
}
.qfh{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid #E3E9EE;position:sticky;top:0;background:#fff;border-radius:26px 26px 0 0;z-index:2}
.qfb{width:36px;height:36px;border-radius:999px;border:1px solid #E3E9EE;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}
.qfb[disabled]{opacity:.35;cursor:default}
.qfp{flex:1;height:6px;background:#E3E9EE;border-radius:999px;overflow:hidden}
.qfp b{display:block;height:100%;width:25%;background:linear-gradient(92deg,#5CB947,#7ED957);border-radius:999px;transition:width .5s cubic-bezier(.2,.7,.2,1)}
.qfx{width:36px;height:36px;border-radius:999px;border:1px solid #E3E9EE;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;font-size:16px;color:#51707F}
.qfbody{padding:24px 20px 30px}
.qfpane{display:none}
.qfpane.on{display:block;animation:qfpane .4s cubic-bezier(.2,.7,.2,1)}
.qfq{font-family:'Archivo',sans-serif;font-weight:900;font-size:22px;line-height:1.2;margin-bottom:5px;color:#10222E;text-align:left}
.qfsub{color:#51707F;font-size:14px;margin-bottom:18px;text-align:left}
.qfopts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (max-width:480px){
.qfopts{grid-template-columns:1fr}
}
.qfchips{display:flex;flex-wrap:wrap;gap:9px}
.qfnext{margin-top:22px;width:100%;border:0;border-radius:999px;background:linear-gradient(135deg,#5CB947,#3A8A2E);color:#fff;font-family:'Archivo',sans-serif;font-weight:800;font-size:16px;padding:15px;cursor:pointer;box-shadow:0 10px 26px rgba(58,138,46,.3)}
.qfnext[disabled]{opacity:.4;cursor:default}
.qfzip{width:100%;border:1.5px solid #E3E9EE;border-radius:14px;padding:15px;font-size:19px;font-weight:700;letter-spacing:.2em;text-align:center;font-family:'Archivo',sans-serif;color:#10222E;outline:none}
.qfzip:focus{border-color:#5CB947}
.qfskip{display:block;text-align:center;margin-top:12px;color:#51707F;font-size:13px}
.qfgold{display:inline-flex;align-items:center;gap:7px;background:linear-gradient(92deg,#F2B84B,#E3A63A);color:#3A2A08;font-family:'Archivo',sans-serif;font-weight:800;font-size:12px;letter-spacing:.03em;padding:7px 14px;border-radius:999px;margin-bottom:12px;text-align:left}
.qfsum{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0 18px}
.qfsum span{background:#F6F8FA;border:1px solid #E3E9EE;border-radius:999px;font-size:12px;font-weight:600;color:#51707F;padding:4px 11px}
.qfcall{position:relative;display:block;width:100%;background:linear-gradient(135deg,#0E2A47,#081C30);border-radius:20px;padding:15px 18px 13px;text-decoration:none;color:#fff;box-shadow:0 14px 34px rgba(8,28,48,.35)}
.qfmed{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:999px;background:radial-gradient(circle at 35% 30%,#7ED957,#3A8A2E);display:flex;align-items:center;justify-content:center}
.qfmed::after{content:"";position:absolute;inset:-6px;border-radius:999px;border:2px solid rgba(126,217,87,.45);animation:qfsonar 2.2s ease-out infinite}
.qfcall .n{display:block;font-family:'Archivo',sans-serif;font-weight:900;font-size:clamp(17px,4.9vw,20px);text-align:center;white-space:nowrap;padding-left:42px}
.qfcall .s{display:block;text-align:center;font-size:clamp(12px,3.5vw,13.5px);color:#C7D6E0;margin-top:2px;white-space:nowrap;padding-left:42px}
.qfcall .s b{background:linear-gradient(92deg,#7ED957,#C4F09A);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-family:'Archivo',sans-serif}
.qftext{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:11px;border:1.5px solid rgba(92,185,71,.5);border-radius:999px;background:#fff;box-shadow:0 0 16px rgba(126,217,87,.16);color:#10222E;font-family:'Archivo',sans-serif;font-weight:800;font-size:15px;padding:13px;text-decoration:none}
.qftext .ir{color:#3A8A2E;font-weight:700;font-family:inherit;font-size:13.5px}
.qfnote{margin-top:15px;text-align:center;color:#51707F;font-size:13px}
.qfform{display:block;text-align:center;margin-top:10px;color:#51707F;font-size:13px;text-decoration:underline;cursor:pointer;background:none;border:0;font-family:inherit}
@media (prefers-reduced-motion:reduce){
.qfs,.qfpane.on,.qfmed::after{animation:none!important}
}
/* breathing room at the sides on desktop - all pages */
@media (min-width:1024px){
  .wrap{padding-left:clamp(32px,4vw,72px)!important;padding-right:clamp(32px,4vw,72px)!important}
}
/* The chrome always runs at the homepage's 1360px column, whatever width a
   page uses for its own content. The hand-built pages (About, FAQs, Contact,
   Tips, Locations) use a 1180px column, and inheriting that for the header
   left the nav 180px short: "Handyman Services" wrapped to two lines on the
   office TV. Higher specificity than a bare .wrap, so load order is moot. */
.hdr .hdr-in,.hdr .wrap,.topbar .wrap,.ftr .wrap,.mbar .wrap,.mega .wrap{max-width:1360px!important}

/* ---- WordPress-only corrections (Sergei review, Sep 1) ---------------- */
/* The logo is a link to the home page (or the city's home page on city
   pages). WP Rocket writes width/height attributes onto images; height comes
   from CSS, so width must follow the aspect ratio or the logo stretches. */
.hdr .logo-link{display:flex;align-items:center;flex:0 0 auto;line-height:0}
.hdr img,.ftr img{width:auto!important}
/* "Send a Text · Instant reply": the dot is its own flex item, centred by the
   button's own gap (see kcr_text.fix_markup). Colour follows the .ir span. */
.irdot{color:#3A8A2E;font-weight:700}
.m-text .irdot,.htext .irdot,.qfm .irdot{color:#7ED957}
/* The old theme's floating "Text us" widget is injected site-wide by the
   Header and Footer Scripts plugin. The new pages carry their own text
   buttons (hero, sticky bar), and Sergei wants exactly one. functions.php
   stops the script on our pages; this is the belt to that suspenders. */
.ktx-btn,.ktx-card{display:none!important}
/* The header call button's desktop size lived in an inline style on the
   master (removed: it blocked the mobile compaction). Restored here for
   desktop only, below the mobile rules' breakpoint. */
@media (min-width:761px){.hdr-in > .btn{padding:14px 26px;font-size:16px}}
/* The homepage master resets links globally (a{text-decoration:none}); the
   hand-built pages (About, FAQs, Tips, Contact, Locations) never carried
   that reset, so their nav links and header button showed the browser's
   default underline. The chrome resets its own links. */
.topbar a,.hdr a,.nav a,.mega a,.drawer a,.ftr a,.mbar a,.btn,.callbtn,.logo-link{text-decoration:none}
