

:root{
--color-surface-primary:#FCFBF7;
--color-surface-secondary:#F2EEE5;
--color-text-primary:#18243A;
--color-text-secondary:#857A68;
--color-accent-primary:#0B6B63;
--color-accent-gold:#B99254;
--color-surface-overlay:rgba(24,36,58,0.13);
--color-danger:#D62828;
--color-text-on-danger:#FFFFFF;

--font-heading:"Playfair Display",Georgia,serif;
--font-body:Inter,"Segoe UI",Arial,sans-serif;

--fs-1:clamp(2.2rem,3vw,3.2rem);
--fs-2:clamp(1.9rem,2.5vw,2.4rem);
--fs-3:clamp(1.5rem,2vw,1.8rem);
--fs-4:clamp(1.25rem,1.6vw,1.5rem);
--fs-5:1.15rem;
--fs-6:1rem;
--fs-7:0.92rem;

--lh-body:1.6;
--lh-heading:1.3;

--space-1:0.25rem;
--space-2:0.5rem;
--space-3:1rem;
--space-4:1.5rem;
--space-5:2.5rem;
--space-6:4rem;
--space-7:6rem;

--container-max:1200px;
--container-pad:clamp(1rem,3vw,2.5rem);

--radius-sm:14px;
--radius-lg:18px;

--shadow-soft:0 2px 16px 0 rgba(24,36,58,0.07);

--border-subtle:1px solid rgba(133,122,104,0.2);

--focus-ring:2px solid var(--color-accent-primary);
}

*,
*::before,
*::after{
box-sizing:border-box;
}

html{
font-size:100%;
-webkit-text-size-adjust:100%;
}

body{
margin:0;
font-family:var(--font-body);
font-size:var(--fs-6);
line-height:var(--lh-body);
color:var(--color-text-primary);
background:var(--color-surface-primary);
min-height:100vh;
text-rendering:optimizeLegibility;
-webkit-font-smoothing:antialiased;
}

/* Prevent a single wide table or long label from creating horizontal page scroll. */
body{
overflow-x:clip;
}

img,
picture,
video,
canvas,
svg{
display:block;
max-width:100%;
height:auto;
}

input,
button,
textarea,
select{
font:inherit;
color:inherit;
}

button{
cursor:pointer;
background:none;
border:none;
}

a{
color:var(--color-accent-primary);
text-decoration:none;
}

a:hover{
text-decoration:underline;
}

:focus-visible{
outline:var(--focus-ring);
outline-offset:2px;
}

h1,h2,h3,h4,h5,h6{
font-family:var(--font-heading);
line-height:var(--lh-heading);
margin:0 0 var(--space-3);
color:var(--color-text-primary);
}

h1{font-size:var(--fs-1); color:var(--color-accent-gold);}
h2{font-size:var(--fs-2);}
h3{font-size:var(--fs-3); font-family:var(--font-body); color:var(--color-accent-primary);}
h4{font-size:var(--fs-4);}
h5{font-size:var(--fs-5);}
h6{font-size:var(--fs-6);}

p{
margin:0 0 var(--space-3);
color:var(--color-text-primary);
}

small{
font-size:var(--fs-7);
color:var(--color-text-secondary);
}

ul,ol{
margin:0 0 var(--space-3);
padding-left:1.5rem;
}

blockquote{
margin:0 0 var(--space-4);
padding-left:var(--space-3);
border-left:3px solid var(--color-accent-gold);
color:var(--color-text-secondary);
}

hr{
border:none;
border-top:var(--border-subtle);
margin:var(--space-5) 0;
}

table{
width:100%;
border-collapse:collapse;
font-variant-numeric:tabular-nums;
background:var(--color-surface-secondary);
border-radius:var(--radius-sm);
overflow:hidden;
box-shadow:var(--shadow-soft);
}

thead{
background:var(--color-accent-gold);
color:var(--color-text-primary);
font-weight:600;
text-transform:uppercase;
letter-spacing:0.04em;
}

th,td{
padding:var(--space-3);
text-align:left;
}

tbody tr:nth-child(even){
background:var(--color-surface-primary);
}

tbody tr:hover{
background:rgba(24,36,58,0.07);
}

