.cinema{background:#231a26;color:#fff8f1;--cinema-script:'Carattere',cursive}
.cinema-intro{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:145px 20px 65px;background:radial-gradient(ellipse at 50% 65%,#503247 0%,#2d2030 50%,#231a26 80%)}
.cinema-cross{display:block;position:relative;width:18px;height:27px;margin:0 auto 24px;opacity:.55}.cinema-cross:before,.cinema-cross:after{content:'';position:absolute;background:#f3e8dd}.cinema-cross:before{width:1px;height:27px;left:8px}.cinema-cross:after{height:1px;width:18px;top:9px;left:0}
.cinema-eyebrow{font-size:10px;letter-spacing:.2em;text-transform:uppercase}.cinema-intro h1{font-family:var(--cinema-script);font-weight:400;font-size:clamp(100px,14vw,210px);line-height:.82;letter-spacing:-.04em;margin:40px 0 35px}.cinema-intro h1 em{font-style:normal;color:#d9c8ee}.cinema-tagline{font-size:15px;line-height:1.8;max-width:300px;color:#e3d5df}.cinema-discover{font-size:11px;letter-spacing:.13em;margin-top:30px;padding:12px;color:#ebc7dc}.cinema-shortcuts{display:flex;align-items:center;gap:16px;font-size:13px;color:#e3d5df;margin-top:15px}.cinema-shortcuts a{padding:8px 0;border-bottom:1px solid #b999ac}
.cinema-journey{position:relative;scroll-margin-top:0}.cinema-journey.is-animated{height:2270svh}.cinema-stage{position:sticky;top:0;height:100svh;overflow:clip;contain:paint;isolation:isolate;background:#201724}.cinema-mosaic{position:absolute;left:50%;top:50%;display:flex;gap:22px;width:max-content;transform:translate(-50%,-50%) rotate(-30deg);--tile:clamp(600px,72vw,1160px)}.cinema-column{width:var(--tile);display:flex;flex-direction:column;gap:22px;will-change:transform}.cinema-tile{height:var(--tile);flex:none;position:relative;overflow:hidden;background:#392c39}.cinema-tile img{position:absolute;width:100%;height:100%;object-fit:contain;display:block}.cinema-tile .cinema-backdrop{object-fit:cover;filter:blur(18px) brightness(.55);transform:scale(1.1)}.cinema-tile .cinema-photo{z-index:1}
.cinema-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#21162685 0%,#21162625 35%,#21162625 50%,#211626a8 78%,#211626e0 100%)}.cinema-caption{position:absolute;z-index:3;width:80%;left:8%;bottom:16%;text-align:left;will-change:transform,opacity;text-shadow:0 2px 24px #1c101b88}.cinema-caption h2{font-family:var(--cinema-script);font-size:clamp(66px,8vw,124px);line-height:1.16;font-weight:400;letter-spacing:0;white-space:pre-line;overflow-wrap:break-word}.cinema-name{letter-spacing:.015em}.cinema-caption p{font-size:16px;line-height:1.65;margin:24px 0 0;max-width:400px;color:#f2e8ed;white-space:pre-line}.cinema-accent{color:#d9c8ee}.cinema-caption[data-station="2"] .cinema-accent,.cinema-caption[data-station="4"] .cinema-accent,.cinema-caption[data-station="6"] .cinema-accent{color:#efc5d6}
.cinema-caption[data-station="2"]{left:auto;right:7%;width:69%;bottom:14%;text-align:right}.cinema-caption[data-station="2"] p,.cinema-caption[data-station="5"] p{margin-left:auto}.cinema-caption[data-station="3"]{left:7%;width:76%;top:17%;bottom:auto}.cinema-caption[data-station="4"]{left:7%;width:72%;bottom:19%}.cinema-caption[data-station="5"]{left:auto;right:7%;width:72%;top:17%;bottom:auto;text-align:right}.cinema-caption[data-station="6"]{left:10%;width:80%;bottom:16%;text-align:center}.cinema-caption[data-station="6"] p{margin-inline:auto}
.cinema-corner-cross{position:absolute;bottom:20%;left:4%;opacity:.25}.cinema-status{position:absolute;z-index:5;bottom:28px;left:4%;right:4%;display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:.08em}.cinema-status a{padding:12px 0}.cinema-steps{display:flex;gap:7px}.cinema-steps button{border:0;background:none;color:inherit;min-width:38px;min-height:44px;position:relative;font-size:11px;opacity:.6}.cinema-steps button[aria-current=true]{opacity:1}.cinema-steps button[aria-current=true]:after{content:'';position:absolute;bottom:0;left:8px;right:8px;height:1px;background:#f2e4e8}.cinema-progress{position:absolute;bottom:0;inset-inline:0;height:2px;background:#ffffff15}.cinema-progress i{display:block;background:#cba0b8;width:100%;height:100%;transform-origin:left}.cinema-dove{position:absolute;top:0;left:0;width:100px;height:75px;fill:#fffdf7;filter:drop-shadow(0 3px 5px #20152222);will-change:transform;opacity:0}.cinema-dove .wing{transform-origin:80px 72px}.cinema-dove .wing-back{transform-origin:83px 68px}.cinema-doves{pointer-events:none}
.cinema-controls{padding:15px 5%;text-align:right;background:#231a26}.cinema-controls button{font-size:13px;color:#edcddd;border:1px solid #b999ac;background:transparent;padding:10px 16px;border-radius:2px}.cinema a:focus-visible,.cinema button:focus-visible{outline-color:#edcddd}
.cinema-fallback{padding:40px 7% 80px;max-width:1300px;margin:auto}.cinema-moment{margin-bottom:65px;scroll-margin-top:140px}.cinema-moment img{max-height:75svh;object-fit:contain}.cinema-moment>div{padding:32px 0;max-width:720px}.cinema-moment h2{font-family:var(--cinema-script);font-size:clamp(48px,6vw,85px);white-space:pre-line;letter-spacing:0;line-height:1.15}.cinema-moment p{margin-top:22px;white-space:pre-line;line-height:1.8}
@media(max-width:700px){.cinema-intro{padding:150px 20px 55px}.cinema-intro h1{font-size:clamp(85px,23vw,155px);margin:45px 0 35px}.cinema-tagline{font-size:14px}.cinema-mosaic{--tile:124vw;gap:16px;transform:translate(-50%,-50%) rotate(-23deg)}.cinema-column{gap:16px}.cinema-dove{width:70px;height:52px}.cinema-caption,.cinema-caption[data-station]{width:86%;left:7%;right:auto;top:auto;bottom:18%}.cinema-caption h2{font-size:clamp(47px,13.5vw,80px)}.cinema-caption[data-station="2"]{bottom:16%;text-align:right}.cinema-caption[data-station="3"]{top:20%;bottom:auto}.cinema-caption[data-station="4"]{bottom:24%}.cinema-caption[data-station="5"]{top:20%;bottom:auto;text-align:right}.cinema-caption[data-station="6"]{bottom:18%;text-align:center}.cinema-caption p{max-width:280px;font-size:14px;margin-top:20px}.cinema-status{bottom:20px;left:5%;right:5%;font-size:10px;gap:8px;flex-wrap:wrap}.cinema-steps{gap:0}.cinema-steps button{min-width:32px}.cinema-status>a{font-size:11px}.cinema-corner-cross{bottom:12%;left:7%;transform:scale(.7)}}
@media(prefers-reduced-motion:reduce){.cinema-journey.is-animated{height:auto}.cinema-stage{display:none}.cinema-fallback[hidden]{display:block!important}}
.cinema-mosaic{height:var(--tile);pointer-events:none}
/* One continuous photo stage beneath the title and the entire journey. */
.cinema.is-seamless .cinema-intro{position:relative;z-index:6;background:transparent;opacity:var(--intro-opacity,1);text-shadow:0 2px 24px #160e1c88}
.cinema.is-seamless .cinema-journey{margin-top:calc(-1 * var(--intro-height));height:calc(2370svh + var(--intro-height))}
.cinema.is-seamless .cinema-stage:after{content:'';position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(ellipse at 50% 65%,#503247 0%,#2d2030 50%,#231a26 80%);opacity:var(--intro-veil,.86)}
.cinema.is-seamless .cinema-status,.cinema.is-seamless .cinema-corner-cross,.cinema.is-seamless .cinema-progress{opacity:var(--journey-reveal,0)}

/* A full viewport of feathered paper follows the final photo before the biography. */
.cinema.is-seamless .cinema-journey:after{content:'';position:absolute;z-index:7;bottom:-2px;inset-inline:0;height:calc(100svh + 2px);pointer-events:none;background:linear-gradient(to bottom,transparent 0%,rgba(245,240,234,.08) 15%,rgba(245,240,234,.32) 35%,rgba(245,240,234,.72) 60%,var(--paper) 90%)}
.cinema-controls{background:linear-gradient(to bottom,#231a26,var(--paper) 85%);padding-top:140px;color:var(--ink)}
.cinema.is-seamless .cinema-controls{background:var(--paper);padding-top:15px}
.cinema-controls button{color:var(--wine);border-color:var(--line)}
.cinema-controls button:focus-visible{outline-color:var(--wine)}
/* The quiet view keeps the same six texts and shows every photograph once. */
.cinema-moment>.cinema-fallback-photos{max-width:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:center}
.cinema-photo-source{margin:0;min-width:0}.cinema-photo-source img{width:100%;height:auto;max-height:75svh;object-fit:contain}
@media(max-width:700px){.cinema-moment>.cinema-fallback-photos{grid-template-columns:1fr;gap:20px}}
