/* Arch KBB reusable sections. Proposed 30 October 2026, not on the site yet. See README.md.
   Lifted from the design canvas for /home-renovation-london. Colours and type come only from these tokens. */
.arch-s{container:arch-s/inline-size;--taupe:#50463F;--gold:#9B7B31;--brown:#2E2824;--grey:#454545;--pale:#F6F5F4;--hair:rgba(156,124,50,.3);--serif:"Playfair Display",Georgia,serif;--sans:Lato,Arial,sans-serif;background:#fff;color:var(--taupe);font:400 17px/1.6 var(--sans);letter-spacing:normal;overflow-x:clip;-webkit-font-smoothing:antialiased}
.arch-s a{color:inherit}
/* The theme capitalises headings, spaces out text and removes link underlines; the approved look does none of these. */
.arch-s h1,.arch-s h2,.arch-s h3,.arch-s h4{text-transform:none}
.arch-s .as-tel,.arch-s .as-wall-links a,.arch-s .as-steps-cta p a,.arch-s .as-faq-a a,.arch-s .as-faq-side a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.arch-s h1,.arch-s h2,.arch-s h3{font-family:var(--serif);font-weight:400;margin:0;text-wrap:balance}
.arch-s h2{font-size:52px;line-height:1.14;letter-spacing:.5px;color:var(--grey)}
.arch-s h3{font-size:27px;line-height:1.25;letter-spacing:.3px;color:var(--grey)}
.arch-s p{margin:0;text-wrap:pretty}
.as-wrap{max-width:1180px;margin:0 auto;padding:0 40px}
.as-sec{padding:96px 0}
.as-eb{font:700 12px/1.4 var(--sans);letter-spacing:1.6px;text-transform:uppercase;color:var(--gold);margin:0 0 14px!important}
.as-lead{font-size:19px;margin-top:18px!important}
.as-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:15px 26px;font:700 12px/1.5 var(--sans);letter-spacing:1.5px;text-transform:uppercase;text-decoration:none;border-radius:4px;transition:background .2s ease-out,color .2s ease-out}
.as-btn.solid{background:var(--taupe);color:#fff!important}
.as-btn.solid:hover{background:var(--brown)}
.as-btn.ghost{border:1px solid #fff;color:#fff!important}
.as-btn.ghost:hover{background:#fff;color:var(--brown)!important}
.as-tel{display:inline-flex;align-items:center;min-height:44px;font-size:17px;letter-spacing:.8px;text-underline-offset:4px;text-decoration-thickness:1px}
.arch-s :focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.as-ic{fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;display:block}
.vf{display:inline-block;font:700 10px/1 var(--sans);letter-spacing:.8px;color:var(--gold);vertical-align:super;margin-left:4px;white-space:nowrap;text-transform:none}
.on-dark .vf{color:#fff;opacity:.75}
[data-flags="false"] .vf,[data-flags="false"] .vf-row{display:none!important}
.as-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.m [data-r]{opacity:0;transform:translateY(26px);transition:opacity .85s ease-out var(--d,0s),transform 1s cubic-bezier(.16,1,.3,1) var(--d,0s)}
.m [data-r][data-in]{opacity:1;transform:none}

/* PART: as-hero */
.as-hero{position:relative;height:min(100svh,860px);min-height:680px;background:var(--brown);color:#fff;overflow:hidden;display:flex;flex-direction:column;justify-content:center;padding-top:150px}
.as-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 60%}
.as-hero-scrim{position:absolute;inset:0;mix-blend-mode:multiply;background:linear-gradient(90deg,rgba(46,40,36,.9) 0%,rgba(46,40,36,.72) 42%,rgba(46,40,36,.12) 74%),linear-gradient(180deg,rgba(46,40,36,.72) 0%,rgba(46,40,36,0) 26%,rgba(46,40,36,0) 66%,rgba(46,40,36,.82) 100%)}
.as-hero-in{position:relative;z-index:1}
.as-hero h1{font-size:68px;line-height:1.08;letter-spacing:1px;color:#fff;max-width:760px}
.as-hero-sub{font-size:21px;line-height:1.5;letter-spacing:.3px;max-width:560px;margin-top:22px!important}
.as-hero-cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:30px}
.as-hero-rate{display:flex;align-items:center;gap:12px;margin-top:22px!important;font-size:15px;letter-spacing:.6px}
.as-stars{color:#d8b86a;letter-spacing:3px;font-size:15px}
.as-hero-clip{overflow:hidden;max-width:860px;margin-top:24px}
.as-hero-scope{list-style:none;margin:0 0 0 -24px;padding:0;display:flex;flex-wrap:wrap;gap:2px 0;font-size:17px;line-height:1.5;letter-spacing:.3px}
.as-hero-scope li{white-space:nowrap}
.as-hero-scope li::before{content:"";display:inline-block;width:4px;height:4px;border-radius:50%;background:#d8b86a;margin:0 10px;vertical-align:middle}

/* PART: as-one, six conversations become one (this page's opening argument) */
.as-one{padding-bottom:72px}
.as-one-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px;align-items:center}
.as-one-dia{position:relative;height:520px}
.as-one-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.as-one-svg.p{display:none}
.as-one-svg path{fill:none;stroke:var(--gold);stroke-width:1.4;vector-effect:non-scaling-stroke}
.m .as-one-svg path{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.2s cubic-bezier(.3,.6,.2,1) var(--d,0s)}
.m .as-one-dia[data-in] .as-one-svg path{stroke-dashoffset:0}
.as-one-ls{list-style:none;margin:0;padding:0;position:absolute;left:0;top:0;bottom:0;width:29.4%}
.as-one-ls li{position:absolute;right:0;transform:translateY(-50%);font:400 23px/1.2 var(--serif);color:var(--grey);white-space:nowrap;text-align:right}
.as-one-ls li::after{content:"";position:absolute;left:0;right:0;top:54%;height:1px;background:var(--gold);transform:scaleX(1);transform-origin:left}
.m .as-one-ls li::after{transform:scaleX(0);transition:transform .7s cubic-bezier(.3,.6,.2,1) var(--d,0s)}
.m .as-one-dia[data-in] .as-one-ls li::after{transform:scaleX(1)}
.as-one-ls li{color:#6F6761}
.as-one-arch{position:absolute;right:0;top:0;bottom:0;width:46%;border-radius:999px 999px 0 0;overflow:hidden;background:var(--pale)}
.as-one-arch img{width:100%;height:100%;object-fit:cover;object-position:50% 40%;display:block}
.as-one-arch::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(180deg,rgba(46,40,36,0),rgba(46,40,36,.86))}
.as-one-cap{position:absolute;z-index:1;left:0;right:0;bottom:26px;margin:0;text-align:center;color:#fff;font:400 24px/1.28 var(--serif);letter-spacing:.3px}
.as-one-floor{position:absolute;right:-16px;bottom:0;width:calc(46% + 32px);height:1px;background:var(--gold)}
.as-one-dot{position:absolute;left:54%;top:57.69%;width:11px;height:11px;margin:-5.5px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px #fff;z-index:2}
.m .as-one-dot{transform:scale(0);transition:transform .4s cubic-bezier(.3,1.4,.5,1) 1.3s}
.m .as-one-dia[data-in] .as-one-dot{transform:none}

/* PART: reviews placement. The block itself lives in scripts/arch-reviews */
.as-reviews{background:var(--pale);padding:68px 24px}
.arch-s .arch-reviews__eyebrow{margin:0 0 10px}
.arch-s .arch-reviews__note{margin:10px 0 0}

/* PART: as-why, why Arch */
.as-why{background:var(--brown);color:#fff;padding:72px 0 96px}
.arch-s .as-why h2{color:#fff;font-size:62px;line-height:1.08;max-width:980px}
.as-why .as-eb{color:#fff;opacity:.85}
.as-why-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px;margin-top:36px}
.as-why-t{position:relative;display:block;height:440px;overflow:hidden;border-radius:8px;text-decoration:none;background:#3a332e}
.as-why-t.w7{grid-column:span 7}.as-why-t.w5{grid-column:span 5}
.as-why-t img{position:absolute;left:0;top:0;width:100%;height:80%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.6,.2,1)}
.as-why-t:hover img{transform:scale(1.035)}
.as-why-t::after{content:"";position:absolute;inset:34% 0 0;background:linear-gradient(180deg,rgba(58,51,46,0),rgba(58,51,46,.8) 48%,#3a332e 70%)}
.as-why-b{position:absolute;z-index:1;left:32px;right:32px;bottom:28px}
.arch-s .as-why-b h3{color:#fff;font-size:38px;line-height:1.14}
.as-why-b p{font-size:17px;line-height:1.5;margin-top:10px!important;max-width:520px;color:#fff}
.as-why-more{display:inline-flex;align-items:center;gap:10px;margin-top:12px;font:700 11px/1.4 var(--sans);letter-spacing:1.5px;text-transform:uppercase;color:#fff}
.as-why-more svg{width:16px;height:16px;transition:transform .2s ease-out}
.as-why-t:hover .as-why-more svg{transform:translateX(4px)}

/* PART: as-strip, walk through one real project */
.as-strip{padding:96px 0 88px}
.as-strip-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}
.as-strip-head>div:first-child{max-width:760px}
.as-arrows{display:flex;gap:10px;flex:none}
.as-arrows button{width:48px;height:48px;border:1px solid rgba(46,40,36,.25);border-radius:50%;background:none;color:var(--brown);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,color .2s}
.as-arrows button:hover{background:var(--brown);color:#fff}
.as-arrows svg{width:18px;height:18px}
.as-strip-track{list-style:none;margin:40px 0 0;padding:0 max(40px,calc((100% - 1100px)/2));display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-padding:0 max(40px,calc((100% - 1100px)/2))}
.as-strip-track::-webkit-scrollbar{display:none}
.as-strip-f{flex:none;scroll-snap-align:start;margin:0}
.as-strip-f img{display:block;height:540px;object-fit:cover;border-radius:6px;background:var(--pale)}
.as-strip-f.po img{width:360px}.as-strip-f.la img{width:810px}
.arch-s .as-strip-f figcaption{font:400 21px/1.3 var(--serif);letter-spacing:normal;color:var(--grey);margin-top:12px}
.as-strip-bar{height:1px;background:var(--hair);margin-top:24px;position:relative}
.as-strip-bar i{position:absolute;left:0;top:-.5px;height:2px;width:100%;background:var(--gold);transform:scaleX(var(--x,.2));transform-origin:left;transition:transform .15s linear}
.as-strip-foot{display:flex;justify-content:space-between;align-items:baseline;gap:40px;margin-top:20px}
.as-strip-foot p{max-width:760px}
.as-more{white-space:nowrap;font:700 12px/1.4 var(--sans);letter-spacing:1.5px;text-transform:uppercase;text-decoration:none;display:inline-flex;align-items:center;gap:10px;min-height:44px}
.as-more svg{width:16px;height:16px;transition:transform .2s ease-out}
.as-more:hover svg{transform:translateX(4px)}
.as-others{margin-top:44px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;list-style:none;padding:0}
.as-others a{display:flex;gap:16px;align-items:center;text-decoration:none}
.as-others img{width:128px;height:96px;object-fit:cover;border-radius:6px;flex:none;display:block}
.as-others b{display:block;font:400 21px/1.25 var(--serif);color:var(--grey)}
.as-others span{display:block;font-size:15px;line-height:1.4;margin-top:4px}
.as-others a>svg{width:16px;height:16px;flex:none;margin-left:auto;color:var(--gold)}
.as-others a{min-height:44px}
.as-others-t{margin:40px 0 0!important;font:700 12px/1.4 var(--sans);letter-spacing:1.5px;text-transform:uppercase;color:var(--gold)}
.as-others-t+.as-others{margin-top:16px}

/* PART: as-wall, the whole offer as one wall of words */
.as-wall{padding:80px 0}
.as-wall-row{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;align-items:stretch;margin-top:32px}
.as-wall-clip{overflow:hidden}
.as-wall-img{display:block;width:100%;height:100%;min-height:0;object-fit:cover;object-position:46% 50%;border-radius:6px}
.as-wall-list{list-style:none;margin:0 0 0 -38px;padding:0;display:flex;flex-wrap:wrap;font:400 38px/1.36 var(--serif);letter-spacing:.3px;color:var(--brown)}
.as-wall-list li{white-space:nowrap}
.as-wall-list li::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--gold);margin:0 16px;vertical-align:middle;position:relative;top:-2px}
.m .as-wall-list li{opacity:.52;transition:opacity .5s ease-out}
.m .as-wall-list li[data-lit]{opacity:1}
.as-wall-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 64px;margin-top:32px;padding-top:24px;border-top:1px solid var(--hair)}
.as-wall-notes h3{font-size:24px}
.as-wall-notes p{margin-top:6px!important}
.as-wall-links{display:flex;gap:4px 20px;flex-wrap:wrap;margin-top:2px!important}
.as-wall-links a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:3px}

/* PART: as-steps, how it works */
.as-steps{background:var(--pale);padding:96px 0 88px}
.as-steps-head{max-width:760px}
.as-steps-rail{position:relative;margin-top:44px}
.as-steps-line{position:absolute;left:0;right:0;top:7px;height:1px;background:var(--hair)}
.as-steps-line i{position:absolute;inset:-.2px 0;height:1.4px;background:var(--gold);transform:scaleX(var(--p,1));transform-origin:left}
.as-steps-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.as-step{position:relative;padding-top:32px}
.as-step::before{content:"";position:absolute;left:0;top:2px;width:11px;height:11px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px var(--pale)}
.as-step-card{display:block;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 6px rgba(46,40,36,.06),0 14px 34px rgba(46,40,36,.08);height:100%}
.as-step img{display:block;width:100%;height:188px;object-fit:cover}
.as-step-b{padding:20px 20px 22px}
.arch-s .as-step-b h3{font-size:23px}
.as-step-b p{font-size:16px;line-height:1.5;margin-top:8px!important}
.as-steps-cta{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:40px;text-align:center}
.as-steps-cta p{font-size:15px;margin-top:-4px!important}
.as-steps-cta a:not(.as-btn){display:inline-flex;align-items:center;min-height:44px;text-underline-offset:3px}

/* PART: as-values, Arch's core values */
.as-values{background:var(--pale);padding:88px 0}
.as-values-head{text-align:center}
.as-values-list{list-style:none;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}
.as-value{text-align:center}
.as-value-arch{display:block;width:190px;max-width:100%;height:250px;margin:0 auto;border-radius:999px 999px 0 0;overflow:hidden;background:#e9e6e3}
.as-value-arch img{display:block;width:100%;height:100%;object-fit:cover}
.arch-s .as-value h3{font-size:20px;margin-top:16px;white-space:nowrap}
.as-value p{font-size:15.5px;line-height:1.5;margin-top:6px!important}

/* PART: as-faq */
.as-faq{padding:80px 0}
.as-faq-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:64px;align-items:start}
.arch-s .as-faq h2{font-size:44px}
.as-faq-side{position:sticky;top:158px}
.as-faq-side p{margin-top:14px!important}
.as-faq-img{display:block;width:100%;height:auto;margin-top:24px;border-radius:6px}
.as-faq-list{border-top:1px solid var(--hair)}
.as-faq-q{border-bottom:1px solid var(--hair)}
.as-faq-q summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:68px;padding:16px 0;cursor:pointer;font:400 22px/1.3 var(--serif);color:var(--grey)}
.as-faq-q summary::-webkit-details-marker{display:none}
.as-faq-q summary:hover{color:var(--brown)}
.as-faq-i{position:relative;flex:none;width:16px;height:16px}
.as-faq-i::before,.as-faq-i::after{content:"";position:absolute;left:0;right:0;top:7.5px;height:1px;background:var(--gold);transition:transform .25s ease-out}
.as-faq-i::after{transform:rotate(90deg)}
.as-faq-q[open] .as-faq-i::after{transform:none}
.as-faq-a{padding:0 40px 24px 0}
.as-faq-a a{text-underline-offset:3px}

/* PART: as-band, the closing booking band */
.as-band{position:relative;height:560px;background:var(--brown);color:#fff;overflow:hidden;display:flex;align-items:center}
.as-band-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.as-band::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(46,40,36,.9) 0%,rgba(46,40,36,.76) 66%,rgba(46,40,36,.2) 96%)}
.as-band-in{position:relative;z-index:1;width:100%}
.arch-s .as-band h2{color:#fff;font-size:48px;max-width:1000px}
.as-band p{font-size:19px;margin-top:16px!important;max-width:560px}
.as-band-cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:28px}

@container arch-s (max-width:1120px){
.arch-s h2{font-size:44px}
.arch-s .as-why h2{font-size:54px}
.as-wall-list{font-size:32px}
.as-wall-row{grid-template-columns:minmax(0,1fr) 220px;gap:32px}
.as-one-grid{gap:40px}
}
/* Tablet */
@container arch-s (max-width:1000px){
.as-one-grid,.as-faq-grid,.as-others{grid-template-columns:minmax(0,1fr)}
.as-faq-side{position:static}
.as-faq-img{max-width:345px}
.as-values-list{display:flex;flex-wrap:wrap;justify-content:center}
.as-value{flex:0 0 calc(33.33% - 14px)}
.arch-s .as-value h3{white-space:normal}
}
/* Phone */
@container arch-s (max-width:760px){
.arch-s h2{font-size:36px;line-height:1.16}
.arch-s h3{font-size:25px}
.m [data-r]{--d:0s!important}
.as-wrap{padding:0 20px}
.as-sec{padding:52px 0}
.as-one{padding-bottom:52px}
.as-lead{font-size:17px}
.as-hero{height:min(100svh,780px);min-height:640px;justify-content:flex-end;padding:112px 0 28px}
.as-hero-img{object-position:50% 30%}
.as-hero-scrim{mix-blend-mode:normal;background:linear-gradient(0deg,rgba(46,40,36,.95) 0,rgba(46,40,36,.7) 440px,rgba(46,40,36,0) 600px),linear-gradient(180deg,rgba(46,40,36,.6) 0,rgba(46,40,36,0) 130px)}
.as-hero h1{font-size:40px;line-height:1.12}
.as-hero-sub{font-size:17px;margin-top:12px!important}
.as-hero-cta{margin-top:16px;gap:2px}
.as-hero-cta .as-btn{width:100%}
.as-hero-cta .as-tel{width:100%;justify-content:center;font-size:16px}
.as-hero-rate{justify-content:flex-start;margin-top:2px!important;font-size:14px}
.as-hero-clip{margin-top:14px}
.as-hero-scope{font-size:15px;line-height:1.5;letter-spacing:.1px;margin-left:-16px}
.as-hero-scope li::before{width:3px;height:3px;margin:0 6.5px}
.as-one-grid{grid-template-columns:minmax(0,1fr);gap:28px}
.as-one-dia{height:auto;display:flex;flex-direction:column;align-items:center}
.as-one-svg.d{display:none}
.as-one-svg.p{display:block;position:static;height:72px;margin-top:6px}
.as-one-ls{position:static;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 8px}
.as-one-ls li{position:relative;right:auto;top:auto!important;transform:none;font-size:18px;text-align:center;justify-self:center}
.as-one-arch{position:relative;width:280px;height:340px;flex:none}
.as-one-arch::after{inset:30% 0 0;background:linear-gradient(180deg,rgba(46,40,36,0),rgba(46,40,36,.5) 42%,rgba(46,40,36,.9) 72%)}
.as-one-cap{font-size:18px;bottom:18px}
.as-one-dot,.as-one-floor{display:none}
.as-reviews{padding:48px 20px}
.as-why{padding:52px 0 60px}
.arch-s .as-why h2{font-size:38px;line-height:1.14}
.as-why-grid{display:flex;flex-direction:column;gap:12px;margin-top:28px}
.as-why-t{height:320px}
.as-why-t img{height:62%}
.as-why-t::after{inset:28% 0 0;background:linear-gradient(180deg,rgba(58,51,46,0) 0,rgba(58,51,46,.75) 33%,#3a332e 47%)}
.as-why-b{left:20px;right:20px;bottom:16px}
.arch-s .as-why-b h3{font-size:27px;line-height:1.18}
.as-why-b p{font-size:15.5px;margin-top:4px!important}
.as-why-more{margin-top:8px}
.as-strip{padding:52px 0 44px}
.as-strip-head{display:block}
.as-arrows{display:none}
.as-strip-track{margin-top:24px;padding:0 20px;gap:10px;scroll-padding:0 20px}
.as-strip-f img{height:360px}
.as-strip-f.po img{width:240px}.as-strip-f.la img{width:300px}
.arch-s .as-strip-f figcaption{font-size:18px;margin-top:8px}
.as-strip-bar{margin-top:16px}
.as-strip-foot{display:block;margin-top:14px}
.as-strip-foot p{font-size:16px}
.as-more{margin-top:6px}
.as-others-t{margin-top:24px!important}
.as-others{grid-template-columns:minmax(0,1fr);gap:10px}
.as-others img{width:96px;height:72px}
.as-others b{font-size:19px}
.as-others span{font-size:14px;margin-top:2px}
.as-wall{padding:52px 0}
.as-wall-row{display:block;margin-top:20px}
.as-wall-img{display:none}
.as-wall-list{font-size:24px;line-height:1.46;margin-left:-22px}
.as-wall-list li::before{width:4px;height:4px;margin:0 9px;top:-1px}
.as-wall-notes{grid-template-columns:minmax(0,1fr);gap:20px;margin-top:28px;padding-top:20px}
.as-wall-notes h3{font-size:22px}
.as-wall-notes p{font-size:16px}
.as-steps{padding:52px 0 44px}
.as-steps-rail{margin-top:28px}
.as-steps-line{left:5px;right:auto;top:6px;bottom:0;width:1px;height:auto}
.as-steps-line i{inset:0 -.2px;width:1.4px;height:100%;transform:scaleY(var(--p,1));transform-origin:top}
.as-steps-list{display:flex;flex-direction:column;gap:14px}
.as-step{padding:0 0 0 28px}
.as-step::before{top:6px}
.as-step-card{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:stretch;height:auto}
.as-step img{height:100%;min-height:128px}
.as-step-b{padding:12px 14px 14px}
.arch-s .as-step-b h3{font-size:20px}
.as-step-b p{font-size:15px;line-height:1.42;margin-top:4px!important}
.as-steps-cta{margin-top:24px}
.as-steps-cta .as-btn{width:100%}
.as-values{padding:48px 0}
.as-values-head{text-align:left}
.as-values-list{display:flex;flex-direction:column;flex-wrap:nowrap;gap:14px;margin-top:22px}
.as-value{flex:none;display:grid;grid-template-columns:84px minmax(0,1fr);grid-template-rows:auto 1fr;column-gap:16px;text-align:left;align-items:start}
.as-value-arch{width:84px;height:110px;grid-row:1/3;margin:0}
.arch-s .as-value h3{font-size:20px;margin-top:6px}
.as-value p{font-size:15px;margin-top:2px!important}
.as-faq{padding:52px 0}
.as-faq-grid{grid-template-columns:minmax(0,1fr);gap:22px}
.arch-s .as-faq h2{font-size:34px}
.as-faq-side{position:static}
.as-faq-img{display:none}
.as-faq-q summary{font-size:19px;min-height:60px;padding:12px 0}
.as-faq-a{padding:0 0 18px;font-size:16px}
.as-band{height:520px;align-items:flex-end;padding-bottom:40px}
.as-band::after{background:linear-gradient(180deg,rgba(46,40,36,.25),rgba(46,40,36,.88) 58%)}
.arch-s .as-band h2{font-size:36px}
.as-band p{font-size:17px;margin-top:10px!important}
.as-band-cta{margin-top:20px;gap:12px}
.as-band-cta .as-btn{width:100%}
.as-band-cta .as-tel{width:100%;justify-content:center}
}
@media (prefers-reduced-motion:reduce){
html{scroll-behavior:auto}
}

/* The current page's menu label stays white over the hero photo; the theme's gold returns once the header sticks */
[data-transparent-row="yes"] .current-menu-item>.ct-menu-link{color:#fff!important;box-shadow:0 1px 0 #fff}

/* Keep the floating film off the page's content and controls */
@media(max-width:767px){html.as-hero-on .arch-film-teaser{visibility:hidden;pointer-events:none}}
@media(min-width:1400px) and (max-width:1559px){.arch-film-teaser{width:146px;right:12px}}
@media(min-width:768px) and (max-width:1399px){.arch-film-teaser{width:218px;padding:4px 46px 4px 4px;right:12px;bottom:calc(16px + env(safe-area-inset-bottom));border-radius:28px}.arch-film-preview{display:none}.arch-film-open{height:44px;min-height:44px;overflow:visible;border-radius:24px}.arch-film-play{width:36px;height:36px;left:22px;top:22px}.arch-film-play svg{width:22px;height:22px}.arch-film-caption{padding:0 0 0 46px;height:44px;font-size:11px;display:block;line-height:17px;padding-top:5px}.arch-film-caption span{display:block;font-size:10px}.arch-film-dismiss{top:4px;right:3px;color:#50463f!important}.arch-film-dismiss::before{background:#f6f5f4}.arch-film-heading h2{font-size:19px}.arch-film-end{padding:16px}}

/* PART: as-doors, core values as small drawn doorways. No photos: a room can't show a value (Zaniar, 30 Oct 2026).
   The marks are the ones approved on /our-story, drawing themselves once with arch-sections.js. Use this, not as-values. */
.as-doors-sec{background:var(--pale);padding:68px 0}
.as-doors-head{text-align:center}
.as-doors{list-style:none;margin:36px 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:40px 24px}
.as-door{flex:0 1 200px;text-align:center}
.as-door-fig{position:relative;display:block;width:112px;aspect-ratio:160/200;margin:0 auto}
.as-door-arch{position:absolute;inset:0;width:100%;height:100%;overflow:visible;fill:none}
.as-door-fill{fill:#fff}
.as-door-line{stroke:var(--gold);stroke-width:1.2;stroke-linecap:round}
.as-door-ic{position:absolute;left:50%;top:56%;width:48px;height:48px;margin:-24px 0 0 -24px;color:var(--taupe);stroke-width:1.2}
.as-door-ic24{stroke-width:.72}
.as-door-ic .g{stroke:var(--gold)}
.m .as-door-fig .d{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.1s cubic-bezier(.65,0,.35,1) var(--dd,.05s)}
.m .as-door-fig[data-in] .d{stroke-dashoffset:0}
.arch-s .as-door h3{font-size:22px;line-height:1.22;margin-top:20px;min-height:54px}
.as-door p{margin-top:6px!important;font-size:15px;line-height:1.5}
@container arch-s (max-width:760px){
.as-doors-sec{padding:48px 0}
.as-doors-head{text-align:left}
.as-doors{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;margin-top:28px}
.as-door{display:grid;grid-template-columns:84px minmax(0,1fr);column-gap:18px;align-items:center;text-align:left}
.as-door-fig{grid-row:span 2;width:84px;margin:0}
.as-door-ic{width:40px;height:40px;margin:-20px 0 0 -20px}
.arch-s .as-door h3{font-size:22px;margin-top:0;min-height:0;align-self:end}
.as-door p{align-self:start;margin-top:4px!important}
}
