/* 2027 edition — shared, responsive enhancements */
:root{--heat-cream:#f4ebd7;--heat-gold:#dcc17c;--heat-line:#36332b}
html{scroll-behavior:smooth;scroll-padding-top:110px}body{color:var(--heat-cream)}
:focus-visible{outline:3px solid #f0ce75!important;outline-offset:4px}
.edition-label{color:var(--heat-gold);font-size:12px;letter-spacing:.19em;text-transform:uppercase;font-weight:700}
.edition-hero{padding:76px 0 56px;background:radial-gradient(ellipse at 85% 10%,#4b381c55,transparent 60%)}
.edition-hero h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(38px,5.8vw,74px);line-height:1.08;letter-spacing:-.025em;max-width:900px;margin:18px 0 24px}
.edition-hero .lead{max-width:740px;color:#c1bdaf;font-size:18px;line-height:1.8}
.edition-meta{display:flex;gap:12px 28px;flex-wrap:wrap;border-top:1px solid var(--heat-line);padding-top:24px;margin-top:32px;font-size:14px}
.edition-home{display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:center}.edition-home img{width:100%;height:440px;object-fit:cover;border-radius:140px 140px 14px 14px;filter:brightness(.8)}
.edition-actions{display:flex;flex-wrap:wrap;gap:12px;margin:25px 0}
.edition-notice{border:1px solid #7c663a;background:#221d13;padding:23px 26px;border-radius:14px;color:#e8dcbf;line-height:1.7;margin:24px 0}.edition-notice p{margin:5px 0}.edition-notice h2,.edition-notice h3{margin:0 0 8px;font-size:20px}
.edition-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.edition-card{border:1px solid var(--heat-line);background:#11120f;border-radius:17px;padding:26px}.edition-card h3{font-size:22px;margin:12px 0}.edition-card p{color:#b9b8ac;line-height:1.7}
.sale-timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:36px 0 18px;border:1px solid var(--heat-line);border-radius:16px;overflow:hidden}.sale-step{padding:24px;background:#11120f;border-right:1px solid var(--heat-line)}.sale-step:last-child{border:0}.sale-step.active{background:#292414;box-shadow:inset 0 3px var(--heat-gold)}.sale-step h2{font-size:22px;margin:8px 0}.sale-step p{font-size:13px;line-height:1.7;color:#bebbaf;margin:4px 0}.sale-step small{color:var(--heat-gold)}
.shop-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;align-items:start}.shop-heading{font-size:28px;margin:0 0 18px}.day-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:24px}.day-picker button{background:#141511;color:#eee5d0;border:1px solid #454335;border-radius:12px;padding:17px 8px;font:inherit;cursor:pointer}.day-picker button[aria-pressed=true]{background:var(--heat-gold);border-color:var(--heat-gold);color:#15150f}.day-picker small{display:block;font-size:12px;margin-top:5px}
.pass-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.pass-card{display:flex;flex-direction:column;border:1px solid var(--heat-line);border-radius:14px;padding:22px;background:#12130f}.pass-card.vip{border-color:#91733b;background:linear-gradient(140deg,#2a2417,#12130f)}.pass-card h3{font-size:20px;margin:9px 0 12px;line-height:1.4}.pass-card p{font-size:14px;line-height:1.7;color:#bdbbae;margin:0 0 16px}.pass-card .pass-price{font-size:29px;font-weight:650;margin-top:auto;color:#f1e5ca}.pass-card .pass-price small{font-size:12px;font-weight:400;color:#b7b3a6}.pass-card .pass-saving{font-size:12px;color:var(--heat-gold);min-height:20px;margin:7px 0 16px}.pass-card button{width:100%;margin-top:14px}.pass-card .stock{font-size:12px;color:#bdbbae}
.shop-button{border:1px solid #dcc17c;background:#dcc17c;border-radius:9px;color:#15150f;font:600 14px/1.5 inherit;padding:12px 16px;cursor:pointer;min-height:46px}.shop-button:hover{background:#f0d796}.shop-button:disabled{opacity:.5;cursor:not-allowed}.shop-button.secondary{background:transparent;color:#e7dcbf;border-color:#595440}
.cart-panel{position:sticky;top:105px;background:#191a14;border:1px solid #57513a;border-radius:17px;padding:25px}.cart-panel h2{font-size:25px;margin:0 0 8px}.cart-empty{color:#bdbbae;font-size:14px;line-height:1.7;padding:16px 0}.cart-line{border-bottom:1px solid #393a2e;padding:18px 0}.cart-line strong{font-size:14px;display:block}.cart-line small{display:block;color:#b8b4a8;margin:6px 0}.quantity-row{display:flex;align-items:center;gap:14px;margin-top:12px}.quantity-row button{background:#292b20;border:1px solid #67614a;color:#f2e3c5;border-radius:6px;width:34px;height:34px;cursor:pointer}.quantity-row .line-total{margin-left:auto;font-size:14px;white-space:nowrap}.cart-total{display:flex;justify-content:space-between;margin:24px 0;font-size:22px;font-weight:700}.cart-panel label{display:block;font-size:13px;line-height:1.6;margin:15px 0}.cart-panel input[type=email]{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid #625d48;background:#0f100c;color:#fff;border-radius:8px;font-size:16px}.cart-panel .consent{display:flex;align-items:flex-start;gap:10px}.cart-panel input[type=checkbox]{flex:0 0 18px;width:18px;height:18px;margin-top:3px;accent-color:#dcc17c}.cart-panel .shop-button{width:100%}.shop-status{font-size:14px;line-height:1.6;color:#e3c47f;margin-top:16px}.shop-status.error{color:#ffb7a7}.cart-footnote{font-size:12px;color:#b6b2a4;line-height:1.6}.price-table-wrap{overflow-x:auto;border:1px solid var(--heat-line);border-radius:12px;margin-top:20px}.price-table{width:100%;border-collapse:collapse;min-width:590px;font-size:14px}.price-table th,.price-table td{padding:15px;text-align:left;border-bottom:1px solid var(--heat-line)}.price-table th{background:#201f17;color:#e3cb92}.price-table td{color:#d0cbbd}.edition-faq details{padding:20px 0;border-bottom:1px solid var(--heat-line)}.edition-faq summary{font-size:18px;cursor:pointer}.edition-faq p{max-width:800px;color:#bdbbae;line-height:1.8}.archive-banner{margin:0;padding:16px 24px;background:#292414;border-bottom:1px solid #6b582e;text-align:center}.edition-section{padding:45px 0}.nav .brand-sub{font-size:10px}.edition-status{color:#dcc17c;font-size:13px}
@media(max-width:1000px){.shop-layout{grid-template-columns:minmax(0,1fr) 300px;gap:18px}.pass-grid{grid-template-columns:1fr}.edition-home{gap:24px}.edition-home img{height:380px}.edition-grid{grid-template-columns:1fr}}
@media(max-width:720px){.edition-hero{padding:38px 0 28px}.edition-home{grid-template-columns:1fr}.edition-home img{height:250px;border-radius:70px 70px 12px 12px}.sale-timeline{grid-template-columns:1fr}.sale-step{border-right:0;border-bottom:1px solid var(--heat-line);padding:18px}.sale-step:last-child{border:0}.shop-layout{grid-template-columns:1fr}.cart-panel{position:static}.edition-section{padding:28px 0}.edition-notice{padding:18px}.day-picker button{font-size:14px}.edition-meta{gap:10px}.pass-grid{grid-template-columns:1fr}.edition-hero h1{font-size:42px}.edition-hero .lead{font-size:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.edition-hero h1,.edition-hero h1 span{font-family:Georgia,serif;text-transform:none;font-weight:400;letter-spacing:-.025em}
.shop-heading,.cart-panel h2,.pass-card h3,.sale-step h2,.edition-card h3{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;text-transform:none;letter-spacing:normal}
.js .reveal-section{opacity:1;transform:none}
.mobile-cart-link{display:none}
.edition-disciplines{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:30px}.edition-disciplines .edition-card{padding:20px}.edition-disciplines img{object-fit:contain;border-radius:10px}.edition-disciplines h3{font-size:18px}.edition-disciplines p{font-size:14px}.edition-disciplines a{color:var(--heat-gold);font-size:13px}
@media(max-width:1000px){.edition-disciplines{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.edition-disciplines{grid-template-columns:1fr 1fr}.edition-disciplines .edition-card{padding:16px}}
/* Preserve the original introduction and let the browser own vertical scrolling. */
html{overflow-x:clip;overflow-y:auto;touch-action:auto}
body.page-results{overflow:visible;min-height:100vh;touch-action:auto}
.page-results main{overflow-x:clip;overflow-y:visible}
.nav-right{overscroll-behavior-y:contain}
.nav-toggle{position:relative;z-index:1401}
.ticket-day-label{font-size:13px;font-weight:600;color:#e7ce8d;margin:0 0 13px}.selection-hint{font-size:13px;color:#bdb8aa;margin-top:-8px}.daily-starts{margin:18px 0 25px;border-bottom:1px solid #433b29;padding:0 0 18px}.daily-starts summary{cursor:pointer;color:#dcc17c;font-size:14px}.daily-starts h3{font:600 16px/1.5 inherit;text-transform:none}.daily-starts p{font-size:13px;color:#bdb8aa}.session-start-list{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 15px}.session-start-list li{display:flex;gap:12px;font-size:13px;border-bottom:1px solid #29291f;padding:7px 0}.session-start-list time{font-weight:700;color:#e7ce8d;min-width:42px}@media(max-width:440px){.session-start-list{grid-template-columns:1fr}}
.masters-placeholder-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin:28px 0}.master-placeholder{overflow:hidden;border:1px solid #433b29;border-radius:16px;background:#14140f}.master-portrait{position:relative}.master-portrait img{width:100%;height:auto;aspect-ratio:480/540;object-fit:cover}.master-number{position:absolute;bottom:16px;left:20px;color:#dcc17c;font-size:13px;letter-spacing:.15em}.master-caption{padding:18px 20px}.master-caption h3{font-family:inherit;font-size:18px;text-transform:none;letter-spacing:0;margin:0}.master-caption p{color:#dcc17c;font-size:14px;margin:5px 0 0}@media(max-width:900px){.masters-placeholder-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:400px){.masters-placeholder-grid{gap:12px}.master-caption{padding:14px 10px}.master-caption h3{font-size:15px}}
.page-ticket-shop .edition-hero{padding:35px 0 8px;background:none}
.page-ticket-shop .edition-hero h1{font-size:clamp(32px,3.7vw,48px);max-width:none;margin:12px 0}
.page-ticket-shop .edition-hero .lead{font-size:16px;line-height:1.6;margin:0;max-width:none}
.page-ticket-shop .edition-meta{margin-top:18px;padding-top:14px;font-size:13px}
.page-ticket-shop #jegyvasarlas{padding-top:25px}
.current-sale{display:flex;align-items:center;justify-content:space-between;gap:20px;border-left:3px solid #dcc17c;background:#201d13;border-radius:0 10px 10px 0;padding:17px 22px;margin-top:22px}
.current-sale strong{font-size:17px;color:#f1dfb1}.current-sale p{font-size:13px;line-height:1.65;margin:4px 0 0;color:#c9c3b4}.current-sale .early-booking-note{color:#e4d2a5}.current-sale a{font-size:13px;text-decoration:underline;text-underline-offset:4px;white-space:nowrap;color:#dcc17c}.current-sale a:hover{color:#fff}
.pricing-explainer{border-top:1px solid #48402d;border-bottom:1px solid #48402d;padding:20px 0}.pricing-explainer summary{cursor:pointer;font-size:18px;font-weight:600;list-style-position:inside}.pricing-explainer>p{color:#c2bbab;max-width:850px;font-size:14px;line-height:1.8;margin:20px 0}.pricing-explainer .edition-notice h2{font-family:inherit;text-transform:none;font-size:18px}.pricing-explainer .edition-notice{font-size:14px}.sale-period-list{margin:20px 0}.sale-period-list>div{display:grid;grid-template-columns:250px 1fr;gap:12px;padding:14px 0;border-bottom:1px solid #333126}.sale-period-list dt{font-weight:600}.sale-period-list dd{margin:0;color:#bdb8aa;font-size:14px}.sale-period-list small{display:block;font-size:12px;font-weight:400;color:#dcc17c}
@media(max-width:720px){.page-ticket-shop .edition-hero{padding-top:23px}.current-sale{display:block;padding:15px 17px}.current-sale a{display:inline-block;margin-top:10px}.page-ticket-shop .edition-meta{gap:5px}.sale-period-list>div{grid-template-columns:1fr;gap:4px}.page-ticket-shop #jegyvasarlas{padding-top:20px}}
.restored-hero .badge-soft,.restored-hero h1,.restored-hero .lead,.restored-hero .hero-cta{animation:none!important;opacity:1!important}
.restored-hero .hero-inner{padding-top:24px}
@media(min-width:901px){.nav .menu{gap:10px 17px}.nav .menu a{font-size:12px}.nav .brand{flex-shrink:0}.nav .brand-logo{max-width:60px}.nav .brand-title{font-size:18px}}
[hidden]{display:none!important}
@media(max-width:720px){body:has(.mobile-cart-link:not([hidden])){padding-bottom:80px}.mobile-cart-link{display:flex;position:fixed;bottom:14px;left:15px;right:15px;z-index:45;justify-content:space-between;align-items:center;padding:16px 20px;border-radius:12px;background:#dcc17c;color:#111;box-shadow:0 5px 30px #0009;font-weight:700;text-decoration:none}}