.container{
max-width:var(--container-max);
margin-inline:auto;
padding-inline:var(--container-pad);
width:100%;
}

.section{
padding-block:var(--space-5);
}

@media (max-width:600px){
.section{
padding-block:var(--space-4);
}
}

.card{
background:var(--color-surface-secondary);
border-radius:var(--radius-sm);
box-shadow:var(--shadow-soft);
border:var(--border-subtle);
padding:var(--space-4);
}

.card > *:last-child{
margin-bottom:0;
}

.surface{
background:var(--color-surface-secondary);
border-radius:var(--radius-sm);
border:var(--border-subtle);
}

.button{
display:inline-flex;
align-items:center;
justify-content:center;
gap:0.5rem;
padding:0.6em 1.2em;
border-radius:var(--radius-sm);
font-weight:500;
background:var(--color-surface-primary);
color:var(--color-accent-primary);
transition:box-shadow 0.2s ease,background 0.2s ease;
}

.button:hover{
box-shadow:var(--shadow-soft);
}

.button:active{
transform:translateY(1px);
}

.input,
textarea,
select{
width:100%;
padding:0.6em 0.8em;
border-radius:var(--radius-sm);
border:var(--border-subtle);
background:var(--color-surface-primary);
}

label{
display:block;
margin-bottom:var(--space-1);
font-size:var(--fs-7);
color:var(--color-text-secondary);
}

.form-group{
margin-bottom:var(--space-4);
}

.flex{
display:flex;
gap:var(--space-3);
min-width:0;
}

.flex-col{
flex-direction:column;
}

.flex-wrap{
flex-wrap:wrap;
}

.flex > *{
min-width:0;
}

.hidden{
display:none;
}

.visually-hidden{
position:absolute;
width:1px;
height:1px;
padding:0;
margin:-1px;
overflow:hidden;
clip:rect(0,0,0,0);
white-space:nowrap;
border:0;
}

.overlay{
position:fixed;
inset:0;
background:var(--color-surface-overlay);
opacity:0;
pointer-events:none;
transition:opacity 0.2s ease;
}

.overlay.is-active{
opacity:1;
pointer-events:auto;
}

.modal{
background:var(--color-surface-primary);
border-radius:var(--radius-lg);
box-shadow:var(--shadow-soft);
padding:var(--space-5);
max-width:600px;
margin:auto;
}

img.rounded{
border-radius:var(--radius-sm);
box-shadow:var(--shadow-soft);
}

.no-scroll{
overflow:hidden;
}


.d24-top{position:sticky;top:0;z-index:1000}
.d24-ribbon{position:static;background:#D62828;color:#fff;font-size:0.9rem}
.d24-ribbon a{color:#fff;text-decoration:underline}
.d24-ribbon-inner{display:flex;justify-content:center;padding:0.4rem 0;text-align:center}

.d24-header{position:static;background:var(--color-surface-primary);border-bottom:var(--border-subtle)}
.d24-header-inner{display:flex;align-items:center;justify-content:space-between;min-height:72px}

.d24-brand{display:flex;align-items:center;gap:0.6rem;color:inherit;text-decoration:none}
.d24-logo{height:40px;width:auto}
.d24-brand-text{display:flex;flex-direction:column;line-height:1}
.d24-brand-main{font-family:var(--font-heading);font-size:1rem}
.d24-brand-sub{font-size:0.85rem;color:var(--color-accent-primary)}

.d24-nav-list{list-style:none;margin:0;padding:0;display:flex;gap:1.2rem}
.d24-nav-list li{margin:0;padding:0}
.d24-nav-list a{font-weight:500;text-decoration:none}

.d24-nav-toggle{display:none;width:44px;height:44px;align-items:center;justify-content:center;flex-direction:column;gap:4px}
.d24-nav-toggle span{display:block;width:22px;height:2px;background:var(--color-text-primary);margin:0}
.d24-nav-close{display:none}

@media(max-width:900px){
.d24-nav{position:fixed;inset:0 0 0 auto;width:80%;max-width:320px;background:var(--color-surface-primary);transform:translateX(100%);transition:transform .2s ease;z-index:1001;padding:2rem 1.5rem;overflow:auto}
.d24-nav.is-open{transform:translateX(0)}
.d24-nav-list{flex-direction:column;gap:1rem}
.d24-nav-toggle{display:flex}
.d24-nav-close{display:grid;place-items:center;position:absolute;top:.9rem;right:.9rem;width:44px;height:44px;padding:0;font-size:2rem;line-height:1;color:var(--color-text-primary)}
}

.d24-header-spacer{display:none}

body.no-scroll{overflow:hidden}


.d24-footer{background:var(--color-surface-secondary);margin-top:0;padding:var(--space-5) 0;border-top:var(--border-subtle)}
.d24-footer-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-4)}
.d24-footer h4,.d24-footer h5{margin-bottom:var(--space-2)}
.d24-footer ul{list-style:none;padding:0;margin:0}
.d24-footer li{margin-bottom:0.4rem}

