/* ============================================================
   KUDALOTTO — Minimalist Premium Theme
   Palette: Off-white · Near-black · Muted gold
   ============================================================ */

/* ── Variables ── */
:root {
    --k-bg:       #f5f3f0;
    --k-card:     #ffffff;
    --k-border:   #e0dbd4;
    --k-text:     #1a1a1a;
    --k-text-2:   #65605a;
    --k-text-3:   #aba49b;
    --k-gold:     #a87c2a;
    --k-gold-lt:  #f4ead0;
    --k-black:    #0d0d0d;
    --k-radius:   3px;
    --k-max-w:    1100px;
    --k-hh:       60px;   /* header height */
    --k-stripe:   3px;    /* gold stripe height */
    --k-font:     'Space Grotesk', -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
    --k-mono:     'Space Mono', 'Courier New', 'Monaco', monospace;
}

* { box-sizing: border-box; margin: 0; padding: 0; }
body {
    background: var(--k-bg);
    color: var(--k-text);
    font-family: var(--k-font);
    -webkit-font-smoothing: antialiased;
    line-height: 1.4;
    display: flex; flex-direction: column; min-height: 100vh;
}
a { text-decoration: none; color: inherit; }
img { display: block; }
#kroot { flex: 1; }

/* ── Gold stripe at very top ── */
.k-stripe {
    height: var(--k-stripe);
    background: linear-gradient(90deg, #7a5a1a 0%, #c9971e 40%, #e8c04e 50%, #c9971e 60%, #7a5a1a 100%);
    position: fixed; top: 0; left: 0; right: 0; z-index: 102;
}

/* ── Header ── */
.k-header {
    position: fixed; top: var(--k-stripe); left: 0; right: 0; z-index: 100;
    height: var(--k-hh); background: #fff;
    border-bottom: 1px solid var(--k-border);
    box-shadow: 0 1px 6px rgba(0,0,0,.05);
}
.k-header-inner {
    max-width: var(--k-max-w); margin: 0 auto; height: 100%;
    padding: 0 24px; display: flex; align-items: center; gap: 20px;
}

/* Brand */
.k-brand {
    font-size: 18px; font-weight: 900; color: var(--k-black);
    letter-spacing: -.5px; flex-shrink: 0; margin-right: 8px;
}
.k-brand span { color: var(--k-gold); }
.k-brand-logo { height: 34px; max-width: 160px; object-fit: contain; }

/* Desktop nav */
.k-nav { display: flex; align-items: center; flex: 1; gap: 0; }
.k-nav a {
    font-size: 11.5px; font-weight: 500; color: var(--k-text-2);
    padding: 6px 11px; border-radius: var(--k-radius); transition: all .12s;
}
.k-nav a:hover { color: var(--k-black); background: var(--k-bg); }
.k-nav a.on { color: var(--k-black); font-weight: 700; background: var(--k-bg); }

/* Clock */
.k-right { display: flex; align-items: center; gap: 10px; margin-left: auto; flex-shrink: 0; }
.k-clock-wrap { display: flex; align-items: center; gap: 6px; }
.k-clock-label { font-size: 8px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: var(--k-text-3); }
.k-clock-digits { display: flex; align-items: center; gap: 1px; font-size: 12px; font-weight: 600; color: var(--k-text-2); font-variant-numeric: tabular-nums; }
.k-clock-sep { color: var(--k-text-3); opacity: .6; padding: 0 1px; }

/* Mobile toggle */
.k-toggle {
    display: none; background: none;
    border: 1px solid var(--k-border); color: var(--k-text-2);
    padding: 5px 9px; border-radius: var(--k-radius); cursor: pointer; font-size: 14px;
}

/* Mobile nav */
.k-mob-nav {
    display: none; position: fixed; top: calc(var(--k-stripe) + var(--k-hh)); left: 0; right: 0; z-index: 99;
    background: #fff; border-bottom: 1px solid var(--k-border);
    box-shadow: 0 6px 20px rgba(0,0,0,.08); padding: 6px 24px 12px;
}
.k-mob-nav.open { display: block; }
.k-mob-nav a {
    display: block; padding: 10px 4px; font-size: 12px; font-weight: 500;
    color: var(--k-text-2); border-bottom: 1px solid #f0ece6;
}
.k-mob-nav a:last-child { border-bottom: none; }
.k-mob-nav a.on { color: var(--k-black); font-weight: 700; }

/* ── Hero (Homepage) ── */
.k-hero {
    margin-top: calc(var(--k-stripe) + var(--k-hh));
    background: var(--k-bg);
    border-bottom: 1px solid var(--k-border);
    padding: 0 24px;
}
.k-hero-wrap {
    max-width: var(--k-max-w); margin: 0 auto;
    padding: 40px 0 52px;
}
.k-hero-banner { margin-bottom: 32px; }
.k-hero-banner-img {
    width: 100%; border-radius: var(--k-radius);
    max-height: 210px; object-fit: cover;
    border: 1px solid var(--k-border);
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
}
.k-hero-grid {
    display: grid; grid-template-columns: 1fr 1.55fr; gap: 52px;
    align-items: start;
}

/* Hero identity */
.k-hi-eyebrow {
    font-size: 8.5px; font-weight: 700; letter-spacing: 2.5px;
    text-transform: uppercase; color: var(--k-gold); margin-bottom: 16px;
    display: flex; align-items: center; gap: 8px;
}
.k-hi-eyebrow::before { content: ''; width: 20px; height: 1px; background: var(--k-gold); flex-shrink: 0; }
.k-hi-logo { height: 56px; max-width: 220px; object-fit: contain; margin-bottom: 10px; }
.k-hi-title {
    font-size: 46px; font-weight: 900; color: var(--k-black);
    letter-spacing: -2px; line-height: .92; margin-bottom: 10px;
}
.k-hi-title span { color: var(--k-gold); }
.k-hi-sub {
    font-size: 12.5px; color: var(--k-text-2); font-weight: 400;
    line-height: 1.5; margin-bottom: 22px;
}
.k-hi-draw {
    display: inline-flex; align-items: center; gap: 7px;
    font-size: 10.5px; font-weight: 600; color: var(--k-text-3);
    border: 1px solid var(--k-border); padding: 6px 12px;
    border-radius: var(--k-radius); margin-bottom: 22px;
}
.k-hi-draw i { font-size: 9px; color: var(--k-gold); }
.k-hi-cta {
    display: inline-flex; align-items: center; gap: 8px;
    background: var(--k-black); color: #fff;
    font-size: 10px; font-weight: 700; letter-spacing: 1px;
    text-transform: uppercase; padding: 12px 24px;
    border-radius: var(--k-radius); transition: background .15s;
}
.k-hi-cta:hover { background: var(--k-gold); }
.k-hi-cta i { font-size: 9px; }

/* ── Featured Card ── */
.kcard-featured {
    background: var(--k-card);
    border: 1px solid var(--k-border);
    border-radius: var(--k-radius);
    overflow: hidden;
    box-shadow: 0 2px 16px rgba(0,0,0,.06);
}
.kcard-head {
    display: flex; justify-content: space-between; align-items: center;
    padding: 12px 20px; border-bottom: 1px solid var(--k-border);
    background: #faf8f5;
}
.kcard-draw-no {
    font-size: 9.5px; font-weight: 700; letter-spacing: 1.5px;
    color: var(--k-text-3); text-transform: uppercase;
}
.kcard-date { font-size: 11px; font-weight: 600; color: var(--k-text-2); }

/* 1st Prize — centerpiece */
.kcard-p1 {
    padding: 34px 20px 26px; text-align: center;
    border-bottom: 1px solid var(--k-border);
}
.kcard-p1-label {
    font-size: 8px; font-weight: 700; letter-spacing: 2.5px;
    color: var(--k-text-3); text-transform: uppercase; margin-bottom: 12px;
}
.kcard-p1-num {
    font-size: 72px; font-weight: 700; color: var(--k-black);
    letter-spacing: 16px; font-variant-numeric: tabular-nums;
    line-height: 1; font-family: var(--k-mono);
    padding-left: 16px;
}
.kcard-p1-bar { width: 36px; height: 2.5px; background: var(--k-gold); margin: 16px auto 0; }

/* 2nd & 3rd prizes */
.kcard-p23 {
    display: grid; grid-template-columns: 1fr 1fr;
    border-bottom: 1px solid var(--k-border);
}
.kcard-prize-col { padding: 18px 20px; }
.kcard-prize-col + .kcard-prize-col { border-left: 1px solid var(--k-border); }
.kcard-prize-label {
    font-size: 7.5px; font-weight: 700; letter-spacing: 2px;
    color: var(--k-text-3); text-transform: uppercase; margin-bottom: 6px;
}
.kcard-prize-num {
    font-size: 30px; font-weight: 700; color: var(--k-text);
    letter-spacing: 6px; font-variant-numeric: tabular-nums;
    font-family: var(--k-mono);
    padding-left: 6px;
}

/* Starter & Consolation */
.kcard-sc { display: grid; grid-template-columns: 1fr 1fr; }
.kcard-sc-col { padding: 14px 20px; }
.kcard-sc-col + .kcard-sc-col { border-left: 1px solid var(--k-border); }
.kcard-sc-label {
    font-size: 7.5px; font-weight: 700; letter-spacing: 1.5px;
    color: var(--k-text-3); text-transform: uppercase; margin-bottom: 8px;
}
.kcard-sc-nums { display: flex; flex-wrap: wrap; gap: 4px 10px; }
.kcard-sc-n {
    font-size: 12px; font-weight: 700; color: var(--k-text-2);
    font-variant-numeric: tabular-nums; letter-spacing: .5px;
}

/* ── Result Card (Grid) ── */
.kresult-card {
    background: var(--k-card);
    border: 1px solid var(--k-border);
    border-left: 3px solid var(--k-gold);
    border-radius: var(--k-radius);
    overflow: hidden;
}
.kresult-head {
    display: flex; justify-content: space-between; align-items: center;
    padding: 8px 12px; border-bottom: 1px solid var(--k-border);
    background: #1a1714;
}
.kresult-draw { font-size: 9px; font-weight: 700; letter-spacing: 1px; color: var(--k-gold); text-transform: uppercase; }
.kresult-date { font-size: 10px; font-weight: 600; color: rgba(255,255,255,0.45); }

.kresult-p1 {
    padding: 20px 14px 14px; text-align: center;
    border-bottom: 1px solid var(--k-border);
    background: #faf6ec;
}
.kresult-p1-label {
    font-size: 7.5px; font-weight: 700; letter-spacing: 2px;
    color: var(--k-gold); text-transform: uppercase; margin-bottom: 8px;
}
/* 1st prize digit boxes */
.krc-digits { display: flex; gap: 5px; justify-content: center; margin: 4px 0 6px; }
.krc-d {
    width: 36px; height: 44px;
    display: flex; align-items: center; justify-content: center;
    font-size: 22px; font-weight: 700;
    font-family: var(--k-mono);
    background: #fff;
    border: 1.5px solid rgba(168,124,42,0.3);
    border-radius: 3px;
    color: var(--k-black);
    box-shadow: 0 1px 4px rgba(0,0,0,.07);
}
.kresult-p1-bar { width: 22px; height: 2px; background: var(--k-gold); margin: 8px auto 0; }

.kresult-p23 {
    display: grid; grid-template-columns: 1fr 1fr;
    border-bottom: 1px solid var(--k-border);
}
.kresult-p-col { padding: 10px 12px; }
.kresult-p-col + .kresult-p-col { border-left: 1px solid var(--k-border); }
.kresult-pl { font-size: 7px; font-weight: 700; letter-spacing: 1px; color: var(--k-text-3); text-transform: uppercase; margin-bottom: 4px; }
.kresult-pn {
    font-size: 20px; font-weight: 700; color: var(--k-text);
    letter-spacing: 4px; font-variant-numeric: tabular-nums;
    font-family: var(--k-mono); padding-left: 4px;
}

.kresult-sc { display: grid; grid-template-columns: 1fr 1fr; }
.kresult-sc-col { padding: 9px 12px; }
.kresult-sc-col + .kresult-sc-col { border-left: 1px solid var(--k-border); }
.kresult-sc-h { font-size: 7px; font-weight: 700; letter-spacing: 1px; color: var(--k-text-3); text-transform: uppercase; margin-bottom: 5px; }
.kresult-sc-nums { display: flex; flex-wrap: wrap; gap: 3px 8px; }
.kresult-sc-n { font-size: 10px; font-weight: 700; color: var(--k-text-2); font-variant-numeric: tabular-nums; }

/* ── Result Page Header ── */
.k-result-pg {
    margin-top: calc(var(--k-stripe) + var(--k-hh));
    background: #1a1714; border-bottom: none;
    padding: 40px 24px 30px;
}
.k-result-pg-inner { max-width: var(--k-max-w); margin: 0 auto; }
.k-result-pg-eyebrow {
    font-size: 8px; font-weight: 700; letter-spacing: 2.5px;
    text-transform: uppercase; color: var(--k-gold); margin-bottom: 8px;
    display: flex; align-items: center; gap: 8px;
}
.k-result-pg-eyebrow::before { content: ''; width: 16px; height: 1px; background: var(--k-gold); flex-shrink: 0; }
.k-result-pg-title { font-size: 30px; font-weight: 900; color: #fff; letter-spacing: -1px; margin-bottom: 6px; }
.k-result-pg-title span { color: var(--k-gold); }
.k-result-pg-logo-wrap { display: flex; align-items: center; gap: 12px; margin-bottom: 6px; }
.k-result-pg-logo { height: 38px; max-width: 160px; object-fit: contain; }
.k-result-pg-logo-wrap span { font-size: 28px; font-weight: 900; color: #fff; letter-spacing: -1px; }
.k-result-pg-meta {
    font-size: 11px; color: rgba(255,255,255,0.38); font-weight: 600;
    display: flex; align-items: center; gap: 5px;
}
.k-result-pg-meta i { font-size: 9px; color: var(--k-gold); }

/* ── Filter Bar ── */
.k-filter-bar {
    background: #161310;
    border-top: 1px solid rgba(168,124,42,0.2);
    border-bottom: 2px solid rgba(168,124,42,0.15);
    padding: 0 24px;
    position: sticky; top: calc(var(--k-stripe) + var(--k-hh)); z-index: 50;
}
.k-filter-inner {
    max-width: var(--k-max-w); margin: 0 auto;
    display: flex; align-items: center; gap: 0;
    overflow-x: auto; padding: 0; scrollbar-width: none;
}
.k-filter-inner::-webkit-scrollbar { display: none; }
.k-filter-label {
    font-size: 8px; font-weight: 700; letter-spacing: 1.5px;
    text-transform: uppercase; color: rgba(255,255,255,0.18);
    margin-right: 10px; white-space: nowrap; padding: 12px 0;
    flex-shrink: 0;
}
.k-fb {
    font-size: 9px; font-weight: 700; letter-spacing: 1.5px;
    text-transform: uppercase; padding: 13px 12px;
    border-radius: 0; color: rgba(255,255,255,0.38);
    white-space: nowrap; border: none;
    border-bottom: 2px solid transparent; transition: color .12s, border-color .12s;
}
.k-fb:hover { color: rgba(255,255,255,0.75); border-bottom-color: rgba(168,124,42,0.35); }
.k-fb.on { color: var(--k-gold); border-bottom-color: var(--k-gold); font-weight: 700; }

/* ── Results Section ── */
.k-results-section { background: var(--k-bg); padding: 26px 24px 52px; }
.k-results-inner { max-width: var(--k-max-w); margin: 0 auto; }
.k-results-head {
    display: flex; justify-content: space-between; align-items: baseline;
    margin-bottom: 18px;
}
.k-results-head h3 { font-size: 13px; font-weight: 700; color: var(--k-black); }
.k-results-head small { font-size: 11px; color: var(--k-text-3); }
.k-results-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(238px, 1fr));
    gap: 14px;
}

/* ── No results ── */
.k-no-results {
    text-align: center; padding: 64px 20px; color: var(--k-text-3);
    display: flex; flex-direction: column; align-items: center; gap: 12px;
}
.k-no-results i { font-size: 26px; }
.k-no-results span { font-size: 13px; font-weight: 500; }

/* ── Footer ── */
.k-footer {
    background: #fff; border-top: 1px solid var(--k-border);
    padding: 36px 24px 0;
}
.k-footer-inner { max-width: var(--k-max-w); margin: 0 auto; }
.k-ft-top {
    display: flex; justify-content: space-between; align-items: start;
    margin-bottom: 28px; flex-wrap: wrap; gap: 20px;
}
.k-ft-brand { font-size: 17px; font-weight: 900; color: var(--k-black); letter-spacing: -.5px; }
.k-ft-brand span { color: var(--k-gold); }
.k-ft-logo { height: 30px; max-width: 130px; object-fit: contain; }
.k-ft-tagline { font-size: 11px; color: var(--k-text-3); margin-top: 5px; }
.k-ft-links { display: flex; flex-wrap: wrap; gap: 6px 20px; }
.k-ft-links a { font-size: 11px; color: var(--k-text-2); font-weight: 500; }
.k-ft-links a:hover { color: var(--k-black); }
.k-ft-bottom {
    display: flex; justify-content: space-between; align-items: center;
    padding: 14px 0; border-top: 1px solid var(--k-border);
    flex-wrap: wrap; gap: 8px;
}
.k-ft-copy { font-size: 10px; color: var(--k-text-3); }
.k-ft-age {
    font-size: 10px; font-weight: 700; color: var(--k-text-2);
    border: 1px solid var(--k-border); padding: 4px 10px;
    border-radius: var(--k-radius); display: flex; align-items: center; gap: 5px;
}

/* ── Page Cards (About / Partner / Contact) ── */
.k-section-header {
    margin-top: calc(var(--k-stripe) + var(--k-hh));
    background: #1a1714;
    padding: 36px 24px;
    margin-bottom: 28px;
}
.k-section-title {
    display: block; max-width: var(--k-max-w); margin: 0 auto;
    font-size: 26px; font-weight: 900; color: #fff; letter-spacing: -0.5px;
}
.k-page-content { padding: 0 24px; max-width: var(--k-max-w); margin: 0 auto 52px; }
.k-page-card {
    background: var(--k-card); border-radius: var(--k-radius);
    border: 1px solid var(--k-border); padding: 32px;
    line-height: 1.8; font-size: 14px; color: var(--k-text);
}
.k-page-card h2 { color: var(--k-black); margin-bottom: 14px; font-size: 20px; font-weight: 800; }
.k-page-card h3 { color: var(--k-text); margin-bottom: 8px; font-size: 15px; font-weight: 700; }
.k-page-card p  { margin-bottom: 8px; color: var(--k-text-2); }
.k-page-card a  { color: var(--k-gold); text-decoration: underline; }
.k-page-card img { max-width: 100%; height: auto; border-radius: var(--k-radius); }

/* ── Error Page ── */
.k-err-page {
    margin-top: calc(var(--k-stripe) + var(--k-hh));
    min-height: 60vh; display: flex; flex-direction: column;
    align-items: center; justify-content: center;
    text-align: center; padding: 40px 20px;
}
.k-err-code { font-size: 80px; font-weight: 900; color: var(--k-border); letter-spacing: -4px; line-height: 1; }
.k-err-msg { font-size: 15px; color: var(--k-text-2); margin: 10px 0 24px; }
.k-err-btn {
    display: inline-flex; align-items: center; gap: 8px;
    background: var(--k-black); color: #fff; font-size: 10px;
    font-weight: 700; letter-spacing: 1px; text-transform: uppercase;
    padding: 11px 22px; border-radius: var(--k-radius);
}
.k-err-btn:hover { background: var(--k-gold); }

/* ── Scrollbar ── */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: var(--k-bg); }
::-webkit-scrollbar-thumb { background: var(--k-border); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: var(--k-text-3); }

