:root {
  --wine-950:#210206;--wine-900:#2d050a;--wine-850:#3a0710;--wine-800:#4b0a17;--wine-700:#681126;
  --gold-500:#c8a14d;--gold-400:#e1c778;--gold-300:#f1dda4;--ivory:#fffaf0;--cream:#f6eedf;
  --ink:#211518;--muted:#75676a;--line:rgba(97,48,50,.16);--white:#fff;--shadow:0 30px 80px rgba(47,5,13,.16);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:"DM Sans",sans-serif;-webkit-font-smoothing:antialiased}button,a{font:inherit}a{text-decoration:none;color:inherit}button{cursor:pointer}.page-shell{overflow:hidden}.site-header{height:84px;padding:0 clamp(20px,5vw,76px);display:flex;align-items:center;justify-content:space-between;background:rgba(34,2,7,.97);color:white;position:relative;z-index:30;border-bottom:1px solid rgba(225,199,120,.24)}.brand{display:flex;gap:12px;align-items:center}.brand-gem{width:42px;height:42px;border:1px solid rgba(225,199,120,.55);display:grid;place-items:center;border-radius:50%;color:var(--gold-400);font-size:25px;box-shadow:inset 0 0 0 5px rgba(225,199,120,.05)}.brand span:last-child{display:flex;flex-direction:column}.brand b{font-family:"Playfair Display",serif;font-size:20px;letter-spacing:.12em}.brand small{text-transform:uppercase;letter-spacing:.2em;font-size:9px;color:var(--gold-300)}.primary-nav{display:flex;align-items:center;gap:24px}.primary-nav a{font-size:13px;color:rgba(255,255,255,.75);transition:.2s}.primary-nav a:hover,.primary-nav a.active{color:var(--gold-300)}.primary-nav .nav-button{padding:11px 17px;border:1px solid var(--gold-500);border-radius:999px;color:var(--gold-300)}.menu-toggle{display:none;color:white;background:transparent;border:0;align-items:center;gap:8px}.programme-hero{min-height:720px;padding:clamp(68px,8vw,118px) clamp(20px,7vw,104px);display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.72fr);gap:clamp(44px,7vw,110px);align-items:center;background:radial-gradient(circle at 78% 8%,rgba(215,171,81,.18),transparent 30%),linear-gradient(135deg,#220206 0%,#4b0814 56%,#280308 100%);color:white;position:relative}.programme-hero:after{content:"";position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(transparent,rgba(0,0,0,.15));pointer-events:none}.hero-orbit{position:absolute;border:1px solid rgba(238,211,139,.12);border-radius:50%}.orbit-one{width:520px;height:520px;right:-220px;top:10px}.orbit-two{width:320px;height:320px;left:-180px;bottom:-90px}.hero-copy{position:relative;z-index:2}.eyebrow{display:flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.24em;font-size:11px;font-weight:700;color:var(--gold-300)}.eyebrow span{width:38px;height:1px;background:var(--gold-500)}.eyebrow.dark{color:var(--wine-700)}.live-pill{display:inline-flex;align-items:center;gap:9px;margin:28px 0 18px;padding:9px 14px;border:1px solid rgba(225,199,120,.28);border-radius:999px;background:rgba(255,255,255,.06);font-size:12px;color:var(--gold-300)}.live-pill svg{width:16px}.programme-hero h1{font-family:"Playfair Display",serif;font-size:clamp(48px,6.4vw,88px);line-height:.96;letter-spacing:-.045em;margin:0;max-width:820px}.programme-hero h1 em,.section-heading h2 em,.etiquette-copy h2 em{font-weight:600;color:var(--gold-300)}.hero-lead{max-width:660px;color:rgba(255,255,255,.72);font-size:17px;line-height:1.75;margin:28px 0}.hero-lead strong{color:white}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{min-height:48px;padding:0 20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;font-size:13px;font-weight:700}.button svg{width:17px}.button.gold{background:linear-gradient(135deg,var(--gold-300),var(--gold-500));color:var(--wine-950);box-shadow:0 15px 40px rgba(202,159,67,.2)}.button.glass{border-color:rgba(255,255,255,.24);background:rgba(255,255,255,.06);color:white}.countdown{display:flex;gap:10px;margin-top:36px}.countdown div{min-width:76px;padding:13px 10px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.045);border-radius:15px;text-align:center}.countdown strong{display:block;font-family:"Playfair Display",serif;font-size:25px;color:var(--gold-300)}.countdown span{font-size:9px;text-transform:uppercase;letter-spacing:.18em;color:rgba(255,255,255,.55)}.hero-pass{min-height:520px;border:1px solid rgba(237,211,141,.36);border-radius:34px;background:linear-gradient(150deg,rgba(255,255,255,.12),rgba(255,255,255,.035));box-shadow:0 50px 100px rgba(0,0,0,.32);padding:30px;position:relative;overflow:hidden;backdrop-filter:blur(14px);z-index:2}.hero-pass:before{content:"";position:absolute;inset:14px;border:1px solid rgba(225,199,120,.18);border-radius:25px}.pass-glow{position:absolute;width:240px;height:240px;background:radial-gradient(circle,rgba(232,198,112,.24),transparent 70%);right:-60px;top:-50px}.pass-top{position:relative;display:flex;justify-content:space-between;text-transform:uppercase;font-size:9px;letter-spacing:.2em;color:var(--gold-300)}.pass-seal{width:168px;height:168px;margin:58px auto 34px;border:1px solid rgba(225,199,120,.55);border-radius:50%;display:flex;align-items:center;justify-content:center;gap:10px;position:relative;box-shadow:inset 0 0 0 10px rgba(225,199,120,.05),0 0 60px rgba(225,199,120,.08)}.pass-seal:before,.pass-seal:after{content:"◇";position:absolute;color:var(--gold-400);font-size:18px;top:8px}.pass-seal:after{top:auto;bottom:8px}.pass-seal span{font-family:"Playfair Display",serif;font-size:68px;color:var(--gold-300);line-height:1}.pass-seal small{text-transform:uppercase;letter-spacing:.12em;line-height:1.5;color:rgba(255,255,255,.65);font-size:8px}.pass-copy{text-align:center;position:relative}.pass-copy small{text-transform:uppercase;letter-spacing:.24em;color:var(--gold-300);font-size:9px}.pass-copy h2{font-family:"Playfair Display",serif;font-size:28px;line-height:1.15;margin:10px 0 13px}.pass-copy p{font-size:12px;color:rgba(255,255,255,.62)}.pass-footer{position:absolute;bottom:30px;left:30px;right:30px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.pass-footer span{padding-top:13px;border-top:1px solid rgba(225,199,120,.18);display:flex;gap:8px;align-items:flex-start;font-size:10px;color:rgba(255,255,255,.6);line-height:1.45}.pass-footer svg{width:15px;color:var(--gold-400);flex:0 0 auto}.announcement-wrap{padding:24px clamp(20px,7vw,104px) 0;background:var(--ivory)}.announcement-card{max-width:1320px;margin:auto;background:linear-gradient(135deg,#fff9e8,#f4e1a7);border:1px solid rgba(181,137,44,.32);border-radius:20px;padding:17px 20px;display:flex;align-items:center;gap:15px;box-shadow:0 15px 40px rgba(70,37,5,.08)}.announcement-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--wine-850);color:var(--gold-300)}.announcement-icon svg{width:18px}.announcement-card div{flex:1}.announcement-card small{font-size:9px;text-transform:uppercase;letter-spacing:.18em;color:var(--wine-700);font-weight:700}.announcement-card p{margin:4px 0 0;font-size:14px}.announcement-card button{border:0;background:transparent;color:var(--wine-700)}.live-overview{max-width:1450px;margin:auto;padding:70px clamp(20px,7vw,104px);display:grid;grid-template-columns:1.2fr .72fr .88fr;gap:18px}.live-overview article{border:1px solid var(--line);border-radius:26px;padding:28px;min-height:230px;box-shadow:0 15px 45px rgba(64,25,29,.06)}.now-card{background:white}.card-heading{display:flex;gap:13px;align-items:center}.pulse{width:12px;height:12px;border-radius:50%;background:#b89943;box-shadow:0 0 0 7px rgba(184,153,67,.13)}.card-heading small,.next-card .eyebrow,.access-card small{text-transform:uppercase;letter-spacing:.17em;font-size:9px;color:var(--wine-700);font-weight:700}.card-heading h2{font-family:"Playfair Display",serif;font-size:30px;margin:2px 0}.now-card>p{color:var(--muted);line-height:1.7}.now-meta{margin-top:22px;padding-top:18px;border-top:1px solid var(--line);display:flex;gap:16px;flex-wrap:wrap}.now-meta span{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--muted)}.now-meta svg{width:15px;color:var(--gold-500)}.next-card{background:var(--cream)}.next-time{font-family:"Playfair Display",serif;font-size:42px;color:var(--wine-700);margin:25px 0 5px}.next-card h3{font-family:"Playfair Display",serif;font-size:24px;margin:0 0 10px}.next-card>p:last-child{color:var(--muted);font-size:13px;line-height:1.65}.access-card{background:linear-gradient(145deg,var(--wine-900),var(--wine-700));color:white;position:relative;overflow:hidden}.access-gem{font-size:64px;position:absolute;right:24px;top:12px;color:rgba(225,199,120,.16)}.access-card h3{font-family:"Playfair Display",serif;font-size:25px;margin:8px 0}.access-card p{font-size:13px;color:rgba(255,255,255,.65);line-height:1.65}.access-card a{display:inline-flex;align-items:center;gap:7px;color:var(--gold-300);font-size:12px;font-weight:700;margin-top:10px}.access-card a svg{width:15px}.programme-section{padding:90px clamp(20px,7vw,104px) 110px;background:white}.section-heading{max-width:1320px;margin:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.section-heading h2,.etiquette-copy h2{font-family:"Playfair Display",serif;font-size:clamp(38px,4.5vw,60px);line-height:1.05;margin:14px 0}.section-heading>div:first-child>p:last-child{color:var(--muted);max-width:620px;line-height:1.7}.view-controls{display:flex;padding:5px;border:1px solid var(--line);border-radius:999px;background:var(--ivory)}.view-controls button{border:0;background:transparent;padding:10px 15px;border-radius:999px;display:flex;gap:7px;align-items:center;font-size:11px;color:var(--muted)}.view-controls button.active{background:var(--wine-850);color:white}.view-controls svg{width:14px}.filter-row{max-width:1320px;margin:42px auto 36px;display:flex;gap:9px;flex-wrap:wrap}.filter-row button{padding:10px 16px;border-radius:999px;border:1px solid var(--line);background:white;color:var(--muted);font-size:11px;font-weight:600}.filter-row button.active{background:var(--wine-850);border-color:var(--wine-850);color:var(--gold-300)}.programme-list{max-width:1320px;margin:auto}.programme-list.timeline{position:relative}.programme-list.timeline:before{content:"";position:absolute;left:174px;top:25px;bottom:25px;width:1px;background:linear-gradient(var(--gold-500),rgba(200,161,77,.12))}.programme-item{display:grid;grid-template-columns:140px 68px 1fr;gap:0 34px;align-items:start;padding:18px 0}.programme-time{text-align:right;padding-top:21px}.programme-time strong{display:block;font-family:"Playfair Display",serif;font-size:22px;color:var(--wine-700)}.programme-time small{font-size:9px;text-transform:uppercase;letter-spacing:.15em;color:var(--muted)}.timeline-node{width:22px;height:22px;border:6px solid white;border-radius:50%;background:var(--gold-500);box-shadow:0 0 0 1px var(--gold-500),0 0 0 8px rgba(200,161,77,.08);margin:23px auto;z-index:2}.programme-content{border:1px solid var(--line);border-radius:23px;padding:24px 26px;background:linear-gradient(145deg,#fff,#fffaf3);box-shadow:0 12px 38px rgba(68,26,31,.055);transition:.25s}.programme-content:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:rgba(155,104,40,.3)}.programme-content-top{display:flex;justify-content:space-between;gap:16px}.category-pill{display:inline-flex;align-items:center;gap:7px;text-transform:uppercase;letter-spacing:.14em;font-size:8px;font-weight:700;color:var(--wine-700);background:rgba(102,17,38,.07);padding:7px 10px;border-radius:999px}.category-pill svg{width:13px}.featured-pill{color:#8a681f;background:#fbf0ce}.programme-content h3{font-family:"Playfair Display",serif;font-size:27px;margin:15px 0 7px}.programme-content .subtitle{font-size:13px;color:var(--wine-700);font-weight:600;margin-bottom:12px}.programme-content .description{color:var(--muted);font-size:13px;line-height:1.7;margin:0}.programme-meta{display:flex;gap:20px;flex-wrap:wrap;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.programme-meta span{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--muted)}.programme-meta svg{width:14px;color:var(--gold-500)}.programme-list.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.programme-list.cards:before{display:none}.programme-list.cards .programme-item{display:block;padding:0}.programme-list.cards .programme-time{display:flex;align-items:baseline;gap:7px;text-align:left;padding:0 0 10px}.programme-list.cards .timeline-node{display:none}.programme-list.cards .programme-content{height:100%}.programme-list.cards .programme-content h3{font-size:23px}.empty-state{max-width:1320px;margin:20px auto;text-align:center;padding:70px;border:1px dashed rgba(86,27,34,.23);border-radius:25px}.empty-state span{font-size:48px;color:var(--gold-500)}.empty-state h3{font-family:"Playfair Display",serif;font-size:28px}.empty-state p{color:var(--muted)}.etiquette-section{background:linear-gradient(135deg,var(--wine-950),var(--wine-700));padding:100px clamp(20px,7vw,104px);color:white;display:grid;grid-template-columns:.7fr 1.3fr;gap:80px}.etiquette-copy p:last-child{color:rgba(255,255,255,.62);line-height:1.75}.etiquette-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.etiquette-grid article{border:1px solid rgba(225,199,120,.18);background:rgba(255,255,255,.05);border-radius:22px;padding:25px;position:relative}.etiquette-grid article>span{position:absolute;right:20px;top:15px;font-family:"Playfair Display",serif;color:rgba(225,199,120,.25);font-size:31px}.etiquette-grid svg{color:var(--gold-300);width:23px}.etiquette-grid h3{font-family:"Playfair Display",serif;font-size:22px;margin:18px 0 7px}.etiquette-grid p{font-size:12px;line-height:1.65;color:rgba(255,255,255,.6)}footer{text-align:center;padding:65px 20px;background:#1c0205;color:white}.footer-gem{font-size:32px;color:var(--gold-400)}footer p{font-family:"Playfair Display",serif;font-size:23px;margin:13px 0 4px}footer strong{color:var(--gold-300);font-size:10px;text-transform:uppercase;letter-spacing:.18em}footer nav{display:flex;justify-content:center;gap:19px;margin:25px 0 13px}footer nav a{font-size:11px;color:rgba(255,255,255,.65)}footer small{color:rgba(255,255,255,.35);font-size:9px;text-transform:uppercase;letter-spacing:.15em}.toast{position:fixed;right:22px;bottom:22px;background:var(--wine-900);color:white;padding:14px 18px;border-radius:14px;box-shadow:var(--shadow);transform:translateY(120px);opacity:0;transition:.25s;z-index:100;font-size:12px}.toast.show{transform:none;opacity:1}
@media(max-width:1050px){.primary-nav{gap:15px}.programme-hero{grid-template-columns:1fr;min-height:auto}.hero-pass{max-width:620px;width:100%;justify-self:center}.live-overview{grid-template-columns:1fr 1fr}.access-card{grid-column:1/-1}.programme-list.cards{grid-template-columns:1fr 1fr}.etiquette-section{grid-template-columns:1fr;gap:40px}}
@media(max-width:800px){.site-header{height:72px}.menu-toggle{display:flex}.primary-nav{position:absolute;left:18px;right:18px;top:72px;background:#31050b;border:1px solid rgba(225,199,120,.2);border-radius:18px;padding:15px;display:none;flex-direction:column;align-items:stretch;box-shadow:0 24px 60px rgba(0,0,0,.35)}.primary-nav.open{display:flex}.primary-nav a{padding:11px}.programme-hero{padding-top:70px}.hero-pass{min-height:480px}.section-heading{align-items:flex-start;flex-direction:column}.live-overview{grid-template-columns:1fr}.access-card{grid-column:auto}.programme-list.timeline:before{left:10px}.programme-item{grid-template-columns:25px 1fr;gap:0 18px}.programme-time{grid-column:2;text-align:left;padding:0 0 8px}.timeline-node{grid-column:1;grid-row:1/3;margin:8px 0}.programme-content{grid-column:2}.programme-list.cards{grid-template-columns:1fr}.etiquette-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.programme-hero h1{font-size:48px}.hero-pass{padding:23px;min-height:500px}.pass-footer{grid-template-columns:1fr;bottom:24px}.countdown{gap:6px}.countdown div{min-width:63px}.countdown strong{font-size:20px}.live-overview,.programme-section{padding-left:16px;padding-right:16px}.section-heading h2,.etiquette-copy h2{font-size:39px}.view-controls{width:100%}.view-controls button{flex:1;justify-content:center}.programme-content{padding:21px}.programme-content-top{align-items:flex-start;flex-direction:column}.programme-content h3{font-size:24px}.etiquette-section{padding-left:18px;padding-right:18px}.etiquette-grid{grid-template-columns:1fr}footer nav{flex-wrap:wrap}.announcement-wrap{padding-left:16px;padding-right:16px}.announcement-card{align-items:flex-start}}

/* V18 official programme source and live-sequence enhancements */
.programme-provenance{width:min(1320px,calc(100% - clamp(40px,14vw,208px)));margin:34px auto 0;display:grid;grid-template-columns:auto minmax(0,1fr) minmax(260px,.55fr);gap:18px;align-items:center;padding:20px 22px;border:1px solid rgba(41,118,93,.22);border-radius:22px;background:linear-gradient(135deg,#fff,#f3faf6);box-shadow:0 16px 45px rgba(26,81,62,.06)}.provenance-mark{width:52px;height:52px;border-radius:17px;display:grid;place-items:center;color:#2b765d;background:#e4f4ed;box-shadow:inset 0 0 0 1px rgba(43,118,93,.1)}.provenance-mark svg{width:23px}.provenance-copy{display:flex;flex-direction:column;gap:3px}.provenance-copy small,.provenance-progress span{text-transform:uppercase;letter-spacing:.14em;font-size:8px;font-weight:700;color:#2b765d}.provenance-copy strong{font-family:"Playfair Display",serif;font-size:19px;color:var(--wine-850)}.provenance-copy p{margin:2px 0 0;color:var(--muted);font-size:10px;line-height:1.55}.provenance-progress{padding-left:20px;border-left:1px solid var(--line)}.provenance-progress>div{display:flex;justify-content:space-between;gap:12px;align-items:center}.provenance-progress b{font-size:9px;color:var(--wine-700)}.progress-track{display:block!important;width:100%;height:7px;margin-top:10px;border-radius:999px;background:#e8e0d4;overflow:hidden}.progress-track>span{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,var(--wine-700),var(--gold-500));transition:width .35s ease}.live-overview{padding-top:36px}.filter-count{margin-left:auto;align-self:center;padding:9px 0;color:var(--wine-700);font-size:10px;font-weight:700}.programme-time{display:flex;flex-direction:column;align-items:flex-end}.programme-time>small{font-size:7px}.programme-time>strong{font-size:34px;line-height:1}.programme-time>span{margin-top:5px;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.1em}.programme-label-group{display:flex;gap:7px;flex-wrap:wrap}.operational-pill{display:inline-flex;align-items:center;align-self:flex-start;border-radius:999px;padding:7px 10px;text-transform:uppercase;letter-spacing:.11em;font-size:7px;font-weight:800;color:#746a69;background:#eeeae5;white-space:nowrap}.operational-pill.ready{color:#8a641c;background:#f7ebc7}.operational-pill.live{color:white;background:#9c2440;box-shadow:0 0 0 5px rgba(156,36,64,.09)}.operational-pill.completed{color:#24684f;background:#e3f3ec}.operational-pill.held{color:#8a5d1b;background:#f8ead6}.operational-pill.skipped{color:#777;background:#ededed}.programme-item.state-live .timeline-node{background:#9c2440;box-shadow:0 0 0 1px #9c2440,0 0 0 8px rgba(156,36,64,.11)}.programme-item.state-live .programme-content{border-color:rgba(156,36,64,.32);box-shadow:0 18px 50px rgba(90,9,28,.11)}.programme-item.state-completed .timeline-node{background:#2b765d;box-shadow:0 0 0 1px #2b765d,0 0 0 8px rgba(43,118,93,.09)}.programme-list.cards .programme-time{align-items:flex-start}.programme-list.cards .programme-time>small{display:none}.programme-list.cards .programme-time>strong{font-size:25px}.programme-list.cards .programme-time>strong:before{content:"Moment ";font-family:"DM Sans",sans-serif;font-size:8px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.programme-list.cards .programme-time>span{margin-top:0}.next-time{font-size:30px}.programme-meta:empty{display:none}
@media(max-width:900px){.programme-provenance{grid-template-columns:auto 1fr}.provenance-progress{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);padding:15px 0 0}.filter-count{width:100%;margin-left:0}}
@media(max-width:800px){.programme-time{align-items:flex-start}.programme-time>strong{font-size:28px}.programme-time>small{display:none}}
@media(max-width:560px){.programme-provenance{width:calc(100% - 32px);grid-template-columns:1fr;padding:19px}.provenance-mark{width:45px;height:45px}.provenance-progress{grid-column:auto}.programme-label-group{align-items:flex-start;flex-direction:column}.operational-pill{margin-top:2px}}

/* ==========================================================================
   MIO PROGRAMME PREMIUM EXPERIENCE — v30.6.0
   Portrait orbit, museum-grade surfaces and responsive refinement.
   This block intentionally loads after shared production styles.
   ========================================================================== */

.mio-programme-page {
  --programme-shell: min(1540px, calc(100% - clamp(32px, 8vw, 136px)));
  --programme-gold-glow: rgba(225, 199, 120, 0.25);
  --programme-wine-shadow: rgba(28, 2, 7, 0.38);
  background:
    radial-gradient(circle at 85% 5%, rgba(225, 199, 120, 0.08), transparent 28rem),
    var(--ivory);
}

.mio-programme-page .programme-hero {
  min-height: clamp(760px, 88vh, 980px);
  grid-template-columns: minmax(0, 1.02fr) minmax(520px, 0.98fr);
  gap: clamp(3rem, 6vw, 7.5rem);
  padding-inline: max(clamp(22px, 6vw, 112px), calc((100vw - 1720px) / 2));
  background:
    linear-gradient(115deg, rgba(15, 0, 3, 0.18), transparent 48%),
    radial-gradient(circle at 78% 24%, rgba(225, 199, 120, 0.2), transparent 23rem),
    radial-gradient(circle at 5% 95%, rgba(151, 46, 67, 0.19), transparent 26rem),
    linear-gradient(132deg, #170103 0%, #35040c 42%, #5c1020 72%, #260307 100%);
  isolation: isolate;
}

.mio-programme-page .programme-hero::before {
  position: absolute;
  z-index: 0;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
  background-size: 52px 52px;
  mask-image: linear-gradient(90deg, rgba(0,0,0,.75), transparent 78%);
  content: "";
  pointer-events: none;
}

.mio-programme-page .programme-hero::after {
  z-index: 0;
  height: 190px;
  background: linear-gradient(transparent, rgba(19, 1, 4, 0.54));
}

.mio-programme-page .programme-hero > * {
  position: relative;
  z-index: 2;
}

.mio-programme-page .hero-copy {
  max-width: 860px;
}

.mio-programme-page .programme-hero h1 {
  max-width: 900px;
  font-size: clamp(3.35rem, 6.2vw, 6.7rem);
  line-height: 0.93;
  text-shadow: 0 20px 55px rgba(0, 0, 0, 0.23);
}

.mio-programme-page .hero-lead {
  max-width: 720px;
  font-size: clamp(1rem, 1.3vw, 1.22rem);
}

.mio-programme-page .live-pill {
  box-shadow: inset 0 1px rgba(255,255,255,.08), 0 12px 32px rgba(0,0,0,.12);
  backdrop-filter: blur(18px);
}

.mio-programme-page .button {
  min-height: 52px;
  padding-inline: 23px;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background-color .22s ease;
}

.mio-programme-page .button:hover {
  transform: translateY(-3px);
}

.mio-programme-page .button.gold:hover {
  box-shadow: 0 20px 48px rgba(202,159,67,.28);
}

.mio-programme-page .button.glass:hover {
  border-color: rgba(241,221,164,.58);
  background: rgba(255,255,255,.11);
}

.mio-programme-page .countdown {
  gap: 0.72rem;
}

.mio-programme-page .countdown div {
  min-width: 82px;
  padding: 15px 12px;
  border-color: rgba(241,221,164,.16);
  background: linear-gradient(145deg, rgba(255,255,255,.075), rgba(255,255,255,.025));
  box-shadow: inset 0 1px rgba(255,255,255,.055), 0 14px 36px rgba(0,0,0,.12);
  backdrop-filter: blur(16px);
}

/* Portrait orbit -------------------------------------------------------- */
.mio-programme-page .hero-visual-suite {
  display: grid;
  justify-items: center;
  align-content: center;
  gap: clamp(1rem, 2vw, 1.65rem);
  width: min(100%, 730px);
  justify-self: center;
}

.mio-programme-page .programme-portrait-figure {
  display: grid;
  justify-items: center;
  width: 100%;
  margin: 0;
}

.mio-programme-page .programme-reference-orbit {
  position: relative;
  width: min(39vw, 610px);
  min-width: 440px;
  aspect-ratio: 1;
  isolation: isolate;
  filter: drop-shadow(0 38px 78px rgba(0,0,0,.38));
}

.mio-programme-page .programme-reference-orbit::before {
  position: absolute;
  z-index: -2;
  inset: 2.5%;
  border: 1px solid rgba(248,231,186,.22);
  border-radius: 50%;
  box-shadow: 0 0 0 18px rgba(255,255,255,.018), 0 0 110px rgba(205,168,93,.22);
  content: "";
}

.mio-programme-page .programme-reference-orbit .seal-orbit {
  position: absolute;
  border: 1px solid rgba(241,221,164,.32);
  border-radius: 50%;
  pointer-events: none;
}

.mio-programme-page .programme-reference-orbit .seal-orbit::before,
.mio-programme-page .programme-reference-orbit .seal-orbit::after {
  position: absolute;
  width: 0.76rem;
  height: 0.76rem;
  border: 1px solid rgba(241,221,164,.72);
  background: #39070f;
  transform: rotate(45deg);
  content: "";
}

.mio-programme-page .programme-reference-orbit .seal-orbit::before { top: 11%; left: 15%; }
.mio-programme-page .programme-reference-orbit .seal-orbit::after { right: 11%; bottom: 18%; }

.mio-programme-page .programme-reference-orbit .seal-orbit.orbit-one {
  inset: -5%;
  width: auto;
  height: auto;
  top: -5%;
  right: -5%;
  bottom: -5%;
  left: -5%;
  animation: programme-orbit-turn 34s linear infinite;
}

.mio-programme-page .programme-reference-orbit .seal-orbit.orbit-two {
  inset: 3%;
  width: auto;
  height: auto;
  top: 3%;
  right: 3%;
  bottom: 3%;
  left: 3%;
  border-style: dashed;
  opacity: .68;
  animation: programme-orbit-turn-reverse 27s linear infinite;
}

.mio-programme-page .programme-reference-orbit .seal-core--portrait {
  position: absolute;
  inset: 9%;
  overflow: hidden;
  border: 1px solid rgba(248,231,186,.75);
  border-radius: 50%;
  background: radial-gradient(circle at 50% 30%, #7c1b2c, #160103 74%);
  box-shadow: inset 0 0 0 8px rgba(255,255,255,.035), inset 0 -42px 80px rgba(21,1,3,.46), 0 30px 74px rgba(0,0,0,.35);
}

.mio-programme-page .programme-reference-orbit .seal-portrait {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center 18%;
  transform: scale(1.02);
  filter: saturate(.94) contrast(1.04);
}

.mio-programme-page .programme-reference-orbit .seal-portrait__veil {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, transparent 39%, rgba(22,1,4,.16) 60%, rgba(20,1,3,.94) 100%),
    radial-gradient(circle at 50% 26%, transparent 43%, rgba(24,1,4,.2) 100%);
  pointer-events: none;
}

.mio-programme-page .programme-reference-orbit .seal-portrait__caption {
  position: absolute;
  z-index: 3;
  right: 14%;
  bottom: 9%;
  left: 14%;
  display: grid;
  justify-items: center;
  color: #fff;
  text-align: center;
  text-shadow: 0 3px 20px rgba(0,0,0,.78);
}

.mio-programme-page .seal-portrait__caption small,
.mio-programme-page .seal-portrait__caption span {
  color: #f8e7ba;
  font-size: clamp(.47rem, .65vw, .65rem);
  font-weight: 800;
  letter-spacing: .25em;
  line-height: 1.4;
  text-transform: uppercase;
}

.mio-programme-page .seal-portrait__caption strong {
  margin: .38rem 0 .22rem;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.35rem, 2.4vw, 2.45rem);
  font-weight: 600;
  letter-spacing: .1em;
  line-height: 1;
}

.mio-programme-page .programme-reference-orbit .seal-note {
  position: absolute;
  z-index: 5;
  display: inline-flex;
  align-items: center;
  min-height: 2.15rem;
  padding: .55rem .82rem;
  border: 1px solid rgba(248,231,186,.3);
  border-radius: 999px;
  color: #f8e7ba;
  background: rgba(38,3,7,.72);
  box-shadow: 0 12px 30px rgba(0,0,0,.18);
  font-size: .58rem;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
  backdrop-filter: blur(14px);
}

.mio-programme-page .programme-reference-orbit .note-one { top: 10%; left: 4%; }
.mio-programme-page .programme-reference-orbit .note-two { top: 49%; right: -3%; }
.mio-programme-page .programme-reference-orbit .note-three { bottom: 9%; left: 8%; }

.mio-programme-page .programme-portrait-figure > figcaption {
  display: grid;
  gap: .35rem;
  width: min(88%, 38rem);
  margin-top: .8rem;
  text-align: center;
}

.mio-programme-page .programme-portrait-figure > figcaption small {
  color: var(--gold-300);
  font-size: .58rem;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.mio-programme-page .programme-portrait-figure > figcaption b {
  color: rgba(255,255,255,.88);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1rem, 1.4vw, 1.35rem);
  font-weight: 600;
}

@keyframes programme-orbit-turn { to { transform: rotate(360deg); } }
@keyframes programme-orbit-turn-reverse { to { transform: rotate(-360deg); } }

/* Compact event credential --------------------------------------------- */
.mio-programme-page .hero-pass--compact {
  width: min(92%, 590px);
  min-height: 0;
  padding: 1.35rem 1.5rem;
  border-radius: 1.45rem;
  background: linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,255,255,.045));
  box-shadow: 0 28px 68px rgba(0,0,0,.25);
}

.mio-programme-page .hero-pass--compact::before {
  inset: .55rem;
  border-radius: 1rem;
}

.mio-programme-page .hero-pass--compact .pass-copy {
  margin-top: 1.1rem;
  text-align: left;
}

.mio-programme-page .hero-pass--compact .pass-copy h2 {
  max-width: 26rem;
  margin: .45rem 0 .35rem;
  font-size: clamp(1.25rem, 2vw, 1.75rem);
}

.mio-programme-page .hero-pass--compact .pass-footer {
  position: relative;
  inset: auto;
  margin-top: 1.1rem;
}

/* Premium section transitions ----------------------------------------- */
.mio-programme-page .announcement-wrap,
.mio-programme-page .programme-provenance,
.mio-programme-page .live-overview,
.mio-programme-page .programme-section,
.mio-programme-page .etiquette-section {
  position: relative;
}

.mio-programme-page .premium-provenance {
  width: var(--programme-shell);
  margin-top: clamp(2rem, 4vw, 4rem);
  padding: clamp(1.2rem, 2vw, 1.7rem);
  border-color: rgba(41,118,93,.2);
  border-radius: 1.6rem;
  background:
    radial-gradient(circle at 100% 0, rgba(225,199,120,.12), transparent 17rem),
    linear-gradient(135deg, rgba(255,255,255,.98), #f1f9f5);
  box-shadow: 0 24px 70px rgba(31,65,53,.09);
}

.mio-programme-page .provenance-mark {
  width: 58px;
  height: 58px;
  border-radius: 19px;
  box-shadow: inset 0 0 0 1px rgba(43,118,93,.1), 0 12px 28px rgba(43,118,93,.11);
}

.mio-programme-page .premium-overview {
  width: var(--programme-shell);
  max-width: none;
  padding: clamp(2.25rem, 5vw, 5rem) 0 clamp(4rem, 7vw, 7rem);
  gap: clamp(1rem, 1.6vw, 1.5rem);
}

.mio-programme-page .premium-overview article {
  min-height: 255px;
  padding: clamp(1.5rem, 2.4vw, 2.15rem);
  border-radius: 1.75rem;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.mio-programme-page .premium-overview article:hover {
  transform: translateY(-6px);
  border-color: rgba(200,161,77,.28);
  box-shadow: 0 28px 74px rgba(64,25,29,.12);
}

.mio-programme-page .now-card {
  background:
    radial-gradient(circle at 100% 0, rgba(225,199,120,.12), transparent 15rem),
    #fff;
}

.mio-programme-page .next-card {
  background:
    linear-gradient(145deg, rgba(255,255,255,.8), transparent),
    var(--cream);
}

.mio-programme-page .access-card {
  background:
    radial-gradient(circle at 100% 0, rgba(225,199,120,.16), transparent 14rem),
    linear-gradient(145deg, #210206, #681126);
}

.mio-programme-page .premium-programme-section {
  padding: clamp(5rem, 8vw, 8.5rem) max(clamp(20px, 7vw, 104px), calc((100vw - 1720px) / 2)) clamp(6rem, 10vw, 10rem);
  background:
    radial-gradient(circle at 8% 10%, rgba(225,199,120,.12), transparent 24rem),
    linear-gradient(180deg, #fff, #fffaf3 68%, #f8efe2);
}

.mio-programme-page .premium-programme-section .section-heading,
.mio-programme-page .premium-programme-section .filter-row,
.mio-programme-page .premium-programme-section .programme-list,
.mio-programme-page .premium-programme-section .empty-state {
  max-width: 1480px;
}

.mio-programme-page .view-controls,
.mio-programme-page .filter-row button {
  box-shadow: 0 8px 24px rgba(55,18,23,.04);
}

.mio-programme-page .filter-row {
  position: sticky;
  z-index: 18;
  top: calc(var(--mio-header-height, 76px) + .75rem);
  padding: .72rem;
  border: 1px solid rgba(97,48,50,.12);
  border-radius: 1.2rem;
  background: rgba(255,250,240,.9);
  box-shadow: 0 18px 45px rgba(55,18,23,.08);
  backdrop-filter: blur(18px);
}

.mio-programme-page .programme-content {
  border-radius: 1.55rem;
  padding: clamp(1.3rem, 2vw, 1.85rem);
  background:
    radial-gradient(circle at 100% 0, rgba(225,199,120,.09), transparent 14rem),
    linear-gradient(145deg, #fff, #fffaf3);
}

.mio-programme-page .programme-content:hover {
  transform: translateY(-5px);
  box-shadow: 0 28px 72px rgba(68,26,31,.13);
}

.mio-programme-page .programme-list.cards {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
}

.mio-programme-page .premium-etiquette {
  padding: clamp(5rem, 8vw, 8rem) max(clamp(20px, 7vw, 104px), calc((100vw - 1720px) / 2));
  grid-template-columns: minmax(300px, .65fr) minmax(0, 1.35fr);
  background:
    radial-gradient(circle at 12% 12%, rgba(225,199,120,.17), transparent 23rem),
    radial-gradient(circle at 95% 90%, rgba(151,46,67,.2), transparent 28rem),
    linear-gradient(132deg, #160103, #3d0710 55%, #681126);
}

.mio-programme-page .premium-etiquette .v22-disclosure {
  border: 1px solid rgba(225,199,120,.17);
  border-radius: 1.7rem;
  background: rgba(255,255,255,.035);
  box-shadow: 0 28px 70px rgba(0,0,0,.18);
  backdrop-filter: blur(14px);
}

.mio-programme-page .premium-etiquette .v22-disclosure > summary {
  min-height: 3.5rem;
  padding-inline: 1.25rem;
  color: var(--gold-300);
  font-weight: 800;
}

.mio-programme-page .etiquette-grid {
  padding: 0 1rem 1rem;
}

.mio-programme-page .etiquette-grid article {
  overflow: hidden;
  background:
    radial-gradient(circle at 100% 0, rgba(225,199,120,.1), transparent 10rem),
    rgba(255,255,255,.055);
  transition: transform .23s ease, border-color .23s ease, background-color .23s ease;
}

.mio-programme-page .etiquette-grid article:hover {
  transform: translateY(-4px);
  border-color: rgba(225,199,120,.36);
  background-color: rgba(255,255,255,.075);
}

.mio-programme-page .mio-site-footer {
  background:
    radial-gradient(circle at 50% 0, rgba(225,199,120,.1), transparent 24rem),
    #160103;
}

@media (min-width: 1800px) {
  .mio-programme-page .programme-hero {
    grid-template-columns: minmax(0, 1fr) minmax(640px, .9fr);
  }

  .mio-programme-page .programme-reference-orbit {
    width: 650px;
  }

  .mio-programme-page .premium-overview article {
    min-height: 285px;
  }
}

@media (max-width: 1180px) {
  .mio-programme-page .programme-hero {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .mio-programme-page .hero-copy {
    max-width: 900px;
    margin-inline: auto;
  }

  .mio-programme-page .eyebrow,
  .mio-programme-page .hero-actions,
  .mio-programme-page .countdown {
    justify-content: center;
  }

  .mio-programme-page .hero-lead {
    margin-inline: auto;
  }

  .mio-programme-page .hero-visual-suite {
    width: min(100%, 760px);
  }

  .mio-programme-page .programme-reference-orbit {
    width: min(70vw, 590px);
  }

  .mio-programme-page .premium-etiquette {
    grid-template-columns: 1fr;
    gap: 2.5rem;
  }
}

@media (max-width: 800px) {
  .mio-programme-page .programme-hero {
    padding-top: clamp(4.5rem, 12vw, 6rem);
    padding-bottom: 5rem;
  }

  .mio-programme-page .programme-reference-orbit {
    width: min(92vw, 540px);
    min-width: 0;
  }

  .mio-programme-page .hero-pass--compact {
    width: 100%;
  }

  .mio-programme-page .premium-overview {
    width: calc(100% - 2rem);
  }

  .mio-programme-page .filter-row {
    position: relative;
    top: auto;
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .mio-programme-page .filter-row::-webkit-scrollbar { display: none; }
  .mio-programme-page .filter-row button { flex: 0 0 auto; min-height: 44px; }
  .mio-programme-page .filter-count { flex: 0 0 auto; width: auto; }

  .mio-programme-page .programme-list.cards {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .mio-programme-page .programme-hero h1 {
    font-size: clamp(2.75rem, 14vw, 4rem);
  }

  .mio-programme-page .countdown {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    width: 100%;
  }

  .mio-programme-page .countdown div {
    min-width: 0;
    padding-inline: .35rem;
  }

  .mio-programme-page .programme-reference-orbit .seal-core--portrait {
    inset: 8%;
  }

  .mio-programme-page .programme-reference-orbit .seal-note {
    min-height: 1.8rem;
    padding: .4rem .58rem;
    font-size: .48rem;
  }

  .mio-programme-page .programme-reference-orbit .note-one { left: 0; }
  .mio-programme-page .programme-reference-orbit .note-two { right: -1%; }
  .mio-programme-page .programme-reference-orbit .note-three { left: 2%; }

  .mio-programme-page .hero-pass--compact {
    padding: 1.15rem;
  }

  .mio-programme-page .hero-pass--compact .pass-footer {
    grid-template-columns: 1fr;
  }

  .mio-programme-page .premium-provenance,
  .mio-programme-page .premium-overview {
    width: calc(100% - 2rem);
  }

  .mio-programme-page .premium-programme-section {
    padding-inline: 1rem;
  }

  .mio-programme-page .premium-etiquette {
    padding-inline: 1rem;
  }
}

@media (max-width: 380px) {
  .mio-programme-page .programme-reference-orbit .seal-note { display: none; }
  .mio-programme-page .countdown span { letter-spacing: .08em; }
}

@media (prefers-reduced-motion: reduce) {
  .mio-programme-page .programme-reference-orbit .seal-orbit {
    animation: none !important;
  }

  .mio-programme-page .button:hover,
  .mio-programme-page .premium-overview article:hover,
  .mio-programme-page .programme-content:hover,
  .mio-programme-page .etiquette-grid article:hover {
    transform: none;
  }
}


/* ==========================================================================
   MIO PROGRAMME — HEADER-TO-HERO SPACING REPAIR v30.6.3
   Prevents a duplicated navbar offset while preserving intentional hero space.
   ========================================================================== */

/* Shared production styles may reserve header space on main. Because the
   public header is already in the document flow, that reservation creates the
   large blank band seen between the navbar and the programme hero. */
.mio-programme-page #main-content,
.mio-programme-page .mio-site-header + main {
  margin-block-start: 0 !important;
  padding-block-start: 0 !important;
}

/* Keep the hero flush against the header background and use one controlled
   internal inset instead of the earlier 68px–118px top padding. */
.mio-programme-page .programme-hero {
  margin-block-start: 0 !important;
  padding-block-start: clamp(2.25rem, 4.2vw, 4.5rem);
  padding-block-end: clamp(4.5rem, 7vw, 7rem);
}

/* Paragraph defaults must not add another invisible-looking space above the
   first hero label. */
.mio-programme-page .programme-hero .hero-copy > .eyebrow:first-child {
  margin-block-start: 0;
}

@media (max-width: 800px) {
  .mio-programme-page .programme-hero {
    padding-block-start: clamp(1.75rem, 6vw, 2.75rem);
    padding-block-end: clamp(3.5rem, 9vw, 5rem);
  }
}

@media (max-width: 560px) {
  .mio-programme-page .programme-hero {
    padding-block-start: 1.5rem;
  }
}