.d24-footer-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-4)}

@media(max-width:900px){
.d24-footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
.d24-footer-grid{grid-template-columns:1fr}
}

.d24-consent{position:fixed;bottom:0;left:0;right:0;background:var(--color-surface-primary);border-top:var(--border-subtle);box-shadow:var(--shadow-soft);padding:1rem;display:none;z-index:1002}
.d24-consent.is-visible{display:block}
.d24-consent-inner{max-width:900px;margin:0 auto;display:flex;justify-content:space-between;gap:1rem;align-items:center}
.d24-consent-actions{display:flex;gap:0.5rem}


.cookies-page{
}

.cookies-intro__inner{
max-width:760px;
margin-inline:auto;
text-align:left;
}

.cookies-highlight{
background:var(--color-surface-secondary);
padding:var(--space-4);
border-radius:var(--radius-sm);
border:var(--border-subtle);
box-shadow:var(--shadow-soft);
}

.cookies-types__inner{
max-width:760px;
}

.cookies-block{
margin-bottom:var(--space-5);
}

.cookies-purpose__inner{
max-width:720px;
}

.cookies-manage__card{
max-width:760px;
margin-inline:auto;
display:flex;
flex-direction:column;
gap:var(--space-3);
}

.cookies-rights__inner{
max-width:720px;
}

.cookies-contact__card{
max-width:760px;
margin-inline:auto;
display:flex;
flex-direction:column;
gap:var(--space-3);
}

@media (max-width:600px){
.cookies-intro__inner,
.cookies-types__inner,
.cookies-purpose__inner,
.cookies-rights__inner{
max-width:100%;
}
}


.privacy-page{display:block}

.intro-container{max-width:720px;margin-inline:auto;text-align:left}
.data-container{max-width:760px}
.purpose-container{max-width:720px}
.legal-container{max-width:720px}
.sharing-container{max-width:720px}
.rights-container{max-width:760px}
.contact-container{max-width:600px}
.closing-container{max-width:720px}

.data-container,.purpose-container,.legal-container,.sharing-container,.rights-container,.contact-container,.closing-container{margin-inline:auto}

.data-block{display:flex;flex-direction:column;gap:var(--space-3)}
.purpose-block{margin-bottom:var(--space-4)}
.legal-block{margin-bottom:var(--space-4)}

.rights-list{padding-left:1.2rem}
.rights-list li{margin-bottom:0.5rem}

.contact-container{display:flex;flex-direction:column;gap:var(--space-3)}

.section{border-bottom:var(--border-subtle)}
.section:last-child{border-bottom:none}

@media (max-width:600px){
.intro-container,.data-container,.purpose-container,.legal-container,.sharing-container,.rights-container,.contact-container,.closing-container{padding-inline:1rem}
}


.terms-main{display:block;}

.terms-hero-inner{max-width:900px;margin-inline:auto;display:flex;flex-direction:column;gap:var(--space-4);} 

.terms-intro-text{max-width:75ch;}

.terms-highlight-box{background:var(--color-surface-secondary);border:var(--border-subtle);border-radius:var(--radius-sm);padding:var(--space-4);box-shadow:var(--shadow-soft);} 

.terms-section{display:block;}

.terms-inner{display:flex;flex-direction:column;gap:var(--space-3);} 

.terms-narrow .terms-inner{max-width:65ch;} 

