:root{
 --blue:#115588;
 --blue-dark:#0b365b;
 --blue-soft:#e9f4fb;
 --teal:#00ccb3;
 --mint:#eafffb;
 --yellow:#ffcc00;
 --yellow-soft:#fff5c7;
 --ink:#173244;
 --muted:#5f7480;
 --line:rgba(17,85,136,.14);
 --white:#ffffff;
 --shadow:0 20px 60px rgba(13,58,88,.16);
 --shadow-soft:0 14px 34px rgba(13,58,88,.10);
 --radius:28px;
 --radius-lg:38px;
 --container:1180px;
 --header-height:92px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:#fbfffe;line-height:1.7;font-size:16px;overflow-x:hidden}
img,svg,video,iframe{max-width:100%;display:block}
iframe{border:0}
main{min-width:0}
p,li,dd,figcaption{overflow-wrap:anywhere}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:4px}
.container{width:min(var(--container),calc(100% - 40px));margin-inline:auto}
.skip-link{position:absolute;left:-999px;top:12px;background:var(--blue);color:white;padding:10px 14px;border-radius:10px;z-index:9999}.skip-link:focus{left:12px}
.site-header{position:sticky;top:0;z-index:1000;background:#fff;backdrop-filter:none;box-shadow:0 8px 28px rgba(9,50,78,.08);border-bottom:1px solid rgba(17,85,136,.08)}
.top-strip{background:linear-gradient(90deg,var(--blue-dark),var(--blue));color:white;font-size:.92rem}.top-strip__inner{display:flex;justify-content:space-between;gap:14px;align-items:center;min-height:36px}.top-strip a{color:white;font-weight:800}.nav-shell{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:82px}.brand{display:flex;align-items:center;flex:0 0 auto}.brand img{width:236px;max-height:58px;object-fit:contain}.site-nav{display:flex;align-items:center;gap:4px}.nav-link{font-weight:750;color:var(--blue-dark);padding:12px 10px;border-radius:999px;white-space:nowrap;font-size:.96rem}.nav-link:hover,.nav-link.is-active{background:var(--blue-soft);text-decoration:none;color:var(--blue)}
.nav-toggle{display:none;width:48px;height:48px;border:1px solid var(--line);background:white;border-radius:16px;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer}.nav-toggle span{width:22px;height:2px;background:var(--blue);border-radius:99px;transition:.2s ease}.nav-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle.is-open span:nth-child(2){opacity:0}.nav-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:13px 21px;font-weight:850;border:2px solid transparent;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;color:var(--blue-dark);line-height:1.1;text-align:center}.btn:hover{transform:translateY(-2px);text-decoration:none}.btn--primary,.btn--nav{background:var(--yellow);border-color:var(--yellow);box-shadow:0 12px 24px rgba(255,204,0,.25)}.btn--primary:hover,.btn--nav:hover{background:#ffe26a}.btn--secondary{background:var(--blue);color:white;box-shadow:0 12px 28px rgba(17,85,136,.22)}.btn--secondary:hover{background:var(--blue-dark)}.btn--ghost{background:rgba(255,255,255,.16);color:white;border-color:rgba(255,255,255,.55);backdrop-filter:blur(8px)}.btn--ghost:hover{background:white;color:var(--blue-dark)}.btn--nav{padding:12px 18px;margin-left:8px}
.hero{position:relative;min-height:560px;display:grid;align-items:center;overflow:hidden;background-image:linear-gradient(90deg,rgba(8,45,72,.88),rgba(17,85,136,.62),rgba(17,85,136,.12)),var(--hero-image);background-size:cover;background-position:center}.hero__overlay{position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(255,204,0,.22),transparent 32%),linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.24));pointer-events:none}.hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,720px) 1fr;gap:36px}.hero__content{color:white;padding:76px 0}.eyebrow{margin:0 0 12px;text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;font-weight:900;color:var(--teal)}.hero .eyebrow{color:var(--yellow)}h1,h2,h3{line-height:1.12;color:var(--ink);margin:0 0 18px}h1{font-size:clamp(2.45rem,6vw,5rem);letter-spacing:-.055em}.hero h1{color:white;text-shadow:0 4px 20px rgba(0,0,0,.22)}h2{font-size:clamp(2rem,4vw,3.1rem);letter-spacing:-.04em}h3{font-size:1.28rem}.hero p{font-size:clamp(1.04rem,2vw,1.28rem);max-width:680px;color:rgba(255,255,255,.94);margin:0 0 26px}.hero__actions,.button-row{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.section{padding:92px 0}.section--soft{background:linear-gradient(180deg,#f2fffc,#ffffff)}.section--narrow{padding-top:40px}.section-heading{text-align:center;max-width:790px;margin-bottom:42px}.section-heading p:last-child{color:var(--muted);font-size:1.08rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:center}.split--about{grid-template-columns:.82fr 1.18fr}.split--feature{grid-template-columns:1.05fr .95fr}.content-panel,.info-card,.legal-card,.contact-card,.price-card{background:white;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:clamp(26px,4vw,48px)}.content-panel p,.info-card p,.legal-card p,.contact-card p,.price-card p{color:var(--muted);margin:0 0 18px}.portrait-card{background:linear-gradient(145deg,var(--mint),var(--blue-soft));border-radius:50px;padding:18px;box-shadow:var(--shadow);position:relative}.portrait-card::before{content:"";position:absolute;inset:auto 30px -16px 30px;height:40px;background:var(--yellow);border-radius:999px;filter:blur(24px);opacity:.55}.portrait-card img{border-radius:42px;width:100%;aspect-ratio:1/1;object-fit:cover;position:relative;z-index:1}.image-card,.image-stack{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.7)}.image-card img{width:100%;height:100%;min-height:360px;object-fit:cover}.image-stack img{width:100%;height:440px;object-fit:cover}.text-link{font-weight:850;color:var(--blue)}
.card-grid{display:grid;gap:22px}.card-grid--four{grid-template-columns:repeat(4,1fr)}.card-grid--three{grid-template-columns:repeat(3,1fr)}.service-card{background:white;border:1px solid var(--line);border-radius:26px;padding:28px;box-shadow:var(--shadow-soft);transition:transform .2s ease,box-shadow .2s ease}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.service-card__icon{width:44px;height:44px;border-radius:16px;background:linear-gradient(135deg,var(--yellow),#fff2a4);display:grid;place-items:center;font-weight:900;color:var(--blue-dark);margin-bottom:18px}.service-card p{color:var(--muted);margin:0}.feature-band{background:linear-gradient(135deg,var(--blue-dark),var(--blue));color:white;padding:86px 0;overflow:hidden}.feature-band h2,.feature-band p{color:white}.feature-band .eyebrow{color:var(--yellow)}.feature-band__content p{color:rgba(255,255,255,.86)}.tick-list{padding:0;margin:20px 0 28px;list-style:none}.tick-list li{position:relative;padding-left:32px;margin:12px 0;color:inherit}.tick-list li::before{content:"✓";position:absolute;left:0;top:0;width:22px;height:22px;border-radius:50%;background:var(--teal);color:white;font-size:.82rem;display:grid;place-items:center;font-weight:900}.content-columns{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.two-column-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.price-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:24px;align-items:stretch}.price-card{background:linear-gradient(180deg,#ffffff,var(--yellow-soft));display:flex;flex-direction:column;justify-content:center}.price-card h2{font-size:4rem;color:var(--blue);margin-bottom:8px}.small-note{font-size:.95rem}
.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.testimonial-card{background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:34px;position:relative}.testimonial-card::before{content:"“";position:absolute;top:8px;right:24px;font-size:5rem;line-height:1;color:var(--yellow);opacity:.5}.testimonial-card p{color:var(--ink);font-size:1.05rem}.testimonial-card strong{color:var(--blue)}
.emergency-notice{background:#fff5f3;border:1px solid rgba(194,38,31,.25);border-radius:var(--radius);padding:30px 34px;margin-bottom:28px;box-shadow:var(--shadow-soft)}.emergency-notice h2{color:#a12720}.emergency-notice p{margin:0;color:#60312d}.emergency-notice a{font-weight:900;color:#a12720}.emergency-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.emergency-card{background:white;border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:var(--shadow-soft)}.emergency-card p{color:var(--muted)}.emergency-card a{font-weight:900}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:24px}.contact-actions{display:grid;gap:14px;margin-top:24px}.contact-action{display:block;border:1px solid var(--line);border-radius:22px;padding:18px 20px;background:#fbfffe}.contact-action:hover{text-decoration:none;background:var(--mint)}.contact-action span{display:block;color:var(--muted);font-size:.88rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.contact-action strong{display:block;color:var(--blue-dark);overflow-wrap:anywhere}.legal-page .container{max-width:920px}.legal-card h2{font-size:1.7rem;margin-top:26px}.legal-card h2:first-child{margin-top:0}.legal-card a{font-weight:850}
.quote-band{background-image:linear-gradient(90deg,rgba(11,54,91,.9),rgba(17,85,136,.78)),url('../images/flowers-desktop.jpg');background-size:cover;background-position:center;padding:56px 0;color:white}.quote-band__inner{text-align:center;max-width:980px}.quote-band p{font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.25;margin:0 0 10px;font-weight:850;letter-spacing:-.03em}.quote-band span{color:var(--yellow);font-weight:850}.site-footer{background:#f8fcfb}.footer-grid{display:grid;grid-template-columns:1.1fr .9fr 1fr 1fr;gap:34px;padding:56px 0}.footer-logo img{width:160px}.footer-text,.footer-grid p{color:var(--muted);margin:12px 0}.footer-grid h2{font-size:1rem;text-transform:uppercase;letter-spacing:.13em;margin-bottom:12px;color:var(--blue-dark)}.footer-links{display:grid;gap:8px}.footer-links a,.footer-grid a{font-weight:750}.footer-bottom{border-top:1px solid var(--line);padding:18px 0;color:var(--muted);font-size:.92rem}.footer-bottom__inner{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.reveal{opacity:1;transform:none}.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}.js .reveal.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.reveal{opacity:1;transform:none}}
@media (max-width:1100px){.site-nav{gap:0}.nav-link{font-size:.9rem;padding:10px 8px}.card-grid--four{grid-template-columns:repeat(2,1fr)}.emergency-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:900px){.site-header{transition:transform .22s ease;will-change:transform}.site-header.site-header--hide-mobile{transform:translateY(-100%)}.nav-toggle{display:flex}.site-nav{position:absolute;left:20px;right:20px;top:calc(100% + 10px);display:none;flex-direction:column;align-items:stretch;background:white;border:1px solid var(--line);border-radius:24px;padding:14px;box-shadow:var(--shadow)}.site-nav.is-open{display:flex}.nav-link,.btn--nav{width:100%;justify-content:flex-start;margin:0}.btn--nav{justify-content:center;margin-top:6px}.brand img{width:215px}.hero{min-height:520px}.hero__grid,.split,.split--about,.split--feature,.content-columns,.two-column-cards,.price-grid,.testimonial-grid,.contact-grid{grid-template-columns:1fr}.hero__content{padding:64px 0}.image-stack img{height:300px}.card-grid--three{grid-template-columns:1fr}.section{padding:70px 0}}
@media (max-width:620px){.container{width:min(100% - 28px,var(--container))}.top-strip__inner{justify-content:center;text-align:center;flex-wrap:wrap;padding:8px 0}.top-strip__inner span{display:none}.nav-shell{min-height:72px}.brand img{width:190px}.hero{min-height:560px;background-position:center}.hero__actions,.button-row{align-items:stretch}.hero__actions .btn,.button-row .btn{width:100%}h1{font-size:2.55rem}.hero p{font-size:1.02rem}.section-heading{text-align:left}.card-grid--four,.emergency-grid{grid-template-columns:1fr}.content-panel,.info-card,.legal-card,.contact-card,.price-card{border-radius:24px;padding:24px}.portrait-card{border-radius:30px}.portrait-card img{border-radius:24px}.footer-grid{grid-template-columns:1fr;padding:42px 0}.footer-bottom__inner{display:block}.footer-bottom__inner span{display:block;margin:4px 0}.quote-band{padding:44px 0}.contact-action strong{font-size:.95rem}}

/* Short courses menu and footer updates */
.nav-dropdown{position:relative;display:flex;align-items:center}.nav-dropdown summary{list-style:none;cursor:pointer}.nav-dropdown summary::-webkit-details-marker{display:none}.nav-link--dropdown{padding-right:24px}.nav-link--dropdown::after{content:"";width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);position:absolute;right:9px;top:calc(50% - 6px);opacity:.75}.nav-dropdown__menu{position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%);width:min(760px,calc(100vw - 32px));max-height:68vh;overflow:auto;background:white;border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow);padding:16px;display:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;z-index:30}.nav-dropdown[open] .nav-dropdown__menu,.nav-dropdown:hover .nav-dropdown__menu,.nav-dropdown:focus-within .nav-dropdown__menu{display:grid}.nav-dropdown__menu a{display:block;padding:11px 12px;border-radius:16px;color:var(--blue-dark);font-weight:800;font-size:.92rem}.nav-dropdown__menu a:hover{background:var(--mint);text-decoration:none}.nav-dropdown__featured{grid-column:1/-1;background:linear-gradient(135deg,var(--blue),var(--blue-dark));color:white!important;text-align:center}.card-grid--courses{grid-template-columns:repeat(3,1fr)}.course-card{scroll-margin-top:120px}.course-card .text-link{display:inline-block;margin-top:16px}.footer-links--courses{margin-bottom:18px}.footer-links--legal{border-top:1px solid var(--line);padding-top:16px}
@media (max-width:1100px){.card-grid--courses{grid-template-columns:repeat(2,1fr)}}
@media (max-width:900px){.nav-dropdown{display:block}.nav-link--dropdown{width:100%}.nav-link--dropdown::after{right:18px}.nav-dropdown__menu{position:static;transform:none;width:100%;max-height:none;overflow:visible;box-shadow:none;border-radius:18px;margin-top:8px;grid-template-columns:1fr;background:#fbfffe}.nav-dropdown[open] .nav-dropdown__menu{display:grid}.nav-dropdown:hover .nav-dropdown__menu{display:grid}}
@media (max-width:620px){.card-grid--courses{grid-template-columns:1fr}.nav-dropdown__menu a{font-size:.9rem}}

/* Refined simple navigation, Short Course page, and booking-focused sections */
.site-nav{gap:8px}.nav-link{padding:12px 14px}.btn--nav{white-space:nowrap;background:linear-gradient(135deg,var(--yellow),#ffe987);color:var(--blue-dark);box-shadow:0 12px 28px rgba(255,204,0,.26)}
.footer-grid--refined{grid-template-columns:1.15fr .95fr 1fr 1fr}.footer-booking-btn{margin-top:12px;color:white}.footer-grid--refined .footer-links{gap:10px}
.booking-cta{padding:76px 0;background:linear-gradient(135deg,var(--blue-dark),var(--blue));color:white;position:relative;overflow:hidden}.booking-cta::before{content:"";position:absolute;inset:-120px auto auto -100px;width:330px;height:330px;border-radius:50%;background:rgba(255,204,0,.18);filter:blur(8px)}.booking-cta::after{content:"";position:absolute;right:-90px;bottom:-150px;width:360px;height:360px;border-radius:50%;background:rgba(0,204,179,.14);filter:blur(8px)}.booking-cta__inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:var(--radius-lg);padding:clamp(26px,4vw,48px);box-shadow:0 24px 60px rgba(0,0,0,.16)}.booking-cta h2,.booking-cta p{color:white}.booking-cta p{max-width:780px;margin:0;color:rgba(255,255,255,.86)}.booking-cta .eyebrow{color:var(--yellow)}.booking-cta__actions{display:grid;gap:12px;min-width:220px}.booking-cta__phone{border-color:rgba(255,255,255,.5)}
.hero--course{background-image:linear-gradient(90deg,rgba(8,45,72,.9),rgba(17,85,136,.66),rgba(17,85,136,.08)),var(--hero-image)}.course-intro{display:grid;grid-template-columns:1fr minmax(280px,390px);gap:28px;align-items:stretch;margin-bottom:30px}.course-intro h2{margin-bottom:12px}.course-intro p{color:var(--muted);margin:0}.course-intro__note{background:white;border:1px solid var(--line);border-left:6px solid var(--yellow);border-radius:24px;padding:24px;box-shadow:var(--shadow-soft);color:var(--muted)}.course-intro__note strong{color:var(--blue-dark)}.course-button-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.course-button{min-height:74px;display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:999px;background:white;border:1px solid rgba(17,85,136,.16);box-shadow:var(--shadow-soft);color:var(--blue-dark);font-weight:850;line-height:1.25;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease}.course-button:hover{transform:translateY(-3px);box-shadow:var(--shadow);background:linear-gradient(135deg,#fff,var(--mint));border-color:rgba(0,204,179,.35);text-decoration:none}.course-button__number{width:42px;height:42px;min-width:42px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--yellow),#fff0a3);color:var(--blue-dark);font-weight:950;font-size:.88rem}.short-course-feature{align-items:stretch}.short-course-feature .info-card{height:100%}
@media (max-width:1100px){.site-nav{gap:4px}.nav-link{padding:10px 9px}.footer-grid--refined{grid-template-columns:repeat(2,1fr)}.course-button-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course-intro{grid-template-columns:1fr}}
@media (max-width:900px){.site-nav{gap:8px}.nav-link{font-size:1rem;padding:13px 14px}.booking-cta__inner{grid-template-columns:1fr}.booking-cta__actions{min-width:0;display:flex;flex-wrap:wrap}.booking-cta__actions .btn{flex:1 1 210px}.course-button{border-radius:24px}.nav-dropdown{display:none!important}}
@media (max-width:620px){.course-button-grid{grid-template-columns:1fr}.course-button{min-height:68px;padding:14px 16px}.course-button__number{width:38px;height:38px;min-width:38px}.booking-cta{padding:54px 0}.booking-cta__actions{display:grid}.footer-grid--refined{grid-template-columns:1fr}.site-nav{max-height:calc(100vh - 120px);overflow:auto}.brand img{width:184px}}

/* Local SEO and conversion refinements */
.speak-up-section{background:linear-gradient(180deg,#ffffff,#f2fffc)}
.concern-card{background:linear-gradient(145deg,#ffffff,var(--mint));border:1px solid rgba(17,85,136,.14);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:clamp(26px,4vw,44px)}
.concern-card h3{font-size:clamp(1.45rem,2.5vw,2.05rem);margin-bottom:22px;color:var(--blue-dark)}
.concern-list{list-style:none;margin:0;padding:0;display:grid;gap:14px}.concern-list li{display:grid;grid-template-columns:auto 1fr;gap:10px 14px;align-items:start;background:white;border:1px solid var(--line);border-radius:22px;padding:18px 20px;box-shadow:0 10px 24px rgba(13,58,88,.07)}.concern-list li::before{content:"";width:14px;height:14px;margin-top:7px;border-radius:50%;background:linear-gradient(135deg,var(--yellow),#fff0a3);box-shadow:0 0 0 5px rgba(255,204,0,.16)}.concern-list strong{display:block;color:var(--blue-dark);font-size:1.02rem;line-height:1.25}.concern-list span{display:block;color:var(--muted);line-height:1.55;margin-top:4px}.site-header .btn--nav{box-shadow:0 10px 28px rgba(255,204,0,.30)}.contact-card .contact-actions{margin-top:28px}.price-card h2{color:var(--blue-dark)}
@media (max-width:620px){.concern-list li{grid-template-columns:1fr}.concern-list li::before{display:none}.concern-card{padding:24px}.speak-up-section .button-row .text-link{display:inline-flex;justify-content:center;padding:12px 0}}

/* Homepage concern list layout fix */
.concern-card h3{max-width:620px}
.concern-list{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.concern-list li{position:relative!important;display:block!important;grid-template-columns:none!important;background:white;border:1px solid var(--line);border-radius:22px;padding:20px 22px 20px 58px!important;box-shadow:0 10px 24px rgba(13,58,88,.07);min-height:auto}
.concern-list li::before{content:"";position:absolute!important;display:block!important;left:24px;top:25px;width:14px;height:14px;margin:0!important;border-radius:50%;background:linear-gradient(135deg,var(--yellow),#fff0a3);box-shadow:0 0 0 5px rgba(255,204,0,.16)}
.concern-list strong{display:block;color:var(--blue-dark);font-size:1.02rem;line-height:1.3;margin:0 0 7px;max-width:100%}
.concern-list span{display:block;color:var(--muted);line-height:1.55;margin:0;max-width:620px}
@media (max-width:620px){.concern-card{padding:24px}.concern-card h3{font-size:1.55rem}.concern-list li{border-radius:18px;padding:18px 18px 18px 52px!important}.concern-list li::before{left:21px;top:23px;display:block!important}.concern-list strong{font-size:1rem}}

/* Proper conversion, booking form, FAQ, course pages, location SEO and mobile booking bar */
.hero--conversion .hero__content,
.hero--appointment .hero__content{max-width:760px}
.hero-trust-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.hero-trust-row span{display:inline-flex;align-items:center;min-height:38px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.28);color:white;font-weight:850;font-size:.92rem;backdrop-filter:blur(8px)}
.right-fit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.right-fit-card{background:white;border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:var(--shadow-soft);transition:transform .2s ease,box-shadow .2s ease}
.right-fit-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.right-fit-card h3{margin:0 0 10px;color:var(--blue-dark);font-size:1.08rem}
.right-fit-card p{margin:0;color:var(--muted)}
.center-cta{display:flex;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap;margin-top:28px}
.faq-list{display:grid;gap:14px}
.faq-list--page{max-width:980px}
.faq-item{background:white;border:1px solid var(--line);border-radius:22px;padding:0;box-shadow:var(--shadow-soft);overflow:hidden}
.faq-item summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 24px;color:var(--blue-dark);font-weight:900;list-style:none}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";width:34px;height:34px;min-width:34px;border-radius:50%;display:grid;place-items:center;background:var(--blue-soft);color:var(--blue);font-size:1.3rem;line-height:1}
.faq-item[open] summary::after{content:"–"}
.faq-item p{padding:0 24px 22px;margin:0;color:var(--muted);line-height:1.65}
.review-panel{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;background:linear-gradient(135deg,#fff,var(--mint));border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:clamp(24px,4vw,46px)}
.review-panel h2{margin-bottom:10px}
.review-panel p{max-width:820px;margin-bottom:0}
.review-actions{display:grid;gap:12px;min-width:220px}
.footer-grid--expanded{grid-template-columns:1.25fr .95fr 1fr 1.1fr 1fr;gap:28px}
.footer-grid--expanded h2{font-size:1.02rem}
.footer-grid--expanded .footer-links{gap:9px}
.mobile-booking-bar{display:none}
.appointment-layout{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(320px,1.22fr);gap:28px;align-items:start}
.appointment-intro{display:grid;gap:18px}
.notice-card,.quick-contact-card,.course-disclaimer{background:white;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow-soft);padding:22px}
.notice-card{border-left:6px solid var(--yellow)}
.notice-card p,.course-disclaimer p{margin:7px 0 0;color:var(--muted)}
.quick-contact-card{display:grid;gap:10px}
.quick-contact-card h3{margin:0;color:var(--blue-dark)}
.quick-contact-card a{font-weight:850;color:var(--blue)}
.appointment-form{background:white;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:clamp(22px,3vw,36px)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.appointment-form label{display:grid;gap:8px;margin-bottom:18px;color:var(--blue-dark);font-weight:850}
.appointment-form input,.appointment-form select,.appointment-form textarea{width:100%;border:1px solid rgba(17,85,136,.22);border-radius:16px;padding:14px 15px;font:inherit;color:var(--ink);background:#fbfffe;outline:none;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}
.appointment-form input:focus,.appointment-form select:focus,.appointment-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(17,85,136,.10);background:white}
.form-checks{display:grid;gap:12px;margin:8px 0 20px}
.check-row{display:grid!important;grid-template-columns:auto 1fr;align-items:start;gap:10px!important;margin:0!important;color:var(--muted)!important;font-weight:650!important;line-height:1.55}
.check-row input{width:auto;margin-top:4px}
.form-status{display:none;border-radius:16px;padding:14px 16px;margin:0 0 18px;font-weight:800}
.form-status.is-error{display:block;background:#fff4f4;color:#8a1f1f;border:1px solid #ffd2d2}
.form-status.is-success{display:block;background:#f1fff8;color:#126043;border:1px solid #bfead6}
.form-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.btn--ghost-dark{color:var(--blue-dark);border-color:rgba(17,85,136,.28);background:white}
.course-detail-layout{display:grid;grid-template-columns:1fr minmax(280px,380px);gap:28px;align-items:start}
.course-detail-card,.course-side-card{background:white;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:clamp(24px,3vw,36px)}
.course-side-card{position:sticky;top:112px}
.course-side-card .btn{width:100%;justify-content:center;margin:12px 0}
.course-disclaimer{background:#fffdf2;margin-top:20px}
[data-course-url-placeholder],[data-google-business-placeholder]{position:relative}
[data-course-url-placeholder]::after,[data-google-business-placeholder]::after{content:"URL needed";display:inline-flex;margin-left:9px;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:var(--blue-dark);background:var(--yellow-soft);border-radius:999px;padding:4px 8px}
.location-link-cloud{display:flex;flex-wrap:wrap;gap:10px}
.location-link-cloud a{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:9px 13px;background:white;font-weight:850;color:var(--blue-dark)}
.location-link-cloud a:hover{text-decoration:none;background:var(--mint)}
@media (max-width:1200px){
 .footer-grid--expanded{grid-template-columns:repeat(3,1fr)}
 .right-fit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
 .appointment-layout,.course-detail-layout,.review-panel{grid-template-columns:1fr}
 .course-side-card{position:static}
 .review-actions{min-width:0;display:flex;flex-wrap:wrap}
 .review-actions .btn{flex:1 1 210px}
 .footer-grid--expanded{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:760px){
 .has-sticky-mobile-booking{padding-bottom:86px}
 .mobile-booking-bar{position:fixed;left:0;right:0;bottom:0;z-index:90;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px calc(12px + env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) calc(12px + env(safe-area-inset-left));background:rgba(255,255,255,.96);border-top:1px solid var(--line);box-shadow:0 -16px 40px rgba(13,58,88,.14);backdrop-filter:blur(16px)}
 .mobile-booking-bar a{display:grid;gap:1px;align-content:center;min-height:58px;padding:9px 12px;border-radius:18px;text-align:center;text-decoration:none;font-weight:900}
 .mobile-booking-bar a:first-child{background:var(--blue-soft);color:var(--blue-dark)}
 .mobile-booking-bar a:last-child{background:linear-gradient(135deg,var(--yellow),#ffe987);color:var(--blue-dark)}
 .mobile-booking-bar span{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;opacity:.78}
 .mobile-booking-bar strong{font-size:.95rem;line-height:1.15}
}
@media (max-width:620px){
 .right-fit-grid,.form-grid{grid-template-columns:1fr}
 .hero-trust-row span{font-size:.86rem}
 .footer-grid--expanded{grid-template-columns:1fr}
 .form-actions .btn{width:100%;justify-content:center}
 .review-actions{display:grid}
 [data-course-url-placeholder]::after,[data-google-business-placeholder]::after{display:none}
}

/* Footer legal/scope layout update */
.footer-bottom__inner--split{display:block!important}
.footer-bottom__top{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:nowrap}
.footer-copyright{color:var(--muted)}
.footer-legal-links{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap;text-align:right;font-weight:850}
.footer-legal-links a{color:var(--blue-dark)}
.footer-legal-links span{color:rgba(17,85,136,.35)}
.footer-scope-note{margin:12px 0 0;color:var(--muted);font-size:.91rem;line-height:1.58;max-width:1080px}
.scope-alert-card{background:#fffdf2;border:1px solid rgba(255,204,0,.45);border-left:6px solid var(--yellow);border-radius:24px;box-shadow:var(--shadow-soft);padding:24px}
.scope-alert-card h2,.scope-alert-card h3{color:var(--blue-dark);margin-bottom:10px}
.scope-alert-card p{color:var(--muted);margin:0 0 12px}
.scope-alert-card p:last-child{margin-bottom:0}
.about-scope-grid{align-items:stretch}
@media (max-width:760px){
 .footer-bottom__top{display:grid;gap:10px}
 .footer-legal-links{justify-content:flex-start;text-align:left}
 .footer-scope-note{font-size:.88rem}
}

/* Free resources download page */
.hero--resources{background-image:linear-gradient(90deg,rgba(8,45,72,.91),rgba(17,85,136,.68),rgba(17,85,136,.08)),var(--hero-image)}
.resource-download-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.resource-download-card{display:flex;flex-direction:column;align-items:flex-start;background:white;border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:var(--shadow-soft);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.resource-download-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:rgba(0,204,179,.34)}
.resource-download-card__icon{width:54px;height:54px;border-radius:18px;background:linear-gradient(135deg,var(--yellow),#fff0a3);display:grid;place-items:center;color:var(--blue-dark);font-weight:950;margin-bottom:18px;letter-spacing:.04em}
.resource-download-card h3{font-size:1.18rem;color:var(--blue-dark);margin-bottom:10px}
.resource-download-card p{color:var(--muted);margin:0 0 22px}
.resource-download-card .btn{margin-top:auto;width:100%}
.resource-highlight-card{background:linear-gradient(145deg,#ffffff,var(--mint));border:1px solid rgba(17,85,136,.14);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:clamp(26px,4vw,44px)}
.resource-highlight-card__badge{display:inline-flex;align-items:center;min-height:36px;padding:7px 13px;border-radius:999px;background:var(--yellow);color:var(--blue-dark);font-weight:950;margin-bottom:14px}
.resource-highlight-card h3{font-size:clamp(1.45rem,2.5vw,2.05rem);color:var(--blue-dark)}
.resource-highlight-card .tick-list{color:var(--ink)}
@media (max-width:1100px){.resource-download-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.resource-download-grid{grid-template-columns:1fr}.resource-download-card{border-radius:24px;padding:24px}.resource-download-card .btn{width:100%}}

/* Clickable service cards */
a.service-card--clickable{display:block;color:inherit;text-decoration:none;cursor:pointer;height:100%}
a.service-card--clickable:hover,a.service-card--clickable:focus-visible{text-decoration:none}
a.service-card--clickable:focus-visible{outline:3px solid var(--yellow);outline-offset:5px}
a.service-card--clickable h3{color:var(--ink)}

/* Desktop header logo alignment */
@media (min-width:1200px){
 .site-header .brand{transform:translateX(-34px)}
}
.split--about .portrait-card::before {
 content: none !important;
 display: none !important;
}
a.service-card,
 a.service-card:visited {
 color: inherit;
 text-decoration: none;
 display: block;
 cursor: pointer;
 }

 a.service-card h3,
 a.service-card p {
 color: inherit;
 text-decoration: none;
 }

 a.service-card:focus-visible {
 outline: 3px solid #115588;
 outline-offset: 4px;
 }
	
.seo-intro {
 max-width: 920px;
 margin: 22px auto 0;
 padding: 0 20px;
 text-align: center;
 font-size: 1rem;
 line-height: 1.7;
 color: #31556b;
}

.seo-intro a {
 color: #115588;
 font-weight: 700;
 text-decoration: underline;
 text-underline-offset: 3px;
}

/* Counselling blog pages */
.blog-grid{display:grid;gap:22px}
.blog-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}
.blog-card{display:flex;flex-direction:column;min-height:100%;background:white;border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:var(--shadow-soft);color:inherit;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.blog-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:rgba(0,204,179,.34);text-decoration:none}
.blog-card:focus-visible{outline:3px solid var(--yellow);outline-offset:5px}
.blog-card__icon{width:54px;height:54px;border-radius:18px;background:linear-gradient(135deg,var(--yellow),#fff0a3);display:grid;place-items:center;color:var(--blue-dark);font-size:.82rem;font-weight:950;margin-bottom:16px;letter-spacing:.03em}
.blog-card__meta{display:block;color:var(--muted);font-size:.88rem;font-weight:850;margin-bottom:10px}
.blog-card h3{color:var(--blue-dark);font-size:1.2rem;margin-bottom:10px}
.blog-card p{color:var(--muted);margin:0 0 20px;line-height:1.62}
.blog-card .text-link{margin-top:auto}
.blog-section-action{display:flex;justify-content:center;margin-top:30px}
.blog-article-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:30px;align-items:start}
.blog-article{background:white;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:clamp(24px,4vw,54px)}
.blog-article h2{font-size:clamp(1.55rem,2.5vw,2.35rem);margin-top:38px;color:var(--blue-dark)}
.blog-article h2:first-of-type{margin-top:24px}
.blog-article p{color:var(--muted);font-size:1.04rem;line-height:1.82;margin:0 0 18px}
.article-meta{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 28px;color:var(--muted);font-size:.92rem;font-weight:800}
.article-meta span{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;background:#fbfffe;padding:7px 11px}
.breadcrumb{font-size:.92rem;font-weight:850;color:var(--muted);margin-bottom:12px}
.breadcrumb a{color:var(--blue-dark)}
.takeaway-box{background:linear-gradient(145deg,#ffffff,var(--mint));border:1px solid rgba(17,85,136,.14);border-radius:28px;padding:24px;margin:34px 0 24px}
.takeaway-box h2{margin-top:0;font-size:1.55rem}
.blog-sidebar{position:sticky;top:116px;display:grid;gap:18px}
.blog-side-card{background:white;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow-soft);padding:24px}
.blog-side-card h2{font-size:1.25rem;color:var(--blue-dark);margin-bottom:10px}
.blog-side-card p{color:var(--muted);margin:0 0 16px}
.blog-side-card .btn{width:100%;margin-top:10px}
.blog-side-card--soft{background:linear-gradient(145deg,#ffffff,var(--blue-soft))}
@media (max-width:1100px){.blog-grid--four{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-article-layout{grid-template-columns:1fr}.blog-sidebar{position:static;grid-template-columns:repeat(3,1fr)}}
@media (max-width:760px){.blog-sidebar{grid-template-columns:1fr}.blog-grid--four{grid-template-columns:1fr}.blog-card,.blog-article,.blog-side-card{border-radius:24px}.blog-card{padding:24px}}

/* Improved appointment booking enquiry form */
.appointment-layout--booking{grid-template-columns:minmax(280px,.8fr) minmax(360px,1.25fr)}
.appointment-form--booking{position:relative;overflow:hidden}
.appointment-form--booking::before{content:"";position:absolute;inset:0 0 auto;height:7px;background:linear-gradient(90deg,var(--yellow),var(--teal),var(--blue));pointer-events:none}
.form-intro-box{background:linear-gradient(145deg,#ffffff,var(--mint));border:1px solid var(--line);border-radius:26px;padding:22px;margin-bottom:24px}
.form-intro-box h2{font-size:clamp(1.55rem,2.5vw,2.05rem);margin-bottom:8px;color:var(--blue-dark)}
.form-intro-box p{margin:0;color:var(--muted)}
.booking-steps-card{display:grid;gap:12px;background:linear-gradient(145deg,#ffffff,var(--blue-soft));border:1px solid var(--line);border-radius:24px;padding:20px;box-shadow:var(--shadow-soft)}
.booking-steps-card div{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;color:var(--muted);font-weight:750}
.booking-steps-card strong{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--yellow);color:var(--blue-dark);font-weight:950}
.booking-form__section{border:1px solid rgba(17,85,136,.14);border-radius:26px;padding:22px 22px 6px;margin:0 0 22px;background:#fff}
.booking-form__section--highlight{background:linear-gradient(180deg,#ffffff,#f6fffc);border-color:rgba(0,204,179,.22)}
.booking-form__section legend{display:flex;align-items:center;gap:10px;padding:0 8px;color:var(--blue-dark);font-weight:950;font-size:1.08rem}
.booking-form__section legend span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--yellow),#fff0a3);color:var(--blue-dark);font-size:.88rem}
.form-help-text,.form-small-note{color:var(--muted);margin:0 0 18px;line-height:1.55}
.form-small-note{font-size:.94rem;background:#fffdf2;border:1px solid rgba(255,204,0,.35);border-radius:18px;padding:14px 16px;margin-top:0}
.appointment-form--booking label span[aria-hidden="true"]{color:#b0342d;font-weight:950}
.form-honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.scope-alert-card--form{box-shadow:none;margin-bottom:4px}
.scope-alert-card--form strong{display:block;color:var(--blue-dark);font-weight:950;margin-bottom:6px}
.form-actions--booking{padding-top:4px}
.form-actions--booking .btn--primary{min-width:220px}
@media (max-width:900px){.appointment-layout--booking{grid-template-columns:1fr}.appointment-form--booking{order:1}.appointment-intro{order:2}.booking-steps-card{grid-template-columns:1fr}}
@media (max-width:620px){.booking-form__section{border-radius:22px;padding:20px 16px 4px}.booking-form__section legend{font-size:1rem}.form-intro-box{border-radius:22px;padding:20px}.form-actions--booking .btn--primary{min-width:0}}

/* Homepage blog slider and trusted support links */
.blog-slider-shell{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center}
.blog-slider{overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:8px 4px 22px;scrollbar-color:rgba(17,85,136,.35) transparent}
.blog-slider::-webkit-scrollbar{height:10px}.blog-slider::-webkit-scrollbar-track{background:transparent}.blog-slider::-webkit-scrollbar-thumb{background:rgba(17,85,136,.25);border-radius:999px}
.blog-slider__track{display:flex;gap:22px;align-items:stretch}
.blog-slider .blog-card{min-width:min(340px,82vw);scroll-snap-align:start}
.blog-slider-btn{width:48px;height:48px;border:1px solid var(--line);border-radius:50%;background:white;color:var(--blue-dark);font-size:2rem;line-height:1;display:grid;place-items:center;box-shadow:var(--shadow-soft);cursor:pointer;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}
.blog-slider-btn:hover{transform:translateY(-2px);background:var(--yellow-soft);box-shadow:var(--shadow)}
.blog-slider-btn:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}
.support-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.support-link-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}
.support-link-card{display:flex;flex-direction:column;min-height:100%;background:white;border:1px solid var(--line);border-radius:28px;padding:26px;box-shadow:var(--shadow-soft);color:inherit;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.support-link-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:rgba(0,204,179,.34);text-decoration:none}
.support-link-card:focus-visible{outline:3px solid var(--yellow);outline-offset:5px}
.support-link-card span{display:inline-flex;align-self:flex-start;margin-bottom:12px;border-radius:999px;background:var(--blue-soft);color:var(--blue);padding:7px 11px;font-size:.78rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}
.support-link-card h3{color:var(--blue-dark);font-size:1.22rem;margin-bottom:10px}
.support-link-card p{color:var(--muted);margin:0;line-height:1.62}
.support-link-card--urgent{border-left:6px solid var(--yellow);background:linear-gradient(180deg,#ffffff,#fffdf0)}
.footer-grid--expanded{grid-template-columns:1.25fr .95fr 1fr 1.05fr 1.05fr 1fr;gap:24px}
@media (max-width:1180px){.footer-grid--expanded{grid-template-columns:repeat(3,1fr)}.support-link-grid--four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){.support-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid--expanded{grid-template-columns:repeat(2,1fr)}.blog-slider-shell{grid-template-columns:1fr}.blog-slider-btn{display:none}.blog-slider{padding-inline:0}}
@media (max-width:620px){.support-link-grid,.support-link-grid--four{grid-template-columns:1fr}.support-link-card{border-radius:24px;padding:24px}.footer-grid--expanded{grid-template-columns:1fr}}

/* Wellbeing Check-In conversion feature */
.hero--checkin{background-image:linear-gradient(90deg,rgba(8,45,72,.91),rgba(17,85,136,.72),rgba(17,85,136,.12)),var(--hero-image)}
.section--checkin-teaser{background:linear-gradient(135deg,#ffffff 0%,#f3fbff 48%,#fff9db 100%)}
.checkin-teaser{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:28px;align-items:stretch;background:white;border:1px solid rgba(17,85,136,.14);border-radius:32px;box-shadow:var(--shadow);padding:clamp(24px,4vw,42px);position:relative;overflow:hidden}
.checkin-teaser::before{content:"";position:absolute;inset:auto -80px -120px auto;width:260px;height:260px;border-radius:999px;background:rgba(255,204,0,.22);filter:blur(4px)}
.checkin-teaser__content,.checkin-teaser__card{position:relative;z-index:1}
.checkin-teaser__content h2{color:var(--blue-dark);font-size:clamp(1.7rem,3vw,2.35rem);margin-bottom:12px}
.checkin-teaser__content p{color:var(--muted);font-size:1.04rem;line-height:1.7;margin:0 0 18px}
.checkin-teaser__topics{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.checkin-teaser__topics span{display:inline-flex;align-items:center;min-height:36px;border-radius:999px;background:var(--blue-soft);color:var(--blue-dark);font-weight:900;padding:7px 13px;border:1px solid rgba(17,85,136,.12)}
.checkin-teaser__card{background:linear-gradient(145deg,var(--blue-dark),var(--blue));color:white;border-radius:28px;padding:28px;box-shadow:var(--shadow-soft)}
.checkin-teaser__title{display:block;background:transparent;color:white;border-radius:0;padding:0;margin:0 0 14px;font-size:clamp(1.4rem,2vw,2rem);line-height:1.15;font-weight:950;letter-spacing:-.03em}.checkin-teaser__title::after{content:"";display:block;width:78px;height:4px;border-radius:999px;background:var(--yellow);margin-top:12px}
.checkin-teaser__card p{color:rgba(255,255,255,.9);line-height:1.65;margin:0 0 20px}
.checkin-teaser__card .text-link{color:white;text-decoration-color:rgba(255,255,255,.55)}
.checkin-layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:26px;align-items:start}
.checkin-picker{position:sticky;top:112px;display:grid;gap:12px}
.checkin-choice{appearance:none;border:1px solid rgba(17,85,136,.16);background:white;border-radius:22px;box-shadow:var(--shadow-soft);padding:18px 20px;text-align:left;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease}
.checkin-choice:hover,.checkin-choice:focus-visible{transform:translateY(-2px);box-shadow:var(--shadow);border-color:rgba(0,204,179,.42);outline:none}
.checkin-choice.is-active{background:linear-gradient(145deg,var(--blue-dark),var(--blue));border-color:transparent;color:white}
.checkin-choice span{display:block;font-size:.77rem;text-transform:uppercase;letter-spacing:.08em;font-weight:950;opacity:.8;margin-bottom:4px}
.checkin-choice strong{display:block;font-size:1rem;line-height:1.25}
.checkin-panels{min-width:0}
.checkin-card{background:white;border:1px solid rgba(17,85,136,.14);border-radius:32px;box-shadow:var(--shadow);padding:clamp(24px,4vw,42px)}
.checkin-card__head{max-width:820px;margin-bottom:22px}
.checkin-card__head h2{color:var(--blue-dark);font-size:clamp(1.55rem,2.6vw,2.25rem);margin-bottom:10px}
.checkin-card__head p{color:var(--muted);line-height:1.65;margin:0}
.checkin-form fieldset{border:0;margin:0;padding:0;display:grid;gap:18px}
.checkin-form legend{font-weight:950;color:var(--blue-dark);margin-bottom:12px;font-size:1.05rem}
.checkin-question{display:grid;grid-template-columns:minmax(220px,1.15fr) repeat(4,minmax(98px,.55fr));gap:10px;align-items:stretch;background:#fbfdff;border:1px solid rgba(17,85,136,.12);border-radius:22px;padding:14px}
.checkin-question p{font-weight:850;color:var(--ink);line-height:1.45;margin:0;align-self:center}
.checkin-question label{display:grid;place-items:center;text-align:center;gap:6px;min-height:54px;padding:8px;border-radius:16px;background:white;border:1px solid rgba(17,85,136,.12);font-weight:850;color:var(--muted);cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}
.checkin-question label:hover{transform:translateY(-1px);border-color:rgba(0,204,179,.4);color:var(--blue-dark)}
.checkin-question input{accent-color:var(--blue)}
.checkin-question label:has(input:checked){background:var(--blue-soft);border-color:rgba(17,85,136,.35);color:var(--blue-dark)}
.checkin-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.checkin-result{margin-top:24px;border-radius:26px;border:1px solid rgba(17,85,136,.16);background:linear-gradient(145deg,#ffffff,#f4fbff);box-shadow:var(--shadow-soft);padding:24px}
.checkin-result.is-medium{border-left:7px solid var(--yellow)}
.checkin-result.is-high{border-left:7px solid var(--teal)}
.checkin-result h3{color:var(--blue-dark);font-size:1.35rem;margin-bottom:8px}
.checkin-result p{color:var(--muted);line-height:1.65;margin:0 0 12px}
.checkin-result__meta{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}
.checkin-result__meta span{border-radius:999px;background:white;border:1px solid rgba(17,85,136,.13);padding:8px 12px;font-weight:900;color:var(--blue-dark)}
.checkin-result__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.checkin-copy-status{font-weight:850;color:var(--blue-dark);margin-top:8px;min-height:22px}
.trust-panel-grid{display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:22px;align-items:stretch}
.trust-panel-card{background:white;border:1px solid rgba(17,85,136,.14);border-radius:28px;box-shadow:var(--shadow-soft);padding:28px}
.trust-panel-card--highlight{background:linear-gradient(145deg,#ffffff,var(--mint))}
.trust-panel-card h2,.trust-panel-card h3{color:var(--blue-dark);margin-bottom:10px}
.trust-panel-card p{color:var(--muted);line-height:1.65;margin:0}
@media (max-width:1100px){.checkin-layout,.checkin-teaser,.trust-panel-grid{grid-template-columns:1fr}.checkin-picker{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.checkin-question{grid-template-columns:1fr 1fr}.checkin-question p{grid-column:1/-1}.checkin-choice{height:100%}}
@media (max-width:620px){.checkin-picker{grid-template-columns:1fr}.checkin-card,.checkin-teaser{border-radius:24px;padding:22px}.checkin-question{grid-template-columns:1fr;padding:12px}.checkin-question label{justify-items:start;text-align:left;grid-template-columns:auto 1fr;place-items:center start}.checkin-actions .btn,.checkin-result__actions .btn{width:100%;justify-content:center}.checkin-teaser__card{border-radius:22px;padding:22px}}

/* Guided Breathing interactive relaxation page */
.hero--breathing{background-image:linear-gradient(90deg,rgba(8,45,72,.92),rgba(17,85,136,.68),rgba(0,204,179,.14)),var(--hero-image)}
.section--breathing-tool{position:relative;overflow:hidden;background:radial-gradient(circle at 10% 10%,rgba(0,204,179,.16),transparent 28%),linear-gradient(180deg,#f4fffd 0%,#ffffff 100%)}
.section--breathing-tool::before{content:"";position:absolute;inset:auto -140px -180px auto;width:420px;height:420px;border-radius:50%;background:rgba(255,204,0,.20);filter:blur(10px)}
.breathing-shell{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);gap:26px;align-items:stretch;position:relative;z-index:1}
.breathing-stage{position:relative;min-height:620px;border-radius:42px;overflow:hidden;display:grid;place-items:center;padding:32px;background:linear-gradient(180deg,#dff8ff 0%,#ebfffb 46%,#fff9dc 100%);box-shadow:var(--shadow);border:1px solid rgba(17,85,136,.12);isolation:isolate}
.breathing-stage::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 34%,rgba(255,255,255,.9),transparent 36%),radial-gradient(circle at 18% 18%,rgba(255,204,0,.28),transparent 19%),radial-gradient(circle at 78% 24%,rgba(0,204,179,.22),transparent 23%);z-index:-3}
.breathing-sky{display:none}.breathing-sky span{display:none}
.breathing-orb{position:relative;width:min(58vw,360px);aspect-ratio:1;display:grid;place-items:center;transition:transform var(--phase-duration,4s) ease-in-out;transform:scale(var(--breath-scale,.78));z-index:2}
.breathing-orb__circle{position:relative;width:68%;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 36% 28%,rgba(255,255,255,.95),rgba(255,255,255,.58) 28%,rgba(0,204,179,.72) 68%,rgba(17,85,136,.86) 100%);box-shadow:0 28px 70px rgba(17,85,136,.28),inset 0 0 34px rgba(255,255,255,.62)}
.breathing-orb__circle span{width:42%;aspect-ratio:1;border-radius:50%;background:rgba(255,255,255,.34);box-shadow:inset 0 0 30px rgba(255,255,255,.72)}
.breathing-orb__ring{position:absolute;inset:2%;border-radius:50%;border:1px solid rgba(255,255,255,.72);box-shadow:0 0 40px rgba(0,204,179,.18);animation:breathingPulse 5.8s ease-in-out infinite}.breathing-orb__ring--two{inset:13%;animation-delay:-1.8s;border-color:rgba(17,85,136,.18)}
.breathing-stage.is-inhale{--breath-scale:1.05}.breathing-stage.is-hold,.breathing-stage.is-holdAfter{--breath-scale:1.05}.breathing-stage.is-exhale{--breath-scale:.72}.breathing-stage.is-ready,.breathing-stage.is-paused,.breathing-stage.is-complete{--breath-scale:.82}
.breathing-wave{position:absolute;left:-8%;right:-8%;height:170px;border-radius:50% 50% 0 0;background:rgba(17,85,136,.10);bottom:-72px;animation:breathingWave 9s ease-in-out infinite;z-index:-1}.breathing-wave--two{height:210px;background:rgba(0,204,179,.14);bottom:-108px;animation-duration:12s;animation-delay:-4s}
.breathing-guidance{position:absolute;left:28px;right:28px;bottom:34px;text-align:center;background:transparent;border:0;border-radius:0;padding:0 18px;box-shadow:none;backdrop-filter:none;text-shadow:0 2px 18px rgba(255,255,255,.86)}
.breathing-guidance__label{display:inline-flex;border-radius:999px;background:var(--blue-soft);color:var(--blue-dark);padding:7px 12px;font-size:.75rem;font-weight:950;text-transform:uppercase;letter-spacing:.09em;margin-bottom:8px}.breathing-guidance strong{display:block;color:var(--blue-dark);font-size:clamp(2rem,5vw,4.2rem);line-height:1;margin-bottom:8px;letter-spacing:-.05em}.breathing-guidance p{color:var(--muted);margin:0;font-weight:800}
.breathing-panel{background:rgba(255,255,255,.92);border:1px solid rgba(17,85,136,.14);border-radius:36px;box-shadow:var(--shadow);padding:clamp(24px,3vw,34px);align-self:stretch}.breathing-panel h2{color:var(--blue-dark);font-size:clamp(1.8rem,3vw,2.4rem);margin-bottom:10px}.breathing-panel>p{color:var(--muted);margin:0 0 18px;line-height:1.65}
.breathing-options{display:grid;gap:10px;margin:20px 0}.breathing-option{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;border:1px solid rgba(17,85,136,.14);border-radius:20px;background:#fbfffe;padding:14px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease}.breathing-option:hover{transform:translateY(-1px);box-shadow:var(--shadow-soft);border-color:rgba(0,204,179,.36)}.breathing-option.is-active{background:linear-gradient(145deg,var(--blue-dark),var(--blue));color:white;border-color:transparent}.breathing-option input{accent-color:var(--yellow)}.breathing-option strong,.breathing-option small{display:block}.breathing-option small{opacity:.78;font-weight:800;line-height:1.3}.breathing-select-label{display:block;color:var(--blue-dark);font-weight:950;margin:18px 0 8px}.breathing-panel select{width:100%;border:1px solid rgba(17,85,136,.22);border-radius:16px;padding:14px 15px;font:inherit;color:var(--ink);background:#fbfffe;outline:none}.breathing-panel select:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(17,85,136,.10);background:white}
.breathing-controls{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.breathing-controls .btn{flex:1 1 auto}.breathing-controls button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.breathing-audio-card{margin:18px 0 4px;border:1px solid rgba(17,85,136,.14);border-radius:22px;background:linear-gradient(145deg,#fbfffe,#eefcff);padding:16px}.breathing-audio-card__top{display:flex;align-items:center;justify-content:space-between;gap:12px}.breathing-audio-card strong{display:block;color:var(--blue-dark);font-size:1rem}.breathing-audio-card small{display:block;color:var(--muted);font-weight:800;line-height:1.35;margin-top:4px}.breathing-audio-toggle,.breathing-audio-mute{white-space:nowrap}.breathing-volume-label{display:block;color:var(--blue-dark);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;font-weight:950;margin:14px 0 8px}.breathing-volume{width:100%;accent-color:var(--blue)}.breathing-audio-message{min-height:1.2em;margin:8px 0 0!important;color:var(--muted)!important;font-size:.9rem!important;line-height:1.35!important}.breathing-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.breathing-stats div{background:var(--blue-soft);border:1px solid rgba(17,85,136,.10);border-radius:18px;padding:14px}.breathing-stats span{display:block;color:var(--muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;font-weight:950}.breathing-stats strong{display:block;color:var(--blue-dark);font-size:1.4rem;line-height:1.1;margin-top:4px}.breathing-progress{height:12px;border-radius:999px;background:rgba(17,85,136,.11);overflow:hidden;margin-top:14px}.breathing-progress span{display:block;width:0%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal),var(--yellow));transition:width .3s ease}.breathing-note{margin:18px 0 0!important;padding:14px 16px;border-radius:18px;background:#fffdf2;border:1px solid rgba(255,204,0,.42);font-size:.94rem;color:var(--muted)!important}
.section--one-calm-minute{background:linear-gradient(180deg,#ffffff 0%,#f7fffd 100%);padding-top:0}.one-calm-minute{background:white;border:1px solid rgba(17,85,136,.16);border-radius:34px;box-shadow:0 24px 70px rgba(17,85,136,.12);padding:clamp(30px,4vw,48px);overflow:hidden}.one-calm-minute h2{color:var(--blue-dark);font-size:clamp(2rem,3vw,2.65rem);line-height:1.08;margin:0 0 12px}.one-calm-minute__intro{max-width:920px;color:var(--muted);font-size:1.02rem;line-height:1.75;margin:0 0 28px}.one-calm-minute__steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:0 0 28px}.one-calm-step{background:#fff;border:1px solid rgba(17,85,136,.16);border-radius:22px;box-shadow:0 18px 42px rgba(17,85,136,.08);padding:22px;min-height:205px}.one-calm-step__number{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:rgba(255,204,0,.25);color:var(--blue-dark);font-weight:900;margin-bottom:14px}.one-calm-step h3{font-size:1.08rem;color:var(--blue-dark);margin:0 0 8px}.one-calm-step p{color:var(--muted);line-height:1.65;margin:0}.one-calm-minute__actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.one-calm-minute__actions .btn{box-shadow:0 14px 34px rgba(17,85,136,.14)}
.breathing-after-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:stretch}.breathing-after-card{background:white;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:clamp(24px,4vw,42px)}.breathing-after-card h2{color:var(--blue-dark)}.breathing-after-card p{color:var(--muted);line-height:1.65}.breathing-after-card--booking{background:linear-gradient(145deg,var(--blue-dark),var(--blue));color:white;display:flex;flex-direction:column;align-items:flex-start}.breathing-after-card--booking h2,.breathing-after-card--booking p{color:white}.breathing-after-card--booking .eyebrow{color:var(--yellow)}.breathing-after-card--booking .btn{margin-top:auto}.breathing-after-card--booking .text-link{color:white;margin-top:14px;text-decoration-color:rgba(255,255,255,.5)}
.section--breathing-teaser{background:linear-gradient(135deg,#eefcff 0%,#ffffff 46%,#fff8d8 100%)}.breathing-teaser{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:28px;align-items:center;background:white;border:1px solid rgba(17,85,136,.14);border-radius:34px;box-shadow:var(--shadow);padding:clamp(24px,4vw,42px);overflow:hidden}.breathing-teaser__visual{min-height:280px;position:relative;display:grid;place-items:center;border-radius:30px;background:linear-gradient(180deg,#e5fbff,#f5fffd)}.mini-breath-orb{width:170px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 36% 28%,#fff,rgba(0,204,179,.65),rgba(17,85,136,.82));box-shadow:0 24px 64px rgba(17,85,136,.22);animation:miniBreath 7s ease-in-out infinite}.mini-breath-orb span{width:44%;aspect-ratio:1;border-radius:50%;background:rgba(255,255,255,.38)}.mini-breath-wave{position:absolute;left:-10%;right:-10%;bottom:-46px;height:115px;border-radius:50% 50% 0 0;background:rgba(0,204,179,.13);animation:breathingWave 9s ease-in-out infinite}.breathing-teaser__content h2{color:var(--blue-dark);font-size:clamp(1.7rem,3vw,2.45rem)}.breathing-teaser__content p{color:var(--muted);font-size:1.04rem;line-height:1.7}.breathing-teaser__chips{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.breathing-teaser__chips span{border-radius:999px;background:var(--blue-soft);color:var(--blue-dark);font-weight:900;padding:8px 13px;border:1px solid rgba(17,85,136,.12)}
.resource-tool-callout{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;background:linear-gradient(145deg,var(--blue-dark),var(--blue));color:white;border-radius:30px;box-shadow:var(--shadow);padding:clamp(24px,4vw,36px);margin-bottom:28px}.resource-tool-callout h2,.resource-tool-callout p{color:white}.resource-tool-callout .eyebrow{color:var(--yellow)}.resource-tool-callout p{margin:0;max-width:820px}.resource-tool-callout .btn{white-space:nowrap}
@keyframes breathingCloud{0%{transform:translateX(-20px)}50%{transform:translateX(22px)}100%{transform:translateX(-20px)}}
@keyframes breathingPulse{0%,100%{transform:scale(.92);opacity:.42}50%{transform:scale(1.08);opacity:.78}}
@keyframes breathingWave{0%,100%{transform:translateY(0) scaleX(1)}50%{transform:translateY(-20px) scaleX(1.04)}}
@keyframes miniBreath{0%,100%{transform:scale(.76)}42%{transform:scale(1.06)}58%{transform:scale(1.06)}}
@media (max-width:1100px){.breathing-shell,.breathing-after-grid,.breathing-teaser{grid-template-columns:1fr}.one-calm-minute__steps{grid-template-columns:repeat(2,1fr)}.breathing-stage{min-height:560px}.resource-tool-callout{grid-template-columns:1fr}.resource-tool-callout .btn{justify-self:start}}
@media (max-width:700px){.one-calm-minute{border-radius:26px;padding:22px}.one-calm-minute h2{font-size:1.85rem}.one-calm-minute__intro{font-size:.96rem;line-height:1.6;margin-bottom:18px}.one-calm-minute__steps{grid-template-columns:1fr;gap:12px;margin-bottom:18px}.one-calm-step{min-height:auto;padding:18px}.one-calm-minute__actions{display:grid}.one-calm-minute__actions .btn{width:100%;justify-content:center}.breathing-stage{min-height:540px;border-radius:28px;padding:18px}.breathing-orb{width:min(78vw,310px)}.breathing-guidance{left:16px;right:16px;bottom:16px;border-radius:22px;padding:18px 14px}.breathing-shell{gap:18px}.breathing-panel,.breathing-after-card,.breathing-teaser{border-radius:26px;padding:22px}.breathing-controls{display:grid}.breathing-controls .btn,.resource-tool-callout .btn{width:100%;justify-content:center}.breathing-audio-card__top{display:grid}.breathing-audio-toggle,.breathing-audio-mute{width:100%;justify-content:center}.breathing-stats{grid-template-columns:1fr 1fr}.breathing-teaser__visual{min-height:230px}.mini-breath-orb{width:140px}}
@media (prefers-reduced-motion:reduce){.breathing-sky span,.breathing-orb__ring,.breathing-wave,.mini-breath-orb,.mini-breath-wave{animation:none!important}.breathing-orb{transition:none!important}}

/* Desktop nav compaction after adding the Breathing Tool link */
@media (min-width:901px){
 .site-nav{gap:3px}
 .nav-link{font-size:.92rem;padding:10px 9px}
 .btn--nav{padding:11px 15px;margin-left:4px}
 .brand img{width:220px}
}
@media (min-width:901px) and (max-width:1180px){
 .nav-shell{gap:14px}
 .brand img{width:198px}
 .nav-link{font-size:.86rem;padding:9px 7px}
 .btn--nav{font-size:.86rem;padding:10px 12px}
}

/* Mobile breathing tool optimisation: compact icon controls so the circle stays visible */
.breathing-controls .btn[data-icon]::before,
.breathing-audio-mute[data-icon]::before{
 content:attr(data-icon);
 display:inline-grid;
 place-items:center;
 margin-right:8px;
 line-height:1;
}
.breathing-duration-control{display:block}
.breathing-audio-card strong span,
.breathing-volume-label span,
.breathing-select-label span,
.breathing-stats span span{font-style:normal}

@media (max-width:760px){
 .breathing-page .hero--breathing{min-height:420px;background-position:center top}
 .breathing-page .hero__content{padding:54px 0}
 .breathing-page .hero h1{font-size:clamp(2.1rem,11vw,3.15rem)}
 .breathing-page .hero p{font-size:1rem;line-height:1.55}
 .section--breathing-tool{padding:50px 0 64px;background:linear-gradient(180deg,#f3fffc 0%,#ffffff 52%,#eefcff 100%)}
 .section--breathing-tool .section-heading{margin-bottom:16px;text-align:left}
 .section--breathing-tool .section-heading h2{font-size:clamp(1.55rem,7vw,2.15rem);margin-bottom:10px}
 .section--breathing-tool .section-heading p:last-child{font-size:.96rem;line-height:1.55}
 .breathing-shell{gap:0;width:min(100% - 18px, var(--container));position:relative}
 .breathing-stage{
 min-height:0;
 height:clamp(430px,62svh,590px);
 border-radius:30px 30px 24px 24px;
 padding:18px;
 overflow:hidden;
 }
 .breathing-orb{width:min(72vw,300px);top:43%;filter:drop-shadow(0 28px 42px rgba(17,85,136,.18))}
 .breathing-sky span{transform:scale(.74);opacity:.64}
 .breathing-wave{height:120px;bottom:-58px}
 .breathing-wave--two{height:158px;bottom:-86px}
 .breathing-guidance{left:12px;right:12px;bottom:18px;padding:0 8px;text-shadow:0 2px 16px rgba(255,255,255,.95)}
 .breathing-guidance__label{font-size:.65rem;padding:5px 9px;margin-bottom:6px}
 .breathing-guidance strong{font-size:clamp(2.6rem,13vw,4.1rem);margin-bottom:4px}
 .breathing-guidance p{font-size:.82rem;line-height:1.35;max-width:320px;margin-inline:auto}

 .breathing-panel{
 margin-top:12px;
 border-radius:26px;
 padding:12px;
 display:flex;
 flex-direction:column;
 gap:10px;
 background:rgba(255,255,255,.96);
 backdrop-filter:blur(16px);
 box-shadow:0 18px 40px rgba(13,58,88,.14);
 }
 .breathing-panel>.eyebrow,
 .breathing-panel>h2,
 .breathing-panel>p{display:none}

 .breathing-controls{order:1;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:8px;margin:0}
 .breathing-controls .btn,
 .breathing-audio-mute{
 width:100%;
 min-height:58px;
 border-radius:18px;
 padding:8px 6px;
 flex-direction:column;
 gap:4px;
 font-size:.72rem;
 line-height:1;
 letter-spacing:0;
 box-shadow:0 10px 22px rgba(13,58,88,.08);
 }
 .breathing-controls .btn[data-icon]::before,
 .breathing-audio-mute[data-icon]::before{margin:0;font-size:1.35rem;line-height:1}
 .breathing-controls .btn[data-short-label]::after,
 .breathing-audio-mute[data-short-label]::after{content:attr(data-short-label);font-size:.68rem;font-weight:950;line-height:1.05;text-align:center}
 .breathing-controls .btn,
 .breathing-audio-mute{font-size:0}
 .breathing-controls .btn:disabled{opacity:.4}

 .breathing-stats{order:2;grid-template-columns:1fr 1fr;gap:8px;margin-top:0}
 .breathing-stats div{border-radius:16px;padding:10px 12px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px}
 .breathing-stats span{font-size:.66rem;margin:0;line-height:1.05}
 .breathing-stats span span{font-size:1rem;margin-right:2px}
 .breathing-stats strong{font-size:1.2rem;margin:0;text-align:right}
 .breathing-progress{order:3;height:9px;margin-top:0}

 .breathing-options{order:4;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}
 .breathing-option{
 position:relative;
 display:flex;
 flex-direction:column;
 align-items:center;
 justify-content:center;
 min-height:78px;
 gap:5px;
 border-radius:18px;
 padding:9px 6px;
 text-align:center;
 }
 .breathing-option::before{content:attr(data-breath-icon);font-size:1.35rem;line-height:1;display:block;color:var(--blue)}
 .breathing-option.is-active::before{color:white}
 .breathing-option input{position:absolute;opacity:0;pointer-events:none}
 .breathing-option strong{font-size:.78rem;line-height:1.05;margin:0}
 .breathing-option small{font-size:.62rem;line-height:1.1;margin-top:3px}

 .breathing-duration-control{order:5;display:grid;grid-template-columns:96px 1fr;align-items:center;gap:8px}
 .breathing-select-label{margin:0;font-size:.73rem;line-height:1.1;letter-spacing:.03em}
 .breathing-select-label span{display:inline-block;margin-right:2px}
 .breathing-panel select{height:46px;border-radius:16px;padding:8px 12px;font-size:.9rem}

 .breathing-audio-card{order:6;margin:0;border-radius:20px;padding:10px 12px;background:linear-gradient(145deg,#ffffff,#eefcff)}
 .breathing-audio-card__top{display:grid;grid-template-columns:1fr 72px;gap:10px;align-items:center}
 .breathing-audio-card strong{font-size:.86rem;line-height:1.15}
 .breathing-audio-card small{display:none}
 .breathing-audio-mute{min-height:48px;border-radius:16px;padding:6px 4px}
 .breathing-volume-label{font-size:.66rem;margin:9px 0 5px;letter-spacing:.06em}
 .breathing-volume{height:26px}
 .breathing-audio-message{min-height:0;margin:5px 0 0!important;font-size:.76rem!important;line-height:1.2!important}

 .breathing-note{order:7;margin:0!important;border-radius:18px;padding:10px 12px;font-size:.78rem;line-height:1.35}
}

@media (max-width:430px){
 .breathing-page .container{width:calc(100% - 18px)}
 .breathing-stage{height:clamp(405px,60svh,560px);border-radius:24px;padding:14px}
 .breathing-orb{width:min(70vw,260px)}
 .breathing-panel{padding:10px;border-radius:22px;gap:8px}
 .breathing-controls .btn{min-height:54px;border-radius:16px}
 .breathing-option{min-height:72px;border-radius:16px}
 .breathing-option strong{font-size:.72rem}
 .breathing-option small{font-size:.58rem}
 .breathing-duration-control{grid-template-columns:88px 1fr}
 .breathing-audio-card__top{grid-template-columns:1fr 66px}
 .breathing-note{font-size:.74rem}
}

/* Breathing tool mobile height fix: shorter stage, circle moved up, no sticky booking bar while exercising */
@media (max-width:760px){
 .breathing-page.has-sticky-mobile-booking{padding-bottom:0}
 .breathing-page .mobile-booking-bar{display:none}
 .breathing-page .hero--breathing{min-height:300px}
 .breathing-page .hero__content{padding:40px 0}
 .section--breathing-tool{padding:18px 0 42px}
 .section--breathing-tool .section-heading{display:none}
 .breathing-shell{width:calc(100% - 12px);gap:8px}
 .breathing-stage{
 height:clamp(300px,42svh,360px);
 min-height:0;
 display:block;
 border-radius:0 0 24px 24px;
 padding:10px;
 }
 .breathing-orb{
 position:absolute;
 left:50%;
 top:28px;
 width:min(58vw,205px);
 transform:translateX(-50%) scale(var(--breath-scale,.78));
 }
 .breathing-guidance{
 left:10px;
 right:10px;
 bottom:12px;
 padding:0 6px;
 }
 .breathing-guidance__label{font-size:.6rem;padding:4px 8px;margin-bottom:4px}
 .breathing-guidance strong{font-size:clamp(2.1rem,10vw,3.25rem);margin-bottom:2px}
 .breathing-guidance p{font-size:.74rem;line-height:1.22;max-width:265px}
 .breathing-wave{height:82px;bottom:-38px}
 .breathing-wave--two{height:112px;bottom:-64px}
 .breathing-panel{margin-top:8px;gap:7px;padding:9px;border-radius:20px}
 .breathing-controls{gap:7px}
 .breathing-controls .btn,.breathing-audio-mute{min-height:50px;border-radius:15px}
 .breathing-stats{gap:7px}
 .breathing-stats div{padding:8px 10px;border-radius:14px}
 .breathing-progress{height:8px}
 .breathing-options{gap:7px}
 .breathing-option{min-height:66px;border-radius:15px;padding:7px 4px}
 .breathing-option::before{font-size:1.05rem}
 .breathing-option strong{font-size:.68rem}
 .breathing-option small{font-size:.55rem}
 .breathing-duration-control{grid-template-columns:82px 1fr;gap:7px}
 .breathing-panel select{height:42px;border-radius:14px;font-size:.86rem}
 .breathing-audio-card{padding:8px 10px;border-radius:16px}
 .breathing-audio-card__top{grid-template-columns:1fr 62px;gap:8px}
 .breathing-audio-card strong{font-size:.78rem;line-height:1.1}
 .breathing-audio-mute{min-height:44px}
 .breathing-volume-label{font-size:.61rem;margin:6px 0 2px}
 .breathing-volume{height:22px}
 .breathing-audio-message{display:none}
 .breathing-note{display:none}
}

@media (max-width:430px){
 .breathing-page .container{width:calc(100% - 12px)}
 .breathing-stage{height:300px;border-radius:0 0 20px 20px;padding:8px}
 .breathing-orb{top:24px;width:min(57vw,190px)}
 .breathing-guidance{bottom:10px}
 .breathing-guidance strong{font-size:2.45rem}
 .breathing-guidance p{font-size:.72rem;max-width:245px}
 .breathing-panel{padding:8px;gap:6px}
 .breathing-controls .btn{min-height:48px}
 .breathing-stats div{padding:7px 9px}
 .breathing-stats strong{font-size:1.05rem}
 .breathing-option{min-height:62px}
 .breathing-duration-control{grid-template-columns:78px 1fr}
}

/* Breathing page simplification: audio now starts with the breathing session, so only a Mute/Unmute button is shown beside the main controls. */
.breathing-audio-hidden{display:none!important}
.breathing-audio-mute{white-space:nowrap}
.breathing-controls .breathing-audio-mute{flex:1 1 auto}

/* Keep the breathing circle visually centred. It should only expand/contract, not move around the scene. */
.breathing-stage{display:grid;place-items:center}
.breathing-orb{transform-origin:center center}

@media (max-width:760px){
 .breathing-controls{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
 .breathing-controls .btn,.breathing-controls .breathing-audio-mute{min-height:50px;border-radius:15px}
 .breathing-controls .breathing-audio-mute{width:100%}
 .breathing-orb{
 position:absolute;
 left:50%;
 top:calc(50% - 20px);
 width:min(57vw,205px);
 transform:translate(-50%,-50%) scale(var(--breath-scale,.78));
 }
}

@media (max-width:430px){
 .breathing-controls{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
 .breathing-controls .btn,.breathing-controls .breathing-audio-mute{min-height:47px;border-radius:14px;padding:6px 3px}
 .breathing-controls .btn[data-icon]::before,.breathing-audio-mute[data-icon]::before{font-size:1.16rem}
 .breathing-controls .btn[data-short-label]::after,.breathing-audio-mute[data-short-label]::after{font-size:.62rem}
 .breathing-orb{top:calc(50% - 20px);width:min(55vw,185px);transform:translate(-50%,-50%) scale(var(--breath-scale,.78))}
}

/* Inspirational quote additions */
.inspiration-quotes{padding:34px 0}
.inspiration-quotes--soft{background:linear-gradient(180deg,rgba(244,251,249,.78),rgba(255,255,255,.96))}
.inspiration-quotes__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.inspiration-quotes__grid--two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:980px;margin-inline:auto}
.inspiration-quote-card{background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:26px;padding:24px;box-shadow:0 18px 46px rgba(16,58,86,.09);position:relative;overflow:hidden}
.inspiration-quote-card:before{content:'“';position:absolute;right:18px;top:-18px;font-size:6rem;line-height:1;color:rgba(20,100,145,.08);font-weight:900;font-family:Georgia,serif}
.inspiration-quote-card blockquote{margin:0;color:var(--blue-dark);font-size:clamp(1.18rem,1.55vw,1.58rem);line-height:1.38;font-weight:850;letter-spacing:-.02em;position:relative;z-index:1}
.inspiration-quote-card cite{display:block;margin-top:14px;color:var(--muted);font-style:normal;font-weight:800;position:relative;z-index:1}
.inspiration-quote-card p{margin:12px 0 0;color:var(--muted);font-size:1rem;line-height:1.65;position:relative;z-index:1}
@media (max-width:860px){.inspiration-quotes__grid,.inspiration-quotes__grid--two{grid-template-columns:1fr}.inspiration-quotes{padding:28px 0}.inspiration-quote-card{padding:22px}.inspiration-quote-card blockquote{font-size:1.22rem}}

/* Trust, booking reassurance and conversion polish */
.trust-section{background:linear-gradient(180deg,#fffdf8 0%,#f8efe3 100%)}
.trust-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.trust-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.trust-card{background:#fff;border:1px solid rgba(36,52,65,.12);border-radius:24px;padding:26px;box-shadow:0 18px 50px rgba(25,42,60,.08)}
.trust-card span{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 12px;border-radius:999px;background:#f4e3c7;color:#7a4f21;font-weight:800;font-size:.86rem;margin-bottom:14px}
.trust-card h3{margin:0 0 10px;color:var(--blue)}
.trust-card p{margin:0;color:var(--muted);line-height:1.65}
.trust-card--scope{background:#fff8f1;border-color:rgba(151,94,32,.22)}
.privacy-reassurance-card{margin:18px 0 0;padding:16px 18px;border:1px solid rgba(36,52,65,.12);background:#fff;border-radius:18px;box-shadow:0 12px 30px rgba(25,42,60,.06)}
.privacy-reassurance-card strong{display:block;color:var(--blue);margin-bottom:4px}.privacy-reassurance-card span{color:var(--muted)}
.what-next-section{background:#fff}.seo-intro-section{padding-top:36px;padding-bottom:36px}.seo-intro-section .info-card{text-align:left}.seo-intro-section a{font-weight:700;color:var(--blue)}
@media (max-width: 980px){.trust-grid,.trust-grid--three{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width: 640px){.trust-grid,.trust-grid--three{grid-template-columns:1fr}.trust-card{padding:22px}.seo-intro-section{padding-top:24px;padding-bottom:24px}}

/* Fix readable text inside white cards placed on dark feature bands */
.feature-band .info-card,
.feature-band .content-panel,
.feature-band .legal-card,
.feature-band .contact-card,
.feature-band .price-card{
 color:var(--ink);
}

.feature-band .info-card h2,
.feature-band .info-card h3,
.feature-band .content-panel h2,
.feature-band .content-panel h3,
.feature-band .legal-card h2,
.feature-band .legal-card h3,
.feature-band .contact-card h2,
.feature-band .contact-card h3,
.feature-band .price-card h2,
.feature-band .price-card h3{
 color:var(--blue-dark);
}

.feature-band .info-card p:not(.eyebrow),
.feature-band .content-panel p:not(.eyebrow),
.feature-band .legal-card p:not(.eyebrow),
.feature-band .contact-card p:not(.eyebrow),
.feature-band .price-card p:not(.eyebrow),
.feature-band .info-card li,
.feature-band .content-panel li,
.feature-band .legal-card li,
.feature-band .contact-card li,
.feature-band .price-card li{
 color:var(--muted);
}

.feature-band .info-card .text-link,
.feature-band .info-card a,
.feature-band .content-panel .text-link,
.feature-band .content-panel a,
.feature-band .legal-card .text-link,
.feature-band .legal-card a,
.feature-band .contact-card .text-link,
.feature-band .contact-card a,
.feature-band .price-card .text-link,
.feature-band .price-card a{
 color:var(--blue);
}

/* Mobile-only collapsible footer menus. Desktop footer remains unchanged. */
.footer-accordion-toggle{display:none}
.footer-accordion-panel{display:block}

@media (max-width:620px){
 .js .site-footer .footer-grid > div.footer-accordion-section{border-top:1px solid var(--line);padding:0}
 .js .site-footer .footer-grid > div.footer-accordion-section:last-child{border-bottom:1px solid var(--line)}
 .js .site-footer .footer-grid > div.footer-accordion-section > h2{display:none}
 .js .site-footer .footer-accordion-toggle{appearance:none;background:transparent;border:0;color:var(--blue-dark);cursor:pointer;display:flex;align-items:center;justify-content:space-between;width:100%;padding:16px 0;text-align:left;font:inherit;font-weight:900;text-transform:uppercase;letter-spacing:.13em}
 .js .site-footer .footer-accordion-symbol{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--line);border-radius:999px;background:white;color:var(--blue-dark);font-size:1.25rem;line-height:1;font-weight:900;margin-left:16px}
 .js .site-footer .footer-accordion-panel{display:grid;gap:8px;overflow:hidden;padding:0 0 16px}
 .js .site-footer .footer-accordion-panel[hidden]{display:none}
}

/* Mobile sticky SMS/book buttons removed site-wide */
.has-sticky-mobile-booking{padding-bottom:0!important}
.mobile-booking-bar{display:none!important}

/* Desktop navigation anti-jump fix: keep links/buttons identical size on normal, hover, active/click and page-load states. */
@media (min-width:901px){
 .site-nav{
 align-items:center;
 gap:8px;
 }

 .site-nav .nav-link,
 .site-nav .btn--nav{
 box-sizing:border-box;
 display:inline-flex;
 align-items:center;
 justify-content:center;
 min-height:46px;
 padding:12px 14px;
 border:2px solid transparent;
 border-radius:999px;
 margin-top:0;
 margin-bottom:0;
 line-height:1;
 white-space:nowrap;
 transform:none!important;
 vertical-align:middle;
 transition:background .18s ease,color .18s ease,box-shadow .18s ease,border-color .18s ease;
 }

 .site-nav .btn--nav{
 margin-left:8px;
 padding:12px 18px;
 }

 .site-nav .nav-link:hover,
 .site-nav .nav-link:focus,
 .site-nav .nav-link:active,
 .site-nav .nav-link.is-active,
 .site-nav .btn--nav:hover,
 .site-nav .btn--nav:focus,
 .site-nav .btn--nav:active,
 .site-nav .btn--nav.is-active{
 min-height:46px;
 padding-top:12px;
 padding-bottom:12px;
 line-height:1;
 transform:none!important;
 outline-offset:3px;
 }
}

@media (min-width:901px) and (max-width:1100px){
 .site-nav{
 gap:4px;
 }

 .site-nav .nav-link{
 min-height:44px;
 padding:10px 9px;
 font-size:.9rem;
 }

 .site-nav .btn--nav{
 min-height:44px;
 padding:10px 12px;
 margin-left:4px;
 font-size:.9rem;
 }

 .site-nav .nav-link:hover,
 .site-nav .nav-link:focus,
 .site-nav .nav-link:active,
 .site-nav .nav-link.is-active,
 .site-nav .btn--nav:hover,
 .site-nav .btn--nav:focus,
 .site-nav .btn--nav:active,
 .site-nav .btn--nav.is-active{
 min-height:44px;
 padding-top:10px;
 padding-bottom:10px;
 }
}

/* Wellbeing Courses page - hidden draft page styles. Added only for wellbeing-courses.html. */
.wellbeing-courses-page .hero--wellbeing-courses{
 min-height:620px;
}

.wellbeing-courses-page .wellbeing-hero__grid{
 grid-template-columns:minmax(0,690px) minmax(280px,420px);
 align-items:center;
}

.wellbeing-courses-page .wellbeing-hero-card{
 position:relative;
 z-index:1;
 background:rgba(255,255,255,.94);
 border:1px solid rgba(255,255,255,.72);
 border-radius:var(--radius-lg);
 box-shadow:var(--shadow);
 padding:clamp(24px,3vw,36px);
}

.wellbeing-courses-page .wellbeing-hero-card h2{
 color:var(--blue-dark);
 font-size:1.55rem;
 margin-bottom:16px;
}

.wellbeing-courses-page .wellbeing-hero-card ul{
 list-style:none;
 padding:0;
 margin:0;
 display:grid;
 gap:13px;
}

.wellbeing-courses-page .wellbeing-hero-card li{
 position:relative;
 padding-left:34px;
 color:var(--muted);
 font-weight:720;
}

.wellbeing-courses-page .wellbeing-hero-card li::before{
 content:"✓";
 position:absolute;
 left:0;
 top:1px;
 width:23px;
 height:23px;
 border-radius:50%;
 background:var(--mint);
 color:var(--blue);
 display:grid;
 place-items:center;
 font-size:.8rem;
 font-weight:950;
}

.wellbeing-courses-page .wellbeing-course-intro{
 display:grid;
 grid-template-columns:1fr minmax(260px,380px);
 gap:26px;
 align-items:stretch;
 margin-bottom:52px;
}

.wellbeing-courses-page .wellbeing-course-intro p{
 color:var(--muted);
 margin:0;
}

.wellbeing-courses-page .wellbeing-course-intro h2{
 margin-bottom:14px;
}

.wellbeing-courses-page .wellbeing-course-note,
.wellbeing-courses-page .wellbeing-disclaimer{
 background:white;
 border:1px solid var(--line);
 border-left:6px solid var(--yellow);
 border-radius:var(--radius);
 box-shadow:var(--shadow-soft);
 padding:22px 24px;
 color:var(--muted);
}

.wellbeing-courses-page .wellbeing-course-note strong,
.wellbeing-courses-page .wellbeing-disclaimer strong{
 color:var(--blue-dark);
}

.wellbeing-courses-page .wellbeing-course-section{
 margin-top:54px;
}

.wellbeing-courses-page .wellbeing-course-heading{
 max-width:850px;
 margin-bottom:24px;
}

.wellbeing-courses-page .wellbeing-course-heading h2{
 margin-bottom:12px;
}

.wellbeing-courses-page .wellbeing-course-heading p:last-child{
 color:var(--muted);
 margin:0;
 font-size:1.05rem;
}

.wellbeing-courses-page .wellbeing-course-grid{
 display:grid;
 grid-template-columns:repeat(3,minmax(0,1fr));
 gap:22px;
}

.wellbeing-courses-page .wellbeing-course-card{
 display:flex;
 flex-direction:column;
 min-height:255px;
 background:white;
 border:1px solid var(--line);
 border-radius:28px;
 box-shadow:var(--shadow-soft);
 padding:26px;
 color:var(--ink);
 transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}

.wellbeing-courses-page .wellbeing-course-card:hover{
 transform:translateY(-5px);
 box-shadow:var(--shadow);
 border-color:rgba(17,85,136,.28);
 text-decoration:none;
}

.wellbeing-courses-page .wellbeing-course-card span{
 width:42px;
 height:42px;
 border-radius:16px;
 background:linear-gradient(135deg,var(--yellow),#fff2a4);
 color:var(--blue-dark);
 display:grid;
 place-items:center;
 font-weight:950;
 margin-bottom:18px;
}

.wellbeing-courses-page .wellbeing-course-card h3{
 color:var(--blue-dark);
 font-size:1.22rem;
 margin-bottom:12px;
}

.wellbeing-courses-page .wellbeing-course-card p{
 color:var(--muted);
 margin:0 0 18px;
}

.wellbeing-courses-page .wellbeing-course-card strong{
 margin-top:auto;
 color:var(--blue);
 font-weight:950;
}

.wellbeing-courses-page .wellbeing-disclaimer{
 margin-top:54px;
 border-left-color:var(--blue);
}

@media (max-width:1100px){
 .wellbeing-courses-page .wellbeing-course-grid{
 grid-template-columns:repeat(2,minmax(0,1fr));
 }
}

@media (max-width:900px){
 .wellbeing-courses-page .wellbeing-hero__grid,
 .wellbeing-courses-page .wellbeing-course-intro{
 grid-template-columns:1fr;
 }

 .wellbeing-courses-page .wellbeing-hero-card{
 margin-bottom:46px;
 }
}

@media (max-width:620px){
 .wellbeing-courses-page .hero--wellbeing-courses{
 min-height:auto;
 }

 .wellbeing-courses-page .wellbeing-course-grid{
 grid-template-columns:1fr;
 }

 .wellbeing-courses-page .wellbeing-course-card{
 min-height:auto;
 border-radius:24px;
 padding:24px;
 }

 .wellbeing-courses-page .wellbeing-course-section{
 margin-top:42px;
 }
}

/* Wellbeing Courses pricing and conversion additions. Appended for wellbeing-courses.html only. */
.wellbeing-courses-page .wellbeing-price-badge{
 display:inline-grid;
 grid-template-columns:auto auto;
 align-items:end;
 gap:4px 14px;
 margin:24px 0 6px;
 padding:16px 20px;
 background:rgba(255,255,255,.94);
 border:1px solid rgba(255,255,255,.75);
 border-radius:24px;
 box-shadow:var(--shadow-soft);
 color:var(--blue-dark);
}

.wellbeing-courses-page .wellbeing-price-badge span{
 grid-column:1/-1;
 color:var(--blue);
 font-size:.82rem;
 font-weight:950;
 letter-spacing:.08em;
 text-transform:uppercase;
}

.wellbeing-courses-page .wellbeing-price-badge strong{
 font-size:clamp(2.05rem,4vw,3.1rem);
 line-height:1;
 letter-spacing:-.05em;
}

.wellbeing-courses-page .wellbeing-price-badge em{
 color:var(--muted);
 font-style:normal;
 font-weight:800;
 padding-bottom:5px;
}

.wellbeing-courses-page .wellbeing-pricing-wrap{
 scroll-margin-top:120px;
 margin:0 auto 60px;
}

.wellbeing-courses-page .wellbeing-pricing-header{
 max-width:840px;
 margin-bottom:24px;
}

.wellbeing-courses-page .wellbeing-pricing-header h2{
 color:var(--blue-dark);
 margin-bottom:12px;
}

.wellbeing-courses-page .wellbeing-pricing-header p:last-child{
 color:var(--muted);
 margin:0;
 font-size:1.06rem;
}

.wellbeing-courses-page .wellbeing-pricing-grid{
 display:grid;
 grid-template-columns:repeat(4,minmax(0,1fr));
 gap:20px;
}

.wellbeing-courses-page .wellbeing-price-card{
 position:relative;
 display:flex;
 flex-direction:column;
 min-height:100%;
 padding:26px;
 background:#fff;
 border:1px solid var(--line);
 border-radius:30px;
 box-shadow:var(--shadow-soft);
 color:var(--ink);
 transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
 overflow:hidden;
}

.wellbeing-courses-page .wellbeing-price-card:hover{
 transform:translateY(-6px);
 box-shadow:var(--shadow);
 border-color:rgba(17,85,136,.26);
 text-decoration:none;
}

.wellbeing-courses-page .wellbeing-price-card--featured{
 border:2px solid rgba(17,85,136,.34);
}

.wellbeing-courses-page .wellbeing-price-card--all{
 background:linear-gradient(135deg,var(--blue-dark),var(--blue));
 color:#fff;
 border-color:rgba(255,255,255,.18);
}

.wellbeing-courses-page .wellbeing-price-label{
 width:max-content;
 max-width:100%;
 display:inline-flex;
 align-items:center;
 min-height:30px;
 padding:7px 12px;
 border-radius:999px;
 background:var(--mint);
 color:var(--blue-dark);
 font-size:.78rem;
 font-weight:950;
 letter-spacing:.04em;
 text-transform:uppercase;
 margin-bottom:18px;
}

.wellbeing-courses-page .wellbeing-price-card--all .wellbeing-price-label{
 background:rgba(255,255,255,.16);
 color:#fff;
}

.wellbeing-courses-page .wellbeing-price-card h3{
 color:var(--blue-dark);
 font-size:1.34rem;
 margin-bottom:14px;
}

.wellbeing-courses-page .wellbeing-price-card--all h3,
.wellbeing-courses-page .wellbeing-price-card--all p,
.wellbeing-courses-page .wellbeing-price-card--all li,
.wellbeing-courses-page .wellbeing-price-card--all .wellbeing-price-row em{
 color:#fff;
}

.wellbeing-courses-page .wellbeing-price-row{
 display:flex;
 align-items:baseline;
 flex-wrap:wrap;
 gap:10px;
 margin-bottom:16px;
}

.wellbeing-courses-page .wellbeing-price-row strong{
 color:var(--blue-dark);
 font-size:2.3rem;
 line-height:1;
 letter-spacing:-.05em;
}

.wellbeing-courses-page .wellbeing-price-card--all .wellbeing-price-row strong{
 color:#fff;
}

.wellbeing-courses-page .wellbeing-price-row del,
.wellbeing-courses-page .wellbeing-price-row em{
 color:var(--muted);
 font-size:.95rem;
 font-weight:850;
 font-style:normal;
}

.wellbeing-courses-page .wellbeing-price-card p{
 color:var(--muted);
 margin:0 0 18px;
}

.wellbeing-courses-page .wellbeing-price-card ul{
 margin:0 0 24px;
 padding:0;
 list-style:none;
 display:grid;
 gap:10px;
}

.wellbeing-courses-page .wellbeing-price-card li{
 position:relative;
 padding-left:24px;
 color:var(--muted);
 font-weight:720;
}

.wellbeing-courses-page .wellbeing-price-card li::before{
 content:"✓";
 position:absolute;
 left:0;
 top:0;
 color:var(--blue);
 font-weight:950;
}

.wellbeing-courses-page .wellbeing-price-card--all li::before{
 color:#fff;
}

.wellbeing-courses-page .wellbeing-price-cta{
 margin-top:auto;
 display:flex;
 align-items:center;
 justify-content:center;
 min-height:46px;
 padding:12px 18px;
 border-radius:999px;
 background:var(--blue);
 color:#fff;
 font-weight:950;
}

.wellbeing-courses-page .wellbeing-price-card--all .wellbeing-price-cta{
 background:#fff;
 color:var(--blue-dark);
}

.wellbeing-courses-page .wellbeing-card-price{
 margin-top:auto;
 display:flex;
 align-items:baseline;
 gap:10px;
 padding-top:8px;
}

.wellbeing-courses-page .wellbeing-card-price span{
 width:auto;
 height:auto;
 margin:0;
 padding:0;
 background:transparent;
 color:var(--blue-dark);
 font-size:1.04rem;
 font-weight:950;
}

.wellbeing-courses-page .wellbeing-card-price del{
 color:var(--muted);
 font-size:.9rem;
 font-weight:800;
}

.wellbeing-courses-page .wellbeing-card-cta{
 margin-top:14px;
 color:var(--blue);
 font-weight:950;
}

.wellbeing-courses-page .wellbeing-bundle-cta{
 display:grid;
 grid-template-columns:minmax(0,1fr) minmax(230px,320px);
 gap:28px;
 align-items:center;
 margin-top:58px;
 padding:34px;
 border-radius:32px;
 background:linear-gradient(135deg,#fff,var(--mint));
 border:1px solid rgba(17,85,136,.18);
 box-shadow:var(--shadow-soft);
}

.wellbeing-courses-page .wellbeing-bundle-cta h2{
 color:var(--blue-dark);
 margin-bottom:12px;
}

.wellbeing-courses-page .wellbeing-bundle-cta p:last-child{
 color:var(--muted);
 margin:0;
}

.wellbeing-courses-page .wellbeing-bundle-price{
 background:#fff;
 border:1px solid var(--line);
 border-radius:26px;
 padding:24px;
 box-shadow:var(--shadow-soft);
 text-align:center;
}

.wellbeing-courses-page .wellbeing-bundle-price span,
.wellbeing-courses-page .wellbeing-bundle-price em{
 display:block;
 color:var(--muted);
 font-style:normal;
 font-weight:850;
}

.wellbeing-courses-page .wellbeing-bundle-price strong{
 display:block;
 color:var(--blue-dark);
 font-size:3rem;
 line-height:1;
 letter-spacing:-.05em;
 margin:8px 0;
}

.wellbeing-courses-page .wellbeing-bundle-price .btn{
 width:100%;
 margin-top:18px;
}

@media (max-width:1180px){
 .wellbeing-courses-page .wellbeing-pricing-grid{
 grid-template-columns:repeat(2,minmax(0,1fr));
 }
}

@media (max-width:760px){
 .wellbeing-courses-page .wellbeing-price-badge{
 grid-template-columns:1fr;
 width:100%;
 }

 .wellbeing-courses-page .wellbeing-pricing-grid,
 .wellbeing-courses-page .wellbeing-bundle-cta{
 grid-template-columns:1fr;
 }

 .wellbeing-courses-page .wellbeing-price-card,
 .wellbeing-courses-page .wellbeing-bundle-cta{
 border-radius:24px;
 padding:24px;
 }
}

/* Homepage: wider headings, but never forced into one long overflowing line. */
.home-page .section-heading,
#latest-counselling-articles .section-heading--wide{
 width: min(100%, 1180px);
 max-width: calc(100% - 32px);
}

.home-page .section-heading h2,
#latest-counselling-articles .section-heading--wide h2{
 max-width: 100%;
 margin-left: auto;
 margin-right: auto;
 white-space: normal !important;
 overflow-wrap: normal;
 word-break: normal;
 text-wrap: balance;
}

.home-page .section-heading p:last-child,
#latest-counselling-articles .section-heading--wide p:last-child{
 width: min(100%, 1060px);
 max-width: 100%;
 margin-left: auto;
 margin-right: auto;
}

@media (min-width: 900px){
 .home-page .section-heading h2{
 font-size: clamp(2.15rem, 3.1vw, 3rem);
 }
}

@media (max-width: 620px){
 .home-page .section-heading,
 #latest-counselling-articles .section-heading--wide{
 width: min(100% - 28px, var(--container));
 max-width: var(--container);
 }

 .home-page .section-heading h2,
 #latest-counselling-articles .section-heading--wide h2{
 text-wrap: auto;
 }
}

/* Professional visible breadcrumbs + Google BreadcrumbList support. */
.site-breadcrumbs{
 background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,251,255,.96));
 border-bottom: 1px solid rgba(17,85,136,.12);
 box-shadow: 0 10px 28px rgba(9,45,74,.06);
}

.site-breadcrumbs__list{
 width: min(100% - 32px, var(--container));
 margin: 0 auto;
 padding: 14px 0;
 list-style: none;
 display: flex;
 align-items: center;
 flex-wrap: wrap;
 gap: 8px;
 color: #5b7284;
 font-size: .92rem;
 line-height: 1.4;
}

.site-breadcrumbs__item{
 display: inline-flex;
 align-items: center;
 gap: 8px;
 min-width: 0;
}

.site-breadcrumbs__item:not(:last-child)::after{
 content: "›";
 color: #d7a900;
 font-weight: 900;
 font-size: 1rem;
}

.site-breadcrumbs a{
 color: #115588;
 font-weight: 800;
 text-decoration: none;
 text-underline-offset: 4px;
 padding: 3px 0;
 transition: color .2s ease;
}

.site-breadcrumbs a:hover,
.site-breadcrumbs a:focus-visible{
 color: #0d426b;
 text-decoration: underline;
 outline: none;
}

.site-breadcrumbs [aria-current="page"]{
 color: #14324a;
 font-weight: 900;
}

@media (max-width: 620px){
 .site-breadcrumbs__list{
 width: min(100% - 24px, var(--container));
 padding: 12px 0;
 gap: 6px;
 font-size: .84rem;
 }

 .site-breadcrumbs__item{
 gap: 6px;
 }
}


/* Desktop main-menu stability fix.
   Keeps the desktop header/menu the same size and position on hover, focus and click.
   Mobile menu is intentionally untouched. */
@media (min-width:901px){
 .site-header .nav-shell{
  min-height:82px;
  height:82px;
  align-items:center;
 }

 .site-header .brand,
 .site-header .site-nav{
  flex-shrink:0;
 }

 .site-header .site-nav{
  position:static!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end;
  flex-wrap:nowrap;
  height:46px;
  gap:8px;
  overflow:visible;
  transform:none!important;
 }

 .site-header .site-nav .nav-link,
 .site-header .site-nav .btn--nav{
  box-sizing:border-box!important;
  flex:0 0 auto;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:46px!important;
  min-height:46px!important;
  max-height:46px!important;
  padding-top:0!important;
  padding-bottom:0!important;
  margin-top:0!important;
  margin-bottom:0!important;
  border:2px solid transparent!important;
  border-radius:999px;
  line-height:1!important;
  white-space:nowrap;
  transform:none!important;
  vertical-align:middle;
 }

 .site-header .site-nav .nav-link{
  padding-left:14px!important;
  padding-right:14px!important;
  font-size:.92rem;
  font-weight:750;
 }

 .site-header .site-nav .btn--nav{
  padding-left:18px!important;
  padding-right:18px!important;
  margin-left:8px!important;
  font-size:.92rem;
  font-weight:850;
 }

 .site-header .site-nav .nav-link:hover,
 .site-header .site-nav .nav-link:focus,
 .site-header .site-nav .nav-link:active,
 .site-header .site-nav .nav-link.is-active,
 .site-header .site-nav .btn--nav:hover,
 .site-header .site-nav .btn--nav:focus,
 .site-header .site-nav .btn--nav:active,
 .site-header .site-nav .btn--nav.is-active{
  height:46px!important;
  min-height:46px!important;
  max-height:46px!important;
  padding-top:0!important;
  padding-bottom:0!important;
  margin-top:0!important;
  margin-bottom:0!important;
  transform:none!important;
 }
}

@media (min-width:901px) and (max-width:1100px){
 .site-header .site-nav{
  height:44px;
  gap:4px;
 }

 .site-header .site-nav .nav-link,
 .site-header .site-nav .btn--nav,
 .site-header .site-nav .nav-link:hover,
 .site-header .site-nav .nav-link:focus,
 .site-header .site-nav .nav-link:active,
 .site-header .site-nav .nav-link.is-active,
 .site-header .site-nav .btn--nav:hover,
 .site-header .site-nav .btn--nav:focus,
 .site-header .site-nav .btn--nav:active,
 .site-header .site-nav .btn--nav.is-active{
  height:44px!important;
  min-height:44px!important;
  max-height:44px!important;
 }

 .site-header .site-nav .nav-link{
  padding-left:9px!important;
  padding-right:9px!important;
  font-size:.86rem;
 }

 .site-header .site-nav .btn--nav{
  padding-left:12px!important;
  padding-right:12px!important;
  margin-left:4px!important;
  font-size:.86rem;
 }
}
.site-footer {
  width: 100%;
  background: #f4f8f9;
  padding: 18px 24px;
  box-sizing: border-box;
}

.footer-inner {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 20px;
}

.footer-left {
  text-align: left;
}

.footer-center {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  white-space: nowrap;
}

.footer-credit-text {
  color: #3d4f5f;
}

.webpad-footer-link {
  color: #003b73;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: color 0.2s ease, text-decoration-color 0.2s ease;
}

.webpad-footer-link img {
  display: inline-block;
  width: 30px;
  height: 30px;
  object-fit: contain;
  vertical-align: middle;
}

.webpad-footer-link:hover,
.webpad-footer-link:focus {
  color: #007bff;
  text-decoration: underline;
}

.webpad-footer-link:focus {
  outline: 2px solid #007bff;
  outline-offset: 3px;
}

.footer-legal-links {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  font-weight: 700;
  white-space: nowrap;
}

.footer-legal-links a {
  color: #001f3f;
  text-decoration: none;
}

.footer-legal-links a:hover,
.footer-legal-links a:focus {
  color: #007bff;
  text-decoration: underline;
}

@media (max-width: 850px) {
  .footer-inner {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .footer-left,
  .footer-center,
  .footer-legal-links {
    justify-content: center;
    text-align: center;
  }

  .footer-center {
    flex-wrap: wrap;
  }

  .footer-legal-links {
    flex-wrap: wrap;
  }
}
.footer-scope-note {
  display: block !important;
  width: 100% !important;
  max-width: 1100px !important;
  margin: 18px auto 0 auto !important;
  padding: 0 20px !important;
  text-align: center !important;
  color: #3d4f5f !important;
  font-size: 0.9rem !important;
  line-height: 1.65 !important;
  box-sizing: border-box !important;
}
