/* Pico Steamers — responsive layer.
   Mobile (< 760px) is untouched: every rule here lives inside a media query
   or targets desktop-only elements that are hidden by default. */

:root{
  --pad: clamp(20px, 4.2vw, 88px);
  --maxw: 1500px;
  --col: clamp(520px, 45vw, 780px);
  /* fluid content width for the 760–1079 band: fills landscape phones and
     narrowed desktop windows instead of locking to a fixed centred column */
  --tabw: min(94vw, 980px);
}

/* desktop-only nodes: hidden until the desktop breakpoint */
.dnav{display:none;}
.hero-float{display:none;}

/* structural wrappers added for desktop regrouping — invisible on mobile */
.ct-head,.ct-rowA,.ct-colB,.ct-rowB,.ct-follow,.ar-ctarow,.rv-btns{display:contents;}

/* FAQ is rendered as two independent column stacks (assets/script.js);
   on mobile they stack one after the other, preserving 1..9 order */
.fq-col{display:flex;flex-direction:column;gap:10px;}

/* before/after placeholder scenes: one icon per active tab.
   Scoped to the classed multi-icon set so the live site's single
   runtime-rendered <svg> (no ic-* class) is left visible. */
.scene__icon > svg.ic-sofa,
.scene__icon > svg.ic-chairs,
.scene__icon > svg.ic-carpet{display:none;}
.scene__icon[data-ic="sofa"] > .ic-sofa,
.scene__icon[data-ic="chairs"] > .ic-chairs,
.scene__icon[data-ic="carpet"] > .ic-carpet{display:block;width:100%;height:100%;}


/* ============================================================
   SMALL LANDSCAPE  600 – 759
   Width only — no layout regrouping. Widens the fixed 480px phone
   column so small phones in landscape (e.g. SE ~667px) fill the
   screen instead of showing wide gutters. Ceiling matches what the
   760+ band produces at its low edge, so the 759→760 seam is seamless.
   Portrait phones (<600px, all ≤480px wide) are untouched.
============================================================ */
@media (min-width:600px) and (max-width:759px){
  .hero-wrap,.hiw-wrap,.rv-wrap,.ar-wrap,.fq-wrap,.ct-main{max-width:min(94vw,720px) !important;}
  .ab-wrap{max-width:min(94vw,720px) !important;}
  #work .sec,#pricing .screen{max-width:min(94vw,720px) !important;}
  #nav-bar > div{max-width:min(94vw,720px) !important;}
}


/* ============================================================
   TABLET  760 – 1079
============================================================ */
@media (min-width:760px) and (max-width:1079px){
  .hero-wrap,.hiw-wrap,.rv-wrap,.ar-wrap,.fq-wrap,.ct-main{max-width:var(--tabw) !important;}
  .ab-wrap{width:100% !important;max-width:var(--tabw) !important;}
  #work .sec,#pricing .screen{max-width:var(--tabw);}
  #nav-bar > div{max-width:var(--tabw) !important;}

  .hero-h1{font-size:clamp(42px, 5vw, 54px) !important;letter-spacing:-2px !important;}
  .hero-feats{max-width:560px;}
  .hero-ctas{flex-direction:row !important;}
  .hero-cta{flex:1 1 0;min-width:0;}

  #work .ba{aspect-ratio:16/9;}
  #work .title,.hiw-h1,.rv-h2,.ar-h1,#pricing h2{font-size:clamp(32px, 3.9vw, 44px) !important;}
  .fq-h1{font-size:clamp(40px, 5vw, 54px) !important;}

  #pricing .grid{grid-template-columns:repeat(4,1fr);gap:14px;}
  #pricing{--ic-size:86px !important;}
  #pricing .card{padding:18px 14px 22px;text-align:center;display:flex;flex-direction:column;align-items:center;}
  #pricing .card h3{font-size:16px;margin-top:14px;}
  #pricing .price{justify-content:center;font-size:32px;}
  #pricing .price .unit{font-size:13px;}
  #pricing .cta{max-width:620px;margin-inline:auto;}

  .ab-cards{gap:14px !important;}

  .hiw-steps{display:grid !important;grid-template-columns:1fr 1fr;gap:20px;}
  .hiw-step{display:flex;}
  .hiw-card{flex:1;}
  .hiw-conn{display:none !important;}

  .rv-photos > div{aspect-ratio:16/9 !important;}
  .rv-btns{display:flex;gap:14px;}
  .rv-btn{flex:1 1 0;margin-top:20px !important;}

  .ar-tabs button{min-height:56px !important;font-size:15px !important;}

  .fq-list{display:flex !important;flex-direction:row !important;align-items:flex-start;gap:12px !important;}
  .fq-col{flex:1;min-width:0;gap:12px;}

  .ct-rowA{display:grid;grid-template-columns:1fr 1fr;column-gap:22px;}
  .ct-list{grid-column:1;grid-row:1;}
  .ct-hours{grid-column:1;grid-row:2;}
  .ct-colB{grid-column:2;grid-row:1 / span 2;display:block;}
}


