/* Kay Academy: performance, colour and room to breathe. */
:root{--blue:#174ed0;--navy:#102759;--cyan:#04b6de;--ink:#152b50;--muted:#52617a}
body{font-family:'Trebuchet MS',Arial,sans-serif;background:#fff;color:var(--ink)}
header{height:94px;border-bottom:0;box-shadow:0 2px 15px #152b5009;padding:10px 5%}header .logo{width:120px;height:72px}nav a{font-size:14px}nav .button{border-radius:0;padding:13px 18px}.button{border-radius:0;gap:18px;background:var(--blue);border-color:var(--blue)}.eyebrow{font-size:12px;letter-spacing:2px}.section{padding-top:90px;padding-bottom:90px}h2{letter-spacing:-2px}em{color:var(--blue)}
.hero{grid-template-columns:43% 57%;min-height:700px;max-height:none;background:white;align-items:stretch}.hero-copy{padding:24px 9% 42px 12%;display:flex;flex-direction:column;justify-content:center}.logo-performance{margin-bottom:12px}.logo-stage{width:min(100%,235px)}.logo-replay{font-size:12px;border:0;padding:3px 0;min-height:28px;background:none}.hero-copy .eyebrow{margin:12px 0 20px;font-size:11px}.hero-copy h1{font-size:clamp(44px,4.6vw,72px);line-height:1.08;letter-spacing:-3px;margin-bottom:24px}.hero-copy>p:not(.eyebrow){font-size:17px;line-height:1.7;color:#52617a;max-width:370px}.hero-copy .button{align-self:flex-start;margin-top:8px}.hero-copy .text-link{font-size:13px;margin-top:18px}.hero-photo{min-height:700px;background:#152b50}.hero-photo:after{display:none}.hero-slides{position:absolute;inset:0}.hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.3s ease;visibility:hidden}.hero-slide.is-active{opacity:1;visibility:visible}.hero-slide.is-leaving{visibility:visible}.hero-photo-bottom{position:absolute;inset:auto 0 0;padding:80px 35px 32px;background:linear-gradient(transparent,#07162bc9);color:white;display:flex;align-items:end;justify-content:space-between;gap:20px;z-index:2}.hero-photo-bottom p{font:italic 24px/1.3 Georgia,serif;margin:0}.hero-photo-bottom strong{font-weight:normal}.hero-photo-bottom button{flex-shrink:0;border:1px solid #ffffff70;border-radius:30px;background:#10275950;color:white;padding:10px 14px;font-size:12px;min-height:44px}.hero-count{position:absolute;top:27px;right:30px;color:white;letter-spacing:3px;font-size:11px;background:#10275980;padding:9px 12px;z-index:2}.welcome-strip{padding:22px 7%;display:flex;gap:22px;justify-content:space-between;align-items:center;background:#fff;color:#183767;border-bottom:1px solid #d8e4f0;font-size:13px}.welcome-strip>span:first-child{font-weight:bold;letter-spacing:1.4px}.welcome-strip a{text-decoration:none}.welcome-strip a:hover{text-decoration:underline}
#life{max-width:none;background:#174ed0;color:white;grid-template-columns:1fr 1fr;gap:9%;padding-top:80px;padding-bottom:80px}#life .eyebrow{color:#b8f2ff}#life h2{font-size:clamp(42px,4.4vw,68px)}#life em{color:#91e8fa}#life p:not(.eyebrow){color:#eef4ff}#life .text-link{color:white}#life .intro-image{padding-bottom:0;max-width:620px}#life img{border-radius:0;aspect-ratio:1.2;object-position:center 57%}#life .image-note{background:#fff;color:#174ed0;right:-22px;bottom:-22px;font-size:20px;padding:17px 25px;box-shadow:0 8px 25px #001d6822}
.wide-photo{min-height:420px;background:#fff;margin:65px 7%;overflow:hidden;display:grid;grid-template-columns:42% 58%}.wide-photo img{position:relative;width:100%;height:420px;object-position:center;grid-column:2;grid-row:1}.wide-photo:after{display:none}.wide-photo>div{grid-column:1;grid-row:1;padding:40px 35px 40px 0;display:flex;flex-direction:column;justify-content:center;color:var(--ink)}.wide-photo .eyebrow{color:#174ed0}.wide-photo h2{font-size:clamp(38px,3.8vw,58px)}.wide-photo em{color:#174ed0}
#classes{background:#fff;padding-top:35px;padding-bottom:90px}#classes .section-heading{border-top:1px solid #d5dfef;padding-top:60px}.classes .filter button{background:white;border:1px solid #c4d2e4;font-weight:normal;padding:10px 18px}.classes .filter button.active{background:#174ed0;border-color:#174ed0}.class-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 26px}.class-card{background:white;border-radius:0;box-shadow:none;border-bottom:1px solid #cad8ea;color:var(--ink);overflow:hidden}.class-card:hover,.class-card:focus-within{transform:translateY(-4px);box-shadow:none}.class-image-link{display:block!important;margin:0!important;padding:0!important;border:0!important;line-height:0;overflow:hidden}.class-image-link img{width:100%;height:210px;object-fit:cover;transition:transform .5s}.class-card:hover .class-image-link img{transform:scale(1.035)}.class-copy{padding:23px 0 20px;position:relative}.class-index{font-size:11px;color:#637c9c;letter-spacing:2px;margin-bottom:10px}.class-card .class-copy h3{font-size:28px;color:#174ed0;margin:0 0 14px}.class-card h3 a{font-size:inherit!important;color:inherit!important;border:0!important;padding:0!important;display:inline!important;text-decoration:none}.class-card .class-copy>p{color:#52617a;font-size:16px}.class-card .class-copy>.class-level{font-size:13px;color:#17406d;font-weight:bold}.class-card .class-copy>.class-explore{border-top:0;padding-top:8px;color:#174ed0;font-size:14px;min-height:44px}.class-card:last-child{background:#edf9fd;padding:0 18px}.class-card:last-child .class-image-link{margin:0 -18px!important}
#team{background:#174ed0;color:white;padding-top:75px;padding-bottom:50px}#team .section-heading{margin-bottom:5px}#team .eyebrow{color:#c3f5ff}#team h2 em{color:#96eafb}#team .team-ring{height:490px}#team .team-ring .team-member{background:#113d9e;border-color:#a3cefa;box-shadow:0 16px 35px #00237033}#team .team-ring .team-member.is-front{background:#123c9e;box-shadow:0 20px 45px #00237055,0 0 0 2px #b1efff55}#team .ring-hint{color:#d9edff}#team .team-carousel-footer{margin-top:8px}.ring-selected{min-height:50px}
#timetable{background:#fff}#timetable .section-heading{align-items:center}#timetable .day-filter{border-bottom:1px solid #dae3ef;padding-bottom:20px}#timetable .day-filter button{border-radius:3px}#timetable .schedule-row{background:#f4f8fc;border-bottom:3px solid white}#timetable .schedule-row:nth-child(odd){background:#eaf2fa}#timetable details{border-color:#d7e3f0}#timetable .outline{color:#174ed0;background:white}
.first-visit{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%;background:#eaf9fc;max-width:none}.first-visit>div>p:not(.eyebrow){max-width:350px;color:#52617a}.visit-questions details{margin:0;padding:20px 0;border:0;border-bottom:1px solid #b7dbe6}.visit-questions summary{font-size:17px;line-height:1.5}.visit-questions p{margin:15px 0 0;color:#3c536d;font-size:16px}.location{display:grid;grid-template-columns:1fr 1fr;gap:10%;background:#fff}.location address{font-style:normal;margin:25px 0;color:#405570}.location-note{padding:40px;background:#f3f7fc;border-top:5px solid #174ed0;display:flex;flex-direction:column;justify-content:center;align-items:start}.location-postcode{font-size:76px;letter-spacing:-5px;color:#174ed0;font-weight:bold;line-height:1;margin-bottom:25px}.location-note h3{font-size:28px}.location-note p{color:#52617a}.location-note a{margin:6px 0;font-size:16px}.location-note a[href^=tel]{font-size:24px;font-weight:bold;text-decoration:none}
#trial{background:#174ed0;max-width:none;border-top:0;gap:8%;color:white;padding-top:90px}#trial>.trial-copy{position:sticky;top:130px}#trial>div>.eyebrow{color:#b1effc}#trial>div h2{font-size:clamp(45px,4.6vw,70px)}#trial>div h2 em{color:#92eafb}#trial>div>p:not(.eyebrow){color:#edf4ff}#trial .phone,#trial .email{color:white}#trial-form{color:var(--ink);border:0;border-top:5px solid #8ce5f5;border-radius:4px;box-shadow:0 18px 60px #00247833;padding:30px}#trial-form>h3{font-size:26px}#trial-form .interest-option:has(input:checked){background:#dcf7ff;border-color:#248da9}#trial-form .form-note{color:#52617a}#trial-form>label{margin-top:15px}#trial-form .form-row{gap:14px}#trial-form input:not([type=checkbox]),#trial-form select{padding:11px}footer{background:#fff;padding-top:35px;padding-bottom:35px}footer img{background:white}
.class-hero{display:grid;grid-template-columns:1fr 1fr;background:#174ed0;color:white;min-height:570px}.class-hero>div{padding:55px 12% 60px 14%;display:flex;flex-direction:column;align-items:start;justify-content:center}.class-hero .breadcrumb{font-size:14px;margin-bottom:35px}.class-hero .eyebrow{color:#baf0ff}.class-hero h1{font-size:clamp(43px,4.6vw,70px);letter-spacing:-2px}.class-hero h1 em{font-size:.65em;color:#9ee9f9}.class-hero p:not(.eyebrow){font-size:18px;color:#edf5ff;max-width:450px}.class-hero .button{background:white;color:#174ed0;border-color:white;margin-top:10px}.class-hero>img{width:100%;height:100%;max-height:700px;object-fit:cover}.class-detail{display:grid;grid-template-columns:1.2fr 1fr;gap:10%}.class-detail p{color:#52617a}.class-detail h3{margin-top:35px}.class-detail aside{background:#eef8fc;padding:35px;align-self:start}.class-detail aside h3{margin-top:0}.class-detail dt{color:#174ed0;font-weight:bold;font-size:14px;margin-top:20px}.class-detail dd{margin:7px 0 0;font-size:16px}.class-detail aside a{font-size:15px;font-weight:bold}.class-next{max-width:none;background:#174ed0;color:white;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.class-next em{color:#97e9fa}.class-next p{color:#edf5ff}.class-next .button{background:white;color:#174ed0;border-color:white}.related h2{font-size:36px}.related>div{display:flex;flex-wrap:wrap;gap:12px}.related a{padding:12px 18px;border:1px solid #c8d9e9;text-decoration:none;font-size:15px}.related a:hover{background:#eaf8ff}.events-hero{background:#174ed0;color:white}.events-hero em{color:#9feafb}.events-hero .eyebrow{color:#b2effc}.events-hero .button{background:white;color:#174ed0}.events-hero p{color:inherit}
@media(min-width:1600px){.hero-copy{padding-left:max(12%,calc((100vw - 1440px)/2))}.hero{min-height:760px}.hero-photo{min-height:760px}}
@media(max-width:1050px){nav{gap:18px}.hero{grid-template-columns:46% 54%;min-height:650px}.hero-photo{min-height:650px}.hero-copy{padding:22px 8% 35px}.hero-copy h1{font-size:52px}.hero-photo-bottom{padding:70px 22px 25px}.hero-photo-bottom p{font-size:21px}.hero-photo-bottom button{font-size:11px;padding:8px 10px}.class-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.class-detail{gap:6%}#trial{gap:5%}.class-hero>div{padding:45px 10%}.welcome-strip{font-size:12px}}
@media(max-width:700px){header{height:85px}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:22px 6% 32px;display:block}.logo-stage{width:180px}.logo-performance{margin:0 0 10px}.logo-replay{min-height:25px}.hero-copy .eyebrow{margin:10px 0 15px}.hero-copy h1{font-size:clamp(42px,11vw,62px);line-height:1.02;margin:0 0 16px}.hero-copy>p:not(.eyebrow){font-size:16px;max-width:100%;margin-bottom:17px}.hero-copy .text-link{display:none}.hero-photo{height:430px;min-height:0}.hero-photo-bottom{padding:70px 20px 25px}.hero-count{top:18px;right:20px}.welcome-strip{padding:20px 6%;justify-content:flex-start;gap:9px 22px;font-size:12px;flex-wrap:wrap}.welcome-strip a{width:100%}.section{padding:60px 6%}#life{display:flex;flex-direction:column-reverse;padding:60px 6%;gap:30px}#life h2{font-size:43px}#life .intro-image{width:100%;padding-bottom:15px}#life .image-note{right:-5px;bottom:0;font-size:17px;padding:13px 17px}#life img{aspect-ratio:1.15}.wide-photo{display:flex;flex-direction:column;margin:45px 6%;min-height:0}.wide-photo>div{padding:0 0 20px}.wide-photo h2{font-size:40px}.wide-photo img{height:290px}.class-grid{gap:25px 16px}.class-image-link img{height:170px}.class-card .class-copy h3{font-size:24px}#classes{padding-top:0;padding-bottom:55px}#classes .section-heading{padding-top:40px}.class-copy{padding-top:18px}.class-card .class-copy>p{font-size:15px}.class-card .class-copy>.class-level{font-size:12px}#team{padding:60px 6% 35px}#team .team-ring{height:430px}#team .ring-selected{min-height:55px}.first-visit,.location,.class-detail,.class-next{grid-template-columns:1fr;gap:30px}.location-note{padding:28px}.location-postcode{font-size:62px}.location-note h3{font-size:25px}#trial{padding:60px 6%;gap:30px}#trial>.trial-copy{position:static}#trial-form{padding:25px 20px}#trial>div h2{font-size:45px}.class-hero{grid-template-columns:1fr;min-height:0}.class-hero>div{padding:35px 6% 45px}.class-hero>img{height:330px}.class-hero .breadcrumb{margin-bottom:25px}.class-hero h1{font-size:50px}.class-detail aside{padding:25px}.class-next h2{margin-bottom:0}.related h2{font-size:32px}}
@media(max-width:450px){.class-grid{grid-template-columns:1fr}.class-image-link img{height:235px}.hero-photo{height:365px}.hero-photo-bottom p{font-size:19px}.class-card:last-child{padding:0}.class-card:last-child .class-image-link{margin:0!important}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}.class-card:hover,.class-card:focus-within{transform:none}.class-card:hover .class-image-link img{transform:none}}
