/* Scoped overrides: the portrait film stays complete on phones and desktops. */
.intro.intro-video-screen {
  height: 100vh;
  height: 100dvh;
  overflow: hidden;
  background: #c7b68b;
  isolation: isolate;
}
.intro.intro-video-screen video {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.intro-video-screen .intro-loading {
  color: #173236;
  font-size: 14px;
}
.intro-video-screen.is-playing .intro-loading { visibility: hidden; }
.intro-video-screen .intro-controls {
  position: absolute;
  z-index: 2;
  top: max(16px, env(safe-area-inset-top));
  left: max(16px, env(safe-area-inset-left));
  right: max(16px, env(safe-area-inset-right));
  display: flex;
  justify-content: space-between;
  gap: 12px;
  direction: ltr;
}
.intro-video-screen .skip,
.intro-video-screen .intro-sound {
  position: static;
  min-height: 44px;
  padding: 10px 14px;
  border: 1px solid rgba(255, 255, 255, .75);
  border-radius: 12px;
  background: rgba(11, 52, 50, .94);
  color: #fff;
  font: 500 12px Alexandria, sans-serif;
  line-height: 1.5;
  direction: rtl;
  cursor: pointer;
  touch-action: manipulation;
}
.intro-video-screen button:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 3px;
}
.launch-area-dialog { position: fixed; inset: 0; z-index: 20; display: grid; place-items: center; padding: 20px; background: rgba(11, 52, 50, .42); }
.launch-area-dialog-card { position: relative; width: min(100%, 380px); padding: 28px 22px 22px; border-radius: 24px; background: #fffaf4; color: #173236; text-align: center; box-shadow: 0 20px 60px rgba(11, 52, 50, .25); }
.launch-area-dialog-card h2 { margin: 0 0 10px; font-size: 22px; }
.launch-area-dialog-card p { margin: 0 0 10px; color: #0b5e5b; font-weight: 700; }
.launch-area-dialog-card small { display: block; margin-bottom: 20px; color: #718096; line-height: 1.7; }
.launch-area-dialog-card .primary { min-height: 44px; width: 100%; }
.launch-area-close { position: absolute; top: 8px; left: 10px; border: 0; background: transparent; color: #718096; font-size: 26px; cursor: pointer; }
.destination-row article:has(img[src*="offer-car"]) { display: none; }
.launch-area-notice { display:block; overflow:hidden; white-space:nowrap; direction:rtl; text-align:right; cursor:pointer; user-select:none; }
.launch-area-notice-window { display:block; direction:ltr; }
.launch-area-notice-track { display:flex; width:max-content; direction:ltr; padding-inline-start:0; animation:launch-area-marquee var(--marquee-duration,18s) linear infinite; }
.launch-area-notice-copy { box-sizing:border-box; flex:0 0 auto; min-width:var(--marquee-viewport,100%); padding:0 24px; direction:rtl; text-align:center; white-space:nowrap; }
.launch-area-notice:hover .launch-area-notice-track,
.launch-area-notice:focus .launch-area-notice-track,
.launch-area-notice:focus-within .launch-area-notice-track,
.launch-area-notice:active .launch-area-notice-track,
.launch-area-notice.is-paused .launch-area-notice-track { animation-play-state:paused; }
.launch-area-notice.is-static .launch-area-notice-track { animation:none; transform:none; padding-inline-start:0; white-space:normal; display:block; width:auto; }
.launch-area-notice.is-static .launch-area-notice-copy { display:block; min-width:0; padding:0; white-space:normal; }
.launch-area-notice.is-static .launch-area-notice-copy[aria-hidden] { display:none; }
.launch-area-notice:focus-visible { outline:2px solid #f4a742; outline-offset:3px; border-radius:6px; }
@keyframes launch-area-marquee { from { transform:translateX(calc(-1 * var(--marquee-distance,334px))); } to { transform:translateX(0); } }
@media (prefers-reduced-motion: reduce) { .launch-area-notice-track { animation:none !important; transform:none; padding-inline-start:0; white-space:normal; display:block; width:auto; } }
@media (prefers-reduced-motion: reduce) { .launch-area-notice-copy { display:block; min-width:0; padding:0; white-space:normal; } .launch-area-notice-copy[aria-hidden] { display:none; } }
.launch-area-banner-stack { display:grid; gap:6px; margin:0 16px 12px; }
.launch-area-banner-stack .launch-area-notice { margin:0; padding:8px 12px; border-radius:10px; background:#fff; color:var(--notice-color,#0B5E5B); font-size:11px; font-weight:700; }
.launch-area-banner-stack .trial-area-notice { color:var(--notice-color,#B42318); }
.site-banner-settings { margin:16px 0 24px; padding:16px; border:1px solid var(--line); border-radius:18px; background:#fff; }
.site-banner-settings h2 { margin:0 0 8px; font-size:15px; }
.site-banner-settings>p { color:var(--muted); font-size:10px; line-height:1.8; }
.site-banner-form fieldset { margin:12px 0; padding:12px; border:1px solid var(--line); border-radius:14px; }
.site-banner-form legend { font-size:11px; font-weight:700; padding:0 5px; }
.site-banner-field { display:block; margin:8px 0; font-size:10px; font-weight:700; }
.site-banner-field input,.site-banner-field textarea { width:100%; margin-top:5px; padding:9px; border:1px solid var(--line); border-radius:10px; font:11px Alexandria; }
.site-banner-field textarea { min-height:54px; resize:vertical; }
.site-banner-check { display:flex; gap:12px; align-items:center; font-size:10px; }
.site-banner-check input { margin:0; }
.site-banner-form .primary { width:100%; }
.site-banner-form [data-site-banner-status] { min-height:18px; color:var(--blue); font-size:10px; }
.commission-summary { color:var(--muted); font-size:10px; line-height:1.8; }
.auth { min-height:100svh; min-height:100dvh; overflow:auto; overscroll-behavior:contain; align-items:center; padding:clamp(24px,7vh,64px) 18px calc(24px + env(safe-area-inset-bottom)); background:linear-gradient(155deg,#0B5E5B 0%,#0F766E 68%,#173236 100%); }
.auth>img { width:min(180px,58vw); height:auto; max-height:104px; object-fit:contain; margin:0 auto 10px; }
.auth>h1,.auth>p,.auth>.auth-flow-tabs,.auth>.auth-flow-form,.auth>.link { width:min(100%,440px); }
.auth>h1 { margin:8px auto 4px; font-size:clamp(21px,6vw,28px); text-align:center; }
.auth>p { margin:0 auto; text-align:center; color:#F8EAD9; font-size:11px; line-height:1.8; }
.auth-flow-tabs { margin:18px auto 10px; }
.auth-flow-form { margin:0 auto; padding:18px; border:1px solid rgba(248,234,217,.55); box-shadow:0 14px 34px rgba(0,0,0,.18); }
.auth-flow-form label { color:var(--ink); }
.auth-flow-form input { background:#fffaf4; min-height:44px; }
.auth-flow-form .primary { min-height:46px; margin-top:6px; }
.auth>.link { color:#fff; text-align:center; margin:14px auto 0; }
@media (max-height:700px) and (max-width:600px) { .auth { padding-top:16px; } .auth>img { max-height:72px; margin-bottom:2px; } .auth>h1 { font-size:20px; } }