/* ============================================================
   DESKTOP  >= 1080
============================================================ */
@media (min-width:1080px){

  section[id]{scroll-margin-top:112px;}

  /* ---------- top navigation ---------- */
  #nav-bar,#nav-panel{display:none !important;}
  .dnav{display:block;position:sticky;top:0;z-index:900;background:#fff;border-bottom-right-radius:28px;box-shadow:0 8px 28px rgba(11,27,77,.08);}
  .dnav__in{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad);height:96px;display:flex;align-items:center;}
  .dnav__logo{flex:none;display:flex;align-items:center;}
  .dnav__logo img{height:66px;width:auto;display:block;object-fit:contain;}
  .dnav__links{display:flex;align-items:center;gap:clamp(12px,1.85vw,32px);margin-left:clamp(18px,3.2vw,64px);}
  .dnav__link{font-size:clamp(14px,1.05vw,17px);font-weight:600;color:#3E4C6B;text-decoration:none;white-space:nowrap;padding:6px 0 5px;border-bottom:2px solid transparent;transition:color .15s ease;}
  .dnav__link:hover{color:#1E63F0;}
  .dnav__link--on{color:#0B1B4D;border-bottom-color:#1E63F0;}
  .dnav__cta{margin-left:auto;display:flex;align-items:center;gap:12px;height:62px;padding:0 clamp(18px,1.9vw,32px);border-radius:14px;
    background:#1E63F0;color:#fff !important;font-size:clamp(16px,1.25vw,21px);font-weight:800;
    text-decoration:none;white-space:nowrap;box-shadow:0 2px 5px rgba(30,99,240,.22), 0 12px 22px -10px rgba(30,99,240,.4);}
  .dnav__cta:hover{background:#1652D6;}

  /* ---------- hero ---------- */
  .hero-wrap{max-width:none !important;position:relative;display:flex;flex-direction:column;justify-content:center;
    min-height:min(870px,calc(100vh - 96px));padding-bottom:clamp(40px,4.4vw,72px);overflow:hidden;}
  .hero-media{display:contents;}
  .hero-top,.hero-h1wrap,.hero-feats,.hero-ctas,.hero-trust{position:relative;z-index:1;}
  .hero-fade{display:none !important;}
  .hero-bg{inset:0 !important;height:auto !important;background-image:url(img/hero-bg-desktop.webp) !important;background-position:68% 42% !important;}
  .hero-bg::after{content:"";position:absolute;inset:0;
    background:linear-gradient(97deg,#F7F8FB 0%,#F7F8FB 29%,rgba(247,248,251,.94) 36%,rgba(247,248,251,.55) 44%,rgba(247,248,251,0) 56%);}
  .hero-top{padding:clamp(26px,3.2vw,50px) var(--pad) 0 !important;}
  .hero-logo{display:none !important;}
  .hero-top .js-open-menu{display:none !important;}
  .hero-brand{border-left:none !important;padding-left:0 !important;display:flex;align-items:center;gap:16px;}
  .hero-brand::before{content:"";flex:none;width:44px;height:3px;border-radius:2px;background:#1E63F0;}
  .hero-brand > div{font-size:clamp(15px,1.15vw,18px) !important;font-weight:500 !important;color:#54627F !important;
    text-shadow:none !important;margin-top:0 !important;}
  .hero-h1wrap{padding:clamp(12px,1.5vw,22px) var(--pad) 0 !important;}
  .hero-h1wrap > div{text-shadow:none !important;}
  .hero-h1{font-size:clamp(48px,4.8vw,80px) !important;line-height:0.98 !important;letter-spacing:-2.6px !important;color:#0B1B4D !important;}
  .hero-feats{padding:clamp(18px,2.2vw,32px) var(--pad) 0 !important;gap:clamp(10px,1vw,15px) !important;
    width:min(100%,calc(var(--col) + var(--pad)));}
  .hero-feat{gap:clamp(16px,1.6vw,26px) !important;}
  .hero-ficon{width:clamp(64px,4.8vw,80px) !important;height:clamp(64px,4.8vw,80px) !important;border-radius:20px !important;background:#F0F4FD !important;
    box-shadow:none !important;backdrop-filter:none !important;}
  .hero-ficon svg{width:34px;height:34px;}
  .hero-ftxt > div:first-child{font-size:clamp(18px,1.4vw,22px) !important;color:#0B1B4D !important;text-shadow:none !important;}
  .hero-ftxt > div:last-child{font-size:clamp(15px,1.15vw,18px) !important;color:#54627F !important;text-shadow:none !important;margin-top:4px !important;}
  .hero-ctas{flex-direction:row !important;gap:20px !important;padding:clamp(20px,2.4vw,34px) var(--pad) 0 !important;
    width:min(100%,calc(var(--col) + var(--pad) + 140px));}
  .hero-cta{flex:1 1 0;min-width:0;padding:18px 24px !important;border-radius:18px !important;gap:18px !important;}
  .hero-cta > div:last-child span{white-space:nowrap;}
  .hero-cta > div:first-child{width:56px !important;height:56px !important;}
  .hero-cta--call > div:first-child{border-radius:50% !important;}
  .hero-cta--call span:first-child{font-size:17px !important;}
  .hero-cta--call span:last-child{font-size:clamp(20px,1.55vw,25px) !important;}
  .hero-cta--quote span:first-child{font-size:clamp(19px,1.4vw,22px) !important;}
  .hero-cta--quote span:last-child{font-size:17px !important;}
  .hero-trust{margin:clamp(16px,1.8vw,24px) var(--pad) 0 !important;padding:16px 6px !important;
    width:min(calc(100% - var(--pad) * 2),calc(var(--col) + 140px));}
  .hero-trust span{font-size:17px !important;font-weight:600 !important;}
  .hero-trust svg{width:22px;height:22px;}
  .hero-float{display:flex;align-items:center;gap:15px;position:absolute;right:var(--pad);bottom:clamp(34px,4.4vw,74px);
    max-width:400px;background:#fff;border-radius:18px;padding:16px 24px;box-shadow:0 14px 34px rgba(11,27,77,.16);}
  .hero-float__ic{flex:none;display:flex;}
  .hero-float__tx{font-size:16px;line-height:1.38;font-weight:500;color:#0B1B4D;}

  /* ---------- work / before & after ---------- */
  #work .sec{max-width:var(--maxw);padding:clamp(56px,5vw,90px) var(--pad);}
  #work .eyebrow{background:transparent;padding:0;gap:20px;align-items:center;font-size:14px;letter-spacing:.16em;margin-bottom:18px;}
  #work .eyebrow::before,#work .eyebrow::after{content:"";display:block;width:clamp(40px,5vw,88px);height:1.5px;background:#B9CBF7;}
  #work .title{font-size:clamp(40px,3.6vw,58px);}
  #work .lede{max-width:780px;font-size:clamp(17px,1.3vw,21px);}
  #work .tabs{max-width:1150px;margin:clamp(26px,2.8vw,38px) auto 0;padding:10px;border-radius:22px;}
  #work .tab{flex-direction:row;justify-content:center;gap:14px;padding:18px 10px 16px;border-radius:16px;position:relative;}
  #work .tab--on{background:#F1F6FE;}
  #work .tab__icon{width:30px;height:30px;flex:none;}
  #work .tab__label{font-size:clamp(16px,1.35vw,20px);}
  #work .tab__bar{position:absolute;left:14%;right:14%;bottom:0;width:auto;margin:0;}
  #work .imgcard{margin-top:clamp(18px,2vw,28px);background:transparent;border:none;box-shadow:none;overflow:visible;}
  #work .ba{aspect-ratio:auto;height:clamp(340px,33vw,540px);gap:14px;background:transparent;}
  #work .ba__half{border-radius:22px;overflow:hidden;box-shadow:0 10px 26px rgba(11,27,77,.10);}
  #work .ba__half--before{box-shadow:0 10px 26px rgba(11,27,77,.10);}
  #work .ba__badge{top:22px;padding:9px 18px;border-radius:12px;font-size:15px;}
  #work .ba__badge--before{left:22px;}
  #work .ba__badge--after{right:22px;}
  #work .controls{max-width:1150px;margin:clamp(20px,2.2vw,30px) auto 0;}
  #work .navbtn{width:86px;height:64px;border-radius:18px;}
  #work .navbtn svg{width:28px;height:28px;}
  #work .counter{font-size:20px;}
  #work .counter__cam{width:25px;height:25px;}
  #work .features{max-width:1150px;margin:clamp(20px,2.2vw,30px) auto 0;padding:28px 10px;border-radius:22px;}
  #work .feature{flex-direction:row;justify-content:center;text-align:left;gap:16px;}
  #work .feature__icon{width:36px;height:36px;flex:none;}
  #work .feature__txt{font-size:17px;}
  #work .trust{max-width:none;margin-top:26px;font-size:15px;}

  /* ---------- pricing ---------- */
  #pricing{--ic-size:112px !important;--trust-ic-size:46px !important;}
  #pricing .screen{max-width:var(--maxw);padding:clamp(56px,5vw,90px) var(--pad);}
  #pricing .badge{font-size:14px;padding:11px 24px;gap:11px;}
  #pricing .badge svg{width:18px;height:18px;}
  #pricing h2{font-size:clamp(40px,3.6vw,58px);margin-top:20px;}
  #pricing .sub{font-size:clamp(17px,1.3vw,21px);margin-bottom:clamp(28px,3vw,42px);}
  #pricing .grid{grid-template-columns:repeat(4,1fr);gap:clamp(16px,1.7vw,24px);}
  #pricing .card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:30px 24px 34px;border-radius:24px;}
  #pricing .card h3{font-size:clamp(18px,1.5vw,23px);margin-top:20px;}
  #pricing .from{font-size:14px;margin-top:auto;padding-top:18px;}
  #pricing .price{justify-content:center;font-size:clamp(40px,3.3vw,52px);margin-top:4px;}
  #pricing .price .unit{font-size:18px;}
  #pricing .trust{margin-top:clamp(20px,2.2vw,30px);padding:28px 10px;border-radius:22px;}
  #pricing .trust-item{flex-direction:row;align-items:center;gap:16px;padding:0 clamp(16px,1.8vw,28px);}
  #pricing .trust-item b{font-size:17px;margin-bottom:5px;}
  #pricing .trust-item span{font-size:14.5px;}
  #pricing .cta{max-width:980px;margin:clamp(22px,2.4vw,32px) auto 0;padding:22px 28px;border-radius:20px;}
  #pricing .cta-ic{width:64px;height:64px;border-radius:16px;}
  #pricing .cta-ic svg{width:32px;height:32px;}
  #pricing .cta-txt b{font-size:clamp(24px,2.1vw,32px);}
  #pricing .cta-txt span{font-size:17px;}
  #pricing .cta-arrow{width:34px;height:34px;}
  #pricing .note{font-size:14.5px;margin-top:20px;}

  /* ---------- about ---------- */
  #about > div{padding:clamp(56px,5vw,90px) 0;}
  .ab-wrap{width:100% !important;max-width:var(--maxw) !important;margin:0 auto;padding:0 var(--pad) !important;
    display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.06fr);grid-template-rows:auto auto 1fr auto;
    column-gap:clamp(36px,4.6vw,88px);}
  .ab-badge{grid-column:1;grid-row:1;margin-bottom:0 !important;padding:11px 22px !important;justify-self:start;}
  .ab-h1{grid-column:1;grid-row:2;font-size:clamp(44px,4.1vw,66px) !important;line-height:1.06 !important;margin:22px 0 22px !important;}
  .ab-lede{grid-column:1;grid-row:3;align-self:start;max-width:640px;margin:0 !important;
    font-size:clamp(17px,1.35vw,21px) !important;line-height:1.62 !important;}
  .ab-img{grid-column:2;grid-row:1 / span 3;height:clamp(360px,31vw,520px) !important;margin-bottom:0 !important;border-radius:26px !important;}
  .ab-cards{grid-column:1 / -1;grid-row:4;grid-template-columns:repeat(4,1fr) !important;
    gap:clamp(16px,1.7vw,24px) !important;margin-top:clamp(34px,4vw,58px);}
  .ab-card{padding:26px 26px 28px !important;border-radius:22px !important;gap:14px !important;}
  .ab-card__top{align-items:flex-start !important;gap:16px !important;}
  .ab-card__title{font-size:clamp(16px,1.3vw,19px) !important;}
  .ab-card__title::after{content:"";display:block;width:44px;height:4px;border-radius:2px;background:#1E63F0;margin-top:14px;}
  .ab-card__desc{font-size:15.5px !important;line-height:1.5 !important;}
  #about .logo-wrap{width:54px !important;height:54px !important;border-radius:14px !important;background:#E8F0FE !important;}

  /* ---------- how it works ---------- */
  .hiw-wrap{max-width:var(--maxw) !important;padding:clamp(56px,5vw,90px) var(--pad) !important;}
  .hiw-h1{font-size:clamp(40px,3.6vw,58px) !important;margin-top:20px !important;}
  .hiw-lede{max-width:780px !important;font-size:clamp(17px,1.3vw,21px) !important;}
  .hiw-steps{display:grid !important;grid-template-columns:repeat(4,1fr);gap:clamp(18px,2.2vw,32px);
    margin-top:clamp(34px,3.8vw,54px) !important;}
  .hiw-step{position:relative;display:flex;}
  .hiw-step:not(:last-child)::after{content:"";position:absolute;top:34%;right:calc(-1 * clamp(18px,2.2vw,32px));
    width:clamp(18px,2.2vw,32px);height:6px;background-image:radial-gradient(circle at 3px 3px,#9FB0E8 2.3px,transparent 2.5px);
    background-size:9px 6px;background-repeat:repeat-x;background-position:center;}
  .hiw-card{flex:1;flex-direction:column !important;align-items:stretch !important;gap:0 !important;border-radius:24px !important;
    padding:clamp(20px,1.9vw,28px) clamp(18px,1.7vw,26px) clamp(24px,2.3vw,32px) !important;}
  .hiw-ic{width:100% !important;height:auto !important;display:flex;justify-content:center;margin-bottom:clamp(14px,1.5vw,22px);}
  .hiw-circle{width:clamp(96px,8.6vw,132px) !important;height:clamp(96px,8.6vw,132px) !important;}
  .hiw-circle > svg{width:54px !important;height:54px !important;}
  .hiw-num{top:0 !important;left:4px !important;width:42px !important;height:42px !important;font-size:18px !important;}
  .hiw-body{padding-top:0 !important;display:flex;flex-direction:column;}
  .hiw-title{font-size:clamp(19px,1.55vw,25px) !important;}
  .hiw-desc{font-size:clamp(14.5px,1.15vw,17.5px) !important;}
  .hiw-pill{margin-top:auto !important;align-self:flex-start;font-size:14px !important;padding:9px 16px !important;}
  .hiw-conn{display:none !important;}
  .hiw-trust{margin-top:clamp(22px,2.4vw,32px) !important;background:#fff;border:1px solid #E5E9F2;border-radius:22px;
    box-shadow:0 1px 2px rgba(16,27,60,.05), 0 14px 30px -14px rgba(16,27,60,.15);padding:26px 10px;}
  .hiw-titem{flex-direction:row !important;text-align:left !important;justify-content:center;gap:16px !important;
    padding:0 clamp(16px,1.8vw,28px) !important;}
  .hiw-titem > div:first-child{width:48px !important;height:48px !important;border-radius:50%;background:#E8F0FE;flex:none;}
  .hiw-titem > div:first-child svg{width:26px;height:26px;}
  .hiw-titem > div:last-child > div:first-child{font-size:17px !important;}
  .hiw-titem > div:last-child > div:last-child{font-size:14.5px !important;}

  /* ---------- reviews ---------- */
  .rv-wrap{max-width:var(--maxw) !important;padding:clamp(56px,5vw,90px) var(--pad) !important;}
  .rv-h2{font-size:clamp(40px,3.6vw,58px) !important;}
  .rv-h2 br{display:none;}
  .rv-lede{font-size:clamp(17px,1.3vw,21px) !important;}
  .rv-scores{justify-content:center;gap:18px !important;margin-top:clamp(24px,2.6vw,34px) !important;}
  .rv-score{flex:0 0 auto !important;min-width:300px;padding:18px 26px !important;border-radius:20px !important;gap:14px !important;}
  .rv-score > svg{width:40px !important;height:40px !important;}
  .rv-score span:first-of-type{font-size:26px !important;}
  .rv-score svg[width="12"]{width:16px !important;height:16px !important;}
  .rv-score span:last-child{font-size:14.5px !important;}
  .rv-rating{margin-top:22px !important;}
  .rv-rating span{font-size:21px !important;}
  .rv-card{box-sizing:border-box;width:100%;max-width:1060px;margin:clamp(22px,2.4vw,32px) auto 0 !important;padding:34px 38px !important;border-radius:26px !important;}
  .rv-name{font-size:clamp(21px,1.8vw,27px) !important;}
  .rv-stars svg{width:26px !important;height:26px !important;}
  /* No .rv-mark rule any more — the decorative quote span is gone, and the
     48px body indent went with it: everything in the card is flush left. */
  .rv-quote{margin-top:22px !important;}
  .rv-quote h3{font-size:clamp(25px,2.2vw,34px) !important;}
  .rv-body{margin:12px 0 0 !important;font-size:clamp(16px,1.35vw,19px) !important;}
  .rv-photos{gap:18px !important;margin-top:26px !important;}
  .rv-photos > div{aspect-ratio:5/2 !important;border-radius:18px !important;}
  .rv-nav{margin-top:26px !important;padding-top:24px;border-top:1px solid #EEF1F7;}
  #rev-prev,#rev-next{height:56px !important;padding:0 26px !important;font-size:16px !important;border-radius:14px !important;}
  #rev-counter{font-size:16px !important;}
  .rv-btns{display:flex;justify-content:center;gap:18px;margin-top:clamp(22px,2.4vw,32px);}
  .rv-btn{flex:0 1 420px;margin-top:0 !important;height:70px !important;font-size:19px !important;border-radius:18px !important;}
  .rv-trust{max-width:none !important;margin-top:24px !important;font-size:15px !important;}

  /* ---------- service areas ---------- */
  .ar-wrap{max-width:var(--maxw) !important;padding:clamp(56px,5vw,90px) var(--pad) !important;gap:clamp(18px,2.1vw,28px) !important;}
  .ar-h1{font-size:clamp(40px,3.6vw,58px) !important;}
  .ar-h1 br{display:none;}
  .ar-head p{max-width:none !important;font-size:clamp(17px,1.3vw,21px) !important;}
  .ar-tabs{justify-content:center;gap:14px !important;}
  .ar-tabs button{flex:0 0 auto !important;min-width:212px;min-height:62px !important;font-size:17px !important;border-radius:16px !important;}
  .ar-tabs button svg{width:17px;height:17px;}
  .ar-panel{background:transparent !important;border:none !important;box-shadow:none !important;overflow:visible !important;
    display:grid;grid-template-columns:1.08fr 1fr;gap:clamp(18px,2.1vw,28px);}
  .ar-map{aspect-ratio:auto !important;min-height:430px;border-radius:24px;overflow:hidden;border:1px solid #E5E9F2;
    box-shadow:0 1px 2px rgba(16,27,60,.05), 0 14px 30px -14px rgba(16,27,60,.15);}
  .ar-info{background:#fff;border:1px solid #E5E9F2;border-radius:24px;box-shadow:0 1px 2px rgba(16,27,60,.05), 0 14px 30px -14px rgba(16,27,60,.15);
    padding:34px 34px 36px !important;gap:26px !important;justify-content:flex-start;}
  .ar-info #areas-region-label{font-size:15px !important;}
  .ar-info #areas-city-count{font-size:14px !important;padding:6px 14px !important;}
  .ar-cities{gap:22px 20px !important;}
  .ar-cities span{font-size:17.5px !important;}
  .ar-cities > div > div{width:28px !important;height:28px !important;}
  .ar-cities > div > div svg{width:14px;height:14px;}
  .ar-ctarow{display:flex;align-items:center;gap:20px;background:#EDF1F8;border-radius:22px;padding:16px 16px 16px 24px;}
  .ar-note{flex:1;min-width:0;background:transparent !important;padding:0 !important;border-radius:0 !important;}
  .ar-note > div:first-child{width:58px !important;height:58px !important;}
  .ar-note > div:first-child svg{width:28px;height:28px;}
  .ar-note > div:last-child > div:first-child{font-size:19px !important;}
  .ar-note > div:last-child > div:last-child{font-size:16px !important;}
  .ar-cta{flex:0 0 auto;min-width:min(500px,42vw);min-height:76px !important;font-size:clamp(18px,1.6vw,23px) !important;border-radius:16px !important;}
  .ar-cta svg:first-child{width:24px;height:24px;}
  .ar-trust{max-width:none !important;font-size:15px !important;}

  /* ---------- faq ---------- */
  .fq-wrap{max-width:var(--maxw) !important;padding:clamp(56px,5vw,90px) var(--pad) !important;}
  .fq-head{margin-bottom:clamp(28px,3vw,44px) !important;}
  .fq-h1{font-size:clamp(52px,5vw,82px) !important;margin-bottom:18px !important;}
  .fq-head p{font-size:clamp(17px,1.4vw,22px) !important;}
  /* two independent column stacks — opening an item on one side
     leaves the other side completely still */
  .fq-list{display:flex !important;flex-direction:row !important;align-items:flex-start;gap:24px !important;
    width:100%;max-width:1320px;margin:0 auto;}
  .fq-col{flex:1;min-width:0;gap:18px;}
  .fq-col > div > div:first-child{padding:22px 26px !important;}
  .fq-col > div > div:first-child > div:first-child{font-size:clamp(17px,1.45vw,20px) !important;}
  .fq-col > div > div:first-child > div:last-child{font-size:27px !important;}
  .fq-col > div > div:nth-child(2){padding:0 26px 22px !important;}
  .fq-col > div > div:nth-child(2) p{font-size:16.5px !important;}
  .fq-trust{gap:26px !important;margin-top:clamp(28px,3vw,44px) !important;}
  .fq-trust > div{font-size:15.5px !important;}
  .fq-trust svg{width:17px;height:17px;}

  /* ---------- contacts ---------- */
  #contacts .ct-main{max-width:none !important;padding:clamp(56px,5vw,90px) var(--pad) 0 !important;}
  .ct-head{display:block;max-width:var(--maxw);margin:0 auto;text-align:center;}
  .ct-badge{font-size:14px !important;padding:11px 24px !important;}
  .ct-h1{font-size:clamp(46px,4.4vw,70px) !important;margin-top:20px !important;}
  .ct-lede{max-width:920px;margin:16px auto 0 !important;font-size:clamp(17px,1.4vw,22px) !important;}
  .ct-rowA{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr;
    column-gap:clamp(22px,2.3vw,34px);row-gap:18px;max-width:var(--maxw);margin:clamp(28px,3vw,44px) auto 0;}
  .ct-list{grid-column:1;grid-row:1;align-self:start;margin-top:0 !important;gap:18px;}
  .ct-sep{display:none !important;}
  .ct-item{background:#fff;border-radius:20px;padding:22px 28px !important;box-shadow:0 1px 2px rgba(16,27,60,.05), 0 14px 30px -14px rgba(16,27,60,.15);}
  .ct-hours{grid-column:1;grid-row:2;align-self:start;margin-top:0 !important;border-bottom:none !important;background:#fff;
    border-radius:20px;padding:22px 28px !important;box-shadow:0 1px 2px rgba(16,27,60,.05), 0 14px 30px -14px rgba(16,27,60,.15);}
  .ct-colB{grid-column:2;grid-row:1 / span 2;display:block;background:#fff;border-radius:22px;
    padding:28px 32px 32px;box-shadow:0 1px 2px rgba(16,27,60,.05), 0 14px 30px -14px rgba(16,27,60,.15);}
  .ct-h2{margin-top:0 !important;font-size:clamp(22px,1.85vw,27px) !important;}
  .ct-loc{margin-top:18px !important;}
  .ct-maps{margin-top:16px !important;font-size:17px !important;}
  .ct-map{margin-top:18px !important;height:clamp(210px,16.5vw,250px) !important;}
  .ct-rowB{display:grid;grid-template-columns:1fr 1fr;gap:clamp(22px,2.3vw,34px);max-width:var(--maxw);
    margin:clamp(18px,2vw,28px) auto 0;align-items:stretch;}
  .ct-follow{display:block;background:#fff;border-radius:22px;padding:28px 32px 32px;box-shadow:0 1px 2px rgba(16,27,60,.05), 0 14px 30px -14px rgba(16,27,60,.15);}
  .ct-h2--follow{margin-top:0 !important;}
  .ct-social{margin-top:24px !important;}
  .ct-trustbox{margin-top:0 !important;border-radius:22px !important;padding:28px 34px !important;gap:24px !important;}
  .ct-trustbox > span:first-child{width:76px;height:76px;border-radius:50%;background:#fff;align-items:center;justify-content:center;}
  .ct-trustbox > span:first-child svg{width:38px;height:38px;}
  .ct-trustbox > span:last-child > span:first-child{font-size:clamp(19px,1.6vw,23px) !important;}
  .ct-trustbox > span:last-child > span:last-child{font-size:17px !important;}
  .ct-footer{margin:clamp(38px,4vw,64px) calc(-1 * var(--pad)) 0 !important;padding:52px var(--pad) 46px !important;}
  .ct-footer > div:nth-child(3){max-width:920px;}
}

/* very large screens: keep the hero photo from cropping too tight */
@media (min-width:1700px){
  .hero-bg{background-position:60% 50% !important;}
}
