/* Shared visual layer for public listing, archive, and detail pages. */
:root { --content-ink:#10283f; --content-muted:#5d6d7d; --content-paper:#f5f7f9; --content-line:rgba(16,40,63,.14); --content-gold:#dca512; }
.page-hero { background:var(--content-ink) !important; overflow:hidden; padding:0 !important; position:relative; }
.page-hero::before { background-image:url("data:image/svg+xml,%3Csvg width='1440' height='420' viewBox='0 0 1440 420' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1040-70a255 255 0 0 1 0 510' fill='none' stroke='%23ffffff' stroke-opacity='.055' stroke-width='2'/%3E%3Cpath d='M-80 370C260 260 505 430 800 305s455-145 720-80' fill='none' stroke='%23ffffff' stroke-opacity='.045' stroke-width='2' stroke-dasharray='12 18'/%3E%3Ccircle cx='800' cy='305' r='5' fill='%23f4c025' fill-opacity='.18'/%3E%3C/svg%3E"); background-position:center; background-repeat:no-repeat; background-size:cover; content:""; inset:0; pointer-events:none; position:absolute; }
.page-hero__inner { align-items:flex-start; display:flex; flex-direction:column; justify-content:flex-end; min-height:clamp(17rem,24vw,21rem); padding-bottom:2.5rem !important; padding-top:8.25rem !important; position:relative; z-index:1; }
.page-eyebrow { display:none !important; }
.page-hero-title { font-size:clamp(2.75rem,5.25vw,4.75rem) !important; letter-spacing:-.04em !important; line-height:.96 !important; margin-bottom:.7rem !important; max-width:18ch; text-wrap:balance; }
.page-hero .hero-title { -webkit-text-stroke:0 !important; text-shadow:none !important; text-transform:none !important; }
.page-hero-copy { color:rgba(255,255,255,.78) !important; font-size:clamp(.98rem,1.5vw,1.15rem) !important; font-weight:500 !important; line-height:1.55 !important; max-width:46ch; text-wrap:pretty; }
.page-content { background:var(--content-paper) !important; background-image:none !important; padding:0 !important; position:relative; }
.page-content::before { background:linear-gradient(90deg, rgba(244,192,37,.65), rgba(244,192,37,0)); content:""; height:3px; left:0; position:absolute; right:0; top:0; }
.page-content > .max-w-7xl { padding-bottom:clamp(4rem,8vw,7rem) !important; padding-top:clamp(2.25rem,4vw,3.25rem) !important; }
.page-grid { gap:1.35rem !important; }
.page-grid > * { border-radius:14px !important; }
.page-grid .comic-panel { background:#fff !important; border:1px solid var(--content-line) !important; box-shadow:none !important; color:var(--content-ink) !important; }
.page-grid .comic-panel [class*="border-black"] { border-color:var(--content-line) !important; }
.page-grid .comic-panel [class*="shadow-"] { box-shadow:none !important; }
.page-grid .comic-panel [class*="bg-brand-navy"] { background:var(--content-ink) !important; }
.page-grid .comic-panel .btn-comic { background:var(--content-ink) !important; border:0 !important; border-radius:8px !important; box-shadow:none !important; font-size:.875rem !important; letter-spacing:.02em !important; text-transform:none !important; }
.page-grid .comic-panel .type-badge { border-radius:5px !important; font-size:.68rem !important; letter-spacing:.06em; }
.page-grid article, .page-grid > a, .page-grid > div { transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
@media (hover:hover) and (pointer:fine) { .page-grid article:hover, .page-grid > a:hover, .page-grid > div:hover { box-shadow:0 8px 8px rgba(16,40,63,.06); transform:translateY(-3px); } }
.page-content h2 { color:var(--content-ink); letter-spacing:-.025em; text-wrap:balance; }
.page-content p { color:var(--content-muted); }
.page-content a:focus-visible, .page-hero a:focus-visible { outline:3px solid var(--content-gold); outline-offset:4px; }
body > footer { border-top:1px solid rgba(255,255,255,.1); }
/* Landing-page header shell shared by every inner HTML page. */
#siteHeader { background-color:transparent !important; border-color:transparent !important; -webkit-backdrop-filter:none !important; backdrop-filter:none !important; }
#siteHeader.scrolled { background-color:rgba(10,28,48,.78) !important; border-color:rgba(255,255,255,.12) !important; -webkit-backdrop-filter:blur(18px) saturate(1.5) !important; backdrop-filter:blur(18px) saturate(1.5) !important; }
#siteHeader nav { height:6.75rem !important; }
#siteHeader nav > a > img { height:6.5rem !important; transition:width .35s ease, height .35s ease; width:6.5rem !important; }
#siteHeader.scrolled nav > a > img { height:5.5rem !important; width:5.5rem !important; }
#siteHeader .nav-link.is-current { color:#f4c025; }
#siteHeader .nav-link.is-current::after { transform:scaleX(1); }
#authNavActions a, #authNavActions button { border-radius:9999px !important; box-shadow:none !important; letter-spacing:.05em !important; padding:.625rem 1.25rem !important; }
#mobileMenu #authNavMobile a, #mobileMenu #authNavMobile button { border-radius:9999px !important; box-shadow:none !important; }
/* Events page: use the landing-page shell with a deliberately compact page intro. */
.events-page #siteHeader { background-color:transparent !important; border-color:transparent !important; -webkit-backdrop-filter:none !important; backdrop-filter:none !important; }
.events-page #siteHeader.scrolled { background-color:rgba(10,28,48,.78) !important; border-color:rgba(255,255,255,.12) !important; -webkit-backdrop-filter:blur(18px) saturate(1.5) !important; backdrop-filter:blur(18px) saturate(1.5) !important; }
.events-page #siteHeader nav { height:6.75rem !important; }
.events-page #siteHeader .brand-logo { height:6.5rem; transition:width .35s ease, height .35s ease; width:6.5rem; }
.events-page #siteHeader.scrolled .brand-logo { height:5.5rem; width:5.5rem; }
.events-page #siteHeader .nav-link[href="../akce/index.html"] { color:#f4c025; }
.events-page #siteHeader .nav-link[href="../akce/index.html"]::after { transform:scaleX(1); }
.events-page #authNavActions a, .events-page #authNavActions button { border-radius:9999px !important; box-shadow:none !important; letter-spacing:.05em !important; padding:.625rem 1.25rem !important; transition:background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease !important; }
.events-page #authNavActions a[class*="bg-white"], .events-page #authNavActions button[class*="bg-white"] { -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); background:rgba(255,255,255,.1) !important; border:1px solid rgba(255,255,255,.25) !important; color:#fff !important; }
.events-page #authNavActions a[class*="bg-brand-gold"] { background:#f4c025 !important; color:var(--content-ink) !important; }
.events-page #mobileMenu #authNavMobile a, .events-page #mobileMenu #authNavMobile button { border-radius:9999px !important; box-shadow:none !important; }
.events-page-hero { padding:0 !important; }
.events-page-hero::before { background-image:url("data:image/svg+xml,%3Csvg width='1440' height='420' viewBox='0 0 1440 420' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1040-70a255 255 0 0 1 0 510' fill='none' stroke='%23ffffff' stroke-opacity='.055' stroke-width='2'/%3E%3Cpath d='M-80 370C260 260 505 430 800 305s455-145 720-80' fill='none' stroke='%23ffffff' stroke-opacity='.045' stroke-width='2' stroke-dasharray='12 18'/%3E%3Ccircle cx='800' cy='305' r='5' fill='%23f4c025' fill-opacity='.18'/%3E%3C/svg%3E") !important; background-position:center; background-repeat:no-repeat; background-size:cover; }
.events-page-hero .page-hero__inner { align-items:flex-start; display:flex; flex-direction:column; justify-content:flex-end; min-height:clamp(17rem,24vw,21rem); padding-bottom:2.5rem !important; padding-top:8.25rem !important; }
.events-page-hero .page-eyebrow { display:none; }
.events-page-hero .page-hero-title { font-size:clamp(2.75rem,5.25vw,4.75rem) !important; margin-bottom:.7rem !important; max-width:none; }
.events-page-hero .page-hero-copy { font-size:clamp(.98rem,1.5vw,1.15rem) !important; max-width:46ch; }
.events-page .page-content { background-image:none !important; padding-top:0 !important; }
.events-page .page-content > .max-w-7xl { padding-top:clamp(2.25rem,4vw,3.25rem) !important; }
.events-page .events-list { display:grid !important; gap:.85rem !important; grid-template-columns:minmax(0,1fr) !important; }
.events-page #eventsGrid .event-card { align-items:center; display:grid; gap:1.5rem; grid-template-columns:minmax(18rem,1.1fr) minmax(11rem,.55fr) minmax(18rem,1fr) auto; min-height:0; padding:1.5rem 1.75rem; }
.events-page #eventsGrid .event-card__header { margin:0; }
.events-page #eventsGrid .event-card__location { border:0; margin:0; padding:0; }
.events-page #eventsGrid .event-card__description { border-left:1px solid var(--content-line); margin:0; padding-left:1.5rem; }
.events-page #eventsGrid .event-card__action { align-items:center; border:1px solid var(--content-line); border-radius:8px; display:inline-flex; flex:none; gap:.55rem; justify-content:center; margin:0; padding:.75rem 1rem; white-space:nowrap; }
.events-page #eventsGrid .event-card__action:hover { background:var(--content-ink); border-color:var(--content-ink); color:#fff; }
@media (hover:hover) and (pointer:fine) { .events-page #authNavActions a:hover, .events-page #authNavActions button:hover { transform:translateY(-1px) !important; } }
@media (max-width:1050px) { .events-page #eventsGrid .event-card { grid-template-columns:minmax(16rem,1fr) minmax(16rem,1fr); } .events-page #eventsGrid .event-card__location { align-self:end; grid-column:1; padding-left:4.75rem; } .events-page #eventsGrid .event-card__description { align-self:stretch; grid-column:2; grid-row:1 / span 2; } .events-page #eventsGrid .event-card__action { grid-column:2; justify-self:start; } }
.events-content-header { align-items:end; display:flex; gap:1.5rem; justify-content:space-between; margin-bottom:2.25rem; }
.events-content-header__eyebrow { color:var(--content-gold) !important; font-size:.7rem !important; font-weight:800; letter-spacing:.12em; margin:0 0 .55rem; text-transform:uppercase; }
.events-content-header h2 { font-size:clamp(2rem,4vw,3.15rem); font-weight:850; line-height:1; margin:0; }
.events-archive-link { align-items:center; color:var(--content-ink); display:inline-flex; flex:none; font-size:.82rem; font-weight:800; gap:.65rem; letter-spacing:.02em; padding:.45rem 0; text-decoration:none; }
.events-archive-link span:last-child { align-items:center; background:var(--content-ink); border-radius:50%; color:#fff; display:inline-flex; font-size:1rem; height:1.75rem; justify-content:center; transition:transform .2s ease, background .2s ease; width:1.75rem; }
.events-archive-link:hover span:last-child { background:var(--content-gold); color:var(--content-ink); transform:translateX(3px); }
#eventsGrid .event-card { background:#fff; border:1px solid var(--content-line); border-radius:14px; color:var(--content-ink); display:flex; flex-direction:column; min-height:20rem; padding:1.5rem; }
#eventsGrid .event-card__header { align-items:start; display:grid; gap:1rem; grid-template-columns:3.5rem minmax(0,1fr); }
#eventsGrid .event-card__date { align-items:center; background:var(--content-ink); border-radius:9px; color:#fff; display:flex; flex-direction:column; justify-content:center; min-height:3.6rem; padding:.45rem; text-align:center; }
#eventsGrid .event-card__date strong { font-size:1.5rem; font-weight:850; letter-spacing:-.08em; line-height:1; }
#eventsGrid .event-card__date span { color:var(--content-gold); font-size:.65rem; font-weight:800; letter-spacing:.07em; margin-top:.25rem; text-transform:uppercase; }
#eventsGrid .event-card__meta { color:var(--content-muted); font-size:.67rem; font-weight:800; letter-spacing:.08em; margin:0 0 .45rem; text-transform:uppercase; }
#eventsGrid .event-card h3 { font-size:clamp(1.3rem,2vw,1.7rem); font-weight:850; letter-spacing:-.035em; line-height:1.08; margin:0; text-wrap:balance; }
#eventsGrid .event-card__location { border-bottom:1px solid var(--content-line); color:var(--content-ink); font-size:.78rem; font-weight:750; letter-spacing:.015em; margin:1.5rem 0 1.1rem; padding-bottom:1rem; }
#eventsGrid .event-card__description { color:var(--content-muted); font-size:.94rem; line-height:1.6; margin:0 0 1.5rem; }
#eventsGrid .event-card__action { align-items:center; border-top:1px solid var(--content-line); color:var(--content-ink); display:flex; font-size:.84rem; font-weight:800; justify-content:space-between; margin-top:auto; padding-top:1rem; text-decoration:none; }
#eventsGrid .event-card__action span { color:var(--content-gold); font-size:1.35rem; line-height:1; transition:transform .2s ease; }
#eventsGrid .event-card:hover .event-card__action span { transform:translateX(4px); }
/* Archive overview: compact filters and calm editorial project cards. */
.archive-filters { align-items:center; background:#fff; border:1px solid var(--content-line); border-radius:9999px; box-shadow:0 8px 24px -22px rgba(16,40,63,.55); display:inline-flex; gap:.25rem; margin-bottom:2.5rem; max-width:100%; overflow-x:auto; padding:.35rem; scrollbar-width:none; }
.archive-filters::-webkit-scrollbar { display:none; }
.archive-filters .filter-btn { background:transparent !important; border:0 !important; border-radius:9999px !important; box-shadow:none !important; color:var(--content-muted) !important; flex:none; font-size:.78rem !important; letter-spacing:.025em !important; min-width:0; padding:.72rem 1.05rem !important; text-transform:none !important; }
.archive-filters .filter-btn:hover { background:#f3f5f7 !important; box-shadow:none !important; color:var(--content-ink) !important; transform:none !important; }
.archive-filters .filter-btn.active { background:var(--content-ink) !important; box-shadow:0 5px 12px -9px rgba(16,40,63,.9) !important; color:#fff !important; }
#archiveGrid { gap:1rem !important; grid-template-columns:repeat(auto-fill,minmax(min(100%,22rem),1fr)) !important; }
#archiveGrid .archive-card { background:#fff; border:1px solid var(--content-line); border-radius:12px; color:var(--content-ink); cursor:pointer; display:flex; flex-direction:column; min-height:24rem; padding:1.5rem; transition:border-color .22s ease, transform .22s ease; }
#archiveGrid .archive-card:hover { border-color:rgba(16,40,63,.34); transform:translateY(-2px); }
#archiveGrid .type-badge { align-items:center; align-self:flex-start; background:transparent !important; border:0 !important; color:var(--content-muted) !important; display:flex; font-size:.67rem !important; font-weight:800; gap:.5rem; letter-spacing:.08em; margin-bottom:1.25rem; padding:0 !important; text-transform:uppercase; width:auto !important; }
#archiveGrid .type-badge::before { background:var(--content-gold); border-radius:50%; content:""; height:.45rem; width:.45rem; }
#archiveGrid .archive-card__date { color:var(--content-muted); font-size:.75rem; font-variant-numeric:tabular-nums; font-weight:650; letter-spacing:.03em; margin:0 0 .6rem; }
#archiveGrid .archive-card__title { color:var(--content-ink); font-size:clamp(1.45rem,2vw,1.8rem); font-weight:800; letter-spacing:-.035em; line-height:1.12; margin:0 0 1.15rem; text-transform:none !important; text-wrap:balance; }
#archiveGrid .archive-card__summary { color:var(--content-muted); flex-grow:1; font-size:.92rem; font-style:normal !important; font-weight:450; line-height:1.65; margin:0 0 1.5rem; }
#archiveGrid .archive-card__metric { background:#f3f5f7; border-left:3px solid var(--content-gold); border-radius:0 8px 8px 0; margin:.15rem 0 1.4rem; padding:1rem 1.1rem; }
#archiveGrid .archive-card__metric span, #archiveGrid .archive-card__price span { color:var(--content-muted); display:block; font-size:.66rem; font-weight:750; letter-spacing:.075em; margin-bottom:.3rem; text-transform:uppercase; }
#archiveGrid .archive-card__metric strong, #archiveGrid .archive-card__price strong { color:var(--content-ink); font-size:1.55rem; font-variant-numeric:tabular-nums; font-weight:800; letter-spacing:-.025em; }
#archiveGrid .archive-card__event-head { align-items:start; display:grid; gap:1rem; grid-template-columns:3.5rem minmax(0,1fr); }
#archiveGrid .archive-card__calendar { align-items:center; background:var(--content-ink); border-radius:8px; color:#fff; display:flex; flex-direction:column; justify-content:center; min-height:3.6rem; padding:.45rem; text-align:center; }
#archiveGrid .archive-card__calendar .text-xs { color:var(--content-gold); font-size:.62rem; font-weight:800; letter-spacing:.06em; }
#archiveGrid .archive-card__location { border-bottom:1px solid var(--content-line); color:var(--content-ink); font-size:.78rem; font-weight:700; margin:.3rem 0 1.1rem; padding-bottom:1rem; }
#archiveGrid .archive-card__media { aspect-ratio:16/9; border-radius:8px; margin-bottom:1.25rem; overflow:hidden; position:relative; }
#archiveGrid .archive-card__media img { height:100%; object-fit:cover; width:100%; }
#archiveGrid .archive-card__media span { background:rgba(10,28,48,.88); border-radius:5px; color:#fff; font-size:.63rem; font-weight:750; letter-spacing:.06em; padding:.38rem .55rem; position:absolute; right:.65rem; text-transform:uppercase; top:.65rem; }
#archiveGrid .archive-card__price { margin:0 0 1.5rem; }
#archiveGrid .archive-card__action { align-items:center; background:var(--content-ink); border:1px solid var(--content-ink); border-radius:8px; color:#fff !important; display:flex; font-size:.82rem; font-weight:750; justify-content:space-between; margin-top:auto; padding:.85rem 1rem; text-decoration:none; }
#archiveGrid .archive-card__action span:last-child { color:var(--content-gold); font-size:1.15rem; transition:transform .2s ease; }
#archiveGrid .archive-card:hover .archive-card__action span:last-child { transform:translateX(4px); }
@media (max-width:640px) { #siteHeader nav { height:5.5rem !important; padding-left:1rem !important; padding-right:1rem !important; } #siteHeader nav > a > img, #siteHeader.scrolled nav > a > img { height:4.75rem !important; width:4.75rem !important; } .page-hero__inner { min-height:13rem; padding-bottom:1.75rem !important; padding-top:6.25rem !important; } .page-hero-title { font-size:clamp(2.35rem,11vw,3.1rem) !important; } .page-hero-copy { font-size:.95rem !important; line-height:1.45 !important; } .page-grid { gap:1rem !important; } .events-content-header { align-items:start; flex-direction:column; gap:1rem; margin-bottom:1.5rem; } .events-page #eventsGrid .event-card { display:flex; min-height:0; padding:1.25rem; } .events-page #eventsGrid .event-card__location { padding-left:0; } .events-page #eventsGrid .event-card__description { border-left:0; border-top:1px solid var(--content-line); padding-left:0; padding-top:1rem; } .events-page #eventsGrid .event-card__action { align-self:stretch; } .archive-filters { display:flex; width:100%; } .archive-filters .filter-btn { font-size:.68rem !important; padding:.65rem .7rem !important; } #archiveGrid .archive-card { min-height:22rem; padding:1.35rem; } }
@media (prefers-reduced-motion:reduce) { .page-grid article, .page-grid > a, .page-grid > div { transition:none; } }