.terms-standard .terms-inner{max-width:75ch;} 

.terms-contact .terms-inner{max-width:55ch;} 

@media (max-width:900px){
.terms-hero-inner{padding-inline:var(--space-3);} 
}

@media (max-width:600px){
.terms-inner{gap:var(--space-3);} 
}


.kontakt-hero__inner{max-width:700px;margin-inline:auto;text-align:center;display:flex;flex-direction:column;gap:var(--space-3)}

.kontakt-types__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4);margin-top:var(--space-4)}
.kontakt-card{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}
.kontakt-card:hover{box-shadow:var(--shadow-soft)}

.kontakt-form__box{max-width:800px;margin-inline:auto;display:flex;flex-direction:column;gap:var(--space-3)}
.kontakt-form__intro{max-width:700px;margin-inline:auto;text-align:center}
.kontakt-form__feedback{min-height:1.2em}

.kontakt-explain__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5);margin-top:var(--space-4)}
.kontakt-explain__grid>div{min-width:0}

.kontakt-process__inner{max-width:700px;margin-inline:auto;text-align:center}
.kontakt-response__inner{max-width:600px;margin-inline:auto;text-align:center}

.kontakt-notice__box{max-width:800px;margin-inline:auto;background:var(--color-surface-secondary);padding:var(--space-4);border-radius:var(--radius-sm);border:var(--border-subtle);box-shadow:var(--shadow-soft);text-align:center}

.kontakt-seo__inner{max-width:700px}

@media (max-width:900px){
.kontakt-types__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.kontakt-explain__grid{grid-template-columns:1fr}
}

@media (max-width:600px){
.kontakt-types__grid{grid-template-columns:1fr}
}


.vysledky-page{display:block}

.vysledky-hero{position:relative;min-height:420px;display:flex;align-items:center}
.vysledky-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vysledky-hero-content{position:relative;max-width:520px;margin-left:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3)}
.vysledky-hero-note{font-size:var(--fs-7);color:var(--color-text-secondary)}

.vysledky-filters{display:flex;flex-direction:column;gap:var(--space-4);align-items:center}
.vysledky-filter-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3);width:100%;max-width:900px}

.vysledky-table-wrap{overflow-x:auto}

.vysledky-detail{display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}
.vysledky-final-table{max-width:800px;width:100%}

.vysledky-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}

.vysledky-links{display:flex;flex-direction:column;gap:var(--space-3);max-width:700px}

.vysledky-archive{display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}
.vysledky-archive-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3);width:100%;max-width:700px}

.vysledky-region-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);align-items:center}

.vysledky-disclaimer .card{border-left:4px solid var(--color-danger);max-width:700px;margin-inline:auto}

.vysledky-cta{display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}
.vysledky-cta-buttons{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center}

@media(max-width:900px){
.vysledky-filter-form{grid-template-columns:1fr}
.vysledky-stats{grid-template-columns:1fr}
.vysledky-archive-grid{grid-template-columns:repeat(2,1fr)}
.vysledky-region-grid{grid-template-columns:1fr}
.vysledky-hero-content{margin:var(--space-4)}
}


.kalendar-page{display:block}

.kalendar-hero-grid{display:grid;grid-template-columns:45% 55%;gap:var(--space-5);align-items:center}
.kalendar-hero-text{max-width:38ch}
.kalendar-hero-disclaimer{background:var(--color-surface-secondary);padding:var(--space-3);border-radius:var(--radius-sm);border:var(--border-subtle)}

.kalendar-filter-bar{display:flex;flex-wrap:wrap;gap:var(--space-3)}
.kalendar-filter-bar>*{min-width:160px;flex:1}

.kalendar-tabs{display:flex;gap:var(--space-2);flex-wrap:wrap}
.kalendar-tabs button{padding:0.5rem 1rem;border-radius:var(--radius-sm);background:var(--color-surface-secondary)}
.kalendar-tabs button.active{background:var(--color-accent-primary);color:#fff}

.kalendar-content{display:block}
.kalendar-list{display:flex;flex-direction:column;gap:var(--space-3)}

.kalendar-type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}

.kalendar-locations-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);align-items:center}
.kalendar-locations-text{max-width:45ch}

