:root {
    --ker-bg: #080b0f;
    --ker-bg-soft: #0e131a;
    --ker-surface: #121820;
    --ker-surface-2: #171f29;
    --ker-border: #27313d;
    --ker-border-soft: rgba(255, 255, 255, .08);
    --ker-text: #f5f7f9;
    --ker-muted: #9ca8b5;
    --ker-accent: #159447;
    --ker-accent-bright: #32c86b;
    --ker-accent-rgb: 21, 148, 71;
    --ker-accent-bright-rgb: 50, 200, 107;
    --ker-danger: #ef5364;
    --ker-warn: #f2a33a;
    --ker-radius: 20px;
    --ker-shadow: 0 24px 70px rgba(0, 0, 0, .28);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    background: var(--ker-bg);
    color: var(--ker-text);
    font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
}
button, input, select { font: inherit; }
a { color: inherit; }
button { color: inherit; }
img { max-width: 100%; }
[data-ker-protected-media] {
    -webkit-user-drag: none;
    user-select: none;
    -webkit-user-select: none;
    pointer-events: none;
}
[hidden] { display: none !important; }
.screen-reader-text {
    position: absolute !important;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
.ker-container { width: min(1240px, calc(100% - 40px)); margin: 0 auto; }

.ker-header {
    position: sticky;
    top: 0;
    z-index: 50;
    border-bottom: 1px solid var(--ker-border-soft);
    background: rgba(8, 11, 15, .9);
    backdrop-filter: blur(18px);
}
.ker-header__inner {
    min-height: 76px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
}
.ker-brand { display: inline-flex; align-items: baseline; gap: 10px; text-decoration: none; }
.ker-brand > span { font-size: 1.65rem; font-weight: 950; letter-spacing: -.05em; }
.ker-brand small { color: var(--ker-muted); font-size: .72rem; text-transform: uppercase; letter-spacing: .12em; }
.ker-nav__list { display: flex; align-items: center; gap: 24px; list-style: none; margin: 0; padding: 0; }
.ker-nav__list a { color: #c8d0d9; font-weight: 650; text-decoration: none; font-size: .92rem; transition: color .2s ease; }
.ker-nav__list a:hover, .ker-nav__list a:focus-visible, .ker-nav__list .current-menu-item > a { color: #fff; }
.ker-nav-toggle { display: none; width: 42px; height: 42px; padding: 10px; border: 1px solid var(--ker-border); border-radius: 12px; background: var(--ker-surface); }
.ker-nav-toggle > span:not(.screen-reader-text) { display: block; height: 2px; margin: 4px 0; background: #fff; border-radius: 999px; }

.ker-eyebrow, .ker-public-kicker {
    display: inline-block;
    color: var(--ker-accent-bright);
    font-size: .72rem;
    font-weight: 850;
    letter-spacing: .18em;
    text-transform: uppercase;
}
.ker-hero {
    padding: 130px 0 110px;
    background:
        radial-gradient(circle at 78% 10%, rgba(var(--ker-accent-rgb), .24), transparent 28%),
        radial-gradient(circle at 4% 78%, rgba(68, 104, 255, .12), transparent 25%);
}
.ker-hero h1 { margin: 12px 0 0; font-size: clamp(5rem, 14vw, 11rem); line-height: .78; letter-spacing: -.08em; }
.ker-hero p { max-width: 700px; margin: 34px 0 0; color: var(--ker-muted); font-size: clamp(1.1rem, 2vw, 1.35rem); }
.ker-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 36px; }
.ker-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 20px;
    border: 1px solid var(--ker-border);
    border-radius: 13px;
    color: #fff;
    background: var(--ker-surface);
    text-decoration: none;
    font-weight: 750;
}
.ker-button--primary { border-color: var(--ker-accent); background: var(--ker-accent); }
.ker-section { padding: 82px 0; }
.ker-section h2 { max-width: 800px; margin: 10px 0 34px; font-size: clamp(2rem, 4.7vw, 4rem); line-height: 1; letter-spacing: -.045em; }
.ker-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.ker-card { min-height: 230px; padding: 28px; border: 1px solid var(--ker-border); border-radius: var(--ker-radius); background: linear-gradient(145deg, var(--ker-surface), #0d1218); }
.ker-card__number { display: block; color: #5f6b78; font-weight: 850; font-size: .78rem; letter-spacing: .1em; }
.ker-card h3 { margin: 52px 0 10px; font-size: 1.25rem; }
.ker-card p { margin: 0; color: var(--ker-muted); }
.ker-entry { max-width: 900px; }

.ker-results-hero {
    position: relative;
    overflow: hidden;
    padding: 76px 0 52px;
    border-bottom: 1px solid var(--ker-border-soft);
    background:
        radial-gradient(circle at 86% 15%, rgba(var(--ker-accent-rgb), .21), transparent 27%),
        linear-gradient(180deg, #0b1016 0%, var(--ker-bg) 100%);
}
.ker-results-hero::after {
    content: "";
    position: absolute;
    inset: auto -10% -140px 45%;
    height: 240px;
    border: 1px solid rgba(255,255,255,.04);
    border-radius: 50%;
    transform: rotate(-8deg);
}
.ker-results-hero .ker-container { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 42px; align-items: end; }
.ker-results-hero h1 { margin: 10px 0 0; font-size: clamp(2.8rem, 6vw, 5.8rem); line-height: .94; letter-spacing: -.06em; }
.ker-results-hero h1 span { color: var(--ker-accent-bright); }
.ker-results-hero p { margin: 18px 0 0; color: var(--ker-muted); }
.ker-public-filters { display: grid; grid-template-columns: 130px 190px auto; gap: 10px; align-items: end; }
.ker-public-filters label { display: grid; gap: 7px; color: var(--ker-muted); font-size: .76rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.ker-public-filters select, .ker-public-filters button {
    min-height: 47px;
    border: 1px solid var(--ker-border);
    border-radius: 12px;
    color: var(--ker-text);
    background: #111821;
}
.ker-public-filters select { padding: 0 36px 0 13px; }
.ker-public-filters button { padding: 0 18px; border-color: var(--ker-accent); background: var(--ker-accent); font-weight: 800; cursor: pointer; }

.ker-public-page { padding: 64px 0 76px; }
.ker-public-page--standings { border-top: 1px solid var(--ker-border-soft); background: #0a0e13; }
.ker-public-section-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 24px; }
.ker-public-section-head h2 { margin: 7px 0 0; font-size: clamp(2.2rem, 4vw, 3.7rem); line-height: 1; letter-spacing: -.045em; }
.ker-segmented { display: inline-flex; padding: 4px; border: 1px solid var(--ker-border); border-radius: 14px; background: #0d131a; }
.ker-segmented button { min-height: 42px; padding: 0 16px; border: 0; border-radius: 10px; background: transparent; color: var(--ker-muted); font-weight: 800; cursor: pointer; }
.ker-segmented button span { display: inline-flex; min-width: 22px; height: 22px; align-items: center; justify-content: center; margin-left: 7px; padding: 0 6px; border-radius: 999px; background: rgba(255,255,255,.07); font-size: .72rem; }
.ker-segmented button.is-active { color: #fff; background: var(--ker-accent); box-shadow: 0 8px 24px rgba(var(--ker-accent-rgb),.2); }
.ker-public-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin: 0 0 16px; }
.ker-public-search { position: relative; width: min(420px, 100%); }
.ker-public-search::before { content: "⌕"; position: absolute; left: 15px; top: 50%; transform: translateY(-52%); color: #657280; font-size: 1.3rem; }
.ker-public-search input { width: 100%; min-height: 47px; padding: 0 15px 0 43px; border: 1px solid var(--ker-border); border-radius: 12px; outline: 0; color: var(--ker-text); background: #0f151c; }
.ker-public-search input:focus { border-color: rgba(var(--ker-accent-bright-rgb),.7); box-shadow: 0 0 0 3px rgba(var(--ker-accent-rgb),.13); }
.ker-public-toolbar__hint { color: #6f7d8b; font-size: .82rem; }

.ker-public-table-wrap { overflow-x: auto; border: 1px solid var(--ker-border); border-radius: 18px; background: #0d131a; box-shadow: var(--ker-shadow); }
.ker-public-table { width: 100%; min-width: 970px; border-collapse: collapse; }
.ker-public-table th { padding: 14px 16px; border-bottom: 1px solid var(--ker-border); color: #71808f; font-size: .68rem; font-weight: 850; text-align: left; text-transform: uppercase; letter-spacing: .1em; white-space: nowrap; background: #0b1016; }
.ker-public-table td { padding: 13px 16px; border-bottom: 1px solid rgba(255,255,255,.055); color: #d9e0e6; font-size: .9rem; white-space: nowrap; }
.ker-public-table tbody tr:last-child td { border-bottom: 0; }
.ker-public-table tbody tr { transition: background .18s ease; }
.ker-public-table tbody tr:hover { background: rgba(255,255,255,.025); }
.ker-public-table tbody tr.has-status { background: rgba(239,83,100,.025); }
.ker-position-cell { width: 82px; }
.ker-position { display: inline-flex; width: 38px; height: 38px; align-items: center; justify-content: center; border: 1px solid #313d4a; border-radius: 11px; color: #eaf0f5; background: #151d26; font-weight: 900; }
.ker-position--1 { color: #1a1400; border-color: #e5bd42; background: #f0cb56; }
.ker-position--2 { color: #20262c; border-color: #adb7c0; background: #c7cfd6; }
.ker-position--3 { color: #26190f; border-color: #b97846; background: #c88958; }
.ker-position-cell small { display: block; margin-top: 4px; color: #7b8792; font-size: .66rem; }
.ker-public-pilot { display: flex; align-items: center; gap: 11px; min-width: 210px; }
.ker-public-avatar { width: 48px; height: 48px; flex: 0 0 48px; border-radius: 14px; object-fit: cover; background: #18212b; }
.ker-public-avatar--placeholder { display: inline-flex; align-items: center; justify-content: center; width: var(--avatar-size, 48px); height: var(--avatar-size, 48px); flex-basis: var(--avatar-size, 48px); color: #d7e2eb; background: linear-gradient(145deg, #1f2b37, #111821); font-size: .72rem; font-weight: 900; letter-spacing: .02em; }
.ker-pilot-photo-button, .ker-pilot-name-button { padding: 0; border: 0; background: transparent; cursor: pointer; }
.ker-pilot-photo-button { display: flex; border-radius: 14px; }
.ker-pilot-photo-button:focus-visible { outline: 2px solid var(--ker-accent-bright); outline-offset: 3px; }
.ker-pilot-name-button { color: #fff; font-weight: 800; text-align: left; }
.ker-pilot-name-button:hover { color: var(--ker-accent-bright); }
.ker-pilot-meta { display: flex; align-items: center; gap: 7px; margin-top: 3px; color: #768391; font-size: .68rem; }
.ker-race-status { display: inline-flex; align-items: center; min-height: 21px; padding: 0 7px; border-radius: 999px; color: #fff; background: #485461; font-size: .61rem; font-weight: 900; letter-spacing: .04em; }
.ker-race-status--dsq, .ker-race-status--excluded { background: #b22d3d; }
.ker-race-status--dnf { background: #8c5a14; }
.ker-race-status--dns { background: #59616b; }
.ker-points-total { color: #74eba0; font-size: 1.04rem; }
.ker-search-empty { padding: 18px; margin-top: 12px; border: 1px dashed var(--ker-border); border-radius: 13px; color: var(--ker-muted); text-align: center; }
.ker-public-empty { display: grid; gap: 5px; padding: 34px; border: 1px dashed var(--ker-border); border-radius: var(--ker-radius); color: var(--ker-muted); background: rgba(255,255,255,.015); }
.ker-public-empty strong { color: #fff; font-size: 1.05rem; }
.ker-public-empty--error { border-color: rgba(239,83,100,.4); }

.ker-pilot-modal { position: fixed; inset: 0; z-index: 200; display: grid; place-items: center; padding: 24px; }
.ker-pilot-modal__backdrop { position: absolute; inset: 0; background: rgba(2,4,6,.78); backdrop-filter: blur(8px); }
.ker-pilot-modal__dialog { position: relative; width: min(760px, 100%); display: grid; grid-template-columns: minmax(260px, .85fr) minmax(0, 1.15fr); overflow: hidden; border: 1px solid #2a3542; border-radius: 26px; background: #10161e; box-shadow: 0 40px 120px rgba(0,0,0,.6); }
.ker-pilot-modal__close { position: absolute; top: 14px; right: 14px; z-index: 2; width: 40px; height: 40px; border: 1px solid rgba(255,255,255,.15); border-radius: 50%; color: #fff; background: rgba(5,8,11,.7); font-size: 1.5rem; cursor: pointer; }
.ker-pilot-modal__visual { min-height: 470px; display: grid; place-items: center; overflow: hidden; background: radial-gradient(circle at 50% 25%, rgba(var(--ker-accent-bright-rgb),.32), transparent 38%), #0b1016; }
.ker-pilot-modal__visual img { width: 100%; height: 100%; min-height: 470px; object-fit: cover; }
.ker-pilot-modal__placeholder { display: grid; width: 170px; height: 170px; place-items: center; border: 1px solid #334151; border-radius: 36px; color: var(--ker-accent-bright); background: #121b24; font-size: 3rem; font-weight: 950; }
.ker-pilot-modal__content { display: flex; flex-direction: column; justify-content: center; padding: 42px; }
.ker-pilot-modal__content h3 { margin: 10px 0 4px; font-size: clamp(2.1rem, 4vw, 3.2rem); line-height: .95; letter-spacing: -.05em; }
.ker-pilot-modal__content > p { margin: 8px 0 0; color: var(--ker-muted); }
.ker-pilot-modal__tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.ker-pilot-modal__tags span { display: inline-flex; min-height: 29px; align-items: center; padding: 0 10px; border: 1px solid #2b3744; border-radius: 999px; color: #b8c4ce; background: #151d26; font-size: .72rem; font-weight: 750; }
.ker-pilot-modal__stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; margin-top: 28px; }
.ker-pilot-modal__stats > div { padding: 14px; border: 1px solid #25303c; border-radius: 13px; background: #0c1117; }
.ker-pilot-modal__stats span, .ker-pilot-modal__stats strong { display: block; }
.ker-pilot-modal__stats span { color: #6e7c89; font-size: .66rem; text-transform: uppercase; letter-spacing: .08em; }
.ker-pilot-modal__stats strong { margin-top: 4px; color: #fff; font-size: 1rem; }
.ker-modal-open { overflow: hidden; }

.ker-footer { border-top: 1px solid var(--ker-border-soft); background: #070a0e; color: var(--ker-muted); }
.ker-footer__inner { min-height: 110px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.ker-footer__inner > div { display: flex; align-items: baseline; gap: 10px; }
.ker-footer strong { color: #fff; font-size: 1.2rem; }
.ker-footer__inner span { font-size: .82rem; }

@media (max-width: 980px) {
    .ker-results-hero .ker-container { grid-template-columns: 1fr; }
    .ker-public-filters { grid-template-columns: 1fr 1fr auto; }
    .ker-grid { grid-template-columns: 1fr; }
    .ker-card { min-height: 180px; }
    .ker-card h3 { margin-top: 30px; }
}

@media (max-width: 760px) {
    .ker-container { width: min(100% - 26px, 1240px); }
    .ker-header__inner { min-height: 66px; }
    .ker-brand small { display: none; }
    .ker-nav-toggle { display: block; }
    .ker-nav { position: absolute; top: 66px; left: 13px; right: 13px; display: none; padding: 10px; border: 1px solid var(--ker-border); border-radius: 16px; background: #0d131a; box-shadow: var(--ker-shadow); }
    .ker-nav.is-open { display: block; }
    .ker-nav__list { align-items: stretch; flex-direction: column; gap: 0; }
    .ker-nav__list a { display: block; padding: 12px 10px; }
    .ker-hero { padding: 92px 0 78px; }
    .ker-results-hero { padding: 48px 0 34px; }
    .ker-public-filters { grid-template-columns: 1fr 1fr; }
    .ker-public-filters button { grid-column: 1 / -1; }
    .ker-public-page { padding: 48px 0 56px; }
    .ker-public-section-head { align-items: stretch; flex-direction: column; }
    .ker-segmented { width: 100%; }
    .ker-segmented button { flex: 1; }
    .ker-public-toolbar { align-items: flex-start; flex-direction: column; }
    .ker-public-search { width: 100%; }
    .ker-public-toolbar__hint { display: none; }
    .ker-pilot-modal__dialog { grid-template-columns: 1fr; max-height: calc(100vh - 30px); overflow-y: auto; }
    .ker-pilot-modal__visual, .ker-pilot-modal__visual img { min-height: 300px; max-height: 360px; }
    .ker-pilot-modal__content { padding: 28px 24px 30px; }
    .ker-pilot-modal__stats { grid-template-columns: 1fr 1fr 1fr; }
    .ker-footer__inner { align-items: flex-start; flex-direction: column; justify-content: center; padding: 28px 0; }
}

@media (max-width: 520px) {
    .ker-public-filters { grid-template-columns: 1fr; }
    .ker-public-filters button { grid-column: auto; }
    .ker-results-hero h1 { font-size: 3rem; }
    .ker-segmented button { padding: 0 10px; font-size: .83rem; }
    .ker-pilot-modal { padding: 10px; }
    .ker-pilot-modal__stats { grid-template-columns: 1fr; }
}


.ker-pilot-modal__socials {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 22px;
}

.ker-pilot-modal__socials[hidden] {
    display: none;
}

.ker-pilot-social {
    display: inline-flex;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    padding: 0 14px;
    border: 1px solid #2b3744;
    border-radius: 999px;
    color: #e9f0f5;
    background: #151d26;
    font-size: .76rem;
    font-weight: 800;
    text-decoration: none;
    transition: transform .18s ease, border-color .18s ease, background .18s ease;
}

.ker-pilot-social:hover,
.ker-pilot-social:focus-visible {
    transform: translateY(-1px);
    border-color: #4d657a;
    background: #1b2732;
    color: #fff;
}

.ker-pilot-social--instagram,
.ker-pilot-social--tiktok,
.ker-pilot-social--youtube {
    border-color: rgba(109, 230, 155, .35);
}


/* =========================================================
   KER v1.0 — Eventos e páginas dinâmicas de etapa
   ========================================================= */

.ker-nav__events {
    position: relative;
}

.ker-nav__submenu {
    position: absolute;
    top: calc(100% + 10px);
    left: 50%;
    z-index: 80;
    width: 230px;
    display: grid;
    gap: 4px;
    padding: 8px;
    margin: 0;
    list-style: none;
    border: 1px solid var(--ker-border);
    border-radius: 15px;
    background: rgba(13, 19, 26, .98);
    box-shadow: 0 20px 60px rgba(0, 0, 0, .38);
    opacity: 0;
    visibility: hidden;
    transform: translate(-50%, 6px);
    transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
}

.ker-nav__events:hover .ker-nav__submenu,
.ker-nav__events:focus-within .ker-nav__submenu {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, 0);
}

.ker-nav__submenu a {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 10px 11px !important;
    border-radius: 9px;
    color: #eef3f7 !important;
    text-decoration: none;
}

.ker-nav__submenu a:hover,
.ker-nav__submenu a:focus-visible {
    background: rgba(255, 255, 255, .06);
}

.ker-nav__submenu small {
    color: #6e7d8a;
    font-size: .68rem;
    font-weight: 800;
}

.ker-event-page {
    min-height: 70vh;
    background:
        radial-gradient(circle at 92% 0%, rgba(var(--ker-accent-rgb), .08), transparent 28rem),
        #080b0f;
}

.ker-event-hero {
    position: relative;
    min-height: 430px;
    display: flex;
    align-items: flex-end;
    overflow: hidden;
    border-bottom: 1px solid var(--ker-border-soft);
    background:
        radial-gradient(circle at 70% 30%, rgba(var(--ker-accent-rgb), .18), transparent 32rem),
        linear-gradient(120deg, #0b1016, #070a0e);
}

.ker-event-hero.has-banner::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: var(--ker-event-banner);
    background-position: center;
    background-size: cover;
    opacity: .88;
}

.ker-event-hero__shade {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(3, 5, 7, .94) 0%, rgba(3, 5, 7, .56) 48%, rgba(3, 5, 7, .35) 100%),
        linear-gradient(0deg, rgba(8, 11, 15, .98) 0%, transparent 58%);
}

.ker-event-hero__inner {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 32px;
    padding-top: 100px;
    padding-bottom: 58px;
}

.ker-event-hero h1 {
    max-width: 820px;
    margin: 9px 0 8px;
    font-size: clamp(3.4rem, 8vw, 7.4rem);
    line-height: .85;
    letter-spacing: -.075em;
}

.ker-event-hero p {
    max-width: 720px;
    margin: 0;
    color: #b1bdc8;
    font-size: clamp(.94rem, 1.5vw, 1.12rem);
}

.ker-event-back {
    flex: 0 0 auto;
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    padding: 0 15px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 999px;
    color: #e9eff4;
    background: rgba(7, 10, 14, .55);
    font-size: .76rem;
    font-weight: 850;
    text-decoration: none;
    backdrop-filter: blur(12px);
}

.ker-event-sticky-tabs {
    position: sticky;
    top: 76px;
    z-index: 35;
    border-bottom: 1px solid var(--ker-border-soft);
    background: rgba(8, 11, 15, .92);
    backdrop-filter: blur(16px);
}

.ker-event-tabs {
    min-height: 86px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 190px));
    align-items: center;
    justify-content: center;
    gap: 28px;
}

.ker-event-tabs button {
    min-height: 44px;
    border: 1px solid #52606d;
    border-radius: 999px;
    color: #f6f8fa;
    background: transparent;
    font-weight: 900;
    cursor: pointer;
    transition: background .16s ease, color .16s ease, border-color .16s ease, transform .16s ease;
}

.ker-event-tabs button:hover {
    transform: translateY(-1px);
    border-color: #788895;
}

.ker-event-tabs button.is-active {
    border-color: #fff;
    color: #07100a;
    background: #fff;
}

.ker-event-content {
    padding-top: 48px;
    padding-bottom: 76px;
}

.ker-event-panel {
    animation: ker-event-panel-in .22s ease;
}

@keyframes ker-event-panel-in {
    from { opacity: 0; transform: translateY(5px); }
    to { opacity: 1; transform: translateY(0); }
}

.ker-event-section-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 28px;
    margin-bottom: 28px;
}

.ker-event-section-heading h2 {
    margin: 5px 0 3px;
    font-size: clamp(2.4rem, 5vw, 4.4rem);
    line-height: .95;
    letter-spacing: -.055em;
}

.ker-event-section-heading p {
    max-width: 680px;
    margin: 0;
    color: var(--ker-muted);
}

.ker-event-search {
    width: min(340px, 100%);
}

.ker-event-search input {
    width: 100%;
    min-height: 46px;
    padding: 0 15px;
    border: 1px solid var(--ker-border);
    border-radius: 13px;
    outline: 0;
    color: #fff;
    background: #0e151d;
}

.ker-event-search input:focus {
    border-color: #486376;
    box-shadow: 0 0 0 3px rgba(72, 99, 118, .12);
}

.ker-event-pilot-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.ker-event-pilot-card {
    min-width: 0;
}

.ker-event-pilot-card__button {
    position: relative;
    width: 100%;
    display: block;
    padding: 0;
    overflow: hidden;
    border: 1px solid #26323e;
    border-radius: 18px;
    color: #fff;
    background: #10161e;
    text-align: left;
    cursor: pointer;
    box-shadow: 0 16px 46px rgba(0, 0, 0, .17);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.ker-event-pilot-card__button:hover,
.ker-event-pilot-card__button:focus-visible {
    transform: translateY(-3px);
    border-color: #405163;
    box-shadow: 0 22px 60px rgba(0, 0, 0, .28);
    outline: 0;
}

.ker-event-pilot-card__photo {
    aspect-ratio: 1 / 1.06;
    display: grid;
    place-items: center;
    overflow: hidden;
    background:
        radial-gradient(circle at 50% 28%, rgba(50, 200, 107, .27), transparent 34%),
        linear-gradient(145deg, #14202a, #0b1016);
}

.ker-event-pilot-card:nth-child(4n + 2) .ker-event-pilot-card__photo {
    background:
        radial-gradient(circle at 50% 28%, rgba(239, 83, 100, .22), transparent 34%),
        linear-gradient(145deg, #21141a, #0b1016);
}

.ker-event-pilot-card:nth-child(4n + 3) .ker-event-pilot-card__photo {
    background:
        radial-gradient(circle at 50% 28%, rgba(242, 163, 58, .22), transparent 34%),
        linear-gradient(145deg, #221a11, #0b1016);
}

.ker-event-pilot-card__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ker-event-pilot-card__photo > span {
    color: var(--ker-accent-bright);
    font-size: 3.2rem;
    font-weight: 950;
    letter-spacing: -.05em;
}

.ker-event-pilot-card__number {
    position: absolute;
    top: 14px;
    right: 14px;
    min-width: 42px;
    min-height: 34px;
    display: inline-grid;
    place-items: center;
    padding: 0 10px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 999px;
    color: #fff;
    background: rgba(6, 9, 12, .72);
    font-size: .82rem;
    font-weight: 950;
    backdrop-filter: blur(8px);
}

.ker-event-pilot-card__meta {
    position: relative;
    min-height: 91px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 17px 50px 17px 17px;
    background: linear-gradient(135deg, #151e27, #0e141b);
}

.ker-event-pilot-card__meta strong {
    overflow: hidden;
    font-size: 1rem;
    line-height: 1.14;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ker-event-pilot-card__meta span {
    margin-top: 4px;
    color: #9eabb6;
    font-size: .76rem;
}

.ker-event-pilot-card__meta em {
    position: absolute;
    right: 16px;
    bottom: 18px;
    width: 27px;
    height: 27px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 50%;
    color: #fff;
    background: #0a0f14;
    font-size: 1rem;
    font-style: normal;
}

.ker-event-category-switch {
    display: inline-flex;
    gap: 5px;
    padding: 5px;
    border: 1px solid var(--ker-border);
    border-radius: 14px;
    background: #0d131a;
}

.ker-event-category-switch button {
    min-height: 39px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 0 14px;
    border: 0;
    border-radius: 10px;
    color: #8fa0ae;
    background: transparent;
    font-size: .79rem;
    font-weight: 900;
    cursor: pointer;
}

.ker-event-category-switch button.is-active {
    color: #fff;
    background: var(--ker-accent);
}

.ker-event-category-switch span {
    min-width: 22px;
    min-height: 22px;
    display: inline-grid;
    place-items: center;
    border-radius: 50%;
    background: rgba(0, 0, 0, .2);
    font-size: .65rem;
}

.ker-event-result-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin: 0 2px 12px;
    color: #92a0ab;
    font-size: .75rem;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.ker-event-result-label strong {
    color: #dfe7ed;
    font-size: .68rem;
}

.ker-event-table-wrap {
    overflow-x: auto;
    border: 1px solid #283542;
    border-radius: 17px;
    background: #0e141b;
    box-shadow: 0 18px 48px rgba(0, 0, 0, .18);
}

.ker-event-result-table {
    width: 100%;
    min-width: 1180px;
    border-collapse: collapse;
    font-size: .78rem;
}

.ker-event-result-table th,
.ker-event-result-table td {
    padding: 12px 11px;
    border-bottom: 1px solid rgba(255, 255, 255, .07);
    text-align: left;
    white-space: nowrap;
}

.ker-event-result-table th {
    height: 48px;
    color: #7f91a0;
    background: #111922;
    font-size: .66rem;
    letter-spacing: .07em;
}

.ker-event-result-table tbody tr:last-child td {
    border-bottom: 0;
}

.ker-event-result-table tbody tr:hover td {
    background: rgba(255, 255, 255, .018);
}

.ker-event-pos strong {
    display: block;
    color: #fff;
    font-size: 1rem;
}

.ker-event-pos small {
    display: block;
    margin-top: 2px;
    color: #657480;
    font-size: .57rem;
}

.ker-event-result-pilot {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 0;
    border: 0;
    color: #fff;
    background: transparent;
    font-weight: 850;
    cursor: pointer;
}

.ker-event-result-pilot .ker-public-avatar {
    width: 36px;
    height: 36px;
    min-width: 36px;
    min-height: 36px;
    max-width: 36px;
    max-height: 36px;
    flex: 0 0 36px;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    object-fit: cover;
    object-position: center;
}

.ker-event-result-pilot:hover span {
    color: var(--ker-accent-bright);
}

.ker-event-status {
    display: inline-flex;
    min-height: 25px;
    align-items: center;
    gap: 5px;
    padding: 0 8px;
    border-radius: 999px;
    font-size: .66rem;
    font-weight: 950;
}

.ker-event-status::before {
    content: "";
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
}

.ker-event-status.is-ok {
    color: #2bd66d;
    background: rgba(43, 214, 109, .08);
}

.ker-event-status.is-danger {
    color: #ff6577;
    background: rgba(255, 101, 119, .08);
}

.ker-event-status.is-warning {
    color: #f4b151;
    background: rgba(244, 177, 81, .08);
}

.ker-event-status.is-muted {
    color: #91a0ac;
    background: rgba(145, 160, 172, .08);
}

.ker-event-section-heading--circuit {
    align-items: center;
}

.ker-track-toggle {
    flex: 0 0 auto;
    display: grid;
    gap: 7px;
    justify-items: end;
    color: #dfe7ed;
    font-size: .72rem;
    font-weight: 850;
    cursor: pointer;
}

.ker-track-toggle input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.ker-track-toggle i {
    position: relative;
    width: 62px;
    height: 32px;
    display: block;
    border-radius: 999px;
    background: #4b5660;
    transition: background .18s ease;
}

.ker-track-toggle i::after {
    content: "";
    position: absolute;
    top: 4px;
    left: 4px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .25);
    transition: transform .18s ease;
}

.ker-track-toggle input:checked + i {
    background: var(--ker-accent);
}

.ker-track-toggle input:checked + i::after {
    transform: translateX(30px);
}

.ker-circuit-stage {
    position: relative;
    margin: 0;
    overflow: hidden;
    border: 1px solid #293642;
    border-radius: 20px;
    background: #0c1117;
    box-shadow: 0 28px 80px rgba(0, 0, 0, .22);
}

.ker-circuit-stage__base {
    width: 100%;
    display: block;
}

.ker-circuit-stage__track {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    opacity: 1;
    transition: opacity .2s ease;
    pointer-events: none;
}

.ker-circuit-stage__track.is-hidden {
    opacity: 0;
}

.ker-circuit-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
}

.ker-circuit-links a {
    display: inline-flex;
    min-height: 39px;
    align-items: center;
    padding: 0 13px;
    border: 1px solid var(--ker-border);
    border-radius: 999px;
    color: #c8d2db;
    background: #0e151d;
    font-size: .73rem;
    font-weight: 850;
    text-decoration: none;
}

.ker-circuit-links a:hover {
    border-color: #465a6c;
    color: #fff;
}

.ker-events-archive-hero {
    padding: 100px 0 54px;
    border-bottom: 1px solid var(--ker-border-soft);
    background:
        radial-gradient(circle at 75% 18%, rgba(var(--ker-accent-rgb), .18), transparent 27rem),
        #090d12;
}

.ker-events-archive-hero h1 {
    margin: 8px 0 5px;
    font-size: clamp(3.8rem, 9vw, 7.2rem);
    line-height: .9;
    letter-spacing: -.07em;
}

.ker-events-archive-hero p {
    margin: 0;
    color: var(--ker-muted);
}

.ker-events-archive {
    padding: 52px 0 84px;
}

.ker-events-season + .ker-events-season {
    margin-top: 48px;
}

.ker-events-season__heading {
    display: flex;
    align-items: baseline;
    gap: 10px;
    margin-bottom: 18px;
}

.ker-events-season__heading span {
    color: #6e7e8b;
    font-size: .71rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .09em;
}

.ker-events-season__heading strong {
    font-size: 1.4rem;
}

.ker-events-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 17px;
}

.ker-event-archive-card {
    position: relative;
    min-height: 260px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    overflow: hidden;
    padding: 25px;
    border: 1px solid #283441;
    border-radius: 20px;
    color: #fff;
    background:
        radial-gradient(circle at 70% 20%, rgba(var(--ker-accent-rgb), .22), transparent 17rem),
        #10161e;
    text-decoration: none;
    box-shadow: 0 18px 55px rgba(0, 0, 0, .18);
    transition: transform .18s ease, border-color .18s ease;
}

.ker-event-archive-card.has-image::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: var(--ker-event-card-image);
    background-position: center;
    background-size: cover;
}

.ker-event-archive-card__shade {
    position: absolute;
    inset: 0;
    background: linear-gradient(0deg, rgba(6, 9, 12, .95), rgba(6, 9, 12, .18));
}

.ker-event-archive-card > div,
.ker-event-archive-card > strong {
    position: relative;
    z-index: 2;
}

.ker-event-archive-card:hover {
    transform: translateY(-3px);
    border-color: #476070;
}

.ker-event-archive-card small {
    color: #7fe9a5;
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: .06em;
}

.ker-event-archive-card h2 {
    margin: 7px 0 4px;
    font-size: 2.15rem;
    line-height: .95;
    letter-spacing: -.045em;
}

.ker-event-archive-card p {
    margin: 0;
    color: #c1cbd3;
    font-size: .82rem;
}

.ker-event-archive-card > strong {
    font-size: .76rem;
}

@media (max-width: 980px) {
    .ker-event-pilot-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .ker-events-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .ker-nav__events .ker-nav__submenu {
        position: static;
        width: 100%;
        display: grid;
        padding: 2px 0 5px 15px;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        opacity: 1;
        visibility: visible;
        transform: none;
    }

    .ker-nav__submenu a {
        padding: 8px 10px !important;
        color: #a9b5bf !important;
    }

    .ker-event-hero {
        min-height: 360px;
    }

    .ker-event-hero__inner {
        flex-direction: column;
        align-items: flex-start;
        padding-top: 80px;
        padding-bottom: 42px;
    }

    .ker-event-sticky-tabs {
        top: 66px;
    }

    .ker-event-tabs {
        min-height: 74px;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 7px;
    }

    .ker-event-tabs button {
        min-height: 40px;
        font-size: .77rem;
    }

    .ker-event-content {
        padding-top: 34px;
    }

    .ker-event-section-heading,
    .ker-event-section-heading--circuit {
        align-items: stretch;
        flex-direction: column;
    }

    .ker-event-search {
        width: 100%;
    }

    .ker-event-pilot-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .ker-track-toggle {
        justify-items: start;
    }

    .ker-events-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .ker-event-pilot-grid {
        grid-template-columns: 1fr;
    }

    .ker-event-pilot-card__photo {
        aspect-ratio: 1 / .92;
    }

    .ker-event-category-switch {
        width: 100%;
    }

    .ker-event-category-switch button {
        flex: 1;
        justify-content: center;
    }

    .ker-event-tabs {
        gap: 5px;
    }

    .ker-event-tabs button {
        padding: 0 7px;
        font-size: .71rem;
    }
}


/* =========================================================
   KER v1.1 — Refinamento da página de etapa
   ========================================================= */

/* Cards de pilotos mais próximos da composição do site anterior */
.ker-event-pilot-card {
    --ker-card-accent: 64, 214, 112;
}

.ker-event-pilot-card:nth-child(4n + 2) {
    --ker-card-accent: 255, 72, 104;
}

.ker-event-pilot-card:nth-child(4n + 3) {
    --ker-card-accent: 245, 48, 154;
}

.ker-event-pilot-card:nth-child(4n + 4) {
    --ker-card-accent: 188, 194, 202;
}

.ker-event-pilot-card__button {
    border-radius: 15px;
    background: #090d12;
}

.ker-event-pilot-card__photo {
    position: relative;
    aspect-ratio: 1 / 1.08;
    background:
        radial-gradient(circle at 50% 23%, rgba(var(--ker-card-accent), .31), transparent 36%),
        linear-gradient(145deg, rgba(var(--ker-card-accent), .20), #0a0e13 76%);
}

.ker-event-pilot-card__photo::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 28%;
    background: linear-gradient(0deg, rgba(4, 6, 8, .66), transparent);
    pointer-events: none;
}

.ker-event-pilot-card__photo img {
    object-position: center top;
}

.ker-event-pilot-card__number {
    position: relative;
    inset: auto;
    width: 100%;
    min-width: 0;
    min-height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 0 12px;
    border: 0;
    border-radius: 0;
    background: rgba(12, 14, 17, .76);
    backdrop-filter: blur(10px);
}

.ker-event-pilot-card__number small {
    color: rgba(255, 255, 255, .58);
    font-size: .52rem;
    font-weight: 900;
    letter-spacing: .11em;
}

.ker-event-pilot-card__number strong {
    color: #fff;
    font-size: 1.05rem;
    font-weight: 950;
    line-height: 1;
}

.ker-event-pilot-card__meta {
    min-height: 86px;
    padding: 15px 50px 15px 16px;
    border-top: 2px solid rgba(var(--ker-card-accent), .82);
    background:
        linear-gradient(120deg, rgba(var(--ker-card-accent), .18), rgba(12, 17, 23, .98) 56%);
}

.ker-event-pilot-card__meta strong {
    font-size: 1.02rem;
}

.ker-event-pilot-card__category {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    min-height: 23px;
    margin-top: 6px !important;
    padding: 0 8px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 999px;
    color: #d6dee5 !important;
    background: rgba(5, 8, 11, .28);
    font-size: .64rem !important;
    font-weight: 800;
}

.ker-event-pilot-card__meta em {
    right: 14px;
    bottom: 14px;
    width: 31px;
    height: 31px;
    border-color: rgba(255, 255, 255, .34);
    background: rgba(255, 255, 255, .94);
    color: #090d12;
    font-size: 1.05rem;
}

/* Resultado: posição mais legível e top 3 no espírito da tabela antiga */
.ker-event-pos__main {
    display: flex;
    align-items: center;
    gap: 5px;
}

.ker-event-pos__main i {
    font-size: .96rem;
    font-style: normal;
    line-height: 1;
}

.ker-event-pos__main strong {
    min-width: 17px;
}

.ker-event-speed strong,
.ker-event-speed small {
    display: block;
}

.ker-event-speed strong {
    color: #fff;
}

.ker-event-speed small {
    margin-top: 2px;
    color: #7d8d9a;
    font-size: .55rem;
    font-weight: 800;
    text-transform: uppercase;
}

/* Circuito mais limpo e com sobreposição 1:1 ao canvas da foto aérea */
.ker-circuit-stage {
    overflow: hidden;
    border-radius: 14px;
    background: #070a0e;
}

.ker-circuit-stage__canvas {
    position: relative;
    overflow: hidden;
}

.ker-circuit-stage__base {
    width: 100%;
    height: auto;
    display: block;
}

.ker-circuit-stage__track {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: fill;
}

.ker-circuit-stage figcaption {
    padding: 11px 14px;
    border-top: 1px solid rgba(255, 255, 255, .07);
    color: #7f8e9a;
    background: #0b1016;
    font-size: .66rem;
    text-align: right;
}

.ker-track-toggle {
    padding: 10px 12px;
    border: 1px solid #273541;
    border-radius: 13px;
    background: #0d141b;
}

.ker-track-toggle span {
    color: #f1f5f8;
}

/* A barra das abas mantém a interface compacta quando o visitante rola a página */
.ker-event-sticky-tabs {
    box-shadow: 0 8px 24px rgba(0, 0, 0, .16);
}

@media (min-width: 1280px) {
    .ker-event-pilot-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 20px;
    }

    .ker-event-pilot-card__photo {
        aspect-ratio: 1 / 1.03;
    }
}

@media (max-width: 760px) {
    .ker-event-pilot-card__meta {
        min-height: 82px;
    }

    .ker-circuit-stage figcaption {
        text-align: left;
    }
}


/* =========================================================
   KER v1.1.1 — Redes sociais nos cards e hover estático
   ========================================================= */

/* O card não se desloca mais ao passar o mouse. */
.ker-event-pilot-card__button {
    transition: border-color .16s ease, box-shadow .16s ease;
}

.ker-event-pilot-card__button:hover,
.ker-event-pilot-card__button:focus-visible {
    transform: none;
    border-color: #405163;
    box-shadow: 0 18px 46px rgba(0, 0, 0, .24);
}

/* Substitui o indicador genérico por ícones das redes cadastradas. */
.ker-event-pilot-card__socials {
    position: absolute;
    right: 13px;
    bottom: 13px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
}

.ker-event-pilot-card__socials .ker-social-icon {
    width: 29px;
    height: 29px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .3);
    border-radius: 50%;
    color: #0a0e12;
    background: rgba(255, 255, 255, .94);
}

.ker-event-pilot-card__socials .ker-social-icon svg {
    width: 16px;
    height: 16px;
    display: block;
}

.ker-event-pilot-card__socials .ker-social-icon--youtube {
    color: #e60023;
}

.ker-event-pilot-card__socials .ker-social-icon--whatsapp {
    color: #128c4a;
}

.ker-event-pilot-card__socials .ker-social-icon--linkedin {
    color: #0a66c2;
}

.ker-event-pilot-card__socials .ker-social-icon--facebook {
    color: #1877f2;
}

.ker-event-pilot-card__socials .ker-social-icon--instagram {
    color: #111;
}

.ker-event-pilot-card__socials .ker-social-icon--tiktok,
.ker-event-pilot-card__socials .ker-social-icon--x,
.ker-event-pilot-card__socials .ker-social-icon--threads {
    color: #050505;
}

@media (max-width: 480px) {
    .ker-event-pilot-card__socials {
        right: 12px;
        bottom: 12px;
    }

    .ker-event-pilot-card__socials .ker-social-icon {
        width: 28px;
        height: 28px;
    }
}


/* =========================================================
   KER v1.2 — EVENT EXPERIENCE / VISUAL MODERNO
   Mantém a lógica da página e substitui o acabamento sólido
   por uma linguagem mais cinematográfica e integrada.
   ========================================================= */

body.ker-event-detail-surface {
    background:
        radial-gradient(circle at 82% 9%, rgba(26, 191, 92, .09), transparent 24rem),
        radial-gradient(circle at 12% 48%, rgba(34, 74, 123, .06), transparent 30rem),
        #05070a;
}

/* Header integrado à arte da etapa */
body.ker-event-detail-surface .ker-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 90;
    border-bottom: 1px solid rgba(255, 255, 255, .06);
    background:
        linear-gradient(180deg, rgba(2, 3, 5, .86), rgba(2, 3, 5, .55));
    box-shadow: 0 10px 40px rgba(0, 0, 0, .12);
    backdrop-filter: blur(16px) saturate(120%);
}

body.ker-event-detail-surface .ker-header__inner {
    min-height: 68px;
}

body.ker-event-detail-surface .ker-nav__list a {
    color: rgba(245, 248, 250, .78);
    font-size: .86rem;
    font-weight: 760;
}

body.ker-event-detail-surface .ker-nav__list a:hover,
body.ker-event-detail-surface .ker-nav__list a:focus-visible,
body.ker-event-detail-surface .ker-nav__list .current-menu-item > a {
    color: #fff;
}

body.ker-event-detail-surface .ker-brand > span {
    font-size: 1.55rem;
}

body.ker-event-detail-surface .ker-brand small {
    color: rgba(224, 232, 238, .6);
}

/* Fundo contínuo; remove a sensação de grandes faixas retangulares */
.ker-event-page {
    position: relative;
    overflow: clip;
    background:
        radial-gradient(circle at 88% 16%, rgba(29, 194, 94, .06), transparent 31rem),
        radial-gradient(circle at 16% 63%, rgba(31, 68, 112, .055), transparent 35rem),
        linear-gradient(180deg, #070a0e 0%, #05070a 46%, #080b0f 100%);
}

.ker-event-page::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    opacity: .12;
    background-image:
        linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
    background-size: 72px 72px;
    mask-image: linear-gradient(180deg, transparent 22%, #000 48%, transparent 92%);
}

.ker-event-page > * {
    position: relative;
    z-index: 1;
}

/* HERO cinematográfico */
.ker-event-hero {
    min-height: clamp(520px, 72vh, 760px);
    align-items: flex-end;
    border-bottom: 0;
    isolation: isolate;
    background: #05070a;
}

.ker-event-hero::before {
    display: none !important;
}

.ker-event-hero__media {
    position: absolute;
    inset: 0;
    z-index: -4;
    background:
        radial-gradient(circle at 62% 24%, rgba(43, 220, 113, .12), transparent 26rem),
        linear-gradient(145deg, #10161c, #05070a);
}

.ker-event-hero.has-banner .ker-event-hero__media {
    background-image: var(--ker-event-banner);
    background-position: center 34%;
    background-size: cover;
    transform: scale(1.012);
}

.ker-event-hero__shade {
    z-index: -3;
    background:
        linear-gradient(90deg, rgba(2, 3, 5, .58) 0%, rgba(2, 3, 5, .12) 44%, rgba(2, 3, 5, .36) 100%),
        linear-gradient(180deg, rgba(2, 3, 5, .26) 0%, rgba(2, 3, 5, .02) 42%, rgba(5, 7, 10, .95) 100%);
}

.ker-event-hero__glow {
    position: absolute;
    z-index: -2;
    left: 12%;
    right: 12%;
    bottom: -28%;
    height: 44%;
    border-radius: 50%;
    background: rgba(17, 132, 60, .16);
    filter: blur(70px);
    pointer-events: none;
}

.ker-event-hero__inner {
    width: min(1360px, calc(100% - 56px));
    min-height: inherit;
    align-items: flex-end;
    padding-top: 120px;
    padding-bottom: 102px;
}

.ker-event-hero__meta {
    max-width: min(620px, 70vw);
    padding: 17px 20px 18px;
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(8, 11, 14, .66), rgba(8, 11, 14, .34));
    box-shadow: 0 22px 70px rgba(0, 0, 0, .22);
    backdrop-filter: blur(14px) saturate(118%);
}

.ker-event-hero__season {
    display: block;
    color: #65e795;
    font-size: .61rem;
    font-weight: 950;
    letter-spacing: .19em;
}

.ker-event-hero h1 {
    margin: 7px 0 4px;
    max-width: none;
    font-size: clamp(2.6rem, 5vw, 5.4rem);
    line-height: .91;
    letter-spacing: -.065em;
    text-shadow: 0 8px 34px rgba(0, 0, 0, .32);
}

.ker-event-hero p {
    max-width: 560px;
    margin-top: 6px;
    color: rgba(230, 237, 242, .7);
    font-size: .88rem;
}

.ker-event-back {
    margin-bottom: 2px;
    gap: 8px;
    min-height: 40px;
    padding: 0 14px;
    border-color: rgba(255, 255, 255, .13);
    background: rgba(8, 11, 14, .36);
    backdrop-filter: blur(14px);
}

.ker-event-back:hover,
.ker-event-back:focus-visible {
    border-color: rgba(255, 255, 255, .28);
    background: rgba(8, 11, 14, .62);
}

/* Abas flutuantes sobre a transição do hero */
.ker-event-sticky-tabs {
    position: sticky;
    top: 68px;
    z-index: 45;
    margin-top: -48px;
    border-bottom: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
}

.ker-event-sticky-tabs > .ker-container {
    width: fit-content;
    max-width: calc(100% - 30px);
    padding: 7px;
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 999px;
    background: rgba(9, 12, 16, .73);
    box-shadow:
        0 16px 55px rgba(0, 0, 0, .28),
        inset 0 1px 0 rgba(255, 255, 255, .035);
    backdrop-filter: blur(18px) saturate(125%);
}

.ker-event-tabs {
    min-height: auto;
    grid-template-columns: repeat(3, minmax(138px, 185px));
    gap: 5px;
}

.ker-event-tabs button {
    min-height: 43px;
    border: 1px solid transparent;
    border-radius: 999px;
    color: rgba(233, 239, 244, .66);
    background: transparent;
    font-size: .78rem;
    font-weight: 880;
}

.ker-event-tabs button:hover {
    transform: none;
    color: #fff;
    border-color: rgba(255, 255, 255, .08);
    background: rgba(255, 255, 255, .035);
}

.ker-event-tabs button.is-active {
    border-color: rgba(255, 255, 255, .9);
    color: #070a0d;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 9px 26px rgba(0, 0, 0, .18);
}

/* Conteúdo menos "caixa", mais editorial */
.ker-event-content {
    padding-top: 86px;
    padding-bottom: 108px;
}

.ker-event-section-heading {
    margin-bottom: 32px;
}

.ker-event-section-heading h2 {
    margin-top: 7px;
    font-size: clamp(2.8rem, 5.5vw, 5rem);
    line-height: .88;
    letter-spacing: -.07em;
}

.ker-event-section-heading p {
    color: rgba(182, 196, 207, .67);
    font-size: .82rem;
}

.ker-public-kicker {
    color: #4fe487;
    font-size: .62rem;
    letter-spacing: .20em;
}

.ker-event-search {
    width: min(330px, 100%);
}

.ker-event-search input {
    min-height: 43px;
    padding: 0 16px;
    border-color: rgba(255, 255, 255, .09);
    border-radius: 999px;
    color: #fff;
    background: rgba(13, 18, 24, .62);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .025);
    backdrop-filter: blur(10px);
}

.ker-event-search input:focus {
    border-color: rgba(83, 229, 136, .48);
    box-shadow: 0 0 0 3px rgba(64, 218, 119, .08);
}

/* PILOTOS — mais visual, menos moldura */
.ker-event-pilot-grid {
    gap: 15px;
}

.ker-event-pilot-card__button {
    overflow: hidden;
    border-color: rgba(255, 255, 255, .065);
    border-radius: 16px;
    background: rgba(9, 13, 17, .72);
    box-shadow: 0 12px 34px rgba(0, 0, 0, .13);
    backdrop-filter: blur(8px);
}

.ker-event-pilot-card__button:hover,
.ker-event-pilot-card__button:focus-visible {
    transform: none;
    border-color: rgba(255, 255, 255, .15);
    box-shadow: 0 16px 42px rgba(0, 0, 0, .19);
}

.ker-event-pilot-card__photo {
    aspect-ratio: .94 / 1;
    background:
        radial-gradient(circle at 50% 20%, rgba(var(--ker-card-accent), .33), transparent 38%),
        linear-gradient(145deg, rgba(var(--ker-card-accent), .21), rgba(7, 10, 13, .98) 78%);
}

.ker-event-pilot-card__number {
    min-height: 31px;
    background:
        linear-gradient(90deg, rgba(var(--ker-card-accent), .18), rgba(7, 10, 13, .74));
    border-top: 1px solid rgba(255, 255, 255, .045);
}

.ker-event-pilot-card__number small {
    opacity: .65;
}

.ker-event-pilot-card__meta {
    min-height: 82px;
    padding: 14px 50px 14px 15px;
    border-top: 1px solid rgba(var(--ker-card-accent), .52);
    background:
        linear-gradient(120deg, rgba(var(--ker-card-accent), .12), rgba(8, 12, 16, .93) 58%);
}

.ker-event-pilot-card__meta strong {
    font-size: .93rem;
    letter-spacing: -.015em;
}

.ker-event-pilot-card__category {
    min-height: 21px;
    padding: 0 7px;
    border-color: rgba(255, 255, 255, .095);
    background: rgba(4, 6, 8, .27);
    font-size: .60rem !important;
}

.ker-event-pilot-card__socials .ker-social-icon {
    width: 28px;
    height: 28px;
    border-color: rgba(255, 255, 255, .22);
    box-shadow: 0 5px 18px rgba(0, 0, 0, .16);
}

/* POSIÇÃO — tabela "glass" com linhas independentes */
.ker-event-result-label {
    padding: 0 6px;
    color: rgba(181, 194, 204, .55);
}

.ker-event-table-wrap {
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.ker-event-result-table {
    border-collapse: separate;
    border-spacing: 0 7px;
}

.ker-event-result-table thead th {
    height: 39px;
    padding-top: 8px;
    padding-bottom: 8px;
    border: 0;
    color: rgba(150, 171, 188, .58);
    background: transparent;
    font-size: .61rem;
}

.ker-event-result-table tbody td {
    padding-top: 11px;
    padding-bottom: 11px;
    border-top: 1px solid rgba(255, 255, 255, .055);
    border-bottom: 1px solid rgba(255, 255, 255, .055);
    background: rgba(15, 21, 28, .63);
    backdrop-filter: blur(9px);
}

.ker-event-result-table tbody td:first-child {
    border-left: 1px solid rgba(255, 255, 255, .055);
    border-radius: 12px 0 0 12px;
}

.ker-event-result-table tbody td:last-child {
    border-right: 1px solid rgba(255, 255, 255, .055);
    border-radius: 0 12px 12px 0;
}

.ker-event-result-table tbody tr:hover td {
    background: rgba(22, 31, 40, .76);
    border-color: rgba(255, 255, 255, .09);
}

.ker-event-result-pilot .ker-public-avatar {
    box-shadow: 0 5px 17px rgba(0, 0, 0, .19);
}

.ker-event-status {
    background: rgba(255, 255, 255, .035);
}

.ker-event-category-switch {
    border-color: rgba(255,255,255,.08);
    border-radius: 999px;
    background: rgba(10, 14, 19, .64);
    backdrop-filter: blur(10px);
}

.ker-event-category-switch button {
    border-radius: 999px;
}

.ker-event-category-switch button.is-active {
    color: #071009;
    background: rgba(255, 255, 255, .95);
    box-shadow: none;
}

/* CIRCUITO — imagem protagonista, toggle realmente flutuante */
.ker-event-panel[data-ker-event-panel="circuito"] .ker-event-section-heading {
    margin-bottom: 20px;
}

.ker-circuit-stage {
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.ker-circuit-stage__canvas {
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 22px;
    box-shadow:
        0 25px 90px rgba(0, 0, 0, .26),
        0 0 0 1px rgba(255,255,255,.015) inset;
}

.ker-circuit-stage__base {
    border-radius: inherit;
    filter: saturate(.94) contrast(1.02);
}

.ker-circuit-stage__track {
    border-radius: inherit;
}

.ker-circuit-stage__vignette {
    position: absolute;
    inset: 0;
    z-index: 2;
    border-radius: inherit;
    pointer-events: none;
    box-shadow: inset 0 -80px 110px rgba(2, 4, 6, .28);
}

.ker-track-toggle--floating {
    position: absolute;
    z-index: 5;
    top: 18px;
    right: 18px;
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 9px 10px 9px 13px;
    border-color: rgba(255, 255, 255, .12);
    border-radius: 999px;
    background: rgba(8, 11, 14, .70);
    box-shadow: 0 9px 28px rgba(0, 0, 0, .22);
    backdrop-filter: blur(14px);
}

.ker-track-toggle--floating span {
    font-size: .67rem;
}

.ker-track-toggle--floating i {
    width: 48px;
    height: 26px;
}

.ker-track-toggle--floating i::after {
    width: 18px;
    height: 18px;
}

.ker-track-toggle--floating input:checked + i::after {
    transform: translateX(22px);
}

.ker-circuit-stage figcaption {
    padding: 10px 4px 0;
    border: 0;
    color: rgba(143, 158, 170, .52);
    background: transparent;
    text-align: right;
}

.ker-circuit-links {
    justify-content: flex-end;
}

.ker-circuit-links a {
    min-height: 37px;
    border-color: rgba(255, 255, 255, .08);
    background: rgba(13, 18, 24, .58);
}

/* Modal integrado ao novo visual */
body.ker-event-detail-surface .ker-pilot-modal__backdrop {
    background: rgba(1, 3, 5, .72);
    backdrop-filter: blur(14px);
}

body.ker-event-detail-surface .ker-pilot-modal__dialog {
    border-color: rgba(255, 255, 255, .10);
    border-radius: 24px;
    background:
        linear-gradient(145deg, rgba(17, 24, 32, .96), rgba(8, 12, 16, .98));
    box-shadow: 0 46px 140px rgba(0, 0, 0, .65);
}

/* Mobile */
@media (max-width: 760px) {
    body.ker-event-detail-surface .ker-header__inner {
        min-height: 62px;
    }

    body.ker-event-detail-surface .ker-nav {
        top: 62px;
        background: rgba(8, 12, 16, .94);
        backdrop-filter: blur(18px);
    }

    .ker-event-hero {
        min-height: 520px;
    }

    .ker-event-hero.has-banner .ker-event-hero__media {
        background-position: center top;
    }

    .ker-event-hero__inner {
        width: min(100% - 28px, 1360px);
        padding-top: 96px;
        padding-bottom: 88px;
    }

    .ker-event-hero__meta {
        max-width: 100%;
        padding: 14px 15px 15px;
        border-radius: 15px;
    }

    .ker-event-hero h1 {
        font-size: clamp(2.4rem, 13vw, 4.2rem);
    }

    .ker-event-back {
        display: none;
    }

    .ker-event-sticky-tabs {
        top: 62px;
        margin-top: -37px;
    }

    .ker-event-sticky-tabs > .ker-container {
        width: calc(100% - 26px);
        max-width: none;
        padding: 5px;
    }

    .ker-event-tabs {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .ker-event-tabs button {
        min-height: 39px;
        font-size: .71rem;
    }

    .ker-event-content {
        padding-top: 66px;
        padding-bottom: 72px;
    }

    .ker-event-section-heading h2 {
        font-size: clamp(2.6rem, 15vw, 4rem);
    }

    .ker-event-pilot-grid {
        gap: 11px;
    }

    .ker-event-table-wrap {
        overflow-x: auto;
        margin-left: -13px;
        margin-right: -13px;
        padding: 0 13px;
    }

    .ker-event-result-table {
        border-spacing: 0 6px;
    }

    .ker-track-toggle--floating {
        top: 11px;
        right: 11px;
    }

    .ker-circuit-stage__canvas {
        border-radius: 15px;
    }
}

@media (max-width: 480px) {
    .ker-event-hero {
        min-height: 470px;
    }

    .ker-event-hero__meta {
        background: linear-gradient(135deg, rgba(7, 10, 13, .74), rgba(7, 10, 13, .48));
    }

    .ker-event-pilot-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ker-event-pilot-card__meta {
        min-height: 76px;
        padding: 12px 42px 12px 12px;
    }

    .ker-event-pilot-card__meta strong {
        font-size: .84rem;
    }

    .ker-event-pilot-card__category {
        font-size: .55rem !important;
    }

    .ker-event-pilot-card__socials {
        right: 9px;
        bottom: 10px;
    }

    .ker-event-pilot-card__socials .ker-social-icon {
        width: 25px;
        height: 25px;
    }

    .ker-event-pilot-card__socials .ker-social-icon svg {
        width: 14px;
        height: 14px;
    }
}


/* =========================================================
   KER v1.2.1 — identidade visual KER
   ========================================================= */

:root {
    --ker-bg: #10090C;
    --ker-bg-soft: #160E12;
    --ker-surface: #1A1116;
    --ker-surface-2: #21161C;
}

/* Cor-base oficial das páginas */
body {
    background: #10090C;
}

.ker-event-page,
.ker-events-archive,
.ker-events-archive-hero {
    background-color: #10090C;
}

body.ker-event-detail-surface {
    background:
        radial-gradient(circle at 78% 8%, rgba(30, 128, 68, .08), transparent 28rem),
        #10090C;
}

.ker-event-page {
    background:
        radial-gradient(circle at 88% 16%, rgba(29, 194, 94, .045), transparent 31rem),
        radial-gradient(circle at 16% 63%, rgba(86, 31, 58, .10), transparent 34rem),
        linear-gradient(180deg, #10090C 0%, #0D080A 52%, #10090C 100%);
}

/* Cabeçalho glass/transparente desfocado */
.ker-header,
body.ker-event-detail-surface .ker-header {
    background: rgba(16, 9, 12, .42);
    border-bottom: 1px solid rgba(255, 255, 255, .075);
    box-shadow:
        0 8px 28px rgba(0, 0, 0, .16),
        inset 0 -1px 0 rgba(255, 255, 255, .018);
    -webkit-backdrop-filter: blur(22px) saturate(135%);
    backdrop-filter: blur(22px) saturate(135%);
}

/* Netflix-like: logo do evento como identidade principal */
.ker-event-hero__meta.has-event-logo {
    min-width: min(410px, 38vw);
    max-width: min(520px, 48vw);
}

.ker-event-hero__event-logo {
    width: auto;
    max-width: min(390px, 34vw);
    max-height: 185px;
    display: block;
    margin: 13px 0 11px;
    object-fit: contain;
    object-position: left center;
    filter:
        drop-shadow(0 12px 26px rgba(0, 0, 0, .30))
        drop-shadow(0 2px 5px rgba(0, 0, 0, .22));
}

.ker-event-hero__meta.has-event-logo p {
    margin-top: 2px;
}

/* O card permanece discreto para a logo ser protagonista */
.ker-event-hero__meta {
    border-color: rgba(255, 255, 255, .095);
    background:
        linear-gradient(135deg, rgba(16, 9, 12, .55), rgba(16, 9, 12, .25));
    -webkit-backdrop-filter: blur(17px) saturate(120%);
    backdrop-filter: blur(17px) saturate(120%);
}

@media (max-width: 760px) {
    .ker-header,
    body.ker-event-detail-surface .ker-header {
        background: rgba(16, 9, 12, .56);
        -webkit-backdrop-filter: blur(20px) saturate(130%);
        backdrop-filter: blur(20px) saturate(130%);
    }

    .ker-event-hero__meta.has-event-logo {
        min-width: 0;
        max-width: 100%;
    }

    .ker-event-hero__event-logo {
        max-width: min(300px, 78vw);
        max-height: 145px;
        margin-top: 12px;
    }
}


/* =========================================================
   KER v1.2.2 — logo flutuante + header sem borda
   ========================================================= */

/* Cabeçalho mantém transparência e blur, mas sem linha inferior. */
.ker-header,
body.ker-event-detail-surface .ker-header {
    border-bottom: 0 !important;
    box-shadow: 0 10px 34px rgba(0, 0, 0, .10) !important;
}

/* Quando existe logo própria da etapa, ela fica solta sobre o banner. */
.ker-event-hero__meta.has-event-logo {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
}

/* Mantém a temporada e informações legíveis sem recriar uma caixa. */
.ker-event-hero__meta.has-event-logo .ker-event-hero__season {
    width: fit-content;
    padding: 5px 8px;
    border-radius: 999px;
    background: rgba(16, 9, 12, .35);
    text-shadow: 0 2px 12px rgba(0, 0, 0, .55);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
}

.ker-event-hero__meta.has-event-logo .ker-event-hero__event-logo {
    margin-top: 12px;
    margin-bottom: 10px;
}

.ker-event-hero__meta.has-event-logo p {
    width: fit-content;
    margin-top: 0;
    padding: 5px 8px;
    border-radius: 8px;
    color: rgba(242, 245, 247, .84);
    background: rgba(16, 9, 12, .28);
    text-shadow: 0 2px 12px rgba(0, 0, 0, .55);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
}

/* Mobile: permanece flutuante. */
@media (max-width: 760px) {
    .ker-event-hero__meta.has-event-logo {
        padding: 0;
        background: transparent;
        border: 0;
        box-shadow: none;
    }
}


/* =========================================================
   KER v1.2.3 — sombra do banner na cor-base oficial
   ========================================================= */

/* Remove o tom verde do glow do banner e usa #10090C. */
.ker-event-hero__glow {
    background: rgba(16, 9, 12, .72) !important;
    filter: blur(78px);
}

/* Também neutraliza o halo verde dentro da mídia do hero. */
.ker-event-hero__media {
    background:
        radial-gradient(circle at 62% 24%, rgba(16, 9, 12, .34), transparent 28rem),
        linear-gradient(145deg, #160E12, #10090C) !important;
}

.ker-event-hero.has-banner .ker-event-hero__media {
    background-image:
        linear-gradient(180deg, rgba(16, 9, 12, .02), rgba(16, 9, 12, .18)),
        var(--ker-event-banner) !important;
    background-position: center 34% !important;
    background-size: cover !important;
}


/* =========================================================
   KER v1.2.4 — transição suave banner -> fundo #10090C
   ========================================================= */

/* O hero agora dissolve gradualmente na cor oficial da página. */
.ker-event-hero__shade {
    background:
        linear-gradient(
            90deg,
            rgba(2, 3, 5, .46) 0%,
            rgba(2, 3, 5, .10) 45%,
            rgba(2, 3, 5, .27) 100%
        ),
        linear-gradient(
            180deg,
            rgba(16, 9, 12, .00) 0%,
            rgba(16, 9, 12, .02) 48%,
            rgba(16, 9, 12, .18) 64%,
            rgba(16, 9, 12, .52) 78%,
            rgba(16, 9, 12, .88) 92%,
            #10090C 100%
        ) !important;
}

/* Remove qualquer aparência de corte no final do banner. */
.ker-event-hero {
    border-bottom: 0 !important;
    background-color: #10090C !important;
}

.ker-event-hero::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 150px;
    z-index: -1;
    pointer-events: none;
    background:
        linear-gradient(
            180deg,
            rgba(16, 9, 12, 0) 0%,
            rgba(16, 9, 12, .52) 48%,
            #10090C 100%
        );
}

/* A seção seguinte começa exatamente na mesma tonalidade. */
.ker-event-content {
    background: transparent;
}

.ker-event-page {
    background:
        radial-gradient(circle at 88% 16%, rgba(104, 38, 65, .055), transparent 31rem),
        radial-gradient(circle at 16% 63%, rgba(86, 31, 58, .10), transparent 34rem),
        #10090C !important;
}

/* Mantém as abas flutuantes sobre a transição sem criar uma linha visual. */
.ker-event-sticky-tabs {
    border: 0 !important;
    background: transparent !important;
}


/* =========================================================
   KER v1.2.5 — fundo oficial 100% sólido
   ========================================================= */

/*
 * A área pública da etapa deixa de usar radiais, halos, grids ou
 * qualquer variação de luminosidade. Depois do banner, tudo é
 * exatamente #10090C.
 */
html body.ker-event-detail-surface,
body.ker-event-detail-surface .ker-event-page,
body.ker-event-detail-surface .ker-event-content,
body.ker-event-detail-surface .ker-event-panel,
body.ker-event-detail-surface .ker-events-archive,
body.ker-event-detail-surface main {
    background: #10090C !important;
    background-color: #10090C !important;
    background-image: none !important;
}

/* Remove a textura/grid aplicada sobre o fundo nas versões anteriores. */
body.ker-event-detail-surface .ker-event-page::before {
    display: none !important;
    content: none !important;
}

/* Nenhum halo deve continuar depois do final do banner. */
body.ker-event-detail-surface .ker-event-page::after,
body.ker-event-detail-surface .ker-event-content::before,
body.ker-event-detail-surface .ker-event-content::after {
    display: none !important;
    content: none !important;
}

/*
 * O banner termina exatamente na mesma cor sólida da página.
 * A transição existe somente dentro do próprio hero.
 */
body.ker-event-detail-surface .ker-event-hero {
    background: #10090C !important;
    background-color: #10090C !important;
}

body.ker-event-detail-surface .ker-event-hero__shade {
    background:
        linear-gradient(
            90deg,
            rgba(2, 3, 5, .43) 0%,
            rgba(2, 3, 5, .09) 45%,
            rgba(2, 3, 5, .25) 100%
        ),
        linear-gradient(
            180deg,
            rgba(16, 9, 12, 0) 0%,
            rgba(16, 9, 12, .015) 48%,
            rgba(16, 9, 12, .12) 64%,
            rgba(16, 9, 12, .38) 77%,
            rgba(16, 9, 12, .74) 90%,
            #10090C 100%
        ) !important;
}

/* O prolongamento inferior também usa apenas a cor oficial. */
body.ker-event-detail-surface .ker-event-hero::after {
    background:
        linear-gradient(
            180deg,
            rgba(16, 9, 12, 0) 0%,
            rgba(16, 9, 12, .45) 50%,
            #10090C 100%
        ) !important;
}

/* A área atrás das abas é a mesma cor sólida da página. */
body.ker-event-detail-surface .ker-event-sticky-tabs {
    background: transparent !important;
}

body.ker-event-detail-surface .ker-event-sticky-tabs::before,
body.ker-event-detail-surface .ker-event-sticky-tabs::after {
    display: none !important;
    content: none !important;
}


/* =========================================================
   KER v1.2.6 — tabs glass + seletor deslizante
   ========================================================= */

/* Container escuro, translúcido e desfocado. */
body.ker-event-detail-surface .ker-event-sticky-tabs > .ker-container {
    padding: 6px;
    border: 1px solid rgba(255, 255, 255, .095);
    background: rgba(7, 7, 9, .40);
    box-shadow:
        0 14px 44px rgba(0, 0, 0, .20),
        inset 0 1px 0 rgba(255, 255, 255, .025);
    -webkit-backdrop-filter: blur(20px) saturate(125%);
    backdrop-filter: blur(20px) saturate(125%);
}

/*
 * Um único "pill" branco corre por baixo dos três botões.
 * --ker-active-tab é atualizado pelo JS: 0, 1 ou 2.
 */
body.ker-event-detail-surface .ker-event-tabs {
    --ker-active-tab: 0;
    position: relative;
    isolation: isolate;
    overflow: hidden;
    border-radius: 999px;
}

body.ker-event-detail-surface .ker-event-tabs::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 0;
    bottom: 0;
    left: 0;
    width: calc((100% - 10px) / 3);
    border-radius: 999px;
    background: rgba(255, 255, 255, .96);
    box-shadow:
        0 8px 24px rgba(0, 0, 0, .18),
        inset 0 1px 0 rgba(255, 255, 255, .85);
    transform: translateX(calc(var(--ker-active-tab) * (100% + 5px)));
    transition:
        transform .34s cubic-bezier(.22, .8, .3, 1),
        box-shadow .22s ease;
    pointer-events: none;
}

body.ker-event-detail-surface .ker-event-tabs button {
    position: relative;
    z-index: 1;
    border: 0 !important;
    color: rgba(236, 240, 243, .62);
    background: transparent !important;
    box-shadow: none !important;
    transition:
        color .24s ease,
        opacity .24s ease;
}

body.ker-event-detail-surface .ker-event-tabs button:hover,
body.ker-event-detail-surface .ker-event-tabs button:focus-visible {
    transform: none !important;
    color: rgba(255, 255, 255, .92);
    background: transparent !important;
    outline: 0;
}

body.ker-event-detail-surface .ker-event-tabs button.is-active {
    color: #0B0B0D !important;
    background: transparent !important;
}

/* Suaviza a troca de conteúdo para acompanhar o slide. */
body.ker-event-detail-surface .ker-event-panel.is-active {
    animation: ker-event-panel-soft-in .28s cubic-bezier(.22, .8, .3, 1);
}

@keyframes ker-event-panel-soft-in {
    from {
        opacity: 0;
        transform: translateY(4px);
        filter: blur(2px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
        filter: blur(0);
    }
}

@media (max-width: 760px) {
    body.ker-event-detail-surface .ker-event-sticky-tabs > .ker-container {
        padding: 5px;
        background: rgba(7, 7, 9, .48);
        -webkit-backdrop-filter: blur(18px) saturate(125%);
        backdrop-filter: blur(18px) saturate(125%);
    }

    body.ker-event-detail-surface .ker-event-tabs::before {
        width: calc((100% - 10px) / 3);
    }
}


/* =========================================================
   KER v1.2.7 — modal piloto glass + foto original
   ========================================================= */

/* Backdrop mais suave e moderno. */
body.ker-event-detail-surface .ker-pilot-modal__backdrop {
    background: rgba(6, 3, 5, .48) !important;
    -webkit-backdrop-filter: blur(20px) saturate(112%);
    backdrop-filter: blur(20px) saturate(112%);
}

/*
 * O diálogo fica transparente; quem cria a leitura é o painel
 * glass da direita. Isso evita aparência de "caixa preta sólida".
 */
body.ker-event-detail-surface .ker-pilot-modal__dialog {
    width: min(820px, 100%);
    grid-template-columns: minmax(300px, .92fr) minmax(0, 1.08fr);
    overflow: visible;
    border: 0 !important;
    border-radius: 26px;
    background: transparent !important;
    box-shadow: 0 42px 130px rgba(0, 0, 0, .46);
}

/* Foto continua limpa e em alta definição. */
body.ker-event-detail-surface .ker-pilot-modal__visual {
    position: relative;
    z-index: 1;
    min-height: 500px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 24px;
    background: #10090C;
    box-shadow: 0 20px 65px rgba(0, 0, 0, .30);
}

body.ker-event-detail-surface .ker-pilot-modal__visual img {
    width: 100%;
    height: 100%;
    min-height: 500px;
    display: block;
    object-fit: cover;
    object-position: center;
    image-rendering: auto;
    filter: none;
}

/*
 * Painel de dados em glass escuro, levemente por cima da foto.
 * O blur é forte, mas a transparência evita que fique pesado.
 */
body.ker-event-detail-surface .ker-pilot-modal__content {
    position: relative;
    z-index: 3;
    align-self: center;
    min-height: 430px;
    margin-left: -30px;
    padding: 42px 40px 40px 46px;
    border: 1px solid rgba(255, 255, 255, .105);
    border-radius: 24px;
    background:
        linear-gradient(
            145deg,
            rgba(16, 9, 12, .68),
            rgba(16, 9, 12, .48)
        );
    box-shadow:
        0 24px 72px rgba(0, 0, 0, .30),
        inset 0 1px 0 rgba(255, 255, 255, .035);
    -webkit-backdrop-filter: blur(30px) saturate(125%);
    backdrop-filter: blur(30px) saturate(125%);
}

/* Tags e estatísticas também ficam menos sólidas. */
body.ker-event-detail-surface .ker-pilot-modal__tags span {
    border-color: rgba(255, 255, 255, .10);
    color: rgba(238, 243, 246, .76);
    background: rgba(255, 255, 255, .045);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
}

body.ker-event-detail-surface .ker-pilot-modal__stats > div {
    border-color: rgba(255, 255, 255, .085);
    background: rgba(5, 6, 8, .22);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}

body.ker-event-detail-surface .ker-pilot-modal__socials .ker-pilot-social {
    background: rgba(255, 255, 255, .045);
    border-color: rgba(255, 255, 255, .13);
}

/* X perfeitamente centralizado no círculo. */
body.ker-event-detail-surface .ker-pilot-modal__close {
    top: 15px;
    right: 15px;
    z-index: 8;
    width: 40px;
    height: 40px;
    min-width: 40px;
    min-height: 40px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 50%;
    color: #fff;
    background: rgba(16, 9, 12, .42);
    box-shadow: 0 8px 24px rgba(0, 0, 0, .18);
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
    font-family: Arial, Helvetica, sans-serif;
    font-size: 23px;
    font-weight: 300;
    line-height: 1;
    text-align: center;
    text-indent: 0;
    cursor: pointer;
}

body.ker-event-detail-surface .ker-pilot-modal__close:hover,
body.ker-event-detail-surface .ker-pilot-modal__close:focus-visible {
    border-color: rgba(255, 255, 255, .34);
    background: rgba(16, 9, 12, .62);
    outline: 0;
}

/* Mobile: volta para empilhado, mantendo o glass. */
@media (max-width: 760px) {
    body.ker-event-detail-surface .ker-pilot-modal {
        padding: 14px;
    }

    body.ker-event-detail-surface .ker-pilot-modal__dialog {
        grid-template-columns: 1fr;
        width: min(520px, 100%);
        max-height: calc(100vh - 28px);
        overflow-y: auto;
        border-radius: 22px;
        background: rgba(16, 9, 12, .28) !important;
        -webkit-backdrop-filter: blur(18px);
        backdrop-filter: blur(18px);
    }

    body.ker-event-detail-surface .ker-pilot-modal__visual {
        min-height: 380px;
        border-radius: 22px 22px 0 0;
    }

    body.ker-event-detail-surface .ker-pilot-modal__visual img {
        min-height: 380px;
    }

    body.ker-event-detail-surface .ker-pilot-modal__content {
        min-height: 0;
        margin-left: 0;
        margin-top: -20px;
        padding: 32px 24px 28px;
        border-radius: 22px;
    }

    body.ker-event-detail-surface .ker-pilot-modal__close {
        position: fixed;
        top: 24px;
        right: 24px;
    }
}


/* =========================================================
   KER v1.2.8 — abas acompanham o fluxo normal da página
   ========================================================= */

/*
 * Pilotos / Posição / Circuito deixam de ser sticky.
 * A barra permanece visualmente flutuante na transição do hero,
 * mas rola normalmente junto com o restante do conteúdo.
 */
body.ker-event-detail-surface .ker-event-sticky-tabs {
    position: relative !important;
    top: auto !important;
    z-index: 20;
}

/* Neutraliza qualquer sticky herdado em desktop/mobile. */
@media (max-width: 760px) {
    body.ker-event-detail-surface .ker-event-sticky-tabs {
        position: relative !important;
        top: auto !important;
    }
}


/* =========================================================
   KER v1.2.9 — modal neutro + pódio padronizado
   ========================================================= */

/*
 * Neutraliza o "vazamento" colorido que aparecia abaixo do modal.
 * O fundo continua glass, mas recebe base #10090C mais opaca para
 * as cores fortes dos cards da página não atravessarem o painel.
 */
body.ker-event-detail-surface .ker-pilot-modal__backdrop {
    background: rgba(16, 9, 12, .68) !important;
    -webkit-backdrop-filter: blur(18px) saturate(92%);
    backdrop-filter: blur(18px) saturate(92%);
}

body.ker-event-detail-surface .ker-pilot-modal__dialog {
    isolation: isolate;
    box-shadow: none !important;
    filter: none !important;
}

body.ker-event-detail-surface .ker-pilot-modal__visual {
    box-shadow: 0 18px 48px rgba(0, 0, 0, .26) !important;
}

body.ker-event-detail-surface .ker-pilot-modal__content {
    background:
        linear-gradient(
            145deg,
            rgba(16, 9, 12, .86),
            rgba(16, 9, 12, .74)
        ) !important;
    box-shadow:
        0 20px 52px rgba(0, 0, 0, .24),
        inset 0 1px 0 rgba(255, 255, 255, .03) !important;
    -webkit-backdrop-filter: blur(26px) saturate(102%);
    backdrop-filter: blur(26px) saturate(102%);
}

/* Remove qualquer pseudo-elemento residual que possa criar halo. */
body.ker-event-detail-surface .ker-pilot-modal__dialog::before,
body.ker-event-detail-surface .ker-pilot-modal__dialog::after,
body.ker-event-detail-surface .ker-pilot-modal__content::before,
body.ker-event-detail-surface .ker-pilot-modal__content::after {
    display: none !important;
    content: none !important;
}

/* Pódio das tabelas gerais. */
.ker-position__podium {
    display: inline-block;
    margin-right: 5px;
    font-size: .92em;
    font-style: normal;
    line-height: 1;
    vertical-align: -0.02em;
}

/* Emoji no nome do modal fica bem alinhado com a tipografia. */
body.ker-event-detail-surface [data-ker-modal-name] {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

/* No mobile, mantém o fundo neutro sem bleed de cores. */
@media (max-width: 760px) {
    body.ker-event-detail-surface .ker-pilot-modal__dialog {
        background: rgba(16, 9, 12, .78) !important;
    }

    body.ker-event-detail-surface .ker-pilot-modal__content {
        background:
            linear-gradient(
                145deg,
                rgba(16, 9, 12, .90),
                rgba(16, 9, 12, .80)
            ) !important;
    }
}


/* =========================================================
   KER v1.3.0 — Ranking público + menu final
   ========================================================= */

body.ker-ranking-surface,
.ker-ranking-page,
.ker-ranking-main {
    background: #10090C;
}

body.ker-ranking-surface .ker-header {
    border-bottom: 0;
    background: rgba(16, 9, 12, .45);
    box-shadow: 0 8px 32px rgba(0, 0, 0, .11);
    -webkit-backdrop-filter: blur(22px) saturate(135%);
    backdrop-filter: blur(22px) saturate(135%);
}

.ker-nav__list .current-menu-item > a {
    color: #fff;
}

.ker-ranking-hero {
    position: relative;
    overflow: hidden;
    padding: 132px 0 72px;
    background: #10090C;
}

.ker-ranking-hero__ambient {
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: radial-gradient(circle at 76% 24%, rgba(118, 38, 70, .14), transparent 27rem);
}

.ker-ranking-hero__inner {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 40px;
}

.ker-ranking-hero h1 {
    margin: 9px 0 8px;
    font-size: clamp(4rem, 9vw, 8rem);
    line-height: .82;
    letter-spacing: -.075em;
}

.ker-ranking-hero h1 em {
    color: rgba(255,255,255,.29);
    font-style: normal;
}

.ker-ranking-hero p {
    max-width: 650px;
    margin: 0;
    color: rgba(218,225,231,.62);
    font-size: .9rem;
}

.ker-ranking-season {
    display: flex;
    align-items: flex-end;
    gap: 7px;
    padding: 7px;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 16px;
    background: rgba(8,7,8,.34);
    -webkit-backdrop-filter: blur(16px);
    backdrop-filter: blur(16px);
}

.ker-ranking-season label { display: grid; gap: 3px; }
.ker-ranking-season label > span {
    padding-left: 7px;
    color: rgba(225,231,235,.5);
    font-size: .57rem;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.ker-ranking-season select {
    min-width: 115px;
    min-height: 39px;
    padding: 0 30px 0 10px;
    border: 0;
    border-radius: 10px;
    color: #fff;
    background: rgba(255,255,255,.05);
    outline: 0;
    font-weight: 800;
}

.ker-ranking-season button {
    min-height: 39px;
    padding: 0 14px;
    border: 0;
    border-radius: 10px;
    color: #10090C;
    background: #fff;
    font-size: .72rem;
    font-weight: 900;
    cursor: pointer;
}

.ker-ranking-main { padding: 0 0 96px; }

.ker-ranking-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 20px;
}

.ker-ranking-switch {
    --ker-ranking-active: 0;
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, minmax(150px, 190px));
    gap: 5px;
    padding: 5px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 999px;
    background: rgba(7,7,9,.36);
    -webkit-backdrop-filter: blur(18px);
    backdrop-filter: blur(18px);
}

.ker-ranking-switch::before {
    content: "";
    position: absolute;
    top: 5px;
    bottom: 5px;
    left: 5px;
    width: calc((100% - 15px) / 2);
    border-radius: 999px;
    background: rgba(255,255,255,.96);
    transform: translateX(calc(var(--ker-ranking-active) * (100% + 5px)));
    transition: transform .32s cubic-bezier(.22,.8,.3,1);
    pointer-events: none;
}

.ker-ranking-switch button {
    position: relative;
    z-index: 1;
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 0;
    color: rgba(239,242,245,.63);
    background: transparent;
    font-size: .76rem;
    font-weight: 900;
    cursor: pointer;
}

.ker-ranking-switch button.is-active { color: #0b0b0d; }

.ker-ranking-switch button span {
    min-width: 21px;
    min-height: 21px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: rgba(128,128,128,.14);
    font-size: .58rem;
}

.ker-ranking-search { width: min(330px, 100%); }
.ker-ranking-search input {
    width: 100%;
    min-height: 44px;
    padding: 0 16px;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 999px;
    color: #fff;
    background: rgba(7,7,9,.31);
    outline: 0;
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
}

.ker-ranking-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 26px;
}

.ker-ranking-summary > div {
    min-height: 84px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 15px 18px;
    border: 1px solid rgba(255,255,255,.065);
    border-radius: 15px;
    background: rgba(255,255,255,.018);
}

.ker-ranking-summary span {
    color: rgba(192,201,208,.48);
    font-size: .61rem;
    font-weight: 800;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.ker-ranking-summary strong { margin-top: 4px; font-size: 1.15rem; }

.ker-ranking-panel { animation: ker-ranking-panel-in .24s ease; }
@keyframes ker-ranking-panel-in {
    from { opacity: 0; transform: translateY(3px); }
    to { opacity: 1; transform: translateY(0); }
}

.ker-ranking-table-wrap { overflow-x: auto; }

.ker-ranking-table {
    width: 100%;
    min-width: 820px;
    border-collapse: separate;
    border-spacing: 0 7px;
    font-size: .78rem;
}

.ker-ranking-table th {
    padding: 10px 13px;
    border: 0;
    color: #fff;
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .075em;
    text-align: left;
}

.ker-ranking-table td {
    padding: 12px 13px;
    border-top: 1px solid rgba(255,255,255,.055);
    border-bottom: 1px solid rgba(255,255,255,.055);
    color: rgba(239,243,246,.78);
    background: rgba(21,14,18,.58);
    -webkit-backdrop-filter: blur(9px);
    backdrop-filter: blur(9px);
}

.ker-ranking-table td:first-child {
    border-left: 1px solid rgba(255,255,255,.055);
    border-radius: 13px 0 0 13px;
}

.ker-ranking-table td:last-child {
    border-right: 1px solid rgba(255,255,255,.055);
    border-radius: 0 13px 13px 0;
}

.ker-ranking-table tbody tr:hover td {
    background: rgba(30,20,25,.72);
    border-color: rgba(255,255,255,.09);
}

.ker-ranking-position { width: 86px; white-space: nowrap; }
.ker-ranking-position > span { display: inline-block; margin-right: 6px; font-size: 1rem; }
.ker-ranking-position strong { color: #fff; font-size: 1rem; }

.ker-ranking-pilot {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    padding: 0;
    border: 0;
    color: #fff;
    background: transparent;
    text-align: left;
    cursor: pointer;
}

.ker-ranking-pilot .ker-public-avatar {
    width: 44px;
    height: 44px;
    min-width: 44px;
    min-height: 44px;
    max-width: 44px;
    max-height: 44px;
    flex: 0 0 44px;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    object-fit: cover;
    object-position: center;
}

.ker-ranking-pilot__text { display: grid; gap: 2px; }
.ker-ranking-pilot__text strong {
    max-width: 280px;
    overflow: hidden;
    font-size: .84rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.ker-ranking-pilot__text small { color: rgba(178,190,199,.48); font-size: .59rem; }

.ker-ranking-discard { color: rgba(216,190,199,.58); }
.ker-ranking-points { color: #fff; font-size: 1rem; }

/* Mesmo modal moderno das etapas */
body.ker-ranking-surface .ker-pilot-modal__backdrop {
    background: rgba(16,9,12,.68);
    -webkit-backdrop-filter: blur(18px) saturate(92%);
    backdrop-filter: blur(18px) saturate(92%);
}

body.ker-ranking-surface .ker-pilot-modal__dialog {
    width: min(820px, 100%);
    grid-template-columns: minmax(300px,.92fr) minmax(0,1.08fr);
    overflow: visible;
    border: 0;
    background: transparent;
    box-shadow: none;
}

body.ker-ranking-surface .ker-pilot-modal__visual {
    min-height: 500px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
    background: #10090C;
    box-shadow: 0 18px 48px rgba(0,0,0,.26);
}

body.ker-ranking-surface .ker-pilot-modal__visual img {
    width: 100%;
    height: 100%;
    min-height: 500px;
    object-fit: cover;
    object-position: center;
}

body.ker-ranking-surface .ker-pilot-modal__content {
    position: relative;
    z-index: 3;
    align-self: center;
    min-height: 430px;
    margin-left: -30px;
    padding: 42px 40px 40px 46px;
    border: 1px solid rgba(255,255,255,.105);
    border-radius: 24px;
    background: linear-gradient(145deg, rgba(16,9,12,.86), rgba(16,9,12,.74));
    box-shadow: 0 20px 52px rgba(0,0,0,.24);
    -webkit-backdrop-filter: blur(26px);
    backdrop-filter: blur(26px);
}

body.ker-ranking-surface .ker-pilot-modal__close {
    top: 15px;
    right: 15px;
    z-index: 8;
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 50%;
    color: #fff;
    background: rgba(16,9,12,.42);
    font-family: Arial, Helvetica, sans-serif;
    font-size: 23px;
    line-height: 1;
}

@media (max-width: 760px) {
    .ker-ranking-hero { padding: 105px 0 52px; }
    .ker-ranking-hero__inner { align-items: flex-start; flex-direction: column; }
    .ker-ranking-hero h1 { font-size: clamp(4rem, 19vw, 6.4rem); }

    .ker-ranking-season { width: 100%; }
    .ker-ranking-season label { flex: 1; }
    .ker-ranking-season select { width: 100%; }

    .ker-ranking-toolbar { align-items: stretch; flex-direction: column; }
    .ker-ranking-switch, .ker-ranking-search { width: 100%; }
    .ker-ranking-switch { grid-template-columns: 1fr 1fr; }
    .ker-ranking-summary { grid-template-columns: 1fr; }

    .ker-ranking-table-wrap {
        margin-left: -13px;
        margin-right: -13px;
        padding: 0 13px;
    }

    body.ker-ranking-surface .ker-pilot-modal__dialog {
        grid-template-columns: 1fr;
        width: min(520px, 100%);
        max-height: calc(100vh - 28px);
        overflow-y: auto;
        background: rgba(16,9,12,.78);
    }

    body.ker-ranking-surface .ker-pilot-modal__visual,
    body.ker-ranking-surface .ker-pilot-modal__visual img { min-height: 380px; }

    body.ker-ranking-surface .ker-pilot-modal__content {
        min-height: 0;
        margin-left: 0;
        margin-top: -20px;
        padding: 32px 24px 28px;
    }
}


/* =========================================================
   KER v1.3.1 — scroll interno do Ranking
   ========================================================= */

/*
 * A classificação deixa de aumentar indefinidamente a altura da página.
 * Desktop: área de tabela limitada a 610px.
 * O cabeçalho permanece visível durante o scroll.
 */
.ker-ranking-table-wrap {
    max-height: 610px;
    overflow-x: auto;
    overflow-y: auto;
    padding-right: 5px;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
}

.ker-ranking-table thead {
    position: sticky;
    top: 0;
    z-index: 6;
}

.ker-ranking-table thead th {
    position: sticky;
    top: 0;
    z-index: 6;
    background: rgba(16, 9, 12, .94);
    -webkit-backdrop-filter: blur(16px);
    backdrop-filter: blur(16px);
    box-shadow: 0 10px 18px rgba(16, 9, 12, .72);
}

/* Scrollbar discreta e integrada ao fundo oficial. */
.ker-ranking-table-wrap {
    scrollbar-width: thin;
    scrollbar-color: rgba(255,255,255,.20) rgba(255,255,255,.035);
}

.ker-ranking-table-wrap::-webkit-scrollbar {
    width: 9px;
    height: 9px;
}

.ker-ranking-table-wrap::-webkit-scrollbar-track {
    border-radius: 999px;
    background: rgba(255,255,255,.03);
}

.ker-ranking-table-wrap::-webkit-scrollbar-thumb {
    border: 2px solid #10090C;
    border-radius: 999px;
    background: rgba(255,255,255,.18);
}

.ker-ranking-table-wrap::-webkit-scrollbar-thumb:hover {
    background: rgba(255,255,255,.28);
}

@media (max-width: 760px) {
    .ker-ranking-table-wrap {
        max-height: 66vh;
    }
}


/* =========================================================
   KER v1.4.0 — HOME
   Inspirada na Home atual da KER, reconstruída no novo tema.
   ========================================================= */

body.ker-home-surface {
    background: #10090C;
}

body.ker-home-surface .ker-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 90;
    border-bottom: 0;
    background: rgba(16, 9, 12, .26);
    box-shadow: none;
    -webkit-backdrop-filter: blur(22px) saturate(130%);
    backdrop-filter: blur(22px) saturate(130%);
}

body.ker-home-surface .ker-header__inner {
    min-height: 70px;
}

body.ker-home-surface .ker-nav__list a {
    color: rgba(255, 255, 255, .77);
}

body.ker-home-surface .ker-nav__list a:hover,
body.ker-home-surface .ker-nav__list a:focus-visible,
body.ker-home-surface .ker-nav__list .current-menu-item > a {
    color: #fff;
}

.ker-home {
    overflow: clip;
    background: #10090C;
}

/* HERO */
.ker-home-hero {
    position: relative;
    min-height: max(720px, 100svh);
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #10090C;
    isolation: isolate;
}

.ker-home-hero__background {
    position: absolute;
    z-index: -5;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    filter: saturate(.92) contrast(1.04);
    transform: scale(1.015);
}

.ker-home-hero__overlay {
    position: absolute;
    z-index: -4;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(16,9,12,.18) 0%, rgba(16,9,12,.02) 36%, rgba(16,9,12,.16) 64%, #10090C 100%),
        linear-gradient(90deg, rgba(16,9,12,.30), rgba(16,9,12,.02) 45%, rgba(16,9,12,.18));
}

.ker-home-hero__title-wrap {
    position: absolute;
    z-index: -1;
    top: 19%;
    left: 50%;
    width: min(1280px, calc(100% - 50px));
    transform: translateX(-50%);
    text-align: center;
}

.ker-home-hero__eyebrow {
    display: block;
    margin-bottom: 13px;
    color: rgba(255,255,255,.65);
    font-size: .67rem;
    font-weight: 900;
    letter-spacing: .25em;
}

.ker-home-hero h1 {
    margin: 0;
    color: rgba(255,255,255,.94);
    font-size: clamp(5.8rem, 16vw, 14.5rem);
    font-weight: 950;
    line-height: .68;
    letter-spacing: -.085em;
    text-shadow: 0 12px 45px rgba(0,0,0,.18);
}

.ker-home-hero__kart {
    position: absolute;
    z-index: 2;
    left: 50%;
    bottom: 6%;
    width: min(1240px, 92vw);
    max-height: 67vh;
    object-fit: contain;
    transform: translateX(-50%);
    filter: drop-shadow(0 35px 48px rgba(0,0,0,.25));
}

.ker-home-hero__shadow {
    position: absolute;
    z-index: 3;
    left: 50%;
    right: auto;
    bottom: -1px;
    width: 110%;
    max-width: none;
    min-height: 240px;
    object-fit: fill;
    transform: translateX(-50%);
    pointer-events: none;
}

.ker-home-hero__actions {
    position: absolute;
    z-index: 5;
    left: 50%;
    bottom: 7.2%;
    display: flex;
    gap: 9px;
    transform: translateX(-50%);
}

.ker-home-button {
    min-height: 43px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 18px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 999px;
    font-size: .75rem;
    font-weight: 900;
    text-decoration: none;
    transition: background .2s ease, border-color .2s ease, color .2s ease;
}

.ker-home-button--light {
    border-color: #fff;
    color: #10090C;
    background: #fff;
}

.ker-home-button--glass {
    color: #fff;
    background: rgba(16,9,12,.30);
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
}

.ker-home-button--glass:hover {
    border-color: rgba(255,255,255,.30);
    background: rgba(16,9,12,.53);
}

.ker-home-scroll {
    position: absolute;
    z-index: 5;
    right: 30px;
    bottom: 28px;
    display: flex;
    align-items: center;
    gap: 8px;
    color: rgba(255,255,255,.57);
    font-size: .61rem;
    font-weight: 850;
    letter-spacing: .11em;
    text-decoration: none;
    text-transform: uppercase;
}

.ker-home-scroll i {
    width: 31px;
    height: 31px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 50%;
    font-style: normal;
}

/* Seções editoriais */
.ker-home-feature {
    position: relative;
    padding: clamp(80px, 10vw, 150px) 0;
    background: #10090C;
}

.ker-home-feature + .ker-home-feature {
    border-top: 1px solid rgba(255,255,255,.045);
}

.ker-home-feature__grid {
    display: grid;
    grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
    gap: clamp(42px, 7vw, 100px);
    align-items: center;
}

.ker-home-feature--reverse .ker-home-feature__copy {
    order: 2;
}

.ker-home-feature--reverse .ker-home-feature__media {
    order: 1;
}

.ker-home-feature__copy {
    position: relative;
    z-index: 2;
}

.ker-home-feature__index {
    display: block;
    margin-bottom: 34px;
    color: rgba(255,255,255,.14);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .12em;
}

.ker-home-feature h2 {
    margin: 11px 0 30px;
    max-width: 650px;
    color: #fff;
    font-size: clamp(3.7rem, 7vw, 7.6rem);
    font-weight: 900;
    line-height: .82;
    letter-spacing: -.072em;
}

.ker-home-feature__body {
    max-width: 620px;
    display: grid;
    gap: 17px;
}

.ker-home-feature__body p {
    margin: 0;
    color: rgba(231,235,238,.62);
    font-size: clamp(.88rem, 1.15vw, 1rem);
    line-height: 1.72;
}

.ker-home-feature__links {
    display: flex;
    flex-wrap: wrap;
    gap: 22px;
    margin-top: 31px;
}

.ker-home-feature__links a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #fff;
    font-size: .75rem;
    font-weight: 900;
    text-decoration: none;
}

.ker-home-feature__links a span {
    color: rgba(255,255,255,.45);
    transition: transform .18s ease;
}

.ker-home-feature__links a:hover span {
    transform: translate(2px, -2px);
}

.ker-home-feature__media {
    position: relative;
    margin: 0;
    overflow: hidden;
    min-height: 610px;
    border-radius: 4px;
    background: #160E12;
}

.ker-home-feature__media::before {
    content: "";
    position: absolute;
    z-index: 3;
    inset: 0;
    border: 1px solid rgba(255,255,255,.06);
    pointer-events: none;
}

.ker-home-feature__media img {
    width: 100%;
    height: 100%;
    min-height: 610px;
    display: block;
    object-fit: cover;
    filter: saturate(.88) contrast(1.03);
    transition: transform .8s cubic-bezier(.2,.7,.2,1);
}

.ker-home-feature__media:hover img {
    transform: scale(1.015);
}

.ker-home-feature__media-shade {
    position: absolute;
    z-index: 2;
    inset: 0;
    background:
        linear-gradient(180deg, transparent 58%, rgba(16,9,12,.30)),
        linear-gradient(90deg, rgba(16,9,12,.13), transparent 30%);
    pointer-events: none;
}

/* CTA final */
.ker-home-cta {
    padding: clamp(100px, 14vw, 210px) 0;
    border-top: 1px solid rgba(255,255,255,.045);
    background:
        radial-gradient(circle at 75% 35%, rgba(125,43,76,.13), transparent 28rem),
        #10090C;
}

.ker-home-cta__inner {
    text-align: center;
}

.ker-home-cta h2 {
    margin: 14px auto 30px;
    max-width: 960px;
    color: #fff;
    font-size: clamp(4.1rem, 9vw, 9rem);
    font-weight: 920;
    line-height: .80;
    letter-spacing: -.078em;
}

.ker-home-cta__actions {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 9px;
}

/* Footer */
.ker-footer--modern {
    border-top: 1px solid rgba(255,255,255,.06);
    background: #10090C;
}

.ker-footer--modern .ker-footer__inner {
    min-height: 150px;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: 28px;
}

.ker-footer__brand {
    display: flex;
    align-items: baseline;
    gap: 10px;
}

.ker-footer__brand strong {
    color: #fff;
    font-size: 1.25rem;
    letter-spacing: -.05em;
}

.ker-footer__brand span,
.ker-footer__copy {
    color: rgba(255,255,255,.39);
    font-size: .67rem;
}

.ker-footer__nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 19px;
}

.ker-footer__nav a {
    color: rgba(255,255,255,.57);
    font-size: .68rem;
    font-weight: 750;
    text-decoration: none;
}

.ker-footer__nav a:hover {
    color: #fff;
}

.ker-footer__copy {
    justify-self: end;
}

/* Responsivo */
@media (max-width: 980px) {
    .ker-home-feature__grid {
        grid-template-columns: 1fr;
    }

    .ker-home-feature--reverse .ker-home-feature__copy,
    .ker-home-feature--reverse .ker-home-feature__media {
        order: initial;
    }

    .ker-home-feature__media,
    .ker-home-feature__media img {
        min-height: 520px;
    }

    .ker-footer--modern .ker-footer__inner {
        grid-template-columns: 1fr;
        justify-items: center;
        padding: 34px 0;
        text-align: center;
    }

    .ker-footer__copy {
        justify-self: center;
    }
}

@media (max-width: 760px) {
    body.ker-home-surface .ker-header__inner {
        min-height: 62px;
    }

    body.ker-home-surface .ker-nav {
        top: 62px;
        border-color: rgba(255,255,255,.08);
        background: rgba(16,9,12,.82);
        -webkit-backdrop-filter: blur(22px);
        backdrop-filter: blur(22px);
    }

    .ker-home-hero {
        min-height: 680px;
    }

    .ker-home-hero__title-wrap {
        top: 23%;
        width: calc(100% - 22px);
    }

    .ker-home-hero h1 {
        font-size: clamp(5.2rem, 27vw, 9rem);
        line-height: .71;
    }

    .ker-home-hero__kart {
        bottom: 11%;
        width: 128vw;
        max-width: none;
    }

    .ker-home-hero__shadow {
        width: 145%;
        min-height: 190px;
    }

    .ker-home-hero__actions {
        bottom: 6%;
    }

    .ker-home-scroll {
        display: none;
    }

    .ker-home-feature {
        padding: 80px 0;
    }

    .ker-home-feature__index {
        margin-bottom: 22px;
    }

    .ker-home-feature h2 {
        font-size: clamp(3.5rem, 16vw, 6rem);
    }

    .ker-home-feature__media,
    .ker-home-feature__media img {
        min-height: 430px;
    }

    .ker-home-cta {
        padding: 100px 0;
    }

    .ker-home-cta h2 {
        font-size: clamp(3.8rem, 17vw, 6.7rem);
    }
}

@media (max-width: 480px) {
    .ker-home-hero {
        min-height: 610px;
    }

    .ker-home-hero__eyebrow {
        font-size: .56rem;
    }

    .ker-home-hero h1 {
        font-size: clamp(4.8rem, 26vw, 7rem);
    }

    .ker-home-hero__kart {
        bottom: 13%;
        width: 144vw;
    }

    .ker-home-hero__actions {
        width: calc(100% - 28px);
        bottom: 5%;
    }

    .ker-home-button {
        flex: 1;
    }

    .ker-home-feature__media,
    .ker-home-feature__media img {
        min-height: 360px;
    }

    .ker-home-feature__body p {
        font-size: .88rem;
    }

    .ker-footer__nav {
        gap: 12px 17px;
    }
}


/* =========================================================
   KER v1.4.1 — Home mais limpa e alinhada
   ========================================================= */

/* Hero sem botões: o kart pode ocupar a composição com mais equilíbrio. */
body.ker-home-surface .ker-home-hero__kart {
    bottom: 5%;
}

body.ker-home-surface .ker-home-hero__shadow {
    bottom: -1px;
}

/* Esconde qualquer kicker pequeno herdado na Home. */
body.ker-home-surface .ker-home .ker-public-kicker {
    display: none !important;
}

/*
 * Seções: mais respiro entre coluna de texto e imagem e sem invasão
 * do título sobre a mídia.
 */
body.ker-home-surface .ker-home-feature__grid {
    grid-template-columns: minmax(0, 0.86fr) minmax(0, 1.14fr);
    gap: clamp(64px, 7.5vw, 118px);
    align-items: center;
}

body.ker-home-surface .ker-home-feature__copy {
    width: 100%;
    max-width: 560px;
}

body.ker-home-surface .ker-home-feature--reverse .ker-home-feature__copy {
    justify-self: end;
}

body.ker-home-surface .ker-home-feature__index {
    margin-bottom: 20px;
}

body.ker-home-surface .ker-home-feature h2 {
    max-width: 100%;
    margin: 0 0 30px;
    font-size: clamp(3.45rem, 5.35vw, 6.6rem);
    line-height: .86;
    letter-spacing: -.067em;
    text-wrap: balance;
}

body.ker-home-surface .ker-home-feature__body {
    max-width: 510px;
}

body.ker-home-surface .ker-home-feature__body p {
    line-height: 1.68;
}

body.ker-home-surface .ker-home-feature__media {
    width: 100%;
    min-height: 560px;
    border-radius: 8px;
}

body.ker-home-surface .ker-home-feature__media img {
    min-height: 560px;
}

/* Links editoriais ficam discretos e alinhados ao texto, sem aparência de CTA. */
body.ker-home-surface .ker-home-feature__links {
    margin-top: 28px;
    gap: 26px;
}

body.ker-home-surface .ker-home-feature__links a {
    padding-bottom: 3px;
    border-bottom: 1px solid rgba(255,255,255,.12);
    color: rgba(255,255,255,.72);
    font-size: .69rem;
}

body.ker-home-surface .ker-home-feature__links a:hover {
    color: #fff;
    border-bottom-color: rgba(255,255,255,.38);
}

/* O rodapé agora vem direto após a última área editorial. */
body.ker-home-surface .ker-footer--modern {
    margin-top: 0;
}

@media (max-width: 1100px) {
    body.ker-home-surface .ker-home-feature__grid {
        grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
        gap: 52px;
    }

    body.ker-home-surface .ker-home-feature h2 {
        font-size: clamp(3.15rem, 5.4vw, 5.4rem);
    }
}

@media (max-width: 980px) {
    body.ker-home-surface .ker-home-feature__grid {
        grid-template-columns: 1fr;
        gap: 38px;
    }

    body.ker-home-surface .ker-home-feature__copy,
    body.ker-home-surface .ker-home-feature--reverse .ker-home-feature__copy {
        max-width: 680px;
        justify-self: start;
    }

    body.ker-home-surface .ker-home-feature h2 {
        max-width: 680px;
        font-size: clamp(3.7rem, 10vw, 6rem);
    }

    body.ker-home-surface .ker-home-feature__body {
        max-width: 620px;
    }
}

@media (max-width: 760px) {
    body.ker-home-surface .ker-home-hero__kart {
        bottom: 8%;
    }

    body.ker-home-surface .ker-home-feature {
        padding: 72px 0;
    }

    body.ker-home-surface .ker-home-feature__index {
        margin-bottom: 14px;
    }

    body.ker-home-surface .ker-home-feature h2 {
        margin-bottom: 24px;
        font-size: clamp(3.35rem, 15vw, 5.6rem);
    }

    body.ker-home-surface .ker-home-feature__media,
    body.ker-home-surface .ker-home-feature__media img {
        min-height: 410px;
    }
}


/* =========================================================
   KER v1.4.2 — Home sem elementos secundários
   ========================================================= */

body.ker-home-surface .ker-home-hero__eyebrow,
body.ker-home-surface .ker-home-scroll,
body.ker-home-surface .ker-home-feature__index,
body.ker-home-surface .ker-home-feature__links,
body.ker-home-surface .ker-home .ker-public-kicker {
    display: none !important;
}

body.ker-home-surface .ker-home-feature__copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

body.ker-home-surface .ker-home-feature h2 {
    margin-top: 0;
}

body.ker-home-surface .ker-home-hero__title-wrap {
    top: 18%;
}

@media (max-width: 760px) {
    body.ker-home-surface .ker-home-hero__title-wrap {
        top: 22%;
    }
}


/* =========================================================
   KER Theme v1.5.0 — Inscrições
   Reconstrução do fluxo atual da KER no novo WordPress.
   ========================================================= */

body.ker-registration-surface {
    background: #10090C;
}

body.ker-registration-surface .ker-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 90;
    border-bottom: 0;
    background: rgba(16,9,12,.34);
    box-shadow: none;
    -webkit-backdrop-filter: blur(22px) saturate(130%);
    backdrop-filter: blur(22px) saturate(130%);
}

.ker-registration-page {
    min-height: 80vh;
    background: #10090C;
}

.ker-registration-empty {
    min-height: 72vh;
    display: grid;
    place-items: center;
    align-content: center;
    gap: 8px;
    padding-top: 100px;
    text-align: center;
}

.ker-registration-empty > span {
    color: rgba(255,255,255,.35);
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: .18em;
}

.ker-registration-empty h1 {
    margin: 0;
    font-size: clamp(4rem, 10vw, 8rem);
    letter-spacing: -.07em;
}

.ker-registration-empty p {
    color: rgba(255,255,255,.55);
}

/* Hero e cards */
.ker-registration-hero {
    position: relative;
    min-height: 920px;
    padding: 116px 0 82px;
    overflow: hidden;
    background:
        linear-gradient(180deg, rgba(16,9,12,.25), rgba(16,9,12,.48) 55%, #10090C 100%),
        var(--ker-registration-hero) center / cover no-repeat;
}

.ker-registration-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 50% 28%, rgba(255,255,255,.08), transparent 30rem);
    pointer-events: none;
}

.ker-registration-hero__shade {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(16,9,12,.38), transparent 35%, transparent 65%, rgba(16,9,12,.38));
    pointer-events: none;
}

.ker-registration-hero__inner {
    position: relative;
    z-index: 2;
    display: grid;
    justify-items: center;
}

.ker-registration-event-logo {
    width: min(380px, 58vw);
    max-height: 150px;
    object-fit: contain;
    margin: 0 auto 26px;
    filter: drop-shadow(0 14px 30px rgba(0,0,0,.24));
}

.ker-registration-intro {
    max-width: 720px;
    margin: 0 auto 28px;
    color: rgba(255,255,255,.68);
    font-size: .86rem;
    line-height: 1.7;
    text-align: center;
}

.ker-registration-success,
.ker-registration-alert {
    width: min(760px, 100%);
    margin: 0 auto 24px;
    padding: 17px 20px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 14px;
    background: rgba(16,9,12,.62);
    -webkit-backdrop-filter: blur(16px);
    backdrop-filter: blur(16px);
    text-align: center;
}

.ker-registration-success {
    display: grid;
    gap: 5px;
}

.ker-registration-success > span {
    color: rgba(255,255,255,.5);
    font-size: .58rem;
    font-weight: 900;
    letter-spacing: .12em;
}

.ker-registration-success > strong {
    font-size: 1.5rem;
}

.ker-registration-success p,
.ker-registration-alert {
    color: rgba(255,255,255,.72);
}

.ker-registration-success p {
    margin: 0;
    font-size: .78rem;
}

.ker-registration-cards {
    width: min(850px, 100%);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(18px, 3vw, 34px);
    margin: 8px auto 0;
}

.ker-registration-card {
    position: relative;
    min-height: 535px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 20px;
    background: #151014;
    box-shadow: 0 28px 65px rgba(0,0,0,.24);
    cursor: pointer;
    transition: border-color .22s ease, box-shadow .22s ease, opacity .22s ease;
}

.ker-registration-card::after {
    content: "";
    position: absolute;
    inset: 0;
    border: 2px solid transparent;
    border-radius: inherit;
    pointer-events: none;
    transition: border-color .2s ease;
}

.ker-registration-card.is-selected::after {
    border-color: rgba(255,255,255,.9);
}

.ker-registration-card.is-selected {
    box-shadow: 0 28px 75px rgba(0,0,0,.33);
}

.ker-registration-card.is-disabled {
    opacity: .54;
    cursor: default;
}

.ker-registration-card > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ker-registration-card__shade {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(0,0,0,.02) 24%, rgba(10,7,9,.28) 52%, rgba(10,7,9,.94) 100%),
        linear-gradient(90deg, rgba(16,9,12,.13), transparent);
}

.ker-registration-card__content {
    position: absolute;
    z-index: 2;
    inset: auto 0 0;
    display: grid;
    justify-items: start;
    gap: 9px;
    padding: 34px 31px 29px;
}

.ker-registration-vacancies {
    color: #fff;
    font-size: clamp(1.45rem, 2.7vw, 2.3rem);
    font-weight: 900;
    line-height: 1;
    letter-spacing: -.04em;
}

.ker-registration-card h2 {
    margin: 1px 0 0;
    color: rgba(255,255,255,.73);
    font-size: .64rem;
    font-weight: 950;
    letter-spacing: .18em;
}

.ker-registration-card p {
    min-height: 42px;
    margin: 0;
    color: rgba(255,255,255,.60);
    font-size: .68rem;
    line-height: 1.55;
}

.ker-registration-card button {
    min-height: 39px;
    margin-top: 5px;
    padding: 0 16px;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 999px;
    color: #10090C;
    background: #fff;
    font-size: .67rem;
    font-weight: 900;
    cursor: pointer;
}

.ker-registration-card button:disabled {
    cursor: not-allowed;
}

.ker-registration-continue {
    min-width: 230px;
    min-height: 45px;
    margin-top: 25px;
    padding: 0 22px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 999px;
    color: #fff;
    background: rgba(16,9,12,.55);
    font-size: .72rem;
    font-weight: 900;
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
    cursor: pointer;
}

.ker-registration-continue:disabled {
    opacity: .35;
    cursor: default;
}

/* Informações do evento */
.ker-registration-event-info {
    padding: 65px 0 86px;
    background: #10090C;
}

.ker-registration-event-panel {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr);
    min-height: 490px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 20px;
    background: rgba(255,255,255,.018);
}

.ker-registration-event-panel figure {
    min-height: 490px;
    margin: 0;
    overflow: hidden;
}

.ker-registration-event-panel figure img {
    width: 100%;
    height: 100%;
    min-height: 490px;
    object-fit: cover;
}

.ker-registration-event-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(35px, 5vw, 66px);
}

.ker-registration-event-copy > span {
    color: rgba(255,255,255,.38);
    font-size: .63rem;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.ker-registration-event-copy > strong {
    margin-top: 17px;
    color: #fff;
    font-size: clamp(1.55rem, 3vw, 2.6rem);
    line-height: 1.05;
    letter-spacing: -.045em;
}

.ker-registration-event-copy h3 {
    margin: 30px 0 7px;
    font-size: 1.05rem;
}

.ker-registration-event-copy p {
    margin: 0;
    color: rgba(255,255,255,.55);
    font-size: .78rem;
    line-height: 1.65;
}

.ker-registration-event-copy a {
    width: fit-content;
    margin-top: 25px;
    color: rgba(255,255,255,.78);
    font-size: .72rem;
    font-weight: 850;
    text-decoration: none;
}

.ker-registration-map {
    margin-top: 18px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 20px;
    background: #151014;
}

.ker-registration-map iframe {
    width: 100%;
    min-height: 380px;
    display: block;
    border: 0;
    filter: grayscale(.45) brightness(.78);
}

/* Formulário */
.ker-registration-form-section {
    padding: 88px 0 105px;
    border-top: 1px solid rgba(255,255,255,.045);
    background: #10090C;
}

.ker-registration-form-logo {
    width: min(330px, 60vw);
    max-height: 120px;
    display: block;
    margin: 0 auto 27px;
    object-fit: contain;
}

.ker-registration-form-title {
    margin-bottom: 37px;
    text-align: center;
}

.ker-registration-form-title > span {
    color: rgba(255,255,255,.35);
    font-size: .58rem;
    font-weight: 900;
    letter-spacing: .14em;
}

.ker-registration-form-title h2 {
    margin: 7px 0 0;
    font-size: clamp(3.4rem, 7vw, 6.7rem);
    line-height: .85;
    letter-spacing: -.07em;
}

.ker-registration-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 22px;
    align-items: start;
}

.ker-registration-fields,
.ker-registration-summary,
.ker-registration-closed {
    border: 1px solid rgba(255,255,255,.075);
    border-radius: 18px;
    background: rgba(255,255,255,.022);
}

.ker-registration-fields {
    padding: clamp(24px, 4vw, 42px);
}

.ker-registration-field-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.ker-registration-field-grid label {
    display: grid;
    gap: 7px;
}

.ker-registration-field-grid label > span {
    color: rgba(255,255,255,.55);
    font-size: .66rem;
    font-weight: 800;
}

.ker-registration-field-grid input,
.ker-registration-field-grid select {
    width: 100%;
    min-height: 47px;
    padding: 0 14px;
    border: 1px solid rgba(255,255,255,.095);
    border-radius: 10px;
    color: #fff;
    background: rgba(5,5,7,.28);
    outline: 0;
    font: inherit;
    font-size: .78rem;
}

.ker-registration-field-grid input::placeholder {
    color: rgba(255,255,255,.25);
}

.ker-registration-field-grid input:focus,
.ker-registration-field-grid select:focus {
    border-color: rgba(255,255,255,.30);
    background: rgba(5,5,7,.40);
}

.ker-registration-field-grid select option {
    color: #111;
}

.ker-registration-field--wide {
    grid-column: span 2;
}

.ker-registration-summary {
    position: sticky;
    top: 96px;
    padding: 25px;
    -webkit-backdrop-filter: blur(16px);
    backdrop-filter: blur(16px);
}

.ker-registration-summary__eyebrow {
    display: block;
    margin-bottom: 20px;
    color: rgba(255,255,255,.39);
    font-size: .59rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.ker-registration-summary__category {
    min-height: 92px;
    display: grid;
    align-content: center;
    gap: 6px;
    padding: 15px 0 19px;
    border-bottom: 1px solid rgba(255,255,255,.07);
    color: rgba(255,255,255,.48);
    font-size: .72rem;
}

.ker-registration-summary__category strong {
    color: #fff;
    font-size: 1rem;
}

.ker-registration-summary__category span {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    color: rgba(255,255,255,.49);
}

.ker-registration-summary__category > b {
    justify-self: end;
    color: #fff;
}

.ker-registration-summary__row,
.ker-registration-summary__total {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
}

.ker-registration-summary__row {
    padding: 18px 0;
    border-bottom: 1px solid rgba(255,255,255,.07);
    color: rgba(255,255,255,.53);
    font-size: .7rem;
}

.ker-registration-summary__row strong {
    color: rgba(255,255,255,.72);
}

.ker-registration-summary__total {
    padding: 22px 0;
}

.ker-registration-summary__total span {
    color: rgba(255,255,255,.58);
    font-size: .73rem;
}

.ker-registration-summary__total strong {
    font-size: 1.45rem;
}

.ker-registration-summary button {
    width: 100%;
    min-height: 46px;
    border: 0;
    border-radius: 999px;
    color: #10090C;
    background: #fff;
    font-size: .73rem;
    font-weight: 900;
    cursor: pointer;
}

.ker-registration-summary button:disabled {
    opacity: .32;
    cursor: default;
}

.ker-registration-summary small {
    display: block;
    margin-top: 12px;
    color: rgba(255,255,255,.30);
    font-size: .6rem;
    line-height: 1.5;
    text-align: center;
}

.ker-registration-closed {
    padding: 32px;
    color: rgba(255,255,255,.65);
    text-align: center;
}

.ker-registration-honeypot {
    position: absolute !important;
    left: -9999px !important;
    opacity: 0 !important;
}

/* Mobile */
@media (max-width: 900px) {
    .ker-registration-hero {
        min-height: auto;
        padding-bottom: 72px;
    }

    .ker-registration-cards {
        width: min(650px, 100%);
    }

    .ker-registration-card {
        min-height: 470px;
    }

    .ker-registration-event-panel,
    .ker-registration-form {
        grid-template-columns: 1fr;
    }

    .ker-registration-event-panel figure,
    .ker-registration-event-panel figure img {
        min-height: 380px;
    }

    .ker-registration-summary {
        position: relative;
        top: auto;
    }
}

@media (max-width: 680px) {
    .ker-registration-hero {
        padding-top: 96px;
    }

    .ker-registration-event-logo {
        width: min(300px, 72vw);
    }

    .ker-registration-cards {
        grid-template-columns: 1fr;
        width: min(430px, 100%);
    }

    .ker-registration-card {
        min-height: 535px;
    }

    .ker-registration-event-info {
        padding: 48px 0 66px;
    }

    .ker-registration-event-panel figure,
    .ker-registration-event-panel figure img {
        min-height: 310px;
    }

    .ker-registration-event-copy {
        padding: 30px 24px;
    }

    .ker-registration-form-section {
        padding: 66px 0 82px;
    }

    .ker-registration-field-grid {
        grid-template-columns: 1fr;
    }

    .ker-registration-field--wide {
        grid-column: auto;
    }

    .ker-registration-form-title h2 {
        font-size: clamp(3rem, 14vw, 5rem);
    }
}


/* =========================================================
   KER Theme v1.5.1 — Inscrição em etapas, multi-categoria
   e preview fixo do mapa
   ========================================================= */

[data-registration-stage-screen][hidden],
[data-registration-form-screen][hidden] {
    display: none !important;
}

.ker-registration-step__header {
    max-width: 760px;
    margin: 8px auto 30px;
    text-align: center;
}

.ker-registration-step__header > span {
    color: rgba(255,255,255,.34);
    font-size: .58rem;
    font-weight: 900;
    letter-spacing: .13em;
}

.ker-registration-step__header h1 {
    margin: 7px 0 8px;
    color: #fff;
    font-size: clamp(2.7rem, 5vw, 4.8rem);
    line-height: .88;
    letter-spacing: -.06em;
}

.ker-registration-step__header p {
    margin: 0;
    color: rgba(255,255,255,.56);
    font-size: .8rem;
}

/* Card: vagas no topo, categoria grande embaixo. */
.ker-registration-card {
    cursor: default;
}

.ker-registration-card::after {
    border-width: 2px;
}

.ker-registration-vacancies {
    position: absolute;
    z-index: 4;
    top: 18px;
    left: 18px;
    width: fit-content;
    max-width: calc(100% - 36px);
    padding: 8px 11px;
    border: 1px solid rgba(255,255,255,.17);
    border-radius: 999px;
    color: #fff;
    background: rgba(16,9,12,.66);
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
    font-size: .66rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: .01em;
    box-shadow: 0 8px 24px rgba(0,0,0,.14);
}

.ker-registration-card__content {
    gap: 11px;
}

.ker-registration-card h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(1.75rem, 3vw, 2.55rem);
    font-weight: 950;
    line-height: .95;
    letter-spacing: -.045em;
}

.ker-registration-card p {
    min-height: 40px;
    color: rgba(255,255,255,.62);
}

.ker-registration-select-button {
    position: relative;
    z-index: 6;
    min-width: 126px !important;
    min-height: 42px !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 5px;
    padding: 0 18px !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    border-radius: 999px !important;
    color: #10090C !important;
    background: #fff !important;
    font-size: .69rem !important;
    font-weight: 900 !important;
    cursor: pointer !important;
    transition: transform .15s ease, background .2s ease, color .2s ease, border-color .2s ease;
}

.ker-registration-select-button:hover:not(:disabled) {
    transform: translateY(-1px);
}

.ker-registration-select-button[aria-pressed="true"] {
    color: #fff !important;
    border-color: rgba(255,255,255,.32) !important;
    background: rgba(16,9,12,.78) !important;
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
}

.ker-registration-select-button:disabled {
    opacity: .5;
    cursor: not-allowed !important;
}

/* Informações do evento passam a fazer parte da etapa 1. */
.ker-registration-event-inline {
    width: min(1050px, 100%);
    margin: 34px auto 0;
}

.ker-registration-event-inline .ker-registration-event-panel {
    min-height: 360px;
}

.ker-registration-event-inline .ker-registration-event-panel figure,
.ker-registration-event-inline .ker-registration-event-panel figure img {
    min-height: 360px;
}

/* Preview do mapa totalmente bloqueado. */
.ker-registration-map--locked {
    position: relative;
    height: 300px;
    margin-top: 14px;
    overflow: hidden;
    user-select: none;
    cursor: default;
}

.ker-registration-map--locked iframe {
    width: 100%;
    height: 100%;
    min-height: 300px;
    pointer-events: none !important;
    touch-action: none !important;
    user-select: none !important;
}

.ker-registration-map__lock {
    position: absolute;
    z-index: 3;
    inset: 0;
    background: transparent;
    pointer-events: auto;
    touch-action: none;
    cursor: default;
}

.ker-registration-map__label {
    position: absolute;
    z-index: 4;
    left: 18px;
    bottom: 18px;
    display: grid;
    gap: 2px;
    max-width: calc(100% - 36px);
    padding: 10px 13px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 10px;
    color: #fff;
    background: rgba(16,9,12,.72);
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
    pointer-events: none;
}

.ker-registration-map__label span {
    color: rgba(255,255,255,.45);
    font-size: .54rem;
    font-weight: 900;
    letter-spacing: .10em;
}

.ker-registration-map__label strong {
    font-size: .78rem;
}

.ker-registration-step__footer {
    width: min(1050px, 100%);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin: 22px auto 0;
}

.ker-registration-selection-text {
    color: rgba(255,255,255,.52);
    font-size: .72rem;
}

.ker-registration-continue {
    min-width: 180px;
    margin-top: 0;
}

.ker-registration-back {
    min-height: 38px;
    margin-bottom: 28px;
    padding: 0;
    border: 0;
    color: rgba(255,255,255,.62);
    background: transparent;
    font-size: .71rem;
    font-weight: 850;
    cursor: pointer;
}

.ker-registration-back:hover {
    color: #fff;
}

.ker-registration-form-title > span {
    color: rgba(255,255,255,.35);
}

.ker-registration-summary__category-list {
    display: grid;
    gap: 0;
    border-bottom: 1px solid rgba(255,255,255,.07);
}

.ker-registration-summary__empty {
    min-height: 72px;
    display: grid;
    align-items: center;
    color: rgba(255,255,255,.42);
    font-size: .7rem;
}

.ker-registration-summary__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 15px 0;
    border-bottom: 1px solid rgba(255,255,255,.055);
}

.ker-registration-summary__item:last-child {
    border-bottom: 0;
}

.ker-registration-summary__item > div {
    display: grid;
    gap: 3px;
}

.ker-registration-summary__item strong {
    color: #fff;
    font-size: .82rem;
}

.ker-registration-summary__item span {
    color: rgba(255,255,255,.42);
    font-size: .62rem;
}

.ker-registration-summary__item > b {
    color: #fff;
    font-size: .79rem;
}

@media (max-width: 900px) {
    .ker-registration-event-inline .ker-registration-event-panel {
        grid-template-columns: 1fr;
    }

    .ker-registration-event-inline .ker-registration-event-panel figure,
    .ker-registration-event-inline .ker-registration-event-panel figure img {
        min-height: 320px;
    }
}

@media (max-width: 680px) {
    .ker-registration-step__header {
        margin-bottom: 24px;
    }

    .ker-registration-step__header h1 {
        font-size: clamp(2.6rem, 13vw, 4.5rem);
    }

    .ker-registration-vacancies {
        top: 14px;
        left: 14px;
        max-width: calc(100% - 28px);
    }

    .ker-registration-card h2 {
        font-size: clamp(2rem, 10vw, 2.8rem);
    }

    .ker-registration-map--locked {
        height: 250px;
    }

    .ker-registration-map--locked iframe {
        min-height: 250px;
    }

    .ker-registration-step__footer {
        align-items: stretch;
        flex-direction: column;
    }

    .ker-registration-continue {
        width: 100%;
    }
}


/* =========================================================
   KER Theme v1.5.2 — cards, seleção, continuar e mapa
   ========================================================= */

/* Vagas maiores no topo do card. */
.ker-registration-vacancies {
    top: 18px !important;
    left: 18px !important;
    min-height: 36px;
    display: inline-flex;
    align-items: center;
    padding: 0 14px !important;
    font-size: .82rem !important;
    font-weight: 900 !important;
    line-height: 1 !important;
}

/* Nome NOVATOS / EXTREME maior. */
.ker-registration-card h2 {
    font-size: clamp(2.2rem, 4vw, 3.4rem) !important;
    line-height: .9 !important;
    letter-spacing: -.055em !important;
}

/* Botão Selecionar maior. */
.ker-registration-select-button {
    min-width: 184px !important;
    min-height: 50px !important;
    padding: 0 24px !important;
    font-size: .80rem !important;
}

/* Estado selecionado: verde no botão e na borda do card. */
.ker-registration-card.is-selected {
    border-color: var(--ker-accent) !important;
    box-shadow:
        0 0 0 2px rgba(var(--ker-accent-rgb),.48),
        0 28px 75px rgba(0,0,0,.34) !important;
}

.ker-registration-card.is-selected::after {
    border-color: var(--ker-accent) !important;
}

.ker-registration-select-button[aria-pressed="true"] {
    color: #fff !important;
    border-color: var(--ker-accent) !important;
    background: var(--ker-accent) !important;
    box-shadow: 0 8px 24px rgba(var(--ker-accent-rgb),.28) !important;
}

/* Footer da seleção agora fica imediatamente abaixo dos cards. */
.ker-registration-step__footer {
    width: min(850px, 100%) !important;
    margin: 26px auto 8px !important;
}

.ker-registration-selection-text {
    font-size: .78rem !important;
}

/* Continuar maior e bem visível. */
.ker-registration-continue {
    min-width: 300px !important;
    min-height: 56px !important;
    padding: 0 32px !important;
    border-radius: 999px !important;
    color: #10090C !important;
    border-color: #fff !important;
    background: #fff !important;
    font-size: .90rem !important;
    font-weight: 950 !important;
    box-shadow: 0 14px 34px rgba(0,0,0,.18);
}

.ker-registration-continue:disabled {
    opacity: .32 !important;
    color: rgba(255,255,255,.72) !important;
    border-color: rgba(255,255,255,.12) !important;
    background: rgba(16,9,12,.58) !important;
    box-shadow: none !important;
}

/* Preview do Maps sempre fixo: sem arrastar, zoom ou clique. */
.ker-registration-map--locked iframe {
    pointer-events: none !important;
    touch-action: none !important;
    user-select: none !important;
}

.ker-registration-map__lock {
    pointer-events: auto !important;
    touch-action: none !important;
    cursor: default !important;
}

@media (max-width: 680px) {
    .ker-registration-vacancies {
        top: 14px !important;
        left: 14px !important;
        min-height: 34px;
        padding: 0 12px !important;
        font-size: .76rem !important;
    }

    .ker-registration-select-button {
        min-width: 176px !important;
        min-height: 48px !important;
    }

    .ker-registration-step__footer {
        width: 100% !important;
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .ker-registration-continue {
        width: 100% !important;
        min-width: 0 !important;
    }
}


/* =========================================================
   KER Theme v1.5.3 — preenchimento automático por CEP
   ========================================================= */

.ker-registration-cep-field {
    position: relative;
}

.ker-registration-cep-status {
    min-height: 15px;
    display: block;
    margin-top: -2px;
    color: rgba(255,255,255,.38);
    font-size: .58rem;
    line-height: 1.35;
}

.ker-registration-cep-status[data-state="loading"] {
    color: rgba(255,255,255,.56);
}

.ker-registration-cep-status[data-state="success"] {
    color: #56c77b;
}

.ker-registration-cep-status[data-state="error"] {
    color: #e18a94;
}

.ker-registration-field-grid input[data-ker-cep].is-loading {
    background-image:
        radial-gradient(circle at center, rgba(255,255,255,.88) 0 2px, transparent 2.5px),
        radial-gradient(circle at center, rgba(255,255,255,.46) 0 2px, transparent 2.5px),
        radial-gradient(circle at center, rgba(255,255,255,.22) 0 2px, transparent 2.5px);
    background-repeat: no-repeat;
    background-position:
        calc(100% - 13px) 50%,
        calc(100% - 20px) 50%,
        calc(100% - 27px) 50%;
    padding-right: 42px;
}

.ker-registration-field-grid input[data-ker-cep].has-error {
    border-color: rgba(215,38,56,.52);
}


/* =========================================================
   KER Theme v1.5.4 — botão Continuar + mapa aproximado
   ========================================================= */

/* O botão precisa ficar imediatamente abaixo dos cards e evidente. */
.ker-registration-step__footer {
    width: min(850px, 100%) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    margin: 28px auto 14px !important;
}

.ker-registration-continue {
    min-width: 320px !important;
    min-height: 58px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 36px !important;
    border: 1px solid #fff !important;
    border-radius: 999px !important;
    color: #10090C !important;
    background: #fff !important;
    font-size: .92rem !important;
    font-weight: 950 !important;
    line-height: 1 !important;
    visibility: visible !important;
}

.ker-registration-continue:disabled {
    opacity: .34 !important;
    color: rgba(255,255,255,.74) !important;
    border-color: rgba(255,255,255,.18) !important;
    background: rgba(16,9,12,.62) !important;
}

.ker-registration-selection-text {
    color: rgba(255,255,255,.60) !important;
    font-size: .80rem !important;
}

/* Preview fixo: mais alto e sem qualquer interação. */
.ker-registration-map--locked {
    height: 420px !important;
    min-height: 420px !important;
}

.ker-registration-map--locked iframe {
    width: 100% !important;
    height: 420px !important;
    min-height: 420px !important;
    pointer-events: none !important;
    touch-action: none !important;
}

.ker-registration-map__lock {
    pointer-events: auto !important;
    touch-action: none !important;
    cursor: default !important;
}

@media (max-width: 680px) {
    .ker-registration-step__footer {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .ker-registration-continue {
        width: 100% !important;
        min-width: 0 !important;
    }

    .ker-registration-map--locked,
    .ker-registration-map--locked iframe {
        height: 310px !important;
        min-height: 310px !important;
    }
}


/* =========================================================
   KER Theme v1.5.5 — mapa preciso + link externo funcional
   ========================================================= */

.ker-registration-map--locked iframe {
    filter: grayscale(.22) brightness(.90) !important;
}

/*
 * A camada transparente continua bloqueando o iframe inteiro.
 * O botão abaixo fica acima dela e é a única interação permitida.
 */
.ker-registration-map__open {
    position: absolute;
    z-index: 6;
    top: 14px;
    left: 14px;
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 14px;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 9px;
    color: #fff !important;
    background: rgba(16,9,12,.78);
    box-shadow: 0 8px 24px rgba(0,0,0,.18);
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
    font-size: .68rem;
    font-weight: 900;
    line-height: 1;
    text-decoration: none !important;
    pointer-events: auto !important;
    cursor: pointer !important;
}

.ker-registration-map__open:hover,
.ker-registration-map__open:focus-visible {
    border-color: rgba(255,255,255,.32);
    background: rgba(16,9,12,.93);
    color: #fff !important;
}

.ker-registration-map__label {
    z-index: 5 !important;
}

@media (max-width: 680px) {
    .ker-registration-map__open {
        top: 10px;
        left: 10px;
        min-height: 36px;
        padding: 0 12px;
    }
}


/* =========================================================
   KER Theme v1.5.6 — Nome/Sobrenome + WhatsApp BR
   ========================================================= */

.ker-registration-phone-hint {
    display: block;
    margin-top: -2px;
    color: rgba(255,255,255,.34);
    font-size: .57rem;
    line-height: 1.35;
}

.ker-registration-field-grid input[data-ker-whatsapp]:invalid:not(:placeholder-shown) {
    border-color: rgba(215,38,56,.45);
}


/* KER Theme v1.5.7 — redes sociais opcionais */
.ker-registration-socials-block {
    margin-top: 8px;
    padding-top: 24px;
    border-top: 1px solid rgba(255,255,255,.07);
}
.ker-registration-socials-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 14px;
}
.ker-registration-socials-heading > div {
    display: grid;
    gap: 5px;
}
.ker-registration-socials-heading strong {
    color: rgba(255,255,255,.78);
    font-size: .72rem;
}
.ker-registration-socials-heading strong small {
    color: rgba(255,255,255,.36);
}
.ker-registration-socials-heading span {
    max-width: 650px;
    color: rgba(255,255,255,.36);
    font-size: .61rem;
    line-height: 1.5;
}
.ker-registration-socials-heading button,
.ker-registration-social-remove {
    min-height: 38px;
    padding: 0 14px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 999px;
    color: rgba(255,255,255,.78);
    background: rgba(255,255,255,.025);
    font-size: .64rem;
    font-weight: 850;
    cursor: pointer;
}
.ker-registration-socials-list {
    display: grid;
    gap: 10px;
}
.ker-registration-social-row {
    display: grid;
    grid-template-columns: 150px minmax(150px,.6fr) minmax(220px,1.2fr) auto;
    gap: 10px;
    align-items: end;
    padding: 13px;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 12px;
    background: rgba(255,255,255,.018);
}
.ker-registration-social-row label {
    display: grid;
    gap: 6px;
}
.ker-registration-social-row label > span {
    color: rgba(255,255,255,.48);
    font-size: .59rem;
    font-weight: 800;
}
.ker-registration-social-row input,
.ker-registration-social-row select {
    width: 100%;
    min-height: 42px;
    padding: 0 12px;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 9px;
    color: #fff;
    background: rgba(5,5,7,.28);
    outline: 0;
    font-size: .72rem;
}
.ker-registration-social-row select option { color: #111; }
.ker-registration-social-remove { color: rgba(239,145,154,.75); }

@media (max-width: 900px) {
    .ker-registration-social-row {
        grid-template-columns: 1fr 1fr;
    }
    .ker-registration-social-url {
        grid-column: 1 / -1;
    }
}
@media (max-width: 620px) {
    .ker-registration-socials-heading {
        flex-direction: column;
    }
    .ker-registration-social-row {
        grid-template-columns: 1fr;
    }
    .ker-registration-social-url {
        grid-column: auto;
    }
}


/* =========================================================
   KER Theme v1.6.0 — Área do Piloto
   ========================================================= */

.ker-header-account {
    display: flex;
    align-items: center;
    margin-left: 14px;
}
.ker-header-account > a {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 16px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 999px;
    color: #fff;
    background: rgba(255,255,255,.04);
    font-size: .72rem;
    font-weight: 850;
    text-decoration: none;
}
.ker-header-account > a:hover { background: rgba(255,255,255,.09); }

.ker-auth-page,
.ker-pilot-area {
    min-height: 100vh;
    color: #fff;
    background: #10090C;
}

.ker-auth-page {
    position: relative;
    overflow: hidden;
    padding: 150px 0 100px;
}
.ker-auth-orb {
    position: absolute;
    width: 460px;
    height: 460px;
    border-radius: 50%;
    filter: blur(90px);
    opacity: .16;
    pointer-events: none;
}
.ker-auth-orb--one { top: 80px; left: -180px; background: var(--ker-accent); }
.ker-auth-orb--two { right: -160px; bottom: -100px; background: #7d2148; }

.ker-auth-shell {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0,1.05fr) minmax(360px,.7fr);
    gap: 72px;
    align-items: center;
}
.ker-auth-brand > span,
.ker-pilot-page-head > span,
.ker-pilot-panel__head span,
.ker-pilot-next-stage > div > span,
.ker-pilot-season-card > div > span {
    color: var(--ker-accent-bright);
    font-size: .66rem;
    font-weight: 900;
    letter-spacing: .16em;
}
.ker-auth-brand h1 {
    max-width: 720px;
    margin: 10px 0 18px;
    font-size: clamp(3rem,7vw,6.7rem);
    line-height: .91;
    letter-spacing: -.065em;
}
.ker-auth-brand p {
    max-width: 620px;
    margin: 0;
    color: rgba(255,255,255,.55);
    font-size: 1rem;
    line-height: 1.7;
}
.ker-auth-card {
    padding: 30px;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 24px;
    background: rgba(17,11,14,.72);
    box-shadow: 0 30px 80px rgba(0,0,0,.35);
    backdrop-filter: blur(24px);
}
.ker-auth-form {
    display: grid;
    gap: 16px;
}
.ker-auth-form label {
    display: grid;
    gap: 7px;
}
.ker-auth-form label > span {
    color: rgba(255,255,255,.58);
    font-size: .69rem;
    font-weight: 800;
}
.ker-auth-form label small {
    color: rgba(255,255,255,.32);
}
.ker-auth-form input:not([type="checkbox"]) {
    width: 100%;
    min-height: 48px;
    padding: 0 14px;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 11px;
    color: #fff;
    background: rgba(255,255,255,.035);
    outline: none;
}
.ker-auth-form input:focus {
    border-color: rgba(var(--ker-accent-bright-rgb),.55);
    box-shadow: 0 0 0 3px rgba(var(--ker-accent-bright-rgb),.08);
}
.ker-auth-form > button {
    min-height: 50px;
    border: 0;
    border-radius: 11px;
    color: #fff;
    background: var(--ker-accent);
    font-weight: 900;
    cursor: pointer;
}
.ker-auth-form > small {
    color: rgba(255,255,255,.34);
    font-size: .63rem;
    line-height: 1.5;
}
.ker-auth-check {
    display: flex !important;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 9px !important;
}
.ker-auth-links {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-top: 2px;
}
.ker-auth-links a,
.ker-auth-back {
    color: rgba(255,255,255,.55);
    font-size: .68rem;
    text-decoration: none;
}
.ker-auth-links a:hover,
.ker-auth-back:hover { color: #fff; }
.ker-auth-back {
    display: inline-flex;
    margin-top: 18px;
}
.ker-auth-notice,
.ker-pilot-notice {
    margin-bottom: 16px;
    padding: 12px 14px;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 10px;
    font-size: .72rem;
    line-height: 1.5;
}
.ker-auth-notice--success,
.ker-pilot-notice--success {
    color: #b9f4ce;
    border-color: rgba(var(--ker-accent-bright-rgb),.25);
    background: rgba(var(--ker-accent-rgb),.12);
}
.ker-auth-notice--error,
.ker-pilot-notice--error {
    color: #ffc5cc;
    border-color: rgba(239,83,100,.25);
    background: rgba(239,83,100,.09);
}
.ker-auth-notice--info {
    color: #d7e6ff;
    background: rgba(89,132,205,.12);
}

/* Área autenticada */
.ker-pilot-area { padding: 118px 0 90px; }
.ker-pilot-layout {
    display: grid;
    grid-template-columns: 260px minmax(0,1fr);
    gap: 38px;
    align-items: start;
}
.ker-pilot-sidebar {
    position: sticky;
    top: 100px;
    display: grid;
    gap: 22px;
}
.ker-pilot-identity {
    display: flex;
    gap: 13px;
    align-items: center;
}
.ker-pilot-identity img,
.ker-pilot-identity__placeholder {
    width: 58px;
    height: 58px;
    flex: 0 0 58px;
    border-radius: 50%;
    object-fit: cover;
}
.ker-pilot-identity__placeholder {
    display: grid;
    place-items: center;
    color: rgba(255,255,255,.8);
    background: rgba(255,255,255,.08);
    font-weight: 900;
}
.ker-pilot-identity > div {
    min-width: 0;
    display: grid;
    gap: 2px;
}
.ker-pilot-identity small { color: #38b96b; font-size: .55rem; font-weight: 900; letter-spacing: .08em; }
.ker-pilot-identity strong { overflow: hidden; font-size: .95rem; text-overflow: ellipsis; white-space: nowrap; }
.ker-pilot-identity span { color: rgba(255,255,255,.36); font-size: .62rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.ker-pilot-nav {
    display: grid;
    gap: 4px;
}
.ker-pilot-nav a {
    min-height: 43px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 0 12px;
    border-radius: 10px;
    color: rgba(255,255,255,.48);
    font-size: .72rem;
    font-weight: 800;
    text-decoration: none;
}
.ker-pilot-nav a:hover { color: #fff; background: rgba(255,255,255,.035); }
.ker-pilot-nav a.is-active { color: #fff; background: rgba(255,255,255,.075); }
.ker-pilot-nav b {
    min-width: 22px;
    height: 22px;
    display: inline-grid;
    place-items: center;
    border-radius: 999px;
    background: var(--ker-accent);
    font-size: .58rem;
}
.ker-pilot-logout {
    color: rgba(255,255,255,.34);
    font-size: .65rem;
    text-decoration: none;
}
.ker-pilot-main { min-width: 0; }
.ker-pilot-page-head { margin-bottom: 24px; }
.ker-pilot-page-head h1 {
    margin: 7px 0 9px;
    font-size: clamp(2.3rem,5vw,4.4rem);
    line-height: .96;
    letter-spacing: -.055em;
}
.ker-pilot-page-head p {
    max-width: 760px;
    margin: 0;
    color: rgba(255,255,255,.43);
    line-height: 1.65;
}

.ker-pilot-kpis {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 9px;
    margin-bottom: 18px;
}
.ker-pilot-kpis article,
.ker-performance-summary article {
    min-width: 0;
    display: grid;
    gap: 4px;
    padding: 17px;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 14px;
    background: rgba(255,255,255,.025);
}
.ker-pilot-kpis span,
.ker-performance-summary span { color: rgba(255,255,255,.35); font-size: .59rem; font-weight: 850; text-transform: uppercase; letter-spacing: .06em; }
.ker-pilot-kpis strong,
.ker-performance-summary strong { font-size: 1.75rem; line-height: 1; }
.ker-pilot-kpis small,
.ker-performance-summary small { color: rgba(255,255,255,.3); font-size: .58rem; }

.ker-pilot-next-stage,
.ker-pilot-season-card,
.ker-pilot-panel,
.ker-performance-panel {
    border: 1px solid rgba(255,255,255,.075);
    border-radius: 18px;
    background: rgba(255,255,255,.025);
}
.ker-pilot-next-stage {
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(260px,.45fr);
    gap: 24px;
    align-items: center;
    padding: 24px;
    margin-bottom: 12px;
}
.ker-pilot-next-stage h2,
.ker-pilot-season-card h2 {
    margin: 5px 0 7px;
    font-size: 1.7rem;
}
.ker-pilot-next-stage p,
.ker-pilot-season-card p { margin: 0; color: rgba(255,255,255,.4); font-size: .72rem; }
.ker-pilot-next-stage__action {
    display: grid;
    gap: 4px;
    padding: 15px;
    border-radius: 12px;
    background: rgba(255,255,255,.035);
}
.ker-pilot-next-stage__action strong { font-size: .8rem; }
.ker-pilot-next-stage__action span { color: rgba(255,255,255,.38); font-size: .63rem; }
.ker-pilot-next-stage__action a,
.ker-pilot-season-card a {
    margin-top: 8px;
    color: #62df8d;
    font-size: .68rem;
    font-weight: 850;
    text-decoration: none;
}
.ker-pilot-season-card {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: center;
    padding: 20px 22px;
    margin-bottom: 12px;
}
.ker-pilot-dashboard-grid {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 12px;
}
.ker-pilot-panel { padding: 20px; }
.ker-pilot-panel__head {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: center;
    margin-bottom: 15px;
}
.ker-pilot-panel__head h2 { margin: 4px 0 0; font-size: 1.25rem; }
.ker-pilot-panel__head a,
.ker-pilot-panel__head button {
    color: rgba(255,255,255,.55);
    border: 0;
    background: transparent;
    font-size: .64rem;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
}

.ker-achievement-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 8px;
}
.ker-achievement-grid article {
    display: grid;
    gap: 5px;
    padding: 13px;
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 11px;
}
.ker-achievement-grid b { font-size: 1.3rem; }
.ker-achievement-grid strong { font-size: .65rem; }
.ker-achievement-grid .is-locked { opacity: .28; filter: grayscale(1); }

.ker-notification-list { display: grid; gap: 9px; }
.ker-notification-list article {
    display: grid;
    grid-template-columns: 34px minmax(0,1fr) auto;
    gap: 12px;
    align-items: start;
    padding: 14px;
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 12px;
    background: rgba(255,255,255,.018);
}
.ker-notification-list article > .ker-notification-icon {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    margin-top: 0;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 10px;
    background: rgba(255,255,255,.035);
    font-size: .9rem;
}
.ker-notification-list article.is-unread > .ker-notification-icon {
    border-color: rgba(var(--ker-accent-bright-rgb),.24);
    background: rgba(var(--ker-accent-bright-rgb),.08);
    box-shadow: 0 0 0 4px rgba(var(--ker-accent-bright-rgb),.035);
}
.ker-notification-list article > div { display: grid; gap: 3px; }
.ker-notification-list strong { font-size: .72rem; }
.ker-notification-list p { margin: 0; color: rgba(255,255,255,.4); font-size: .63rem; line-height: 1.45; }
.ker-notification-list small { color: rgba(255,255,255,.23); font-size: .55rem; }
.ker-notification-list a { color: #66dd8f; font-size: .62rem; text-decoration: none; }
.ker-notification-list--compact article { grid-template-columns: 8px 1fr; padding: 10px 0; border: 0; border-radius: 0; background: transparent; border-bottom: 1px solid rgba(255,255,255,.05); }

.ker-pilot-profile-form { display: grid; gap: 12px; }
.ker-pilot-profile-locked {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 9px;
    margin-bottom: 18px;
}
.ker-pilot-profile-locked > div {
    display: grid;
    gap: 3px;
    padding: 13px;
    border-radius: 11px;
    background: rgba(255,255,255,.025);
}
.ker-pilot-profile-locked span,
.ker-pilot-form-grid label > span { color: rgba(255,255,255,.38); font-size: .6rem; font-weight: 800; }
.ker-pilot-profile-locked small { grid-column: 1/-1; color: rgba(255,255,255,.3); font-size: .58rem; }
.ker-pilot-form-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 11px;
}
.ker-pilot-form-grid label { display: grid; gap: 6px; }
.ker-pilot-form-grid label.is-wide { grid-column: 1/-1; }
.ker-pilot-form-grid input,
.ker-pilot-social-row input,
.ker-pilot-social-row select {
    width: 100%;
    min-height: 43px;
    padding: 0 12px;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 9px;
    color: #fff;
    background: rgba(255,255,255,.025);
    outline: none;
}
.ker-pilot-social-row select option { color: #111; }
.ker-pilot-social-list { display: grid; gap: 8px; }
.ker-pilot-social-row {
    display: grid;
    grid-template-columns: 160px minmax(140px,.6fr) minmax(220px,1.3fr) auto;
    gap: 8px;
    align-items: center;
}
.ker-pilot-social-row button {
    min-height: 38px;
    border: 1px solid rgba(239,83,100,.18);
    border-radius: 999px;
    color: #f3a0aa;
    background: transparent;
    cursor: pointer;
}
.ker-pilot-save {
    justify-self: start;
    min-height: 48px;
    padding: 0 22px;
    border: 0;
    border-radius: 11px;
    color: #fff;
    background: var(--ker-accent);
    font-weight: 900;
    cursor: pointer;
}

.ker-pilot-list { display: grid; gap: 9px; }
.ker-pilot-registration-card {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    gap: 18px;
    align-items: center;
    padding: 18px;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 14px;
    background: rgba(255,255,255,.02);
}
.ker-pilot-registration-card span { color: var(--ker-accent-bright); font-size: .59rem; font-weight: 850; }
.ker-pilot-registration-card h2 { margin: 5px 0; font-size: 1.15rem; }
.ker-pilot-registration-card p { margin: 0; color: rgba(255,255,255,.35); font-size: .63rem; }
.ker-pilot-registration-status { display: grid; gap: 4px; text-align: right; }
.ker-pilot-registration-status b { font-size: .7rem; }
.ker-pilot-registration-status span { color: rgba(255,255,255,.35); }

.ker-pilot-season-switcher {
    display: flex;
    gap: 12px;
    align-items: center;
    margin-bottom: 16px;
}
.ker-pilot-season-switcher > span { color: rgba(255,255,255,.3); font-size: .6rem; font-weight: 800; }
.ker-pilot-season-switcher > div { display: flex; gap: 5px; }
.ker-pilot-season-switcher a {
    min-width: 54px;
    height: 32px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 999px;
    color: rgba(255,255,255,.45);
    font-size: .63rem;
    font-weight: 850;
    text-decoration: none;
}
.ker-pilot-season-switcher a.is-active { color: #fff; border-color: rgba(var(--ker-accent-bright-rgb),.28); background: rgba(var(--ker-accent-rgb),.15); }

.ker-pilot-results-table-wrap {
    overflow-x: auto;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 15px;
}
.ker-pilot-results-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 720px;
}
.ker-pilot-results-table th,
.ker-pilot-results-table td {
    padding: 13px 15px;
    border-bottom: 1px solid rgba(255,255,255,.055);
    text-align: left;
}
.ker-pilot-results-table th { color: rgba(255,255,255,.34); font-size: .57rem; text-transform: uppercase; letter-spacing: .06em; }
.ker-pilot-results-table td { font-size: .68rem; }
.ker-pilot-results-table td:first-child { display: grid; gap: 2px; }
.ker-pilot-results-table small { color: rgba(255,255,255,.28); font-size: .55rem; }

.ker-performance-panel { position: relative; padding: 20px; margin-bottom: 12px; }
.ker-performance-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-bottom: 16px;
}
.ker-performance-toolbar button {
    min-height: 36px;
    padding: 0 13px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 999px;
    color: rgba(255,255,255,.48);
    background: transparent;
    font-size: .62rem;
    font-weight: 850;
    cursor: pointer;
}
.ker-performance-toolbar button.is-active { color: #fff; border-color: rgba(var(--ker-accent-bright-rgb),.3); background: rgba(var(--ker-accent-rgb),.16); }
.ker-performance-summary {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 8px;
    margin-bottom: 10px;
}
.ker-performance-summary strong[data-state="up"] { color: #53d482; }
.ker-performance-summary strong[data-state="down"] { color: #ef7786; }
.ker-performance-summary strong[data-state="stable"] { color: #e5c06d; }
.ker-performance-chart-wrap {
    position: relative;
    min-height: 360px;
    overflow: hidden;
}
.ker-performance-chart { width: 100%; height: auto; min-height: 320px; }
.ker-chart-grid line { stroke: rgba(255,255,255,.065); stroke-width: 1; }
.ker-chart-grid text,
.ker-chart-stage-label { fill: rgba(255,255,255,.29); font-size: 11px; font-family: inherit; }
.ker-chart-line { stroke: var(--ker-accent-bright); stroke-width: 3; stroke-linejoin: round; stroke-linecap: round; filter: drop-shadow(0 0 7px rgba(var(--ker-accent-bright-rgb),.2)); }
.ker-chart-point { fill: #10090C; stroke: #65dc8f; stroke-width: 3; cursor: pointer; }
.ker-chart-point:hover,
.ker-chart-point:focus { r: 8; outline: none; }
.ker-chart-empty { fill: rgba(255,255,255,.35); font-size: 15px; font-family: inherit; }
.ker-performance-tooltip {
    position: absolute;
    z-index: 5;
    min-width: 150px;
    transform: translate(-50%,-115%);
    display: grid;
    gap: 2px;
    padding: 9px 11px;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 9px;
    color: #fff;
    background: rgba(13,9,11,.96);
    box-shadow: 0 12px 30px rgba(0,0,0,.35);
    pointer-events: none;
}
.ker-performance-tooltip[hidden] { display: none; }
.ker-performance-tooltip strong { font-size: .66rem; }
.ker-performance-tooltip span { color: #75dd98; font-size: .61rem; }
.ker-performance-tooltip small { color: rgba(255,255,255,.3); font-size: .52rem; }
.ker-performance-legend {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    color: rgba(255,255,255,.25);
    font-size: .55rem;
}
.ker-performance-detail-grid {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 8px;
}
.ker-performance-detail-grid article {
    display: grid;
    gap: 4px;
    padding: 13px;
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 10px;
}
.ker-performance-detail-grid span { color: rgba(255,255,255,.35); font-size: .57rem; }
.ker-performance-detail-grid strong { font-size: 1.3rem; }
.ker-performance-detail-grid small { color: rgba(255,255,255,.28); font-size: .54rem; }

.ker-pilot-empty {
    margin: 0;
    padding: 20px;
    color: rgba(255,255,255,.35);
    border: 1px dashed rgba(255,255,255,.08);
    border-radius: 12px;
    font-size: .7rem;
}

.ker-registration-account-prefill {
    max-width: 720px;
    display: grid;
    gap: 3px;
    margin: -4px auto 24px;
    padding: 13px 15px;
    border: 1px solid rgba(var(--ker-accent-bright-rgb),.18);
    border-radius: 12px;
    background: rgba(var(--ker-accent-rgb),.08);
    text-align: left;
}
.ker-registration-account-prefill span { color: #57d984; font-size: .56rem; font-weight: 900; letter-spacing: .08em; }
.ker-registration-account-prefill strong { font-size: .78rem; }
.ker-registration-account-prefill p { margin: 0; color: rgba(255,255,255,.36); font-size: .6rem; }

@media (max-width: 1050px) {
    .ker-auth-shell { grid-template-columns: 1fr; gap: 34px; }
    .ker-auth-brand h1 { max-width: 780px; }
    .ker-auth-card { max-width: 620px; }
    .ker-pilot-layout { grid-template-columns: 1fr; }
    .ker-pilot-sidebar { position: static; }
    .ker-pilot-nav { display: flex; overflow-x: auto; padding-bottom: 4px; }
    .ker-pilot-nav a { flex: 0 0 auto; }
    .ker-pilot-logout { justify-self: start; }
    .ker-pilot-dashboard-grid { grid-template-columns: 1fr; }
    .ker-performance-detail-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 760px) {
    .ker-header-account { margin-left: auto; }
    .ker-header-account a { min-height: 34px; padding: 0 11px; font-size: .62rem; }
    .ker-auth-page { padding-top: 115px; }
    .ker-auth-brand h1 { font-size: clamp(2.8rem,15vw,5.2rem); }
    .ker-auth-card { padding: 20px; }
    .ker-pilot-area { padding-top: 95px; }
    .ker-pilot-kpis { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .ker-pilot-next-stage { grid-template-columns: 1fr; }
    .ker-pilot-season-card { align-items: flex-start; flex-direction: column; }
    .ker-achievement-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .ker-pilot-profile-locked,
    .ker-pilot-form-grid,
    .ker-performance-summary { grid-template-columns: 1fr; }
    .ker-pilot-social-row { grid-template-columns: 1fr; }
    .ker-pilot-registration-card { grid-template-columns: 1fr; }
    .ker-pilot-registration-status { text-align: left; }
    .ker-performance-chart-wrap { min-height: 300px; }
    .ker-performance-chart { min-height: 280px; }
    .ker-performance-legend { flex-direction: column; }
}

@media (max-width: 480px) {
    .ker-pilot-kpis,
    .ker-performance-detail-grid { grid-template-columns: 1fr; }
    .ker-achievement-grid { grid-template-columns: 1fr 1fr; }
    .ker-auth-links { flex-direction: column; }
}


/* KER Theme v1.6.1 — Modo Gestão */
.ker-pilot-management-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding:12px 14px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:linear-gradient(135deg,rgba(230,126,34,.13),rgba(255,255,255,.025));box-shadow:0 10px 30px rgba(0,0,0,.12)}.ker-pilot-management-bar>div:first-child{display:grid;gap:3px}.ker-pilot-management-bar span{color:#e9a15e;font-size:.57rem;font-weight:900;letter-spacing:.11em}.ker-pilot-management-bar strong{color:rgba(255,255,255,.9);font-size:.74rem}.ker-pilot-management-bar>div:last-child{display:flex;flex-wrap:wrap;gap:7px}.ker-pilot-management-bar a,.ker-pilot-management-links a{min-height:34px;display:inline-flex;align-items:center;justify-content:center;padding:0 11px;border:1px solid rgba(255,255,255,.12);border-radius:999px;color:rgba(255,255,255,.8);background:rgba(255,255,255,.035);font-size:.62rem;font-weight:800;text-decoration:none}.ker-pilot-management-bar a:hover,.ker-pilot-management-links a:hover{border-color:rgba(255,255,255,.25);color:#fff}.ker-pilot-management-links{display:grid;gap:7px;margin-top:12px}.ker-management-readonly{margin-bottom:14px;padding:11px 13px;border:1px solid rgba(230,126,34,.22);border-radius:10px;color:rgba(255,255,255,.68);background:rgba(230,126,34,.065);font-size:.66rem;line-height:1.5}.ker-pilot-profile-form fieldset{min-width:0;margin:0;padding:0;border:0}.ker-pilot-profile-form.is-management-preview fieldset:disabled{opacity:.82}@media(max-width:760px){.ker-pilot-management-bar{align-items:flex-start;flex-direction:column}}

/* KER Theme v1.6.2 — Meu QR Code */
.ker-pilot-qr-layout{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:18px;align-items:start}.ker-pilot-qr-card{position:sticky;top:100px;overflow:hidden;padding:18px;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:radial-gradient(circle at 80% 0%,rgba(var(--ker-accent-rgb),.14),transparent 34%),rgba(255,255,255,.035);box-shadow:0 24px 60px rgba(0,0,0,.2)}
.ker-pilot-qr-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ker-pilot-qr-card__head>div{display:grid;gap:2px}.ker-pilot-qr-card__head>div>span{color:rgba(255,255,255,.42);font-size:.55rem;font-weight:900;letter-spacing:.12em}.ker-pilot-qr-card__head h2{margin:0;color:#fff;font-size:1.05rem}.ker-pilot-qr-valid{min-height:27px;display:inline-flex;align-items:center;padding:0 9px;border:1px solid rgba(var(--ker-accent-rgb),.34);border-radius:999px;color:#83dda6;background:rgba(var(--ker-accent-rgb),.12);font-size:.52rem;font-weight:900;letter-spacing:.08em}
.ker-pilot-qr-frame{width:min(100%,390px);aspect-ratio:1;display:grid;place-items:center;margin:18px auto 12px;padding:14px;border-radius:18px;background:#fff;box-shadow:0 18px 50px rgba(0,0,0,.22)}.ker-pilot-qr-frame>div,.ker-pilot-qr-frame svg{width:100%;height:100%;display:block}.ker-pilot-qr-error{color:#7b242d;font-size:.72rem;font-weight:800}.ker-pilot-qr-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;color:rgba(255,255,255,.43);font-size:.58rem}
.ker-pilot-qr-fullscreen{width:100%;min-height:44px;margin-top:14px;border:1px solid rgba(255,255,255,.12);border-radius:11px;color:#fff;background:rgba(255,255,255,.06);font:inherit;font-size:.68rem;font-weight:850;cursor:pointer}.ker-pilot-qr-fullscreen:hover{border-color:rgba(255,255,255,.24);background:rgba(255,255,255,.095)}.ker-pilot-qr-privacy{margin:12px 0 0;color:rgba(255,255,255,.43);font-size:.57rem;line-height:1.55}.ker-pilot-qr-side{display:grid;gap:14px}
.ker-pilot-qr-steps{display:grid;gap:8px}.ker-pilot-qr-steps article{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;padding:10px 11px;border:1px solid rgba(255,255,255,.075);border-radius:11px;background:rgba(255,255,255,.022)}.ker-pilot-qr-steps b{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;color:#8ee4ae;background:rgba(var(--ker-accent-rgb),.1);font-size:.68rem}.ker-pilot-qr-steps article>div{display:grid;gap:2px}.ker-pilot-qr-steps strong{color:rgba(255,255,255,.88);font-size:.68rem}.ker-pilot-qr-steps span{color:rgba(255,255,255,.47);font-size:.58rem}
.ker-pilot-qr-events{display:grid;gap:8px}.ker-pilot-qr-events>article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:11px 12px;border:1px solid rgba(255,255,255,.075);border-radius:11px;background:rgba(255,255,255,.022)}.ker-pilot-qr-events>article>div:first-child{min-width:0;display:grid;gap:2px}.ker-pilot-qr-events>article>div:first-child>span{color:rgba(255,255,255,.38);font-size:.52rem;font-weight:850;letter-spacing:.05em}.ker-pilot-qr-events strong{overflow:hidden;color:rgba(255,255,255,.86);font-size:.67rem;text-overflow:ellipsis;white-space:nowrap}.ker-pilot-qr-events small{color:rgba(255,255,255,.42);font-size:.54rem}
.ker-pilot-qr-categories{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.ker-pilot-qr-categories>span{min-width:82px;display:grid;gap:1px;padding:6px 8px;border:1px solid rgba(255,255,255,.08);border-radius:9px;color:rgba(255,255,255,.62);background:rgba(255,255,255,.025);font-size:.52rem}.ker-pilot-qr-categories>span b{color:rgba(255,255,255,.42);font-size:.48rem}.ker-pilot-qr-categories>span.is-checked{border-color:rgba(var(--ker-accent-rgb),.28);color:#a6ebc0;background:rgba(var(--ker-accent-rgb),.075)}.ker-pilot-qr-categories>span.is-checked b{color:#71ce95}
html.ker-pilot-qr-modal-open,html.ker-pilot-qr-modal-open body{overflow:hidden}.ker-pilot-qr-modal[hidden]{display:none!important}.ker-pilot-qr-modal{position:fixed;z-index:100500;inset:0;display:grid;place-items:center;padding:18px}.ker-pilot-qr-modal__backdrop{position:absolute;inset:0;background:rgba(4,6,8,.9);backdrop-filter:blur(8px)}.ker-pilot-qr-modal__dialog{position:relative;z-index:1;width:min(610px,94vw);display:grid;justify-items:center;padding:24px;border:1px solid rgba(255,255,255,.12);border-radius:22px;background:#14171c;box-shadow:0 34px 100px rgba(0,0,0,.5)}.ker-pilot-qr-modal__close{position:absolute;right:13px;top:13px;width:38px;height:38px;border:1px solid rgba(255,255,255,.11);border-radius:50%;color:#fff;background:rgba(255,255,255,.055);font-size:22px;cursor:pointer}.ker-pilot-qr-modal__dialog>span{color:rgba(255,255,255,.42);font-size:.56rem;font-weight:900;letter-spacing:.12em}.ker-pilot-qr-modal__dialog h2{margin:4px 0 14px;color:#fff;font-size:1.05rem}.ker-pilot-qr-modal__dialog [data-ker-pilot-qr-large]{width:min(470px,78vw);aspect-ratio:1;padding:12px;border-radius:16px;background:#fff}.ker-pilot-qr-modal__dialog svg{width:100%;height:100%;display:block}.ker-pilot-qr-modal__dialog p{margin:13px 0 0;color:rgba(255,255,255,.48);font-size:.61rem;text-align:center}
@media(max-width:900px){.ker-pilot-qr-layout{grid-template-columns:1fr}.ker-pilot-qr-card{position:static}}@media(max-width:620px){.ker-pilot-qr-card{padding:14px}.ker-pilot-qr-frame{padding:10px}.ker-pilot-qr-events>article{grid-template-columns:1fr}.ker-pilot-qr-categories{justify-content:flex-start}.ker-pilot-qr-modal__dialog{padding:18px 14px}}


/* =========================================================
   KER Theme v1.6.4 — Sininho e Central de Notificações
   ========================================================= */

.ker-header-account {
    gap: 8px;
}

.ker-header-notifications {
    position: relative;
    display: flex;
    align-items: center;
}

.ker-header-bell {
    position: relative;
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 50%;
    color: rgba(255,255,255,.82);
    background: rgba(255,255,255,.035);
    cursor: pointer;
    transition:
        border-color .16s ease,
        background .16s ease,
        color .16s ease;
}

.ker-header-bell:hover,
.ker-header-notifications.is-open .ker-header-bell {
    border-color: rgba(255,255,255,.23);
    color: #fff;
    background: rgba(255,255,255,.075);
}

.ker-header-bell svg {
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.ker-header-bell__badge {
    position: absolute;
    min-width: 17px;
    height: 17px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    right: -5px;
    top: -5px;
    padding: 0 4px;
    border: 2px solid #10090C;
    border-radius: 999px;
    color: #fff;
    background: #D72638;
    font-size: .48rem;
    line-height: 1;
    font-weight: 950;
    box-shadow: 0 3px 10px rgba(215,38,56,.3);
}

.ker-header-notification-panel[hidden] {
    display: none !important;
}

.ker-header-notification-panel {
    position: absolute;
    z-index: 1000;
    width: min(380px,calc(100vw - 28px));
    right: 0;
    top: calc(100% + 12px);
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.11);
    border-radius: 16px;
    color: #fff;
    background: rgba(20,13,16,.97);
    box-shadow: 0 26px 70px rgba(0,0,0,.42);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    transform-origin: top right;
    animation: ker-notification-panel-in .14s ease both;
}

@keyframes ker-notification-panel-in {
    from { opacity: 0; transform: translateY(-5px) scale(.985); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

.ker-header-notification-panel__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 14px 15px 12px;
    border-bottom: 1px solid rgba(255,255,255,.065);
}

.ker-header-notification-panel__head > div {
    display: grid;
    gap: 1px;
}

.ker-header-notification-panel__head span {
    color: rgba(255,255,255,.36);
    font-size: .5rem;
    font-weight: 950;
    letter-spacing: .12em;
}

.ker-header-notification-panel__head strong {
    color: rgba(255,255,255,.9);
    font-size: .68rem;
}

.ker-header-notification-panel__head > a {
    color: #61d98b;
    font-size: .58rem;
    font-weight: 800;
    text-decoration: none;
}

.ker-header-notification-list {
    max-height: min(430px,65vh);
    overflow-y: auto;
    overscroll-behavior: contain;
}

.ker-header-notification-item {
    position: relative;
    display: grid;
    grid-template-columns: 35px minmax(0,1fr) 7px;
    gap: 10px;
    align-items: start;
    padding: 12px 14px;
    border-bottom: 1px solid rgba(255,255,255,.052);
    color: #fff;
    text-decoration: none;
    transition: background .14s ease;
}

.ker-header-notification-item:hover {
    background: rgba(255,255,255,.04);
}

.ker-header-notification-item.is-unread {
    background:
        linear-gradient(90deg,rgba(var(--ker-accent-rgb),.075),transparent 58%);
}

.ker-header-notification-item__icon {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 10px;
    background: rgba(255,255,255,.035);
    font-size: .85rem;
}

.ker-header-notification-item.is-unread .ker-header-notification-item__icon {
    border-color: rgba(var(--ker-accent-rgb),.2);
    background: rgba(var(--ker-accent-rgb),.075);
}

.ker-header-notification-item__content {
    min-width: 0;
    display: grid;
    gap: 3px;
}

.ker-header-notification-item__content strong {
    overflow: hidden;
    color: rgba(255,255,255,.91);
    font-size: .64rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ker-header-notification-item__content small {
    display: -webkit-box;
    overflow: hidden;
    color: rgba(255,255,255,.43);
    font-size: .56rem;
    line-height: 1.45;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.ker-header-notification-item__content time {
    color: rgba(255,255,255,.25);
    font-size: .49rem;
}

.ker-header-notification-item__dot {
    width: 7px;
    height: 7px;
    align-self: center;
    border-radius: 50%;
    background: var(--ker-accent-bright);
    box-shadow: 0 0 0 4px rgba(var(--ker-accent-bright-rgb),.07);
}

.ker-header-notification-empty {
    display: grid;
    justify-items: center;
    gap: 4px;
    padding: 28px 18px;
    text-align: center;
}

.ker-header-notification-empty > span {
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    margin-bottom: 3px;
    border-radius: 50%;
    color: #79dda0;
    background: rgba(var(--ker-accent-rgb),.09);
    font-size: .8rem;
}

.ker-header-notification-empty strong {
    color: rgba(255,255,255,.78);
    font-size: .65rem;
}

.ker-header-notification-empty small {
    color: rgba(255,255,255,.35);
    font-size: .55rem;
}

.ker-header-notification-panel__footer {
    min-height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-top: 1px solid rgba(255,255,255,.06);
    color: rgba(255,255,255,.68);
    background: rgba(255,255,255,.018);
    font-size: .58rem;
    font-weight: 800;
    text-decoration: none;
}

.ker-header-notification-panel__footer:hover {
    color: #fff;
    background: rgba(255,255,255,.04);
}

@media (max-width: 760px) {
    .ker-header-notification-panel {
        position: fixed;
        width: auto;
        left: 12px;
        right: 12px;
        top: 70px;
    }

    .ker-header-account > .ker-header-account-link {
        padding-inline: 12px;
    }
}

/* =========================================================
   KER Theme v1.6.5 — Performance & Rival Dashboard
   ========================================================= */
.ker-performance-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px}.ker-performance-page-head>div{max-width:780px}.ker-performance-compare-open{min-height:42px;padding:0 16px;border:1px solid rgba(255,255,255,.13);border-radius:999px;color:#fff;background:rgba(255,255,255,.05);font:inherit;font-size:.64rem;font-weight:850;cursor:pointer}.ker-performance-compare-open:hover{border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.085)}
.ker-performance-filterbar{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:14px}.ker-performance-category-filter{display:grid;gap:6px}.ker-performance-category-filter>span{color:rgba(255,255,255,.34);font-size:.54rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.ker-performance-category-filter>div{display:flex;gap:5px}.ker-performance-category-filter a{min-height:31px;display:inline-flex;align-items:center;padding:0 10px;border:1px solid rgba(255,255,255,.08);border-radius:999px;color:rgba(255,255,255,.48);background:rgba(255,255,255,.02);font-size:.57rem;font-weight:800;text-decoration:none}.ker-performance-category-filter a.is-active{border-color:rgba(var(--ker-accent-bright-rgb),.3);color:#82e4a7;background:rgba(var(--ker-accent-bright-rgb),.08)}
.ker-performance-rival-shortcut{min-height:48px;display:grid;gap:1px;margin-left:auto;padding:7px 13px;border:1px solid rgba(229,192,109,.2);border-radius:11px;color:#fff;background:rgba(229,192,109,.055);text-decoration:none}.ker-performance-rival-shortcut span{color:#e5c06d;font-size:.49rem;font-weight:900;letter-spacing:.06em}.ker-performance-rival-shortcut strong{font-size:.63rem}
.ker-performance-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:14px}.ker-performance-kpis article{min-width:0;display:grid;gap:4px;padding:13px 14px;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:rgba(255,255,255,.024)}.ker-performance-kpis span{color:rgba(255,255,255,.33);font-size:.52rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.ker-performance-kpis strong{overflow:hidden;color:#fff;font-size:1.18rem;line-height:1.1;text-overflow:ellipsis}.ker-performance-kpis strong[data-state="up"]{color:#64dc8f}.ker-performance-kpis strong[data-state="down"]{color:#ef7786}.ker-performance-kpis strong[data-state="stable"]{color:#e5c06d}.ker-performance-kpis small{color:rgba(255,255,255,.31);font-size:.5rem;line-height:1.35}
.ker-performance-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:13px}.ker-performance-panel-heading>div:first-child{display:grid;gap:3px}.ker-performance-panel-heading>div:first-child>span{color:rgba(255,255,255,.32);font-size:.52rem;font-weight:900;letter-spacing:.08em}.ker-performance-panel-heading h2{margin:0;font-size:1.15rem}.ker-performance-toolbar{justify-content:flex-end;flex-wrap:wrap}.ker-performance-toolbar button{white-space:nowrap}
.ker-performance-records{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.ker-performance-records article{display:grid;grid-template-columns:40px minmax(0,1fr);gap:10px;align-items:center;padding:12px;border:1px solid rgba(255,255,255,.065);border-radius:11px;background:rgba(255,255,255,.02)}.ker-performance-records article>b{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:rgba(255,255,255,.04);font-size:.9rem}.ker-performance-records article>div{min-width:0;display:grid;gap:2px}.ker-performance-records span{color:rgba(255,255,255,.35);font-size:.51rem;font-weight:800;text-transform:uppercase}.ker-performance-records strong{overflow:hidden;font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.ker-performance-records small{color:rgba(255,255,255,.3);font-size:.49rem}
.ker-performance-detail-table-wrap{overflow:auto}.ker-performance-detail-table{width:100%;border-collapse:collapse;min-width:760px}.ker-performance-detail-table th{padding:9px 10px;border-bottom:1px solid rgba(255,255,255,.07);color:rgba(255,255,255,.3);font-size:.49rem;text-align:left;text-transform:uppercase;letter-spacing:.05em}.ker-performance-detail-table td{padding:11px 10px;border-bottom:1px solid rgba(255,255,255,.045);color:rgba(255,255,255,.63);font-size:.58rem}.ker-performance-detail-table td:first-child{display:grid;gap:1px}.ker-performance-detail-table td:first-child strong{color:rgba(255,255,255,.86);font-size:.62rem}.ker-performance-detail-table td:first-child small{color:rgba(255,255,255,.28);font-size:.48rem}.ker-performance-detail-table b{color:#fff;font-size:.68rem}
html.ker-compare-open,html.ker-compare-open body{overflow:hidden}.ker-compare-picker[hidden]{display:none!important}.ker-compare-picker{position:fixed;z-index:100600;inset:0;display:grid;place-items:center;padding:18px}.ker-compare-picker__backdrop{position:absolute;inset:0;background:rgba(4,6,8,.9);backdrop-filter:blur(8px)}.ker-compare-picker__dialog{position:relative;z-index:1;width:min(680px,94vw);max-height:84vh;display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.11);border-radius:20px;background:#151015;box-shadow:0 32px 100px rgba(0,0,0,.5)}.ker-compare-picker__head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:17px 18px 13px;border-bottom:1px solid rgba(255,255,255,.06)}.ker-compare-picker__head>div{display:grid;gap:2px}.ker-compare-picker__head span{color:rgba(255,255,255,.34);font-size:.51rem;font-weight:950;letter-spacing:.1em}.ker-compare-picker__head h2{margin:0;font-size:1rem}.ker-compare-picker__head p{margin:2px 0 0;color:rgba(255,255,255,.35);font-size:.55rem}.ker-compare-picker__head button{width:37px;height:37px;border:1px solid rgba(255,255,255,.1);border-radius:50%;color:#fff;background:rgba(255,255,255,.04);font-size:21px;cursor:pointer}.ker-compare-search{margin:13px 14px 8px;width:calc(100% - 28px);min-height:42px;padding:0 13px;border:1px solid rgba(255,255,255,.09);border-radius:10px;color:#fff;background:rgba(255,255,255,.035);outline:none}.ker-compare-search:focus{border-color:rgba(var(--ker-accent-bright-rgb),.35)}.ker-compare-candidate-list{display:grid;gap:5px;overflow-y:auto;padding:5px 14px 15px}.ker-compare-candidate-list a{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 10px;border:1px solid rgba(255,255,255,.06);border-radius:11px;color:#fff;background:rgba(255,255,255,.02);text-decoration:none}.ker-compare-candidate-list a:hover{border-color:rgba(var(--ker-accent-bright-rgb),.22);background:rgba(var(--ker-accent-bright-rgb),.04)}.ker-compare-candidate-list a[hidden]{display:none}.ker-compare-avatar{width:40px;height:40px;display:grid;place-items:center;overflow:hidden;border-radius:10px;color:#fff;background:rgba(255,255,255,.06);font-size:.64rem;font-weight:900}.ker-compare-avatar img{width:100%;height:100%;object-fit:cover}.ker-compare-candidate-list a>span:nth-child(2){display:grid;gap:2px}.ker-compare-candidate-list strong{font-size:.64rem}.ker-compare-candidate-list small{color:rgba(255,255,255,.34);font-size:.5rem}.ker-compare-candidate-list a>b{color:var(--ker-accent-bright);font-size:.54rem}
.ker-rival-comparison{display:grid;gap:13px;margin-top:18px;padding:18px;border:1px solid rgba(255,255,255,.085);border-radius:20px;background:radial-gradient(circle at 50% 0%,rgba(var(--ker-accent-bright-rgb),.065),transparent 35%),rgba(255,255,255,.02)}.ker-rival-comparison__head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.ker-rival-comparison__head>div:first-child{display:grid;gap:2px}.ker-rival-comparison__head span{color:rgba(255,255,255,.31);font-size:.51rem;font-weight:900;letter-spacing:.08em}.ker-rival-comparison__head h2{margin:0;font-size:1.22rem}.ker-rival-comparison__head h2 em{padding:0 4px;color:var(--ker-accent-bright);font-size:.65em;font-style:normal}.ker-rival-comparison__head p{margin:2px 0 0;color:rgba(255,255,255,.36);font-size:.54rem}.ker-rival-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.ker-rival-actions button,.ker-rival-actions a{min-height:34px;display:inline-flex;align-items:center;padding:0 10px;border:1px solid rgba(255,255,255,.1);border-radius:999px;color:rgba(255,255,255,.68);background:rgba(255,255,255,.035);font:inherit;font-size:.53rem;font-weight:800;text-decoration:none;cursor:pointer}.ker-rival-actions button.is-rival{border-color:rgba(229,192,109,.25);color:#e5c06d;background:rgba(229,192,109,.06)}
.ker-rival-split{display:grid;grid-template-columns:minmax(160px,.6fr) minmax(340px,1.35fr) minmax(160px,.6fr);gap:12px;align-items:center;padding:12px 0}.ker-rival-driver{display:grid;justify-items:center;gap:9px;text-align:center}.ker-rival-driver__photo{width:88px;height:88px;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(var(--ker-accent-bright-rgb),.22);border-radius:18px;color:#fff;background:rgba(var(--ker-accent-bright-rgb),.06);font-size:1rem;font-weight:950}.ker-rival-driver--opponent .ker-rival-driver__photo{border-color:rgba(98,134,255,.22);background:rgba(98,134,255,.06)}.ker-rival-driver__photo img{width:100%;height:100%;object-fit:cover}.ker-rival-driver>div{display:grid;gap:2px}.ker-rival-driver small{color:rgba(255,255,255,.28);font-size:.48rem;font-weight:900;letter-spacing:.08em}.ker-rival-driver strong{font-size:.8rem}.ker-rival-driver>div>span{color:rgba(255,255,255,.35);font-size:.5rem}
.ker-radar-card{min-width:0;display:grid;justify-items:center}.ker-radar-card svg{width:min(100%,480px);height:auto}.ker-radar-grid{fill:none;stroke:rgba(255,255,255,.07);stroke-width:1}.ker-radar-axis{stroke:rgba(255,255,255,.055);stroke-width:1}.ker-radar-label{fill:rgba(255,255,255,.48);font-family:inherit;font-size:11px}.ker-radar-polygon-a{fill:rgba(var(--ker-accent-bright-rgb),.14);stroke:var(--ker-accent-bright);stroke-width:2}.ker-radar-polygon-b{fill:rgba(98,134,255,.12);stroke:#7899ff;stroke-width:2}.ker-radar-polygon-a__point{fill:var(--ker-accent-bright)}.ker-radar-polygon-b__point{fill:#7899ff}.ker-radar-legend{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;color:rgba(255,255,255,.45);font-size:.52rem}.ker-radar-legend span{display:flex;align-items:center;gap:5px}.ker-radar-legend i{width:8px;height:8px;border-radius:50%;background:var(--ker-accent-bright)}.ker-radar-legend span:nth-child(2) i{background:#7899ff}
.ker-rival-headtohead{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.ker-rival-headtohead article{min-width:0;display:grid;gap:3px;padding:11px;border:1px solid rgba(255,255,255,.06);border-radius:10px;background:rgba(255,255,255,.018)}.ker-rival-headtohead span{color:rgba(255,255,255,.31);font-size:.48rem;font-weight:800;text-transform:uppercase}.ker-rival-headtohead strong{font-size:.74rem}.ker-rival-headtohead strong em{color:rgba(255,255,255,.3);font-size:.7em;font-style:normal}.ker-rival-headtohead small{color:rgba(255,255,255,.27);font-size:.46rem}.ker-rival-data-warning{padding:10px 12px;border:1px solid rgba(229,192,109,.18);border-radius:10px;color:#d8bd80;background:rgba(229,192,109,.05);font-size:.54rem;line-height:1.5}
.ker-rival-analysis-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ker-rival-analysis-grid>section{display:grid;align-content:start;gap:7px;padding:13px;border:1px solid rgba(255,255,255,.06);border-radius:12px;background:rgba(255,255,255,.018)}.ker-rival-analysis-grid>section>div{display:grid;gap:2px;margin-bottom:3px}.ker-rival-analysis-grid>section>div span{color:rgba(255,255,255,.3);font-size:.48rem;font-weight:900}.ker-rival-analysis-grid h3{margin:0;font-size:.78rem}.ker-rival-analysis-grid article{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:8px 9px;border-radius:9px;background:rgba(255,255,255,.025)}.ker-rival-analysis-grid article strong{font-size:.59rem}.ker-rival-analysis-grid article>span{color:#72d99a;font-size:.49rem;font-weight:800}.ker-rival-analysis-grid section:nth-child(2) article>span{color:#e5b26d}.ker-rival-analysis-grid article p{grid-column:1/-1;margin:0;color:rgba(255,255,255,.34);font-size:.49rem;line-height:1.45}.ker-rival-analysis-grid>section>p{margin:4px 0;color:rgba(255,255,255,.32);font-size:.54rem}
.ker-rival-common-chart{padding:13px;border:1px solid rgba(255,255,255,.06);border-radius:13px;background:rgba(255,255,255,.015)}.ker-rival-common-chart .ker-pilot-panel__head{margin-bottom:4px}.ker-rival-chart-tabs{display:flex;gap:5px}.ker-rival-chart-tabs button{min-height:29px;padding:0 9px;border:1px solid rgba(255,255,255,.08);border-radius:999px;color:rgba(255,255,255,.45);background:transparent;font:inherit;font-size:.5rem;font-weight:800;cursor:pointer}.ker-rival-chart-tabs button.is-active{border-color:rgba(var(--ker-accent-bright-rgb),.26);color:#73dc99;background:rgba(var(--ker-accent-bright-rgb),.07)}.ker-compare-grid-line{stroke:rgba(255,255,255,.06);stroke-width:1}.ker-compare-line-a{stroke:var(--ker-accent-bright);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.ker-compare-line-b{stroke:#7899ff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.ker-compare-line-a__point{fill:#10090C;stroke:var(--ker-accent-bright);stroke-width:3}.ker-compare-line-b__point{fill:#10090C;stroke:#7899ff;stroke-width:3}
@media(max-width:1100px){.ker-performance-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.ker-rival-headtohead{grid-template-columns:repeat(3,minmax(0,1fr))}.ker-rival-split{grid-template-columns:140px minmax(300px,1fr) 140px}}
@media(max-width:820px){.ker-performance-page-head,.ker-performance-panel-heading,.ker-rival-comparison__head{align-items:flex-start;flex-direction:column}.ker-performance-rival-shortcut{margin-left:0}.ker-performance-records{grid-template-columns:1fr 1fr}.ker-rival-split{grid-template-columns:1fr}.ker-rival-driver{grid-template-columns:64px 1fr;justify-items:start;text-align:left;align-items:center}.ker-rival-driver__photo{width:64px;height:64px}.ker-rival-analysis-grid{grid-template-columns:1fr}.ker-rival-actions{justify-content:flex-start}.ker-radar-card{order:3}}
@media(max-width:580px){.ker-performance-kpis{grid-template-columns:1fr 1fr}.ker-performance-records{grid-template-columns:1fr}.ker-rival-headtohead{grid-template-columns:1fr 1fr}.ker-performance-toolbar{justify-content:flex-start}.ker-radar-label{font-size:9px}.ker-compare-picker{padding:8px}.ker-compare-picker__dialog{width:100%;max-height:92vh;border-radius:15px}}


/* KER Theme v1.6.6 — UF + última atualização do Ranking */
.ker-ranking-state {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 68px;
    white-space: nowrap;
}

.ker-ranking-state img {
    width: 30px;
    height: 20px;
    display: block;
    flex: 0 0 auto;
    object-fit: cover;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 3px;
    box-shadow: 0 2px 8px rgba(0,0,0,.20);
}

.ker-ranking-state strong {
    color: rgba(245,247,249,.90);
    font-size: .76rem;
    letter-spacing: .04em;
}

.ker-ranking-state--empty {
    min-width: 0;
    color: rgba(192,201,208,.42);
}

.ker-ranking-summary > div:last-child strong {
    font-size: 1rem;
    line-height: 1.28;
}

.ker-ranking-table thead th {
    color: #fff;
    font-size: .68rem;
}

@media (max-width: 760px) {
    .ker-ranking-state img {
        width: 27px;
        height: 18px;
    }
}


/* KER Theme v1.6.8 — alinhamento do cabeçalho do Ranking */
.ker-ranking-table thead th {
    text-align: center;
    vertical-align: middle;
    font-size: .70rem;
    line-height: 1;
    font-weight: 900;
}

/* PILOTO continua alinhado à esquerda para acompanhar nome + avatar. */
.ker-ranking-table thead th:nth-child(2) {
    text-align: left;
}

/* Centraliza os valores numéricos/curtos sob seus respectivos títulos. */
.ker-ranking-table tbody td:nth-child(1),
.ker-ranking-table tbody td:nth-child(3),
.ker-ranking-table tbody td:nth-child(4),
.ker-ranking-table tbody td:nth-child(5),
.ker-ranking-table tbody td:nth-child(6),
.ker-ranking-table tbody td:nth-child(7) {
    text-align: center;
}

/* Mantém PILOTO alinhado à esquerda. */
.ker-ranking-table tbody td:nth-child(2) {
    text-align: left;
}

/* UF tem o mesmo peso/tamanho visual dos demais títulos. */
.ker-ranking-table thead th:nth-child(6) {
    font-size: .70rem;
    font-weight: 900;
    letter-spacing: .075em;
}

/* Garante que bandeira + sigla fiquem centralizadas dentro da coluna UF. */
.ker-ranking-table tbody td:nth-child(6) .ker-ranking-state {
    justify-content: center;
    margin-inline: auto;
}


/* KER Theme v1.6.9 — Rival Engine v2 */
.ker-performance-rival-shortcut{
    min-height:56px;display:grid;grid-template-columns:minmax(0,1fr) 30px;
    align-items:stretch;gap:4px;margin-left:auto;padding:5px 5px 5px 12px;
    border:1px solid rgba(229,192,109,.22);border-radius:12px;background:rgba(229,192,109,.055)
}
.ker-performance-rival-shortcut>a{min-width:0;display:grid;align-content:center;gap:1px;color:#fff;text-decoration:none}
.ker-performance-rival-shortcut>a span{color:#e5c06d;font-size:.49rem;font-weight:900;letter-spacing:.06em}
.ker-performance-rival-shortcut>a strong{overflow:hidden;font-size:.67rem;text-overflow:ellipsis;white-space:nowrap}
.ker-performance-rival-shortcut>a small{color:rgba(255,255,255,.36);font-size:.48rem}
.ker-performance-rival-shortcut form{display:grid;align-items:center}
.ker-performance-rival-shortcut form button{width:30px;height:30px;padding:0;border:1px solid rgba(255,255,255,.08);border-radius:50%;color:rgba(255,255,255,.46);background:rgba(255,255,255,.035);font:inherit;font-size:.85rem;cursor:pointer}
.ker-performance-rival-shortcut form button:hover{border-color:rgba(239,119,134,.30);color:#ef7786;background:rgba(239,119,134,.08)}
.ker-rival-actions button.is-remove-rival{border-color:rgba(239,119,134,.24);color:#ef8996;background:rgba(239,119,134,.065)}
.ker-rival-actions button.is-remove-rival:hover{border-color:rgba(239,119,134,.42);background:rgba(239,119,134,.11)}
.ker-rival-confidence{display:inline-flex;width:max-content;margin-top:5px;padding:4px 7px;border:1px solid rgba(255,255,255,.08);border-radius:999px;font-size:.48rem!important;font-weight:850!important;letter-spacing:.035em!important}
.ker-rival-confidence[data-level="high"]{border-color:rgba(var(--ker-accent-bright-rgb),.24);color:#6ddd96!important;background:rgba(var(--ker-accent-bright-rgb),.06)}
.ker-rival-confidence[data-level="medium"]{border-color:rgba(229,192,109,.24);color:#e5c06d!important;background:rgba(229,192,109,.06)}
.ker-rival-confidence[data-level="low"]{border-color:rgba(239,119,134,.20);color:#e98a96!important;background:rgba(239,119,134,.05)}
@media(max-width:820px){.ker-performance-rival-shortcut{margin-left:0;width:min(100%,340px)}}


/* =========================================================
   KER Theme v1.6.10 — leitura do gráfico Rival
   ========================================================= */
.ker-rival-chart-legend{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:18px;
    margin:8px 12px 0;
}
.ker-rival-chart-legend span{
    display:inline-flex;
    align-items:center;
    gap:7px;
    color:rgba(255,255,255,.60);
    font-size:.62rem;
    font-weight:800;
}
.ker-rival-chart-legend i{
    width:9px;
    height:9px;
    display:block;
    border-radius:50%;
    box-shadow:0 0 0 3px rgba(255,255,255,.025);
}
.ker-rival-chart-legend .is-a i{background:var(--ker-accent-bright)}
.ker-rival-chart-legend .is-b i{background:#6f8cff}

.ker-rival-chart-wrap{
    position:relative;
}
.ker-compare-axis-label{
    fill:rgba(255,255,255,.34);
    font-size:11px;
    font-weight:700;
}
.ker-compare-point{
    cursor:crosshair;
    outline:none;
    transition:r .14s ease,filter .14s ease;
}
.ker-compare-point:hover,
.ker-compare-point:focus{
    r:8;
    filter:drop-shadow(0 0 7px rgba(255,255,255,.22));
}

.ker-rival-chart-tooltip{
    position:absolute;
    z-index:5;
    transform:translate(-50%,-100%);
    min-width:150px;
    max-width:230px;
    padding:9px 11px;
    border:1px solid rgba(255,255,255,.10);
    border-radius:10px;
    background:rgba(14,9,11,.96);
    box-shadow:0 12px 30px rgba(0,0,0,.34);
    pointer-events:none;
}
.ker-rival-chart-tooltip[hidden]{display:none}
.ker-rival-chart-tooltip span,
.ker-rival-chart-tooltip strong,
.ker-rival-chart-tooltip b{
    display:block;
}
.ker-rival-chart-tooltip span{
    margin-bottom:4px;
    color:rgba(255,255,255,.36);
    font-size:.52rem;
    font-weight:800;
    letter-spacing:.03em;
    text-transform:uppercase;
}
.ker-rival-chart-tooltip strong{
    display:flex;
    align-items:center;
    gap:7px;
    overflow:hidden;
    color:#fff;
    font-size:.64rem;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.ker-rival-chart-tooltip strong i{
    width:8px;
    height:8px;
    flex:0 0 auto;
    border-radius:50%;
}
.ker-rival-chart-tooltip strong i.is-a{background:var(--ker-accent-bright)}
.ker-rival-chart-tooltip strong i.is-b{background:#6f8cff}
.ker-rival-chart-tooltip b{
    margin-top:5px;
    color:#fff;
    font-size:.85rem;
    font-weight:900;
}

@media(max-width:720px){
    .ker-rival-chart-legend{
        gap:10px 16px;
        margin-inline:4px;
    }
    .ker-rival-chart-legend span{
        font-size:.58rem;
    }
}


/* =========================================================
   KER Theme v1.6.11 — Payment Engine
   ========================================================= */
.ker-payment-return-banner{
    margin-top:22px;
    padding:13px 16px;
    border:1px solid rgba(var(--ker-accent-bright-rgb),.20);
    border-radius:12px;
    background:rgba(var(--ker-accent-bright-rgb),.06);
    color:#fff;
}
.ker-payment-return-banner strong,
.ker-payment-return-banner span{
    display:block;
}
.ker-payment-return-banner span{
    margin-top:3px;
    color:rgba(255,255,255,.55);
    font-size:.78rem;
}
.ker-payment-return-banner.is-error{
    border-color:rgba(239,119,134,.23);
    background:rgba(239,119,134,.06);
}
.ker-payment-reservation-note{
    margin-top:11px;
    padding:9px 11px;
    border:1px solid rgba(229,192,109,.16);
    border-radius:9px;
    color:rgba(255,255,255,.62);
    background:rgba(229,192,109,.045);
    font-size:.70rem;
}
.ker-payment-reservation-note strong{
    display:inline!important;
    color:#e5c06d!important;
    font-size:inherit!important;
}
.ker-registration-payment-options{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    margin-top:14px;
}
.ker-registration-payment-option{
    margin:0;
}
.ker-registration-payment-option button{
    width:100%;
    min-height:86px;
    display:grid;
    align-content:center;
    gap:4px;
    padding:13px 14px;
    border:1px solid rgba(255,255,255,.10);
    border-radius:12px;
    color:#fff;
    background:rgba(255,255,255,.035);
    text-align:left;
    cursor:pointer;
    transition:border-color .16s ease,background .16s ease,transform .16s ease;
}
.ker-registration-payment-option button:hover{
    border-color:rgba(var(--ker-accent-bright-rgb),.30);
    background:rgba(var(--ker-accent-bright-rgb),.07);
    transform:translateY(-1px);
}
.ker-registration-payment-option button span{
    color:#fff!important;
    font-size:.82rem!important;
    font-weight:900!important;
    letter-spacing:0!important;
}
.ker-registration-payment-option button small{
    color:rgba(255,255,255,.48);
    font-size:.61rem;
    line-height:1.35;
}
.ker-registration-payment-option button em{
    color:var(--ker-accent-bright);
    font-size:.54rem;
    font-style:normal;
    font-weight:850;
    text-transform:uppercase;
}
.ker-payment-security-copy{
    margin-top:10px!important;
    color:rgba(255,255,255,.35)!important;
    font-size:.62rem!important;
}
@media(max-width:760px){
    .ker-registration-payment-options{
        grid-template-columns:1fr;
    }
}

/* =========================================================
   KER Theme v1.6.13 — cards compactos em 2 colunas no mobile
   ========================================================= */
@media (max-width: 680px) {
    /* Categorias/baterias: NOVATOS e EXTREME lado a lado. */
    .ker-registration-cards {
        width: 100% !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    .ker-registration-card {
        min-width: 0 !important;
        min-height: 365px !important;
        border-radius: 15px !important;
    }

    .ker-registration-card__content {
        gap: 6px !important;
        padding: 22px 12px 15px !important;
    }

    .ker-registration-vacancies {
        top: 10px !important;
        left: 10px !important;
        max-width: calc(100% - 20px) !important;
        min-height: 28px !important;
        padding: 0 9px !important;
        font-size: .61rem !important;
        white-space: nowrap;
    }

    .ker-registration-card h2 {
        margin-top: 0 !important;
        font-size: clamp(1.35rem, 7vw, 1.8rem) !important;
        line-height: .92 !important;
        letter-spacing: -.045em !important;
    }

    .ker-registration-card p {
        min-height: 0 !important;
        font-size: .57rem !important;
        line-height: 1.38 !important;
    }

    .ker-registration-select-button,
    .ker-registration-card button {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 40px !important;
        margin-top: 3px !important;
        padding: 0 9px !important;
        font-size: .65rem !important;
    }

    /* Formas de pagamento: manter 2 opções lado a lado no celular. */
    .ker-registration-payment-options {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    .ker-registration-payment-option {
        min-width: 0;
    }

    .ker-registration-payment-option:only-child {
        grid-column: 1 / -1;
    }

    .ker-registration-payment-option button {
        min-height: 82px !important;
        padding: 10px !important;
        border-radius: 10px !important;
    }

    .ker-registration-payment-option button span {
        font-size: .72rem !important;
        line-height: 1.15 !important;
    }

    .ker-registration-payment-option button small {
        font-size: .55rem !important;
        line-height: 1.25 !important;
    }

    .ker-registration-payment-option button em {
        font-size: .49rem !important;
    }
}

@media (max-width: 390px) {
    .ker-registration-card {
        min-height: 345px !important;
    }

    .ker-registration-card__content {
        padding: 20px 10px 13px !important;
    }

    .ker-registration-card h2 {
        font-size: 1.25rem !important;
    }

    .ker-registration-card p {
        font-size: .53rem !important;
    }

    .ker-registration-vacancies {
        font-size: .56rem !important;
    }
}

/* =========================================================
   KER Theme v1.6.14 — refinamento mobile / alinhamento legado
   Home, Ranking, tabelas de Etapa e submenu Eventos.
   ========================================================= */
@media (max-width: 760px) {
    /* ---------- Home / billboard ---------- */
    body.ker-home-surface .ker-home-hero {
        min-height: 620px;
    }

    body.ker-home-surface .ker-home-hero__title-wrap {
        top: 20%;
        width: calc(100% - 40px);
        max-width: 520px;
    }

    body.ker-home-surface .ker-home-hero h1 {
        font-size: clamp(3.95rem, 18.2vw, 5.25rem);
        line-height: .75;
        letter-spacing: -.072em;
    }

    /* Mostra os três pilotos/karts sem estourar as laterais. */
    body.ker-home-surface .ker-home-hero__kart {
        bottom: 7.5%;
        width: 108vw;
        max-width: 620px;
        max-height: 58vh;
    }

    body.ker-home-surface .ker-home-hero__shadow {
        width: 125%;
        min-height: 150px;
    }

    /* Tipografia editorial mais próxima de um padrão mobile. */
    body.ker-home-surface .ker-home-feature {
        padding: 54px 0;
    }

    body.ker-home-surface .ker-home-feature__grid {
        gap: 24px;
    }

    body.ker-home-surface .ker-home-feature h2 {
        margin-bottom: 18px;
        font-size: clamp(2.45rem, 11.5vw, 3.25rem);
        line-height: .90;
        letter-spacing: -.055em;
    }

    body.ker-home-surface .ker-home-feature__body {
        gap: 13px;
    }

    body.ker-home-surface .ker-home-feature__body p {
        font-size: .82rem;
        line-height: 1.60;
    }

    /* Imagens editoriais sempre em quadro 16:9 no celular. */
    body.ker-home-surface .ker-home-feature__media {
        min-height: 0 !important;
        aspect-ratio: 16 / 9;
        border-radius: 7px;
    }

    body.ker-home-surface .ker-home-feature__media img {
        width: 100%;
        height: 100%;
        min-height: 0 !important;
        aspect-ratio: 16 / 9;
        object-fit: cover;
    }

    /* ---------- Ranking ---------- */
    body.ker-ranking-surface .ker-ranking-main .ker-container {
        width: min(100% - 20px, 1240px);
    }

    body.ker-ranking-surface .ker-ranking-summary {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 6px;
        margin-bottom: 17px;
    }

    body.ker-ranking-surface .ker-ranking-summary > div {
        min-width: 0;
        min-height: 64px;
        padding: 9px 8px;
        border-radius: 11px;
    }

    body.ker-ranking-surface .ker-ranking-summary span {
        font-size: .46rem;
        line-height: 1.15;
        letter-spacing: .045em;
    }

    body.ker-ranking-surface .ker-ranking-summary strong,
    body.ker-ranking-surface .ker-ranking-summary > div:last-child strong {
        margin-top: 3px;
        font-size: .72rem;
        line-height: 1.20;
        overflow-wrap: anywhere;
    }

    /* A tabela inteira cabe na largura do celular em pé. */
    body.ker-ranking-surface .ker-ranking-table-wrap {
        width: 100%;
        max-height: 66vh;
        margin-inline: 0;
        padding: 0;
        overflow-x: hidden;
        overflow-y: auto;
        scrollbar-gutter: auto;
    }

    body.ker-ranking-surface .ker-ranking-table {
        width: 100%;
        min-width: 0;
        table-layout: fixed;
        border-spacing: 0 5px;
        font-size: .57rem;
    }

    body.ker-ranking-surface .ker-ranking-table th,
    body.ker-ranking-surface .ker-ranking-table td {
        min-width: 0;
        padding: 7px 2px;
        line-height: 1.15;
        overflow: hidden;
    }

    body.ker-ranking-surface .ker-ranking-table thead th {
        padding: 7px 1px;
        font-size: .43rem;
        letter-spacing: .025em;
        white-space: normal;
        overflow-wrap: anywhere;
    }

    body.ker-ranking-surface .ker-ranking-table th:nth-child(1),
    body.ker-ranking-surface .ker-ranking-table td:nth-child(1) { width: 9%; }
    body.ker-ranking-surface .ker-ranking-table th:nth-child(2),
    body.ker-ranking-surface .ker-ranking-table td:nth-child(2) { width: 34%; }
    body.ker-ranking-surface .ker-ranking-table th:nth-child(3),
    body.ker-ranking-surface .ker-ranking-table td:nth-child(3) { width: 10%; }
    body.ker-ranking-surface .ker-ranking-table th:nth-child(4),
    body.ker-ranking-surface .ker-ranking-table td:nth-child(4) { width: 10%; }
    body.ker-ranking-surface .ker-ranking-table th:nth-child(5),
    body.ker-ranking-surface .ker-ranking-table td:nth-child(5) { width: 10%; }
    body.ker-ranking-surface .ker-ranking-table th:nth-child(6),
    body.ker-ranking-surface .ker-ranking-table td:nth-child(6) { width: 14%; }
    body.ker-ranking-surface .ker-ranking-table th:nth-child(7),
    body.ker-ranking-surface .ker-ranking-table td:nth-child(7) { width: 13%; }

    body.ker-ranking-surface .ker-ranking-position {
        width: auto;
    }

    body.ker-ranking-surface .ker-ranking-position > span {
        margin-right: 2px;
        font-size: .68rem;
    }

    body.ker-ranking-surface .ker-ranking-position strong,
    body.ker-ranking-surface .ker-ranking-points {
        font-size: .68rem;
    }

    body.ker-ranking-surface .ker-ranking-pilot {
        width: 100%;
        min-width: 0;
        gap: 5px;
    }

    body.ker-ranking-surface .ker-ranking-pilot .ker-public-avatar {
        width: 28px;
        height: 28px;
        min-width: 28px;
        min-height: 28px;
        max-width: 28px;
        max-height: 28px;
        flex-basis: 28px;
    }

    body.ker-ranking-surface .ker-ranking-pilot__text {
        min-width: 0;
    }

    body.ker-ranking-surface .ker-ranking-pilot__text strong {
        max-width: none;
        display: -webkit-box;
        overflow: hidden;
        font-size: .58rem;
        line-height: 1.15;
        white-space: normal;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
    }

    body.ker-ranking-surface .ker-ranking-pilot__text small {
        font-size: .43rem;
    }

    body.ker-ranking-surface .ker-ranking-state {
        min-width: 0;
        gap: 2px;
    }

    body.ker-ranking-surface .ker-ranking-state img {
        width: 19px;
        height: 13px;
    }

    body.ker-ranking-surface .ker-ranking-state strong {
        font-size: .48rem;
    }

    /* ---------- Evento / classificação ---------- */
    body.ker-event-detail-surface .ker-event-content > .ker-container {
        width: min(100% - 16px, 1240px);
    }

    body.ker-event-detail-surface .ker-event-result-label {
        margin-bottom: 7px;
        padding-inline: 2px;
        font-size: .57rem;
    }

    body.ker-event-detail-surface .ker-event-result-label strong {
        font-size: .55rem;
    }

    body.ker-event-detail-surface .ker-event-table-wrap {
        width: 100%;
        margin-inline: 0;
        padding: 0;
        overflow-x: hidden;
    }

    body.ker-event-detail-surface .ker-event-result-table {
        width: 100%;
        min-width: 0;
        table-layout: fixed;
        border-spacing: 0 5px;
        font-size: .40rem;
        font-variant-numeric: tabular-nums;
    }

    body.ker-event-detail-surface .ker-event-result-table th,
    body.ker-event-detail-surface .ker-event-result-table td {
        min-width: 0;
        padding: 6px 1px;
        line-height: 1.16;
        text-align: center;
        white-space: normal;
        overflow-wrap: anywhere;
        word-break: normal;
    }

    body.ker-event-detail-surface .ker-event-result-table thead th {
        height: 31px;
        padding: 5px 1px;
        font-size: .37rem;
        letter-spacing: .01em;
        text-align: center;
    }

    /* Distribuição fixa das 13 colunas para caber no portrait. */
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(1),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(1) { width: 6%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(2),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(2) { width: 4%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(3),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(3) { width: 20%; text-align: left; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(4),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(4) { width: 7%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(5),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(5) { width: 4.5%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(6),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(6) { width: 9%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(7),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(7) { width: 10%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(8),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(8) { width: 7.5%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(9),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(9) { width: 7.5%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(10),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(10) { width: 9%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(11),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(11) { width: 4.5%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(12),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(12) { width: 7%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(13),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(13) { width: 4%; }

    body.ker-event-detail-surface .ker-event-pos strong {
        font-size: .58rem;
    }

    body.ker-event-detail-surface .ker-event-pos small {
        margin-top: 1px;
        font-size: .31rem;
        line-height: 1.05;
    }

    body.ker-event-detail-surface .ker-event-pos__main {
        gap: 1px;
    }

    body.ker-event-detail-surface .ker-event-pos__main i {
        font-size: .50rem;
    }

    body.ker-event-detail-surface .ker-event-result-pilot {
        width: 100%;
        min-width: 0;
        gap: 3px;
        font-size: .45rem;
        line-height: 1.10;
        white-space: normal;
    }

    body.ker-event-detail-surface .ker-event-result-pilot .ker-public-avatar {
        width: 20px;
        height: 20px;
        min-width: 20px;
        min-height: 20px;
        max-width: 20px;
        max-height: 20px;
        flex-basis: 20px;
    }

    body.ker-event-detail-surface .ker-event-result-pilot span {
        min-width: 0;
        display: -webkit-box;
        overflow: hidden;
        line-height: 1.08;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
    }

    body.ker-event-detail-surface .ker-event-status {
        min-height: 16px;
        gap: 1px;
        padding: 0 2px;
        font-size: .34rem;
        line-height: 1;
    }

    body.ker-event-detail-surface .ker-event-speed strong {
        font-size: .41rem;
    }

    body.ker-event-detail-surface .ker-event-speed small {
        display: block;
        font-size: .28rem;
    }

    /* ---------- Menu mobile / submenu Eventos ---------- */
    .ker-nav {
        max-height: calc(100svh - 78px);
        overflow-x: hidden;
        overflow-y: auto;
        overscroll-behavior: contain;
    }

    .ker-nav__list,
    .ker-nav__events,
    .ker-nav__events .ker-nav__submenu,
    .ker-nav .sub-menu {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        box-sizing: border-box;
    }

    .ker-nav__events .ker-nav__submenu,
    .ker-nav .sub-menu {
        position: static !important;
        left: auto !important;
        right: auto !important;
        transform: none !important;
        overflow: hidden;
        margin: 0;
        padding: 2px 0 5px 10px;
    }

    .ker-nav__submenu li,
    .ker-nav .sub-menu li,
    .ker-nav__submenu a,
    .ker-nav .sub-menu a {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        box-sizing: border-box;
    }

    .ker-nav__submenu a,
    .ker-nav .sub-menu a {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
        gap: 8px;
        padding: 8px 9px !important;
        white-space: normal;
    }

    .ker-nav__submenu-title {
        min-width: 0;
        overflow-wrap: anywhere;
        line-height: 1.25;
    }

    .ker-nav__submenu small,
    .ker-nav .sub-menu small {
        flex: 0 0 auto;
        justify-self: end;
        white-space: nowrap;
    }
}

@media (max-width: 430px) {
    body.ker-home-surface .ker-home-hero {
        min-height: 590px;
    }

    body.ker-home-surface .ker-home-hero__title-wrap {
        top: 19.5%;
        width: calc(100% - 34px);
    }

    body.ker-home-surface .ker-home-hero h1 {
        font-size: clamp(3.7rem, 17.5vw, 4.7rem);
    }

    body.ker-home-surface .ker-home-hero__kart {
        bottom: 7%;
        width: 106vw;
    }

    body.ker-home-surface .ker-home-feature h2 {
        font-size: clamp(2.35rem, 10.7vw, 2.95rem);
    }

    body.ker-home-surface .ker-home-feature__body p {
        font-size: .80rem;
    }

    body.ker-ranking-surface .ker-ranking-summary > div {
        min-height: 60px;
        padding: 8px 6px;
    }

    body.ker-ranking-surface .ker-ranking-summary strong,
    body.ker-ranking-surface .ker-ranking-summary > div:last-child strong {
        font-size: .65rem;
    }
}


/* =========================================================
   KER Theme v1.6.15 — refinamento de tabelas, menu e logo
   ========================================================= */

/* Logo configurável do cabeçalho. */
.ker-brand {
    flex: 0 0 auto;
    align-items: center;
}

.ker-brand__logo {
    display: block;
    width: auto;
    height: 44px;
    max-width: 190px;
    object-fit: contain;
    object-position: left center;
}

/* Tempos sempre usam algarismos tabulares e não quebram dígitos. */
.ker-event-result-table {
    font-variant-numeric: tabular-nums;
}

.ker-event-time {
    display: inline-block;
    white-space: nowrap;
    word-break: normal;
    overflow-wrap: normal;
}

.ker-event-time__mobile {
    display: none;
}

.ker-event-result-table td:nth-child(5),
.ker-event-result-table td:nth-child(6),
.ker-event-result-table td:nth-child(7),
.ker-event-result-table td:nth-child(8),
.ker-event-result-table td:nth-child(9),
.ker-event-result-table td:nth-child(10),
.ker-event-result-table td:nth-child(11) {
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
    word-break: normal;
    overflow-wrap: normal;
}

/* Pódios mais visíveis nas tabelas públicas. */
.ker-event-pos__main i {
    flex: 0 0 auto;
    font-size: 1.22rem;
    line-height: 1;
}

.ker-position__podium {
    margin-right: 6px;
    font-size: 1.12rem;
    line-height: 1;
}

.ker-ranking-position > span {
    font-size: 1.12rem;
    line-height: 1;
}

@media (max-width: 760px) {
    /* Mantém o cabeçalho acima das artes/overlays em todas as páginas. */
    .ker-header,
    body.ker-home-surface .ker-header,
    body.ker-event-detail-surface .ker-header {
        z-index: 1000 !important;
    }

    .ker-header__inner {
        position: relative;
        z-index: 2;
    }

    .ker-brand,
    .ker-nav-toggle,
    .ker-header-account {
        position: relative;
        z-index: 1002;
        pointer-events: auto !important;
    }

    .ker-nav-toggle {
        cursor: pointer;
        touch-action: manipulation;
    }

    .ker-nav {
        z-index: 1001;
    }

    .ker-brand__logo {
        height: 35px;
        max-width: 138px;
    }

    /* Eventos: subcategorias fechadas por padrão e abertas apenas por toque. */
    .ker-nav__events > a,
    .ker-nav .menu-item-has-children > a {
        position: relative;
        padding-right: 36px !important;
    }

    .ker-nav__events > a::after,
    .ker-nav .menu-item-has-children > a::after {
        content: "⌄";
        position: absolute;
        top: 50%;
        right: 12px;
        transform: translateY(-55%);
        color: rgba(255,255,255,.48);
        font-size: 1rem;
        line-height: 1;
        transition: transform .18s ease, color .18s ease;
    }

    .ker-nav__events.is-submenu-open > a::after,
    .ker-nav .menu-item-has-children.is-submenu-open > a::after {
        transform: translateY(-45%) rotate(180deg);
        color: #fff;
    }

    .ker-nav__events .ker-nav__submenu,
    .ker-nav .menu-item-has-children > .sub-menu {
        display: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        max-height: 0;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        overflow: hidden;
    }

    .ker-nav__events.is-submenu-open > .ker-nav__submenu,
    .ker-nav .menu-item-has-children.is-submenu-open > .sub-menu {
        display: grid !important;
        opacity: 1 !important;
        visibility: visible !important;
        max-height: 460px;
        padding-top: 3px !important;
        padding-bottom: 6px !important;
    }

    /* Tabela de classificação da etapa: prioriza tempos inteiros sem quebra. */
    body.ker-event-detail-surface .ker-event-result-table th,
    body.ker-event-detail-surface .ker-event-result-table td {
        overflow-wrap: normal;
        word-break: normal;
    }

    body.ker-event-detail-surface .ker-event-result-table th:nth-child(1),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(1) { width: 6%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(2),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(2) { width: 3%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(3),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(3) { width: 15%; text-align: left; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(4),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(4) { width: 6%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(5),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(5) { width: 3.5%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(6),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(6) { width: 10.5%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(7),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(7) { width: 12%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(8),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(8) { width: 9%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(9),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(9) { width: 9%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(10),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(10) { width: 10.5%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(11),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(11) { width: 3.5%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(12),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(12) { width: 8%; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(13),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(13) { width: 4%; }

    body.ker-event-detail-surface .ker-event-result-table td:nth-child(5),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(6),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(7),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(8),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(9),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(10),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(11) {
        padding-left: 0;
        padding-right: 0;
        white-space: nowrap !important;
        letter-spacing: -.035em;
    }

    body.ker-event-detail-surface .ker-event-time__desktop {
        display: none;
    }

    body.ker-event-detail-surface .ker-event-time__mobile {
        display: inline;
    }

    body.ker-event-detail-surface .ker-event-time {
        max-width: 100%;
        font-size: .36rem;
        line-height: 1;
        letter-spacing: -.045em;
        white-space: nowrap;
    }

    body.ker-event-detail-surface .ker-event-pos__main {
        justify-content: center;
        gap: 2px;
    }

    body.ker-event-detail-surface .ker-event-pos__main i {
        font-size: .78rem;
    }

    body.ker-event-detail-surface .ker-event-pos strong {
        font-size: .61rem;
    }

    body.ker-event-detail-surface .ker-event-result-pilot {
        gap: 2px;
        font-size: .43rem;
    }

    body.ker-event-detail-surface .ker-event-result-pilot .ker-public-avatar {
        width: 19px;
        height: 19px;
        min-width: 19px;
        min-height: 19px;
        max-width: 19px;
        max-height: 19px;
        flex-basis: 19px;
    }

    body.ker-event-detail-surface .ker-event-status {
        padding-inline: 1px;
        font-size: .32rem;
    }

    body.ker-ranking-surface .ker-ranking-position > span {
        margin-right: 2px;
        font-size: .84rem;
    }

    body.ker-ranking-surface .ker-ranking-position strong {
        font-size: .69rem;
    }
}

/* =========================================================
   KER Theme v1.6.16 — pódio limpo e cabeçalho mobile
   ========================================================= */

/* No pódio, o próprio emoji ocupa a posição: não há número duplicado. */
.ker-event-pos__podium,
.ker-position__podium {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    line-height: 1;
    font-style: normal;
}

.ker-event-pos__podium {
    font-size: 1.34rem;
}

.ker-position--podium {
    font-size: 0;
}

.ker-position--podium .ker-position__podium {
    font-size: 1.28rem;
}

/* Ícone da conta existe no HTML, mas no desktop permanece o rótulo atual. */
.ker-header-account-link__icon {
    display: none;
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

@media (max-width: 760px) {
    html.ker-mobile-menu-open,
    body.ker-mobile-menu-open {
        overflow: hidden;
    }

    /* Cabeçalho em três pontos: menu à esquerda, logo realmente central, perfil à direita. */
    .ker-header__inner {
        min-height: 66px;
        justify-content: center;
        gap: 0;
    }

    .ker-nav-toggle {
        position: absolute !important;
        left: 0;
        top: 50%;
        width: 40px;
        height: 40px;
        display: grid;
        align-content: center;
        padding: 9px 10px;
        border: 1px solid rgba(255,255,255,.16);
        border-radius: 50%;
        background: rgba(5,8,10,.42);
        transform: translateY(-50%);
        transition: border-color .18s ease, background .18s ease;
    }

    .ker-nav-toggle > span:not(.screen-reader-text) {
        width: 18px;
        height: 1.5px;
        margin: 2.5px auto;
        transform-origin: center;
        transition: transform .18s ease, opacity .14s ease;
    }

    .ker-nav-toggle[aria-expanded="true"] {
        border-color: rgba(255,255,255,.28);
        background: rgba(7,9,10,.72);
    }

    .ker-nav-toggle[aria-expanded="true"] > span:nth-child(1) {
        transform: translateY(6.5px) rotate(45deg);
    }

    .ker-nav-toggle[aria-expanded="true"] > span:nth-child(2) {
        opacity: 0;
    }

    .ker-nav-toggle[aria-expanded="true"] > span:nth-child(3) {
        transform: translateY(-6.5px) rotate(-45deg);
    }

    .ker-brand {
        position: absolute !important;
        left: 50%;
        top: 50%;
        max-width: 44%;
        margin: 0;
        transform: translate(-50%, -50%);
    }

    .ker-brand__logo {
        width: auto;
        height: 36px;
        max-width: 150px;
        object-position: center;
    }

    .ker-header-account {
        position: absolute !important;
        right: 0;
        top: 50%;
        margin: 0;
        gap: 5px;
        transform: translateY(-50%);
    }

    .ker-header-account > .ker-header-account-link {
        width: 40px;
        height: 40px;
        min-height: 40px;
        padding: 0 !important;
        border-color: rgba(255,255,255,.12);
        border-radius: 50%;
        color: rgba(255,255,255,.88);
        background: transparent;
    }

    .ker-header-account-link__label {
        display: none;
    }

    .ker-header-account-link__icon {
        display: block;
    }

    .ker-header-bell {
        width: 36px;
        height: 36px;
        background: transparent;
    }

    /* Menu expandido: painel amplo, translúcido e com desfoque do conteúdo atrás. */
    .ker-nav {
        position: fixed !important;
        z-index: 1001;
        top: 66px !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0;
        width: 100%;
        max-height: none;
        overflow-x: hidden;
        overflow-y: auto;
        margin: 0;
        padding: 18px 20px 30px;
        border: 0;
        border-top: 1px solid rgba(255,255,255,.08);
        border-radius: 0;
        background: linear-gradient(180deg, rgba(27,24,24,.72) 0%, rgba(10,15,15,.82) 100%);
        box-shadow: none;
        backdrop-filter: blur(24px) saturate(125%);
        -webkit-backdrop-filter: blur(24px) saturate(125%);
        overscroll-behavior: contain;
    }

    .ker-nav__list {
        width: 100%;
        max-width: 640px;
        margin: 0 auto;
    }

    .ker-nav__list > li {
        border-bottom: 1px solid rgba(255,255,255,.075);
    }

    .ker-nav__list > li > a {
        min-height: 54px;
        display: flex;
        align-items: center;
        padding: 0 2px !important;
        color: rgba(255,255,255,.91);
        font-size: .91rem;
        font-weight: 760;
        letter-spacing: -.015em;
    }

    .ker-nav__list > li:not(.ker-nav__events):not(.menu-item-has-children) > a {
        position: relative;
        padding-right: 30px !important;
    }

    .ker-nav__list > li:not(.ker-nav__events):not(.menu-item-has-children) > a::after {
        content: "→";
        position: absolute;
        right: 2px;
        top: 50%;
        color: rgba(255,255,255,.58);
        font-size: 1rem;
        font-weight: 400;
        transform: translateY(-50%);
    }

    .ker-nav__events > a,
    .ker-nav .menu-item-has-children > a {
        min-height: 54px;
        padding-left: 2px !important;
        padding-right: 30px !important;
    }

    .ker-nav__events > a::after,
    .ker-nav .menu-item-has-children > a::after {
        right: 2px;
    }

    .ker-nav__events .ker-nav__submenu,
    .ker-nav .menu-item-has-children > .sub-menu {
        margin: 0 !important;
        padding-left: 10px !important;
        border-left: 1px solid rgba(255,255,255,.10);
    }

    .ker-nav__submenu a,
    .ker-nav .sub-menu a {
        min-height: 42px;
        padding: 8px 4px 8px 10px !important;
        color: rgba(255,255,255,.70);
        font-size: .78rem;
    }

    /* Emoji legível dentro da tabela compacta no celular. */
    body.ker-event-detail-surface .ker-event-pos__main {
        min-height: 24px;
        justify-content: center;
    }

    body.ker-event-detail-surface .ker-event-pos__podium {
        font-size: 1.02rem;
    }

    .ker-position--podium .ker-position__podium {
        font-size: 1.05rem;
    }
}

@media (max-width: 430px) {
    .ker-brand__logo {
        height: 34px;
        max-width: 132px;
    }

    .ker-header-notifications + .ker-header-account-link,
    .ker-header-notifications ~ .ker-header-account-link {
        width: 35px;
        height: 35px;
        min-height: 35px;
    }

    .ker-header-notifications .ker-header-bell {
        width: 34px;
        height: 34px;
    }
}

/* Garante o mesmo cabeçalho/menu mobile também nas páginas com estilos próprios. */
@media (max-width: 760px) {
    body.ker-home-surface .ker-header__inner,
    body.ker-event-detail-surface .ker-header__inner,
    .ker-header__inner {
        min-height: 66px !important;
    }

    body.ker-home-surface .ker-nav,
    body.ker-event-detail-surface .ker-nav,
    .ker-nav {
        top: 66px !important;
        background: linear-gradient(180deg, rgba(27,24,24,.72) 0%, rgba(10,15,15,.82) 100%) !important;
        backdrop-filter: blur(24px) saturate(125%) !important;
        -webkit-backdrop-filter: blur(24px) saturate(125%) !important;
    }
}


/* =========================================================
   KER Theme v1.6.17 — menu mobile acima de tudo + modal compacto
   ========================================================= */

@media (max-width: 760px) {
    /*
     * O menu passa a viver dentro do stacking-context do próprio header,
     * que fica fixo somente enquanto o drawer está aberto. Assim nenhuma
     * arte, hero, card ou slider da página consegue aparecer por cima dele.
     */
    html.ker-mobile-menu-open,
    body.ker-mobile-menu-open {
        overflow: hidden !important;
    }

    body.ker-mobile-menu-open .ker-header,
    body.ker-mobile-menu-open.ker-home-surface .ker-header,
    body.ker-mobile-menu-open.ker-event-detail-surface .ker-header,
    body.ker-mobile-menu-open.ker-ranking-surface .ker-header {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        z-index: 99990 !important;
        overflow: visible !important;
        isolation: isolate;
    }

    .ker-header__inner {
        z-index: 99991 !important;
    }

    .ker-nav {
        /* O container do header é relativo; 100vw centraliza o drawer na viewport. */
        position: absolute !important;
        top: 66px !important;
        left: 50% !important;
        right: auto !important;
        bottom: auto !important;
        z-index: 99992 !important;
        width: 100vw !important;
        height: calc(100dvh - 66px) !important;
        max-height: calc(100dvh - 66px) !important;
        margin: 0 !important;
        padding: 18px max(20px, calc((100vw - 640px) / 2)) 32px !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        transform: translateX(-50%) !important;
        border: 0 !important;
        border-top: 1px solid rgba(255,255,255,.08) !important;
        border-radius: 0 !important;
        background:
            linear-gradient(180deg, rgba(16,9,12,.94) 0%, rgba(9,10,12,.965) 100%) !important;
        box-shadow: 0 22px 60px rgba(0,0,0,.42) !important;
        -webkit-backdrop-filter: blur(30px) saturate(115%) !important;
        backdrop-filter: blur(30px) saturate(115%) !important;
        overscroll-behavior: contain;
        pointer-events: auto !important;
    }

    .ker-nav.is-open {
        display: block !important;
    }

    /* Evita que elementos do conteúdo recebam toque enquanto o menu está aberto. */
    body.ker-mobile-menu-open .ker-nav,
    body.ker-mobile-menu-open .ker-nav * {
        pointer-events: auto !important;
    }

    /* -----------------------------------------------------
       Modal de piloto: menor, mais encaixado e menos rolagem
       ----------------------------------------------------- */
    .ker-pilot-modal {
        padding: 12px !important;
        z-index: 99980 !important;
    }

    .ker-pilot-modal__dialog,
    body.ker-event-detail-surface .ker-pilot-modal__dialog,
    body.ker-ranking-surface .ker-pilot-modal__dialog {
        grid-template-columns: 1fr !important;
        width: min(356px, calc(100vw - 24px)) !important;
        max-width: 356px !important;
        max-height: calc(100dvh - 24px) !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        border-radius: 20px !important;
    }

    .ker-pilot-modal__visual,
    body.ker-event-detail-surface .ker-pilot-modal__visual,
    body.ker-ranking-surface .ker-pilot-modal__visual {
        width: 100% !important;
        height: clamp(220px, 31dvh, 270px) !important;
        min-height: 220px !important;
        max-height: 270px !important;
        border-radius: 20px 20px 0 0 !important;
    }

    .ker-pilot-modal__visual img,
    body.ker-event-detail-surface .ker-pilot-modal__visual img,
    body.ker-ranking-surface .ker-pilot-modal__visual img {
        width: 100% !important;
        height: 100% !important;
        min-height: 0 !important;
        max-height: none !important;
        object-fit: cover !important;
    }

    .ker-pilot-modal__content,
    body.ker-event-detail-surface .ker-pilot-modal__content,
    body.ker-ranking-surface .ker-pilot-modal__content {
        min-height: 0 !important;
        margin-left: 0 !important;
        margin-top: -12px !important;
        padding: 22px 18px 20px !important;
        border-radius: 19px !important;
    }

    .ker-pilot-modal__content h3,
    body.ker-event-detail-surface .ker-pilot-modal__content h3,
    body.ker-ranking-surface .ker-pilot-modal__content h3 {
        margin-top: 6px !important;
        font-size: clamp(1.75rem, 8vw, 2.15rem) !important;
        line-height: .96 !important;
    }

    .ker-pilot-modal__content > p {
        margin-top: 5px !important;
        font-size: .78rem !important;
    }

    .ker-pilot-modal__tags,
    body.ker-event-detail-surface .ker-pilot-modal__tags,
    body.ker-ranking-surface .ker-pilot-modal__tags {
        gap: 6px !important;
        margin-top: 12px !important;
    }

    .ker-pilot-modal__tags span,
    body.ker-event-detail-surface .ker-pilot-modal__tags span,
    body.ker-ranking-surface .ker-pilot-modal__tags span {
        min-height: 25px !important;
        padding: 0 8px !important;
        font-size: .64rem !important;
    }

    /* Classificação, Pontos e Vitórias sempre lado a lado no celular. */
    .ker-pilot-modal__stats,
    body.ker-event-detail-surface .ker-pilot-modal__stats,
    body.ker-ranking-surface .ker-pilot-modal__stats {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 6px !important;
        margin-top: 15px !important;
    }

    .ker-pilot-modal__stats > div,
    body.ker-event-detail-surface .ker-pilot-modal__stats > div,
    body.ker-ranking-surface .ker-pilot-modal__stats > div {
        min-width: 0 !important;
        padding: 9px 7px !important;
        border-radius: 11px !important;
        text-align: left;
    }

    .ker-pilot-modal__stats span,
    body.ker-event-detail-surface .ker-pilot-modal__stats span,
    body.ker-ranking-surface .ker-pilot-modal__stats span {
        font-size: .51rem !important;
        line-height: 1.15 !important;
        letter-spacing: .035em !important;
        white-space: normal !important;
    }

    .ker-pilot-modal__stats strong,
    body.ker-event-detail-surface .ker-pilot-modal__stats strong,
    body.ker-ranking-surface .ker-pilot-modal__stats strong {
        margin-top: 4px !important;
        font-size: .92rem !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    .ker-pilot-modal__socials,
    body.ker-event-detail-surface .ker-pilot-modal__socials,
    body.ker-ranking-surface .ker-pilot-modal__socials {
        gap: 6px !important;
        margin-top: 14px !important;
    }

    /* O X acompanha o card e não fica solto na viewport. */
    .ker-pilot-modal__close,
    body.ker-event-detail-surface .ker-pilot-modal__close,
    body.ker-ranking-surface .ker-pilot-modal__close {
        position: absolute !important;
        top: 10px !important;
        right: 10px !important;
        width: 36px !important;
        height: 36px !important;
        min-width: 36px !important;
        min-height: 36px !important;
        font-size: 21px !important;
    }
}

@media (max-width: 390px) {
    .ker-pilot-modal__dialog,
    body.ker-event-detail-surface .ker-pilot-modal__dialog,
    body.ker-ranking-surface .ker-pilot-modal__dialog {
        width: min(344px, calc(100vw - 20px)) !important;
    }

    .ker-pilot-modal__visual,
    body.ker-event-detail-surface .ker-pilot-modal__visual,
    body.ker-ranking-surface .ker-pilot-modal__visual {
        height: clamp(210px, 29dvh, 252px) !important;
        min-height: 210px !important;
    }
}


/* =========================================================
   KER Theme v1.6.18 — menu frosted real + foto 1:1 no modal
   ========================================================= */

@media (max-width: 760px) {
    /*
     * Camada de vidro fosco independente do drawer. Ela fica acima de toda
     * a página e abaixo do header/menu, garantindo que o conteúdo de fundo
     * seja realmente desfocado (e não apenas escurecido).
     */
    body.ker-mobile-menu-open::before {
        content: "";
        position: fixed;
        z-index: 99989;
        top: 66px;
        left: 0;
        right: 0;
        bottom: 0;
        pointer-events: auto;
        background: rgba(8, 9, 11, .46);
        -webkit-backdrop-filter: blur(22px) saturate(82%) brightness(62%);
        backdrop-filter: blur(22px) saturate(82%) brightness(62%);
    }

    body.ker-mobile-menu-open .ker-header,
    body.ker-mobile-menu-open.ker-home-surface .ker-header,
    body.ker-mobile-menu-open.ker-event-detail-surface .ker-header,
    body.ker-mobile-menu-open.ker-ranking-surface .ker-header {
        z-index: 100000 !important;
    }

    body.ker-mobile-menu-open .ker-header__inner {
        z-index: 100001 !important;
    }

    /*
     * Drawer translúcido, como no exemplo: o fundo permanece perceptível,
     * porém difuso e sem competir visualmente com os links.
     */
    body.ker-mobile-menu-open .ker-nav,
    body.ker-mobile-menu-open.ker-home-surface .ker-nav,
    body.ker-mobile-menu-open.ker-event-detail-surface .ker-nav,
    body.ker-mobile-menu-open.ker-ranking-surface .ker-nav {
        z-index: 100002 !important;
        background: linear-gradient(
            180deg,
            rgba(18, 13, 16, .74) 0%,
            rgba(10, 12, 14, .78) 100%
        ) !important;
        -webkit-backdrop-filter: blur(30px) saturate(95%) brightness(72%) !important;
        backdrop-filter: blur(30px) saturate(95%) brightness(72%) !important;
        box-shadow: inset 0 1px 0 rgba(255,255,255,.035) !important;
    }

    body.ker-mobile-menu-open .ker-nav__list > li {
        border-bottom-color: rgba(255,255,255,.09) !important;
    }

    body.ker-mobile-menu-open .ker-nav__list > li > a {
        color: rgba(255,255,255,.94) !important;
        text-shadow: 0 1px 10px rgba(0,0,0,.42);
    }

    /* -----------------------------------------------------
       Modal do piloto: fotografia quadrada e completa
       ----------------------------------------------------- */
    .ker-pilot-modal__dialog,
    body.ker-event-detail-surface .ker-pilot-modal__dialog,
    body.ker-ranking-surface .ker-pilot-modal__dialog {
        width: min(348px, calc(100vw - 24px)) !important;
        max-width: 348px !important;
        padding-top: 14px !important;
        background: #10090c !important;
    }

    .ker-pilot-modal__visual,
    body.ker-event-detail-surface .ker-pilot-modal__visual,
    body.ker-ranking-surface .ker-pilot-modal__visual {
        width: min(248px, calc(100% - 44px)) !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        aspect-ratio: 1 / 1 !important;
        margin: 0 auto !important;
        border: 1px solid rgba(255,255,255,.08) !important;
        border-radius: 17px !important;
        background: #0b0e11 !important;
    }

    .ker-pilot-modal__visual img,
    body.ker-event-detail-surface .ker-pilot-modal__visual img,
    body.ker-ranking-surface .ker-pilot-modal__visual img {
        width: 100% !important;
        height: 100% !important;
        min-height: 0 !important;
        max-height: none !important;
        aspect-ratio: 1 / 1 !important;
        object-fit: contain !important;
        object-position: center !important;
        background: #0b0e11 !important;
    }

    .ker-pilot-modal__placeholder,
    body.ker-event-detail-surface .ker-pilot-modal__placeholder,
    body.ker-ranking-surface .ker-pilot-modal__placeholder {
        width: 100% !important;
        height: 100% !important;
        min-height: 0 !important;
        border-radius: 17px !important;
    }

    .ker-pilot-modal__content,
    body.ker-event-detail-surface .ker-pilot-modal__content,
    body.ker-ranking-surface .ker-pilot-modal__content {
        margin-top: 10px !important;
        padding: 14px 16px 18px !important;
        border-radius: 17px !important;
    }

    .ker-pilot-modal__content h3,
    body.ker-event-detail-surface .ker-pilot-modal__content h3,
    body.ker-ranking-surface .ker-pilot-modal__content h3 {
        margin-top: 4px !important;
        font-size: clamp(1.62rem, 7.2vw, 1.95rem) !important;
    }

    .ker-pilot-modal__tags,
    body.ker-event-detail-surface .ker-pilot-modal__tags,
    body.ker-ranking-surface .ker-pilot-modal__tags {
        margin-top: 9px !important;
    }

    .ker-pilot-modal__stats,
    body.ker-event-detail-surface .ker-pilot-modal__stats,
    body.ker-ranking-surface .ker-pilot-modal__stats {
        margin-top: 11px !important;
    }

    .ker-pilot-modal__socials,
    body.ker-event-detail-surface .ker-pilot-modal__socials,
    body.ker-ranking-surface .ker-pilot-modal__socials {
        margin-top: 10px !important;
    }

    .ker-pilot-modal__close,
    body.ker-event-detail-surface .ker-pilot-modal__close,
    body.ker-ranking-surface .ker-pilot-modal__close {
        top: 10px !important;
        right: 10px !important;
        z-index: 5 !important;
    }
}

@media (max-width: 390px) {
    .ker-pilot-modal__dialog,
    body.ker-event-detail-surface .ker-pilot-modal__dialog,
    body.ker-ranking-surface .ker-pilot-modal__dialog {
        width: min(336px, calc(100vw - 20px)) !important;
    }

    .ker-pilot-modal__visual,
    body.ker-event-detail-surface .ker-pilot-modal__visual,
    body.ker-ranking-surface .ker-pilot-modal__visual {
        width: min(228px, calc(100% - 46px)) !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        aspect-ratio: 1 / 1 !important;
    }
}

/* KER Theme 1.6.19 — redes sociais por ícone */
.ker-pilot-modal__socials {
    gap: 8px;
    margin-top: 16px;
}
.ker-pilot-social {
    width: 40px;
    height: 40px;
    min-height: 40px;
    flex: 0 0 40px;
    padding: 0;
    border-radius: 50%;
}
.ker-pilot-social svg,
.ker-pilot-social img {
    width: 20px;
    height: 20px;
    display: block;
    object-fit: contain;
}
.ker-pilot-social--youtube { color: #ff0033; }
.ker-pilot-social--facebook { color: #1877f2; }
.ker-pilot-social--linkedin { color: #0a66c2; }
.ker-pilot-social--whatsapp { color: #25d366; }
.ker-pilot-social--linktree { color: #43e660; }
.ker-pilot-social--instagram,
.ker-pilot-social--tiktok,
.ker-pilot-social--x,
.ker-pilot-social--threads { color: #fff; }
.ker-pilot-social--custom img {
    width: 23px;
    height: 23px;
}
.ker-event-pilot-card__socials .ker-social-icon img {
    width: 16px;
    height: 16px;
    display: block;
    object-fit: contain;
}
.ker-event-pilot-card__socials .ker-social-icon--custom img {
    width: 18px;
    height: 18px;
}
.ker-event-pilot-card__socials .ker-social-icon--linktree {
    color: #2f9e56;
}
@media (max-width: 520px) {
    .ker-pilot-social {
        width: 38px;
        height: 38px;
        min-height: 38px;
        flex-basis: 38px;
    }
    .ker-pilot-social svg,
    .ker-pilot-social img {
        width: 19px;
        height: 19px;
    }
}

/* ==========================================================
   KER Theme 1.6.20 — personalização premium dos pilotos
   ========================================================== */
.ker-verified-badge {
    width: 1.05em;
    height: 1.05em;
    flex: 0 0 auto;
    display: inline-grid;
    place-items: center;
    color: #4aa8ff;
    vertical-align: -.08em;
}
.ker-verified-badge svg { width: 100%; height: 100%; display: block; }

.ker-pilot-area {
    --ker-profile-accent: var(--ker-accent);
    position: relative;
    isolation: isolate;
    background: #10090c;
}
.ker-pilot-area::before {
    content: "";
    position: fixed;
    z-index: -1;
    inset: 0;
    pointer-events: none;
    opacity: .7;
}
.ker-pilot-area.ker-profile-bg--default::before {
    background:
        radial-gradient(circle at 10% 12%, color-mix(in srgb, var(--ker-profile-accent) 18%, transparent), transparent 28%),
        radial-gradient(circle at 90% 88%, rgba(95,35,61,.16), transparent 34%);
}
.ker-pilot-area.ker-profile-bg--carbon::before {
    background:
        linear-gradient(135deg, rgba(255,255,255,.025) 25%, transparent 25%) 0 0/18px 18px,
        linear-gradient(315deg, rgba(255,255,255,.02) 25%, transparent 25%) 0 0/18px 18px,
        radial-gradient(circle at 20% 10%, color-mix(in srgb, var(--ker-profile-accent) 16%, transparent), transparent 30%);
}
.ker-pilot-area.ker-profile-bg--asphalt::before {
    background:
        radial-gradient(circle at 25% 30%, rgba(255,255,255,.035) 0 1px, transparent 1.5px) 0 0/9px 9px,
        linear-gradient(160deg, rgba(255,255,255,.025), transparent 45%),
        radial-gradient(circle at 85% 12%, color-mix(in srgb, var(--ker-profile-accent) 13%, transparent), transparent 24%);
}
.ker-pilot-area.ker-profile-bg--neon::before {
    background:
        radial-gradient(circle at 18% 15%, color-mix(in srgb, var(--ker-profile-accent) 28%, transparent), transparent 26%),
        linear-gradient(120deg, transparent 40%, color-mix(in srgb, var(--ker-profile-accent) 8%, transparent) 50%, transparent 60%);
}
.ker-pilot-area.ker-profile-bg--minimal::before {
    opacity: .25;
    background: linear-gradient(180deg, color-mix(in srgb, var(--ker-profile-accent) 8%, transparent), transparent 30%);
}
.ker-pilot-area .ker-pilot-page-head > span,
.ker-pilot-area .ker-pilot-panel__head span,
.ker-pilot-area .ker-pilot-next-stage > div > span,
.ker-pilot-area .ker-pilot-season-card > div > span,
.ker-pilot-area .ker-pilot-identity small {
    color: var(--ker-profile-accent);
}
.ker-pilot-area .ker-pilot-nav b,
.ker-pilot-area .ker-pilot-save,
.ker-pilot-area .ker-pilot-qr-valid {
    background: var(--ker-profile-accent);
}
.ker-pilot-area .ker-pilot-nav a.is-active {
    box-shadow: inset 3px 0 0 color-mix(in srgb, var(--ker-profile-accent) 78%, white 10%);
}
.ker-pilot-area .ker-pilot-next-stage__action a,
.ker-pilot-area .ker-pilot-season-card a,
.ker-pilot-area .ker-notification-list a {
    color: color-mix(in srgb, var(--ker-profile-accent) 76%, white 24%);
}

.ker-pilot-identity__photo {
    position: relative;
    width: 64px;
    height: 64px;
    flex: 0 0 64px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    cursor: zoom-in;
}
.ker-pilot-identity__photo > img:not(.ker-pilot-avatar-frame) {
    width: 58px;
    height: 58px;
    border-radius: 50%;
    object-fit: cover;
}
.ker-pilot-identity__photo > span {
    position: absolute;
    right: -8px;
    bottom: -6px;
    padding: 3px 6px;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 999px;
    color: rgba(255,255,255,.8);
    background: rgba(10,10,12,.82);
    backdrop-filter: blur(10px);
    font-size: .43rem;
    font-weight: 850;
    opacity: 0;
    transform: translateY(2px);
    transition: opacity .18s ease, transform .18s ease;
    white-space: nowrap;
}
.ker-pilot-identity__photo:hover > span,
.ker-pilot-identity__photo:focus-visible > span { opacity: 1; transform: translateY(0); }
.ker-pilot-avatar-frame {
    position: absolute !important;
    inset: -5px !important;
    z-index: 2;
    width: calc(100% + 10px) !important;
    height: calc(100% + 10px) !important;
    max-width: none !important;
    border-radius: 0 !important;
    object-fit: contain !important;
    pointer-events: none;
}
.ker-pilot-identity__name {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 5px;
}
.ker-pilot-identity__name strong { min-width: 0; }
.ker-pilot-identity__name .ker-verified-badge { width: 15px; height: 15px; }
.ker-profile-title-badge {
    width: fit-content;
    max-width: 100%;
    display: inline-flex;
    margin-top: 2px;
    padding: 3px 7px;
    border: 1px solid color-mix(in srgb, var(--ker-profile-accent) 30%, transparent);
    border-radius: 999px;
    color: color-mix(in srgb, var(--ker-profile-accent) 70%, white 30%);
    background: color-mix(in srgb, var(--ker-profile-accent) 9%, transparent);
    font-size: .49rem;
    font-style: normal;
    font-weight: 850;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.ker-pilot-heading-name { display: flex; flex-wrap: wrap; align-items: center; gap: .16em; }
.ker-pilot-heading-name .ker-verified-badge { width: .72em; height: .72em; }

.ker-pilot-profile-banner {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 4.3;
    max-height: 240px;
    margin: -8px 0 22px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 19px;
    background: rgba(255,255,255,.025);
    box-shadow: 0 18px 55px rgba(0,0,0,.18);
}
.ker-pilot-profile-banner::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 45%, rgba(16,9,12,.48));
    pointer-events: none;
}
.ker-pilot-profile-banner img { width: 100%; height: 100%; display: block; object-fit: cover; }

.ker-pilot-customization-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;
}
.ker-pilot-customization-grid > label { display: grid; gap: 6px; }
.ker-pilot-customization-grid > label > span,
.ker-pilot-banner-editor > div > span {
    color: rgba(255,255,255,.38);
    font-size: .6rem;
    font-weight: 800;
}
.ker-pilot-customization-grid select,
.ker-pilot-customization-grid input[type="color"] {
    width: 100%;
    min-height: 43px;
    padding: 0 12px;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 9px;
    color: #fff;
    background: rgba(255,255,255,.025);
}
.ker-pilot-custom-color > div {
    min-height: 43px;
    display: grid;
    grid-template-columns: auto 52px 1fr;
    gap: 9px;
    align-items: center;
    padding: 5px 9px;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 9px;
}
.ker-pilot-custom-color input[type="color"] { min-height: 32px; height: 32px; padding: 1px; }
.ker-pilot-custom-color small { color: rgba(255,255,255,.44); font-size: .59rem; }
.ker-pilot-banner-editor {
    display: grid;
    gap: 10px;
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid rgba(255,255,255,.06);
}
.ker-pilot-banner-editor > div p { margin: 4px 0 0; color: rgba(255,255,255,.3); font-size: .58rem; }
.ker-pilot-banner-editor > img {
    width: min(520px, 100%);
    aspect-ratio: 16 / 4.5;
    display: block;
    object-fit: cover;
    border-radius: 10px;
    border: 1px solid rgba(255,255,255,.08);
}
.ker-pilot-banner-editor input[type="file"] {
    max-width: 520px;
    padding: 9px;
    border: 1px dashed rgba(255,255,255,.12);
    border-radius: 10px;
    color: rgba(255,255,255,.7);
    background: rgba(255,255,255,.02);
    font-size: .62rem;
}
.ker-pilot-banner-remove { color: rgba(255,255,255,.55); font-size: .61rem; }

html.ker-pilot-photo-viewer-open { overflow: hidden; }
.ker-pilot-photo-viewer {
    position: fixed;
    z-index: 200000;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 24px;
}
.ker-pilot-photo-viewer[hidden] { display: none !important; }
.ker-pilot-photo-viewer__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(4,5,7,.78);
    backdrop-filter: blur(16px) saturate(.75);
    -webkit-backdrop-filter: blur(16px) saturate(.75);
}
.ker-pilot-photo-viewer__dialog {
    position: relative;
    z-index: 1;
    width: min(620px, 92vw);
    max-height: 92vh;
    display: grid;
    gap: 12px;
    padding: 18px;
    border: 1px solid rgba(255,255,255,.11);
    border-radius: 24px;
    background: rgba(13,15,19,.88);
    box-shadow: 0 36px 120px rgba(0,0,0,.62);
    backdrop-filter: blur(24px);
}
.ker-pilot-photo-viewer__close {
    position: absolute;
    z-index: 5;
    top: 12px;
    right: 12px;
    width: 38px;
    height: 38px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 50%;
    color: #fff;
    background: rgba(4,6,8,.7);
    font-size: 1.35rem;
    cursor: pointer;
}
.ker-pilot-photo-viewer__image {
    position: relative;
    width: min(520px, 78vh, 100%);
    aspect-ratio: 1 / 1;
    margin: 0 auto;
    display: grid;
    place-items: center;
}
.ker-pilot-photo-viewer__image > img:not(.ker-pilot-photo-viewer__frame) {
    width: 92%;
    height: 92%;
    display: block;
    object-fit: contain;
    border-radius: 18px;
    background: #090c10;
}
.ker-pilot-photo-viewer__frame {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    pointer-events: none;
}
.ker-pilot-photo-viewer__caption {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    color: #fff;
    font-size: .8rem;
}
.ker-pilot-photo-viewer__caption .ker-verified-badge { width: 17px; height: 17px; }

/* Modal público: moldura, selo e cor individual */
.ker-pilot-modal__dialog {
    --ker-pilot-accent: var(--ker-accent);
    border-color: color-mix(in srgb, var(--ker-pilot-accent) 32%, #2a3542);
}
.ker-pilot-modal__visual { position: relative; }
.ker-pilot-modal__visual .ker-pilot-modal__frame {
    position: absolute !important;
    z-index: 3;
    inset: 4% !important;
    width: 92% !important;
    height: 92% !important;
    min-height: 0 !important;
    object-fit: contain !important;
    pointer-events: none;
}
.ker-pilot-modal__name-row { display: flex; align-items: center; gap: 8px; }
.ker-pilot-modal__name-row .ker-verified-badge { width: .58em; height: .58em; }
.ker-pilot-modal__profile-badge {
    border-color: color-mix(in srgb, var(--ker-pilot-accent) 28%, #2b3744) !important;
    color: color-mix(in srgb, var(--ker-pilot-accent) 72%, white 28%) !important;
    background: color-mix(in srgb, var(--ker-pilot-accent) 8%, #151d26) !important;
}
.ker-pilot-modal__dialog .ker-public-kicker { color: var(--ker-pilot-accent); }
.ker-pilot-modal__dialog[data-profile-background="carbon"] .ker-pilot-modal__content {
    background-image: linear-gradient(135deg, rgba(255,255,255,.02) 25%, transparent 25%), linear-gradient(315deg, rgba(255,255,255,.016) 25%, transparent 25%);
    background-size: 16px 16px;
}
.ker-pilot-modal__dialog[data-profile-background="neon"] .ker-pilot-modal__content {
    background: radial-gradient(circle at 100% 0, color-mix(in srgb, var(--ker-pilot-accent) 18%, transparent), transparent 34%);
}
.ker-pilot-modal__dialog.has-profile-banner .ker-pilot-modal__content {
    position: relative;
    isolation: isolate;
}
.ker-pilot-modal__dialog.has-profile-banner .ker-pilot-modal__content::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0 0 auto;
    height: 34%;
    background-image: linear-gradient(180deg, rgba(10,12,16,.16), #10161e 96%), var(--ker-pilot-banner);
    background-size: cover;
    background-position: center;
    opacity: .42;
}

@media (max-width: 760px) {
    .ker-pilot-profile-banner { margin-top: 0; border-radius: 14px; aspect-ratio: 16 / 5.5; }
    .ker-pilot-customization-grid { grid-template-columns: 1fr; }
    .ker-pilot-photo-viewer { padding: 12px; }
    .ker-pilot-photo-viewer__dialog { width: min(520px, 96vw); padding: 12px; border-radius: 18px; }
    .ker-pilot-photo-viewer__image { width: min(88vw, 68vh); }
    .ker-pilot-identity__photo > span { opacity: 1; }
}


/* ==========================================================
   KER Theme 1.6.21 — verificado público + banner integrado
   ========================================================== */
.ker-public-pilot-name {
    min-width: 0;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}
.ker-public-pilot-name .ker-verified-badge {
    width: 14px;
    height: 14px;
    flex: 0 0 14px;
}
.ker-ranking-pilot__text > .ker-public-pilot-name,
.ker-event-pilot-card__meta > .ker-public-pilot-name {
    max-width: 100%;
}

/* A visualização ampliada exibe apenas a fotografia original. */
.ker-pilot-photo-viewer__image > img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
    border-radius: 18px;
    background: #090c10;
}

/* Desktop: o banner vira a imagem de fundo do cabeçalho "Olá, Piloto". */
.ker-pilot-page-head.has-profile-banner {
    position: relative;
    isolation: isolate;
    min-height: 220px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 54px 34px 30px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 20px;
    background: #0d0b0e;
    box-shadow: 0 20px 60px rgba(0,0,0,.16);
}
.ker-pilot-page-head.has-profile-banner::before {
    content: "";
    position: absolute;
    z-index: -2;
    inset: 0;
    background-image: var(--ker-profile-banner);
    background-size: cover;
    background-position: center;
}
.ker-pilot-page-head.has-profile-banner::after {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(7,7,9,.06) 0%, rgba(9,7,10,.16) 36%, rgba(16,9,12,.86) 86%, #10090c 100%),
        linear-gradient(90deg, rgba(8,8,10,.46), transparent 64%);
    pointer-events: none;
}
.ker-pilot-page-head.has-profile-banner > span,
.ker-pilot-page-head.has-profile-banner h1,
.ker-pilot-page-head.has-profile-banner p {
    position: relative;
    z-index: 1;
    text-shadow: 0 2px 18px rgba(0,0,0,.48);
}
.ker-pilot-page-head.has-profile-banner p { color: rgba(255,255,255,.68); }

/* Mobile/tablet: o banner fica atrás da foto e do nome. */
@media (max-width: 1050px) {
    .ker-pilot-identity.has-profile-banner {
        position: relative;
        isolation: isolate;
        min-height: 132px;
        margin: -2px 0 2px;
        padding: 26px 18px 24px;
        overflow: hidden;
        border: 1px solid rgba(255,255,255,.07);
        border-radius: 18px;
        background: #0d0b0e;
        box-shadow: 0 18px 48px rgba(0,0,0,.16);
    }
    .ker-pilot-identity.has-profile-banner::before {
        content: "";
        position: absolute;
        z-index: -2;
        inset: 0;
        background-image: var(--ker-profile-banner);
        background-size: cover;
        background-position: center;
    }
    .ker-pilot-identity.has-profile-banner::after {
        content: "";
        position: absolute;
        z-index: -1;
        inset: 0;
        background: linear-gradient(180deg, rgba(5,6,8,.04) 0%, rgba(8,7,9,.18) 38%, rgba(16,9,12,.90) 90%, #10090c 100%);
        pointer-events: none;
    }
    .ker-pilot-identity.has-profile-banner > * {
        position: relative;
        z-index: 1;
    }
    .ker-pilot-identity.has-profile-banner > div > span { color: rgba(255,255,255,.66); }

    /* Evita mostrar o mesmo banner duas vezes no mobile. */
    .ker-pilot-page-head.has-profile-banner {
        min-height: 0;
        padding: 0;
        overflow: visible;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }
    .ker-pilot-page-head.has-profile-banner::before,
    .ker-pilot-page-head.has-profile-banner::after { display: none; }
    .ker-pilot-page-head.has-profile-banner p { color: rgba(255,255,255,.43); }
}

@media (max-width: 760px) {
    .ker-public-pilot-name { gap: 3px; }
    .ker-public-pilot-name .ker-verified-badge {
        width: 11px;
        height: 11px;
        flex-basis: 11px;
    }
    .ker-pilot-identity.has-profile-banner {
        min-height: 118px;
        padding: 22px 15px 20px;
        border-radius: 15px;
    }
}


/* ==========================================================
   KER Theme 1.6.22 — refinamentos de modal, banner e verificado
   ========================================================== */

/* O modal público mostra a foto limpa: a moldura permanece apenas no perfil. */
.ker-pilot-modal__frame,
[data-ker-modal-frame] {
    display: none !important;
}

/* Painel de informações com cantos realmente arredondados, sem pontas/quinas. */
.ker-pilot-modal__content,
body.ker-event-detail-surface .ker-pilot-modal__content,
body.ker-ranking-surface .ker-pilot-modal__content {
    overflow: hidden;
    border-radius: 24px !important;
    background-clip: padding-box !important;
    clip-path: inset(0 round 24px);
}
.ker-pilot-modal__dialog.has-profile-banner .ker-pilot-modal__content::before {
    border-radius: inherit;
}

/* Selo verificado: azul, um pouco maior e perfeitamente centralizado com o nome. */
.ker-verified-badge {
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    align-self: center;
    color: #1d9bf0 !important;
    line-height: 1;
    vertical-align: middle !important;
    transform: none !important;
}
.ker-verified-badge svg {
    width: 100%;
    height: 100%;
    display: block;
}
.ker-public-pilot-name,
.ker-pilot-identity__name,
.ker-pilot-heading-name,
.ker-pilot-modal__name-row {
    align-items: center !important;
}
.ker-public-pilot-name .ker-verified-badge {
    width: 16px;
    height: 16px;
    flex-basis: 16px;
}
.ker-pilot-identity__name .ker-verified-badge {
    width: 17px;
    height: 17px;
    flex-basis: 17px;
}
.ker-pilot-heading-name .ker-verified-badge {
    width: 20px;
    height: 20px;
    flex-basis: 20px;
}
.ker-pilot-modal__name-row .ker-verified-badge {
    width: 22px;
    height: 22px;
    flex-basis: 22px;
    margin-top: 0;
}
.ker-pilot-photo-viewer__caption .ker-verified-badge {
    width: 18px;
    height: 18px;
    flex-basis: 18px;
}

/* Banner do perfil sem contorno: mantém apenas cantos arredondados e fade. */
.ker-pilot-profile-banner,
.ker-pilot-page-head.has-profile-banner,
.ker-pilot-identity.has-profile-banner {
    border: 0 !important;
}

@media (max-width: 760px) {
    .ker-pilot-modal__content,
    body.ker-event-detail-surface .ker-pilot-modal__content,
    body.ker-ranking-surface .ker-pilot-modal__content {
        border-radius: 17px !important;
        clip-path: inset(0 round 17px);
    }
    .ker-public-pilot-name .ker-verified-badge {
        width: 14px;
        height: 14px;
        flex-basis: 14px;
    }
    .ker-pilot-modal__name-row .ker-verified-badge {
        width: 20px;
        height: 20px;
        flex-basis: 20px;
    }
}

/* =========================================================
   KER Theme 1.6.23 — Página Institucional / parceiros
   Visual inspirado em experiências digitais premium, sem
   incorporar assets de terceiros.
   ========================================================= */
body.ker-institutional-surface {
    background: #08090d;
}
body.ker-institutional-surface #conteudo {
    overflow: clip;
}
.ker-institutional {
    --ker-institutional-accent: #7c3aed;
    position: relative;
    isolation: isolate;
    min-height: 100vh;
    color: #f7f7fb;
    background:
        radial-gradient(circle at 50% 18%, color-mix(in srgb, var(--ker-institutional-accent) 12%, transparent), transparent 30rem),
        linear-gradient(180deg, #0b0b11 0%, #08090d 58%, #07080b 100%);
}
.ker-institutional__grain {
    position: absolute;
    z-index: 20;
    inset: 0;
    pointer-events: none;
    opacity: .12;
    mix-blend-mode: soft-light;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");
    background-size: 170px 170px;
}

/* Segundo cabeçalho institucional.
   Fica abaixo do cabeçalho principal, acompanha a rolagem e some ao descer. */
.ker-institutional-subnav {
    --ker-institutional-header-offset: 76px;
    position: sticky;
    top: calc(var(--ker-institutional-header-offset) + 10px);
    z-index: 45;
    margin-top: 14px;
    padding: 0;
    transform: translate3d(0, 0, 0);
    opacity: 1;
    transition: transform .28s cubic-bezier(.22,.61,.36,1), opacity .22s ease;
    will-change: transform, opacity;
}
.ker-institutional-subnav.is-scroll-hidden {
    transform: translate3d(0, calc(-100% - var(--ker-institutional-header-offset) - 24px), 0);
    opacity: 0;
    pointer-events: none;
}
.ker-institutional-subnav__inner {
    width: min(1680px, calc(100% - 64px));
    min-height: 70px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(150px, .55fr) minmax(0, 4fr);
    align-items: stretch;
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(18, 18, 29, .72);
    box-shadow: 0 18px 50px rgba(0,0,0,.22), inset 0 1px rgba(255,255,255,.035);
    backdrop-filter: blur(20px) saturate(125%);
    -webkit-backdrop-filter: blur(20px) saturate(125%);
}
.ker-institutional-subnav__brand {
    min-width: 0;
    padding: 12px 28px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    border-right: 1px solid rgba(255,255,255,.09);
    color: #fff;
    text-decoration: none;
}
.ker-institutional-subnav__logo-image {
    width: auto;
    max-width: 150px;
    max-height: 42px;
    display: block;
    object-fit: contain;
}
.ker-institutional-subnav__brand-fallback {
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .19em;
    text-transform: uppercase;
}
.ker-institutional-subnav__links {
    min-width: 0;
    display: flex;
    align-items: stretch;
    overflow-x: auto;
    scrollbar-width: none;
}
.ker-institutional-subnav__links::-webkit-scrollbar { display: none; }
.ker-institutional-subnav__links a {
    position: relative;
    min-width: max-content;
    padding: 0 clamp(25px, 3vw, 58px);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: rgba(255,255,255,.66);
    font-size: 11px;
    font-weight: 760;
    letter-spacing: .15em;
    line-height: 1.2;
    text-decoration: none;
    text-transform: uppercase;
    transition: color .22s ease, background .22s ease;
}
.ker-institutional-subnav__links a + a::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    width: 5px;
    height: 5px;
    border: 1px solid color-mix(in srgb, var(--ker-institutional-accent) 75%, white 10%);
    transform: translate(-50%, -50%) rotate(45deg);
}
.ker-institutional-subnav__links a:hover,
.ker-institutional-subnav__links a:focus-visible {
    color: #fff;
    background: rgba(255,255,255,.025);
}

.ker-institutional-hero {
    position: relative;
    z-index: 2;
    min-height: clamp(540px, 75vh, 820px);
    display: grid;
    align-items: center;
    overflow: hidden;
}
.ker-institutional-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    opacity: .3;
    background-image:
        linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
    background-size: 78px 78px;
    mask-image: linear-gradient(to bottom, transparent 0, #000 24%, #000 72%, transparent 100%);
}
.ker-institutional-hero__ambient {
    position: absolute;
    left: 50%;
    top: 45%;
    width: min(900px, 80vw);
    aspect-ratio: 1.7;
    border-radius: 50%;
    background:
        radial-gradient(circle at 28% 48%, color-mix(in srgb, var(--ker-institutional-accent) 58%, transparent) 0, transparent 42%),
        radial-gradient(circle at 70% 42%, color-mix(in srgb, var(--ker-institutional-accent) 38%, #34b9ff 20%) 0, transparent 46%),
        radial-gradient(circle at 52% 68%, rgba(255,75,151,.16), transparent 45%);
    transform: translate(-50%, -50%) scale(1.16);
    filter: blur(62px) saturate(138%);
    opacity: .78;
}
.ker-institutional-hero__inner {
    position: relative;
    z-index: 3;
    width: min(1040px, 100%);
    padding-top: 50px;
    padding-bottom: 88px;
    text-align: center;
}
.ker-institutional-eyebrow,
.ker-institutional-partner__level {
    display: inline-block;
    color: rgba(255,255,255,.68);
    font-size: 11px;
    font-weight: 820;
    letter-spacing: .22em;
    text-transform: uppercase;
}
.ker-institutional-hero h1 {
    max-width: 950px;
    margin: 22px auto 20px;
    font-size: clamp(52px, 7.1vw, 112px);
    font-weight: 470;
    letter-spacing: -.058em;
    line-height: .87;
    text-wrap: balance;
    text-shadow: 0 18px 65px rgba(0,0,0,.65);
}
.ker-institutional-hero p {
    max-width: 720px;
    margin: 0 auto;
    color: rgba(255,255,255,.72);
    font-size: clamp(16px, 1.35vw, 20px);
    line-height: 1.7;
    text-wrap: balance;
}
.ker-institutional-hero__cta {
    margin-top: 36px;
    min-height: 48px;
    display: inline-flex;
    gap: 16px;
    align-items: center;
    padding: 0 22px;
    border: 1px solid rgba(255,255,255,.22);
    color: #fff;
    background: rgba(15,15,22,.42);
    font-size: 11px;
    font-weight: 820;
    letter-spacing: .14em;
    text-decoration: none;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
    transition: border-color .2s ease, background .2s ease, transform .2s ease;
}
.ker-institutional-hero__cta:hover {
    border-color: color-mix(in srgb, var(--ker-institutional-accent) 62%, white 30%);
    background: color-mix(in srgb, var(--ker-institutional-accent) 13%, rgba(15,15,22,.62));
    transform: translateY(-2px);
}

.ker-institutional-partners {
    position: relative;
    z-index: 2;
}
.ker-institutional-partner {
    --ker-sponsor-accent: #7c3aed;
    position: relative;
    min-height: 760px;
    display: grid;
    align-items: center;
    overflow: hidden;
    scroll-margin-top: 100px;
    border-top: 1px solid rgba(255,255,255,.045);
}
.ker-institutional-partner__ambient {
    position: absolute;
    left: 50%;
    top: 50%;
    width: min(1160px, 92vw);
    height: min(760px, 78vw);
    transform: translate(-50%, -50%);
    background:
        radial-gradient(circle at 34% 48%, color-mix(in srgb, var(--ker-sponsor-accent) 54%, transparent), transparent 38%),
        radial-gradient(circle at 68% 54%, color-mix(in srgb, var(--ker-sponsor-accent) 28%, #4f7dff 16%), transparent 44%);
    filter: blur(75px) saturate(148%);
    opacity: .58;
    pointer-events: none;
}
.ker-institutional-partner:nth-child(even) .ker-institutional-partner__ambient {
    transform: translate(-50%, -50%) scaleX(-1);
}
.ker-institutional-partner__grid {
    position: absolute;
    inset: 7% 2%;
    opacity: .18;
    background-image:
        linear-gradient(rgba(255,255,255,.11) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.11) 1px, transparent 1px);
    background-size: 78px 78px;
    mask-image: radial-gradient(ellipse at center, #000 28%, transparent 78%);
}
.ker-institutional-partner__inner {
    position: relative;
    z-index: 3;
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
    gap: clamp(34px, 5vw, 92px);
    align-items: center;
    padding-top: 100px;
    padding-bottom: 100px;
}
.ker-institutional-partner:nth-child(even) .ker-institutional-partner__visual { order: 2; }
.ker-institutional-partner:nth-child(even) .ker-institutional-partner__content { order: 1; }

.ker-institutional-partner__logo-stage {
    position: relative;
    width: min(100%, 580px);
    aspect-ratio: 1.06;
    margin-inline: auto;
    display: grid;
    place-items: center;
    padding: clamp(48px, 7vw, 92px);
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.09);
    background:
        radial-gradient(circle at 50% 44%, color-mix(in srgb, var(--ker-sponsor-accent) 22%, transparent), transparent 50%),
        linear-gradient(145deg, rgba(255,255,255,.065), rgba(255,255,255,.018));
    box-shadow:
        0 42px 105px rgba(0,0,0,.42),
        0 0 70px color-mix(in srgb, var(--ker-sponsor-accent) 11%, transparent),
        inset 0 1px rgba(255,255,255,.05);
    backdrop-filter: blur(22px) saturate(120%);
}
.ker-institutional-partner__logo-stage::after {
    content: '';
    position: absolute;
    inset: 0;
    opacity: .28;
    background-image:
        linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px);
    background-size: 46px 46px;
    pointer-events: none;
}
.ker-institutional-partner__logo {
    position: relative;
    z-index: 3;
    width: 100%;
    max-width: 400px;
    max-height: 270px;
    display: block;
    object-fit: contain;
    filter: drop-shadow(0 18px 36px rgba(0,0,0,.42));
}
.ker-institutional-partner__logo-fallback {
    position: relative;
    z-index: 3;
    font-size: clamp(32px, 4vw, 64px);
    line-height: 1;
    text-align: center;
}
.ker-institutional-corner {
    position: absolute;
    z-index: 5;
    width: 14px;
    height: 14px;
    border-color: color-mix(in srgb, var(--ker-sponsor-accent) 62%, white 24%);
    opacity: .78;
}
.ker-institutional-corner--tl { left: -1px; top: -1px; border-left: 1px solid; border-top: 1px solid; }
.ker-institutional-corner--tr { right: -1px; top: -1px; border-right: 1px solid; border-top: 1px solid; }
.ker-institutional-corner--bl { left: -1px; bottom: -1px; border-left: 1px solid; border-bottom: 1px solid; }
.ker-institutional-corner--br { right: -1px; bottom: -1px; border-right: 1px solid; border-bottom: 1px solid; }

.ker-institutional-partner__content {
    position: relative;
    padding: clamp(34px, 4vw, 62px);
    border: 1px solid rgba(255,255,255,.085);
    background: linear-gradient(145deg, rgba(22,23,31,.81), rgba(13,14,19,.66));
    box-shadow: 0 36px 90px rgba(0,0,0,.36), inset 0 1px rgba(255,255,255,.045);
    backdrop-filter: blur(24px) saturate(118%);
}
.ker-institutional-partner__content::before,
.ker-institutional-partner__content::after {
    content: '';
    position: absolute;
    height: 1px;
    left: 12%;
    right: 12%;
    background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--ker-sponsor-accent) 54%, white 10%), transparent);
    opacity: .3;
}
.ker-institutional-partner__content::before { top: 0; }
.ker-institutional-partner__content::after { bottom: 0; }
.ker-institutional-partner__level {
    color: color-mix(in srgb, var(--ker-sponsor-accent) 78%, white 36%);
}
.ker-institutional-partner__content h2 {
    margin: 16px 0 24px;
    color: #fff;
    font-size: clamp(38px, 5vw, 72px);
    font-weight: 560;
    letter-spacing: -.045em;
    line-height: .98;
    text-wrap: balance;
}
.ker-institutional-partner__description {
    color: rgba(255,255,255,.75);
    font-size: clamp(15px, 1.15vw, 18px);
    line-height: 1.72;
}
.ker-institutional-partner__description p { margin: 0 0 1em; }
.ker-institutional-partner__description p:last-child { margin-bottom: 0; }
.ker-institutional-partner__socials {
    margin-top: 32px;
    padding-top: 26px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    border-top: 1px solid rgba(255,255,255,.075);
}
.ker-institutional-social {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 50%;
    color: #fff;
    background: rgba(255,255,255,.025);
    text-decoration: none;
    transition: transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.ker-institutional-social:hover,
.ker-institutional-social:focus-visible {
    transform: translateY(-2px);
    border-color: color-mix(in srgb, var(--ker-sponsor-accent) 66%, white 28%);
    background: color-mix(in srgb, var(--ker-sponsor-accent) 14%, rgba(255,255,255,.03));
    box-shadow: 0 8px 28px color-mix(in srgb, var(--ker-sponsor-accent) 18%, transparent);
}
.ker-institutional-social svg,
.ker-institutional-social img {
    width: 22px;
    height: 22px;
    display: block;
    object-fit: contain;
}
.ker-institutional-empty {
    max-width: 720px;
    margin: 0 auto;
    padding: 140px 24px 180px;
    text-align: center;
}
.ker-institutional-empty > span {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .22em;
    color: rgba(255,255,255,.55);
}
.ker-institutional-empty h2 {
    margin: 16px 0;
    font-size: clamp(48px, 7vw, 90px);
}
.ker-institutional-empty p { color: rgba(255,255,255,.65); }

@media (max-width: 900px) {
    .ker-institutional-subnav {
        --ker-institutional-header-offset: 66px;
        top: calc(var(--ker-institutional-header-offset) + 8px);
        margin-top: 12px;
    }
    .ker-institutional-subnav__inner {
        width: calc(100% - 28px);
        min-height: 62px;
        grid-template-columns: 110px minmax(0, 1fr);
    }
    .ker-institutional-subnav__brand { padding: 10px 14px; }
    .ker-institutional-subnav__logo-image { max-width: 82px; max-height: 34px; }
    .ker-institutional-subnav__brand-fallback { font-size: 9px; letter-spacing: .12em; }
    .ker-institutional-subnav__links a {
        padding: 0 24px;
        font-size: 9px;
        letter-spacing: .12em;
    }
    .ker-institutional-hero { min-height: 590px; }
    .ker-institutional-hero__inner { padding-top: 58px; padding-bottom: 84px; }
    .ker-institutional-hero h1 { font-size: clamp(48px, 13vw, 78px); }
    .ker-institutional-hero p { max-width: 560px; font-size: 15px; }

    .ker-institutional-partner { min-height: auto; scroll-margin-top: 80px; }
    .ker-institutional-partner__inner {
        grid-template-columns: 1fr;
        gap: 28px;
        padding-top: 68px;
        padding-bottom: 76px;
    }
    .ker-institutional-partner:nth-child(even) .ker-institutional-partner__visual,
    .ker-institutional-partner:nth-child(even) .ker-institutional-partner__content { order: initial; }
    .ker-institutional-partner__logo-stage {
        width: min(100%, 520px);
        aspect-ratio: 1.25;
        padding: 52px;
    }
    .ker-institutional-partner__logo { max-height: 200px; }
    .ker-institutional-partner__content {
        width: min(100%, 620px);
        margin: 0 auto;
        padding: 30px;
    }
    .ker-institutional-partner__content h2 { font-size: clamp(38px, 10vw, 58px); }
}

@media (max-width: 560px) {
    .ker-institutional-subnav__inner { width: calc(100% - 20px); grid-template-columns: 92px minmax(0, 1fr); }
    .ker-institutional-subnav__links a { padding: 0 18px; }
    .ker-institutional-hero { min-height: 540px; }
    .ker-institutional-hero::before { background-size: 46px 46px; }
    .ker-institutional-hero__inner { padding-inline: 22px; }
    .ker-institutional-hero h1 { font-size: clamp(44px, 15vw, 64px); line-height: .91; }
    .ker-institutional-hero p { font-size: 14px; line-height: 1.65; }
    .ker-institutional-hero__cta { margin-top: 28px; }
    .ker-institutional-partner__grid { inset-inline: -20%; background-size: 48px 48px; }
    .ker-institutional-partner__inner { padding-inline: 18px; padding-top: 54px; padding-bottom: 64px; }
    .ker-institutional-partner__logo-stage { aspect-ratio: 1.18; padding: 38px; }
    .ker-institutional-partner__content { padding: 26px 22px; }
    .ker-institutional-partner__content h2 { margin: 12px 0 20px; }
    .ker-institutional-partner__description { font-size: 14px; }
    .ker-institutional-partner__socials { margin-top: 24px; padding-top: 20px; }
    .ker-institutional-social { width: 44px; height: 44px; }
    .ker-institutional-social svg,
    .ker-institutional-social img { width: 20px; height: 20px; }
}

@media (prefers-reduced-motion: reduce) {
    .ker-institutional * { scroll-behavior: auto !important; transition: none !important; }
}

/* =========================================================
   KER Theme 1.6.26 — Eventos / archive premium redesign
   ========================================================= */

.ker-events-archive-hero {
    position: relative;
    isolation: isolate;
    min-height: 430px;
    overflow: hidden;
    display: flex;
    align-items: end;
    padding: 116px 0 64px;
    border-bottom: 1px solid rgba(255, 255, 255, .075);
    background:
        radial-gradient(circle at 73% 28%, rgba(35, 192, 101, .16), transparent 30rem),
        radial-gradient(circle at 18% 80%, rgba(93, 35, 64, .22), transparent 34rem),
        linear-gradient(112deg, #10090c 0%, #0b0b0f 54%, #08110d 100%);
}

.ker-events-archive-hero.has-featured-image::before {
    content: "";
    position: absolute;
    inset: 0 0 0 47%;
    z-index: -3;
    background-image: var(--ker-events-hero-image);
    background-position: center;
    background-size: cover;
    opacity: .22;
    filter: saturate(.72) contrast(1.08);
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 28%, #000 100%);
    mask-image: linear-gradient(90deg, transparent 0%, #000 28%, #000 100%);
}

.ker-events-archive-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    pointer-events: none;
    background:
        linear-gradient(90deg, rgba(16, 9, 12, .97) 0%, rgba(16, 9, 12, .82) 39%, rgba(16, 9, 12, .28) 72%, rgba(16, 9, 12, .62) 100%),
        linear-gradient(0deg, #10090c 0%, transparent 34%);
}

.ker-events-hero-noise {
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    opacity: .16;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.17'/%3E%3C/svg%3E");
}

.ker-events-archive-hero__inner {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 44px;
}

.ker-events-archive-hero__copy {
    max-width: 780px;
}

.ker-events-archive-hero .ker-public-kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #74ef9e;
    font-size: .7rem;
    letter-spacing: .22em;
}

.ker-events-archive-hero .ker-public-kicker::before {
    content: "";
    width: 34px;
    height: 1px;
    background: currentColor;
    box-shadow: 0 0 16px rgba(116, 239, 158, .75);
}

.ker-events-archive-hero h1 {
    margin: 13px 0 14px;
    font-size: clamp(4.5rem, 8vw, 7.4rem);
    line-height: .82;
    letter-spacing: -.075em;
    text-shadow: 0 20px 52px rgba(0, 0, 0, .36);
}

.ker-events-archive-hero p {
    max-width: 630px;
    margin: 0;
    color: rgba(229, 233, 237, .7);
    font-size: clamp(.96rem, 1.5vw, 1.08rem);
    line-height: 1.65;
}

.ker-events-archive-hero__summary {
    flex: 0 0 auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(115px, 1fr));
    gap: 1px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 18px;
    background: rgba(255, 255, 255, .07);
    box-shadow: 0 22px 58px rgba(0, 0, 0, .28);
    -webkit-backdrop-filter: blur(18px) saturate(130%);
    backdrop-filter: blur(18px) saturate(130%);
}

.ker-events-archive-hero__summary > div {
    min-width: 124px;
    padding: 17px 20px 16px;
    background: rgba(11, 10, 13, .68);
}

.ker-events-archive-hero__summary span,
.ker-events-season__heading span {
    display: block;
    color: #7f8992;
    font-size: .63rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .16em;
}

.ker-events-archive-hero__summary strong {
    display: block;
    margin-top: 3px;
    color: #fff;
    font-size: 1.42rem;
    line-height: 1;
    letter-spacing: -.04em;
}

.ker-events-archive {
    position: relative;
    overflow: hidden;
    padding: 68px 0 96px;
    background:
        radial-gradient(circle at 12% 18%, rgba(62, 25, 44, .18), transparent 31rem),
        radial-gradient(circle at 92% 64%, rgba(var(--ker-accent-rgb), .07), transparent 30rem),
        #10090c;
}

.ker-events-archive::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .28;
    background-image:
        linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
    background-size: 48px 48px;
    -webkit-mask-image: linear-gradient(180deg, #000, transparent 70%);
    mask-image: linear-gradient(180deg, #000, transparent 70%);
}

.ker-events-archive > .ker-container {
    position: relative;
    z-index: 1;
}

.ker-events-season + .ker-events-season {
    margin-top: 64px;
}

.ker-events-season__heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 22px;
    padding-bottom: 15px;
    border-bottom: 1px solid rgba(255, 255, 255, .075);
}

.ker-events-season__heading > div {
    display: flex;
    align-items: baseline;
    gap: 10px;
}

.ker-events-season__heading strong {
    color: #fff;
    font-size: 1.55rem;
    line-height: 1;
    letter-spacing: -.04em;
}

.ker-events-season__heading small {
    color: #69737c;
    font-size: .72rem;
    font-weight: 750;
}

.ker-events-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.ker-event-archive-card {
    position: relative;
    isolation: isolate;
    min-height: 390px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 24px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 24px;
    color: #fff;
    background:
        radial-gradient(circle at 72% 20%, rgba(35, 192, 101, .18), transparent 19rem),
        linear-gradient(145deg, #151117, #090d0d);
    box-shadow:
        0 24px 62px rgba(0, 0, 0, .26),
        inset 0 1px 0 rgba(255, 255, 255, .035);
    text-decoration: none;
    transform: translateZ(0);
    transition: transform .28s cubic-bezier(.2,.7,.2,1), border-color .28s ease, box-shadow .28s ease;
}

.ker-event-archive-card__media {
    position: absolute;
    inset: 0;
    z-index: -4;
    background:
        radial-gradient(circle at 74% 20%, rgba(var(--ker-accent-rgb), .18), transparent 19rem),
        linear-gradient(145deg, #151117, #090d0d);
}

.ker-event-archive-card.has-image .ker-event-archive-card__media {
    background-image: var(--ker-event-card-image);
    background-position: center;
    background-size: cover;
    filter: saturate(.84) contrast(1.04);
    transform: scale(1.001);
    transition: transform .55s cubic-bezier(.2,.7,.2,1), filter .35s ease;
}

.ker-event-archive-card__shade {
    position: absolute;
    inset: 0;
    z-index: -3;
    background:
        linear-gradient(180deg, rgba(8, 8, 10, .24) 0%, rgba(8, 8, 10, .18) 32%, rgba(8, 8, 10, .82) 72%, rgba(8, 8, 10, .98) 100%),
        linear-gradient(90deg, rgba(8, 8, 10, .5), transparent 63%);
}

.ker-event-archive-card__glow {
    position: absolute;
    inset: auto -18% -48% 28%;
    z-index: -2;
    height: 68%;
    border-radius: 50%;
    background: rgba(44, 203, 106, .12);
    filter: blur(58px);
    opacity: .8;
    transition: opacity .3s ease, transform .3s ease;
}

.ker-event-archive-card::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    border-radius: inherit;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .015);
}

.ker-event-archive-card:hover {
    transform: translateY(-6px);
    border-color: rgba(91, 230, 143, .42);
    box-shadow:
        0 30px 78px rgba(0, 0, 0, .34),
        0 0 0 1px rgba(91, 230, 143, .07),
        0 0 42px rgba(var(--ker-accent-rgb), .07);
}

.ker-event-archive-card.has-image:hover .ker-event-archive-card__media {
    transform: scale(1.035);
    filter: saturate(.96) contrast(1.07);
}

.ker-event-archive-card:hover .ker-event-archive-card__glow {
    opacity: 1;
    transform: translateY(-6%);
}

.ker-event-archive-card__top,
.ker-event-archive-card__content,
.ker-event-archive-card__cta {
    position: relative;
    z-index: 2;
}

.ker-event-archive-card__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.ker-event-archive-card__date,
.ker-event-archive-card__status {
    display: inline-flex;
    min-height: 30px;
    align-items: center;
    padding: 0 11px;
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 999px;
    color: rgba(255, 255, 255, .82);
    background: rgba(8, 9, 10, .47);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
    font-size: .62rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.ker-event-archive-card__status {
    color: #a7b0b7;
}

.ker-event-archive-card__status.is-upcoming {
    border-color: rgba(78, 229, 137, .28);
    color: #77eba2;
    background: rgba(15, 82, 42, .26);
}

.ker-event-archive-card__content {
    margin-top: auto;
    padding-top: 94px;
}

.ker-event-archive-card__index {
    display: block;
    margin-bottom: 8px;
    color: rgba(114, 238, 158, .88);
    font-size: .68rem;
    font-weight: 950;
    letter-spacing: .18em;
}

.ker-event-archive-card h2 {
    max-width: 540px;
    margin: 0;
    font-size: clamp(2.15rem, 3.2vw, 3.4rem);
    line-height: .93;
    letter-spacing: -.055em;
    text-wrap: balance;
}

.ker-event-archive-card p {
    display: flex;
    align-items: center;
    gap: 7px;
    margin: 13px 0 0;
    color: rgba(232, 237, 241, .72);
    font-size: .78rem;
    font-weight: 650;
}

.ker-event-archive-card p svg {
    width: 15px;
    height: 15px;
    flex: 0 0 15px;
    color: #70dc96;
}

.ker-event-archive-card__cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 25px;
    padding-top: 17px;
    border-top: 1px solid rgba(255, 255, 255, .09);
    color: #eef3f6;
    font-size: .74rem;
    font-weight: 900;
    letter-spacing: .02em;
}

.ker-event-archive-card__arrow {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 50%;
    background: rgba(255, 255, 255, .055);
    font-size: 1.05rem;
    transition: transform .25s ease, background .25s ease, border-color .25s ease;
}

.ker-event-archive-card:hover .ker-event-archive-card__arrow {
    transform: rotate(8deg) translate(2px, -2px);
    border-color: rgba(98, 229, 145, .4);
    background: rgba(var(--ker-accent-rgb), .18);
}

@media (max-width: 980px) {
    .ker-events-archive-hero {
        min-height: 390px;
        padding: 104px 0 54px;
    }

    .ker-events-archive-hero__inner {
        align-items: flex-end;
        gap: 28px;
    }

    .ker-events-archive-hero__summary {
        grid-template-columns: 1fr;
    }

    .ker-events-archive-hero__summary > div {
        min-width: 112px;
        padding: 13px 16px;
    }

    .ker-event-archive-card {
        min-height: 340px;
    }
}

@media (max-width: 760px) {
    .ker-events-archive-hero {
        min-height: 360px;
        padding: 92px 0 42px;
        align-items: end;
    }

    .ker-events-archive-hero.has-featured-image::before {
        inset: 0;
        opacity: .19;
        -webkit-mask-image: none;
        mask-image: none;
    }

    .ker-events-archive-hero::after {
        background:
            linear-gradient(180deg, rgba(16,9,12,.66) 0%, rgba(16,9,12,.7) 32%, rgba(16,9,12,.94) 76%, #10090c 100%);
    }

    .ker-events-archive-hero__inner {
        display: block;
    }

    .ker-events-archive-hero h1 {
        margin-top: 10px;
        font-size: clamp(3.7rem, 18vw, 5.3rem);
    }

    .ker-events-archive-hero p {
        max-width: 520px;
        font-size: .9rem;
        line-height: 1.55;
    }

    .ker-events-archive-hero__summary {
        width: fit-content;
        grid-template-columns: repeat(2, minmax(92px, 1fr));
        margin-top: 26px;
    }

    .ker-events-archive {
        padding: 42px 0 70px;
    }

    .ker-events-season__heading {
        align-items: center;
        margin-bottom: 15px;
    }

    .ker-events-season__heading small {
        display: none;
    }

    .ker-events-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .ker-event-archive-card {
        min-height: 330px;
        padding: 18px;
        border-radius: 20px;
    }

    .ker-event-archive-card__content {
        padding-top: 78px;
    }

    .ker-event-archive-card h2 {
        font-size: clamp(2rem, 10.5vw, 3rem);
    }

    .ker-event-archive-card__date,
    .ker-event-archive-card__status {
        min-height: 27px;
        padding: 0 9px;
        font-size: .56rem;
    }

    .ker-event-archive-card__cta {
        margin-top: 19px;
        padding-top: 14px;
    }
}

@media (max-width: 430px) {
    .ker-events-archive-hero__summary {
        width: 100%;
    }

    .ker-events-archive-hero__summary > div {
        min-width: 0;
    }

    .ker-event-archive-card__status {
        max-width: 118px;
        justify-content: center;
        text-align: center;
        line-height: 1.05;
    }
}


/* =========================================================
   KER Theme 1.6.27 — Dropdown desktop em vidro fosco
   ========================================================= */
@media (min-width: 761px) {
    .ker-nav__events,
    .ker-nav .menu-item-has-children {
        position: relative;
    }

    .ker-nav__events > .ker-nav__submenu,
    .ker-nav .menu-item-has-children > .sub-menu {
        position: absolute;
        top: calc(100% + 14px);
        left: 50%;
        z-index: 9999;
        width: min(310px, 88vw);
        min-width: 260px;
        display: grid;
        gap: 5px;
        margin: 0;
        padding: 10px;
        list-style: none;
        overflow: hidden;
        border: 1px solid rgba(255, 255, 255, .12);
        border-radius: 18px;
        background:
            linear-gradient(145deg, rgba(27, 31, 37, .60), rgba(8, 12, 17, .72)),
            rgba(10, 14, 19, .58);
        box-shadow:
            0 24px 70px rgba(0, 0, 0, .48),
            inset 0 1px 0 rgba(255, 255, 255, .07),
            0 0 0 1px rgba(var(--ker-accent-rgb), .025);
        -webkit-backdrop-filter: blur(26px) saturate(145%);
        backdrop-filter: blur(26px) saturate(145%);
        opacity: 0;
        visibility: hidden;
        transform: translate(-50%, 10px) scale(.985);
        transform-origin: top center;
        transition:
            opacity .18s ease,
            transform .18s ease,
            visibility .18s ease;
    }

    .ker-nav__events > .ker-nav__submenu::before,
    .ker-nav .menu-item-has-children > .sub-menu::before {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        background:
            radial-gradient(circle at 18% 0%, rgba(255,255,255,.09), transparent 42%),
            radial-gradient(circle at 88% 100%, rgba(var(--ker-accent-rgb),.08), transparent 44%);
        opacity: .9;
    }

    .ker-nav__events:hover > .ker-nav__submenu,
    .ker-nav__events:focus-within > .ker-nav__submenu,
    .ker-nav .menu-item-has-children:hover > .sub-menu,
    .ker-nav .menu-item-has-children:focus-within > .sub-menu {
        opacity: 1;
        visibility: visible;
        transform: translate(-50%, 0) scale(1);
    }

    .ker-nav__submenu > li,
    .ker-nav .sub-menu > li {
        position: relative;
        z-index: 1;
        margin: 0;
    }

    .ker-nav__submenu a,
    .ker-nav .sub-menu a {
        width: 100%;
        min-height: 48px;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
        gap: 16px;
        padding: 10px 12px !important;
        border: 1px solid transparent;
        border-radius: 12px;
        color: rgba(248, 250, 252, .92) !important;
        background: transparent;
        text-decoration: none;
        box-shadow: none;
        transition:
            background .16s ease,
            border-color .16s ease,
            transform .16s ease,
            color .16s ease;
    }

    .ker-nav__submenu a:hover,
    .ker-nav__submenu a:focus-visible,
    .ker-nav .sub-menu a:hover,
    .ker-nav .sub-menu a:focus-visible {
        color: #fff !important;
        border-color: rgba(255, 255, 255, .10);
        background: linear-gradient(90deg, rgba(255,255,255,.075), rgba(255,255,255,.035));
        transform: translateX(2px);
        outline: none;
    }

    .ker-nav__submenu-title,
    .ker-nav .sub-menu a > span:first-child {
        min-width: 0;
        font-size: .82rem;
        font-weight: 760;
        line-height: 1.25;
        letter-spacing: -.012em;
        overflow-wrap: anywhere;
    }

    .ker-nav__submenu small,
    .ker-nav .sub-menu small {
        justify-self: end;
        color: rgba(194, 204, 214, .58);
        font-size: .64rem;
        font-weight: 820;
        letter-spacing: .06em;
        white-space: nowrap;
    }
}


/* =========================================================
   KER Theme 1.6.28 — Dropdown igual ao cabeçalho + Home cinematográfica
   ========================================================= */

/* Dropdown desktop: mesma matéria visual do cabeçalho. */
@media (min-width: 761px) {
    .ker-nav__events > .ker-nav__submenu,
    .ker-nav .menu-item-has-children > .sub-menu {
        top: calc(100% + 10px);
        padding: 8px;
        overflow: hidden;
        border: 1px solid rgba(255,255,255,.075);
        border-radius: 16px;
        background: rgba(8, 11, 15, .90) !important;
        box-shadow: 0 20px 55px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.035);
        -webkit-backdrop-filter: blur(18px) saturate(115%) !important;
        backdrop-filter: blur(18px) saturate(115%) !important;
    }

    body.ker-home-surface .ker-nav__events > .ker-nav__submenu,
    body.ker-home-surface .ker-nav .menu-item-has-children > .sub-menu {
        background: rgba(16, 9, 12, .72) !important;
        -webkit-backdrop-filter: blur(22px) saturate(130%) !important;
        backdrop-filter: blur(22px) saturate(130%) !important;
    }

    .ker-nav__events > .ker-nav__submenu::before,
    .ker-nav .menu-item-has-children > .sub-menu::before {
        display: none !important;
    }

    .ker-nav__submenu a,
    .ker-nav .sub-menu a {
        min-height: 46px;
        border-radius: 10px;
    }

    .ker-nav__submenu a:hover,
    .ker-nav__submenu a:focus-visible,
    .ker-nav .sub-menu a:hover,
    .ker-nav .sub-menu a:focus-visible {
        border-color: rgba(255,255,255,.07);
        background: rgba(255,255,255,.055);
        transform: none;
    }
}

/* Home: remove linhas de divisão e cria blocos editoriais cinematográficos. */
body.ker-home-surface .ker-home-feature,
body.ker-home-surface .ker-home-feature + .ker-home-feature,
body.ker-home-surface .ker-footer--modern,
body.ker-home-surface .ker-home-cta {
    border-top: 0 !important;
}

body.ker-home-surface .ker-home-feature {
    padding: clamp(34px, 5vw, 72px) 0;
    background: #10090C;
}

body.ker-home-surface .ker-home-feature:first-of-type {
    padding-top: clamp(54px, 7vw, 96px);
}

body.ker-home-surface .ker-home-feature:last-child {
    padding-bottom: clamp(72px, 8vw, 120px);
}

body.ker-home-surface .ker-home-feature__panel {
    position: relative;
    isolation: isolate;
    min-height: clamp(480px, 43vw, 630px);
    overflow: hidden;
    display: flex;
    align-items: center;
    border-radius: 20px;
    background: #09090b;
    box-shadow: 0 28px 80px rgba(0,0,0,.23);
}

body.ker-home-surface .ker-home-feature__media {
    position: absolute;
    z-index: -2;
    inset: 0;
    width: 100%;
    height: 100%;
    min-height: 0;
    margin: 0;
    overflow: hidden;
    border: 0;
    border-radius: inherit;
    background: #09090b;
}

body.ker-home-surface .ker-home-feature__media::before {
    display: none;
}

body.ker-home-surface .ker-home-feature__media img {
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: cover;
    object-position: center;
    filter: saturate(.92) contrast(1.04) brightness(.90);
    transform: scale(1.005);
}

body.ker-home-surface .ker-home-feature__panel:hover .ker-home-feature__media img {
    transform: scale(1.025);
}

body.ker-home-surface .ker-home-feature__media-shade {
    position: absolute;
    z-index: 1;
    inset: 0;
    background:
        linear-gradient(90deg,
            rgba(10,7,9,.98) 0%,
            rgba(10,7,9,.94) 23%,
            rgba(10,7,9,.78) 42%,
            rgba(10,7,9,.31) 64%,
            rgba(10,7,9,.08) 82%,
            rgba(10,7,9,.16) 100%),
        linear-gradient(180deg, rgba(10,7,9,.10) 0%, rgba(10,7,9,.06) 55%, rgba(16,9,12,.76) 100%);
    pointer-events: none;
}

body.ker-home-surface .ker-home-feature__copy,
body.ker-home-surface .ker-home-feature--reverse .ker-home-feature__copy {
    position: relative;
    z-index: 3;
    width: min(52%, 660px);
    max-width: none;
    justify-self: auto;
    padding: clamp(42px, 6vw, 82px);
}

body.ker-home-surface .ker-home-feature h2 {
    max-width: 620px;
    margin: 0 0 24px;
    font-size: clamp(3rem, 5.2vw, 6rem);
    line-height: .87;
    letter-spacing: -.066em;
    text-wrap: balance;
    text-shadow: 0 8px 35px rgba(0,0,0,.32);
}

body.ker-home-surface .ker-home-feature__body {
    max-width: 560px;
    gap: 13px;
}

body.ker-home-surface .ker-home-feature__body p {
    color: rgba(244,246,248,.72);
    font-size: clamp(.88rem, 1vw, 1rem);
    line-height: 1.62;
    text-shadow: 0 2px 18px rgba(0,0,0,.58);
}

@media (max-width: 980px) {
    body.ker-home-surface .ker-home-feature__panel {
        min-height: 560px;
    }

    body.ker-home-surface .ker-home-feature__copy,
    body.ker-home-surface .ker-home-feature--reverse .ker-home-feature__copy {
        width: min(70%, 650px);
        padding: 52px;
    }
}

@media (max-width: 760px) {
    body.ker-home-surface .ker-home-feature {
        padding: 22px 0;
    }

    body.ker-home-surface .ker-home-feature:first-of-type {
        padding-top: 36px;
    }

    body.ker-home-surface .ker-home-feature:last-child {
        padding-bottom: 70px;
    }

    body.ker-home-surface .ker-home-feature__panel {
        min-height: 620px;
        align-items: flex-end;
        border-radius: 16px;
    }

    body.ker-home-surface .ker-home-feature__media img {
        object-position: center top;
    }

    body.ker-home-surface .ker-home-feature__media-shade {
        background:
            linear-gradient(180deg,
                rgba(16,9,12,.03) 0%,
                rgba(16,9,12,.10) 28%,
                rgba(16,9,12,.58) 52%,
                rgba(16,9,12,.94) 72%,
                #10090C 100%),
            linear-gradient(90deg, rgba(16,9,12,.22), rgba(16,9,12,.05));
    }

    body.ker-home-surface .ker-home-feature__copy,
    body.ker-home-surface .ker-home-feature--reverse .ker-home-feature__copy {
        width: 100%;
        padding: 32px 26px 34px;
    }

    body.ker-home-surface .ker-home-feature h2 {
        margin-bottom: 18px;
        font-size: clamp(2.55rem, 12vw, 4.1rem);
        line-height: .91;
    }

    body.ker-home-surface .ker-home-feature__body p {
        font-size: .86rem;
        line-height: 1.56;
    }
}

@media (max-width: 440px) {
    body.ker-home-surface .ker-home-feature__panel {
        min-height: 580px;
    }

    body.ker-home-surface .ker-home-feature__copy,
    body.ker-home-surface .ker-home-feature--reverse .ker-home-feature__copy {
        padding: 28px 22px 30px;
    }
}


/* =========================================================
   KER Theme 1.6.29 — Institucional / refinamento Tomorrowland
   Sobreposição dos painéis, quinas técnicas, subnav em vidro
   e grain animado. Sem assets de terceiros.
   ========================================================= */

/* A página deve parecer uma superfície contínua, sem linhas entre seções. */
.ker-institutional-hero,
.ker-institutional-partners,
.ker-institutional-partner {
    border-top: 0 !important;
    border-bottom: 0 !important;
}

/* Grain animado global — movimento curto/irregular para lembrar película. */
.ker-institutional__grain {
    position: fixed;
    z-index: 18;
    inset: -45%;
    width: 190%;
    height: 190%;
    opacity: .115;
    background-size: 190px 190px;
    animation: kerInstitutionalGrain .34s steps(2, end) infinite;
    will-change: transform;
}
@keyframes kerInstitutionalGrain {
    0%   { transform: translate3d(-2%,  1%, 0); }
    20%  { transform: translate3d( 1%, -2%, 0); }
    40%  { transform: translate3d(-1%,  2%, 0); }
    60%  { transform: translate3d( 2%,  1%, 0); }
    80%  { transform: translate3d( 1%, -1%, 0); }
    100% { transform: translate3d(-2%,  1%, 0); }
}

/* Segundo cabeçalho: um único painel de vidro, sem divisória entre logo e links. */
.ker-institutional-subnav__inner {
    position: relative;
    border-color: rgba(255,255,255,.105);
    background:
        linear-gradient(180deg, rgba(22,21,29,.60), rgba(12,12,18,.52));
    box-shadow:
        0 22px 64px rgba(0,0,0,.32),
        inset 0 1px 0 rgba(255,255,255,.045),
        0 0 42px color-mix(in srgb, var(--ker-institutional-accent) 5%, transparent);
    backdrop-filter: blur(28px) saturate(132%);
    -webkit-backdrop-filter: blur(28px) saturate(132%);
}
.ker-institutional-subnav__inner::after {
    content: '';
    position: absolute;
    z-index: 0;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(circle at 15% 50%, color-mix(in srgb, var(--ker-institutional-accent) 8%, transparent), transparent 34%),
        linear-gradient(90deg, rgba(255,255,255,.018), transparent 28%, rgba(255,255,255,.012));
}
.ker-institutional-subnav__brand,
.ker-institutional-subnav__links {
    position: relative;
    z-index: 2;
}
.ker-institutional-subnav__brand {
    border-right: 0 !important;
}
.ker-institutional-subnav__links a {
    background: transparent !important;
    transition: color .2s ease, opacity .2s ease, text-shadow .2s ease;
}
.ker-institutional-subnav__links a:hover,
.ker-institutional-subnav__links a:focus-visible {
    color: #fff;
    background: transparent !important;
    text-shadow:
        0 0 12px rgba(255,255,255,.20),
        0 0 22px color-mix(in srgb, var(--ker-institutional-accent) 26%, transparent);
}

/* Quinas técnicas do segundo cabeçalho, no mesmo vocabulário do layout de referência. */
.ker-institutional-subnav-corner {
    position: absolute;
    z-index: 6;
    width: 15px;
    height: 15px;
    color: color-mix(in srgb, var(--ker-institutional-accent) 60%, rgba(255,255,255,.70));
    opacity: .68;
    pointer-events: none;
}
.ker-institutional-subnav-corner::before,
.ker-institutional-subnav-corner::after {
    content: '';
    position: absolute;
    background: currentColor;
    box-shadow: 0 0 8px color-mix(in srgb, var(--ker-institutional-accent) 22%, transparent);
}
.ker-institutional-subnav-corner::before { width: 11px; height: 1px; }
.ker-institutional-subnav-corner::after  { width: 1px; height: 11px; }
.ker-institutional-subnav-corner--tl { top: -4px; left: -4px; }
.ker-institutional-subnav-corner--tl::before,
.ker-institutional-subnav-corner--tl::after { top: 0; left: 0; }
.ker-institutional-subnav-corner--tr { top: -4px; right: -4px; }
.ker-institutional-subnav-corner--tr::before { top: 0; right: 0; }
.ker-institutional-subnav-corner--tr::after  { top: 0; right: 0; }
.ker-institutional-subnav-corner--bl { bottom: -4px; left: -4px; }
.ker-institutional-subnav-corner--bl::before { bottom: 0; left: 0; }
.ker-institutional-subnav-corner--bl::after  { bottom: 0; left: 0; }
.ker-institutional-subnav-corner--br { bottom: -4px; right: -4px; }
.ker-institutional-subnav-corner--br::before { bottom: 0; right: 0; }
.ker-institutional-subnav-corner--br::after  { bottom: 0; right: 0; }

/* Cards de patrocinadores: imagem/brand stage + painel de texto sobreposto. */
.ker-institutional-partner {
    min-height: 780px;
}
.ker-institutional-partner__inner {
    grid-template-columns: minmax(0, 1.03fr) minmax(0, .97fr);
    gap: 0;
    align-items: center;
    padding-top: 112px;
    padding-bottom: 112px;
}
.ker-institutional-partner__visual {
    position: relative;
    z-index: 2;
}
.ker-institutional-partner__logo-stage {
    width: min(100%, 650px);
    aspect-ratio: 1.08;
    padding: clamp(48px, 7vw, 96px);
    clip-path: polygon(17px 0, calc(100% - 17px) 0, 100% 17px, 100% calc(100% - 17px), calc(100% - 17px) 100%, 17px 100%, 0 calc(100% - 17px), 0 17px);
    border-color: rgba(255,255,255,.105);
    background:
        radial-gradient(circle at 50% 48%, color-mix(in srgb, var(--ker-sponsor-accent) 34%, transparent), transparent 52%),
        radial-gradient(circle at 20% 12%, rgba(255,255,255,.055), transparent 34%),
        linear-gradient(145deg, rgba(255,255,255,.062), rgba(255,255,255,.014));
    box-shadow:
        0 48px 120px rgba(0,0,0,.46),
        0 0 100px color-mix(in srgb, var(--ker-sponsor-accent) 16%, transparent),
        inset 0 1px rgba(255,255,255,.055);
}
.ker-institutional-partner__logo-stage::before {
    content: '';
    position: absolute;
    z-index: 1;
    inset: 10%;
    border-radius: 50%;
    background: color-mix(in srgb, var(--ker-sponsor-accent) 24%, transparent);
    filter: blur(55px);
    opacity: .72;
    pointer-events: none;
}

.ker-institutional-partner__content {
    position: relative;
    z-index: 5;
    width: calc(100% + 74px);
    margin-left: -74px;
    padding: clamp(42px, 4.6vw, 72px);
    overflow: hidden;
    clip-path: polygon(20px 0, calc(100% - 20px) 0, 100% 20px, 100% calc(100% - 20px), calc(100% - 20px) 100%, 20px 100%, 0 calc(100% - 20px), 0 20px);
    border-color: rgba(255,255,255,.115);
    background:
        linear-gradient(145deg, rgba(34,31,42,.76), rgba(13,14,20,.73)),
        color-mix(in srgb, var(--ker-sponsor-accent) 4%, transparent);
    box-shadow:
        0 42px 100px rgba(0,0,0,.48),
        0 0 80px color-mix(in srgb, var(--ker-sponsor-accent) 11%, transparent),
        inset 0 1px rgba(255,255,255,.055);
    backdrop-filter: blur(32px) saturate(128%);
    -webkit-backdrop-filter: blur(32px) saturate(128%);
}
.ker-institutional-partner:nth-child(even) .ker-institutional-partner__content {
    width: calc(100% + 74px);
    margin-left: 0;
    margin-right: -74px;
}
.ker-institutional-partner__content > * {
    position: relative;
    z-index: 3;
}
.ker-institutional-partner__content::before {
    content: '';
    position: absolute;
    z-index: 0;
    inset: -28%;
    height: auto;
    background:
        radial-gradient(circle at 24% 22%, color-mix(in srgb, var(--ker-sponsor-accent) 32%, transparent), transparent 38%),
        radial-gradient(circle at 83% 72%, color-mix(in srgb, var(--ker-sponsor-accent) 14%, #426aff 8%), transparent 36%);
    filter: blur(44px) saturate(135%);
    opacity: .70;
    pointer-events: none;
}
.ker-institutional-partner__content::after {
    content: '';
    position: absolute;
    z-index: 1;
    inset: 0;
    left: 0;
    right: 0;
    height: auto;
    opacity: .11;
    background-image:
        linear-gradient(rgba(255,255,255,.07) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.07) 1px, transparent 1px);
    background-size: 54px 54px;
    mask-image: linear-gradient(135deg, #000, transparent 75%);
    pointer-events: none;
}

/* Quinas do painel de descrição mais longas e luminosas. */
.ker-institutional-partner__content .ker-institutional-corner,
.ker-institutional-partner__logo-stage .ker-institutional-corner {
    z-index: 7;
    width: 20px;
    height: 20px;
    opacity: .86;
    filter: drop-shadow(0 0 5px color-mix(in srgb, var(--ker-sponsor-accent) 28%, transparent));
}

/* O brilho de fundo deixa cada patrocinador com uma assinatura de cor mais forte. */
.ker-institutional-partner__ambient {
    opacity: .72;
    filter: blur(86px) saturate(162%);
}

@media (max-width: 900px) {
    .ker-institutional-partner__inner {
        grid-template-columns: 1fr;
        gap: 0;
        padding-top: 76px;
        padding-bottom: 84px;
    }
    .ker-institutional-partner:nth-child(even) .ker-institutional-partner__visual,
    .ker-institutional-partner:nth-child(even) .ker-institutional-partner__content {
        order: initial;
    }
    .ker-institutional-partner__content,
    .ker-institutional-partner:nth-child(even) .ker-institutional-partner__content {
        width: min(calc(100% - 28px), 650px);
        margin: -42px auto 0;
        padding: 34px 30px;
    }
    .ker-institutional-partner__logo-stage {
        width: min(100%, 600px);
    }
}

@media (max-width: 560px) {
    .ker-institutional-subnav__inner {
        backdrop-filter: blur(24px) saturate(128%);
        -webkit-backdrop-filter: blur(24px) saturate(128%);
    }
    .ker-institutional-subnav-corner {
        width: 12px;
        height: 12px;
    }
    .ker-institutional-partner__inner {
        padding-top: 56px;
        padding-bottom: 68px;
    }
    .ker-institutional-partner__content,
    .ker-institutional-partner:nth-child(even) .ker-institutional-partner__content {
        width: calc(100% - 14px);
        margin-top: -30px;
        padding: 28px 22px;
        clip-path: polygon(14px 0, calc(100% - 14px) 0, 100% 14px, 100% calc(100% - 14px), calc(100% - 14px) 100%, 14px 100%, 0 calc(100% - 14px), 0 14px);
    }
}

@media (prefers-reduced-motion: reduce) {
    .ker-institutional__grain { animation: none !important; }
}

/* =========================================================
   KER Theme 1.6.31 — teste de blur e granulado
   Menos blur no card, grain realmente visível e correção do
   marcador "Parceiro". Sem assets de terceiros.
   ========================================================= */

/* Grain de película mais perceptível: branco/cinza em overlay, sem esconder conteúdo. */
.ker-institutional__grain {
    z-index: 30;
    inset: -28%;
    width: 156%;
    height: 156%;
    opacity: .30;
    mix-blend-mode: overlay;
    filter: contrast(155%) brightness(118%);
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='4' seed='8' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='.92'/%3E%3C/svg%3E");
    background-size: 128px 128px;
    animation: kerInstitutionalGrainStrong .24s steps(2, end) infinite;
}
@keyframes kerInstitutionalGrainStrong {
    0%   { transform: translate3d(-3.2%,  1.6%, 0); }
    18%  { transform: translate3d( 1.4%, -2.8%, 0); }
    37%  { transform: translate3d(-1.1%,  3.1%, 0); }
    58%  { transform: translate3d( 3.0%,  1.0%, 0); }
    79%  { transform: translate3d( 1.8%, -1.7%, 0); }
    100% { transform: translate3d(-3.2%,  1.6%, 0); }
}

/* Fundo da seção com mais variação de luz, lembrando o painel da referência. */
.ker-institutional-partner__ambient {
    opacity: .84;
    filter: blur(76px) saturate(170%);
}
.ker-institutional-partner__grid {
    opacity: .105;
}

/* O quadro da marca permanece profundo, mas com menos aspecto de vidro genérico. */
.ker-institutional-partner__logo-stage {
    border-color: rgba(255,255,255,.10);
    background:
        radial-gradient(circle at 58% 44%, color-mix(in srgb, var(--ker-sponsor-accent) 39%, transparent), transparent 51%),
        radial-gradient(circle at 18% 16%, rgba(255,255,255,.065), transparent 32%),
        linear-gradient(145deg, rgba(255,255,255,.058), rgba(255,255,255,.012));
    backdrop-filter: blur(10px) saturate(118%);
    -webkit-backdrop-filter: blur(10px) saturate(118%);
}

/* Painel de texto: mais sólido/colorido e bem menos desfocado, como o último landing de referência. */
.ker-institutional-partner__content {
    width: calc(100% + 92px);
    margin-left: -92px;
    padding: clamp(46px, 4.8vw, 76px);
    border: 1px solid rgba(255,255,255,.105);
    background:
        linear-gradient(128deg,
            color-mix(in srgb, var(--ker-sponsor-accent) 22%, rgba(38,31,39,.94)) 0%,
            rgba(25,24,31,.935) 43%,
            rgba(12,13,18,.94) 100%);
    box-shadow:
        0 48px 120px rgba(0,0,0,.55),
        -26px 12px 80px color-mix(in srgb, var(--ker-sponsor-accent) 13%, transparent),
        inset 0 1px rgba(255,255,255,.055);
    backdrop-filter: blur(5px) saturate(112%);
    -webkit-backdrop-filter: blur(5px) saturate(112%);
}
.ker-institutional-partner:nth-child(even) .ker-institutional-partner__content {
    width: calc(100% + 92px);
    margin-left: 0;
    margin-right: -92px;
}

/* Luz interna mais definida, sem "lavar" texto ou ícones. */
.ker-institutional-partner__content::before {
    inset: -12% -8%;
    background:
        radial-gradient(circle at 22% 12%, color-mix(in srgb, var(--ker-sponsor-accent) 28%, transparent), transparent 34%),
        radial-gradient(circle at 88% 82%, color-mix(in srgb, var(--ker-sponsor-accent) 12%, #426aff 7%), transparent 38%);
    filter: blur(24px) saturate(130%);
    opacity: .72;
}

/* Retira o grid do painel e troca por textura finíssima, mais próxima do material da referência. */
.ker-institutional-partner__content::after {
    inset: 0;
    opacity: .10;
    background-image:
        url("data:image/svg+xml,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.62' numOctaves='3' seed='4'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");
    background-size: 150px 150px;
    mask-image: none;
    -webkit-mask-image: none;
    mix-blend-mode: soft-light;
}

/* Corrige os traços que apareciam colados no texto "Parceiro".
   As quinas continuam no recorte físico do painel e no quadro da logo. */
.ker-institutional-partner__content > .ker-institutional-corner {
    display: none !important;
}
.ker-institutional-partner__level {
    position: relative;
    display: inline-flex;
    align-items: center;
    min-height: 16px;
    padding: 0;
    border: 0;
    background: transparent;
    text-shadow: 0 0 18px color-mix(in srgb, var(--ker-sponsor-accent) 25%, transparent);
}
.ker-institutional-partner__level::before,
.ker-institutional-partner__level::after {
    content: none !important;
    display: none !important;
}

/* Detalhes de quina no próprio recorte, sem invadir a área do texto. */
.ker-institutional-partner__content {
    outline: 0;
}
.ker-institutional-partner__content > h2 {
    position: relative;
}

@media (max-width: 900px) {
    .ker-institutional-partner__content,
    .ker-institutional-partner:nth-child(even) .ker-institutional-partner__content {
        width: min(calc(100% - 24px), 650px);
        margin: -46px auto 0;
        padding: 36px 30px;
    }
}

@media (max-width: 560px) {
    .ker-institutional__grain {
        opacity: .30;
        background-size: 112px 112px;
    }
    .ker-institutional-partner__content,
    .ker-institutional-partner:nth-child(even) .ker-institutional-partner__content {
        width: calc(100% - 12px);
        margin-top: -32px;
        padding: 30px 22px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ker-institutional__grain { animation: none !important; }
}

/* =========================================================
   KER Theme 1.6.32 — grain global real + blur perceptível
   O grain agora pertence ao viewport inteiro da página
   Institucional; o painel usa transparência suficiente para
   o backdrop-filter de 5px produzir diferença visual real.
   ========================================================= */

/* Desativa a camada antiga, limitada ao wrapper institucional. */
body.ker-institutional-surface .ker-institutional__grain {
    display: none !important;
}

/* Grain global: cobre header secundário, conteúdo e rodapé durante toda a rolagem.
   Fica abaixo do header principal/subnav para preservar nitidez da navegação. */
body.ker-institutional-surface::after {
    content: '';
    position: fixed;
    z-index: 40;
    inset: 0;
    pointer-events: none;
    opacity: .30;
    mix-blend-mode: normal;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='kerNoise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='4' seed='11' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23kerNoise)' opacity='.34'/%3E%3C/svg%3E");
    background-size: 148px 148px;
    animation: kerInstitutionalViewportGrain .24s steps(2, end) infinite;
    will-change: background-position;
}

@keyframes kerInstitutionalViewportGrain {
    0%   { background-position:   0px   0px; }
    20%  { background-position: -17px  11px; }
    40%  { background-position:  13px -19px; }
    60%  { background-position: -11px -13px; }
    80%  { background-position:  19px   7px; }
    100% { background-position:   0px   0px; }
}

/* O painel anterior estava ~94% opaco; por isso 32px -> 5px quase não aparecia.
   Aqui a transparência é real e o blur de 5px passa a ser perceptível. */
body.ker-institutional-surface .ker-institutional-partner__content {
    background:
        linear-gradient(132deg,
            color-mix(in srgb, var(--ker-sponsor-accent) 17%, rgba(39, 33, 43, .80)) 0%,
            rgba(25, 24, 32, .78) 46%,
            rgba(12, 13, 18, .82) 100%) !important;
    -webkit-backdrop-filter: blur(5px) saturate(108%) !important;
    backdrop-filter: blur(5px) saturate(108%) !important;
}

/* Reduz também a névoa interna, que visualmente fazia o painel parecer mais borrado
   mesmo com o backdrop-filter já configurado em 5px. */
body.ker-institutional-surface .ker-institutional-partner__content::before {
    filter: blur(10px) saturate(118%) !important;
    opacity: .56 !important;
}

/* A textura local do painel fica discreta; o grain principal agora é global. */
body.ker-institutional-surface .ker-institutional-partner__content::after {
    opacity: .055 !important;
}

@media (prefers-reduced-motion: reduce) {
    body.ker-institutional-surface::after {
        animation: none !important;
    }
}

/* =========================================================
   KER Theme 1.6.33 — Institucional: proporção Tomorrowland
   Painel de conteúdo propositalmente menor que o quadro da
   marca + grain global elevado de 30% para 40%.
   ========================================================= */

/* Mais presença do quadro da marca e menos peso visual do painel de texto. */
body.ker-institutional-surface .ker-institutional-partner__inner {
    grid-template-columns: minmax(0, 1.18fr) minmax(0, .82fr);
    gap: 0;
    align-items: center;
}

body.ker-institutional-surface .ker-institutional-partner__visual {
    position: relative;
    z-index: 1;
}

body.ker-institutional-surface .ker-institutional-partner__logo-stage {
    width: min(100%, 680px);
    aspect-ratio: 1.08;
    padding: clamp(54px, 6.2vw, 96px);
}

/* O painel fica claramente menor que a caixa da logo e invade a arte só o suficiente
   para preservar a composição sobreposta da referência. */
body.ker-institutional-surface .ker-institutional-partner__content {
    position: relative;
    z-index: 3;
    justify-self: start;
    width: min(100%, 520px) !important;
    max-width: 520px;
    margin-left: -74px !important;
    margin-right: 0 !important;
    padding: clamp(36px, 3.4vw, 54px) !important;
}

body.ker-institutional-surface .ker-institutional-partner:nth-child(even) .ker-institutional-partner__content {
    justify-self: end;
    margin-left: 0 !important;
    margin-right: -74px !important;
}

body.ker-institutional-surface .ker-institutional-partner__content h2 {
    margin: 13px 0 20px;
    font-size: clamp(34px, 3.65vw, 58px);
    line-height: .98;
}

body.ker-institutional-surface .ker-institutional-partner__description {
    font-size: clamp(14px, 1.02vw, 16.5px);
    line-height: 1.67;
}

body.ker-institutional-surface .ker-institutional-partner__socials {
    margin-top: 25px;
    padding-top: 20px;
}

body.ker-institutional-surface .ker-institutional-social {
    width: 44px;
    height: 44px;
}

body.ker-institutional-surface .ker-institutional-social svg,
body.ker-institutional-surface .ker-institutional-social img {
    width: 20px;
    height: 20px;
}

/* Teste solicitado: grain global de 30% -> 40%. */
body.ker-institutional-surface::after {
    opacity: .40;
}

@media (max-width: 1100px) and (min-width: 901px) {
    body.ker-institutional-surface .ker-institutional-partner__logo-stage {
        width: min(100%, 620px);
    }
    body.ker-institutional-surface .ker-institutional-partner__content {
        width: min(100%, 470px) !important;
        max-width: 470px;
        margin-left: -54px !important;
    }
    body.ker-institutional-surface .ker-institutional-partner:nth-child(even) .ker-institutional-partner__content {
        margin-left: 0 !important;
        margin-right: -54px !important;
    }
}

/* Em telas menores voltamos ao empilhamento, mas ainda deixamos o painel visualmente
   mais estreito que a arte para conservar a hierarquia da versão desktop. */
@media (max-width: 900px) {
    body.ker-institutional-surface .ker-institutional-partner__inner {
        grid-template-columns: 1fr;
        gap: 0;
    }
    body.ker-institutional-surface .ker-institutional-partner__logo-stage {
        width: min(100%, 600px);
    }
    body.ker-institutional-surface .ker-institutional-partner__content,
    body.ker-institutional-surface .ker-institutional-partner:nth-child(even) .ker-institutional-partner__content {
        justify-self: center;
        width: min(calc(100% - 46px), 520px) !important;
        max-width: 520px;
        margin: -42px auto 0 !important;
        padding: 32px 28px !important;
    }
}

@media (max-width: 560px) {
    body.ker-institutional-surface .ker-institutional-partner__content,
    body.ker-institutional-surface .ker-institutional-partner:nth-child(even) .ker-institutional-partner__content {
        width: calc(100% - 34px) !important;
        margin-top: -30px !important;
        padding: 27px 21px !important;
    }
    body.ker-institutional-surface .ker-institutional-partner__content h2 {
        font-size: clamp(32px, 10.5vw, 46px);
    }
}


/* =========================================================
   KER Theme 1.6.34 — Institucional: cards padronizados
   Todos os patrocinadores usam a mesma composição fixa:
   marca à esquerda, painel menor à direita e descrição com
   rolagem interna quando ultrapassa o espaço disponível.
   ========================================================= */

@media (min-width: 901px) {
    body.ker-institutional-surface .ker-institutional-partner__inner {
        grid-template-columns: minmax(0, 690px) minmax(0, 500px) !important;
        justify-content: center;
        align-items: center;
        gap: 0 !important;
        min-height: 760px;
        padding-top: 70px;
        padding-bottom: 70px;
    }

    /* Nunca alterna os lados: a leitura é idêntica em todos os patrocinadores. */
    body.ker-institutional-surface .ker-institutional-partner__visual,
    body.ker-institutional-surface .ker-institutional-partner:nth-child(even) .ker-institutional-partner__visual {
        order: 1 !important;
        justify-self: stretch;
    }

    body.ker-institutional-surface .ker-institutional-partner__content,
    body.ker-institutional-surface .ker-institutional-partner:nth-child(even) .ker-institutional-partner__content {
        order: 2 !important;
        justify-self: start !important;
        width: 500px !important;
        max-width: 500px !important;
        height: 520px;
        min-height: 520px;
        max-height: 520px;
        margin-left: -70px !important;
        margin-right: 0 !important;
        padding: 40px 40px 34px !important;
        display: flex;
        flex-direction: column;
        overflow: hidden;
    }

    body.ker-institutional-surface .ker-institutional-partner__logo-stage,
    body.ker-institutional-surface .ker-institutional-partner:nth-child(even) .ker-institutional-partner__logo-stage {
        width: 690px !important;
        max-width: 690px !important;
        height: 620px;
        min-height: 620px;
        aspect-ratio: auto !important;
        margin: 0 !important;
        padding: 82px !important;
    }

    body.ker-institutional-surface .ker-institutional-partner__logo {
        width: 100%;
        max-width: 430px;
        height: 300px;
        max-height: 300px;
        object-fit: contain;
    }

    body.ker-institutional-surface .ker-institutional-partner__level {
        flex: 0 0 auto;
    }

    body.ker-institutional-surface .ker-institutional-partner__content h2 {
        flex: 0 0 auto;
        margin: 12px 0 18px;
        font-size: 48px;
        line-height: .98;
    }

    body.ker-institutional-surface .ker-institutional-partner__content--name-long h2 {
        font-size: 41px;
        line-height: 1;
    }

    body.ker-institutional-surface .ker-institutional-partner__content--name-xl h2 {
        font-size: 34px;
        line-height: 1.03;
    }

    /* A descrição passa a se adaptar ao card — não o contrário. */
    body.ker-institutional-surface .ker-institutional-partner__description {
        flex: 1 1 auto;
        min-height: 0;
        overflow-y: auto;
        overflow-x: hidden;
        padding-right: 12px;
        font-size: 15px;
        line-height: 1.62;
        scrollbar-width: thin;
        scrollbar-color: color-mix(in srgb, var(--ker-sponsor-accent) 54%, rgba(255,255,255,.22)) rgba(255,255,255,.045);
        overscroll-behavior: contain;
    }

    body.ker-institutional-surface .ker-institutional-partner__description::-webkit-scrollbar {
        width: 5px;
    }

    body.ker-institutional-surface .ker-institutional-partner__description::-webkit-scrollbar-track {
        background: rgba(255,255,255,.04);
        border-radius: 99px;
    }

    body.ker-institutional-surface .ker-institutional-partner__description::-webkit-scrollbar-thumb {
        background: color-mix(in srgb, var(--ker-sponsor-accent) 58%, rgba(255,255,255,.25));
        border-radius: 99px;
    }

    body.ker-institutional-surface .ker-institutional-partner__socials {
        flex: 0 0 auto;
        margin-top: 20px;
        padding-top: 18px;
        min-height: 63px;
    }
}

/* Faixa intermediária: mantém a mesma proporção sem voltar a alternar os lados. */
@media (min-width: 901px) and (max-width: 1250px) {
    body.ker-institutional-surface .ker-institutional-partner__inner {
        grid-template-columns: minmax(0, 600px) minmax(0, 450px) !important;
        min-height: 690px;
    }

    body.ker-institutional-surface .ker-institutional-partner__logo-stage,
    body.ker-institutional-surface .ker-institutional-partner:nth-child(even) .ker-institutional-partner__logo-stage {
        width: 600px !important;
        max-width: 600px !important;
        height: 550px;
        min-height: 550px;
        padding: 70px !important;
    }

    body.ker-institutional-surface .ker-institutional-partner__content,
    body.ker-institutional-surface .ker-institutional-partner:nth-child(even) .ker-institutional-partner__content {
        width: 450px !important;
        max-width: 450px !important;
        height: 480px;
        min-height: 480px;
        max-height: 480px;
        margin-left: -56px !important;
        margin-right: 0 !important;
        padding: 34px 34px 30px !important;
    }

    body.ker-institutional-surface .ker-institutional-partner__content h2 { font-size: 42px; }
    body.ker-institutional-surface .ker-institutional-partner__content--name-long h2 { font-size: 36px; }
    body.ker-institutional-surface .ker-institutional-partner__content--name-xl h2 { font-size: 31px; }
}

/* Mobile/tablet: todos continuam iguais entre si, apenas empilhados. */
@media (max-width: 900px) {
    body.ker-institutional-surface .ker-institutional-partner__visual,
    body.ker-institutional-surface .ker-institutional-partner:nth-child(even) .ker-institutional-partner__visual,
    body.ker-institutional-surface .ker-institutional-partner__content,
    body.ker-institutional-surface .ker-institutional-partner:nth-child(even) .ker-institutional-partner__content {
        order: initial !important;
    }

    body.ker-institutional-surface .ker-institutional-partner__logo-stage,
    body.ker-institutional-surface .ker-institutional-partner:nth-child(even) .ker-institutional-partner__logo-stage {
        width: min(100%, 620px) !important;
        aspect-ratio: 1.08 !important;
        height: auto;
        min-height: 0;
    }

    body.ker-institutional-surface .ker-institutional-partner__content,
    body.ker-institutional-surface .ker-institutional-partner:nth-child(even) .ker-institutional-partner__content {
        display: flex;
        flex-direction: column;
        height: 500px;
        min-height: 500px;
        max-height: 500px;
        overflow: hidden;
    }

    body.ker-institutional-surface .ker-institutional-partner__description {
        flex: 1 1 auto;
        min-height: 0;
        overflow-y: auto;
        overflow-x: hidden;
        padding-right: 9px;
        overscroll-behavior: contain;
        scrollbar-width: thin;
        scrollbar-color: color-mix(in srgb, var(--ker-sponsor-accent) 54%, rgba(255,255,255,.22)) rgba(255,255,255,.045);
    }

    body.ker-institutional-surface .ker-institutional-partner__socials {
        flex: 0 0 auto;
    }
}

@media (max-width: 560px) {
    body.ker-institutional-surface .ker-institutional-partner__content,
    body.ker-institutional-surface .ker-institutional-partner:nth-child(even) .ker-institutional-partner__content {
        height: 460px;
        min-height: 460px;
        max-height: 460px;
    }
}

/* =========================================================
   KER Theme 1.6.35 — Rodapé exclusivo da página Institucional
   Integra o footer à ambientação da página, inspirado no
   acabamento do rodapé de referência: sem faixa separada,
   glow sutil, grid técnico e navegação centralizada.
   ========================================================= */

body.ker-institutional-surface .ker-footer--institutional {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    margin: 0;
    border: 0;
    background:
        radial-gradient(circle at 50% 26%, color-mix(in srgb, var(--ker-institutional-accent, #8f62ff) 16%, transparent) 0%, transparent 35%),
        radial-gradient(circle at 17% 68%, rgba(42, 76, 116, .10) 0%, transparent 34%),
        linear-gradient(180deg, rgba(7, 9, 14, .10) 0%, rgba(7, 9, 14, .78) 48%, rgba(7, 9, 14, .96) 100%);
    color: rgba(255,255,255,.74);
}

body.ker-institutional-surface .ker-footer--institutional::before {
    content: '';
    position: absolute;
    z-index: -2;
    inset: 0;
    pointer-events: none;
    opacity: .25;
    background-image:
        linear-gradient(rgba(255,255,255,.028) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.028) 1px, transparent 1px);
    background-size: 74px 74px;
    -webkit-mask-image: linear-gradient(to bottom, transparent, #000 18%, #000 80%, transparent);
    mask-image: linear-gradient(to bottom, transparent, #000 18%, #000 80%, transparent);
}

body.ker-institutional-surface .ker-footer--institutional::after {
    content: '';
    position: absolute;
    z-index: -1;
    left: 50%;
    bottom: -180px;
    width: min(920px, 86vw);
    height: 420px;
    transform: translateX(-50%);
    pointer-events: none;
    border-radius: 50%;
    background: color-mix(in srgb, var(--ker-institutional-accent, #8f62ff) 13%, transparent);
    filter: blur(110px);
    opacity: .64;
}

body.ker-institutional-surface .ker-footer-institutional__ambient {
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(circle at 50% 35%, color-mix(in srgb, var(--ker-institutional-accent, #8f62ff) 8%, transparent), transparent 36%),
        linear-gradient(180deg, transparent 0%, rgba(0,0,0,.12) 100%);
}

body.ker-institutional-surface .ker-footer-institutional__inner {
    position: relative;
    z-index: 2;
    min-height: 390px;
    padding-top: 92px;
    padding-bottom: 34px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    gap: 34px;
    text-align: center;
}

body.ker-institutional-surface .ker-footer-institutional__brand {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 92px;
    color: #fff;
    text-decoration: none;
    filter: drop-shadow(0 0 30px color-mix(in srgb, var(--ker-institutional-accent, #8f62ff) 24%, transparent));
}

body.ker-institutional-surface .ker-footer-institutional__logo-image {
    display: block;
    width: auto;
    max-width: min(330px, 64vw);
    max-height: 104px;
    object-fit: contain;
}

body.ker-institutional-surface .ker-footer-institutional__brand strong {
    font-size: clamp(34px, 4vw, 54px);
    letter-spacing: -.055em;
}

body.ker-institutional-surface .ker-footer-institutional__brand span {
    margin-left: 13px;
    padding-left: 13px;
    border-left: 1px solid rgba(255,255,255,.22);
    color: rgba(255,255,255,.56);
    font-size: .68rem;
    letter-spacing: .14em;
}

body.ker-institutional-surface .ker-footer-institutional__nav {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0;
    min-height: 58px;
    padding: 0 18px;
}

body.ker-institutional-surface .ker-footer-institutional__nav::before,
body.ker-institutional-surface .ker-footer-institutional__nav::after {
    content: '';
    position: absolute;
    top: 50%;
    width: 54px;
    height: 1px;
    background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--ker-institutional-accent, #8f62ff) 48%, rgba(255,255,255,.24)));
}

body.ker-institutional-surface .ker-footer-institutional__nav::before {
    right: 100%;
}

body.ker-institutional-surface .ker-footer-institutional__nav::after {
    left: 100%;
    transform: scaleX(-1);
}

body.ker-institutional-surface .ker-footer-institutional__nav a {
    position: relative;
    padding: 18px 16px;
    color: rgba(255,255,255,.54);
    font-size: .69rem;
    font-weight: 760;
    letter-spacing: .035em;
    text-decoration: none;
    transition: color .18s ease, text-shadow .18s ease;
}

body.ker-institutional-surface .ker-footer-institutional__nav a + a::before {
    content: '◇';
    position: absolute;
    left: -4px;
    top: 50%;
    transform: translateY(-52%);
    color: color-mix(in srgb, var(--ker-institutional-accent, #8f62ff) 72%, #fff 16%);
    font-size: .62rem;
    opacity: .72;
}

body.ker-institutional-surface .ker-footer-institutional__nav a:hover,
body.ker-institutional-surface .ker-footer-institutional__nav a:focus-visible {
    color: #fff;
    text-shadow: 0 0 18px color-mix(in srgb, var(--ker-institutional-accent, #8f62ff) 55%, transparent);
}

body.ker-institutional-surface .ker-footer-institutional__meta {
    width: min(860px, 100%);
    padding-top: 20px;
    border-top: 1px solid rgba(255,255,255,.055);
    color: rgba(255,255,255,.34);
    font-size: .62rem;
    font-weight: 650;
    letter-spacing: .12em;
    text-transform: uppercase;
}

/* O footer não cria uma "faixa" própria: ele continua o mesmo fundo da página. */
body.ker-institutional-surface #conteudo + .ker-footer--institutional {
    margin-top: 0;
}

@media (max-width: 760px) {
    body.ker-institutional-surface .ker-footer-institutional__inner {
        min-height: 330px;
        padding-top: 66px;
        padding-bottom: 28px;
        gap: 25px;
    }

    body.ker-institutional-surface .ker-footer-institutional__logo-image {
        max-width: min(260px, 68vw);
        max-height: 82px;
    }

    body.ker-institutional-surface .ker-footer-institutional__nav {
        max-width: 370px;
        padding: 0;
        gap: 3px 0;
    }

    body.ker-institutional-surface .ker-footer-institutional__nav::before,
    body.ker-institutional-surface .ker-footer-institutional__nav::after {
        display: none;
    }

    body.ker-institutional-surface .ker-footer-institutional__nav a {
        padding: 12px 13px;
        font-size: .65rem;
    }

    body.ker-institutional-surface .ker-footer-institutional__nav a + a::before {
        left: -2px;
    }

    body.ker-institutional-surface .ker-footer-institutional__meta {
        width: min(330px, 100%);
        padding-top: 17px;
        font-size: .57rem;
        line-height: 1.6;
    }
}

/* =========================================================
   KER Theme 1.6.36 — Transição contínua conteúdo → rodapé
   O rodapé institucional invade suavemente o final da página
   com uma faixa transparente, eliminando o corte horizontal.
   ========================================================= */
body.ker-institutional-surface .ker-footer--institutional {
    margin-top: -160px !important;
    padding-top: 160px;
    background:
        linear-gradient(180deg,
            rgba(7, 9, 14, 0) 0%,
            rgba(7, 9, 14, .04) 13%,
            rgba(7, 9, 14, .14) 27%,
            rgba(7, 9, 14, .38) 46%,
            rgba(7, 9, 14, .72) 70%,
            rgba(7, 9, 14, .95) 100%),
        radial-gradient(circle at 50% 42%, color-mix(in srgb, var(--ker-institutional-accent, #8f62ff) 14%, transparent) 0%, transparent 39%),
        radial-gradient(circle at 17% 72%, rgba(42, 76, 116, .09) 0%, transparent 36%) !important;
}

/* O grid só começa depois da área de transição, evitando uma linha visual no encontro. */
body.ker-institutional-surface .ker-footer--institutional::before {
    -webkit-mask-image: linear-gradient(to bottom, transparent 0%, transparent 28%, #000 52%, #000 84%, transparent 100%) !important;
    mask-image: linear-gradient(to bottom, transparent 0%, transparent 28%, #000 52%, #000 84%, transparent 100%) !important;
}

/* O glow também entra aos poucos para que não pareça uma segunda seção. */
body.ker-institutional-surface .ker-footer-institutional__ambient {
    background:
        linear-gradient(180deg, transparent 0%, rgba(7,9,14,.08) 34%, rgba(0,0,0,.14) 100%),
        radial-gradient(circle at 50% 54%, color-mix(in srgb, var(--ker-institutional-accent, #8f62ff) 8%, transparent), transparent 38%) !important;
}

/* Neutraliza a regra antiga que recolocava o footer exatamente após o conteúdo. */
body.ker-institutional-surface #conteudo + .ker-footer--institutional {
    margin-top: -160px !important;
}

@media (max-width: 760px) {
    body.ker-institutional-surface .ker-footer--institutional,
    body.ker-institutional-surface #conteudo + .ker-footer--institutional {
        margin-top: -110px !important;
    }
    body.ker-institutional-surface .ker-footer--institutional {
        padding-top: 110px;
    }
}

/* =========================================================
   KER Theme 1.6.38 — Eventos cinematográficos + identidade dinâmica
   ========================================================= */

/* Integração direta com a tipografia configurável do KER Core. */
body.ker-event-surface .ker-events-cinema h1,
body.ker-event-surface .ker-event-section-heading h2,
body.ker-event-surface .ker-event-hero h1 {
    font-family: var(--ker-font-display, inherit);
}

body.ker-event-surface .ker-events-cinema,
body.ker-event-surface .ker-event-page {
    font-family: var(--ker-font-body, inherit);
}

body.ker-event-surface .ker-events-cinema button,
body.ker-event-surface .ker-events-cinema a,
body.ker-event-surface .ker-event-page button,
body.ker-event-surface .ker-event-page a {
    font-family: var(--ker-font-ui, inherit);
}

/* Página Eventos: uma única experiência imersiva, com a etapa selecionada
   ocupando o wallpaper e uma faixa de seleção semelhante a um catálogo. */
body.ker-event-surface:not(.ker-event-detail-surface) {
    background: #070708;
}

.ker-events-cinema {
    position: relative;
    min-height: 100vh;
    overflow: hidden;
    color: #fff;
    background: #070708;
}

.ker-events-cinema__viewport {
    position: relative;
    min-height: clamp(650px, 88vh, 980px);
    height: clamp(650px, 88vh, 980px);
    overflow: hidden;
    background:
        radial-gradient(circle at 72% 30%, rgba(var(--ker-accent-rgb), .13), transparent 31rem),
        #09090b;
}

.ker-events-cinema__slide {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: block;
    opacity: 0;
    transform: translate3d(28px, 0, 0) scale(1.008);
    transition:
        opacity .56s cubic-bezier(.22, .72, .24, 1),
        transform .56s cubic-bezier(.22, .72, .24, 1),
        filter .56s ease;
    pointer-events: none;
    will-change: opacity, transform;
}

.ker-events-cinema__slide[hidden] {
    display: none !important;
}

.ker-events-cinema__slide.is-active {
    z-index: 3;
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
    pointer-events: auto;
}

.ker-events-cinema__slide.is-entering-right {
    z-index: 4;
    opacity: 0;
    transform: translate3d(34px, 0, 0) scale(1.01);
}

.ker-events-cinema__slide.is-entering-left {
    z-index: 4;
    opacity: 0;
    transform: translate3d(-34px, 0, 0) scale(1.01);
}

.ker-events-cinema__slide.is-leaving-left {
    z-index: 2;
    opacity: 0;
    transform: translate3d(-28px, 0, 0) scale(1.006);
    pointer-events: none;
}

.ker-events-cinema__slide.is-leaving-right {
    z-index: 2;
    opacity: 0;
    transform: translate3d(28px, 0, 0) scale(1.006);
    pointer-events: none;
}

.ker-events-cinema__wallpaper,
.ker-events-cinema__shade,
.ker-events-cinema__grain {
    position: absolute;
    inset: 0;
}

.ker-events-cinema__wallpaper {
    z-index: -4;
    background:
        radial-gradient(circle at 73% 28%, rgba(var(--ker-accent-rgb), .18), transparent 30rem),
        linear-gradient(125deg, #161015 0%, #08090b 52%, #07100c 100%);
    background-position: center;
    background-size: cover;
    transform: scale(1.035);
    transition: transform 6s cubic-bezier(.2,.7,.2,1);
}

.ker-events-cinema__slide.has-wallpaper .ker-events-cinema__wallpaper {
    background-image: var(--ker-events-wallpaper);
    filter: saturate(.88) contrast(1.05) brightness(.82);
}

.ker-events-cinema__slide.is-active .ker-events-cinema__wallpaper {
    transform: scale(1.008);
}

.ker-events-cinema__shade {
    z-index: -3;
    background:
        linear-gradient(90deg, rgba(5, 5, 7, .95) 0%, rgba(5, 5, 7, .84) 23%, rgba(5, 5, 7, .48) 48%, rgba(5, 5, 7, .17) 69%, rgba(5, 5, 7, .36) 100%),
        linear-gradient(180deg, rgba(5, 5, 7, .56) 0%, rgba(5, 5, 7, .02) 30%, rgba(5, 5, 7, .08) 58%, rgba(7, 7, 8, .92) 100%);
}

.ker-events-cinema__grain {
    z-index: -2;
    opacity: .12;
    pointer-events: none;
    mix-blend-mode: soft-light;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.22'/%3E%3C/svg%3E");
}

.ker-events-cinema__content {
    position: relative;
    z-index: 2;
    min-height: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    padding-top: 105px;
    padding-bottom: 184px;
}

.ker-events-cinema__copy {
    width: min(640px, 54vw);
    padding-top: 10px;
    text-shadow: 0 10px 36px rgba(0, 0, 0, .22);
}

.ker-events-cinema__eyebrow {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
    color: var(--ker-accent-bright);
    font-size: .64rem;
    font-weight: 900;
    letter-spacing: .19em;
    text-transform: uppercase;
}

.ker-events-cinema__eyebrow::before {
    content: "";
    width: 34px;
    height: 1px;
    flex: 0 0 34px;
    background: currentColor;
    box-shadow: 0 0 18px rgba(var(--ker-accent-bright-rgb), .5);
}

.ker-events-cinema__eyebrow b {
    color: rgba(255, 255, 255, .54);
    font-weight: 800;
    letter-spacing: .12em;
}

.ker-events-cinema__logo {
    display: block;
    width: auto;
    max-width: min(410px, 82%);
    max-height: 132px;
    margin: 0 0 25px;
    object-fit: contain;
    object-position: left center;
    filter: drop-shadow(0 18px 34px rgba(0, 0, 0, .38));
}

.ker-events-cinema__title-block {
    display: flex;
    align-items: flex-end;
    gap: 16px;
}

.ker-events-cinema__number {
    flex: 0 0 auto;
    padding-bottom: 9px;
    color: var(--ker-accent-bright);
    font-size: .72rem;
    font-weight: 950;
    letter-spacing: .18em;
}

.ker-events-cinema h1 {
    max-width: 620px;
    margin: 0;
    color: #fff;
    font-size: clamp(3.3rem, 6.2vw, 6.6rem);
    font-weight: var(--ker-font-display-weight, 900);
    line-height: .9;
    letter-spacing: -.065em;
    text-wrap: balance;
}

.ker-events-cinema__subtitle {
    max-width: 570px;
    margin: 18px 0 0;
    color: rgba(242, 244, 246, .72);
    font-size: clamp(.92rem, 1.25vw, 1.08rem);
    line-height: 1.55;
}

.ker-events-cinema__facts {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px 14px;
    margin-top: 20px;
    color: rgba(246, 248, 249, .82);
    font-size: .78rem;
    font-weight: 700;
}

.ker-events-cinema__facts > span:not(.ker-events-cinema__status) {
    position: relative;
}

.ker-events-cinema__facts > span:not(.ker-events-cinema__status) + span:not(.ker-events-cinema__status)::before {
    content: "•";
    position: relative;
    left: -7px;
    color: rgba(255, 255, 255, .28);
}

.ker-events-cinema__status {
    display: inline-flex;
    align-items: center;
    min-height: 27px;
    padding: 0 10px;
    border: 1px solid rgba(var(--ker-accent-bright-rgb), .34);
    border-radius: 999px;
    color: var(--ker-accent-bright);
    background: rgba(var(--ker-accent-rgb), .16);
    font-size: .59rem;
    font-weight: 950;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.ker-events-cinema__status.is-completed {
    border-color: rgba(var(--ker-accent-bright-rgb), .55);
    color: var(--ker-accent-bright);
    background: rgba(var(--ker-accent-rgb), .13);
}

.ker-events-cinema__status.is-cancelled {
    border-color: rgba(226, 74, 74, .28);
    color: #ff9b9b;
    background: rgba(110, 21, 21, .24);
}

.ker-events-cinema__categories {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 13px;
}

.ker-events-cinema__categories span {
    display: inline-flex;
    min-height: 25px;
    align-items: center;
    padding: 0 9px;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 999px;
    color: rgba(255, 255, 255, .72);
    background: rgba(7, 8, 10, .28);
    font-size: .59rem;
    font-weight: 850;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}

.ker-events-cinema__actions {
    display: flex;
    gap: 10px;
    margin-top: 27px;
}


.ker-events-countdown {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    min-width: 300px;
    padding: 0;
    color: #fff;
}

.ker-events-countdown__label {
    color: var(--ker-accent-bright);
    font-size: .62rem;
    font-weight: 950;
    letter-spacing: .14em;
    line-height: 1;
    text-transform: uppercase;
}

.ker-events-countdown__units {
    display: flex;
    align-items: flex-start;
    gap: 9px;
}

.ker-events-countdown__units > span {
    display: grid;
    min-width: 42px;
    gap: 3px;
}

.ker-events-countdown__units strong {
    font-family: var(--ker-font-display, inherit);
    font-size: clamp(1.72rem, 2.45vw, 2.65rem);
    font-weight: var(--ker-font-display-weight, 900);
    letter-spacing: -.055em;
    line-height: .92;
}

.ker-events-countdown__units small {
    color: rgba(255, 255, 255, .48);
    font-size: .48rem;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.ker-events-countdown__units i {
    margin-top: 2px;
    color: rgba(255,255,255,.28);
    font-family: var(--ker-font-display, inherit);
    font-size: 1.55rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1;
}

.ker-events-countdown__expired,
.ker-events-cinema__live {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 40px;
    color: var(--ker-accent-bright);
    font-size: .7rem;
    font-weight: 950;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.ker-events-cinema__live > span {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--ker-accent-bright);
    box-shadow: 0 0 0 5px rgba(var(--ker-accent-rgb), .14), 0 0 18px rgba(var(--ker-accent-rgb), .38);
}

.ker-events-cinema__cta,
.ker-event-back {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 44px;
    padding: 0 18px;
    border: 1px solid rgba(255, 255, 255, .27);
    border-radius: 999px;
    color: #fff;
    background: rgba(8, 9, 11, .38);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035);
    -webkit-backdrop-filter: blur(14px) saturate(115%);
    backdrop-filter: blur(14px) saturate(115%);
    font-size: .75rem;
    font-weight: var(--ker-font-ui-weight, 850);
    text-decoration: none;
    transition:
        color .24s ease,
        background .24s ease,
        border-color .24s ease,
        box-shadow .24s ease,
        transform .24s cubic-bezier(.2,.7,.2,1);
}

.ker-events-cinema__cta:hover,
.ker-events-cinema__cta:focus-visible,
.ker-event-back:hover,
.ker-event-back:focus-visible {
    color: #09090b !important;
    border-color: #fff !important;
    background: #fff !important;
    box-shadow: 0 11px 30px rgba(0, 0, 0, .24), 0 0 25px rgba(255, 255, 255, .12);
    transform: translateY(-1px);
    outline: 0;
}

.ker-events-cinema__cta > span:last-child {
    transition: transform .24s ease;
}

.ker-events-cinema__cta:hover > span:last-child,
.ker-events-cinema__cta:focus-visible > span:last-child {
    transform: translateX(3px);
}

.ker-events-cinema__selector {
    position: absolute;
    z-index: 12;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
}

.ker-events-cinema__selector::before {
    content: "";
    position: absolute;
    inset: -90px 0 0;
    z-index: -1;
    background: linear-gradient(180deg, transparent, rgba(7, 7, 8, .82) 43%, #070708 100%);
    pointer-events: none;
}

.ker-events-cinema__selector-inner {
    display: block;
    padding-bottom: 25px;
    pointer-events: auto;
}


.ker-events-cinema__rail {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(150px, 190px);
    gap: 9px;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 5px 3px 8px;
    scrollbar-width: thin;
    scrollbar-color: rgba(255,255,255,.25) transparent;
    scroll-snap-type: x proximity;
}

.ker-events-cinema__thumb {
    position: relative;
    isolation: isolate;
    min-height: 96px;
    overflow: hidden;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 10px;
    color: #fff;
    background: #111216;
    box-shadow: 0 9px 24px rgba(0, 0, 0, .2);
    cursor: pointer;
    scroll-snap-align: start;
    text-align: left;
    transform: translateZ(0);
    transition:
        border-color .24s ease,
        transform .24s cubic-bezier(.2,.7,.2,1),
        box-shadow .24s ease;
}

.ker-events-cinema__thumb-media,
.ker-events-cinema__thumb-shade {
    position: absolute;
    inset: 0;
}

.ker-events-cinema__thumb-media {
    z-index: -3;
    background:
        radial-gradient(circle at 70% 25%, rgba(var(--ker-accent-rgb), .22), transparent 10rem),
        #141419;
    background-position: center;
    background-size: cover;
    transition: transform .4s cubic-bezier(.2,.7,.2,1), filter .3s ease;
}

.ker-events-cinema__thumb.has-image .ker-events-cinema__thumb-media {
    background-image: var(--ker-event-thumb);
    filter: saturate(.72) brightness(.72) contrast(1.06);
}

.ker-events-cinema__thumb-shade {
    z-index: -2;
    background: linear-gradient(180deg, rgba(6,7,8,.08), rgba(6,7,8,.85));
}

.ker-events-cinema__thumb-copy {
    position: absolute;
    z-index: 1;
    left: 11px;
    right: 11px;
    bottom: 9px;
}

.ker-events-cinema__thumb-copy small,
.ker-events-cinema__thumb-copy strong {
    display: block;
}

.ker-events-cinema__thumb-copy small {
    margin-bottom: 2px;
    color: rgba(255, 255, 255, .57);
    font-size: .52rem;
    font-weight: 750;
}

.ker-events-cinema__thumb-copy strong {
    overflow: hidden;
    color: rgba(255, 255, 255, .9);
    font-size: .68rem;
    font-weight: 880;
    line-height: 1.13;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ker-events-cinema__thumb:hover,
.ker-events-cinema__thumb:focus-visible {
    border-color: rgba(255, 255, 255, .62);
    transform: translateY(-2px);
    outline: 0;
}

.ker-events-cinema__thumb:hover .ker-events-cinema__thumb-media,
.ker-events-cinema__thumb:focus-visible .ker-events-cinema__thumb-media {
    transform: scale(1.045);
    filter: saturate(.88) brightness(.82) contrast(1.07);
}

.ker-events-cinema__thumb.is-active {
    border-color: rgba(255, 255, 255, .95);
    box-shadow:
        0 10px 28px rgba(0, 0, 0, .28),
        0 0 0 2px rgba(255, 255, 255, .18);
}

.ker-events-cinema__thumb.is-active .ker-events-cinema__thumb-media {
    filter: saturate(.9) brightness(.85) contrast(1.06);
}

.ker-events-cinema__empty {
    min-height: 70vh;
    display: grid;
    place-items: center;
    padding: 120px 0 80px;
}

/* Página individual da etapa: evita colisão de descendentes (ç, g, p)
   e devolve escala mais elegante aos títulos editoriais. */
body.ker-event-detail-surface .ker-event-section-heading {
    align-items: flex-end;
    gap: 28px;
    margin-bottom: 34px;
}

body.ker-event-detail-surface .ker-event-section-heading > div {
    min-width: 0;
    padding-bottom: 2px;
}

body.ker-event-detail-surface .ker-event-section-heading h2 {
    margin: 9px 0 7px;
    padding: 0 0 .07em;
    max-width: min(100%, 920px);
    font-size: clamp(2.45rem, 4.6vw, 4.35rem);
    font-weight: var(--ker-font-display-weight, 900);
    line-height: 1.01;
    letter-spacing: -.055em;
    overflow: visible;
    text-wrap: balance;
}

body.ker-event-detail-surface .ker-event-section-heading p {
    margin: 0;
    max-width: 720px;
    font-size: .82rem;
    line-height: 1.55;
}

body.ker-event-detail-surface .ker-event-panel[data-ker-event-panel="circuito"] .ker-event-section-heading h2 {
    font-size: clamp(2.4rem, 4.5vw, 4.25rem);
    line-height: 1.02;
}

@media (max-width: 980px) {
    .ker-events-cinema__viewport {
        min-height: 760px;
        height: 86vh;
    }

    .ker-events-cinema__copy {
        width: min(620px, 66vw);
    }

    .ker-events-cinema__shade {
        background:
            linear-gradient(90deg, rgba(5,5,7,.95) 0%, rgba(5,5,7,.78) 35%, rgba(5,5,7,.3) 72%, rgba(5,5,7,.4) 100%),
            linear-gradient(180deg, rgba(5,5,7,.42) 0%, rgba(5,5,7,.03) 32%, rgba(5,5,7,.1) 58%, rgba(7,7,8,.94) 100%);
    }
}

@media (max-width: 760px) {
    .ker-events-cinema__viewport {
        min-height: 720px;
        height: max(720px, 100svh);
    }

    .ker-events-cinema__slide.has-wallpaper .ker-events-cinema__wallpaper {
        background-position: 63% center;
    }

    .ker-events-cinema__shade {
        background:
            linear-gradient(180deg, rgba(5,5,7,.45) 0%, rgba(5,5,7,.18) 27%, rgba(5,5,7,.56) 56%, rgba(7,7,8,.97) 82%, #070708 100%),
            linear-gradient(90deg, rgba(5,5,7,.78), rgba(5,5,7,.25));
    }

    .ker-events-cinema__content {
        align-items: flex-end;
        padding-top: 100px;
        padding-bottom: 196px;
    }

    .ker-events-cinema__copy {
        width: 100%;
        max-width: 590px;
    }

    .ker-events-cinema__eyebrow {
        margin-bottom: 12px;
        font-size: .57rem;
    }

    .ker-events-cinema__eyebrow b {
        display: none;
    }

    .ker-events-cinema__logo {
        max-width: min(310px, 74vw);
        max-height: 96px;
        margin-bottom: 17px;
    }

    .ker-events-cinema h1 {
        font-size: clamp(2.8rem, 14vw, 4.8rem);
        line-height: .92;
    }

    .ker-events-cinema__subtitle {
        max-width: 90%;
        margin-top: 12px;
        font-size: .87rem;
        line-height: 1.5;
    }

    .ker-events-cinema__facts {
        gap: 7px 11px;
        margin-top: 15px;
        font-size: .69rem;
    }

    .ker-events-cinema__categories {
        margin-top: 10px;
    }

    .ker-events-cinema__actions {
        margin-top: 18px;
    }

    .ker-events-cinema__selector-inner {
        display: block;
        padding-bottom: 16px;
    }

    .ker-events-cinema__rail {
        grid-auto-columns: minmax(132px, 154px);
        gap: 7px;
    }

    .ker-events-cinema__thumb {
        min-height: 78px;
        border-radius: 9px;
    }

    body.ker-event-detail-surface .ker-event-section-heading,
    body.ker-event-detail-surface .ker-event-section-heading--circuit {
        gap: 18px;
        margin-bottom: 27px;
    }

    body.ker-event-detail-surface .ker-event-section-heading h2,
    body.ker-event-detail-surface .ker-event-panel[data-ker-event-panel="circuito"] .ker-event-section-heading h2 {
        margin-top: 8px;
        margin-bottom: 6px;
        padding-bottom: .08em;
        font-size: clamp(2.35rem, 12vw, 3.55rem);
        line-height: 1.02;
    }
}

@media (max-width: 480px) {
    .ker-events-cinema__content {
        padding-bottom: 183px;
    }

    .ker-events-cinema__facts > span:not(.ker-events-cinema__status) + span:not(.ker-events-cinema__status)::before {
        display: none;
    }

    .ker-events-cinema__facts {
        gap: 7px 12px;
    }

    .ker-events-cinema__facts > span:not(.ker-events-cinema__status) {
        flex-basis: 100%;
    }

    .ker-events-cinema__cta {
        min-height: 42px;
        padding: 0 16px;
    }

    .ker-events-countdown {
        min-width: 0;
        width: 100%;
        gap: 7px;
    }

    .ker-events-countdown__units {
        gap: 6px;
    }

    .ker-events-countdown__units > span {
        min-width: 35px;
    }

    .ker-events-countdown__units strong {
        font-size: clamp(1.4rem, 8vw, 2rem);
    }

    .ker-events-countdown__units i {
        font-size: 1.25rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ker-events-cinema__slide,
    .ker-events-cinema__wallpaper,
    .ker-events-cinema__thumb,
    .ker-events-cinema__thumb-media,
    .ker-events-cinema__cta,
    .ker-events-countdown,
    .ker-event-back {
        transition: none !important;
        animation: none !important;
    }
}


/* ==========================================================
   KER Theme 1.6.41 — ranking, selo verificado e mídia protegida
   ========================================================== */

/* Logo do KER Core usada como assinatura inline em descrições. */
.ker-core-inline-logo {
    width: auto !important;
    height: .92em !important;
    max-width: 5.2em !important;
    display: inline-block !important;
    margin: 0 .16em !important;
    object-fit: contain !important;
    vertical-align: -.12em !important;
    opacity: .82;
    filter: brightness(0) invert(1);
    user-select: none !important;
    -webkit-user-drag: none !important;
    -webkit-touch-callout: none !important;
}
.ker-core-inline-fallback {
    display: inline;
    font-weight: 800;
    white-space: nowrap;
}

/* Proteção de interação casual em imagens e logos públicos. */
img,
picture,
[data-ker-protected-media] {
    -webkit-user-drag: none;
    -webkit-touch-callout: none;
    user-select: none;
}

/* Ranking: mantém a assinatura grande, mas sem invadir a descrição. */
.ker-ranking-hero {
    padding-top: 122px;
    padding-bottom: 70px;
}
.ker-ranking-hero h1 {
    margin: 8px 0 15px;
    font-size: clamp(3.35rem, 7.2vw, 6.35rem);
    line-height: .9;
    letter-spacing: -.066em;
}
.ker-ranking-hero p {
    line-height: 1.55;
}

/*
 * O badge do modal volta ao fluxo inline do nome. Assim, quando o nome quebra
 * em duas linhas, o selo acompanha a última palavra em vez de ficar preso na
 * borda direita do painel.
 */
.ker-pilot-modal__name-row,
body.ker-event-detail-surface .ker-pilot-modal__name-row,
body.ker-ranking-surface .ker-pilot-modal__name-row {
    display: block !important;
    max-width: 100%;
}
.ker-pilot-modal__name-row > [data-ker-modal-name] {
    display: inline;
}
.ker-pilot-modal__name-row .ker-verified-badge,
body.ker-event-detail-surface .ker-pilot-modal__name-row .ker-verified-badge,
body.ker-ranking-surface .ker-pilot-modal__name-row .ker-verified-badge {
    width: .46em !important;
    height: .46em !important;
    min-width: 20px;
    min-height: 20px;
    max-width: 26px;
    max-height: 26px;
    display: inline-flex !important;
    margin-left: .13em !important;
    vertical-align: .02em !important;
    transform: none !important;
}

@media (max-width: 760px) {
    .ker-ranking-hero {
        padding-top: 102px;
        padding-bottom: 50px;
    }
    .ker-ranking-hero h1 {
        margin-bottom: 13px;
        font-size: clamp(3rem, 14vw, 4.8rem) !important;
        line-height: .92;
    }
    .ker-pilot-modal__name-row .ker-verified-badge,
    body.ker-event-detail-surface .ker-pilot-modal__name-row .ker-verified-badge,
    body.ker-ranking-surface .ker-pilot-modal__name-row .ker-verified-badge {
        width: .5em !important;
        height: .5em !important;
        min-width: 17px;
        min-height: 17px;
        max-width: 21px;
        max-height: 21px;
    }
}


/* ==========================================================
   KER Theme 1.6.42 — refinamentos mobile iPhone / etapa
   ========================================================== */

/* O último sobrenome e o selo formam uma unidade: podem quebrar juntos
   para a linha seguinte, mas o selo nunca se separa da última palavra. */
.ker-pilot-modal__name-row,
body.ker-event-detail-surface .ker-pilot-modal__name-row,
body.ker-ranking-surface .ker-pilot-modal__name-row {
    display: block !important;
    max-width: 100%;
    overflow: visible;
}

.ker-pilot-modal__name-row > [data-ker-modal-name],
body.ker-event-detail-surface .ker-pilot-modal__name-row > [data-ker-modal-name],
body.ker-ranking-surface .ker-pilot-modal__name-row > [data-ker-modal-name] {
    display: inline !important;
}

.ker-pilot-modal__name-tail {
    display: inline-flex;
    align-items: baseline;
    gap: .11em;
    margin-left: .18em;
    white-space: nowrap;
    vertical-align: baseline;
}

.ker-pilot-modal__name-tail.is-solo {
    margin-left: 0;
}

.ker-pilot-modal__name-tail[hidden] {
    display: none !important;
}

.ker-pilot-modal__name-tail .ker-verified-badge,
body.ker-event-detail-surface .ker-pilot-modal__name-tail .ker-verified-badge,
body.ker-ranking-surface .ker-pilot-modal__name-tail .ker-verified-badge {
    flex: 0 0 auto;
    width: .48em !important;
    height: .48em !important;
    min-width: 18px !important;
    min-height: 18px !important;
    max-width: 24px !important;
    max-height: 24px !important;
    margin: 0 !important;
    align-self: baseline;
    transform: translateY(.02em) !important;
}

@media (max-width: 760px) {
    /* ------------------------------------------------------
       Billboard da página individual da etapa
       ------------------------------------------------------ */
    body.ker-event-detail-surface .ker-event-hero.has-banner .ker-event-hero__media {
        background-position: center center !important;
        transform: none !important;
    }

    body.ker-event-detail-surface .ker-event-hero__inner {
        width: min(100% - 28px, 1360px) !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 24px !important;
    }

    body.ker-event-detail-surface .ker-event-hero__meta,
    body.ker-event-detail-surface .ker-event-hero__meta.has-event-logo {
        width: min(100%, 520px) !important;
        max-width: 520px !important;
        margin-inline: auto !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
    }

    body.ker-event-detail-surface .ker-event-hero__meta.has-event-logo .ker-event-hero__season,
    body.ker-event-detail-surface .ker-event-hero__meta.has-event-logo p {
        margin-inline: auto !important;
        text-align: center !important;
    }

    body.ker-event-detail-surface .ker-event-hero__event-logo {
        width: auto !important;
        max-width: min(330px, 82vw) !important;
        max-height: 145px !important;
        margin-inline: auto !important;
        object-position: center center !important;
    }

    body.ker-event-detail-surface .ker-event-back {
        align-self: flex-end !important;
    }

    /* Títulos editoriais compactos, mantendo leitura e descendentes. */
    body.ker-event-detail-surface .ker-event-section-heading h2,
    body.ker-event-detail-surface .ker-event-panel[data-ker-event-panel="circuito"] .ker-event-section-heading h2 {
        margin: 7px 0 5px !important;
        padding-bottom: .08em !important;
        font-size: clamp(2.15rem, 10vw, 2.9rem) !important;
        line-height: 1.03 !important;
        letter-spacing: -.055em !important;
    }

    body.ker-event-detail-surface .ker-event-section-heading p {
        font-size: .76rem !important;
        line-height: 1.48 !important;
    }

    body.ker-event-detail-surface .ker-public-kicker {
        font-size: .56rem !important;
        letter-spacing: .18em !important;
    }

    /* ------------------------------------------------------
       Posição: elimina as costuras verticais entre células
       visíveis em zoom/subpixel no Safari mobile.
       ------------------------------------------------------ */
    body.ker-event-detail-surface .ker-event-result-table {
        border-collapse: separate !important;
        border-spacing: 0 7px !important;
    }

    body.ker-event-detail-surface .ker-event-result-table tbody tr {
        background: rgba(15, 21, 28, .72) !important;
    }

    body.ker-event-detail-surface .ker-event-result-table tbody td {
        border: 0 !important;
        outline: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        -webkit-background-clip: padding-box;
        background-clip: padding-box;
    }

    body.ker-event-detail-surface .ker-event-result-table tbody td:first-child {
        border-radius: 12px 0 0 12px !important;
    }

    body.ker-event-detail-surface .ker-event-result-table tbody td:last-child {
        border-radius: 0 12px 12px 0 !important;
    }

    /* ------------------------------------------------------
       Circuito compacto no celular
       ------------------------------------------------------ */
    body.ker-event-detail-surface .ker-event-panel[data-ker-event-panel="circuito"] .ker-event-section-heading {
        margin-bottom: 14px !important;
    }

    body.ker-event-detail-surface .ker-track-toggle--floating {
        top: 9px !important;
        right: 9px !important;
        gap: 7px !important;
        padding: 6px 7px 6px 10px !important;
    }

    body.ker-event-detail-surface .ker-track-toggle--floating span {
        font-size: .57rem !important;
        line-height: 1 !important;
    }

    body.ker-event-detail-surface .ker-track-toggle--floating i {
        width: 38px !important;
        height: 21px !important;
    }

    body.ker-event-detail-surface .ker-track-toggle--floating i::after {
        width: 15px !important;
        height: 15px !important;
        top: 3px !important;
        left: 3px !important;
    }

    body.ker-event-detail-surface .ker-track-toggle--floating input:checked + i::after {
        transform: translateX(17px) !important;
    }

    body.ker-event-detail-surface .ker-circuit-stage figcaption {
        padding-top: 8px !important;
        font-size: .66rem !important;
        line-height: 1.45 !important;
    }

    /* Modal: nome mais equilibrado e selo sempre grudado ao sobrenome. */
    .ker-pilot-modal__name-tail .ker-verified-badge,
    body.ker-event-detail-surface .ker-pilot-modal__name-tail .ker-verified-badge,
    body.ker-ranking-surface .ker-pilot-modal__name-tail .ker-verified-badge {
        width: .52em !important;
        height: .52em !important;
        min-width: 18px !important;
        min-height: 18px !important;
        max-width: 22px !important;
        max-height: 22px !important;
    }

    /* Ranking: VITÓRIAS permanece em uma linha no iPhone. */
    body.ker-ranking-surface .ker-ranking-table thead th:nth-child(4) {
        white-space: nowrap !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        letter-spacing: 0 !important;
        font-size: .40rem !important;
    }
}

/* Institucional: escala mobile mais próxima de conteúdo editorial comum. */
@media (max-width: 560px) {
    .ker-institutional-subnav__inner {
        min-height: 54px !important;
    }

    .ker-institutional-subnav__links a {
        padding-inline: 13px !important;
        font-size: 8px !important;
        letter-spacing: .09em !important;
    }

    .ker-institutional-hero {
        min-height: 450px !important;
    }

    .ker-institutional-hero__inner {
        padding-inline: 20px !important;
        padding-top: 42px !important;
        padding-bottom: 58px !important;
    }

    .ker-institutional-eyebrow {
        font-size: 9px !important;
        letter-spacing: .18em !important;
    }

    .ker-institutional-hero h1 {
        max-width: 330px !important;
        margin-top: 13px !important;
        font-size: clamp(2.15rem, 10.8vw, 2.8rem) !important;
        line-height: .98 !important;
        letter-spacing: -.045em !important;
    }

    .ker-institutional-hero p {
        max-width: 340px !important;
        margin-top: 16px !important;
        font-size: .78rem !important;
        line-height: 1.52 !important;
    }

    .ker-institutional-hero__cta {
        min-height: 40px !important;
        margin-top: 22px !important;
        padding-inline: 14px !important;
        font-size: .68rem !important;
    }

    .ker-institutional-partner__inner {
        gap: 20px !important;
        padding-inline: 16px !important;
        padding-top: 40px !important;
        padding-bottom: 48px !important;
    }

    .ker-institutional-partner__logo-stage {
        width: min(100%, 390px) !important;
        aspect-ratio: 1.28 !important;
        padding: 28px !important;
    }

    .ker-institutional-partner__logo {
        max-height: 145px !important;
    }

    .ker-institutional-partner__content {
        padding: 20px 18px !important;
    }

    .ker-institutional-partner__content h2,
    .ker-institutional-partner__content--name-long h2,
    .ker-institutional-partner__content--name-xl h2 {
        margin: 9px 0 14px !important;
        font-size: clamp(1.65rem, 8.2vw, 2.2rem) !important;
        line-height: 1.02 !important;
        letter-spacing: -.035em !important;
    }

    .ker-institutional-partner__level {
        font-size: .56rem !important;
        letter-spacing: .15em !important;
    }

    .ker-institutional-partner__description {
        font-size: .76rem !important;
        line-height: 1.55 !important;
    }

    .ker-institutional-partner__socials {
        gap: 8px !important;
        margin-top: 18px !important;
        padding-top: 16px !important;
    }

    .ker-institutional-social {
        width: 38px !important;
        height: 38px !important;
    }

    .ker-institutional-social svg,
    .ker-institutional-social img {
        width: 17px !important;
        height: 17px !important;
    }
}

/* ==========================================================
   KER Theme 1.6.43 — refinamentos mobile finais
   ========================================================== */

/* Nome do modal: espaço natural entre prefixo e último sobrenome,
   mantendo o selo verificado preso à última palavra. */
.ker-pilot-modal__name-prefix:not(:empty) + .ker-pilot-modal__name-tail {
    margin-left: .22em !important;
}

.ker-pilot-modal__name-tail {
    display: inline-flex !important;
    align-items: baseline !important;
    gap: .12em !important;
    white-space: nowrap !important;
}

/* A linha de resultado é visualmente um único card. O preenchimento sólido
   + sobreposição de 1px elimina costuras de subpixel do Safari em zoom. */
body.ker-event-detail-surface .ker-event-result-table tbody td {
    border: 0 !important;
    outline: 0 !important;
    background: #10151c !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    box-shadow: 1px 0 0 #10151c !important;
    background-clip: border-box !important;
}
body.ker-event-detail-surface .ker-event-result-table tbody td:last-child {
    box-shadow: none !important;
}
body.ker-event-detail-surface .ker-event-result-table tbody tr:hover td {
    background: #161f28 !important;
    box-shadow: 1px 0 0 #161f28 !important;
}
body.ker-event-detail-surface .ker-event-result-table tbody tr:hover td:last-child {
    box-shadow: none !important;
}

@media (max-width: 760px) {
    /* Billboard: mantém a lógica do desktop. A arte fica centralizada no
       viewport; identidade/informações ancoram à esquerda e o retorno à direita. */
    body.ker-event-detail-surface .ker-event-hero {
        min-height: 570px !important;
    }

    body.ker-event-detail-surface .ker-event-hero.has-banner .ker-event-hero__media {
        background-position: center center !important;
        background-size: cover !important;
        transform: none !important;
    }

    body.ker-event-detail-surface .ker-event-hero__inner {
        width: calc(100% - 32px) !important;
        max-width: none !important;
        padding-top: 86px !important;
        padding-bottom: 80px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-end !important;
        gap: 14px !important;
    }

    body.ker-event-detail-surface .ker-event-hero__meta,
    body.ker-event-detail-surface .ker-event-hero__meta.has-event-logo {
        width: min(78vw, 360px) !important;
        max-width: min(78vw, 360px) !important;
        margin: 0 auto 0 0 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        text-align: left !important;
    }

    body.ker-event-detail-surface .ker-event-hero__meta.has-event-logo .ker-event-hero__season,
    body.ker-event-detail-surface .ker-event-hero__meta.has-event-logo p {
        margin-left: 0 !important;
        margin-right: 0 !important;
        text-align: left !important;
    }

    body.ker-event-detail-surface .ker-event-hero__event-logo {
        width: auto !important;
        max-width: min(300px, 72vw) !important;
        max-height: 132px !important;
        margin: 10px 0 9px !important;
        object-position: left center !important;
    }

    body.ker-event-detail-surface .ker-event-back {
        display: inline-flex !important;
        align-self: flex-end !important;
        margin: 0 !important;
        min-height: 42px !important;
    }

    /* Evita qualquer costura entre células também quando o usuário amplia. */
    body.ker-event-detail-surface .ker-event-result-table {
        border-collapse: separate !important;
        border-spacing: 0 7px !important;
    }
    body.ker-event-detail-surface .ker-event-result-table tbody tr {
        background: transparent !important;
    }

    /* Vitória(s) nunca quebra no cabeçalho do ranking mobile. */
    body.ker-ranking-surface .ker-ranking-table thead th:nth-child(4) {
        white-space: nowrap !important;
        word-break: keep-all !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
    }
}

@media (max-width: 430px) {
    body.ker-event-detail-surface .ker-event-hero {
        min-height: 545px !important;
    }
    body.ker-event-detail-surface .ker-event-hero__inner {
        width: calc(100% - 26px) !important;
        padding-bottom: 72px !important;
    }
    body.ker-event-detail-surface .ker-event-hero__meta,
    body.ker-event-detail-surface .ker-event-hero__meta.has-event-logo {
        width: min(80vw, 330px) !important;
        max-width: min(80vw, 330px) !important;
    }
    body.ker-event-detail-surface .ker-event-hero__event-logo {
        max-width: min(285px, 74vw) !important;
        max-height: 122px !important;
    }
}

/* ==========================================================
   KER Theme 1.6.45 — subfiltro de gênero no Novatos
   ========================================================== */
.ker-event-result-filters {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 9px;
}

.ker-event-gender-switch {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 999px;
    background: rgba(10, 14, 19, .48);
    backdrop-filter: blur(10px);
}

.ker-event-gender-switch[hidden] {
    display: none !important;
}

.ker-event-gender-switch button {
    min-height: 31px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 0 11px;
    border: 0;
    border-radius: 999px;
    color: #7f8b97;
    background: transparent;
    font-family: var(--ker-font-ui, inherit);
    font-size: .67rem;
    font-weight: 900;
    cursor: pointer;
    transition: color .18s ease, background .18s ease, transform .18s ease;
}

.ker-event-gender-switch button:hover,
.ker-event-gender-switch button:focus-visible {
    color: #fff;
}

.ker-event-gender-switch button.is-active {
    color: #071009;
    background: rgba(255, 255, 255, .95);
}

.ker-event-gender-switch button span {
    min-width: 19px;
    height: 19px;
    display: inline-grid;
    place-items: center;
    padding: 0 5px;
    border-radius: 999px;
    color: inherit;
    background: rgba(127, 139, 151, .14);
    font-size: .58rem;
    line-height: 1;
}

.ker-event-gender-switch button.is-active span {
    background: rgba(7, 16, 9, .08);
}

.ker-event-result-table tbody tr[hidden] {
    display: none !important;
}

@media (max-width: 760px) {
    .ker-event-result-filters {
        width: 100%;
        align-items: stretch;
        margin-top: 10px;
    }

    .ker-event-gender-switch {
        width: 100%;
    }

    .ker-event-gender-switch button {
        flex: 1 1 0;
        min-width: 0;
        padding: 0 7px;
        font-size: .62rem;
    }
}

/* ==========================================================
   KER Theme 1.6.46 — tabela de posição mobile mais legível
   ========================================================== */

/* Mantém a última palavra e o verificado como uma unidade visual. */
.ker-event-result-pilot .ker-public-pilot-name-tail {
    display: inline-flex;
    align-items: center;
    gap: .10em;
    white-space: nowrap;
    vertical-align: baseline;
}

.ker-event-result-pilot .ker-public-pilot-name-tail .ker-verified-badge {
    flex: 0 0 auto;
    margin-left: .05em !important;
}

@media (max-width: 760px) {
    /* Dá prioridade ao nome do piloto sem aumentar a largura total da tabela. */
    body.ker-event-detail-surface .ker-event-result-table th,
    body.ker-event-detail-surface .ker-event-result-table td {
        padding-left: .5px !important;
        padding-right: .5px !important;
    }

    body.ker-event-detail-surface .ker-event-result-table th:nth-child(1),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(1) { width: 5.5% !important; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(2),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(2) { width: 3% !important; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(3),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(3) { width: 19% !important; text-align: left !important; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(4),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(4) { width: 6.5% !important; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(5),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(5) { width: 4% !important; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(6),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(6) { width: 9.5% !important; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(7),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(7) { width: 11% !important; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(8),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(8) { width: 8% !important; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(9),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(9) { width: 8% !important; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(10),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(10) { width: 9.5% !important; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(11),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(11) { width: 3.5% !important; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(12),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(12) { width: 8% !important; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(13),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(13) { width: 4% !important; }

    /* STATUS e MV deixam de parecer uma única palavra no cabeçalho. */
    body.ker-event-detail-surface .ker-event-result-table thead th:nth-child(4) {
        padding-right: 3px !important;
        letter-spacing: -.015em !important;
    }
    body.ker-event-detail-surface .ker-event-result-table thead th:nth-child(5) {
        padding-left: 3px !important;
        letter-spacing: .015em !important;
    }

    body.ker-event-detail-surface .ker-event-result-pilot {
        gap: 2px !important;
        font-size: .42rem !important;
        line-height: 1.08 !important;
    }

    body.ker-event-detail-surface .ker-event-result-pilot .ker-public-avatar {
        width: 18px !important;
        height: 18px !important;
        min-width: 18px !important;
        min-height: 18px !important;
        max-width: 18px !important;
        max-height: 18px !important;
        flex-basis: 18px !important;
    }

    body.ker-event-detail-surface .ker-event-result-pilot > .ker-public-pilot-name {
        min-width: 0;
        display: -webkit-box !important;
        overflow: hidden !important;
        line-height: 1.08 !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
    }

    body.ker-event-detail-surface .ker-event-result-pilot .ker-public-pilot-name-tail {
        display: inline-flex !important;
        align-items: center !important;
        gap: .08em !important;
        white-space: nowrap !important;
    }

    body.ker-event-detail-surface .ker-event-result-pilot .ker-public-pilot-name-tail .ker-verified-badge {
        width: 10px !important;
        height: 10px !important;
        min-width: 10px !important;
        min-height: 10px !important;
        flex-basis: 10px !important;
        margin: 0 0 0 1px !important;
        vertical-align: middle !important;
    }

    body.ker-event-detail-surface .ker-event-status {
        padding-inline: 1px !important;
        font-size: .31rem !important;
    }
}

@media (max-width: 430px) {
    body.ker-event-detail-surface .ker-event-result-pilot {
        font-size: .40rem !important;
    }

    body.ker-event-detail-surface .ker-event-result-table thead th {
        font-size: .35rem !important;
    }
}

/* ==========================================================
   KER Theme 1.6.47 — nomes naturais na posição mobile
   ========================================================== */
@media (max-width: 760px) {
    /* O nome volta a se comportar como texto corrido: só quebra quando
       realmente faltar largura. O limite visual continua sendo 2 linhas. */
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(3),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(3) {
        width: 21% !important;
        text-align: left !important;
    }

    body.ker-event-detail-surface .ker-event-result-table th:nth-child(7),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(7) { width: 10% !important; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(8),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(8) { width: 7.5% !important; }
    body.ker-event-detail-surface .ker-event-result-table th:nth-child(9),
    body.ker-event-detail-surface .ker-event-result-table td:nth-child(9) { width: 7.5% !important; }

    body.ker-event-detail-surface .ker-event-result-pilot {
        justify-content: flex-start !important;
        text-align: left !important;
    }

    body.ker-event-detail-surface .ker-event-result-pilot > .ker-public-pilot-name {
        width: 100% !important;
        min-width: 0 !important;
        display: -webkit-box !important;
        overflow: hidden !important;
        text-align: left !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
        line-height: 1.08 !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
    }

    /* A regra antiga aplicava display:-webkit-box a TODO span do botão,
       fazendo nome e sobrenome virarem blocos separados. */
    body.ker-event-detail-surface .ker-event-result-pilot .ker-public-pilot-name-prefix {
        display: inline !important;
        overflow: visible !important;
        white-space: normal !important;
        line-height: inherit !important;
        -webkit-line-clamp: unset !important;
        -webkit-box-orient: initial !important;
    }

    /* Última palavra + verificado continuam juntos, como nas redes sociais. */
    body.ker-event-detail-surface .ker-event-result-pilot .ker-public-pilot-name-tail {
        display: inline-flex !important;
        align-items: center !important;
        gap: .08em !important;
        white-space: nowrap !important;
        vertical-align: baseline !important;
        overflow: visible !important;
        line-height: inherit !important;
        -webkit-line-clamp: unset !important;
        -webkit-box-orient: initial !important;
    }
}

/* ==========================================================
   KER Theme 1.6.50 — conta no header + mobile resilience
   ========================================================== */
.ker-header-profile {
    position: relative;
    display: flex;
    align-items: center;
}

.ker-header-profile .ker-header-account-link {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 16px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 999px;
    color: #fff;
    background: rgba(255,255,255,.04);
    font: inherit;
    font-size: .72rem;
    font-weight: 850;
    text-decoration: none;
    cursor: pointer;
}
.ker-header-profile .ker-header-account-link:hover,
.ker-header-profile.is-open .ker-header-account-link {
    border-color: rgba(255,255,255,.24);
    background: rgba(255,255,255,.09);
}

.ker-header-profile-panel[hidden] { display: none !important; }
.ker-header-profile-panel {
    position: absolute;
    z-index: 1010;
    width: 250px;
    right: 0;
    top: calc(100% + 12px);
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.11);
    border-radius: 16px;
    color: #fff;
    background: rgba(20,13,16,.98);
    box-shadow: 0 26px 70px rgba(0,0,0,.42);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    animation: ker-notification-panel-in .14s ease both;
}
.ker-header-profile-panel__head {
    display: grid;
    gap: 2px;
    padding: 15px 16px 13px;
    border-bottom: 1px solid rgba(255,255,255,.065);
}
.ker-header-profile-panel__head span {
    color: rgba(255,255,255,.34);
    font-size: .5rem;
    font-weight: 950;
    letter-spacing: .12em;
}
.ker-header-profile-panel__head strong {
    overflow: hidden;
    color: rgba(255,255,255,.92);
    font-size: .72rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.ker-header-profile-panel nav { display: grid; padding: 6px; }
.ker-header-profile-panel nav a,
.ker-header-profile-panel__logout {
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 0 10px;
    border-radius: 10px;
    color: rgba(255,255,255,.67);
    font-size: .62rem;
    font-weight: 800;
    text-decoration: none;
}
.ker-header-profile-panel nav a:hover {
    color: #fff;
    background: rgba(255,255,255,.045);
}
.ker-header-profile-panel nav b,
.ker-header-profile-panel__logout b { color: rgba(255,255,255,.25); font-size: .75rem; }
.ker-header-profile-panel__logout {
    min-height: 44px;
    margin: 0 6px 6px;
    border-top: 1px solid rgba(255,255,255,.06);
    border-radius: 10px;
    color: #ff9ca7;
}
.ker-header-profile-panel__logout:hover { color: #fff; background: rgba(215,38,56,.10); }

/* Evita que qualquer bloco da Área do Piloto force o documento para fora da viewport. */
.ker-pilot-area,
.ker-pilot-layout,
.ker-pilot-sidebar,
.ker-pilot-main,
.ker-pilot-main > *,
.ker-pilot-panel,
.ker-performance-panel { min-width: 0; max-width: 100%; }

@media (max-width: 760px) {
    html,
    body {
        max-width: 100%;
        overflow-x: clip;
    }
    #conteudo,
    .ker-pilot-area {
        width: 100%;
        max-width: 100%;
        overflow-x: clip;
    }
    .ker-container {
        width: calc(100% - 24px);
        max-width: calc(100% - 24px);
    }

    .ker-header-account { max-width: calc(50% - 64px); }
    .ker-header-profile { flex: 0 0 auto; }
    .ker-header-profile .ker-header-account-link {
        width: 40px;
        height: 40px;
        min-height: 40px;
        padding: 0 !important;
        border-color: rgba(255,255,255,.12);
        border-radius: 50%;
        color: rgba(255,255,255,.88);
        background: transparent;
    }
    .ker-header-profile .ker-header-account-link__icon { display: block; }
    .ker-header-profile .ker-header-account-link__label { display: none; }

    /* Os painéis são movidos para body via JS no mobile para não herdarem
       containing-block do header/backdrop-filter do Safari. */
    body > .ker-header-notification-panel,
    body > .ker-header-profile-panel,
    .ker-header-notification-panel[data-ker-portal="1"],
    .ker-header-profile-panel[data-ker-portal="1"] {
        position: fixed !important;
        z-index: 2147482000 !important;
        left: max(12px, env(safe-area-inset-left)) !important;
        right: max(12px, env(safe-area-inset-right)) !important;
        top: calc(74px + env(safe-area-inset-top)) !important;
        width: auto !important;
        max-width: none !important;
        max-height: calc(100dvh - 90px - env(safe-area-inset-top) - env(safe-area-inset-bottom));
        margin: 0 !important;
        transform: none !important;
        border-radius: 18px;
    }
    body > .ker-header-notification-panel .ker-header-notification-list,
    .ker-header-notification-panel[data-ker-portal="1"] .ker-header-notification-list {
        max-height: min(58dvh, 460px);
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }
    body > .ker-header-notification-panel .ker-header-notification-panel__head,
    .ker-header-notification-panel[data-ker-portal="1"] .ker-header-notification-panel__head {
        gap: 10px;
        padding: 14px;
    }
    body > .ker-header-notification-panel .ker-header-notification-panel__head > a,
    .ker-header-notification-panel[data-ker-portal="1"] .ker-header-notification-panel__head > a {
        flex: 0 0 auto;
        white-space: nowrap;
    }
    body > .ker-header-notification-panel .ker-header-notification-item,
    .ker-header-notification-panel[data-ker-portal="1"] .ker-header-notification-item {
        grid-template-columns: 34px minmax(0,1fr) 7px;
        padding: 12px;
    }
    body > .ker-header-notification-panel .ker-header-notification-item__content strong,
    .ker-header-notification-panel[data-ker-portal="1"] .ker-header-notification-item__content strong {
        white-space: normal;
        line-height: 1.25;
    }

    .ker-header-profile-panel nav { padding: 8px; }
    .ker-header-profile-panel nav a,
    .ker-header-profile-panel__logout { min-height: 46px; font-size: .7rem; }

    .ker-pilot-area { padding-top: 88px; padding-bottom: 62px; }
    .ker-pilot-layout { width: 100%; gap: 20px; }
    .ker-pilot-sidebar { width: 100%; max-width: 100%; gap: 14px; overflow: hidden; }
    .ker-pilot-identity { max-width: 100%; }
    .ker-pilot-identity > div { min-width: 0; }
    .ker-pilot-identity__name { min-width: 0; }
    .ker-pilot-identity strong,
    .ker-pilot-identity span { max-width: 100%; }

    .ker-pilot-nav {
        width: 100%;
        max-width: 100%;
        display: flex;
        gap: 5px;
        overflow-x: auto;
        overflow-y: hidden;
        padding: 0 0 5px;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }
    .ker-pilot-nav::-webkit-scrollbar { display: none; }
    .ker-pilot-nav a {
        flex: 0 0 auto;
        min-height: 40px;
        padding: 0 11px;
        white-space: nowrap;
    }

    .ker-pilot-page-head { max-width: 100%; margin-bottom: 20px; }
    .ker-pilot-page-head h1,
    .ker-pilot-heading-name {
        max-width: 100%;
        font-size: clamp(2.05rem, 10.8vw, 3.25rem);
        line-height: .98;
        letter-spacing: -.05em;
        overflow-wrap: anywhere;
        word-break: normal;
    }
    .ker-pilot-page-head p {
        max-width: 100%;
        font-size: .9rem;
        line-height: 1.6;
        overflow-wrap: anywhere;
    }
    .ker-pilot-kpis,
    .ker-pilot-dashboard-grid,
    .ker-performance-summary,
    .ker-performance-kpis,
    .ker-performance-records {
        max-width: 100%;
    }
    .ker-pilot-panel,
    .ker-performance-panel,
    .ker-pilot-next-stage,
    .ker-pilot-season-card {
        overflow: hidden;
    }
    .ker-performance-detail-table-wrap,
    .ker-pilot-registration-table-wrap,
    .ker-public-table-wrap {
        max-width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

@media (max-width: 430px) {
    .ker-header-profile .ker-header-account-link {
        width: 35px;
        height: 35px;
        min-height: 35px;
    }
    .ker-pilot-page-head h1,
    .ker-pilot-heading-name { font-size: clamp(1.95rem, 10.4vw, 2.8rem); }
    .ker-pilot-page-head p { font-size: .82rem; }
}


/* KER Theme 1.6.51 — segurança do perfil + seletor de data escuro */
.ker-pilot-form-grid input[type="date"]{
    color-scheme:dark;
}
.ker-pilot-form-grid input[type="date"]::-webkit-calendar-picker-indicator{
    opacity:.9;
    filter:invert(1) brightness(1.45);
    cursor:pointer;
}
.ker-pilot-security-panel{
    margin-top:12px;
    overflow:hidden;
}
.ker-pilot-security-head{
    align-items:flex-start;
}
.ker-pilot-security-head > div{
    min-width:0;
}
.ker-pilot-security-head p{
    margin:7px 0 0;
    max-width:650px;
    color:rgba(255,255,255,.42);
    font-size:.66rem;
    line-height:1.55;
}
.ker-pilot-security-badge{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:0 11px;
    border:1px solid rgba(88,226,123,.22);
    border-radius:999px;
    color:#8fe8a5;
    background:rgba(43,190,76,.08);
    font-size:.55rem;
    font-weight:900;
    letter-spacing:.055em;
    text-transform:uppercase;
}
.ker-pilot-password-form{
    display:grid;
    gap:18px;
}
.ker-pilot-password-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:11px;
}
.ker-pilot-password-grid label{
    display:grid;
    gap:6px;
}
.ker-pilot-password-grid label.is-wide{
    grid-column:1/-1;
}
.ker-pilot-password-grid label > span{
    color:rgba(255,255,255,.42);
    font-size:.6rem;
    font-weight:800;
}
.ker-pilot-password-grid label > small{
    color:rgba(255,255,255,.28);
    font-size:.56rem;
}
.ker-pilot-password-grid input{
    width:100%;
    min-height:43px;
    padding:0 12px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:9px;
    color:#fff;
    background:rgba(255,255,255,.025);
    outline:none;
    font:inherit;
}
.ker-pilot-password-grid input:focus{
    border-color:rgba(var(--ker-accent-bright-rgb),.42);
    box-shadow:0 0 0 3px rgba(var(--ker-accent-bright-rgb),.08);
}
.ker-pilot-password-submit{
    margin-top:0;
}

.ker-registration-birthdate-field{
    min-width:0;
}
.ker-registration-field-grid input.ker-birthdate-native{
    color-scheme:dark;
}
.ker-registration-field-grid input.ker-birthdate-native::-webkit-calendar-picker-indicator{
    opacity:.9;
    filter:invert(1) brightness(1.45);
    cursor:pointer;
}
.ker-birthdate-control{
    position:relative;
    display:block;
    width:100%;
}
.ker-registration-field-grid .ker-birthdate-display{
    padding-right:48px;
    cursor:pointer;
    color:#fff;
    background:rgba(5,5,7,.28);
}
.ker-registration-field-grid .ker-birthdate-display:focus{
    border-color:rgba(255,255,255,.30);
    background:rgba(5,5,7,.40);
}
.ker-birthdate-button{
    position:absolute;
    z-index:2;
    top:50%;
    right:8px;
    width:34px;
    height:34px;
    padding:0;
    transform:translateY(-50%);
    display:grid;
    place-items:center;
    border:1px solid transparent;
    border-radius:9px;
    color:rgba(255,255,255,.82);
    background:transparent;
    cursor:pointer;
}
.ker-birthdate-button:hover,
.ker-birthdate-button[aria-expanded="true"]{
    border-color:rgba(255,255,255,.08);
    color:#fff;
    background:rgba(255,255,255,.06);
}
.ker-birthdate-button svg{
    width:18px;
    height:18px;
    display:block;
}
.ker-birthdate-popover{
    position:absolute;
    z-index:100500;
    width:338px;
    max-width:calc(100vw - 32px);
    padding:15px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:18px;
    color:#fff;
    background:linear-gradient(180deg,#191217 0%,#120d11 100%);
    box-shadow:0 28px 80px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.025) inset;
    -webkit-backdrop-filter:blur(18px);
    backdrop-filter:blur(18px);
    font-family:inherit;
}
.ker-birthdate-popover[hidden]{display:none!important}
.ker-birthdate-popover__head{
    display:grid;
    grid-template-columns:38px minmax(0,1fr) 86px 38px;
    gap:7px;
    align-items:center;
    margin-bottom:13px;
}
.ker-birthdate-nav,
.ker-birthdate-select,
.ker-birthdate-clear,
.ker-birthdate-today{
    min-height:38px;
    border:1px solid rgba(255,255,255,.10);
    border-radius:10px;
    color:#fff;
    background:rgba(255,255,255,.035);
    box-shadow:none;
    outline:none;
    font:inherit;
}
.ker-birthdate-nav{
    padding:0;
    font-size:1.35rem;
    line-height:1;
    cursor:pointer;
}
.ker-birthdate-nav:hover:not(:disabled){background:rgba(255,255,255,.075)}
.ker-birthdate-nav:disabled{opacity:.22;cursor:not-allowed}
.ker-birthdate-select{
    width:100%;
    padding:0 9px;
    font-size:.62rem;
    font-weight:850;
    cursor:pointer;
    color-scheme:dark;
}
.ker-birthdate-select option{
    color:#fff;
    background:#171116;
}
.ker-birthdate-weekdays,
.ker-birthdate-grid{
    display:grid;
    grid-template-columns:repeat(7,1fr);
    gap:5px;
}
.ker-birthdate-weekdays{
    margin-bottom:6px;
}
.ker-birthdate-weekdays span{
    text-align:center;
    color:rgba(255,255,255,.34);
    font-size:.52rem;
    font-weight:900;
}
.ker-birthdate-day{
    aspect-ratio:1;
    padding:0;
    border:1px solid transparent;
    border-radius:10px;
    color:rgba(255,255,255,.86);
    background:transparent;
    font:inherit;
    font-size:.66rem;
    font-weight:800;
    cursor:pointer;
}
.ker-birthdate-day:hover:not(:disabled){
    border-color:rgba(255,255,255,.07);
    background:rgba(255,255,255,.07);
}
.ker-birthdate-day.is-today{
    border-color:rgba(var(--ker-accent-bright-rgb),.48);
}
.ker-birthdate-day.is-selected{
    border-color:var(--ker-accent);
    color:#fff;
    background:var(--ker-accent);
    box-shadow:0 5px 16px rgba(var(--ker-accent-bright-rgb),.18);
}
.ker-birthdate-day:disabled{
    opacity:.18;
    cursor:not-allowed;
}
.ker-birthdate-empty{aspect-ratio:1}
.ker-birthdate-popover__footer{
    display:flex;
    justify-content:space-between;
    gap:8px;
    margin-top:13px;
    padding-top:12px;
    border-top:1px solid rgba(255,255,255,.07);
}
.ker-birthdate-clear,
.ker-birthdate-today{
    padding:0 12px;
    color:rgba(255,255,255,.60);
    font-size:.57rem;
    font-weight:850;
    cursor:pointer;
}
.ker-birthdate-clear:hover,
.ker-birthdate-today:hover{
    color:#fff;
    background:rgba(255,255,255,.07);
}
@media(max-width:760px){
    .ker-pilot-password-grid{grid-template-columns:1fr}
    .ker-pilot-password-grid label.is-wide{grid-column:auto}
    .ker-pilot-security-head{align-items:flex-start;flex-direction:column}
}
@media(max-width:560px){
    .ker-birthdate-popover{
        position:fixed!important;
        left:12px!important;
        right:12px!important;
        bottom:12px!important;
        top:auto!important;
        width:auto!important;
        max-width:none!important;
        padding:14px;
        border-radius:20px;
    }
}

/* =========================================================
   KER Theme v1.6.52 — perfil + Rival Engine persistente
   ========================================================= */
.ker-pilot-password-grid{
    align-items:start;
}
.ker-pilot-password-grid label{
    align-content:start;
}
.ker-password-input{
    position:relative;
    display:block;
    min-width:0;
    color:inherit!important;
    font-size:inherit!important;
    font-weight:inherit!important;
}
.ker-pilot-password-grid .ker-password-input input{
    padding-right:48px;
}
.ker-password-toggle{
    position:absolute;
    top:50%;
    right:8px;
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    padding:0;
    border:0;
    border-radius:8px;
    color:rgba(255,255,255,.48);
    background:transparent;
    cursor:pointer;
    transform:translateY(-50%);
}
.ker-password-toggle:hover,
.ker-password-toggle:focus-visible{
    color:#fff;
    background:rgba(255,255,255,.06);
    outline:none;
}
.ker-password-toggle svg{
    width:19px;
    height:19px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.ker-password-toggle[aria-pressed="true"]::after{
    content:"";
    position:absolute;
    width:21px;
    height:1.5px;
    border-radius:999px;
    background:currentColor;
    transform:rotate(-38deg);
}
.ker-password-help-placeholder{
    visibility:hidden;
}

/* Temporada e categoria usam a mesma régua visual em desktop e mobile. */
.ker-performance-filterbar{
    align-items:flex-start;
}
.ker-performance-filterbar .ker-pilot-season-switcher,
.ker-performance-category-filter{
    display:grid;
    align-content:start;
    align-items:start;
    gap:6px;
    margin-bottom:0;
}
.ker-performance-filterbar .ker-pilot-season-switcher>span,
.ker-performance-category-filter>span{
    min-height:12px;
    display:flex;
    align-items:center;
    color:rgba(255,255,255,.34);
    font-size:.54rem;
    line-height:1;
    font-weight:850;
    text-transform:uppercase;
    letter-spacing:.06em;
}
.ker-performance-filterbar .ker-pilot-season-switcher>div,
.ker-performance-category-filter>div{
    min-height:32px;
    display:flex;
    align-items:center;
    gap:5px;
}
.ker-performance-filterbar .ker-pilot-season-switcher a,
.ker-performance-category-filter a{
    min-height:32px;
    height:32px;
    box-sizing:border-box;
}

/* Vários rivais ficam persistentes em uma faixa própria de atalhos. */
.ker-performance-rivals-strip{
    flex:1 1 100%;
    width:100%;
    display:flex;
    gap:8px;
    overflow-x:auto;
    overflow-y:hidden;
    padding:2px 0 3px;
    scrollbar-width:thin;
}
.ker-performance-rivals-strip .ker-performance-rival-shortcut{
    flex:0 0 min(310px,82vw);
    margin-left:0;
}

/* Ao comparar, o bloco aparece antes das estatísticas. */
.ker-rival-comparison--priority{
    margin:0 0 16px;
    scroll-margin-top:112px;
}
.ker-rival-actions form{
    display:flex;
    margin:0;
}
.ker-rival-follow-toggle{
    gap:8px!important;
    padding:0 11px 0 8px!important;
    white-space:nowrap;
}
.ker-rival-follow-toggle>span:last-child{
    color:inherit!important;
    font:inherit!important;
    letter-spacing:normal!important;
}
.ker-rival-switch{
    position:relative;
    width:34px;
    height:20px;
    flex:0 0 34px;
    display:block;
    border:1px solid rgba(255,255,255,.16);
    border-radius:999px;
    background:rgba(255,255,255,.06);
    transition:.18s ease;
}
.ker-rival-switch i{
    position:absolute;
    top:3px;
    left:3px;
    width:12px;
    height:12px;
    border-radius:50%;
    background:rgba(255,255,255,.62);
    box-shadow:0 1px 4px rgba(0,0,0,.35);
    transition:.18s ease;
}
.ker-rival-follow-toggle.is-rival .ker-rival-switch{
    border-color:rgba(98,220,143,.34);
    background:rgba(55,185,103,.18);
}
.ker-rival-follow-toggle.is-rival .ker-rival-switch i{
    left:17px;
    background:#79e19f;
}

@media (max-width:760px){
    /* No mobile, Desempenho vira a primeira aba sem alterar a ordem do desktop. */
    .ker-pilot-nav a[href*="desempenho"]{
        order:-1;
    }
    .ker-performance-filterbar{
        gap:12px 10px;
    }
    .ker-performance-rivals-strip{
        margin-top:2px;
        padding-bottom:6px;
    }
    .ker-performance-rivals-strip .ker-performance-rival-shortcut{
        flex-basis:min(300px,88vw);
    }
    .ker-rival-comparison--priority{
        scroll-margin-top:92px;
    }
    .ker-rival-actions{
        width:100%;
    }
    .ker-rival-actions form,
    .ker-rival-follow-toggle{
        width:100%;
    }
    .ker-rival-follow-toggle{
        justify-content:flex-start;
    }
}


/* =========================================================
   KER Theme v1.6.53 — múltiplos rivais + temporada visível
   ========================================================= */
.ker-performance-filterbar .ker-pilot-season-switcher > div{
    visibility:visible!important;
    opacity:1!important;
}
.ker-performance-filterbar .ker-pilot-season-switcher a{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:58px;
    padding:0 12px;
    color:rgba(255,255,255,.72)!important;
    visibility:visible!important;
    opacity:1!important;
}
.ker-performance-filterbar .ker-pilot-season-switcher a.is-active{
    color:#fff!important;
}
.ker-performance-rivals-strip{
    scroll-snap-type:x proximity;
    overscroll-behavior-inline:contain;
}
.ker-performance-rivals-strip .ker-performance-rival-shortcut{
    scroll-snap-align:start;
}
@media (max-width:760px){
    .ker-performance-rivals-strip .ker-performance-rival-shortcut{
        flex-basis:min(255px,74vw);
    }
}

/* =========================================================
   KER Theme v1.6.55 — Login com Google
   ========================================================= */
.ker-google-login-button,
.ker-google-connect-button{
    width:100%;
    min-height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:11px;
    padding:0 18px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:12px;
    color:#f7f7f7;
    background:rgba(255,255,255,.045);
    text-decoration:none;
    font-size:.72rem;
    font-weight:900;
    transition:border-color .18s ease,background .18s ease,transform .18s ease;
}
.ker-google-login-button:hover,
.ker-google-connect-button:hover{
    color:#fff;
    border-color:rgba(255,255,255,.24);
    background:rgba(255,255,255,.08);
    transform:translateY(-1px);
}
.ker-google-mark{
    flex:0 0 auto;
    width:22px;
    height:22px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    line-height:1;
}
.ker-google-mark svg{
    display:block;
    width:20px;
    height:20px;
}
.ker-auth-divider{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:17px 0;
    color:rgba(255,255,255,.28);
    font-size:.58rem;
    font-weight:800;
    text-transform:uppercase;
}
.ker-auth-divider::before,
.ker-auth-divider::after{
    content:"";
    height:1px;
    flex:1 1 auto;
    background:rgba(255,255,255,.08);
}
.ker-auth-divider span{
    padding:0 12px;
}
.ker-google-link-form .ker-password-input{
    display:block;
}
.ker-google-link-form .ker-password-input input{
    padding-right:48px;
}

.ker-google-profile-access{
    margin-top:22px;
    padding-top:22px;
    border-top:1px solid rgba(255,255,255,.075);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
}
.ker-google-profile-access__copy{
    min-width:0;
}
.ker-google-profile-access__copy>span{
    display:block;
    margin-bottom:7px;
    color:#61d87f;
    font-size:.55rem;
    font-weight:950;
    letter-spacing:.09em;
}
.ker-google-profile-access__copy h3{
    margin:0;
    color:#fff;
    font-size:1rem;
    line-height:1.2;
}
.ker-google-profile-access__copy p{
    max-width:650px;
    margin:7px 0 0;
    color:rgba(255,255,255,.42);
    font-size:.64rem;
    line-height:1.55;
}
.ker-google-profile-access__copy strong{
    display:inline-flex;
    margin-top:10px;
    color:rgba(255,255,255,.82);
    font-size:.66rem;
    font-weight:850;
}
.ker-google-connect-button{
    width:auto;
    min-width:190px;
    flex:0 0 auto;
}
.ker-google-disconnect-form{
    flex:0 0 auto;
    margin:0;
}
.ker-google-disconnect-form button{
    min-height:42px;
    padding:0 15px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:10px;
    color:rgba(255,255,255,.68);
    background:rgba(255,255,255,.035);
    font:inherit;
    font-size:.62rem;
    font-weight:850;
    cursor:pointer;
}
.ker-google-disconnect-form button:hover{
    color:#fff;
    border-color:rgba(255,255,255,.22);
    background:rgba(255,255,255,.07);
}
@media(max-width:760px){
    .ker-google-profile-access{
        align-items:stretch;
        flex-direction:column;
    }
    .ker-google-connect-button,
    .ker-google-disconnect-form,
    .ker-google-disconnect-form button{
        width:100%;
    }
}


/* KER Theme 1.6.56 — Pré-cadastro de pilotos */
.ker-pre-registration-form input[type="date"] {
    color-scheme: dark;
}

.ker-pre-registration-form input[type="date"]::-webkit-calendar-picker-indicator {
    opacity: .78;
    filter: invert(1);
    cursor: pointer;
}

.ker-pre-registration-honeypot {
    position: absolute !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.ker-account-request-title {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}

/* =========================================================
   KER Theme 1.6.57 — Pré-cadastro Glass + Inscrições sem etapa
   ========================================================= */
.ker-pre-registration-page {
    min-height: 100svh;
    display: grid;
    align-items: center;
    position: relative;
    overflow: hidden;
    padding: 132px 20px 92px;
    background-color: #0b0b0d;
    background-image:
        linear-gradient(180deg, rgba(6,7,9,.36), rgba(6,7,9,.62)),
        var(--ker-pre-bg-desktop, none);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.ker-pre-registration-backdrop {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 18% 28%, rgba(255,255,255,.08), transparent 26rem),
        radial-gradient(circle at 82% 70%, rgba(255,255,255,.05), transparent 24rem),
        linear-gradient(180deg, transparent 50%, rgba(0,0,0,.18));
    pointer-events: none;
}
.ker-pre-registration-shell {
    position: relative;
    z-index: 2;
    width: min(100%, 1160px);
    display: flex;
    justify-content: center;
}
.ker-pre-registration-glass {
    width: min(100%, 560px);
    padding: clamp(24px, 4vw, 42px);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 28px;
    background: linear-gradient(145deg, rgba(255,255,255,.105), rgba(255,255,255,.035));
    box-shadow: 0 30px 90px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.08);
    -webkit-backdrop-filter: blur(28px) saturate(118%);
    backdrop-filter: blur(28px) saturate(118%);
}
.ker-pre-registration-copy { text-align: center; }
.ker-pre-registration-copy > span {
    display: inline-block;
    margin-bottom: 10px;
    color: rgba(255,255,255,.6);
    font-size: .63rem;
    font-weight: 900;
    letter-spacing: .16em;
}
.ker-pre-registration-copy h1 {
    margin: 0 0 12px;
    color: #fff;
    font-size: clamp(2rem, 5vw, 3.35rem);
    line-height: .98;
    letter-spacing: -.05em;
}
.ker-pre-registration-copy p {
    margin: 0 auto 26px;
    max-width: 470px;
    color: rgba(255,255,255,.62);
    font-size: .86rem;
    line-height: 1.65;
}
.ker-pre-registration-logo {
    display: flex;
    justify-content: center;
    align-items: center;
}
.ker-pre-registration-logo img { width: auto; max-width: min(78%, 320px); object-fit: contain; }
.ker-pre-registration-logo--top { margin-bottom: 28px; }
.ker-pre-registration-logo--top img { max-height: 90px; }
.ker-pre-registration-logo--bottom { margin-top: 30px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.1); }
.ker-pre-registration-logo--bottom img { max-height: 54px; opacity: .9; }
.ker-pre-registration-glass .ker-auth-notice { margin-bottom: 20px; }
.ker-pre-registration-glass .ker-auth-form input:not([type="checkbox"]) {
    background: rgba(8,10,12,.28);
    border-color: rgba(255,255,255,.16);
}
.ker-pre-registration-glass .ker-auth-form input:not([type="checkbox"]):focus {
    background: rgba(8,10,12,.38);
}
.ker-pre-registration-glass .ker-auth-form button[type="submit"] {
    border: 1px solid rgba(255,255,255,.12);
    box-shadow: 0 12px 34px rgba(0,0,0,.22);
}
.ker-pre-registration-glass .ker-auth-form > small { color: rgba(255,255,255,.4); text-align: center; line-height: 1.5; }

.ker-registration-empty-hero {
    position: relative;
    min-height: max(720px, 86svh);
    display: grid;
    place-items: center;
    overflow: hidden;
    padding: 150px 20px 100px;
    background-color: #090d0d;
    background-image: var(--ker-registration-empty-bg, none);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.ker-registration-empty-hero__shade {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(3,6,6,.35) 0%, rgba(3,6,6,.5) 50%, #07100f 100%),
        radial-gradient(circle at 50% 34%, rgba(0,0,0,.12), rgba(0,0,0,.55) 74%);
}
.ker-registration-empty-hero__content {
    position: relative;
    z-index: 2;
    display: grid;
    justify-items: center;
    text-align: center;
}
.ker-registration-empty-hero__kicker {
    margin-bottom: 14px;
    color: rgba(255,255,255,.72);
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .22em;
}
.ker-registration-empty-hero h1 {
    margin: 0;
    color: #fff;
    font-size: clamp(4rem, 10vw, 8rem);
    line-height: .88;
    letter-spacing: -.075em;
    text-shadow: 0 8px 34px rgba(0,0,0,.3);
}
.ker-registration-empty-hero__content > p {
    max-width: 780px;
    margin: 28px auto 0;
    color: rgba(255,255,255,.76);
    font-size: clamp(.92rem, 1.5vw, 1.08rem);
    line-height: 1.65;
}
.ker-registration-empty-sponsors {
    width: min(100%, 900px);
    margin-top: 34px;
}
.ker-registration-empty-sponsors .ker-sponsors {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 0;
}
.ker-registration-empty-sponsors .ker-sponsors__item {
    position: relative;
    flex: 0 1 auto;
    min-width: 0;
    min-height: 66px;
    padding: 8px 32px;
}
.ker-registration-empty-sponsors .ker-sponsors__item:not(:last-child)::after {
    content: "×";
    position: absolute;
    right: -4px;
    top: 50%;
    transform: translateY(-50%);
    color: rgba(255,255,255,.34);
    font-size: 1.15rem;
    font-weight: 300;
}
.ker-registration-empty-sponsors .ker-sponsors__logo,
.ker-registration-empty-sponsors .ker-sponsors__item--master .ker-sponsors__logo {
    max-width: 130px;
    max-height: 58px;
    filter: drop-shadow(0 4px 14px rgba(0,0,0,.22));
}
.ker-registration-empty-sponsors .ker-sponsors__fallback { color: rgba(255,255,255,.8); }
.ker-registration-empty-cta {
    min-height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 30px;
    padding: 0 28px;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 999px;
    color: var(--ker-registration-empty-button-text, #fff);
    background: var(--ker-registration-empty-button-bg, #159447);
    box-shadow: 0 16px 42px rgba(0,0,0,.28);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .05em;
    text-decoration: none;
    transition: transform .22s ease, box-shadow .22s ease, color .22s ease, background .22s ease;
}
.ker-registration-empty-cta:hover {
    color: var(--ker-registration-empty-button-text-hover, #fff);
    background: var(--ker-registration-empty-button-bg-hover, #32c86b);
    transform: translateY(-2px);
    box-shadow: 0 20px 52px rgba(0,0,0,.34);
}
.ker-registration-empty-cta span:last-child { font-size: 1rem; transition: transform .22s ease; }
.ker-registration-empty-cta:hover span:last-child { transform: translateX(3px); }

@media (max-width: 760px) {
    .ker-pre-registration-page {
        padding: 112px 14px 64px;
        background-image:
            linear-gradient(180deg, rgba(6,7,9,.34), rgba(6,7,9,.66)),
            var(--ker-pre-bg-mobile, var(--ker-pre-bg-desktop, none));
    }
    .ker-pre-registration-glass { border-radius: 22px; padding: 24px 20px; }
    .ker-pre-registration-logo--top { margin-bottom: 22px; }
    .ker-pre-registration-copy p { margin-bottom: 22px; font-size: .82rem; }
    .ker-registration-empty-hero { min-height: 82svh; padding: 126px 16px 76px; }
    .ker-registration-empty-hero h1 { font-size: clamp(3.3rem, 18vw, 5.7rem); }
    .ker-registration-empty-hero__content > p { margin-top: 22px; font-size: .88rem; }
    .ker-registration-empty-sponsors { margin-top: 28px; }
    .ker-registration-empty-sponsors .ker-sponsors__item { padding: 8px 22px; min-height: 56px; }
    .ker-registration-empty-sponsors .ker-sponsors__logo,
    .ker-registration-empty-sponsors .ker-sponsors__item--master .ker-sponsors__logo { max-width: 100px; max-height: 46px; }
    .ker-registration-empty-cta { width: min(100%, 340px); margin-top: 26px; }
}



/* KER Theme 1.6.58 — patrocinadores do billboard sempre em uma linha */
.ker-registration-empty-sponsors {
    width: min(100%, 1100px);
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: thin;
    scrollbar-color: rgba(255,255,255,.24) transparent;
    -webkit-overflow-scrolling: touch;
}
.ker-registration-empty-sponsors::-webkit-scrollbar { height: 4px; }
.ker-registration-empty-sponsors::-webkit-scrollbar-track { background: transparent; }
.ker-registration-empty-sponsors::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: rgba(255,255,255,.24);
}
.ker-registration-empty-sponsors .ker-sponsors {
    width: max-content;
    min-width: 100%;
    display: flex;
    flex-wrap: nowrap !important;
    justify-content: center;
    align-items: center;
    gap: 0;
}
.ker-registration-empty-sponsors .ker-sponsors__item {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}
.ker-registration-empty-sponsors .ker-sponsors__item > a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.ker-registration-empty-sponsors .ker-sponsors__logo,
.ker-registration-empty-sponsors .ker-sponsors__item--master .ker-sponsors__logo {
    width: auto;
    height: auto;
    object-fit: contain;
    flex: 0 0 auto;
}

@media (max-width: 760px) {
    .ker-registration-empty-sponsors .ker-sponsors {
        justify-content: flex-start;
    }
    .ker-registration-empty-sponsors .ker-sponsors__item {
        padding-left: 18px;
        padding-right: 18px;
    }
}


/* =========================================================
   KER Theme 1.6.60 — Pré-cadastro: data responsiva + calendário claro
   ========================================================= */
.ker-pre-registration-form,
.ker-pre-registration-form label {
    min-width: 0;
    max-width: 100%;
}

.ker-pre-registration-form input:not([type="checkbox"]) {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

.ker-pre-registration-form input[type="date"] {
    display: block;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
    color-scheme: dark;
}

.ker-pre-registration-form input[type="date"]::-webkit-calendar-picker-indicator {
    opacity: 1;
    filter: invert(1) brightness(2.4) contrast(1.15);
    cursor: pointer;
}

/* Evita largura intrínseca do date input ultrapassar a box no Safari/iOS. */
@media (max-width: 760px) {
    .ker-pre-registration-glass,
    .ker-pre-registration-form,
    .ker-pre-registration-form label,
    .ker-pre-registration-form input[type="date"] {
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
    }

    .ker-pre-registration-form input[type="date"] {
        width: 100% !important;
    }
}


/* =========================================================
   KER Theme 1.6.61 — Date field do pré-cadastro (Safari/iOS + desktop)
   ========================================================= */
.ker-pre-registration-date-label {
    min-width: 0 !important;
    width: 100%;
    max-width: 100%;
}

.ker-pre-registration-date {
    position: relative;
    display: block;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    border-radius: 11px;
    box-sizing: border-box;
}

.ker-pre-registration-date input[type="date"] {
    display: block;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 48px;
    margin: 0;
    padding: 0 48px 0 14px !important;
    box-sizing: border-box !important;
    -webkit-appearance: none;
    appearance: none;
    color-scheme: dark;
}

/* O ícone nativo varia de preto/cinza entre Chrome, Safari e iOS.
   Ele fica invisível, mas a área continua clicável para abrir o seletor. */
.ker-pre-registration-date input[type="date"]::-webkit-calendar-picker-indicator {
    position: absolute;
    top: 0;
    right: 0;
    width: 52px;
    height: 100%;
    margin: 0;
    padding: 0;
    opacity: 0 !important;
    cursor: pointer;
}

/* Ícone próprio da KER: sempre branco, em desktop e mobile. */
.ker-pre-registration-date__icon {
    position: absolute;
    z-index: 2;
    top: 50%;
    right: 15px;
    width: 19px;
    height: 19px;
    display: grid;
    place-items: center;
    transform: translateY(-50%);
    color: #fff;
    pointer-events: none;
}

.ker-pre-registration-date__icon svg {
    width: 100%;
    height: 100%;
    display: block;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* Safari/iPhone pode aplicar largura mínima intrínseca ao date input. */
@supports (-webkit-touch-callout: none) {
    .ker-pre-registration-form,
    .ker-pre-registration-form label,
    .ker-pre-registration-date,
    .ker-pre-registration-date input[type="date"] {
        min-width: 0 !important;
        max-width: 100% !important;
    }

    .ker-pre-registration-date input[type="date"] {
        width: -webkit-fill-available !important;
    }
}

@media (max-width: 760px) {
    .ker-pre-registration-glass {
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
    }

    .ker-pre-registration-form {
        width: 100%;
        min-width: 0;
        max-width: 100%;
        overflow: hidden;
        box-sizing: border-box;
    }

    .ker-pre-registration-date {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    .ker-pre-registration-date input[type="date"] {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }
}


/* =========================================================
   KER Theme 1.6.63 — Redes sociais globais
   ========================================================= */
.ker-social-links {
    display: flex;
    align-items: center;
    gap: 7px;
}
.ker-social-links__item {
    width: 32px;
    height: 32px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 50%;
    color: rgba(255,255,255,.72);
    background: rgba(255,255,255,.025);
    text-decoration: none;
    transition: color .18s ease, border-color .18s ease, background .18s ease, transform .18s ease;
}
.ker-social-links__item:hover,
.ker-social-links__item:focus-visible {
    border-color: rgba(255,255,255,.28);
    color: #fff;
    background: rgba(255,255,255,.08);
    transform: translateY(-1px);
}
.ker-social-links__icon {
    width: 14px;
    height: 14px;
    display: block;
}

/* Cabeçalho desktop */
.ker-social-links--header.ker-social-links--desktop {
    flex: 0 0 auto;
}
.ker-social-links--header.ker-social-links--left {
    margin-left: -8px;
}
.ker-social-links--header.ker-social-links--center,
.ker-social-links--header.ker-social-links--right {
    margin-left: -10px;
}
.ker-social-links--header.ker-social-links--mobile {
    display: none;
}

/* Rodapé moderno: a posição escolhida controla a coluna. */
.ker-footer--modern .ker-social-links--footer {
    grid-row: 2;
    padding-top: 2px;
}
.ker-footer--modern .ker-social-links--footer.ker-social-links--left {
    grid-column: 1;
    justify-self: start;
}
.ker-footer--modern .ker-social-links--footer.ker-social-links--center {
    grid-column: 2;
    justify-self: center;
}
.ker-footer--modern .ker-social-links--footer.ker-social-links--right {
    grid-column: 3;
    justify-self: end;
}

/* Rodapé institucional: mantém a régua ampla e permite alinhamento independente. */
body.ker-institutional-surface .ker-social-links--footer {
    width: min(860px, 100%);
}
body.ker-institutional-surface .ker-social-links--footer.ker-social-links--left {
    justify-content: flex-start;
}
body.ker-institutional-surface .ker-social-links--footer.ker-social-links--center {
    justify-content: center;
}
body.ker-institutional-surface .ker-social-links--footer.ker-social-links--right {
    justify-content: flex-end;
}

/* Em larguras intermediárias os ícones ficam compactos para não apertar o menu. */
@media (max-width: 1080px) and (min-width: 761px) {
    .ker-social-links--header.ker-social-links--desktop {
        gap: 4px;
    }
    .ker-social-links--header.ker-social-links--desktop .ker-social-links__item {
        width: 28px;
        height: 28px;
    }
    .ker-social-links--header.ker-social-links--desktop .ker-social-links__icon {
        width: 12px;
        height: 12px;
    }
}

/* Mobile: não ocupa o topo do cabeçalho. Entra no drawer abaixo dos links. */
@media (max-width: 760px) {
    .ker-social-links--header.ker-social-links--desktop {
        display: none !important;
    }
    .ker-social-links--header.ker-social-links--mobile {
        width: 100%;
        max-width: 640px;
        display: flex;
        margin: 20px auto 4px;
        padding-top: 18px;
        border-top: 1px solid rgba(255,255,255,.08);
    }
    .ker-social-links--header.ker-social-links--mobile.ker-social-links--left {
        justify-content: flex-start;
    }
    .ker-social-links--header.ker-social-links--mobile.ker-social-links--center {
        justify-content: center;
    }
    .ker-social-links--header.ker-social-links--mobile.ker-social-links--right {
        justify-content: flex-end;
    }
    .ker-social-links--header.ker-social-links--mobile .ker-social-links__item {
        width: 38px;
        height: 38px;
    }
    .ker-social-links--header.ker-social-links--mobile .ker-social-links__icon {
        width: 16px;
        height: 16px;
    }

    .ker-footer--modern .ker-footer__inner {
        grid-template-columns: 1fr;
    }
    .ker-footer--modern .ker-social-links--footer {
        grid-column: 1 !important;
        grid-row: auto;
        width: 100%;
    }
    .ker-footer--modern .ker-social-links--footer.ker-social-links--left {
        justify-self: stretch;
        justify-content: flex-start;
    }
    .ker-footer--modern .ker-social-links--footer.ker-social-links--center {
        justify-self: stretch;
        justify-content: center;
    }
    .ker-footer--modern .ker-social-links--footer.ker-social-links--right {
        justify-self: stretch;
        justify-content: flex-end;
    }

    body.ker-institutional-surface .ker-social-links--footer {
        width: min(330px, 100%);
    }
}


/* ==========================================================
   KER Theme 1.6.64 — personalização aplicada em toda a Área do Piloto
   ========================================================== */
.ker-pilot-area[class*="ker-profile-theme--"] {
    --ker-profile-soft: color-mix(in srgb, var(--ker-profile-accent) 11%, transparent);
    --ker-profile-line: color-mix(in srgb, var(--ker-profile-accent) 24%, rgba(255,255,255,.07));
}
.ker-pilot-area .ker-pilot-page-head.has-profile-banner {
    min-height: 190px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 32px 34px 28px;
    margin-bottom: 24px;
}
.ker-pilot-area .ker-pilot-panel,
.ker-pilot-area .ker-performance-panel {
    border-color: var(--ker-profile-line);
}
.ker-pilot-area .ker-pilot-nav a.is-active {
    background: var(--ker-profile-soft);
}
.ker-pilot-area .ker-pilot-page-head.has-profile-banner > span {
    color: color-mix(in srgb, var(--ker-profile-accent) 82%, white 18%);
}
.ker-pilot-area.ker-profile-bg--carbon,
.ker-pilot-area.ker-profile-bg--asphalt,
.ker-pilot-area.ker-profile-bg--neon,
.ker-pilot-area.ker-profile-bg--minimal {
    background-color: #10090c;
}

/* Fallback para navegadores sem color-mix(): o destaque escolhido continua visível. */
@supports not (color: color-mix(in srgb, white 50%, black)) {
    .ker-pilot-area .ker-pilot-panel,
    .ker-pilot-area .ker-performance-panel { border-color: rgba(255,255,255,.08); }
    .ker-pilot-area .ker-pilot-nav a.is-active { border-left-color: var(--ker-profile-accent); }
    .ker-pilot-area .ker-pilot-page-head > span,
    .ker-pilot-area .ker-pilot-panel__head span,
    .ker-pilot-area .ker-pilot-identity small { color: var(--ker-profile-accent); }
}

@media (max-width: 1050px) {
    .ker-pilot-area .ker-pilot-page-head.has-profile-banner {
        min-height: 0;
        padding: 0;
        margin-bottom: 20px;
    }
}


/* KER Theme 1.6.65 — Countdown cinematográfico em /inscricoes/ */
.ker-registration-countdown-hero {
    position:relative; min-height:max(700px,100svh); display:grid; place-items:center;
    overflow:hidden; isolation:isolate; padding:132px 24px 88px; background:#060909; color:#fff;
}
.ker-registration-countdown-hero__background {
    position:absolute; z-index:-4; inset:-7%; background-color:#08100e;
    background-image:var(--ker-registration-countdown-bg,none);
    background-size:cover; background-position:center; background-repeat:no-repeat;
    filter:blur(var(--ker-registration-countdown-blur,8px)); transform:scale(1.05);
    animation:kerRegistrationCountdownDrift 18s ease-in-out infinite alternate; will-change:transform;
}
.ker-registration-countdown-hero__shade {
    position:absolute; z-index:-3; inset:0;
    background:radial-gradient(circle at 50% 42%,rgba(12,35,28,.04) 0%,rgba(0,0,0,.36) 64%,rgba(0,0,0,.72) 100%),
               rgba(0,0,0,var(--ker-registration-countdown-overlay,.48));
}
.ker-registration-countdown-hero__grain {
    position:absolute; z-index:-2; inset:0; pointer-events:none; opacity:.16;
    background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' seed='9'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.3'/%3E%3C/svg%3E");
    background-size:155px 155px; mix-blend-mode:soft-light;
}
.ker-registration-countdown-hero__content {
    width:min(100%,1040px); display:grid; justify-items:center; text-align:center;
    filter:drop-shadow(0 18px 48px rgba(0,0,0,.32));
    font-family:var(--ker-registration-countdown-font,inherit);
}
.ker-registration-countdown-hero__content :where(h1,h2,h3,p,span,strong,small,i,b) {
    font-family:var(--ker-registration-countdown-font,inherit) !important;
}
.ker-registration-countdown-hero__logo {
    width:min(78vw,440px); max-height:190px; object-fit:contain;
    margin-bottom:clamp(30px,4.5vh,54px);
}
.ker-registration-countdown-hero__eyebrow {
    margin-bottom:14px; font-size:.7rem; font-weight:900; letter-spacing:.24em; color:rgba(255,255,255,.72);
}
.ker-registration-countdown-hero h1 {
    max-width:900px; margin:0 0 clamp(30px,4.5vh,54px); font-size:clamp(3.2rem,8vw,7rem);
    line-height:.88; letter-spacing:-.06em; color:#fff;
}
.ker-registration-countdown-hero__label {
    margin-bottom:18px; font-size:clamp(.72rem,1.15vw,.9rem); font-weight:900;
    letter-spacing:.2em; text-transform:uppercase; color:rgba(255,255,255,.72);
    font-family:var(--ker-font-ui, Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif) !important;
}
.ker-registration-countdown-hero__timer {
    display:flex; align-items:flex-start; justify-content:center; gap:clamp(18px,3.2vw,46px);
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
    box-shadow:none;
    filter:drop-shadow(0 10px 24px rgba(0,0,0,.38));
}
.ker-registration-countdown-hero__timer > span {
    min-width:clamp(72px,10vw,130px); display:grid; gap:8px; justify-items:center;
}
.ker-registration-countdown-hero__timer strong {
    font-variant-numeric:tabular-nums; font-size:clamp(3.3rem,8.4vw,7.3rem);
    line-height:.82; letter-spacing:-.015em; color:#fff;
}
.ker-registration-countdown-hero__timer small {
    font-size:.62rem; font-weight:900; letter-spacing:.16em; text-transform:uppercase; color:rgba(255,255,255,.52);
}
.ker-registration-countdown-hero__timer i {
    padding-top:clamp(6px,1.2vw,15px); font-style:normal; font-size:clamp(2.5rem,6vw,5.5rem);
    line-height:.82; color:rgba(255,255,255,.28);
}
.ker-registration-countdown-hero__expired {
    margin-top:22px; font-size:.78rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase;
}
.ker-registration-countdown-sound {
    position:absolute; z-index:4; right:clamp(18px,3vw,38px); bottom:clamp(20px,4vh,42px);
    min-height:44px; display:inline-flex; align-items:center; gap:9px; padding:0 15px;
    border:1px solid rgba(255,255,255,.14); border-radius:999px; background:rgba(4,9,8,.34);
    -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px); color:#fff; cursor:pointer;
    box-shadow:0 12px 36px rgba(0,0,0,.2);
}
.ker-registration-countdown-sound > span { width:18px; font-size:1rem; text-align:center; }
.ker-registration-countdown-sound b { font-size:.64rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.ker-registration-countdown-sound.is-blocked { border-color:rgba(255,255,255,.28); background:rgba(17,27,24,.66); }
@keyframes kerRegistrationCountdownDrift {
    from { transform:scale(1.05) translate3d(-.6%,-.4%,0); }
    to { transform:scale(1.10) translate3d(.6%,.4%,0); }
}
@media (max-width:760px) {
    .ker-registration-countdown-hero { min-height:100svh; padding:112px 14px 88px; }
    .ker-registration-countdown-hero__logo { width:min(82vw,320px); max-height:128px; margin-bottom:34px; }
    .ker-registration-countdown-hero h1 { margin-bottom:34px; font-size:clamp(2.7rem,14vw,4.8rem); }
    .ker-registration-countdown-hero__label { margin-bottom:14px; font-size:.62rem; }
    .ker-registration-countdown-hero__timer {
        width:min(100%,520px); gap:9px; padding:0; border-radius:0;
    }
    .ker-registration-countdown-hero__timer > span { min-width:0; flex:1 1 0; gap:7px; }
    .ker-registration-countdown-hero__timer strong { font-size:clamp(2.45rem,12.5vw,4.4rem); }
    .ker-registration-countdown-hero__timer small { font-size:.5rem; letter-spacing:.08em; }
    .ker-registration-countdown-hero__timer i { padding-top:5px; font-size:clamp(1.8rem,8vw,3rem); }
}
@media (max-width:380px) {
    .ker-registration-countdown-hero__timer { gap:5px; }
    .ker-registration-countdown-hero__timer strong { font-size:2.15rem; }
    .ker-registration-countdown-hero__timer i { font-size:1.6rem; }
}
@media (prefers-reduced-motion:reduce) {
    .ker-registration-countdown-hero__background { animation:none; }
}


/* KER Theme 1.6.66 — pré-lançamento unificado da página de inscrições */
.ker-registration-prelaunch__status {
    margin-top: 2px;
    font-size: clamp(1.5rem, 3vw, 2.6rem);
    line-height: 1;
    font-weight: 900;
    letter-spacing: -.035em;
    color: #fff;
}
.ker-registration-prelaunch__description {
    max-width: 620px;
    margin: 14px auto 0;
    font-size: clamp(.86rem, 1.2vw, 1rem);
    line-height: 1.55;
    color: rgba(255,255,255,.68);
}
.ker-registration-prelaunch__meta {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-top: 18px;
    padding: 8px 12px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 999px;
    background: rgba(0,0,0,.16);
    color: rgba(255,255,255,.72);
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.ker-registration-prelaunch__meta span + span::before {
    content: "•";
    margin-right: 9px;
    color: rgba(255,255,255,.3);
}
.ker-registration-prelaunch__sponsors {
    width: min(100%, 860px);
    margin-top: clamp(30px, 5vh, 52px);
}
.ker-registration-prelaunch__sponsors--countdown {
    margin-top: clamp(26px, 4vh, 42px);
}
.ker-registration-prelaunch__sponsors .ker-sponsors {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: clamp(14px, 2.1vw, 30px);
    overflow-x: auto;
    padding: 4px 3px 9px;
    scrollbar-width: none;
}
.ker-registration-prelaunch__sponsors .ker-sponsors::-webkit-scrollbar {
    display: none;
}
.ker-registration-prelaunch__sponsors .ker-sponsors__item {
    flex: 0 0 auto;
    width: auto;
    min-width: 72px;
    min-height: 54px;
    padding: 6px;
}
.ker-registration-prelaunch__sponsors .ker-sponsors__logo {
    width: auto;
    max-width: 126px;
    height: auto;
    max-height: 54px;
    object-fit: contain;
    filter: drop-shadow(0 7px 22px rgba(0,0,0,.22));
}
.ker-registration-prelaunch__sponsors .ker-sponsors__item--master .ker-sponsors__logo {
    max-height: 62px;
}
.ker-registration-prelaunch__sponsor-strip {
    display: block;
    width: auto;
    max-width: min(100%, 820px);
    max-height: 92px;
    margin: 0 auto;
    object-fit: contain;
    filter: drop-shadow(0 10px 28px rgba(0,0,0,.26));
}
@media (max-width: 760px) {
    .ker-registration-prelaunch__status {
        font-size: clamp(1.5rem, 7.5vw, 2.15rem);
    }
    .ker-registration-prelaunch__description {
        max-width: 92%;
        font-size: .84rem;
    }
    .ker-registration-prelaunch__sponsors {
        width: calc(100vw - 24px);
        margin-top: 28px;
    }
    .ker-registration-prelaunch__sponsors .ker-sponsors {
        justify-content: flex-start;
        padding-left: 8px;
        padding-right: 8px;
    }
    .ker-registration-prelaunch__sponsors .ker-sponsors__item {
        min-width: 70px;
        min-height: 48px;
    }
    .ker-registration-prelaunch__sponsors .ker-sponsors__logo {
        max-width: 104px;
        max-height: 45px;
    }
    .ker-registration-prelaunch__sponsor-strip {
        max-height: 70px;
    }
}


/* KER Theme 1.6.71 — mensagem de pré-lançamento e convites antecipados */
.ker-registration-message-hero__message{
    max-width:min(92vw,920px);
    margin:0;
    white-space:normal;
    text-wrap:balance;
    font-size:clamp(2.3rem,6.2vw,6.2rem);
    line-height:.98;
    letter-spacing:-.045em;
    font-weight:900;
    color:#fff;
    filter:drop-shadow(0 12px 28px rgba(0,0,0,.34));
}
.ker-registration-message-hero .ker-registration-countdown-hero__logo{
    margin-bottom:clamp(28px,5vh,58px);
}
.ker-registration-invite-gate__eyebrow{
    margin-bottom:14px;
    font-family:var(--ker-font-ui,Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif)!important;
    font-size:.7rem;
    font-weight:900;
    letter-spacing:.2em;
    text-transform:uppercase;
    color:rgba(255,255,255,.68);
}
.ker-registration-invite-gate__title{
    max-width:760px;
    margin:0;
    font-size:clamp(2.2rem,5vw,4.8rem);
    line-height:.96;
    letter-spacing:-.045em;
    color:#fff;
}
.ker-registration-invite-gate__text{
    max-width:630px;
    margin:18px auto 0;
    font-family:var(--ker-font-ui,Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif)!important;
    font-size:clamp(.9rem,1.4vw,1.05rem);
    line-height:1.65;
    color:rgba(255,255,255,.72);
}
.ker-registration-invite-gate__button{
    margin-top:26px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:0 20px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:999px;
    background:#fff;
    color:#101613;
    font-family:var(--ker-font-ui,Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif)!important;
    font-size:.78rem;
    font-weight:900;
    letter-spacing:.04em;
    text-decoration:none;
    text-transform:uppercase;
    box-shadow:0 16px 40px rgba(0,0,0,.22);
}
.ker-registration-invite-gate__button:hover{
    transform:translateY(-1px);
    color:#101613;
}
.ker-registration-early-access-banner{
    margin:0 0 24px;
    padding:16px 18px;
    border:1px solid rgba(21,148,71,.25);
    border-radius:16px;
    background:linear-gradient(135deg,rgba(21,148,71,.12),rgba(21,148,71,.04));
}
.ker-registration-early-access-banner span{
    display:block;
    margin-bottom:5px;
    color:#159447;
    font-size:.66rem;
    font-weight:900;
    letter-spacing:.12em;
}
.ker-registration-early-access-banner strong{
    display:block;
    color:var(--ker-text,#fff);
    font-size:1rem;
}
.ker-registration-early-access-banner p{
    margin:5px 0 0;
    color:var(--ker-muted,#a8b0b7);
    font-size:.82rem;
}
@media (max-width:760px){
    .ker-registration-message-hero__message{
        max-width:94vw;
        font-size:clamp(2.1rem,11vw,4rem);
        line-height:1;
    }
    .ker-registration-invite-gate__title{
        font-size:clamp(2rem,10vw,3.4rem);
    }
    .ker-registration-invite-gate__text{
        max-width:92%;
        font-size:.9rem;
    }
}


/* KER Theme 1.6.72 — Data do evento / nenhum no pré-lançamento */
.ker-registration-date-hero__date {
    margin-top:8px;
    color:#fff;
    font-family:var(--ker-registration-countdown-font,inherit);
    font-size:clamp(3.4rem,9vw,7.8rem);
    font-weight:900;
    line-height:.9;
    letter-spacing:-.055em;
    text-shadow:0 14px 38px rgba(0,0,0,.34);
}
.ker-registration-none-hero .ker-registration-countdown-hero__content {
    min-height:55vh;
    align-content:center;
}

/* =========================================================
   KER Theme 1.6.75 — Página Principal V2
   Billboard dinâmico + editor visual do KER Core.
   ========================================================= */
body.ker-home-surface {
    background:#242729;
}
body.ker-home-surface .ker-header {
    background:linear-gradient(180deg,rgba(8,11,14,.62),rgba(8,11,14,.18));
    -webkit-backdrop-filter:blur(13px) saturate(125%);
    backdrop-filter:blur(13px) saturate(125%);
}
body.ker-home-surface .ker-header.is-scrolled {
    background:rgba(11,15,19,.86);
}
.ker-home-v2 {
    overflow:clip;
    background:#242729;
    color:#fff;
}
.ker-home-v2 .ker-container {
    width:min(1640px,calc(100% - clamp(34px,5vw,110px)));
}

/* Billboard: a mídia passa por trás do cabeçalho; o degradê é do próprio site. */
.ker-home-v2__billboard {
    position:relative;
    min-height:clamp(470px,48vw,820px);
    background:#0c1014;
    isolation:isolate;
    display:flex;
    align-items:flex-end;
}
.ker-home-v2__billboard-media {
    position:absolute;
    inset:0;
    z-index:-2;
    overflow:hidden;
    background:radial-gradient(circle at 50% 35%,#20282e 0,#0b1014 68%);
}
.ker-home-v2__billboard-media > img,
.ker-home-v2__billboard-media > video {
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    object-position:center;
}
.ker-home-v2__billboard-media > iframe {
    position:absolute;
    top:50%;
    left:50%;
    width:max(100vw,177.78vh);
    height:max(56.25vw,100vh);
    min-width:100%;
    min-height:100%;
    border:0;
    transform:translate(-50%,-50%);
    pointer-events:none;
}
.ker-home-v2__billboard-shade {
    position:absolute;
    inset:0;
    background:
        linear-gradient(180deg,rgba(10,13,16,.16) 0%,rgba(10,13,16,.02) 38%,rgba(17,20,22,.18) 63%,#242729 100%),
        linear-gradient(90deg,rgba(5,8,11,.26),transparent 44%,rgba(5,8,11,.12));
    pointer-events:none;
}
.ker-home-v2__event-meta {
    position:relative;
    z-index:3;
    display:grid;
    grid-template-columns:minmax(180px,.9fr) minmax(250px,1fr) minmax(250px,1fr);
    align-items:end;
    gap:clamp(20px,3vw,70px);
    padding-bottom:clamp(52px,6vw,105px);
}
.ker-home-v2__registration-cta {
    width:max-content;
    min-height:48px;
    padding:0 24px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:2px solid #fff;
    border-radius:8px;
    background:transparent;
    color:#fff!important;
    font-size:13px;
    line-height:1;
    font-weight:900;
    letter-spacing:.02em;
    text-decoration:none!important;
    transition:background .2s ease,color .2s ease,transform .2s ease;
}
.ker-home-v2__registration-cta:hover,
.ker-home-v2__registration-cta:focus-visible {
    background:#fff;
    color:#0b0d10!important;
    transform:translateY(-1px);
}
.ker-home-v2__event-date,
.ker-home-v2__event-venue {
    display:grid;
    gap:6px;
    color:#fff;
}
.ker-home-v2__event-date > span,
.ker-home-v2__event-venue > span {
    color:rgba(255,255,255,.62);
    font-size:10px;
    font-weight:800;
    letter-spacing:.1em;
}
.ker-home-v2__event-date strong,
.ker-home-v2__event-venue strong,
.ker-home-v2__event-venue a {
    color:#fff!important;
    font-size:clamp(15px,1.15vw,20px);
    line-height:1.3;
    font-weight:800;
    text-decoration:none;
}
.ker-home-v2__event-venue a:hover { text-decoration:underline; text-underline-offset:4px; }

.ker-home-v2__content {
    position:relative;
    z-index:1;
    margin-top:-1px;
    background:#242729;
}
.ker-home-v2-info,
.ker-home-v2-ranking {
    padding:clamp(62px,7vw,126px) 0;
}
.ker-home-v2-info + .ker-home-v2-info,
.ker-home-v2-info + .ker-home-v2-ranking,
.ker-home-v2-ranking + .ker-home-v2-info,
.ker-home-v2-ranking + .ker-home-v2-ranking {
    padding-top:clamp(30px,4vw,70px);
}

/* Card editorial: mídia à esquerda; conteúdo livre à direita. */
.ker-home-v2-info__inner {
    display:grid;
    grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);
    gap:clamp(46px,6.5vw,125px);
    align-items:center;
}
.ker-home-v2-info__media {
    position:relative;
    min-width:0;
    aspect-ratio:16/10;
    overflow:hidden;
    border-radius:11px;
    background:#151a1e;
    box-shadow:0 18px 48px rgba(0,0,0,.14);
}
.ker-home-v2-info__media > img,
.ker-home-v2-slideshow,
.ker-home-v2-slideshow__slide,
.ker-home-v2-slideshow__slide img,
.ker-home-v2-info__media-empty {
    width:100%;
    height:100%;
}
.ker-home-v2-info__media > img,
.ker-home-v2-slideshow__slide img { display:block; object-fit:cover; }
.ker-home-v2-info__media-empty { background:linear-gradient(145deg,#171c20,#23292d); }
.ker-home-v2-info__copy { min-width:0; }
.ker-home-v2-info__copy h2 {
    margin:0 0 clamp(24px,2.2vw,42px);
    color:#fff;
    font-size:clamp(38px,4.1vw,76px);
    line-height:.94;
    letter-spacing:-.055em;
    font-weight:950;
    text-transform:uppercase;
}
.ker-home-v2-info__description {
    max-width:860px;
    color:rgba(255,255,255,.88);
    font-size:clamp(16px,1.18vw,22px);
    line-height:1.48;
    letter-spacing:-.012em;
}
.ker-home-v2-info__description p { margin:0 0 1em; }
.ker-home-v2-info__description p:last-child { margin-bottom:0; }

/* Slideshow do card de informações. */
.ker-home-v2-slideshow { position:relative; overflow:hidden; background:#151a1e; --ker-slide-current:0; }
.ker-home-v2-slideshow__slide { position:absolute; inset:0; margin:0; }
.ker-home-v2-slideshow[data-transition="fade"] .ker-home-v2-slideshow__slide {
    opacity:0;
    transition:opacity .75s ease;
}
.ker-home-v2-slideshow[data-transition="fade"] .ker-home-v2-slideshow__slide.is-active { opacity:1; z-index:2; }
.ker-home-v2-slideshow[data-transition="slide"] .ker-home-v2-slideshow__slide {
    transform:translateX(100%);
    transition:transform .75s cubic-bezier(.22,.61,.36,1);
}
.ker-home-v2-slideshow[data-transition="slide"] .ker-home-v2-slideshow__slide.is-active { transform:translateX(0); z-index:2; }
.ker-home-v2-slideshow[data-transition="none"] .ker-home-v2-slideshow__slide { display:none; }
.ker-home-v2-slideshow[data-transition="none"] .ker-home-v2-slideshow__slide.is-active { display:block; }

/* Top 5 */
.ker-home-v2-ranking__head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
    margin-bottom:clamp(30px,3.2vw,58px);
}
.ker-home-v2-ranking__head h2 {
    margin:0;
    color:#fff;
    font-size:clamp(30px,3vw,56px);
    line-height:.95;
    letter-spacing:-.045em;
    font-weight:950;
    text-transform:uppercase;
}
.ker-home-v2-ranking__head > a {
    flex:0 0 auto;
    min-height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 18px;
    border:1px solid rgba(255,255,255,.76);
    border-radius:8px;
    color:#fff!important;
    text-decoration:none!important;
    font-size:11px;
    font-weight:900;
    letter-spacing:.03em;
    transition:background .18s,color .18s;
}
.ker-home-v2-ranking__head > a:hover,
.ker-home-v2-ranking__head > a:focus-visible { background:#fff; color:#111418!important; }
.ker-home-v2-ranking__cards {
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:clamp(10px,1.55vw,28px);
}
.ker-home-v2-rank-card {
    min-width:0;
    overflow:hidden;
    border-radius:18px;
    background:#181b1e;
    box-shadow:0 16px 44px rgba(0,0,0,.16);
    cursor:default;
    user-select:none;
}
.ker-home-v2-rank-card__visual {
    position:relative;
    aspect-ratio:4/5;
    overflow:hidden;
    background:linear-gradient(145deg,#151b20,#2e363c);
}
.ker-home-v2-rank-card__visual > img { width:100%; height:100%; display:block; object-fit:cover; object-position:center top; }
.ker-home-v2-rank-card__placeholder { position:absolute; inset:0; display:grid; place-items:center; color:rgba(255,255,255,.15); font-size:clamp(30px,3vw,58px); font-weight:950; }
.ker-home-v2-rank-card__position {
    position:absolute;
    left:clamp(8px,1vw,15px);
    bottom:clamp(-15px,-.9vw,-8px);
    z-index:4;
    color:#fff;
    font-size:clamp(64px,6vw,118px);
    line-height:.8;
    font-weight:1000;
    letter-spacing:-.09em;
    text-shadow:0 6px 20px rgba(0,0,0,.52);
}
.ker-home-v2-rank-card__details {
    position:relative;
    min-height:clamp(126px,10vw,180px);
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:flex-start;
    gap:3px;
    padding:clamp(16px,1.35vw,24px) clamp(13px,1.25vw,23px) clamp(17px,1.4vw,25px) 34%;
    background:linear-gradient(135deg,#17191b 0%,#24282b 72%,#202326 100%);
}
.ker-home-v2-rank-card__details strong { color:#fff; font-size:clamp(14px,1.2vw,22px); line-height:1.05; font-weight:900; white-space:nowrap; }
.ker-home-v2-rank-card__details h3 { margin:3px 0 1px; color:#fff; font-size:clamp(13px,1.02vw,19px); line-height:1.1; font-weight:850; }
.ker-home-v2-rank-card__details span { color:rgba(255,255,255,.64); font-size:clamp(9px,.72vw,12px); line-height:1.25; }
.ker-home-v2-ranking__empty { padding:26px; border:1px solid rgba(255,255,255,.1); border-radius:12px; color:rgba(255,255,255,.62); text-align:center; }

@media (min-width:1900px) {
    .ker-home-v2 .ker-container { width:min(1780px,calc(100% - 150px)); }
    .ker-home-v2__billboard { min-height:min(820px,56vh); }
}
@media (max-width:1180px) {
    .ker-home-v2 .ker-container { width:min(100% - 42px,1320px); }
    .ker-home-v2-info__inner { gap:44px; }
    .ker-home-v2-ranking__cards { gap:12px; }
    .ker-home-v2-rank-card__details { padding-left:31%; }
}
@media (max-width:900px) {
    .ker-home-v2__billboard { min-height:600px; }
    .ker-home-v2__event-meta { grid-template-columns:1fr 1fr; }
    .ker-home-v2__registration-cta { grid-column:1/-1; }
    .ker-home-v2-info__inner { grid-template-columns:1fr; gap:30px; }
    .ker-home-v2-info__copy h2 { font-size:clamp(42px,8vw,70px); }
    .ker-home-v2-ranking__cards { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:640px) {
    .ker-home-v2 .ker-container { width:min(100% - 28px,1640px); }
    .ker-home-v2__billboard { min-height:520px; }
    .ker-home-v2__billboard-media > iframe { width:max(177.78vh,250vw); height:max(100vh,140vw); }
    .ker-home-v2__event-meta { grid-template-columns:1fr; gap:16px; padding-bottom:58px; }
    .ker-home-v2__registration-cta { grid-column:auto; min-height:44px; }
    .ker-home-v2__event-date,.ker-home-v2__event-venue { gap:3px; }
    .ker-home-v2-info,.ker-home-v2-ranking { padding:64px 0; }
    .ker-home-v2-info__copy h2 { margin-bottom:22px; font-size:clamp(34px,12vw,54px); }
    .ker-home-v2-info__description { font-size:16px; }
    .ker-home-v2-ranking__head { align-items:flex-start; flex-direction:column; margin-bottom:28px; }
    .ker-home-v2-ranking__head h2 { font-size:clamp(32px,10vw,48px); }
    .ker-home-v2-ranking__cards {
        display:flex;
        overflow-x:auto;
        gap:13px;
        padding:2px 14px 14px 0;
        margin-right:-14px;
        scroll-snap-type:x mandatory;
        scrollbar-width:none;
    }
    .ker-home-v2-ranking__cards::-webkit-scrollbar { display:none; }
    .ker-home-v2-rank-card { flex:0 0 min(78vw,300px); scroll-snap-align:start; }
    .ker-home-v2-rank-card__details { min-height:132px; padding-left:32%; }
    .ker-home-v2-rank-card__details strong { font-size:17px; }
    .ker-home-v2-rank-card__details h3 { font-size:15px; }
    .ker-home-v2-rank-card__details span { font-size:10px; }
}

/* =========================================================
   KER Theme 1.6.75 — Top 5 fiel ao layout + fundo padrão KER
   ========================================================= */
body.ker-home-surface,
.ker-home-v2,
.ker-home-v2__content {
    background:#10090C;
}
.ker-home-v2__billboard-shade {
    background:
        linear-gradient(180deg,rgba(10,6,8,.14) 0%,rgba(10,6,8,.02) 38%,rgba(16,9,12,.18) 64%,#10090C 100%),
        linear-gradient(90deg,rgba(5,3,4,.26),transparent 44%,rgba(5,3,4,.12));
}

.ker-home-v2-ranking {
    background:#10090C;
    font-family:"Netflix Family",var(--ker-font-display,Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);
}
.ker-home-v2-ranking__head {
    align-items:flex-start;
    margin-bottom:clamp(18px,2.2vw,34px);
}
.ker-home-v2-ranking__title {
    display:flex;
    align-items:baseline;
    flex-wrap:wrap;
    gap:0 clamp(6px,.6vw,10px);
    margin:0;
    text-transform:uppercase;
    line-height:1;
    letter-spacing:0;
    font-family:"Netflix Family",var(--ker-font-display,Inter,ui-sans-serif,sans-serif);
}
.ker-home-v2-ranking__title > span { display:inline-block; }
.ker-home-v2-ranking__top {
    color:#ff0000;
    font-size:clamp(20px,1.8vw,30px);
    font-weight:500;
    letter-spacing:0;
}
.ker-home-v2-ranking__title[data-gender="female"] .ker-home-v2-ranking__top { color:#FF0078; }
.ker-home-v2-ranking__ker {
    color:#fff;
    font-size:clamp(28px,2.35vw,40px);
    font-weight:700;
    letter-spacing:-.02em;
}
.ker-home-v2-ranking__label {
    color:#fff;
    font-size:clamp(18px,1.48vw,25px);
    font-weight:100;
    letter-spacing:.075em;
}
.ker-home-v2-ranking__filter {
    color:#fff;
    font-size:clamp(13px,1vw,17px);
    font-weight:500;
    letter-spacing:.075em;
}
.ker-home-v2-ranking__head > a {
    min-width:174px;
    min-height:34px;
    padding:0 22px;
    border:0;
    border-radius:999px;
    background:#fff;
    color:#10090C!important;
    font-family:"Netflix Family",var(--ker-font-display,Inter,ui-sans-serif,sans-serif);
    font-size:12px;
    font-weight:700;
    letter-spacing:.06em;
}
.ker-home-v2-ranking__head > a:hover,
.ker-home-v2-ranking__head > a:focus-visible {
    background:rgba(255,255,255,.88);
    color:#10090C!important;
}
.ker-home-v2-ranking__cards {
    gap:clamp(14px,1.8vw,32px);
}
.ker-home-v2-rank-card {
    position:relative;
    aspect-ratio:4/5;
    overflow:hidden;
    border-radius:12px;
    background:#171a1d;
    box-shadow:none;
    font-family:"Netflix Family",var(--ker-font-display,Inter,ui-sans-serif,sans-serif);
}
.ker-home-v2-rank-card__visual {
    position:absolute;
    inset:0;
    aspect-ratio:auto;
    overflow:hidden;
}
.ker-home-v2-rank-card__visual > img { object-position:center top; }
.ker-home-v2-rank-card__position {
    left:clamp(8px,.85vw,14px);
    bottom:clamp(8px,.7vw,12px);
    z-index:4;
    color:transparent;
    -webkit-text-stroke:clamp(2px,.15vw,3px) #fff;
    paint-order:stroke fill;
    font-family:"Netflix Family",var(--ker-font-display,Inter,ui-sans-serif,sans-serif);
    font-size:clamp(72px,6.1vw,112px);
    line-height:.80;
    font-weight:900;
    letter-spacing:-.085em;
    text-shadow:none;
}
.ker-home-v2-rank-card__details {
    position:absolute;
    right:clamp(6px,.55vw,10px);
    bottom:clamp(6px,.55vw,10px);
    left:31%;
    z-index:5;
    min-height:clamp(82px,6.2vw,112px);
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    gap:2px;
    padding:clamp(10px,.75vw,14px) clamp(10px,.9vw,16px);
    border-radius:clamp(9px,.75vw,13px);
    background:rgba(16,9,12,.92);
    box-shadow:0 10px 28px rgba(0,0,0,.25);
    -webkit-backdrop-filter:blur(6px);
    backdrop-filter:blur(6px);
}
.ker-home-v2-rank-card__details strong {
    color:#fff;
    font-size:clamp(15px,1.05vw,19px);
    line-height:1;
    font-weight:700;
    white-space:nowrap;
}
.ker-home-v2-rank-card__details h3 {
    margin:4px 0 0;
    color:#fff;
    font-size:clamp(11px,.82vw,15px);
    line-height:1.1;
    font-weight:700;
}
.ker-home-v2-rank-card__details span {
    color:rgba(255,255,255,.92);
    font-size:clamp(8px,.62vw,11px);
    line-height:1.18;
    font-weight:500;
}

@media (max-width:1180px) {
    .ker-home-v2-rank-card__details { left:29%; }
}
@media (max-width:900px) {
    .ker-home-v2-ranking__title { max-width:75%; }
    .ker-home-v2-ranking__cards { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:640px) {
    .ker-home-v2-ranking__head { flex-direction:row; align-items:flex-start; gap:14px; }
    .ker-home-v2-ranking__title { max-width:none; flex:1; gap:0 6px; }
    .ker-home-v2-ranking__top { font-size:20px; }
    .ker-home-v2-ranking__ker { font-size:28px; }
    .ker-home-v2-ranking__label { font-size:17px; }
    .ker-home-v2-ranking__filter { font-size:12px; }
    .ker-home-v2-ranking__head > a { min-width:auto; min-height:32px; padding:0 14px; font-size:10px; }
    .ker-home-v2-rank-card { flex-basis:min(76vw,288px); }
    .ker-home-v2-rank-card__details { left:30%; min-height:86px; }
    .ker-home-v2-rank-card__position { font-size:84px; -webkit-text-stroke:2px #fff; }
    .ker-home-v2-rank-card__details strong { font-size:16px; }
    .ker-home-v2-rank-card__details h3 { font-size:13px; }
    .ker-home-v2-rank-card__details span { font-size:9px; }
}

/* =========================================================
   KER Theme 1.6.76 — alinhamentos do Top 5 + card editorial
   ========================================================= */

/* Card de informações: conteúdo começa no topo da mídia, como no layout-base. */
.ker-home-v2-info__inner {
    align-items:start;
}
.ker-home-v2-info__copy {
    align-self:start;
    padding-top:0;
}
.ker-home-v2-info__copy h2 {
    margin:0 0 clamp(18px,1.8vw,32px);
    font-size:clamp(32px,3.2vw,58px);
    line-height:.96;
    letter-spacing:-.045em;
}

/* Cabeçalho do Top 5: TOP 5 / KER / DESTAQUES / filtro no mesmo eixo horizontal. */
.ker-home-v2-ranking__title {
    align-items:center;
    flex-wrap:nowrap;
}
.ker-home-v2-ranking__title > span {
    line-height:1;
    white-space:nowrap;
}

/* Posição e box de informações compartilham o mesmo rodapé visual. */
.ker-home-v2-rank-card {
    --ker-rank-card-inset:clamp(6px,.55vw,10px);
}
.ker-home-v2-rank-card__position {
    bottom:var(--ker-rank-card-inset);
    filter:drop-shadow(0 5px 6px rgba(0,0,0,.38));
}
.ker-home-v2-rank-card__details {
    bottom:var(--ker-rank-card-inset);
}

@media (max-width:900px) {
    .ker-home-v2-info__copy h2 {
        font-size:clamp(34px,7vw,54px);
    }
}
@media (max-width:640px) {
    .ker-home-v2-ranking__title {
        flex-wrap:wrap;
        align-items:center;
    }
    .ker-home-v2-info__copy h2 {
        font-size:clamp(31px,10vw,46px);
    }
}


/* =========================================================
   KER Theme 1.6.77 — billboard fiel ao layout-base
   ========================================================= */
.ker-home-v2__event-meta {
    display:flex;
    align-items:flex-end;
    gap:clamp(18px,2.3vw,34px);
    padding-bottom:clamp(54px,6vw,102px);
}
.ker-home-v2__registration-cta {
    flex:0 0 auto;
    min-height:58px;
    padding:0 clamp(22px,2vw,38px);
    border:2px solid rgba(255,255,255,.94);
    border-radius:999px;
    background:transparent;
    color:#fff!important;
    font-family:"Netflix Family",var(--ker-font-display,Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);
    font-size:clamp(18px,1.25vw,27px);
    font-weight:400;
    letter-spacing:.08em;
}
.ker-home-v2__registration-cta:hover,
.ker-home-v2__registration-cta:focus-visible {
    background:#fff;
    color:#10090C!important;
}
.ker-home-v2__event-divider {
    flex:0 0 2px;
    align-self:flex-end;
    width:2px;
    height:clamp(78px,9vw,124px);
    background:rgba(255,255,255,.9);
    border-radius:999px;
}
.ker-home-v2__event-copy {
    display:grid;
    align-content:end;
    gap:clamp(6px,.7vw,10px);
    padding-bottom:clamp(4px,.35vw,8px);
}
.ker-home-v2__event-copy-line,
.ker-home-v2__event-copy-line:visited {
    display:block;
    color:#fff!important;
    text-decoration:none;
    font-family:"Netflix Family",var(--ker-font-display,Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);
    font-size:clamp(20px,1.62vw,34px);
    line-height:1.06;
    font-weight:300;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.ker-home-v2__event-copy a.ker-home-v2__event-copy-line:hover {
    text-decoration:none;
    color:#fff!important;
    opacity:.9;
}
@media (max-width:900px) {
    .ker-home-v2__event-meta {
        flex-wrap:wrap;
        align-items:flex-end;
        gap:16px 18px;
    }
    .ker-home-v2__registration-cta {
        min-height:50px;
        font-size:clamp(15px,2.4vw,22px);
    }
    .ker-home-v2__event-divider {
        height:72px;
    }
    .ker-home-v2__event-copy-line,
    .ker-home-v2__event-copy-line:visited {
        font-size:clamp(17px,2.6vw,24px);
    }
}
@media (max-width:640px) {
    .ker-home-v2__event-meta {
        display:grid;
        grid-template-columns:auto 2px minmax(0,1fr);
        align-items:end;
        gap:16px;
        padding-bottom:46px;
    }
    .ker-home-v2__registration-cta {
        min-height:44px;
        padding:0 16px;
        font-size:14px;
        letter-spacing:.06em;
    }
    .ker-home-v2__event-divider {
        width:2px;
        height:54px;
    }
    .ker-home-v2__event-copy-line,
    .ker-home-v2__event-copy-line:visited {
        font-size:14px;
        line-height:1.08;
        letter-spacing:.08em;
    }
}


/* =========================================================
   KER Theme 1.6.78 — billboard centralizada + logo da etapa
   ========================================================= */
.ker-home-v2 {
    background:#10090C;
}
.ker-home-v2__event-shell {
    position:relative;
    z-index:3;
    display:flex;
    justify-content:center;
    width:min(1640px,calc(100% - clamp(34px,5vw,110px)));
    padding-bottom:clamp(52px,6vw,105px);
}
.ker-home-v2__event-cluster {
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-end;
    gap:clamp(16px,1.8vw,28px);
}
.ker-home-v2__event-logo {
    width:auto;
    max-width:min(32vw,300px);
    max-height:clamp(54px,7vw,118px);
    display:block;
    object-fit:contain;
    filter:drop-shadow(0 10px 22px rgba(0,0,0,.32));
}
.ker-home-v2__event-meta {
    position:relative;
    z-index:3;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    gap:clamp(18px,2.1vw,34px);
    padding-bottom:0;
    text-align:left;
}
.ker-home-v2__registration-cta {
    min-height:56px;
    padding:0 clamp(20px,1.9vw,36px);
    border-width:2px;
    border-radius:999px;
    font-size:clamp(18px,1.18vw,26px);
    font-weight:400;
    letter-spacing:.05em;
    white-space:nowrap;
}
.ker-home-v2__event-divider {
    flex:0 0 2px;
    width:2px;
    height:clamp(88px,8vw,128px);
    align-self:flex-end;
    background:rgba(255,255,255,.92);
    border-radius:999px;
}
.ker-home-v2__event-copy {
    display:grid;
    align-content:end;
    gap:clamp(6px,.55vw,10px);
    padding-bottom:clamp(1px,.2vw,4px);
}
.ker-home-v2__event-copy-line,
.ker-home-v2__event-copy-line:visited {
    font-size:clamp(21px,1.72vw,35px);
    line-height:1.06;
    font-weight:300;
    letter-spacing:.11em;
    text-transform:uppercase;
    color:#fff!important;
}
@media (max-width:900px) {
    .ker-home-v2__event-shell {
        padding-bottom:76px;
    }
    .ker-home-v2__event-logo {
        max-width:min(50vw,240px);
        max-height:80px;
    }
    .ker-home-v2__event-meta {
        gap:14px;
    }
    .ker-home-v2__registration-cta {
        min-height:48px;
        font-size:16px;
    }
    .ker-home-v2__event-copy-line,
    .ker-home-v2__event-copy-line:visited {
        font-size:19px;
    }
}
@media (max-width:640px) {
    .ker-home-v2__event-shell {
        width:min(100%,calc(100% - 28px));
        padding-bottom:48px;
    }
    .ker-home-v2__event-cluster {
        gap:12px;
        width:100%;
    }
    .ker-home-v2__event-logo {
        max-width:min(72vw,220px);
        max-height:64px;
    }
    .ker-home-v2__event-meta {
        width:100%;
        gap:12px;
        justify-content:center;
    }
    .ker-home-v2__registration-cta {
        min-height:42px;
        padding:0 16px;
        font-size:13px;
    }
    .ker-home-v2__event-divider {
        height:50px;
    }
    .ker-home-v2__event-copy-line,
    .ker-home-v2__event-copy-line:visited {
        font-size:14px;
        letter-spacing:.08em;
    }
}


/* =========================================================
   KER Theme 1.6.79 — alinhamento fino da billboard + Top 5
   ========================================================= */
.ker-home-v2__event-cluster {
    width:min(100%, 980px);
}
.ker-home-v2__event-meta {
    align-items:center;
}
.ker-home-v2__registration-cta {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    line-height:1;
}
.ker-home-v2__event-divider {
    align-self:center;
}
.ker-home-v2__event-copy {
    justify-content:center;
}

.ker-home-v2-rank-card {
    --ker-rank-card-inset:clamp(6px,.55vw,10px);
    --ker-rank-card-details-h:clamp(82px,6.2vw,112px);
}
.ker-home-v2-rank-card__position {
    bottom:var(--ker-rank-card-inset);
    height:var(--ker-rank-card-details-h);
    display:flex;
    align-items:center;
    justify-content:flex-start;
    filter:drop-shadow(0 4px 8px rgba(0,0,0,.34));
}
.ker-home-v2-rank-card__details {
    bottom:var(--ker-rank-card-inset);
    min-height:var(--ker-rank-card-details-h);
}

@media (max-width:640px) {
    .ker-home-v2__event-meta {
        align-items:center;
    }
    .ker-home-v2-rank-card {
        --ker-rank-card-details-h:86px;
    }
}


/* =========================================================
   KER Theme 1.6.80 — billboard ultra wide/mobile + Top 5 mobile
   ========================================================= */

/* Em telas muito largas, a billboard mantém presença de hero e nunca fica
   achatada: 900px é o piso e, em telas também altas, ela cresce com a viewport. */
@media (min-width:1900px) {
    .ker-home-v2__billboard {
        min-height:max(900px,56vh);
    }
}

/* Mobile: preserva a mesma composição do desktop
   (logo acima + CTA | divisor | data/local) com proporções compactas. */
@media (max-width:640px) {
    .ker-home-v2__event-shell {
        width:min(100%,calc(100% - 24px));
        justify-content:center;
        padding-bottom:50px;
    }
    .ker-home-v2__event-cluster {
        width:min(100%,360px);
        gap:14px;
        align-items:center;
    }
    .ker-home-v2__event-logo {
        width:auto;
        max-width:min(76vw,230px);
        max-height:68px;
        object-fit:contain;
    }
    .ker-home-v2__event-meta {
        width:min(100%,350px);
        display:grid;
        grid-template-columns:max-content 2px minmax(0,1fr);
        align-items:center;
        justify-content:center;
        gap:10px;
        padding-bottom:0;
        text-align:left;
    }
    .ker-home-v2__registration-cta {
        min-width:0;
        min-height:40px;
        padding:0 14px;
        font-size:12px;
        letter-spacing:.045em;
        white-space:nowrap;
    }
    .ker-home-v2__event-divider {
        width:2px;
        height:52px;
        align-self:center;
    }
    .ker-home-v2__event-copy {
        min-width:0;
        display:grid;
        justify-items:start;
        align-content:center;
        gap:5px;
        padding-bottom:0;
    }
    .ker-home-v2__event-copy-line,
    .ker-home-v2__event-copy-line:visited {
        max-width:100%;
        font-size:clamp(10.5px,2.9vw,12px);
        line-height:1.12;
        letter-spacing:.045em;
        white-space:normal;
        text-wrap:balance;
    }

    /* TOP 5: três cards completos visíveis na largura útil e os demais por scroll. */
    .ker-home-v2-ranking__cards {
        display:flex;
        gap:8px;
        overflow-x:auto;
        padding:2px 8px 12px 0;
        margin-right:-14px;
        scroll-snap-type:x proximity;
        scrollbar-width:none;
    }
    .ker-home-v2-ranking__cards::-webkit-scrollbar { display:none; }
    .ker-home-v2-rank-card {
        --ker-rank-card-inset:4px;
        --ker-rank-card-details-h:clamp(50px,15vw,72px);
        flex:0 0 calc((100% - 16px) / 3);
        min-width:0;
        max-width:none;
        border-radius:8px;
        scroll-snap-align:start;
    }
    .ker-home-v2-rank-card__position {
        left:5px;
        bottom:var(--ker-rank-card-inset);
        height:var(--ker-rank-card-details-h);
        font-size:clamp(42px,13vw,66px);
        -webkit-text-stroke:clamp(1.2px,.4vw,2px) #fff;
    }
    .ker-home-v2-rank-card__details {
        right:var(--ker-rank-card-inset);
        bottom:var(--ker-rank-card-inset);
        left:28%;
        min-height:var(--ker-rank-card-details-h);
        padding:clamp(4px,1.3vw,7px) clamp(4px,1.2vw,7px);
        gap:1px;
        border-radius:6px;
    }
    .ker-home-v2-rank-card__details strong {
        font-size:clamp(8px,2.35vw,11px);
        line-height:1;
    }
    .ker-home-v2-rank-card__details h3 {
        margin:2px 0 0;
        font-size:clamp(6.8px,2vw,9px);
        line-height:1.05;
    }
    .ker-home-v2-rank-card__details span {
        font-size:clamp(5.8px,1.7vw,8px);
        line-height:1.08;
    }
}

@media (max-width:380px) {
    .ker-home-v2__event-meta {
        width:min(100%,330px);
        gap:8px;
    }
    .ker-home-v2__registration-cta {
        min-height:38px;
        padding:0 11px;
        font-size:11px;
    }
    .ker-home-v2__event-divider { height:48px; }
    .ker-home-v2__event-copy-line,
    .ker-home-v2__event-copy-line:visited {
        font-size:10px;
        letter-spacing:.035em;
    }
    .ker-home-v2-ranking__cards { gap:6px; }
    .ker-home-v2-rank-card {
        flex-basis:calc((100% - 12px) / 3);
    }
}

/* =========================================================
   KER Theme 1.6.81 — Cabeçalho gerenciado + Rodapé KER 2026
   ========================================================= */
.ker-header.ker-header--managed,
body.ker-home-surface .ker-header.ker-header--managed,
body.ker-event-detail-surface .ker-header.ker-header--managed,
body.ker-ranking-surface .ker-header.ker-header--managed {
    background: var(--ker-header-managed-bg, rgba(8,11,14,.62)) !important;
    -webkit-backdrop-filter: blur(var(--ker-header-managed-blur,13px)) saturate(var(--ker-header-managed-saturation,125%)) !important;
    backdrop-filter: blur(var(--ker-header-managed-blur,13px)) saturate(var(--ker-header-managed-saturation,125%)) !important;
}
.ker-header.ker-header--managed .ker-header__inner,
body.ker-home-surface .ker-header.ker-header--managed .ker-header__inner,
body.ker-event-detail-surface .ker-header.ker-header--managed .ker-header__inner {
    min-height: var(--ker-header-managed-height,70px) !important;
}
@media (min-width:761px) {
    .ker-header--managed .ker-brand { order:var(--ker-header-logo-order,1); }
    .ker-header--managed .ker-nav { order:var(--ker-header-menu-order,2); }
    .ker-header--managed .ker-social-links--header.ker-social-links--desktop { order:var(--ker-header-social-order,3); }
    .ker-header--managed .ker-header-account { order:var(--ker-header-account-order,4); }
    .ker-header--managed .ker-nav-toggle { order:0; }
}
@media (max-width:760px) {
    .ker-header.ker-header--managed .ker-header__inner,
    body.ker-home-surface .ker-header.ker-header--managed .ker-header__inner,
    body.ker-event-detail-surface .ker-header.ker-header--managed .ker-header__inner {
        min-height:var(--ker-header-managed-height-mobile,66px) !important;
    }
    .ker-header--managed .ker-nav-toggle { order:var(--ker-header-mobile-toggle-order,1); }
    .ker-header--managed .ker-brand { order:var(--ker-header-mobile-logo-order,2); }
    .ker-header--managed .ker-header-account { order:var(--ker-header-mobile-account-order,3); }
}

.ker-footer-2026 {
    position:relative;
    z-index:2;
    overflow:hidden;
    margin:0;
    padding:clamp(64px,7vw,108px) 0 26px;
    background:var(--ker-footer-managed-bg,#10090c);
    color:var(--ker-footer-managed-text,#fff);
}
.ker-footer-2026__inner {
    width:min(1180px,calc(100% - 44px));
    margin:0 auto;
}
.ker-footer-2026__brand {
    width:max-content;
    max-width:100%;
    min-height:86px;
    margin:0 auto;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:3px;
    color:var(--ker-footer-managed-text,#fff);
    text-decoration:none;
}
.ker-footer-2026__brand strong {
    font-size:clamp(2rem,3.2vw,3.2rem);
    line-height:.85;
    letter-spacing:-.055em;
}
.ker-footer-2026__brand span {
    font-size:.62rem;
    font-weight:800;
    letter-spacing:.32em;
}
.ker-footer-2026__logo-image {
    display:block;
    width:auto;
    height:auto;
    max-width:min(190px,44vw);
    max-height:88px;
    object-fit:contain;
}
.ker-footer-2026__social-rule,
.ker-footer-2026__copyright {
    display:grid;
    grid-template-columns:minmax(30px,1fr) auto minmax(30px,1fr);
    align-items:center;
    gap:28px;
}
.ker-footer-2026__social-rule {
    margin:20px 0 clamp(58px,6vw,88px);
}
.ker-footer-2026__line {
    width:100%;
    height:1px;
    background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.035) 12%,rgba(255,255,255,.19) 100%);
}
.ker-footer-2026__line--reverse {
    background:linear-gradient(90deg,rgba(255,255,255,.19) 0%,rgba(255,255,255,.035) 88%,transparent 100%);
}
.ker-footer-2026__socials:empty {
    width:90px;
    height:1px;
}
.ker-footer-2026 .ker-social-links--footer {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:17px;
    padding:0;
    margin:0;
}
.ker-footer-2026 .ker-social-links__item {
    width:20px;
    height:20px;
    border:0;
    border-radius:0;
    background:transparent;
    color:color-mix(in srgb,var(--ker-footer-managed-text,#fff) 72%,transparent);
    opacity:.88;
}
.ker-footer-2026 .ker-social-links__item:hover,
.ker-footer-2026 .ker-social-links__item:focus-visible {
    border:0;
    background:transparent;
    color:var(--ker-footer-managed-text,#fff);
    transform:translateY(-1px);
    opacity:1;
}
.ker-footer-2026 .ker-social-links__icon {
    width:16px;
    height:16px;
}
.ker-footer-2026__nav {
    width:min(960px,100%);
    margin:0 auto clamp(64px,7vw,96px);
    display:grid;
    grid-template-columns:repeat(var(--ker-footer-managed-columns,4),minmax(0,1fr));
    gap:clamp(34px,5vw,72px);
    align-items:start;
}
.ker-footer-2026__group h2 {
    margin:0 0 22px;
    color:var(--ker-footer-managed-text,#fff);
    font-size:.72rem;
    font-weight:900;
    line-height:1.25;
    letter-spacing:.045em;
    text-transform:uppercase;
}
.ker-footer-2026__group ul {
    margin:0;
    padding:0;
    list-style:none;
    display:grid;
    gap:14px;
}
.ker-footer-2026__group a {
    display:inline-block;
    color:var(--ker-footer-managed-muted,#b8afb4);
    font-size:.72rem;
    font-weight:650;
    line-height:1.35;
    text-decoration:none;
    transition:color .18s ease,transform .18s ease;
}
.ker-footer-2026__group a:hover,
.ker-footer-2026__group a:focus-visible {
    color:var(--ker-footer-managed-text,#fff);
    transform:translateX(2px);
}
.ker-footer-2026__copyright {
    gap:30px;
}
.ker-footer-2026__copyright p {
    margin:0;
    color:color-mix(in srgb,var(--ker-footer-managed-text,#fff) 72%,transparent);
    font-size:.67rem;
    font-weight:850;
    line-height:1;
    letter-spacing:.08em;
    white-space:nowrap;
    text-transform:uppercase;
}
@supports not (color:color-mix(in srgb,white 50%,black)) {
    .ker-footer-2026 .ker-social-links__item,
    .ker-footer-2026__copyright p { color:rgba(255,255,255,.72); }
}
@media (max-width:900px) {
    .ker-footer-2026__nav {
        grid-template-columns:repeat(2,minmax(0,1fr));
        width:min(620px,100%);
    }
}
@media (max-width:560px) {
    .ker-footer-2026 {
        padding:54px 0 22px;
    }
    .ker-footer-2026__inner {
        width:min(100% - 32px,1180px);
    }
    .ker-footer-2026__brand {
        min-height:70px;
    }
    .ker-footer-2026__logo-image {
        max-width:min(150px,52vw);
        max-height:70px;
    }
    .ker-footer-2026__social-rule {
        gap:15px;
        margin:18px 0 52px;
    }
    .ker-footer-2026 .ker-social-links--footer {
        gap:13px;
    }
    .ker-footer-2026__nav {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:42px 28px;
        margin-bottom:58px;
    }
    .ker-footer-2026__group h2 {
        margin-bottom:16px;
        font-size:.66rem;
    }
    .ker-footer-2026__group ul {
        gap:12px;
    }
    .ker-footer-2026__group a {
        font-size:.69rem;
    }
    .ker-footer-2026__copyright {
        gap:14px;
    }
    .ker-footer-2026__copyright p {
        font-size:.58rem;
        letter-spacing:.045em;
    }
}

@media (max-width:760px) {
    .ker-header--managed .ker-mobile-slot-1 {
        left:0 !important;
        right:auto !important;
        transform:translateY(-50%) !important;
    }
    .ker-header--managed .ker-mobile-slot-2 {
        left:50% !important;
        right:auto !important;
        transform:translate(-50%,-50%) !important;
    }
    .ker-header--managed .ker-mobile-slot-3 {
        left:auto !important;
        right:0 !important;
        transform:translateY(-50%) !important;
    }
    .ker-header--managed .ker-nav,
    body.ker-home-surface .ker-header--managed .ker-nav,
    body.ker-event-detail-surface .ker-header--managed .ker-nav {
        top:var(--ker-header-managed-height-mobile,66px) !important;
        height:calc(100dvh - var(--ker-header-managed-height-mobile,66px)) !important;
        max-height:calc(100dvh - var(--ker-header-managed-height-mobile,66px)) !important;
    }
}
\n\n/* =========================================================\n   KER Theme v1.6.83 — alternativa de inscrição via WhatsApp\n   ========================================================= */\n.ker-registration-step__actions {\n    display: flex;\n    align-items: center;\n    justify-content: flex-end;\n    gap: 10px;\n    flex-wrap: wrap;\n}\n\n.ker-registration-whatsapp-contact {\n    min-height: 58px;\n    display: inline-flex;\n    align-items: center;\n    justify-content: center;\n    gap: 9px;\n    padding: 0 24px;\n    border: 1px solid rgba(37,211,102,.72);\n    border-radius: 999px;\n    color: #f5fff8;\n    background: linear-gradient(180deg, rgba(37,211,102,.20), rgba(17,114,55,.26));\n    box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 12px 30px rgba(0,0,0,.18);\n    text-decoration: none;\n    font-size: .86rem;\n    font-weight: 900;\n    line-height: 1;\n    transition: transform .18s ease, border-color .18s ease, background .18s ease, opacity .18s ease;\n}\n\n.ker-registration-whatsapp-contact:hover:not(.is-disabled) {\n    transform: translateY(-1px);\n    color: #fff;\n    border-color: #25d366;\n    background: linear-gradient(180deg, rgba(37,211,102,.32), rgba(17,114,55,.36));\n}\n\n.ker-registration-whatsapp-contact__icon {\n    width: 20px;\n    height: 20px;\n    display: inline-flex;\n}\n.ker-registration-whatsapp-contact__icon svg { width: 100%; height: 100%; }\n\n.ker-registration-whatsapp-contact.is-disabled,\n.ker-registration-whatsapp-contact[aria-disabled=\"true\"] {\n    pointer-events: none;\n    opacity: .32;\n    filter: saturate(.35);\n}\n\n@media (max-width: 900px) {\n    .ker-registration-step__footer {\n        align-items: stretch !important;\n        flex-direction: column !important;\n    }\n    .ker-registration-step__actions {\n        width: 100%;\n        display: grid;\n        grid-template-columns: repeat(2, minmax(0, 1fr));\n    }\n    .ker-registration-whatsapp-contact,\n    .ker-registration-continue {\n        width: 100% !important;\n        min-width: 0 !important;\n        padding-left: 16px !important;\n        padding-right: 16px !important;\n    }\n}\n\n@media (max-width: 560px) {\n    .ker-registration-step__actions {\n        grid-template-columns: 1fr;\n    }\n}\n

/* KER Theme v1.6.84 — modo de countdown até a data/hora real do evento reutiliza o componente de countdown existente. */


/* =========================================================
   KER Theme 1.6.85 — Modo de divulgação em /inscricoes/
   Categorias + vagas de campanha + countdown do evento,
   sem formulário, checkout ou CTA de pagamento.
   ========================================================= */
.ker-registration-promo {
    position:relative;
    min-height:100svh;
    overflow:hidden;
    isolation:isolate;
    padding:clamp(112px,11vw,154px) 0 clamp(74px,8vw,116px);
    background:#070a09;
    color:#fff;
}
.ker-registration-promo__background {
    position:absolute;
    inset:-5%;
    z-index:-4;
    background-color:#08100e;
    background-image:var(--ker-registration-countdown-bg,none);
    background-size:cover;
    background-position:center;
    filter:blur(var(--ker-registration-countdown-blur,8px));
    transform:scale(1.05);
}
.ker-registration-promo__shade {
    position:absolute;
    inset:0;
    z-index:-3;
    background:
        linear-gradient(180deg,rgba(5,8,7,.52),rgba(5,8,7,.72) 48%,rgba(5,8,7,.94)),
        rgba(0,0,0,var(--ker-registration-countdown-overlay,.34));
}
.ker-registration-promo__grain {
    position:absolute;
    inset:0;
    z-index:-2;
    pointer-events:none;
    opacity:.11;
    background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' seed='9'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.3'/%3E%3C/svg%3E");
    background-size:155px 155px;
    mix-blend-mode:soft-light;
}
.ker-registration-promo__inner {
    width:min(1180px,calc(100% - 36px));
    display:grid;
    justify-items:center;
    font-family:var(--ker-registration-countdown-font,inherit);
}
.ker-registration-promo__logo {
    width:min(74vw,390px);
    max-height:154px;
    margin:0 auto clamp(30px,4vw,48px);
    object-fit:contain;
    filter:drop-shadow(0 18px 42px rgba(0,0,0,.28));
}
.ker-registration-promo__heading {
    max-width:760px;
    margin:0 auto clamp(28px,4vw,46px);
    text-align:center;
}
.ker-registration-promo__heading > span {
    display:block;
    margin-bottom:9px;
    font-family:var(--ker-font-ui,Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);
    font-size:.67rem;
    font-weight:900;
    letter-spacing:.2em;
    color:rgba(255,255,255,.56);
}
.ker-registration-promo__heading h1 {
    margin:0;
    color:#fff;
    font-size:clamp(2.35rem,5.5vw,5.1rem);
    line-height:.94;
    letter-spacing:-.05em;
}
.ker-registration-promo__heading p {
    max-width:600px;
    margin:14px auto 0;
    color:rgba(255,255,255,.65);
    font-family:var(--ker-font-ui,Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);
    font-size:.9rem;
    line-height:1.55;
}
.ker-registration-promo__cards {
    width:min(100%,940px);
    margin:0 auto;
}
.ker-registration-promo__card {
    min-height:clamp(330px,39vw,465px);
    cursor:default;
    border-color:rgba(255,255,255,.13);
    box-shadow:0 24px 60px rgba(0,0,0,.24);
}
.ker-registration-promo__card::after {
    border-color:rgba(255,255,255,.06);
}
.ker-registration-promo__card .ker-registration-card__content {
    padding-bottom:clamp(24px,3vw,34px);
}
.ker-registration-promo__countdown {
    width:min(100%,920px);
    margin:clamp(44px,6vw,74px) auto 0;
    padding-top:clamp(34px,5vw,54px);
    border-top:1px solid rgba(255,255,255,.12);
    text-align:center;
}
.ker-registration-promo__countdown .ker-registration-countdown-hero__label {
    display:block;
}
.ker-registration-promo__countdown .ker-registration-countdown-hero__timer {
    margin-inline:auto;
}
.ker-registration-promo__date-pending {
    margin-top:12px;
    color:rgba(255,255,255,.78);
    font-size:clamp(1.5rem,4vw,3rem);
    font-weight:900;
    letter-spacing:-.035em;
}
.ker-registration-promo__sponsors {
    margin-top:clamp(38px,5vw,64px);
}
@media (max-width:760px) {
    .ker-registration-promo {
        padding:104px 0 72px;
    }
    .ker-registration-promo__inner {
        width:min(100% - 22px,620px);
    }
    .ker-registration-promo__logo {
        width:min(78vw,300px);
        max-height:116px;
        margin-bottom:28px;
    }
    .ker-registration-promo__heading {
        margin-bottom:24px;
    }
    .ker-registration-promo__heading h1 {
        font-size:clamp(2.15rem,10vw,3.5rem);
    }
    .ker-registration-promo__cards {
        grid-template-columns:1fr;
        gap:14px;
    }
    .ker-registration-promo__card {
        min-height:330px;
    }
    .ker-registration-promo__countdown {
        margin-top:38px;
        padding-top:30px;
    }
    .ker-registration-promo__countdown .ker-registration-countdown-hero__timer {
        width:100%;
        gap:6px;
    }
    .ker-registration-promo__countdown .ker-registration-countdown-hero__timer > span {
        min-width:0;
        flex:1 1 0;
    }
    .ker-registration-promo__countdown .ker-registration-countdown-hero__timer strong {
        font-size:clamp(2.35rem,12vw,4rem);
    }
    .ker-registration-promo__countdown .ker-registration-countdown-hero__timer i {
        font-size:clamp(1.6rem,7vw,2.8rem);
    }
}

/* KER Theme 1.6.86 — Line Grid da etapa */
.ker-line-grid-public {
    --ker-line-title:#fff;
    --ker-grid-title:#d72638;
    position:relative;
    isolation:isolate;
    min-height:100vh;
    overflow:hidden;
    color:#fff;
    background:
        radial-gradient(circle at 50% 14%, rgba(132,54,255,.20) 0, rgba(132,54,255,.08) 20%, transparent 42rem),
        radial-gradient(circle at 14% 82%, rgba(215,38,56,.30) 0, rgba(215,38,56,.10) 20%, transparent 42rem),
        radial-gradient(circle at 84% 68%, rgba(215,38,56,.13) 0, transparent 32rem),
        linear-gradient(180deg,#090a0f 0%,#0b0c12 48%,#07080c 100%);
}
.ker-line-grid-public__ambient,
.ker-line-grid-public__grid-bg,
.ker-line-grid-public__grain {
    position:absolute;
    inset:0;
    pointer-events:none;
    z-index:-1;
}
.ker-line-grid-public__ambient {
    background:
        radial-gradient(ellipse at 48% 20%, rgba(128,69,255,.15), transparent 38%),
        radial-gradient(ellipse at 10% 80%, rgba(223,27,48,.19), transparent 35%);
    filter:blur(16px);
}
.ker-line-grid-public__grid-bg {
    opacity:.18;
    background-image:
        linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px);
    background-size:54px 54px;
    mask-image:linear-gradient(to bottom,transparent 0,rgba(0,0,0,.9) 28%,rgba(0,0,0,.9) 88%,transparent 100%);
}
.ker-line-grid-public__grain {
    opacity:.16;
    mix-blend-mode:soft-light;
    background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.62'/%3E%3C/svg%3E");
}
.ker-line-grid-public__inner {
    width:min(1160px,calc(100% - 38px));
    padding-top:clamp(54px,8vw,108px);
    padding-bottom:84px;
}
.ker-line-grid-public__header {
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    margin:0 auto clamp(42px,6vw,72px);
    text-align:center;
}
.ker-line-grid-public__logo {
    display:block;
    width:auto;
    height:auto;
    max-width:min(410px,74vw);
    max-height:128px;
    object-fit:contain;
    filter:grayscale(1) brightness(0) invert(1);
    user-select:none;
    pointer-events:none;
    margin-bottom:18px;
}
.ker-line-grid-public__stage-label {
    margin-bottom:14px;
    color:rgba(255,255,255,.75);
    font-size:12px;
    font-weight:800;
    letter-spacing:.18em;
    text-transform:uppercase;
}
.ker-line-grid-public__header h1 {
    display:flex;
    align-items:baseline;
    justify-content:center;
    gap:.22em;
    margin:0;
    line-height:.84;
    font-family:inherit;
    font-size:clamp(54px,8vw,104px);
    font-style:italic;
    letter-spacing:-.065em;
    transform:skewX(-7deg);
    text-transform:uppercase;
}
.ker-line-grid-public__header h1 span {
    color:var(--ker-line-title);
    font-weight:100;
}
.ker-line-grid-public__header h1 strong {
    color:var(--ker-grid-title);
    font-weight:800;
}
.ker-line-grid-public__list {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    column-gap:clamp(54px,8vw,116px);
    row-gap:20px;
    align-items:start;
}
.ker-line-grid-card {
    --ker-line-card:#d72638;
    position:relative;
    display:flex;
    align-items:stretch;
    min-width:0;
    min-height:106px;
    filter:drop-shadow(0 16px 28px rgba(0,0,0,.22));
}
.ker-line-grid-card:nth-child(odd) { transform:translateY(0); }
.ker-line-grid-card:nth-child(even) { transform:translateY(48px); }
.ker-line-grid-card__position {
    position:relative;
    z-index:3;
    display:grid;
    place-items:center;
    flex:0 0 102px;
    min-height:106px;
    margin-right:9px;
    border-radius:20px 4px 4px 20px;
    color:#0c0d11;
    background:#fff;
    box-shadow:inset -1px 0 0 rgba(0,0,0,.07),0 7px 20px rgba(0,0,0,.20);
}
.ker-line-grid-card__position strong {
    font-size:clamp(42px,4.1vw,68px);
    font-weight:900;
    letter-spacing:-.08em;
    line-height:1;
}
.ker-line-grid-card__body {
    position:relative;
    display:flex;
    align-items:center;
    flex:1;
    min-width:0;
    min-height:106px;
    padding:14px 22px 13px clamp(134px,33%,172px);
    overflow:hidden;
    border:1px solid color-mix(in srgb,var(--ker-line-card) 78%,white 12%);
    border-radius:4px 22px 22px 4px;
    background:
        linear-gradient(110deg,color-mix(in srgb,var(--ker-line-card) 82%,#050608 18%) 0%,var(--ker-line-card) 62%,color-mix(in srgb,var(--ker-line-card) 72%,#050608 28%) 100%);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.18),
        inset 0 -1px 0 rgba(0,0,0,.24),
        0 12px 32px color-mix(in srgb,var(--ker-line-card) 18%,transparent);
}
.ker-line-grid-card.no-position .ker-line-grid-card__body {
    border-radius:20px;
}
.ker-line-grid-card__body::before {
    content:"";
    position:absolute;
    inset:0;
    opacity:.25;
    background:
        linear-gradient(135deg,rgba(255,255,255,.18),transparent 35%),
        repeating-linear-gradient(120deg,rgba(0,0,0,.08) 0 1px,transparent 1px 10px);
    pointer-events:none;
}
.ker-line-grid-card__photo {
    position:absolute;
    z-index:2;
    left:4px;
    bottom:0;
    width:clamp(128px,39%,184px);
    height:128%;
    background-image:var(--ker-line-photo,none);
    background-repeat:no-repeat;
    background-position:center bottom;
    background-size:contain;
    pointer-events:none;
    user-select:none;
    filter:drop-shadow(10px 6px 14px rgba(0,0,0,.24));
}
.ker-line-grid-card__identity {
    position:relative;
    z-index:4;
    min-width:0;
    margin-left:auto;
    text-align:right;
    text-transform:uppercase;
}
.ker-line-grid-card__identity span {
    display:block;
    margin-bottom:3px;
    color:rgba(255,255,255,.72);
    font-size:9px;
    font-weight:750;
    letter-spacing:.16em;
}
.ker-line-grid-card__identity strong {
    display:block;
    max-width:100%;
    overflow-wrap:anywhere;
    color:#fff;
    font-size:clamp(20px,2vw,30px);
    font-weight:850;
    font-style:italic;
    letter-spacing:-.035em;
    line-height:.98;
    text-shadow:0 2px 10px rgba(0,0,0,.26);
}
.ker-line-grid-card__watermark {
    position:absolute;
    z-index:5;
    left:94px;
    bottom:8px;
    transform:rotate(-7deg);
    color:rgba(255,255,255,.19);
    font-size:11px;
    font-weight:900;
    letter-spacing:.15em;
    pointer-events:none;
}
.ker-line-grid-public__footer {
    margin-top:clamp(70px,9vw,118px);
    text-align:center;
    color:rgba(255,255,255,.42);
    font-size:11px;
    font-weight:600;
    letter-spacing:.10em;
    text-transform:uppercase;
}
.ker-line-grid-public,
.ker-line-grid-public * {
    -webkit-user-select:none;
    user-select:none;
}
@media (max-width:900px) {
    .ker-line-grid-public__list {
        grid-template-columns:1fr;
        row-gap:14px;
        width:min(620px,100%);
        margin-inline:auto;
    }
    .ker-line-grid-card:nth-child(even) { transform:none; }
    .ker-line-grid-card__body { padding-left:clamp(132px,34%,190px); }
}
@media (max-width:560px) {
    .ker-line-grid-public__inner { width:min(100% - 22px,1160px); padding-top:42px; padding-bottom:60px; }
    .ker-line-grid-public__header { margin-bottom:34px; }
    .ker-line-grid-public__logo { max-width:72vw; max-height:86px; margin-bottom:13px; }
    .ker-line-grid-public__header h1 { font-size:clamp(46px,16vw,72px); }
    .ker-line-grid-card { min-height:88px; }
    .ker-line-grid-card__position { flex-basis:74px; min-height:88px; border-radius:16px 3px 3px 16px; }
    .ker-line-grid-card__position strong { font-size:40px; }
    .ker-line-grid-card__body { min-height:88px; padding:11px 13px 10px 112px; border-radius:3px 16px 16px 3px; }
    .ker-line-grid-card.no-position .ker-line-grid-card__body { border-radius:16px; }
    .ker-line-grid-card__photo { width:122px; height:126%; left:-2px; }
    .ker-line-grid-card__identity strong { font-size:19px; }
    .ker-line-grid-card__identity span { font-size:8px; }
    .ker-line-grid-card__watermark { left:66px; bottom:6px; font-size:9px; }
    .ker-line-grid-public__footer { margin-top:54px; }
}
@media print {
    .ker-line-grid-public { display:none !important; }
}


/* KER Theme 1.6.87 — private Line Grid preview */
.ker-line-grid-preview-bar{position:relative;z-index:20;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;padding:10px 18px;border-bottom:1px solid rgba(255,255,255,.12);background:rgba(8,12,18,.88);backdrop-filter:blur(14px);color:#fff;text-align:center}
.ker-line-grid-preview-bar strong{font-size:10px;letter-spacing:.14em;color:#ff6675}
.ker-line-grid-preview-bar span{font-size:11px;color:rgba(255,255,255,.68)}
.ker-line-grid-public.is-preview .ker-line-grid-public__inner{padding-top:clamp(42px,6vw,86px)}
@media(max-width:560px){.ker-line-grid-preview-bar{align-items:flex-start;flex-direction:column;text-align:left;padding:10px 12px;gap:4px}.ker-line-grid-preview-bar span{line-height:1.35}}
