.elite-page {
    min-height: 70vh;
    padding-top: 30px;
    color: #4b3517;
}
.elite-container { max-width: 1180px; }
.elite-link-button,.elite-register-button { display:inline-flex; align-items:center; gap:.5rem; min-height:2.5rem; padding:.55rem 1rem; border-radius:999px; font-weight:700; text-decoration:none; }
.elite-link-button { color:#795a25; border:1px solid #c8ad77; background:#fffaf0; }
.elite-register-button { color:white; background:linear-gradient(135deg,#c7a252,#8b6426); box-shadow:0 4px 12px rgba(120,82,26,.22); }
.elite-vote-count { width:var(--vote-count-width,auto); min-height:var(--vote-count-min-height,0); margin:var(--vote-count-margin,.6rem 0); color:var(--vote-count-color,#71501c); white-space:var(--vote-count-white-space,normal); font-weight:600; }
.elite-vote-count strong { color:var(--vote-count-value-color,inherit); font-weight:700; letter-spacing:.01em; line-height:var(--vote-count-value-line-height,normal); }
.elite-vote-count span { color:var(--vote-count-label-color,#75654b); font-size: 0.85rem; }
.elite-profile-actions { display:flex; flex-wrap:nowrap; align-items:center; gap:.55rem; }
.elite-vote-button,.elite-share-button { display:inline-flex; align-items:center; justify-content:center; gap:.45rem; min-height:2.65rem; padding:.55rem 1rem; border:1px solid #c3a05b; border-radius:999px; color:#fff; background:linear-gradient(135deg,#c8a252,#906626); font-weight:700; text-decoration:none; cursor:pointer; transition:filter .15s ease,transform .15s ease; }
.elite-vote-button { flex:1; }
.elite-vote-button:hover,.elite-share-button:hover { filter:brightness(1.06); transform:translateY(-1px); }
.elite-vote-button:disabled { cursor:not-allowed; opacity:.72; }
.elite-share-button { flex:0 0 2.7rem; width:2.7rem; height:2.7rem; padding:.5rem; border-color:#dfd1b2; color:#654b25; background:#fffaf0; box-shadow:0 2px 6px rgba(82,60,27,.1); }
.elite-share-button.is-copied { color:#fff; background:#6d8b4a; }
.elite-card-feedback { margin-top:.4rem; font-size:.78rem; }
.elite-card-feedback.is-success { color:#386b3d; }
.elite-card-feedback.is-error { color:#a13e32; }
.elite-section-title { margin:0 0 1rem; color:#67491d; font-family:"Times New Roman",serif; font-size:1.45rem; text-align:center; }
.elite-empty-state { margin:2rem auto; padding:3rem 1rem; border:1px solid #e2d1ab; border-radius:20px; background:rgba(255,255,255,.55); text-align:center; }
.elite-empty-icon { display:grid; place-items:center; width:4rem; height:4rem; margin:0 auto 1rem; border-radius:50%; color:#987334; background:#f2e5c8; font-size:1.5rem; }
.elite-empty-state h2 { color:#543a17; font-size:1.25rem; }
.elite-empty-state p { color:#786747; }
.elite-turnstile-widget { position:fixed; z-index:10; right:1rem; bottom:1rem; }
.elite-back-link { display:inline-flex; align-items:center; gap:.5rem; margin-bottom:1rem; color:#765726; text-decoration:none; }
.elite-profile-card { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); overflow:hidden; border:1px solid #dfcda5; border-radius:22px; background:rgba(255,255,255,.75); box-shadow:0 12px 36px rgba(102,74,32,.13); }
.elite-profile-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-content:start; gap:.5rem; padding:1rem; background:#f4ead6; }
.elite-profile-gallery img { width:100%; height:100%; max-height:560px; object-fit:cover; border-radius:13px; }
.elite-profile-gallery img:only-child { grid-column:1/-1; }
.elite-profile-content { align-self:center; padding:clamp(1.5rem,4vw,3rem); }
.elite-profile-eyebrow { margin-bottom:.5rem; color:#9a773a; font-size:.76rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.elite-profile-content h1 { margin-bottom:1rem; color:#4d3516; font-family:"Times New Roman",serif; font-size:clamp(1.8rem,4vw,3rem); }
.elite-profile-about { color:#66553b; line-height:1.75; white-space:pre-line; }
.elite-vote-count--detail { margin:1.5rem 0; }
.elite-nomination-program-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.elite-nomination-program-card { display:flex; flex-direction:column; align-items:flex-start; padding:1.5rem; border:1px solid #dfcca2; border-radius:18px; color:inherit; background:rgba(255,255,255,.75); box-shadow:0 8px 20px rgba(111,78,30,.09); text-decoration:none; transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
.elite-nomination-program-card:hover,.elite-nomination-program-card:focus-visible { transform:translateY(-2px); border-color:#ba9650; color:inherit; box-shadow:0 12px 26px rgba(111,78,30,.15); }
.elite-program-card-mark { display:grid; place-items:center; width:2.8rem; height:2.8rem; margin-bottom:1rem; border-radius:50%; color:#8c6628; background:#f3e6c9; }
.elite-nomination-program-card h2 { color:#533a19; font-family:"Times New Roman",serif; font-size:1.25rem; }
.elite-nomination-program-card p { color:#786747; }
.elite-program-date { flex:1; margin:.5rem 0 1.2rem; color:#856b3f; font-size:.88rem; }
.elite-nomination-detail-container { max-width:1080px; }
.elite-breadcrumb { color:#806b4b; }
.elite-breadcrumb a { color:#8b6527; }
.elite-detail-heading { margin:0 auto 1.25rem; padding:0 0 1.1rem; border-bottom:1px dashed #dfcca2; text-align:center; }
.elite-detail-kicker { display:inline-block; padding:.32rem .85rem; border-radius:999px; color:#fffaf0; background:linear-gradient(135deg,#b78a36,#79511f); font-size:.7rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.elite-detail-heading h1 { margin:1rem 0 .25rem; color:#543a17; font-family:"Times New Roman",serif; font-size:clamp(1.15rem,2vw,1.55rem); font-weight:700; letter-spacing:.035em; text-transform:uppercase; }
.elite-detail-heading p { margin:0; color:#786747; font-size:.92rem; }
.elite-detail-grid { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(260px,.8fr); align-items:start; gap:1rem; }
.elite-detail-content,.elite-fee-panel,.elite-register-period { padding:clamp(.9rem,2vw,1.2rem); border:1px solid #e1d1ad; border-radius:10px; background:rgba(255,255,255,.88); box-shadow:0 5px 16px rgba(111,78,30,.06); }
.elite-detail-content section+section { margin-top:1.4rem; padding-top:1.2rem; border-top:1px dashed #d7c291; }
.elite-detail-content h2,.elite-fee-panel h2 { margin-bottom:.8rem; color:#795725; font-size:1rem; font-weight:700; }
.elite-detail-content h2::before { margin-right:.5rem; color:#c84e39; content:"◆"; font-size:.72em; }
.elite-fee-panel:first-child { border-color:#e3c98f; background:linear-gradient(145deg,#fff8e9,#fffdf8); }
.elite-fee-panel h2 { text-align:center; font-size:.78rem; letter-spacing:.06em; text-transform:uppercase; }
.elite-fee-value { display:flex; align-items:baseline; justify-content:center; gap:.35rem; color:#a34231; white-space:nowrap; }
.elite-fee-value strong { font-size:1.45rem; font-weight:700; }
.elite-fee-value span { font-size:.95rem; font-weight:700; }
.elite-fee-value small { margin-left:.12rem; font-size:.78rem; font-weight:700; }
.elite-detail-content .blog-inner-content { color:#59482c; line-height:1.7; }
.elite-detail-content .blog-inner-content img { max-width:100%; height:auto; }
.elite-detail-content .blog-inner-content ul { padding-left:0; list-style:none; }
.elite-detail-content .blog-inner-content li { margin:.3rem 0; }
.elite-detail-content .blog-inner-content li::before { margin-right:.45rem; color:#b78a36; content:"★"; font-size:.75em; }
.elite-detail-aside { display:grid; gap:.85rem; }
.elite-fee-panel ul,.elite-preparation-panel ul { margin:0; padding-left:1.15rem; color:#675638; }
.elite-fee-panel li+li { margin-top:.6rem; }
.elite-fee-panel:first-child li { display:flex; justify-content:space-between; gap:.5rem; }
.elite-fee-panel:first-child li strong { color:#a34231; white-space:nowrap; }
.elite-register-period { display:grid; gap:.4rem; color:#72552a; font-size:.82rem; }
.elite-register-button--wide { justify-content:center; width:100%; border:0; }
.elite-register-button:disabled { cursor:not-allowed; opacity:.55; }
.elite-registration-card { border-color:#e0cfaa; background:rgba(255,250,240,.82); box-shadow:0 10px 32px rgba(111,78,30,.09); }
.elite-registration-card>.card-body { padding:clamp(1.1rem,3vw,2.5rem); }
.elite-registration-program-summary { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:.5rem 1rem; margin-bottom:1.5rem; padding:.85rem 1rem; border:1px solid #e7dcc2; border-radius:12px; background:rgba(255,255,255,.62); }
.elite-registration-program-summary span { color:#806b4b; font-size:.85rem; }
.elite-registration-program-summary strong { color:#62461d; }
.elite-registration-form { width:100%; margin:0; }
.elite-registration-section { min-width:0; }
.elite-registration-section+.elite-registration-section { margin-top:0; padding-top:1.5rem; }
.elite-registration-section h2 { margin-bottom:1rem; color:#62461d; font-family:"Times New Roman",serif; font-size:1.2rem; font-weight:700; }
.elite-registration-heading { margin-bottom:1rem; }
.elite-registration-form .form-check-label { cursor:pointer; }
.elite-registration-form .form-control,.elite-registration-form .form-select { border-color:#d8c8a7; border-radius:10px; }
.elite-registration-form .form-control:focus,.elite-registration-form .form-select:focus { border-color:#b8944f; box-shadow:0 0 0 .2rem rgba(184,148,79,.15); }
.elite-invoice-card { overflow:hidden; border:1px solid #e0d2b4; border-radius:12px; background:#fffdf8; }
.elite-invoice-line,.elite-invoice-total { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem 1.1rem; }
.elite-invoice-line { border-bottom:1px dashed #e0d2b4; }
.elite-invoice-line>div { display:grid; gap:.25rem; }
.elite-invoice-line>div>span,.elite-invoice-total>span { color:#796b53; font-size:.88rem; }
.elite-invoice-line>div>strong { color:#5d451f; }
.elite-invoice-amount,.elite-invoice-total>strong { color:#9c3e2e; font-size:1.1rem; font-weight:700; text-align:right; white-space:nowrap; }
.elite-invoice-amount>span { font-size:.9rem; }
.elite-invoice-amount small { margin-left:.12rem; font-size:.78rem; }
.elite-invoice-total { background:#fff8e9; }
.elite-invoice-total>strong { font-size:1.25rem; }
.elite-invoice-total>strong>span { font-size:.85rem; }
.elite-fee-options { display:grid; gap:.7rem; }
.elite-fee-option { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:.8rem; padding:1rem; border:1px solid #e0d2b4; border-radius:12px; background:#fffdf8; cursor:pointer; }
.elite-fee-option:has(input:checked) { border-color:#ba9650; background:#fff8e8; box-shadow:0 0 0 2px rgba(186,150,80,.13); }
.elite-fee-option input { accent-color:#96702f; }
.elite-fee-option span { display:grid; gap:.2rem; }
.elite-fee-option small { color:#796b53; }
.elite-fee-option>b { color:#9c3e2e; white-space:nowrap; }
.elite-consent-box { margin-top:1.5rem; padding:1rem; border:1px solid #e2d2ad; border-radius:12px; background:#fff8e9; }
.elite-consent-box label { display:flex; align-items:flex-start; gap:.7rem; color:#5d4a2c; line-height:1.6; }
.elite-consent-box input { margin-top:.35rem; accent-color:#96702f; }
.elite-category-periods { display:grid; gap:.35rem; margin:.8rem 0 1rem; color:#786747; font-size:.92rem; }
.elite-consent-dialog { width:min(92vw,620px); max-height:85vh; padding:0; border:1px solid #d9c493; border-radius:18px; color:#4c391c; background:#fffdf8; box-shadow:0 24px 80px rgba(48,31,8,.28); }
.elite-consent-dialog::backdrop { background:rgba(34,25,13,.58); backdrop-filter:blur(3px); }
.elite-consent-dialog__content { padding:clamp(1.2rem,4vw,2rem); overflow:auto; }
.elite-consent-dialog__content h2 { margin:.35rem 0 1rem; color:#604318; }
.elite-consent-dialog__content>p:not(.elite-detail-kicker) { line-height:1.75; }
.elite-consent-dialog .elite-consent-box { display:flex; align-items:flex-start; gap:.7rem; }
.elite-consent-dialog__actions { display:flex; justify-content:flex-end; gap:.75rem; margin-top:1.25rem; }
.elite-consent-dialog button:disabled { opacity:.5; cursor:not-allowed; }
.elite-registration-submit { display:flex; justify-content:flex-end; gap:.75rem; margin-top:1.2rem; }
.elite-vote-button.is-loading { cursor:wait; opacity:.7; }
@media (max-width:767.98px) {
    .elite-nomination-program-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .elite-detail-grid { grid-template-columns:1fr; }
}
@media (max-width:540px) {
    .elite-nomination-program-grid { grid-template-columns:1fr; }
    .elite-fee-option { grid-template-columns:auto minmax(0,1fr); }
    .elite-fee-option>b { grid-column:2; }
    .elite-registration-submit { flex-direction:column-reverse; }
    .elite-registration-submit>* { justify-content:center; }
    .elite-invoice-line,.elite-invoice-total { align-items:flex-start; }
    .elite-invoice-amount { font-size:1rem; }
}
@media (max-width:767.98px) {
    .elite-container { padding-right:1rem; padding-left:1rem; }
    .elite-profile-card { grid-template-columns:1fr; }
    .elite-profile-gallery img { max-height:400px; }
}

/* Nominee cards: ceremonial poster frame, three-place podium, five-column directory. */
.elite-candidates-page {
    --vote-count-value-color: #251310;
    --vote-count-label-color: #66563b;
    --vote-count-margin: .15rem 0 .7rem;
    --vote-count-width: 100%;
    --vote-count-white-space: nowrap;
    --vote-count-value-line-height: 1;
    padding-top: clamp(1rem,2vw,1.6rem);
    padding-bottom: clamp(2rem,4vw,3.5rem);
}
.elite-candidates-page .elite-container { max-width:1240px; }
.elite-candidates-page .elite-candidate-heading { margin-bottom:.65rem; }
.elite-candidates-page .elite-list-register-wrap { display:flex; justify-content:center; margin:0 0 1.15rem; }
.elite-candidates-page .elite-list-register { min-height:2.65rem; padding:.45rem .9rem; white-space:nowrap; }

.elite-candidates-page .elite-podium {
    box-sizing:border-box;
    position:relative;
    isolation:isolate;
    display:grid;
    width:min(100%,58rem);
    max-width:900px;
    grid-template-columns:minmax(0,.82fr) minmax(0,1.15fr) minmax(0,.82fr);
    align-items:start;
    gap: 60px;
    margin:2.3rem auto 3rem;
    padding:3rem .5rem 0;
}
.elite-candidates-page .elite-podium::before {
    position:absolute;
    z-index:-1;
    inset:8% 2% 0;
    border-radius:50%;
    background:radial-gradient(ellipse at 50% 72%,rgba(216,181,105,.22),transparent 63%),radial-gradient(ellipse at 15% 68%,rgba(232,207,151,.19),transparent 35%),radial-gradient(ellipse at 85% 68%,rgba(232,207,151,.19),transparent 35%);
    content:"";
    filter:blur(12px);
}
    .elite-candidates-page .elite-candidate-card {
        position: relative;
        overflow: hidden;
        border: 1px solid rgb(248 236 211);
        border-radius: 1.15rem;
        background: linear-gradient(155deg,#fffefa 0%,#fff9ec 56%,#f7ebd0 100%);
        box-shadow: 0 .45rem 1.25rem rgba(92,63,22,.12);
        transition: transform .22s ease,box-shadow .22s ease,border-color .22s ease;
    }
.elite-candidates-page .elite-candidate-card:hover {
    box-shadow:0 .8rem 1.65rem rgba(92,63,22,.18);
}
.elite-candidates-page .elite-candidate-card--podium.is-rank-1 { grid-column:2; grid-row:1; }
.elite-candidates-page .elite-candidate-card--podium.is-rank-2 { grid-column:1; grid-row:1; }
.elite-candidates-page .elite-candidate-card--podium.is-rank-3 { grid-column:3; grid-row:1; }
    .elite-candidates-page .elite-candidate-image {
        position: relative;
        display: block;
        overflow: hidden;
        aspect-ratio: 1.12;
        width: 100%;
        padding: 0;
        border: 0;
        border-radius: 8px;
        background: linear-gradient(145deg,#eadbb7,#fff9e8 52%,#d9bd7c);
        box-shadow: var(--bs-box-shadow);
        cursor: pointer;
        font: inherit;
        text-align: initial;
        transition: transform .45s ease;
    }
        .elite-candidates-page .elite-candidate-image img {
            display: block;
            width: 100%;
            height: 100%;
            object-fit: cover;
            border-radius: .65rem;
        }
.elite-candidates-page .elite-candidate-card:hover .elite-candidate-image { transform:scale(1.045); }
.elite-candidates-page .elite-candidate-image .elite-first-place-frame { position:absolute; z-index:2; inset:0; width:100%; height:100%; border-radius:0; object-fit:fill; pointer-events:none; }
.elite-candidates-page .elite-candidate-card--podium.is-first .elite-candidate-image { overflow:visible; }
    .elite-candidates-page .elite-candidate-card--podium.is-first .elite-candidate-image .elite-first-place-frame {
        inset: auto;
        top: -10%;
        width: 170.4%;
        height: auto;
        left: 50%;
        transform: translateX(-50%);
    }
.elite-candidates-page .elite-candidate-image-placeholder { display:grid; place-items:center; width:100%; height:100%; color:#9f8145; font-size:3rem; }
.elite-candidates-page .elite-rank-badge[hidden] { display:none !important; }
.elite-candidates-page .elite-candidate-info { padding:.78rem .58rem .5rem; }
.elite-candidates-page .elite-card-actions { display:flex; align-items:center; gap:.7rem; }
.elite-candidates-page .elite-vote-button,
.elite-candidates-page .elite-share-button { min-height:2.55rem; }
.elite-candidates-page .elite-vote-button { border:1px solid #b4893f; background:linear-gradient(145deg,#caa553,#986d2e 82%); box-shadow:0 3px 8px rgba(97,64,18,.18),inset 0 1px rgba(255,255,255,.3); }
.elite-candidates-page .elite-share-button { position:relative; flex:0 0 2.55rem; width:2.55rem; height:2.55rem; min-height:2.55rem; border-color:#e2d3b2; color:#59421e; background:linear-gradient(#fffdf7,#f7efdd); }
.elite-candidates-page .elite-card-feedback { margin-top:.35rem; }
.elite-candidates-page .elite-candidate-section { position:relative; max-width:1240px; margin:0 auto; padding-top:1.5rem; }
.elite-candidates-page .elite-candidate-grid { --vote-count-margin:.08rem 0 .55rem; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1rem; }
.elite-candidates-page .elite-candidate-grid .elite-candidate-card { padding:12px; }
.elite-candidates-page .elite-candidate-grid .elite-candidate-image { aspect-ratio:1.08; }
.elite-candidates-page .elite-candidate-grid .elite-candidate-info { padding:.68rem .35rem .38rem; }
.elite-candidates-page .elite-candidate-grid .elite-card-actions { flex-direction:row-reverse; gap:.52rem; }
.elite-candidates-page .elite-candidate-grid .elite-share-button { flex-basis:2.25rem; width:2.25rem; height:2.25rem; min-height:2.25rem; }
.elite-candidates-page .elite-candidate-grid .elite-vote-button { min-width:0; min-height:2.25rem; padding:.42rem .5rem; font-size:.84rem; white-space:nowrap; }

@media (max-width:1199.98px) {
    .elite-candidates-page .elite-candidate-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
@media (max-width:991.98px) {
    .elite-candidates-page .elite-candidate-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .elite-candidates-page .elite-container { max-width:960px; }
}
@media (max-width:767.98px) {
    .elite-candidates-page .elite-container { padding-right:1rem; padding-left:1rem; }
    .elite-candidates-page .elite-candidate-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; }
}
@media (max-width:480px) {
    .elite-candidates-page .elite-candidate-grid { grid-template-columns:1fr; max-width:420px; margin:0 auto; }
    .elite-candidates-page .elite-candidate-grid .elite-candidate-image { aspect-ratio:1.15; }
    .elite-candidates-page .elite-candidate-grid .elite-candidate-info { padding:.72rem .55rem .45rem; }
}

/* Fine gold divider between the podium and the remaining nominees. */
.elite-candidates-page .elite-podium .elite-card-feedback { min-height:0; margin:0; }
.elite-candidates-page .elite-candidate-section::before {
    position:absolute;
    top:0;
    left:50%;
    width:min(36rem,82%);
    height:1px;
    background:linear-gradient(90deg,transparent,#c2a25d 24%,#c2a25d 46%,transparent 47%,transparent 53%,#c2a25d 54%,#c2a25d 76%,transparent);
    content:"";
    transform:translateX(-50%);
}
.elite-candidates-page .elite-candidate-section::after {
    position:absolute;
    top:-.72rem;
    left:50%;
    color:#a8843e;
    content:"✦";
    font-size:1rem;
    line-height:1.4;
    transform:translateX(-50%);
}
@media (max-width:767.98px) {
    .elite-candidates-page .elite-candidate-section { padding-top:1.4rem; }
}

/* Top-three cards and their responsive layout. */
.elite-candidates-page .elite-candidate-card--podium,
.elite-candidates-page .elite-candidate-card--podium:hover {
    --vote-count-margin:0 0 .55rem;
    --vote-count-min-height:1.8rem;
    display:grid;
    min-width:0;
    grid-template-columns:minmax(0,1fr);
    grid-template-rows:auto auto;
    align-content:start;
    padding:0;
    overflow:visible;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}
.elite-candidates-page .elite-candidate-card--podium::before { display:none; }
.elite-candidates-page .elite-candidate-card--podium.is-first,
.elite-candidates-page .elite-candidate-card--podium.is-first:hover { transform:translateY(-.8rem); }
.elite-candidates-page .elite-candidate-card--podium.is-rank-2,
.elite-candidates-page .elite-candidate-card--podium.is-rank-3,
.elite-candidates-page .elite-candidate-card--podium.is-rank-2:hover,
.elite-candidates-page .elite-candidate-card--podium.is-rank-3:hover { transform:translateY(2rem) scale(.96); }
    .elite-candidates-page .elite-candidate-card--podium .elite-candidate-image {
        z-index: 1;
        grid-row: 1;
        width: 100%;
        max-width: 100%;
        align-self: end;
        border-radius: .65rem;
        background: transparent;
        box-shadow: 0 .35rem .85rem rgba(82,57,20,.18);
        padding: 4px;
    }
.elite-candidates-page .elite-candidate-card--podium.is-first .elite-candidate-image {
    width:82%;
    justify-self:center;
    align-self:start;
}
.elite-candidates-page .elite-candidate-card--podium.is-first .elite-candidate-info { padding:20% .25rem 0; }
.elite-candidates-page .elite-candidate-card--podium .elite-candidate-info {
    z-index:2;
    grid-row:2;
    min-width:0;
    padding:.35rem .25rem 0;
    text-align:center;
}
.elite-candidates-page .elite-candidate-card--podium .elite-card-actions { justify-content:center; gap:.9rem; }
.elite-candidates-page .elite-candidate-card--podium .elite-vote-button { flex:0 1 9.5rem; min-height:2.45rem; }
.elite-candidates-page .elite-candidate-card--podium .elite-share-button { flex:0 0 2.45rem; width:2.45rem; height:2.45rem; min-height:2.45rem; }
.elite-candidates-page .elite-candidate-card--podium .elite-share-button::before { left:-.52rem; right:auto; }
.elite-candidates-page .elite-rank-badge {
    position:absolute;
    z-index:3;
    top:-.85rem;
    left:-.85rem;
    width:4rem;
    height:4rem;
    object-fit:contain;
    transform:none;
}
.elite-candidates-page .elite-candidate-card--podium.is-first .elite-rank-badge {
    width:4.5rem;
    height:4.5rem;
    left: 1rem;
}

@media (max-width:767.98px) {
    .elite-candidates-page .elite-podium {
        box-sizing:border-box;
        width:calc(100vw - 2rem) !important;
        max-width:22rem !important;
        grid-template-columns:minmax(0,1fr);
        gap:2rem;
        margin:1.5rem auto 2rem;
        padding:1.5rem 0 0;
    }
    .elite-candidates-page .elite-candidate-card--podium {
        box-sizing:border-box;
        width:100% !important;
        max-width:100% !important;
        grid-template-columns:minmax(0,1fr);
        grid-template-rows:auto auto;
        transform:none !important;
    }
    .elite-candidates-page .elite-candidate-card--podium.is-rank-1,
    .elite-candidates-page .elite-candidate-card--podium.is-rank-2,
    .elite-candidates-page .elite-candidate-card--podium.is-rank-3 { grid-column:1 !important; grid-row:auto !important; }
    .elite-candidates-page .elite-candidate-card--podium .elite-candidate-image,
    .elite-candidates-page .elite-candidate-card--podium.is-first .elite-candidate-image {
        grid-column:1;
        grid-row:1;
        box-sizing:border-box;
        width:100% !important;
        max-width:100% !important;
        justify-self:center;
        align-self:start;
    }
    .elite-candidates-page .elite-candidate-card--podium.is-first .elite-candidate-image {
        width:80% !important;
        max-width:80% !important;
    }
    .elite-candidates-page .elite-candidate-card--podium .elite-candidate-info { grid-column:1; grid-row:2; padding:.3rem .25rem 0; }
    .elite-candidates-page .elite-candidate-card--podium.is-first .elite-candidate-info { }
    .elite-candidates-page .elite-rank-badge { }
    .elite-candidates-page .elite-candidate-card--podium.is-first .elite-rank-badge {
        top:-1rem;
        left:18%;
    }
    .elite-candidates-page .elite-candidate-card--podium .elite-card-actions { justify-content:center; }
}

.elite-nominee-dialog {
    position:fixed;
    top:50%;
    left:50%;
    right:auto;
    bottom:auto;
    margin:0;
    transform:translate(-50%, -50%);
    box-sizing:border-box;
    width:min(94vw, 1000px);
    max-width:1000px;
    max-height:90vh;
    padding:0;
    overflow:hidden;
    border:1px solid #dfcda5;
    border-radius:22px;
    color:#4b3517;
    background:transparent;
    box-shadow:0 24px 80px rgba(48,31,8,.3);
}
.elite-nominee-dialog::backdrop { background:rgba(34,25,13,.62); backdrop-filter:blur(3px); }
.elite-nominee-dialog__content { position:relative; max-height:90vh; overflow:auto; border-radius:inherit; background:#fffdf8; }
.elite-nominee-dialog__close { position:absolute; z-index:4; top:.8rem; right:.8rem; }
.elite-nominee-dialog__close:focus-visible { outline:2px solid #b78a36; outline-offset:3px; box-shadow:none; }
.elite-nominee-dialog .elite-profile-card { border:0; border-radius:inherit; box-shadow:none; }
.elite-nominee-dialog .elite-profile-gallery { display:flex; min-width:0; flex-direction:column; gap:.7rem; }
.elite-nominee-dialog .elite-profile-gallery__main { display:grid; width:100%; max-height:min(55vh,560px); min-height:0; place-items:center; overflow:hidden; border-radius:10px; }
.elite-nominee-dialog .elite-profile-gallery__main img { display:block; width:auto; height:auto; max-width:100%; max-height:min(55vh,560px); object-fit:contain; border-radius:inherit; }
.elite-nominee-dialog .elite-profile-gallery__thumbnails { display:flex; justify-content:center; gap:.55rem; }
.elite-nominee-dialog .elite-profile-gallery__thumbnail { width:64px; height:64px; padding:3px; overflow:hidden; border:2px solid transparent; border-radius:11px; background:#fffdf8; box-shadow:0 2px 7px rgba(82,60,27,.12); cursor:pointer; }
.elite-nominee-dialog .elite-profile-gallery__thumbnail[aria-pressed="true"] { border-color:#b78a36; box-shadow:0 0 0 2px rgba(183,138,54,.16); }
.elite-nominee-dialog .elite-profile-gallery__thumbnail img { display:block; width:100%; height:100%; max-height:none; object-fit:cover; border-radius:7px; }
.elite-nominee-dialog .elite-candidate-image-placeholder { display:grid; width:100%; min-height:260px; place-items:center; border-radius:14px; color:#9f8145; background:linear-gradient(145deg,#fffaf0,#ead9b5); font-size:3rem; }
.elite-profile-social { display:grid; gap:.45rem; margin:.9rem 0 0; }
.elite-profile-social[hidden] { display:none !important; }
.elite-profile-social__label { color:#9a773a; font-size:.72rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.elite-profile-social__links { display:flex; flex-wrap:wrap; gap:.45rem; }
.elite-profile-link { display:inline-flex; align-items:center; gap:.4rem; min-height:2rem; padding:.35rem .65rem; border:1px solid #e1d1ad; border-radius:999px; color:#684d22; background:#fffaf0; font-size:.82rem; font-weight:600; text-decoration:none; transition:background .15s ease,border-color .15s ease; }
.elite-profile-link:hover,.elite-profile-link:focus-visible { border-color:#b78a36; color:#684d22; background:#f7efd9; }
.elite-profile-link[hidden] { display:none !important; }
.elite-nominee-modal-program { margin:-.45rem 0 .65rem; color:#9a773a; font-size:.85rem; font-weight:700; }
.elite-nominee-dialog .elite-profile-content h1 { margin-bottom:.75rem; padding-right:1.5rem; font-size:clamp(1.4rem,2.8vw,2rem); line-height:1.2; overflow-wrap:anywhere; }
.elite-nominee-dialog .elite-vote-count--detail { display:flex; align-items:baseline; gap:.25rem; }

@media (max-width:767.98px) {
    .elite-nominee-dialog { width:calc(100vw - 1rem); max-width:calc(100vw - 1rem); max-height:calc(100vh - 1rem); border-radius:16px; }
    .elite-nominee-dialog__content { width:100%; min-width:0; max-height:calc(100vh - 1rem); }
    .elite-nominee-dialog .elite-profile-card { width:100%; min-width:0; grid-template-columns:minmax(0,1fr); }
    .elite-nominee-dialog .elite-profile-gallery { min-width:0; gap:.55rem; padding:.65rem; }
    .elite-nominee-dialog .elite-profile-gallery__main { max-height:min(38vh,360px); }
    .elite-nominee-dialog .elite-profile-gallery__main img { max-height:min(38vh,360px); }
    .elite-nominee-dialog .elite-profile-gallery__thumbnail { width:56px; height:56px; }
    .elite-nominee-dialog .elite-profile-content { min-width:0; padding:1rem; }
}
