.ids-hero {
    --ids-hero-accent: #6bd6df;
    --ids-hero-background: #080b12;
    --ids-hero-glow: #193343;
    --ids-hero-text: #fff;
    --ids-hero-muted: #c1c9d2;
    --ids-hero-button: #fff;
    --ids-hero-button-text: #131c24;
    --ids-hero-height: 520px;
    --ids-hero-image-height: 350px;
    --ids-hero-content-width: 1280px;
    position: relative;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
    isolation: isolate;
    container-type: inline-size;
    color: var(--ids-hero-text);
    background: var(--ids-hero-background);
    font-family: Arial, Helvetica, sans-serif;
    text-align: left;
    line-height: 1.5;
    touch-action: pan-y;
}
.ids-hero *, .ids-hero *::before, .ids-hero *::after { box-sizing: border-box; }
.ids-hero--rainbow::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 3px;
    z-index: 5;
    background: linear-gradient(90deg, #f13b35, #ffd336, #65ce51, #12bad2, #5836ed, #ee1688);
}
.ids-hero .ids-hero__viewport { display: grid; width: 100%; overflow: hidden; }
.ids-hero .ids-hero__slide {
    grid-area: 1 / 1;
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
    visibility: hidden;
    pointer-events: none;
    background-color: var(--ids-hero-background);
    background-image: radial-gradient(ellipse at 87% 44%, var(--ids-hero-glow), var(--ids-hero-background) 74%);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.ids-hero .ids-hero__slide.is-active, .ids-hero .ids-hero__slide.is-leaving { visibility: visible; }
.ids-hero .ids-hero__slide.is-active { pointer-events: auto; z-index: 2; }
.ids-hero .ids-hero__slide.is-leaving { z-index: 1; }
.ids-hero .ids-hero__inner {
    width: 100%;
    max-width: var(--ids-hero-content-width);
    min-height: var(--ids-hero-height);
    height: 100%;
    margin: 0 auto;
    padding: 52px 76px 84px;
    display: grid;
    grid-template-columns: minmax(0, 46fr) minmax(0, 54fr);
    align-items: center;
    gap: 24px;
}
.ids-hero .ids-hero__copy { min-width: 0; z-index: 2; }
.ids-hero .ids-hero__eyebrow {
    margin: 0 0 20px;
    color: var(--ids-hero-accent);
    font-size: 11px;
    line-height: 1.5;
    letter-spacing: 2.2px;
    font-weight: 700;
    overflow-wrap: anywhere;
}
.ids-hero .ids-hero__heading {
    margin: 0 0 22px;
    padding: 0;
    font-family: inherit;
    color: var(--ids-hero-text);
    font-size: clamp(32px, 4.2cqw, 60px);
    line-height: 1.04;
    letter-spacing: -1.5px;
    font-weight: 800;
    text-transform: none;
    overflow-wrap: anywhere;
}
.ids-hero .ids-hero__heading > span { display: block; color: var(--ids-hero-accent); }
.ids-hero .ids-hero__description {
    margin: 0 0 28px;
    color: var(--ids-hero-muted);
    font-size: 16px;
    line-height: 1.65;
    overflow-wrap: anywhere;
}
.ids-hero .ids-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; }
.ids-hero a.ids-hero__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    min-height: 48px;
    max-width: 100%;
    padding: 15px 17px;
    border: 1px solid var(--ids-hero-button);
    border-radius: 0;
    background: var(--ids-hero-button);
    color: var(--ids-hero-button-text);
    box-shadow: none;
    font: 700 11px/1.4 Arial, Helvetica, sans-serif;
    letter-spacing: 1px;
    text-decoration: none;
    text-align: center;
    overflow-wrap: anywhere;
    transition: background-color .2s, color .2s, border-color .2s;
}
.ids-hero a.ids-hero__cta--secondary { background: transparent; color: var(--ids-hero-text); border-color: var(--ids-hero-muted); }
.ids-hero a.ids-hero__cta:hover { background: var(--ids-hero-accent); color: #071118; border-color: var(--ids-hero-accent); text-decoration: none; }
.ids-hero .ids-hero__cta > span { flex-shrink: 0; }
.ids-hero .ids-hero__art { position: relative; min-width: 0; padding-bottom: 52px; }
.ids-hero .ids-hero__image {
    display: block;
    width: 100%;
    max-width: 100%;
    height: var(--ids-hero-image-height);
    object-fit: contain;
    object-position: center;
    margin: 0;
    border: 0;
    border-radius: 0;
    position: relative;
    z-index: 1;
    filter: drop-shadow(0 22px 14px #0009);
}
.ids-hero .ids-hero__art--cover .ids-hero__image { object-fit: cover; filter: none; }
.ids-hero .ids-hero__light { position: absolute; bottom: 54px; left: 0; right: 0; height: 1px; background: var(--ids-hero-accent); box-shadow: 0 0 55px 15px #12b9d225; transform: rotate(-9deg); }
.ids-hero .ids-hero__caption { display: grid; gap: 5px; margin-top: 18px; text-align: right; color: var(--ids-hero-muted); font-size: 11px; line-height: 1.5; letter-spacing: 1px; overflow-wrap: anywhere; }
.ids-hero .ids-hero__caption strong { color: var(--ids-hero-text); font-size: 13px; font-weight: 700; }
.ids-hero .ids-hero__controls[hidden] { display: none; }
.ids-hero button { cursor: pointer; font-family: inherit; text-transform: none; box-shadow: none; }
.ids-hero .ids-hero__arrow { position: absolute; top: 50%; transform: translateY(-50%); width: 44px; height: 54px; padding: 0; margin: 0; display: grid; place-items: center; border: 1px solid #ffffff40; border-radius: 0; background: #050a1180; color: #fff; font-size: 36px; line-height: 1; font-weight: 400; z-index: 4; }
.ids-hero .ids-hero__prev { left: 12px; }
.ids-hero .ids-hero__next { right: 12px; }
.ids-hero .ids-hero__arrow:hover { background: #1c5361; }
.ids-hero .ids-hero__bottom { position: absolute; bottom: 12px; left: 7%; right: 7%; display: flex; align-items: center; justify-content: center; gap: 12px; z-index: 4; min-height: 44px; }
.ids-hero .ids-hero__dots { display: flex; flex-wrap: wrap; justify-content: center; max-width: 65%; }
.ids-hero .ids-hero__dot { width: 32px; height: 44px; background: transparent; border: 0; border-radius: 0; padding: 10px; margin: 0; display: grid; place-items: center; }
.ids-hero .ids-hero__dot span { width: 10px; height: 10px; display: block; border-radius: 50%; background: #75818d; }
.ids-hero .ids-hero__dot[aria-pressed="true"] span { background: var(--ids-hero-accent); box-shadow: 0 0 0 3px #65d6df25; }
.ids-hero .ids-hero__toggle { width: 44px; height: 44px; padding: 0; margin: 0; border: 1px solid #ffffff40; border-radius: 0; color: #fff; background: #050a1180; font-size: 14px; line-height: 1; }
.ids-hero .ids-hero__toggle:disabled { opacity: .5; cursor: default; }
.ids-hero .ids-hero__counter { position: absolute; right: 0; font-size: 11px; letter-spacing: 2px; color: var(--ids-hero-muted); }
.ids-hero :is(a,button):focus-visible { outline: 3px solid var(--ids-hero-accent); outline-offset: 4px; }
.ids-hero .ids-hero__sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; clip-path: inset(50%); overflow: hidden; white-space: nowrap; }
@container (max-width: 900px) {
    .ids-hero .ids-hero__inner { padding: 42px 64px 80px; gap: 18px; }
    .ids-hero .ids-hero__description { font-size: 14px; }
    .ids-hero a.ids-hero__cta { font-size: 10px; }
}
@container (max-width: 640px) {
    .ids-hero .ids-hero__inner { grid-template-columns: minmax(0, 1fr); padding: 36px 54px 76px; gap: 25px; }
    .ids-hero .ids-hero__heading { font-size: clamp(26px, 8.4cqw, 36px); }
    .ids-hero .ids-hero__art { padding-bottom: 0; }
    .ids-hero .ids-hero__image { height: min(var(--ids-hero-image-height), 260px); }
    .ids-hero .ids-hero__caption { margin-top: 10px; }
    .ids-hero .ids-hero__arrow { width: 40px; }
    .ids-hero .ids-hero__prev { left: 4px; }
    .ids-hero .ids-hero__next { right: 4px; }
    .ids-hero .ids-hero__counter { position: static; letter-spacing: 1px; }
    .ids-hero .ids-hero__bottom { left: 10px; right: 10px; gap: 6px; }
    .ids-hero .ids-hero__dot { width: 44px; }
}
@media (prefers-reduced-motion: reduce) { .ids-hero a.ids-hero__cta { transition: none; } }
@media (pointer: coarse) { .ids-hero .ids-hero__dot { width: 44px; } }
