/* V8: quieter violet accents, complete photographs, clear routes through the work. */
:root{--accent:#ab8bdb;--accent-deep:#4e286e;--acid:#ab8bdb;--green:#ab8bdb}
::selection{background:#654187;color:#fff}
.opening h1 em{color:#a58ac8}.reading-progress span{background:#8d64b8!important}
.pill-button:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #c5a3f2;outline-offset:5px}
[hidden]{display:none!important}
.back-bar{display:flex;align-items:center;justify-content:space-between;margin:112px 6vw 0;gap:20px;font-size:12px}
.back-bar .pill-button{min-height:42px;padding:9px 20px}.back-bar+ .page-hero{padding-top:50px}
.page-prose a{color:#c5a3f2;text-decoration:underline;text-underline-offset:4px}
.detail-page .page-hero-media .media-link,.detail-page .page-gallery .media-link{height:auto;aspect-ratio:auto}
.detail-page .page-hero-media img,.detail-page .page-gallery img{height:auto;max-height:78vh;width:100%;object-fit:contain;transform:none!important}
.detail-page .page-gallery{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:28px}
.detail-page .page-gallery .page-media:nth-child(n){grid-column:auto;margin:0;padding:0;transform:none}
.hero-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:60px}
.hero-pair img{width:100%;height:auto;object-fit:contain;transform:none!important}.hero-pair .media-link{aspect-ratio:auto}
.hero-pair .page-media{min-width:0}.hero-pair figcaption{font-size:11px}
.production-shelf{row-gap:48px}.detail-posters{margin:45px 0 65px}
.detail-posters .production-card img{height:22vw;max-height:300px}.production-card .credit-role{min-height:3.2em}
.company-wall{margin-top:50px;padding-top:35px;border-top:1px solid #ffffff26}
.company-logos{display:grid;grid-template-columns:repeat(4,1fr);gap:16px 30px;align-items:center;margin:30px 0}
.company-logos a{height:100px;display:flex;align-items:center;justify-content:center;padding:20px;opacity:.65;transition:opacity .25s,transform .25s}
.company-logos a:hover{opacity:1;transform:translateY(-4px)}
.company-logos img{max-width:100%;max-height:58px;width:auto;height:auto;object-fit:contain;filter:grayscale(1) brightness(0) invert(1)}
.company-note{max-width:600px;font-size:11px;line-height:1.8;color:#98949e}
.more-films{margin:0 6vw 70px;display:flex;flex-direction:column;align-items:center;gap:22px;font-size:12px;color:#a9a3b1}
[data-films-sentinel]{display:block;width:1px;height:1px}
.catalog-grid:not(.catalog-stills) .page-media img{object-fit:contain;transform:none!important;background:#080809}
.catalog-grid:not(.catalog-stills) .media-link{aspect-ratio:2.05;height:auto}
.catalog-grid:not(.catalog-stills) .media-link img{width:100%;height:100%}
.camera-picks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 22px;margin-top:35px}
.camera-pick{display:block;min-width:0}.camera-pick>div{position:relative;overflow:hidden;background:#171419}
.camera-pick img{width:100%;height:auto;display:block}.camera-pick>div>span{position:absolute;right:14px;bottom:14px;background:#131016c9;border:1px solid #ffffff70;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;font-size:20px;transition:background .2s}
.camera-pick:hover>div>span{background:#654187}.camera-pick h3{font-size:12px;font-weight:500;margin-top:13px;display:flex;justify-content:space-between;gap:12px;line-height:1.5}.camera-pick p{font-size:10px!important;color:#a49aac;margin-top:7px}
.comparison-dialog{position:fixed;inset:0;margin:auto;width:min(1100px,94vw);max-width:94vw;max-height:94svh;padding:24px;background:#151218;color:#f0ecf3;border:1px solid #7a628f;overflow:auto;border-radius:6px}
.comparison-dialog::backdrop{background:#08060be8;backdrop-filter:blur(9px)}.comparison-open{overflow:hidden}
.comparison-dialog header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px;position:static}
.comparison-dialog h2{font-size:23px;letter-spacing:-.03em;margin:5px 0 0}.comparison-dialog .eyebrow{font-size:8px}
.comparison-dialog header button{padding:9px 16px;min-height:42px;font-size:11px}
.wipe-stage{position:relative;aspect-ratio:2/1;background:#080609;overflow:hidden;--wipe:50%;touch-action:none;max-height:64svh}
.wipe-stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.wipe-after{clip-path:inset(0 calc(100% - var(--wipe)) 0 0)}
.wipe-handle{position:absolute;left:var(--wipe);inset-block:0;width:2px;background:white;transform:translateX(-1px);pointer-events:none;filter:drop-shadow(0 1px 5px #000)}
.wipe-handle span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;width:46px;height:46px;background:#eee9f3;color:#24172e;display:grid;place-items:center;font-size:24px;box-shadow:0 0 0 4px #ffffff24}
.wipe-stage input[type=range]{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:ew-resize;touch-action:none;z-index:3}
.wipe-stage:focus-within{outline:2px solid #c5a3f2;outline-offset:3px}.wipe-labels{display:flex;justify-content:space-between;gap:16px;font-size:9px;letter-spacing:.08em;margin:16px 0}
.comparison-dialog>p{font-size:11px;color:#a79bae}.comparison-dialog .camera-source-links{font-size:11px;display:flex;gap:24px;flex-wrap:wrap;margin-top:18px}
.study-video{aspect-ratio:16/9;background:#08080a}.study-video button{width:100%;height:100%;position:relative}.study-video img{width:100%;height:100%;object-fit:contain}.study-video iframe{width:100%;height:100%;border:0}
.study-behind .page-gallery{margin:28px 0 35px}.study-download{flex-wrap:wrap;gap:16px}.study-download .pill-button{font-size:11px}
.travel-section{margin-top:90px;padding-top:45px;border-top:1px solid #ffffff26}
.travel-section h2{font-family:var(--heading);font-size:clamp(42px,5.5vw,86px);font-weight:400;line-height:1.04;letter-spacing:-.06em;margin:24px 0 40px}.travel-section h2 em{font-family:Georgia,serif;font-weight:400}
.map-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.map-toolbar>div{display:flex;gap:10px}.map-toolbar .pill-button{min-height:40px;padding:10px 16px;font-size:11px}.map-toolbar button[aria-pressed=true]{background:#4e286e;border-color:#9871c0}
.map-toolbar p{font-size:10px;display:flex;align-items:center;gap:9px}.onset-dot,.remote-dot{width:7px;height:7px;display:inline-block;border-radius:50%;background:#bf9be5}.remote-dot{background:transparent;border:1px solid #eee}
.travel-map{background:radial-gradient(ellipse at 54% 35%,#251930,#121014 68%);border:1px solid #ffffff15;border-radius:4px;overflow:hidden}
.travel-map svg{display:block;width:100%;aspect-ratio:2/1}.map-land{fill:#2d2533;stroke:#66566f;stroke-width:.5;vector-effect:non-scaling-stroke}
.map-pin{cursor:pointer;outline:none}.pin-hit{fill:transparent}.pin-ring{fill:#ae80d62d;stroke:#c29ae4;stroke-width:.7}.pin-core{fill:#cba8ea}.remote .pin-ring{fill:#ddd1eb12;stroke:#eee}.remote .pin-core{fill:#eee}.collaboration .pin-ring{stroke-dasharray:2 1}.map-pin[aria-pressed=true] .pin-ring,.map-pin:focus-visible .pin-ring{stroke:#fff;stroke-width:1.5;fill:#b880ed80}
.map-pin .pin-core{transform-box:fill-box;transform-origin:center;opacity:0}.pins-arrived .map-pin .pin-core{animation:pin-drop .7s cubic-bezier(.2,.8,.3,1) var(--delay) both}.map-pin .pin-ring{opacity:0}.pins-arrived .pin-ring{animation:pin-ring .8s ease calc(var(--delay) + .1s) both}
@keyframes pin-drop{from{opacity:0;transform:translateY(-20px) scale(.6)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes pin-ring{from{opacity:0}to{opacity:1}}
.map-selected{font-family:Georgia,serif;font-size:23px!important;min-height:2em;margin:24px 0;color:#dccbea}
.places-list{display:grid;grid-template-columns:1fr 1fr;gap:25px 50px}.places-list h3{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#a294ad;margin-bottom:12px}.places-list button{font-size:12px;padding:8px 0;margin-right:18px;color:#b6adb9;border-bottom:1px solid transparent;background:none}.places-list button[aria-pressed=true],.places-list button:hover{color:white;border-color:#bc96df}.map-note{font-size:9px!important;color:#796d82;margin-top:25px}
.page-about .page-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.page-about .page-gallery img{max-height:340px}
.page-handle .page-section{border-top:1px solid #ffffff20;padding-top:35px}.page-handle .page-section h2{font-size:clamp(23px,3vw,40px)}
.page-related .resource-list{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:799px){.back-bar{margin-top:92px}.back-bar+.page-hero{padding-top:38px}.hero-pair{grid-template-columns:1fr;margin-top:35px}.hero-pair .page-media:nth-child(2){display:none}.detail-page .page-gallery{gap:24px 16px}.page-about .page-gallery{grid-template-columns:1fr 1fr}.company-logos{grid-template-columns:repeat(3,1fr);gap:15px}.company-logos a{padding:10px;height:75px}.company-logos img{max-height:42px}.company-note{font-size:10px}.production-shelf{row-gap:30px}.detail-posters .production-card img{height:37vw}.camera-picks{grid-template-columns:1fr 1fr;gap:25px 14px}.camera-pick h3{font-size:10px}.camera-pick>div>span{width:30px;height:30px;font-size:17px;bottom:7px;right:7px}.comparison-dialog{padding:15px}.comparison-dialog h2{font-size:16px}.comparison-dialog header{gap:12px}.comparison-dialog .wipe-labels{font-size:8px}.wipe-handle span{width:36px;height:36px;font-size:20px}.travel-section{margin-top:60px}.map-toolbar{align-items:flex-start;flex-direction:column;gap:14px}.map-selected{font-size:18px!important}.places-list{grid-template-columns:1fr}.places-list button{font-size:11px}.travel-map svg{aspect-ratio:1.55}.study-download{display:flex;flex-direction:column;align-items:flex-start}.page-related .resource-list{grid-template-columns:1fr}.company-wall{margin-top:25px}}
@media(prefers-reduced-motion:reduce){.map-pin .pin-core,.map-pin .pin-ring{animation:none!important;opacity:1;transform:none}.company-logos a{transition:none}}
.motion-off .map-pin .pin-core,.motion-off .map-pin .pin-ring{animation:none!important;opacity:1;transform:none}

.company-logos img[src*=logo-rtl]{filter:grayscale(1);mix-blend-mode:screen}.map-toolbar button[aria-pressed=true]{color:#fff}.map-land path,.pin-ring{vector-effect:non-scaling-stroke}.travel-map svg[data-view=europe] .pin-ring{r:1.6px}.travel-map svg[data-view=europe] .pin-core{r:.8px}.travel-map svg[data-view=europe] .pin-hit{r:3px}.back-bar{position:sticky;top:96px;z-index:45;pointer-events:none}.back-bar a{pointer-events:auto;background:#151218ed;backdrop-filter:blur(10px)}.back-bar>a:last-child{padding:10px 14px;border-radius:30px}.page-hero h1 em{color:#c5b4d4}@media(max-width:799px){.back-bar{top:82px}.company-logos{grid-template-columns:repeat(2,1fr)}}

@media(min-width:1100px){.company-logos{grid-template-columns:repeat(5,1fr)}}
.company-logos img[src*=logo-netflix]{max-height:85px;width:180px}.camera-pick[aria-busy=true]{cursor:progress}.video-external{font-size:11px;margin-top:14px;color:#bba5ce}

.page-about .page-gallery:not(:has(>.page-media:nth-child(3))){grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:799px){.travel-map svg[data-view=europe] .pin-ring{r:2.8px}.travel-map svg[data-view=europe] .pin-core{r:1.4px}.travel-map svg[data-view=europe] .pin-hit{r:6px}}
