/*
Theme Name: med4u-theme
Author: Dylan da Silva
Version: 4.1.0
Description: Editable MED4U programme website with enquiry handling.
Requires at least: 6.3
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: med4u-theme
*/
:root{--navy:#10223f;--accent:#b8d9ff;--ink:#17283e;--muted:#586779;--blue:#f1f5fa;--border:#dce4ee;--link:#235b9c}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;background:#fff}a{color:inherit;text-decoration:none}button{font:inherit}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid var(--border)}.nav-shell{max-width:1320px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:22px 36px;gap:35px}.brand{display:flex;flex-direction:column;gap:7px}.logo{font-size:32px;font-weight:900;letter-spacing:-1.5px;line-height:1;white-space:nowrap}.logo span{color:var(--link)}.brand-caption{font-size:12px;color:var(--muted);line-height:1.3}nav{display:flex;align-items:center;gap:9px}nav>a:not(.button){font-size:14px;font-weight:600;padding:10px 15px;border-radius:6px}nav>a:not(.button):hover,nav>a.current{background:var(--blue);color:var(--link)}.menu-toggle{display:none}.button{display:inline-flex;align-items:center;justify-content:center;padding:16px 24px;background:var(--navy);color:white;border-radius:6px;font-size:14px;font-weight:700;line-height:1.4}.button:hover{filter:brightness(.93)}.button.small{padding:13px 21px;margin-left:15px}.accent{background:white;color:var(--navy)}.hero{margin:24px auto 0;width:calc(100% - 64px);max-width:1360px;background:var(--navy);color:white;border-radius:12px;display:grid;grid-template-columns:1.06fr 1fr;overflow:hidden;min-height:570px}.hero-copy{padding:65px 9% 40px}.eyebrow{display:block;font-size:12px;font-weight:700;letter-spacing:1.6px;line-height:1.5;color:var(--link)}.hero .eyebrow{color:#d7e2ed;display:flex;align-items:center;gap:12px}.line{width:24px;height:2px;background:var(--accent)}h1{font-size:clamp(44px,4.6vw,70px);line-height:1.08;letter-spacing:-2.5px;margin:26px 0}h1 em{font-style:normal;color:var(--accent)}.hero-copy>p{color:#c8d2df;max-width:450px;line-height:1.8;font-size:17px}.actions{display:flex;align-items:center;gap:26px;margin:32px 0 50px}.textlink{font-size:14px}.textlink:hover{text-decoration:underline;text-underline-offset:5px}.hero-meta{display:flex;gap:22px;font-size:12px;letter-spacing:1px;font-weight:700;color:#bfcbdc;flex-wrap:wrap}.hero-art{position:relative;min-width:0;background:#496278}.hero-art img{width:100%;height:100%;object-fit:cover;position:absolute}.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,23,42,.88),transparent 65%)}.image-label{position:absolute;bottom:54px;left:38px;z-index:1}.image-label span{font-size:11px;letter-spacing:1.5px;color:var(--accent);font-weight:700}.image-label strong{display:block;font-size:29px;line-height:1.2;letter-spacing:-.7px;margin-top:14px}.image-note{position:absolute;z-index:2;right:16px;bottom:12px;font-size:12px;color:#dce5ef}.facts{max-width:1200px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);padding:36px 32px;border-bottom:1px solid var(--border)}.facts div{padding:0 25px;border-right:1px solid var(--border)}.facts div:first-child{padding-left:0}.facts div:last-child{border:0}.facts strong{display:block;font-size:26px;letter-spacing:-.6px}.facts span{font-size:14px;color:var(--muted)}.section{max-width:1200px;margin:auto;padding:88px 32px}h2{font-size:clamp(32px,3.2vw,44px);line-height:1.18;letter-spacing:-1.5px;margin:17px 0 22px}h3{line-height:1.3;letter-spacing:-.5px;font-size:24px}p{color:var(--muted)}.section-heading{max-width:670px;margin:0 auto 40px;text-align:center}.section-heading p{font-size:17px;margin:0}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.three article{background:var(--blue);padding:30px;border-radius:8px}.card-no{color:var(--link);font-size:14px;font-weight:700;display:block;border-bottom:1px solid var(--border);padding-bottom:18px}.three h3{margin:25px 0 15px;font-size:23px}.three p{margin-bottom:0}.programme{max-width:none;background:var(--blue);padding-left:max(32px,calc((100% - 1136px)/2));padding-right:max(32px,calc((100% - 1136px)/2))}.section-top{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:32px}.section-top h2{margin-bottom:0}.section-top p{margin-bottom:0}.days{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.day{cursor:pointer;background:white;border:1px solid var(--border);text-align:left;border-radius:8px;padding:22px;color:var(--ink);transition:background .2s}.day:hover{background:#e2edfa}.day span{font-size:12px;font-weight:700;letter-spacing:1px}.day strong{display:block;font-size:44px;line-height:1.3;margin:20px 0 12px;letter-spacing:-2px}.day b{font-size:15px;display:block}.day.active{background:var(--navy);color:white;border-color:var(--navy)}.day.active strong{color:var(--accent)}.day-detail{background:white;border:1px solid var(--border);border-radius:8px;margin-top:20px;display:grid;grid-template-columns:1.15fr 1fr;gap:60px;padding:36px}.day-detail h3{font-size:27px;margin:14px 0}.day-detail p{margin-bottom:0}.day-detail ul{padding-left:20px;align-self:center;color:var(--muted);margin:0}.day-detail li{margin:12px 0}.schedule-note{font-size:12px;margin:18px 0 0}.about{display:grid;grid-template-columns:1fr 1.15fr;gap:85px}.about p:first-child{margin-top:0}.lead{font-size:21px;color:var(--ink);line-height:1.5}.purpose{margin-top:28px;border-left:3px solid var(--link);padding-left:24px}.purpose span{font-size:12px;font-weight:700;letter-spacing:1.3px;color:var(--link)}.purpose h3{font-size:21px;margin:12px 0 0}.faq{border-top:1px solid var(--border);display:grid;grid-template-columns:1fr 1.15fr;gap:85px}details{border-bottom:1px solid var(--border);padding:21px 0}details:first-child{padding-top:0}summary{font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:24px}summary:after{content:'+';font-size:23px;line-height:1;color:var(--link)}details[open] summary:after{content:'−'}details p{padding-right:30px;margin-bottom:0}.join{margin:0 auto 40px;width:calc(100% - 64px);max-width:1360px;background:var(--navy);color:white;border-radius:12px;padding:60px max(40px,6%);display:grid;grid-template-columns:1.2fr .8fr;gap:70px}.join .eyebrow{color:var(--accent)}.join h2{font-size:44px;color:white}.join p{color:#c4d0df}.join-card{border-left:1px solid #43516a;padding-left:45px;align-self:center}.join-card>span{font-size:12px;letter-spacing:1.4px;color:var(--accent)}.join-card h3{font-size:26px;margin:14px 0}.join-card p{margin-bottom:24px}footer{max-width:1200px;margin:auto;padding:0 32px 35px;display:flex;justify-content:space-between;align-items:center;gap:20px}footer p,footer>span{font-size:12px}.skip{position:absolute;top:-100px;left:20px;background:white;z-index:50;padding:10px}.skip:focus{top:10px}:focus-visible{outline:3px solid #6385d6;outline-offset:4px}@media(max-width:1000px){.nav-shell{padding:20px 28px;gap:20px}.brand-caption{font-size:11px}nav>a:not(.button){padding:10px;font-size:13px}.button.small{margin-left:0}.hero-copy{padding:50px 8% 32px}h1{font-size:48px;letter-spacing:-2px}.actions{flex-direction:column;align-items:start;gap:18px;margin-bottom:32px}.facts div{padding:0 18px}.facts strong{font-size:23px}.facts span{font-size:13px}.three{gap:16px}.three article{padding:25px}.three h3{font-size:21px}.about,.faq{gap:45px}.day{padding:18px}.day-detail{gap:35px}.join{gap:35px}.join h2{font-size:38px}.join-card{padding-left:30px}}@media(max-width:760px){html{scroll-padding-top:90px}.nav-shell{padding:18px 22px;flex-wrap:wrap;gap:0}.logo{font-size:29px}.brand-caption{font-size:10px;margin-top:2px}.menu-toggle{display:block;border:1px solid var(--border);background:white;padding:9px 15px;border-radius:6px;font-size:14px;font-weight:600;margin-left:auto}nav{display:none;width:100%;padding-top:20px;align-items:stretch;gap:5px;flex-direction:column}nav.open{display:flex}nav>a:not(.button){padding:12px;font-size:15px}nav .button{margin-top:8px}.hero{width:calc(100% - 32px);margin-top:16px;grid-template-columns:1fr;min-height:0}.hero-copy{padding:40px 8%}h1{font-size:46px}.hero-copy>p{font-size:16px}.actions{flex-direction:row;align-items:center;gap:20px;margin:25px 0 30px}.actions .button{padding:14px 16px;font-size:13px}.textlink{font-size:13px}.hero-art{height:320px}.image-label{left:26px;bottom:40px}.image-label strong{font-size:25px}.facts{grid-template-columns:1fr 1fr;gap:24px;padding:30px 26px;margin:0 16px}.facts div,.facts div:first-child{padding:0 14px}.facts div:nth-child(2){border:0}.facts span{font-size:13px}.section{padding:58px 28px}.section-heading{text-align:left;margin-bottom:30px}.section-heading p{font-size:16px}.section-heading h2 br{display:none}.three{grid-template-columns:1fr;gap:16px}.three article{padding:25px}.three h3{font-size:23px;margin-top:18px}.card-no{padding-bottom:12px}.section-top{display:block;margin-bottom:26px}.section-top p{margin-top:15px}.section-top p br{display:none}.days{grid-template-columns:1fr 1fr;gap:10px}.day{padding:18px}.day strong{font-size:38px;margin:14px 0 10px}.day-detail{grid-template-columns:1fr;gap:14px;padding:25px}.day-detail h3{font-size:25px}.day-detail ul{font-size:15px}.about,.faq{grid-template-columns:1fr;gap:24px}.about h2,.faq h2{margin-bottom:0}.faq h2 br{display:none}details p{padding-right:0}.join{width:calc(100% - 32px);margin-bottom:30px;grid-template-columns:1fr;padding:40px 28px;gap:24px}.join h2{font-size:36px}.join-card{border-left:0;border-top:1px solid #43516a;padding:26px 0 0}.join-card h3 br{display:none}footer{flex-wrap:wrap;padding:0 28px 30px}footer p{order:3;width:100%;margin:0}footer>span{margin-left:auto}}@media(max-width:380px){h1{font-size:39px}.actions{flex-direction:column;align-items:start}.facts strong{font-size:21px}.day{padding:14px}.day b{font-size:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Compact About and FAQ layouts */
.about{display:block;padding-top:72px;padding-bottom:64px}.about-heading{margin-bottom:30px}.about-heading h2{margin-bottom:14px}.about-heading .lead{margin:0;font-size:20px}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:56px}.about-content h3{font-size:23px;margin:0 0 16px;min-height:60px}.about-content p{margin:0}.about .purpose{border:0;border-radius:8px;background:var(--blue);margin-top:30px;padding:24px 28px;display:flex;align-items:center;gap:34px}.purpose span{flex-shrink:0}.purpose p{margin:0;font-size:19px;color:var(--ink);line-height:1.5}.faq{display:block;padding-top:64px;padding-bottom:72px}.faq-heading{margin-bottom:30px}.faq-heading h2{margin-bottom:0}.faq-list{display:grid;grid-template-columns:1fr 1fr;column-gap:48px;align-items:start}.faq-list details,.faq-list details:first-child{padding:22px 0;border-top:1px solid var(--border);border-bottom:0}.faq-list details:last-child,.faq-list details:nth-last-child(2){border-bottom:1px solid var(--border)}.faq-list summary{font-size:16px}.faq-list details p{font-size:15px;padding-right:20px}@media(max-width:760px){.about{padding-top:54px;padding-bottom:48px}.about-content{grid-template-columns:1fr;gap:28px}.about-content h3{min-height:0;font-size:22px;margin-bottom:12px}.about-content h3 br{display:none}.about .purpose{padding:22px;display:block;margin-top:26px}.purpose p{font-size:18px;margin-top:10px}.faq{padding-top:48px;padding-bottom:54px}.faq-heading{margin-bottom:24px}.faq-list{grid-template-columns:1fr}.faq-list details:nth-last-child(2){border-bottom:0}.faq-list details p{padding-right:0}}
/* Refined experience cards */
.experience .three{gap:22px}.experience .three article{background:#fff;border:1px solid #dce4ee;border-radius:12px;padding:32px;box-shadow:0 6px 20px rgba(16,34,63,.025)}.experience .card-no{display:flex;align-items:center;gap:16px;border-bottom:0;padding:0;font-size:25px;font-weight:400;letter-spacing:-.8px;line-height:1.2;color:#547295}.experience .card-no:after{content:'';height:1px;flex:1;background:#e5ebf2}.experience .three h3{font-size:22px;font-weight:600;letter-spacing:-.6px;line-height:1.3;margin:27px 0 14px}.experience .three p{font-size:15px;line-height:1.8;margin:0;color:#5c6b7d}@media(max-width:1000px){.experience .three{gap:18px}.experience .three article{padding:26px}.experience .three h3{font-size:21px}}@media(max-width:760px){.experience .three{gap:16px}.experience .three article{padding:27px}.experience .card-no{font-size:24px}.experience .three h3{font-size:23px;margin-top:23px}.experience .three p{font-size:16px;line-height:1.7}}

/* Audience journeys */
.audience-section{padding-top:64px;border-top:1px solid var(--border)}.audience-heading{max-width:680px;margin-bottom:32px}.audience-heading p{font-size:17px}.audience-options{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.audience-options article{border:1px solid var(--border);border-radius:12px;padding:30px;display:flex;flex-direction:column}.audience-options h3{margin:0 0 12px}.audience-options p{margin:0 0 25px;flex:1}.audience-options .button{align-self:start;min-width:150px}.audience-hero{max-width:1200px;margin:auto;padding:64px 32px 70px;display:grid;grid-template-columns:1.25fr .75fr;gap:75px;align-items:center}.back-link{display:block;font-size:14px;color:var(--muted);margin-bottom:36px;text-decoration:underline;text-underline-offset:4px}.audience-hero h1{font-size:clamp(42px,4.3vw,62px);line-height:1.1;margin:22px 0}.audience-hero>div>p{font-size:18px;line-height:1.75;margin:0 0 30px;max-width:610px}.audience-facts{background:var(--navy);color:white;border-radius:12px;padding:34px}.audience-facts .eyebrow{color:var(--accent)}.audience-facts dl{margin:24px 0 0}.audience-facts dl>div{padding:17px 0;border-top:1px solid #354763}.audience-facts dt{font-size:12px;letter-spacing:.8px;color:#b7c8dc}.audience-facts dd{margin:5px 0 0;font-size:16px;line-height:1.5}.audience-story{padding-top:60px;border-top:1px solid var(--border)}.audience-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:40px}.audience-benefits article{background:var(--blue);border-radius:10px;padding:30px}.audience-benefits .card-no{border:0;font-size:14px;padding:0}.audience-benefits h3{font-size:23px;margin:24px 0 15px}.audience-benefits p{margin:0;font-size:16px}.audience-message{display:grid;grid-template-columns:1fr 1.1fr;gap:75px;padding-top:0}.audience-message .lead{margin-top:0}.audience-message h2{margin-bottom:0}.audience-message .textlink,.school-share .textlink{text-decoration:underline;text-underline-offset:4px;color:var(--link)}.parent-planning,.school-share{border-top:1px solid var(--border);padding-top:60px}.parent-planning>p{max-width:760px;font-size:17px;margin-bottom:28px}.school-steps{margin:0;padding-left:23px}.school-steps li{padding-left:8px;margin-bottom:25px}.school-steps p{margin:8px 0 0}.school-share blockquote{margin:28px 0;padding:26px 30px;background:var(--blue);border-left:3px solid var(--link);font-size:17px;line-height:1.8;color:var(--ink);max-width:900px}.school-share .textlink{display:inline-block;margin-left:22px}.audience-next{max-width:1136px;margin:0 auto 30px;background:var(--blue);border-radius:12px;padding:40px;display:flex;justify-content:space-between;align-items:center;gap:40px}.audience-next h2{font-size:32px;margin:15px 0}.audience-next p{margin:0}.audience-next-actions{display:flex;flex-direction:column;align-items:center;gap:16px;flex-shrink:0}.audience-crosslinks{max-width:1136px;margin:0 auto 55px;display:flex;gap:28px;justify-content:center;font-size:14px;color:var(--link)}.audience-crosslinks a:hover{text-decoration:underline}@media(max-width:1000px){.audience-hero{gap:35px}.audience-benefits{gap:16px}.audience-benefits article{padding:24px}.audience-message{gap:40px}.audience-next{margin-left:32px;margin-right:32px}.audience-options article{padding:25px}}@media(max-width:760px){.audience-section{padding-top:54px}.audience-options{grid-template-columns:1fr;gap:16px}.audience-options article{padding:27px}.audience-options p{margin-bottom:20px}.audience-hero{grid-template-columns:1fr;padding:35px 28px 50px;gap:32px}.back-link{margin-bottom:28px}.audience-hero h1{font-size:43px;letter-spacing:-1.6px}.audience-hero h1 br{display:none}.audience-hero>div>p{font-size:17px}.audience-facts{padding:28px}.audience-benefits{grid-template-columns:1fr;gap:16px;margin-top:28px}.audience-benefits article{padding:27px}.audience-message{grid-template-columns:1fr;gap:25px;padding-top:0}.audience-message h2 br{display:none}.audience-story,.parent-planning,.school-share{padding-top:50px}.school-share blockquote{font-size:16px;margin-top:24px;padding:22px}.school-share .textlink{display:block;margin:20px 0 0}.audience-next{margin:0 28px 30px;padding:30px;display:block}.audience-next h2{font-size:30px}.audience-next-actions{align-items:start;margin-top:26px}.audience-crosslinks{gap:24px;margin-bottom:45px}.audience-heading h2 br{display:none}}
/* Shared finishing details */
body{font-size:1rem}.eyebrow{font-size:.75rem}.site-header{box-shadow:0 1px 12px rgba(16,34,63,.025)}.nav-audiences{border:0;padding:0;position:relative;margin:0}.nav-audiences summary{font-size:14px;font-weight:600;padding:10px 15px;border-radius:6px;align-items:center;gap:10px}.nav-audiences summary:after{content:'';width:6px;height:6px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(45deg);margin-top:-4px}.nav-audiences summary::-webkit-details-marker{display:none}.nav-audiences[open] summary,.nav-audiences summary:hover{background:var(--blue);color:var(--link)}.nav-audiences[open] summary:after{content:'';transform:rotate(225deg);margin-top:4px}.nav-audience-links{position:absolute;top:calc(100% + 12px);left:0;width:270px;padding:9px;background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:0 15px 35px rgba(16,34,63,.1)}.nav-audience-links a{display:block;padding:12px;border-radius:6px}.nav-audience-links a:hover{background:var(--blue)}.nav-audience-links strong{display:block;font-size:15px}.nav-audience-links span{display:block;color:var(--muted);font-size:13px;margin-top:3px}.hero-meta{gap:12px 20px}.hero-copy{padding-top:60px}.hero-art img{aspect-ratio:3/2}.audience-section{border-top:0;padding-top:64px;padding-bottom:62px}.audience-heading{max-width:760px}.audience-heading h2{font-size:36px}.audience-options article{background:var(--blue);border-color:transparent;padding:30px}.audience-options .button{background:white;color:var(--navy);border:1px solid #cad6e5}.audience-options .button:hover{background:var(--navy);color:white;filter:none}.experience{padding-top:64px;border-top:1px solid var(--border)}.experience .three p{font-size:16px}.experience .section-heading{max-width:740px}.discipline-strip{margin-top:36px;padding-top:25px;border-top:1px solid var(--border);display:flex;gap:30px;align-items:start}.discipline-strip>span{font-size:14px;font-weight:600;max-width:155px;color:var(--ink);flex-shrink:0}.discipline-strip ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}.discipline-strip li{border:1px solid var(--border);border-radius:50px;padding:6px 13px;font-size:14px;color:var(--muted)}.day-detail{min-height:265px}.day-detail p{font-size:16px}.about-content h3{font-weight:600}.about-content p{line-height:1.8}.faq-list{align-items:start}.faq-column details,.faq-column details:first-child{padding:22px 0;border-top:1px solid var(--border);border-bottom:0}.faq-column details:last-child{border-bottom:1px solid var(--border)}.faq-column details p{font-size:16px;line-height:1.75}.faq-column summary{line-height:1.5}.visit-section{padding-top:64px;padding-bottom:80px;border-top:1px solid var(--border)}.visit-heading{max-width:650px;margin-bottom:34px}.visit-heading h2{margin-bottom:15px}.visit-heading p{font-size:17px;margin:0}.visit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.visit-grid article{border-top:2px solid #2e547e;padding:24px 0}.visit-grid h3{font-size:24px;margin:18px 0 16px;font-weight:600;min-height:63px}.visit-grid p{margin:0;line-height:1.75}.registration-note{margin-top:16px;border:1px solid var(--border);border-radius:10px;padding:27px 30px;display:flex;align-items:center;gap:50px;justify-content:space-between;background:var(--blue)}.registration-note h3{font-size:21px;margin:0 0 8px}.registration-note p{margin:0;max-width:640px}.registration-note .button{flex-shrink:0}.site-footer{display:block;background:var(--navy);color:white;max-width:none;margin:0;padding:0}.footer-main{max-width:1200px;margin:auto;padding:55px 32px 45px;display:grid;grid-template-columns:1.3fr 1fr 1fr 1.15fr;gap:40px;align-items:start}.site-footer .logo{font-size:32px}.site-footer .logo span{color:var(--accent)}.footer-brand>p{font-size:14px;color:#b6c6d9;margin:18px 0 0;line-height:1.7}.footer-brand>p+p{margin-top:10px}.footer-column h3{font-size:14px;letter-spacing:0;margin:0 0 20px;color:white;font-weight:600}.footer-column>a{display:block;font-size:14px;color:#b6c6d9;margin:10px 0}.footer-column>a:hover,.footer-bottom a:hover{color:white;text-decoration:underline;text-underline-offset:4px}.footer-column>p{font-size:14px;color:#b6c6d9;margin:0 0 14px}.footer-bottom{max-width:1136px;margin:auto;border-top:1px solid #31435d;display:flex;justify-content:space-between;gap:25px;padding:22px 0 26px;font-size:12px;color:#9fb1c8}.school-share-actions{display:flex;align-items:center;gap:24px;margin-top:24px}.school-share-actions .button{border:0;cursor:pointer}.school-share-actions .textlink{margin:0}.copy-feedback{font-size:14px;margin:15px 0 0;min-height:23px}.audience-benefits article{border:1px solid var(--border);background:white}.audience-benefits .card-no{font-size:25px;font-weight:400;color:#547295}.audience-message{padding-top:0}.audience-next{background:var(--navy);color:white}.audience-next .eyebrow{color:var(--accent)}.audience-next p{color:#b6c6d9}.audience-next .button{background:white;color:var(--navy)}.audience-next .textlink{color:white}.audience-crosslinks{margin-bottom:40px}.back-link:hover{color:var(--link)}
@media(max-width:1050px){.nav-shell{padding:18px 28px}.menu-toggle{display:block;margin-left:auto;border:1px solid var(--border);background:white;padding:9px 15px;border-radius:6px;font-size:14px;font-weight:600}.nav-shell{flex-wrap:wrap;gap:0}#main-nav{display:none;width:100%;flex-direction:column;align-items:stretch;padding-top:20px;gap:5px}#main-nav.open{display:flex}#main-nav>a:not(.button){padding:12px;font-size:15px}.nav-audiences summary{padding:12px;font-size:15px}.nav-audience-links{position:static;width:auto;margin-top:5px;margin-left:12px;box-shadow:none;border:0;border-left:2px solid var(--border);border-radius:0;padding:0 8px}.nav-audience-links a{padding:10px 12px}.nav-audience-links span{display:none}#main-nav .nav-cta{margin:8px 0 0;align-self:start}.footer-main{gap:28px;grid-template-columns:1.2fr 1fr 1fr}.footer-event{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:20px;align-items:baseline}.footer-event h3,.footer-event p,.footer-event a{margin:0}.footer-bottom{margin:0 32px}.registration-note{gap:25px}}
@media(max-width:760px){.nav-shell{padding:18px 22px}.audience-section{padding-top:48px;padding-bottom:48px}.audience-heading h2{font-size:32px}.audience-options article{padding:27px}.experience{padding-top:48px}.discipline-strip{display:block;margin-top:28px;padding-top:24px}.discipline-strip>span{display:block;max-width:none;margin-bottom:15px}.discipline-strip li{font-size:13px;padding:6px 12px}.day-detail{min-height:0}.faq-list{gap:0}.faq-column details:last-child{border-bottom:0}.faq-column:last-child details:last-child{border-bottom:1px solid var(--border)}.visit-section{padding-top:48px;padding-bottom:50px}.visit-heading h2 br{display:none}.visit-grid{grid-template-columns:1fr;gap:8px}.visit-grid article{padding:22px 0}.visit-grid h3{min-height:0;font-size:23px;margin:15px 0 12px}.visit-grid h3 br{display:none}.registration-note{display:block;margin-top:15px;padding:25px}.registration-note .button{margin-top:22px}.footer-main{grid-template-columns:1fr 1fr;padding:40px 28px 35px;gap:35px 25px}.footer-brand{grid-column:1/-1}.footer-brand>p+p br{display:none}.footer-event{grid-column:1/-1;display:block}.footer-event h3{margin-bottom:16px}.footer-event p{margin-bottom:12px}.footer-event a{margin-top:16px}.footer-bottom{margin:0 28px;align-items:start;font-size:12px}.school-share-actions{display:block}.school-share-actions .textlink{margin-top:20px}.audience-next{padding:30px}.hero-copy{padding-top:40px}.hero-meta{font-size:11px}.audience-benefits p{font-size:16px}}
/* A varied editorial rhythm */
.audience-section{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center;padding-top:62px;padding-bottom:62px}.audience-heading{margin:0}.audience-heading h2{font-size:38px}.audience-heading p{margin-bottom:0}.audience-paths{border-top:1px solid var(--border)}.audience-paths>a{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:23px 0;border-bottom:1px solid var(--border)}.audience-paths strong{font-size:21px;font-weight:600;letter-spacing:-.4px;display:block}.audience-paths small{font-size:14px;color:var(--muted);display:block;margin-top:5px}.path-label{font-size:13px;color:var(--link);border:1px solid #cbd9ea;border-radius:30px;padding:6px 14px;flex-shrink:0}.audience-paths>a:hover .path-label{background:var(--navy);border-color:var(--navy);color:white}.audience-paths>a:hover strong{color:var(--link)}.experience .section-heading{text-align:left;max-width:760px;margin:0 0 36px}.experience .three{grid-template-columns:1.05fr 1fr;gap:0 50px}.experience .three article{background:white;border:0;border-radius:0;box-shadow:none;padding:28px 0;display:grid;grid-template-columns:46px 1fr;gap:0 15px}.experience .three article:first-child{grid-row:span 2;background:var(--navy);color:white;border-radius:12px;padding:38px;display:block;margin-right:10px}.experience .three article:nth-child(2){border-bottom:1px solid var(--border);padding-top:8px}.experience .three .card-no{font-size:20px;grid-row:span 2;display:block;color:#68819d}.experience .three .card-no:after{display:none}.experience .three h3{margin:0 0 12px;font-size:25px}.experience .three p{line-height:1.8;margin:0}.experience .three article:first-child .card-no{color:var(--accent);font-size:15px;border-bottom:1px solid #354761;padding-bottom:20px;margin-bottom:34px}.experience .three article:first-child h3{font-size:33px;line-height:1.15;margin:0 0 22px;max-width:340px;font-weight:500;letter-spacing:-1px}.experience .three article:first-child p{color:#c3d0df;max-width:350px}.discipline-strip{margin-top:35px}.programme{background:#f5f7fb}.programme .days{gap:0;border-bottom:1px solid #cbd7e5}.programme .day{border:0;border-radius:0;background:transparent;padding:20px 24px 25px;position:relative;border-bottom:3px solid transparent}.programme .day+.day{border-left:1px solid #dce4ee}.programme .day strong{font-size:34px;font-weight:400;margin:14px 0 12px;color:#68819d}.programme .day.active{background:#e8eef7;border-color:var(--link);color:var(--navy)}.programme .day.active strong{color:var(--link)}.programme .day:hover{background:#e8eef7}.programme .day-detail{background:var(--navy);color:white;border:0;border-radius:12px;margin-top:30px;padding:38px 42px;gap:65px;min-height:280px}.programme .day-detail .eyebrow{color:var(--accent)}.programme .day-detail h3{font-size:30px;font-weight:500}.programme .day-detail p,.programme .day-detail ul{color:#c2d0e1}.programme .day-detail li::marker{color:var(--accent)}.about{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center;padding-top:80px;padding-bottom:80px}.about-story>p{line-height:1.8}.about-story .lead{font-size:19px;line-height:1.5;margin:0 0 25px}.about-story h2{font-size:48px;margin-bottom:22px}.about-story>p:last-child{margin-bottom:0}.about-statement{background:var(--blue);border-radius:12px;padding:38px 42px}.about-statement h3{font-size:52px;line-height:1.06;font-weight:400;letter-spacing:-2px;margin:28px 0}.about-statement h3 em{font-style:normal;color:var(--link)}.about-statement p{font-size:16px;line-height:1.8;margin:0}.statement-signature{display:block;font-size:11px;letter-spacing:1.2px;font-weight:700;color:#6b7e94;border-top:1px solid #d6e0ec;padding-top:22px;margin-top:25px}.faq-heading{text-align:center;max-width:700px;margin:0 auto 38px}.faq{padding-top:65px;padding-bottom:70px}.visit-section{max-width:none;padding-left:max(32px,calc((100% - 1136px)/2));padding-right:max(32px,calc((100% - 1136px)/2));background:var(--navy);color:white;border:0;padding-top:70px;padding-bottom:65px}.visit-heading .eyebrow,.visit-grid .eyebrow{color:var(--accent)}.visit-heading>p,.visit-grid p{color:#b7c7dc}.visit-heading h2{font-size:44px;font-weight:500}.visit-grid{gap:45px}.visit-grid article{border-top:1px solid #425670}.visit-grid h3{font-size:23px;font-weight:500}.registration-note{background:transparent;border:0;border-top:1px solid #425670;border-radius:0;margin-top:18px;padding:30px 0 0}.registration-note p{color:#b7c7dc}.registration-note .button{background:white;color:var(--navy)}.site-footer .footer-main{padding-top:45px;border-top:1px solid #31435d}.parents-page .audience-benefits{display:block;margin-top:32px;border-top:1px solid var(--border)}.parents-page .audience-benefits article{display:grid;grid-template-columns:55px .8fr 1.2fr;gap:25px;padding:28px 0;border:0;border-bottom:1px solid var(--border);border-radius:0;align-items:start}.parents-page .audience-benefits h3{margin:0;font-size:24px}.parents-page .audience-benefits .card-no{font-size:22px;line-height:1.4}.schools-page .audience-benefits{gap:0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.schools-page .audience-benefits article{border:0;border-radius:0;padding:25px 30px 25px 0}.schools-page .audience-benefits article+article{border-left:1px solid var(--border);padding-left:30px}.schools-page .audience-benefits .card-no{font-size:15px}.students-page .audience-benefits article:first-child{background:var(--navy);border-color:var(--navy);color:white}.students-page .audience-benefits article:first-child p{color:#c2d0e1}.students-page .audience-benefits article:first-child .card-no{color:var(--accent)}
@media(max-width:1000px){.audience-section{gap:40px}.experience .three{gap:0 30px}.experience .three article:first-child{padding:30px}.about{gap:40px}.about-statement{padding:32px}.about-statement h3{font-size:45px}.parents-page .audience-benefits article{grid-template-columns:40px .9fr 1.1fr;gap:20px}}
@media(max-width:760px){.audience-section{grid-template-columns:1fr;gap:28px;padding-top:48px;padding-bottom:48px}.audience-heading h2{font-size:34px}.audience-heading h2 br{display:none}.audience-paths>a{padding:21px 0;gap:15px}.audience-paths strong{font-size:21px}.audience-paths small{font-size:14px;max-width:235px}.experience .three{grid-template-columns:1fr;gap:0}.experience .three article:first-child{grid-row:auto;margin:0 0 25px;padding:30px}.experience .three article:first-child h3{font-size:31px}.experience .three article{padding:25px 0;grid-template-columns:35px 1fr;gap:0 12px}.experience .three article:nth-child(2){padding-top:5px}.experience .three h3{font-size:24px}.programme .days{grid-template-columns:1fr 1fr;gap:0}.programme .day{padding:16px 15px 20px}.programme .day:nth-child(3){border-left:0}.programme .day:nth-child(-n+2){border-top:1px solid var(--border)}.programme .day strong{font-size:30px}.programme .day-detail{padding:28px;gap:12px;min-height:0;margin-top:25px}.programme .day-detail h3{font-size:27px}.about{grid-template-columns:1fr;gap:32px;padding-top:55px;padding-bottom:55px}.about-story h2{font-size:38px}.about-story h2 br{display:none}.about-statement{padding:30px}.about-statement h3{font-size:44px}.faq-heading{text-align:left;margin-bottom:26px}.faq{padding-top:48px;padding-bottom:50px}.visit-section{padding:50px 28px}.visit-heading h2{font-size:36px}.visit-grid{gap:8px}.registration-note{padding-top:25px}.parents-page .audience-benefits article{grid-template-columns:35px 1fr;gap:12px}.parents-page .audience-benefits article p{grid-column:2}.parents-page .audience-benefits .card-no{grid-row:span 2}.schools-page .audience-benefits article{padding:25px 0}.schools-page .audience-benefits article+article{border-left:0;border-top:1px solid var(--border);padding-left:0}}
/* Photography within the story */
.experience-photo{position:relative;margin:36px 0 0;border-radius:12px;overflow:hidden;height:360px;background:#253d58}.experience-photo img{width:100%;height:100%;object-fit:cover;object-position:center 55%;display:block}.experience-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,23,42,.68),transparent 65%);pointer-events:none}.experience-photo figcaption{position:absolute;inset:0;z-index:1;padding:35px 38px;display:flex;flex-direction:column;justify-content:end;color:white}.experience-photo figcaption>span{font-size:12px;letter-spacing:1.5px;font-weight:700;color:#d4e6fc}.experience-photo figcaption strong{font-size:34px;line-height:1.1;font-weight:500;letter-spacing:-.8px;margin-top:15px}.experience-photo figcaption small{position:absolute;right:16px;bottom:12px;font-size:12px;color:white}.about-photo{margin:28px 0 0;border-radius:9px;overflow:hidden;background:var(--blue)}.about-photo img{width:100%;height:230px;object-fit:cover;object-position:center 45%;display:block}.about-photo figcaption{padding:12px 15px;font-size:12px;color:var(--muted);line-height:1.5;display:flex;justify-content:space-between;gap:15px}.about-photo figcaption span{font-size:11px;white-space:nowrap;color:#6f7f91}.audience-photo{position:relative;max-width:1136px;margin:0 auto 45px;border-radius:12px;overflow:hidden;height:350px;background:var(--blue)}.audience-photo img{width:100%;height:100%;object-fit:cover;object-position:center 45%;display:block}.audience-photo figcaption{position:absolute;bottom:12px;right:15px;background:rgba(16,34,63,.8);color:white;font-size:12px;border-radius:4px;padding:3px 8px}.audience-photo+.audience-story{border-top:0;padding-top:30px}@media(max-width:1000px){.audience-photo{margin-left:32px;margin-right:32px}.experience-photo{height:320px}.about-photo figcaption{display:block}.about-photo figcaption span{display:block;margin-top:4px}}@media(max-width:760px){.experience-photo{height:300px;margin-top:25px}.experience-photo figcaption{padding:28px}.experience-photo figcaption strong{font-size:29px}.experience-photo:after{background:linear-gradient(0deg,rgba(8,23,42,.8),transparent 90%)}.about-photo img{height:240px}.about-photo figcaption{display:flex;flex-wrap:wrap}.about-photo figcaption span{margin:0}.audience-photo{height:285px;margin:0 28px 25px}.audience-photo+.audience-story{padding-top:28px}}
/* Compact opening banner on phones only */
@media(max-width:600px){
.hero{border-radius:10px}.hero-copy{padding:28px 24px 24px}.hero .eyebrow{font-size:12px;letter-spacing:1px;gap:9px}.hero .line{width:18px;flex-shrink:0}.hero h1{font-size:clamp(34px,8.7vw,45px);line-height:1.08;letter-spacing:-1.5px;margin:18px 0 16px}.hero-copy>p{font-size:16px;line-height:1.55;margin:0;max-width:none}.hero .actions{flex-direction:row;flex-wrap:wrap;align-items:center;gap:15px 20px;margin:22px 0 20px}.hero .actions .button{padding:12px 15px;font-size:13px}.hero .textlink{font-size:13px}.hero .hero-meta{gap:8px 15px;font-size:12px;letter-spacing:.6px}.hero-art{height:165px;min-height:0}.hero-art img{object-position:center 48%}.hero .image-label{display:none}.hero .image-note{font-size:12px;bottom:8px;right:10px;background:rgba(16,34,63,.6);padding:2px 6px;border-radius:3px}.hero-art:after{background:linear-gradient(0deg,rgba(7,23,42,.28),transparent 65%)}
}
/* Booking journey */
.programme-booking{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:24px}.programme-booking .schedule-note{margin:0}.programme-booking .button{flex-shrink:0}.booking-intro{max-width:1200px;margin:auto;padding:55px 32px 65px;display:grid;grid-template-columns:1.15fr .85fr;gap:75px;align-items:center}.booking-intro h1{font-size:clamp(40px,4.3vw,62px);line-height:1.1;letter-spacing:-2px}.booking-intro>div>p{font-size:18px;max-width:570px}.booking-overview{background:var(--navy);color:white;border-radius:12px;padding:38px}.booking-overview .eyebrow{color:var(--accent)}.booking-overview h2{font-weight:500;font-size:40px}.booking-overview p{color:#bdcde0;font-size:16px;line-height:1.8}.booking-overview .textlink{color:white;text-decoration:underline;text-underline-offset:5px}.booking-content{max-width:1200px;margin:auto;border-top:1px solid var(--border);padding:60px 32px 80px;display:grid;grid-template-columns:1.25fr .75fr;gap:80px}.booking-form-wrap h2{font-size:32px;margin-bottom:15px}.booking-form-wrap>p{margin-bottom:30px;line-height:1.75}.form-row{margin-bottom:22px}.form-row label{display:block;font-size:15px;font-weight:600;line-height:1.5;margin-bottom:8px}.form-row label span{font-size:13px;color:var(--muted);font-weight:400}.form-row input,.form-row select,.form-row textarea{width:100%;background:white;border:1px solid #c5d0de;border-radius:6px;padding:12px 13px;font:inherit;font-size:16px;color:var(--ink);line-height:1.5;min-height:49px}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:2px solid #6385d6;outline-offset:2px}.form-row input::placeholder,.form-row textarea::placeholder{color:#788698;opacity:1}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-row textarea{resize:vertical}.form-note{font-size:13px;line-height:1.7;margin:0 0 23px}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.booking-form-wrap .button{border:0;cursor:pointer;font:inherit;font-size:15px;font-weight:600}.booking-form-wrap .button:disabled{opacity:.65;cursor:wait}.booking-guidance>div{padding:28px 0;border-top:1px solid var(--border)}.booking-guidance>div:first-child{padding-top:0;border:0}.booking-guidance h3{font-size:24px;margin:17px 0}.booking-guidance ul{padding-left:20px;color:var(--muted);line-height:1.75}.booking-guidance li{margin:14px 0}.booking-guidance .textlink{color:var(--link);text-decoration:underline;text-underline-offset:4px}.booking-guidance .booking-family{background:var(--blue);border:0;border-radius:10px;padding:25px;margin-top:20px}.booking-family h3{margin-top:0}.booking-status{margin-top:22px}.booking-status.success,.booking-status.error{padding:22px;border-radius:8px}.booking-status.success{background:var(--blue);border:1px solid #c9d9ea}.booking-status.error{background:#fff2f2;color:#8b2c2c;border:1px solid #efcece}.booking-status strong{display:block;font-size:18px}.booking-status p{margin:9px 0 0;font-size:15px}@media(max-width:1000px){.booking-intro{gap:40px}.booking-content{gap:40px}.form-pair{grid-template-columns:1fr;gap:0}}@media(max-width:760px){.programme-booking{align-items:start;flex-direction:column;gap:20px}.booking-intro{grid-template-columns:1fr;padding:35px 28px 48px;gap:28px}.booking-intro h1{font-size:42px}.booking-intro h1 br{display:none}.booking-intro>div>p{font-size:17px}.booking-overview{padding:28px}.booking-overview h2{font-size:34px}.booking-content{grid-template-columns:1fr;padding:45px 28px 55px;gap:45px}.booking-form-wrap h2{font-size:30px}.booking-guidance{border-top:1px solid var(--border);padding-top:30px}}
/* Supplied SVG brand artwork, scaled proportionally */
.brand{display:block;flex-shrink:0}.brand-logo{display:block;width:300px;max-width:100%;height:auto;object-fit:contain;background:transparent}.nav-shell{padding-top:12px;padding-bottom:12px}.footer-logo{display:inline-block;background:transparent;padding:0;max-width:100%}.footer-logo .brand-logo{width:250px;height:auto;filter:none}.footer-main{grid-template-columns:1.45fr .9fr .9fr 1fr;gap:30px}@media(max-width:1050px){.footer-main{grid-template-columns:1.3fr 1fr 1fr}.footer-event{grid-column:1/-1}.nav-shell{padding-top:10px;padding-bottom:10px}}@media(max-width:760px){.brand-logo{width:245px;height:auto}.nav-shell{padding-left:22px;padding-right:22px}.footer-main{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}@media(max-width:380px){.brand-logo{width:205px;height:auto}.nav-shell{padding-left:18px;padding-right:18px}.menu-toggle{padding:8px 12px}}

/* Compact phone navigation */
@media(max-width:760px){.site-header .nav-shell{padding:8px 18px}.site-header .brand-logo{width:180px;max-width:100%;height:auto}.site-header .menu-toggle{min-width:64px;min-height:44px;padding:8px 12px;line-height:1.25}}

/* Fees, applications and office contacts */
.practical-details{display:grid;grid-template-columns:.8fr 1fr 1.25fr;gap:28px;border-top:1px solid var(--border);padding:30px 0;margin-top:32px}.practical-details h3{font-size:26px;margin:14px 0 8px}.practical-details p{margin:0}.query-contact a{display:block;color:var(--link);font-size:15px;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere;margin-top:9px}.booking-price{border-top:1px solid #354763;padding-top:22px;margin:22px 0}.booking-price strong{font-size:30px;line-height:1.4}.booking-price strong span{display:block;font-size:14px;font-weight:400;color:#bdcde0}.booking-price p{margin:18px 0 0}.footer-column>a[href^="mailto:"]{overflow-wrap:anywhere}.footer-column .footer-query-label{margin-top:22px;font-weight:600;color:white}@media(max-width:760px){.practical-details{grid-template-columns:1fr;gap:25px}.practical-details article+article{border-top:1px solid var(--border);padding-top:24px}}

/* Clear, separate contact methods */
.query-contact .contact-method{display:block;margin-top:14px;padding:15px 17px;background:var(--blue);border:1px solid var(--border);border-radius:8px}.query-contact .contact-method>span{display:block;font-size:12px;font-weight:600;color:var(--muted);line-height:1.4;margin-bottom:6px}.query-contact .contact-method>a{display:block;font-size:15px;font-weight:600;line-height:1.6;margin:0;overflow-wrap:anywhere;text-decoration:none;color:var(--link)}.query-contact .contact-method>a:hover{text-decoration:underline;text-underline-offset:4px}.query-contact .contact-method>a:focus-visible{outline:2px solid var(--link);outline-offset:4px;border-radius:2px}.booking-guidance .query-contact h3{margin-bottom:14px}.booking-guidance .query-contact>p{font-size:15px;line-height:1.7;margin:0 0 20px}

/* Balanced practical information on the navy panel */
.visit-section .practical-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px;border-color:#425670;margin-top:8px;padding:30px 0 10px}.visit-section .practical-details article{min-width:0}.visit-section .practical-details .eyebrow{color:var(--accent)}.visit-section .practical-details h3{color:white;font-size:25px;line-height:1.3;font-weight:500;margin:16px 0 12px}.visit-section .practical-details p{color:#b7c7dc;line-height:1.7}.visit-section .query-contact .contact-method{background:rgba(255,255,255,.05);border-color:#425670;padding:12px 15px;margin-top:12px}.visit-section .query-contact .contact-method>span{color:#b7c7dc}.visit-section .query-contact .contact-method>a{color:white;font-size:14px}.visit-section .query-contact .contact-method>a:focus-visible{outline-color:white}@media(max-width:900px){.visit-section .practical-details{gap:25px}}@media(max-width:760px){.visit-section .practical-details{grid-template-columns:1fr;gap:24px;padding-top:25px}.visit-section .practical-details article+article{border-color:#425670}}

/* Clean transition from audience links into the experience */
.audience-section{padding-bottom:24px}.audience-paths>a:last-child{border-bottom:0}.audience-section+.experience{border-top:0;padding-top:32px}@media(max-width:760px){.audience-section{padding-bottom:0}.audience-section+.experience{padding-top:28px}}

/* Preserve the supplied ATA lettering and colour contrast */
.site-footer .footer-logo{background:#fff;border-radius:6px;padding:8px 10px;max-width:100%}.site-footer .footer-logo .brand-logo{filter:none;width:250px;max-width:100%;height:auto}

.wp-site-blocks{padding:0}.wp-site-blocks>*{margin-block-start:0}.wp-block-template-part{display:contents}.wp-site-blocks main{margin:0;max-width:none}.admin-bar .site-header{top:32px}[hidden]{display:none!important}@media(max-width:782px){.admin-bar .site-header{top:46px}}

/* Keep WordPress layout wrappers from altering the preview spacing. */
.wp-site-blocks{margin:0;padding:0;max-width:none}.wp-site-blocks>main{margin:0!important;padding:0;max-width:none!important}.wp-site-blocks>.wp-block-template-part{margin:0!important}.wp-site-blocks main>section{margin-block-start:0}.wp-site-blocks .site-header,.wp-site-blocks .site-footer{margin:0}.wp-site-blocks .hero{margin:24px auto 0}
/* Fix joined words in mobile headings */
@media (max-width: 760px) {
  .about-story h2 br,
  .visit-heading h2 br {
    display: initial !important;
  }
}