/* AVIATION-VIDEO-MODES-V1 | Aviation World video experience | light/dark/mobile */
.av-videos-page{--v-ink:#0d2948;--v-muted:#5c7089;--v-surface:#fff;--v-surface-2:#f2f7fc;--v-line:#cfdfef;--v-deep:#071932;--v-accent:#0877d8;--v-shadow:0 18px 52px #17345c16;max-width:1320px!important;isolation:isolate}
:root[data-theme="dark"] .av-videos-page{--v-ink:#f0f7ff;--v-muted:#a4bad1;--v-surface:#13253e;--v-surface-2:#0c1c32;--v-line:#2d4661;--v-deep:#050f20;--v-accent:#73bfff;--v-shadow:0 18px 52px #0006}
.av-videos-page *{box-sizing:border-box}.av-videos-page a{text-decoration:none}.av-videos-page button{font:inherit;cursor:pointer}.av-videos-page :is(a,button):focus-visible,.av-v-modal :is(a,button):focus-visible{outline:3px solid #2ea0ff;outline-offset:3px}
.av-v-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:10px 0 28px;text-align:right}.av-v-heading h1{font-family:var(--headfont,inherit);font-size:clamp(28px,3.5vw,44px);color:var(--v-ink);line-height:1.45;margin:7px 0 4px}.av-v-heading p{color:var(--v-muted);font-size:14px;margin:0}.av-v-eyebrow,.av-v-kicker{font:800 11px/1.7 system-ui,sans-serif;letter-spacing:.17em;color:#3095ee;direction:ltr;display:inline-block}.av-v-heading-link{display:inline-flex;gap:8px;align-items:center;white-space:nowrap;border:1px solid var(--v-line);color:var(--v-ink);padding:10px 15px;border-radius:40px;background:var(--v-surface);box-shadow:var(--v-shadow);font-size:12px}.av-v-heading-link:hover{border-color:var(--v-accent)}
.av-v-card{min-width:0;overflow:hidden;background:var(--v-surface);border:1px solid var(--v-line);border-radius:17px;box-shadow:var(--v-shadow);color:var(--v-ink);display:flex;flex-direction:column}.av-v-card .av-v-poster{position:relative;aspect-ratio:16/9;isolation:isolate;overflow:hidden;background:#081a31}.av-v-poster>img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.av-v-card:hover .av-v-poster>img{transform:scale(1.035)}.av-v-poster-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,#04102180)}.av-v-play{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:60px;height:60px;border:1px solid #ffffffa8;border-radius:100%;background:#051e3cc9;color:white;backdrop-filter:blur(9px);display:grid;place-items:center;font-size:25px;box-shadow:0 7px 26px #0007;transition:transform .2s,background .2s;z-index:2}.av-v-play:hover{transform:translate(-50%,-50%) scale(1.08);background:#0874d5}.av-v-demo,.av-v-featured{position:absolute;z-index:2;top:14px;border-radius:30px;padding:5px 10px;font-size:11px;backdrop-filter:blur(8px)}.av-v-demo{right:12px;color:#e4f4ff;background:#071a38c9}.av-v-featured{left:12px;color:#f8fffe;background:#11685dbf;display:flex;align-items:center;gap:5px}.av-v-copy{padding:18px 19px 20px;display:flex;flex-direction:column;gap:7px;flex:1;text-align:right}.av-v-meta{display:flex;gap:9px;align-items:center;flex-wrap:wrap;font-size:11px;color:var(--v-muted)}.av-v-meta span{background:var(--v-surface-2);padding:3px 8px;border-radius:7px}.av-v-card h2{margin:0;color:var(--v-ink);font-size:17px;line-height:1.8;font-weight:800}.av-v-card h2 a{color:inherit}.av-v-card h2 a:hover{color:var(--v-accent)}.av-v-card p{font-size:12px;color:var(--v-muted);line-height:1.9;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.av-v-details{font-size:12px;font-weight:700;color:var(--v-accent);margin-top:auto;padding-top:10px;display:inline-flex;align-items:center;gap:5px;align-self:flex-start}
/* 01 - Cinematic: hero + editorial playlist */
.av-v-cinema{display:grid;grid-template-columns:minmax(0,1.64fr) minmax(280px,.94fr);gap:18px;align-items:start;border-radius:24px;background:linear-gradient(130deg,#071e3c,#092b51 65%,#031226);padding:18px;box-shadow:0 18px 60px #001d4030}.av-v-cinema-lead{min-width:0;height:100%}.av-v-cinema .av-v-lead{background:#102844;border-color:#386b9b;color:#f0f8ff;height:100%}.av-v-lead .av-v-poster{min-height:260px}.av-v-lead .av-v-copy{background:#0a2443}.av-v-lead h2{font-size:clamp(20px,2.25vw,27px);color:#fff}.av-v-lead .av-v-meta,.av-v-lead p{color:#bed3e8}.av-v-lead .av-v-meta span{background:#1e466b}.av-v-lead .av-v-details{color:#77cbfb}.av-v-lead .av-v-play{width:74px;height:74px;font-size:30px}.av-v-cinema-side{min-width:0;display:flex;flex-direction:column;gap:10px}.av-v-section-label{display:flex;align-items:center;justify-content:space-between;color:#ebf8ff;padding:4px 6px;font-size:16px;font-weight:800}.av-v-section-label small{font-size:11px;color:#a4c6df;font-weight:500}.av-v-cinema .av-v-side{display:grid;grid-template-columns:130px minmax(0,1fr);gap:0;border:1px solid #355a7d;background:#103354;border-radius:13px;box-shadow:none;min-height:106px}.av-v-side .av-v-poster{aspect-ratio:4/3;height:100%;min-height:105px}.av-v-side .av-v-copy{padding:10px 13px;gap:5px}.av-v-side h2{color:#f4fbff;font-size:13px;line-height:1.7}.av-v-side .av-v-meta{color:#9fc9e9;font-size:10px}.av-v-side .av-v-meta span{background:#174467}.av-v-side p{display:none}.av-v-side .av-v-details{color:#74caf8;font-size:11px;padding-top:1px}.av-v-side .av-v-play{width:40px;height:40px;font-size:17px}.av-v-side .av-v-demo{top:6px;right:5px;font-size:9px;padding:3px 5px}.av-v-empty-side{padding:32px 16px;color:#bdd9f0;font-size:13px}.av-v-more{margin-top:32px}.av-v-more>h2{color:var(--v-ink);font-size:20px;margin:0 0 16px}
/* 02 - Modern video network */
.av-v-grid-mode{padding:20px;background:var(--v-surface-2);border:1px solid var(--v-line);border-radius:23px;box-shadow:var(--v-shadow)}.av-v-grid-bar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px;color:var(--v-ink);font-size:19px;font-weight:800}.av-v-grid-bar>span{display:flex;align-items:center;gap:7px}.av-v-filter{display:flex;gap:6px;border-radius:30px;padding:5px;background:var(--v-surface);border:1px solid var(--v-line)}.av-v-filter button{border:0;background:transparent;color:var(--v-muted);border-radius:40px;padding:7px 14px;font-size:12px}.av-v-filter button.is-current{color:#fff;background:#0874cf}.av-v-grid-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.av-v-more .av-v-grid-list{grid-template-columns:repeat(3,minmax(0,1fr))}.av-v-grid-mode .av-v-card .av-v-copy{min-height:170px}.av-v-filter-empty{color:var(--v-muted);font-size:13px;text-align:center}
/* 03 - Immersive carousel: progressive enhancement, standard fallback grid until JS initializes */
.av-v-carousel-mode{background:radial-gradient(ellipse at 50% 60%,#144f83,#06152e 65%,#030d1f);border:1px solid #3c6f9e;border-radius:26px;padding:24px 20px 18px;color:#ecf8ff;overflow:hidden;box-shadow:0 24px 70px #031b3b40}.av-v-carousel-meta{display:flex;justify-content:space-between;gap:20px;align-items:end;padding:2px 12px 10px}.av-v-carousel-meta h2{font-size:25px;color:#eefaff;margin:4px 0 0}.av-v-carousel-hint{color:#adc9e3;font-size:12px}.av-v-carousel-track{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:13px}.av-v-carousel-stage{min-height:330px;position:relative}.av-v-carousel-mode .av-v-carousel{background:#0d2947;border-color:#38698d}.av-v-carousel-mode .av-v-carousel h2{color:#f6fbff}.av-v-carousel-mode .av-v-carousel .av-v-meta{color:#b2cfe2}.av-v-carousel-mode .av-v-carousel .av-v-meta span{background:#123d61}.av-v-carousel-mode .av-v-carousel p{color:#bfd4e6}.av-v-carousel-mode .av-v-carousel .av-v-details{color:#79d3ff}
.av-v-carousel-mode.av-v-is-ready .av-v-carousel-track{display:block;position:relative;height:clamp(330px,42vw,450px);perspective:1100px;transform-style:preserve-3d}.av-v-carousel-mode.av-v-is-ready .av-v-carousel{position:absolute;width:min(430px,53vw);height:min(400px,100%);left:50%;top:50%;margin:0;will-change:transform,opacity;transition:transform .5s cubic-bezier(.2,.8,.2,1),opacity .35s,border-color .35s;box-shadow:0 16px 28px #0008;transform-origin:center center}.av-v-carousel-mode.av-v-is-ready .av-v-carousel .av-v-copy{padding:12px 15px 14px;gap:3px}.av-v-carousel-mode.av-v-is-ready .av-v-carousel h2{font-size:17px}.av-v-carousel-mode.av-v-is-ready .av-v-carousel p{display:none}.av-v-carousel-mode.av-v-is-ready .av-v-carousel .av-v-poster{aspect-ratio:16/10}.av-v-carousel-mode.av-v-is-ready .av-v-carousel[data-av-active="true"]{border:2px solid #60ccff;box-shadow:0 0 0 4px #63beff25,0 15px 55px #000b;z-index:30!important}.av-v-carousel-mode.av-v-is-ready .av-v-carousel[data-av-offstage="true"]{pointer-events:none;visibility:hidden}.av-v-carousel-controls{display:none;align-items:center;justify-content:center;gap:20px;padding:8px}.av-v-is-ready .av-v-carousel-controls{display:flex}.av-v-carousel-controls>button{width:44px;height:44px;border-radius:50%;background:#102e4c;border:1px solid #4f88b9;color:white;display:grid;place-items:center;font-size:19px}.av-v-carousel-controls>button:hover{background:#0879b4}.av-v-dots{display:flex;align-items:center;gap:7px}.av-v-dots button{border:0;background:#618bb0;width:9px;height:9px;border-radius:50%;padding:0}.av-v-dots button[aria-current="true"]{background:#27d19d;transform:scale(1.25)}
.av-v-empty{padding:85px 20px;display:grid;place-items:center;text-align:center;background:var(--v-surface);border:1px dashed var(--v-line);border-radius:22px;color:var(--v-muted)}.av-v-empty i{font-size:45px}.av-v-empty h2{color:var(--v-ink);margin:12px 0 3px}
/* User-initiated accessible player overlay */
.av-v-modal[hidden]{display:none!important}.av-v-modal{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:20px;direction:rtl}.av-v-modal-scrim{position:absolute;inset:0;background:#030b1ce8;backdrop-filter:blur(11px)}.av-v-modal-panel{width:min(100%,1000px);position:relative;border:1px solid #537fac;border-radius:18px;overflow:hidden;background:#091b35;color:#f1f9ff;box-shadow:0 32px 90px #000b}.av-v-modal-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 17px}.av-v-modal-head h2{font-size:17px;margin:0}.av-v-modal-head button{width:38px;height:38px;border:1px solid #547396;background:#173353;color:#fff;border-radius:10px;display:grid;place-items:center;font-size:19px}.av-v-modal-media{width:100%;aspect-ratio:16/9;background:#01060e}.av-v-modal-media :is(video,iframe){width:100%;height:100%;border:0;display:block}.av-v-modal-note{font-size:11px;color:#acc4de;padding:6px 17px 12px;margin:0}.av-v-play:focus-visible{outline:3px solid #fff}
@media(max-width:1000px){.av-v-cinema{grid-template-columns:minmax(0,1fr) 310px}.av-v-cinema .av-v-side{grid-template-columns:105px 1fr}.av-v-grid-list,.av-v-more .av-v-grid-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:740px){.av-v-heading{align-items:start;flex-direction:column;gap:12px}.av-v-cinema{grid-template-columns:1fr;padding:10px;border-radius:18px}.av-v-lead .av-v-poster{min-height:unset}.av-v-cinema-side{gap:9px}.av-v-cinema .av-v-side{grid-template-columns:120px 1fr}.av-v-cinema .av-v-side .av-v-poster{min-height:100px}.av-v-grid-mode{padding:12px}.av-v-grid-list,.av-v-more .av-v-grid-list{grid-template-columns:1fr}.av-v-grid-bar{font-size:15px}.av-v-carousel-mode{padding:15px 6px;border-radius:18px}.av-v-carousel-meta{flex-direction:column;align-items:start;gap:5px}.av-v-carousel-meta h2{font-size:19px}.av-v-carousel-hint{font-size:11px}.av-v-carousel-mode.av-v-is-ready .av-v-carousel-track{height:330px}.av-v-carousel-mode.av-v-is-ready .av-v-carousel{width:min(75vw,310px);max-height:310px}.av-v-carousel-mode.av-v-is-ready .av-v-carousel .av-v-copy{padding:8px 10px}.av-v-carousel-mode.av-v-is-ready .av-v-carousel h2{font-size:14px}.av-v-carousel-mode.av-v-is-ready .av-v-carousel .av-v-poster{aspect-ratio:16/10}.av-v-modal{padding:8px}.av-v-modal-head h2{font-size:14px}.av-v-modal-media{aspect-ratio:16/10}}
@media(prefers-reduced-motion:reduce){.av-videos-page *, .av-v-modal *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Preserve native [hidden] when grid filters are used. */
.av-videos-page .av-v-card[hidden],.av-videos-page .av-v-filter-empty[hidden]{display:none!important}
/* Peripheral carousel cards remain image-only, keeping titles and controls legible. */
.av-v-carousel-mode.av-v-is-ready .av-v-carousel:not([data-av-active="true"]) .av-v-copy{display:none}
.av-v-carousel-mode.av-v-is-ready .av-v-carousel:not([data-av-active="true"]) .av-v-poster{height:100%;aspect-ratio:auto}

.av-v-carousel-mode.av-v-is-ready .av-v-carousel:not([data-av-active="true"]) .av-v-poster-shade{background:linear-gradient(90deg,#0314287a,#03142862)}

/* AVIATION-VIDEO-CARDPLAY-V1.2: small direct-play controls in all 3 layouts; hide for demo-only covers. */
.av-videos-page .av-v-card .av-v-play{inset:auto 12px 12px auto;transform:none;width:43px;height:43px;font-size:19px;min-width:38px;min-height:38px;display:grid;place-items:center;border:1px solid #d7efffdf;background:#062c4ce6;color:#fff;border-radius:50%;box-shadow:0 8px 24px #0008;opacity:1;pointer-events:auto;z-index:5}
.av-videos-page .av-v-card .av-v-play:hover{transform:scale(1.07);background:#087ad0}
.av-videos-page .av-v-lead .av-v-play{width:53px;height:53px;font-size:24px}
.av-videos-page .av-v-side .av-v-play{width:38px;height:38px;font-size:16px;bottom:8px;right:8px}
.av-videos-page .av-v-carousel-mode.av-v-is-ready .av-v-carousel:not([data-av-active="true"]) .av-v-play{display:grid;opacity:1;pointer-events:auto}
.av-videos-page .av-v-carousel-mode.av-v-is-ready .av-v-carousel[data-av-offstage="true"] .av-v-play{pointer-events:none}
@media(max-width:740px){.av-videos-page .av-v-card .av-v-play{width:42px;height:42px}.av-videos-page .av-v-side .av-v-play{width:38px;height:38px}}

/* AVIATION-AUTO-SCROLL-V1 — carousel pause/resume. */
.av-videos-page .av-v-carousel-controls .av-v-auto-toggle{width:auto;min-width:108px;height:40px;padding:7px 13px;border:1px solid #82a9cf;border-radius:999px;background:#102e4c;color:#edfaff;font-size:12px;font-weight:700;white-space:nowrap;cursor:pointer}
.av-videos-page .av-v-carousel-controls .av-v-auto-toggle:hover{background:#195080}
.av-videos-page .av-v-carousel-controls .av-v-auto-toggle:focus-visible{outline:3px solid #a8dcff;outline-offset:3px}
.av-videos-page .av-v-carousel-controls .av-v-auto-toggle:disabled{opacity:.65;cursor:not-allowed}
@media(max-width:640px){.av-videos-page .av-v-carousel-controls{gap:10px;flex-wrap:wrap}}
