/* Shared visual language; the approved homepage hero remains unchanged. */
.sheffield-site{--ink:#1b1f3b;--soft:#f2f4ff;--accent:#3755b5;color:var(--ink)}
.sheffield-site:not(.home-evolution) h1{font-size:clamp(2.8rem,5vw,4.6rem);letter-spacing:-.045em;line-height:1.08;font-weight:700}
.sheffield-site:not(.home-evolution) h2,.sheffield-site:not(.home-evolution) .h1{font-size:clamp(2rem,3.4vw,3rem);line-height:1.15;letter-spacing:-.03em}
.sheffield-site:not(.home-evolution) .btn{border-radius:12px;padding:14px 23px;font-weight:600}
.sheffield-site:not(.home-evolution) .navbar-dark{background:var(--ink)}
.sheffield-site .navbar-dark .navbar-nav .nav-link{color:#d5daec}.sheffield-site .navbar-dark .navbar-nav .nav-link:hover{color:#fff}
.sheffield-site:not(.home-evolution) .page-hero{background:#1b1f3b!important;min-height:0;padding-top:115px!important;padding-bottom:48px!important;isolation:isolate;overflow:hidden;border-radius:0 0 70px 0}
.sheffield-site:not(.home-evolution) .page-hero:after{display:none}
.sheffield-site:not(.home-evolution) .page-hero .jarallax-img{opacity:.18!important}.sheffield-site:not(.home-evolution) .page-hero .lead{max-width:46rem;font-size:1.125rem}.sheffield-site:not(.home-evolution) .page-hero .breadcrumb{margin-bottom:24px}
.sheffield-site:not(.home-evolution) .page-content{padding-top:64px;padding-bottom:64px}.sheffield-site:not(.home-evolution) .page-content .lead{font-size:1.125rem}.sheffield-site:not(.home-evolution) .page-content picture img{border-radius:28px!important}.sheffield-site:not(.home-evolution) .card{border-radius:20px;border-color:#dbe1ee;box-shadow:none}.sheffield-site:not(.home-evolution) .form-control{border-radius:10px;border-color:#aeb9ce;background:#f7f8fc}.sheffield-site:not(.home-evolution) #contactForm{padding:28px;border:1px solid #dbe1ee;border-radius:24px}.sheffield-site:not(.home-evolution) .bg-primary-alt{background:var(--soft)!important}.sheffield-site .page-content p{max-width:70ch}
.sheffield-site .student-testimonials{position:relative}.sheffield-site .testimonial-controls{flex-wrap:wrap;gap:12px;justify-content:flex-start}.sheffield-site .testimonial-controls .btn{min-height:44px;padding:8px 16px}.sheffield-site .review-status{margin-right:auto}
.sheffield-site .motion-toggle{border:1px solid #a5b3d5;border-radius:100px;background:transparent;color:#304ba5;font:inherit;font-size:1rem;padding:6px 18px;min-height:44px;margin:14px 0 24px;cursor:pointer}.sheffield-site [data-skills]{display:block;min-height:2.4em;max-width:100%;overflow-wrap:normal}.sheffield-site .skills-section .h1{line-height:1.2}.sheffield-site .skills-section img{border-radius:48% 48% 22px 22px!important}
/* Editorial sections instead of repeated stock cards. */
.home-evolution .section-kicker{font-size:1rem;font-weight:600;color:#42569b;margin-bottom:20px;letter-spacing:.02em}.home-evolution .home-mission{padding-top:80px;padding-bottom:90px}.home-evolution .mission-layout{gap:72px}.home-evolution .mission-photos .decoration{display:none}.home-evolution .lesson-gallery{height:auto;display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:18px;transform:none}.home-evolution .lesson-gallery>a{position:static!important;display:block!important;width:100%!important;transform:none!important;margin:0!important}.home-evolution .lesson-gallery>a:first-child{grid-column:1/-1}.home-evolution .lesson-gallery>a img{width:100%;height:180px;object-fit:cover;border-radius:20px!important}.home-evolution .lesson-gallery>a:first-child img{height:300px;border-radius:110px 24px 24px 24px!important}.home-evolution .lesson-gallery>a:nth-child(2){margin-top:18px!important}.home-evolution .mission-copy .badge{background:none;color:#42569b;padding:0;font-weight:400}.home-evolution .james-introduction{border:0;background:#f2f4ff;border-radius:20px;padding:20px;margin-bottom:30px}.home-evolution .home-lessons{position:relative;background:#eff2ff!important;border-radius:0 100px 0 100px;padding:80px 0}.home-evolution .home-lessons .decoration{display:none}.home-evolution .home-lessons picture img{border-radius:26px 110px 26px 26px!important;width:100%;max-height:540px;object-fit:cover}.home-evolution .home-lessons .badge{background:none;padding:0;color:#42569b}.home-evolution .home-lessons .row{align-items:center}.home-evolution .home-lessons .lead{line-height:1.8}.home-evolution .home-focus{padding:80px 0}.home-evolution .home-focus>.container>.row:first-child{text-align:left!important;justify-content:flex-start!important;margin:0 0 32px!important}.home-evolution .home-focus>.container>.row:first-child>div{max-width:760px;padding:0}.home-evolution .lesson-detail summary{padding:28px 0;font-size:clamp(1.3rem,2.5vw,1.8rem);letter-spacing:-.025em}.home-evolution .lesson-detail-body .card{padding:24px;background:#f2f4ff;border:0}.home-evolution .lesson-detail-body .icon-round{display:none}.home-evolution .lesson-detail-body .badge{align-self:flex-start;margin-bottom:20px}.home-evolution .lesson-detail-body .row>div{max-width:100%;flex:1}.home-evolution .lesson-detail-body .h1{font-size:1.6rem}.home-evolution .home-prices{background:#eef1fc!important;border-radius:90px 0 90px 0;padding:80px 0}.home-evolution .home-prices>.container>.row{align-items:start!important}.home-evolution .home-prices h2:not(.reviews-heading){font-size:clamp(2rem,3vw,2.8rem);line-height:1.35}.home-evolution .reviews-heading{font-size:1.6rem;margin-bottom:24px}.home-evolution .home-prices .card{border-radius:24px;padding:32px;background:white}.home-evolution .home-prices .card .d-flex.mb-3{margin-bottom:24px!important}.home-evolution .home-prices .avatar-author{padding-top:20px;margin-top:16px;border-top:1px solid #dbe1ee}.home-evolution .home-prices .avatar-author .ml-2{margin-left:0!important}.home-evolution .home-location{padding:48px 0}.home-evolution .location-strip{padding:28px 16px;border-top:1px solid #dbe1ee;border-bottom:1px solid #dbe1ee;text-align:left!important}.home-evolution .location-strip h2,.home-evolution .location-strip h3{font-size:1rem;color:#42569b;margin-bottom:12px}.home-evolution .home-questions{padding:80px 0;background:#fff!important}.home-evolution .home-questions .card{border:0;border-bottom:1px solid #ccd5e7;border-radius:0;box-shadow:none;background:none}.home-evolution .home-questions .accordion-panel-title{padding:12px 0}.home-evolution .home-questions .accordion-panel-title [class*=h]{font-size:1.2rem!important;line-height:1.4}.home-evolution .home-closing{background:#eff2ff;border-radius:80px 80px 0 0}.home-evolution .home-closing .decoration{display:none}.home-evolution .skills-section{background:#f2f4ff!important;padding-top:110px}.home-evolution footer{border-top:1px solid #dbe1ee}
@media(max-width:767px){.sheffield-site:not(.home-evolution) .page-hero{padding-top:96px!important;padding-bottom:24px!important;border-radius:0 0 40px 0}.sheffield-site:not(.home-evolution) .page-content{padding-top:40px;padding-bottom:40px}.sheffield-site:not(.home-evolution) #contactForm{padding:20px}.home-evolution .home-mission,.home-evolution .home-lessons,.home-evolution .home-focus,.home-evolution .home-prices,.home-evolution .home-questions{padding:48px 0}.home-evolution .mission-photos{display:block}.home-evolution .mission-layout{gap:28px}.home-evolution .lesson-gallery>a:not(:first-child){display:none!important}.home-evolution .lesson-gallery>a:first-child img{height:230px;border-radius:64px 20px 20px 20px!important}.home-evolution .james-introduction{padding:16px}.home-evolution .home-lessons{border-radius:0 48px 0 48px}.home-evolution .home-prices{border-radius:48px 0 48px 0}.home-evolution .home-prices .card{padding:24px}.home-evolution .reviews-heading{margin-top:32px}.home-evolution .location-strip{padding:24px 0;margin:0}.home-evolution .location-strip>div{padding:0}.home-evolution .home-closing{border-radius:40px 40px 0 0}.home-evolution .skills-section{padding-top:80px}.sheffield-site [data-skills]{min-height:2.4em}}
.sheffield-site:not(.home-evolution) .page-hero:has(>.divider){padding-bottom:0!important;border-radius:0}
.sheffield-site .card h2.h3{font-size:1.5rem}
.sheffield-site:not(.home-evolution) .page-hero:not(:has(h1)){background:#f2f4ff!important;padding:24px 0!important;border-radius:0}.sheffield-site .page-hero:not(:has(h1)):after{display:none}.sheffield-site .page-hero:not(:has(h1)) .breadcrumb{margin-bottom:0}
.home-evolution .lesson-gallery>a img{max-width:100%}.home-evolution .mission-photos .decoration,.home-evolution .home-lessons .decoration,.home-evolution .home-closing .decoration{display:none!important}
/* One hierarchy, fewer competing elements. Explicit utility omitted by legacy CSS trim. */
.sheffield-site .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.sheffield-site .navbar-nav a[aria-current=page]{color:#fff;text-decoration:underline;text-underline-offset:6px}.sheffield-site .navbar-light .navbar-nav a[aria-current=page]{color:#304ba5!important}.sheffield-site .navbar-nav .nav-link{font-size:1rem}
.sheffield-site .page-content .decoration,.sheffield-site .skills-section .decoration{display:none!important}
.sheffield-site .page-content .badge,.home-evolution .home-mission .badge,.home-evolution .home-lessons .badge{background:none!important;color:#42569b!important;padding:0;letter-spacing:0;text-transform:none}
.home-evolution .home-mission{padding-top:56px;padding-bottom:64px}.home-evolution .mission-layout{gap:64px;align-items:center}.home-evolution .lesson-gallery{display:block}.home-evolution .lesson-gallery>a:first-child img{height:auto;aspect-ratio:1.25;object-fit:cover;border-radius:80px 24px 24px 24px!important}.home-evolution .mission-copy .my-3{margin-top:12px!important}.home-evolution .home-mission .lead{margin-bottom:18px}.home-evolution .home-lessons{padding:64px 0}.home-evolution .home-lessons .badge{margin-bottom:12px}.home-evolution .home-focus{padding:56px 0}.home-evolution .home-focus>.container>.row:first-child{max-width:720px}.home-evolution .lesson-detail-body{grid-template-columns:1fr}.home-evolution .lesson-detail-body>div:first-child{display:none}.home-evolution .lesson-detail-body .h1{font-size:1.3rem}.home-evolution .home-prices{padding:64px 0}.home-evolution .home-location{padding:32px 0}.home-evolution .location-strip{padding:20px 0}.home-evolution .home-questions{padding:56px 0}.home-evolution .home-closing{padding-top:48px;padding-bottom:48px}.home-evolution .skills-section{padding-top:90px;padding-bottom:48px}.sheffield-site .skills-section .row{align-items:center!important}.sheffield-site .skills-section img{max-height:400px;width:100%;object-fit:cover}.sheffield-site .skills-section .h1{margin-bottom:12px}.sheffield-site [data-skills]{min-height:1.2em;line-height:1.2;color:#3755b5}.sheffield-site [data-skills]:after{content:"";display:inline-block;height:.85em;border-right:2px solid currentColor;margin-left:4px;vertical-align:-.02em}.sheffield-site .motion-toggle{margin:0 0 20px;padding:4px 12px;border:0;text-decoration:underline;text-underline-offset:4px}.sheffield-site .skills-section .lead{font-size:1.125rem}.sheffield-site .testimonial-controls .btn{border:0;text-decoration:underline;text-underline-offset:4px;padding:6px 10px}.sheffield-site .testimonial-controls{gap:6px}.sheffield-site .preview-note{border:0;border-left:3px solid #aeb9ce;border-radius:0;background:#f2f4ff;color:#454c61!important;padding:10px 14px;font-size:1rem}.sheffield-site .demo-controls{color:#454c61}.sheffield-site .demo-controls summary{cursor:pointer;padding:8px 0;font-size:1rem}
.sheffield-site .inline-media{margin:32px 0;width:100%;max-width:100%}.sheffield-site .inline-media iframe{display:block;width:100%;height:auto;aspect-ratio:16/9;border:0;border-radius:18px;background:#e8ecf5}.sheffield-site .lesson-map iframe{aspect-ratio:4/3;min-height:300px}.sheffield-site .inline-media figcaption{font-size:1rem;line-height:1.6;color:#555b61;margin-top:12px}.sheffield-site .inline-media a{text-decoration:underline;text-underline-offset:3px}.sheffield-site .story-flow{display:block;margin:0}.sheffield-site .teacher-biography{max-width:760px;margin:0 auto}.sheffield-site .teacher-biography article{padding:0!important;margin:0!important;width:100%;max-width:none}.sheffield-site .teacher-biography p{margin-bottom:24px}.sheffield-site .teacher-biography blockquote{padding:24px;border-radius:18px;margin:28px 0}.sheffield-site .teacher-biography blockquote .h3{font-size:1.3rem;line-height:1.6}.sheffield-site .teacher-enquiry{max-width:760px;margin:64px auto 0;padding:32px;background:#f2f4ff;border-radius:24px}.sheffield-site .teacher-enquiry .col-xl-10{max-width:100%;flex:1}.sheffield-site .teacher-enquiry #contactForm{background:white}.sheffield-site .teacher-enquiry .mx-2{margin:0!important}.sheffield-site .teacher-story{padding-bottom:64px!important}
@media(max-width:1100px) and (min-width:992px){.sheffield-site .navbar-brand{font-size:1rem}.sheffield-site .navbar .btn{padding:12px}.sheffield-site .navbar-nav .nav-link{padding-left:10px;padding-right:10px}}
@media(max-width:767px){.home-evolution .home-mission,.home-evolution .home-lessons,.home-evolution .home-focus,.home-evolution .home-prices,.home-evolution .home-questions{padding:40px 0}.home-evolution .mission-layout{gap:24px}.home-evolution .mission-photos{display:none}.sheffield-site .teacher-enquiry{padding:20px;margin-top:40px}.sheffield-site .skills-section .h1{font-size:1.9rem}.sheffield-site [data-skills]{min-height:2.4em}.sheffield-site .skills-section img{max-height:280px;max-width:340px;display:block;margin:auto}.sheffield-site .skills-section .row>div:last-child{margin-top:24px}.sheffield-site .lesson-map iframe{min-height:260px}.sheffield-site .inline-media{margin:24px 0}.sheffield-site .teacher-story{padding-bottom:40px!important}}
@media(prefers-reduced-motion:reduce){.sheffield-site [data-skills]:after{display:none}}
.home-evolution .lesson-detail-body>div:first-child{display:block}.home-evolution .lesson-detail-body .focus-summary{padding:0;background:none}.home-evolution .focus-summary .badge,.home-evolution .focus-summary h3{display:none}.home-evolution .focus-summary .lead{font-size:1rem;color:#555b61;margin-bottom:0}.home-evolution .lesson-detail-body{gap:16px}
.home-evolution .home-questions{padding-top:56px!important}.sheffield-site .teacher-biography article>p{max-width:none;width:100%;margin:0 0 24px}.sheffield-site .teacher-biography blockquote{max-width:none;width:100%;margin:28px 0}
@media(max-width:767px){.home-evolution .home-questions{padding-top:40px!important}}
@media(min-width:768px) and (max-width:1199px){.sheffield-site [data-skills]{min-height:2.4em}}
/* Keep the typing control available to keyboard users without a visible extra row. */
.sheffield-site .motion-toggle:not(:focus){position:absolute;width:1px;height:1px;min-height:0;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.sheffield-site .motion-toggle:focus{position:relative;clip-path:none}
/* Give the full email address room instead of squeezing it into a quarter column. */
.sheffield-site .contact-summary{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:32px;max-width:800px;margin:0 auto}.sheffield-site .contact-summary-item{min-width:0}.sheffield-site .contact-summary a{font-size:clamp(1rem,1.5vw,1.25rem);white-space:nowrap}
@media(max-width:767px){.sheffield-site .contact-summary{grid-template-columns:1fr;gap:24px}.sheffield-site .contact-summary a{font-size:1rem;white-space:normal;overflow-wrap:anywhere}}
/* Keep the enquiry wave at the section edge and blend directly into the skills panel. */
.home-evolution .home-enquiry{padding-bottom:0!important}.home-evolution .home-enquiry>.container{padding-top:0;padding-bottom:64px}.home-evolution .home-enquiry>.decoration-wrapper{display:none!important}.home-evolution .home-enquiry>.divider{top:0;line-height:0}.home-evolution .home-enquiry>.divider svg{display:block}.home-evolution .home-enquiry>.divider path{fill:#f2f4ff!important}.home-evolution .skills-section{padding-top:64px;padding-bottom:48px}.home-evolution .skills-section>.container{padding-top:0;padding-bottom:0}
@media(max-width:767px){.home-evolution .home-enquiry>.container{padding-bottom:40px}.home-evolution .skills-section{padding-top:40px;padding-bottom:40px}}
/* Reviews cycle automatically; keep manual controls available on keyboard focus. */
.sheffield-site .testimonial-controls:not(:focus-within){position:absolute;width:1px;height:1px;min-height:0;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.sheffield-site .testimonial-controls:focus-within{position:relative;clip-path:none}
@media(prefers-reduced-motion:reduce){.sheffield-site .testimonial-controls:not([hidden]){position:relative;width:auto;height:auto;margin-top:1rem;overflow:visible;clip-path:none;white-space:normal}}
/* Disclosure contents use plain document flow, not the legacy rotated card grid. */
.home-evolution .lesson-detail-body{display:block;max-width:760px;padding:0 0 28px;margin:0}.home-evolution .lesson-detail-body>p{margin:0 0 12px;font-size:1.125rem;line-height:1.65}.home-evolution .lesson-detail-body>p:first-child{color:#555b61;font-size:1rem}.home-evolution .lesson-detail-body>ul{margin:16px 0 0;padding:0;list-style:none}.home-evolution .lesson-detail-body li{padding:8px 0!important;line-height:1.65}

.home-evolution .explore-lessons{margin:20px 0 0}.home-evolution .explore-lessons a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:1.125rem;font-weight:600;text-decoration:underline;text-underline-offset:4px}
/* Equal vertical alignment for linked email and plain address text. */
.sheffield-site footer ul.nav{align-items:center;gap:8px 16px}.sheffield-site footer ul.nav>.nav-item{display:flex;align-items:center;gap:8px;min-width:0;max-width:100%}.sheffield-site footer ul.nav>.nav-item>.icon{display:block;flex:0 0 24px;width:24px;height:24px;margin:0}.sheffield-site footer ul.nav>.nav-item>a,.sheffield-site footer ul.nav>.nav-item>span{display:block;min-width:0;margin:0;padding:0;line-height:1.65}
@media(max-width:767px){.sheffield-site footer ul.nav{flex-direction:column}.sheffield-site footer ul.nav>.nav-item{padding-left:0!important;padding-right:0!important}}
/* Match the About/Prices header wave, blending into the FAQ panel below. */
.sheffield-site.page-answers .faq-hero-divider{top:0;line-height:0}.sheffield-site.page-answers .faq-hero-divider svg{display:block}.sheffield-site.page-answers .faq-hero-divider svg path{fill:#f2f4ff}.sheffield-site.page-answers .page-hero+.page-content{padding-top:48px!important}
@media(max-width:767px){.sheffield-site.page-answers .page-hero+.page-content{padding-top:32px!important}}
.sheffield-site.page-answers .page-hero{border-bottom:0}.sheffield-site.page-answers .faq-hero-divider{margin-bottom:-1px}
/* Preserve the original illustrated cards without clipping their readable labels. */
.home-evolution .restored-lesson-focus .card-icon-3 .badge{max-height:none;height:auto;line-height:1.4}
/* Self-contained illustrated disclosures avoid the legacy card positioning rules. */
.illustrated-disclosure{--lesson-colour:#3755b5;--lesson-tint:#eef1fc;border-top:1px solid #ccd5e7}.illustrated-disclosure:last-child{border-bottom:1px solid #ccd5e7}.lesson-colour-1{--lesson-colour:#993f45;--lesson-tint:#fff1f0}.lesson-colour-2{--lesson-colour:#286557;--lesson-tint:#edf7f2}
.illustrated-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0;cursor:pointer;list-style:none;font-size:clamp(1.3rem,2vw,1.8rem);font-weight:600;line-height:1.3}.illustrated-disclosure>summary::-webkit-details-marker{display:none}.illustrated-disclosure>summary>span{display:grid;place-items:center;width:40px;height:40px;flex-shrink:0;background:var(--lesson-tint);color:var(--lesson-colour);border-radius:50%;position:relative;font-size:0}.illustrated-disclosure>summary>span::before,.illustrated-disclosure>summary>span::after{content:"";position:absolute;left:50%;top:50%;width:16px;height:3px;border-radius:1px;background:currentColor;transform:translate(-50%,-50%)}.illustrated-disclosure>summary>span::after{transform:translate(-50%,-50%) rotate(90deg)}.illustrated-disclosure[open]>summary>span{transform:rotate(45deg)}
.illustrated-panel{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:48px;align-items:center;padding:20px 12px 40px}.lesson-art-card{position:relative;display:grid;grid-template-columns:80px 1fr;gap:28px 16px;align-items:center;min-width:0;padding:32px;background:var(--lesson-tint);border:1px solid #dce1ec;border-radius:24px 24px 48px 24px;box-shadow:8px 8px 0 #1b1f3b08;transform:rotate(-1deg)}.lesson-art-icon{display:grid;place-items:center;width:80px;height:80px;color:var(--lesson-colour)}.lesson-art-icon svg{width:64px;height:64px}.lesson-art-icon svg [fill]:not([fill=none]){fill:currentColor}.lesson-art-label{position:static;display:inline-block;justify-self:end;align-self:start;height:auto;min-height:0;max-height:none;margin:0;padding:6px 10px;background:var(--lesson-colour);color:white;border-radius:8px;font-size:1rem;line-height:1.4}.lesson-art-card>div:last-child{grid-column:1/-1}.lesson-art-card h3{font-size:1.6rem;line-height:1.25;margin-bottom:12px}.lesson-art-card p{font-size:1.125rem;margin:0}.lesson-art-copy{min-width:0}.lesson-art-copy h3{font-size:1.8rem;line-height:1.25}.lesson-art-copy>.lead{font-size:1.125rem}.lesson-art-copy li{align-items:flex-start;line-height:1.6}.lesson-art-copy li>.icon-round{flex-shrink:0}
@media(max-width:767px){.illustrated-panel{grid-template-columns:1fr;gap:28px;padding:12px 4px 32px}.lesson-art-card{padding:24px;gap:20px 12px;grid-template-columns:64px 1fr;transform:none}.lesson-art-icon{width:64px;height:64px}.lesson-art-label{font-size:1rem}.lesson-art-copy h3{font-size:1.5rem}}
/* Let the enquiry card fill its column instead of nesting another narrow grid. */
.home-evolution .home-enquiry>.container>.row>.col>.row{display:block;margin:0}.home-evolution .home-enquiry .enquiry-card{width:100%;max-width:none;flex:none}
@media(min-width:992px){.home-evolution .home-enquiry>.container>.row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:48px;align-items:start;margin-left:0;margin-right:0}.home-evolution .home-enquiry>.container>.row>div{width:100%;max-width:none;padding-left:0;padding-right:0;min-width:0}}
/* Practical details accompany the earlier enquiry form. */
.home-evolution .enquiry-location{padding:24px 0 0!important;margin:28px 0 0;border-top:1px solid #ffffff30;display:grid;gap:20px}.home-evolution .enquiry-location-item{min-width:0}.home-evolution .enquiry-location h2,.home-evolution .enquiry-location h3{font-size:1.125rem;line-height:1.4;letter-spacing:0;margin-bottom:6px;color:#d5daec}.home-evolution .enquiry-location .lead{font-size:1.125rem}.home-evolution .enquiry-location a{color:white;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.home-evolution .enquiry-entry-wave{background:#eef1fc;line-height:0;top:0}.home-evolution .enquiry-entry-wave svg{display:block}.home-evolution .enquiry-entry-wave path{fill:#1b1f3b!important}.home-evolution .home-prices{border-bottom-left-radius:0;border-bottom-right-radius:0}.home-evolution .home-enquiry>.divider path{fill:#eff2ff!important}.home-evolution .home-enquiry+.home-lessons{border-top-right-radius:0}
/* The About form ends cleanly before the related-reading section. */
.sheffield-site.page-about-me .teacher-story{padding-bottom:48px!important}.sheffield-site.page-about-me .teacher-enquiry .mb-4{margin-bottom:0!important}.sheffield-site.page-about-me .teacher-enquiry .mb-5{margin-bottom:0!important}

/* Visible review pagination with generous touch targets and a compact active marker. */
.sheffield-site .review-dots{display:flex;justify-content:center;align-items:center;gap:0;margin-top:12px}
.sheffield-site .review-dots button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:transparent;cursor:pointer}
.sheffield-site .review-dots button::before{content:"";width:10px;height:10px;border-radius:999px;background:#a7b1cc}
.sheffield-site .review-dots button[aria-current="true"]::before{width:24px;background:#3755b5}
.sheffield-site .review-dots button:hover::before{background:#3755b5}
/* Overlap wave joins so fractional SVG pixels cannot expose a hairline seam. */
.home-evolution .enquiry-entry-wave{margin-bottom:-2px;z-index:1;pointer-events:none}
.home-evolution .home-enquiry>.divider{margin-bottom:-2px}
.home-evolution .home-enquiry+.home-lessons{margin-top:-2px}

/* One reading size for James's introduction, biography and student quotation. */
.sheffield-site.page-about-me .teacher-introduction p,
.sheffield-site.page-about-me .teacher-biography p,
.sheffield-site.page-about-me .teacher-biography blockquote .h3{
  font-size:1.125rem;line-height:1.7;font-weight:400;letter-spacing:normal;
}
.sheffield-site.page-about-me .teacher-introduction p,
.sheffield-site.page-about-me .teacher-biography p{margin-bottom:24px}
/* Match the backing colour at the SVG's straight edge as well as overlapping it.
   Otherwise antialiasing blends the navy edge with the pale wave background. */
.home-evolution .enquiry-entry-wave{
  background:linear-gradient(to bottom,#eef1fc calc(100% - 4px),#1b1f3b 0);
}

/* The FAQ enquiry is a single centred column, not a contact-details grid. */
.sheffield-site .faq-enquiry-layout{width:100%;max-width:760px;margin:0 auto}
.sheffield-site .faq-enquiry-card{width:100%;min-width:0}
.sheffield-site .faq-enquiry-card .enquiry-intro{padding:0 28px}
@media(max-width:767px){.sheffield-site .faq-enquiry-card .enquiry-intro{padding:0 20px}}

/* Keep the related-reading wave flush with the preceding white article. */
.sheffield-site:not(.home-evolution) .related-reading{padding-top:0;padding-bottom:0}
.sheffield-site .related-reading>.divider{top:0;bottom:0;line-height:0;margin-top:-1px}
.sheffield-site .related-reading>.divider svg{display:block}
.sheffield-site .related-reading>.container{padding-top:48px;padding-bottom:48px}
@media(max-width:767px){.sheffield-site .related-reading>.container{padding-top:32px;padding-bottom:32px}}

/* Sliding reviews: stable card height, direct mouse/touch manipulation. */
.sheffield-site .reviews-sliding{overflow:hidden;touch-action:pan-y;cursor:grab;border-radius:24px}
.sheffield-site .review-track{display:flex;align-items:stretch;transition:transform .55s cubic-bezier(.22,.61,.36,1);user-select:none}
.sheffield-site .review-track>.carousel-cell{flex:0 0 100%;min-width:0;display:flex}
.sheffield-site .review-track .card{width:100%;height:100%;box-sizing:border-box}
.sheffield-site .reviews-sliding.is-dragging{cursor:grabbing}
.sheffield-site .is-dragging .review-track{transition:none}
@media(prefers-reduced-motion:reduce){.sheffield-site .review-track{transition:none}}

/* Shared photo-backed menu: transparent over the hero, opaque after scrolling. */
.sheffield-site:not(.home-evolution) .navbar[data-overlay]{background:transparent;border-bottom-color:transparent;transition:background-color .2s ease}
.sheffield-site:not(.home-evolution) .navbar[data-overlay].scrolled,
.sheffield-site:not(.home-evolution) .navbar[data-overlay]:has(.navbar-collapse.show){background:#1b1f3b}
.sheffield-site .legal-hero{position:relative;background:linear-gradient(#1b1f3be8,#1b1f3bf2),url('/assets/img/piano-template/001-headerImage.webp') center / cover!important}
@media(prefers-reduced-motion:reduce){.sheffield-site .navbar[data-overlay]{transition:none}}

/* Legal-page breadcrumbs need a dark photo header and room below the fixed menu. */
.sheffield-site:not(.home-evolution) .page-hero.legal-hero:not(:has(h1)){
  background:linear-gradient(#1b1f3be8,#1b1f3bf2),url('/assets/img/piano-template/001-headerImage.webp') center / cover!important;
  padding:120px 0 32px!important;
}
@media(max-width:767px){
  .sheffield-site:not(.home-evolution) .page-hero.legal-hero:not(:has(h1)){padding:100px 0 24px!important}
}

/* A consistent reading column for the lesson overview. */
.sheffield-site .lessons-reading{flex:0 1 800px;max-width:800px;width:100%;font-size:1.125rem;line-height:1.75}
.sheffield-site .lessons-reading p{margin:0 0 24px;max-width:none}
.sheffield-site .lessons-opening-quote{font-size:clamp(1.4rem,2.4vw,1.9rem);font-weight:500;line-height:1.45;letter-spacing:-.015em;margin:0 0 32px;padding:8px 0 8px 24px;border-left:3px solid #5269bf;color:#1b1f3b}
.sheffield-site .lessons-reading ul{margin:28px 0;padding:24px 28px 24px 48px;background:#f2f4ff;border-radius:20px}
.sheffield-site .lessons-reading li{padding-left:4px;margin-bottom:12px}
.sheffield-site .lessons-reading li:last-child{margin-bottom:0}
.sheffield-site .lessons-reading li::marker{color:#3755b5}
.sheffield-site .lessons-reading .lessons-contact{padding-top:24px;border-top:1px solid #dbe1ee;margin-bottom:0}
.sheffield-site .lessons-contact a{overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}
@media(max-width:767px){.sheffield-site .lessons-opening-quote{padding-left:18px}.sheffield-site .lessons-reading ul{padding:20px 20px 20px 36px}}

/* Consistent pale-blue surround for inner-page enquiry forms. */
.sheffield-site:not(.home-evolution) .enquiry-panel{background:#f2f4ff;border-radius:24px;padding:32px;width:100%;max-width:760px;flex:0 1 760px}
.sheffield-site:not(.home-evolution) .enquiry-panel #contactForm{background:#fff}
.sheffield-site .faq-enquiry-card.enquiry-panel .enquiry-intro{padding:0}
@media(max-width:767px){.sheffield-site:not(.home-evolution) .enquiry-panel{padding:20px}.sheffield-site.page-contact .enquiry-panel{margin-left:15px;margin-right:15px}}

/* Shared reading scale: 18px body, 16px supporting text, 24px small headings.
   Hero and major section headings retain their established responsive scale. */
.sheffield-site{--text-body:1.125rem;--text-support:1rem;--text-subheading:1.5rem}
.sheffield-site main p,
.sheffield-site main .lead,
.sheffield-site main article li,
.sheffield-site .lesson-art-copy li,
.sheffield-site .accordion-panel p,
.sheffield-site .questions-followup{font-size:var(--text-body);line-height:1.7}
.sheffield-site .questions-followup{display:block}
.sheffield-site .questions-followup a{font-size:inherit;font-weight:600}
.sheffield-site main .enquiry-intro p,
.sheffield-site main .form-help,
.sheffield-site main .preview-note,
.sheffield-site main .required-note,
.sheffield-site main figcaption,
.sheffield-site main .section-kicker,
.sheffield-site main .section-label{font-size:var(--text-support);line-height:1.6}
.sheffield-site .home-prices .card h4:not(.h6){font-size:var(--text-body);line-height:1.7}
.sheffield-site .home-prices .reviews-heading,
.sheffield-site .lesson-art-card h3,
.sheffield-site .lesson-art-copy h3,
.sheffield-site .card h2.h3{font-size:var(--text-subheading);line-height:1.35}
.sheffield-site .home-questions .accordion-panel-title [class*=h],
.sheffield-site .accordion-panel-title [class*=h]{font-size:var(--text-body)!important;line-height:1.5}

/* Visible rotation control alongside pagination, with a comfortable touch target. */
.sheffield-site .review-toolbar{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:12px}
.sheffield-site .review-toolbar .review-dots{margin-top:0}
.sheffield-site .review-pause{min-width:76px;min-height:44px;padding:8px 12px;border:1px solid #a7b1cc;border-radius:999px;background:transparent;color:#304ba5;font:inherit;font-size:1rem;cursor:pointer}
.sheffield-site .review-pause:hover{background:#e2e8fa}

/* Semantic heading levels are independent of their visual size. */
.sheffield-site .guide-listing-heading,
.sheffield-site .price-option-heading,
.sheffield-site .policy-heading{font-size:1.5rem!important;line-height:1.35;margin-top:32px;margin-bottom:16px}
.sheffield-site .price-option-heading{margin-top:0}
.sheffield-site .policy-subheading{font-size:1.25rem;line-height:1.4}
.sheffield-site .related-heading{font-size:1.25rem;line-height:1.4}
.sheffield-site .guide-introduction{font-size:1.125rem;line-height:1.7}
.sheffield-site .lesson-art-title{font-size:1.5rem;line-height:1.35;font-weight:600;margin-bottom:12px}
.sheffield-site .contact-detail-label{font-size:1.125rem;font-weight:600;margin-bottom:6px}
.sheffield-site .review-author{font-size:1rem;font-weight:600}
.sheffield-site .home-prices .review-copy{font-size:1.125rem;line-height:1.7}
.sheffield-site .skills-section h2.h1>.skills-typing-line{display:block}

/* Comparable prices, with the popularity badge contained inside its card. */
.sheffield-site .lesson-pricing-grid{row-gap:24px}
.sheffield-site .lesson-pricing-grid>div{display:flex}
.sheffield-site .lesson-price-card{position:relative;width:100%;margin:0;padding:72px 28px 28px}
.sheffield-site .lesson-price-card .price-popular{position:absolute;top:20px;left:50%;transform:translateX(-50%);margin:0;padding:6px 14px;border-radius:999px;background:#e9edff;color:#304ba5;white-space:nowrap}
.sheffield-site .lesson-price-card .price-option-heading{margin:0 0 16px}
.sheffield-site .lesson-price-card .lesson-price{font-size:3rem;line-height:1.1;font-weight:600;letter-spacing:-.03em;margin:0 0 8px;color:#1b1f3b}
.sheffield-site .lesson-price-card ul{margin:24px 0!important}
.sheffield-site .lesson-price-card>.btn{margin-top:auto;min-width:200px}
@media(max-width:767px){.sheffield-site .lesson-price-card{padding:64px 24px 24px}.sheffield-site .lesson-price-card>.btn{width:100%}}

/* Practical teaching and booking information. */
.seo-guidance .seo-reading { max-width: 760px; margin-inline: auto; }
.seo-guidance h2:not(:first-child) { margin-top: 2rem; }
.seo-guidance p { line-height: 1.75; }
.seo-guidance a { text-decoration: underline; text-underline-offset: .18em; }
.sheffield-site .home-enquiry .contact-detail-label { color: #fff; }

/* A quieter reading hierarchy and more compact opening sections. */
.sheffield-site .seo-guidance h2,
.sheffield-site .teacher-biography article>h2,
.sheffield-site .lessons-reading h2 {
  font-size:1.5rem;line-height:1.35;letter-spacing:-.015em;
  text-align:left;max-width:none;margin:28px 0 14px;padding:0;
}
.sheffield-site .seo-guidance h2:first-child,
.sheffield-site .teacher-biography article>h2:first-child { margin-top:0; }
.sheffield-site .home-getting-started { padding:48px 0 24px; }
.home-getting-started .seo-reading { max-width:960px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px; }
.sheffield-site .home-getting-started p { font-size:1rem;line-height:1.7; }
.home-getting-started .getting-started-item h2 { margin-top:0; }
.sheffield-site.home-evolution .home-questions { padding:32px 0 48px!important; }
.sheffield-site .home-questions>.container>.row>div { flex:0 1 990px;max-width:990px; }
.sheffield-site .home-questions h2,
.sheffield-site.page-answers .faq-main h2 { font-size:1.75rem;line-height:1.3;margin-bottom:20px;letter-spacing:-.02em; }
.sheffield-site .home-questions .card,
.sheffield-site.page-answers .faq-main .card { padding:16px 0;margin:0!important;border:0;border-bottom:1px solid #ccd5e7;border-radius:0;background:transparent;box-shadow:none; }
.sheffield-site .home-questions .accordion-panel-title,
.sheffield-site.page-answers .faq-main .accordion-panel-title { padding:4px 0; }
.sheffield-site .home-questions .my-4 { margin-top:0!important; }
.sheffield-site.page-answers .faq-main { padding:32px 0 40px!important; }
.sheffield-site.page-answers .faq-main>.container>.row>div { flex:0 1 790px;max-width:790px; }
.sheffield-site.page-answers .seo-guidance { padding:32px 0 40px; }
.sheffield-site:not(.home-evolution) .page-hero:has(h1) { padding-top:100px!important; }
.sheffield-site:not(.home-evolution) .page-hero .row.my-3 { margin:8px 0!important; }
.sheffield-site:not(.home-evolution) .page-hero .row.my-4 { margin:24px 0 32px!important; }
.sheffield-site:not(.home-evolution) .page-hero .breadcrumb { margin:0; }
.sheffield-site:not(.home-evolution) .page-hero h1 { font-size:clamp(2.25rem,4vw,3.25rem);margin-bottom:18px; }
.sheffield-site:not(.home-evolution) .page-hero>.divider svg { height:48px; }
.sheffield-site.page-about-me .teacher-introduction { padding:40px 0; }
.sheffield-site.page-about-me .teacher-introduction h2 { font-size:2rem; }
.sheffield-site.home-evolution .hero-layout { margin:24px 0 32px;gap:40px; }
.sheffield-site.home-evolution .hero-photo img { height:350px; }
.sheffield-site.home-evolution .hero-photo figcaption { padding:14px 20px; }
.sheffield-site.home-evolution .home-hero>.divider svg { height:56px; }
@media(max-width:767px){
  .home-getting-started .seo-reading { grid-template-columns:1fr;gap:20px; }
  .sheffield-site .home-getting-started { padding:32px 0 8px; }
  .sheffield-site.home-evolution .hero-photo img { height:auto; }
  .sheffield-site.home-evolution .hero-layout { margin:16px 0 20px;gap:20px; }
  .sheffield-site:not(.home-evolution) .page-hero:has(h1) { padding-top:88px!important; }
  .sheffield-site:not(.home-evolution) .page-hero .row.my-4 { margin:20px 0 24px!important; }
}
/* Give the homepage opening its original, more generous desktop scale. */
@media(min-width:768px){
  .sheffield-site.home-evolution .hero-layout { margin:54px 0 64px;gap:48px; }
  .sheffield-site.home-evolution .hero-copy { padding-bottom:32px; }
  .sheffield-site.home-evolution .hero-copy h1 { font-size:clamp(3rem,5.2vw,4.8rem);margin-bottom:26px; }
  .sheffield-site.home-evolution .hero-copy>p:first-child { margin-bottom:16px!important; }
  .sheffield-site.home-evolution .hero-teacher { margin-top:20px; }
  .sheffield-site.home-evolution .lesson-facts { margin-bottom:24px; }
  .sheffield-site.home-evolution .hero-photo img { height:470px; }
  .sheffield-site.home-evolution .hero-photo figcaption { padding:20px 24px; }
  .sheffield-site.home-evolution .home-hero>.divider svg { height:96px; }
}
@media(min-width:768px) and (max-width:991px){
  .sheffield-site.home-evolution .hero-layout { gap:28px; }
  .sheffield-site.home-evolution .hero-photo img { height:420px; }
}

/* Compact contact header followed immediately by the enquiry form. */
.sheffield-site.page-contact main { padding-top:0; }
.sheffield-site.page-contact main>.page-content { padding-top:28px;padding-bottom:48px; }
.sheffield-site.page-contact .enquiry-panel h1 { font-size:2rem;line-height:1.2;margin-bottom:12px; }
.sheffield-site.page-contact .enquiry-panel>.mb-4 { margin-bottom:16px!important; }
@media(max-width:767px){
  .sheffield-site.page-contact main { padding-top:0; }
  .sheffield-site.page-contact main>.page-content { padding-top:20px; }
}


/* Shared finish for related reading and the final invitation to enquire. */
.sheffield-site:not(.home-evolution) section.rounded-closing,
.sheffield-site section.rounded-closing {
  background:#eff2ff!important;
  border-radius:80px 80px 0 0;
  overflow:hidden;
}
.sheffield-site section.rounded-closing>.divider { display:none; }
@media(max-width:767px){
  .sheffield-site:not(.home-evolution) section.rounded-closing,
  .sheffield-site section.rounded-closing { border-radius:40px 40px 0 0; }
}

.sheffield-site.page-contact .enquiry-intro h2 { font-size:1.75rem;line-height:1.3;margin:0 0 12px; }
.sheffield-site.page-contact .enquiry-intro>p:not(.preview-note) { font-size:1.125rem;line-height:1.7; }

.home-getting-started .getting-started-item { display:flex;flex-direction:column; }
.home-getting-started .getting-started-item .guidance-link { margin-top:auto;margin-bottom:0;padding-top:8px; }
/* Longer editorial content retains a readable measure and clear section breaks. */
.sheffield-site .content-guide{max-width:790px}
.sheffield-site .content-guide h2{font-size:1.75rem;line-height:1.3;margin:36px 0 16px}
.sheffield-site .content-guide p,.sheffield-site .content-guide li,.sheffield-site .lessons-reading li{line-height:1.75}
.sheffield-site .content-guide li,.sheffield-site .lessons-reading li{margin-bottom:12px}
.sheffield-site .content-guide a,.sheffield-site .faq-main p a{text-decoration:underline;text-underline-offset:3px}
.sheffield-site .content-guide .guide-reviewed{border-top:1px solid #dbe1ee;padding-top:24px;margin-top:36px;color:#515c76;font-size:1rem}
.sheffield-site.page-answers .faq-main .faq-group-heading{margin-top:44px}
.sheffield-site .guide-contents{margin:28px 0 36px;padding:24px;background:#f2f4ff;border-radius:16px}
.sheffield-site .guide-contents p{margin-bottom:12px}
.sheffield-site .guide-contents ul{margin:0;padding-left:20px;columns:2;column-gap:28px}
.sheffield-site .guide-contents li{break-inside:avoid;margin-bottom:10px;font-size:1rem}
@media(max-width:767px){.sheffield-site .guide-contents{padding:20px}.sheffield-site .guide-contents ul{columns:1}}
/* Preserve the original centred article layout across guides and legal pages. */
.sheffield-site.restored-document .content-guide{width:100%;margin-left:auto!important;margin-right:auto!important}
@media(max-width:359px){.sheffield-site.restored-document .navbar-brand{font-size:15px!important}}

/* One viewport offset for every fragment target, including teaching and legal pages.
   The measured header height also covers wrapping navigation and browser zoom. */
html { scroll-padding-top:calc(var(--sheffield-header-height, 88px) + 24px); }
.sheffield-site main [id] { scroll-margin-top:0; }
@media(max-width:991px) {
  html { --sheffield-header-height:72px; }
}
