/* Supporting pages use the homepage's typography, colours and components. */
.interior-page .site-header{position:relative;inset:auto;margin:12px 12px 0;background:var(--navy);border-radius:var(--radius)}

.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:8px 22px;list-style:none;margin:0 0 35px;padding:0;font-size:13px;color:var(--muted)}
.breadcrumbs a{display:inline-flex;align-items:center;min-height:32px;text-decoration:underline;text-underline-offset:4px}

.white-section{background:white}
.content-section .section-space{padding-block:70px}
.content-section .section-heading{margin-bottom:32px}
.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.info-grid:has(>.info-card:first-child:nth-last-child(2)){grid-template-columns:repeat(2,minmax(0,1fr))}
.info-card{padding:28px 0;border-top:1px solid var(--line);min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.info-card>.ti{font-size:34px;color:var(--blue);margin-bottom:22px}
.info-card h3{font-size:26px;line-height:1.2;margin-bottom:17px}
.info-card>p{font-size:16px;line-height:1.7;color:#334c69;max-width:49ch;margin-bottom:16px}
.info-card>.text-link{margin-top:auto;font-size:14px}
.split-section{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:65px;padding-block:70px}
.split-section h2{margin-bottom:24px}.split-section>.prose{max-width:46ch}
.editorial-image{overflow:hidden;border-radius:16px;aspect-ratio:1.25;background:#dce7f5}
.editorial-image img{width:100%;height:100%;object-fit:cover}
.prose{font-size:17px;line-height:1.8;color:#334c69;overflow-wrap:anywhere}
.policy-content>p,.policy-content>ul,.policy-content>ol{max-width:75ch}
.price-table,.plan-price{font-variant-numeric:tabular-nums}
.prose h2{font-size:32px;color:var(--navy);margin:42px 0 22px}
.prose h3{font-size:24px;color:var(--navy);margin:30px 0 18px}
.prose p+p,.prose p+ul,.prose ul+p,.prose p+ol{margin-top:18px}
.prose p{margin-bottom:18px}.prose ul,.prose ol{padding-left:25px;margin-block:18px 24px}.prose li{padding-left:5px;margin-block:10px}
.prose a:not(.button):not(.text-link){color:var(--navy);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.prose a:hover{color:var(--blue)}
.prose .text-link{margin:8px 14px 0 0}
.quick-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:26px;margin:0;padding:30px 0;border-block:1px solid var(--line)}
.quick-facts dt{font-size:12px;color:var(--muted);margin-bottom:9px}.quick-facts dd{font-size:20px;font-weight:600;line-height:1.4;margin:0}
.next-step{display:flex;align-items:center;justify-content:space-between;gap:40px;padding-block:65px}.next-step h2{font-size:32px}.next-step p{font-size:16px;color:var(--muted);max-width:58ch;margin-top:16px}.next-step .button{flex-shrink:0}
.questions{max-width:920px}.questions .centre-detail summary{font-size:21px}.questions .centre-detail-body{max-width:75ch}
.policy-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:70px;align-items:start;padding-bottom:80px}
.policy-nav{position:sticky;top:30px;font-size:14px}.policy-nav .eyebrow{margin-bottom:15px}.policy-nav a{display:block;min-height:44px;padding:10px 0;border-bottom:1px solid var(--line);line-height:1.5}.policy-nav>a{margin-top:20px;font-weight:600}
.policy-content{background:white;padding:42px 48px;border-radius:18px;min-width:0}
.policy-content>:first-child{margin-top:0}.policy-content .doc-section,.policy-content .rules-group,.policy-content .charter-item{margin-bottom:36px;scroll-margin-top:35px}
.policy-content .doc-section-num,.policy-content .charter-num{display:none}
.policy-content .doc-notice,.policy-content .doc-highlight{padding:20px;background:var(--paper);border-left:3px solid var(--blue);margin-block:0 28px;border-radius:0 8px 8px 0;font-size:15px}
.policy-content .doc-notice~.doc-notice{margin-top:20px}
.policy-content .stat-grid{display:flex;flex-wrap:wrap;gap:25px;margin-block:20px}.stat-cell{flex:1 1 120px}.stat-num{font-family:var(--heading);font-size:30px;color:var(--navy)}.stat-label{font-size:14px}
.policy-content table,.price-table{border-collapse:collapse;width:100%;font-size:15px;line-height:1.5}.policy-content th,.policy-content td,.price-table th,.price-table td{padding:16px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.price-table caption{text-align:left;font-family:var(--heading);font-size:25px;color:var(--navy);padding-bottom:24px}.price-table thead th{font-size:12px;background:var(--paper);font-weight:600}.price-table tbody th{font-weight:500}.price-table td:last-child{color:var(--muted)}
.table-wrap{overflow-x:auto;max-width:100%;border-radius:8px}.table-wrap:focus-visible{outline-offset:3px}
.price-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:60px;align-items:start;padding-bottom:75px}.price-content{min-width:0}.price-group{background:white;border-radius:16px;padding:32px;margin-bottom:30px;scroll-margin-top:35px}.price-group h2{font-size:30px;margin-bottom:18px}.price-group>p{font-size:15px;color:var(--muted);margin:20px 0}.price-group>p a{text-decoration:underline}.price-group .table-wrap+.table-wrap{margin-top:36px}
.source-note{font-size:13px;line-height:1.7;color:var(--muted);margin-top:24px}.source-note a{text-decoration:underline;text-underline-offset:3px}
.plan-card{background:white;border-radius:16px;padding:30px;display:flex;flex-direction:column;align-items:flex-start;border:1px solid var(--line);min-width:0}.plan-card .eyebrow{font-size:10px;margin-bottom:19px}.plan-card h2{font-size:28px}.plan-price{font-family:var(--heading);font-size:43px;letter-spacing:-.04em;line-height:1.2;margin:25px 0 18px}.plan-price span{font-family:Archivo,sans-serif;font-size:15px;font-weight:400;letter-spacing:0}.plan-card p:not(.eyebrow):not(.plan-price){font-size:16px;color:var(--muted);margin-bottom:17px}.plan-card ul{padding-left:20px;margin:0 0 27px;font-size:15px;line-height:1.8}.plan-card .button{margin-top:auto}.plan-card.featured{border:2px solid var(--navy)}
.search-form{max-width:750px}.search-form label{display:block;font-weight:600;font-size:15px;margin-bottom:12px}.search-controls{display:flex;gap:12px}.search-controls input{flex:1;min-width:0}.filter-buttons{display:flex;gap:9px;flex-wrap:wrap;margin:25px 0}.filter-buttons button{border:1px solid #71839c;background:white;border-radius:999px;min-height:44px;padding:10px 19px;font-size:14px}.filter-buttons button[aria-pressed=true]{background:var(--navy);color:white;border-color:var(--navy)}
.filter-count{font-size:13px;color:var(--muted);margin-bottom:25px}.empty-state{padding:30px;border:1px solid var(--line);border-radius:15px;background:white}.empty-state h2{font-size:26px;margin-bottom:18px}.empty-state p{color:var(--muted)}
.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.contact-card{border-top:1px solid var(--line);padding-top:25px;min-width:0}.contact-card h2{font-size:27px;margin-bottom:20px}.contact-card address{font-style:normal;font-size:15px;color:var(--muted);line-height:1.7;margin-bottom:15px}.contact-card>a{display:flex;align-items:center;gap:12px;min-height:44px;font-size:17px;font-weight:500}.contact-card .ti{color:var(--blue)}
.contact-form-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:75px;align-items:start}.contact-form-layout h2{margin-bottom:25px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{margin-bottom:23px;min-width:0}.form-grid .field{margin-bottom:0}.field label{display:block;font-size:14px;font-weight:600;margin-bottom:10px}.field small{display:block;color:var(--muted);margin-top:8px;font-size:13px}
input,select,textarea{font:inherit;background:white;border:1px solid #71839c;border-radius:8px;color:var(--navy);min-height:48px;padding:12px 14px;width:100%;max-width:100%}textarea{min-height:160px;resize:vertical}input:focus,select:focus,textarea:focus{outline:3px solid var(--blue);outline-offset:2px}input[type=checkbox]{width:22px;height:22px;min-height:0;padding:0;flex-shrink:0}.check-field{display:flex;align-items:start;gap:12px}.check-field label{font-size:14px;line-height:1.6}.check-field a{text-decoration:underline}.required-note{font-size:13px;color:var(--muted);margin-bottom:25px}.field-error{font-size:13px;color:#9e2222;margin-top:8px}.field [aria-invalid=true]{border:2px solid #9e2222}.form-feedback{padding:22px;border:2px solid var(--blue);border-radius:12px;margin-bottom:25px;background:var(--paper)}.form-feedback.error{border-color:#9e2222}.form-feedback h3{font-size:23px;margin-bottom:12px}.form-feedback ul{padding-left:20px;margin:12px 0}.form-feedback a{text-decoration:underline}.form-feedback:focus{outline:3px solid var(--blue);outline-offset:3px}.form-feedback p{font-size:15px}.form-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.app-steps{counter-reset:steps;list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.app-steps li{counter-increment:steps;border-top:1px solid var(--line);padding-top:22px}.app-steps li::before{content:counter(steps,decimal-leading-zero);font-size:13px;color:var(--muted)}.app-steps h3{font-size:25px;margin:15px 0}.app-steps p{font-size:16px;color:var(--muted)}
.app-landing .app-preview{max-width:280px}
.contact-directory{padding-bottom:65px}.contact-form-layout .form-grid{margin-bottom:23px}.contact-form-layout .form-grid .field{margin-bottom:0}.centre-panorama{overflow:hidden;border-radius:16px;margin-bottom:35px}.centre-panorama img{width:100%;height:auto}.section-jumps{display:flex;flex-wrap:wrap;gap:12px 35px;padding-block:28px}.centre-visit-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.centre-visit-grid address{font-style:normal;margin-bottom:22px}.programme-facts{padding-block:38px}.membership-options{padding-bottom:65px}.location-page .app-preview{max-width:270px}
.centre-panorama .churchfield-panorama-photo{aspect-ratio:5/1;object-fit:cover;object-position:50% 85%}
.location-page .info-card p a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.contact-directory{padding-bottom:45px}.centre-visit-grid{grid-template-columns:1fr;gap:28px}.section-jumps{gap:8px 23px;padding-block:22px}.section-jumps .text-link{font-size:14px}.programme-facts{padding-block:28px}.location-page .app-preview{max-width:220px}}
@media(max-width:1000px){.info-grid,.contact-grid{gap:24px}.policy-layout{grid-template-columns:200px minmax(0,1fr);gap:35px}.policy-content{padding:30px}.price-layout{grid-template-columns:190px minmax(0,1fr);gap:30px}.price-group{padding:25px}.contact-form-layout{gap:40px}.plan-card{padding:24px}.plan-card h2{font-size:24px}}
@media(max-width:850px){.info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.info-grid:has(>.plan-card){grid-template-columns:1fr}.plan-card{padding:30px}.contact-grid{grid-template-columns:1fr}.contact-card{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.contact-card h2{grid-row:span 3}.contact-card address{margin-bottom:10px}.split-section{gap:35px}.policy-layout,.price-layout{grid-template-columns:1fr;gap:35px}.policy-nav{position:static}.policy-nav nav{display:flex;flex-wrap:wrap;gap:0 25px}.policy-nav nav a{max-width:100%}.policy-content{padding:32px}.next-step{align-items:flex-start}.next-step h2{font-size:28px}.contact-form-layout{grid-template-columns:1fr;gap:35px}.contact-form-layout>.prose{max-width:65ch}.app-steps{gap:24px}.app-steps h3{font-size:22px}}
@media(max-width:600px){.interior-page .site-header{margin:8px 8px 0}.breadcrumbs ol{font-size:12px;margin-bottom:26px;gap:4px 18px}.content-section .section-space{padding-block:48px}.content-section .section-heading{margin-bottom:26px}.info-grid,.info-grid:has(>.info-card:first-child:nth-last-child(2)){grid-template-columns:1fr;gap:15px}.info-card{padding:24px 0}.info-card h3{font-size:25px}.info-card>p{font-size:16px}.split-section{grid-template-columns:1fr;gap:32px;padding-block:50px}.prose{font-size:16px;line-height:1.75}.prose h2{font-size:26px;margin-top:32px}.prose h3{font-size:22px}.quick-facts{grid-template-columns:1fr 1fr;gap:22px 18px}.quick-facts dd{font-size:17px}.quick-facts dt{font-size:11px}.next-step{flex-direction:column;gap:25px;padding-block:45px}.next-step h2{font-size:28px}.next-step p{font-size:16px}.policy-content{padding:25px 21px}.policy-layout{width:calc(100% - 32px);padding-bottom:50px;gap:28px}.policy-nav{padding-inline:8px}.policy-content th,.policy-content td{padding:12px 10px;font-size:13px}.policy-content table{min-width:400px}.price-layout{gap:28px;padding-bottom:45px}.price-group{padding:23px 18px}.price-group h2{font-size:26px}.price-table{font-size:14px;min-width:420px}.price-table caption{font-size:22px}.price-table th,.price-table td{padding:14px 10px}.questions .centre-detail summary{font-size:19px}.form-grid{grid-template-columns:1fr;gap:23px}.contact-card{display:block}.contact-card h2{font-size:26px}.contact-card>a{font-size:16px}.search-controls{gap:8px}.search-controls .button{padding-inline:17px}.filter-buttons{gap:8px}.filter-buttons button{font-size:12px;padding-inline:15px}.app-steps{grid-template-columns:1fr;gap:28px}.app-landing .app-preview{max-width:220px}}
@media(max-width:360px){.quick-facts{grid-template-columns:1fr}.policy-content{padding-inline:18px}.plan-card{padding:25px}.search-controls{flex-direction:column;align-items:flex-start}.search-controls input{width:100%}}
@media print{.site-header,.site-footer,.site-menu,.skip-link,.policy-nav,.breadcrumbs,.next-step{display:none!important}body{background:white;color:black}.policy-layout{display:block;width:100%;padding:0}.policy-content{padding:0}.prose{font-size:11pt}.prose h2{break-after:avoid}.prose a{color:black}.table-wrap{overflow:visible}.policy-content table{min-width:0}details{break-inside:avoid}}
