/* VAYRON ROLEPLAY — LAUNCH V3. Production-scoped presentation and media. */
.vision-page {
  --vs-bg: #060a12;
  --vs-surface: #101827;
  --vs-surface-2: #0c1421;
  --vs-blue: #267eff;
  --vs-sky: #87c8ff;
  --vs-ice: #e9f4ff;
  --vs-muted: #9facbf;
  --vs-line: rgba(149,184,229,.16);
  background: var(--vs-bg);
  color: #f1f6fe;
  font-family: inherit;
  overflow:clip;
}
.vision-page *, .vision-master * {box-sizing:border-box}
.vision-page [hidden], .vision-dialog[hidden] {display:none!important}
.vision-page ::selection {background:#276dce;color:#fff}
.vision-page a, .vision-page button { -webkit-tap-highlight-color:transparent }
.vision-page :is(a, button, input):focus-visible, .vision-dialog :is(a,button):focus-visible {outline:2px solid #86ceff;outline-offset:3px}
.vision-wrap {width:min(1320px,calc(100% - 88px));margin-inline:auto}
.vision-page h1,.vision-page h2,.vision-page h3 {margin:0;line-height:1.02;letter-spacing:-.052em;color:#f5f9ff}
.vision-page h1,.vision-page h2 {font-weight:900}
.vision-page p {color:var(--vs-muted);line-height:1.7}
.vision-eyebrow {display:inline-flex;align-items:center;gap:12px;color:#79baff;font-size:11px;font-weight:850;letter-spacing:.17em;text-transform:uppercase}
.vision-eyebrow>span {color:#91a2b9;padding-right:11px;border-right:1px solid rgba(185,213,247,.3)}
.vision-page h2 {font-size:clamp(39px,4vw,65px);line-height:.99}
.vision-page h2 em {font-style:normal;color:#82bfff}
.vision-page h3 {font-weight:850}
.vision-buttons {display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.vision-btn {display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:50px;padding:0 19px;font-size:12px;font-weight:850;letter-spacing:.03em;border-radius:6px;border:1px solid transparent;text-decoration:none;transition:transform .2s,border-color .2s,background .2s,box-shadow .2s}
.vision-btn span {font-size:17px;font-weight:400}
.vision-btn:hover {transform:translateY(-2px)}
.vision-btn.primary {background:#237dff;color:#fff;border-color:#237dff;box-shadow:0 8px 30px rgba(18,100,237,.16)}
.vision-btn.primary:hover {background:#428fff;box-shadow:0 8px 40px rgba(24,113,246,.27)}
.vision-btn.secondary {color:#dceaff;background:rgba(21,37,61,.67);border-color:rgba(134,174,234,.34)}
.vision-btn.secondary:hover {border-color:#78b8ff;background:rgba(30,54,87,.79)}
.vision-btn.ghost {color:#a7c5e8;background:transparent;border-color:transparent}
.vision-btn.ghost:hover {color:#fff}

/* HERO / campaign introduction */
.vision-hero {position:relative;isolation:isolate;overflow:hidden;border-bottom:1px solid rgba(153,192,246,.1);background:radial-gradient(ellipse 570px 620px at 83% 43%,rgba(16,72,160,.25),transparent 73%),linear-gradient(116deg,#060a12 0%,#0a101c 46%,#101b2e 100%)}
.vision-hero:before {content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.22;background:linear-gradient(90deg,transparent 49.92%,rgba(121,177,241,.14) 50%,transparent 50.08%),linear-gradient(0deg,transparent 49.92%,rgba(121,177,241,.14) 50%,transparent 50.08%);background-size:102px 102px;mask-image:linear-gradient(90deg,transparent 15%,#000 75%)}
.vision-hero:after {content:"";position:absolute;inset:auto 0 0;height:150px;z-index:-1;background:linear-gradient(180deg,transparent,rgba(6,10,18,.9));pointer-events:none}
.vision-hero-glow {position:absolute;top:10%;left:53%;width:1px;height:78%;background:linear-gradient(180deg,transparent,rgba(99,169,255,.11),transparent);pointer-events:none}
.vision-hero-grid {display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:center;gap:clamp(24px,4vw,72px);padding:78px 0 55px;min-height:680px}
.vision-hero-copy {max-width:690px;position:relative;z-index:1}
.vision-hero-label {display:flex;align-items:center;gap:9px;color:#a9bdd9;font-size:10px;font-weight:850;letter-spacing:.13em;margin-bottom:49px;white-space:normal}
.vision-label-divider {color:#547398}
.vision-online-pulse {width:7px;height:7px;display:inline-block;flex:none;background:#57baff;border-radius:50%;box-shadow:0 0 15px #267eff88;animation:vision-pulse 3s ease-in-out infinite}
.vision-hero-overline {font-weight:850;color:#8dbfff;letter-spacing:.22em;text-transform:uppercase;font-size:12px}
.vision-hero-overline span {color:#70849c}
.vision-hero h1 {margin:16px 0 22px;font-size:clamp(55px,6.25vw,102px);font-weight:950;line-height:.93;letter-spacing:-.07em;text-wrap:balance}
.vision-hero-lead {font-size:clamp(21px,2.15vw,28px);font-weight:700;letter-spacing:-.02em;line-height:1.3!important;color:#dceafd!important;margin:0 0 11px!important}
.vision-hero-description {font-size:15px;line-height:1.78;max-width:510px;margin:0 0 27px}
.vision-hero-details {margin-top:34px;padding-top:22px;border-top:1px solid rgba(161,193,234,.15);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px}
.vision-hero-date {display:grid;gap:4px;padding-left:15px;border-left:2px solid #4098ff}
.vision-hero-date span {font-size:10px;color:#7c9dbf;letter-spacing:.14em;font-weight:900}
.vision-hero-date strong {color:#f3f8ff;font-size:14px;font-weight:850}
.vision-hero-timezone {font-size:10px;color:#7390b1;letter-spacing:.1em;font-weight:800}
.vision-hero-timezone i {display:inline-block;width:3px;height:3px;border-radius:50%;background:#6498d5;vertical-align:middle;margin-inline:6px}
.vision-hero-art {min-width:0;position:relative;padding:12px 0}
.vision-art-panel {aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;position:relative;isolation:isolate;border:1px solid rgba(119,171,246,.13);background:radial-gradient(ellipse 48% 43% at 50% 48%,rgba(38,127,255,.18),transparent 95%),linear-gradient(145deg,rgba(32,47,73,.2),rgba(7,14,25,.03) 70%);border-radius:50%;box-shadow:inset 0 0 80px #040a16aa,0 40px 150px rgba(0,0,0,.23)}
.vision-art-panel:before,.vision-art-panel:after {content:"";position:absolute;border-radius:50%;pointer-events:none}
.vision-art-panel:before {inset:8%;border:1px dashed rgba(121,168,231,.17);transform:rotate(15deg)}
.vision-art-panel:after {inset:-14%;z-index:-1;background:radial-gradient(circle,rgba(36,117,240,.13),transparent 67%);filter:blur(38px)}
.vision-art-panel img {position:relative;z-index:1;width:110%;height:110%;max-width:none;object-fit:contain;filter:drop-shadow(0 26px 31px rgba(0,0,0,.43));transform:translateY(-3%)}
.vision-art-index,.vision-art-stamp {position:absolute;font-size:10px;font-weight:800;letter-spacing:.13em;color:#7fa5d4}
.vision-art-index {top:8%;left:0}
.vision-art-stamp {bottom:9%;right:-4%}
.vision-art-stamp span {color:#438fff}
.vision-art-caption {margin:24px 0 0!important;text-align:center;font-size:10px!important;font-weight:850;letter-spacing:.18em;color:#7492b7!important}
.vision-art-caption span {color:#4a8fdd;padding-inline:6px}
.vision-hero-bottom {display:flex;justify-content:space-between;align-items:center;gap:20px;padding:0 0 22px;color:#64819e;letter-spacing:.15em;font-size:10px;font-weight:800}

/* Compact in-page navigation, aligned below sticky global navigation */
/* Header height and anchor spacing are measured at runtime, never assumed. */
.vision-section-nav {position:sticky;top:var(--vision-header-offset,0px);z-index:90;background:rgba(9,16,29,.92);border-bottom:1px solid rgba(141,177,222,.2);backdrop-filter:blur(14px);box-shadow:0 14px 36px rgba(0,0,0,.16)}
.vision-section-nav[data-vision-sticky="off"] {position:relative;top:auto;z-index:5}
.vision-section-nav[data-vision-sticky="on"] {position:sticky}
.vision-section-nav .vision-section-nav-inner {scroll-behavior:smooth}
.vision-section-nav-inner {display:flex;align-items:center;gap:26px;min-height:53px;overflow:auto hidden;scrollbar-width:none}
.vision-section-nav-inner::-webkit-scrollbar {display:none}
.vision-nav-label {font-size:11px;font-weight:900;letter-spacing:.11em;color:#f0f6ff;white-space:nowrap;padding-right:18px;border-right:1px solid rgba(163,201,246,.17)}
.vision-nav-label span {color:#378bff}
.vision-section-nav a {display:flex;align-items:center;min-height:53px;border-bottom:2px solid transparent;color:#93a8c4;font-size:10px;font-weight:850;letter-spacing:.095em;white-space:nowrap;transition:color .18s,border-color .18s}
.vision-section-nav a:hover,.vision-section-nav a.is-active {color:#f1f7ff;border-bottom-color:#4199ff}
.vision-page section[id] {scroll-margin-top:var(--vision-anchor-offset,24px)}

/* Editorial sections */
.vision-section {padding:92px 0;border-top:1px solid rgba(171,198,234,.055);position:relative}
.vision-section-heading {display:grid;grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr);align-items:end;gap:50px;margin-bottom:37px}
.vision-section-heading h2 {margin-top:16px;max-width:900px;text-wrap:balance}
.vision-section-heading>p {max-width:420px;font-size:15px;margin:0 0 4px;line-height:1.8}
.vision-story-section {background:linear-gradient(180deg,#070c15,#090f1a)}
.vision-story-grid {display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);gap:clamp(45px,6vw,100px);align-items:start}
.vision-story-intro h2 {margin:18px 0 22px;font-size:clamp(47px,4.5vw,76px);max-width:500px}
.vision-story-intro>p {font-size:16px;max-width:410px}
.vision-stat {margin-top:50px;display:grid;gap:8px;padding:25px 0 0;border-top:1px solid var(--vs-line)}
.vision-stat strong {color:#83c6ff;font-size:clamp(60px,6vw,84px);font-weight:900;letter-spacing:-.07em;line-height:.95}
.vision-stat strong span {color:#4392f5}
.vision-stat>span {font-size:12px;max-width:410px;color:#889aaf}
.vision-story-card {padding:35px 38px;border:1px solid rgba(129,169,223,.2);border-radius:11px;background:linear-gradient(135deg,rgba(18,31,51,.83),rgba(10,17,29,.83));position:relative;box-shadow:0 28px 80px rgba(0,0,0,.1)}
.vision-story-card:before {position:absolute;content:"";width:45px;height:2px;top:-1px;left:38px;background:#448fff}
.vision-note-title {display:flex;align-items:center;gap:10px;margin-bottom:20px;color:#85baff;font-size:10px;letter-spacing:.16em;font-weight:900}
.vision-note-title i {width:7px;height:7px;border:1px solid #5cb0ff;border-radius:50%}
.vision-story-card p {font-size:15px;margin:14px 0;line-height:1.86;color:#b9c7d9}
.vision-story-card p:first-of-type {color:#d7e5f5}
.vision-story-signature {margin-top:28px;padding-top:18px;border-top:1px solid rgba(127,171,227,.18);display:grid;gap:5px;letter-spacing:.06em;font-size:10px;color:#788da6;font-weight:800}
.vision-story-signature strong {color:#a9d1ff;font-size:12px}
.vision-future {background:linear-gradient(180deg,#0a101c,#0a1423)}
.vision-future-heading {align-items:center}
.vision-pillars {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.vision-pillars article {min-height:237px;padding:24px 22px;border:1px solid var(--vs-line);border-radius:9px;background:linear-gradient(145deg,rgba(18,30,49,.68),rgba(8,16,29,.32));display:flex;flex-direction:column;transition:border-color .2s,transform .2s,background .2s}
.vision-pillars article:hover {border-color:rgba(103,163,243,.51);transform:translateY(-2px);background:rgba(19,33,55,.75)}
.vision-pillar-index {display:flex;justify-content:space-between;color:#679fd8;font-size:11px;font-weight:800;letter-spacing:.1em}
.vision-pillar-index i {font-size:20px;font-weight:400;font-style:normal;color:#567493}
.vision-pillars h3 {margin:40px 0 11px;font-size:22px;letter-spacing:-.025em}
.vision-pillars p {font-size:13px;margin:0;color:#99aac1;line-height:1.7}

/* Countdown focus */
.vision-opening {background:radial-gradient(ellipse at 55% 50%,rgba(21,67,146,.14),transparent 75%),#090f1a}
.vision-countdown-card {text-align:center;position:relative;padding:52px clamp(22px,5vw,75px) 0;border:1px solid rgba(98,158,240,.28);border-radius:12px;background:linear-gradient(115deg,rgba(17,31,54,.94),rgba(7,15,28,.95) 65%);overflow:hidden;isolation:isolate}
.vision-countdown-card:before {content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.9%,rgba(108,148,210,.04) 50%,transparent 50.1%);background-size:100px 100%;pointer-events:none;z-index:-1}
.vision-countdown-card:after {position:absolute;content:"";top:-1px;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,#5fb1ff,transparent)}
.vision-opening-marker {color:#8fbdfa;font-size:10px;font-weight:900;letter-spacing:.2em;margin-bottom:24px}
.vision-opening-marker span {color:#5b7d9f;padding:0 8px}
.vision-countdown-header .vision-eyebrow {font-size:10px;margin-bottom:12px}
.vision-countdown-header h2 {font-size:clamp(38px,4.5vw,70px);max-width:800px;margin:auto}
.vision-countdown-header p {margin:14px auto 0;color:#a8c3e3;font-weight:700;font-size:14px}
.vision-countdown-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;width:min(800px,100%);margin:38px auto 50px}
.vision-countdown-grid>div {padding:25px 8px 21px;border:1px solid rgba(107,158,223,.23);border-radius:8px;background:rgba(6,15,28,.76);display:grid;gap:12px}
.vision-countdown-grid strong {font-size:clamp(38px,5vw,75px);line-height:1;letter-spacing:-.065em;color:#f1f7ff;font-variant-numeric:tabular-nums}
.vision-countdown-grid span {font-size:10px;color:#7aa6d8;letter-spacing:.18em;font-weight:850}
.vision-countdown-ended {margin:30px auto 45px}
.vision-countdown-ended strong {font-size:24px;color:#ddebff}
.vision-countdown-ended .vision-buttons {justify-content:center;margin:23px 0}
.vision-opening-bottom {border-top:1px solid rgba(132,164,213,.18);min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#657f9e;font-size:10px;font-weight:800;letter-spacing:.1em;text-align:left}
.vision-date-error {color:#ffcf9c!important}

/* Video library */
.vision-media-section {background:#080d17}
.vision-media-toolbar {display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 22px;flex-wrap:wrap}
.vision-filter {display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.vision-filter button {display:inline-flex;align-items:center;gap:9px;padding:10px 15px;min-height:40px;border-radius:6px;border:1px solid rgba(120,156,211,.19);background:#101929;color:#91a9c8;font-size:11px;font-weight:850;cursor:pointer;transition:.2s}
.vision-filter button:hover {color:#f1f7ff;border-color:rgba(91,155,250,.57)}
.vision-filter button.active {background:#1a66d3;border-color:#3985eb;color:#fff}
.vision-filter button span {color:#aad6ff;font-size:10px}
.vision-search .sr-only {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.vision-search {min-width:250px;width:min(295px,100%);min-height:40px;display:flex;align-items:center;gap:8px;border:1px solid rgba(129,164,215,.22);border-radius:6px;padding:0 12px;background:#0e1725;color:#91b4e2}
.vision-search>span:not(.sr-only) {font-size:21px}
.vision-search input {color:#e6f2ff;background:none;border:0;outline:0;min-width:0;width:100%;font-size:12px}
.vision-search input::placeholder {color:#7189a4}
.vision-search:focus-within {border-color:#61b0ff}
.vision-video-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.vision-video-card,.vision-vehicle-card,.vision-script-card {min-width:0;overflow:hidden;background:#0e1725;border:1px solid rgba(128,171,230,.16);border-radius:9px;transition:transform .22s,border-color .22s,box-shadow .22s}
.vision-video-card:hover,.vision-vehicle-card:hover,.vision-script-card:hover {border-color:rgba(98,157,237,.44);transform:translateY(-2px);box-shadow:0 14px 46px rgba(0,0,0,.18)}
.vision-video-card.is-featured {grid-column:span 2;display:grid;grid-template-columns:minmax(0,1.14fr) minmax(0,.86fr)}
.vision-video-thumb {border:0;padding:0;display:block;position:relative;aspect-ratio:16/9;width:100%;overflow:hidden;background:#111b2e;cursor:pointer;text-align:left}
.vision-video-card.is-featured .vision-video-thumb {height:100%;aspect-ratio:auto;min-height:260px}
.vision-video-thumb:after {position:absolute;content:"";inset:0;background:linear-gradient(0deg,rgba(3,8,15,.6),transparent 55%);pointer-events:none}
.vision-video-thumb img {width:100%;height:100%;object-fit:cover;transition:transform .35s;filter:saturate(.94)}
.vision-video-thumb:hover img {transform:scale(1.045)}
.vision-play {position:absolute;left:50%;top:50%;z-index:2;transform:translate(-50%,-50%);width:56px;height:56px;display:grid;place-items:center;padding-left:3px;border:1px solid rgba(242,248,255,.56);background:rgba(37,124,255,.9);border-radius:50%;font-size:16px;color:white;box-shadow:0 10px 40px rgba(15,72,190,.39)}
.vision-video-thumb em {position:absolute;z-index:3;top:13px;left:13px;background:#247dff;padding:6px 10px;border-radius:3px;color:#fff;font-size:10px;font-weight:900;letter-spacing:.1em;font-style:normal}
.vision-thumb-open {position:absolute;left:17px;bottom:15px;right:17px;display:flex;justify-content:space-between;z-index:2;color:#fff;font-size:10px;letter-spacing:.1em;font-weight:900}
.vision-thumb-open b {font-size:16px}
.vision-card-copy {padding:22px;display:flex;flex-direction:column}
.vision-card-meta {display:flex;gap:9px;justify-content:space-between;flex-wrap:wrap;margin-bottom:14px}
.vision-card-meta span {color:#7cbeff;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.vision-card-meta span:last-child {color:#a1afc2}
.vision-card-copy h3 {font-size:21px;line-height:1.15;overflow-wrap:anywhere}
.vision-card-copy p {font-size:13px;margin:12px 0 18px;color:#94a7be;line-height:1.65;flex:1}
.vision-card-actions {display:flex;justify-content:space-between;gap:14px;border-top:1px solid rgba(143,176,224,.16);padding-top:15px;flex-wrap:wrap}
.vision-card-actions button,.vision-card-actions a,.vision-script-copy button {cursor:pointer;border:0;padding:0;background:none;color:#83bdff;font-size:11px;font-weight:900;letter-spacing:.06em}
.vision-card-actions button:hover,.vision-card-actions a:hover {color:#d3eaff}
.vision-card-actions a {color:#899cb6}
.vision-empty-result {text-align:center;padding:38px;border:1px dashed var(--vs-line)}

/* Dynamic automobile gallery */
.vision-vehicles {background:linear-gradient(180deg,#0a101b,#0a111e)}
.vision-vehicle-grid {display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}
.vision-vehicle-card {grid-column:span 4}
.vision-vehicle-card:nth-child(1) {grid-column:span 7}
.vision-vehicle-card:nth-child(2) {grid-column:span 5}
.vision-vehicle-image {padding:0;display:block;width:100%;aspect-ratio:16/9;border:0;cursor:pointer;overflow:hidden;position:relative;background:#131d2b}
.vision-vehicle-image img {width:100%;height:100%;object-fit:cover;transition:transform .3s}
.vision-vehicle-image:hover img {transform:scale(1.035)}
.vision-vehicle-image>span {position:absolute;right:12px;bottom:12px;border-radius:5px;padding:9px 11px;font-size:10px;font-weight:850;letter-spacing:.08em;background:rgba(5,12,23,.8);color:#fff;border:1px solid rgba(219,232,255,.19)}
.vision-vehicle-image>span b {font-size:13px;font-weight:400;margin-left:8px}
.vision-vehicle-copy {display:flex;align-items:flex-end;justify-content:space-between;gap:15px;padding:19px 21px}
.vision-vehicle-copy>div {min-width:0}
.vision-vehicle-copy small {color:#78b9ff;letter-spacing:.1em;font-size:10px;font-weight:800;text-transform:uppercase}
.vision-vehicle-copy h3 {font-size:19px;margin:7px 0 5px}
.vision-vehicle-copy p {margin:0;font-size:12px;line-height:1.6}
.vision-vehicle-status {white-space:nowrap;flex-shrink:0;padding:6px 8px;border:1px solid rgba(136,175,226,.22);border-radius:4px;color:#a3bbd8;font-size:10px;font-weight:750}

/* Script lineup */
.vision-scripts {background:#080e19}
.vision-scripts-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.vision-script-card {display:flex;flex-direction:column}
.vision-script-card.is-featured {grid-column:span 2;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
.vision-script-visual {min-height:140px;display:grid;overflow:hidden;background:#0b1525}
.vision-script-card.is-featured .vision-script-visual {min-height:280px}
.vision-script-photo {width:100%;height:100%;max-height:340px;object-fit:contain}
.vision-script-fallback {display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:140px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 60%,rgba(24,95,195,.24),transparent 69%),repeating-linear-gradient(90deg,transparent 0 38px,rgba(117,174,235,.026) 38px 39px),#0c192a}
.vision-script-fallback:after {content:"";position:absolute;width:158px;height:158px;border-radius:50%;border:1px solid rgba(129,194,250,.17)}
.vision-script-fallback>span {font-size:76px;line-height:1;font-weight:950;letter-spacing:-.07em;color:#a2d5ff;text-shadow:0 0 45px rgba(23,114,255,.34)}
.vision-script-fallback small {color:#638bb9;font-size:10px;letter-spacing:.13em;font-weight:900}
.vision-script-copy {padding:23px;display:flex;flex-direction:column;flex:1}
.vision-script-category {color:#75b5ff;font-weight:850;font-size:10px;letter-spacing:.11em;text-transform:uppercase}
.vision-script-copy h3 {font-size:23px;margin:12px 0 9px}
.vision-script-copy p {font-size:13px;margin:0 0 20px;color:#9aacc2;flex:1}
.vision-script-footer {display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:14px;border-top:1px solid rgba(128,169,229,.16)}
.vision-script-footer small {color:#91a8c5;font-size:11px}
.vision-script-copy button {align-self:start;margin-top:16px}

/* Exit / final CTA */
.vision-last {text-align:center;overflow:hidden;padding:108px 0 65px;background:radial-gradient(ellipse 570px 320px at 50% 75%,rgba(28,100,214,.21),transparent 85%),linear-gradient(#0a1220,#050914)}
.vision-last h2 {font-size:clamp(35px,4.55vw,70px);line-height:1.08;margin:20px auto 18px;max-width:1060px;text-wrap:balance}
.vision-last h2 strong {font-weight:950;color:#88c4ff}
.vision-last p {font-size:16px}
.vision-last .vision-buttons {margin:29px auto;justify-content:center}
.vision-last-foot {margin-top:90px;padding-top:23px;border-top:1px solid rgba(144,175,220,.16);display:flex;justify-content:center;gap:9px;color:#6585ad;font-size:10px;letter-spacing:.15em;font-weight:900}
.vision-last-foot span {color:#2785ff}

/* Viewport-level accessible lightbox: one instance for video and imagery. */
.vision-dialog {position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:clamp(12px,3vw,32px);isolation:isolate;animation:vision-overlay-in .18s ease-out}
.vision-dialog[hidden],.vision-dialog [hidden] {display:none!important}
.vision-dialog-backdrop {position:absolute;inset:0;background:rgba(2,6,14,.83);backdrop-filter:blur(10px);cursor:zoom-out}
.vision-dialog-panel {position:relative;z-index:1;display:flex;flex-direction:column;width:min(1190px,100%);max-height:min(91dvh,100%);min-height:0;overflow:hidden;background:#0a1220;border:1px solid rgba(120,178,250,.38);border-radius:17px;box-shadow:0 38px 130px rgba(0,0,0,.75),0 0 65px rgba(30,103,255,.11);animation:vision-panel-in .21s ease-out}
.vision-modal-top {flex:0 0 auto;display:flex;justify-content:space-between;align-items:center;padding:12px 19px;gap:20px;border-bottom:1px solid rgba(149,194,252,.16);background:#0c1728}
.vision-modal-brand {font-weight:900;color:#e5f4ff;font-size:11px;letter-spacing:.13em}
.vision-modal-brand>span {color:#2d90ff;margin-right:8px;font-size:17px}
.vision-modal-brand small {color:#7196c9;font-size:10px;margin-left:10px;font-weight:700}
.vision-dialog-close {color:#eaf5ff;display:grid;place-items:center;flex:none;width:40px;height:40px;background:rgba(39,65,101,.6);border:1px solid #355277;border-radius:10px;font-size:18px;cursor:pointer}
.vision-dialog-close:hover,.vision-dialog-finish:hover {background:#265b9b;color:white}
.vision-dialog-stage {min-height:0;min-width:0;flex:1 1 auto;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 36%,rgba(23,82,162,.12),transparent 70%),#050b15}
.vision-dialog-stage iframe {width:100%;height:auto;aspect-ratio:16/9;border:0;display:block;max-height:65dvh}
.vision-dialog-stage img {display:block;max-width:100%;max-height:min(65dvh,700px);object-fit:contain}
.vision-modal-footer {flex:none;display:flex;gap:20px;align-items:center;justify-content:space-between;padding:16px 20px;background:#0b1626;border-top:1px solid rgba(149,194,252,.16)}
.vision-modal-copy {min-width:0}.vision-modal-kicker {color:#75b7ff;font-size:10px;letter-spacing:.16em;font-weight:900}.vision-modal-copy h2 {font-size:clamp(19px,2.2vw,27px);letter-spacing:-.025em;margin:4px 0 0;color:#f5f9ff;line-height:1.2}.vision-modal-copy p {margin:5px 0 0;color:#adc2dd;font-size:12px;line-height:1.55;max-width:60ch}
.vision-modal-actions {display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.vision-modal-actions a,.vision-dialog-finish {display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:#e7f2ff;border:1px solid rgba(105,168,246,.45);border-radius:8px;background:#1a3557;min-height:40px;padding:0 14px;font-weight:850;font-size:11px;letter-spacing:.025em;cursor:pointer}
.vision-dialog-finish {background:transparent;border-color:#2f4c71}
.vision-gallery-view {width:100%;height:100%;min-height:0;display:grid;grid-template-columns:46px minmax(0,1fr) 46px;align-items:center;gap:12px;padding:12px 18px}
.vision-gallery-view img {max-width:100%;max-height:min(65dvh,700px);object-fit:contain;justify-self:center}
.vision-gallery-view button {width:42px;height:48px;color:#fff;background:#142d4e;border:1px solid #315e99;border-radius:10px;font-size:29px;cursor:pointer}
.vision-gallery-view button:hover {background:#1b4b80}
.vision-gallery-view.is-single {grid-template-columns:minmax(0,1fr)}
.vision-gallery-view.is-single img {width:auto}
.vision-modal-loading,.vision-modal-error {display:grid;gap:12px;place-items:center;text-align:center;min-height:210px;padding:35px;color:#c5d8f0;font-size:14px}
.vision-modal-loading:before {content:"";width:32px;height:32px;border:3px solid #233954;border-top-color:#58adff;border-radius:50%;animation:vision-spinner .7s linear infinite}
.vision-dialog-open {overscroll-behavior:none}
@keyframes vision-overlay-in {from{opacity:0}to{opacity:1}}
@keyframes vision-panel-in {from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}
@keyframes vision-spinner {to{transform:rotate(360deg)}}
.vision-preview-bar {text-align:center;padding:10px 18px;background:#866017;color:#fff;font-weight:900;position:relative;z-index:3}

/* Responsiveness: no extra libraries, no layout shifts. */
@media(max-width:1150px) {
  .vision-wrap {width:min(100% - 60px,1200px)}
  .vision-hero-grid {gap:25px;min-height:610px}
  .vision-hero h1 {font-size:clamp(52px,6.4vw,79px)}
  .vision-section-nav-inner {gap:21px}
  .vision-pillars {grid-template-columns:repeat(2,minmax(0,1fr))}
  .vision-pillars article {min-height:190px}
  .vision-video-grid,.vision-scripts-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .vision-video-card.is-featured,.vision-script-card.is-featured {grid-column:span 2}
  .vision-vehicle-card {grid-column:span 6}
  .vision-vehicle-card:nth-child(1),.vision-vehicle-card:nth-child(2) {grid-column:span 6}
}
@media(max-width:760px) {
  .vision-wrap {width:calc(100% - 36px)}
  .vision-page h2 {font-size:clamp(34px,8.3vw,51px)}
  .vision-section {padding:62px 0}
  .vision-section-heading,.vision-story-grid {grid-template-columns:1fr;gap:21px}
  .vision-section-heading>p {max-width:620px}
  .vision-hero-grid {grid-template-columns:1fr;gap:18px;padding:48px 0 32px;min-height:0}
  .vision-hero-label {margin-bottom:28px;font-size:9px}
  .vision-hero h1 {font-size:clamp(51px,11vw,72px);margin:13px 0 17px}
  .vision-hero-overline {font-size:11px}
  .vision-hero-lead {font-size:21px}
  .vision-hero-description {font-size:14px}
  .vision-hero-art {grid-row:1;max-width:360px;width:min(80%,360px);margin:0 auto -4px}
  .vision-art-index,.vision-art-stamp,.vision-art-caption {display:none}
  .vision-hero-details {margin-top:27px}
  .vision-hero-bottom {font-size:9px}
  .vision-section-nav-inner {gap:19px}
  .vision-nav-label {display:none}
  .vision-section-nav a {font-size:10px}
  .vision-story-intro h2 {font-size:clamp(42px,10vw,65px)}
  .vision-stat {margin-top:25px}
  .vision-story-card {padding:26px 23px}
  .vision-pillars {grid-template-columns:repeat(2,minmax(0,1fr))}
  .vision-pillars article {padding:20px;min-height:190px}
  .vision-pillars h3 {margin-top:23px}
  .vision-countdown-card {padding:38px 18px 0}
  .vision-countdown-grid {gap:8px;margin:25px auto 35px}
  .vision-countdown-grid>div {padding:19px 8px}
  .vision-opening-bottom {font-size:9px}
  .vision-video-grid,.vision-scripts-grid {grid-template-columns:1fr}
  .vision-video-card.is-featured {grid-column:auto;grid-template-columns:1fr;display:flex;flex-direction:column}
  .vision-video-card.is-featured .vision-video-thumb {aspect-ratio:16/9;min-height:0;height:auto}
  .vision-script-card.is-featured {grid-column:auto;grid-template-columns:1fr}
  .vision-script-card.is-featured .vision-script-visual {min-height:160px}
  .vision-vehicle-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .vision-vehicle-card,.vision-vehicle-card:nth-child(1),.vision-vehicle-card:nth-child(2) {grid-column:span 1}
  .vision-vehicle-copy {display:block;padding:17px}
  .vision-vehicle-status {display:inline-block;margin-top:12px}
  .vision-last {padding:74px 0 50px}
  .vision-last-foot {margin-top:63px}
  .vision-dialog {padding:12px}
  .vision-dialog {padding:10px}
  .vision-dialog-panel {max-height:95dvh;border-radius:11px}
  .vision-modal-top {padding:9px 12px}
  .vision-modal-brand small {display:none}
  .vision-modal-footer {padding:12px;display:grid;gap:9px}
  .vision-modal-actions {justify-content:flex-start}
  .vision-modal-actions a,.vision-dialog-finish {flex:1 0 auto}
  .vision-gallery-view {grid-template-columns:34px minmax(0,1fr) 34px;gap:5px;padding:8px}
  .vision-gallery-view button {width:33px;height:43px}
}
@media(max-width:520px) {
  .vision-wrap {width:calc(100% - 30px)}
  .vision-hero-grid {padding-top:38px}
  .vision-hero-art {max-width:270px;width:66%}
  .vision-hero h1 {font-size:clamp(43px,11.3vw,57px)}
  .vision-hero-details {display:block}
  .vision-hero-timezone {display:block;margin:15px 0 0}
  .vision-btn {width:100%;justify-content:space-between}
  .vision-hero-bottom {padding-bottom:15px}
  .vision-hero-bottom span:last-child {display:none}
  .vision-pillars {grid-template-columns:1fr}
  .vision-pillars article {min-height:0;padding:22px}
  .vision-pillars h3 {margin-top:23px}
  .vision-video-grid,.vision-vehicle-grid,.vision-scripts-grid {grid-template-columns:1fr}
  .vision-vehicle-card,.vision-vehicle-card:nth-child(1),.vision-vehicle-card:nth-child(2) {grid-column:auto}
  .vision-media-toolbar {align-items:stretch}
  .vision-search {width:100%;min-width:0}
  .vision-countdown-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .vision-countdown-grid strong {font-size:clamp(39px,10vw,55px)}
  .vision-opening-bottom span:last-child {display:none}
  .vision-last h2 {font-size:clamp(33px,9vw,47px)}
}
@media(prefers-reduced-motion:reduce) {
  .vision-page *, .vision-page *:before,.vision-page *:after,.vision-dialog *,.vision-dialog {animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
@keyframes vision-pulse {0%,100% {opacity:.65}50% {opacity:1;box-shadow:0 0 19px rgba(54,145,255,.75)}}

/* Existing Master editor styling preserved unchanged. */
/* Master UI */
.vision-master{color:#f3f7ff;max-width:1400px;margin:auto;padding:14px 0 70px}.vision-master h1{font-size:clamp(28px,3.5vw,52px)}.vision-master h2{font-size:24px;margin:0 0 19px}.vision-master>section{padding:27px;background:rgba(16,26,43,.78);border:1px solid #27364d;border-radius:17px;margin:24px 0}.vision-master-head{display:flex;gap:30px;justify-content:space-between;align-items:center;padding-bottom:25px}.vision-master-head p{color:#a0b1cc;max-width:650px}.vision-master-tabs{display:flex;gap:8px;overflow-x:auto;white-space:nowrap;padding:12px 0}.vision-master-tabs a{border:1px solid #2e3e57;background:#0e1c31;padding:10px 15px;border-radius:7px;color:#bfd5f4;font-size:11px;font-weight:800}.vision-master-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:15px}.vision-master-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vision-master-field{display:grid;gap:7px;min-width:0}.vision-master-field span{font-size:11px;font-weight:800;letter-spacing:.06em;color:#b6c7e1}.vision-master-field input,.vision-master-field select,.vision-master-field textarea,.vision-master-delete input{width:100%;min-height:41px;padding:10px 12px;color:#ecf3ff;background:#0a1425;border:1px solid #2d4465;border-radius:9px}.vision-master-field textarea{resize:vertical;grid-column:span 2;line-height:1.6}.vision-master-field:has(textarea),.vision-master-form>.vision-master-submit{grid-column:1/-1}.vision-master-checks{display:flex;align-items:center;gap:24px;flex-wrap:wrap;grid-column:1/-1}.vision-master-checks label,.vision-master-switch{display:flex;gap:10px;align-items:center;font-size:12px;color:#c4d6ec;font-weight:650}.vision-master-checks input,.vision-master-switch input{accent-color:#176bff}.vision-master-form>button{justify-self:start}.vision-master-entries{display:grid;gap:12px}.vision-master-editor{border:1px solid #2b3d59;border-radius:12px;padding:0 15px;background:#101e32}.vision-master-editor summary{padding:14px;cursor:pointer;display:flex;gap:15px;justify-content:space-between;align-items:center}.vision-master-editor summary small{color:#8aa8ce}.vision-master-editor .vision-master-form{padding:10px 6px 22px}.vision-master-thumbnail{max-height:110px;object-fit:contain;background:#050c19;border-radius:9px}.vision-master-delete{display:flex;gap:10px;padding:15px 0 18px;border-top:1px solid #2c3c53;flex-wrap:wrap}.vision-master-delete input{max-width:300px}.vision-rule-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:15px 0}.vision-rule-stats>div{border:1px solid #293d5e;background:#0e1b30;padding:26px;border-radius:11px;display:grid;gap:7px}.vision-rule-stats strong{font-size:40px;color:#75b8ff}.vision-rule-stats span{font-size:12px;color:#adbed7}.vision-rule-list{display:grid;gap:8px}.vision-rule-list article{padding:17px;border:1px solid #29466b;border-radius:9px}.vision-rule-list p{margin:7px 0;font-size:12px;color:#aac2df}.vision-rule-list small{font-size:11px;color:#78bbff}.vision-rule-warning{margin-top:21px;color:#9eadc6;font-size:13px}



/* Launch design controls (only inside Vayron Master). */
.vision-master-design {grid-column:1/-1;scroll-margin-top:90px;padding:18px;display:flex;justify-content:space-between;align-items:center;gap:22px;border:1px solid rgba(71,134,225,.36);background:linear-gradient(105deg,rgba(22,51,91,.65),rgba(11,22,40,.8));border-radius:12px}
.vision-master-design h3 {margin:6px 0;font-size:18px;color:#eef6ff}
.vision-master-design p {font-size:12px;color:#aabfdc;max-width:600px;line-height:1.55}
.vision-design-toggle {padding:13px 15px;border-radius:11px;background:#111e31;border:1px solid #344b6c;min-width:300px}
.vision-design-toggle input {width:21px;height:21px;flex:none}
.vision-design-toggle span {display:grid;gap:4px}
.vision-design-toggle strong {color:#e6f4ff;font-size:12px}
.vision-design-toggle small {color:#9ebad9;font-size:11px;line-height:1.45}
@media(max-width:760px) {.vision-master-design{flex-direction:column;align-items:stretch}.vision-design-toggle{min-width:0}}
/* Vayron-only script media trigger. */
.vision-page .vision-script-image {display:block;position:relative;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in;overflow:hidden}
.vision-page .vision-script-image img {width:100%;height:100%;object-fit:cover;transition:transform .25s}
.vision-page .vision-script-image:hover img {transform:scale(1.025)}
.vision-page .vision-script-view {position:absolute;bottom:12px;right:12px;background:rgba(4,16,34,.85);border:1px solid #315a91;border-radius:6px;color:#e5f3ff;font-size:10px;font-weight:850;padding:9px}
/* Sharper V3 editorial rhythm without affecting shared website layouts. */
.vision-page .vision-section {padding-block:clamp(52px,6vw,80px)}
.vision-page .vision-section-heading h2 {line-height:1.035;letter-spacing:-.045em;text-wrap:balance}
.vision-page .vision-story-intro h2 {font-size:clamp(38px,4vw,68px);line-height:1.06;text-wrap:balance}
.vision-page .vision-video-card {transition:box-shadow .2s,border-color .2s,transform .2s}
.vision-page .vision-video-card:hover {box-shadow:0 22px 64px rgba(2,9,22,.45);border-color:rgba(85,161,255,.48);transform:translateY(-2px)}
.vision-page .vision-vehicle-card {transition:transform .22s,border-color .22s}
.vision-page .vision-vehicle-card:hover {transform:translateY(-2px);border-color:rgba(90,157,252,.47)}
/* Master editor responsiveness retained. */
@media(max-width:760px){
.vision-master-head{align-items:flex-start;flex-direction:column}
.vision-master-grid,.vision-master-form{grid-template-columns:1fr}
.vision-rule-stats{grid-template-columns:1fr}
.vision-master>section{padding:18px}
}

/* Vayron V3.1 – shared media player and explicit fallbacks. Scoped to launch dialog. */
.vision-dialog .vision-video-frame {width:100%;min-width:0;display:flex;flex-direction:column;background:#040a13;}
.vision-dialog .vision-video-frame > iframe {width:100%;height:auto;aspect-ratio:16/9;max-height:62dvh;min-height:190px;border:0;display:block;}
.vision-dialog .vision-video-fallback {display:flex;justify-content:flex-end;align-items:center;gap:11px;flex-wrap:wrap;padding:10px 16px;background:#0b1628;border-top:1px solid rgba(113,169,244,.22);color:#aabbd2;font-size:12px;}
.vision-dialog .vision-video-fallback span {flex:1 1 270px;}
.vision-dialog .vision-video-fallback button,.vision-dialog .vision-video-fallback a,.vision-dialog .vision-modal-retry {display:inline-flex;align-items:center;justify-content:center;min-height:37px;padding:8px 12px;border:1px solid #3568a3;border-radius:7px;background:#153252;color:#eff7ff;text-decoration:none;font:inherit;font-size:11px;font-weight:800;cursor:pointer;}
.vision-dialog .vision-video-fallback button:hover,.vision-dialog .vision-video-fallback a:hover,.vision-dialog .vision-modal-retry:hover {background:#205188;}
.vision-dialog .vision-gallery-view {min-height:260px;}
.vision-dialog .vision-modal-error {display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;}
@media(max-width:600px) {
  .vision-dialog .vision-video-frame > iframe {min-height:0;max-height:48dvh;}
  .vision-dialog .vision-video-fallback {font-size:11px;padding:9px;}
  .vision-dialog .vision-gallery-view {min-height:170px;}
}
