/* Approved cinematic review R29, layered onto the real application controls. */
body[data-cinematic-section]{background:#080c12;color:#e8ece9}body[data-cinematic-section] main{max-width:none}
.cinematic-hero{position:relative;isolation:isolate;overflow:hidden;min-height:500px;display:flex;align-items:center;border-bottom:1px solid #a8bcc333;background:#080c12;margin:0 calc(-1 * var(--unused,0px));color:#e8ece9}
.cinematic-hero .cinematic-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2;max-width:none}
.cinematic-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#080c12e0, #080c1280 38%,transparent 80%),linear-gradient(0deg,#080c1288,transparent 35%);pointer-events:none}
.cinematic-copy{padding:65px 5vw;max-width:900px;position:relative;z-index:2}.cinematic-copy .cinematic-eyebrow{font:10px Arial,sans-serif;letter-spacing:.21em;color:var(--cinematic-accent);text-transform:uppercase}.cinematic-copy h1{font-family:var(--cinematic-font),Georgia,serif!important;font-size:clamp(40px,5vw,86px)!important;line-height:1.08!important;font-weight:500;color:#e8ece9!important;letter-spacing:.01em;margin:20px 0;text-shadow:0 2px 20px #0008;overflow-wrap:normal}.cinematic-copy>p:not(.cinematic-eyebrow){font:17px/1.7 Arial,sans-serif;color:#c0cbd0;max-width:600px}.cinematic-explore{margin-top:16px;background:var(--cinematic-accent);color:#081015;border:0;padding:14px 19px;font:bold 11px Arial,sans-serif;letter-spacing:.1em;cursor:pointer}
.cinematic-original-head{min-height:0!important;background:transparent!important;box-shadow:none!important;border-top:0!important;padding-top:28px!important;padding-bottom:28px!important}.cinematic-original-head:after{display:none!important}.cinematic-original-head [hidden]{display:none!important}
.cinematic-cosmic{text-align:center;justify-content:center;min-height:550px}.cinematic-cosmic:after{background:linear-gradient(0deg,#080c12,#080c1270 60%,#080c1255)}.cinematic-cosmic .cinematic-copy{max-width:1000px}.cinematic-cosmic .cinematic-copy>p{margin-inline:auto}.cinematic-timeline{min-height:265px}.cinematic-timeline .cinematic-copy{padding-block:36px}.cinematic-timeline .cinematic-cover{opacity:.35}.cinematic-places{min-height:540px}
.cinematic-montage{position:absolute;inset:0;z-index:-2;overflow:hidden}.cinematic-montage img{position:absolute;top:0;height:100%;object-fit:cover;max-width:none}.compare-montage img:first-child{left:-5%;width:65%;object-position:64% 18%}.compare-montage img:last-child{left:45%;width:60%;object-position:47% 12%;mask-image:url('/assets/cinematic-r29/compare-mask.svg');mask-size:100% 100%;-webkit-mask-image:url('/assets/cinematic-r29/compare-mask.svg');-webkit-mask-size:100% 100%}.gallery-montage img{left:calc(var(--panel)*14.2857% - 7%);width:29%;object-position:center 14%;mask-image:url('/assets/cinematic-r29/gallery-mask.svg');mask-size:100% 100%;-webkit-mask-image:url('/assets/cinematic-r29/gallery-mask.svg');-webkit-mask-size:100% 100%}.gallery-montage img:first-child{mask-image:none;-webkit-mask-image:none}.gallery-montage img:nth-child(2){object-position:64% 16%}.gallery-montage img:nth-child(3){object-position:50% 10%}
.cinematic-compare .cinematic-copy,.cinematic-gallery .cinematic-copy,.cinematic-guides .cinematic-copy{padding-top:235px;padding-bottom:35px}.cinematic-compare:after,.cinematic-gallery:after,.cinematic-guides:after{background:linear-gradient(0deg,#080c12ed,#080c1288 30%,transparent 72%)}.cinematic-rival-overlay{position:absolute;right:0;top:0;width:50%;height:100%;object-fit:cover;object-position:50% 12%;z-index:-2;mask-image:linear-gradient(110deg,transparent,#000 40%)}
.cinematic-guide-cards,.cinematic-law-pillars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:21px;margin:24px 0 40px}.cinematic-law-pillars{grid-template-columns:repeat(3,minmax(0,1fr))}.cinematic-guide-cards a,.cinematic-law-pillars a{display:block;overflow:hidden;border:1px solid #b3a07870;background:#101820;text-decoration:none;color:#eee}.cinematic-guide-cards img,.cinematic-law-pillars img{display:block;width:100%;aspect-ratio:2/1;object-fit:cover}.cinematic-guide-cards span,.cinematic-law-pillars span{display:block;padding:18px;font:26px/1.2 Georgia,serif}
body[data-cinematic-section] .cinematic-tile-image{object-fit:cover;width:100%}body[data-cinematic-section=archive].hub-body .card{border-radius:0;border-color:color-mix(in srgb,var(--accent),transparent 40%)}body[data-cinematic-section=archive].hub-body{--section-primary:#a7d88d;--section-secondary:#78a97e}body[data-cinematic-section=vault] .file{border:3px double #a4c4e477;border-radius:0;box-shadow:none}body[data-cinematic-section=cosmic] .entity{border-radius:50px 50px 3px 3px}body[data-cinematic-section=gallery] .gallery-card{box-shadow:none;background:transparent}body[data-cinematic-section=guides] .guide-section{border-radius:0;border-top:3px solid #e3cca0}
@media(max-width:680px){.cinematic-hero{min-height:420px}.cinematic-copy{padding:240px 22px 30px!important;width:100%}.cinematic-copy h1{font-size:40px!important}.cinematic-copy>p:not(.cinematic-eyebrow){font-size:15px}.cinematic-hero:after{background:linear-gradient(0deg,#080c12 0%,#080c12b0 40%,transparent 80%)}.cinematic-timeline{min-height:265px}.cinematic-timeline .cinematic-copy{padding-top:35px!important}.cinematic-guide-cards,.cinematic-law-pillars{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cinematic-guide-cards span,.cinematic-law-pillars span{font-size:20px;padding:12px}.cinematic-guide-cards img,.cinematic-law-pillars img{aspect-ratio:3/2}.cinematic-archive .cinematic-cover{object-position:65% center}}

.cinematic-art-frame{position:relative;isolation:isolate;overflow:hidden}.cinematic-art-frame:before{content:"";position:absolute;inset:-8%;z-index:-1;background-image:var(--art-fill);background-size:cover;background-position:center;transform:scaleX(-1);filter:blur(15px) brightness(.4)}.cinematic-art-frame img{position:relative;z-index:1}

/* R29 collection geometry: artwork above copy, separate from profile interiors. */
body[data-cinematic-section=archive].hub-body .grid,
body[data-cinematic-section=vault] .grid,
body[data-cinematic-section=cosmic].hub-page .entity-grid,
body[data-cinematic-section=gallery] .gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:21px}
body[data-cinematic-section=archive].hub-body .card{display:flex;flex-direction:column;grid-template-columns:none;min-height:0;padding:0}
body[data-cinematic-section=archive].hub-body .card .card-art{flex:none;width:100%;height:270px;min-height:0;aspect-ratio:auto;border-right:0;border-bottom:1px solid color-mix(in srgb,var(--accent),transparent 65%)}
body[data-cinematic-section=archive].hub-body .card .card-copy{flex:1;min-height:0;padding:20px;justify-content:flex-start}
body[data-cinematic-section=archive].hub-body .card .card-copy h2{font-size:26px;line-height:1.25;margin:10px 0 15px}
body[data-cinematic-section=archive].hub-body .card .card-meta{flex-wrap:wrap;font-size:10px;gap:6px}
body[data-cinematic-section=archive].hub-body .card .card-copy p{margin:0;padding-right:0}
body[data-cinematic-section=archive].hub-body .card .card-open{position:static;display:block;border-top:1px solid color-mix(in srgb,var(--accent),transparent 70%);padding-top:14px;margin-top:18px;font-size:11px;letter-spacing:.12em;color:var(--accent)}
body[data-cinematic-section=cosmic].hub-page .entity .entity-art{height:310px;min-height:0;aspect-ratio:auto;padding:0}
body[data-cinematic-section=cosmic].hub-page .entity .entity-copy{padding:20px;min-height:0}
body[data-cinematic-section=vault] .vault-item .item-cover{display:block;width:100%;height:auto;aspect-ratio:3/2;padding:0;overflow:hidden;position:relative}
body[data-cinematic-section=vault] .vault-item .item-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
body[data-cinematic-section=places] .grid,body[data-cinematic-section=rivalries] .rival-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:21px}
body[data-cinematic-section=places] .place .cover{height:300px;width:100%;object-fit:cover}
body[data-cinematic-section=rivalries] .rival-card .pair-images{height:270px;aspect-ratio:auto}
body[data-cinematic-section=gallery] .gallery-grid img{height:330px}
body[data-cinematic-section=gallery] .gallery-card:nth-child(even){margin-top:35px}
@media(max-width:1000px) and (min-width:681px){
 body[data-cinematic-section=archive].hub-body .grid,body[data-cinematic-section=vault] .grid,body[data-cinematic-section=cosmic].hub-page .entity-grid,body[data-cinematic-section=gallery] .gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:680px){
 body[data-cinematic-section=archive].hub-body .grid,body[data-cinematic-section=vault] .grid,body[data-cinematic-section=cosmic].hub-page .entity-grid,body[data-cinematic-section=places] .grid,body[data-cinematic-section=rivalries] .rival-grid,body[data-cinematic-section=gallery] .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 body[data-cinematic-section=archive].hub-body .card .card-art,body[data-cinematic-section=cosmic].hub-page .entity .entity-art,body[data-cinematic-section=places] .place .cover,body[data-cinematic-section=rivalries] .rival-card .pair-images,body[data-cinematic-section=gallery] .gallery-grid img{height:190px;min-height:0}
 body[data-cinematic-section=archive].hub-body .card .card-copy,body[data-cinematic-section=cosmic].hub-page .entity .entity-copy{padding:13px}
 body[data-cinematic-section=archive].hub-body .card .card-copy h2{font-size:21px}
}

/* Complete R29 browsing shell. All overrides end when a profile opens. */
body[data-cinematic-section]{background:#080c12!important;background-image:none!important;color:#e8ece9}
body[data-cinematic-section]:before,body[data-cinematic-section]:after,
body[data-cinematic-section] .bifrost,body[data-cinematic-section] .cosmic-backdrop,body[data-cinematic-section]>.backdrop{display:none!important}
body[data-cinematic-section] .unified-nav,body[data-cinematic-section] .site-nav,body[data-cinematic-section] .nav{display:none!important}
body[data-cinematic-section] main{width:auto!important;max-width:none!important;margin:0!important;padding:0 5vw 65px!important;background:none!important;box-sizing:border-box}
body[data-cinematic-section] main:before,body[data-cinematic-section] main:after{display:none!important}
body[data-cinematic-section] .cinematic-masthead,body[data-cinematic-section] .cinematic-hero{width:calc(100% + 10vw);max-width:none;margin-left:-5vw;margin-right:-5vw;box-sizing:border-box}
body[data-cinematic-section] .cinematic-masthead{padding:25px 4vw 0;background:#080d13;border-bottom:1px solid #a7d88d40;position:relative;z-index:5}
.cinematic-brandrow{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:20px}
.cinematic-brand{font:800 17px Arial,sans-serif;letter-spacing:.15em;text-decoration:none;color:#e8ece9}.cinematic-brand span{color:var(--cinematic-accent)}
.cinematic-access{font:10px monospace;letter-spacing:.16em;color:#9bacaa}
.cinematic-navigation{display:flex;gap:22px;overflow-x:auto;scrollbar-width:thin}
.cinematic-navigation a{flex:none;display:block;padding:12px 0 16px;border-bottom:2px solid transparent;font:11px Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase;text-decoration:none;color:#e8ece9;white-space:nowrap}
.cinematic-navigation a[aria-current]{border-color:var(--cinematic-accent);color:var(--cinematic-accent)}
body[data-cinematic-section] .cinematic-original-head{display:block!important;position:relative;min-height:0!important;padding:38px 0 0!important;margin:0!important;border:0!important;background:none!important;box-shadow:none!important;text-align:left!important}
body[data-cinematic-section] .cinematic-original-head:before,body[data-cinematic-section] .cinematic-original-head:after,body[data-cinematic-section] .cinematic-legacy-intro{display:none!important}
.cinematic-collection-heading{margin:0 0 22px}.cinematic-collection-heading>p{font:10px Arial,sans-serif!important;letter-spacing:.21em;color:#a8bda7!important;text-transform:uppercase;margin:0 0 9px!important}
body[data-cinematic-section] .cinematic-collection-heading h2{font-family:var(--cinematic-font,'Archive Condensed'),Georgia,serif;font-size:34px;line-height:1.2;margin:9px 0;color:#e8ece9;letter-spacing:0;text-transform:none}
body[data-cinematic-section] .cinematic-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px;border-block:1px solid #a9bfc444;padding:18px 0;margin:0 0 25px;background:none}
body[data-cinematic-section] .cinematic-toolbar:empty{display:none}
body[data-cinematic-section] .cinematic-toolbar :is(.archive-switch,.continuity-switch,.collection-continuity,.guide-jumps,.tabs,.filters){display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;border:0;background:none}
body[data-cinematic-section] .cinematic-toolbar :is(.search,.vault-search){flex:1;min-width:200px;height:auto;max-width:none;margin:0;padding:0;background:none;border:0;box-shadow:none;display:flex;align-items:center;gap:8px}
body[data-cinematic-section] .cinematic-toolbar :is(input,select){min-width:0;width:100%;padding:12px 14px;background:#121c25;color:#ecf1f0;border:1px solid #a9bfc444;box-shadow:none;font:13px Arial,sans-serif}
body[data-cinematic-section] .cinematic-toolbar :is(button,.archive-switch a,.continuity-switch a,.collection-continuity a,.guide-jumps a){padding:10px 12px;margin:0;border:1px solid #abb9c144;border-radius:0;background:#121b24;color:#e8ece9;font:11px Arial,sans-serif;text-decoration:none;box-shadow:none}
body[data-cinematic-section] .cinematic-toolbar :is([aria-current],.active,[aria-pressed=true]){border-color:#a7d88d;color:#cce5bb}
body[data-cinematic-section] .cinematic-toolbar .filters{flex-basis:100%}
body[data-cinematic-section] .cinematic-toolbar :is(.controls,.toolbar,.gallery-tools,.law-controls){display:flex;flex-wrap:wrap;align-items:center;flex:1;gap:12px;margin:0;padding:0;border:0;background:none}
body[data-cinematic-section] .cinematic-toolbar .controls>p,body[data-cinematic-section] .vault-search>label{display:none}
body[data-cinematic-section] .explorer{padding:0;margin:0;border:0}
body[data-cinematic-section=places] .explore-head{display:none}
body[data-cinematic-section] .cinematic-hero{border-radius:0;min-height:510px}
body[data-cinematic-section] .cinematic-copy{padding:65px 6vw;max-width:900px}
body[data-cinematic-section] .cinematic-copy>p:not(.cinematic-eyebrow){max-width:440px}
body[data-cinematic-section=archive] .cinematic-copy h1{font-size:clamp(44px,6.4vw,98px)!important}
body[data-cinematic-section=cosmic] .cinematic-hero{min-height:550px}
body[data-cinematic-section=timeline] .cinematic-hero{min-height:265px}
body[data-cinematic-section=places] .cinematic-hero{min-height:540px}
body[data-cinematic-section=compare] .cinematic-hero{min-height:390px}
body[data-cinematic-section=compare] .cinematic-copy,body[data-cinematic-section=gallery] .cinematic-copy,body[data-cinematic-section=guides] .cinematic-copy{padding-top:235px;padding-bottom:35px}
@media(max-width:680px){
 body[data-cinematic-section] .cinematic-masthead{padding-top:22px}.cinematic-access{display:none}.cinematic-navigation{gap:18px}.cinematic-brandrow{padding-bottom:15px}
 body[data-cinematic-section] .cinematic-hero{min-height:420px}body[data-cinematic-section=timeline] .cinematic-hero{min-height:265px}
 body[data-cinematic-section] .cinematic-copy{padding:240px 22px 30px!important}
 body[data-cinematic-section=timeline] .cinematic-copy{padding-top:35px!important}
 body[data-cinematic-section=archive] .cinematic-copy h1{font-size:40px!important}
 body[data-cinematic-section] .cinematic-collection-heading h2{font-size:29px}
 body[data-cinematic-section] .cinematic-toolbar :is(.search,.vault-search){flex-basis:100%;min-width:0}
}

body[data-cinematic-section] .cinematic-toolbar .cosmic-controls{flex:1;display:flex;flex-wrap:wrap;gap:12px;margin:0;padding:0;background:none;border:0}body[data-cinematic-section] .cinematic-toolbar .cosmic-controls>label{display:none}body[data-cinematic-section] .cinematic-toolbar .cosmic-filters{display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0}

/* Complete foreground canvas; subdued background fills the surrounding frame. */
body[data-cinematic-section] img.complete-artwork{object-fit:contain!important;object-position:center!important;transform:none!important;filter:none!important;background-color:#080c12;background-image:linear-gradient(#080c12df,#080c12df),var(--art-fill);background-size:cover;background-position:center;image-rendering:auto}
body[data-cinematic-section] .card-art,body[data-cinematic-section] .entity-art{filter:none!important}
body[data-cinematic-section] .card-art:after{pointer-events:none;background:linear-gradient(0deg,#080c1220,transparent 12%)!important}
body[data-cinematic-section] .compare-montage img{object-fit:contain;object-position:center;padding:12px 8%;box-sizing:border-box}
body[data-cinematic-section] .gallery-montage img{object-fit:contain;object-position:center;padding:8px 24px;box-sizing:border-box}
body[data-cinematic-section] .cinematic-rival-overlay{object-fit:contain;object-position:center;padding:12px 5%;box-sizing:border-box}

@media(max-width:680px){body[data-cinematic-section] .gallery-montage img{padding:8px}}

/* Gallery cover: explicit panel rectangles matching approved R29. */
body[data-cinematic-section=gallery] .cinematic-hero .gallery-montage{position:absolute;inset:0;width:100%;height:100%;display:block;overflow:hidden}
body[data-cinematic-section=gallery] .cinematic-hero .gallery-montage img{position:absolute!important;top:0!important;bottom:0!important;width:29%!important;height:100%!important;max-width:none!important;margin:0!important;padding:0!important;object-fit:cover!important;object-position:center 14%;transform:none!important;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat}
body[data-cinematic-section=gallery] .cinematic-hero .gallery-montage img:nth-child(1){left:-7.0%!important}
body[data-cinematic-section=gallery] .cinematic-hero .gallery-montage img:nth-child(2){left:7.285714%!important}
body[data-cinematic-section=gallery] .cinematic-hero .gallery-montage img:nth-child(3){left:21.571429%!important}
body[data-cinematic-section=gallery] .cinematic-hero .gallery-montage img:nth-child(4){left:35.857143%!important}
body[data-cinematic-section=gallery] .cinematic-hero .gallery-montage img:nth-child(5){left:50.142857%!important}
body[data-cinematic-section=gallery] .cinematic-hero .gallery-montage img:nth-child(6){left:64.428571%!important}
body[data-cinematic-section=gallery] .cinematic-hero .gallery-montage img:nth-child(7){left:78.714286%!important}
body[data-cinematic-section=gallery] .cinematic-hero .gallery-montage img:nth-child(1){object-position:62% 12%}body[data-cinematic-section=gallery] .cinematic-hero .gallery-montage img:nth-child(2){object-position:64% 16%}body[data-cinematic-section=gallery] .cinematic-hero .gallery-montage img:nth-child(3){object-position:50% 10%}body[data-cinematic-section=gallery] .cinematic-hero .gallery-montage img:nth-child(6){object-position:50% 8%}

/* Header artwork fills its frame; complete-canvas fitting remains on tiles. */
body:is([data-cinematic-section=archive],[data-cinematic-section=vault],[data-cinematic-section=cosmic],[data-cinematic-section=laws],[data-cinematic-section=timeline],[data-cinematic-section=places]) .cinematic-hero .cinematic-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover!important;object-position:center 25%;padding:0!important;background:none;transform:none}
body[data-cinematic-section=compare] .cinematic-hero .compare-montage img,
body[data-cinematic-section=rivalries] .cinematic-hero .rivals-montage img{position:absolute;top:0;bottom:0;height:100%;max-width:none;padding:0!important;margin:0;object-fit:cover!important;transform:none;box-sizing:border-box}
body[data-cinematic-section=compare] .compare-montage img:first-child,
body[data-cinematic-section=rivalries] .rivals-montage img:first-child{left:-5%;width:65%;mask-image:none;-webkit-mask-image:none}
body[data-cinematic-section=compare] .compare-montage img:last-child,
body[data-cinematic-section=rivalries] .rivals-montage img:last-child{left:45%;width:60%;mask-image:url('/assets/cinematic-r29/compare-mask.svg');-webkit-mask-image:url('/assets/cinematic-r29/compare-mask.svg');mask-size:100% 100%;-webkit-mask-size:100% 100%;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat}
body[data-cinematic-section=compare] .compare-montage img:first-child{object-position:64% 18%}
body[data-cinematic-section=compare] .compare-montage img:last-child{object-position:47% 12%}
body[data-cinematic-section=rivalries] .rivals-montage img:first-child{object-position:50% 12%}
body[data-cinematic-section=rivalries] .rivals-montage img:last-child{object-position:64% 18%}
