#home .localPath{border:3px solid #88718e!important;text-align:center}
#home .localPath .btn{background:#66506f!important;border:2px solid #66506f!important;color:#fff!important;font-weight:700}
#home .localPath .btn:hover{background:#4c3656!important}
#home .hero .eyebrow,#home .hero h1,#home .hero p,#home .hero .actions,.page>.wrap>.center,.page .intro,.page .card,.pathway,.timetableHead{text-align:center}
#home .hero .actions{justify-content:center}
.liveCalendar{padding:24px}.calendarGrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendarDayName{text-align:center;font-weight:700;padding:8px 0}.calendarDay{min-height:115px;background:#fffaf7;border:1px solid #d9c9d0;border-radius:8px;padding:8px;min-width:0}.calendarDay.isToday{border:2px solid #886075}.calendarDay.blank{background:transparent;border:0}.calendarDate{display:block;font-weight:700}.calendarEvent{display:block;margin-top:7px;padding:5px;background:#f0dce3;border-radius:5px;font-size:12px;line-height:1.4;overflow-wrap:anywhere}.calendarEvent time{display:block;font-weight:700}
@media(max-width:600px){.liveCalendar{padding:10px}.calendarGrid{gap:2px}.calendarDay{min-height:75px;padding:3px;border-radius:4px}.calendarDayName{font-size:12px}.calendarDate{font-size:12px}.calendarEvent{padding:2px;font-size:10px}}
/* Consistent centred typography and actions across the site. */
body,body *{text-align:center!important}
.strip{justify-content:center!important;align-items:center!important}
.strip span{flex:1;text-align:center!important}
.actions,.noticeActions,.heroActions,.socials,.socialLinks{justify-content:center!important}
button,.btn{margin-inline:auto!important}
button,a.btn{justify-content:center!important;align-items:center!important}
.choice{justify-content:center!important}
fieldset,legend{margin-inline:auto}
@media(max-width:600px){.strip{display:flex;flex-direction:column;gap:8px}.strip span{width:100%}}
/* Harmonious module palette and stronger action colours. */
:root{--module-rose:#f4dfe7;--module-blue:#e2eaf2;--module-sage:#e6ecdf;--module-gold:#f5edda;--module-lilac:#ece2f1;--action:#755064;--action-hover:#553447}
.page .card,.formbox,.pathway,dialog,.timetable{border:1px solid #cfbdc7;border-radius:18px;box-shadow:0 8px 24px #61405209}
.page .card{background:#f5ede5;border-top:5px solid #ad8c6d}
.page .card.pink{background:var(--module-rose);border-top-color:#a66d84}
.page .card.sage{background:var(--module-blue);border-top-color:#758da8}
.page .card h3,.formbox h3{color:#603d52;font-weight:700}
.page .card .eyebrow{color:#71475d;font-weight:700;letter-spacing:.1em}
.page .card .pill{background:#fff9;border:1px solid #b59caa;color:#604354;padding:6px 13px}
.page .card details{background:#ffffff6b;border-radius:10px;padding:10px 14px;margin-top:18px}
.page .card summary{color:#604354;font-weight:700}
.page .intro h2,.page .center h1{color:#674357}
.page .intro .eyebrow,.page .center .eyebrow{display:inline-block;background:#ead5df;color:#684054;border-radius:24px;padding:6px 16px;font-weight:700}
#practiceCourses .card:nth-child(1){background:var(--module-gold);border-top-color:#a88b4b}
#practiceCourses .card:nth-child(2){background:var(--module-blue);border-top-color:#6d8a9f}
#practiceCourses .card:nth-child(3){background:var(--module-rose);border-top-color:#ac7188}
#practiceCourses .card:nth-child(4){background:var(--module-sage);border-top-color:#7e9064}
#practiceCourses .card:nth-child(1) h3{color:#78622f}#practiceCourses .card:nth-child(2) h3{color:#44657c}#practiceCourses .card:nth-child(3) h3{color:#854e68}#practiceCourses .card:nth-child(4) h3{color:#536a40}
#nextLiveClass{background:var(--module-lilac);border-top:5px solid #8d709a}#latestReplay{background:var(--module-sage);border-top:5px solid #7d936d}
.formbox{background:#f3e8ee}.formbox .field{padding:12px;border-radius:10px}.formbox .field:nth-of-type(even){background:#ffffff70}
.formbox label,fieldset legend{color:#604354;font-weight:700}
#home .localPath{background:var(--module-lilac)!important;padding:32px!important;border-radius:18px}
#home .localClientsTitle{color:#61466f!important}
#home #ninaPicks{background:var(--module-gold)}
#home .intro h2{color:#674357}#home .intro .eyebrow{color:#805268;font-weight:700}
body .btn,body button[type=submit],body .bookingShortcut,body nav .booking,body .menuToggle{background:var(--action)!important;color:#fff!important;border:2px solid var(--action)!important;font-weight:600;box-shadow:0 3px 8px #54334618}
body .btn.secondary{background:#78667e!important;border-color:#78667e!important;color:#fff!important}
body .btn:hover,body .btn.secondary:hover,body button[type=submit]:hover{background:var(--action-hover)!important;border-color:var(--action-hover)!important}
body button:not(.btn):not(.bookingShortcut):not(.menuToggle){color:#654256;font-weight:600}
body .textLink{color:#66374f!important;font-weight:700;text-decoration:underline;text-underline-offset:4px}
body button:disabled,body .btn[aria-disabled=true]{opacity:.6;cursor:default}
body button:focus-visible,body a:focus-visible{outline:3px solid #a47540;outline-offset:4px}
body .actions,body .storeTabs,body .socialLinks,body .noticeActions{justify-content:center!important}
body h1,body h2,body h3,body p{margin-left:auto;margin-right:auto}
#home #resets .card:before{margin-left:auto;margin-right:auto}
#home #liveClasses{display:block!important}#home #liveClasses .intro{margin:0 auto 28px;max-width:800px}
.weeklyDay{min-height:195px;background:#f4e6ed;border-top:4px solid #ac7a91}.weeklyDay1,.weeklyDay4{background:#e6edf3;border-top-color:#819bb0}.weeklyDay2,.weeklyDay5{background:#e9eddf;border-top-color:#909e73}.weeklyDay3,.weeklyDay6{background:#f4eddd;border-top-color:#b09b6e}
.weeklyDay .calendarDayName{margin:0;padding:10px 0;font-size:17px;color:#604354;border-bottom:1px solid #b69baa55}.calendarEvent{background:#fff9;padding:10px 5px;line-height:1.5}.calendarEvent strong,.calendarEvent span{display:block}.calendarEvent time{font-size:15px;color:#603d52}.calendarNoClass{font-size:12px;line-height:1.5;color:#75636b;margin-top:26px}
@media(max-width:700px){.calendarGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.weeklyDay{min-height:135px;padding:8px}.weeklyDay:last-child{grid-column:1/-1}.calendarEvent{font-size:13px}.calendarNoClass{font-size:13px}.liveCalendar{padding:14px}}
.calendarEvent .btn{font-size:11px;padding:7px 5px;line-height:1.4;margin-top:10px;display:flex;width:100%;white-space:normal}
.faqList details a,.message a{color:#633f54;font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.calendarEvent .btn{font-size:13px;padding:9px}}
