/* Great Lines 2026 — poster-led neon night system */
:root {
  --ink:#020207;
  --night:#07071a;
  --blue:#07145a;
  --white:#fffdf7;
  --muted:rgba(255,255,255,.72);
  --pink:#ff29bd;
  --cyan:#37e9ff;
  --yellow:#ffe85a;
  --green:#42ff8a;
}

body { background:#020207; }
html,body { max-width:100%;overflow-x:clip; }
img,video,canvas,iframe { max-width:100%; }
.site-header { padding-inline:clamp(18px,4vw,64px); }
.site-header.scrolled,.subpage .site-header { background:rgba(1,1,8,.82);border-color:rgba(71,229,255,.16);box-shadow:0 12px 44px rgba(0,0,0,.28); }
.brand-mark { width:auto;height:76px;display:flex;align-items:center;filter:drop-shadow(0 0 8px rgba(55,233,255,.46)) drop-shadow(0 0 18px rgba(255,41,189,.28)); }
.brand-mark img { width:auto;height:100%;object-fit:contain; }
.desktop-nav a[aria-current="page"]::after { background:linear-gradient(90deg,var(--pink),var(--cyan),var(--green)); }
.nav-cta,.menu-toggle { border-color:rgba(55,233,255,.45);background:rgba(1,1,8,.56);box-shadow:inset 0 0 22px rgba(55,233,255,.06); }
.menu-toggle:hover,.nav-cta:hover { background:var(--cyan);color:#02030a;border-color:var(--cyan);box-shadow:0 0 28px rgba(55,233,255,.38); }
.mobile-menu { background:radial-gradient(circle at 82% 18%,rgba(255,41,189,.28),transparent 27%),radial-gradient(circle at 15% 75%,rgba(55,233,255,.22),transparent 34%),rgba(1,1,8,.985); }
.mobile-menu nav a { border-color:rgba(55,233,255,.18);background:rgba(255,255,255,.025); }
.mobile-menu nav a::after { color:var(--cyan); }
.mobile-menu nav a:hover,.mobile-menu nav a[aria-current="page"] { background:linear-gradient(120deg,rgba(255,41,189,.18),rgba(55,233,255,.1));border-color:rgba(55,233,255,.56); }

.hero { min-height:118svh;padding-top:104px;background:#020207; }
.hero-background { background-image:url("assets/great-lines-bg.jpg");background-position:center bottom;filter:saturate(1.16) contrast(1.08) brightness(.86);transform:scale(1.015); }
.hero::before { background:linear-gradient(180deg,rgba(0,0,0,.28) 0%,rgba(0,0,5,.06) 42%,rgba(0,0,7,.2) 68%,#020207 100%); }
.hero::after { content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 44%,rgba(12,10,54,.03),rgba(0,0,0,.46) 77%); }
.aurora-one { background:#ff29bd;opacity:.12; }
.aurora-two { background:#21e7ff;opacity:.11; }
.hero-content { width:min(1320px,96vw); }
.hero .eyebrow { color:#fff;font:700 clamp(.82rem,1.1vw,1rem)/1 "DM Sans";letter-spacing:.22em;text-transform:uppercase;text-shadow:0 0 14px rgba(55,233,255,.82),0 0 30px rgba(255,41,189,.48); }
.logo-stage { width:min(632px,66vw);margin:6px auto 0; }
.logo-stage::before { inset:10% 3%;background:linear-gradient(90deg,#ff2fba,#4f77ff 25%,#34e7ff 45%,#ffe34d 68%,#38ff83);filter:blur(44px);opacity:.42; }
.logo-stage img { filter:brightness(1.06) saturate(1.1) contrast(1.04) drop-shadow(0 0 2px rgba(255,255,255,.92)) drop-shadow(0 0 11px rgba(55,233,255,.82)) drop-shadow(0 0 25px rgba(255,41,189,.72)) drop-shadow(0 0 48px rgba(79,80,255,.5)); }
.logo-glow { background:radial-gradient(ellipse,rgba(51,225,255,.46),rgba(255,41,189,.22) 40%,transparent 72%);opacity:.44; }
@keyframes pulseGlow { 50% { filter:brightness(1.16) saturate(1.2) contrast(1.04) drop-shadow(0 0 3px #fff) drop-shadow(0 0 15px rgba(55,233,255,.95)) drop-shadow(0 0 32px rgba(255,41,189,.86)) drop-shadow(0 0 58px rgba(79,80,255,.56));transform:scale(1.012); } }
@keyframes glowField { 50% { opacity:.58;transform:scale(1.05);filter:blur(68px); } }
@keyframes neonBreath { 50% { opacity:.58;transform:scale(1.025); } }
@keyframes drift { to { transform:translate(5vw,2vh) scale(1.08);opacity:.2; } }
.hero-copy { max-width:1020px;margin-top:-12px;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.35rem,2.65vw,2.7rem);font-weight:700;line-height:1.08;letter-spacing:.015em;text-transform:uppercase;text-shadow:0 0 12px rgba(255,41,189,.48),0 4px 25px #000; }
.hero-actions { margin-top:24px; }
.button-primary { color:#04050a;background:#eefcff;box-shadow:0 0 0 1px rgba(55,233,255,.55),0 0 24px rgba(55,233,255,.2),0 12px 35px rgba(0,0,0,.3); }
.button-secondary { color:#fff;background:rgba(2,2,8,.58);border:1px solid rgba(255,255,255,.55);box-shadow:0 0 24px rgba(255,41,189,.12);backdrop-filter:blur(10px); }
.button-secondary:hover { border-color:#ff7ed6;box-shadow:0 0 34px rgba(255,41,189,.24); }
.button:hover { box-shadow:0 0 0 1px rgba(255,255,255,.6),0 0 40px rgba(55,233,255,.4),0 16px 42px rgba(0,0,0,.34); }
.hero-schedule { width:min(570px,92vw);grid-template-columns:1fr;margin-top:34px;border:1px solid rgba(255,255,255,.5);border-radius:22px;background:rgba(0,0,5,.72);box-shadow:0 0 20px rgba(55,233,255,.1);overflow:hidden; }
.hero-schedule > div { min-height:76px;padding:16px 26px;justify-content:space-between;border-right:0;border-bottom:1px solid rgba(255,255,255,.22); }
.hero-schedule > div:last-child { border-bottom:0; }
.hero-schedule span { color:rgba(255,255,255,.78); }
.hero-schedule strong,.hero-schedule > div:nth-child(2) strong,.hero-schedule > div:nth-child(3) strong { color:#fff;text-shadow:0 0 12px rgba(55,233,255,.7); }
.hero-schedule > div:first-child strong { color:#7dffd5;text-shadow:0 0 13px rgba(66,255,138,.68); }
.hero-schedule > div:nth-child(2) strong { color:#86efff; }
.hero-schedule > div:nth-child(3) strong { color:#ff8bd7;text-shadow:0 0 13px rgba(255,41,189,.78); }

.event-date { margin:0 0 8px;color:#fff;font:700 clamp(2.8rem,6vw,6.4rem)/.9 Georgia,"Times New Roman",serif;letter-spacing:-.055em;text-align:center;text-wrap:balance;text-shadow:0 0 18px rgba(55,233,255,.38),0 5px 28px rgba(0,0,0,.85); }
.eyebrow,.section-kicker { display:none!important; }

.intro,.film-section,.plan,.story-section,.moments,.faq-section,.latest-section,.update-principles,.travel-section,.ticket-summary,.ticket-note,.info-section { background:#05050f; }
.intro { position:relative;background:linear-gradient(180deg,#020207 0%,rgba(5,5,20,.96) 100%); }
.intro::before { content:"";position:absolute;inset:0;pointer-events:none;opacity:.26;background:radial-gradient(circle at 14% 26%,rgba(255,41,189,.38),transparent 24%),radial-gradient(circle at 84% 68%,rgba(55,233,255,.25),transparent 27%); }
.intro > * { position:relative; }
.section-kicker,.page-hero-content .eyebrow,.updates .eyebrow,.film-copy .eyebrow,.next-step .eyebrow { color:#69eeff;text-shadow:0 0 12px rgba(55,233,255,.35);text-transform:uppercase;letter-spacing:.16em;font-size:.75rem;font-weight:700; }
.display-title,.plan h2,.updates h2,.film-copy h2,.page-hero h1,.next-step h2,.travel-intro h2 { font-family:Georgia,"Times New Roman",serif;letter-spacing:-.055em; }
.display-title em,.plan h2 em,.updates h2 em,.film-copy h2 em,.page-hero h1 em,.next-step h2 em,.travel-intro h2 em { -webkit-text-stroke-color:rgba(117,235,255,.72);text-shadow:0 0 32px rgba(255,41,189,.2); }
.feature-strip,.feature-strip article,.ticket-prices,.ticket-prices > div,.principle-grid,.principle-grid article,.travel-options,.travel-option,.accordion-item,.faq-category,.info-grid { border-color:rgba(55,233,255,.18); }
.feature-strip article { position:relative; }
.intro .feature-strip { gap:18px;border-top:0; }
.intro .feature-strip article,.intro .feature-strip article + article,.intro .feature-strip article:last-child { min-height:280px;padding:34px;border:1px solid rgba(55,233,255,.16);border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(55,233,255,.018));transition:transform .3s,border-color .3s,background .3s; }
.intro .feature-strip article:hover { transform:translateY(-5px);border-color:rgba(55,233,255,.36);background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(55,233,255,.035)); }
.feature-strip article::before { display:none; }
.feature-icon { width:68px;height:68px;margin-bottom:62px;display:grid;place-items:center;border:1px solid rgba(82,235,255,.34);border-radius:18px;color:#7df1ff;background:rgba(55,233,255,.035);box-shadow:0 0 24px rgba(55,233,255,.08); }
.feature-icon svg { width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round; }
.feature-number,.faq-category,.announcement-date,.ticket-prices span,.info-card small { color:#70edff; }
.marquee { background:linear-gradient(90deg,#ff32b8,#8a5cff 32%,#39e9ff 66%,#4dff88);color:#03030b;box-shadow:0 0 40px rgba(255,41,189,.32); }

.film-frame { background:#05050f;border:1px solid rgba(55,233,255,.16);box-shadow:0 34px 100px rgba(0,0,0,.62),0 0 50px rgba(31,50,255,.08); }
.event-film { filter:saturate(1.2) brightness(.7) contrast(1.08); }
.film-wash { background:linear-gradient(90deg,rgba(2,2,7,.94),rgba(2,2,8,.54) 58%,rgba(2,2,8,.12)),linear-gradient(0deg,rgba(2,2,7,.65),transparent 58%); }
.film-frame::after { background:radial-gradient(circle,rgba(255,41,189,.25),transparent 66%); }
.plan-panel { background:linear-gradient(135deg,#10104c,#3b0f63 42%,#8d126a 70%,#0e827a);border:1px solid rgba(255,255,255,.16);box-shadow:0 40px 110px rgba(0,0,0,.58),0 0 60px rgba(255,41,189,.12); }
.plan-copy .section-kicker { color:#78f3ff; }
.plan-copy p { color:rgba(255,255,255,.78); }
.button-light { background:#fff;color:#090515;box-shadow:0 0 30px rgba(55,233,255,.26); }
.plan-visual img,.moment-card img { filter:saturate(1.18) contrast(1.09) brightness(.82); }
.plan-visual::after { background:linear-gradient(90deg,rgba(23,5,63,.6),transparent 48%),linear-gradient(0deg,rgba(2,2,8,.38),transparent 48%); }
.updates::before { background:linear-gradient(180deg,rgba(2,2,7,.45),rgba(2,2,7,.9)),radial-gradient(circle at 50% 35%,rgba(255,41,189,.16),rgba(2,2,7,.68) 72%); }

footer { min-height:104px;padding-top:16px;padding-bottom:16px;background:#020207;border-color:rgba(55,233,255,.15); }
footer img { width:auto;height:68px;filter:drop-shadow(0 0 8px rgba(55,233,255,.32)) drop-shadow(0 0 18px rgba(255,41,189,.18)); }
footer p { margin:0;font-size:.78rem;letter-spacing:.03em; }
.footer-brand { justify-self:start; }
.social-links { justify-self:end;display:flex;align-items:center;gap:9px; }
.social-icon { width:38px;height:38px;display:grid;place-items:center;border:1px solid rgba(125,239,255,.26);border-radius:50%;color:#8aebf8;background:rgba(55,233,255,.035); }
.social-icon svg { width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round; }
.social-icon .icon-fill { fill:currentColor;stroke:none; }
.subpage { background:#05050f; }
.page-hero::after { background:linear-gradient(transparent,#05050f); }
.page-hero-bg { filter:saturate(1.14) brightness(.58) contrast(1.08);background-position:center bottom; }
.page-hero-image::before { background:linear-gradient(110deg,rgba(1,1,7,.16),rgba(1,1,7,.82) 88%),radial-gradient(circle at 22% 32%,rgba(55,233,255,.16),transparent 38%); }
.moment-card { background:#080816; }
.moment-card::before { background:linear-gradient(180deg,transparent 20%,rgba(2,2,8,.96) 100%); }
.quote-section,.next-step { background:radial-gradient(circle at 50% 28%,#161657,#070714 58%,#020207); }
.quote-section strong { color:#ff72d0;text-shadow:0 0 24px rgba(255,41,189,.35); }
.page-hero-gradient,.faq-hero,.updates-hero,.travel-hero,.ticket-hero { background:radial-gradient(circle at 74% 22%,rgba(255,41,189,.3),transparent 28%),radial-gradient(circle at 24% 44%,rgba(55,233,255,.2),transparent 40%),#05050f; }
.notice-band { background:linear-gradient(90deg,#ff3cba,#45e8ff,#58ff91);color:#03030b; }
.info-grid { background:rgba(55,233,255,.12); }
.info-card { background:#080816; }
.info-icon,.travel-icon { border-color:rgba(96,234,255,.38);background:rgba(55,233,255,.035);box-shadow:0 0 22px rgba(55,233,255,.08);color:#7df1ff; }
.info-icon svg,.travel-icon svg { width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round; }
.visit-page .info-card small { font-family:"Manrope",sans-serif;font-size:clamp(1rem,1.35vw,1.25rem);font-weight:800;line-height:1.35;letter-spacing:.08em;color:#7df1ff;text-shadow:0 0 14px rgba(55,233,255,.25); }
.visit-page .info-card small a { color:inherit;text-decoration-thickness:1px;text-underline-offset:4px; }
.travel-page .notice-band { flex-direction:column;align-items:center;gap:10px;padding:clamp(38px,5vw,72px) 24px;font-family:"Manrope",sans-serif;font-size:clamp(2.2rem,4vw,3.5rem);font-weight:650;line-height:1.08;letter-spacing:-.045em;text-wrap:balance; }
.travel-page .notice-band strong { font-weight:800; }
.travel-page .notice-band span { max-width:1120px; }
.visit-page .notice-band { flex-direction:column;align-items:center;gap:10px;padding:clamp(38px,5vw,72px) 24px;font-family:"Manrope",sans-serif;font-size:clamp(2.2rem,4vw,3.5rem);font-weight:650;line-height:1.08;letter-spacing:-.045em;text-wrap:balance; }
.visit-page .notice-band strong { font-weight:800; }
.visit-page .notice-band span { max-width:1120px; }
.visit-checklist,.session-choice,.booking-section { background:#f4f1ff;color:#090516; }
.checklist-heading .section-kicker,.session-choice-heading .section-kicker,.booking-heading .section-kicker { color:#7c1e93; }
.faq-spark { text-shadow:0 0 80px rgba(255,41,189,.2); }
.faq-category { margin-top:76px;padding-bottom:18px;color:#fff;font:700 clamp(1.75rem,3vw,2.55rem)/1.1 Georgia,"Times New Roman",serif;letter-spacing:-.025em;text-transform:none; }
.faq-category:first-child { margin-top:0; }
.accordion-item button i::before,.accordion-item button i::after { background:#57ebff; }
.accordion-panel a { color:#78efff; }
.announcement-card { border-color:rgba(55,233,255,.18);background:linear-gradient(135deg,rgba(23,28,111,.48),rgba(255,41,189,.13)); }
.announcement-mark { color:#ff70d0;text-shadow:0 0 40px rgba(255,41,189,.48); }
.route-callout,.late-session { background:linear-gradient(135deg,#0a0c35,#3b125c 58%,#9c176f); }
.travel-page .route-callout h2 { color:#fff;text-shadow:0 3px 24px rgba(0,0,0,.45); }
.travel-page .route-callout h2 em { -webkit-text-stroke-color:rgba(255,255,255,.82); }
.travel-page .route-callout > div:last-child p { color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.4); }
.session-early { background:linear-gradient(145deg,#101337,#136673); }
.session-late { background:linear-gradient(145deg,#8f165d,#301064);color:#fff; }
.session-badge { background:#ff35b5;color:#fff;box-shadow:0 0 20px rgba(255,41,189,.28); }
.button-outline:hover { background:#49eaff;color:#04030c; }

/* Separate ticket journeys */
.session-page-hero { min-height:78svh;align-items:flex-end;padding-bottom:clamp(82px,9vw,120px); }
.session-page-hero .page-hero-bg { background-image:url("assets/great-lines-bg.jpg");background-position:center 72%;filter:saturate(1.15) brightness(.48) contrast(1.12); }
.session-page-hero::before { content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(2,2,8,.92),rgba(2,2,8,.4) 58%,rgba(2,2,8,.68)),linear-gradient(0deg,rgba(2,2,8,.72),transparent 56%); }
.session-page-finale::before { background:linear-gradient(90deg,rgba(2,2,8,.92),rgba(33,3,44,.38) 58%,rgba(2,2,8,.7)),linear-gradient(0deg,rgba(2,2,8,.74),transparent 56%); }
.session-page-hero h1 { max-width:950px; }
.session-page-time { margin:28px 0 0!important;color:#fff!important;font:700 clamp(2.2rem,5vw,5.2rem)/1 "Manrope",sans-serif!important;letter-spacing:-.06em!important;text-shadow:0 0 20px rgba(55,233,255,.28); }
.session-page-finale .session-page-time { text-shadow:0 0 20px rgba(255,41,189,.35); }
.session-switcher { position:relative;z-index:5;width:min(1020px,calc(100% - 44px));margin:-42px auto 0;padding:8px;display:grid;grid-template-columns:repeat(2,1fr);gap:8px;border:1px solid rgba(105,235,255,.22);border-radius:22px;background:rgba(5,5,15,.94);box-shadow:0 24px 70px rgba(0,0,0,.4);backdrop-filter:blur(18px); }
.session-switcher a { min-height:96px;padding:18px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid transparent;border-radius:15px;color:rgba(255,255,255,.7);transition:background .25s,border-color .25s,color .25s; }
.session-switcher a:hover { color:#fff;border-color:rgba(55,233,255,.24); }
.session-switcher a.active { color:#071016;background:#eefcff;border-color:#eefcff; }
.session-switcher span { font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase; }
.session-switcher strong { font:700 clamp(1.1rem,2vw,1.45rem) "Manrope";letter-spacing:-.04em;white-space:nowrap; }
.session-booking { padding-top:clamp(105px,12vw,170px); }
.session-booking .booking-heading h2 { font-family:Georgia,"Times New Roman",serif; }
.session-booking-finale { background:#eae8f7; }
.session-booking-finale .session-badge { background:#6d1a83; }
.session-booking .widget-shell { min-height:560px; }
.widget-shell { max-width:100%;overflow-x:auto; }
.tt-widget,.tt-widget iframe { width:100%!important;max-width:100%!important; }

@media (max-width:1060px) {
  .brand-mark { height:66px; }
  .logo-stage { width:min(560px,74vw); }
  .session-switcher { margin-top:-32px; }
}

@media (max-width:560px) {
  .hero { min-height:120svh;padding-top:86px; }
  .hero-background { background-position:center bottom; }
  .brand-mark { height:58px; }
  .logo-stage { width:76vw;margin-top:8px; }
  .event-date { margin-bottom:8px;font-size:clamp(2.15rem,11vw,3.4rem);line-height:.95; }
  .hero-copy { margin-top:-2px;font-size:clamp(1.05rem,5.4vw,1.45rem);line-height:1.16; }
  .hero-actions { width:100%; }
  .hero-actions .button { width:min(330px,100%);min-width:0; }
  .hero-schedule { grid-template-columns:1fr;border-radius:22px; }
  .hero-schedule > div { min-height:60px; }
  .hero-schedule strong { font-size:1.68rem; }
  footer { min-height:0;padding-top:24px;padding-bottom:24px;gap:14px; }
  footer img { height:64px; }
  .social-links { justify-self:center; }
  .session-page-hero { min-height:72svh;padding-bottom:76px; }
  .session-page-hero h1 { font-size:clamp(3.6rem,18vw,5.2rem); }
  .session-page-time { font-size:clamp(2rem,10vw,3rem)!important; }
  .session-switcher { width:calc(100% - 28px);grid-template-columns:1fr;margin-top:-30px;border-radius:18px; }
  .session-switcher a { min-height:74px;padding:14px 16px; }
  .session-booking { padding-top:92px; }
  .travel-page .notice-band { padding:34px 20px;font-size:clamp(1.9rem,9.5vw,2.65rem); }
  .visit-page .notice-band { padding:34px 20px;font-size:clamp(1.9rem,9.5vw,2.65rem); }
  .visit-page .info-card small { font-size:1.05rem; }
}

@media (max-width:380px) {
  .hero { padding-left:14px;padding-right:14px; }
  .hero-schedule { width:100%; }
  .hero-schedule > div { min-height:84px;padding:14px 18px;align-items:flex-start;flex-direction:column;gap:5px; }
  .hero-schedule strong { font-size:1.65rem;white-space:normal; }
  .session-switcher a { align-items:flex-start;flex-direction:column;gap:4px; }
  .session-switcher strong { white-space:normal; }
  .widget-shell { padding:16px;border-radius:16px; }
  .page-hero { padding-left:18px;padding-right:18px; }
  .page-hero h1 { font-size:3.55rem; }
}

/* Mobile resilience: keep every route readable down to a 320px viewport. */
@media (max-width:560px) {
  .site-header { padding-left:14px;padding-right:14px; }
  .page-hero-content { width:100%;min-width:0; }
  .page-hero h1 {
    max-width:100%;
    font-size:clamp(3rem,15vw,4rem);
    overflow-wrap:anywhere;
    text-wrap:balance;
  }
  .page-hero-content > p:last-child { max-width:100%; }
  .section { padding-left:18px;padding-right:18px; }
  .mobile-menu { overflow-y:auto;align-items:start; }
  .mobile-menu nav {
    width:calc(100% - 28px);
    min-width:0;
    padding-top:88px;
    padding-bottom:36px;
  }
  .mobile-menu::before { display:none; }
  .mobile-menu nav a,
  .button,
  .text-link { max-width:100%;white-space:normal;text-align:center;overflow-wrap:anywhere; }
  .accordion-item button {
    align-items:flex-start;
    gap:14px;
    padding:24px 0;
    font-size:1.15rem;
    line-height:1.3;
  }
  .accordion-item button span { min-width:0;overflow-wrap:anywhere; }
  .info-card { min-height:0;padding:30px 22px; }
  .moment-card { padding:28px 22px; }
  .announcement-card h2,
  .faq-intro h2,
  .travel-intro h2,
  .checklist-heading h2,
  .route-callout h2,
  .next-step h2 { max-width:100%;overflow-wrap:anywhere;text-wrap:balance; }
  .ticket-note { gap:22px; }
  .session-switcher a { min-width:0; }
}

@media (max-width:420px) {
  .travel-option { grid-template-columns:1fr;gap:16px; }
  .travel-icon { width:54px;height:54px; }
  .faq-intro h2,
  .travel-intro h2,
  .checklist-heading h2,
  .route-callout h2,
  .next-step h2 { font-size:clamp(2.7rem,14vw,3.5rem); }
  .session-page-hero h1 { font-size:clamp(3rem,17vw,4rem); }
  .session-page-time { font-size:clamp(1.75rem,9vw,2.35rem)!important; }
  .session-switcher { width:calc(100% - 20px); }
  .session-switcher a { padding:13px; }
}

@media (max-width:560px) and (max-height:650px) {
  .mobile-menu nav { padding-top:76px;padding-bottom:24px;gap:6px; }
  .mobile-menu nav a { min-height:50px;padding:10px 18px;font-size:1.12rem; }
}
