
:root{color-scheme:light;--royal:#4169E1;--royal-deep:#2F52C4;--royal-light:#6C8CF0;--coral:#FA5F55;--coral-ink:#C2362C;--coral-soft:#FFE8E4;--navy:#0B1230;--ink:#121936;--body:#3A4366;--slate:#5A6385;--mist:#EEF2FF;--mist-deep:#E1E8FF;--oat:#F7F1E8;--line:rgba(18,25,54,.09);--brand-line:rgba(65,105,225,.18);--r-sm:12px;--r-md:20px;--r-lg:28px;--r-xl:36px;--pill:999px;--space-section:clamp(4.5rem,3rem + 6vw,8rem);--container:1240px;--ease-out:cubic-bezier(.22,1,.36,1);--ease-state:cubic-bezier(.4,0,.2,1);--shadow-sm:0 1px 2px rgba(11,18,48,.035),0 4px 12px rgba(47,82,196,.045);--shadow-md:0 2px 5px rgba(11,18,48,.04),0 14px 32px -14px rgba(47,82,196,.18);--shadow-lg:0 4px 10px rgba(11,18,48,.045),0 28px 64px -24px rgba(47,82,196,.24);--shadow-coral:0 12px 30px -12px rgba(194,54,44,.42);--header-height:76px;--scroll-progress:0}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 18px);scrollbar-color:rgba(65,105,225,.5) var(--mist);scrollbar-width:thin;background:#fff}
body{margin:0;background:#fff;color:var(--ink);font-family:'Plus Jakarta Sans',Arial,sans-serif;font-size:16px;line-height:1.72;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-wrap:break-word}
body,button,input,select,textarea{touch-action:manipulation}
.skip-link{position:fixed;z-index:1000;top:12px;left:12px;transform:translateY(calc(-100% - 18px));padding:12px 16px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:var(--navy);color:#fff;box-shadow:var(--shadow-md);font-size:14px;font-weight:750;transition:transform .2s var(--ease-out)}.skip-link:focus{transform:translateY(0)}
::selection{background:rgba(250,95,85,.24);color:var(--navy)}
::-webkit-scrollbar{width:9px}::-webkit-scrollbar-track{background:var(--mist)}::-webkit-scrollbar-thumb{background:rgba(65,105,225,.42);border:2px solid var(--mist);border-radius:var(--pill)}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img,svg{display:block;max-width:100%}img{height:auto}svg{flex-shrink:0;stroke-linecap:round;stroke-linejoin:round}
h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:'Bricolage Grotesque','Arial',sans-serif;line-height:1.13;letter-spacing:-.035em;text-wrap:balance}p{max-width:70ch;text-wrap:pretty}a,button,input,select,textarea{ -webkit-tap-highlight-color:transparent}a,button{transition:color .2s var(--ease-state),background-color .2s var(--ease-state),border-color .2s var(--ease-state),transform .22s var(--ease-out),opacity .22s var(--ease-state)}
:focus-visible{outline:3px solid var(--royal);outline-offset:4px}button:disabled{cursor:not-allowed;opacity:.58}.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}
.container{width:min(var(--container),100%);margin-inline:auto;padding-inline:clamp(18px,3.4vw,34px);min-width:0}
section{position:relative;padding-block:var(--space-section);scroll-margin-top:calc(var(--header-height) + 16px);min-width:0}
section:not(.hero-section):not(.closing-cta){content-visibility:auto;contain-intrinsic-size:auto 900px}
.section-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(250px,.8fr);align-items:end;column-gap:clamp(28px,5vw,76px);row-gap:16px;margin:0 0 clamp(38px,5vw,60px);text-align:left;min-width:0}
.eyebrow{grid-column:1/-1;display:inline-flex;align-items:center;gap:11px;width:max-content;max-width:100%;color:var(--royal-deep);font-size:12px;font-weight:800;letter-spacing:.14em;line-height:1.4;text-transform:uppercase}
.eyebrow::before{content:"";width:22px;height:2px;flex:0 0 22px;border-radius:10px;background:var(--coral)}
.section-title{grid-column:1;margin:0;max-width:19ch;font-size:clamp(2rem,1.35rem + 2.6vw,3.25rem);font-weight:800;letter-spacing:-.04em;line-height:1.09;color:var(--navy);text-wrap:balance}
.section-title.dot::after{content:".";display:inline-block;color:var(--coral);transform-origin:bottom left}
.section-lead{grid-column:2;align-self:end;margin:0 0 3px;color:var(--body);font-size:clamp(1rem, .96rem + .2vw,1.125rem);line-height:1.75}
.button{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:13px 23px;border:1px solid transparent;border-radius:var(--pill);font-family:'Bricolage Grotesque','Arial',sans-serif;font-size:15px;font-weight:750;line-height:1.25;text-align:center;overflow:hidden;transform:translateZ(0)}
.button::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.3) 45%,transparent 70%);transform:translateX(-120%);opacity:0;transition:transform .7s var(--ease-out),opacity .2s}
.button:hover{transform:translateY(-2px)}.button:hover::after{transform:translateX(120%);opacity:.75}.button:active{transform:scale(.98)}.button svg{width:20px;height:20px}.button-primary{color:var(--navy);background:linear-gradient(135deg,#FF766B,var(--coral) 58%,#F65C53);box-shadow:var(--shadow-coral);border-color:rgba(194,54,44,.12)}.button-primary:hover{color:var(--navy);box-shadow:0 15px 34px -12px rgba(194,54,44,.48)}.button-secondary{border-color:rgba(18,25,54,.12);background:rgba(255,255,255,.82);color:var(--navy);box-shadow:var(--shadow-sm)}.button-secondary:hover{border-color:rgba(65,105,225,.38);background:white;color:var(--royal-deep)}.button-dark-outline{border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.075);color:#fff}.button-dark-outline:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.48);color:#fff}.button-compact{min-height:44px;padding:10px 16px;font-size:14px}.button-wide{width:100%}
/* Header */
.site-header{position:sticky;top:0;z-index:100;width:100%;height:var(--header-height);background:rgba(255,255,255,.82);border-bottom:1px solid rgba(18,25,54,.045);-webkit-backdrop-filter:blur(18px) saturate(145%);backdrop-filter:blur(18px) saturate(145%);transition:height .28s var(--ease-out),background-color .28s var(--ease-state),box-shadow .28s var(--ease-state),border-color .28s var(--ease-state)}
.site-header::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,var(--coral),var(--royal),var(--royal-light));transform:scaleX(var(--scroll-progress));transform-origin:left center;will-change:transform}
.site-header.is-scrolled{--header-height:64px;background:rgba(255,255,255,.91);border-color:rgba(65,105,225,.12);box-shadow:0 10px 34px rgba(11,18,48,.075)}
.site-header-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;width:min(var(--container),100%);height:100%;margin-inline:auto;padding-inline:clamp(16px,3.4vw,34px)}
.brand-lockup{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;flex:0 1 auto;min-width:0;border-radius:10px}
.brand-logo{width:auto;height:35px;max-width:100%;object-fit:contain;transition:transform .24s var(--ease-out)}.brand-lockup:hover .brand-logo{transform:translateY(-1px)}
.brand-descriptor{max-width:245px;color:var(--slate);font-size:12px;font-weight:650;line-height:1.15;letter-spacing:.045em;white-space:normal}
.desktop-nav{display:flex;align-items:center;gap:clamp(8px,1vw,14px);min-width:0}.nav-link{position:relative;display:inline-flex;align-items:center;min-height:44px;color:var(--body);font-size:14px;font-weight:650;white-space:nowrap}.nav-link::after,.footer-link::after{content:"";position:absolute;left:0;right:100%;bottom:7px;height:1.5px;background:var(--coral);transition:right .24s var(--ease-out)}.nav-link:hover,.nav-link.is-current{color:var(--royal-deep)}.nav-link:hover::after,.nav-link.is-current::after{right:0}.header-booking{display:flex;align-items:center;flex:0 0 auto}.menu-toggle{display:none;align-items:center;justify-content:center;width:46px;height:46px;border:1px solid var(--brand-line);border-radius:14px;background:rgba(255,255,255,.9);color:var(--navy)}.menu-icon{position:relative;display:block;width:24px;height:24px;flex:0 0 24px}.menu-icon-line{position:absolute;left:3px;right:3px;top:11px;height:2px;border-radius:999px;background:currentColor;transform-origin:center;transition:top .26s var(--ease-out),transform .26s var(--ease-out),opacity .16s var(--ease-state)}.menu-icon-line-top{top:5px}.menu-icon-line-middle{top:11px}.menu-icon-line-bottom{top:17px}.menu-toggle[aria-expanded="true"] .menu-icon-line-top{top:11px;transform:rotate(45deg)}.menu-toggle[aria-expanded="true"] .menu-icon-line-middle{opacity:0;transform:scaleX(.3)}.menu-toggle[aria-expanded="true"] .menu-icon-line-bottom{top:11px;transform:rotate(-45deg)}.mobile-menu{display:none}
/* Hero */
.hero-section{isolation:isolate;padding-block:clamp(50px,6.2vw,84px) clamp(72px,8vw,112px);overflow:hidden;background:radial-gradient(ellipse at 79% 15%,rgba(108,140,240,.16),transparent 31%),radial-gradient(ellipse at 8% 90%,rgba(250,95,85,.095),transparent 29%),linear-gradient(180deg,#F0F3FF 0%,#fff 90%)}
.hero-section::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.18;background-image:radial-gradient(rgba(65,105,225,.44) .7px,transparent .7px);background-size:22px 22px;mask-image:linear-gradient(120deg,transparent 7%,#000 55%,transparent 100%)}
.hero-section::after{content:"";position:absolute;z-index:-1;top:8%;right:-190px;width:520px;height:520px;border:1px solid rgba(65,105,225,.11);border-radius:50%;box-shadow:0 0 0 32px rgba(65,105,225,.035),0 0 0 70px rgba(65,105,225,.025),0 0 0 110px rgba(65,105,225,.018);pointer-events:none}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:center;gap:clamp(34px,5.6vw,80px);min-width:0}
.hero-copy{min-width:0}.hero-eyebrow{display:inline-flex;align-items:center;gap:10px;width:max-content;max-width:100%;padding:10px 15px;border:1px solid rgba(65,105,225,.15);border-radius:var(--pill);background:rgba(255,255,255,.78);box-shadow:var(--shadow-sm);color:var(--royal-deep);font-size:12px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.hero-eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 4px rgba(250,95,85,.12)}
.hero-title{max-width:12ch;margin:24px 0 22px;color:var(--navy);font-size:clamp(2.8rem,2rem + 3.8vw,4.75rem);font-weight:800;line-height:1.02;letter-spacing:-.055em}
.hero-title-prefix{display:block;max-width:100%;white-space:nowrap;font-size:clamp(1.5rem,2.9vw,2.65rem);font-weight:750;line-height:1.08;letter-spacing:-.055em}
.display-accent{display:inline;color:var(--royal-deep);font-style:normal;font-weight:800;letter-spacing:-.06em}.hero-underline{position:relative;display:inline-block;white-space:nowrap}.hero-underline svg{position:absolute;left:0;bottom:-.075em;width:100%;height:.15em;overflow:visible}.hero-underline path{fill:none;stroke:var(--coral);stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:260;stroke-dashoffset:260;animation:draw-underline .95s var(--ease-out) .72s forwards}
@keyframes draw-underline{to{stroke-dashoffset:0}}
.hero-lead{max-width:58ch;margin:0;color:var(--body);font-size:clamp(1.0625rem,1rem + .35vw,1.3125rem);line-height:1.7}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:26px}.hero-actions .button{min-height:56px;padding-inline:24px}.hero-note{display:flex;align-items:flex-start;gap:9px;margin:16px 0 0;color:var(--slate);font-size:14px;line-height:1.55}.hero-note::before{content:"";width:7px;height:7px;flex:0 0 7px;margin-top:8px;border-radius:50%;background:#2F855A;box-shadow:0 0 0 4px rgba(47,133,90,.1)}
.hero-art{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;padding:10px 18px 12px}.hero-portrait-wrap{position:relative;width:min(100%,440px);min-width:0}.hero-ring{position:absolute;inset:-18px -18px -14px;border:1px solid rgba(65,105,225,.26);border-radius:50%;pointer-events:none}.hero-ring::before,.hero-ring::after{content:"";position:absolute;border:1px solid rgba(65,105,225,.12);border-radius:50%;inset:18px}.hero-ring::after{inset:38px;border-style:dashed;border-color:rgba(65,105,225,.15)}.hero-ring{animation:ring-rotate 50s linear infinite}.hero-ring::marker{content:""}
@keyframes ring-rotate{to{transform:rotate(360deg)}}.hero-portrait-wrap::after{content:"";position:absolute;z-index:2;top:10%;right:1%;width:11px;height:11px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 7px rgba(250,95,85,.12);transform-origin:-190px 150px;animation:orbit-dot 18s linear infinite;pointer-events:none}
@keyframes orbit-dot{to{transform:rotate(360deg)}}
.hero-portrait-frame{position:relative;z-index:1;aspect-ratio:4/5;overflow:hidden;border:1px solid rgba(255,255,255,.9);border-radius:46% 46% 30px 30px / 31% 31% 30px 30px;background:var(--mist-deep);box-shadow:var(--shadow-lg),0 0 0 8px rgba(255,255,255,.54);clip-path:inset(0 0 0 0 round 46% 46% 30px 30px / 31% 31% 30px 30px)}.portrait-image{display:block;width:100%;height:100%;object-fit:cover;object-position:center 43%}.hero-portrait-image{transform:translateY(var(--portrait-y,0px)) scale(1.04);transform-origin:center;transition:transform .7s var(--ease-out)}.trust-chip{position:absolute;z-index:4;display:flex;align-items:center;gap:10px;max-width:205px;padding:11px 13px;border:1px solid rgba(18,25,54,.075);border-radius:16px;background:rgba(255,255,255,.87);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--ink)}.trust-chip-hcpc{top:17%;left:-62px}.trust-chip-ng{right:-54px;bottom:18%}.trust-chip svg{width:31px;height:31px;padding:7px;border-radius:11px;background:var(--mist);color:var(--royal-deep)}.trust-chip-line{margin:0;font-size:12px;line-height:1.45}.trust-chip-line:first-of-type{font-weight:800;color:var(--ink)}.trust-chip-line:last-of-type{color:var(--slate)}
.credential-bar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin-top:clamp(54px,7vw,86px);overflow:hidden;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.91);box-shadow:var(--shadow-md)}.credential-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:0;padding:22px 12px;text-align:center}.credential-item:not(:last-child)::after{content:"";position:absolute;top:23%;right:0;bottom:23%;width:1px;background:rgba(18,25,54,.09)}.credential-title{color:var(--ink);font-family:'Bricolage Grotesque',Arial,sans-serif;font-size:14px;font-weight:800;line-height:1.35}.credential-meta{color:var(--slate);font-size:13px;line-height:1.4}
/* Why MQ — asymmetric bento */
.why-section{background:#fff}.why-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px}.why-card{position:relative;display:flex;flex-direction:column;justify-content:space-between;grid-column:span 4;min-width:0;min-height:280px;padding:clamp(23px,2.6vw,36px);overflow:hidden;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface,#fff);box-shadow:var(--shadow-sm);isolation:isolate;transition:transform .28s var(--ease-out),border-color .25s var(--ease-state),box-shadow .25s var(--ease-state)}.why-card:nth-child(1){grid-column:span 7;--surface:var(--mist)}.why-card:nth-child(2){grid-column:span 5;--surface:var(--oat)}.why-card:nth-child(3){grid-column:span 4}.why-card:nth-child(4){grid-column:span 4;--surface:var(--mist-deep)}.why-card:nth-child(5){grid-column:span 4;--surface:#FFF3EF}.why-card::before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;background:radial-gradient(280px circle at var(--spot-x,50%) var(--spot-y,50%),rgba(108,140,240,.17),transparent 64%);transition:opacity .25s}.why-card:hover{transform:translateY(-4px);border-color:rgba(65,105,225,.28);box-shadow:var(--shadow-md)}.why-card:hover::before{opacity:1}.why-card-dark{background:var(--navy);color:#fff;border-color:rgba(255,255,255,.12)}.why-card-dark::after{content:"";position:absolute;inset:0;z-index:-2;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cpath d='M48 0H0V48' fill='none' stroke='%23fff' stroke-width='1'/%3E%3C/svg%3E");background-size:24px 24px}.why-card-main{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.icon-tile{display:flex;align-items:center;justify-content:center;width:54px;height:54px;flex:0 0 54px;border:1px solid rgba(65,105,225,.09);border-radius:16px;background:#fff;color:var(--royal-deep);box-shadow:var(--shadow-sm);transition:background-color .22s var(--ease-state),color .22s var(--ease-state),transform .22s var(--ease-out)}.icon-tile svg{width:25px;height:25px}.why-card:hover .icon-tile,.service-card:hover .icon-tile{background:var(--royal);color:white;transform:translateY(-1px)}.why-card-dark .icon-tile{background:rgba(255,255,255,.1);color:var(--mist-deep);border-color:rgba(255,255,255,.07)}.card-title{margin:0;color:var(--navy);font-size:clamp(1.25rem,1.1rem + .6vw,1.625rem);font-weight:750;line-height:1.2}.why-card-dark .card-title{color:#fff}.card-copy{margin:0;max-width:58ch;color:var(--body);font-size:16px;line-height:1.72}.why-card-dark .card-copy{color:rgba(238,242,255,.84)}.card-kicker{margin-top:22px;padding-top:15px;border-top:1px solid rgba(18,25,54,.1);color:var(--royal-deep);font-size:12px;font-weight:800;letter-spacing:.1em;line-height:1.45;text-transform:uppercase}.why-card:nth-child(2) .card-kicker,.why-card:nth-child(5) .card-kicker{color:var(--coral-ink)}.why-card-dark .card-kicker{border-color:rgba(255,255,255,.13);color:var(--mist-deep)}
/* Audience tabs */
.tabs-section{background:linear-gradient(180deg,#F4F6FF 0%,var(--mist) 100%);border-block:1px solid rgba(65,105,225,.1)}.tabs-section .container{max-width:1120px}.tabs-head{grid-template-columns:1fr;justify-items:center;text-align:center;margin-bottom:30px}.tabs-head .eyebrow,.tabs-head .section-title,.tabs-head .section-lead{grid-column:1}.tabs-head .section-title{max-width:22ch;text-align:center}.tabs-head .section-lead{max-width:56ch;text-align:center}.tabs-head .eyebrow{justify-self:center}.tab-list{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;width:min(100%,850px);margin:0 auto 26px;padding:5px;border:1px solid rgba(65,105,225,.16);border-radius:18px;background:rgba(255,255,255,.8);box-shadow:var(--shadow-sm)}.tab-indicator{position:absolute;z-index:0;top:6px;left:6px;width:0;height:0;border-radius:13px;background:var(--navy);box-shadow:0 5px 16px rgba(11,18,48,.16);pointer-events:none;transition:left .32s var(--ease-out),top .32s var(--ease-out),width .32s var(--ease-out),height .32s var(--ease-out)}.tab-btn{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;min-width:0;min-height:48px;padding:11px 12px;border:1px solid transparent;border-radius:13px;background:transparent;color:var(--body);font-family:'Bricolage Grotesque',Arial,sans-serif;font-size:14px;font-weight:750;line-height:1.25;text-align:center}.tab-btn:hover:not([aria-selected="true"]){background:transparent;color:var(--royal-deep)}.tab-btn[aria-selected="true"],.tab-btn[aria-selected="true"]:hover{background:transparent;color:white}.tab-stage{position:relative;overflow:hidden;border:1px solid rgba(65,105,225,.11);border-radius:var(--r-xl);background:#fff;box-shadow:var(--shadow-lg)}.tab-panel{position:relative;display:grid;grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);grid-template-areas:"copy visual" "action visual";align-items:center;column-gap:clamp(26px,4vw,48px);row-gap:24px;min-width:0;padding:clamp(24px,4.2vw,48px);animation:panel-enter .36s var(--ease-out) both}.tab-panel.is-hidden{display:none}.tab-copy{grid-area:copy;min-width:0}.panel-title{margin:0 0 14px;color:var(--navy);font-size:clamp(1.55rem,1.32rem + .75vw,2rem);line-height:1.2}.panel-copy{margin:0 0 12px;color:var(--body);font-size:16px;line-height:1.72}.tab-visual{position:relative;grid-area:visual;display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;aspect-ratio:4/3;overflow:hidden;border-radius:22px;background:var(--mist)}.tab-visual::before{content:"";position:absolute;inset:0;z-index:1;border:1px solid rgba(18,25,54,.05);border-radius:inherit;pointer-events:none}.tab-illustration{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .65s var(--ease-out)}.tab-panel:hover .tab-illustration{transform:scale(1.018)}.tab-action{grid-area:action;align-self:start;min-width:0}.tab-action .button{max-width:100%}@keyframes panel-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
/* Services */
.services-section{background:#fff}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:18px}.service-card{display:flex;flex-direction:column;justify-content:space-between;min-width:0;min-height:100%;padding:clamp(22px,2.4vw,30px);border:1px solid rgba(65,105,225,.14);border-radius:24px;background:#fff;box-shadow:var(--shadow-sm);transition:transform .26s var(--ease-out),border-color .24s var(--ease-state),box-shadow .24s var(--ease-state)}.service-card:hover{transform:translateY(-4px);border-color:rgba(65,105,225,.48);box-shadow:var(--shadow-md)}.service-card-main{display:flex;flex-direction:column;align-items:flex-start;gap:13px;min-width:0}.service-card .icon-tile{width:55px;height:55px;margin-bottom:3px;border-radius:16px;background:rgba(65,105,225,.095);box-shadow:none}.service-title{margin:0;color:var(--navy);font-size:clamp(1.25rem,1.1rem + .6vw,1.625rem);line-height:1.2}.service-description{margin:0;color:var(--body);font-size:16px;line-height:1.68}.condition-list{display:flex;flex-wrap:wrap;gap:7px;padding-top:4px}.condition-chip{display:inline-flex;align-items:center;min-height:27px;padding:5px 9px;border:1px solid rgba(65,105,225,.13);border-radius:9px;background:#F8FAFF;color:var(--body);font-size:13px;line-height:1.3}.expect-wrap{width:100%;padding-top:7px}.expect-toggle{display:flex;align-items:center;justify-content:flex-start;gap:8px;min-height:44px;padding:8px 0;border:0;background:transparent;color:var(--royal-deep);font-size:14px;font-weight:800;text-align:left}.expect-toggle svg{width:17px;height:17px;transition:transform .25s var(--ease-out)}.expect-toggle[aria-expanded="true"] svg{transform:rotate(180deg)}.expect-content{display:block;opacity:1;border-radius:12px;background:#F6F8FF;color:var(--body);font-size:14px;line-height:1.65}.expect-content-inner{min-height:0;overflow:visible;padding:12px 13px}html.js .expect-content{display:grid;grid-template-rows:0fr;opacity:0;overflow:hidden;transition:grid-template-rows .34s var(--ease-out),opacity .25s var(--ease-state)}html.js .expect-content.is-open{grid-template-rows:1fr;opacity:1;margin-top:5px;border:1px solid rgba(65,105,225,.13)}html.js .expect-content-inner{overflow:hidden;padding-block:0}html.js .expect-content.is-open .expect-content-inner{padding-block:12px}.service-footer{display:flex;align-items:flex-end;min-height:52px;margin-top:22px;padding-top:17px;border-top:1px solid var(--line)}.service-link{display:flex;align-items:center;gap:8px;min-height:44px;color:var(--navy);font-family:'Bricolage Grotesque',Arial,sans-serif;font-size:14px;font-weight:800}.service-link span{min-width:0}.service-link svg{width:16px;height:16px;color:var(--royal-deep);transition:transform .2s var(--ease-out)}.service-link:hover{color:var(--royal-deep)}.service-link:hover svg{transform:translateX(3px)}.service-card-featured{background:var(--oat);border-color:rgba(18,25,54,.06)}.service-card-featured .icon-tile{background:#fff;color:var(--coral-ink)}
/* Process timeline */
.process-section{position:relative;overflow:hidden;background:radial-gradient(ellipse at 7% 10%,rgba(65,105,225,.28),transparent 34%),radial-gradient(ellipse at 94% 92%,rgba(250,95,85,.085),transparent 30%),var(--navy);color:#fff}.process-section::before,.site-footer::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cpath d='M48 0H0V48' fill='none' stroke='%23fff' stroke-width='1'/%3E%3C/svg%3E");background-size:32px 32px}.process-section>.container{position:relative;z-index:1}.process-section .section-title{color:#fff}.process-section .section-lead{color:rgba(238,242,255,.78)}.process-section .eyebrow{color:var(--mist-deep)}.timeline-grid{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;--timeline-progress:0}.timeline-grid::before,.timeline-grid::after{content:"";position:absolute;z-index:0;top:34px;left:9%;right:9%;height:2px;border-radius:2px}.timeline-grid::before{background:rgba(108,140,240,.3)}.timeline-grid::after{right:auto;width:82%;background:linear-gradient(90deg,var(--coral),var(--royal-light));transform:scaleX(var(--timeline-progress));transform-origin:left;transition:transform .1s linear}.timeline-step{position:relative;z-index:1;min-width:0;margin-top:80px;padding:25px 23px 27px;border:1px solid rgba(255,255,255,.13);border-radius:23px;background:rgba(255,255,255,.055);box-shadow:inset 0 1px 0 rgba(255,255,255,.04);transition:transform .25s var(--ease-out),border-color .25s,background-color .25s}.timeline-step:hover{transform:translateY(-3px);border-color:rgba(108,140,240,.42);background:rgba(255,255,255,.075)}.timeline-node{position:absolute;top:-63px;left:50%;display:flex;align-items:center;justify-content:center;width:54px;height:54px;transform:translateX(-50%);border:1px solid rgba(255,255,255,.24);border-radius:50%;background:var(--navy);color:var(--mist-deep);box-shadow:0 0 0 7px rgba(108,140,240,.075);font-family:'Bricolage Grotesque',Arial,sans-serif;font-size:14px;font-weight:850;transition:background-color .28s,color .28s,box-shadow .28s,border-color .28s}.timeline-step.is-reached .timeline-node{background:var(--coral);border-color:var(--coral);color:var(--navy);box-shadow:0 0 0 7px rgba(250,95,85,.13),0 0 0 1px rgba(250,95,85,.2)}.timeline-step:nth-child(even).is-reached .timeline-node{background:var(--royal);border-color:var(--royal);color:#fff;box-shadow:0 0 0 7px rgba(108,140,240,.13)}.timeline-copy{display:flex;flex-direction:column;gap:11px}.step-title{margin:0;color:#fff;font-size:clamp(1.25rem,1.1rem + .45vw,1.55rem);line-height:1.22}.step-copy{margin:0;color:rgba(238,242,255,.82);font-size:15px;line-height:1.7}
/* About — warm editorial layout */
.about-section{background:var(--oat);color:var(--ink)}.about-layout{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:center;gap:clamp(48px,7vw,100px)}.about-portrait-col{min-width:0}.about-portrait-wrap{position:relative;width:min(100%,440px);margin-inline:auto;padding:8px 8px 0}.about-photo-glow{position:absolute;inset:3% -5% 14%;z-index:0;border-radius:36px;background:radial-gradient(ellipse,rgba(65,105,225,.2),transparent 72%);filter:none}.about-photo-frame{position:relative;z-index:1;aspect-ratio:4/5;overflow:hidden;border:1px solid rgba(255,255,255,.9);border-radius:28px;background:#E6DCCE;box-shadow:var(--shadow-lg)}.about-portrait-image{object-position:center 40%}.about-photo-caption{position:absolute;inset:auto 0 0;padding:30px 23px 20px;background:linear-gradient(180deg,transparent 0%,rgba(11,18,48,.12) 14%,rgba(11,18,48,.88) 100%);color:white}.about-photo-caption p:first-child{margin:0 0 3px;color:#fff;font-family:'Bricolage Grotesque',Arial,sans-serif;font-size:18px;font-weight:800;line-height:1.3}.about-photo-caption p:last-child{margin:0;color:rgba(238,242,255,.88);font-size:14px;line-height:1.5}.about-pull-quote{position:relative;z-index:2;width:min(270px,82%);margin:-18px -8px 0 auto;padding:17px 20px;border:1px solid rgba(194,54,44,.1);border-radius:18px;background:var(--coral-soft);color:var(--coral-ink);box-shadow:var(--shadow-md);font-family:'Bricolage Grotesque',Arial,sans-serif;font-size:clamp(1.35rem,1.2rem + .45vw,1.65rem);font-style:normal;font-weight:800;line-height:1.25;letter-spacing:-.03em}.about-copy{display:flex;flex-direction:column;gap:25px;min-width:0}.about-heading{display:flex;flex-direction:column;align-items:flex-start;gap:13px}.about-heading .eyebrow{color:var(--royal-deep)}.about-heading .section-title{max-width:16ch}.about-prose{display:flex;flex-direction:column;gap:15px}.about-paragraph{margin:0;color:var(--body);font-size:16px;line-height:1.78}.about-credentials{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.about-credential{display:flex;flex-direction:column;justify-content:center;gap:6px;min-width:0;padding:15px 11px;border:1px solid rgba(18,25,54,.08);border-radius:15px;background:rgba(255,255,255,.86);box-shadow:var(--shadow-sm);text-align:center}.about-credential-title{color:var(--ink);font-size:14px;font-weight:800;line-height:1.35}.about-credential-meta{color:var(--slate);font-size:12px;line-height:1.4}.about-note-row{padding-top:19px;border-top:1px solid rgba(18,25,54,.12)}.hcpc-note{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;max-width:480px;margin:0;padding:15px 17px;border:1px solid rgba(65,105,225,.17);border-radius:15px;background:rgba(255,255,255,.7);box-shadow:var(--shadow-sm);color:var(--body);font-size:14px;line-height:1.6}.hcpc-note-icon{width:19px;height:19px;color:var(--royal-deep)}.hcpc-note strong{color:var(--royal-deep)}
/* Where We Visit — citywide home-visit panel */
.areas-section{background:var(--mist);}
.areas-panel{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr);align-items:center;gap:clamp(28px,5vw,66px);padding:clamp(26px,5vw,62px);overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:var(--r-xl);background:var(--navy);color:#fff;box-shadow:var(--shadow-lg);}
.areas-panel::before{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cpath d='M48 0H0V48' fill='none' stroke='%23fff' stroke-width='1'/%3E%3C/svg%3E");background-size:32px 32px;}
.areas-panel::after{content:"";position:absolute;inset:-18% -10% auto auto;width:min(66%,540px);aspect-ratio:1;z-index:-1;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(108,140,240,.23),transparent 68%);}
.areas-copy{position:relative;z-index:1;min-width:0;}
.areas-overline{margin:0 0 5px;color:var(--mist-deep);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;}
.areas-display{margin:0 0 22px;color:#fff;font-family:'Bricolage Grotesque','Arial',sans-serif;font-size:clamp(3.5rem,7.6vw,6.3rem);font-weight:800;line-height:.98;letter-spacing:-.065em;}
.areas-display span{color:var(--coral);}
.areas-points{display:grid;gap:13px;margin:0 0 25px;}
.areas-point{display:flex;align-items:center;gap:13px;min-width:0;}
.areas-point .icon-tile{width:46px;height:46px;flex:0 0 46px;border-color:rgba(255,255,255,.13);border-radius:14px;background:rgba(255,255,255,.09);color:var(--mist-deep);box-shadow:none;}
.areas-point .icon-tile svg{width:22px;height:22px;}
.areas-point>span:last-child{display:grid;gap:2px;min-width:0;}
.areas-point strong{color:#fff;font-size:15px;font-weight:800;line-height:1.4;}
.areas-point small{color:rgba(238,242,255,.72);font-size:13px;line-height:1.45;}
.areas-configured{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 23px;}
.areas-configured[hidden]{display:none;}
.areas-configured .condition-chip{border-color:rgba(238,242,255,.18);background:rgba(255,255,255,.08);color:#fff;}
.area-check{padding-top:20px;border-top:1px solid rgba(238,242,255,.16);}
.area-check-label{display:block;margin:0 0 9px;color:#fff;font-size:14px;font-weight:800;}
.area-check-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;min-width:0;}
.area-check-controls .form-control{min-width:0;min-height:52px;border-color:rgba(238,242,255,.2);background:rgba(255,255,255,.96);}
.area-check-button{min-height:52px;white-space:nowrap;}
.area-check-button svg{width:18px;height:18px;}
.area-check-help{margin:8px 0 0;color:rgba(238,242,255,.65);font-size:12px;line-height:1.5;}
.areas-visual{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;min-height:330px;aspect-ratio:1/1;}
.areas-art-svg{display:block;width:min(100%,460px);height:auto;overflow:visible;}
.areas-orbit{transform-box:fill-box;transform-origin:center;animation:areas-orbit 48s linear infinite;}
@keyframes areas-orbit{to{transform:rotate(360deg);}}
.areas-pin-pulse{transform-box:fill-box;transform-origin:center;animation:areas-pin-pulse 3.2s var(--ease-state) infinite;}
@keyframes areas-pin-pulse{0%,100%{opacity:.35;transform:scale(.88);}50%{opacity:.85;transform:scale(1.08);}}
.areas-pin{transform-origin:center;}
.areas-glass-chip{position:absolute;right:0;bottom:9%;display:flex;align-items:center;gap:8px;max-width:100%;padding:12px 16px;border:1px solid rgba(255,255,255,.18);border-radius:16px;background:rgba(255,255,255,.1);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:#fff;font-family:'Bricolage Grotesque','Arial',sans-serif;font-size:14px;font-weight:750;white-space:nowrap;}
.areas-chip-dot{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 4px rgba(250,95,85,.14);}
/* Patient stories — conversational message bubbles */
.stories-section{background:var(--mist);}
.stories-head{margin-bottom:clamp(30px,4vw,48px);}
.stories-head .section-title{max-width:22ch;}
.stories-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:stretch;gap:18px;min-width:0;}
.story-card{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:flex-start;min-width:0;min-height:100%;padding:clamp(23px,3vw,34px);overflow:hidden;border:1px solid rgba(65,105,225,.17);border-radius:var(--r-lg) var(--r-lg) var(--r-lg) 9px;background:#fff;box-shadow:var(--shadow-md);transition:transform .28s var(--ease-out),border-color .25s var(--ease-state),box-shadow .25s var(--ease-state);}
.story-card::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:0;background:radial-gradient(280px circle at var(--spot-x,50%) var(--spot-y,50%),rgba(108,140,240,.17),transparent 66%);transition:opacity .25s var(--ease-state);}
.story-card:hover{transform:translateY(-4px);border-color:rgba(65,105,225,.34);box-shadow:var(--shadow-lg);}
.story-card:hover::before{opacity:1;}
.story-card-featured{grid-column:span 7;background:var(--navy);border-color:rgba(255,255,255,.13);color:#fff;}
.story-card-featured::before{background:radial-gradient(320px circle at var(--spot-x,50%) var(--spot-y,50%),rgba(108,140,240,.24),transparent 66%);}
.story-side-stack{grid-column:span 5;display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:18px;min-width:0;}
.story-quote-mark{height:40px;margin:-4px 0 13px;color:var(--coral);font-family:'Bricolage Grotesque','Arial',sans-serif;font-size:clamp(3.5rem,5vw,5rem);font-weight:800;line-height:1;}
.story-quote{width:100%;max-width:none;flex:1;margin:0 0 25px;color:var(--navy);font-size:clamp(1rem,.94rem + .27vw,1.125rem);line-height:1.8;overflow-wrap:anywhere;}
.story-card-featured .story-quote{color:#fff;font-family:'Bricolage Grotesque','Arial',sans-serif;font-size:clamp(1.25rem,1.12rem + .7vw,1.8rem);font-weight:650;line-height:1.58;letter-spacing:-.025em;}
.story-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;width:100%;margin-top:auto;padding-top:17px;border-top:1px solid rgba(65,105,225,.14);}
.story-card-featured .story-footer{border-top-color:rgba(238,242,255,.16);}
.story-source{color:var(--slate);font-size:12px;font-weight:800;letter-spacing:.04em;}
.story-card-featured .story-source{color:rgba(238,242,255,.72);}
.story-footer .condition-chip{max-width:100%;white-space:normal;}
@media (max-width:899px){
  .areas-panel{grid-template-columns:minmax(0,1fr);gap:10px;padding:clamp(24px,4.5vw,42px);}
  .areas-visual{order:-1;width:min(100%,430px);min-height:0;aspect-ratio:1.15/1;margin:0 auto;}
  .areas-glass-chip{right:2%;bottom:3%;}
  .stories-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
  .story-card-featured{grid-column:1/-1;}
  .story-side-stack{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;gap:14px;}
}
@media (max-width:767px){
  .areas-panel{gap:6px;padding:22px;border-radius:var(--r-lg);}
  .areas-visual{width:min(100%,330px);aspect-ratio:1.1/1;margin-bottom:4px;}
  .areas-glass-chip{right:-1%;bottom:4%;padding:10px 12px;font-size:12px;}
  .areas-display{font-size:clamp(3.5rem,15vw,5rem);}
  .areas-point strong{font-size:15px;}
  .areas-point small{font-size:13px;}
  .story-side-stack{grid-template-columns:minmax(0,1fr);}
  .story-quote{font-size:17px;line-height:1.75;}
  .story-card-featured .story-quote{font-size:clamp(1.1rem,4.7vw,1.35rem);}
}
@media (max-width:480px){
  .areas-panel{padding:18px;}
  .area-check-controls{grid-template-columns:minmax(0,1fr);}
  .area-check-controls .form-control,.area-check-button{width:100%;}
  .area-check-button{white-space:normal;}
  .areas-visual{width:100%;}
  .areas-glass-chip{right:0;bottom:0;}
  .stories-grid{grid-template-columns:minmax(0,1fr);}
  .story-card-featured,.story-side-stack{grid-column:1/-1;}
  .story-card{padding:22px;border-radius:22px 22px 22px 8px;}
  .story-footer{align-items:flex-start;}
}
@media (hover:hover) and (pointer:fine){.story-card:hover{transform:translateY(-4px);}}
@media (hover:none){.story-card:hover{transform:none;}}
@media (prefers-reduced-motion:reduce){
  .areas-orbit,.areas-pin-pulse{animation:none;}
  .story-card,.story-card::before{transition:none;}
  .story-card:hover{transform:none;}
}
/* FAQ */
.faq-section{background:#fff}.faq-layout{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1.25fr);align-items:start;gap:clamp(38px,6vw,84px)}.faq-intro{position:sticky;top:calc(var(--header-height) + 42px);display:flex;flex-direction:column;align-items:flex-start;gap:17px;margin:0}.faq-intro .section-title{max-width:11ch}.faq-intro .section-lead{max-width:36ch}.faq-list{display:grid;gap:12px;min-width:0}.faq-item{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow-sm);transition:border-color .24s,background-color .24s,box-shadow .24s}.faq-item.is-open{border-color:rgba(65,105,225,.3);background:#F8FAFF;box-shadow:var(--shadow-md)}.faq-question{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:68px;padding:18px 20px;border:0;background:transparent;color:var(--navy);font-family:'Bricolage Grotesque',Arial,sans-serif;font-size:clamp(1rem,.96rem + .2vw,1.125rem);font-weight:750;line-height:1.42;text-align:left}.faq-question-text{display:flex;align-items:center;gap:13px;min-width:0}.faq-number{display:inline-flex;align-items:center;justify-content:center;flex:0 0 31px;width:31px;height:31px;border-radius:10px;background:var(--mist);color:var(--royal-deep);font-size:12px;font-weight:850;letter-spacing:0}.faq-toggle-icon{display:flex;align-items:center;justify-content:center;flex:0 0 32px;width:32px;height:32px;padding:7px;border-radius:50%;background:var(--mist);color:var(--royal-deep);transition:background .24s,color .24s}.faq-item.is-open .faq-toggle-icon{background:var(--navy);color:white}.faq-toggle-icon .icon-vertical{transform-origin:center;transition:transform .22s var(--ease-out),opacity .22s}.faq-item.is-open .faq-toggle-icon .icon-vertical{transform:scaleY(0);opacity:0}.faq-body{display:block;opacity:1;border-top:0}.faq-body-inner{min-height:0;overflow:visible;padding:17px 20px 22px;color:var(--body);font-size:16px;line-height:1.75}html.js .faq-body{display:grid;grid-template-rows:0fr;opacity:0;overflow:hidden;transition:grid-template-rows .36s var(--ease-out),opacity .25s var(--ease-state);border-top:1px solid transparent}html.js .faq-body.is-open{grid-template-rows:1fr;opacity:1;border-top-color:rgba(65,105,225,.12)}html.js .faq-body-inner{overflow:hidden;padding-block:0}html.js .faq-body.is-open .faq-body-inner{padding-block:17px 22px}
/* Contact and booking form */
.contact-section{background:linear-gradient(180deg,#F2F5FF 0%,#F7F8FF 100%);border-top:1px solid rgba(65,105,225,.1)}.contact-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:stretch;gap:22px}.contact-card,.booking-card{min-width:0;border-radius:var(--r-lg);box-shadow:var(--shadow-lg)}.contact-card{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;gap:25px;padding:clamp(25px,3.2vw,38px);border:1px solid rgba(255,255,255,.13);background:radial-gradient(ellipse at 100% 0%,rgba(65,105,225,.27),transparent 45%),var(--navy);color:#fff}.contact-card::after{content:"";position:absolute;z-index:-1;right:-85px;bottom:-90px;width:260px;height:260px;border:1px solid rgba(108,140,240,.15);border-radius:50%;box-shadow:0 0 0 24px rgba(108,140,240,.035),0 0 0 50px rgba(108,140,240,.025)}.contact-card-title{margin:0 0 11px;color:#fff;font-size:clamp(1.45rem,1.2rem + .5vw,1.8rem)}.contact-card p{color:rgba(238,242,255,.82);font-size:14px;line-height:1.7}.contact-card>div:nth-child(2){display:grid;gap:10px}.contact-action{width:100%;min-height:52px}.contact-action.button-primary{color:var(--navy)}.contact-action.button-dark-outline{background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.21)}.contact-card .button-dark-outline svg{color:var(--mist-deep)}.contact-card>div:last-child{margin-top:auto;padding-top:19px;border-top:1px solid rgba(255,255,255,.15)}.contact-card>div:last-child p{margin:0 0 10px;font-size:13px}.contact-card>div:last-child p:last-child{margin-bottom:0}.booking-card{padding:clamp(24px,3.6vw,44px);border:1px solid rgba(65,105,225,.15);background:#fff}.booking-form{display:grid;gap:22px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.form-field{display:flex;flex-direction:column;gap:8px;min-width:0}.form-label{color:var(--ink);font-size:14px;font-weight:750;line-height:1.4}.form-control{display:block;width:100%;min-width:0;min-height:52px;padding:13px 15px;border:1px solid #DCE3FA;border-radius:14px;outline:none;background:#FBFCFF;color:var(--ink);font-size:16px;line-height:1.45;box-shadow:inset 0 1px 2px rgba(11,18,48,.02);transition:border-color .2s,box-shadow .2s,background-color .2s}.form-control::placeholder{color:#7E87A4;opacity:1}.form-control:focus{border-color:var(--royal);background:#fff;box-shadow:0 0 0 4px rgba(65,105,225,.14)}.form-control:focus-visible{outline:0}.form-control:invalid:not(:placeholder-shown){border-color:#C2362C}.form-control:valid:not(:placeholder-shown){border-color:rgba(47,133,90,.5)}select.form-control{appearance:none;padding-right:44px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%232F52C4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center}textarea.form-control{min-height:126px;resize:vertical}.consent-checkbox{width:20px;height:20px;flex:0 0 20px;margin-top:3px;accent-color:var(--royal)}.booking-form .form-field:has(.consent-checkbox){flex-direction:row;align-items:flex-start;gap:11px;padding:16px;border:1px solid rgba(65,105,225,.15);border-radius:15px;background:#F8FAFF}.booking-form .form-field:has(.consent-checkbox) .form-label{font-size:14px;font-weight:550;line-height:1.6}.submit-button{width:100%;min-height:56px}.submit-button.is-loading{pointer-events:none;opacity:.78}.booking-success{display:flex;flex-direction:column;align-items:center;gap:16px;padding:clamp(27px,4vw,44px);border:1px solid rgba(65,105,225,.15);border-radius:24px;background:#fff;box-shadow:var(--shadow-md);text-align:center}.booking-success h3{margin:0;color:var(--navy);font-size:clamp(1.5rem,1.25rem + .8vw,2rem)}.booking-success p{margin:0;color:var(--body);font-size:16px;line-height:1.7}.booking-success a{margin-top:4px}.success-check{display:flex;align-items:center;justify-content:center;width:62px;height:62px;border-radius:50%;background:#24855B;color:#fff}.success-check svg{width:31px;height:31px}.success-check path{stroke-dasharray:42;stroke-dashoffset:42;animation:draw-check .65s var(--ease-out) .08s forwards}@keyframes draw-check{to{stroke-dashoffset:0}}
/* Closing invitation */
.closing-cta{padding-block:clamp(56px,7vw,90px) clamp(64px,8vw,100px);background:#fff}.cta-panel{position:relative;isolation:isolate;width:min(100%,1120px);margin-inline:auto;padding:clamp(34px,6vw,76px);overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:var(--r-xl);background:radial-gradient(ellipse at 89% 6%,rgba(108,140,240,.4),transparent 36%),linear-gradient(120deg,#111A43 0%,#182B69 48%,#2F52C4 100%);box-shadow:var(--shadow-lg);text-align:left}.cta-panel::before{content:"";position:absolute;z-index:-1;top:-20%;right:-5%;width:430px;aspect-ratio:1;border:1px solid rgba(255,255,255,.11);border-radius:50%;box-shadow:0 0 0 26px rgba(255,255,255,.025),0 0 0 58px rgba(255,255,255,.02),0 0 0 94px rgba(255,255,255,.015)}.cta-panel::after{content:"";position:absolute;z-index:-1;top:16%;right:24%;width:8px;height:8px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 7px rgba(250,95,85,.1)}.cta-panel .section-title{max-width:17ch;color:#fff;font-size:clamp(2rem,1.35rem + 2.6vw,3.25rem)}.cta-panel .section-title.dot::after{color:var(--coral)}.cta-copy{max-width:61ch;margin:20px 0 0;color:rgba(255,255,255,.86);font-size:clamp(1.0625rem,1rem + .35vw,1.2rem);line-height:1.7}.cta-panel>div:last-child{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.cta-panel .button{min-height:52px}
/* Footer */
.site-footer{position:relative;isolation:isolate;overflow:hidden;padding:clamp(62px,7vw,88px) 0 calc(42px + env(safe-area-inset-bottom));background:radial-gradient(ellipse at 20% 0%,rgba(65,105,225,.16),transparent 32%),var(--navy);color:rgba(238,242,255,.74)}.site-footer::after{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(108,140,240,.45),transparent)}.site-footer>.container{position:relative;z-index:1}.footer-grid{display:grid;grid-template-columns:minmax(0,1.45fr) repeat(2,minmax(0,.8fr)) minmax(0,1fr);gap:clamp(24px,3vw,42px)}.footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:17px;min-width:0}.footer-logo-frame{display:flex;align-items:center;justify-content:center;min-height:48px;padding:5px 8px;border-radius:11px;background:var(--mist)}.footer-brand-logo{width:auto;height:35px;max-width:100%;object-fit:contain}.footer-column p{margin:0;color:rgba(238,242,255,.73);font-size:14px;line-height:1.7}.footer-heading{margin:0;color:#fff;font-size:15px;letter-spacing:.015em}.footer-column ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.footer-column li{min-width:0}.footer-link{position:relative;display:inline-block;max-width:100%;color:rgba(238,242,255,.77);font-size:14px;line-height:1.65;overflow-wrap:anywhere}.footer-link:hover{color:#fff}.footer-link::after{bottom:-2px}.footer-link:hover::after{right:0}.footer-column a[href^="mailto:"],.footer-column a[href^="tel:"]{color:#fff;font-weight:750}.footer-socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:2px}.footer-social-link{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:9px 13px;border:1px solid rgba(238,242,255,.18);border-radius:var(--r-md);background:rgba(238,242,255,.06);color:rgba(238,242,255,.9);font-size:13px;font-weight:700;line-height:1.2;text-decoration:none;transition:background .22s var(--ease-state),border-color .22s var(--ease-state),transform .22s var(--ease-out)}.footer-social-link svg{width:19px;height:19px;flex:0 0 19px}.footer-social-link:hover{background:rgba(238,242,255,.12);border-color:rgba(108,140,240,.65);color:#fff;transform:translateY(-2px)}.footer-social-link:focus-visible{outline:2px solid var(--coral);outline-offset:3px}.footer-bottom{display:grid;gap:16px;margin-top:50px;padding-top:25px;border-top:1px solid rgba(255,255,255,.14)}.footer-bottom p{margin:0;color:rgba(238,242,255,.61);font-size:13px;line-height:1.7}.footer-bottom>div:last-child{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.footer-bottom>div:last-child p:last-child{font-size:12px}
/* Mobile contact controls */
.mobile-fabs{position:fixed;z-index:80;right:max(18px,env(safe-area-inset-right));bottom:calc(17px + env(safe-area-inset-bottom));left:max(18px,env(safe-area-inset-left));display:flex;align-items:center;justify-content:space-between;pointer-events:none;opacity:0;transform:translateY(8px);transition:opacity .25s var(--ease-state),transform .25s var(--ease-out)}.mobile-fabs.fab-ready{opacity:1;transform:translateY(0)}.mobile-fabs.is-obscured,.menu-is-open .mobile-fabs,.form-has-focus .mobile-fabs{opacity:0;visibility:hidden;pointer-events:none}.floating-action{display:flex;align-items:center;justify-content:center;width:56px;height:56px;pointer-events:auto;border:1px solid rgba(255,255,255,.86);border-radius:50%;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.floating-action svg{width:24px;height:24px}.floating-action-call{background:rgba(238,242,255,.9);color:var(--royal-deep)}.floating-action-whatsapp{background:rgba(250,95,85,.96);color:var(--navy);animation:floating-pulse 3s ease-out 3}.floating-action:hover{transform:translateY(-2px)}@keyframes floating-pulse{0%,100%{box-shadow:var(--shadow-lg)}45%{box-shadow:0 0 0 7px rgba(250,95,85,.13),var(--shadow-lg)}}
@keyframes hero-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-title-mask{from{opacity:0;clip-path:inset(0 0 100% 0)}to{opacity:1;clip-path:inset(0 0 0 0)}}@keyframes hero-arch-in{from{opacity:0;clip-path:inset(0 0 15% 0 round 48% 48% 30px 30px / 31% 31% 30px 30px)}to{opacity:1;clip-path:inset(0 0 0 0 round 46% 46% 30px 30px / 31% 31% 30px 30px)}}html.js .hero-eyebrow{animation:hero-rise .55s var(--ease-out) both}html.js .hero-title{animation:hero-title-mask .72s var(--ease-out) .08s both}html.js .hero-lead{animation:hero-rise .65s var(--ease-out) .35s both}html.js .hero-actions{animation:hero-rise .65s var(--ease-out) .45s both}html.js .hero-note{animation:hero-rise .6s var(--ease-out) .55s both}html.js .hero-portrait-frame{animation:hero-arch-in 1.05s var(--ease-out) .18s both}html.js .trust-chip-hcpc{animation:hero-rise .55s var(--ease-out) .9s both}html.js .trust-chip-ng{animation:hero-rise .55s var(--ease-out) 1.05s both}html.js .credential-item{animation:hero-rise .55s var(--ease-out) both}html.js .credential-item:nth-child(1){animation-delay:1.05s}html.js .credential-item:nth-child(2){animation-delay:1.11s}html.js .credential-item:nth-child(3){animation-delay:1.17s}html.js .credential-item:nth-child(4){animation-delay:1.23s}html.js .credential-item:nth-child(5){animation-delay:1.29s}html.js .hero-portrait-image{transform:translateY(var(--portrait-y,0px)) scale(1.08)}html.js .hero-portrait-frame.is-visible .hero-portrait-image{transform:translateY(var(--portrait-y,0px)) scale(1)}html.js .hero-title .hero-underline path{animation-delay:.7s}
/* Reveals are enabled by JS only; without JS every section remains visible. */
html.js [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .62s var(--ease-out) var(--reveal-delay,0ms),transform .62s var(--ease-out) var(--reveal-delay,0ms)}html.js [data-reveal].is-visible{opacity:1;transform:translateY(0)}html.js [data-reveal="image"]{transform:translateY(8px);clip-path:inset(0 0 12% 0 round 22px)}html.js [data-reveal="image"].is-visible{transform:translateY(0);clip-path:inset(0 0 0 0 round 22px)}
@media (min-width:1120px){.site-header{--header-height:76px}.site-header.is-scrolled{--header-height:64px}.brand-logo{height:35px}.menu-toggle,.mobile-menu{display:none}.desktop-nav{display:flex}.header-booking{display:flex}}
@media (max-width:1119px){.desktop-nav,.header-booking{display:none}.menu-toggle{display:flex}.mobile-menu{position:absolute;top:100%;left:0;right:0;z-index:101;display:none;padding:16px clamp(18px,4vw,32px) 23px;border-bottom:1px solid rgba(65,105,225,.13);background:rgba(255,255,255,.97);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.js .mobile-menu:not(.is-open){display:none}.js .mobile-menu.is-open{display:block}.mobile-nav{display:grid;gap:0;max-width:var(--container);margin-inline:auto}.mobile-link{display:flex;align-items:center;min-height:48px;padding:10px 2px;border-bottom:1px solid rgba(18,25,54,.07);color:var(--navy);font-family:'Bricolage Grotesque',Arial,sans-serif;font-size:16px;font-weight:750}.mobile-link:hover,.mobile-link:focus-visible{color:var(--royal-deep)}.mobile-menu-cta{max-width:var(--container);margin:17px auto 0;padding-top:16px;border-top:1px solid rgba(65,105,225,.12)}.mobile-menu.is-open{animation:menu-enter .24s var(--ease-out) both}.mobile-menu.is-open .mobile-link{animation:link-enter .34s var(--ease-out) both}.mobile-menu.is-open .mobile-link:nth-child(2){animation-delay:25ms}.mobile-menu.is-open .mobile-link:nth-child(3){animation-delay:50ms}.mobile-menu.is-open .mobile-link:nth-child(4){animation-delay:75ms}.mobile-menu.is-open .mobile-link:nth-child(5){animation-delay:100ms}.mobile-menu.is-open .mobile-link:nth-child(6){animation-delay:125ms}@keyframes menu-enter{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}@keyframes link-enter{from{opacity:0;transform:translateX(-7px)}to{opacity:1;transform:translateX(0)}}}
@media (min-width:1000px){.mobile-fabs{display:none}}
@media (max-width:1050px){.hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:30px}.hero-title{font-size:clamp(2.65rem,2rem + 3.4vw,3.65rem)}.hero-art{padding-inline:12px}.trust-chip-hcpc{left:-35px}.trust-chip-ng{right:-29px}.credential-bar{grid-template-columns:repeat(3,minmax(0,1fr))}.credential-item:nth-child(3)::after{display:none}.credential-item:nth-child(4)::after{display:block}}
@media (max-width:899px){.section-head{grid-template-columns:minmax(0,1fr);gap:15px}.section-head .eyebrow,.section-head .section-title,.section-head .section-lead{grid-column:1}.section-lead{max-width:65ch}.section-title{max-width:24ch}.why-card:nth-child(n){grid-column:span 6}.why-card:nth-child(1){grid-column:span 7}.why-card:nth-child(2){grid-column:span 5}.why-card:nth-child(5){grid-column:span 6}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.timeline-grid{grid-template-columns:minmax(0,1fr);gap:14px;padding-left:28px}.timeline-grid::before,.timeline-grid::after{top:12px;bottom:12px;left:15px;right:auto;width:2px;height:auto}.timeline-grid::after{width:2px;height:calc(100% - 24px);transform:scaleY(var(--timeline-progress));transform-origin:top center}.timeline-step{margin-top:0;padding:24px 25px}.timeline-node{top:22px;left:-28px;width:30px;height:30px;transform:translateX(-50%);font-size:12px}.about-layout{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:38px}.about-credentials{grid-template-columns:repeat(2,minmax(0,1fr))}.faq-layout{grid-template-columns:minmax(0,1fr)}.faq-intro{position:static}.faq-intro .section-title{max-width:18ch}.contact-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-column:first-child{grid-column:1/-1;max-width:65ch}}
@media (max-width:767px){:root{--header-height:68px;--space-section:clamp(4rem,3.2rem + 3vw,5.5rem)}.site-header.is-scrolled{--header-height:62px}.brand-logo{height:31px}.brand-descriptor{max-width:210px;font-size:12px;letter-spacing:.025em}.hero-section{padding-block:44px 74px}.hero-grid{grid-template-columns:minmax(0,1fr);gap:38px}.hero-copy{order:0}.hero-title{max-width:13ch;margin:21px 0 18px;font-size:clamp(2.55rem,1.95rem + 4.5vw,3.35rem);line-height:1.025}.hero-lead{font-size:17px}.hero-actions{align-items:stretch;flex-direction:column}.hero-actions .button{width:100%;min-height:54px}.hero-note{font-size:14px}.hero-art{order:1;padding:4px 12px 0}.hero-portrait-wrap{width:min(100%,390px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.hero-ring{inset:-12px -10px 50px;grid-column:1/-1;grid-row:1;align-self:start}.hero-portrait-frame{grid-column:1/-1;grid-row:1;align-self:start;margin-bottom:7px}.hero-portrait-wrap::after{top:7%;right:9%;width:8px;height:8px;transform-origin:-100px 120px}.trust-chip{position:relative;top:auto;right:auto;bottom:auto;left:auto;min-width:0;max-width:none;gap:7px;padding:10px 9px;border-radius:13px;background:rgba(255,255,255,.92);box-shadow:var(--shadow-sm)}.trust-chip-hcpc{grid-column:1}.trust-chip-ng{grid-column:2}.trust-chip svg{width:27px;height:27px;padding:6px;border-radius:9px}.trust-chip-line{font-size:12px;overflow-wrap:anywhere}.credential-bar{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:34px;border-radius:18px}.credential-item{padding:17px 9px}.credential-item:nth-child(odd)::after{display:block}.credential-item:nth-child(even)::after{display:none}.credential-item:last-child{grid-column:1/-1}.credential-item:nth-child(4)::after{display:none}.credential-title{font-size:14px}.credential-meta{font-size:13px}.section-head{margin-bottom:34px}.why-grid{grid-template-columns:minmax(0,1fr);gap:13px}.why-card:nth-child(n){grid-column:1/-1;min-height:0;padding:24px}.why-card-main{gap:12px}.card-kicker{margin-top:18px}.tab-list{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:17px}.tab-btn{min-height:47px;padding:10px 8px;font-size:14px}.tab-stage{border-radius:24px}.tab-panel{grid-template-columns:minmax(0,1fr);grid-template-areas:"visual" "copy" "action";gap:20px;padding:17px}.tab-visual{aspect-ratio:1.55/1;border-radius:17px}.panel-title{font-size:clamp(1.5rem,1.25rem + 1vw,1.8rem)}.tab-action .button{width:100%}.services-grid{grid-template-columns:minmax(0,1fr);gap:13px}.service-card{padding:23px;border-radius:21px}.service-description{font-size:16px}.timeline-grid{padding-left:23px}.timeline-grid::before,.timeline-grid::after{left:12px}.timeline-step{padding:23px 18px 22px}.timeline-node{left:-23px}.about-layout{grid-template-columns:minmax(0,1fr);gap:40px}.about-portrait-wrap{width:min(100%,430px)}.about-copy{gap:22px}.about-heading .section-title{max-width:21ch}.about-paragraph{font-size:16px}.about-credentials{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.about-credential{padding:14px 10px}.faq-intro{gap:13px}.faq-list{gap:10px}.faq-question{min-height:62px;padding:15px 14px;font-size:16px}.faq-question-text{gap:9px}.faq-number{flex-basis:28px;width:28px;height:28px}.faq-toggle-icon{flex-basis:30px;width:30px;height:30px}.faq-body-inner{padding-inline:15px;font-size:16px}.faq-body.is-open .faq-body-inner{padding-block:15px 18px}.contact-grid{grid-template-columns:minmax(0,1fr);gap:16px}.contact-card,.booking-card{border-radius:24px}.contact-card{gap:23px;padding:24px}.booking-card{padding:22px}.form-grid{grid-template-columns:minmax(0,1fr);gap:18px}.booking-form{gap:18px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 22px}.footer-column:first-child{grid-column:1/-1}.footer-column{gap:13px}.footer-bottom{margin-top:35px}.footer-bottom>div:last-child{align-items:flex-start;flex-direction:column}.cta-panel{padding:30px 24px;border-radius:27px}.cta-panel::before{right:-180px;top:-120px;width:360px}.cta-panel .section-title{max-width:18ch}.cta-copy{margin-top:17px;font-size:16px}.cta-panel>div:last-child{align-items:stretch;flex-direction:column}.cta-panel .button{width:100%}.site-footer{padding-bottom:calc(116px + env(safe-area-inset-bottom))}}
@media (max-width:420px){.site-header-inner{gap:10px;padding-inline:14px}.brand-lockup{max-width:calc(100% - 54px)}.brand-logo{height:29px}.brand-descriptor{max-width:100%;font-size:12px;line-height:1.1;letter-spacing:0}.menu-toggle{width:44px;height:44px;flex:0 0 44px}.hero-title{font-size:clamp(2.05rem,8.5vw,2.75rem);max-width:15ch}.hero-eyebrow{font-size:12px;padding:9px 12px}.trust-chip{padding:9px 7px;gap:6px}.trust-chip svg{display:none}.trust-chip-line{font-size:12px}.credential-title{font-size:13px}.credential-meta{font-size:12px}.cta-panel{padding-inline:21px}.footer-grid{gap:27px 16px}}
@media (max-width:360px){.hero-title{font-size:2.35rem}.hero-portrait-wrap{gap:7px}.trust-chip-line{font-size:12px}.footer-grid{grid-template-columns:minmax(0,1fr)}.footer-column:first-child{grid-column:auto}}
@media (min-width:768px) and (max-width:999px){.mobile-fabs{display:none}.hero-title{font-size:clamp(2.6rem,4.6vw,3.55rem)}.trust-chip-hcpc{left:-22px}.trust-chip-ng{right:-17px}.about-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:30px}.about-credentials{grid-template-columns:repeat(2,minmax(0,1fr))}.cta-panel{margin-inline:clamp(18px,3.4vw,34px);width:auto}}
@media (min-width:641px) and (max-width:850px){.trust-chip-hcpc{left:-58px;top:13%}.trust-chip-ng{right:-28px;bottom:12%}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}html.js *,html.js *::before,html.js *::after{animation-duration:.01ms;animation-iteration-count:1;transition-duration:.01ms;scroll-behavior:auto}.hero-underline path{stroke-dashoffset:0;animation:none}.hero-ring,.hero-portrait-wrap::after,.floating-action-whatsapp,.success-check path{animation:none}html.js [data-reveal],html.js [data-reveal].is-visible{opacity:1;transform:none;clip-path:none}.hero-portrait-image{transform:none}.button::after{display:none}.tab-panel{animation:none}}
@media (hover:none){.why-card:hover,.service-card:hover,.timeline-step:hover{transform:none}.hero-portrait-frame:hover .hero-portrait-image{transform:none}}

.booking-form p:has(input[name="bot-field"]){position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

@media (prefers-reduced-motion:reduce){html.js [data-reveal],html.js [data-reveal].is-visible{opacity:1;transform:none;clip-path:none;transition-duration:.01ms;animation:none}html.js .hero-eyebrow,html.js .hero-title,html.js .hero-lead,html.js .hero-actions,html.js .hero-note,html.js .hero-portrait-frame,html.js .trust-chip,html.js .credential-item{animation:none;transition-duration:.01ms}html.js .hero-portrait-image{transform:none}.hero-underline path{animation:none;stroke-dashoffset:0}.success-check path{animation:none;stroke-dashoffset:0}.hero-ring,.hero-portrait-wrap::after,.floating-action-whatsapp{animation:none}}


/* Responsive polish: retain MQ's visual system while correcting hero and FAQ alignment. */
.hero-title{overflow:visible}
.hero-underline{position:relative;display:inline-block;white-space:nowrap;padding-bottom:.1em}
.hero-underline svg{left:-.015em;bottom:-.035em;width:calc(100% + .03em);height:.22em;overflow:visible;pointer-events:none}
.hero-underline path{stroke-dasharray:1;stroke-dashoffset:1}
.hero-ring{transform-origin:center center}
.faq-intro .section-lead{align-self:flex-start;width:100%;max-width:36ch;margin:0;text-align:left}
.tab-illustration{display:block;width:100%;height:100%;object-fit:cover;object-position:center}

@media (max-width:767px){
  /* Keep the tall portrait ring centered; rotate the accent around the correct mobile centre. */
  .hero-ring{inset:-12px;grid-column:1/-1;grid-row:1;align-self:stretch;justify-self:stretch;transform-origin:center center;animation:none}
  .hero-portrait-wrap::after{--orbit-radius:min(200px,calc(50vw - 6px));top:50%;left:50%;right:auto;transform-origin:center;animation:orbit-dot-mobile 18s linear infinite}
  @keyframes orbit-dot-mobile{
    from{transform:translate(-50%,-50%) rotate(0deg) translateY(calc(0px - var(--orbit-radius)))}
    to{transform:translate(-50%,-50%) rotate(360deg) translateY(calc(0px - var(--orbit-radius)))}
  }
  .faq-intro .section-lead{align-self:flex-start;width:100%;max-width:100%;margin:0;text-align:left}
  .tab-visual{aspect-ratio:1.55/1}
}
@media (max-width:420px){
  .hero-ring{inset:-10px}
  .hero-underline svg{bottom:-.025em;height:.22em}
}
@media (prefers-reduced-motion:reduce){
  .hero-underline path{stroke-dashoffset:0;animation:none}
  .hero-ring,.hero-portrait-wrap::after{animation:none!important}
}



/* Hero trust credentials: colourful, floating, and kept clear of the portrait. */
.trust-chip{
  isolation:isolate;
  overflow:hidden;
  border-color:rgba(65,105,225,.17);
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(242,246,255,.94));
  box-shadow:0 14px 34px -18px rgba(11,18,48,.34),0 5px 14px rgba(47,82,196,.10),inset 0 1px 0 rgba(255,255,255,.96);
  -webkit-backdrop-filter:blur(16px) saturate(145%);
  backdrop-filter:blur(16px) saturate(145%);
  animation:trust-chip-float 5.2s ease-in-out infinite;
}
.trust-chip::before{
  content:"";
  position:absolute;
  z-index:-1;
  left:0;
  top:11px;
  bottom:11px;
  width:4px;
  border-radius:0 99px 99px 0;
  background:linear-gradient(180deg,var(--royal-light),var(--coral));
}
.trust-chip-hcpc{
  border-color:rgba(65,105,225,.24);
  background:linear-gradient(135deg,rgba(255,255,255,.99) 12%,rgba(235,241,255,.96) 100%);
  --chip-float-distance:6px;
}
.trust-chip-ng{
  border-color:rgba(22,163,74,.20);
  background:linear-gradient(135deg,rgba(255,255,255,.99) 12%,rgba(239,250,242,.96) 100%);
  --chip-float-distance:7px;
  animation-delay:-1.8s;
}
.trust-chip-ng::before{background:linear-gradient(180deg,#16A34A,#F59E0B,var(--coral));}
.trust-chip>div:first-child{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 39px;
  width:39px;
  height:39px;
  border:1px solid rgba(255,255,255,.45);
  border-radius:13px;
  color:#fff;
  font-family:'Bricolage Grotesque',Arial,sans-serif;
  font-size:11px;
  font-weight:850;
  letter-spacing:.06em;
  box-shadow:0 5px 12px rgba(11,18,48,.16),inset 0 1px 0 rgba(255,255,255,.24);
}
.trust-chip-hcpc>div:first-child{background:linear-gradient(135deg,#4169E1 0%,#6458D9 58%,#8067E8 100%);}
.trust-chip-ng>div:first-child{background:linear-gradient(135deg,#168447 0%,#20A65A 100%);}
.trust-chip-line:first-of-type{font-size:12px;font-weight:850;letter-spacing:-.01em;}
.trust-chip-line:last-of-type{font-size:11px;line-height:1.4;}
@keyframes trust-chip-float{
  0%,100%{translate:0 0;}
  50%{translate:0 calc(0px - var(--chip-float-distance,6px));}
}
@keyframes trust-chip-enter{from{opacity:0;}to{opacity:1;}}
/* Keep the entrance fade and gentle float independent of one another. */
html.js .trust-chip-hcpc{animation:trust-chip-enter .55s var(--ease-out) .9s both,trust-chip-float 5.2s ease-in-out 1.5s infinite;}
html.js .trust-chip-ng{animation:trust-chip-enter .55s var(--ease-out) 1.05s both,trust-chip-float 5.6s ease-in-out 1.7s infinite;}

@media (max-width:767px){
  /* Reserve space above and below the photograph: badges float nearby, never over her face or body. */
  .hero-portrait-wrap{
    display:block;
    position:relative;
    width:min(100%,390px);
    padding:68px 0;
    overflow:visible;
  }
  .hero-portrait-frame{
    display:block;
    width:100%;
    margin:0;
  }
  .hero-ring{inset:56px -10px;grid-column:auto;grid-row:auto;}
  .trust-chip{
    position:absolute;
    z-index:4;
    width:max-content;
    max-width:min(205px,78%);
    min-width:0;
    padding:10px 12px;
    gap:9px;
    border-radius:15px;
  }
  .trust-chip-hcpc{top:0;right:auto;bottom:auto;left:0;}
  .trust-chip-ng{right:0;bottom:0;top:auto;left:auto;}
  .trust-chip>div:first-child{flex-basis:36px;width:36px;height:36px;border-radius:12px;}
  .trust-chip-line:first-of-type{font-size:12px;}
  .trust-chip-line:last-of-type{font-size:11px;}
}
@media (max-width:420px){
  .hero-portrait-wrap{padding-block:64px;}
  .hero-ring{inset:54px -8px;}
  .trust-chip{padding:9px 10px;gap:7px;}
  .trust-chip>div:first-child{flex-basis:33px;width:33px;height:33px;border-radius:11px;}
  .trust-chip-hcpc{left:0;}
  .trust-chip-ng{right:0;}
}
@media (prefers-reduced-motion:reduce){
  .trust-chip,html.js .trust-chip-hcpc,html.js .trust-chip-ng{animation:none!important;translate:none!important;}
}



/* Refined pulse for the two small status dots in the hero copy. */
.hero-eyebrow::before,
.hero-note::before {
  position: relative;
  isolation: isolate;
  flex: 0 0 7px;
  animation: hero-status-dot-pulse 2.4s cubic-bezier(.22,.61,.36,1) infinite;
  will-change: transform, box-shadow;
}
.hero-eyebrow::before {
  box-shadow: 0 0 0 4px rgba(250,95,85,.13), 0 0 12px rgba(250,95,85,.2);
}
.hero-note::before {
  box-shadow: 0 0 0 4px rgba(47,133,90,.12), 0 0 12px rgba(47,133,90,.18);
  animation-delay: .55s;
}
@keyframes hero-status-dot-pulse {
  0%, 100% { transform: scale(1); }
  12% { transform: scale(1.16); }
  42% { transform: scale(1); }
  55% { transform: scale(1); }
  70% { transform: scale(1.08); }
  86% { transform: scale(1); }
}
@media (prefers-reduced-motion: reduce) {
  .hero-eyebrow::before, .hero-note::before { animation: none; will-change: auto; }
}

/* Colorful credential cards: compact, accessible, and responsive */
.credential-bar{gap:12px;align-items:stretch;border:0;background:transparent;box-shadow:none;overflow:visible}
.credential-item{position:relative;isolation:isolate;align-items:center;gap:7px;min-height:142px;padding:17px 12px 15px;border:1px solid rgba(18,25,54,.08);border-radius:18px;background:linear-gradient(155deg,rgba(255,255,255,.98),rgba(247,249,255,.94));box-shadow:0 8px 24px rgba(24,42,88,.055);text-align:center;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.credential-item::before{content:"";position:absolute;inset:0 0 auto;height:4px;border-radius:18px 18px 0 0;background:var(--credential-accent,#4169e1);opacity:.95}
.credential-item::after{top:50%;right:-7px;z-index:2;width:1px;height:42px;transform:translateY(-50%);background:rgba(18,25,54,.08)}
.credential-icon{display:grid;place-items:center;width:40px;height:40px;margin-bottom:2px;border:1px solid var(--credential-border,rgba(65,105,225,.16));border-radius:13px;background:var(--credential-tint,rgba(65,105,225,.09));color:var(--credential-accent,#4169e1)}
.credential-icon svg{width:21px;height:21px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.credential-title{font-size:13px;line-height:1.35;letter-spacing:-.01em}
.credential-meta{font-size:12px;line-height:1.45}
.credential-item--uk{--credential-accent:#4169e1;--credential-tint:#edf1ff;--credential-border:#d9e2ff}
.credential-item--ng{--credential-accent:#16845b;--credential-tint:#e8f8f0;--credential-border:#cceedd}
.credential-item--evidence{--credential-accent:#8b5bd6;--credential-tint:#f3edff;--credential-border:#e4d7ff}
.credential-item--experience{--credential-accent:#d97728;--credential-tint:#fff2e6;--credential-border:#ffe0c4}
.credential-item--care{--credential-accent:#e05d7b;--credential-tint:#fff0f4;--credential-border:#ffd5e0}
@media(hover:hover){.credential-item:hover{transform:translateY(-4px);border-color:var(--credential-border);box-shadow:0 14px 30px rgba(24,42,88,.10)}}
@media(max-width:767px){.credential-bar{gap:10px;margin-top:30px}.credential-item{min-height:137px;padding:15px 9px 13px;border-radius:16px}.credential-item::before{border-radius:16px 16px 0 0}.credential-icon{width:36px;height:36px;border-radius:12px}.credential-icon svg{width:19px;height:19px}.credential-title{font-size:13px}.credential-meta{font-size:12px}}
@media(max-width:420px){.credential-bar{gap:8px}.credential-item{min-height:132px;padding:14px 7px 12px}.credential-title{font-size:12px}.credential-meta{font-size:11px}}
@media(prefers-reduced-motion:reduce){.credential-item{transition:none}}


/* About section: coordinated soft colour wash and designed credential cards */
.about-section{
  background:
    radial-gradient(ellipse at 7% 18%,rgba(108,140,240,.15),transparent 38%),
    radial-gradient(ellipse at 94% 84%,rgba(250,95,85,.095),transparent 34%),
    linear-gradient(135deg,#F1F5FF 0%,#F7F5FF 52%,#FFF7F2 100%);
}
.about-credentials{gap:12px;align-items:stretch}
.about-credential{
  position:relative;isolation:isolate;align-items:center;gap:7px;min-height:145px;padding:17px 12px 15px;
  overflow:hidden;border:1px solid var(--about-card-border,#DDE5FF);border-radius:18px;
  background:linear-gradient(155deg,rgba(255,255,255,.98),rgba(248,250,255,.95));
  box-shadow:0 8px 24px rgba(24,42,88,.065);text-align:center;
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;
}
.about-credential::before{content:"";position:absolute;inset:0 0 auto;height:4px;border-radius:18px 18px 0 0;background:var(--about-card-accent,#4169E1)}
.about-credential-icon{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;margin-bottom:2px;border:1px solid var(--about-card-border,#D9E2FF);border-radius:13px;background:var(--about-card-tint,#EDF1FF);color:var(--about-card-accent,#4169E1)}
.about-credential-icon svg{width:21px;height:21px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.about-credential-title{font-family:'Bricolage Grotesque',Arial,sans-serif;font-size:14px;font-weight:850;letter-spacing:-.01em;line-height:1.35;color:var(--ink)}
.about-credential-meta{font-size:12px;line-height:1.45;color:var(--slate)}
.about-credential--uk{--about-card-accent:#4169E1;--about-card-tint:#EDF1FF;--about-card-border:#D9E2FF}
.about-credential--ng{--about-card-accent:#16845B;--about-card-tint:#E8F8F0;--about-card-border:#CDEBDD}
.about-credential--education{--about-card-accent:#8B5BD6;--about-card-tint:#F3EDFF;--about-card-border:#E4D7FF}
.about-credential--experience{--about-card-accent:#D97728;--about-card-tint:#FFF2E6;--about-card-border:#FFE0C4}
@media(hover:hover){.about-credential:hover{transform:translateY(-3px);border-color:var(--about-card-border);box-shadow:0 14px 30px rgba(24,42,88,.105)}}
@media(max-width:767px){.about-credentials{gap:10px}.about-credential{min-height:136px;padding:15px 10px 13px;border-radius:16px}.about-credential::before{border-radius:16px 16px 0 0}.about-credential-icon{width:36px;height:36px;flex-basis:36px;border-radius:12px}.about-credential-icon svg{width:19px;height:19px}.about-credential-title{font-size:13px}.about-credential-meta{font-size:12px}}
@media(max-width:420px){.about-credentials{gap:8px}.about-credential{min-height:130px;padding:13px 7px 12px}.about-credential-title{font-size:12px}.about-credential-meta{font-size:11px}}
@media(prefers-reduced-motion:reduce){.about-credential{transition:none}}



/* Tablet credential balance: centre the final two cards in the five-card row. */
@media (min-width: 768px) and (max-width: 1050px) {
  .credential-bar {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    column-gap: 12px;
    row-gap: 12px;
    align-items: stretch;
  }
  .credential-bar > .credential-item:nth-child(-n+3) {
    grid-column: span 2;
  }
  .credential-bar > .credential-item:nth-child(4) {
    grid-column: 2 / span 2;
  }
  .credential-bar > .credential-item:nth-child(5) {
    grid-column: 4 / span 2;
  }
  .credential-bar > .credential-item::after {
    display: none;
  }
}


/* Keep the About section within the original warm-oat / mist / coral rhythm. */
.about-section{
  background:
    radial-gradient(ellipse at 7% 18%,rgba(108,140,240,.12),transparent 38%),
    radial-gradient(ellipse at 94% 84%,rgba(250,95,85,.07),transparent 34%),
    linear-gradient(135deg,var(--oat) 0%,rgba(238,242,255,.48) 58%,rgba(250,95,85,.035) 100%);
}

/* Brand-only colour accents: royal blues and coral, with soft token-based tints. */
.trust-chip{
  border-color:rgba(65,105,225,.17);
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(238,242,255,.94));
  transition:border-color .24s var(--ease-state),box-shadow .24s var(--ease-state),background-color .24s var(--ease-state);
}
.trust-chip-hcpc{
  border-color:rgba(65,105,225,.24);
  background:linear-gradient(135deg,rgba(255,255,255,.99) 12%,rgba(238,242,255,.9) 100%);
}
.trust-chip-ng{
  border-color:rgba(250,95,85,.26);
  background:linear-gradient(135deg,rgba(255,255,255,.99) 12%,rgba(250,95,85,.075) 100%);
}
.trust-chip-ng::before{background:linear-gradient(180deg,var(--coral),var(--royal-light));}
.trust-chip-hcpc>div:first-child{background:linear-gradient(135deg,var(--royal) 0%,var(--royal-deep) 100%);}
.trust-chip-ng>div:first-child{background:linear-gradient(135deg,var(--coral-ink) 0%,var(--coral) 100%);}

.credential-bar{
  gap:12px;
  align-items:stretch;
  border:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}
.credential-item{
  background:linear-gradient(155deg,rgba(255,255,255,.98),rgba(238,242,255,.5));
  box-shadow:0 8px 24px rgba(11,18,48,.055);
  transition:transform .24s var(--ease-out),box-shadow .24s var(--ease-state),border-color .24s var(--ease-state);
}
.credential-item--uk{--credential-accent:var(--royal);--credential-tint:rgba(65,105,225,.09);--credential-border:rgba(65,105,225,.22);}
.credential-item--ng{--credential-accent:var(--coral);--credential-tint:rgba(250,95,85,.09);--credential-border:rgba(250,95,85,.24);}
.credential-item--evidence{--credential-accent:var(--royal-light);--credential-tint:rgba(108,140,240,.12);--credential-border:rgba(108,140,240,.25);}
.credential-item--experience{--credential-accent:var(--coral-ink);--credential-tint:rgba(194,54,44,.08);--credential-border:rgba(194,54,44,.22);}
.credential-item--care{--credential-accent:var(--royal-deep);--credential-tint:rgba(47,82,196,.09);--credential-border:rgba(47,82,196,.22);}
@media(hover:hover){.credential-item:hover{transform:translateY(-4px);border-color:var(--credential-border);box-shadow:0 14px 30px rgba(11,18,48,.10);}}

.about-credential{
  background:linear-gradient(155deg,rgba(255,255,255,.98),rgba(238,242,255,.42));
  box-shadow:0 8px 24px rgba(11,18,48,.065);
  transition:transform .24s var(--ease-out),box-shadow .24s var(--ease-state),border-color .24s var(--ease-state);
}
.about-credential--uk{--about-card-accent:var(--royal);--about-card-tint:rgba(65,105,225,.09);--about-card-border:rgba(65,105,225,.22);}
.about-credential--ng{--about-card-accent:var(--coral);--about-card-tint:rgba(250,95,85,.09);--about-card-border:rgba(250,95,85,.24);}
.about-credential--education{--about-card-accent:var(--royal-light);--about-card-tint:rgba(108,140,240,.12);--about-card-border:rgba(108,140,240,.25);}
.about-credential--experience{--about-card-accent:var(--coral-ink);--about-card-tint:rgba(194,54,44,.08);--about-card-border:rgba(194,54,44,.22);}
@media(hover:hover){.about-credential:hover{transform:translateY(-3px);border-color:var(--about-card-border);box-shadow:0 14px 30px rgba(11,18,48,.105);}}

/* Keep the secondary hero status dot inside the approved MQ palette. */
.hero-note::before{
  background:var(--royal);
  box-shadow:0 0 0 4px rgba(65,105,225,.12),0 0 12px rgba(65,105,225,.18);
}

/* Mobile correction: the decorative ring should keep rotating around the portrait. */
@media(max-width:767px){
  .hero-ring{animation:ring-rotate 50s linear infinite;transform-origin:center center;}
}
@media(prefers-reduced-motion:reduce){
  .hero-ring{animation:none!important;}
  .credential-item,.about-credential{transition:none!important;}
}