/* ── Responsive 768px ── */
@media (max-width: 768px) {
    .k-nav { display: none; }
    .k-toggle { display: block; }
    .k-hero { padding: 0 16px; }
    .k-hero-wrap { padding: 28px 0 36px; }
    .k-hero-grid { grid-template-columns: 1fr; gap: 24px; }
    .k-hero-banner-img { max-height: 150px; }
    .k-result-pg { padding: 28px 16px 20px; }
    .k-results-section { padding: 18px 16px 36px; }
    .k-results-grid { grid-template-columns: 1fr; }
    .k-filter-bar { padding: 0 16px; }
    .k-footer { padding: 28px 16px 0; }
    .k-ft-top { flex-direction: column; gap: 16px; }
    .k-section-header { padding: 28px 16px; }
    .k-page-content { padding: 0 16px; }
    .k-showcase-bar { padding: 9px 16px; }
    .k-showcase-stage { padding: 40px 16px 34px; }
}

/* ── Responsive 480px ── */
@media (max-width: 480px) {
    .k-hi-title { font-size: 34px; }
    .kcard-p1-num { font-size: 52px; letter-spacing: 10px; padding-left: 10px; }
    .kcard-prize-num { font-size: 22px; letter-spacing: 4px; }
    .k-results-grid { grid-template-columns: 1fr 1fr; }
    .kcard-sc { grid-template-columns: 1fr; }
    .kcard-sc-col + .kcard-sc-col { border-left: none; border-top: 1px solid var(--k-border); }
    /* Showcase responsive */
    .k-prize-1st { font-size: 56px; letter-spacing: 10px; padding-left: 10px; }
    .k-prize-item-num { font-size: 28px; letter-spacing: 5px; }
    .k-prize-sc { flex-direction: column; gap: 20px; align-items: center; }
    .k-prize-sc-nums { justify-content: center; }
    .k-showcase-bar { flex-direction: column; gap: 3px; text-align: center; }
    .k-section-title { font-size: 20px; }
    /* Digit boxes responsive */
    .k-prize-digit { width: 54px; height: 66px; font-size: 34px; gap: 8px; }
    .k-prize-digits { gap: 8px; }
    .krc-d { width: 30px; height: 38px; font-size: 18px; }
}

