.scene-life .media-control{display:none!important}.scene-actors{position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden;clip-path:inset(0 var(--rail) 0 0)}
.scene-actor{display:block;position:absolute;left:0;top:0;pointer-events:auto;padding:0;border:0;cursor:pointer;transform:translate(-50%,-100%);outline:none!important;will-change:transform;isolation:isolate;line-height:1}
.actor-picture{position:absolute;inset:0;display:block;background-repeat:no-repeat;filter:brightness(.79) saturate(.78);transform-origin:50% 92%;pointer-events:none}
.scene-actor.is-left .actor-picture{transform:scaleX(-1)}
.actor-ground{position:absolute;left:14%;right:14%;bottom:-2%;height:7%;background:#26392d59;border-radius:50%;filter:blur(1px);pointer-events:none}
.actor-wake{position:absolute;left:0;right:-10%;height:12%;bottom:6%;border-bottom:1px solid #cad1b566;border-radius:50%;pointer-events:none;transform:rotate(-4deg)}
.actor-focus{position:absolute;inset:-7px;border:1px solid transparent;border-radius:50%;transition:border-color .2s;pointer-events:none}.scene-actor:focus-visible .actor-focus,.scene-actor:hover .actor-focus{border-color:#f3f0d2a8}
.scene-actor:before{content:'';position:absolute;left:50%;top:50%;width:max(100%,44px);height:max(100%,44px);transform:translate(-50%,-50%)}
.scene-index{position:absolute;z-index:7;left:5.2%;bottom:86px;color:#fff;font-size:12px}.scene-index>summary{display:flex;align-items:center;gap:28px;padding:9px 0;border-bottom:1px solid #ffffff6b;min-height:40px}.scene-index>summary>span{display:block;font-size:18px;line-height:1}.scene-index[open]>summary>span{transform:rotate(45deg)}
.scene-index-list{position:absolute;bottom:calc(100% + 14px);left:0;width:310px;max-width:calc(100vw - var(--rail) - 50px);background:#f0f0e7f5;color:#2a3e2e;padding:21px 24px;box-shadow:0 8px 34px #14271d1a;border:1px solid #eeeede}
.scene-index-list>p{font-size:11px;color:#6b7764;margin-bottom:17px}.scene-index-list>a{display:grid;grid-template-columns:1fr 16px;gap:7px 10px;padding:15px 0;border-top:1px solid #53624a2d;font-size:14px;line-height:1.7}.scene-index-list>a>span:first-child{grid-column:1/-1;font-size:10px;color:#6b7764}.scene-index-list>a:hover{text-decoration:underline;text-underline-offset:5px}
.scene-motion-toggle{padding:8px 0;border-bottom:1px solid #ffffff75;font-size:12px;letter-spacing:0;line-height:1.7;color:inherit}
.scene-tooltip{position:fixed;z-index:50;pointer-events:none;background:#f4f3eaf5;color:#293d2e;border:1px solid #e5e7d8;width:290px;max-width:calc(100vw - var(--rail) - 28px);padding:21px 24px;box-shadow:0 8px 34px #14271d1a;line-height:1.7}.scene-tooltip-kind{font-size:10px;color:#6b7861;letter-spacing:.06em}.scene-tooltip strong{display:block;font-size:18px;line-height:1.5;font-weight:400;margin:7px 0 9px}.scene-tooltip p{font-size:12px;color:#66735d;line-height:1.9}.scene-tooltip-link{display:block;border-top:1px solid #67725c36;margin-top:16px;padding-top:12px;font-size:12px}
.project-row.scene-arrival{outline:1px solid #556848;outline-offset:8px;background:#e2e7d7;transition:background 1.2s}.project-row{scroll-margin-top:100px}
.scene-life .hero-copy{z-index:5;pointer-events:none}.scene-life .hero-copy a{pointer-events:auto}
@media(max-width:700px){.scene-life .hero-bottom>span:first-child{display:none}.scene-index{left:24px;bottom:77px;font-size:11px}.scene-index>summary{gap:20px;min-height:36px;padding:7px 0}.scene-index-list{width:248px;padding:18px;max-width:calc(100vw - var(--rail) - 45px)}.scene-index-list>a{font-size:13px}.scene-index-list>p{font-size:10px}.scene-motion-toggle{font-size:11px}.scene-tooltip{width:240px;padding:16px 19px}.scene-tooltip strong{font-size:16px}.scene-tooltip p{font-size:11px}}
@media(prefers-reduced-motion:reduce){.actor-focus,.project-row.scene-arrival{transition:none}}
/* Larger silhouettes use the same camera scale as the architectural photograph. */
.scene-actor .actor-picture{background-position:center;filter:brightness(.83) saturate(.77)}
.actor-person .actor-picture{filter:brightness(.78) saturate(.76)}
.actor-cat .actor-picture{filter:brightness(.80) saturate(.75);transform-origin:65% 90%}
.actor-heron .actor-picture{filter:brightness(.84) saturate(.70)}
.water-bird .actor-reflection{position:absolute;left:0;right:0;top:97%;height:66%;background-repeat:no-repeat;background-size:100% 100%;background-position:center;transform:scaleY(-1);opacity:.16;filter:blur(.8px) saturate(.45);mask-image:linear-gradient(transparent,#000b);pointer-events:none}
.water-bird.is-left .actor-reflection{transform:scale(-1,-1)}
.water-bird .actor-wake{left:-7%;right:-5%;bottom:-2%;height:12%;border-color:#c4ccbb70}
.actor-person .actor-ground{left:4%;right:52%;bottom:-1%;height:3%;background:#26302466;transform:rotate(6deg)}
.actor-seat-shadow{position:absolute;left:56%;right:10%;top:65%;height:4%;background:#29342970;border-radius:50%;filter:blur(1.3px);pointer-events:none}
.actor-cat .actor-ground{left:2%;right:1%;height:8%;bottom:2%;background:#29342950}
.actor-heron .actor-ground{left:27%;right:24%;height:3%;bottom:0}
.scene-index-list{max-height:calc(100svh - 180px);overflow-y:auto;overscroll-behavior:contain}
.scene-index-list>a{padding:11px 0}
@media(max-width:1100px){
 .scene-life-v2{--scene-height:clamp(620px,87svh,760px)}
 .scene-life-v2 .hero{height:calc(var(--scene-height) + 380px);min-height:0;max-height:none}
 .scene-life-v2 .hero-media,.scene-life-v2 .scene-actors{height:var(--scene-height);bottom:auto}
 .scene-life-v2 .hero-image,.scene-life-v2 .hero-video{object-position:95% center}
 .scene-life-v2 .hero-media:after{content:'';position:absolute;inset:70% 0 0;background:linear-gradient(transparent,#354c43);pointer-events:none}
 .scene-life-v2 .hero-copy{top:calc(var(--scene-height) + 12px);bottom:auto}
 .scene-life-v2 .hero-copy h1{margin-top:16px;margin-bottom:18px}
 .scene-life-v2 .hero .thin-link{margin-top:16px}
 .scene-life-v2 .hero-bottom{bottom:23px}
 .scene-life-v2 .scene-index{top:calc(var(--scene-height) - 28px);bottom:auto}
 .scene-life-v2 .scene-index-list{bottom:calc(100% + 14px)}
 .scene-life-v2 .hero:after{background:linear-gradient(90deg,#0e221c48,#0e221c03 75%)}
}
@media(max-width:700px){
 .scene-life-v2 .hero{height:calc(var(--scene-height) + 390px)}
 .scene-life-v2 .hero-image,.scene-life-v2 .hero-video{object-position:79% center}
 .scene-life-v2 .hero-copy{top:calc(var(--scene-height) + 39px)}
 .scene-life-v2 .scene-index{top:calc(var(--scene-height) - 27px)}
 .scene-life-v2 .hero-bottom{bottom:24px}
}
