:root{--ink:#18213a;--ink-soft:#4c5469;--paper:#fffaf1;--white:#fff;--red:#e83b2f;--red-dark:#b72422;--yellow:#f4c744;--blue:#1967d2;--mint:#b8dfcb;--line:#ded9cf;--shadow:0 18px 46px #18213a17;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{color:var(--ink);background:var(--paper);margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6}a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:.09em}a:hover{color:var(--red-dark)}img,svg{max-width:100%;display:block}button,summary,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--blue);outline-offset:4px;border-radius:3px}.shell{width:min(1120px,100% - 40px);margin-inline:auto}.skip-link{z-index:1000;color:var(--white);background:var(--ink);padding:10px 16px;position:fixed;top:8px;left:8px;transform:translateY(-140%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:40;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffaf1f0;border-bottom:1px solid #18213a17;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:24px;min-height:76px;display:flex}.brand{color:var(--ink);align-items:center;gap:12px;text-decoration:none;display:inline-flex}.brand-mark{width:43px;height:43px;color:var(--white);background:var(--red);border-radius:50% 50% 12%;place-items:center;font-size:1.35rem;font-weight:950;display:grid;transform:rotate(-7deg)}.brand strong,.brand small{line-height:1.08;display:block}.brand strong{font-size:1.08rem}.brand small{color:var(--ink-soft);letter-spacing:.12em;text-transform:uppercase;margin-top:4px;font-size:.72rem;font-weight:750}.desktop-nav{align-items:center;gap:28px;display:flex}.desktop-nav a{font-size:.93rem;font-weight:750;text-decoration:none}.lang-switcher{align-items:center;gap:14px;display:flex}.lang-switcher a{opacity:.72;font-size:.85rem;font-weight:650;text-decoration:none}.lang-switcher a:hover,.lang-switcher a:focus-visible{opacity:1}.lang-switcher .lang-short{display:none}.mobile-menu{display:none;position:relative}.mobile-menu summary{border:1px solid var(--ink);cursor:pointer;border-radius:999px;min-height:44px;padding:9px 15px;font-weight:750}.mobile-menu nav{border:1px solid var(--line);background:var(--white);width:min(270px,100vw - 40px);box-shadow:var(--shadow);border-radius:14px;padding:12px;position:absolute;top:53px;right:0}.mobile-menu nav a{padding:11px 12px;font-weight:750;text-decoration:none;display:block}.hero{isolation:isolate;padding:clamp(64px,10vw,120px) 0 76px;position:relative;overflow:hidden}.hero:before,.hero:after{content:"";z-index:-1;border-radius:50%;position:absolute}.hero:before{border:74px solid var(--blue);opacity:.78;width:360px;height:360px;top:-130px;right:-80px}.hero:after{background:var(--mint);border-radius:24% 76% 45% 55%;width:210px;height:210px;bottom:-92px;left:-74px;transform:rotate(20deg)}.hero-grid{grid-template-columns:minmax(0,1.5fr) minmax(300px,.75fr);align-items:center;gap:clamp(40px,7vw,90px);display:grid}.eyebrow{color:var(--red-dark);letter-spacing:.13em;text-transform:uppercase;margin:0 0 15px;font-size:.79rem;font-weight:850}h1,h2,h3{text-wrap:balance;line-height:1.08}h1{letter-spacing:-.055em;max-width:840px;margin:0;font-size:clamp(2.7rem,7vw,6.4rem)}h1 .accent{color:var(--red)}.hero-lead{max-width:710px;color:var(--ink-soft);margin:24px 0 0;font-size:clamp(1.05rem,2vw,1.3rem)}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.button{border:2px solid var(--ink);min-height:48px;color:var(--white);background:var(--ink);border-radius:999px;justify-content:center;align-items:center;padding:12px 20px;font-weight:800;text-decoration:none;display:inline-flex}.button:hover{color:var(--white);background:var(--red-dark);border-color:var(--red-dark)}.button--ghost{color:var(--ink);background:0 0}.button--ghost:hover{color:var(--white)}.date-poster{color:var(--white);background:var(--red);box-shadow:16px 18px 0 var(--ink);border-radius:24px;padding:28px;position:relative;transform:rotate(2deg)}.date-poster span,.date-poster strong,.date-poster small{display:block}.date-poster span{letter-spacing:.14em;text-transform:uppercase;font-size:.82rem;font-weight:850}.date-poster strong{letter-spacing:-.075em;white-space:nowrap;margin-top:34px;font-size:clamp(4.4rem,9vw,6.4rem);line-height:.86}.date-poster small{margin-top:28px;font-size:1.05rem;font-weight:750}.trust-item:first-child{padding-left:0}.trust-item:last-child{border-right:0}.trust-item strong,.section{padding:clamp(68px,9vw,112px) 0}.section--white{background:var(--white)}.section--ink{color:var(--white);background:var(--ink)}.section-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:36px;display:flex}.section-heading h2{letter-spacing:-.045em;max-width:700px;margin:0;font-size:clamp(2rem,5vw,3.8rem)}.section-heading p{max-width:520px;color:var(--ink-soft);margin:14px 0 0}.section--ink .section-heading p{color:#c9cfda}.text-link{flex:none;font-weight:800}.day-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.day-card{min-height:158px;color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;justify-content:space-between;padding:22px;text-decoration:none;display:flex;box-shadow:0 5px #0000}.day-card:hover{color:var(--ink);border-color:var(--ink);box-shadow:0 5px 0 var(--ink);transform:translateY(-3px)}.day-card small{color:var(--red-dark);text-transform:uppercase;font-weight:850}.day-card strong{font-size:1.42rem}.day-card span{color:var(--ink-soft);font-size:.88rem}.highlight-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.event-card{min-width:0;color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:92px minmax(0,1fr);gap:20px;padding:24px;transition:border-color .15s,box-shadow .15s;display:grid;position:relative}.event-card:hover{border-color:var(--ink-soft);box-shadow:var(--shadow)}.event-card h3{margin:0;font-size:1.25rem}.event-card h3 a{text-decoration:none}.event-card h3 a:after{content:"";border-radius:var(--radius);position:absolute;inset:0}.event-card h3 a:focus-visible{outline:none}.event-card h3 a:focus-visible:after{outline:3px solid var(--blue);outline-offset:2px}.event-card p{color:var(--ink-soft);margin:8px 0 0;font-size:.94rem}.event-time time{font-size:1.1rem;font-weight:900;display:block}.event-time span{color:var(--red-dark);text-transform:uppercase;margin-top:5px;font-size:.72rem;font-weight:850;display:block}.event-place{font-weight:750;color:var(--ink)!important}.event-flags{flex-wrap:wrap;gap:7px;margin-top:14px;display:flex}.event-flags span{color:#24553b;background:#e5f4eb;border-radius:999px;padding:4px 8px;font-size:.7rem;font-weight:800}.program-list{gap:14px;display:grid}.program-list .event-card{grid-template-columns:120px minmax(0,1fr)}.category-grid,.guide-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.category-card,.guide-card{border-radius:var(--radius);border:1px solid #ffffff2e;padding:26px;text-decoration:none}.category-card:hover{color:var(--white);border-color:var(--yellow)}.category-card{grid-template-columns:auto 1fr;align-items:center;gap:0 12px;display:grid}.category-card svg{color:var(--yellow);grid-column:1;display:block}.category-card h3{grid-column:2}.category-card p{grid-column:1/-1}.guide-card h3{margin:26px 0 10px;font-size:1.35rem}.category-card h3{margin:0;font-size:1.35rem}.category-card p{color:#c9cfda;margin:12px 0 0;font-size:.92rem}.guide-card{color:var(--ink);background:var(--white);border-color:var(--line)}.guide-card h3{margin-top:0}.guide-card p{color:var(--ink-soft)}.editorial-note{color:var(--ink);background:var(--yellow);border-left:8px solid var(--ink);border-radius:0 var(--radius) var(--radius) 0;padding:24px}.editorial-note strong{margin-bottom:5px;display:block}.editorial-note p{margin:0}.page-hero{border-bottom:1px solid var(--line);padding:62px 0 52px}.page-hero h1{font-size:clamp(2.6rem,7vw,5.4rem)}.page-hero p:not(.eyebrow){max-width:760px;color:var(--ink-soft);margin:22px 0 0;font-size:1.13rem}.breadcrumbs{padding-top:24px}.breadcrumbs ol{color:var(--ink-soft);flex-wrap:wrap;gap:7px;margin:0;padding:0;font-size:.82rem;list-style:none;display:flex}.breadcrumbs li:not(:last-child):after{content:"/";margin-left:7px}.facts-grid{border:1px solid var(--line);background:var(--line);border-radius:var(--radius);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:34px 0 0;display:grid;overflow:hidden}.fact{background:var(--white);padding:20px}.fact span,.fact strong{display:block}.fact span{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.73rem;font-weight:800}.fact strong{margin-top:7px}.map-link{color:var(--red-dark);align-items:center;gap:6px;margin-top:9px;padding:5px 0;font-size:.85rem;font-weight:700;text-decoration:none;display:inline-flex}.map-link svg{flex:none}.map-link span{color:inherit;font-size:inherit;font-weight:inherit;letter-spacing:normal;text-transform:none;display:inline}.map-link:hover span,.map-link:focus-visible span{text-decoration:underline}.map-link--inline{margin:3px 0 0;padding:2px 0;font-size:.8rem;display:flex}.content-grid{grid-template-columns:minmax(0,1fr) 300px;gap:64px;display:grid}.prose{max-width:760px}.prose h2{letter-spacing:-.035em;margin:48px 0 16px;font-size:clamp(1.7rem,4vw,2.5rem)}.prose h2:first-child{margin-top:0}.prose h3{margin:30px 0 10px}.prose p,.prose li{color:#343c52}.prose a{color:var(--red-dark);font-weight:700}.prose table{border-collapse:collapse;width:100%}.prose th,.prose td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:12px}.source-note{border:1px solid var(--line);background:var(--white);border-radius:var(--radius);gap:8px;height:fit-content;padding:22px;font-size:.86rem;display:grid}.source-note strong{color:#24553b}.source-note span{color:var(--ink-soft)}.faq-list{gap:12px;display:grid}.faq-list details{border:1px solid var(--line);background:var(--white);border-radius:14px;padding:20px 22px}.faq-list summary{cursor:pointer;font-weight:850}.faq-list p{color:var(--ink-soft);margin:12px 0 0}.site-footer{color:var(--white);background:#10172a;padding:64px 0 26px}.footer-grid{grid-template-columns:1.4fr .7fr .7fr;gap:50px;display:grid}.footer-brand{font-size:1.6rem;font-weight:900}.footer-brand span{color:var(--yellow)}.footer-grid p{color:#b6bdca;max-width:420px}.footer-grid h2{color:var(--yellow);letter-spacing:.09em;text-transform:uppercase;margin:0 0 14px;font-size:.83rem}.footer-grid a{color:var(--white);margin:7px 0;font-size:.9rem;display:block}.footer-note{color:#9ba4b4;border-top:1px solid #ffffff26;justify-content:space-between;gap:30px;margin-top:50px;padding-top:22px;font-size:.76rem;display:flex}.footer-note p{margin:0}@media (max-width:860px){.desktop-nav{display:none}.mobile-menu{display:block}.lang-switcher .lang-full{display:none}.lang-switcher .lang-short{display:inline}.lang-switcher{gap:10px}.hero-grid,.content-grid{grid-template-columns:1fr}.date-poster{max-width:460px}.day-grid,.category-grid,.guide-grid,.facts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}@media (max-width:620px){.shell{width:min(100% - 28px,1120px)}.hero{padding-top:52px}.date-poster{box-shadow:9px 10px 0 var(--ink)}.trust-item,.trust-item:first-child{border-right:0;border-bottom:1px solid var(--line);padding:12px 0}.trust-item:last-child{border-bottom:0}.section-heading{display:block}.section-heading .text-link{margin-top:18px;display:inline-block}.day-grid,.highlight-grid,.category-grid,.guide-grid,.facts-grid{grid-template-columns:1fr}.event-card,.program-list .event-card{grid-template-columns:1fr;gap:10px}.event-time{justify-content:space-between;align-items:center;gap:12px;display:flex}.event-time span{margin-top:0}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-note{display:block}.footer-note p+p{margin-top:10px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (forced-colors:active){.brand-mark,.date-poster,.button{border:2px solid}}