/* ── Homepage Showcase Layout ── */
/* Full-width centered prize showcase — completely different from 2-col hero */

@keyframes kPulse { 0%,100% { opacity:1; } 50% { opacity:.25; } }

.k-showcase {
    margin-top: calc(var(--k-stripe) + var(--k-hh));
    background: var(--k-bg);
    border-bottom: 1px solid var(--k-border);
}

/* Eyebrow bar */
.k-showcase-bar {
    background: #1a1714;
    border-bottom: 1px solid #2e2924;
    padding: 9px 24px;
    display: flex; justify-content: space-between; align-items: center;
    font-size: 9.5px; font-weight: 700; letter-spacing: 1px;
    text-transform: uppercase; color: rgba(255,255,255,0.35);
    max-width: 100%;
}
.k-showcase-bar-left {
    display: flex; align-items: center; gap: 7px;
    color: var(--k-gold);
}
.k-showcase-bar-left i { font-size: 6px; animation: kPulse 1.8s ease-in-out infinite; }

/* Dark stage — 1st prize hero */
.k-showcase-stage {
    background: #1a1714;
    text-align: center;
    padding: 52px 24px 44px;
}
.k-showcase-stage .k-prize-eyebrow {
    color: rgba(168,124,42,0.7);
}
.k-showcase-stage .k-prize-eyebrow::before,
.k-showcase-stage .k-prize-eyebrow::after { background: rgba(168,124,42,0.25); }
.k-showcase-stage .k-prize-1st { color: var(--k-gold); }
.k-showcase-stage .k-prize-divider { background: rgba(168,124,42,0.3); margin-bottom: 0; }

