/* Six continuous colour bridges. No extra pinned scenes or scroll capture. */
.section-seam{--seam-from:#f6f2e9;--seam-to:#f6f2e9;--seam-shift:-24%;--seam-light:.12;position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(180deg,var(--seam-from),var(--seam-to));height:78px}
.seam-to-stone{--seam-to:#e5e1d6}.seam-from-stone{--seam-from:#e5e1d6}
#gallery+.section-seam{--seam-to:#f6f2e9}
#details+.section-seam{--seam-to:#e5e1d6}
#team+.section-seam{--seam-from:#e5e1d6;--seam-to:#d6d5cb}
.contact.contact-portal{background:#d6d5cb}
.section-seam:before{position:absolute;inset:-50% -25%;height:auto;background:radial-gradient(ellipse at 50% 50%,#fffdf5a6,transparent 62%);transform:translateX(var(--seam-shift));opacity:var(--seam-light);pointer-events:none;z-index:-1}
.section-seam:after{display:none}
.section-seam>span{position:relative;width:100%;flex:1;display:flex;align-items:center;justify-content:center;gap:30px;transform:translateY(var(--seam-y,0px));opacity:var(--seam-ink,.6)}
.section-seam>span:before,.section-seam>span:after{content:'';height:1px;flex:1;background:linear-gradient(90deg,transparent,#aa96726b);transform:scaleX(var(--seam-line,1));transform-origin:right}
.section-seam>span:after{background:linear-gradient(90deg,#aa96726b,transparent);transform-origin:left}
.section-seam svg{flex:0 0 23px}
.hero-pin:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:160px;pointer-events:none;background:linear-gradient(180deg,transparent,#f6f2e9);opacity:var(--hero-exit,0);z-index:3}
.hero-bottom{opacity:calc(1 - var(--hero-exit,0)*.8)}
.hero .scene-progress{opacity:calc(1 - var(--hero-exit,0))}
.contact-room:after{content:'';position:absolute;inset:0 0 auto;height:70px;background:linear-gradient(#d6d5cb,transparent);pointer-events:none}
.flow-entry{opacity:calc(.52 + var(--entry,1)*.48);translate:0 calc((1 - var(--entry,1))*28px)}
.flow-entry:focus-within{opacity:1;translate:0 0}
@media(max-width:760px){.section-seam{height:64px}.section-seam>span{gap:20px}.hero-pin:after{height:110px}.flow-entry{translate:0 calc((1 - var(--entry,1))*18px)}}
@media(prefers-reduced-motion:reduce){.section-seam:before{display:none}.section-seam>span{transform:none;opacity:.75}.section-seam>span:before,.section-seam>span:after{transform:none}.flow-entry{opacity:1;translate:none}.hero-pin:after{opacity:1}.hero-bottom{opacity:1}}