.kalendar-data-inner{max-width:700px;margin-inline:auto}

.kalendar-links-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}

.kalendar-seo-inner{max-width:750px;margin-inline:auto;text-align:center}

.kalendar-disclaimer-box{max-width:700px;margin-inline:auto;background:var(--color-surface-secondary);padding:var(--space-4);border-radius:var(--radius-lg);border:var(--border-subtle);text-align:center}

@media(max-width:900px){
.kalendar-hero-grid{grid-template-columns:1fr}
.kalendar-type-grid{grid-template-columns:1fr}
.kalendar-locations-grid{grid-template-columns:1fr}
.kalendar-links-grid{grid-template-columns:1fr}
}


.zebricek-main{display:block}

.z-hero{position:relative}
.z-hero-img{width:100%;height:70vh;object-fit:cover}
.z-hero-content{position:absolute;left:var(--container-pad);bottom:var(--space-5);max-width:520px;display:flex;flex-direction:column;gap:var(--space-3);color:#fff}
.z-hero-content h1{color:var(--color-accent-gold)}
.z-hero-note{font-size:var(--fs-7);color:#fff}

.z-cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5)}
.z-cards-grid > *{min-width:0}

.z-table-wrap{overflow-x:auto}

.z-duo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5)}
.z-duo-grid > *{min-width:0}

.z-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5)}

.z-history img{margin-top:var(--space-4)}

.z-method{display:flex;justify-content:center}
.z-method-inner{max-width:700px;display:flex;flex-direction:column;gap:var(--space-4)}

.z-links-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5)}

.z-disclaimer{display:flex;justify-content:center}
.z-disclaimer-box{max-width:700px;background:var(--color-surface-secondary);padding:var(--space-4);border-radius:var(--radius-sm);box-shadow:var(--shadow-soft)}

@media(max-width:900px){
.z-cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.z-duo-grid{grid-template-columns:1fr}
.z-stats-grid{grid-template-columns:1fr}
.z-links-grid{grid-template-columns:1fr}
}

@media(max-width:600px){
.z-hero-img{height:50vh}
.z-hero-content{position:static;color:var(--color-text-primary);padding:var(--space-4)}
}


.home-main{display:block}

.home-hero{
position:relative;
isolation:isolate;
min-height:clamp(580px,70vh,760px);
display:flex;
align-items:center;
overflow:hidden;
background:#102531;
}

.home-hero-bg{
position:absolute;
z-index:-2;
inset:0;
width:100%;
height:100%;
max-width:none;
object-fit:cover;
object-position:center;
}

/* Contrast only behind the copy: the poker photo stays clear and vibrant. */
.home-hero::after{
content:"";
position:absolute;
z-index:-1;
inset:0;
background:
linear-gradient(90deg,rgba(9,25,37,.88) 0%,rgba(9,25,37,.74) 31%,rgba(9,25,37,.38) 52%,rgba(9,25,37,0) 76%),
linear-gradient(0deg,rgba(9,25,37,.34) 0%,transparent 38%);
pointer-events:none;
}

.home-hero-content{
position:relative;
max-width:640px;
margin-left:var(--container-pad);
padding:var(--space-4) 0;
display:flex;
flex-direction:column;
align-items:flex-start;
gap:var(--space-3);
color:#fff;
}

.home-hero-eyebrow{
display:inline-flex;
align-items:center;
gap:var(--space-2);
margin-bottom:var(--space-1);
font-size:0.75rem;
font-weight:600;
letter-spacing:.14em;
line-height:1.2;
text-transform:uppercase;
color:#f2d69d;
}

.home-hero-eyebrow::before{
content:"";
width:2rem;
height:1px;
background:currentColor;
opacity:.8;
}

.home-hero-content h1{
max-width:11ch;
margin:0;
font-size:clamp(2.5rem,4.4vw,4.65rem);
line-height:1.04;
letter-spacing:-.035em;
color:#fff8e8;
text-wrap:balance;
}

.home-hero-content p{
max-width:56ch;
margin:0;
font-size:clamp(1rem,1.15vw,1.1rem);
line-height:1.7;
color:rgba(255,248,232,.88);
}

.home-hero-cta{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-2)}

