/* KECH visual refresh v2.0.1 — PRESENTATION ONLY.
 * This file must not modify post types, options, queries, URLs or saved content.
 * All overrides target existing public markup and remain safe when sections are disabled.
 */
:root{
  --kech-ink:#08080a;
  --kech-surface:#111115;
  --kech-surface-raised:#18181d;
  --kech-cream:#f7f2e7;
  --kech-gold:#f6c546;
  --kech-gold-deep:#b88119;
  --kech-red:#ee2830;
  --kech-text:#f9f6f0;
  --kech-dim:#b8b4af;
  --kech-hairline:rgba(255,255,255,.11);
  --kech-glow:0 20px 64px rgba(0,0,0,.36);
  --kech-ease:cubic-bezier(.2,.75,.22,1);
  --max:1280px;
}
html {scroll-padding-top:94px}
body{background:#08080a;color:var(--kech-text);letter-spacing:.005em}
.key-shell{width:min(calc(100% - 56px),var(--max))}
.key-section{padding-block:clamp(82px,9vw,132px);isolation:isolate}
.key-title{font-size:clamp(2.5rem,5.8vw,5.6rem);letter-spacing:-.058em;line-height:.91;text-wrap:balance}
.key-kicker{display:inline-flex;align-items:center;gap:12px;color:var(--kech-gold);letter-spacing:.19em;font-size:.77rem;line-height:1.5}
.key-kicker:before{content:"";width:22px;height:2px;flex:none;background:linear-gradient(90deg,var(--kech-gold),var(--kech-red));box-shadow:0 0 16px rgba(246,197,70,.35)}
.key-lead{max-width:750px;line-height:1.65;color:#cdc8c2;font-size:clamp(1.08rem,1.7vw,1.28rem)}
.key-section .key-title + .key-lead{margin-top:14px}
.key-section .key-title{position:relative}
:where(a,button,input,select,textarea):focus-visible{outline:3px solid #ffe267;outline-offset:4px}
::selection{background:#f6c546;color:#08080a}

/* Broadcast navigation / restrained gold reading-progress indicator */
.key-header{background:linear-gradient(180deg,rgba(7,7,9,.96),rgba(7,7,9,.86));border-bottom:1px solid rgba(246,197,70,.14);box-shadow:0 10px 40px rgba(0,0,0,.27);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
.key-header:after{content:"";position:absolute;left:0;bottom:-1px;width:var(--key-scroll-progress,0%);height:2px;background:linear-gradient(90deg,var(--kech-red),#ffbe38 72%,#fff0aa);box-shadow:0 0 13px rgba(245,197,70,.4);pointer-events:none}
.key-header__inner{min-height:84px}
.key-brand{transition:transform .32s var(--kech-ease)}
.key-brand:hover{transform:scale(1.028)}
.key-brand img{filter:drop-shadow(0 4px 12px rgba(255,178,39,.1))}
.key-nav__occasion-group{background:linear-gradient(135deg,rgba(238,40,48,.09),rgba(255,255,255,.025));border-color:rgba(246,197,70,.19);box-shadow:inset 3px 0 0 rgba(238,40,48,.85),0 4px 22px rgba(0,0,0,.14)}
.key-nav__menu .key-menu-item--party-link>a{border-color:rgba(246,197,70,.24);background:linear-gradient(135deg,rgba(246,197,70,.1),rgba(255,255,255,.035))}
.key-nav__menu .key-menu-item--cta>a,.key-btn--yellow{color:#0b0a08;background:linear-gradient(112deg,#f5b72e 0%,#ffec76 47%,#f0b11e 100%);box-shadow:0 11px 30px rgba(246,197,70,.14),inset 0 1px 0 rgba(255,255,255,.6)}
.key-btn{position:relative;min-height:51px;border-radius:9px;letter-spacing:.055em;transition:transform .26s var(--kech-ease),box-shadow .26s var(--kech-ease),border-color .26s}
.key-btn:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(230,19,31,.22)}
.key-btn--yellow:hover{box-shadow:0 16px 36px rgba(246,197,70,.26)}
.key-btn--ghost{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.21);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.key-btn--ghost:hover{border-color:rgba(246,197,70,.6);box-shadow:0 14px 30px rgba(0,0,0,.22)}
.key-language-switch{background:#161519;border-color:rgba(255,255,255,.16);gap:4px;padding:4px;border-radius:9px}
.key-language-switch a{padding:6px 9px;border-radius:6px;line-height:1.1}
.key-language-switch a.is-active{background:linear-gradient(115deg,#ffda56,#dba222);color:#090909}
.key-language-switch span{color:#666;font-size:.72rem}

/* Event landing: huge legible title, graphic red stage, framed poster */
.key-next-show--landing{background:#08080a;min-height:100svh}
.key-next-show.has-background:before{filter:blur(5px) saturate(.7);opacity:.36;transform:scale(1.065)}
.key-next-show:after{background:
  linear-gradient(125deg,rgba(7,7,9,.96) 2%,rgba(7,7,9,.9) 39%,rgba(7,7,9,.64) 66%,rgba(7,7,9,.9)),
  radial-gradient(ellipse at 86% 45%,rgba(239,53,39,.19),transparent 50%)}
.key-next-show__grid{grid-template-columns:minmax(0,1fr) minmax(400px,.89fr);gap:clamp(30px,5vw,80px);padding-block:clamp(12px,3.5vw,48px)}
.key-next-show__copy{position:relative;z-index:2}
.key-next-show__copy:before{content:"";position:absolute;left:-29px;top:-20px;bottom:-20px;width:2px;background:linear-gradient(180deg,transparent,rgba(242,185,0,.92) 22%,rgba(238,40,48,.66) 70%,transparent)}
.key-next-show__title{margin:24px 0;font-size:clamp(3.3rem,7.1vw,8rem);line-height:.87;letter-spacing:-.06em;text-wrap:balance;text-shadow:0 3px 33px rgba(0,0,0,.7)}
.key-next-show__meta{gap:8px 10px;margin-bottom:24px}
.key-next-show__meta span{font-size:.86rem;border-color:rgba(255,229,160,.19);border-radius:6px;background:rgba(15,14,16,.78);padding:9px 12px;letter-spacing:.025em}
.key-next-show__description{color:#ddd7d0;line-height:1.7}
.key-next-show__actions{gap:12px;margin-top:28px}
.key-next-show__poster-wrap{position:relative;max-width:none;width:min(600px,100%);padding:10px;border:1px solid rgba(246,197,70,.54);border-radius:11px;background:#110e0e;transform:rotate(1.15deg);box-shadow:0 34px 100px rgba(0,0,0,.7),0 0 80px rgba(240,178,28,.08);transition:transform .4s var(--kech-ease),border-color .4s}
.key-next-show__poster-wrap:before{content:"";position:absolute;inset:-15px;z-index:-1;border:1px solid rgba(246,197,70,.16);clip-path:polygon(0 0,100% 0,100% 100%,0 100%);pointer-events:none}
.key-next-show__poster-wrap:hover{transform:rotate(0deg) translateY(-4px);border-color:#f5d575}
.key-next-show__poster{width:100%;max-height:680px;object-fit:contain;border-radius:5px}
.key-next-show__shade{height:180px;background:linear-gradient(transparent,#09090b)}
.key-empty-show{position:relative;max-width:850px}
.key-empty-show:before{content:"";position:absolute;inset:-30px -20px;border-top:1px solid rgba(246,197,70,.2);border-bottom:1px solid rgba(246,197,70,.1);pointer-events:none}

/* Event-day highlight: deliberately distinct live-broadcast ticker */
.key-event-day{padding:104px 0 24px;background:linear-gradient(90deg,#23100b,#100c0b 65%);border-color:rgba(230,59,31,.45)}
.key-event-day__inner{border:1px solid rgba(255,184,61,.4);border-left:5px solid var(--kech-red);border-radius:7px;background:linear-gradient(110deg,rgba(245,36,32,.11),rgba(243,180,35,.045));box-shadow:0 15px 50px rgba(0,0,0,.28)}
.key-event-day h2{font-size:clamp(2.1rem,4.4vw,4.4rem);letter-spacing:-.04em}

/* Results: broadcast match rows, not generic cards */
.key-results-section{background:radial-gradient(ellipse at 75% 20%,rgba(223,27,37,.12),transparent 42%),#0a0b0d}
.key-results-section .key-results-list{margin-top:38px;gap:10px}
.key-match-row{position:relative;padding:20px 24px;border:1px solid rgba(255,255,255,.09);border-left:3px solid rgba(238,40,48,.76);border-radius:7px;background:linear-gradient(104deg,#17171b 0%,#101013 72%,#0c0c0f);transition:transform .26s var(--kech-ease),border-color .26s,box-shadow .26s}
.key-match-row:after{content:"";position:absolute;right:13px;top:13px;width:24px;height:24px;border-top:1px solid rgba(246,197,70,.26);border-right:1px solid rgba(246,197,70,.26);pointer-events:none}
.key-match-row:hover{transform:translateX(3px);border-color:rgba(246,197,70,.35);box-shadow:0 15px 34px rgba(0,0,0,.24)}
.key-match-row__meta{font-size:.73rem;letter-spacing:.12em}
.key-match-row__sides{font-size:clamp(1.2rem,2.25vw,1.75rem);text-transform:uppercase;font-style:italic;letter-spacing:-.03em}
.key-match-side.is-winner{color:#f5cc54;text-shadow:0 1px 16px rgba(246,197,70,.11)}
.key-vs{padding:4px 9px;border:1px solid rgba(255,255,255,.1);border-radius:4px;color:#b4aba1;font-style:normal}
.key-chip{border-radius:4px;background:rgba(246,197,70,.075)}

/* Wrestlers: image-forward television talent cards */
.key-roster-section{background:
  linear-gradient(180deg,rgba(12,12,14,.78),rgba(9,9,11,.98)),
  repeating-linear-gradient(110deg,transparent 0 108px,rgba(222,34,41,.13) 108px 110px),
  radial-gradient(circle at 80% 10%,rgba(177,22,35,.3),transparent 36%)}
.key-roster-heading{gap:24px}
.key-roster-heading__link{transition:color .2s}
.key-roster-heading__link:hover{color:#f6c546}
.key-roster-heading__all{border-bottom:1px solid rgba(246,197,70,.45);font-weight:900;letter-spacing:.04em}
.key-roster-carousel{margin-top:36px}
.key-roster-grid{gap:18px}
.key-roster-card{position:relative;isolation:isolate;overflow:hidden;border-radius:9px;border:1px solid rgba(246,197,70,.19);background:#1a1616;box-shadow:0 18px 48px rgba(0,0,0,.22);transition:transform .35s var(--kech-ease),border-color .3s,box-shadow .3s}
.key-roster-card:after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;border-bottom:4px solid rgba(246,197,70,.45);background:linear-gradient(180deg,transparent 58%,rgba(8,8,8,.12) 74%,rgba(0,0,0,.15))}
.key-roster-card:hover{transform:translateY(-8px);border-color:rgba(246,197,70,.6);box-shadow:0 26px 60px rgba(0,0,0,.38)}
.key-roster-card img{transition:transform .55s var(--kech-ease),filter .5s}
.key-roster-card:hover img{transform:scale(1.045);filter:contrast(1.08)}
.key-roster-arrow{border:1px solid rgba(246,197,70,.3);background:rgba(14,12,12,.85);color:#f6cd54;box-shadow:0 9px 30px rgba(0,0,0,.45);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.key-roster-arrow:hover{background:#f7c94c;color:#08080a}
.key-roster-profile__hero{background:radial-gradient(circle at 20% 30%,rgba(220,25,33,.14),transparent 35%),#0b0b0e}
.key-roster-profile__media{border-color:rgba(246,197,70,.25);border-radius:8px}
.key-roster-profile__nickname{letter-spacing:.1em}
.key-roster-profile__fact{background:linear-gradient(150deg,rgba(255,255,255,.05),rgba(255,255,255,.01));border-radius:6px}
.key-stats-grid>div{border-top:3px solid rgba(246,197,70,.7);border-radius:7px}

/* Championship: quiet dark museum / gold-foil exhibition */
.key-champions-section{background:
  radial-gradient(ellipse at 50% 4%,rgba(245,195,57,.15),transparent 38%),
  radial-gradient(ellipse at 100% 70%,rgba(132,99,29,.06),transparent 37%),
  linear-gradient(180deg,#11100d 0%,#0c0c0e 50%,#09090b 100%)}
.key-champions-section .key-kicker{color:#e9c979}
.key-championship-belt{margin-block:46px 68px;border-radius:6px;border:1px solid rgba(248,202,78,.4);background:#050505;box-shadow:0 0 0 8px rgba(246,197,70,.02),0 30px 82px rgba(0,0,0,.56)}
.key-championship-belt img{object-fit:contain;object-position:center;aspect-ratio:3.05/1}
.key-lineage:before{width:3px;background:linear-gradient(180deg,#fbd867 0%,#c79630 42%,rgba(247,200,83,.22) 75%,rgba(255,255,255,.08))}
.key-lineage-entry__node{background:#967b4b;border-color:#11100d}
.key-lineage-card{border-radius:8px;border-color:rgba(246,197,70,.19);background:linear-gradient(122deg,rgba(247,204,92,.075),rgba(255,255,255,.025) 44%,rgba(255,255,255,.012));box-shadow:0 20px 52px rgba(0,0,0,.2)}
.key-lineage-entry.is-current .key-lineage-card{background:linear-gradient(130deg,rgba(248,201,70,.13),rgba(255,255,255,.02) 60%);border-color:rgba(255,208,95,.55)}
.key-lineage-card__number,.key-lineage-card__current{border-radius:4px}
.key-lineage-card__facts>div{background:rgba(0,0,0,.19);border-radius:5px}
.key-lineage-card h3{letter-spacing:-.04em}
.key-lineage-card__media img{filter:saturate(.88) contrast(1.08)}

/* Records: numerical editorial placards */
.key-records-section{background:linear-gradient(160deg,#161014 0%,#101014 45%,#08090c 100%)}
.key-records-grid{margin-top:40px;gap:13px}
.key-record-card{position:relative;min-height:208px;padding:26px 24px 22px;overflow:hidden;border-radius:7px;border:1px solid rgba(255,255,255,.1);border-top:2px solid rgba(239,42,52,.8);background:linear-gradient(155deg,rgba(245,53,63,.085),rgba(255,255,255,.015) 67%)}
.key-record-card:after{content:"";position:absolute;right:-48px;top:35px;width:118px;height:118px;border:1px solid rgba(245,193,52,.08);border-radius:50%;box-shadow:0 0 0 25px rgba(245,193,52,.025);pointer-events:none}
.key-record-card span{color:#c7bcb7;line-height:1.4}
.key-record-card strong{font-size:1.2rem;color:#fff}
.key-record-card b{display:block;margin-top:16px;font-size:clamp(2rem,3.7vw,3.7rem);line-height:1;color:#ffd05e;font-style:italic;letter-spacing:-.05em}

/* Event calendar: event-night ticket stub rows */
.key-calendar-section{background:radial-gradient(ellipse at 0 45%,rgba(225,31,42,.13),transparent 37%),#0c0b0d}
.key-calendar-list{display:grid;gap:12px;margin-top:38px}
.key-calendar-card{position:relative;overflow:hidden;transition:transform .25s var(--kech-ease),border-color .25s;background:linear-gradient(100deg,#191315,#101014)}
.key-calendar-card:hover{transform:translateX(4px);border-color:rgba(246,197,70,.35)}
.key-calendar-card__date{background:linear-gradient(150deg,#ee2f38,#9c0814);color:#fff}
.key-calendar-card__info h3{font-size:clamp(1.1rem,2.25vw,1.55rem);text-transform:uppercase;font-style:italic;line-height:1.08}

/* Teams, video, merch: distinct content-led cards */
#otbori{background:linear-gradient(125deg,rgba(60,11,19,.45),transparent 40%),#0d0c0f}
#video{background:radial-gradient(circle at 85% 25%,rgba(235,44,49,.13),transparent 40%),#090b0e}
#merch{background:linear-gradient(165deg,#151311,#0b0b0c 67%)}
.key-entity-grid,.key-show-archive-grid{gap:20px;margin-top:32px}
.key-entity-card,.key-show-card{position:relative;border-radius:7px;background:#151517;border-color:rgba(255,255,255,.12);box-shadow:var(--kech-glow);transition:transform .35s var(--kech-ease),border-color .3s,box-shadow .3s}
.key-entity-card:hover,.key-show-card:hover{transform:translateY(-7px);border-color:rgba(246,197,70,.4);box-shadow:0 28px 65px rgba(0,0,0,.42)}
.key-entity-card img,.key-show-card>img{aspect-ratio:16/10;object-position:center;transition:transform .5s var(--kech-ease)}
.key-entity-card:hover img,.key-show-card:hover>img{transform:scale(1.025)}
.key-entity-card h2,.key-entity-card h3,.key-show-card h2{font-size:clamp(1.25rem,2.2vw,1.8rem);letter-spacing:-.035em}
#video .key-entity-card:before{content:"▶";display:grid;place-items:center;position:absolute;left:22px;top:22px;z-index:3;width:46px;height:46px;border:1px solid rgba(255,255,255,.5);border-radius:50%;background:rgba(0,0,0,.52);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);font-size:.95rem;text-indent:2px;color:#fff;pointer-events:none}
#merch .key-entity-card img{aspect-ratio:1/1;object-fit:contain;padding:14px;background:radial-gradient(circle at center,#27201a,#0f0f11)}
#merch .key-entity-card>strong{color:var(--kech-gold);font-size:1.35rem}

/* Timeline of history: distinct archive look */
#istoria{background:radial-gradient(circle at 75% 25%,rgba(245,194,71,.08),transparent 40%),#0c0c0e}
.key-history-list{position:relative;margin-top:32px;padding-left:25px;gap:16px}
.key-history-list:before{content:"";position:absolute;left:3px;top:10px;bottom:10px;width:1px;background:linear-gradient(#edc04d,rgba(255,255,255,.09))}
.key-history-item{position:relative;grid-template-columns:160px 1fr;gap:18px 26px;padding:22px 26px;border-radius:6px;border-color:rgba(255,255,255,.1);background:linear-gradient(105deg,#17171a,#111115);transition:border-color .25s,transform .25s}
.key-history-item:before{content:"";position:absolute;top:27px;left:-28px;width:10px;height:10px;border-radius:50%;background:var(--kech-gold);box-shadow:0 0 0 5px rgba(246,197,70,.08)}
.key-history-item:hover{transform:translateX(4px);border-color:rgba(246,197,70,.35)}
.key-history-item time{font-size:1.07rem;letter-spacing:.03em}
.key-history-item h3{font-size:clamp(1.15rem,2.1vw,1.55rem)}

/* Sponsor wall: intentionally quiet visual rest */
.key-partners-section{background:linear-gradient(180deg,#0c0c0e,#08080a);border-top:1px solid rgba(246,197,70,.15)}
.key-partners-grid{gap:10px;margin-top:38px}
.key-partner-card{border-radius:5px;min-height:144px;border-color:rgba(255,255,255,.075);background:rgba(255,255,255,.016);filter:grayscale(.25);transition:filter .3s,transform .3s,border-color .3s}
.key-partner-card:hover{filter:grayscale(0)}
.key-partner-card img{max-height:67px;height:auto;max-width:185px}

/* /party: separate experiential identity, not a duplicate of shows homepage */
.key-party-page{background:#090909}
.key-party-page .key-hero{min-height:780px;background:
  radial-gradient(circle at 12% 20%,rgba(238,40,48,.2),transparent 32%),
  radial-gradient(circle at 78% 55%,rgba(245,193,45,.1),transparent 33%),
  repeating-linear-gradient(112deg,rgba(255,255,255,.012) 0 1px,transparent 1px 78px),
  #09090b}
.key-hero__logo{filter:drop-shadow(0 18px 30px rgba(0,0,0,.5))}
.key-party-page .key-hero h1{max-width:800px;line-height:.87;letter-spacing:-.055em}
.key-hero h1 .brush{background:linear-gradient(115deg,#f4bb38 0%,#ffeb70 50%,#dca71f);clip-path:polygon(1% 7%,99% 0%,97% 96%,0 100%);box-shadow:0 16px 45px rgba(246,197,70,.18)}
.key-hero__sub{line-height:1.7;color:#d7d0c8}
.key-hero__card{transform:rotate(1deg);border-radius:8px;padding:10px;border-color:rgba(246,197,70,.34);background:linear-gradient(145deg,#161417,#0a0a0e);box-shadow:0 30px 90px rgba(0,0,0,.6),0 0 90px rgba(244,180,41,.04)}
.key-hero__card:before{inset:8px;border-radius:5px;border-width:1px}
.key-hero__media,.key-hero__card img.key-hero__slide{border-radius:3px}
.key-hero__dots{right:21px;bottom:21px}
.key-types{background:#101012}
.key-types__grid{gap:12px}
.key-type{min-height:194px;border-radius:6px;padding:26px 16px;background:linear-gradient(145deg,#1a191b,#101014);transition:transform .35s var(--kech-ease),border-color .3s,background .3s}
.key-type:after{left:0;right:0;height:2px;box-shadow:none;background:linear-gradient(90deg,var(--kech-red),var(--kech-gold))}
.key-type:hover{transform:translateY(-8px);background:linear-gradient(145deg,#21191a,#141317)}
.key-type__icon{width:72px;height:72px;margin-bottom:22px;border:1px solid rgba(246,197,70,.42);background:radial-gradient(circle,rgba(246,197,70,.11),rgba(246,197,70,.015));box-shadow:0 0 0 8px rgba(246,197,70,.025)}
.key-band{border-block:1px solid rgba(246,197,70,.54);background:linear-gradient(95deg,#9c0913,#e52b31 47%,#81040e)}
.key-band__inner{background:transparent;gap:0}
.key-band__item{position:relative;padding:28px 15px;background:transparent}
.key-band__item + .key-band__item:before{content:"";position:absolute;inset:24% auto 24% 0;width:1px;background:rgba(255,213,79,.5)}
.key-gallery{gap:12px;grid-template-rows:360px}
.key-gallery figure{border-radius:6px;border-color:rgba(246,197,70,.15)}
.key-gallery figure:after{content:"";position:absolute;inset:0;pointer-events:none;border:1px solid rgba(246,197,70,.08);transition:border-color .25s}
.key-gallery figure:hover:after{border-color:rgba(246,197,70,.46)}
.key-gallery img{filter:saturate(.83) contrast(1.09);transition:transform .7s var(--kech-ease),filter .6s}
.key-gallery figure:hover img{transform:scale(1.07);filter:saturate(1.05) contrast(1.03)}
.key-gallery figcaption{padding:65px 20px 24px;background:linear-gradient(transparent,rgba(3,3,5,.93));font-size:1.05rem;letter-spacing:.04em}
.key-process{background:radial-gradient(circle at 10% 20%,rgba(235,32,43,.08),transparent 36%),#0b0b0e}
.key-process__grid{gap:14px}
.key-step{border-radius:6px;padding:30px;border-color:rgba(255,255,255,.09);background:linear-gradient(155deg,#18181c,#101014)}
.key-step:before{font-size:4.9rem;right:19px;top:12px;color:rgba(246,197,70,.13);font-style:italic;line-height:.8}
.key-step:after{content:"";position:absolute;left:30px;top:31px;width:38px;height:3px;background:var(--kech-red)}
.key-step h3{margin:59px 0 12px;font-size:1.12rem}
.key-step p{line-height:1.65;color:#c4c0ba}
.key-contact{background:radial-gradient(ellipse at 20% 26%,rgba(245,193,61,.13),transparent 38%),linear-gradient(140deg,#131011,#09090c 66%)}
.key-contact__grid{gap:clamp(28px,6vw,90px)}
.key-contact__aside .key-title{max-width:470px}
.key-contact__aside p{max-width:440px;line-height:1.75}
.key-form{gap:16px;padding:clamp(22px,3vw,38px);border-radius:8px;border-color:rgba(246,197,70,.29);background:linear-gradient(146deg,rgba(25,24,27,.97),rgba(13,13,16,.97));box-shadow:0 38px 90px rgba(0,0,0,.38),inset 0 1px 0 rgba(246,197,70,.06)}
.key-field input,.key-field select,.key-field textarea{border-radius:5px;padding:14px 15px;background:#0a0a0d;border-color:rgba(255,255,255,.13);transition:border-color .2s,box-shadow .2s}
.key-field :is(input,select,textarea):focus{border-color:rgba(246,197,70,.7);box-shadow:0 0 0 3px rgba(246,197,70,.075)}
.key-field label{color:#e7ded5}
.key-form__or{color:#c5c0b9}

/* Inner pages, news/event archives, individual show layouts */
.key-show-page__hero{background:#08080a;min-height:620px}
.key-show-page__hero.has-background:before{opacity:.3;filter:blur(5px)}
.key-show-page__shade{background:linear-gradient(95deg,rgba(6,6,8,.96),rgba(6,6,8,.78) 62%,rgba(6,6,8,.91))}
.key-show-page__grid{gap:clamp(28px,5vw,74px)}
.key-show-page__hero .key-title{font-size:clamp(3rem,6vw,6rem)}
.key-show-page .key-prose{max-width:850px;font-size:clamp(1.05rem,1.6vw,1.18rem);line-height:1.8}
.key-program{background:linear-gradient(145deg,#1b1510,#101014 74%)}
.key-program-grid{gap:12px;margin-top:26px}
.key-program-grid>div{border-radius:6px;border-color:rgba(246,197,70,.18);padding:22px;background:rgba(246,197,70,.035)}
.key-program-grid span{font-size:1.2rem}
.key-event-gallery{gap:12px}
.key-event-gallery a{overflow:hidden;border-radius:6px;border:1px solid rgba(255,255,255,.12)}
.key-event-gallery img{border-radius:0;transition:transform .45s var(--kech-ease)}
.key-event-gallery a:hover img{transform:scale(1.07)}
.key-prediction-card{border-radius:6px;border-color:rgba(246,197,70,.15);padding:22px;background:linear-gradient(140deg,#16151b,#101015)}
.key-prediction-card legend{color:#f5cf67}
.key-first-time-grid>div{border-radius:7px;border:1px solid rgba(255,255,255,.13);background:#151518;padding:22px}
.key-single-featured img{border-radius:7px}

/* Footer: editorial strip rather than repeated panels */
.key-footer{border-top:1px solid rgba(246,197,70,.18);background:linear-gradient(180deg,#111013,#08080a)}
.key-footer__inner{min-height:135px}
.key-under-construction{background:radial-gradient(ellipse at center,rgba(243,185,52,.12),transparent 65%),#0a090b}
.key-under-construction__inner{position:relative}

/* Lightweight safe scroll reveal; only activated after JS opts in. */
@media(prefers-reduced-motion:no-preference){
  html.key-modern-ready .key-modern-reveal:not(.key-modern-visible){opacity:0;transform:translateY(20px)}
  html.key-modern-ready .key-modern-reveal{transition:opacity .66s var(--kech-ease),transform .66s var(--kech-ease)}
  html.key-modern-ready .key-modern-reveal.key-modern-visible{opacity:1;transform:none}
}
@media(max-width:1100px){
  .key-shell{width:min(calc(100% - 44px),var(--max))}
  .key-next-show__grid{grid-template-columns:minmax(0,1fr) minmax(350px,.82fr);gap:30px}
  .key-next-show__poster-wrap{width:100%}
}
@media(max-width:980px){
  .key-next-show__grid{grid-template-columns:1fr;gap:36px}
  .key-next-show__poster-wrap{order:-1;justify-self:center;width:min(550px,85vw);transform:rotate(.5deg)}
  .key-next-show__copy{order:2}
  .key-next-show__copy:before{left:-15px}
  .key-records-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .key-type{min-height:170px}
}
@media(max-width:720px){
  html{scroll-padding-top:75px}
  .key-shell{width:min(calc(100% - 28px),var(--max))}
  .key-section{padding-block:68px}
  .key-title{font-size:clamp(2.35rem,10.3vw,4rem)}
  .key-header__inner{min-height:72px}
  .key-nav{background:rgba(8,8,10,.97)}
  .key-language-switch{margin-top:10px;align-self:flex-start}
  .key-next-show--landing{padding-top:94px}
  .key-next-show__grid{gap:25px;padding-block:0}
  .key-next-show__title{font-size:clamp(2.8rem,12vw,5.2rem);margin:18px 0}
  .key-next-show__poster-wrap{width:min(550px,95%);transform:none;padding:7px}
  .key-next-show__copy:before{display:none}
  .key-next-show__description{line-height:1.6}
  .key-next-show__actions{gap:9px}
  .key-next-show__actions .key-btn{flex:1 1 175px}
  .key-roster-grid--carousel .key-roster-card{flex-basis:78vw}
  .key-roster-card:hover{transform:none}
  .key-championship-belt{margin-block:32px 42px}
  .key-championship-belt img{aspect-ratio:auto;max-height:300px;object-fit:contain}
  .key-lineage{padding-left:37px}
  .key-lineage-card{grid-template-columns:1fr}
  .key-lineage-card__media{aspect-ratio:16/10}
  .key-lineage-card__body{padding:19px}
  .key-records-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .key-record-card{min-height:172px;padding:18px}
  .key-record-card b{font-size:2.25rem}
  .key-calendar-card{border-radius:5px}
  .key-history-list{padding-left:19px}
  .key-history-item{grid-template-columns:1fr;padding:18px}
  .key-history-item:before{left:-22px}
  .key-history-item p{grid-column:auto}
  .key-party-page .key-hero{min-height:auto}
  .key-hero__card{transform:none}
  .key-types__grid{gap:10px}
  .key-type{min-height:150px}
  .key-band__item{padding:20px 10px}
  .key-gallery{grid-template-columns:1fr;grid-template-rows:none;gap:12px}
  .key-gallery figure{height:300px}
  .key-contact__grid{gap:34px}
  .key-form{padding:20px}
  .key-event-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:430px){
  .key-next-show__title{font-size:clamp(2.65rem,13vw,4rem)}
  .key-next-show__meta{gap:7px}
  .key-next-show__meta span{font-size:.78rem;padding:7px 9px}
  .key-records-grid{grid-template-columns:1fr 1fr}
  .key-record-card{padding:16px;min-height:154px}
  .key-record-card span{font-size:.65rem}
  .key-record-card strong{font-size:1rem}
  .key-record-card b{font-size:2rem}
  .key-history-list{padding-left:17px}
  .key-event-gallery{gap:7px}
  .key-form{grid-template-columns:1fr}
  .key-field--full{grid-column:1}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .key-hero__card,.key-next-show__poster-wrap{transform:none}
}

/* Lovable design-study motifs, carefully adapted to existing PHP markup. */
.key-roster-section:before,
.key-types:before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;
  height:13px;
  pointer-events:none;
  opacity:.5;
  background:
    linear-gradient(90deg,transparent,rgba(239,41,48,.88) 12%,rgba(239,41,48,.85) 88%,transparent) 0 0/100% 2px no-repeat,
    linear-gradient(90deg,transparent,rgba(248,246,240,.42) 12%,rgba(248,246,240,.42) 88%,transparent) 0 6px/100% 1px no-repeat,
    linear-gradient(90deg,transparent,rgba(239,41,48,.88) 12%,rgba(239,41,48,.85) 88%,transparent) 0 12px/100% 2px no-repeat;
}
@supports (-webkit-background-clip:text){
  .key-champions-section .key-title{
    background:linear-gradient(108deg,#c28a29 0%,#fbe7a1 24%,#d8aa4c 51%,#ffefbb 68%,#b78329 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
  }
}
/* Stage-light pseudo-elements extend past the hero bounds; clip without horizontal scroll. */
.key-party-page .key-hero{overflow:hidden}
