/* charlottenburg-rohr-bernhardt.de - rot LIGHT, "Portal" look. Brand = the favicon orange #FF6A00, which CARRIES INK (#1A1208 on it 6.45 : 1; white on it 2.87 : 1 is never used).
   Signature .crb-portal = one convex dome edge (+ arch windows, arch tablets, arcade markers). Local fonts only: Century Gothic (heads) + Tahoma (body). Gate: tools/contrast.php. Spec: DESIGN-LANGUAGE.md */
:root{
  --brand:#FF6A00;--brand-lift:#FF8041;--brand-press:#E65100;--brand-deep:#9F5200;--on-brand:#1A1208;--ink-up:#33250F;
  --ink:#1A1208;--text:#1A1208;--muted:#5F5143;
  --bg:#FFFFFF;--soft:#FFF4EB;--soft2:#FFEED2;
  --line:#F0DCC6;--rule:#7E6A55;--hair:rgba(26,18,8,.12);
  --sh-sm:0 1px 2px rgba(26,18,8,.05),0 12px 28px -14px rgba(204,84,0,.34);
  --sh:0 30px 56px -26px rgba(166,66,0,.5);
  --sh-btn:0 12px 22px -12px rgba(214,88,0,.75);
  --r-xs:4px;--r-s:8px;--r-b:14px;--r-card:28px 28px 12px 12px;--r-frame:44px 44px 16px 16px;--r-arch:999px 999px 22px 22px;--r-pic:120px 120px 14px 14px;--r-tab:50% 50% 10px 10px;--r-round:50%;--rd:999px;
  --wrap:1200px;--gut:clamp(16px,4vw,32px);
  --ease:cubic-bezier(.22,.61,.36,1);
  --head:'Century Gothic','Futura','Avenir Next','Verdana','Arial',sans-serif;
  --sans:'Tahoma','Lucida Grande','Verdana','Helvetica Neue','Arial',sans-serif;
  --topbar-h:42px;
  --tick-mark:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6.5 12.5 3.6 3.6 7.4-8' fill='none' stroke='%231A1208' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  --tick-mark-brand:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6.5 12.5 3.6 3.6 7.4-8' fill='none' stroke='%231A1208' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
:root,.band--white,.band--soft,.band--soft2,.card,.tile,.promise,.step,.notice,.factsheet,.phonebox,.callrow,.cta__dial,.phoneband__asks,.compare__col,.sub,.drawer__p,.hero__tag,.hero__dial,.hero__fig,.trustbar,.gal figcaption,.fig--tile figcaption,.row--card,.pull,.symptom,.foot{
  --fg:var(--ink);--muted:#5F5143;--link:var(--brand-deep);--kick:var(--brand-deep);--plate:var(--ink);--plate-fg:var(--brand);
  --btn-bg:var(--brand);--btn-fg:var(--ink);--btn-hbg:var(--brand-lift);--btn-hfg:var(--ink);--btn-bd:var(--ink);--btn-tile-bg:var(--ink);--btn-tile-fg:var(--brand);
  --ring:var(--ink);--ring-in:#FFFFFF;--ring-w:3px;--ring-o:2px;--ring-s:2px;--ghost-hbg:var(--soft2);--ghost-hfg:var(--ink)}
:root,.band--white{--bg-band:#FFFFFF}
.band--soft,.trustbar,.foot{--bg-band:var(--soft)}
.band--soft2{--bg-band:var(--soft2)}
.band--brand,.hero--on-brand{
  --bg-band:var(--brand);--fg:var(--ink);--muted:var(--ink);--link:var(--ink);--kick:var(--ink);--plate:var(--ink);--plate-fg:var(--brand);
  --btn-bg:var(--ink);--btn-fg:var(--brand);--btn-hbg:var(--ink-up);--btn-hfg:var(--brand);--btn-bd:var(--ink);--btn-tile-bg:var(--brand);--btn-tile-fg:var(--ink);
  --ring:var(--ink);--ring-in:#FFFFFF;--ring-w:3px;--ring-o:0px;--ring-s:6px;--ghost-hbg:#FFFFFF;--ghost-hfg:var(--ink)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:110px}
body{margin:0;font:18px/1.64 var(--sans);font-variant-numeric:lining-nums;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg{display:block;max-width:100%;height:auto}
.ic{width:22px;height:22px;flex:none;stroke-width:2.2}
a{color:var(--link);text-decoration-color:currentColor;text-underline-offset:.22em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
p{margin:0 0 1em}
p,li,dd,dt,figcaption,blockquote{hyphens:auto;-webkit-hyphens:auto;hyphenate-limit-chars:12 5 5;overflow-wrap:break-word}
h1,h2,h3,h4{font-family:var(--head);color:var(--fg);line-height:1.12;letter-spacing:-.008em;margin:0;font-weight:800;overflow-wrap:break-word;hyphens:auto;-webkit-hyphens:auto;hyphenate-limit-chars:12 5 5}
h3{font-size:1.1rem}
ul,ol{margin:0;padding:0}
ul[role=list],ol[role=list]{list-style:none}
b,strong{font-weight:700}
.nowrap{white-space:nowrap}
.center{text-align:center}.small{font-size:.9em}
.screen-reader-text,.sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

:focus-visible{outline:var(--ring-w) solid var(--ring);outline-offset:var(--ring-o);border-radius:var(--r-xs);box-shadow:0 0 0 var(--ring-s) var(--ring-in)}
.band--brand :focus-visible,.hero--on-brand :focus-visible{outline:3px solid var(--ink);outline-offset:0;box-shadow:0 0 0 6px #FFFFFF}
.skip{position:fixed;left:12px;top:-90px;z-index:400;background:#FFFFFF;color:var(--ink);padding:12px 18px;border:3px solid var(--ink);border-radius:0 0 var(--rd) var(--rd);font-weight:700;text-decoration:none;transition:top .15s}
.skip:focus{top:0}
.skip:focus:not(:focus-visible){top:-90px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}
.wrap--narrow{max-width:880px}
.wp-site-blocks{padding:0}
.crb-content>*:first-child{margin-top:0}
.wp-block-post-content{margin:0}

.display{font-size:clamp(28px,4.1vw,54px);line-height:1.1;letter-spacing:-.018em;font-weight:800;text-wrap:balance}
.display--long{font-size:clamp(24px,3.1vw,40px)}
.stitle{font-size:clamp(23px,2.7vw,36px);line-height:1.16;letter-spacing:-.014em;font-weight:800;margin-bottom:.45em;text-wrap:balance}
.stitle mark,.statement__t mark,.display mark{background:none;color:var(--link);padding:0}
.band--brand .stitle mark,.band--brand .display mark,.hero--on-brand .display mark{color:var(--ink);background:linear-gradient(transparent 60%,rgba(255,255,255,.6) 60% 92%,transparent 92%)}
.lead{font-size:1.14rem;color:var(--muted);max-width:62ch}
.gap-s{display:block;height:clamp(16px,2vw,24px)}.gap-m{display:block;height:clamp(30px,4vw,48px)}.gap-l{display:block;height:clamp(44px,6vw,72px)}

:is(.cards,.steps,.promises,.factors,.tiles,.symptoms,.checklist,.compare,.stats,.gal,.timeline,.factsheet,.callrow,.notice,.ticks,.rows)+:is(.cards,.steps,.promises,.factors,.tiles,.symptoms,.checklist,.compare,.stats,.gal,.timeline,.factsheet,.callrow,.notice,.ticks,.rows){margin-top:clamp(22px,2.8vw,34px)}
.hl{color:var(--link)}

.eyebrow{display:inline-flex;align-items:center;gap:10px;font:800 .76rem/1.35 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--kick);margin:0 0 14px}
.eyebrow::before,.sub__k::before,.cta__k::before,.foot__dial-k::before,.factsheet__t::before,.phoneband__k::before,.hero__dial-k::before,.phonestrip__k::before{content:"";display:inline-block;flex:none;width:12px;height:15px;border-radius:50% 50% 2px 2px;background:var(--brand);box-shadow:0 0 0 2px var(--ink)}
.band--brand .eyebrow::before,.band--brand .cta__k::before,.band--brand .phoneband__k::before{background:#FFFFFF}

.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.reveal.in{opacity:1;transform:none}
.reveal[data-d="1"]{transition-delay:.08s}.reveal[data-d="2"]{transition-delay:.16s}.reveal[data-d="3"]{transition-delay:.24s}
.no-js .reveal{opacity:1;transform:none}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:8px 24px;border-radius:var(--r-b);border:2px solid transparent;font:800 1rem/1.2 var(--sans);
  text-decoration:none;cursor:pointer;text-align:left;transition:transform .16s var(--ease),box-shadow .2s,background-color .2s,border-color .2s,color .2s}
.btn:hover{transform:translateY(-2px);text-decoration:none}
.btn--lg{min-height:60px;font-size:1.08rem;padding:8px 28px}
.btn__tile{width:38px;height:38px;border-radius:var(--r-round);background:var(--btn-tile-bg);color:var(--btn-tile-fg);display:grid;place-items:center;flex:none;transition:transform .2s var(--ease),background-color .2s,color .2s}
.btn--lg .btn__tile{width:42px;height:42px}
.btn__tile .ic{width:19px;height:19px}
.btn:hover .btn__tile{transform:scale(1.08) rotate(-8deg)}
.btn__l{font-weight:600}

.btn--call{padding:8px 26px 8px 8px;background:var(--btn-bg);color:var(--btn-fg);border-color:var(--btn-bd);box-shadow:var(--sh-btn);white-space:nowrap}
.btn--call:hover{background:var(--btn-hbg);border-color:var(--btn-bd);color:var(--btn-hfg)}
.btn--lg.btn--call{padding:9px 30px 9px 9px}
.btn--accent:not(.btn--call){background:#FFFFFF;color:var(--brand-deep);border-color:var(--brand-deep)}
.btn--accent:not(.btn--call):hover{background:var(--brand);color:var(--ink);border-color:var(--ink)}

.btn--outline-dark,.btn--ghost{background:transparent;color:var(--fg);border-color:var(--fg);padding-inline:24px}
.btn--outline-dark:hover,.btn--ghost:hover{background:var(--ghost-hbg,var(--soft2));color:var(--ghost-hfg,var(--ink))}
.btn--soft{background:#FFFFFF;color:var(--ink);border-color:#FFFFFF;padding-inline:24px}
.btn--soft:hover{border-color:var(--ink)}
.btn--white:not(.btn--call){background:#FFFFFF;color:var(--ink);border-color:var(--rule);padding-inline:24px}
.btn--text{background:none;color:var(--link);padding-inline:6px;min-height:44px}
.btn--text span{text-decoration:underline;text-underline-offset:.22em}
.tail{white-space:nowrap}.tail .ic{display:inline-block;vertical-align:-.2em;margin-left:.4em;width:1.05em;height:1.05em}

.crb-portal{position:absolute;left:0;right:0;display:block;width:100%;pointer-events:none;line-height:0;z-index:2}
.crb-portal svg{display:block;width:100%;height:100%;overflow:visible}
.crb-portal--hero{bottom:-1px;height:clamp(52px,8vw,118px);color:var(--pt-to,#FFFFFF)}
.crb-portal--hero.crb-portal--to-soft{--pt-to:var(--soft)}.crb-portal--hero.crb-portal--to-soft2{--pt-to:var(--soft2)}
.crb-portal--top{top:1px;height:clamp(32px,4.4vw,60px);transform:translateY(-100%);color:var(--bg-band)}
.crb-portal--foot{position:relative;height:clamp(40px,5vw,66px);color:var(--pt-rib,var(--brand))}
.crb-portal__up{fill:var(--pt-above,#FFFFFF)}
main:has(.wp-block-post-content>.band--brand:last-child)+.site-foot .foot{--pt-above:var(--brand);--pt-rib:var(--soft2)}
main:has(.wp-block-post-content>.band--soft2:last-child)+.site-foot .foot{--pt-above:var(--soft2)}
main:has(.wp-block-post-content>.band--soft:last-child)+.site-foot .foot{--pt-above:var(--soft)}

.crb-roofline{position:absolute;left:0;right:0;bottom:0;height:clamp(130px,15.3vw,300px);color:#FFFFFF;opacity:.16;pointer-events:none;z-index:1}
.crb-roofline svg{width:100%;height:100%}
.hero--tint-zone .crb-roofline{color:var(--brand);opacity:.1}

.card__t::after,.promise__t::after,.tile__t::after,.step__t::after,.head .stitle::after,.cta__copy .stitle::after{content:"";display:block;width:46px;height:16px;margin-top:11px;border-radius:50% 50% 0 0 / 100% 100% 0 0;background:var(--brand);box-shadow:inset 0 0 0 2px var(--ink);transition:width .3s var(--ease)}
.band--brand .head .stitle::after,.band--brand .cta__copy .stitle::after{background:#FFFFFF}
.head--center .stitle::after{margin-inline:auto}
.card:hover .card__t::after,.promise:hover .promise__t::after,.tile:hover .tile__t::after{width:84px}
.head--rule .stitle::after,.prose .stitle::after,.cards--plain .card__t::after{display:none}

.site-top{position:sticky;top:calc(var(--topbar-h) * -1);z-index:100}
.admin-bar .site-top{top:calc(32px - var(--topbar-h))}

.topbar{background:var(--soft2);color:var(--ink);font-size:.86rem;height:var(--topbar-h);border-bottom:1px solid var(--line);--link:var(--ink);--kick:var(--ink)}
.topbar__in{display:flex;align-items:center;justify-content:space-between;gap:10px 22px;height:100%}
.topbar p{margin:0;display:flex;align-items:center;gap:10px;line-height:1.2;white-space:nowrap;font-weight:600}
.topbar__l{min-width:0;overflow:hidden}
.topbar__dot{position:relative;width:10px;height:10px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 2px var(--ink);flex:none}
.topbar__dot::after{content:"";position:absolute;inset:-7px;border-radius:50%;border:2px solid var(--brand);opacity:0;animation:crb-pulse 2.4s var(--ease) infinite}
@keyframes crb-pulse{0%{transform:scale(.5);opacity:.7}70%,100%{transform:scale(1.25);opacity:0}}
.topbar__short,.topbar__x{display:none}
.topbar a{color:var(--ink);font-weight:800;text-decoration:underline;text-underline-offset:.2em;display:inline-flex;align-items:center;min-height:38px;white-space:nowrap}
.topbar a:hover{text-decoration-thickness:2px}

.masthead{position:relative;background:#FFFFFF;border-bottom:1px solid var(--line);transition:box-shadow .25s var(--ease),background-color .25s}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .is-scrolled .masthead{background:rgba(255,255,255,.94);-webkit-backdrop-filter:saturate(150%) blur(12px);backdrop-filter:saturate(150%) blur(12px)}
}
.is-scrolled .masthead{box-shadow:0 10px 26px -14px rgba(166,66,0,.34)}
.nav{display:flex;align-items:center;gap:22px;height:80px;transition:height .28s var(--ease)}
.is-scrolled .nav{height:68px}

.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);flex:none;min-height:44px}
.brand__mk{display:block;flex:none;width:48px;height:48px;transition:width .28s var(--ease),height .28s var(--ease)}
.brand__mk svg{width:100%;height:100%}
.is-scrolled .brand__mk{width:42px;height:42px}
.brand__t{display:flex;flex-direction:column;line-height:1.08}
.brand__n{font:800 1.04rem/1.08 var(--head);letter-spacing:-.025em;color:var(--ink);white-space:nowrap}
.brand__n b{font-weight:800;color:var(--brand-deep)}
.brand__s{font:800 .64rem/1.3 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);white-space:nowrap;margin-top:5px}
.nav__main{flex:1;display:flex;justify-content:flex-start;align-self:stretch;align-items:stretch;margin-left:4px;padding-left:clamp(14px,2vw,26px);border-left:1px solid var(--line)}
.menu{display:flex;align-items:stretch;gap:2px;list-style:none;padding:0}
.menu>li{position:relative;display:flex;align-items:center}
.menu a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border-radius:var(--r-s);color:var(--ink);font-weight:700;font-size:.95rem;text-decoration:none;position:relative}
.menu>li>a:hover{background:var(--soft)}
.menu>li.is-current>a{font-weight:800}
.menu>li.is-current::after{content:"";position:absolute;left:50%;bottom:0;width:36px;height:14px;transform:translateX(-50%);background:var(--brand);border-radius:50% 50% 0 0 / 100% 100% 0 0;box-shadow:inset 0 0 0 2px var(--ink);pointer-events:none}
.menu__tg{width:30px;height:44px;margin-left:-10px;display:grid;place-items:center;background:none;border:0;color:var(--ink);cursor:pointer;border-radius:var(--rd)}
.menu__tg .ic{width:16px;height:16px;transition:transform .2s}
.menu__tg[aria-expanded=true] .ic{transform:rotate(180deg)}
.sub{position:absolute;left:-6px;top:100%;width:min(700px,92vw);padding-top:12px;visibility:hidden;opacity:0;transform:translateY(8px);transition:opacity .2s var(--ease),transform .2s var(--ease),visibility .2s;z-index:5;background:none}
.menu>li.has-sub:hover:not(.is-dismissed)>.sub,.menu>li.has-sub:focus-within:not(.is-dismissed)>.sub,.menu>li.has-sub.open:not(.is-dismissed)>.sub{visibility:visible;opacity:1;transform:none}
.sub>*{position:relative}
.sub::before{content:"";position:absolute;left:0;right:0;top:12px;bottom:0;background:#FFFFFF;border:1px solid var(--line);border-top:4px solid var(--brand);border-radius:var(--r-card);box-shadow:var(--sh)}
.sub__k{display:flex;align-items:center;gap:10px;margin:0;padding:22px 22px 8px;font:800 .74rem/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--kick)}
.sub__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 10px;padding:4px 14px 8px}
.sub__grid a{padding:8px 10px;font-weight:700;font-size:.95rem}
.sub__grid a .ic{width:38px;height:38px;padding:9px;border-radius:var(--r-tab);background:var(--plate);color:var(--plate-fg)}
.sub__grid a:hover{background:var(--soft)}
.sub__all{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:10px 14px 14px;margin:6px 14px 0;border-top:1px solid var(--line)}
.sub__all a{color:var(--brand-deep);font-weight:800;padding-inline:10px}
.sub__all .ic{width:18px;height:18px}
.sub__tel{color:var(--ink)!important}
.nav__right{display:flex;align-items:center;gap:14px;flex:none}
.nav__phone{display:none;flex-direction:column;align-items:flex-end;justify-content:center;min-height:44px;line-height:1.15;text-decoration:none;color:var(--ink)}
.nav__phone b{font:800 1.18rem/1.1 var(--head);color:var(--ink);letter-spacing:-.01em;white-space:nowrap}
.nav__phone span{display:inline-flex;align-items:center;font:800 .68rem/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--kick);margin-top:3px}
.nav__call{min-height:48px}
.burger{display:none;width:48px;height:48px;border:2px solid var(--ink);border-radius:var(--rd);background:#FFFFFF;color:var(--ink);cursor:pointer;place-items:center}
.burger .ic{width:24px;height:24px}

.drawer{position:fixed;inset:0;z-index:300;visibility:hidden;opacity:0;background:rgba(255,244,235,.94);transition:opacity .25s var(--ease),visibility .25s}
.drawer.open{visibility:visible;opacity:1}
.drawer__p{position:absolute;right:0;top:0;bottom:0;width:min(390px,92vw);background:#FFFFFF;padding:16px 18px calc(20px + env(safe-area-inset-bottom));overflow-y:auto;transform:translateX(100%);transition:transform .32s var(--ease);display:flex;flex-direction:column;gap:12px;border-left:1px solid var(--line);box-shadow:var(--sh)}
.drawer.open .drawer__p{transform:none}
.drawer__top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.drawer__x{width:48px;height:48px;display:grid;place-items:center;border:2px solid var(--ink);border-radius:var(--rd);background:#FFFFFF;color:var(--ink);cursor:pointer}
.drawer__nav{display:flex;flex-direction:column;gap:2px}
.drawer__nav>a,.drawer__nav summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:50px;padding:10px 14px;border-radius:var(--r-s);border-left:4px solid transparent;color:var(--ink);font:800 1.05rem/1.2 var(--head);text-decoration:none;cursor:pointer;list-style:none}
.drawer__nav summary::-webkit-details-marker{display:none}
.drawer__nav>a:hover,.drawer__nav summary:hover{background:var(--soft)}
.drawer__nav a[aria-current=page],.drawer__nav details.is-current>summary{background:var(--soft2);border-left-color:var(--brand);color:var(--brand-deep)}
.drawer__nav summary .ic{width:18px;height:18px;transition:transform .2s}
.drawer__nav details[open] summary .ic{transform:rotate(180deg)}
.drawer__sub{display:grid;gap:2px;padding:4px 0 8px 10px}
.drawer__sub a{display:flex;align-items:center;gap:12px;min-height:46px;padding:8px 12px;border-radius:var(--r-s);color:var(--ink);font-weight:700;text-decoration:none}
.drawer__sub a:hover{background:var(--soft)}
.drawer__sub a[aria-current=page]{background:var(--soft2);color:var(--brand-deep)}
.drawer__sub .ic{width:32px;height:32px;padding:7px;border-radius:var(--r-tab);background:var(--plate);color:var(--plate-fg)}
.drawer__call{margin-top:auto;padding:16px;border-radius:var(--r-card);background:var(--soft);border:1px solid var(--line);display:grid;gap:10px;color:var(--ink)}
.drawer__call .btn{width:100%}
.drawer__call p{margin:0;font-size:.92rem;color:var(--muted);font-weight:600}
.drawer-open .callbar,.drawer-open .totop{display:none}
.no-js .burger,.no-js .menu__tg,.no-js .sub{display:none}

.band{--padt:clamp(58px,7.4vw,98px);--padb:clamp(58px,7.4vw,98px);position:relative;background:var(--bg-band);color:var(--fg);padding:var(--padt) 0 var(--padb)}
.band--tight{--padt:clamp(36px,5vw,58px);--padb:clamp(36px,5vw,58px)}
.band--tall{--padt:clamp(74px,9.4vw,120px);--padb:clamp(74px,9.4vw,120px)}
.band--white+.band--white.band--flush-top,.band--soft+.band--soft.band--flush-top,.band--soft2+.band--soft2.band--flush-top,.band--brand+.band--brand.band--flush-top{--padt:0px}
.band--rule{border-top:1px solid var(--line)}
.band--herozone,.band--closing,.band--edge{overflow-x:clip}

.band--edge{--padt:clamp(76px,9vw,116px)}

.head{max-width:760px;margin:0 0 clamp(28px,4vw,46px)}
.head--center{margin-inline:auto;text-align:center}
.head--center .lead{margin-inline:auto}
.head--wide{max-width:none}.head--narrow{max-width:620px}
.head--rule{max-width:none;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:12px clamp(28px,5vw,64px);align-items:end;padding-bottom:clamp(18px,2.4vw,26px);border-bottom:1px solid var(--line)}
.head--rule .stitle{margin-bottom:0}.head--rule .lead{margin:0}
.head--rule:has(+ .rows){border-bottom:0;margin-bottom:0;padding-bottom:clamp(14px,2vw,22px)}
:is(.hero--stack,.head--center,.statement,.pull--center,.center) .eyebrow{justify-content:center}
.head>.lead{margin-top:.2em}

.band--herozone{--padt:clamp(30px,4vw,58px);--padb:clamp(92px,11.5vw,176px)}
.band--herozone.band--brand{background:radial-gradient(115% 150% at 88% 0%,var(--brand-lift) 0%,var(--brand) 62%)}
.band--herozone.band--soft{background:linear-gradient(180deg,var(--soft) 0%,var(--soft2) 100%)}
.band--herozone .wrap{position:relative;z-index:3}
.hero{position:relative;z-index:1;min-width:0}
.hero__copy{min-width:0}
.hero .display{color:var(--fg)}
.hero .lead{color:var(--muted);font-size:clamp(1.06rem,1.4vw,1.2rem);margin:0 0 4px;max-width:54ch;font-weight:500}
.hero .display+.lead{margin-top:18px}
.hero__cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px 16px;margin-top:26px}
.hero__note{display:flex;gap:10px;align-items:flex-start;margin:18px 0 0;font-weight:700;font-size:.95rem;color:var(--fg)}
.hero__note .ic{margin-top:2px;color:var(--fg);width:20px;height:20px}
.hero .eyebrow{margin-bottom:16px}

.hq{display:flex;flex-wrap:wrap;gap:12px 24px;margin:24px 0 0;padding:0;list-style:none}
.hq li{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:.92rem;color:var(--fg);line-height:1.3}
.hq__ic{width:34px;height:34px;display:grid;place-items:center;background:var(--plate);color:var(--plate-fg);border-radius:var(--r-tab);flex:none}
.hq__ic .ic{width:17px;height:17px}

.hero--portal{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(28px,5vw,76px);align-items:center}
.hero--portal.hero--rev .hero__copy{order:2}
.hero--portal.hero--nomedia{grid-template-columns:minmax(0,1fr);max-width:820px}
.hero--portal .display{font-size:clamp(28px,4.2vw,56px);line-height:1.08;letter-spacing:-.02em;max-width:15em}
.hero--portal .display--long{font-size:clamp(25px,3.3vw,42px);max-width:19em}
.hero__media{position:relative;z-index:1;min-width:0;width:100%;max-width:470px;margin-inline:auto;isolation:isolate}
.hero__media::before{content:"";position:absolute;z-index:-1;inset:-18px 20px 22px -20px;border:3px solid rgba(255,255,255,.62);border-radius:var(--r-arch)}
.hero--tint .hero__media::before{border-color:var(--brand)}
.hero__arch{position:relative;padding:10px;background:#FFFFFF;border-radius:var(--r-arch);box-shadow:var(--sh)}
.hero__pic{aspect-ratio:1/1.04;display:flex;overflow:hidden;border-radius:999px 999px 14px 14px;background:var(--soft2)}
.hero__pic img{width:100%;height:100%;object-fit:cover;object-position:50% 62%}
.plates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:8px;width:100%;background:#FFFFFF}
.plates>span{display:grid;place-items:center;background:var(--soft2);color:var(--brand-deep);min-height:0;border-radius:var(--r-card)}
.plates>span:nth-child(2),.plates>span:nth-child(3){background:var(--soft)}
.plates .ic{width:clamp(40px,6vw,72px);height:clamp(40px,6vw,72px);stroke-width:1.8}
.hero__pic.plates{display:grid}

.hero__tag{position:absolute;z-index:4;left:-22px;bottom:34px;max-width:min(300px,86%);display:flex;align-items:center;gap:12px;padding:10px 18px 10px 10px;background:#FFFFFF;color:var(--ink);border:2px solid var(--ink);border-radius:var(--r-b);box-shadow:var(--sh-sm)}
.hero--rev .hero__tag{left:auto;right:-22px}
.hero__tag-ic{width:42px;height:48px;display:grid;place-items:center;background:var(--ink);color:var(--brand);border-radius:var(--r-tab);flex:none}
.hero__tag-ic .ic{width:21px;height:21px;margin-top:4px}
.hero__tag b{display:block;font:800 .9rem/1.25 var(--sans);color:var(--ink)}
.hero__tag small{display:block;font-size:.8rem;line-height:1.3;color:var(--muted)}

.hero__dialbar{position:relative;margin-top:clamp(22px,2.8vw,32px);padding:2px 0 2px clamp(16px,2vw,24px);border-left:5px solid var(--ink);display:grid;gap:8px;justify-items:start;max-width:580px}
.hero__dialbar-k{display:inline-flex;align-items:center;gap:10px;font:800 .74rem/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--kick)}
.hero__dialbar-k i{position:relative;width:10px;height:10px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 2px var(--ink);flex:none}
.hero__dialbar-k i::after{content:"";position:absolute;inset:-7px;border-radius:50%;border:2px solid var(--brand);opacity:0;animation:crb-pulse 2.4s var(--ease) infinite}
.hero__dialbar p{margin:0;color:var(--muted);font-weight:600;font-size:.96rem}
.hero__dialbar .hero__cta{margin-top:6px}
.band--heroduo{--padt:0px;overflow:hidden}
.hero--duo{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(24px,4vw,64px);align-items:center;padding-top:clamp(30px,4.2vw,56px)}
.hero--duo.hero--rev .hero__copy{order:2}.hero--duo.hero--rev .hero__fig{order:1}
.hero__fig{margin:0;position:relative;z-index:1;min-width:0;background:var(--soft2);padding:clamp(12px,1.6vw,18px);border-radius:var(--r-frame);box-shadow:var(--sh)}
.hero__fig-in{border-radius:var(--r-pic);overflow:hidden;background:#FFFFFF;aspect-ratio:4/3;display:flex;position:relative}
.hero__fig-in.plates{display:grid}
.hero__fig-in img{width:100%;height:100%;object-fit:cover}
.hero__fig figcaption{margin-top:14px;font-size:.92rem;font-weight:600;color:var(--ink);padding-left:14px;border-left:4px solid var(--brand);max-width:46ch}
.hero--duo.hero--nomedia{grid-template-columns:minmax(0,1fr)}

.hero--stack{display:block;text-align:center}
.hero--stack .eyebrow{justify-content:center}
.hero--stack .lead{margin-inline:auto}
.hero--stack .hero__cta{justify-content:center}
.hero--stack .hero__tel{margin-top:22px}
.hero--stack .hq{justify-content:center}
.hero--stack .hero__note{justify-content:center}
.hero__strip{margin:clamp(28px,3.8vw,46px) auto 0;max-width:900px;position:relative}
.hero__strip-pic{position:relative;border-radius:var(--r-frame);background:var(--soft2);aspect-ratio:16/8.6;display:flex;box-shadow:0 26px 50px -24px rgba(166,66,0,.6);overflow:hidden}
.hero__strip-pic img{width:100%;height:100%;object-fit:cover;object-position:50% 66%}
.hero__strip figcaption{margin-top:14px;font-size:.9rem;color:var(--muted);font-weight:600}

.hero--beside{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,4.4vw,64px);align-items:center}
.hero--beside .hero__copy>.hero__cta:first-child{margin-top:0}
.hero__aside{min-width:0;position:relative;z-index:3}
.hero__aside .hero__fig{margin:0}
.hero--nomedia.hero--beside{grid-template-columns:minmax(0,1fr)}

.hero--dial{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(28px,4.4vw,60px);align-items:start}
.hero--dial .hero__copy{grid-column:1;grid-row:1 / span 2}
.hero__dial{grid-column:2;grid-row:1;background:#FFFFFF;color:var(--ink);border-radius:var(--r-pic);padding:clamp(40px,4.6vw,56px) clamp(22px,2.8vw,32px) clamp(22px,2.8vw,32px);display:grid;gap:14px;position:relative;z-index:3;box-shadow:0 30px 52px -24px rgba(166,66,0,.65)}
.hero__dial-k{display:flex;align-items:center;gap:10px;font:800 .74rem/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--kick)}
.hero__dial-n{margin:0;color:var(--muted);font-size:.97rem}
.hero__dial-btn{width:100%}
.hero--dial .ersteps{grid-column:2;grid-row:2}
.hero--dial .hq{grid-column:1 / -1;margin-top:0}
.ersteps{display:grid;gap:10px;list-style:none}
.ersteps li{display:flex;align-items:flex-start;gap:14px;padding:12px 14px;border-radius:var(--r-card);background:#FFFFFF;color:var(--ink)}
.ersteps__n{width:38px;height:38px;display:grid;place-items:center;background:var(--brand);color:var(--on-brand);font:800 1rem var(--head);border-radius:var(--r-round);flex:none}
.ersteps b{display:block;color:var(--ink)}.ersteps span:not(.ersteps__n){display:block;color:var(--muted);font-size:.95rem}

.band--hero-flat{--padb:clamp(44px,5.4vw,70px)}
.hero--slimline{display:block;max-width:900px}
.hero--slimline .display{font-size:clamp(30px,4vw,48px)}
.hero--slimline .hero__cta{margin-top:22px}
.legal-hero{--padt:clamp(30px,4.4vw,52px)}
.legal-hero .display{font-size:clamp(30px,4vw,48px);margin:0}
.legal-hero__cta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:22px}
.legal-hero__note{font-size:.95rem;font-weight:700;color:var(--muted)}

.crumbs{margin:0 0 16px}
.crumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:0 4px;list-style:none;font-size:.86rem;font-weight:700}
.crumbs li{display:inline-flex;align-items:center}
.crumbs li+li::before{content:"";width:6px;height:6px;margin:0 10px 0 6px;border-radius:50%;background:currentColor;opacity:.6}
.crumbs a{display:inline-flex;align-items:center;min-height:44px;color:var(--link)}
.crumbs [aria-current]{color:var(--fg);font-weight:800}

.phonestrip{position:relative;background:var(--soft);padding:clamp(20px,2.8vw,30px) 0;border-block:1px solid var(--line)}
.phonestrip__in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px clamp(24px,4vw,56px)}
.phonestrip__copy{min-width:0;max-width:520px}
.phonestrip__k{display:flex;align-items:center;gap:12px;font:800 .74rem/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--kick);margin:0 0 6px}
.phonestrip__copy p:not(.phonestrip__k){margin:0;font-weight:700;font-size:1.02rem;color:var(--ink)}

.trustbar{background:var(--soft);padding:clamp(26px,3.6vw,44px) 0 clamp(30px,4vw,48px);position:relative;z-index:3}
.trustbar ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,1.6vw,18px);list-style:none}
/* polish: three, five or six facts fill whole rows (no orphan bay) */
.trustbar ul:has(> :nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}
.trustbar ul:has(> :nth-child(5):last-child){grid-template-columns:repeat(5,minmax(0,1fr))}
.trustbar ul:has(> :nth-child(6):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}
.trustbar li{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:12px;padding:24px 14px 20px;text-align:center;font-weight:700;font-size:.97rem;line-height:1.28;color:var(--ink);background:#FFFFFF;border:1px solid var(--line);border-radius:84px 84px 14px 14px;box-shadow:var(--sh-sm)}
.trustbar__ic{width:46px;height:54px;display:grid;place-items:center;border-radius:var(--r-tab);background:var(--ink);color:var(--brand);flex:none}
.trustbar__ic .ic{width:22px;height:22px;margin-top:6px}

.telbig{display:inline-flex;align-items:center;gap:14px;text-decoration:none;color:var(--fg);white-space:nowrap}
.telbig:hover{text-decoration:none;color:var(--link)}
.telbig__ic{width:52px;height:52px;display:grid;place-items:center;background:var(--btn-tile-bg);color:var(--btn-tile-fg);border-radius:var(--r-round);flex:none;transition:transform .2s var(--ease)}
.telbig__ic{background:var(--ink);color:var(--brand)}

.telbig:hover .telbig__ic{transform:scale(1.08) rotate(-8deg)}
.telbig__ic .ic{width:24px;height:24px}
.telbig__n{font:800 clamp(1.7rem,3vw,2.3rem)/1 var(--head);letter-spacing:-.02em}
.telbig--xl .telbig__ic{width:62px;height:62px}.telbig--xl .telbig__n{font-size:clamp(2.1rem,5vw,3.4rem)}
.hero__dialbar .telbig__n{font-size:clamp(1.8rem,3.2vw,2.5rem)}

.portrait{position:relative;max-width:400px;margin-inline:auto;isolation:isolate}
.portrait__ring{background:#FFFFFF;padding:10px;border-radius:50%;box-shadow:var(--sh);overflow:hidden;border:1px solid var(--line)}
.portrait__ring img{width:100%;aspect-ratio:1;object-fit:cover;background:var(--soft2);border-radius:50%}
.portrait__ring.plates{aspect-ratio:1;display:grid;gap:6px;align-content:stretch}.portrait__ring.plates>span{border-radius:var(--r-card)}
.portrait__badge{position:absolute;left:-6px;bottom:6px;width:60px;height:60px;display:grid;place-items:center;background:var(--brand);color:var(--on-brand);border-radius:50%;box-shadow:var(--sh-btn);border:3px solid #FFFFFF}
.portrait__badge .ic{width:27px;height:27px}
.pblock{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,72px);align-items:center}
.pblock--rev .pblock__media{order:-1}
.pblock__cta{margin-top:26px}
.pblock__copy{min-width:0}

.checklist{display:grid;gap:0;list-style:none;margin:22px 0 0;border-top:1px solid var(--line)}
.checklist--2{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}
.checklist li{display:flex;gap:16px;align-items:flex-start;padding:16px 2px;border-bottom:1px solid var(--line)}
.ci__ic{width:48px;height:48px;display:grid;place-items:center;flex:none;background:var(--plate);color:var(--plate-fg);border-radius:var(--r-tab)}
.ci__ic .ic{width:22px;height:22px}
.checklist b{display:block;color:var(--fg);font:800 1.1rem/1.3 var(--head)}.checklist span:not(.ci__ic){display:block;color:var(--muted);font-size:.97rem}

.promises{display:grid;gap:clamp(18px,2.4vw,30px);list-style:none}
.promises--2{grid-template-columns:repeat(2,minmax(0,1fr))}.promises--3{grid-template-columns:repeat(3,minmax(0,1fr))}.promises--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.promise{position:relative;background:#FFFFFF;color:var(--ink);border-radius:var(--r-card);padding:24px 24px 26px;box-shadow:var(--sh-sm);border:1px solid var(--line);transition:transform .25s var(--ease),box-shadow .25s}
.promise:hover{transform:translateY(-4px);box-shadow:var(--sh)}
.promise__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.promise__ic{width:54px;height:54px;display:grid;place-items:center;background:var(--plate);color:var(--plate-fg);border-radius:var(--r-tab)}
.promise__n{font:800 2.2rem/1 var(--head);color:var(--brand-deep);letter-spacing:-.03em;opacity:.9}
.promise__t{font-size:1.26rem;margin-bottom:8px;color:var(--ink)}
.promise p{color:var(--muted);font-size:.99rem;margin:0 0 .6em}
.promise__foot{display:flex;align-items:center;gap:8px;margin:14px 0 0!important;font-weight:800;font-size:.88rem!important;color:var(--brand-deep)!important}
.promise__foot .ic{width:18px;height:18px}

.phoneband{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(26px,4.4vw,64px);align-items:center}
.phoneband--solo{grid-template-columns:minmax(0,1fr);max-width:760px}
.phoneband__copy{min-width:0}
.phoneband__copy .lead{color:var(--muted)}
.phoneband__num{margin:20px 0 6px}.phoneband__cta{margin-top:18px}
.phoneband__note{display:flex;gap:10px;align-items:flex-start;margin:18px 0 0;font-weight:700;font-size:.95rem;color:var(--fg)}
.phoneband__asks{position:relative;background:#FFFFFF;color:var(--ink);padding:clamp(24px,3.2vw,40px);border-radius:var(--r-frame);box-shadow:0 26px 50px -22px rgba(166,66,0,.55)}
.phoneband__tile{position:absolute;right:22px;top:22px;width:50px;height:50px;display:grid;place-items:center;background:var(--plate);color:var(--plate-fg);border-radius:var(--r-tab)}
.phoneband__k{display:flex;align-items:center;gap:10px;margin:0 0 16px;font:800 .74rem/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--kick);padding-right:64px}
.asks{display:grid;gap:14px;list-style:none}
.asks li{display:flex;gap:12px;align-items:flex-start}
.asks__n{width:34px;height:34px;display:grid;place-items:center;background:var(--brand);color:var(--on-brand);font:800 .9rem var(--head);border-radius:var(--r-round);flex:none}
.asks b{display:block;color:var(--fg)}.asks span:not(.asks__n){display:block;font-size:.95rem;color:var(--muted)}

.chips{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin-top:20px}
.chips--center{justify-content:center}
.chip{display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:8px 20px 8px 16px;background:#FFFFFF;color:var(--ink);border:1.5px solid var(--rule);border-radius:22px 22px 6px 6px;font-weight:700;font-size:.95rem;text-decoration:none;transition:transform .16s var(--ease),box-shadow .16s var(--ease),border-color .16s,background-color .16s,color .16s}
.chip::before{content:"";flex:none;width:10px;height:13px;border-radius:var(--r-tab);background:var(--brand);box-shadow:0 0 0 1.5px var(--ink)}
a.chip:hover{transform:translateY(-2px);box-shadow:var(--sh-sm);border-color:var(--ink);background:var(--brand);color:var(--ink);text-decoration:none}
a.chip:hover::before{background:#FFFFFF}
.chip--static{font-weight:600}
.band--chips .chips{margin-top:0}
.band--brand .chip{background:#FFFFFF;border-color:var(--ink)}
.band--brand a.chip:hover{background:var(--soft2)}

.lede{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start}
.lede__cols{columns:2;column-gap:clamp(24px,3vw,40px)}
.lede__cols p{break-inside:avoid;color:var(--fg)}
.lede__cols p:first-child{column-span:all;font:700 clamp(1.15rem,1.7vw,1.38rem)/1.45 var(--head);letter-spacing:-.01em;margin-bottom:1em}
.lede__aside{min-width:0}
.pull{position:relative;margin:0;padding:26px 28px 26px 34px;background:#FFFFFF;color:var(--ink);border-radius:var(--r-card);box-shadow:var(--sh-sm);border:1px solid var(--line);border-left:6px solid var(--brand)}
.pull p{margin:0;font:800 clamp(1.2rem,1.9vw,1.5rem)/1.3 var(--head);letter-spacing:-.015em;color:var(--ink);hyphens:manual}
.pull cite{display:block;margin-top:14px;font:800 .8rem/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-style:normal}
.pull--center{max-width:760px;margin-inline:auto;text-align:center;border-left-width:1px;border-top:6px solid var(--brand)}
.statement{max-width:960px;margin-inline:auto;text-align:center}
.statement__t{font:800 clamp(1.9rem,4.2vw,3.2rem)/1.1 var(--head);letter-spacing:-.03em;color:var(--fg);margin:0 0 .4em}
.statement__s{color:var(--muted);margin:0 auto;max-width:56ch}

.rows{display:grid;gap:0;border-bottom:1px solid var(--line)}
.row{display:grid;grid-template-columns:64px minmax(0,1fr) minmax(0,300px);gap:clamp(18px,3vw,40px);align-items:center;padding:clamp(22px,2.8vw,32px) clamp(4px,1vw,12px);border-top:1px solid var(--line);transition:background-color .25s var(--ease)}
.rows--nomedia .row,.row:not(:has(.row__shot)){grid-template-columns:64px minmax(0,1fr)}
.row:hover{background:var(--soft)}
.row__n{width:58px;height:58px;display:grid;place-items:center;background:var(--brand);color:var(--on-brand);border-radius:var(--r-tab);font:800 1.1rem var(--head);transition:background-color .25s,color .25s}
.row:hover .row__n{background:var(--ink);color:var(--brand)}
.row__b{min-width:0}
.row__t{font-size:clamp(1.3rem,2vw,1.65rem);margin-bottom:8px}
.row__a{color:var(--fg);text-decoration:none}
.row__a::after{content:"";position:absolute;inset:0}
.row--link{position:relative;cursor:pointer}
.row__b p{color:var(--muted);margin:0 0 .6em;max-width:60ch}
.row__more{display:inline-block;font-weight:800;font-size:.93rem;color:var(--link)}
.row__more .ic{transition:transform .2s var(--ease)}
.row:hover .row__more .ic{transform:translateX(4px)}
.row__shot{border-radius:var(--r-card);overflow:hidden;border:4px solid #FFFFFF;background:var(--soft2);aspect-ratio:4/3;box-shadow:var(--sh-sm)}
.row__shot img{width:100%;height:100%;object-fit:cover;transition:transform .55s var(--ease)}
.row:hover .row__shot img{transform:scale(1.05)}

.gal{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:240px;grid-auto-flow:dense;gap:16px}
.gal--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.gal figure{margin:0;position:relative;overflow:hidden;border-radius:var(--r-card);border:4px solid #FFFFFF;background:var(--soft2);box-shadow:var(--sh-sm)}
.gal__pic{position:absolute;inset:0}
.gal__pic img{width:100%;height:100%;object-fit:cover;transition:transform .55s var(--ease)}
.gal figure:hover .gal__pic img{transform:scale(1.06)}
.gal--tall{grid-row:span 2}.gal--wide{grid-column:span 2}.gal--big{grid-column:span 2;grid-row:span 2}
.gal--wide .gal__pic img{object-position:50% 24%}
.gal__tag{position:absolute;left:10px;top:10px;z-index:2;padding:5px 11px;border-radius:6px;background:#FFFFFF;color:var(--ink);font:800 .68rem/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--line)}
.gal figcaption{position:absolute;left:8px;right:8px;bottom:8px;z-index:2;background:#FFFFFF;border-radius:var(--rd);padding:10px 14px;border:1px solid var(--line);transition:transform .3s var(--ease)}
.gal figure:hover figcaption{transform:translateY(-4px)}
.gal figcaption b{display:block;font:800 1rem/1.25 var(--head);color:var(--ink)}
.gal figcaption span{display:block;font-size:.84rem;line-height:1.35;color:var(--muted);margin-top:2px}

.callrow{position:relative;background:#FFFFFF;color:var(--ink);border:1px solid var(--line);border-left:6px solid var(--brand);border-radius:var(--r-card);padding:clamp(24px,3.2vw,38px) clamp(24px,3.6vw,48px);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px 32px;box-shadow:var(--sh-sm)}
.callrow__copy{min-width:0;max-width:520px;flex:1 1 300px}
.callrow__t{font:800 clamp(1.4rem,2.2vw,1.8rem)/1.2 var(--head);color:var(--ink);margin:0 0 4px}
.callrow__copy p:not(.callrow__t){margin:0;color:var(--muted)}
.callrow__act{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px}

.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center}
.split--wide-l{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr)}.split--wide-r{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}
.split--top{align-items:start}
.split--rev .split__media{order:-1}
.split__copy,.split__media{min-width:0}
.cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start}
.cols--wide-l{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr)}.cols--wide-r{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr)}

.fig{margin:0;position:relative;isolation:isolate}
.fig__in{position:relative;border-radius:var(--r-frame);background:var(--soft2);box-shadow:var(--sh);overflow:hidden}
.fig__in img{width:100%;height:auto}
.fig figcaption{margin-top:16px;font-size:.9rem;font-weight:600;color:var(--muted);padding-left:14px;border-left:4px solid var(--brand)}
.fig--tilt .fig__in{border-radius:var(--r-frame)}
.fig--offset{padding:18px 18px 0 0}
.fig--offset::before{content:"";position:absolute;z-index:-1;right:0;top:0;width:58%;height:62%;background:var(--brand);border-radius:50% 50% var(--r-s) var(--r-s) / 36% 36% var(--r-s) var(--r-s);box-shadow:inset 0 0 0 2px var(--ink)}
.fig--offset .fig__in{transform:none}
.fig--round .fig__in{border:1px solid var(--rule);box-shadow:none}
.fig--flat .fig__in{box-shadow:none}
.fig--tile{border:1px solid var(--line);border-radius:var(--r-frame);overflow:hidden;background:#FFFFFF}
.fig--tile .fig__in{border:0;border-radius:0;box-shadow:none}
.fig--tile .fig__in img{border-radius:0}
.fig--tile figcaption{margin:0;padding:12px 16px;border:0;border-top:1px solid var(--line);background:#FFFFFF;color:var(--muted)}

.cards{display:grid;gap:clamp(16px,2vw,26px)}
.cards--2{grid-template-columns:repeat(2,minmax(0,1fr))}.cards--3{grid-template-columns:repeat(3,minmax(0,1fr))}.cards--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.card{position:relative;display:flex;flex-direction:column;background:#FFFFFF;color:var(--ink);border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;box-shadow:var(--sh-sm);transition:transform .25s var(--ease),box-shadow .25s,border-color .25s}
.card:hover{transform:translateY(-4px);box-shadow:var(--sh);border-color:var(--brand)}
.card__media{aspect-ratio:4/3;overflow:hidden;background:var(--soft2);margin:10px 10px 0;border-radius:var(--r-pic)}
.card__media img{width:100%;height:100%;object-fit:cover;transition:transform .55s var(--ease)}
.card:hover .card__media img{transform:scale(1.05)}
.card__media--ic{display:grid;place-items:center;background:var(--soft2)}
.card__bigic{width:78px;height:78px;display:grid;place-items:center;background:#FFFFFF;color:var(--brand-deep);border-radius:var(--r-round)}
.card__bigic .ic{width:36px;height:36px}
.card__body{position:relative;padding:24px 24px 26px;display:flex;flex-direction:column;flex:1}
.card__bk{position:absolute;right:20px;top:-30px;width:48px;height:58px;display:grid;place-items:center;background:var(--ink);color:var(--brand);border-radius:var(--r-tab);border:3px solid #FFFFFF}
.card__bk .ic{width:23px;height:23px}
.card__ic{width:52px;height:52px;display:grid;place-items:center;background:var(--plate);color:var(--plate-fg);border-radius:var(--r-tab);margin-bottom:14px}
.card__num{display:block;font:800 2.4rem/1 var(--head);color:var(--brand-deep);margin-bottom:10px;letter-spacing:-.03em}
.card__t{font-size:1.3rem;margin-bottom:8px;color:var(--ink)}
.card__a{color:var(--ink);text-decoration:none}
.card__a::after{content:"";position:absolute;inset:0;z-index:1}
.card--link{cursor:pointer}
.card__body p{color:var(--muted);font-size:.98rem;margin:0 0 .6em}
.card__more{margin-top:auto;padding-top:8px;display:block;font-weight:800;font-size:.93rem;color:var(--brand-deep)}
.card__more .ic{transition:transform .2s var(--ease)}
.card:hover .card__more .ic{transform:translateX(4px)}
.cards--line .card{border-top:5px solid var(--brand)}
.cards--plain .card{background:none;border:0;border-radius:0;border-top:1px solid var(--rule);box-shadow:none;color:var(--fg)}
.cards--plain .card:hover{transform:none;box-shadow:none}
.cards--plain .card__body{padding-inline:0}

.card--first{background:var(--brand);border:2px solid var(--ink);color:var(--ink);--fg:var(--ink);--muted:var(--ink);justify-content:flex-end;min-height:270px;background-image:linear-gradient(155deg,var(--brand-lift) 0%,var(--brand) 58%)}
.card--first .card__body{margin-top:auto;padding:100px 26px 28px}
.card--first .card__t{font-size:clamp(1.25rem,1.9vw,1.6rem);color:var(--ink);line-height:1.12}
.card--first .card__t::after{background:#FFFFFF}
.card--first .card__a{color:var(--ink)}
.card--first .card__body p{color:var(--ink)}
.card--first .card__go{position:absolute;right:24px;top:22px;display:grid;place-items:center;width:60px;height:76px;margin:0;border-radius:50% 50% 6px 6px / 40% 40% 6px 6px;background:#FFFFFF;color:var(--ink);border:2px solid var(--ink);transition:transform .25s var(--ease)}
.card--first:hover .card__go{transform:translateY(-4px)}
.card--first .card__go .ic{width:26px;height:26px;margin-top:6px}
.card--first:focus-within{outline:3px solid var(--ink);outline-offset:3px;box-shadow:0 0 0 3px #FFFFFF}

.steps{--sgap:clamp(18px,2.4vw,30px);display:grid;gap:var(--sgap);list-style:none}
.steps--n1{grid-template-columns:minmax(0,1fr)}.steps--n2{grid-template-columns:repeat(2,minmax(0,1fr))}.steps--n3{grid-template-columns:repeat(3,minmax(0,1fr))}.steps--n4{grid-template-columns:repeat(4,minmax(0,1fr))}.steps--n5{grid-template-columns:repeat(5,minmax(0,1fr))}
.step{position:relative;margin-top:0;background:#FFFFFF;color:var(--ink);border:1px solid var(--line);border-radius:var(--r-card);padding:26px 22px 26px;box-shadow:var(--sh-sm);text-align:left}
.step__n{display:grid;place-items:center;width:46px;height:56px;margin:0 0 16px;background:var(--brand);color:var(--on-brand);font:800 1.4rem/1 var(--head);border-radius:var(--r-tab);box-shadow:inset 0 0 0 2px var(--ink)}
.step__t{font-size:1.2rem;margin-bottom:8px;color:var(--ink)}
.step__b p{color:var(--muted);font-size:.98rem;margin:0}
.steps--boxes .step{border-bottom:5px solid var(--brand)}
.steps--vertical,.steps--line{grid-template-columns:minmax(0,1fr)}

.faq{border-bottom:1px solid var(--rule);max-width:900px;margin-inline:auto}
.qa{border-top:1px solid var(--rule)}
.qa__h{font-size:inherit}
.qa__b{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;min-height:68px;padding:16px 8px 16px 4px;background:none;border:0;cursor:pointer;text-align:left;color:var(--fg);font:800 clamp(1.08rem,1.6vw,1.26rem)/1.3 var(--head);letter-spacing:-.01em;transition:color .2s}
.qa__b:hover{color:var(--link)}
.qa__ic{width:44px;height:44px;flex:none;display:grid;place-items:center;background:var(--plate);color:var(--plate-fg);border-radius:var(--r-tab);transition:background-color .25s,color .25s}
.qa__ic .ic{width:20px;height:20px;transition:transform .3s var(--ease)}
.qa__b[aria-expanded=true] .qa__ic{background:var(--brand);color:var(--on-brand)}
.qa__b[aria-expanded=true] .qa__ic .ic{transform:rotate(45deg)}
.qa__a{padding:0 64px 24px 4px;color:var(--muted)}
.qa__a p:last-child{margin-bottom:0}
.no-js .qa__a[hidden]{display:block}

.notice{display:flex;gap:16px;align-items:flex-start;background:var(--soft);color:var(--ink);border:1px solid var(--line);border-left:4px solid var(--brand);border-radius:var(--r-card);padding:20px 24px}
.band--soft .notice{background:#FFFFFF}
.notice--center{max-width:880px;margin-inline:auto}
.notice__ic{width:48px;height:48px;display:grid;place-items:center;background:var(--plate);color:var(--plate-fg);border-radius:var(--r-tab);flex:none}
.notice__b{min-width:0}.notice__b>*:last-child{margin-bottom:0}
.notice__t{font:800 1.15rem/1.3 var(--head);color:var(--ink);margin:0 0 6px}
.notice--danger{border-left-width:8px}
.notice--danger .notice__ic{background:var(--brand);color:var(--on-brand)}
.hazard__steps{display:grid;gap:10px;list-style:none;margin:12px 0;counter-reset:hz}
.hazard__steps li{display:flex;gap:12px;align-items:flex-start;counter-increment:hz}
.hazard__steps li::before{content:counter(hz);width:30px;height:30px;display:grid;place-items:center;background:var(--brand);color:var(--on-brand);font:800 .85rem var(--head);border-radius:50%;flex:none}

.symptoms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px clamp(18px,3vw,36px);list-style:none}
.symptom{display:flex;gap:16px;align-items:flex-start;background:#FFFFFF;border:1px solid var(--line);border-radius:var(--r-card);padding:18px 20px;box-shadow:var(--sh-sm);transition:transform .2s var(--ease),box-shadow .2s}
.symptom:hover{transform:translateY(-3px);box-shadow:var(--sh)}
.symptom__ic{width:52px;height:52px;display:grid;place-items:center;background:var(--plate);color:var(--plate-fg);border-radius:var(--r-tab);flex:none}
.symptom__t{display:block;font:800 1.1rem/1.3 var(--head);color:var(--ink);margin-bottom:4px}
.symptom__c{display:block;color:var(--muted);font-size:.96rem}
.symptom__c b{color:var(--brand-deep)}

.factors{display:grid;gap:0 clamp(24px,4vw,56px);list-style:none}
.factors--2{grid-template-columns:repeat(2,minmax(0,1fr))}.factors--3{grid-template-columns:repeat(3,minmax(0,1fr))}.factors--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.factor{display:grid;grid-template-columns:56px minmax(0,1fr);gap:0 16px;padding:22px 0;border-top:1px solid var(--rule);align-content:start}
.factor__ic{grid-row:span 2;width:52px;height:52px;display:grid;place-items:center;background:var(--plate);color:var(--plate-fg);border-radius:var(--r-tab);transition:background-color .25s,color .25s}
.factor:hover .factor__ic{background:var(--brand);color:var(--on-brand)}
.factor__t{font-size:1.18rem;margin-bottom:4px}
.factor p{margin:0;color:var(--muted);font-size:.97rem}
.factors--3 .factor,.factors--4 .factor{grid-template-columns:minmax(0,1fr)}.factors--3 .factor__ic,.factors--4 .factor__ic{grid-row:auto;margin-bottom:12px}
.tiles{display:grid;gap:clamp(14px,2vw,22px);list-style:none}
.tiles--2{grid-template-columns:repeat(2,minmax(0,1fr))}.tiles--3{grid-template-columns:repeat(3,minmax(0,1fr))}.tiles--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.tile{position:relative;background:#FFFFFF;color:var(--ink);border:1px solid var(--line);border-radius:var(--r-card);padding:22px 22px 26px;box-shadow:var(--sh-sm);transition:transform .2s var(--ease),box-shadow .2s}
.tile:hover{transform:translateY(-3px);box-shadow:var(--sh)}
.tile__ic{width:52px;height:52px;display:grid;place-items:center;background:var(--plate);color:var(--plate-fg);border-radius:var(--r-tab);margin-bottom:14px}
.tile__t{font-size:1.14rem;margin-bottom:6px;color:var(--ink)}
.tile p{margin:0;color:var(--muted);font-size:.95rem}
.stats{display:flex;flex-wrap:wrap;gap:0;margin:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.stat{flex:1 1 180px;padding:22px 24px;display:flex;flex-direction:column-reverse}
.stat+.stat{border-left:1px solid var(--line)}
.stat dt{color:var(--muted);font-size:.92rem;font-weight:600}
.stat dd{margin:0;font:800 2.8rem/1.1 var(--head);color:var(--link);letter-spacing:-.03em}
.compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.compare__col{background:#FFFFFF;color:var(--ink);border:1px solid var(--line);border-radius:var(--r-card);padding:24px 26px;box-shadow:var(--sh-sm)}
.compare__col--yes{border-top:6px solid var(--brand)}.compare__col--no{border-top:6px solid var(--rule)}
.compare__t{display:flex;align-items:center;gap:12px;font:800 1.2rem/1.3 var(--head);margin:0 0 14px;color:var(--ink)}
.compare__t .ic{color:var(--brand-deep)}
.compare ul,.ticks{list-style:none;display:grid;gap:10px}
.compare li,.ticks li{display:flex;gap:12px;align-items:flex-start}

.compare li::before,.ticks li::before{content:"";flex:none;width:22px;height:27px;margin:.1em 2px 0 0;border-radius:var(--r-tab);background:var(--brand) var(--tick-mark) center 64%/13px no-repeat;box-shadow:inset 0 0 0 1.5px var(--ink)}

.compare__col--no li::before{background:linear-gradient(var(--ink),var(--ink)) center/11px 3px no-repeat,var(--soft2);box-shadow:inset 0 0 0 1.5px var(--rule)}
.band--brand .ticks li::before{background:#FFFFFF var(--tick-mark-brand) center 64%/13px no-repeat}
.timeline{list-style:none;position:relative;display:grid;gap:0;padding-left:44px}
.timeline::before{content:"";position:absolute;left:14px;top:6px;bottom:6px;width:3px;background:var(--line);border-radius:2px}
.timeline li{position:relative;padding:0 0 28px}
.timeline li::before{content:"";position:absolute;left:-44px;top:1px;width:30px;height:30px;background:var(--brand) var(--tick-mark) center/16px no-repeat;border-radius:50%;border:3px solid #FFFFFF;box-shadow:0 0 0 1px var(--line)}
.timeline__k{display:block;font:800 .74rem/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--kick);margin-bottom:4px}
.timeline__t{font-size:1.2rem;margin-bottom:4px}
.timeline p{margin:0;color:var(--muted)}

.factsheet{background:#FFFFFF;color:var(--ink);border:1px solid var(--line);border-radius:var(--r-card);padding:22px 26px;box-shadow:var(--sh-sm)}
.factsheet__t{display:flex;align-items:center;gap:12px;font:800 .74rem/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--kick);margin:0 0 10px}
.factsheet dl{margin:0}
.factsheet dl>div{display:grid;grid-template-columns:minmax(120px,36%) minmax(0,1fr);gap:4px 16px;padding:12px 0;border-top:1px solid var(--line)}
.factsheet dt{font-weight:800;color:var(--ink)}.factsheet dd{margin:0;color:var(--muted)}
@media (max-width:480px){.factsheet dl>div{grid-template-columns:minmax(0,1fr)}}
.phonebox{background:#FFFFFF;color:var(--ink);border:1px solid var(--line);border-radius:var(--r-frame);box-shadow:var(--sh);overflow:hidden}
.phonebox__top{padding:clamp(22px,2.8vw,32px);display:grid;gap:10px;justify-items:start}
.phonebox__top p{margin:0;color:var(--muted)}
.phonebox__t{font:800 1.4rem/1.2 var(--head);color:var(--ink)!important}
.phonebox__asks{display:grid;gap:0;list-style:none;border-top:1px solid var(--line);background:var(--soft);padding:8px clamp(22px,2.8vw,32px)}
.phonebox__asks li{display:flex;gap:12px;align-items:flex-start;padding:12px 0}
.phonebox__asks li+li{border-top:1px solid var(--line)}
.phonebox__asks .ic{margin-top:2px;color:var(--brand-deep)}
.phonebox__asks b{display:block}.phonebox__asks span{display:block;color:var(--muted);font-size:.95rem}
.phonebox__note{display:flex;gap:10px;margin:0;padding:14px clamp(22px,2.8vw,32px);border-top:1px solid var(--line);font-weight:700;font-size:.93rem}

.prose{max-width:760px}
.prose p{margin:0 0 1.1em}
.prose h2{margin:1.6em 0 .5em}
.prose h3{margin:1.4em 0 .4em}
.prose .ticks{margin:0 0 1.2em}

.cta{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,5vw,72px);align-items:center}
.cta__copy{min-width:0}
.cta__copy .stitle{margin-bottom:.35em}
.cta__copy .lead{color:var(--muted)}
.cta__dial{background:#FFFFFF;color:var(--ink);border-radius:var(--r-frame);padding:clamp(22px,2.8vw,34px);box-shadow:0 26px 50px -22px rgba(166,66,0,.5);display:grid;gap:18px;justify-items:start;position:relative}
.cta__top{display:grid;gap:10px}
.cta__k{display:flex;align-items:center;gap:10px;font:800 .74rem/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--kick)}
.cta__band{width:100%}.cta__band .btn{width:100%}
.cta__links{margin:18px 0 0;display:flex;flex-wrap:wrap;gap:0 24px}
.cta__links a{display:inline-flex;align-items:center;min-height:44px;font-weight:700}
.band--brand .cta__links a{color:var(--ink)}

.foot{background:var(--soft);color:var(--ink);position:relative;--pt-above:#FFFFFF}
.foot__top{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:clamp(24px,4vw,64px);padding:clamp(8px,1.6vw,18px) 0 clamp(30px,4vw,48px);margin-top:calc(-1 * clamp(4px,1vw,14px));position:relative;z-index:2}
.foot__lead{min-width:0}
.foot__lead>p{margin:16px 0 0;max-width:52ch;color:var(--muted)}
.foot__phone{min-width:0;display:grid;justify-items:start;background:#FFFFFF;border:1px solid var(--line);border-radius:var(--r-pic);padding:clamp(40px,5vw,60px) clamp(22px,3vw,40px) clamp(24px,3vw,34px);box-shadow:var(--sh-sm)}
.foot__dial-k{display:flex;align-items:center;gap:12px;margin:0 0 10px;font:800 .74rem/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--kick)}
.foot__tel{display:flex;width:fit-content;max-width:100%;align-items:center;gap:14px;font:800 clamp(1.4rem,2.8vw,2.2rem)/1.05 var(--head);letter-spacing:-.02em;color:var(--ink);text-decoration:none;white-space:nowrap}
.foot__tel:hover{text-decoration:none;color:var(--brand-deep)}
.foot__telic{width:48px;height:56px;display:grid;place-items:center;background:var(--ink);color:var(--brand);border-radius:var(--r-tab);transition:transform .2s var(--ease)}
.foot__telic .ic{margin-top:5px}
.foot__tel:hover .foot__telic{transform:translateY(-3px)}
.foot__call{margin-top:14px}
.foot__note{margin:12px 0 0;color:var(--muted);font-size:.93rem}
.foot__links{position:relative;background:transparent}
.foot__cols{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,.8fr) minmax(0,.8fr);gap:clamp(22px,3vw,40px);align-content:start;padding-top:clamp(22px,3vw,34px);padding-bottom:clamp(20px,2.6vw,32px)}
.foot__col h2{font:800 .74rem/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--kick);margin:0 0 14px}
.foot__col ul{display:grid;gap:0;list-style:none}
.foot__col--svc ul{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px}
.foot__col a{display:inline-flex;align-items:center;min-height:44px;overflow-wrap:anywhere;padding:3px 0;color:var(--ink);font-weight:600;font-size:.96rem;text-decoration:none}
.foot__col a:hover{color:var(--brand-deep);text-decoration:underline;text-decoration-thickness:2px}
.foot__strip{background:var(--soft2);padding:16px 0}
.foot__strip .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 24px}
.foot__strip p{margin:0;font-size:.86rem;color:var(--ink)}

.callbar{position:fixed;left:0;right:0;bottom:0;z-index:120;display:none;background:#FFFFFF;border-top:1px solid var(--line);box-shadow:0 -10px 24px -14px rgba(166,66,0,.3);padding:10px 14px calc(10px + env(safe-area-inset-bottom))}
.callbar .btn{width:100%}
.totop{position:fixed;right:18px;bottom:20px;z-index:90;width:52px;height:52px;display:grid;place-items:center;background:#FFFFFF;color:var(--ink);border:2px solid var(--ink);border-radius:50%;cursor:pointer;opacity:0;transform:translateY(14px);pointer-events:none;transition:opacity .25s,transform .25s var(--ease),background-color .2s,color .2s;box-shadow:var(--sh-sm)}
.totop.show{opacity:1;transform:none;pointer-events:auto}
.totop:hover{background:var(--brand);color:var(--on-brand)}
.totop .ic{width:22px;height:22px}

.legal-body{max-width:880px}
.legal-body h2{font-size:1.55rem;margin:1.6em 0 .5em}
.legal-body h3{font-size:1.2rem;margin:1.4em 0 .4em}
.legal-body ul{padding-left:1.2em;margin:0 0 1em}
.legal-body li{margin:0 0 .3em}
.legal-body li::marker{color:var(--brand-deep)}
.legal-slot{border:2px dashed var(--rule);border-radius:var(--rd);padding:24px;background:var(--soft)}
.legal-lead{font-size:1.14rem;color:var(--muted);margin:0 0 1.4em;padding-left:18px;border-left:5px solid var(--brand)}
.legal-ledger{margin:0 0 1.4em;border-top:1px solid var(--rule)}
.legal-ledger>div{display:grid;grid-template-columns:minmax(150px,32%) minmax(0,1fr);gap:6px 18px;align-items:baseline;padding:12px 0;border-bottom:1px solid var(--line)}
.legal-ledger dt{font-weight:800;color:var(--ink)}
.legal-ledger dd{margin:0;color:var(--ink);overflow-wrap:anywhere}
.legal-toc{background:var(--soft);border-radius:var(--r-card);padding:18px 22px;margin:0 0 1.6em;border:1px solid var(--line);border-left:6px solid var(--brand)}
.legal-toc ol{margin:0;padding-left:1.4em;columns:2;column-gap:32px}
.legal-toc li{margin:0 0 .3em;break-inside:avoid}
.legal-note{margin-top:2em;padding:16px 20px;border-radius:var(--r-card);background:var(--soft);color:var(--muted);font-size:.95rem}
.legal-ledger a[href^="tel:"],.legal-ledger a[href^="mailto:"]{display:inline-flex;align-items:center;min-height:44px}
.legal-ledger a:not([href^="tel:"]):not([href^="mailto:"]),.legal-note a{padding-block:10px}
.legal-body h2[id]{scroll-margin-top:110px}
.legal-body h2:has(+ .legal-note){margin-top:2.4em}

:is(.steps,.factors,.tiles,.rows,.compare,.cards,.split,.prose,.statement,.promises,.gal,.checklist,.ticks,.symptoms,.chips)+:is(.callrow,.notice,.rows,.split,.cards,.steps,.symptoms),
:is(.steps,.factors,.tiles,.rows,.compare,.cards,.promises,.checklist,.ticks,.symptoms)+.prose{margin-top:clamp(28px,4vw,44px)}
:is(.checklist,.ticks)+p:not(.prose){margin-top:clamp(20px,3vw,28px)}
.notice+.notice{margin-top:16px}
.fig+.head,.split+:is(.checklist,.ticks,.factors,.tiles,.promises,.compare,.gal,.stats,.timeline,.factsheet){margin-top:clamp(28px,4vw,44px)}
@media (max-width:400px){.btn--call{white-space:normal}}
:where(.legal-ledger,.legal-body) a[href^="tel:"]{white-space:nowrap}

@media (min-width:761px) and (max-width:1060px){
  :is(.cards--3,.tiles--3,.tiles--4,.factors--3,.promises--3):not(:has(> :nth-child(4))){grid-template-columns:repeat(3,minmax(0,1fr))}
  .steps--n5:not(.steps--multi)>.step:last-child{grid-column:1 / -1}
  .trustbar ul:has(> :nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
  .trustbar ul:has(> :nth-child(4):last-child)>li:nth-child(odd){border-left:0}
  .gal--wide,.gal--tall{grid-column:auto;grid-row:auto}
  .gal:not(.gal--4)>figure:last-child:nth-child(3n+1){grid-column:1 / -1}
  .gal:not(.gal--4)>figure:last-child:nth-child(3n+2){grid-column:span 2}
}
@media (max-width:760px){:is(.tiles--3,.tiles--4):not(:has(> :nth-child(4))){grid-template-columns:minmax(0,1fr)}}
.mt-s{margin-top:12px}.mt-m{margin-top:clamp(20px,3vw,28px)}.mt-l,.head.mt-l{margin-top:clamp(40px,5vw,64px)}

.ersteps li{--fg:var(--ink);--muted:#5F5143}
.ersteps b{color:var(--ink)}
.band--hero-flat{--padb:clamp(70px,8.4vw,116px)}
.band--hero-flat .crb-portal--hero{height:clamp(40px,5.4vw,72px)}
.trustbar+.band--white{--padt:clamp(26px,3.4vw,46px)}
.band--cta .cta__links a{color:var(--link)}
.band--brand.band--cta .cta__links a{color:var(--ink)}
.hero__dialbar .btn--outline-dark{--fg:var(--ink);--bg-band:#FFFFFF;justify-content:center;text-align:center}   
.hero--tint .hero__dialbar .btn--outline-dark{--fg:var(--ink);--bg-band:#FFFFFF}
.hero__dialbar .hero__cta{margin-top:8px}
.hero--beside .hero__copy .hero__cta{margin-top:26px}

@media (max-width:1180px){.topbar__long{display:none}.topbar__short{display:inline}.nav{gap:14px}.menu a{padding-inline:11px}.nav__phone span{display:none}}
@media (max-width:1120px){.nav__main,.nav__phone{display:none}.burger{display:grid}.nav{justify-content:space-between}.nav__right{margin-left:auto}}
@media (max-width:1060px){
  
  .hero--portal{grid-template-columns:minmax(0,1fr)}
  .hero--portal.hero--rev .hero__copy{order:0}
  .hero--portal .hero__media{max-width:440px}
  .hero--portal .hero__media::before{inset:-14px 14px 18px -14px}
  .trustbar ul{gap:12px}
  .trustbar ul:is(:has(> :nth-child(3):last-child),:has(> :nth-child(5):last-child),:has(> :nth-child(6):last-child)){grid-template-columns:repeat(2,minmax(0,1fr))}
  .trustbar ul:is(:has(> :nth-child(3):last-child),:has(> :nth-child(5):last-child))>li:last-child{grid-column:1 / -1}
  .hero--beside,.hero--dial{grid-template-columns:minmax(0,1fr)}
  .hero--dial .hero__copy,.hero__dial,.hero--dial .ersteps{grid-column:1;grid-row:auto}
  .hero--duo{grid-template-columns:minmax(0,1fr)}
  .hero--duo.hero--rev .hero__copy,.hero--duo.hero--rev .hero__fig{order:0}
  .lede,.split,.split--wide-l,.split--wide-r,.cols,.cols--wide-l,.cols--wide-r,.pblock,.cta,.phoneband,.head--rule{grid-template-columns:minmax(0,1fr)}
  .split--rev .split__media,.pblock--rev .pblock__media{order:0}
  .cards--3,.cards--4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .promises--3,.promises--4,.factors--3,.factors--4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tiles--4,.tiles--3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .steps--n4,.steps--n5{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gal{grid-template-columns:repeat(3,minmax(0,1fr))}.gal--4{grid-template-columns:repeat(2,minmax(0,1fr))}   
  .symptoms{grid-template-columns:minmax(0,1fr)}
  .foot__col a{min-height:44px}.sub__all a{min-height:44px}
  .foot__top{grid-template-columns:minmax(0,1fr)}.foot__phone{order:-1}
  .lede__cols{columns:1}
}
@media (max-width:900px){
  .foot__cols{grid-template-columns:repeat(2,minmax(0,1fr))}.foot__col--svc{grid-column:1 / -1}
  .row{grid-template-columns:58px minmax(0,1fr)}.row__shot{display:none}
}
@media (max-width:760px){
  :root{--topbar-h:44px}
  .callbar{display:block}.totop{bottom:86px}
  body{padding-bottom:84px}
  .topbar__x{display:none}
  .cards--3,.cards--2,.cards--4,.promises--2,.promises--3,.promises--4,.factors--2,.factors--3,.factors--4,.compare,.checklist--2,.steps--n2,.steps--n3,.steps--n4,.steps--n5{grid-template-columns:minmax(0,1fr)}
  .tiles--2,.tiles--3,.tiles--4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .trustbar ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.trustbar li{font-size:.95rem}
  .phonestrip__in{flex-direction:column;align-items:flex-start}
  .hero__pic,.hero__fig-in{aspect-ratio:4/3}
  .hero__strip-pic{aspect-ratio:4/3;transform:none}.hero__strip-pic img{object-position:50% 50%}
  .fig--offset .fig__in{transform:none}
  .hero__tag,.hero--rev .hero__tag{left:10px;right:auto;bottom:22px;padding:6px 14px 6px 6px;max-width:calc(100% - 20px)}
  .hero__tag small{display:none}.hero__tag-ic{width:36px;height:42px}
  .hero__dialbar{max-width:none;width:100%}
  
  .cards--photo .card{display:grid;grid-template-columns:112px minmax(0,1fr)}
  .cards--photo .card__media{align-self:stretch;aspect-ratio:auto;background:var(--soft)}.cards--photo .card__media img{height:100%;object-fit:contain}
  .cards--photo .card__body{padding:16px 18px}.cards--photo .card__bk{display:none}
  .cards--photo .card__bigic{width:52px;height:52px}
  .cards--photo .card--first{display:flex;min-height:200px}
  .gal,.gal--4,.gal--3{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:240px}.gal--big,.gal--tall,.gal--wide{grid-column:span 2;grid-row:auto}
  .legal-ledger>div{grid-template-columns:minmax(0,1fr)}
  .qa__b{padding-left:2px}.qa__a{padding-right:12px}
  .hero__cta .btn{width:100%}.hero__cta .btn--call{justify-content:flex-start}
  .telbig__n{white-space:nowrap}
  .callrow__act{width:100%}.callrow__act .btn{width:100%}
  .portrait__badge{left:-6px;bottom:-8px}
  .fig--offset{padding:14px 14px 0 0}
}
@media (max-width:560px){
  .topbar .topbar__l{display:none}.topbar__in{justify-content:center}
  .gal,.gal--4,.gal--3{grid-template-columns:minmax(0,1fr);grid-auto-rows:230px}.gal--big,.gal--tall,.gal--wide{grid-column:auto}
  .tiles--2,.tiles--3,.tiles--4{grid-template-columns:minmax(0,1fr)}
  .foot__cols{grid-template-columns:minmax(0,1fr)}.foot__col--svc ul{grid-template-columns:minmax(0,1fr)}
  .foot__tel{font-size:1.5rem}
  .cta__dial{padding:20px}
  .hq{gap:12px 20px}
  .legal-toc ol{columns:1}
  .promise__n{font-size:2rem}
  .phoneband__asks{padding:22px}
}
@media (max-width:560px){.nav{gap:10px}.brand{gap:10px}.brand__mk{width:42px;height:42px}.is-scrolled .brand__mk{width:38px;height:38px}.brand__n{font-size:1.24rem}.nav__right{gap:10px}}
@media (max-width:420px){.cards--photo .card{grid-template-columns:96px minmax(0,1fr)}.cards--photo .card__body{padding:14px 14px 16px}}
@media (max-width:420px){.nav__call-t{display:none}.nav__call{padding:6px;min-height:48px;min-width:48px;justify-content:center}.nav__call .btn__tile{width:34px;height:34px;background:transparent;color:var(--ink)}.brand__s{display:none}}
@media (max-width:380px){.nav{gap:8px}.brand{gap:8px}.brand__mk,.is-scrolled .brand__mk{width:38px;height:38px}.brand__n{font-size:1.1rem}.nav__right{gap:6px}.burger{width:44px;height:44px}.telbig__n{font-size:1.5rem}.telbig--xl .telbig__n{font-size:1.85rem}.telbig__ic{width:42px;height:42px}.telbig--xl .telbig__ic{width:50px;height:50px}}

@media (max-width:400px){.btn--call,.btn--lg.btn--call{gap:8px;padding:7px 12px 7px 7px;font-size:clamp(.84rem,4.2vw,1rem)}.btn--lg .btn__tile,.btn--call .btn__tile{width:38px;height:38px}}
@media (max-width:349px){.topbar__short{display:none}.brand__n{font-size:1.1rem}.telbig{gap:10px}.telbig__ic,.telbig--xl .telbig__ic{width:38px;height:38px}.telbig__n{font-size:1.3rem}.telbig--xl .telbig__n{font-size:1.55rem}.hero__dialbar .telbig__n{font-size:1.45rem}.btn--lg{font-size:1rem}}
.callrow__t,.notice__t,.row__t,.hero__tag,.eyebrow{text-wrap:balance}
@media (max-width:430px){.legal-hero .display{font-size:clamp(20px,7.2vw,30px)}}
@media (max-width:360px){
  .row,.rows--nomedia .row,.row:not(:has(.row__shot)){grid-template-columns:46px minmax(0,1fr);gap:14px}.row__n{width:46px;height:46px;font-size:1.05rem}.row__t{font-size:1.1rem}
  .notice{flex-direction:column;gap:12px;padding:18px}
  .symptom{flex-direction:column;gap:10px}
}

@media (max-width:349px){
  .nav{gap:6px}.brand{gap:6px}.brand__mk,.is-scrolled .brand__mk{width:32px;height:32px}.brand__n{font-size:.92rem;letter-spacing:-.03em}
  .nav__right{gap:4px}.nav__call{padding:4px;min-height:44px;width:44px;border-radius:var(--r-round)}.nav__call .btn__tile{width:34px;height:34px}.burger{width:44px;height:44px}
}

@media (max-width:1060px){.fig--offset{max-width:640px}.hero__fig{max-width:640px}}
@media (max-width:760px){.cards--photo .card__media.card__media--ic{aspect-ratio:auto;min-height:92px;padding:14px 0}.cards--photo .card--first{min-height:0}}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition-duration:.01ms!important;transition-delay:0s!important}
  .reveal{opacity:1;transform:none}
  .card:hover,.tile:hover,.promise:hover,.btn:hover,.chip:hover,.symptom:hover{transform:none}
  .topbar__dot::after,.hero__dialbar-k i::after{display:none}
}
@media (forced-colors:active){
  .btn,.chip,.qa,.card,.notice,.promise,.phonebox,.hero__tag,.totop,.burger,.callrow,.step,.tile,.phoneband__asks,.pull,.symptom{border:2px solid CanvasText}
  .btn--call{forced-color-adjust:none;background:ButtonFace;color:ButtonText;border-color:ButtonText}
  .crb-portal,.crb-roofline{display:none}
  a.chip::before,.chip--static::before,.ticks li::before,.compare li::before,.topbar__dot,.crumbs li+li::before,.eyebrow::before{forced-color-adjust:none;background:CanvasText}
  .compare__col--no li::before{background:linear-gradient(CanvasText,CanvasText) center/11px 3px no-repeat,Canvas;box-shadow:inset 0 0 0 2px CanvasText}
  :focus-visible{outline:3px solid Highlight}
}
@media print{
  :root{--brand:#000000;--soft:#FFFFFF;--soft2:#FFFFFF}
  .topbar,.masthead,.drawer,.callbar,.totop,.hero__media,.hero__fig,.hero__strip,.phonestrip,.trustbar,.crb-portal,.crb-roofline,.foot__links,.faq .qa__ic{display:none!important}
  body{font-size:11pt;color:#000000;background:#FFFFFF;padding:0}
  .band,.band--closing,.band--herozone,.band--heroduo{background:#FFFFFF!important;color:#000000!important;padding:14pt 0!important;margin:0!important;border:0}
  .band *{color:#000000!important}
  .reveal{opacity:1!important;transform:none!important}
  .qa__a[hidden]{display:block}
  a{color:#000000}
  a[href^="tel:"]::after{content:" (" attr(href) ")"}
  .card,.qa,.promise,.factor,.tile,.step{break-inside:avoid;border:1px solid #000000}
}

@media (max-width:560px){.brand__n{font-size:clamp(.86rem,4.3vw,1.24rem);letter-spacing:-.02em}}

body *:not(#n){font-variant-numeric:lining-nums}

@media (max-width:760px){.cards--photo .card--first{min-height:170px}.cards--photo .card--first .card__body{padding:104px 20px 22px}}
@media (max-width:420px){.cards--photo .card--first .card__body{padding:102px 18px 22px}}
.band--soft2 .btn--outline-dark:hover,.band--soft2 .btn--ghost:hover{background:#FFFFFF}

@media (min-width:761px) and (max-width:1060px){.hero--duo .hero__dialbar{max-width:640px}}

.card__t,.tile__t,.step__t,.promise__t,.factor__t,.timeline__t{font-size:1.04rem;line-height:1.2}
.row__t{font-size:clamp(1.1rem,1.6vw,1.4rem);line-height:1.2}
.qa__b{font-size:clamp(.96rem,1.25vw,1.08rem);line-height:1.3}
.callrow__t,.notice__t,.phonebox__t,.compare__t,.symptom__t,.checklist b{font-size:1rem;line-height:1.25}
.callrow__t{font-size:clamp(1.1rem,1.7vw,1.4rem)}
.pull p{font-size:clamp(1.02rem,1.5vw,1.25rem)}.statement__t{font-size:clamp(1.45rem,3.3vw,2.5rem)}
.lede__cols p:first-child{font-size:clamp(1.05rem,1.5vw,1.2rem)}
.telbig__n{font-size:clamp(1.35rem,2.4vw,1.85rem)}.telbig--xl .telbig__n{font-size:clamp(1.6rem,4vw,2.7rem)}
.hero__dialbar .telbig__n{font-size:clamp(1.5rem,2.8vw,2.1rem)}
.nav__phone b{font-size:1.05rem}.promise__n{font-size:1.7rem}.card__num{font-size:1.9rem}.stat dd{font-size:2.1rem}
.sub__grid a{border-radius:var(--r-s)}
@media (max-width:760px){.hero--portal .display{font-size:clamp(27px,7.6vw,38px)}.stitle{font-size:clamp(23px,6.4vw,30px)}.display{font-size:clamp(27px,7.4vw,38px)}}
@media (max-width:380px){.hero--portal .display{font-size:25px}.display{font-size:25px}.brand__n{font-size:.92rem}}
@media (max-width:760px){.trustbar li{padding:22px 10px 16px;gap:10px;font-size:.9rem;border-radius:70px 70px 12px 12px}.trustbar__ic{width:42px;height:50px}}
@media (max-width:560px){.brand__n{white-space:normal;font-size:clamp(.74rem,3.7vw,.95rem);line-height:1.12}.brand__n b{display:block}.brand{min-width:0}}
@media (max-width:349px){.brand__n{font-size:.74rem}.nav__right{gap:4px}}

@media (max-width:380px){.trustbar ul{padding:8px;gap:18px 8px}.trustbar li{min-width:0;gap:6px;padding:4px 2px;font-size:.8rem;line-height:1.2}.trustbar li>*:not(.trustbar__ic){min-width:0;overflow-wrap:anywhere;hyphens:auto}.trustbar__ic{width:34px;height:34px}.trustbar__ic .ic{width:18px;height:18px}}

/* hazard notice with numbered steps: on phones the icon plate sits above the body, so the steps use the full card width instead of a ~5-word column (gate fix 2026-11-10) */
@media (max-width:560px){.notice:has(.hazard__steps){flex-direction:column;gap:12px}}

/* full-check-fix 2026-11-10 — (1) gallery: below 1200 px the caption plate sits UNDER the picture, never over it; (2) a centred eyebrow that wraps keeps its marker on the first line */
@media (max-width:1200px){
  .gal{grid-auto-rows:auto}
  .gal--tall,.gal--big{grid-row:auto}
  .gal figure{display:flex;flex-direction:column}
  .gal__pic{position:relative;inset:auto;flex:none;aspect-ratio:4/3;overflow:hidden}
  .gal--wide .gal__pic,.gal--big .gal__pic{aspect-ratio:5/2}
  .gal figcaption{position:static;flex:1;border:0;border-top:1px solid var(--line);border-radius:0;padding:10px 14px 12px}
  .gal figure:hover figcaption{transform:none}
}
@media (min-width:761px) and (max-width:1060px){.gal:not(.gal--4)>figure:last-child:nth-child(3n+1) .gal__pic,.gal:not(.gal--4)>figure:last-child:nth-child(3n+2) .gal__pic{aspect-ratio:5/2}}
@media (max-width:560px){.gal__pic,.gal--wide .gal__pic,.gal--big .gal__pic{aspect-ratio:16/10}}
:is(.hero--stack,.head--center,.statement,.pull--center,.center) .eyebrow{display:block;text-align:center}
:is(.hero--stack,.head--center,.statement,.pull--center,.center) .eyebrow::before{margin-right:10px;vertical-align:-1px}
