/* Swim School: shared LeisureWorld colours and type, with room for play. */
.swim-school-page .site-header{position:relative;inset:auto;margin:12px 12px 0;background:var(--navy);border-radius:var(--radius)}

.school-intro-photo{object-position:51% 68%;}

.school-jumps{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line);padding-block:10px}
.school-jumps a{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:56px;padding:10px 24px;font-size:15px;font-weight:500;line-height:1.4}
.school-jumps a+a{border-left:1px solid var(--line)}.school-jumps .ti{color:var(--blue);font-size:19px}.school-jumps a:hover{color:var(--blue)}
.school-programmes,.school-centres{padding-block:clamp(56px,7vw,96px)}
.school-section-heading{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:38px}
.school-section-heading .eyebrow,.assessment-copy .eyebrow,.school-faq .eyebrow{margin-bottom:18px}.school-section-heading h2{font-size:clamp(34px,4vw,54px)}.school-section-heading .body-copy{font-size:18px;max-width:47ch}
.school-inline-link{display:inline-block;margin-top:12px;min-height:44px;padding-block:7px;font-size:14px;text-decoration:underline;text-underline-offset:4px}
.programme-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.programme-card{display:flex;flex-direction:column;min-width:0;background:white;border-radius:20px;overflow:hidden}
.programme-image{aspect-ratio:1.55;overflow:hidden;background:#d5e6ee}.programme-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.programme-card:hover .programme-image img{transform:scale(1.035)}.programme-card:first-child .programme-image img{object-position:45% 38%}
.programme-copy{padding:28px;display:flex;flex:1;flex-direction:column;align-items:flex-start;min-width:0}.programme-copy>.eyebrow{font-size:10px;letter-spacing:.11em;color:#465c77;margin-bottom:15px}.programme-copy h3{font-size:clamp(27px,2.5vw,35px);max-width:13ch;line-height:1.12;margin-bottom:18px}.programme-copy>p:not(.eyebrow){font-size:16px;color:#334c69;line-height:1.7}
.programme-highlights{list-style:none;padding:0;margin:24px 0 26px;display:grid;gap:12px}.programme-highlights li{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.6;color:#334c69}.programme-highlights .ti{font-size:18px;line-height:1.3;color:var(--blue)}.programme-copy .programme-page-link{margin-top:auto;font-size:14px;gap:18px}
.adult-lesson-link{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:30px;padding-block:20px;border-block:1px solid var(--line)}.adult-lesson-link>div{display:flex;align-items:center;gap:15px}.adult-lesson-link>div .ti{color:var(--blue);font-size:28px}.adult-lesson-link p{font-size:17px;font-weight:500}.adult-lesson-link .text-link{flex-shrink:0}
.school-assessment{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,6vw,84px);background:var(--navy);color:white;padding:clamp(32px,5vw,70px);border-radius:28px;scroll-margin-top:24px}.assessment-copy,.assessment-right{min-width:0}.assessment-copy>.eyebrow{color:#c4dff9}.assessment-copy h2{font-size:clamp(32px,3.6vw,50px);line-height:1.12}.assessment-copy>p:not(.eyebrow):not(.assessment-note){color:#d7e5f4;font-size:17px;line-height:1.7;margin-top:24px;max-width:40ch}
.school-assessment-button{background:white;color:var(--navy);margin-top:28px}.school-assessment-button:hover{background:#d6eaff}.school-assessment-button .ti{color:#b44200}.assessment-note{font-size:13px;line-height:1.6;color:#c4d3e5;margin-top:16px;max-width:40ch}.school-assessment :focus-visible{outline-color:#a1dfff}
.assessment-steps{list-style:none;margin:0;padding:0}.assessment-steps li{display:flex;gap:20px;padding:22px 0;border-top:1px solid #49607e}.assessment-steps li:first-child{padding-top:0;border-top:0}.step-number{display:flex;align-items:center;justify-content:center;flex:0 0 40px;width:40px;height:40px;border:1px solid #67809e;border-radius:50%;color:#bfefff;font-size:13px;font-weight:600}.assessment-steps h3{font-family:Archivo,sans-serif;font-weight:600;letter-spacing:-.02em;font-size:23px;line-height:1.3}.assessment-steps p{font-size:15px;line-height:1.7;color:#d7e5f4;margin-top:8px}
.assessment-bring{display:flex;gap:16px;border-top:1px solid #49607e;padding-top:22px;margin-top:4px}.assessment-bring .ti{color:#bfefff;font-size:25px}.assessment-bring p{font-size:14px;line-height:1.7;color:#d7e5f4}.assessment-bring strong{color:white;font-weight:600}
.school-centre-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}.school-centre-card{border-top:1px solid var(--line);padding-top:26px;display:flex;flex-direction:column;align-items:flex-start;min-width:0}.school-centre-card>.eyebrow{font-size:10px;color:var(--muted);margin-bottom:13px}.school-centre-card h3{font-size:30px;margin-bottom:18px}.school-centre-card>p:not(.eyebrow){font-size:16px;color:#334c69;line-height:1.7;margin-bottom:20px}.school-centre-actions{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:auto}.school-phone{display:inline-flex;align-items:center;gap:18px;min-height:44px;font-size:14px;text-decoration:underline;text-underline-offset:4px}.school-phone .ti{display:none}
.school-faq-wrap{background:white}.school-faq{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(36px,7vw,100px);padding-block:clamp(56px,7vw,96px)}.school-faq .body-copy{font-size:17px;max-width:34ch;margin-top:23px}.school-faq .text-link{margin-top:22px}.school-question{border-top:1px solid var(--line)}.school-question:last-child{border-bottom:1px solid var(--line)}
.school-question summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;font-size:18px;font-weight:500;line-height:1.5;min-height:78px;padding:22px 0}.school-question summary::-webkit-details-marker{display:none}.school-question summary:hover{color:var(--blue)}.school-question summary .ti{transition:transform .2s}.school-question[open] summary .ti{transform:rotate(45deg)}.school-question>div{padding:0 0 24px;color:#334c69;font-size:16px;line-height:1.7}.school-question a{display:inline-flex;align-items:center;gap:9px;min-height:44px;color:var(--navy);margin-top:12px;text-decoration:underline;text-underline-offset:4px}
.school-parent-tools{display:grid;grid-template-columns:240px 1fr;gap:clamp(36px,6vw,90px);align-items:center;max-width:1060px;padding-block:64px}.school-app-photo{max-width:220px;border-radius:20px;overflow:hidden}.school-app-photo img{width:100%;height:auto}.school-parent-copy .eyebrow{margin-bottom:18px}.school-parent-copy h2{font-size:clamp(32px,3.8vw,50px)}.school-parent-copy>p:not(.eyebrow){font-size:17px;line-height:1.7;color:#334c69;max-width:55ch;margin-top:22px}.school-parent-copy .action-group{margin-top:26px}
@media(max-width:1000px){.programme-copy{padding:23px}.school-centre-grid{gap:24px}.school-centre-card h3{font-size:27px}.school-assessment{gap:35px}}
@media(max-width:900px){.programme-grid{grid-template-columns:1fr;gap:24px}.programme-card{display:grid;grid-template-columns:.8fr 1.2fr}.programme-image{aspect-ratio:auto;min-height:300px}.programme-copy{padding:30px}.programme-copy h3{max-width:none}.programme-highlights{margin-block:20px}.school-section-heading{gap:35px}.school-assessment{grid-template-columns:1fr;gap:36px}.assessment-copy>p:not(.eyebrow):not(.assessment-note){max-width:60ch}.school-centre-grid{grid-template-columns:1fr}.school-centre-card{display:grid;grid-template-columns:1fr 1fr;column-gap:35px}.school-centre-card>.eyebrow,.school-centre-card>h3{grid-column:1}.school-centre-card>p:not(.eyebrow){grid-column:1;max-width:48ch}.school-centre-actions{grid-column:2;grid-row:1/4;align-self:center}.school-faq{grid-template-columns:1fr;gap:32px}.school-faq .body-copy{max-width:60ch}}
@media(max-width:850px){.school-jumps a{font-size:14px;padding-inline:15px;gap:10px}.school-parent-tools{grid-template-columns:180px 1fr;gap:35px}.school-section-heading{grid-template-columns:1fr;gap:23px}}
@media(max-width:600px){.swim-school-page .site-header{margin:8px 8px 0}.school-jumps{grid-template-columns:1fr 1fr;padding:0}.school-jumps a{font-size:14px;min-height:58px;padding:13px 12px}.school-jumps a:nth-child(3){border-left:0}.school-jumps a:nth-child(n/**/+3){border-top:1px solid var(--line)}.school-section-heading{margin-bottom:28px;gap:22px}.school-section-heading h2{font-size:34px}.school-section-heading .eyebrow{font-size:10px}.school-section-heading .body-copy{font-size:16px}.school-inline-link{font-size:14px}.programme-card{display:flex}.programme-image{min-height:0;aspect-ratio:1.5}.programme-copy{padding:26px}.programme-copy h3{font-size:31px}.programme-copy>p:not(.eyebrow){font-size:16px}.programme-highlights{margin-block:22px}.programme-copy .programme-page-link{font-size:15px}.adult-lesson-link{flex-direction:column;align-items:flex-start;gap:12px}.adult-lesson-link p{font-size:16px}.adult-lesson-link .text-link{font-size:14px}.school-assessment{padding:30px 24px;border-radius:22px;gap:32px}.assessment-copy .eyebrow{font-size:10px}.assessment-copy h2{font-size:33px}.assessment-copy>p:not(.eyebrow):not(.assessment-note){font-size:16px}.school-assessment-button{font-size:13px;gap:15px;padding-inline:18px}.assessment-note{font-size:12px}.assessment-steps li{gap:15px}.assessment-steps h3{font-size:21px}.step-number{flex-basis:34px;width:34px;height:34px}.assessment-steps p{font-size:15px}.assessment-bring{gap:12px}.school-centre-card{display:flex;padding-top:24px}.school-centre-card h3{font-size:30px}.school-centre-actions{align-self:auto;margin-top:0}.school-faq h2{font-size:34px}.school-faq .eyebrow{font-size:10px}.school-question summary{font-size:17px}.school-parent-tools{display:flex;flex-direction:column;align-items:flex-start;gap:28px;padding-block:50px}.school-app-photo{width:180px;align-self:center}.school-parent-copy .eyebrow{font-size:10px}.school-parent-copy>p:not(.eyebrow){font-size:16px}.school-parent-copy .action-group{align-items:flex-start;flex-direction:column}}
@media(max-width:360px){.school-jumps a{font-size:13px}.programme-copy{padding:23px}.school-assessment{padding:28px 20px}.assessment-copy h2{font-size:29px}.school-assessment-button{padding-inline:14px;gap:10px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.programme-card:hover .programme-image img{transform:none}}
