/* Sophea's supplied portraits and films, alongside the seven-enabler palette. */
.hero{background:linear-gradient(110deg,#f6fcff 5%,#f5faff 46%,#fff8fc 100%)}
.hero-visual{width:59%;background:#fff}
.hero-art{object-position:53% 38%}
.art-fade{background:linear-gradient(90deg,#f2faff 0%,#f2faffdd 8%,#f2faff00 32%),linear-gradient(0deg,#f4faff 0%,#f4faff00 14%)}
.hero .orbit{display:none}
.hero .note-one{top:27px;right:30px}
.hero .note-two{right:30px;bottom:85px}
.watch-section{background:radial-gradient(ellipse at 90% 0%,#651c6250,transparent 55%),linear-gradient(135deg,#08183f,#140d2e 75%,#321334);color:white;position:relative;overflow:hidden}
.watch-section:before{content:'';position:absolute;left:0;top:0;right:0;height:3px;background:linear-gradient(90deg,#16c8ec,#6e29ec,#eb0a89,#ff8a28,#03ad87,#0f70fc)}
.watch-section .eyebrow{color:#f899d6}
.watch-section h2 span{color:#f277c2}
.watch-section .section-top>p{color:#c4bcd5}
.film-grid{display:grid;grid-template-columns:minmax(0,1.24fr) minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:stretch}
.film-card{min-width:0;width:100%;padding:0;position:relative;overflow:hidden;border-radius:16px;aspect-ratio:3/4;background:#271830;color:white;text-align:left;isolation:isolate;border:1px solid #ffffff24;transition:transform .25s,box-shadow .25s}
.film-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px #0004}
.film-card img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .5s}
.film-card:hover img{transform:scale(1.035)}
.film-card:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#100a2380 0%,#0a072000 35%,#1009234d 60%,#09081de8 100%);z-index:0;pointer-events:none}
.film-topline{position:absolute;top:22px;left:22px;right:22px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:9px;font-weight:700;letter-spacing:1.6px;z-index:1}
.film-duration{font-size:9px;letter-spacing:.8px;background:#0a071b55;backdrop-filter:blur(6px);border:1px solid #ffffff50;padding:5px 8px;border-radius:5px}
.film-duration:empty{display:none}
.film-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60px;height:60px;border:1px solid #ffffffb0;display:flex;justify-content:center;align-items:center;border-radius:50%;background:#ffffff20;backdrop-filter:blur(8px);z-index:1;transition:background .2s,box-shadow .2s}
.film-play svg{height:22px;width:22px;fill:white;stroke-width:1;margin-left:3px}
.film-card:hover .film-play{background:#e9097dcc;box-shadow:0 0 0 9px #fa76ca20}
.film-bottom{position:absolute;left:22px;right:22px;bottom:24px;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;z-index:1}
.film-bottom small{color:#ffd8f0;font-size:8px;letter-spacing:1.5px;font-weight:600;margin-bottom:8px}
.film-bottom strong{display:block;font:750 25px var(--display);letter-spacing:-.8px}
.film-action{display:flex;align-items:center;gap:8px;font-size:9px;white-space:nowrap;padding-bottom:3px;color:#eee5f7}
.film-action svg{width:14px;height:14px}
.watch-note{display:flex;justify-content:center;align-items:center;gap:8px;font-size:10px;color:#b8b1ca;margin-top:28px}
.watch-note svg{width:12px;height:12px}
.portrait-section .section-top{align-items:center;margin-bottom:34px}
.portrait-section .section-top>p{max-width:350px}
.portrait-gallery{display:grid;grid-template-columns:1fr 1fr 1.1fr 1fr 1fr;gap:13px}
.portrait-card{padding:0;position:relative;overflow:hidden;aspect-ratio:2/3;border-radius:12px;background:#fce9f4;text-align:left;border:1px solid #ebe2ed;transition:transform .25s,box-shadow .25s}
.portrait-card:nth-child(even){margin-top:27px;margin-bottom:-27px}
.portrait-card img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;transition:transform .5s}
.portrait-card:nth-child(3) img{object-position:52% 20%}
.portrait-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #82114d16}
.portrait-card:hover img{transform:scale(1.04)}
.portrait-card>span{position:absolute;bottom:0;left:0;right:0;padding:34px 13px 16px;background:linear-gradient(transparent,#16051dbd);color:white;font-size:10px;font-weight:600;display:flex;gap:6px;justify-content:space-between;align-items:center}
.portrait-card>span svg{height:14px;width:14px}
.gallery-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:55px;font-size:10px;color:#6c7890}
.gallery-footer>span{display:flex;align-items:center;gap:8px}
.gallery-footer svg{width:15px;height:15px}
.gallery-footer a{color:var(--pink);font-size:11px}
.media-dialog{width:min(1000px,calc(100vw - 30px));max-height:93dvh;background:#080b18;overflow:auto}
.media-dialog .dialog-header,.portrait-dialog .dialog-header{position:sticky;top:0}
.film-player-wrap{background:#080b18;display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:200px}
#film-player{display:block;width:100%;height:min(68dvh,650px);object-fit:contain;background:#080b18}
#film-error{padding:20px 25px;color:white;font-size:13px;text-align:center}
#film-error[hidden]{display:none}
#film-error a{color:#9fddff;text-decoration:underline}
.film-dialog-footer{background:#fff;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 24px;border-top:1px solid var(--line)}
.film-dialog-footer>span{font-size:11px;color:#64738b;letter-spacing:1px}
.film-dialog-footer>div{display:flex;gap:10px}
.film-dialog-footer .icon-button{width:34px;height:34px}
.film-dialog-footer svg{width:16px;height:16px}
.portrait-dialog{width:min(760px,calc(100vw - 28px));max-height:93dvh;background:#080b18}
.portrait-viewer{display:flex;justify-content:center;align-items:center;background:#090b17}
.portrait-viewer img{width:100%;height:min(70dvh,820px);object-fit:contain}
.motion-paused .film-card,.motion-paused .film-card img,.motion-paused .portrait-card,.motion-paused .portrait-card img{transition:none}
@media(max-width:1100px){.film-grid{gap:14px}.film-topline{top:18px;left:18px;right:18px}.film-bottom{left:18px;right:18px;bottom:20px;display:block}.film-bottom strong{font-size:23px}.film-action{margin-top:12px}.portrait-gallery{gap:10px}.portrait-card>span{font-size:9px;padding-inline:10px}.hero-visual{width:60%}}
@media(max-width:850px){.hero-visual{width:61%;opacity:1}.hero .note-one{right:20px}.hero .note-two{right:20px;bottom:65px}.film-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.film-card{aspect-ratio:2/3}.film-topline{font-size:7px;left:13px;right:13px;top:15px;letter-spacing:1px}.film-duration{font-size:8px;padding:4px 6px}.film-play{height:48px;width:48px}.film-bottom{left:13px;right:13px;bottom:18px}.film-bottom strong{font-size:20px}.film-bottom small{font-size:7px;letter-spacing:1px}.film-action{font-size:8px}.portrait-gallery{display:flex;overflow-x:auto;gap:13px;scroll-snap-type:x proximity;padding:5px 2px 17px;scrollbar-width:thin;scrollbar-color:#dca8c9 transparent}.portrait-card{flex:0 0 185px;scroll-snap-align:start}.portrait-card:nth-child(even){margin:0}.gallery-footer{margin-top:18px}.portrait-section .section-top{align-items:flex-start}}
@media(max-width:600px){.hero-visual{width:100%;height:475px}.hero-art{object-position:50% 25%}.art-fade{background:linear-gradient(180deg,#f2faff 0%,#f2faff00 18%),linear-gradient(0deg,#f2faff,transparent 12%)}.hero .note-two{left:23px;right:auto;bottom:65px}.hero .note-one{display:none}.film-grid{grid-template-columns:1fr;gap:18px}.film-card{aspect-ratio:16/10}.film-card img{object-position:center 27%}.film-feature{aspect-ratio:4/3}.film-topline{left:20px;right:20px;top:18px;font-size:8px}.film-duration{font-size:9px;padding:5px 8px}.film-play{height:52px;width:52px}.film-bottom{display:flex;align-items:flex-end;left:20px;right:20px;bottom:20px}.film-bottom strong{font-size:25px}.film-bottom small{font-size:7px}.film-action{font-size:9px}.watch-note{font-size:9px;line-height:1.8;align-items:flex-start;text-align:center;margin-top:22px}.watch-note>i{margin-top:3px}.portrait-card{flex-basis:65vw;max-width:260px}.portrait-card>span{font-size:11px;padding:40px 17px 18px}.gallery-footer{align-items:flex-start;flex-direction:column;gap:18px;font-size:9px}.gallery-footer a{font-size:11px}.media-dialog,.portrait-dialog{width:calc(100vw - 20px);max-height:94dvh;border-radius:13px}.film-player-wrap{min-height:170px}#film-player{height:62dvh}.portrait-viewer img{height:65dvh}.film-dialog-footer{padding:12px 18px}}
@media(prefers-reduced-motion:reduce){.film-card,.film-card img,.portrait-card,.portrait-card img{transition:none}}
