/* OMEGA r4 — inner pages and interactive tools on the r4 token system (r4.css).
   Replaces design/depth/connected/renovation/r2/r3/shop/ux/refinement/amc-refinement/guides-discovery/localization CSS.
   Styles the existing semantic markup (r-* classes) so all calculators, configurators and drawers keep their logic. */

/* ===== shared page vocabulary ===== */
main{display:block}
.r-wrap,.wrap{width:min(100% - 2*var(--gutter),var(--content));margin-inline:auto}
.r-section,.section{padding-block:clamp(64px,3.5rem + 3.5vw,120px)}
.r-section+.r-section{padding-top:0}
.r-section.r-alt,.r-shop-sec:nth-of-type(even),.r-faq,.r-credit,.r-iso,.r-client-wall,.r-how,.r-report-scope,.r-amc-upsell+.r-faq{background:var(--band)}
.r-faq,.r-credit,.r-iso,.r-client-wall,.r-how,.r-report-scope{padding-top:clamp(64px,3.5rem + 3.5vw,120px)!important}
.r-decor,.r-bld-preview svg,.r-section>.r-decor{display:none}
.r-head{max-width:760px;margin-bottom:clamp(28px,2rem + 1.5vw,52px)}
.r-head h1,.r-page-intro h1,.page-heading h1,.r-product-top h1,.r-hero h1,.r-article h1,.contact-intro h1{font-size:var(--t-h2);font-weight:700;letter-spacing:-.03em;line-height:1.07;text-wrap:balance}
.r-head h2,.r-section h2,.section h2{font-size:var(--t-h3);font-weight:700;letter-spacing:-.025em;line-height:1.12;text-wrap:balance}
.r-section h3,.section h3{font-size:1.25rem;font-weight:700;letter-spacing:-.015em;line-height:1.25}
[dir="rtl"] :is(.r-head h1,.r-head h2,.r-section h2,.r-section h3,.r-article h1){letter-spacing:0;line-height:1.3}
.r-sub,.r-lead,.r-body{font-size:var(--t-lead);line-height:1.45;color:var(--ink-2);margin-top:14px;max-width:62ch;text-wrap:pretty}
.r-body{font-size:var(--t-body);color:var(--ink-2)}
.r-head .r-sub{margin-top:14px}
.r-fine,.r-muted,.small{font-size:var(--t-small);color:var(--muted);line-height:1.5}
.r-fine a,.small a{color:var(--ink);font-weight:600}
p+p{margin-top:12px}
.r-eyebrow,.eyebrow,.r-hub-label,.r-card-tag,.r-service-label{display:inline-block;font-size:var(--t-small);font-weight:600;color:var(--orange-ink);letter-spacing:.01em;margin-bottom:10px}
.r-crumbs{display:flex;flex-wrap:wrap;gap:6px;font-size:var(--t-small);color:var(--muted);margin-bottom:18px}
.r-crumbs a{color:var(--muted);text-decoration:none}.r-crumbs a:hover{color:var(--ink);text-decoration:underline}
.r-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,80px);align-items:start}
@media (max-width:900px){.r-split{grid-template-columns:1fr}}
.r-actions,.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:24px}
.r-note{display:flex;gap:14px;align-items:flex-start;background:var(--band);border-radius:20px;padding:20px 22px;margin-top:24px;color:var(--ink-2);font-size:var(--t-ui)}
.r-section.r-faq .r-note,.band .r-note,.r-how .r-note,.r-credit .r-note{background:#fff}
.r-note strong{display:block;color:var(--ink);margin-bottom:4px}
.r-note ul{margin:8px 0 0;padding-inline-start:18px}
.r-detail-icon{display:inline-grid;place-items:center;flex:none;width:36px;height:36px;border-radius:var(--r-input);background:var(--orange-wash);color:var(--orange-ink);font-style:normal}
.r-detail-icon .icon{width:18px;height:18px}

/* buttons (old vocabulary mapped to r4) */
.r-btn,.btn.primary,.btn.outline,.btn.text{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 22px;border-radius:var(--r-pill);font-size:1rem;font-weight:600;letter-spacing:-.01em;text-decoration:none;border:1.5px solid transparent;cursor:pointer;background:none;color:var(--ink);transition:background-color .2s,color .2s,border-color .2s}
.r-btn .icon,.btn .icon{width:18px;height:18px}
[dir="rtl"] :is(.r-btn,.btn,.r-link-btn,.r-more) .icon{transform:scaleX(-1)}
.r-btn.solid,.btn.primary{background:var(--orange);color:var(--ink)}
.r-btn.solid:hover,.btn.primary:hover{background:var(--orange-hover)}
.r-btn.line,.btn.outline{border-color:var(--ink);color:var(--ink)}
.r-btn.line:hover,.btn.outline:hover{background:var(--ink);color:#fff}
.r-btn.text,.btn.text{min-height:auto;padding:4px 0;border-radius:0;border-bottom:1.5px solid var(--orange)}
.r-btn-sm{min-height:38px;padding:8px 16px;font-size:var(--t-small)}
.r-btn-block{width:100%}
.r-link-btn,.text-link,.r-more,.r-pc-more{display:inline-flex;align-items:center;gap:6px;background:none;border:0;padding:0;font:inherit;font-weight:600;color:var(--ink);text-decoration:none;border-bottom:1.5px solid var(--orange);cursor:pointer}
.r-link-btn:hover,.r-more:hover{color:var(--orange-ink)}
.r-icon-btn{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:var(--r-input);border:0;background:var(--band);cursor:pointer;color:var(--ink)}
.r-icon-btn.is-sm{width:36px;height:36px}

/* ticks & steps */
.r-ticks,.r-package-points,.r-glance-list{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:12px}
.r-ticks li,.r-package-points li{display:flex;gap:10px;align-items:flex-start}
.r-ticks li::before{flex:none}
.r-ticks li:has(.icon)::before{display:none}
.r-ticks li .icon,.r-package-points li .icon{flex:none;color:var(--orange-ink);width:20px;height:20px;margin-top:2px}
.r-ticks li::before{content:"";width:20px;height:20px;margin-top:2px;border-radius:50%;background:var(--orange-wash) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a94300' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12 4 4 8-8'/%3E%3C/svg%3E") center/14px no-repeat}
.r-package-points .icon{color:var(--orange-ink);width:20px;height:20px;margin-top:2px}
.r-ticks-lg li{font-size:var(--t-body)}
.r-steps{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.r-steps li{display:grid;gap:14px;background:#fff;border-radius:var(--r-tile);padding:24px}
.r-section:not(.r-how):not(.r-faq) .r-steps li{background:var(--band)}
.r-process-marker{display:flex;align-items:center;gap:12px}
.r-process-number{font-size:var(--t-small);font-weight:700;color:var(--muted)}
.r-steps h3{font-size:1.125rem;margin-bottom:6px}
.r-steps p{color:var(--muted);font-size:var(--t-ui)}
.r-visit-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(32px,5vw,72px);align-items:center}
.r-visit-media,.r-report-photo{border-radius:var(--r-card);overflow:hidden;background:var(--band)}
.r-visit-media img,.r-report-photo img{width:100%;height:auto}
@media (max-width:900px){.r-visit-grid{grid-template-columns:1fr}}

/* page intro / heroes */
.r-page-intro,.r-shop-top,.r-guides-intro,.r-est-intro,.page-heading{padding-block:clamp(48px,3rem + 3vw,96px) clamp(24px,2vw,40px)}
.r-hero,.r-page-hero{padding-block:clamp(40px,2.5rem + 3vw,96px)}
.r-hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(28px,4vw,64px);align-items:center}
.r-hero-media,.r-buy-media,.r-package-image{position:relative;margin:0;border-radius:var(--r-card);background:var(--band);overflow:hidden;aspect-ratio:1100/733}
.r-hero-media img,.r-hero-media video,.r-buy-media img,.r-buy-media video,.r-package-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.r-hero-media figcaption,.r-package-image figcaption,.r-buy-media figcaption{position:absolute;inset-inline-start:14px;bottom:12px;font-size:var(--t-cap);color:var(--muted)}
.r-hero-video,.r-buy-media video{opacity:0;transition:opacity .6s}
.r-hero-video.is-playing,.r-buy-media video.is-playing,video.playing{opacity:1}
.r-trust{list-style:none;padding:0;margin:24px 0 0;display:flex;flex-wrap:wrap;gap:8px 22px;font-size:var(--t-small);color:var(--muted);font-weight:600}
.r-trust li::before{content:"·";margin-inline-end:8px;color:var(--orange)}
.r-trust li:first-child::before{display:none}
.r-mini-stats{display:flex;flex-wrap:wrap;gap:28px;margin-top:28px}
.r-mini-stats dt{font-size:var(--t-cap);color:var(--muted)}
.r-mini-stats dd{margin:2px 0 0;font-weight:700;font-size:1.125rem}
@media (max-width:900px){.r-hero-grid{grid-template-columns:1fr}.r-hero-stage{order:-1}}

/* glance strip */
.r-glance{background:var(--band);padding-block:28px}
.r-glance-list{grid-template-columns:repeat(3,1fr);margin:0;gap:20px}
.r-glance-list span{display:block;font-size:var(--t-cap);color:var(--muted);font-weight:600}
.r-glance-list b{display:block;margin-top:4px}
@media (max-width:820px){.r-glance-list{grid-template-columns:1fr}}

/* ===== product (buy) top: reports, maintenance, package ===== */
.r-product-top{padding-block:clamp(32px,2rem + 2vw,72px) clamp(56px,4vw,96px)}
.r-buy-grid,.r-package-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(28px,4vw,64px);align-items:start}
.r-buy-info .r-buy-media{margin-top:28px}
.r-buy-config,.r-package-config{position:sticky;top:96px}
@media (max-width:980px){.r-buy-grid,.r-package-layout{grid-template-columns:1fr}.r-buy-config,.r-package-config{position:static}}
.r-config,.r-package-config{background:var(--band);border-radius:var(--r-card);padding:clamp(22px,2.4vw,32px);display:grid;gap:18px}
.r-config-title,.r-package-config h2{font-size:1.5rem!important;letter-spacing:-.02em}
.r-config-step{border:0;margin:0;padding:0;display:grid;gap:10px}
.r-config-step legend{font-weight:700;font-size:var(--t-body);margin-bottom:10px;padding:0;display:flex;align-items:center;gap:10px}
.r-step-n{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--ink);color:#fff;font-size:var(--t-cap);font-weight:700}
.r-optional{font-weight:400;color:var(--muted);font-size:var(--t-small)}
.r-config-note{font-size:var(--t-small);color:var(--muted)}
.r-purpose,.r-seg,.r-chip-row,.r-chips,.r-pill-row,.r-sizes,.r-cal-filter,.r-guides-topics{display:flex;flex-wrap:wrap;gap:8px}
.r-purpose label,.r-seg label,.r-chip,.r-choice{position:relative;cursor:pointer}
.r-purpose input,.r-seg input,.r-chip input,.r-choice input,.service-radios input,.building-check input{position:absolute;opacity:0;pointer-events:none}
.r-purpose span,.r-seg label span,.r-chip span,.service-radios span,.r-choice span{display:inline-flex;align-items:center;min-height:44px;padding:9px 16px;border-radius:var(--r-pill);background:#fff;border:1.5px solid var(--line);font-weight:600;font-size:var(--t-ui);transition:border-color .15s,background .15s}
.r-purpose input:checked+span,.r-seg input:checked+span,.r-chip input:checked+span,.service-radios input:checked+span,.r-choice input:checked+span{border-color:var(--ink);background:var(--ink);color:#fff}
:is(.r-purpose,.r-seg,.r-chip,.service-radios,.r-choice) input:focus-visible+span{outline:3px solid var(--focus);outline-offset:2px}
.r-seg button,.r-chips button,.r-pill,.r-sizes button,.r-cal-filter button,.r-guides-topics button,.r-catlist button{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:8px 16px;border-radius:var(--r-pill);background:#fff;border:1.5px solid var(--line);font-weight:600;font-size:var(--t-ui);cursor:pointer;color:var(--ink-2)}
:is(.r-seg button,.r-chips button,.r-pill,.r-sizes button,.r-cal-filter button,.r-guides-topics button,.r-catlist button):is([aria-pressed="true"],[aria-checked="true"],[aria-current="true"],.is-on,.on,.active){background:var(--ink);border-color:var(--ink);color:#fff}
.r-report-select,.r-offer-size,label{display:grid;gap:6px;font-weight:600;font-size:var(--t-ui)}
.r-selected{background:#fff;border-radius:20px;padding:20px;display:grid;gap:8px}
.r-selected-name{font-weight:700;font-size:var(--t-body)}
.r-selected-price b,.r-offer-price span{font-size:2rem;font-weight:700;letter-spacing:-.03em}
.r-selected-price span,.r-offer-price small{display:block;color:var(--muted);font-size:var(--t-small)}
.r-cta-row{display:grid;gap:10px;margin-top:6px}
.r-cta-row .r-link-btn{justify-self:center}
.r-refund{font-size:var(--t-small);color:var(--muted)}
.r-package-custom{border-top:1px solid var(--line);padding-top:16px}
.r-package-custom h3{font-size:var(--t-body);margin-bottom:4px}
.r-package-overview h2{font-size:1.5rem!important;margin-top:32px}
.r-package-intro{padding-bottom:0}
.r-package-steps,.r-credit-flow,.r-report-scope-grid,.r-subject-grid,.r-prep-grid,.r-option-grid,.r-auth-grid,.r-tools-grid,.r-service-grid,.amc-building-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
.r-package-steps article,.r-credit-flow article,.r-report-scope-grid article,.r-subject,.r-prep,.r-option,.r-auth-group,.r-tool,.amc-tech-card{background:#fff;border-radius:var(--r-tile);padding:26px}
.r-section:not(.r-faq):not(.r-credit):not(.r-iso):not(.r-how):not(.r-report-scope):not(.r-client-wall) :is(.r-package-steps article,.r-subject,.r-prep,.r-option,.r-auth-group,.r-tool,.amc-tech-card,.r-report-scope-grid article){background:var(--band)}
.r-package-step{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.r-package-step span{font-size:var(--t-small);font-weight:700;color:var(--muted)}
.r-package-steps h3,.r-credit-flow h3{font-size:1.125rem;margin-bottom:6px}
.r-package-steps p,.r-credit-flow p,.r-subject-copy{color:var(--muted);font-size:var(--t-ui)}
.r-package-preparation{margin-top:32px}
.r-package-preparation h2{display:flex;align-items:center;gap:12px;font-size:1.375rem!important}
.r-credit-num{display:block;font-size:1.75rem;font-weight:700;letter-spacing:-.02em;margin-bottom:12px;color:var(--orange-ink)}
.r-dr-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:560px){.r-dr-row{grid-template-columns:1fr}}

/* report sample */
.r-report-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,64px);align-items:center}
@media (max-width:900px){.r-report-grid{grid-template-columns:1fr}}
.r-rep-sheet{background:#fff;border:1px solid var(--line-soft);border-radius:var(--r-card);padding:20px;box-shadow:0 24px 60px rgba(0,0,0,.06)}
.r-rep-head{display:flex;justify-content:space-between;align-items:center;font-size:var(--t-cap);color:var(--muted);margin-bottom:14px}
.r-rep-head img{width:90px;height:auto}
.r-rep-body{display:grid;grid-template-columns:1.4fr 1fr;gap:16px}
.r-rep-photo{position:relative;margin:0;border-radius:14px;overflow:hidden}
.r-rep-photo img{width:100%;height:auto}
.r-rep-pin{position:absolute;top:30%;inset-inline-start:58%;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--orange);color:var(--ink);font-size:var(--t-cap)}
.r-rep-read{position:absolute;top:10px;inset-inline-end:10px;background:rgba(255,255,255,.92);border-radius:10px;padding:6px 10px;font-weight:700;font-size:var(--t-small)}
.r-rep-read small{display:block;font-weight:400;color:var(--muted)}
.r-rep-photo figcaption{font-size:var(--t-cap);color:var(--muted);padding-top:6px}
.r-rep-k{font-size:var(--t-cap);color:var(--muted)}
.r-rep-meter{height:8px;border-radius:8px;background:linear-gradient(90deg,#d6e9d6,#ffd8b8,#ffb07a);position:relative;margin-top:8px}
.r-rep-meter i{position:absolute;inset-inline-start:68%;top:-4px;width:4px;height:16px;border-radius:2px;background:var(--ink)}
.r-rep-scale{display:flex;justify-content:space-between;font-size:var(--t-cap);color:var(--muted)}
.r-finding{background:var(--band);border-radius:20px;padding:20px;margin-top:20px}
.r-finding-top{display:flex;gap:12px;align-items:center;margin-bottom:12px}
.r-finding dl{margin:0;display:grid;gap:10px}
.r-finding dl div{display:grid;grid-template-columns:120px 1fr;gap:12px}
.r-finding dt{color:var(--muted);font-size:var(--t-small)}
.r-finding dd{margin:0;font-size:var(--t-ui)}
.r-priority{display:inline-block;background:var(--orange-wash);color:var(--orange-ink);font-weight:700;font-size:var(--t-cap);padding:2px 8px;border-radius:var(--r-pill)}
.r-report-scope-visual{margin:0 0 16px;border-radius:16px;overflow:hidden;background:var(--band);aspect-ratio:16/10}
.r-report-scope-visual img{width:100%;height:100%;object-fit:contain}

/* details / disclosures */
.r-scope-details,.r-comparison-disclosure,.r-property-edit,.building-budget-config,.building-budget-group,.amc-system{border-radius:20px;background:#fff;border:1px solid var(--line-soft);margin-top:20px}
.r-scope-details>summary,.r-comparison-disclosure>summary,.r-property-edit>summary,.building-budget-config>summary,.building-budget-group>summary{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:56px;padding:14px 20px;font-weight:700;cursor:pointer;list-style:none}
:is(.r-scope-details,.r-comparison-disclosure,.r-property-edit,.building-budget-config,.building-budget-group)>summary::-webkit-details-marker{display:none}
:is(.r-scope-details,.r-comparison-disclosure,.r-property-edit,.building-budget-config,.building-budget-group)>summary::after{content:"+";font-size:1.4rem;font-weight:400;color:var(--muted);transition:transform .2s}
:is(.r-scope-details,.r-comparison-disclosure,.r-property-edit,.building-budget-config,.building-budget-group)[open]>summary::after{transform:rotate(45deg)}
.r-scope-details>*:not(summary),.building-budget-config>*:not(summary),.building-budget-group>*:not(summary){padding:0 20px 20px}
.r-scope-checks{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.r-scope-checks article{background:var(--band);border-radius:16px;padding:18px}
.r-scope-checks ul,.r-prep ul,.r-auth-group ul,.r-eng-list,.r-concern-links{margin:10px 0 0;padding-inline-start:18px;display:grid;gap:6px;color:var(--ink-2);font-size:var(--t-ui)}
.r-concern-links{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.r-concern-links a{display:inline-flex;min-height:40px;align-items:center;padding:8px 14px;border-radius:var(--r-pill);background:var(--band);text-decoration:none;font-weight:600;font-size:var(--t-ui)}
.r-visit-options{display:grid;gap:12px}
.r-upload-drop{display:flex;align-items:center;gap:12px;border:1.5px dashed var(--line);border-radius:16px;padding:16px;cursor:pointer;background:#fff}
.r-upload-drop small{display:block;color:var(--muted);font-weight:400}
.r-upload-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;font-size:var(--t-small)}
.r-known-work{display:flex;justify-content:space-between;align-items:center;gap:24px;background:var(--band);border-radius:var(--r-card);padding:28px}
@media (max-width:700px){.r-known-work{flex-direction:column;align-items:flex-start}}

/* forms (all pages) */
input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{width:100%;min-height:48px;padding:11px 14px;border:1.5px solid var(--line-strong);border-radius:var(--r-input);background:#fff;font:inherit;font-weight:400;font-size:1rem;color:var(--ink)}
textarea{min-height:110px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px rgba(10,102,214,.18)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:600px){.form-row{grid-template-columns:1fr}}
fieldset{border:0;padding:0;margin:0}
legend{font-weight:700;margin-bottom:10px}
input[type=checkbox]{width:20px;height:20px;accent-color:var(--orange)}
input[type=range]{accent-color:var(--orange);width:100%}

/* ===== contact ===== */
.contact-section{padding-block:clamp(48px,3rem + 3vw,104px)}
.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(32px,5vw,80px);align-items:start}
@media (max-width:900px){.contact-layout{grid-template-columns:1fr}}
.contact-intro p{color:var(--ink-2);font-size:var(--t-lead);margin-top:14px}
.contact-phone{display:block;margin-top:24px;font-size:1.75rem;font-weight:700;letter-spacing:-.02em;text-decoration:none;direction:ltr;unicode-bidi:embed}
.contact-intro .text-link{margin-top:12px}
.contact-address{display:grid;gap:4px;margin-top:20px;color:var(--muted)}
.contact-address a{color:var(--ink);font-weight:600;text-decoration:none}
.contact-section form,#enquiry-form,.review-page form{background:var(--band);border-radius:var(--r-card);padding:clamp(22px,2.5vw,36px);display:grid;gap:18px}
.service-radios{display:flex;flex-wrap:wrap;gap:8px}
.service-radios label{position:relative}
.contact-details{display:grid;gap:14px}
.form-submit{display:grid;gap:10px}
.form-submit .btn{width:100%}
.send-options,.review-send{background:#fff;border-radius:20px;padding:22px;display:grid;gap:12px;border:2px solid var(--orange)}
.send-options h3,.review-send h3{font-size:1.25rem}
.carried-context{background:#fff;border-radius:16px;padding:14px 16px;font-size:var(--t-ui)}
.r-contact-options{padding-bottom:clamp(48px,4vw,96px)}
.r-option h2{font-size:1.125rem!important;margin-bottom:4px}
.r-option p{color:var(--muted);font-size:var(--t-ui)}
.r-option a{display:inline-block;margin-top:10px;font-weight:600;border-bottom:1.5px solid var(--orange);text-decoration:none}

/* ===== FAQ (old markup) ===== */
.r-faq-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(28px,4vw,64px);align-items:start}
@media (max-width:900px){.r-faq-wrap{grid-template-columns:1fr}}
.r-faq-intro h2{font-size:var(--t-h3)!important}
.r-faq-intro p{color:var(--muted);margin-top:12px}
.r-faq-intro .r-btn{margin-top:20px}
.r-faq-cards{display:grid;border-top:1px solid var(--line)}
.r-faq-card{border-bottom:1px solid var(--line)}
.r-faq-card summary{display:flex;gap:14px;align-items:center;min-height:64px;padding:16px 4px;font-weight:600;font-size:var(--t-body);cursor:pointer;list-style:none}
.r-faq-card summary::-webkit-details-marker{display:none}
.r-faq-card summary>span:nth-child(2){flex:1}
.r-faq-q{display:none}
.r-faq-card summary .icon{color:var(--muted);transition:transform .2s}
.r-faq-card[open] summary .icon{transform:rotate(45deg)}
.r-faq-card p{padding:0 4px 22px;color:var(--ink-2);max-width:68ch}

/* closing band (old pages) */
.r-context-close{background:var(--dark)!important;color:var(--on-dark);padding-block:clamp(64px,4rem + 3vw,120px)!important}
.r-context-close .r-wrap{display:grid;gap:8px;justify-items:center;text-align:center}
.r-context-close h2{color:#fff;font-size:var(--t-h2)!important}
.r-context-close p{color:var(--on-dark-muted);max-width:52ch;margin-inline:auto}
.r-context-close .r-actions{justify-content:center}
.r-context-close .r-btn.line{color:#fff;border-color:rgba(255,255,255,.5)}
.r-context-close .r-btn.line:hover{background:#fff;color:var(--ink)}
.r-context-close .r-fine a{color:#fff}

/* ===== Property Hub / shop ===== */
.r-shop-head .r-head{margin-bottom:12px}
.r-shop-bar{position:relative;background:var(--canvas);border-block:1px solid var(--line-soft);padding-block:16px}
.r-shop-bar-in{display:grid;gap:12px}
.r-shop-controls-top{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:space-between}
.r-shop-for{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-weight:600}
.r-shop-for .r-seg{background:var(--band);padding:4px;border-radius:var(--r-pill);gap:2px}
.r-shop-for .r-seg button{border:0;background:none}
.r-shop-for .r-seg button[aria-pressed="true"],.r-shop-for .r-seg button[aria-checked="true"],.r-shop-for .r-seg button.is-on{background:var(--ink);color:#fff}
.r-shop-size select{min-height:42px;border-radius:var(--r-pill);width:auto}
.r-shop-search{position:relative;flex:1;max-width:360px}
.r-shop-search input{border-radius:var(--r-pill);min-height:44px}
.r-shop-search button{position:absolute;inset-inline-end:8px;top:50%;transform:translateY(-50%);border:0;background:none;font-weight:600;cursor:pointer}
.r-shop-results{font-size:var(--t-small);color:var(--muted)}
.r-shop-sec-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}
.r-shop-sec-head h2{font-size:var(--t-h3)}
.r-shop-sec-head p{color:var(--muted);max-width:52ch}
@media (max-width:820px){.r-shop-sec-head{flex-direction:column;align-items:flex-start}}
.r-service-card,.r-ptile{display:flex;flex-direction:column;background:#fff;border-radius:var(--r-card);overflow:hidden;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.r-shop-sec:nth-of-type(odd) .r-service-card{background:var(--band)}
.r-service-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(0,0,0,.08)}
.r-service-media{display:block;aspect-ratio:4/3;background:var(--band);padding:16px 16px 0}
.r-service-media img{width:100%;height:100%;object-fit:contain}
.r-service-copy{padding:18px 24px 0;flex:1}
.r-service-copy h3{font-size:1.375rem!important;margin-bottom:8px}
.r-service-copy h3 a{text-decoration:none}
.r-service-copy p{color:var(--muted);font-size:var(--t-ui)}
.r-service-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:20px 24px 24px;flex-wrap:wrap}
.r-pc-price b{display:block;font-size:1.125rem}
.r-pc-price small{color:var(--muted);font-size:var(--t-cap)}
.r-service-bottom .r-btn{min-height:42px;padding:8px 18px;font-size:var(--t-ui)}
.r-shop-note{margin-top:20px;color:var(--muted)}
.r-shop-note a{color:var(--ink);font-weight:600}
.r-shop-empty{padding:40px 0;color:var(--muted)}
.r-ptiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:16px}
.r-post-work-layout{display:grid;gap:24px}

/* ===== estimator ===== */
.r-est-tabs{padding-block:12px}
.r-est-tabs-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}
.r-est-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.r-est-cards a{display:flex;gap:12px;align-items:flex-start;padding:16px;border-radius:20px;background:var(--band);text-decoration:none;color:var(--ink);border:1.5px solid transparent}
.r-est-cards a[aria-current="page"],.r-est-cards a.is-current{border-color:var(--ink);background:#fff}
.r-est-cards b{display:block;font-size:var(--t-ui)}
.r-est-cards small{display:block;color:var(--muted);font-size:var(--t-cap);margin-top:2px}
.r-est-ic{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:var(--r-input);background:var(--orange-wash);color:var(--orange-ink)}
@media (max-width:900px){.r-est-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.r-est-cards{grid-template-columns:1fr}}
.r-est-top{display:grid;gap:18px}
.r-minimum-note{background:var(--band);border-radius:16px;padding:14px 18px;font-size:var(--t-ui)}
.r-prop-panel{display:grid;gap:14px;padding:0 20px 20px}
.r-prop-line{display:grid;gap:10px}
.r-prop-group{font-size:var(--t-cap);font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.r-sizes{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}
.r-est-prop-note{color:var(--muted);font-size:var(--t-ui)}
.r-est3{display:grid;grid-template-columns:240px 1fr;gap:28px;align-items:start}
.r-est-discovery{grid-column:1/-1}
.r-est-search{display:grid;gap:8px;max-width:560px}
.r-est-search-title{font-weight:700}
.r-est-search-field input{border-radius:var(--r-pill);min-height:52px}
.r-est-side{position:sticky;top:96px}
.r-est-side h2{font-size:var(--t-small)!important;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px}
.r-catlist{display:grid;gap:6px}
.r-catlist button{justify-content:space-between;border-radius:var(--r-input);background:none;border-color:transparent;padding:10px 12px}
.r-catlist button small{color:inherit;opacity:.7}
.r-catlist button:hover{background:var(--band)}
@media (max-width:900px){.r-est3{grid-template-columns:1fr}.r-est-side{position:static}.r-catlist{display:flex;overflow-x:auto}.r-catlist button{flex:none}}
.r-est-work-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.r-est-work-bar h2{font-size:1.75rem!important}
.r-task-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:16px}
.r-task{display:flex;flex-direction:column;background:var(--band);border-radius:22px;padding:20px}
.r-task[hidden]{display:none}
.r-task-head{display:flex;gap:12px;align-items:center;margin-bottom:8px}
.r-task-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:var(--r-input);background:#fff;color:var(--orange-ink);flex:none}
.r-task-head h3{font-size:var(--t-body)!important}
.r-task-body{flex:1;color:var(--muted);font-size:var(--t-ui)}
.r-task-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;margin-top:16px}
.r-task-foot b{display:block}
.r-task-foot small{color:var(--muted);font-size:var(--t-cap)}
.r-basket,.estimate-summary{background:var(--band);border-radius:var(--r-card);padding:24px}
.r-basket-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.r-basket-lines{display:grid;gap:10px}
.r-bl{background:#fff;border-radius:14px;padding:12px 14px;display:grid;gap:6px}
.r-bl-top,.r-bl-bottom{display:flex;justify-content:space-between;gap:10px;align-items:center}
.r-bl-flag,.r-ps-flag{font-size:var(--t-cap);color:var(--orange-ink);font-weight:600}
.r-basket-total,.estimate-total{display:grid;gap:4px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line);font-size:var(--t-ui)}
.r-basket-total .is-grand,.is-grand{font-size:1.375rem;font-weight:700}
.r-basket-bar{position:sticky;bottom:12px;z-index:30;display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--ink);color:#fff;border-radius:var(--r-pill);padding:10px 12px 10px 20px;margin-top:16px}
.r-basket-bar .r-btn{background:var(--orange);color:var(--ink)}
.r-basket-empty{color:var(--muted);padding:12px 0}
.r-qty-wrap{display:inline-flex;align-items:center;gap:6px}
.r-qty-wrap input{width:72px;min-height:40px;text-align:center}
.r-quick-view,dialog.r-qv,.summary-sheet,.r-drawer,dialog.r-pop{border:0;border-radius:var(--r-tile);padding:0;box-shadow:0 30px 80px rgba(0,0,0,.25);max-width:min(94vw,640px);width:100%}
:is(.r-quick-view,.summary-sheet,.r-drawer,.r-pop)::backdrop{background:rgba(0,0,0,.35);backdrop-filter:blur(3px)}
.r-qv-inner{padding:24px;display:grid;gap:14px}
.r-qv-top{display:flex;justify-content:space-between;align-items:start;gap:12px}
.r-qv-options,.r-qv-tasks{display:grid;gap:8px}
.r-qv-opt,.r-qv-line{display:flex;justify-content:space-between;gap:12px;align-items:center;background:var(--band);border-radius:14px;padding:12px 14px}
.r-qv-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line-soft);padding-top:14px}
.r-qv-from,.r-qv-desc,.r-qv-scope{color:var(--muted);font-size:var(--t-ui)}
.r-choice-row{display:flex;flex-wrap:wrap;gap:8px}
.r-check{display:flex;gap:10px;align-items:flex-start;font-weight:400}
.r-toast{position:fixed;bottom:24px;inset-inline-start:50%;transform:translateX(-50%);background:var(--ink);color:#fff;padding:12px 18px;border-radius:var(--r-pill);z-index:90}

/* estimate review */
.review-page{padding-bottom:clamp(64px,5vw,120px)}
.review-progress{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.review-progress>*{padding:8px 14px;border-radius:var(--r-pill);background:var(--band);font-size:var(--t-small);font-weight:600;text-decoration:none;color:var(--muted)}
.review-progress [aria-current]{background:var(--ink);color:#fff}
.review-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,56px);align-items:start}
@media (max-width:900px){.review-layout{grid-template-columns:1fr}}
.review-heading{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-bottom:14px}
.r-review-compact-total{font-size:1.75rem;font-weight:700;letter-spacing:-.02em}
.r-review-details{margin-top:14px}
.review-send pre{white-space:pre-wrap;font:inherit;font-size:var(--t-small);color:var(--muted);background:var(--band);border-radius:var(--r-input);padding:12px;max-height:240px;overflow:auto}

/* ===== building ===== */
.r-building-intro{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,64px);align-items:center}
.r-building-intro figure{margin:0;border-radius:var(--r-card);background:var(--band);overflow:hidden}
@media (max-width:900px){.r-building-intro{grid-template-columns:1fr}}
.building-budget{background:var(--band);border-radius:var(--r-card);padding:clamp(22px,2.5vw,36px)}
.building-budget-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;flex-wrap:wrap}
.building-budget-head h3{font-size:1.75rem!important}
.building-budget-head p{color:var(--muted);max-width:52ch;margin-top:8px}
.building-budget-total{display:grid;gap:2px;text-align:end}
.building-budget-total strong{font-size:2.25rem;letter-spacing:-.03em}
.building-budget-total span,.building-budget-total small{color:var(--muted);font-size:var(--t-small)}
.building-budget-row{display:grid;grid-template-columns:1fr 90px auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line-soft);font-weight:400}
.building-budget-row b{display:block;font-weight:600}
.building-budget-row small{color:var(--muted);font-size:var(--t-cap)}
.building-budget-tax{display:flex;flex-wrap:wrap;gap:16px;justify-content:flex-end;padding-top:14px}
.building-planner{background:var(--band);border-radius:var(--r-card);padding:clamp(22px,2.5vw,36px)}
.building-planner-form{display:grid;gap:24px}
.building-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:14px}
.building-scope-group{margin-top:12px}
.building-scope-group h3{font-size:var(--t-body)!important;margin-bottom:8px}
.building-scope-items{display:grid;gap:8px}
.building-scope-row{display:flex;justify-content:space-between;align-items:center;gap:14px;background:#fff;border-radius:14px;padding:10px 14px}
.building-check{display:flex;align-items:center;gap:12px;font-weight:600;position:relative;cursor:pointer}
.building-check input{position:static;opacity:1;pointer-events:auto}
.building-quantity{display:flex;align-items:center;gap:8px;font-size:var(--t-small);font-weight:400}
.building-quantity input{width:90px;min-height:40px}
.building-brief,.building-price-note{background:#fff;border-radius:16px;padding:16px;margin-top:12px}
.building-brief-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}

/* ===== AMC compare table (old markup) and systems ===== */
.r-compare-wrap{overflow-x:auto;border-radius:20px;border:1px solid var(--line-soft)}
.r-compare{width:100%;border-collapse:collapse;min-width:640px;font-size:var(--t-ui)}
.r-compare th,.r-compare td{padding:14px 16px;border-bottom:1px solid var(--line-soft);text-align:start;vertical-align:top}
.r-compare thead th{background:var(--band);font-size:1rem}
.r-compare thead th small{display:block;color:var(--muted);font-weight:400}
.r-compare .is-featured{background:var(--orange-wash)}
.r-compare .r-grp th{background:#fff;font-size:var(--t-cap);text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.r-compare td .icon{color:var(--orange-ink)}
.r-compare-hint{color:var(--muted);font-size:var(--t-small);margin-bottom:12px}
.r-row-detail summary{cursor:pointer;font-weight:600}
.r-row-detail small{display:block;color:var(--muted);font-weight:400;margin-top:4px}
.amc-system{overflow:hidden}
.amc-system-intro{display:grid;grid-template-columns:120px 1fr;gap:20px;align-items:center;padding:18px;cursor:pointer;list-style:none}
.amc-system-intro::-webkit-details-marker{display:none}
.amc-system-thumbnail{width:120px;height:120px;object-fit:contain;background:var(--band);border-radius:16px}
.amc-system-number{display:block;font-size:var(--t-cap);color:var(--orange-ink);font-weight:700}
.amc-system-title{display:block;font-size:1.375rem;font-weight:700;letter-spacing:-.02em;margin-top:4px}
.amc-system-description{display:block;color:var(--muted);margin-top:4px}
.amc-system-prompt{display:inline-block;margin-top:8px;font-weight:600;border-bottom:1.5px solid var(--orange)}
.amc-system-body{padding:0 20px 20px}
.amc-checklist{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px}
.amc-checklist li{background:var(--band);border-radius:14px;padding:14px}
.amc-checklist b,.amc-checklist strong{display:block}
.amc-system-method,.amc-tech-boundaries,.amc-record{color:var(--ink-2);font-size:var(--t-ui);margin-top:14px}

/* ===== tools & calendar ===== */
.r-tool{display:grid;gap:12px;align-content:start}
.r-tool h2{font-size:1.375rem!important}
.r-tool-form{display:grid;gap:10px}
.r-tool-out{background:#fff;border-radius:16px;padding:16px;min-height:60px}
.r-tool-out .r-big,.r-big{display:block;font-size:1.75rem;font-weight:700;letter-spacing:-.02em}
.r-cal-next{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:14px;margin:20px 0}
.r-cal-next article{background:var(--band);border-radius:20px;padding:18px;display:grid;gap:4px}
.r-cal-next span,.r-cal-next small{color:var(--muted);font-size:var(--t-small)}
.r-cal-next strong{font-size:1.75rem}
.r-cal-months{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:16px;margin-top:20px}
.r-cal-month{background:var(--band);border-radius:22px;padding:20px}
.r-cal-month.is-now{background:#fff;border:2px solid var(--orange)}
.r-cal-month header{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:12px}
.r-cal-month h2{font-size:1.375rem!important}
.r-cal-month header small{color:var(--muted);font-size:var(--t-cap)}
.r-cal-month ul{list-style:none;padding:0;display:grid;gap:12px;font-size:var(--t-ui);color:var(--ink-2)}
.r-cal-month li b{display:block;color:var(--ink)}
.r-cal-month li a{font-weight:600;font-size:var(--t-small)}
.r-cal-tag{display:inline-block;font-size:var(--t-cap);font-weight:700;padding:2px 8px;border-radius:var(--r-pill);background:var(--orange-wash);color:var(--orange-ink);margin-bottom:4px}

/* ===== trades ===== */
.r-rate-table{display:grid;gap:8px}
.r-rate-table>div{display:flex;justify-content:space-between;gap:16px;align-items:center;background:var(--band);border-radius:14px;padding:14px 18px}
.r-rate-table small{display:block;color:var(--muted);font-size:var(--t-cap)}
.r-rate{font-weight:700;white-space:nowrap}
.r-upsell{display:flex;justify-content:space-between;align-items:center;gap:24px;background:var(--dark);color:var(--on-dark);border-radius:var(--r-card);padding:clamp(24px,3vw,44px)}
.r-upsell h2{color:#fff;font-size:var(--t-h3)!important}
.r-upsell p{color:var(--on-dark-muted);margin-top:8px}
@media (max-width:760px){.r-upsell{flex-direction:column;align-items:flex-start}}
.r-related{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px}
.r-scope-note{background:var(--band)}

/* ===== about ===== */
.r-subject figure{margin:0 0 14px;border-radius:16px;overflow:hidden;background:#fff;aspect-ratio:4/3}
.r-subject figure img{width:100%;height:100%;object-fit:contain}
.r-eng-list{list-style:none;padding:0;display:grid;gap:16px;margin-top:20px}
.r-eng-list h3{font-size:var(--t-body)!important}
.r-eng-list p{color:var(--muted);font-size:var(--t-ui)}
.r-iso-code{display:inline-block;font-weight:700;color:var(--orange-ink);margin-bottom:10px}
.r-auth-group ul{list-style:none;padding:0}
.r-auth-group h3{font-size:var(--t-body)!important}
.r-logo-rows{display:grid;gap:24px;overflow:hidden;padding-block:12px}
.r-logo-track{display:flex;gap:48px}
.r-logo-track ul{display:flex;gap:48px;align-items:center;list-style:none;padding:0;margin:0}
.r-logo-track ul[aria-hidden]{display:none}
.r-logo-track img{max-height:44px;width:auto;filter:grayscale(1);opacity:.72}
.r-logo-rows{display:flex;flex-wrap:wrap;justify-content:center;gap:28px 40px}

/* ===== guides hub & article ===== */
.r-guides-start{display:grid;grid-template-columns:1.4fr 1fr;gap:20px;margin-top:12px}
@media (max-width:900px){.r-guides-start{grid-template-columns:1fr}}
.r-guide-feature{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center;background:var(--band);border-radius:var(--r-card);padding:20px;text-decoration:none;color:var(--ink)}
.r-guide-feature figure{margin:0;border-radius:18px;overflow:hidden;background:#fff;aspect-ratio:4/3}
.r-guide-feature img{width:100%;height:100%;object-fit:contain}
.r-guide-feature h2{font-size:1.5rem!important;margin-block:6px}
.r-guide-feature p{color:var(--muted)}
.r-guides-picks{background:var(--band);border-radius:var(--r-card);padding:24px;display:grid;gap:10px;align-content:start}
.r-guides-picks h2{font-size:1.125rem!important;margin-bottom:6px}
.r-guides-picks a{display:block;padding:10px 0;border-top:1px solid var(--line);text-decoration:none;font-weight:600}
.r-guides-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:16px}
.r-guides-search{flex:1;max-width:420px;position:relative}
.r-guides-search input{border-radius:var(--r-pill)}
.r-guides-results{color:var(--muted);font-size:var(--t-small);margin:14px 0}
.r-guides-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:16px}
.r-guide-entry{position:relative;display:flex;flex-direction:column;gap:10px;background:#fff;border-radius:22px;padding:22px}
.r-guide-entry[hidden]{display:none}
.r-guide-entry-meta{display:flex;align-items:center;gap:8px;font-size:var(--t-cap);color:var(--muted);font-weight:600}
.r-guide-entry-meta small{margin-inline-start:auto}
.r-guide-topic-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:var(--orange-wash);color:var(--orange-ink)}
.r-guide-topic-icon .icon{width:16px;height:16px}
.r-guide-entry h2{font-size:1.1875rem!important;letter-spacing:-.015em}
.r-guide-entry h2 a{text-decoration:none}
.r-guide-entry h2 a::after{content:"";position:absolute;inset:0}
.r-guide-entry p{color:var(--muted);font-size:var(--t-ui)}
.r-guide-entry-link{display:none}
.r-article{padding-block:clamp(40px,3rem + 2vw,88px) clamp(64px,5vw,120px)}
.r-article-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(28px,4vw,56px);align-items:center;margin-bottom:clamp(32px,4vw,56px)}
@media (max-width:900px){.r-article-grid{grid-template-columns:1fr}}
.r-article-body{max-width:760px}
.r-article-body>h2{font-size:1.75rem!important;margin:44px 0 12px;scroll-margin-top:110px}
.r-article-body>p,.r-article-body li{font-size:var(--t-body);line-height:1.65;color:var(--ink-2)}
.r-article-body>ul{padding-inline-start:20px;display:grid;gap:8px;margin-top:12px}
.r-guide-answer{background:var(--band);border-radius:var(--r-card);padding:24px 28px;margin:24px 0;border-inline-start:4px solid var(--orange)}
.r-guide-answer h2{font-size:1.125rem!important;margin-bottom:8px}
.r-article-index{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}
.r-article-index a{padding:8px 14px;border-radius:var(--r-pill);background:var(--band);font-size:var(--t-small);font-weight:600;text-decoration:none}
.r-reviewed{color:var(--muted);font-size:var(--t-small);margin-top:10px}
.r-guide-next{display:flex;justify-content:space-between;align-items:center;gap:20px;background:var(--dark);color:var(--on-dark);border-radius:var(--r-card);padding:28px;margin-top:40px}
.r-guide-next h2{color:#fff;font-size:1.5rem!important}
.r-guide-next p{color:var(--on-dark-muted);margin-top:6px}
@media (max-width:700px){.r-guide-next{flex-direction:column;align-items:flex-start}}
.r-guide-related{display:grid;gap:8px;margin-top:32px}
.r-guide-related h2{font-size:1.25rem!important;margin-bottom:6px}
.r-guide-related a{display:block;padding:14px 18px;border-radius:16px;background:var(--band);text-decoration:none;font-weight:600}
.r-editorial-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.r-editorial-links a{padding:10px 16px;border-radius:var(--r-pill);background:var(--band);text-decoration:none;font-weight:600}

/* ===== legal ===== */
.policy-copy{max-width:760px}
.policy-copy h2{font-size:1.5rem!important;margin:32px 0 10px}
.policy-copy p,.policy-copy li{color:var(--ink-2);line-height:1.65}

/* checkout drawer (checkout.js) */
.r-dr-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:20px 24px;border-bottom:1px solid var(--line-soft)}
.r-dr-body{padding:20px 24px;display:grid;gap:16px;max-height:70vh;overflow:auto}
.r-dr-foot{padding:16px 24px 24px;border-top:1px solid var(--line-soft);display:grid;gap:10px}
.r-dr-steps{display:flex;gap:8px;font-size:var(--t-small);color:var(--muted)}
.r-dr-summary,.r-request-summary{background:var(--band);border-radius:16px;padding:14px 16px;display:grid;gap:6px;font-size:var(--t-ui)}
.r-dr-form{display:grid;gap:14px}
.r-dr-lead{color:var(--ink-2)}
.r-dr-links{display:flex;flex-wrap:wrap;gap:10px}
.r-done{display:grid;gap:12px;justify-items:start}
.r-done-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--orange-wash);color:var(--orange-ink)}
.r-ref{font-weight:700}
.r-extra-box,.r-extras{display:grid;gap:8px}
.r-stripe{display:none}
.is-money{font-variant-numeric:tabular-nums}
.is-total{font-weight:700;font-size:1.125rem}
.r-guide-related-card{display:block;padding:18px 20px;border-radius:18px;background:var(--band);text-decoration:none;font-weight:600}
.r-guide-related-card:hover{background:var(--band-2)}
.r-promise-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:20px}
.r-promise-grid article{background:var(--band);border-radius:var(--r-tile);padding:26px}
.r-promise-grid h2{font-size:1.25rem!important;margin-bottom:8px}
.r-promise-grid p{color:var(--muted);font-size:var(--t-ui)}
/* packages hub situations */
.sits{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.sit{display:flex;flex-direction:column;background:var(--band);border-radius:var(--r-card);overflow:hidden;text-decoration:none;color:var(--ink);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.sit:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(0,0,0,.08)}
.sit figure{margin:0;aspect-ratio:4/3;padding:16px 16px 0}
.sit figure img{width:100%;height:100%;object-fit:contain}
.sit-body{display:flex;flex-direction:column;gap:6px;padding:12px 24px 24px;flex:1}
.sit-q{font-size:var(--t-small);font-weight:600;color:var(--orange-ink)}
.sit .small{flex:1}
.sit-foot{display:flex;justify-content:space-between;align-items:center;margin-top:16px}
.sit-foot .go{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--ink);color:#fff}
.sit-foot .go .icon{width:16px;height:16px}
[dir="rtl"] .sit-foot .go .icon{transform:scaleX(-1)}
@media (max-width:1000px){.sits{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.sits{grid-template-columns:1fr}}
.r-amc-note{display:flex;gap:12px;align-items:flex-start;background:var(--orange-wash);border-radius:16px;padding:14px 18px;font-size:var(--t-ui);color:var(--ink-2)}
.r-amc-note .icon{color:var(--orange-ink);flex:none;margin-top:2px}
.r-amc-note b{color:var(--ink)}
.r-amc-note a{color:var(--ink);font-weight:700}
/* r4 QA fixes, 23 Oct: status text is for assistive tech; grid children may shrink on phones */
.omega-language-status{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.r-est3>*,.r-est-top>*,.r-split>*,.r-buy-grid>*,.r-package-layout>*,.r-report-grid>*,.r-hero-grid>*,.r-visit-grid>*,.review-layout>*,.contact-layout>*,.r-faq-wrap>*,.r-building-intro>*{min-width:0}
.r-rate-table>div{flex-wrap:wrap}
@media (max-width:600px){.r-rate{white-space:normal}}
.r-rep-sheet,.r-rep-photo,.r-rep-meter{overflow:hidden}
html,body{overflow-x:clip}
/* focused enquiry mode (r4.js adds body.is-focused) */
body.is-focused .gn-menu,body.is-focused [data-search-open],body.is-focused .gn-cta,body.is-focused .gn-toggle,body.is-focused .wa-float,body.is-focused .r-contact-options,body.is-focused .r-next,body.is-focused .contact-phone,body.is-focused .contact-address,body.is-focused .contact-intro>.small,body.is-focused .ft-top,body.is-focused .gn-mobile-cta{display:none!important}
.gn-back{display:inline-flex;align-items:center;min-height:40px;padding:6px 14px;border-radius:var(--r-pill);background:var(--band);font-weight:600;font-size:var(--t-ui);text-decoration:none;color:var(--ink)}
.gn-back::before{content:"←";margin-inline-end:6px}
[dir="rtl"] .gn-back::before{content:"→"}
.focus-steps{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:14px;max-width:420px}
.focus-steps li{display:flex;gap:12px;align-items:center;font-weight:600;color:var(--ink-2)}
.focus-steps span{display:inline-grid;place-items:center;flex:none;width:30px;height:30px;border-radius:50%;background:var(--ink);color:#fff;font-size:var(--t-small)}
.focus-price{margin:6px 0}
.focus-price b{font-size:1.5rem;letter-spacing:-.02em}
.focus-price span{color:var(--muted);font-size:var(--t-small)}
body.is-focused .contact-section{padding-top:clamp(32px,3vw,64px)}

/* ---------- critique fixes, 23 Oct (docs/renovation-2026-10/CRITIQUE-2026-10-23.md §4) ---------- */
/* #2 Services filters: icon inside the search field, aligned label, one-row chips on phones */
.r-shop-search{display:block}
.r-shop-search>.icon{position:absolute;inset-inline-start:16px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--muted);pointer-events:none}
.r-shop-bar .r-shop-search input[data-shop-search]{padding-inline-start:44px}
.r-shop-for>span{display:inline-flex;align-items:center;gap:8px}
.r-shop-for>span .icon{width:18px;height:18px}
@media (max-width:600px){
  .r-shop-bar{padding-block:12px}
  .r-shop-search{flex-basis:100%;max-width:none}
  .r-services-controls .r-chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1*var(--gutter));padding-inline:var(--gutter)}
  .r-services-controls .r-chips::-webkit-scrollbar{display:none}
  .r-services-controls .r-chips button{flex:none}
}
/* #3 Estimator tools: no double gutter; header stacks; on phones one compact scrolling row */
.r-est-tabs .r-wrap{width:auto;margin-inline:0}
.r-est-tabs-head{flex-wrap:wrap}
@media (max-width:760px){
  .r-est-tabs-head{flex-direction:column;align-items:flex-start;gap:6px}
  .r-est-cards{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);scrollbar-width:none;margin-inline:calc(-1*var(--gutter));padding-inline:var(--gutter);gap:10px}
  .r-est-cards::-webkit-scrollbar{display:none}
  .r-est-cards a{flex:0 0 min(78%,300px);scroll-snap-align:start;padding:14px}
}
/* #4 Package pages: choose-and-request panel directly under the title on phones and tablets */
@media (max-width:980px){.r-package-layout>.r-package-config{order:-1}}
/* #8 Touch screens: every control at least 44px (Apple HIG); desktop keeps the compact sizes */
@media (pointer:coarse){
  .btn-sm,.r-btn-sm,.seg button,.r-seg button,.r-chips button,.r-pill,.r-sizes button,.r-cal-filter button,.r-guides-topics button,.r-catlist button,.r-shop-size select,.select select{min-height:44px}
}
/* #9 Breadcrumbs: hit area above the 24px WCAG minimum */
.r-crumbs a,.g-crumbs a{display:inline-flex;align-items:center;min-height:32px}
/* #7 Legacy buttons share the r4 button metrics */
.r-btn,.btn.primary,.btn.outline{font-size:var(--t-body);padding-inline:24px}
.r-btn.text,.btn.text{padding-inline:0}
.r-btn.r-btn-sm{padding-inline:16px;font-size:var(--t-small)}
/* C-6 estimator: minimum note beside the total, AMC note after the estimator */
.r-basket .r-minimum-note{background:var(--canvas);margin-top:12px;font-size:var(--t-small)}
.r-section.r-est-amc{padding-block:0 clamp(32px,3vw,56px)}

/* ---------- Building AMC builder (owner comment, 23 Oct): choices left, a sticky estimate "cart" right ---------- */
.bb-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:clamp(24px,3vw,48px);align-items:start}
.bb-head h2{font-size:var(--t-h3);font-weight:700;letter-spacing:-.025em;line-height:1.12;margin-top:6px}
.bb-head .r-sub{margin-top:10px;max-width:56ch}
.bb-step{border:0;margin:0;padding:28px 0 6px;border-top:1px solid var(--line-soft);min-width:0}
.bb-head+.bb-step{border-top:0;padding-top:24px}
.bb-step legend{float:left;width:100%;display:flex;align-items:center;gap:12px;padding:0;margin-bottom:12px;font-size:1.375rem;font-weight:700;letter-spacing:-.02em}
.bb-step legend+*{clear:both}
.bb-n{display:inline-grid;place-items:center;flex:none;width:32px;height:32px;border-radius:50%;background:var(--ink);color:#fff;font-size:var(--t-ui)}
.bb-hint{color:var(--muted);font-size:var(--t-small);margin-bottom:12px}
.bb-chips{display:flex;flex-wrap:wrap;gap:8px}
.bb-chips label,.bb-levels label{position:relative}
.bb-chips input,.bb-levels input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.bb-chips span{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:1.5px solid var(--line);border-radius:var(--r-pill);background:#fff;font-weight:600;font-size:var(--t-ui);cursor:pointer}
.bb-chips input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff}
.bb-chips input:focus-visible+span,.bb-levels input:focus-visible+span{outline:3px solid var(--focus);outline-offset:2px}
.bb-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;max-width:520px}
.bb-fields label{display:grid;gap:6px;font-weight:600;font-size:var(--t-small)}
.bb-group{margin-top:14px;padding:4px 18px;border:1px solid var(--line-soft);border-radius:var(--r-tile);background:#fff}
.bb-group h3{padding:12px 0 4px;font-size:var(--t-cap);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
[dir="rtl"] .bb-group h3{letter-spacing:0;text-transform:none}
.bb-row{display:grid;grid-template-columns:minmax(0,1fr) auto 112px;gap:10px 18px;align-items:center;padding:12px 0;border-top:1px solid var(--line-soft)}
.bb-group h3+.bb-row{border-top:0}
.bb-label{min-width:0}
.bb-label b{display:block;font-weight:600}
.bb-label small{display:block;color:var(--muted);font-size:var(--t-small)}
.bb-line{font-weight:700;font-size:var(--t-ui);text-align:end;font-variant-numeric:tabular-nums;white-space:nowrap}
.bb-line.is-off{color:var(--muted);font-weight:500}
.bb-stepper{display:inline-flex;align-items:center;border:1.5px solid var(--line-strong);border-radius:var(--r-pill);background:#fff}
.bb-stepper button{width:40px;height:40px;border:0;border-radius:50%;background:none;color:var(--ink);font-size:1.25rem;font-weight:600;line-height:1;cursor:pointer}
.bb-stepper button:hover{background:var(--band)}
.bb-stepper output{min-width:30px;text-align:center;font-weight:700;font-variant-numeric:tabular-nums}
.bb-stepper-sm button{width:34px;height:34px}
.bb-levels{display:inline-flex;flex-wrap:wrap;gap:2px;padding:3px;border-radius:var(--r-pill);background:var(--band)}
.bb-levels span{display:inline-flex;align-items:center;min-height:36px;padding:6px 12px;border-radius:var(--r-pill);color:var(--ink-2);font-weight:600;font-size:var(--t-small);white-space:nowrap;cursor:pointer}
.bb-levels input:checked+span{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.14)}
.bb-sys-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.bb-sys{display:flex;flex-direction:column;gap:12px;padding:14px 16px;border:1.5px solid var(--line-soft);border-radius:var(--r-tile);background:#fff;transition:border-color .2s var(--ease),box-shadow .2s var(--ease)}
.bb-sys.is-on{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}
.bb-sys-main{position:relative;display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;align-items:start;cursor:pointer}
.bb-sys-main input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.bb-tick{display:grid;place-items:center;width:22px;height:22px;margin-top:1px;border:1.5px solid var(--line-strong);border-radius:7px}
.bb-sys-main input:checked+.bb-tick{background:var(--ink);border-color:var(--ink)}
.bb-sys-main input:checked+.bb-tick::after{content:"";width:10px;height:6px;border:2px solid #fff;border-top:0;border-inline-end:0;transform:rotate(-45deg) translate(1px,-1px)}
.bb-sys-main input:focus-visible+.bb-tick{outline:3px solid var(--focus);outline-offset:2px}
.bb-sys-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-inline-start:34px}
.bb-sys:not(.is-on) .bb-sys-count{visibility:hidden}
.bb-sys-count{display:inline-flex;align-items:center;gap:8px}
.bb-sys-count small{color:var(--muted);font-size:var(--t-cap)}
.bb-assess{margin-top:18px}
.bb-assess p{margin-bottom:8px;font-weight:600;font-size:var(--t-small)}
.bb-assess .bb-chips span{min-height:40px;font-size:var(--t-small)}
.bb-auto{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:6px}
.bb-auto li{display:grid;grid-template-columns:minmax(0,1fr) auto 112px;gap:12px;color:var(--ink-2);font-size:var(--t-small)}
.bb-auto [data-bb-auto]{color:var(--muted)}
.bb-notes{margin:16px 0 0}
.bb-notes summary{cursor:pointer;font-weight:600}
.bb-notes textarea{margin-top:10px}
.bb-cart{position:sticky;top:96px}
.bb-cart-in{padding:26px 24px;border-radius:var(--r-card);background:var(--ink);color:var(--on-dark)}
.bb-cart .eyebrow{color:#ff8a3d}
.bb-cart h3{font-size:1.375rem;font-weight:700;color:#fff}
.bb-total{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin-top:16px}
.bb-total strong{font-size:clamp(2rem,1.6rem + 1vw,2.5rem);font-weight:700;letter-spacing:-.03em;color:#fff;font-variant-numeric:tabular-nums}
.bb-total span{color:var(--on-dark-muted);font-size:var(--t-small)}
.bb-year{margin-top:2px;color:var(--on-dark-muted);font-size:var(--t-small)}
.bb-sums{list-style:none;display:grid;gap:8px;margin:18px 0 0;padding:14px 0 0;border-top:1px solid rgba(255,255,255,.14)}
.bb-sums li{display:flex;justify-content:space-between;gap:12px;color:var(--on-dark-muted);font-size:var(--t-small)}
.bb-sums li span:last-child{color:var(--on-dark);font-variant-numeric:tabular-nums;white-space:nowrap}
.bb-note{margin-top:14px;color:var(--on-dark-muted);font-size:var(--t-cap)}
.bb-cart-actions{display:grid;gap:10px;margin-top:18px}
.bb-cart-actions .btn{width:100%}
.bb-cart .btn-secondary{color:var(--on-dark);border-color:rgba(245,245,247,.6)}
.bb-cart .btn-secondary:hover{background:var(--on-dark);color:var(--ink)}
.bb-cart-foot{display:flex;justify-content:space-between;gap:12px;margin-top:14px}
.bb-cart .r-link-btn{color:var(--on-dark);font-size:var(--t-small)}
.bb-status{margin-top:8px;color:var(--on-dark-muted);font-size:var(--t-small)}
.bb-status:empty{display:none}
.bb-details{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.14)}
.bb-details summary{cursor:pointer;font-weight:600;font-size:var(--t-small)}
.bb-details dl{display:grid;gap:6px;margin:12px 0}
.bb-details dl div{display:flex;justify-content:space-between;gap:10px;color:var(--on-dark-muted);font-size:var(--t-cap)}
.bb-details dd{margin:0;color:var(--on-dark);white-space:nowrap}
.bb-details .r-fine{display:grid;gap:4px;padding-inline-start:18px;color:var(--on-dark-muted)}
.bb-details textarea{width:100%;margin-top:10px;background:#1d1d1f;color:var(--on-dark);border-color:rgba(255,255,255,.2);font-size:var(--t-cap)}
.bb-bar{display:none}
@media (max-width:1060px){
  .bb-grid{grid-template-columns:minmax(0,1fr)}
  .bb-cart{position:static}
  .bb-bar{position:fixed;inset-inline:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:44;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:0 20px;border-radius:var(--r-pill);background:var(--ink);color:#fff;text-decoration:none;font-size:var(--t-ui);box-shadow:0 12px 30px rgba(0,0,0,.25);transform:translateY(150%);transition:transform .25s var(--ease)}
  .bb-bar.is-shown{transform:none}
  .bb-bar span:last-child{font-weight:700;color:#ffb066}
  body:has(.bb-bar.is-shown) .wa-float{opacity:0;pointer-events:none}
}
@media (max-width:600px){
  .bb-row,.bb-auto li{grid-template-columns:minmax(0,1fr) auto}
  .bb-row .bb-label{grid-column:1/-1}
  .bb-auto [data-bb-auto]{display:none}
  .bb-levels{display:flex;width:100%}
  .bb-levels label{flex:1}
  .bb-levels span{justify-content:center;padding-inline:6px;width:100%}
  .bb-group{padding-inline:14px}
}
/* "How building care is organised": six short cards, 3 × 2 */
.amc-building-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.amc-tech-ic{display:grid;place-items:center;width:44px;height:44px;margin-bottom:16px;border-radius:12px;background:var(--orange-wash);color:var(--orange-ink)}
.amc-tech-card h3{margin-bottom:6px;font-size:1.1875rem;font-weight:700}
.amc-tech-card p{color:var(--muted);font-size:var(--t-ui)}
@media (max-width:900px){.amc-building-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.amc-building-grid{grid-template-columns:minmax(0,1fr)}}
.bb-more{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;margin-top:20px}
.bb-more .r-fine{margin:0}
.amc-technical .r-fine{margin-top:16px}

/* ---------- Estimator (owner + audit, 23 Oct) ---------- */
/* Three columns: categories · work · sticky basket. The basket no longer drops under the sticky category list (overlap bug). */
.r-est3{grid-template-columns:210px minmax(0,1fr) 330px}
.r-est3>.r-est-side{grid-column:1;grid-row:2}
.r-est3>.r-est-work{grid-column:2;grid-row:2}
.r-est3>.r-basket{grid-column:3;grid-row:2;position:sticky;top:96px}
@media (max-width:1240px){
  .r-est3{grid-template-columns:200px minmax(0,1fr)}
  .r-est3>.r-basket{grid-column:1/-1;grid-row:3;position:static}
}
@media (max-width:900px){
  .r-est3{grid-template-columns:minmax(0,1fr)}
  .r-est3>.r-est-side,.r-est3>.r-est-work,.r-est3>.r-basket{grid-column:1;grid-row:auto}
}
/* Search icon inside the field (estimator and guides) */
.r-est-search-field{position:relative;display:block}
.r-est-search-field>.icon,.r-guides-search>.icon{position:absolute;inset-inline-start:18px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--muted);pointer-events:none;z-index:1}
.r-est .r-est-search-field input[data-est-search],.r-guides-search input[type="search"]{padding-inline-start:50px}
/* Property chips: the tick shows only on the chosen chip */
.r-pill .r-pill-check{display:none}
.r-pill:is([aria-checked="true"],[aria-pressed="true"]) .r-pill-check{display:inline-block}
/* Task cards: price and button never squeeze each other */
.r-task-foot{flex-wrap:wrap;align-items:center}
.r-task-foot p{min-width:0}
.r-task-foot b{white-space:nowrap}
/* Basket: a tidy header, a quiet "clear", short fine print */
.r-basket-top{gap:12px;align-items:baseline}
.r-basket-top h2{font-size:1.375rem!important}
.r-count{flex:none;padding:4px 10px;border-radius:var(--r-pill);background:#fff;font-size:var(--t-small);font-weight:600;color:var(--ink-2)}
.r-basket-prop{display:flex;align-items:center;gap:8px;color:var(--ink-2);font-size:var(--t-small);font-weight:600}
.r-basket-prop .icon{width:18px;height:18px;flex:none}
.r-basket-actions{display:grid;gap:10px;margin-top:16px}
.r-basket-actions [data-basket-clear]{justify-self:center;color:var(--muted);font-size:var(--t-small);border-bottom-color:transparent}
.r-basket .r-fine{font-size:var(--t-cap);margin-top:12px}
.r-basket .r-minimum-note{font-size:var(--t-small)}
/* Specialist services: grouped cards instead of a raw underlined list */
.r-spec-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.r-spec-group{padding:22px 24px;border-radius:var(--r-card);background:var(--band)}
.r-spec-group h3{display:flex;align-items:center;gap:10px;margin-bottom:6px;font-size:1.1875rem;font-weight:700}
.r-spec-group h3 .icon{width:22px;height:22px;color:var(--orange-ink);flex:none}
.r-spec-group ul{list-style:none;margin:0;padding:0}
.r-spec-group li+li{border-top:1px solid var(--line)}
.r-spec-group a{display:grid;grid-template-columns:minmax(0,1fr) 18px;gap:2px 12px;padding:12px 0;color:var(--ink);text-decoration:none}
.r-spec-group a b{font-weight:600}
.r-spec-group a span{grid-column:1;color:var(--muted);font-size:var(--t-small)}
.r-spec-group a .icon{grid-column:2;grid-row:1/3;align-self:center;width:18px;height:18px;color:var(--muted)}
.r-spec-group a:hover b{color:var(--orange-ink)}
[dir="rtl"] .r-spec-group a .icon{transform:scaleX(-1)}
@media (max-width:800px){.r-spec-groups{grid-template-columns:minmax(0,1fr)}}
/* Tool strip on tools / calendar pages: stays inside the page gutter (the r-wrap reset applies only inside the estimator intro) */
.r-est-tabs .r-wrap{width:min(100% - 2*var(--gutter),var(--content));margin-inline:auto}
.r-est-top .r-est-tabs .r-wrap{width:auto;margin-inline:0}
.r-est-tabs-head .r-pc-more{display:none}
/* Request dialog: two fields, the rest folded away */
.r-dr-more{padding:0 16px;border:1px solid var(--line-soft);border-radius:var(--r-input)}
.r-dr-more summary,.r-request-summary details summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;list-style:none;font-weight:600;cursor:pointer}
.r-dr-more summary::-webkit-details-marker,.r-request-summary details summary::-webkit-details-marker{display:none}
.r-dr-more summary::after,.r-request-summary details summary::after{content:"+";font-size:1.25rem;font-weight:400;color:var(--muted)}
.r-dr-more[open] summary::after,.r-request-summary details[open] summary::after{content:"−"}
.r-dr-more-in{display:grid;gap:14px;padding:4px 0 16px}

/* ---------- Inner pages: components that lost their styling with the old stylesheet stack (audit 23 Oct) ---------- */
/* Services: AMC leads (full-width feature card), trade tiles as tidy cards */
.r-service-grid>.r-service-card[data-product="amc"]{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center}
.r-service-card[data-product="amc"] .r-service-media{order:2}
@media (max-width:760px){.r-service-grid>.r-service-card[data-product="amc"]{grid-template-columns:minmax(0,1fr)}.r-service-card[data-product="amc"] .r-service-media{order:0}}
.r-ptile{background:#fff}
.r-pt-btn{display:flex;align-items:center;gap:14px;padding:12px;min-height:76px;color:var(--ink);text-decoration:none;border-radius:inherit}
.r-pt-btn:hover b{color:var(--orange-ink)}
.r-pt-img{display:grid;place-items:center;flex:none;width:72px;height:56px;border-radius:12px;background:var(--band);overflow:hidden}
.r-pt-img img{width:100%;height:100%;object-fit:contain}
.r-pt-text{display:grid;gap:2px;min-width:0}
.r-pt-text b{font-weight:600;font-size:var(--t-ui);line-height:1.3}
.r-pt-text small{color:var(--muted);font-size:var(--t-cap)}
/* Trade detail pages (19): related services as cards, not raw full-width images */
.r-svc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.r-svc-card{display:flex;flex-direction:column;border-radius:var(--r-card);background:var(--band);overflow:hidden;color:var(--ink);text-decoration:none;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.r-svc-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(0,0,0,.08)}
.r-svc-card figure{aspect-ratio:16/10;margin:0;padding:16px 16px 0;background:linear-gradient(180deg,#fff,var(--band))}
.r-svc-card img{width:100%;height:100%;object-fit:contain}
.r-svc-card>div{display:flex;flex-direction:column;gap:6px;padding:16px 22px 22px;flex:1}
.r-svc-card h3{font-size:1.1875rem;font-weight:700;line-height:1.25}
.r-svc-card p:not(.r-card-tag){color:var(--muted);font-size:var(--t-small)}
.r-svc-card .r-card-tag{margin:0}
.r-svc-card .r-more{margin-top:auto;padding-top:8px;align-self:flex-start}
@media (max-width:900px){.r-svc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.r-svc-grid{grid-template-columns:minmax(0,1fr)}.r-svc-card{flex-direction:row}.r-svc-card figure{flex:0 0 110px;aspect-ratio:auto;padding:12px 0 12px 12px;background:none}.r-svc-card>div{padding:14px 16px}}
/* Steps: aligned to the top, a gap before the prepare / not-included boxes */
.r-visual-steps{align-items:stretch}
.r-visual-steps>li{align-content:start;align-self:stretch}
.r-visual-steps+*{margin-top:24px}
.r-trust li{display:inline-flex;align-items:center;gap:6px}
.r-trust li .icon{width:16px;height:16px;flex:none}
.r-trust li::before{display:none}
/* Property reports: three equal options */
.r-seg-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.r-seg-3>*{justify-content:center;text-align:center}
@media (max-width:480px){.r-seg-3{grid-template-columns:minmax(0,1fr)}}
/* Icon + label pairs never touch */
.r-section :is(h2,h3,h4)>.icon:first-child,.r-purpose span>.icon,.r-chip span>.icon,.r-choice span>.icon{margin-inline-end:8px;vertical-align:-3px;flex:none}
/* About: "Engineering, design and delivery" as a 3 × 2 grid (owner comment) */
.r-eng .r-report-grid{grid-template-columns:minmax(0,1fr)}
.r-eng .r-report-photo{display:none}
.r-eng-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0 0;padding:0;list-style:none}
.r-eng-list li{display:flex;flex-direction:column;gap:12px;padding:22px;border-radius:var(--r-tile);background:var(--band)}
.r-eng-list li>.icon{width:44px;height:44px;padding:11px;border-radius:12px;background:#fff;color:var(--orange-ink)}
.r-eng-list h3{font-size:1.125rem!important;font-weight:700;margin-bottom:4px}
.r-eng-list p{color:var(--muted);font-size:var(--t-ui)}
@media (max-width:900px){.r-eng-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.r-eng-list{grid-template-columns:minmax(0,1fr)}}
/* Promise page terms: a footnote card, not a squeezed two-column bar */
.r-promise-grid+.r-note{display:block;margin-top:20px;padding:20px 24px;border-radius:var(--r-tile);background:var(--band)}
.r-promise-grid+.r-note h2{font-size:1.125rem!important;margin-bottom:6px}
.r-promise-grid+.r-note p{color:var(--muted);font-size:var(--t-small)}
/* Guides hub: decision list with aligned icons and arrows */
.r-guides-picks a{display:grid;grid-template-columns:20px minmax(0,1fr) 16px;gap:12px;align-items:center;padding:12px 0}
.r-guides-picks a>.icon{width:18px;height:18px;color:var(--orange-ink)}
.r-guides-picks a>.icon:last-child{color:var(--muted)}
[dir="rtl"] .r-guides-picks a>.icon:last-child{transform:scaleX(-1)}
@media (max-width:600px){.r-guides-toolbar{flex-direction:column;align-items:stretch}.r-guides-search{max-width:none}.r-guides-topics{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1*var(--gutter));padding-inline:var(--gutter)}.r-guides-topics button{flex:none}}
/* Guide hero: generated images are labelled as illustrations (provenance rule) */
.g-media{position:relative}
.g-cap{position:absolute;inset-inline-start:12px;bottom:12px;padding:3px 10px;border-radius:var(--r-pill);background:rgba(255,255,255,.88);color:var(--ink-2);font-size:var(--t-cap);font-weight:600}
/* Care calendar: source links small and quiet */
.r-cal-src{font-size:var(--t-cap);color:var(--muted)}
/* Package grid: a lone last card spans the row */
.sits>.sit:last-child:nth-child(3n+1){grid-column:1/-1}
/* Services fixes after visual check: AMC picture on the right spanning text and price; wider trade tiles without a repeated meta line */
.r-service-grid>.r-service-card[data-product="amc"]{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;column-gap:clamp(20px,3vw,48px)}
.r-service-card[data-product="amc"] .r-service-media{grid-column:2;grid-row:1/3;order:0}
.r-service-card[data-product="amc"] .r-service-copy{grid-column:1;grid-row:1;align-self:end}
.r-service-card[data-product="amc"] .r-service-bottom{grid-column:1;grid-row:2;align-self:start}
@media (max-width:760px){.r-service-grid>.r-service-card[data-product="amc"]{grid-template-columns:minmax(0,1fr)}.r-service-card[data-product="amc"] :is(.r-service-media,.r-service-copy,.r-service-bottom){grid-column:1;grid-row:auto}}
.r-ptiles{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}
.r-pt-text small{display:none}
.r-shop-tailored{margin-top:28px;padding:20px 24px;border-radius:var(--r-tile);background:#fff;display:grid;gap:8px;justify-items:start}
.r-section.r-est-amc .r-amc-note{padding:20px 24px;font-size:var(--t-ui)}
.r-card-tag>.icon{margin-inline-end:6px;vertical-align:-3px}
/* Calculators (audit 23 Oct): value and label stack, two cards per row, buttons on one baseline, AMC is the only orange action */
.r-tools-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:760px){.r-tools-grid{grid-template-columns:minmax(0,1fr)}}
.r-tool{display:flex;flex-direction:column}
.r-tool>:last-child{margin-top:auto}
.r-tool .r-sub{font-size:var(--t-ui)}
.r-tool-out .r-big small,.r-big small{display:block;margin-top:4px;font-size:var(--t-small);font-weight:500;letter-spacing:0;color:var(--muted)}
.r-tool-out p{margin-top:8px;font-size:var(--t-small);color:var(--ink-2)}
.r-tool:not([data-tool="amc"]) .r-btn.solid{background:transparent;border-color:var(--ink);color:var(--ink)}
.r-tool:not([data-tool="amc"]) .r-btn.solid:hover{background:var(--ink);color:#fff}
/* Calendar countdown: the number is the hero, "days" is the label */
.r-cal-next strong{font-size:var(--t-ui);font-weight:600;color:var(--muted)}
.r-cal-next strong [data-days]{font-size:2rem;font-weight:700;letter-spacing:-.02em;color:var(--ink);margin-inline-end:6px}
/* Builder on phones (visual check): compact steppers, levels on their own row, tighter system cards */
.bb-row .bb-stepper{justify-self:start}
@media (max-width:600px){
  .bb-row-level{grid-template-columns:minmax(0,1fr) auto}
  .bb-row-level .bb-levels{grid-column:1/-1}
  .bb-row-level .bb-line{grid-column:2;grid-row:1}
  .bb-row-level .bb-label{grid-column:1;grid-row:1}
  .bb-levels{flex-wrap:nowrap}
  .bb-levels span{min-height:40px;padding-inline:4px;font-size:var(--t-cap)}
  .bb-sys-grid{gap:8px}
  .bb-sys{padding:12px 14px;gap:8px}
  .bb-sys-foot{padding-inline-start:34px}
}
.bb-sys-main input:checked+.bb-tick::after{border:2px solid #fff;border-top:0;border-right:0} /* a tick is a physical shape: same in RTL */

/* ---------- Services (owner, 23 Oct): groups left, a sticky selection panel right ---------- */
.svc-shop{background:var(--band)}
.svc-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(24px,3vw,40px);align-items:start}
.svc-main{display:grid;gap:clamp(48px,5vw,80px);min-width:0}
.svc-main .r-shop-sec{background:none;padding:0}
.svc-main .r-service-card{background:#fff}
.svc-cart{position:sticky;top:96px}
.svc-cart-in{padding:24px;border-radius:var(--r-card);background:#fff;box-shadow:0 12px 40px rgba(0,0,0,.06)}
.svc-cart h2{margin-top:4px;font-size:1.375rem!important}
.svc-cart-prop{display:flex;align-items:center;gap:8px;margin-top:10px;color:var(--ink-2);font-size:var(--t-small);font-weight:600}
.svc-cart-prop .icon{width:18px;height:18px;flex:none}
.svc-cart-empty{margin-top:16px;padding:16px;border:1px dashed var(--line);border-radius:var(--r-input);color:var(--muted);font-size:var(--t-small)}
.svc-cart-lines{display:grid;margin:14px 0 0;padding:0;list-style:none}
.svc-cart-lines li{display:grid;grid-template-columns:minmax(0,1fr) 32px;gap:2px 8px;padding:10px 0;border-top:1px solid var(--line-soft)}
.svc-cart-lines b{font-weight:600;font-size:var(--t-ui);line-height:1.3}
.svc-cart-lines span{grid-column:1;color:var(--muted);font-size:var(--t-small)}
.svc-rm{grid-column:2;grid-row:1/3;align-self:center;width:32px;height:32px;border:0;border-radius:50%;background:var(--band);color:var(--ink);font-size:1.125rem;line-height:1;cursor:pointer}
.svc-rm:hover{background:var(--band-2)}
.svc-cart-actions{display:grid;gap:10px;margin-top:18px}
.svc-cart-actions .btn{width:100%}
.svc-cart-actions .btn[disabled]{opacity:.45;cursor:not-allowed}
.svc-cart-note{margin-top:12px;color:var(--muted);font-size:var(--t-cap)}
/* Card actions: Details + Add */
.svc-acts{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.svc-add{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 14px;border:1.5px solid var(--ink);border-radius:var(--r-pill);background:#fff;color:var(--ink);font-weight:600;font-size:var(--t-small);cursor:pointer;transition:background-color .2s var(--ease),color .2s var(--ease)}
.svc-add .icon{width:16px;height:16px;transition:transform .2s var(--ease)}
.svc-add:hover{background:var(--band)}
.svc-add[aria-pressed="true"]{background:var(--ink);color:#fff}
.svc-add[aria-pressed="true"] .icon{transform:rotate(45deg)}
.svc-add-icon{flex:none;width:36px;min-height:36px;padding:0;justify-content:center;margin-inline-end:12px}
.r-ptile{display:flex;align-items:center}
.r-ptile .r-pt-btn{flex:1;min-width:0}
/* Core: AMC across, then two equal cards (owner: 50/50) */
.svc-main [data-shop-sec="core"] .r-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:700px){.svc-main [data-shop-sec="core"] .r-service-grid{grid-template-columns:minmax(0,1fr)}}
/* Packages as clean rows: picture · name and one line · price · actions */
.svc-rows{grid-template-columns:minmax(0,1fr)!important;gap:10px}
.svc-rows .r-service-card{display:grid;grid-template-columns:104px minmax(0,1fr) auto;align-items:center;gap:6px 20px;padding:10px 20px 10px 10px;border-radius:var(--r-tile)}
.svc-rows .r-service-media{width:104px;height:78px;aspect-ratio:auto;padding:6px;border-radius:14px;background:var(--band)}
.svc-rows .r-service-copy{padding:0}
.svc-rows .r-service-copy h3{margin-bottom:2px;font-size:1.125rem!important}
.svc-rows .r-service-copy p{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;font-size:var(--t-small)}
.svc-rows .r-service-label{margin-bottom:2px;font-size:var(--t-cap)}
.svc-rows .r-service-bottom{padding:0;flex-wrap:nowrap;gap:20px}
.svc-rows .r-pc-price{text-align:end;white-space:nowrap}
@media (max-width:760px){
  .svc-rows .r-service-card{grid-template-columns:76px minmax(0,1fr);padding:10px}
  .svc-rows .r-service-media{width:76px;height:60px}
  .svc-rows .r-service-bottom{grid-column:1/-1;justify-content:space-between;flex-wrap:wrap}
  .svc-rows .r-pc-price{text-align:start}
}
@media (max-width:1100px){.svc-layout{grid-template-columns:minmax(0,1fr)}.svc-cart{position:static}}
.svc-bar{display:none}
@media (max-width:1100px){
  .svc-bar{position:fixed;inset-inline:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:44;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:0 20px;border-radius:var(--r-pill);background:var(--ink);color:#fff;text-decoration:none;font-size:var(--t-ui);box-shadow:0 12px 30px rgba(0,0,0,.25);transform:translateY(150%);transition:transform .25s var(--ease)}
  .svc-bar.is-shown{transform:none}
  .svc-bar span:last-child{font-weight:700;color:#ffb066}
  body:has(.svc-bar.is-shown) .wa-float{opacity:0;pointer-events:none}
}
/* "Cleaning after agreed work": a centred note with even spacing (owner) */
.r-section.r-post-work{padding-block:clamp(56px,5vw,88px)}
.r-post-work-layout{max-width:760px;margin-inline:auto;text-align:center;gap:14px}
.r-post-work-layout p{color:var(--ink-2)}
/* ---------- About (owner: "needs premium design", 23 Oct) ---------- */
/* Hero facts read as figures, not footnotes */
.r-page-hero .r-mini-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:28px;padding-top:20px;border-top:1px solid var(--line-soft)}
.r-page-hero .r-mini-stats>div{padding-inline-end:16px}
.r-page-hero .r-mini-stats>div+div{padding-inline-start:16px;border-inline-start:1px solid var(--line-soft)}
.r-page-hero .r-mini-stats dt{font-size:var(--t-cap);color:var(--muted)}
.r-page-hero .r-mini-stats dd{margin:2px 0 0;font-size:clamp(1.125rem,1rem + .5vw,1.5rem);font-weight:700;letter-spacing:-.02em;color:var(--ink)}
/* The engineering-led statement as an editorial block */
.r-page-hero+.r-section .r-split{align-items:start}
.r-page-hero+.r-section .r-head h2{font-size:var(--t-h2)!important;letter-spacing:-.035em}
.r-page-hero+.r-section .r-body{font-size:var(--t-lead);line-height:1.5;color:var(--ink-2)}
.r-page-hero+.r-section .r-body+.r-body{margin-top:16px}
/* Approvals and management systems: readable lists */
.r-authorities .r-auth-group li,.r-authorities li{font-size:var(--t-ui);line-height:1.5}
.r-iso p{font-size:var(--t-ui)}
/* Client experience: a contained, even grid of logo tiles (the old marquee styling was lost and spilled off the page) */
.r-client-wall .r-logo-rows{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;width:min(100% - 2*var(--gutter),var(--content));margin:28px auto 0;padding:0;overflow:visible}
.r-client-wall .r-logo-track,.r-client-wall .r-logo-track ul{display:contents}
.r-client-wall .r-logo-track ul[aria-hidden]{display:none}
.r-client-wall .r-logo-track li{display:grid;place-items:center;height:96px;padding:18px 22px;border-radius:var(--r-tile);background:#fff}
.r-client-wall .r-logo-track img{max-width:100%;max-height:40px;width:auto;height:auto;object-fit:contain;filter:grayscale(1) contrast(1.15);opacity:.82;mix-blend-mode:multiply;transition:opacity .2s var(--ease),filter .2s var(--ease)}
.r-client-wall .r-logo-track li:hover img{filter:none;opacity:1}
@media (max-width:900px){.r-client-wall .r-logo-rows{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:480px){.r-client-wall .r-logo-rows{grid-template-columns:repeat(2,minmax(0,1fr))}.r-client-wall .r-logo-track li{height:80px;padding:14px}}
/* Prequalification band: the button never wraps into three lines */
.r-upsell .r-btn{flex:none;white-space:nowrap}
@media (max-width:700px){.r-upsell .r-btn{white-space:normal;width:100%}}
.svc-main .r-shop-sec .r-service-card{background:#fff}
.svc-main .r-shop-sec-head{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:20px}
.svc-main .r-shop-sec-head p{max-width:60ch}
.r-client-wall .r-logo-track img{filter:grayscale(1) brightness(.38) contrast(1.25);opacity:.88}
.r-full-contact :is(label,a,span,p)>.icon:first-child{margin-inline-end:8px;vertical-align:-3px;flex:none}

/* ---------- Exhaustive audit, round 3 (23 Oct) ---------- */
/* Sections never collapse onto the band above them (root cause of several "no top spacing" findings) */
.r-section+.r-section{padding-top:clamp(36px,3vw,60px)}
/* Services: one card surface; quieter WhatsApp; a disabled primary that looks disabled; trades as tidy two-column rows */
.svc-main .r-service-media{background:transparent}
.svc-cart .btn-wa{background:#fff;color:var(--ink);border:1.5px solid var(--line-strong)}
.svc-cart .btn-wa:hover{background:var(--band)}
.svc-cart .btn-wa .icon{color:var(--wa)}
.svc-cart [data-svc-request][disabled]{background:var(--band-2);color:var(--muted);opacity:1}
.r-ptile{flex-direction:row}
.svc-main .r-ptiles{grid-template-columns:repeat(2,minmax(0,1fr))}
.svc-main .r-pt-text small{display:block}
@media (max-width:700px){.svc-main .r-ptiles{grid-template-columns:minmax(0,1fr)}}
.svc-rows .r-service-copy p{-webkit-line-clamp:2}
@media (max-width:760px){.svc-rows .r-service-bottom{flex-wrap:nowrap;gap:12px}.svc-rows .svc-acts{flex-wrap:nowrap;gap:8px}}
/* Phone bars stay hidden until there is something to show */
.svc-bar:not(.is-shown),.bb-bar:not(.is-shown){visibility:hidden}
/* Building builder: light selected state, units on every figure, a tidy "scales with your team" block */
.bb-sys{border-color:var(--line-soft)}
.bb-sys.is-on{border-color:rgba(255,107,0,.55);box-shadow:none;background:#fffaf5}
.bb-sys-main input:checked+.bb-tick{background:var(--orange);border-color:var(--orange)}
.bb-line small{font-weight:500;font-size:var(--t-cap);color:var(--muted)}
div.bb-auto{display:block;margin-top:14px;padding:14px 16px;border:1px solid var(--line-soft);border-radius:var(--r-tile);background:#fff}
.bb-auto>p{margin-bottom:6px;font-weight:600;font-size:var(--t-small)}
.bb-auto ul{display:grid;gap:6px;margin:0;padding:0;list-style:none}
/* Closing bands: breathing room under the headline */
.r-context-close h2{margin-bottom:12px}
/* Trade pages: "Good to know" heading sits above its list (was squeezed beside it on phones) */
.r-scope-note{display:block}
.r-scope-note>strong{display:flex;align-items:center;gap:8px;margin-bottom:8px}
/* Choices keep one row on phones */
@media (max-width:480px){.r-seg-3{grid-template-columns:repeat(3,minmax(0,1fr))}}
.r-pill{white-space:nowrap}
/* Estimator: actions look disabled until something is added */
.r-basket-actions [aria-disabled="true"],.r-basket-actions [disabled]{opacity:.45;pointer-events:none}
/* Price lists read as information, not as options to pick */
.r-rate-table [role="row"]{background:none!important;border-radius:0;border-bottom:1px solid var(--line-soft)}
/* Contact: five channels on one row; steps in one column beside the picture */
.r-option-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}
.r-next .r-visual-steps{grid-template-columns:minmax(0,1fr)}
.contact-section :is(label,a,span,p)>.icon:first-child{margin-inline-end:8px;vertical-align:-3px;flex:none}
/* Guides: search text clears the icon */
.r-guides-library .r-guides-search input[data-guides-search]{padding-inline-start:50px}
/* About on phones: shorter page — two-up "Where we work", compact engineering rows */
@media (max-width:600px){
  .r-subjects .r-subject-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .r-eng-list li{flex-direction:row;align-items:flex-start;gap:14px;padding:16px}
  .r-eng-list li>.icon{flex:none;width:40px;height:40px;padding:10px}
}
