/* Spatial scroll choreography: photographs move; reading surfaces remain stable. */
body{isolation:isolate}.styllove-ambient{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;opacity:.72;background:radial-gradient(ellipse at 5% 10%,#d9dfd1,transparent 65%),radial-gradient(ellipse at 90% 90%,#ccd6d9,transparent 60%)}
.styllove-ambient>div{opacity:0;transition:opacity 240ms var(--ease)}.styllove-ambient.gradient-ready>div{opacity:1}.styllove-ambient canvas{display:block;pointer-events:none}
.details-scene{position:relative}.hero-media>img{will-change:auto}
.scroll-scenes .project-track{isolation:isolate;gap:clamp(115px,18svh,190px)}
.scroll-scenes .project-photo>img,.scroll-scenes .detail-frame>img{transition:none}.scroll-scenes .project-card{background:transparent;padding:0;border-radius:0}
.portfolio{background:transparent}.contact{background:#e8edef66}.reel-frame{transform-origin:center}.motion-toggle{border:0;border-bottom:1px solid #59616955;background:none;padding:8px 0;font-size:12px;white-space:nowrap}.motion-toggle:active{transform:none}
@media(min-width:701px){.scroll-scenes .details-scene{height:155svh;margin-top:140px}.scroll-scenes .details-editorial{position:sticky;top:112px;height:calc(100svh - 136px);margin-top:0;display:flex;flex-direction:column;justify-content:center}.scroll-scenes .details-heading{margin-bottom:36px}.scroll-scenes .details-images{gap:32px;isolation:isolate}.scroll-scenes .detail-photo{position:relative;transform-origin:center;will-change:transform}.scroll-scenes .detail-photo:nth-child(2){z-index:3}.scroll-scenes .detail-frame{height:42svh;aspect-ratio:auto}.scroll-scenes .detail-photo:nth-child(2) .detail-frame{height:47svh;aspect-ratio:auto}.scroll-scenes .detail-photo:nth-child(3) .detail-frame{height:35svh;aspect-ratio:auto}.scroll-scenes .detail-photo:nth-child(3){align-self:center}}
@media(max-width:700px){.scroll-scenes .project-track{gap:72px}.scroll-scenes .project-card{padding:0;border-radius:0}.scroll-scenes .details-scene{height:auto}.scroll-scenes .details-editorial{margin-top:75px}.hero-media{bottom:150px}.spatial-story>p{font-size:clamp(54px,15vw,75px);top:46%;transform:translateY(-50%)}.reel-frame{will-change:auto}footer{flex-wrap:wrap}.motion-toggle{font-size:11px}.styllove-ambient{opacity:.4}}
@media(max-height:500px){.hero{min-height:560px}.spatial-story{min-height:520px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reel-frame,.detail-photo,.portrait{transform:none!important;clip-path:none!important;will-change:auto}.styllove-ambient>div{display:none}.motion-toggle{display:none}}
@media(prefers-contrast:more),(prefers-reduced-transparency:reduce){.styllove-ambient{display:none}}
@media print{.styllove-ambient,.motion-toggle{display:none}.details-scene{height:auto!important}.details-editorial,.stack-card{position:relative!important;top:auto!important}}

/* Each major reading section has its own palette without moving its content. */
.gradient-section{position:relative;isolation:isolate}.gradient-portfolio{background:radial-gradient(ellipse at 15% 10%,#e5eadd,transparent 65%),linear-gradient(140deg,#faf8f2,#e7edef)}.gradient-approach{background:radial-gradient(ellipse at 85% 65%,#4c5848,transparent 65%),linear-gradient(130deg,#292d31,#303a34)}
.section-backdrop{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:clip}.section-canvas{position:sticky;top:0;width:100%;height:100svh;overflow:hidden;opacity:.84}.gradient-approach .section-canvas{opacity:.9}.section-canvas>div{opacity:0;transition:opacity 240ms var(--ease)}.section-canvas.gradient-ready>div{opacity:1}.section-canvas canvas{display:block;pointer-events:none}.gradient-approach .section-backdrop:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#292d3180,#292d3120);pointer-events:none}
@media(max-width:700px){.section-canvas{opacity:.46}.gradient-approach .section-canvas{opacity:.65}}
@media(prefers-reduced-motion:reduce){.section-canvas>div{display:none}}
@media(prefers-contrast:more),(prefers-reduced-transparency:reduce){.section-backdrop{display:none}.gradient-portfolio{background:#fafbf8}.gradient-approach{background:#292d31}}
@media print{.section-backdrop{display:none}}

/* Independent reading surfaces. Photographs never contain a glass overlay. */
.project-card,.scroll-scenes .project-card{position:relative;top:auto;background:transparent;box-shadow:none;border:0;padding:0;min-width:0}
.project-open,.project-photo,.project-mini-gallery button,.detail-frame,.detail-photo:nth-child(2) .detail-frame,.detail-photo:nth-child(3) .detail-frame,.reel-frame{border-radius:0;clip-path:inset(0)}
.project-photo>img{display:block;width:100%;height:100%;object-fit:cover}.project-open-label{display:none}
.project-summary .project-title{overflow-wrap:anywhere}.project-summary .project-teaser{max-width:100%}
.project-summary{padding:28px 30px;border-radius:20px;border:1px solid #ffffff80;background:linear-gradient(155deg,#ffffff17,#b3b3b30f);box-shadow:inset 0 1px 1px #ffffffa6,inset 1px 0 1px #ffffff4d,inset 0 -1px 1px #ffffff26,0 8px 26px #292d3108;backdrop-filter:blur(10px) saturate(135%);-webkit-backdrop-filter:blur(10px) saturate(135%)}
.glass-chip{border:1px solid #ffffff73;background:linear-gradient(155deg,#ffffff17,#b3b3b30f);box-shadow:inset 0 1px 1px #ffffff99,inset 1px 0 1px #ffffff33,inset 0 -1px 1px #ffffff26;backdrop-filter:blur(6px) saturate(125%);-webkit-backdrop-filter:blur(6px) saturate(125%)}
.project-index a{padding:9px 14px;border-radius:32px;text-decoration:none;min-height:38px;color:var(--graphite)}.portfolio-toolbar{align-items:center}.portfolio-toolbar>p{padding:10px 16px;border-radius:32px;background:linear-gradient(155deg,#ffffff17,#b3b3b30f);border:1px solid #ffffff73;box-shadow:inset 0 1px 1px #ffffff99;white-space:nowrap}
.reel-copy{padding:24px;border-radius:18px;margin-top:18px}.detail-photo>span{padding:11px 14px;border-radius:28px;border:1px solid #ffffff73;background:linear-gradient(155deg,#ffffff17,#b3b3b30f);box-shadow:inset 0 1px 1px #ffffff99;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.topbar.over-light{background:linear-gradient(155deg,#ffffff26,#b3b3b317);border-color:#ffffff99;backdrop-filter:blur(16px) saturate(135%);-webkit-backdrop-filter:blur(16px) saturate(135%)}
.approach-details .step{padding:0;display:grid;place-items:center;flex:0 0 32px;height:32px;border:1px solid #ffffff40;border-radius:50%;color:white;background:linear-gradient(155deg,#ffffff17,#b3b3b30f);box-shadow:inset 0 1px 1px #ffffff73;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
@media(prefers-contrast:more),(prefers-reduced-transparency:reduce){.project-summary,.reel-copy,.project-index a,.detail-photo>span{background:#fafbf8;backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(min-width:701px) and (max-width:1000px){.project-card,.project-card:nth-child(even){grid-template-columns:minmax(0,1fr);grid-template-rows:auto;gap:20px}.project-card .project-open,.project-card:nth-child(even) .project-open{grid-column:1;grid-row:1}.project-card .project-mini-gallery,.project-card:nth-child(even) .project-mini-gallery{grid-column:1;grid-row:2}.project-card .project-summary,.project-card:nth-child(even) .project-summary{grid-column:1;grid-row:3}.project-photo{aspect-ratio:3/2}.project-summary .project-title{font-size:clamp(38px,5vw,48px)}}
