:root{--blue:#075a9f;--blue-deep:#064c88;--green:#70ad32;--lime:#91c54a;--ink:#17385e;--paper:#fcfdfb;--mist:#f0f5ed;--line:#d9e4d0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:#274154;font-family:"DM Sans",sans-serif;font-size:16px;line-height:1.6}h1,h2,h3,p{margin-top:0}h1,h2,h3,.eyebrow,.brand strong,.price-card{font-family:Oswald,sans-serif;line-height:1.05;text-transform:uppercase;letter-spacing:.025em}h1{color:var(--blue);font-size:clamp(4rem,9vw,8rem);margin:.15em 0}h1 em,h2 span{color:var(--green);font-style:normal}h2{font-size:clamp(2.5rem,4.2vw,4.4rem);color:var(--blue);margin-bottom:.38em}a{color:inherit;text-decoration:none}.site-header{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 max(4vw,32px);position:relative;z-index:10;background:#fff}.brand{display:flex;align-items:center;gap:10px;color:var(--blue);line-height:1}.brand strong{font-size:22px;display:block;letter-spacing:.06em}.brand small{font-size:8px;letter-spacing:.16em;color:var(--green);font-weight:700;display:block;margin-top:4px}.brand-mark{border:2px solid var(--blue);box-shadow:inset 0 0 0 2px var(--lime);border-radius:50%;width:54px;height:54px;display:grid;place-items:center;color:var(--green);font-size:25px;overflow:hidden}.brand-mark svg{width:50px;height:50px;fill:none;stroke:var(--blue);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.brand-mark svg path:not(.sprig){fill:#fff}.brand-mark .sprig{stroke:var(--green)}.main-nav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:600}.main-nav a{position:relative}.main-nav a:not(.nav-cta)::after{content:"";height:2px;width:0;background:var(--green);position:absolute;left:0;bottom:-8px;transition:.2s}.main-nav a:hover::after,.main-nav .active::after{width:100%}.nav-cta,.button{background:var(--green);color:#fff;padding:12px 20px;border-radius:30px;font-weight:700;display:inline-block;transition:.2s}.nav-cta:hover,.button:hover{background:var(--blue);transform:translateY(-2px)}.menu-toggle{display:none;border:0;background:transparent;font-size:28px;color:var(--blue)}.hero{min-height:680px;padding:104px max(8vw,40px) 140px;overflow:hidden;position:relative;background:linear-gradient(112deg,#fff 0%,#fff 52%,#f4f8f1 100%)}.hero-copy{position:relative;z-index:3;max-width:750px}.eyebrow{color:var(--green);font-size:15px;font-weight:600;letter-spacing:.11em;margin-bottom:18px}.lede{font-size:clamp(1.2rem,2vw,1.75rem);color:#315272;margin-bottom:31px}.hero-actions{display:flex;align-items:center;gap:30px}.text-link{font-weight:700;color:var(--blue);display:inline-flex;gap:8px;align-items:center}.text-link span{font-size:22px;transition:.2s}.text-link:hover span{transform:translateX(4px)}.curve{position:absolute;border-radius:50%;pointer-events:none}.curve-a{width:720px;height:720px;right:-420px;top:-390px;border:58px solid var(--blue);border-left-color:transparent;border-bottom-color:transparent;transform:rotate(20deg)}.curve-b{width:695px;height:695px;right:-390px;top:-365px;border:15px solid var(--lime);border-left-color:transparent;border-bottom-color:transparent;transform:rotate(22deg)}.leaf-spray{position:absolute;font-size:190px;color:var(--green);opacity:.1;line-height:1;transform:rotate(-18deg)}.leaf-top{right:170px;top:70px}.hero-orb{position:absolute;width:340px;height:340px;border-radius:50%;right:11%;bottom:105px;background:var(--blue);display:grid;place-items:center;z-index:2;box-shadow:22px 22px 0 #e7f0dd}.orb-inner{height:255px;width:255px;border:2px solid var(--lime);border-radius:50%;display:grid;place-content:center;text-align:center;color:#fff;font-family:Oswald,sans-serif;font-size:38px;line-height:1.05;text-transform:uppercase}.orb-inner i{font-family:serif;font-size:28px;color:var(--lime);margin-top:12px}.value-strip{z-index:4;position:absolute;bottom:-51px;left:50%;transform:translateX(-50%);width:min(940px,86%);background:#fff;border-radius:25px;display:grid;grid-template-columns:repeat(3,1fr);box-shadow:0 8px 26px #153f5d1e;padding:25px}.value-strip div{display:flex;align-items:center;gap:15px;padding:3px 28px;border-right:1px solid #cdd3d0;font-family:Oswald,sans-serif;text-transform:uppercase;color:var(--blue);font-size:18px;line-height:1.15}.value-strip div:last-child{border:0}.value-strip b{border-radius:50%;background:var(--blue);color:white;width:46px;height:46px;display:grid;place-items:center;font-size:27px}.value-strip div:nth-child(2) b{background:var(--green)}.section-wrap{width:min(1160px,88%);margin:0 auto}.intro{padding:155px 0 100px}.section-kicker{font-family:"Playwrite AU SA",cursive;color:var(--green);font-size:22px;margin-bottom:6px}.intro-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:100px}.intro-grid p{font-size:17px;margin-bottom:21px}.commitment{margin-top:72px;border:2px solid #c8d9bc;border-radius:28px;background:#fff;position:relative;padding:74px 28px 31px;box-shadow:0 12px 24px #183b5910}.commitment-title{position:absolute;top:-30px;left:50%;transform:translateX(-50%);background:var(--blue);border-radius:9px;padding:12px 40px;color:#fff;display:flex;gap:12px;align-items:center;white-space:nowrap}.commitment-title h3{margin:0;font-size:25px}.round-icon{color:var(--lime);font-size:25px}.commitment-items{display:grid;grid-template-columns:repeat(5,1fr)}.commitment-items p{border-right:1px dashed #bbd69c;margin:0;padding:0 18px;font-size:14px;line-height:1.45}.commitment-items p:last-child{border:0}.commitment-items b{display:block;color:var(--blue);font-family:Oswald,sans-serif;font-size:19px;text-transform:uppercase}.trust-band{background:var(--green);padding:88px 0;position:relative;overflow:hidden;color:#fff}.trust-band::after{content:"";position:absolute;width:670px;height:370px;border:22px solid #a5d265;right:-330px;top:-230px;border-radius:50%;opacity:.8}.trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px;position:relative;z-index:1}.trust-grid h2{color:#fff}.light{color:#e2f3c9}.trust-grid p{font-size:17px}.leaf-mid{right:30px;bottom:-120px;color:#fff}.programme{padding:116px 0}.section-heading{display:flex;justify-content:space-between;gap:70px;align-items:end;margin-bottom:49px}.section-heading p{max-width:430px;margin:0}.service-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:70px}.service-cards article{background:#f5f8f3;padding:29px 15px;text-align:center;min-height:177px;border-radius:20px;display:grid;place-items:center;gap:8px;border-bottom:3px solid var(--lime);color:var(--blue);font-family:Oswald,sans-serif;text-transform:uppercase;font-size:17px}.service-cards i{border:2px solid var(--blue);height:57px;width:57px;border-radius:50%;font-size:31px;font-style:normal;display:grid;place-items:center;color:var(--green)}.phase-list{display:grid;gap:13px;max-width:1000px;margin:auto}.phase{display:grid;grid-template-columns:110px 1fr 140px;align-items:center;color:#fff;border-radius:65px 18px 18px 65px;overflow:hidden;min-height:113px;padding-right:30px}.phase.blue{background:var(--blue)}.phase.green{background:var(--green)}.phase-number{font-family:Oswald,sans-serif;font-size:42px;text-align:center;border-right:1px solid #ffffff66}.phase h3{font-size:39px;margin:2px 0;text-transform:uppercase}.phase p{margin:0;color:#e5f6c8;font-size:16px}.phase small{font-weight:700;text-transform:uppercase;letter-spacing:.08em}.phase>strong{justify-self:end;font-family:Oswald,sans-serif;font-size:35px}.phase>strong small{font-size:14px}.therapy{margin-top:72px;border:1px solid #bed7ab;border-radius:18px;overflow:hidden}.therapy h3{text-align:center;background:var(--blue);color:#fff;margin:0;padding:15px;font-size:22px}.therapy>div{padding:25px;display:grid;grid-template-columns:repeat(3,1fr);gap:15px;color:var(--blue);font-weight:600}.therapy span::before{content:"✣";color:var(--green);margin-right:8px}.fees{background:#f6faf3;position:relative;padding:112px 0;overflow:hidden;text-align:center}.fees-curve{width:800px;height:800px;left:-530px;bottom:-480px;border:70px solid var(--blue);border-right-color:transparent;border-top-color:transparent;transform:rotate(30deg)}.fees h2{margin-top:8px}.price-card{position:relative;z-index:1;max-width:840px;margin:38px auto 24px;border-radius:18px;overflow:hidden;background:white;box-shadow:0 7px 20px #153f5d14;border:1px solid #bed4e3}.price-card p{margin:0;background:var(--blue);color:#fff;padding:12px;font-size:24px}.price-card strong{display:flex;justify-content:space-around;align-items:center;color:var(--blue);font-size:31px;padding:22px}.price-card b{color:var(--green);font-size:47px}.price-card small{display:block;padding-bottom:16px;color:#537193;font-weight:700}.fee-columns{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:23px;text-align:left}.fee-columns article{background:#fff;border:2px solid #b4cf9a;border-radius:22px;padding:28px}.fee-columns h3{text-align:center;color:var(--green);font-size:27px}.fee-columns article+article h3{color:var(--blue)}.fee-columns ul{margin:0;padding:0;list-style:none}.fee-columns li{padding:12px 0;border-bottom:1px solid #d9e4ed;font-weight:600;display:grid;grid-template-columns:21px minmax(0,1fr);column-gap:11px;align-items:start}.fee-columns li:last-child{border:0}.fee-columns li::before{content:"✓";color:white;background:var(--green);border-radius:50%;display:inline-grid;place-items:center;width:21px;height:21px;margin:2px 0 0;font-size:12px}.fee-columns article+article li::before{content:"•";background:var(--blue)}.installment{position:relative;z-index:1;background:#fff;border-radius:24px;padding:30px;margin:34px auto 0;max-width:900px;box-shadow:0 7px 20px #153f5d10}.installment h3{color:var(--blue);font-size:28px;margin-bottom:4px}.installment>p{font-weight:600;color:var(--green);text-transform:uppercase}.installment>div{margin-top:18px}.installment span{display:flex;justify-content:space-between;text-align:left;padding:10px 15px;border-bottom:1px solid #d7e1ea;font-weight:600}.installment span:last-child{border:0}.installment b{background:var(--green);color:#fff;border-radius:9px;padding:1px 14px;min-width:105px;text-align:center}.contact{padding:100px 0;display:flex;justify-content:space-between;align-items:center}.contact h2{margin-bottom:10px}.contact>div:first-child>p:last-child{font-size:18px;max-width:570px}.contact-actions{display:grid;gap:13px}.contact-actions a{border:2px solid var(--blue);color:var(--blue);border-radius:28px;padding:12px 23px;font-weight:700;min-width:260px;text-align:center}.contact-actions a:hover{color:#fff;background:var(--blue)}footer{position:relative;background:var(--blue);padding:77px 7% 32px;color:#fff;overflow:hidden}.footer-curve{position:absolute;width:120%;height:90px;background:var(--paper);top:-55px;left:-10%;border-radius:0 0 50% 50%}.footer-content{position:relative;display:flex;justify-content:space-between;align-items:center;gap:24px}.footer-brand{color:#fff}.footer-brand .brand-mark{color:var(--lime);border-color:#fff}.footer-brand strong{font-size:19px}.footer-content>p{font-family:"Playwrite AU SA",cursive;color:var(--lime);font-size:18px;margin:0}.footer-content>div:last-child{display:flex;gap:20px;font-weight:600}.footer-content a:hover{color:var(--lime)}.blog-hero{padding:112px 8% 123px;min-height:460px;position:relative;overflow:hidden;background:linear-gradient(110deg,#fff 0%,#f1f7ec 100%)}.blog-hero>*:not(.curve):not(.leaf-spray){position:relative;z-index:1}.blog-hero h1{font-size:clamp(3.6rem,7.5vw,6.7rem);margin:.08em 0}.blog-hero>p:last-child{font-size:20px;color:#315272}.blog-list{padding:105px 0}.posts{display:grid;grid-template-columns:1fr 1fr;gap:28px}.posts article{background:#fff;border-radius:22px;padding:0 28px 27px;box-shadow:0 8px 27px #193e5d13}.posts .featured-post{grid-column:span 2;display:grid;grid-template-columns:1fr 1.2fr;padding:0;overflow:hidden}.featured-post>div:nth-child(2){padding:38px}.post-art{height:180px;margin:0 -28px 24px;border-radius:22px 22px 0 0;background:var(--blue);position:relative;overflow:hidden}.featured-post .post-art{height:auto;margin:0;border-radius:0}.post-art::before,.post-art::after{content:"";position:absolute;border-radius:50%;border:20px solid var(--lime);width:230px;height:230px;right:-100px;bottom:-150px}.post-art::after{border-color:#fff;width:260px;height:260px;right:-140px;bottom:-165px}.post-art span{position:absolute;z-index:1;font:700 70px Oswald;color:#ffffff36;left:25px;top:13px}.art-two{background:var(--green)}.art-three{background:#0b689e}.post-meta{color:var(--green);font:600 13px Oswald;text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px}.posts h3{color:var(--blue);font-size:28px;margin-bottom:12px}.posts p:not(.post-meta){font-size:15px}.blog-cta{background:var(--green);text-align:center;padding:95px 20px;color:#fff;position:relative;overflow:hidden}.blog-cta::before,.blog-cta::after{content:"";position:absolute;border-radius:50%;border:28px solid #b7d778;width:500px;height:500px;top:-360px}.blog-cta::before{left:-310px}.blog-cta::after{right:-310px}.blog-cta>*{position:relative;z-index:1}.blog-cta h2{color:#fff}.button-light{background:#fff;color:var(--blue)}
@media(max-width:820px){.site-header{height:76px;padding:0 22px}.brand strong{font-size:16px}.brand-mark{width:46px;height:46px}.main-nav{display:none}.main-nav.open{display:flex;position:absolute;top:76px;left:0;right:0;background:#fff;padding:24px;flex-direction:column;align-items:flex-start;box-shadow:0 9px 15px #0001}.menu-toggle{display:block}.hero{min-height:700px;padding:80px 7% 150px}.hero-orb{width:230px;height:230px;right:-42px;bottom:130px}.orb-inner{width:173px;height:173px;font-size:27px}.leaf-top{font-size:130px;right:45px;top:60px}.curve-a{right:-580px;top:-500px}.curve-b{right:-555px;top:-475px}.value-strip{padding:15px;width:92%;bottom:-72px}.value-strip div{padding:3px 8px;gap:8px;font-size:13px}.value-strip b{height:36px;width:36px;font-size:20px}.intro{padding:130px 0 75px}.intro-grid,.trust-grid,.section-heading{grid-template-columns:1fr;display:grid;gap:22px}.commitment-items{grid-template-columns:1fr 1fr}.commitment-items p{padding:12px;border-bottom:1px dashed #bbd69c}.service-cards{grid-template-columns:repeat(2,1fr)}.service-cards article:last-child{grid-column:span 2}.phase{grid-template-columns:72px 1fr 88px;min-height:94px}.phase-number{font-size:29px}.phase h3{font-size:30px}.phase p{font-size:13px}.phase>strong{font-size:27px}.therapy>div{grid-template-columns:1fr 1fr}.price-card strong{display:grid;gap:7px;font-size:27px}.price-card b{font-size:40px}.fee-columns,.contact{grid-template-columns:1fr;display:grid}.contact{gap:30px}.footer-content{flex-direction:column;text-align:center}.posts,.posts .featured-post{grid-template-columns:1fr}.posts .featured-post{grid-column:auto}.featured-post .post-art{height:210px}.blog-list{padding:75px 0}}
@media(max-width:480px){h1{font-size:3.75rem}.hero{min-height:620px}.hero-actions{gap:18px;flex-direction:column;align-items:flex-start}.value-strip div{font-size:11px}.value-strip b{display:none}.commitment{padding:66px 13px 18px}.commitment-title{padding:10px 20px}.commitment-title h3{font-size:20px}.commitment-items{grid-template-columns:1fr}.commitment-items p{border-right:0}.service-cards{grid-template-columns:1fr}.service-cards article:last-child{grid-column:auto}.phase{grid-template-columns:54px 1fr 68px;padding-right:13px}.phase h3{font-size:25px}.phase p{display:none}.therapy>div{grid-template-columns:1fr}.fee-columns article{padding:20px}.installment{padding:20px 12px}.installment span{font-size:13px}.installment b{min-width:80px;padding:1px 7px}.footer-content>div:last-child{gap:12px}.blog-hero{padding:85px 7% 95px}.posts article{padding-left:20px;padding-right:20px}.post-art{margin-left:-20px;margin-right:-20px}}

/* Supplied brochure artwork and a fully visible value panel. */
.brand-mark{width:62px;height:62px;border:0;border-radius:0;box-shadow:none;background:url('assets/logo-header.png') center/contain no-repeat}.brand-mark svg{display:none}
.hero{min-height:710px;padding-bottom:170px}.hero::after{content:"";position:absolute;right:0;top:0;width:min(48vw,620px);height:100%;background:url('assets/complete-side-shape.png') right top/contain no-repeat;pointer-events:none}.curve-a,.curve-b,.leaf-top{display:none}.hero-orb{bottom:145px}.value-strip{bottom:36px}.intro{padding-top:115px}
footer{background:var(--blue) url('assets/footer.png') center top/cover no-repeat;padding-top:122px}.footer-curve{display:none}
.trust-band{background-image:url('assets/leaves.png');background-position:right bottom;background-size:285px auto;background-repeat:no-repeat}
.blog-hero::after{content:"";position:absolute;right:0;top:0;width:310px;height:100%;background:url('assets/side-shape.png') right top/contain no-repeat;pointer-events:none}
@media(max-width:820px){.hero{min-height:730px;padding-bottom:175px}.hero::after{width:72vw;opacity:.8}.hero-orb{bottom:145px}.value-strip{bottom:30px}.brand-mark{width:52px;height:52px}}

/* Article imagery and a high-contrast footer mark. */
.footer-brand .brand-mark{background-color:transparent;filter:brightness(0) invert(1)}
.footer-brand strong,.footer-brand small{color:#fff}
.post-art{background:#f0f5ed}
.post-art img{display:block;width:100%;height:100%;object-fit:contain}
.post-art::before,.post-art::after{content:none}
.post-art span{color:#ffffff75;text-shadow:0 1px 12px #17385e66}

/* Local article pages */
.article-hero{position:relative;overflow:hidden;background:linear-gradient(120deg,#f4f8f1 0%,#fff 64%);padding:72px 0 0}.article-hero::after{content:"";position:absolute;right:-130px;top:-225px;width:480px;height:480px;border:54px solid var(--blue);border-radius:50%;opacity:.12}.article-hero .section-wrap{position:relative;z-index:1}.back-link{display:inline-flex;align-items:center;gap:8px;color:var(--blue);font-weight:700;margin-bottom:35px}.article-hero .eyebrow{margin-bottom:13px}.article-hero h1{max-width:940px;font-size:clamp(3rem,6vw,5.8rem);margin:0 0 22px}.article-intro{font-size:clamp(1.15rem,2vw,1.45rem);color:#315272;max-width:760px;margin-bottom:46px}.article-feature{width:min(100%,1040px);display:block;max-height:520px;object-fit:contain;object-position:center;border-radius:25px 25px 0 0;box-shadow:0 15px 35px #17385e1d}.article-body{width:min(790px,88%);margin:0 auto;padding:70px 0 96px}.article-body p{font-size:17px;line-height:1.8;margin-bottom:22px}.article-body h2{font-size:clamp(2rem,3.4vw,3rem);margin:54px 0 17px}.article-body h3{color:var(--blue);font-size:24px;margin:30px 0 11px}.article-body ul,.article-body ol{padding-left:24px;margin:0 0 25px}.article-body li{padding-left:5px;margin-bottom:9px}.article-callout{border-left:5px solid var(--green);border-radius:0 16px 16px 0;background:#f1f8ea;padding:25px 28px;margin:36px 0}.article-callout.blue{border-color:var(--blue);background:#eff6fa}.article-callout.warning{border-color:#e88728;background:#fff5e9}.article-callout p:last-child{margin-bottom:0}.article-steps{display:grid;gap:14px;margin:30px 0}.article-step{display:grid;grid-template-columns:48px 1fr;gap:18px;padding:21px;border:1px solid #dce9d2;border-radius:15px;background:#fff}.article-step b{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--blue);font:600 22px Oswald}.article-step h3{margin:3px 0 7px}.article-step p{margin:0;font-size:16px}.article-cta{margin-top:55px;padding:40px;text-align:center;background:var(--blue);color:#fff;border-radius:22px;position:relative;overflow:hidden}.article-cta::after{content:"";position:absolute;width:230px;height:230px;border:25px solid var(--lime);border-radius:50%;right:-125px;top:-120px}.article-cta>*{position:relative;z-index:1}.article-cta h2{color:#fff;font-size:34px;margin:0 0 12px}.article-cta p{max-width:590px;margin:0 auto 22px;font-size:16px}.article-cta .button{background:#fff;color:var(--blue)}
@media(max-width:820px){.article-hero{padding-top:48px}.article-body{padding-top:45px}.article-body p{font-size:16px}.article-cta{padding:33px 22px}.article-feature{border-radius:18px 18px 0 0}}

.service-cards article>i{color:var(--green)}
.service-cards article>i svg{display:block;width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* Double the footer brand lockup while keeping its mark and type in proportion. */
.footer-brand{gap:20px}
.footer-brand .brand-mark{width:124px;height:124px}
.footer-brand strong{font-size:38px}
.footer-brand small{font-size:16px}
@media(max-width:820px){.footer-brand{gap:16px}.footer-brand .brand-mark{width:104px;height:104px}.footer-brand strong{font-size:32px}.footer-brand small{font-size:13px}}

/* Keep every section readable and usable on small screens. */
@media(max-width:820px){
  .hero-tagline{line-height:1.28;margin-bottom:15px}
  .hero-tagline span{display:block}
  .site-header{padding-inline:18px;gap:12px}
  .hero{min-height:700px;padding:76px 6vw 190px}
  .hero-copy{max-width:100%}
  .hero-orb{width:190px;height:190px;right:4%;bottom:124px}
  .orb-inner{width:145px;height:145px;font-size:24px}
  .value-strip{width:92%;bottom:20px;padding:12px 8px;grid-template-columns:repeat(3,minmax(0,1fr))}
  .value-strip div{justify-content:center;text-align:center;border-right:1px solid #cdd3d0;padding:4px;gap:5px;font-size:12px}
  .value-strip b{width:30px;height:30px;font-size:18px;flex:0 0 30px}
  .intro{padding:100px 0 70px}
  .intro-grid{gap:20px}
  .commitment{margin-top:56px;padding:65px 16px 20px}
  .commitment-title{max-width:calc(100% - 24px);justify-content:center;white-space:normal;text-align:center;padding:10px 18px}
  .commitment-items{grid-template-columns:repeat(2,minmax(0,1fr))}
  .commitment-items p{padding:12px;border-right:1px dashed #bbd69c;border-bottom:1px dashed #bbd69c}
  .commitment-items p:nth-child(2n){border-right:0}
  .commitment-items p:last-child{grid-column:1/-1;border:0}
  .trust-band{padding:66px 0;background-size:190px auto}
  .programme{padding:76px 0}
  .section-heading{align-items:start;margin-bottom:32px}
  .service-cards{gap:10px;margin-bottom:42px}
  .phase-list{gap:12px}
  .phase{grid-template-columns:48px minmax(0,1fr) auto;gap:10px;padding:14px 16px 14px 0;border-radius:30px 16px 16px 30px;min-height:98px}
  .phase-number{font-size:28px}
  .phase h3{font-size:clamp(22px,5vw,30px)}
  .phase p{display:block;font-size:13px;line-height:1.35}
  .phase>strong{font-size:24px;white-space:nowrap}
  .therapy{margin-top:48px}
  .therapy>div{grid-template-columns:repeat(2,minmax(0,1fr));padding:20px}
  .fees{padding:76px 0}
  .price-card p{font-size:20px}
  .installment{margin-top:24px}
  .installment span{gap:12px;align-items:center}
  .contact{padding:70px 0}
  .contact-actions a{min-width:0}
  .blog-list{padding:72px 0}
  .posts .featured-post{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}
  .featured-post>div:nth-child(2){padding:25px}
  .article-hero{padding-top:42px}
  .article-hero h1{font-size:clamp(2.5rem,8vw,4rem);overflow-wrap:anywhere}
  .article-feature{width:100%;height:auto;max-height:none;object-fit:contain;border-radius:18px 18px 0 0}
  .article-body{width:min(790px,90%);padding:44px 0 70px}
  .article-step{grid-template-columns:42px minmax(0,1fr);gap:12px;padding:16px}
}
@media(max-width:600px){
  .site-header{height:72px;padding-inline:14px}
  .brand{gap:7px;min-width:0}
  .site-header .brand-mark{width:42px;height:42px;flex:0 0 42px}
  .site-header .brand strong{font-size:clamp(13px,4vw,16px)}
  .site-header .brand small{font-size:7px;letter-spacing:.1em}
  .menu-toggle{font-size:26px;padding:4px}
  .main-nav.open{top:72px}
  .hero{min-height:690px;padding:65px 6vw 190px}
  .hero h1{font-size:clamp(2.65rem,11vw,3.75rem)}
  .hero-orb{width:165px;height:165px;right:3%;bottom:132px}
  .orb-inner{width:128px;height:128px;font-size:21px}
  .value-strip{bottom:16px;width:94%;padding:9px 4px}
  .value-strip div{font-size:10px;line-height:1.15}
  .value-strip b{display:grid;width:25px;height:25px;flex-basis:25px;font-size:15px}
  .section-wrap{width:88%}
  .intro{padding:86px 0 58px}
  .intro-grid h2,.section-heading h2{font-size:clamp(2.1rem,9vw,3rem)}
  .commitment-items{grid-template-columns:1fr}
  .commitment-items p,.commitment-items p:nth-child(2n){padding:11px 8px;border-right:0;border-bottom:1px dashed #bbd69c}
  .commitment-items p:last-child{grid-column:auto;border:0}
  .trust-band{padding:55px 0;background-image:none}
  .trust-band::after{content:none}
  .trust-band .leaf-mid{display:none}
  .programme{padding:62px 0}
  .service-cards{grid-template-columns:1fr}
  .service-cards article:last-child{grid-column:auto}
  .service-cards article{min-height:140px}
  .phase{grid-template-columns:38px minmax(0,1fr) auto;gap:8px;padding-right:12px;min-height:94px}
  .phase-number{font-size:23px}
  .phase h3{font-size:22px}
  .phase p{font-size:11px}
  .phase>strong{font-size:20px}
  .phase>strong small{font-size:11px}
  .therapy>div{grid-template-columns:1fr;padding:18px}
  .fees{padding:62px 0}
  .price-card{margin:28px auto 20px}
  .price-card strong{display:grid;justify-content:center;gap:5px;font-size:22px;padding:18px 10px}
  .price-card b{font-size:36px}
  .fee-columns{gap:14px}
  .fee-columns article{padding:18px}
  .installment{padding:20px 15px}
  .installment>div{margin-top:12px}
  .installment span{align-items:flex-start;padding:11px 0;font-size:13px}
  .installment b{min-width:78px;flex:0 0 auto;padding:2px 7px;font-size:12px}
  .contact{padding:58px 0;gap:24px}
  .contact-actions a{width:100%;overflow-wrap:anywhere}
  .footer-brand{gap:10px}
  .footer-brand .brand-mark{width:64px;height:64px}
  .footer-brand strong{font-size:21px}
  .footer-brand small{font-size:9px;letter-spacing:.1em}
  .footer-content{gap:17px}
  .footer-content>div:last-child{flex-wrap:wrap;justify-content:center}
  footer{background-image:none;padding:45px 6% 30px}
  .blog-hero{min-height:380px;padding:78px 7% 86px}
  .blog-hero h1{font-size:clamp(3rem,12vw,4.5rem)}
  .blog-list{padding:58px 0}
  .section-heading{gap:16px;margin-bottom:26px}
  .posts,.posts .featured-post{grid-template-columns:minmax(0,1fr)}
  .posts .featured-post{grid-column:auto}
  .featured-post .post-art{height:210px}
  .featured-post>div:nth-child(2){padding:24px}
  .post-art{height:190px}
  .blog-cta{padding:70px 20px}
  .blog-cta h2{font-size:clamp(2rem,9vw,3rem)}
  .article-hero h1{font-size:clamp(2.25rem,10vw,3.3rem)}
  .article-intro{margin-bottom:28px}
  .article-body{width:88%;padding:38px 0 56px}
  .article-body h2{font-size:clamp(1.8rem,8vw,2.4rem);margin:40px 0 14px}
  .article-callout{padding:19px 18px;margin:28px 0}
  .article-step{grid-template-columns:36px minmax(0,1fr);gap:10px;padding:14px}
  .article-step b{width:36px;height:36px;font-size:18px}
  .article-cta{padding:30px 18px;margin-top:38px}
  .article-cta h2{font-size:28px}
}

/* Mobile contrast override for the trust panel and footer. */
@media(max-width:820px){
  .hero-tagline{font-size:clamp(7px,2.5vw,10px)!important;letter-spacing:.06em!important;white-space:nowrap;line-height:1.2!important;margin-bottom:15px}
  .hero-actions .text-link{background:var(--blue);color:#fff;padding:12px 20px;border-radius:30px;justify-content:center}
  .hero-actions .button,.hero-actions .text-link{min-height:48px;align-items:center;font-size:15px}
  .trust-band{background:var(--blue-deep)!important;color:#fff!important}
  .trust-band::before,.trust-band::after,.trust-band .leaf-mid{display:none!important;content:none!important}
  .trust-band p,.trust-band h2,.trust-band .eyebrow,.trust-band .light{color:#fff!important}
  footer{background:var(--blue-deep)!important;color:#fff!important;padding:42px 6% 30px!important}
  footer::before,footer::after,.footer-curve{display:none!important;content:none!important}
  .footer-content,.footer-content p,.footer-content a,.footer-brand,.footer-brand strong,.footer-brand small{color:#fff!important}
}

.hero-actions .text-link{background:var(--blue);color:#fff;padding:12px 20px;border-radius:30px;justify-content:center}
.hero-actions .button span{margin-left:.35em;font-size:1.15em;line-height:1}
.hero-actions .button,.hero-actions .text-link{border:1px solid #000;outline:1.5px solid #000;outline-offset:1.5px}
@media(min-width:821px){.hero-orb{bottom:125px}.value-strip{bottom:24px}}
@media(max-width:600px){
  .hero{min-height:700px}
  .hero::after{z-index:1}
  .hero-copy{position:static;max-width:100%}
  .hero-copy .eyebrow,.hero-copy h1{position:relative;z-index:3}
  .hero-actions{display:contents}
  .hero-tagline{font-size:clamp(9px,2.9vw,12px)!important}
  .hero h1{font-size:clamp(2.8rem,11.5vw,3.9rem)}
  .hero-orb{width:150px;height:150px;bottom:210px}
  .orb-inner{width:132px;height:132px;font-size:19px}
  .hero-actions .button,.hero-actions .text-link{position:absolute;left:6%;z-index:5;border:1px solid #000;outline:1.5px solid #000;outline-offset:1.5px}
  .hero-actions .button{bottom:261px}
  .hero-actions .button span{display:none}
  .hero-actions .text-link{bottom:160px}
  .hero-actions .text-link span{display:none}
  .value-strip{bottom:16px}
  .intro{padding-top:24px}
}
/* Make each blog card's full surface a single keyboard-accessible link. */
.posts article{position:relative;cursor:pointer}
.post-card-link{position:absolute;inset:0;z-index:2;border-radius:inherit}
.post-card-link:focus-visible{outline:3px solid var(--green);outline-offset:4px}
.posts article:not(.featured-post) .post-art{height:auto;aspect-ratio:3/2}
@media(min-width:821px){.hero{min-height:930px}.hero-orb{bottom:405px}.value-strip{bottom:100px}}
@media(max-width:820px){.hero-actions .button,.hero-actions .text-link{height:48px;min-height:48px;padding-top:0;padding-bottom:0;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;line-height:1}}

/* Use the intro's handwritten style for section lead-ins across the site. */
.eyebrow:not(.hero-tagline){font-family:"Playwrite AU SA",cursive;font-size:22px;font-weight:400;line-height:1.35;letter-spacing:0;text-transform:none}
.section-heading .eyebrow,.contact .eyebrow{font-family:"Playwrite AU SA",cursive;font-size:22px;font-weight:400;line-height:1.35;letter-spacing:0;text-transform:none}
.section-heading .eyebrow{margin-bottom:18px}
.blog-hero .eyebrow,.blog-list .section-heading .eyebrow{margin-bottom:18px}
.fees>.section-wrap>.eyebrow{font-family:Oswald,sans-serif;font-weight:600;line-height:1.05;letter-spacing:.11em;text-transform:uppercase;white-space:nowrap;font-size:clamp(12px,2vw,17px)}
.installment h3{font-size:clamp(18px,4.4vw,32px);white-space:nowrap}
.price-card>p{font-size:clamp(18px,4.4vw,32px)}
.installment-programme{display:block;margin:14px auto 8px;text-align:center;color:var(--blue);font-family:"DM Sans",sans-serif;font-size:clamp(16px,3vw,22px);font-weight:700;line-height:1.2;text-transform:uppercase;white-space:nowrap}
.installment-note{margin:0 auto;text-align:center;color:var(--green);font-size:clamp(11px,2.5vw,18px);font-weight:600;text-transform:uppercase;white-space:nowrap}
.blog-cta .button{border:1px solid #000;outline:1.5px solid #000;outline-offset:1.5px}
.blog-cta .eyebrow{color:#000!important}

.nav-cta{border:1px solid #000;outline:1.5px solid #000;outline-offset:1.5px}