.home-hero-cta .button{
border:1px solid rgba(255,248,232,.35);
background:rgba(255,255,255,.12);
color:#fff8e8;
backdrop-filter:none;
}

.home-hero-cta .button:first-child{
border-color:#d5b168;
background:#d5b168;
color:#152536;
box-shadow:0 10px 28px rgba(0,0,0,.2);
}

.home-hero-cta .button:hover{
text-decoration:none;
background:rgba(255,255,255,.23);
box-shadow:0 8px 24px rgba(0,0,0,.2);
}

.home-hero-cta .button:first-child:hover{background:#edd08c}

.home-about-inner{max-width:720px;margin-inline:auto;text-align:center}

.home-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}
.home-card{display:flex;flex-direction:column;gap:var(--space-2)}

.home-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}

.home-context-inner{max-width:760px;margin-inline:auto;text-align:center}

.home-why h2{text-align:center}
.home-why-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4);text-align:center}

.home-disclaimer{background:var(--color-surface-secondary)}
.home-disclaimer-inner{max-width:700px;margin-inline:auto;text-align:center}

@media (max-width:900px){
.home-cards{grid-template-columns:1fr}
.home-report-grid{grid-template-columns:1fr}
.home-why-grid{grid-template-columns:1fr}
.home-hero{min-height:680px;align-items:flex-end}
.home-hero-bg{object-position:58% center}
.home-hero::after{background:linear-gradient(0deg,rgba(9,25,37,.92) 0%,rgba(9,25,37,.62) 45%,rgba(9,25,37,.08) 82%)}
.home-hero-content{margin:0 var(--container-pad);padding-bottom:var(--space-5)}
}

@media (max-width:600px){
.home-hero{min-height:640px}
.home-hero-content{max-width:100%}
.home-hero-content h1{font-size:clamp(2.35rem,11vw,3.3rem)}
.home-hero-content p{font-size:var(--fs-7);line-height:1.6}
.home-hero-cta .button{width:100%}
}


.zive-prenosy{display:block}

.zp-hero{position:relative}
.zp-hero-img{width:100%;height:auto}
.zp-hero-text{position:absolute;left:5%;bottom:5%;max-width:640px;background:rgba(252,251,247,0.85);padding:1.5rem;border-radius:14px;display:flex;flex-direction:column;gap:1rem}
.zp-badge{background:var(--color-accent-gold);padding:0.4rem 0.8rem;border-radius:14px;font-size:0.9rem}

.zp-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem}

.zp-timeline-feed{max-width:760px;margin-inline:auto;display:flex;flex-direction:column;gap:1rem}
.zp-item{padding:1rem;border-left:3px solid var(--color-accent-gold);background:var(--color-surface-secondary)}
.zp-item.is-latest{background:#fff7e6}

.zp-table-wrap{overflow-x:auto}

.zp-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}

.zp-elim{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}

.zp-final-grid{display:grid;grid-template-columns:60% 40%;gap:2rem;align-items:center}

.zp-quote-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;text-align:center}

.zp-about-text{max-width:720px;margin-inline:auto}

@media(max-width:900px){
.zp-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.zp-final-grid{grid-template-columns:1fr}
.zp-quote-grid{grid-template-columns:1fr}
}

@media(max-width:600px){
.zp-stat-grid{grid-template-columns:1fr}
.zp-cards{grid-template-columns:1fr}
.zp-elim{grid-template-columns:1fr}
.zp-hero-text{position:static;margin:1rem}
}


.turnaje-hero{position:relative;height:65vh;overflow:hidden}
.turnaje-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.turnaje-hero-overlay{position:absolute;inset:0;background:linear-gradient(to right,rgba(242,238,229,0.6),rgba(242,238,229,0));display:flex;align-items:center}
.turnaje-hero-text{max-width:520px;margin-left:clamp(1rem,5vw,4rem);display:flex;flex-direction:column;gap:1rem}
.turnaje-hero-links{display:flex;gap:0.5rem;flex-wrap:wrap}

.turnaje-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem}
.turnaje-cards>*{min-width:0}

.turnaje-legend-wrap{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.turnaje-filters{display:flex;gap:0.5rem;flex-wrap:wrap}

.turnaje-live{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}

.turnaje-archive ul{columns:2;gap:2rem}

.turnaje-series-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center}

