/* Local layered watercolor preview. The original is the loading/error/reduced-motion fallback. */
.home-page .hero-cover .hero-media{overflow:hidden}
.chapel-scene{position:absolute;z-index:0;pointer-events:none;visibility:hidden}
.chapel-plane,.chapel-piece{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.chapel-plane{will-change:transform}
.chapel-piece{display:block;transform-origin:0 0;max-width:none}
.chapel-piece.plants-left{clip-path:inset(0 50% 0 0)}
.chapel-piece.plants-right{clip-path:inset(0 0 0 50%)}
.parallax-ready .chapel-scene{visibility:visible}
.home-page .parallax-ready picture{visibility:hidden}


/* Width-led framing preserves all architectural layers as one proportional canvas. */
.home-page .hero-media.parallax-ready{background:#ede2c6 url('/estudo-paralaxe/assets/weather/optimized/sky-clear.webp?v=1') center top/cover no-repeat}
.home-page .hero-media.parallax-ready::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,#ede2c6 100%);z-index:0}
.chapel-scene{mask-image:linear-gradient(90deg,transparent,black 3%,black 97%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,black 3%,black 97%,transparent)}
@media(max-width:700px){.chapel-scene{mask-image:linear-gradient(180deg,transparent,black 18%);-webkit-mask-image:linear-gradient(180deg,transparent,black 18%)}}

@media(max-width:700px){.chapel-scene{mask-image:linear-gradient(180deg,transparent,black 18%,black 94%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent,black 18%,black 94%,transparent)}}
/* The static fallback follows the same wide framing, including reduced motion. */
.home-page .hero-cover .hero-media{background:#ede2c6 url('/estudo-paralaxe/assets/weather/optimized/sky-clear.webp?v=1') center top/cover no-repeat}
.home-page .hero-media::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,#ede2c6 100%);z-index:0}
.home-page .hero-cover .hero-background{position:absolute;width:94vw;height:auto;max-width:none;left:3vw;top:calc(60svh - 50.69vw);object-fit:contain;mask-image:linear-gradient(90deg,transparent,black 3%,black 97%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,black 3%,black 97%,transparent)}
@media(max-width:700px){.home-page .hero-cover .hero-background{width:108vw;left:-4vw;top:auto;bottom:min(110px,13svh);mask-image:linear-gradient(180deg,transparent,black 18%,black 94%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent,black 18%,black 94%,transparent)}}

/* Full-bleed vegetation; architectural registration remains at its wider scale. */
@media(min-width:701px){.chapel-scene,.home-page .hero-cover .hero-background{mask-image:none;-webkit-mask-image:none}}
.chapel-front{position:fixed;inset:0;height:100svh;overflow:hidden;pointer-events:none;z-index:2;visibility:hidden}
.chapel-front-scene{position:absolute;pointer-events:none}
.chapel-plane[data-depth="bell-shadow"]{mix-blend-mode:multiply;opacity:.64}
.home-page .hero-content-panel{z-index:auto}
.home-page .hero-cover .hero-copy{z-index:auto;isolation:auto}
.home-page .hero-copy::before{z-index:1}
.home-page .hero-copy>*{position:relative;z-index:4}
.home-page .hero-content-panel>.hero-countdown,.home-page .hero-scroll-cue{z-index:4}


@media(min-width:701px) and (max-aspect-ratio:1/1){.chapel-scene,.home-page .hero-cover .hero-background{mask-image:linear-gradient(180deg,#000 90%,transparent 100%);-webkit-mask-image:linear-gradient(180deg,#000 90%,transparent 100%)}}

.scene-offscreen .chapel-front,.scene-offscreen .chapel-scene,.scene-offscreen .weather-clouds{display:none!important}

/* Extend only the forecourt; retain the chapel canvas and architectural proportions. */
.chapel-ground-extension{position:absolute;left:-4%;top:96%;width:108%;height:max(50vh,360px);background:#ecd6af url('/estudo-paralaxe/assets/optimized/pavement-extension.webp') center top/100% auto repeat-y;pointer-events:none}
.chapel-piece.ground{mask-image:linear-gradient(to bottom,#000 97%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 97%,transparent 100%)}
.chapel-scene{mask-image:none;-webkit-mask-image:none}
/* Static loading/reduced-motion fallback also has pavement instead of a blank footer. */
.home-page .hero-media::before,.home-page .hero-media.parallax-ready::before{background:url('/estudo-paralaxe/assets/optimized/pavement-extension.webp') center bottom/100% auto no-repeat;top:70%;mask-image:linear-gradient(transparent,#000 45%);-webkit-mask-image:linear-gradient(transparent,#000 45%)}
.home-page .hero-media.parallax-ready::before{content:none}
.home-page .hero-content-panel>.hero-countdown .countdown{max-width:none;width:100%;margin-inline:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}

/* Column ground shadows project left; existing facade shadows are preserved. */
.porch-shadow-registration{position:absolute;inset:0;width:100%;height:100%;transform-origin:0 0;pointer-events:none;mix-blend-mode:multiply}
.column-cast-shadow{position:absolute;max-width:none;opacity:.36;transform-origin:center;pointer-events:none}
.column-cast-shadow.floor-left,.column-cast-shadow.floor-right{top:91.70%;width:34%;height:10%;transform:scale(-1,-1)}
.column-cast-shadow.floor-left{left:-2.13%}.column-cast-shadow.floor-right{left:36.65%}

/* The existing facade wash is retained; only its detached floor patch is replaced. */
.chapel-piece.bell-shadow{clip-path:inset(0 0 12% 0)}

.chapel-plane[data-depth=bell-ground]{mix-blend-mode:multiply;opacity:.44}

/* Light at 4–5 o'clock: floor shadows project toward 10–11 o'clock. */
.chapel-piece.flagpole{clip-path:inset(0 0 15.3% 0)}
.flagpole-shadow-registration{position:absolute;inset:0;transform-origin:0 0;pointer-events:none;mix-blend-mode:multiply}
.flagpole-floor-shadow{position:absolute;inset:0;width:100%;height:100%;clip-path:inset(84.7% 0 0 0);transform:scale(.3,-1);transform-origin:78.7% 84.7%;opacity:.65}
/* Occlude floor projections at the facade plane, rather than painting across the door. */
.chapel-plane[data-depth=bell-ground]{clip-path:inset(82.5% 0 0 0)}
@media(max-width:700px){.chapel-plane[data-depth=bell-ground]{clip-path:inset(87.8% 0 0 0)}}
.flagpole-shadow-registration{clip-path:inset(79.5% 0 0 0)}

/* Explicit contact patches bridge translucent watercolor edges at the physical feet. */
.column-floor-contact{position:absolute;top:96.7%;width:4.8%;height:1.25%;border-radius:50%;background:rgba(86,84,99,.34);filter:blur(.6px)}
.column-floor-contact.floor-left{left:28.1%}.column-floor-contact.floor-right{left:66.9%}
.bell-floor-contact{position:absolute;left:67.9%;top:82.9%;width:5%;height:1.1%;border-radius:50%;background:rgba(86,84,99,.5)}
.flagpole-wall-plane{position:absolute;inset:0;transform:translate(3%,0) scale(.94);transform-origin:0 0;clip-path:inset(66% 0 12.2% 0);mix-blend-mode:multiply}
.flagpole-wall-shadow{position:absolute;inset:0;width:100%;height:100%;transform-origin:0 0;transform:translate(-6.8%,55.61%) skewX(16deg) scale(.13,.38);clip-path:inset(0 0 15.3% 0);filter:grayscale(1);opacity:.26}
@media(max-width:700px){.flagpole-wall-plane{transform:none}.bell-floor-contact{left:70.1%;top:88.5%}}

.porch-shadow-registration{clip-path:inset(95.1% 0 0 0)}
