@font-face{font-family:Manrope;src:url(manrope.woff2) format('woff2');font-weight:200 800;font-display:swap}@font-face{font-family:'Source Sans 3';src:url(source-sans-3.woff2) format('woff2');font-weight:200 900;font-display:swap}
:root{color-scheme:light;--bg:#f4f9fc;--surface:#fff;--ink:#173c50;--muted:#476578;--line:#aec5d3;--blue:#17658c;--tint:#dfedf5;--yellow:#ffe48b;--focus:#805700;--radius:14px}*{box-sizing:border-box}html{scroll-padding-top:24px;scrollbar-color:var(--blue) var(--tint)}body{margin:0;background:var(--bg);color:var(--ink);font:18px/1.55 'Source Sans 3',sans-serif}::selection{background:var(--yellow);color:var(--ink)}a{color:var(--blue);text-underline-offset:4px}button,input,select{font:inherit;caret-color:var(--blue)}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,.button,select,input{min-height:48px}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:10px;padding:10px 17px;font-weight:650;text-decoration:none;cursor:pointer}button:disabled{opacity:.6;cursor:wait}.button{background:var(--blue);color:#fff;border-color:var(--blue)}button[aria-pressed=true],.yellow{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}:focus-visible{outline:3px solid var(--focus);outline-offset:4px}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.2;letter-spacing:-.025em;text-wrap:balance}h1{font-size:clamp(36px,4.2vw,60px);margin:0 0 24px}h2{font-size:clamp(26px,2.2vw,34px);text-align:center;margin:0 0 28px}h3{font-size:23px;margin:12px 0 16px;text-align:center}p{margin:0 0 20px}h3 a{color:inherit;text-decoration:none}h3 a:hover{text-decoration:underline}.top{max-width:1360px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 32px}.brand{font:800 27px/1.2 Manrope,sans-serif;color:var(--ink);text-decoration:none;white-space:nowrap}.brand span{color:#a57000}.top nav{display:flex;gap:22px;align-items:center}.top nav a{font-size:16px;font-weight:600;text-decoration:none}.language{display:flex;align-items:center;gap:8px}.language label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.language select{width:130px;border-radius:8px;border:1px solid var(--line);color:var(--ink);background:var(--surface);padding:8px}.language button{padding:8px 12px}.preview{background:var(--yellow);text-align:center;font-size:14px;font-weight:600;margin:0;padding:6px 16px}.skip{position:absolute;left:16px;top:-100px;background:var(--surface);padding:12px;z-index:2}.skip:focus{top:8px}main{max-width:1280px;margin:auto;padding:0 32px}.intro{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:48px;margin:64px 0}.intro-copy{text-align:center}.intro-copy p{max-width:40ch;margin:0 auto 28px;font-size:22px;color:var(--muted)}figure{margin:0}figure img{width:100%;height:330px;object-fit:cover;border-radius:var(--radius);display:block}figcaption{font-size:13px;text-align:right;color:var(--muted);padding-top:8px}.finder{background:var(--tint);padding:36px;border-radius:var(--radius)}.finder h2{margin-bottom:24px}.period{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;padding:0;border:0;margin:0 0 26px}.period legend{text-align:center;font-weight:600;margin-bottom:12px}.period label{position:relative;cursor:pointer}.period input{position:absolute;opacity:0;width:1px;height:1px;min-height:0}.period span{display:block;border:1px solid var(--line);border-radius:9px;background:var(--surface);padding:10px 18px;font-weight:600}.period input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff}.period input:focus-visible+span{outline:3px solid var(--focus);outline-offset:4px}.primary-filters,.secondary-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}label{display:grid;gap:6px;font-weight:600;font-size:16px}select,input[type=date]{width:100%;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:10px 12px;min-width:0;font-size:17px}.more-filters{margin-top:24px}.more-filters summary{font-weight:600;cursor:pointer;min-height:48px;padding:10px 0}.secondary-filters{margin:12px 0}.filter-actions{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:24px}.recommendations,.results,.agenda,.stories,.related{margin-top:72px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.plan{min-width:0;padding:26px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);display:flex;flex-direction:column}.picks .plan{border:0;background:var(--tint)}.picks .plan:first-child{background:var(--yellow)}.plan-meta{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:15px;font-weight:650;font-variant-numeric:tabular-nums}.plan p{font-size:18px;color:var(--muted)}.plan-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;padding:10px 0 20px;font-size:14px;font-weight:600}.plan-tags span{padding:4px 9px;background:var(--bg);border-radius:7px;color:var(--ink)}.plan-actions{display:flex;gap:12px;flex-wrap:wrap}.outside{font-size:14px!important;color:var(--ink)!important;font-weight:600}.catalogue-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px}.catalogue-list .plan{border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;padding:28px 0}.catalogue-list .plan h3{text-align:center;font-size:25px}.results-heading{text-align:center;position:relative;margin-bottom:28px}.results-heading h2{margin-bottom:12px}.results-heading p{font-size:16px;color:var(--muted)}.results-heading #near{position:absolute;right:0;top:12px}.empty,.error{max-width:70ch;margin:36px auto;text-align:center}.empty{background:var(--tint);padding:24px;border-radius:12px}.agenda{border-block:1px solid var(--line);padding:36px 0;text-align:center}.agenda ul{list-style:none;padding:0;text-align:left}.agenda li{display:grid;grid-template-columns:120px 1fr 1fr;gap:24px;border-top:1px solid var(--line);padding:18px 0}.agenda li time{font-variant-numeric:tabular-nums;font-weight:600}.agenda li span{color:var(--muted)}.stories{max-width:72ch;margin-inline:auto;text-align:center}.story-links{display:flex;gap:24px;justify-content:center;margin-top:24px;flex-wrap:wrap}.stories p{font-size:20px}footer{text-align:center;margin-top:64px;background:var(--tint);padding:32px}footer p{margin:0;font-size:16px}.detail-wrap{padding-top:36px}.back{display:inline-block;margin-bottom:30px}.detail-heading{text-align:center;max-width:85ch;margin:auto}.detail-heading p{font-size:22px;color:var(--muted)}.detail-meta{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;font-weight:600;margin:24px 0}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:64px;align-items:start;margin-top:36px}.detail-grid article{max-width:70ch}.detail-grid section{margin-bottom:48px}.detail-grid h2{font-size:27px}.practical{background:var(--tint);padding:26px;border-radius:14px}.practical h2{margin-bottom:20px}.practical dt{font-weight:750;margin-top:22px}.practical dd{margin:6px 0 0;color:var(--muted)}.detail-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.note{font-size:15px!important;color:var(--muted)!important}.detail-actions+.note{margin-top:12px}.existing{display:block;margin-top:14px}.stops{list-style-position:inside;padding:0}.stops li{padding:16px 0;border-top:1px solid var(--line)}.stops a{display:block;margin-top:8px;margin-left:24px}.sources{list-style:none;padding:0}.sources li{display:grid;gap:4px;margin-bottom:16px}.sources span{font-size:15px;color:var(--muted)}#share-fallback label{display:block;margin:12px 0}#share-link{width:100%;border:1px solid var(--line);border-radius:8px;padding:10px;background:var(--surface);color:var(--ink)}#location-status{max-width:75ch;color:var(--muted);margin-inline:auto;text-align:center}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:3;max-width:min(90vw,600px);background:var(--ink);color:var(--surface);padding:14px 24px;border-radius:10px;pointer-events:none}.toast:empty{display:none}[hidden]{display:none!important}
@media(hover:hover){button:hover{border-color:var(--blue);background:var(--tint)}.button:hover{background:#104d6c}.yellow:hover{background:#f5d578}.top nav a:hover{text-decoration:underline}}
@media(prefers-reduced-motion:no-preference){button,.button{transition:background-color 140ms cubic-bezier(.16,1,.3,1),border-color 140ms cubic-bezier(.16,1,.3,1)}button:active,.button:active{transform:translateY(1px)}}
@media(prefers-color-scheme:dark){:root{color-scheme:dark;--bg:#112c3d;--surface:#18394d;--ink:#f0f7fb;--muted:#c1d5e3;--line:#678699;--blue:#a2d7f3;--tint:#24495f;--yellow:#ffe48b;--focus:#ffe48b}.button{color:#112c3d}.yellow,.picks .plan:first-child{color:#173c50}.picks .plan:first-child p,.picks .plan:first-child .plan-meta{color:#355a6e}.picks .plan:first-child .plan-tags span{background:#fff0bf;color:#173c50}.picks .plan:first-child .save,.preview{color:#173c50}.preview{background:#ffe48b}.brand span{color:#ffe48b}button[aria-pressed=true]{color:#173c50}.period input:checked+span{color:#112c3d}.toast{color:#112c3d}.button:hover{background:#c1e8fb}.yellow:hover{background:#f5d578}}
@media(max-width:1050px){.top{flex-wrap:wrap}.top nav{order:3;width:100%;justify-content:center}.intro{gap:28px}.cards{gap:18px}.plan{padding:20px}.detail-grid{gap:32px;grid-template-columns:1fr 320px}.results-heading #near{position:static}.primary-filters,.secondary-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){body{font-size:18px}.top{padding:18px 18px 12px;gap:16px}.brand{font-size:24px}.top nav{gap:8px 16px;flex-wrap:wrap}.top nav a{min-height:44px;display:flex;align-items:center}.language{gap:6px}.language select{width:108px;font-size:16px}.language button{min-height:44px}.preview{font-size:12px}main{padding:0 18px}.intro{display:flex;flex-direction:column;margin:36px 0;gap:28px}.intro-copy{width:100%}.intro-copy p{font-size:20px}.intro h1{font-size:40px}.intro figure{width:100%}figure img{height:190px}.finder{padding:24px 16px}.period{gap:6px}.period span{padding:10px;font-size:15px}.primary-filters{gap:16px;grid-template-columns:1fr}.secondary-filters{grid-template-columns:1fr}.cards,.catalogue-list{grid-template-columns:1fr}.recommendations,.results,.agenda,.stories,.related{margin-top:44px}.plan{padding:24px}.catalogue-list .plan{padding:26px 0}.agenda li{grid-template-columns:1fr;gap:6px}.agenda li a{font-size:20px}.detail-grid{grid-template-columns:1fr;gap:20px}.detail-grid article{order:2}.practical{order:1}.detail-heading p{font-size:20px}.detail-heading h1{font-size:35px}.detail-meta{gap:10px 18px}.detail-grid section{margin-bottom:32px}.filter-actions{gap:16px}footer{margin-top:44px}}

.all-plans{text-align:center;margin-top:24px}.plan-actions button:focus-visible{outline-offset:4px}

@media(prefers-color-scheme:dark){.picks .plan:first-child .save{background:#fff0bf;color:#173c50}.picks .plan:first-child :focus-visible{outline-color:#805700}button[aria-pressed=true]:hover{background:#f5d578;color:#173c50}}

/* APP WebContent already supplies navigation; do not duplicate it inside the frame. */
body.embedded .top{display:none}.mobile-photo{display:none}.audience-note,.availability-note{max-width:75ch;text-align:center;margin-inline:auto}.agenda li{grid-template-columns:180px 1fr 1fr}
@media(max-width:700px){.intro figure{display:none}.intro{margin:28px 0}.intro-copy p{margin-bottom:20px}.finder{margin-top:0}.mobile-photo{display:block;margin-top:28px}.mobile-photo img{height:150px}.agenda li{grid-template-columns:1fr}.embedded .intro{margin-top:28px}}
/* One hero belongs to the main page; the expansion starts at its useful controls. */
body.portal-embedded .top,body.portal-embedded .preview,body.portal-embedded .intro,body.portal-embedded .mobile-photo,body.portal-embedded>footer,body.portal-embedded>.skip{display:none}
body.portal-embedded{background:transparent}
body.portal-embedded main{max-width:none;padding:0 8px;margin:0}
body.portal-embedded #finder{margin-top:0}