.turnaje-format-inner{max-width:720px;margin-inline:auto;display:flex;flex-direction:column;gap:1rem;text-align:center}

.turnaje-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.turnaje-gallery img{border-radius:14px;cursor:pointer}

.turnaje-notice{background:var(--color-danger);color:var(--color-text-on-danger);padding:1.5rem;border-radius:14px}

@media(max-width:1000px){
.turnaje-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.turnaje-live{grid-template-columns:1fr}
.turnaje-series-grid{grid-template-columns:1fr}
}

@media(max-width:600px){
.turnaje-cards{grid-template-columns:1fr}
.turnaje-gallery{grid-template-columns:1fr}
.turnaje-archive ul{columns:1}
.turnaje-hero{height:50vh}
}


.thankyou-wrap{
  display:flex;
  justify-content:center;
  align-items:center;
  min-height:60vh;
}

.thankyou-card{
  background:var(--color-surface-secondary);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-soft);
  border:var(--border-subtle);
  padding:var(--space-5);
  text-align:center;
  max-width:640px;
  width:100%;
  margin-inline:auto;
  display:flex;
  flex-direction:column;
  gap:var(--space-3);
}

.thankyou-card h1{
  margin-bottom:0;
}

.thankyou-actions{
  display:flex;
  justify-content:center;
  gap:var(--space-3);
  flex-wrap:wrap;
  margin-top:var(--space-3);
}

@media (max-width:600px){
  .thankyou-card{
    padding:var(--space-4);
  }
}