/* Light section — 2nd/3rd/SC/CTA */
.k-prize-hero {
    max-width: 680px; margin: 0 auto;
    padding: 36px 24px 36px;
    text-align: center;
}
.k-prize-eyebrow {
    font-size: 8px; font-weight: 700; letter-spacing: 3px;
    text-transform: uppercase; color: var(--k-gold);
    margin-bottom: 14px;
    display: flex; align-items: center; justify-content: center; gap: 8px;
}
.k-prize-eyebrow::before,
.k-prize-eyebrow::after { content: ''; flex: 1; max-width: 40px; height: 1px; background: var(--k-gold); }

.k-prize-label {
    font-size: 8px; font-weight: 700; letter-spacing: 3px;
    text-transform: uppercase; color: var(--k-text-3); margin-bottom: 16px;
}

/* Homepage hero digit boxes */
.k-prize-digits { display: flex; gap: 12px; justify-content: center; }
.k-prize-digit {
    width: 72px; height: 86px;
    display: flex; align-items: center; justify-content: center;
    font-size: 46px; font-weight: 700;
    font-family: var(--k-mono);
    background: rgba(255,255,255,0.06);
    border: 1.5px solid rgba(168,124,42,0.4);
    border-radius: 4px;
    color: var(--k-gold);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.04), 0 2px 12px rgba(0,0,0,.3);
}

