/* Bounded additions; approved identity, typography and cinematic scroll stay intact. */
picture{display:contents}
.comparison{background:#e5e8d4;color:#203b32}
.comparison h2{margin-bottom:24px}
.comparison-note{max-width:760px;font-size:18px;line-height:1.6;margin-bottom:32px}
.comparison-stage{width:100%;position:relative;isolation:isolate;aspect-ratio:2/1;min-height:230px;overflow:hidden;touch-action:pan-y;user-select:none;cursor:ew-resize;background:#d4dac6}
.comparison-side{position:absolute;inset:0;display:flex;align-items:center;padding:clamp(20px,5vw,70px);font-size:clamp(18px,2vw,28px);font-weight:600}
.comparison-before{background:#ced5c2;justify-content:flex-start}
.comparison-after{background:#b9c5b5;justify-content:flex-end;clip-path:inset(0 0 0 var(--split))}
.comparison-side span{max-width:38%;line-height:1.35}
.comparison-divider{position:absolute;inset-block:0;left:var(--split);width:3px;background:#203b32;transform:translateX(-50%);pointer-events:none}
.comparison-divider span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:52px;height:52px;background:#203b32;color:#fff;border-radius:50%;font-size:26px}
.comparison-label{display:block;font-size:16px;line-height:1.5;margin:24px 0 4px}
#comparison-range{width:100%;height:48px;accent-color:#203b32;cursor:ew-resize}
#comparison-range:focus-visible{outline:3px solid #203b32;outline-offset:4px}
.comparison-labels{position:absolute;inset:20px 20px auto;display:flex;justify-content:space-between;gap:50px;font-weight:600;pointer-events:none}
.contact-page{padding-top:0}
.contact-page .contact{padding-top:80px}
.contact-page h1{font-family:Barlow,sans-serif;font-size:clamp(64px,8vw,120px);font-weight:600;letter-spacing:-.035em;line-height:.95;margin:0}
.contact-film h2{max-width:900px;margin-bottom:38px}
.contact-film video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#203b32;object-fit:cover}
@media(max-width:760px){.contact-page{padding-top:0}.contact-page .contact{padding-top:58px}.comparison-side span{max-width:40%;font-size:17px}.comparison-stage{aspect-ratio:1.3/1}.contact-film h2{font-size:48px}.contact-page h1{font-size:72px}}
@media(prefers-reduced-motion:reduce){.comparison *{scroll-behavior:auto}}

/* Both images always occupy the identical rect. Reveal by clipping, never resizing. */
.comparison-stage{aspect-ratio:16/9;touch-action:pan-y}
.comparison-side{padding:0;display:block}
.comparison-side img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;pointer-events:none;user-select:none;-webkit-user-drag:none}
.comparison-labels{color:#fff;gap:16px}
.comparison-labels span{background:#203b32;padding:8px 12px;font-size:16px;line-height:1.3}
@media(max-width:760px){.comparison-stage{aspect-ratio:16/9;min-height:0}.comparison-labels{inset:10px 10px auto}.comparison-divider span{width:44px;height:44px}}
/* Construction instruments, not decorative photo placeholders. */
.construction-explorer{width:100%;max-width:100%;background:#d9dfcc;padding:clamp(20px,3vw,44px);color:#203b32;min-width:0}
.icon-instruction{font-size:16px;line-height:1.5;margin:0 0 22px}.icon-choices{display:flex;gap:12px;align-items:stretch}
.icon-choices button{appearance:none;overflow-wrap:anywhere;border:0;border-radius:0;flex:1;min-width:0;background:transparent;color:inherit;padding:14px 6px;cursor:pointer;font:inherit;font-weight:600;text-align:left;transition:background .2s,color .2s}
.icon-choices svg{width:100%;max-height:160px;display:block;margin-bottom:12px;transition:transform .25s}
.icon-choices button[aria-expanded=true]{background:#203b32;color:#e5e8d4}
.icon-choices button:hover svg{transform:translateY(-4px)}
.icon-choices button:focus-visible{outline:3px solid #203b32;outline-offset:4px}
.icon-explanations{padding-top:28px;min-height:190px}.icon-content h3{font-size:28px!important;line-height:1.1!important;margin:0 0 14px}.icon-content p{font-size:17px;line-height:1.6;margin:0}.icon-content[hidden]{display:none}
.sector-drawing{background:#d9dfcc;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:42px;color:#203b32;min-height:420px}.sector-drawing svg{width:70%;max-width:340px}.sector-drawing p{font-size:24px;margin:24px 0 0;text-align:center}
.remodel-pair+.remodel-pair{margin-top:90px}.remodel-heading{display:flex;align-items:baseline;justify-content:space-between;gap:28px;margin-bottom:24px}.remodel-heading h3{font-size:clamp(36px,4vw,60px);line-height:1;margin:0}.remodel-heading p{font-size:17px;max-width:440px;margin:0}.comparison-range{width:100%;height:48px;accent-color:#203b32;cursor:ew-resize}.comparison-range:focus-visible{outline:3px solid #203b32;outline-offset:4px}.comparison-divider span{display:flex;justify-content:center;gap:5px}.comparison-divider i{width:2px;height:16px;background:currentColor}.comparison-note{max-width:820px}
@media(max-width:760px){.remodel-heading{display:block}.remodel-heading p{margin-top:14px}.comparison h2{font-size:clamp(40px,10vw,66px)}.sector-drawing{min-height:280px;padding:24px}.icon-choices{gap:6px}.icon-choices button{font-size:14px}.icon-explanations{min-height:220px}.construction-explorer{padding:18px}.comparison-labels span{font-size:14px;padding:6px 8px}}
/* Focused audit: group the primary enquiry with its explanatory copy. */
.hero-lower{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:18px}.hero-lower p{margin:0;max-width:46ch}.hero-lower .button{min-height:52px}.intro-grid{gap:4vw}.icon-choices button[aria-expanded=false]{background:#e5e8d4}.icon-choices button[aria-expanded=false]:hover{background:#c3ceba}
@media(prefers-reduced-motion:reduce){.icon-choices button,.icon-choices svg{transition:none}.icon-choices button:hover svg{transform:none}}
