/* Spotlight v1 — isolated component, no global selectors modified. */
.sda-spotlight{--sda-spotlight-bg:#0e1724;--sda-spotlight-accent:#f15b45;position:relative;isolation:isolate;padding:90px 0 0;background:var(--sda-spotlight-bg);color:#f6f8fd;overflow:hidden}
.sda-spotlight *, .sda-spotlight *::before, .sda-spotlight *::after{box-sizing:border-box}
.sda-spotlight__container{width:min(1260px,calc(100% - 56px));margin:0 auto}
.sda-spotlight__intro{max-width:min(1000px,100%);padding:10px 0 16px;margin-bottom:42px}
.sda-spotlight__eyebrow{display:block;margin-bottom:14px;color:var(--sda-spotlight-accent);font-weight:700;letter-spacing:.09em;text-transform:uppercase;font-size:15px}
.sda-spotlight__title{color:#f6f8fd!important;margin:0!important;font-size:clamp(40px,3.85vw,56px)!important;line-height:1.16!important;font-weight:800!important;letter-spacing:-.025em}
.sda-spotlight__title span{display:block;width:114px;height:3px;background:var(--sda-spotlight-accent);margin:18px 0 0;transform-origin:left;transition:transform .45s ease}
.sda-spotlight__description{color:#b4c2d2;font-size:clamp(18px,1.5vw,20px);line-height:1.72;margin:22px 0 0;max-width:950px}
.sda-spotlight__marquee{display:flex;gap:16px;align-items:center;margin-bottom:62px}
.sda-spotlight__viewport{flex:1;min-width:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.sda-spotlight__track{display:flex;align-items:center;width:max-content;gap:24px;transform:translate3d(0,0,0);will-change:transform}
.sda-spotlight__logo-item{width:clamp(145px,15vw,196px);height:105px;flex:none;display:flex;align-items:center;justify-content:center}
.sda-spotlight__logo-item a,.sda-spotlight__logo-static{height:100%;width:100%;display:flex;align-items:center;justify-content:center;text-decoration:none}
.sda-spotlight__logo-item img{width:100%;max-width:180px;max-height:76px;object-fit:contain;filter:grayscale(1);opacity:.67;transition:filter .3s,opacity .3s,transform .4s cubic-bezier(.2,.8,.2,1)}
.sda-spotlight__logo-item a:hover img,.sda-spotlight__logo-item a:focus-visible img,.sda-spotlight__logo-item:hover img{filter:grayscale(0);opacity:1;transform:scale(1.07)}
.sda-spotlight__arrow{appearance:none;border:1px solid rgba(255,255,255,.15);background:#16283c;color:var(--sda-spotlight-accent);border-radius:50%;width:44px;height:44px;min-width:44px;display:grid;place-items:center;font-size:25px;cursor:pointer;transition:transform .3s,background .3s,border-color .3s}
.sda-spotlight__arrow:hover{transform:scale(1.08);background:#233954;border-color:var(--sda-spotlight-accent)}
.sda-spotlight__arrow:focus-visible,.sda-spotlight__play:focus-visible,.sda-spotlight__modal-close:focus-visible{outline:3px solid #a5e9ff;outline-offset:4px}
.sda-spotlight__video-container{position:relative;width:100%;margin:0 auto;min-height:420px;background:#070e17}
.sda-spotlight__video-stage{position:relative;aspect-ratio:16/7;min-height:clamp(380px,49vw,640px);max-height:730px;overflow:hidden;isolation:isolate;background:#121e2d}
.sda-spotlight__poster,.sda-spotlight__preview-video,.sda-spotlight__preview-iframe{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;border:0;transform:scale(1);transition:transform .55s cubic-bezier(.16,1,.3,1),opacity .35s ease}
.sda-spotlight__preview-video,.sda-spotlight__preview-iframe{z-index:1;opacity:0}
.sda-spotlight__video-stage.is-playing .sda-spotlight__preview-video,.sda-spotlight__video-stage.is-playing .sda-spotlight__preview-iframe{opacity:1}
.sda-spotlight__poster{z-index:0}
.sda-spotlight__video-stage:hover .sda-spotlight__poster,.sda-spotlight__video-stage:hover .sda-spotlight__preview-video{transform:scale(1.025)}
.sda-spotlight__scrim{z-index:2;position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,13,23,.66),rgba(6,15,28,.19) 70%),rgba(0,0,0,.04);transition:background-color .25s;pointer-events:none}
.sda-spotlight__video-stage:hover .sda-spotlight__scrim,.sda-spotlight__video-stage:focus-within .sda-spotlight__scrim{background-color:rgba(0,0,0,.3)}
.sda-spotlight__video-label{z-index:3;position:absolute;left:max(30px,calc((100vw - 1240px)/2));bottom:clamp(26px,7vw,90px);max-width:min(54%,660px);display:flex;flex-direction:column;gap:12px;pointer-events:none;text-shadow:0 3px 18px rgba(0,0,0,.6)}
.sda-spotlight__video-label-mini{font-size:13px;letter-spacing:.13em;text-transform:uppercase;color:#f6bc96;font-weight:700}
.sda-spotlight__video-label strong{font-size:clamp(24px,3.2vw,50px);line-height:1.13;font-weight:800;color:#fff}
.sda-spotlight__video-label>span:last-child:not(:first-child){color:#edf3ff;font-size:clamp(14px,1.4vw,18px);line-height:1.6}
.sda-spotlight__play{position:absolute;z-index:4;top:50%;left:70%;transform:translate(-50%,calc(-50% + 12px)) scale(.88);display:flex;align-items:center;flex-direction:column;gap:12px;opacity:0;cursor:pointer;background:none;border:0;color:#fff;font-weight:700;transition:opacity .28s,transform .28s cubic-bezier(.16,1,.3,1)}
.sda-spotlight__video-stage:hover .sda-spotlight__play,.sda-spotlight__video-stage:focus-within .sda-spotlight__play,.sda-spotlight__play:focus-visible{opacity:1;transform:translate(-50%,-50%) scale(1)}
.sda-spotlight__play-icon{display:grid;place-items:center;width:92px;height:92px;border-radius:50%;background:var(--sda-spotlight-accent);box-shadow:0 0 0 12px rgba(255,255,255,.13),0 20px 42px rgba(0,0,0,.3);font-size:32px;padding-left:6px;transition:transform .2s}
.sda-spotlight__play:hover .sda-spotlight__play-icon{transform:scale(1.08)}
.sda-spotlight__play-text{background:rgba(0,0,0,.36);padding:5px 12px;border-radius:999px;white-space:nowrap}
.sda-spotlight__modal[hidden]{display:none!important}
.sda-spotlight__modal{position:fixed;z-index:99999;inset:0;display:flex;justify-content:center;align-items:center;padding:20px;animation:sda-spotlight-fade .25s ease-out both}
.sda-spotlight__modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.88);backdrop-filter:blur(5px)}
.sda-spotlight__modal-content{position:relative;z-index:2;width:min(1050px,94vw);aspect-ratio:16/9;background:#000;border:1px solid rgba(255,255,255,.18);border-radius:14px;box-shadow:0 30px 100px rgba(0,0,0,.65);animation:sda-spotlight-scale .3s cubic-bezier(.2,.8,.2,1) both}
.sda-spotlight__modal-player{position:absolute;inset:0;overflow:hidden;border-radius:14px}
.sda-spotlight__modal-player iframe,.sda-spotlight__modal-player video{width:100%;height:100%;border:0;display:block;object-fit:contain}
.sda-spotlight__modal-close{position:absolute;z-index:4;top:-15px;right:-15px;background:var(--sda-spotlight-accent);border:0;color:#fff;width:44px;height:44px;border-radius:50%;font-size:32px;line-height:1;cursor:pointer}
body.sda-spotlight-modal-open{overflow:hidden}
@keyframes sda-spotlight-fade{from{opacity:0}to{opacity:1}}
@keyframes sda-spotlight-scale{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}
@media(hover:none){.sda-spotlight__play{opacity:1;transform:translate(-50%,-50%) scale(1)}}
@media(max-width:700px){.sda-spotlight{padding-top:55px}.sda-spotlight__container{width:calc(100% - 30px)}.sda-spotlight__marquee{gap:7px;margin-bottom:32px}.sda-spotlight__arrow{width:35px;height:35px;min-width:35px;font-size:21px}.sda-spotlight__logo-item{width:150px;height:88px}.sda-spotlight__video-stage{aspect-ratio:4/3;min-height:340px}.sda-spotlight__video-label{left:24px;bottom:24px;max-width:70%;gap:5px}.sda-spotlight__video-label strong{font-size:23px}.sda-spotlight__video-label>span:last-child:not(:first-child){font-size:12px}.sda-spotlight__play{left:77%;top:44%;opacity:1;transform:translate(-50%,-50%) scale(1)}.sda-spotlight__play-icon{width:58px;height:58px;font-size:20px;box-shadow:0 0 0 6px rgba(255,255,255,.12)}.sda-spotlight__play-text{font-size:10px}.sda-spotlight__modal-close{top:-12px;right:0}}
@media(prefers-reduced-motion:reduce){.sda-spotlight *,.sda-spotlight *::before,.sda-spotlight *::after{animation:none!important;transition:none!important}.sda-spotlight__play{opacity:1;transform:translate(-50%,-50%) scale(1)}.sda-spotlight__track{will-change:auto}}


/* Spotlight v1.2 — cinematic full-bleed video and hover-only desktop play CTA.
   These overrides are scoped to Spotlight; Hero, Header, Navbar and other sections
   retain their existing styles. */
.sda-spotlight > .sda-spotlight__video-container {
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw !important;
    max-width: none !important;
    min-width: 100vw;
    margin: 0 !important;
    min-height: 0;
    overflow: hidden;
    background: #05080e;
}
.sda-spotlight > .sda-spotlight__video-container > .sda-spotlight__video-stage {
    width: 100% !important;
    max-width: none !important;
    aspect-ratio: auto !important;
    height: clamp(560px, calc(100svh - 95px), 900px) !important;
    min-height: 0 !important;
    max-height: none !important;
    border-radius: 0 !important;
    overflow: hidden;
}
.sda-spotlight__video-stage > .sda-spotlight__poster,
.sda-spotlight__video-stage > .sda-spotlight__preview-video {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center;
}
/* External YouTube/Vimeo iframes have no object-fit. JS calculates the
   equivalent 16:9 "cover" dimensions; base CSS centers the iframe. */
.sda-spotlight__video-stage > .sda-spotlight__preview-iframe {
    position: absolute;
    left: 50%;
    top: 50%;
    right: auto;
    bottom: auto;
    max-width: none !important;
    max-height: none !important;
    transform: translate(-50%, -50%);
    pointer-events: none !important;
}
.sda-spotlight__video-stage > .sda-spotlight__scrim {
    background: linear-gradient(180deg, rgba(3, 7, 14, .035) 0%, rgba(3, 7, 14, .08) 50%, rgba(3, 7, 14, .48) 100%);
    transition: background-color .32s ease;
}
.sda-spotlight__video-stage:hover > .sda-spotlight__scrim,
.sda-spotlight__video-stage:focus-within > .sda-spotlight__scrim {
    background-color: rgba(0, 0, 0, .16);
}
.sda-spotlight__video-stage > .sda-spotlight__video-label {
    left: max(28px, calc((100vw - 1240px)/2));
    bottom: clamp(30px, 5vw, 72px);
}
/* No visible Play overlay at rest for mouse users.
   Keyboard focus and touch users can always discover/access playback. */
.sda-spotlight__video-stage > .sda-spotlight__play {
    top: 50%;
    left: 50%;
    opacity: 0;
    pointer-events: none;
    transform: translate(-50%, calc(-50% + 16px)) scale(.9);
    transition: opacity .34s ease, transform .38s cubic-bezier(.16,1,.3,1);
}
.sda-spotlight__video-stage:hover > .sda-spotlight__play,
.sda-spotlight__video-stage:focus-within > .sda-spotlight__play,
.sda-spotlight__video-stage > .sda-spotlight__play:focus-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translate(-50%, -50%) scale(1);
}
/* Larger click-to-play modal while preserving 16:9 full-video framing. */
.sda-spotlight__modal-content {
    width: min(1500px, calc(100vw - 36px));
    max-height: calc(100dvh - 38px);
}
@media (hover: none), (pointer: coarse) {
    .sda-spotlight__video-stage > .sda-spotlight__play {
        opacity: 1;
        pointer-events: auto;
        transform: translate(-50%, -50%) scale(1);
    }
}
@media (max-width: 700px) {
    .sda-spotlight > .sda-spotlight__video-container > .sda-spotlight__video-stage {
        height: clamp(420px, 72svh, 680px) !important;
    }
    .sda-spotlight__video-stage > .sda-spotlight__video-label {
        left: 22px;
        bottom: 25px;
        max-width: calc(100% - 44px);
    }
    .sda-spotlight__video-stage > .sda-spotlight__play {
        left: 50%;
        top: 46%;
    }
    .sda-spotlight__video-stage > .sda-spotlight__video-label strong {
        font-size: clamp(20px, 5.3vw, 28px);
    }
    .sda-spotlight__modal-content { width: calc(100vw - 18px); }
}
@media (prefers-reduced-motion: reduce) {
    .sda-spotlight__video-stage > .sda-spotlight__play {
        opacity: 1;
        pointer-events: auto;
        transform: translate(-50%, -50%) scale(1);
    }
}


/* Spotlight v1.3: enlarged heading/description block, mobile-safe sizing only. */
@media (max-width: 700px) {
  .sda-spotlight__intro { max-width: 100%; padding: 4px 0 9px; margin-bottom: 32px; }
  .sda-spotlight__eyebrow { font-size: 12.5px; margin-bottom: 11px; }
  .sda-spotlight__title { font-size: clamp(34px, 7.8vw, 43px) !important; line-height: 1.2 !important; }
  .sda-spotlight__title span { width: 92px; margin-top: 13px; }
  .sda-spotlight__description { font-size: 17px; line-height: 1.65; margin-top: 17px; }
}