/* THE hero number (fallback / kept for compat) */
.k-prize-1st {
    font-size: 96px; font-weight: 700; color: var(--k-black);
    letter-spacing: 22px; font-variant-numeric: tabular-nums;
    font-family: var(--k-mono);
    line-height: 1; padding-left: 22px;
    display: block;
}
.k-prize-divider {
    width: 44px; height: 3px; background: var(--k-gold);
    margin: 22px auto;
}

/* 2nd & 3rd row */
.k-prize-row {
    display: flex; justify-content: center; gap: 52px; margin-bottom: 32px;
}
.k-prize-item { text-align: center; }
.k-prize-item-label {
    font-size: 7.5px; font-weight: 700; letter-spacing: 2px;
    text-transform: uppercase; color: var(--k-text-3); margin-bottom: 8px;
}
.k-prize-item-num {
    font-size: 34px; font-weight: 700; color: var(--k-text);
    letter-spacing: 8px; font-variant-numeric: tabular-nums;
    font-family: var(--k-mono);
    padding-left: 8px;
}

/* Starter & Consolation */
.k-prize-sc {
    display: flex; justify-content: center; gap: 44px;
    padding: 22px 0 4px; border-top: 1px solid var(--k-border);
}
.k-prize-sc-item { text-align: center; }
.k-prize-sc-label {
    font-size: 7.5px; font-weight: 700; letter-spacing: 1.5px;
    text-transform: uppercase; color: var(--k-text-3); margin-bottom: 8px;
}
.k-prize-sc-nums { display: flex; flex-wrap: wrap; gap: 4px 10px; justify-content: center; max-width: 260px; }
.k-prize-sc-n {
    font-size: 12px; font-weight: 700; color: var(--k-text-2);
    font-variant-numeric: tabular-nums; letter-spacing: .5px;
}

