/* LL Audiovisual Room 2.2.0 — scoped to the room and its SWELL page only. */
body.llav-page{background:#0c0e0e}
body.llav-page #content{padding-top:0!important;margin-top:0!important}
body.llav-page .l-content{max-width:none!important;width:100%!important;padding:0!important;margin:0!important}
body.llav-page .l-mainContent{max-width:none!important;width:100%!important;padding:0!important;margin:0!important}
body.llav-page .l-mainContent__inner{padding:0!important;margin:0!important}
body.llav-page .post_content{padding:0!important;margin:0!important;max-width:none!important}
body.llav-page .c-pageTitle,body.llav-page .p-articleHead,body.llav-page .c-postTitle,body.llav-page .p-breadcrumb{display:none!important}
@supports selector(body:has(.llav-room)){
  body:has(.llav-room){background:#0c0e0e}
  body:has(.llav-room) #content{padding-top:0!important;margin-top:0!important}
  body:has(.llav-room) .l-content,body:has(.llav-room) .l-mainContent{max-width:none!important;width:100%!important;padding:0!important;margin:0!important}
  body:has(.llav-room) .l-mainContent__inner,body:has(.llav-room) .post_content{padding:0!important;margin:0!important;max-width:none!important}
  body:has(.llav-room) .c-pageTitle,body:has(.llav-room) .p-articleHead,body:has(.llav-room) .c-postTitle,body:has(.llav-room) .p-breadcrumb{display:none!important}
}

.llav-room{--bg:#0c0e0e;--bg-soft:#111614;--forest:#263739;--paper:#f0f1ed;--muted:#aeb9b1;--dim:#74837a;--line:rgba(255,255,255,.16);--serif:'Noto Serif JP','Yu Mincho','Hiragino Mincho ProN',serif;--sans:'Helvetica Neue','Hiragino Kaku Gothic ProN','Noto Sans JP',Arial,sans-serif;width:100vw;max-width:none;margin:0 calc(50% - 50vw);background:var(--bg);color:var(--paper);font-family:var(--sans);font-weight:400;line-height:1.7;position:relative;isolation:isolate;overflow:clip;-webkit-font-smoothing:antialiased;color-scheme:dark}
.llav-room,.llav-room *,.llav-room *::before,.llav-room *::after{box-sizing:border-box}
.llav-room img{display:block;width:100%;height:auto;max-width:none}
.llav-room a{color:inherit;text-decoration:none}
.llav-room button,.llav-room input{font:inherit}
.llav-room button{cursor:pointer}
.llav-room h1,.llav-room h2,.llav-room h3,.llav-room p{margin:0;padding:0}
body .post_content .llav-room h1,body .post_content .llav-room h2,body .post_content .llav-room h3,
body .llav-room h1,body .llav-room h2,body .llav-room h3{padding:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:inherit!important}
body .post_content .llav-room h1::before,body .post_content .llav-room h1::after,
body .post_content .llav-room h2::before,body .post_content .llav-room h2::after,
body .post_content .llav-room h3::before,body .post_content .llav-room h3::after{content:none!important;display:none!important}
.llav-room button:focus-visible,.llav-room a:focus-visible,.llav-room input:focus-visible{outline:2px solid #e8f0e9;outline-offset:5px}
.llav-view-switch{position:absolute;z-index:5;top:clamp(22px,3vw,46px);right:clamp(20px,5vw,80px);display:flex;align-items:center;gap:4px;padding:4px;border:1px solid rgba(255,255,255,.3);background:rgba(7,14,11,.58);backdrop-filter:blur(12px)}
.llav-view-switch a,.llav-view-switch span{display:block;padding:9px 14px;color:#b8c4bb;font-size:10px;letter-spacing:.1em;white-space:nowrap}
.llav-view-switch span[aria-current="page"]{background:#edf0eb;color:#17221c}
.llav-view-switch a:hover{color:#fff;background:rgba(255,255,255,.08)}
.llav-shell{width:min(1560px,100%);margin-inline:auto;padding-inline:clamp(22px,6.2vw,102px)}
.llav-index{display:flex;align-items:center;gap:15px;color:#a9b5ad;font-size:10px;line-height:1.4;letter-spacing:.22em;text-transform:uppercase}
.llav-index span{color:#617168}
.llav-meta{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:#9dac9f;line-height:1.8}
.llav-meta span{color:#596a60;padding:0 3px}

/* Hero */
.llav-hero{height:min(960px,100svh);min-height:690px;position:relative;display:flex;align-items:flex-end;overflow:hidden;background:#15231e}
.llav-hero-image{position:absolute;inset:-2%;background:#17241f url('https://commons.wikimedia.org/wiki/Special:FilePath/Hopperstad_stavkyrkje_in_Hopperstad%2C_Vik%2C_Vestland%2C_Norway%2C_2025_June_-_2.jpg?width=2400') 59% 48%/cover no-repeat;transform:scale(1.02);animation:llav-hero-in 1.6s cubic-bezier(.22,.61,.36,1) both}
.llav-hero-vignette{position:absolute;inset:0;background:linear-gradient(90deg,rgba(1,8,6,.91) 0%,rgba(2,10,7,.65) 39%,rgba(3,10,8,.12) 75%),linear-gradient(0deg,rgba(2,8,6,.94) 0%,rgba(2,8,6,.08) 58%),radial-gradient(circle at 70% 22%,transparent 0%,rgba(1,6,5,.2) 70%)}
.llav-hero-content{position:relative;z-index:2;padding-bottom:clamp(105px,14vh,175px)}
.llav-overline{font-size:10px;letter-spacing:.25em;color:#b8c6bc}
.llav-hero h1{font-family:var(--serif);font-weight:400;margin:22px 0 20px;line-height:1}
.llav-hero h1 span{display:block;font-size:clamp(64px,9.3vw,150px);letter-spacing:.09em;text-shadow:0 13px 55px #0009}
.llav-hero h1 small{display:block;font-family:var(--sans);font-weight:400;font-size:clamp(10px,.9vw,14px);letter-spacing:.32em;margin-top:26px;color:#b8c6bd}
.llav-lead{font-family:var(--serif);font-size:clamp(14px,1.3vw,19px);line-height:2.15;letter-spacing:.05em;color:#e8ece8}
.llav-hero-scroll{position:absolute;z-index:2;left:clamp(22px,6.2vw,102px);bottom:30px;display:flex;align-items:center;gap:22px;font-size:10px;letter-spacing:.14em;color:#d4ddd6}
.llav-hero-scroll i{display:block;width:54px;height:1px;background:#d4ddd6;position:relative}
.llav-hero-scroll i::after{content:"";position:absolute;right:0;bottom:0;width:7px;height:7px;border-right:1px solid #d4ddd6;border-bottom:1px solid #d4ddd6;transform:rotate(45deg);transform-origin:right bottom}
.llav-hero-credit{position:absolute;right:clamp(22px,6.2vw,102px);bottom:29px;z-index:2;font-size:9px;letter-spacing:.19em;color:#94a197}
@keyframes llav-hero-in{from{opacity:.5;transform:scale(1.09)}to{opacity:1;transform:scale(1.02)}}

/* Introduction */
.llav-main{background:var(--bg)}
.llav-intro{display:grid;grid-template-columns:.55fr 1.15fr .8fr;gap:clamp(32px,5vw,86px);align-items:start;padding-top:clamp(90px,11vw,175px);padding-bottom:clamp(95px,11vw,175px);border-bottom:1px solid var(--line)}
.llav-intro-heading{font-family:var(--serif);font-size:clamp(25px,3.05vw,47px);line-height:1.85;letter-spacing:.02em}
.llav-intro>div:last-child p{font-size:13px;line-height:2.35;color:#bdc8c0}
.llav-intro>div:last-child small{display:block;margin-top:30px;color:#78887e;font-size:10px;letter-spacing:.06em}

/* Shared section headings */
.llav-section-head{margin-bottom:clamp(32px,4vw,58px)}
.llav-section-head h2{font-family:var(--serif);font-weight:400;font-size:clamp(36px,4.4vw,68px);line-height:1.45;letter-spacing:.04em;margin-top:14px}
.llav-section-head-row{display:flex;justify-content:space-between;align-items:end;gap:30px}
.llav-section-head-row>p{font-size:10px;color:#718077;letter-spacing:.13em;padding-bottom:12px}

/* Image cover and play mark */
.llav-cover{display:block;width:100%;border:0;border-radius:0;padding:0;background:#18231f;color:#fff;position:relative;overflow:hidden;text-align:left;isolation:isolate;line-height:1;aspect-ratio:16/10}
.llav-cover img{height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.22,.61,.36,1),filter .5s}
.llav-cover:hover img{transform:scale(1.035);filter:saturate(1.04)}
.llav-cover-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,rgba(0,8,5,.73),transparent 58%)}
.llav-play{position:absolute;z-index:2;left:50%;top:50%;width:68px;height:68px;border-radius:50%;border:1px solid rgba(255,255,255,.76);background:rgba(14,42,32,.65);transform:translate(-50%,-50%);display:grid;place-items:center;backdrop-filter:blur(8px);transition:background .25s,transform .25s}
.llav-play i{display:block;width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:11px solid #fff;margin-left:3px}
.llav-cover:hover .llav-play{background:rgba(50,93,73,.82);transform:translate(-50%,-50%) scale(1.06)}
.llav-cover-label{position:absolute;z-index:2;left:22px;bottom:20px;font-size:9px;letter-spacing:.16em}
.llav-duration{position:absolute;z-index:2;right:18px;bottom:16px;background:rgba(3,9,7,.74);padding:7px 9px;font-size:9px;letter-spacing:.08em}

/* Featured film */
.llav-feature{padding-top:clamp(100px,12vw,190px)}
.llav-feature-layout{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(300px,.68fr);gap:clamp(35px,6vw,96px);align-items:end}
.llav-cover-feature{aspect-ratio:16/9.3}
.llav-feature-copy{padding:0 0 clamp(4px,1vw,18px)}
.llav-feature-copy h3{font-family:var(--serif);font-weight:400;font-size:clamp(30px,3vw,47px);line-height:1.62;letter-spacing:.02em;margin:18px 0;word-break:normal;overflow-wrap:break-word;line-break:strict;word-break:auto-phrase}
.llav-feature-copy>p:not(.llav-meta):not(.llav-source){font-size:13px;line-height:2.25;color:#bdc9c0}
.llav-watchpoint{border-top:1px solid var(--line);margin-top:28px;padding-top:20px;display:grid;grid-template-columns:80px 1fr;gap:14px;font-size:11px;line-height:2;color:#9fb0a4}
.llav-watchpoint b{font-weight:500;color:#d7dfd8}
.llav-actions{display:flex;flex-wrap:wrap;align-items:center;gap:25px;margin-top:27px}
.llav-actions button,.llav-actions a{font-size:12px;color:#edf1ed;border:0;border-bottom:1px solid #87998d;background:transparent;border-radius:0;padding:0 0 7px}
.llav-actions button i{font-style:normal;margin-left:34px}
.llav-source{font-size:10px;color:#71827a;margin-top:23px!important;letter-spacing:.04em}
.llav-empty{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:70px 0;display:flex;justify-content:space-between;gap:30px;color:#99a69d}
.llav-empty p{font-family:var(--serif);font-size:31px;color:#e5e8e5}

/* Editorial selections */
.llav-now{padding-top:clamp(115px,14vw,220px)}
.llav-now-grid{display:grid;grid-template-columns:1.25fr .77fr;gap:clamp(68px,9vw,145px) clamp(34px,6vw,98px);align-items:start}
.llav-now-item{min-width:0}
.llav-now-1{grid-row:span 2}
.llav-now-1 .llav-cover{aspect-ratio:4/5.05}
.llav-now-2{margin-top:clamp(40px,7vw,100px)}
.llav-now-2 .llav-cover,.llav-now-3 .llav-cover{aspect-ratio:16/10}
.llav-now-item>.llav-meta{margin-top:18px}
.llav-now-item h3{margin:10px 0 12px;font-family:var(--serif);font-weight:400;font-size:clamp(23px,2.5vw,38px);line-height:1.55;word-break:normal;overflow-wrap:break-word;line-break:strict;word-break:auto-phrase}
.llav-now-item h3 button{font:inherit;line-height:inherit;text-align:left;color:inherit;padding:0;border:0;background:transparent;border-radius:0}
.llav-now-item>p:last-child{font-size:12px;line-height:2.15;color:#afbeb3;max-width:590px}

/* Theme shelves */
.llav-themes{margin-top:clamp(120px,14vw,225px);padding:clamp(90px,10vw,155px) 0;background:var(--forest)}
.llav-theme-list{border-top:1px solid rgba(255,255,255,.28)}
.llav-theme-list button{width:100%;display:grid;grid-template-columns:70px minmax(180px,.65fr) 1fr 45px;gap:20px;align-items:center;text-align:left;padding:30px 6px;border:0;border-bottom:1px solid rgba(255,255,255,.23);border-radius:0;color:#eef0ed;background:transparent;transition:background .25s,padding .25s}
.llav-theme-list button:hover{background:rgba(255,255,255,.045);padding-left:18px;padding-right:18px}
.llav-theme-list span{font-size:10px;letter-spacing:.16em;color:#93a69c}
.llav-theme-list b{font-family:var(--serif);font-weight:400;font-size:clamp(26px,3.3vw,48px);letter-spacing:.04em}
.llav-theme-list em{font-style:normal;color:#b8c8bf;font-size:12px;letter-spacing:.04em}
.llav-theme-list i{font-size:22px;font-style:normal;text-align:right;color:#b6c5bd}

/* Search + archive */
.llav-collection{padding-top:clamp(105px,13vw,205px);padding-bottom:clamp(125px,15vw,235px)}
.llav-tools{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:50px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0}
.llav-filters{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.llav-filters button{border:0;background:transparent;color:#929f97;border-radius:0;padding:9px 14px;font-size:11px;letter-spacing:.06em}
.llav-filters button.is-active{background:#e5e9e4;color:#15201b}
.llav-filters .llav-filter-special{margin-left:8px;border-left:1px solid var(--line);color:#c5cec8}
.llav-filters .llav-filter-special.is-active{border-left-color:transparent;background:#263739;color:#f1f3ef}
.llav-search{display:flex;align-items:center;gap:13px;border-left:1px solid var(--line);padding-left:22px}
.llav-search span{font-size:9px;letter-spacing:.16em;color:#738078}
.llav-search input{width:210px;border:0;border-bottom:1px solid #5b6b61;border-radius:0;background:transparent;color:#edf0ed;padding:7px 0;font-size:12px}
.llav-search input::placeholder{color:#7e8d84}
.llav-film-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(18px,2.1vw,34px);row-gap:clamp(65px,8vw,125px);align-items:start}
.llav-film{grid-column:span 4;min-width:0}
.llav-film:nth-of-type(6n+1){grid-column:span 7}
.llav-film:nth-of-type(6n+2){grid-column:9/span 4;margin-top:clamp(55px,7vw,105px)}
.llav-film:nth-of-type(6n+3){grid-column:2/span 4}
.llav-film:nth-of-type(6n+4){grid-column:7/span 6;margin-top:clamp(35px,5vw,80px)}
.llav-film:nth-of-type(6n+5){grid-column:span 4}
.llav-film:nth-of-type(6n+6){grid-column:6/span 7}
.llav-film:nth-of-type(6n+1) .llav-cover,.llav-film:nth-of-type(6n+4) .llav-cover,.llav-film:nth-of-type(6n+6) .llav-cover{aspect-ratio:16/9}
.llav-film[hidden]{display:none!important}
.llav-film-copy{padding-top:16px}
.llav-film h3{font-family:var(--serif);font-weight:400;font-size:clamp(20px,2vw,31px);line-height:1.6;margin:9px 0 10px;word-break:normal;overflow-wrap:break-word;line-break:strict;word-break:auto-phrase}
.llav-film h3 button{font:inherit;line-height:inherit;text-align:left;color:inherit;background:transparent;border:0;border-radius:0;padding:0}
.llav-film-copy>p:not(.llav-meta){font-size:12px;line-height:2.05;color:#abb9af}
.llav-film-copy>div{display:flex;justify-content:space-between;gap:12px;margin-top:14px;font-size:9px;color:#75867b;line-height:1.7}
.llav-film-copy>div a{border-bottom:1px solid #708178;white-space:nowrap;color:#aebdb3}
.llav-no-results{font-family:var(--serif);font-size:26px;text-align:center;padding:80px 0;color:#aab5ad}

/* Gallery band */
.llav-gallery-link{min-height:min(850px,78svh);position:relative;display:flex;align-items:center;overflow:hidden;background:#17251f}
.llav-gallery-photo{position:absolute;inset:-2%;background:#20342a url('https://commons.wikimedia.org/wiki/Special:FilePath/Kizhi_pogost.jpg?width=2000') 50% 42%/cover no-repeat}
.llav-gallery-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,13,9,.92) 0%,rgba(4,13,9,.68) 42%,rgba(4,13,9,.10) 78%),linear-gradient(0deg,rgba(3,9,7,.64),transparent 55%)}
.llav-gallery-copy{position:relative;z-index:2}
.llav-gallery-copy h2{font-family:var(--serif);font-weight:400;font-size:clamp(39px,5.5vw,83px);line-height:1.48;letter-spacing:.035em;margin:18px 0 25px;max-width:900px}
.llav-gallery-copy>p:not(.llav-index){font-size:13px;line-height:2.3;color:#d1d8d2;max-width:510px}
.llav-gallery-copy a{display:inline-flex;align-items:center;gap:55px;border-bottom:1px solid #b5c2b8;padding-bottom:8px;margin-top:31px;font-size:12px}
.llav-gallery-copy a i{font-style:normal}

/* Contribution + footer */
.llav-contribute{text-align:center;padding-top:clamp(110px,14vw,220px);padding-bottom:clamp(115px,14vw,220px)}
.llav-contribute>.llav-index{justify-content:center}
.llav-contribute h2{font-family:var(--serif);font-weight:400;font-size:clamp(35px,4.8vw,72px);line-height:1.55;letter-spacing:.03em;margin:27px 0}
.llav-contribute>p:not(.llav-index){font-size:13px;line-height:2.3;color:#aebcb2}
.llav-contribute>span{display:inline-block;margin-top:32px;border:1px solid #52645a;padding:13px 21px;color:#97a89d;font-size:10px;letter-spacing:.11em}
.llav-footer{border-top:1px solid var(--line);padding-top:28px;padding-bottom:35px;display:flex;justify-content:space-between;gap:25px;color:#7f8e85;font-size:9px;line-height:2.05}
.llav-footer p:last-child{text-align:right;max-width:620px}
.llav-footer a{text-decoration:underline;text-underline-offset:3px}

/* Modal / lazy player */
.llav-dialog[hidden]{display:none!important}
.llav-dialog{--bg:#0c0e0e;--forest:#263739;--paper:#f0f1ed;--muted:#aeb9b1;--dim:#74837a;--line:rgba(255,255,255,.16);--serif:'Noto Serif JP','Yu Mincho','Hiragino Mincho ProN',serif;--sans:'Helvetica Neue','Hiragino Kaku Gothic ProN','Noto Sans JP',Arial,sans-serif;position:fixed;z-index:2147483000;inset:0;background:rgba(0,0,0,.88);backdrop-filter:blur(15px);display:flex;align-items:center;justify-content:center;padding:20px;color:var(--paper);font-family:var(--sans);font-weight:400;line-height:1.7;-webkit-font-smoothing:antialiased;color-scheme:dark}
.llav-dialog,.llav-dialog *,.llav-dialog *::before,.llav-dialog *::after{box-sizing:border-box}
.llav-dialog h2,.llav-dialog p{margin:0!important;padding:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:inherit}
.llav-dialog h2::before,.llav-dialog h2::after{content:none!important;display:none!important}
.llav-dialog a{color:inherit;text-decoration:none}
.llav-dialog button{font:inherit;cursor:pointer}
.llav-dialog button:focus-visible,.llav-dialog a:focus-visible{outline:2px solid #e8f0e9;outline-offset:5px}
.llav-dialog-panel{width:min(1180px,100%);max-height:94dvh;overflow:auto;overscroll-behavior:contain;background:#101714;box-shadow:0 35px 150px #000;border:1px solid rgba(255,255,255,.28)}
.llav-dialog-panel>header{position:sticky;z-index:4;top:0;height:62px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;border-bottom:1px solid var(--line);background:#101714}
.llav-dialog-panel>header p{font-size:9px;letter-spacing:.2em;color:#91a096}
.llav-close{border:0;background:transparent;color:#eef1ed;font-size:11px;padding:10px 0 10px 20px}
.llav-close span{font-size:18px;margin-left:10px;vertical-align:-1px}
.llav-player{width:100%;aspect-ratio:16/9;background:#040806;position:relative;display:grid;place-items:center}
.llav-player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.llav-player-loading{font-size:9px;letter-spacing:.25em;color:#526159}
.llav-dialog-copy{display:grid;grid-template-columns:1.18fr .82fr;gap:clamp(30px,5vw,72px);padding:clamp(28px,4vw,52px)}
.llav-dialog-copy h2{font-family:var(--serif);font-weight:400;font-size:clamp(27px,3.1vw,43px);line-height:1.55;margin:12px 0 17px!important;word-break:normal;overflow-wrap:break-word;line-break:strict;word-break:auto-phrase}
.llav-dialog-copy>div>p:not(.llav-meta){font-size:13px;line-height:2.15;color:#bdc8c0}
.llav-modal-links{display:flex;gap:24px;flex-wrap:wrap;margin-top:24px}
.llav-modal-links a,.llav-modal-related a{font-size:11px;border-bottom:1px solid #718279;padding-bottom:5px}
.llav-dialog-copy aside{border-left:1px solid var(--line);padding-left:clamp(24px,3vw,45px)}
.llav-dialog-copy aside b{font-size:10px;letter-spacing:.12em;font-weight:500}
.llav-dialog-copy aside>p{font-size:12px;line-height:2.05;color:#afbeb3;margin-top:14px}
.llav-dialog-copy aside .llav-modal-original{font-size:10px;color:#73867a;margin-top:20px}
.llav-modal-related{display:flex;gap:18px;flex-wrap:wrap;margin-top:20px}
.llav-dialog-copy aside small{display:block;color:#75847b;font-size:9px;line-height:1.9;margin-top:22px}
body.llav-scroll-lock{overflow:hidden}

/* Single film archive */
.llav-single{min-height:100vh;padding-top:clamp(60px,7vw,110px);padding-bottom:clamp(100px,12vw,190px)}
.llav-single-main{max-width:1360px}
.llav-back{display:inline-block;font-size:11px;color:#a9b6ad;border-bottom:1px solid #66776d;padding-bottom:6px;margin-bottom:clamp(55px,7vw,95px)}
.llav-single-head{display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(40px,7vw,110px);align-items:end;margin-bottom:43px}
.llav-single-head h1{font-family:var(--serif);font-weight:400;font-size:clamp(40px,6vw,87px);line-height:1.45;letter-spacing:.025em;margin:15px 0 20px;word-break:normal;overflow-wrap:break-word;line-break:strict;word-break:auto-phrase}
.llav-single-head>p{font-family:var(--serif);font-size:clamp(18px,2vw,28px);line-height:2;color:#c4cec6;padding-bottom:8px}
.llav-single-cover{aspect-ratio:16/8.8}
.llav-single-facts{display:grid;grid-template-columns:1fr 1.25fr;gap:clamp(35px,7vw,115px);padding:clamp(65px,7vw,105px) 0;border-bottom:1px solid var(--line)}
.llav-single-facts h2{font-family:var(--serif);font-weight:400;font-size:clamp(31px,3.4vw,50px);margin-top:14px}
.llav-single-facts>p{font-size:14px;line-height:2.4;color:#bdc8c0}
.llav-single-article{width:min(790px,100%);margin:0 auto;padding:clamp(75px,9vw,135px) 0;font-size:15px;line-height:2.35;color:#d1d8d2}
.llav-single-article h2,.llav-single-article h3{font-family:var(--serif);font-weight:400;line-height:1.7;margin:2.2em 0 .8em;color:#f1f2ee}
.llav-single-article p{margin:0 0 1.7em}
.llav-single-source{display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,8vw,120px);padding:50px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.llav-single-source b{font-size:10px;letter-spacing:.14em;font-weight:500;color:#95a69b}
.llav-single-source p{font-size:12px;line-height:2;color:#a7b5ac;margin:15px 0}
.llav-single-source a{display:block;width:max-content;max-width:100%;font-size:12px;border-bottom:1px solid #718279;padding-bottom:5px;margin-top:13px}
.llav-related-films{padding-top:clamp(90px,11vw,170px)}
.llav-related-films>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.llav-related-films article>.llav-meta{margin-top:16px}
.llav-related-films h3{font-family:var(--serif);font-size:clamp(19px,2vw,29px);font-weight:400;line-height:1.55;margin-top:8px}
.llav-info-seed{display:none!important}

@media(max-width:1020px){
  .llav-intro{grid-template-columns:.45fr 1fr}.llav-intro>div:last-child{grid-column:2}
  .llav-feature-layout{grid-template-columns:1.35fr .75fr;gap:38px}
  .llav-film{grid-column:span 6!important;margin-top:0!important}.llav-film:nth-of-type(odd){grid-column:1/span 6!important}.llav-film:nth-of-type(even){grid-column:7/span 6!important}
  .llav-theme-list button{grid-template-columns:55px minmax(160px,.7fr) 1fr 35px}
}

@media(max-width:720px){
  .llav-shell{padding-inline:22px}
  .llav-view-switch{top:17px;right:16px}.llav-view-switch a,.llav-view-switch span{padding:8px 10px;font-size:9px}
  .llav-hero{min-height:560px;height:min(720px,78svh)}
  .llav-hero-image{background-position:66% 48%}
  .llav-hero-vignette{background:linear-gradient(0deg,rgba(1,8,6,.94),rgba(2,8,6,.10) 68%),linear-gradient(90deg,rgba(2,8,6,.63),rgba(2,8,6,.05))}
  .llav-hero-content{padding-bottom:112px}
  .llav-hero h1 span{font-size:clamp(56px,16vw,82px);line-height:1.2}
  .llav-hero h1 small{font-size:9px;margin-top:16px}
  .llav-lead{font-size:13px;line-height:2}
  .llav-hero-scroll{left:22px}.llav-hero-credit{display:none}
  .llav-intro{display:block;padding-top:80px;padding-bottom:85px}.llav-intro>.llav-index{margin-bottom:35px}.llav-intro-heading{font-size:28px}.llav-intro>div:last-child{margin-top:35px}
  .llav-section-head{margin-bottom:31px}.llav-section-head h2{font-size:38px}.llav-section-head-row{display:block}.llav-section-head-row>p{display:none}
  .llav-feature{padding-top:95px}.llav-feature-layout{display:block}.llav-cover-feature{aspect-ratio:16/10}.llav-feature-copy{padding-top:29px}.llav-feature-copy h3{font-size:30px}.llav-watchpoint{grid-template-columns:72px 1fr}
  .llav-now{padding-top:115px}.llav-now-grid{display:block}.llav-now-item{margin:0 0 72px}.llav-now-1 .llav-cover{aspect-ratio:4/4.7}.llav-now-2 .llav-cover,.llav-now-3 .llav-cover{aspect-ratio:16/10}.llav-now-item h3{font-size:27px}
  .llav-themes{margin-top:55px;padding:88px 0}.llav-theme-list button{grid-template-columns:35px 1fr 30px;padding:24px 3px}.llav-theme-list button em{display:none}.llav-theme-list b{font-size:30px}.llav-theme-list i{font-size:17px}
  .llav-collection{padding-top:95px;padding-bottom:115px}.llav-tools{display:block;margin-bottom:42px}.llav-filters{flex-wrap:nowrap;overflow-x:auto;margin-right:-22px;padding-right:22px;scrollbar-width:none}.llav-filters::-webkit-scrollbar{display:none}.llav-filters button{white-space:nowrap;flex-shrink:0}.llav-search{border-left:0;border-top:1px solid var(--line);padding:15px 0 0;margin-top:13px}.llav-search input{width:100%}
  .llav-film-grid{display:block}.llav-film{margin:0 0 70px!important}.llav-film .llav-cover{aspect-ratio:16/10!important}.llav-film h3{font-size:26px}
  .llav-gallery-link{min-height:720px}.llav-gallery-photo{background-position:58% 45%}.llav-gallery-shade{background:linear-gradient(0deg,rgba(3,11,8,.95),rgba(3,11,8,.15) 75%),linear-gradient(90deg,rgba(3,11,8,.6),transparent)}.llav-gallery-copy{align-self:end;padding-bottom:78px}.llav-gallery-copy h2{font-size:41px}.llav-gallery-copy>p:not(.llav-index){font-size:12px}
  .llav-contribute{padding-top:100px;padding-bottom:110px}.llav-contribute h2{font-size:37px}.llav-footer{display:block}.llav-footer p:last-child{text-align:left;margin-top:16px}
  .llav-dialog{padding:0}.llav-dialog-panel{height:100dvh;max-height:100dvh;width:100%;border:0}.llav-dialog-panel>header{height:58px;padding:0 18px}.llav-dialog-copy{display:block;padding:25px 22px 45px}.llav-dialog-copy h2{font-size:clamp(25px,7.6vw,31px);line-height:1.65;letter-spacing:.01em}.llav-dialog-copy aside{border-left:0;border-top:1px solid var(--line);padding:25px 0 0;margin-top:28px}.llav-play{width:58px;height:58px}
  .llav-single{padding-top:45px}.llav-back{margin-bottom:55px}.llav-single-head{display:block}.llav-single-head h1{font-size:42px}.llav-single-head>p{font-size:19px;margin-top:32px}.llav-single-cover{aspect-ratio:16/10}.llav-single-facts{display:block;padding:58px 0}.llav-single-facts>p{margin-top:30px;font-size:13px}.llav-single-source{display:block}.llav-single-source>div+div{margin-top:45px}.llav-related-films>div{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-right:-22px;padding-right:22px;gap:18px}.llav-related-films article{flex:0 0 78vw;scroll-snap-align:start}
}

@media(prefers-reduced-motion:reduce){.llav-room *,.llav-room *::before,.llav-room *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}


/* v2.2.0 — One film, one experience: fixed picture / independently scrolling notes. */
.llav-article-seed{display:none!important}
.llav-film-copy>div .llav-view-note{border:0;border-bottom:1px solid #708178;background:transparent;border-radius:0;padding:0 0 3px;font-size:10px;white-space:nowrap;color:#c7d6cb;line-height:1.7;text-align:left}
.llav-dialog-panel{width:min(1550px,100%);height:min(900px,calc(100dvh - 36px));max-height:calc(100dvh - 36px);overflow:hidden;display:flex;flex-direction:column}
.llav-dialog-head{flex:0 0 62px}
.llav-dialog-head p span{margin-inline:9px;color:#697c71}
.llav-viewer-layout{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.9fr)}
.llav-viewer-stage{min-width:0;min-height:0;background:#050907;display:flex;justify-content:center;flex-direction:column;overflow:hidden}
.llav-viewer-stage .llav-player{flex:0 0 auto;aspect-ratio:16/9}
.llav-viewer-under{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 23px;border-top:1px solid rgba(255,255,255,.09);font-size:10px;letter-spacing:.13em;color:#84978c}
.llav-viewer-under a{border-bottom:1px solid #94a99a;padding-bottom:3px;white-space:nowrap;color:#dce6dc}
.llav-viewer-info{min-width:0;min-height:0;overflow-y:auto;overscroll-behavior:contain;background:#111915;padding:clamp(30px,3.3vw,56px) clamp(25px,3vw,48px) 70px;scrollbar-color:#556c5b #111915;scrollbar-width:thin}
.llav-viewer-info h2.llav-modal-title{font:400 clamp(25px,2.7vw,43px)/1.6 var(--serif);letter-spacing:.015em;margin:12px 0 23px!important;overflow-wrap:anywhere}
.llav-viewer-info>p.llav-modal-description{font:400 13px/2.1 var(--sans);color:#bfcdc3;margin-bottom:35px!important}
.llav-viewer-kicker{font:500 10px/1.8 var(--sans)!important;letter-spacing:.14em;color:#9aad9f!important;margin:0 0 17px!important}
.llav-viewer-info section{border-top:1px solid rgba(255,255,255,.17);padding-top:26px;margin-top:30px}
.llav-viewer-note>p:last-child{font-size:13px;line-height:2.1;color:#d3dfd5}
.llav-modal-original{font-size:11px;line-height:2.1;color:#aabdb0;overflow-wrap:anywhere}
.llav-viewer-source a{display:inline-block;margin-top:16px;border-bottom:1px solid #7e9685;padding-bottom:5px;color:#dbe6dc;font-size:12px}
.llav-modal-related{display:flex;gap:12px 20px;flex-wrap:wrap}
.llav-modal-related a{font-size:12px;color:#dce5de;border-bottom:1px solid #778e7d;padding-bottom:5px}
.llav-viewer-info section[hidden]{display:none!important}
.llav-modal-article-slot:empty{display:none}
.llav-viewer-article{margin-top:35px;border-top:1px solid rgba(255,255,255,.17);padding-top:26px;font-size:13px;line-height:2.1;color:#cfdbd1}
.llav-viewer-article h2,.llav-viewer-article h3{font:400 24px/1.6 var(--serif);margin:1.9em 0 .7em;color:#f0f4f0}
.llav-viewer-article h2:first-child,.llav-viewer-article h3:first-child{margin-top:0}
.llav-viewer-article p{margin:0 0 1.45em!important}
.llav-viewer-article img{max-width:100%;height:auto}
.llav-viewer-article a{color:#e2f1e5;border-bottom:1px solid #8ca493}
.llav-next-options{display:flex;flex-direction:column}
.llav-next-video{border:0;border-bottom:1px solid rgba(255,255,255,.12);border-radius:0;background:transparent;color:#edf1ec;text-align:left;padding:14px 0;display:flex;flex-direction:column;gap:5px}
.llav-next-video span{font:400 10px/1.5 var(--sans);color:#98ab9b}
.llav-next-video strong{font:400 15px/1.8 var(--serif)}
.llav-next-video:hover strong{text-decoration:underline;text-underline-offset:6px}
.llav-return-bottom{display:block;margin-top:42px;border:0;border-bottom:1px solid #879a8b;background:transparent;color:#e9efe9;padding:0 0 7px;font-size:12px;text-align:left}
.llav-return-bottom span{display:none}

/* Direct links to existing video URLs use the SAME one-page presentation,
   instead of a second "reference" screen. Old permalinks remain valid. */
.llav-single{padding-top:clamp(34px,4vw,70px)}
.llav-single-main{max-width:1680px}
.llav-single-crumb{display:flex;align-items:center;gap:11px;flex-wrap:wrap;color:#adbdb2;font-size:11px;margin-bottom:clamp(40px,5vw,72px)}
.llav-single-crumb a{border-bottom:1px solid #5c7064;padding-bottom:2px}
.llav-single-crumb span:last-child{color:#ebf0eb}
.llav-single-head{display:block;margin-bottom:clamp(30px,4vw,55px)}
.llav-single-head h1{font-size:clamp(32px,4.2vw,62px);margin:12px 0 20px;max-width:1100px}
.llav-single-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.8fr);gap:clamp(30px,4vw,70px);align-items:start}
.llav-single-stage{position:sticky;top:24px;min-width:0;align-self:start;background:#071009}
.llav-single-player{width:100%;aspect-ratio:16/9;position:relative;background:#040806}
.llav-single-player .llav-cover{aspect-ratio:16/9}
.llav-single-player iframe{display:block;border:0;width:100%;height:100%;position:absolute;inset:0}
.llav-single-playerlinks{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:16px 14px;font-size:10px;color:#a4b5aa;letter-spacing:.12em}
.llav-single-playerlinks a{white-space:nowrap;border-bottom:1px solid #7c9081;color:#e0e9e1;padding-bottom:3px}
.llav-single-reading{min-width:0;padding-bottom:70px}
.llav-single-description{font:400 15px/2.2 var(--serif);color:#e0e6df}
.llav-single-facts{display:block;padding:32px 0;margin-top:34px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.llav-single-facts>p:last-child{font-size:13px;line-height:2.15;color:#d0dcd1}
.llav-single-article{width:100%;margin:0;padding:30px 0;font-size:13px;line-height:2.2}
.llav-single-source{display:block;padding:28px 0;border-top:1px solid var(--line);border-bottom:0}
.llav-single-source>div+div{margin-top:28px}
.llav-single-source p{margin:9px 0;line-height:2}
.llav-single-return{display:inline-block;margin-top:30px;border-bottom:1px solid #829889;padding-bottom:6px;color:#eff4ef;font-size:12px}
.llav-related-films{padding-top:clamp(70px,9vw,130px)}

@media(max-width:900px){
 .llav-dialog{padding:0}
 .llav-dialog-panel{width:100%;height:100dvh;max-height:100dvh;overflow-y:auto;overscroll-behavior:contain;border:0;display:block}
 .llav-dialog-head{height:58px;position:sticky!important;z-index:8;top:0;padding:0 18px}
 .llav-dialog-head p{font-size:9px;letter-spacing:.06em}
 .llav-viewer-layout{display:block;height:auto;min-height:0}
 .llav-viewer-stage{position:sticky;z-index:7;top:58px;overflow:visible;display:block;background:#050907}
 .llav-viewer-stage .llav-player{width:100%;aspect-ratio:16/9}
 .llav-viewer-under{padding:8px 19px;font-size:9px;background:#0c1410}
 .llav-viewer-info{overflow:visible;padding:32px 24px 65px}
 .llav-viewer-info h2.llav-modal-title{font-size:clamp(25px,6vw,36px);line-height:1.6}
 .llav-viewer-info>p.llav-modal-description{font-size:13px}
 .llav-single-layout{display:block}
 .llav-single-stage{top:0;z-index:5;margin-inline:-22px}
 .llav-single-playerlinks{padding:8px 22px;background:#0c1410}
 .llav-single-reading{padding-top:44px}
 .llav-single-head h1{font-size:clamp(30px,7vw,46px)}
}
@media(max-width:900px) and (max-height:470px){
 .llav-viewer-stage{position:relative;top:auto}
 .llav-single-stage{position:relative;top:auto}
}

/* v2.2.1 — orientation-aware viewer and safe exit. */
.llav-dialog-panel{position:relative}
.llav-dialog-head .llav-close{padding:12px 4px 12px 12px;min-height:44px;white-space:nowrap;letter-spacing:.04em}
.llav-exit-confirm[hidden]{display:none!important}
.llav-exit-confirm{position:absolute;z-index:30;inset:0;background:rgba(2,8,5,.84);display:grid;place-items:center;padding:clamp(12px,4vw,28px);backdrop-filter:blur(8px)}
.llav-exit-card{width:min(420px,100%);background:#15231b;border:1px solid rgba(215,231,216,.35);box-shadow:0 20px 80px rgba(0,0,0,.6);padding:clamp(20px,3vw,35px);color:#f4f6f0}
.llav-exit-card .llav-exit-eyebrow{font:500 10px/1.5 var(--sans);letter-spacing:.19em;color:#92a898;margin-bottom:18px!important}
.llav-exit-card .llav-exit-title{font:400 clamp(19px,2vw,25px)/1.65 var(--serif);color:#f0f3ef}
.llav-exit-card .llav-exit-hint{font-size:11px;color:#b7c5b8;margin-top:15px!important}
.llav-exit-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:30px}
.llav-exit-actions button{flex:1 1 135px;min-height:46px;padding:10px 12px;border:1px solid #789083;border-radius:0;text-align:center;background:transparent;color:#edf3eb;font-size:12px}
.llav-exit-actions .llav-exit-cancel{color:#182920;background:#e8eee7;border-color:#e8eee7}
.llav-viewer-stage .llav-player{max-width:100%;height:auto}

/* A phone rotated to landscape has very little height. Keep the video
   fully visible at its natural 16:9 aspect ratio and let notes scroll beside it. */
@media (orientation:landscape) and (max-height:600px) and (max-width:1200px){
 .llav-dialog{padding:0}
 .llav-dialog-panel{width:100%;height:100dvh;max-height:100dvh;border:0;display:flex;flex-direction:column;overflow:hidden}
 .llav-dialog-panel>.llav-dialog-head{height:42px;flex:0 0 42px;position:relative!important;top:auto;padding:0 12px;z-index:9}
 .llav-dialog-head p{font-size:8px;letter-spacing:.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .llav-dialog-head .llav-close{font-size:10px;min-height:40px;padding:7px 4px 7px 14px}
 .llav-viewer-layout{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(0,67fr) minmax(0,33fr);height:auto}
 .llav-viewer-stage{position:relative!important;z-index:1;top:auto!important;min-height:0;display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden}
 .llav-viewer-stage .llav-player{flex:0 0 auto;width:min(100%,calc((100dvh - 84px) * 16 / 9));height:auto;aspect-ratio:16/9;max-height:calc(100dvh - 84px)}
 .llav-viewer-under{width:100%;flex:0 0 auto;min-height:30px;padding:5px 14px;font-size:9px}
 .llav-viewer-info{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:14px 14px 45px}
 .llav-viewer-info h2.llav-modal-title{font-size:clamp(17px,2vw,23px);line-height:1.45;margin:9px 0 13px!important}
 .llav-viewer-info>p.llav-modal-description{font-size:11px;line-height:1.65}
 .llav-viewer-info section{padding-top:15px;margin-top:19px}
 .llav-exit-confirm{padding:8px}
 .llav-exit-card{width:min(440px,95%);padding:14px 20px}
 .llav-exit-card .llav-exit-eyebrow{margin-bottom:7px!important}
 .llav-exit-card .llav-exit-title{font-size:17px;line-height:1.35}
 .llav-exit-card .llav-exit-hint{margin-top:5px!important}
 .llav-exit-actions{margin-top:12px}
 .llav-exit-actions button{min-height:40px}
 .llav-single-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(220px,1fr);gap:18px}
 .llav-single-stage{position:sticky;top:8px;margin-inline:0;z-index:5}
 .llav-single-reading{padding-top:0}
}
@media (orientation:landscape) and (max-height:350px) and (max-width:650px){
 .llav-viewer-layout{grid-template-columns:minmax(0,70fr) minmax(0,30fr)}
 .llav-viewer-stage .llav-player{width:min(100%,calc((100dvh - 84px) * 16 / 9))}
}


/* v2.3.0 — One permanent watch area inside the room, not a modal. */
.llav-room .llav-dialog[hidden]{display:none!important}
.llav-room .llav-dialog{
 position:relative;inset:auto;z-index:auto;display:block;width:min(1580px,calc(100% - 2 * clamp(20px,5vw,80px)));
 margin:clamp(30px,5vw,78px) auto clamp(65px,8vw,130px);padding:0;background:none;backdrop-filter:none;
 color:#f0f1ed;scroll-margin-top:clamp(80px,8vw,115px);
}
.llav-room .llav-dialog-panel{
 width:100%;height:min(790px,calc(100dvh - 120px));min-height:520px;max-height:none;
 margin:0;box-shadow:0 24px 100px rgba(0,0,0,.32);border:1px solid rgba(255,255,255,.14);
 background:#101714;display:flex;flex-direction:column;overflow:hidden;
}
.llav-room .llav-dialog-head{position:relative!important;z-index:2;top:auto!important;flex:0 0 62px;height:62px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(16px,2.4vw,32px);background:#15211a;border-bottom:1px solid rgba(255,255,255,.12)}
.llav-room .llav-dialog-head p{color:#b2c2b5;font-size:11px;letter-spacing:.06em}
.llav-room .llav-dialog-head .llav-to-collection{border:0;background:transparent;color:#e9f0e8;letter-spacing:.02em;padding:12px 0 12px 16px;min-height:44px;white-space:nowrap;text-decoration:underline;text-decoration-color:#657d6a;text-underline-offset:7px;font-size:12px}
.llav-room .llav-viewer-layout{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(330px,.92fr);height:auto}
.llav-room .llav-viewer-stage{min-width:0;display:flex;justify-content:center;flex-direction:column;position:relative!important;top:auto!important;min-height:0;overflow:hidden;background:#050907}
.llav-room .llav-viewer-stage .llav-player{width:100%;height:auto;max-height:none;flex:0 0 auto;aspect-ratio:16/9}
.llav-room .llav-viewer-info{min-width:0;min-height:0;overflow-y:auto;padding:clamp(28px,3vw,48px) clamp(20px,3vw,46px) 60px;background:#111915;overscroll-behavior:contain}
.llav-room .llav-viewer-under{width:100%;padding:13px 16px;gap:10px;flex-wrap:wrap;font-size:10px;letter-spacing:.1em}
.llav-room .llav-viewer-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.llav-room .llav-stop-playback{font:inherit;border:0;border-bottom:1px solid #7f9284;border-radius:0;background:transparent;color:#d8e6d8;font-size:11px;padding:0 0 2px}
.llav-room .llav-stop-playback:disabled{opacity:.35;cursor:default}
.llav-room .llav-player-start{position:absolute;inset:0;width:100%;height:100%;background:#040805;border:0;cursor:pointer;display:block;padding:0;color:white}
.llav-room .llav-player-start img{width:100%;height:100%;object-fit:cover;display:block;opacity:.74}
.llav-room .llav-player-start-label{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);white-space:nowrap;background:rgba(18,44,31,.88);border:1px solid rgba(255,255,255,.4);padding:15px 24px;border-radius:2px;letter-spacing:.12em;font-size:13px}
.llav-room .llav-next-options{display:flex;flex-direction:column}
.llav-room .llav-next-video{display:grid;grid-template-columns:94px minmax(0,1fr);align-items:center;gap:14px;padding:14px 0}
.llav-room .llav-next-video>img{width:94px;aspect-ratio:16/9;object-fit:cover;display:block;min-width:0}
.llav-room .llav-next-video .llav-next-copy{display:flex;flex-direction:column;gap:4px;min-width:0}
.llav-room .llav-next-video .llav-next-copy strong{font-size:13px;line-height:1.6}
.llav-room .llav-return-bottom{width:auto;text-align:left;margin-top:40px}
.llav-room .llav-cover.llav-selected{outline:2px solid #c8ded0;outline-offset:3px}
#llav-collection{scroll-margin-top:72px}
@media(max-width:900px) and (orientation:portrait){
 .llav-room .llav-dialog{width:100%;margin:30px 0 65px;scroll-margin-top:20px}
 .llav-room .llav-dialog-panel{height:auto;min-height:0;max-height:none;display:block;overflow:visible;border-inline:0;box-shadow:none}
 .llav-room .llav-dialog-head{height:55px;position:relative!important;top:auto!important;flex:0 0 auto;padding:0 17px}
 .llav-room .llav-dialog-head p{font-size:9px}
 .llav-room .llav-dialog-head .llav-to-collection{font-size:10px}
 .llav-room .llav-viewer-layout{display:block;height:auto}
 .llav-room .llav-viewer-stage{position:sticky!important;top:0!important;z-index:3;overflow:visible}
 .llav-room .llav-viewer-stage .llav-player{aspect-ratio:16/9;max-height:50dvh}
 .llav-room .llav-viewer-under{padding:8px 16px;font-size:9px;background:#0b130e}
 .llav-room .llav-viewer-info{height:auto;min-height:0;overflow:visible;padding:30px 20px 50px}
 .llav-room .llav-viewer-info h2.llav-modal-title{font-size:clamp(25px,6vw,38px)}
 .llav-room .llav-next-video{grid-template-columns:92px minmax(0,1fr)}
}
@media(orientation:landscape) and (max-height:650px) and (max-width:1200px){
 .llav-room .llav-dialog{width:100%;margin:25px 0 60px;scroll-margin-top:10px}
 .llav-room .llav-dialog-panel{height:calc(100dvh - 20px);min-height:250px;max-height:none;display:flex;flex-direction:column;overflow:hidden;border-inline:0}
 .llav-room .llav-dialog-head{position:relative!important;top:auto!important;flex:0 0 38px!important;height:38px!important;padding:0 15px}
 .llav-room .llav-dialog-head p{font-size:9px}
 .llav-room .llav-dialog-head .llav-to-collection{font-size:10px;min-height:36px}
 .llav-room .llav-viewer-layout{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(0,65fr) minmax(230px,35fr)}
 .llav-room .llav-viewer-stage{position:relative!important;top:auto!important;z-index:1;display:flex;justify-content:center;overflow:hidden}
 .llav-room .llav-viewer-stage .llav-player{width:min(100%,calc((100dvh - 92px) * 16 / 9));aspect-ratio:16/9;max-height:calc(100dvh - 92px);flex:0 0 auto}
 .llav-room .llav-viewer-under{width:100%;min-height:34px;padding:5px 12px;font-size:9px}
 .llav-room .llav-viewer-info{height:auto;min-height:0;overflow-y:auto;padding:14px 14px 40px}
 .llav-room .llav-viewer-info h2.llav-modal-title{font-size:clamp(17px,2vw,24px)}
 .llav-room .llav-next-video{grid-template-columns:65px minmax(0,1fr);gap:9px;padding:9px 0}
 .llav-room .llav-next-video>img{width:65px}
}
@media(max-width:650px) and (orientation:landscape) and (max-height:350px){
 .llav-room .llav-viewer-layout{grid-template-columns:minmax(0,61fr) minmax(0,39fr)}
 .llav-room .llav-viewer-under>span{display:none}
 .llav-room .llav-viewer-under{min-height:28px;padding:3px 10px}
}

/* v2.3.2: viewer opens beneath the selected film, never at a distant top anchor. */
.llav-room .llav-film-grid > .llav-dialog,
.llav-room .llav-now-grid > .llav-dialog {
  grid-column:1/-1!important;
  grid-row:auto!important;
  width:100%!important;
  max-width:none!important;
  min-width:0;
  margin:20px 0 36px!important;
  padding:0!important;
}
.llav-room .llav-feature > .llav-dialog {margin:38px 0 18px!important;}
.llav-room .llav-film-grid > .llav-dialog-panel {min-width:0;}
.llav-room .llav-film-grid > .llav-dialog .llav-dialog-panel,
.llav-room .llav-now-grid > .llav-dialog .llav-dialog-panel {max-width:100%;min-width:0;}
/* Keep adjacent card alignment after the expanded detail is inserted. */
.llav-room .llav-dialog {scroll-margin-top:14px;}
@media (max-width:900px) {
 .llav-room .llav-film-grid > .llav-dialog,
 .llav-room .llav-now-grid > .llav-dialog {margin:8px 0 48px!important;}
 .llav-room .llav-dialog .llav-viewer-stage {position:relative!important;top:auto!important;}
}

/* Replace the selected thumbnail with the actual viewing area while open. */
.llav-room .llav-inline-source{display:none!important;}


/* v2.3.3 — quiet reader layout and unobstructed mobile viewing.
   Keep the SWELL page-top control available outside the film viewer. */
body.llav-page.llav-viewer-in-view #pagetop {
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
/* Reduce oversized film titles and excessive vertical gaps; preserve reading comfort. */
.llav-room .llav-viewer-info h2.llav-modal-title {
  font-size:clamp(25px,2.4vw,37px);
  line-height:1.48;
  letter-spacing:.012em;
  margin:8px 0 18px!important;
}
.llav-room .llav-viewer-info>p.llav-modal-description {
  font-size:13px;
  line-height:1.95;
  margin-bottom:25px!important;
}
.llav-room .llav-viewer-info section {
  margin-top:24px;
  padding-top:21px;
}
.llav-room .llav-viewer-info .llav-viewer-kicker {
  margin-bottom:11px!important;
}
.llav-room .llav-viewer-note>p:last-child,
.llav-room .llav-viewer-article {
  font-size:13px;
  line-height:1.9;
}
@media (max-width:900px) and (orientation:portrait) {
  .llav-room .llav-viewer-info {
    padding:24px 21px 40px;
  }
  .llav-room .llav-viewer-info h2.llav-modal-title {
    font-size:clamp(24px,6.4vw,29px);
    line-height:1.47;
    margin:7px 0 18px!important;
    overflow-wrap:break-word;
  }
  .llav-room .llav-viewer-info>p.llav-modal-description {
    font-size:13px;
    line-height:1.92;
    margin-bottom:24px!important;
  }
  .llav-room .llav-viewer-info section {
    margin-top:23px;
    padding-top:19px;
  }
  .llav-room .llav-viewer-info .llav-viewer-kicker {
    margin-bottom:10px!important;
  }
  .llav-room .llav-viewer-note>p:last-child,
  .llav-room .llav-viewer-article {
    font-size:13px;
    line-height:1.9;
  }
  .llav-room .llav-viewer-article h2,
  .llav-room .llav-viewer-article h3 {
    font-size:21px;
    line-height:1.55;
  }
}
@media (orientation:landscape) and (max-height:650px) and (max-width:1200px) {
  .llav-room .llav-viewer-info h2.llav-modal-title {
    font-size:clamp(17px,2vw,23px);
    line-height:1.44;
    margin:6px 0 12px!important;
  }
  .llav-room .llav-viewer-info>p.llav-modal-description {
    font-size:11px;
    line-height:1.65;
    margin-bottom:15px!important;
  }
  .llav-room .llav-viewer-info section {
    margin-top:17px;
    padding-top:13px;
  }
}

/* v2.3.4 — visual-viewport-safe landscape and native fullscreen.
   The iframe is never replaced on rotation/fullscreen exit, so YouTube keeps
   the selected film, playback position and its standard controls. */
@media (orientation:landscape) and (max-height:650px) and (max-width:1200px) {
  .llav-room .llav-dialog {
    box-sizing:border-box;
    width:100%!important;
    scroll-margin-top:calc(var(--llav-safe-top, 0px) + 8px)!important;
    padding-left:env(safe-area-inset-left)!important;
    padding-right:env(safe-area-inset-right)!important;
  }
  .llav-room .llav-dialog-panel {
    height:max(250px, calc(var(--llav-visual-bottom, 100dvh) - var(--llav-safe-top, 0px) - env(safe-area-inset-bottom) - 8px))!important;
    max-height:none!important;
    min-height:250px!important;
  }
  .llav-room .llav-viewer-layout {
    min-height:0!important;
    overflow:hidden;
  }
  .llav-room .llav-viewer-stage {
    min-height:0!important;
    max-height:100%;
    overflow:hidden!important;
  }
  .llav-room .llav-viewer-stage .llav-player {
    width:min(100%, calc((var(--llav-visual-bottom, 100dvh) - var(--llav-safe-top, 0px) - env(safe-area-inset-bottom) - 82px) * 16 / 9))!important;
    height:auto!important;
    max-height:calc(var(--llav-visual-bottom, 100dvh) - var(--llav-safe-top, 0px) - env(safe-area-inset-bottom) - 82px)!important;
    aspect-ratio:16/9!important;
  }
  .llav-room .llav-player iframe {
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    max-height:none!important;
  }
  .llav-room .llav-viewer-info {
    min-height:0!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch;
    padding-bottom:max(28px, env(safe-area-inset-bottom))!important;
  }
}

/* A standards-based YouTube fullscreen element must not inherit inline-room
   size constraints. Browsers that use native video fullscreen ignore these
   safely; Chrome/Android applies them to the fullscreen iframe. */
.llav-room .llav-player iframe:fullscreen,
.llav-room .llav-player:fullscreen,
.llav-room .llav-player iframe:-webkit-full-screen,
.llav-room .llav-player:-webkit-full-screen {
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100dvh!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  border:0!important;
  background:#000!important;
}

/* v2.7.1 — keep the active film visible while its notes are read.
   This moves the existing player with CSS; the iframe and playback position
   are preserved. The measured safe top includes WordPress/SWELL headers. */
@media (max-width:900px) and (orientation:portrait) {
  .llav-room .llav-dialog.is-playing .llav-viewer-stage {
    position:sticky!important;
    top:calc(var(--llav-safe-top, 0px) + 2px)!important;
    z-index:12;
    overflow:visible!important;
    box-shadow:0 14px 35px rgba(0,0,0,.45);
  }
  .llav-room .llav-dialog.is-playing .llav-viewer-under {
    min-height:34px;
  }
}