/* Small-screen layout ---------------------------------------------------- */
@media (max-width:700px){
  :root{
    --container-pad:1rem;
    --space-5:2rem;
  }

  .section{
    padding-block:2.25rem;
  }

  h1{
    font-size:clamp(2rem,9.5vw,2.7rem);
    line-height:1.1;
  }

  h2{
    font-size:clamp(1.65rem,7vw,2.1rem);
    line-height:1.16;
  }

  h3{
    font-size:clamp(1.28rem,5.8vw,1.55rem);
  }

  p,
  li,
  a,
  button{
    overflow-wrap:break-word;
  }

  .card{
    padding:1.25rem;
  }

  .button{
    min-height:2.875rem;
    text-align:center;
  }

  .d24-ribbon{
    font-size:.82rem;
  }

  .d24-ribbon-inner{
    padding:.42rem 0;
    line-height:1.35;
  }

  .d24-header-inner{
    min-height:64px;
  }

  .d24-logo{
    height:36px;
  }

  .d24-brand-main{
    font-size:.95rem;
  }

  .d24-nav{
    width:min(86vw,320px);
    padding:5.5rem 1.25rem 2rem;
  }

  .d24-nav-list a{
    display:block;
    padding:.35rem 0;
  }

  .d24-footer-bottom,
  .d24-consent-inner{
    flex-direction:column;
    align-items:flex-start;
  }

  .d24-consent-actions{
    width:100%;
    flex-wrap:wrap;
  }

  .d24-consent-actions .button{
    flex:1 1 9rem;
  }

  /* Tables remain readable and scroll inside their own area instead of widening the page. */
  table{
    display:block;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    white-space:nowrap;
  }

  th,
  td{
    padding:.75rem;
  }

  .home-hero{
    min-height:0;
    align-items:stretch;
  }

  .home-hero-bg{
    object-position:60% center;
  }

  .home-hero::after{
    background:linear-gradient(0deg,rgba(9,25,37,.94) 0%,rgba(9,25,37,.72) 58%,rgba(9,25,37,.18) 100%);
  }

  .home-hero-content{
    max-width:none;
    margin:0;
    padding:2.5rem var(--container-pad);
    gap:.95rem;
  }

  .home-hero-content h1{
    max-width:10ch;
    font-size:clamp(2rem,10vw,2.55rem);
  }

  .home-hero-content p{
    max-width:none;
    font-size:.95rem;
    line-height:1.58;
  }

  .home-hero-cta{
    width:100%;
    gap:.75rem;
    margin-top:.25rem;
  }

  .home-hero-cta .button{
    min-height:3rem;
  }

  /* Results are cards on phones, so all values remain visible without scrolling. */
  .home-results-table,
  .home-tournaments-table,
  .home-ranking-table{
    display:block;
    overflow:visible;
    white-space:normal;
    background:transparent;
    border-radius:0;
    box-shadow:none;
  }

  .home-results-table thead,
  .home-tournaments-table thead,
  .home-ranking-table thead{
    display:none;
  }

  .home-results-table tbody,
  .home-tournaments-table tbody,
  .home-ranking-table tbody{
    display:grid;
    gap:.75rem;
  }

  .home-results-table tbody tr,
  .home-results-table tbody tr:nth-child(even),
  .home-tournaments-table tbody tr,
  .home-tournaments-table tbody tr:nth-child(even),
  .home-ranking-table tbody tr,
  .home-ranking-table tbody tr:nth-child(even){
    display:grid;
    gap:.4rem;
    padding:1rem;
    background:var(--color-surface-secondary);
    border:var(--border-subtle);
    border-radius:var(--radius-sm);
    box-shadow:var(--shadow-soft);
  }

  .home-results-table td,
  .home-tournaments-table td,
  .home-ranking-table td{
    display:flex;
    align-items:baseline;
    justify-content:space-between;
    gap:1rem;
    padding:.2rem 0;
    text-align:right;
  }

  .home-results-table td::before,
  .home-tournaments-table td::before,
  .home-ranking-table td::before{
    content:attr(data-label);
    flex:0 0 auto;
    font-size:.78rem;
    font-weight:600;
    letter-spacing:.05em;
    text-align:left;
    text-transform:uppercase;
    color:var(--color-text-secondary);
  }

  .kalendar-hero-image img,
  .kalendar-locations-grid img,
  .vysledky-region-grid img{
    border-radius:var(--radius-sm);
  }

  .kalendar-filter-bar{
    flex-direction:column;
  }

  .kalendar-filter-bar > *{
    width:100%;
    min-width:0;
  }

  .kalendar-tabs{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .kalendar-tabs button{
    width:100%;
  }

  .kontakt-types__grid,
  .z-cards-grid,
  .vysledky-archive-grid{
    grid-template-columns:1fr;
  }

  .vysledky-hero{
    display:block;
    min-height:0;
    background:var(--color-surface-primary);
  }

  .vysledky-hero-img{
    position:relative;
    height:15rem;
    object-fit:cover;
  }

  .vysledky-hero-content{
    max-width:none;
    margin:0;
    padding:1.5rem var(--container-pad) 2rem;
  }

  .vysledky-hero-note{
    color:var(--color-text-secondary);
  }

  .vysledky-cta-buttons{
    width:100%;
    flex-direction:column;
  }

  .vysledky-cta-buttons .button{
    width:100%;
  }

  .z-hero-img{
    height:18rem;
  }

  .z-hero-content{
    padding:1.5rem var(--container-pad) 2rem;
  }

  .zp-hero-img{
    height:15rem;
    object-fit:cover;
  }

  .zp-hero-text{
    margin:0;
    padding:1.5rem var(--container-pad) 2rem;
    border-radius:0;
    background:var(--color-surface-primary);
  }

  .turnaje-hero{
    height:auto;
    min-height:0;
  }

  .turnaje-hero-overlay{
    position:relative;
    min-height:38rem;
    align-items:flex-end;
    padding:2rem var(--container-pad);
    background:linear-gradient(0deg,rgba(10,27,37,.94) 0%,rgba(10,27,37,.7) 62%,rgba(10,27,37,.2) 100%);
  }

  .turnaje-hero-text{
    max-width:none;
    margin:0;
    gap:.9rem;
  }

  .turnaje-hero-text h1{
    color:#fff8e8;
  }

  .turnaje-hero-text p{
    color:rgba(255,248,232,.92);
  }

  .turnaje-hero-links{
    display:grid;
    grid-template-columns:1fr;
  }

  .turnaje-hero-links .button,
  .turnaje-hero-text > .button{
    width:100%;
  }

  .turnaje-cards{
    grid-template-columns:1fr;
  }

  .turnaje-notice{
    padding:1.25rem;
  }
}