/* CTA row */
.k-cta-row { padding: 24px 24px 32px; text-align: center; }
.k-cta-btn {
    display: inline-flex; align-items: center; gap: 8px;
    background: var(--k-black); color: #fff;
    font-size: 10px; font-weight: 700; letter-spacing: 1px;
    text-transform: uppercase; padding: 12px 28px;
    border-radius: var(--k-radius); transition: background .15s;
}
.k-cta-btn:hover { background: var(--k-gold); }

/* ── Background image (set from admin panel) ── */
body.has-bg {
    background-size: cover;
    background-attachment: fixed;
    background-position: center center;
    background-repeat: no-repeat;
}
body.has-bg .k-showcase          { background: rgba(245,243,240,0.86); }
body.has-bg .k-prize-hero        { background: rgba(245,243,240,0.9); border-radius: var(--k-radius); }
body.has-bg .k-results-section   { background: rgba(245,243,240,0.88); }
body.has-bg .k-page-content      { background: transparent; }
body.has-bg .k-footer            { background: rgba(255,255,255,0.94); }

/* Banner strip (below showcase) */
.k-banner-strip {
    background: var(--k-bg); padding: 20px 24px;
    border-bottom: 1px solid var(--k-border);
}
.k-banner-strip-inner { max-width: var(--k-max-w); margin: 0 auto; }
.k-banner-strip-img {
    width: 100%; border-radius: var(--k-radius);
    max-height: 200px; object-fit: cover;
    border: 1px solid var(--k-border);
}
