/*
   Dr. Anjali's Ayurvedic Center — Quiet Luxury / Forest & Leaf
   Version 2.0: an editorial, image-forward redesign.
   Original DOCX content and all functional form/security components retained.
*/
:root {
  --brand: #0F5132;
  --brand-dark: #0A3627;
  --brand-rich: #144F37;
  --leaf: #70B242;
  --leaf-soft: #A7CB8A;
  --fern: #557F57;
  --mist: #EDF4E9;
  --pale: #F5F8F1;
  --ivory: #FBFCF8;
  --ink: #172D25;
  --ink-light: #384C42;
  --muted: #627469;
  --paper: #FBFCF8;
  --cream: #F3F7F0;
  --surface: #FFFFFF;
  --sand: #DFEBDD;
  --blush: #F0F6EC;
  --copper: #0F5132;
  --copper-light: #70B242;
  --copper-deep: #0F5132;
  --forest: #70B242;
  --line: rgba(15,81,50,.12);
  --radius: 32px;
  --shadow: 0 25px 65px rgba(17,55,36,.10);
  --font-main: 'Manrope',system-ui,sans-serif;
  --font-heading: 'Plus Jakarta Sans','Manrope',system-ui,sans-serif;
  --font-display: 'Plus Jakarta Sans','Manrope',system-ui,sans-serif;
}
html { scroll-padding-top: 105px; }
body { background:var(--ivory); color:var(--ink); font:500 16px/1.84 var(--font-main); }
::selection { background:#d3e9c8; color:var(--brand-dark); }
a:hover { color:var(--fern); }
:focus-visible { outline-color:var(--leaf); }
p { text-wrap:pretty; }
.section { padding:clamp(92px,9vw,146px) 0; }
.section-title { font:800 clamp(36px,3.8vw,60px)/1.18 var(--font-display); letter-spacing:-2.3px; color:var(--ink); margin:18px 0 27px; text-wrap:balance; }
.section-lead { font-size:clamp(17px,1.5vw,19px); font-weight:500; line-height:1.85; color:var(--muted); }
.body-copy { font-size:17px; line-height:1.88; font-weight:500; color:#52675C; max-width:620px; }
.body-copy p { margin-bottom:22px; }
.eyebrow { font:800 12.5px/1.5 var(--font-heading); letter-spacing:2px; color:var(--brand); gap:12px; }
.eyebrow-line { width:32px; height:3px; border-radius:3px; background:var(--leaf); }
.eyebrow-light { color:#DFF1D8; }
.eyebrow-light .eyebrow-line { background:var(--leaf); }
.text-link { font:800 14px/1.5 var(--font-heading); color:var(--brand); gap:12px; }
.text-link i { font-size:14px; }
/* Buttons: luxurious, architectural, with a moving accent and arrow motion. */
.btn-luxe,.btn-outline-dark,.btn-ghost-light,.btn-nav,.btn-footer {
  border-radius:14px; min-height:60px; padding:15px 25px; gap:24px;
  font:800 14px/1.5 var(--font-heading); letter-spacing:.1px;
  box-shadow:none; transition:transform .36s cubic-bezier(.16,.84,.19,1),box-shadow .36s,color .36s,background .36s,border-color .36s;
}
.btn-luxe,.btn-nav,.btn-footer { background:var(--brand); color:#fff; box-shadow:0 13px 30px rgba(15,81,50,.17); }
.btn-luxe:before,.btn-nav:before,.btn-footer:before { background:var(--leaf); }
.btn-luxe:hover,.btn-nav:hover,.btn-footer:hover { transform:translateY(-4px); box-shadow:0 22px 36px rgba(15,81,50,.23); color:var(--brand-dark); }
.btn-luxe i,.btn-outline-dark i,.btn-ghost-light i,.btn-nav i,.btn-footer i { font-size:15px; transition:transform .35s; }
.btn-luxe:hover i,.btn-outline-dark:hover i,.btn-ghost-light:hover i,.btn-nav:hover i,.btn-footer:hover i { transform:translate(5px,-3px); }
.btn-outline-dark { background:#fff; border:1px solid rgba(15,81,50,.25); color:var(--brand); }
.btn-outline-dark:hover { background:var(--brand); border-color:var(--brand); color:#fff; box-shadow:0 17px 34px rgba(15,81,50,.18); }
.btn-ghost-light { background:transparent; border-color:rgba(255,255,255,.62); color:#fff; }
.btn-ghost-light:hover { background:#fff; color:var(--brand); }
.btn-nav { min-height:48px; padding:12px 19px; font-size:13px; border-radius:12px; gap:15px; }
.btn-footer { min-height:53px; padding:12px 19px; font-size:14px; }
/* Logo header: keep white branding original untouched. */
.site-header { background:var(--brand-dark); border-bottom:1px solid rgba(255,255,255,.1); box-shadow:0 8px 30px rgba(9,50,32,.05); }
.site-header.scrolled { background:rgba(10,54,39,.97); box-shadow:0 12px 35px rgba(6,39,26,.17); }
.navbar { min-height:92px; }
.navbar-brand img { width:162px; height:78px; }
.navbar-dark .navbar-nav .nav-link { color:#E5F0E9; font:700 13px/1.5 var(--font-heading); padding:16px 7px; }
.navbar-dark .navbar-nav .nav-link:hover,.navbar-dark .navbar-nav .nav-link.active { color:#BCE49C; }
.nav-link:after { background:var(--leaf); height:2px; border-radius:3px; }
.nav-call { color:#E6F3E9; border-color:rgba(233,247,237,.25); }
.nav-call:hover { background:rgba(255,255,255,.13); color:white; }
/* Calm loader. No italic typography. */
.site-loader { background:var(--brand-dark); color:white; }
.loader-mark { filter:none; }
.loader-brand { font:800 27px/1.25 var(--font-heading); letter-spacing:-1px; }
.loader-brand span { display:block; margin-top:8px; font:800 12px/1.5 var(--font-heading); text-transform:uppercase; letter-spacing:2px; color:#BCE49C; }
.loader-track { height:4px; margin-top:33px; background:rgba(255,255,255,.16); }
.loader-track span { background:linear-gradient(90deg,var(--leaf),#C2E5A8); }
.loader-caption { font-size:11px; font-weight:700; color:#BED5C6; letter-spacing:1.6px; }
/* New hero: airy image-led editorial design, no form. */
.hero-editorial { background:linear-gradient(122deg,#F8FBF5 0%,#FFF 54%,#EDF6EA 100%); color:var(--ink); isolation:isolate; }
.hero-editorial .hero-row { min-height:720px; padding-top:75px; padding-bottom:75px; }
.hero-aura { position:absolute; border-radius:50%; pointer-events:none; z-index:-1; filter:blur(5px); }
.hero-aura-top { width:570px; height:570px; right:-270px; top:-245px; background:radial-gradient(circle,#DDEED4 0%,rgba(221,238,212,0) 72%); }
.hero-aura-bottom { width:670px; height:570px; left:-320px; bottom:-310px; background:radial-gradient(circle,#EFF5E9 0%,transparent 70%); }
.hero-editorial .hero-copy { max-width:650px; padding:20px 0 25px; }
.hero-editorial .hero h1 { color:var(--ink); }
.hero-editorial h1 { font:800 clamp(44px,5.0vw,74px)/1.14 var(--font-heading); letter-spacing:-3px; color:var(--brand-dark); max-width:680px; margin:24px 0 25px; text-wrap:balance; }
.hero-editorial .hero-subtitle { color:var(--brand); font:800 clamp(19px,1.8vw,23px)/1.55 var(--font-heading); max-width:580px; margin-bottom:20px; }
.hero-editorial .hero-description { color:#4B6256; font-size:16.5px; line-height:1.9; margin-bottom:12px; max-width:570px; }
.hero-editorial .hero-description-secondary { color:#64776A; font-size:16px; }
.hero-editorial .hero-location { color:var(--brand); font:700 14px/1.5 var(--font-heading); }
.hero-editorial .hero-location i { color:var(--leaf); }
.hero-editorial .hero-buttons { margin:31px 0 28px; }
.hero-visual { height:620px; position:relative; max-width:630px; margin-left:auto; }
.hero-visual-backdrop { position:absolute; inset:30px 5% 22px 16%; border-radius:48% 48% 32px 32px; background:linear-gradient(145deg,#DCECD7,#F3F7ED); transform:rotate(-5deg); }
.hero-photo-main { position:absolute; width:76%; height:87%; left:13%; top:0; overflow:hidden; border-radius:49% 49% 34px 34px; box-shadow:0 27px 65px rgba(14,64,40,.18); background:radial-gradient(circle at 60% 20%,#EAF3E5,#CFDEC9); }
.hero-photo-main img { width:100%; height:100%; object-fit:cover; object-position:50% 50%; }
.hero-photo-small { position:absolute; width:39%; height:40%; right:-2%; bottom:0; border-radius:160px 160px 28px 28px; border:10px solid #F9FCF7; overflow:hidden; box-shadow:0 21px 42px rgba(9,51,31,.16); background:#DDE8D8; }
.hero-photo-small img { height:100%; width:100%; object-fit:cover; }
.hero-visual-seal { position:absolute; left:0; top:50%; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:13px; width:160px; height:160px; border-radius:50%; background:var(--brand); color:white; box-shadow:0 18px 38px rgba(9,62,35,.20); text-align:center; transform:translateY(-50%); }
.hero-visual-seal i { color:#AEDA8F; font-size:28px; }
.hero-visual-seal span { font:800 11px/1.45 var(--font-heading); letter-spacing:1px; }
.hero-orbit { position:absolute; left:5%; top:5%; width:84%; height:91%; border:1px solid rgba(112,178,66,.22); border-radius:49% 49% 34px 34px; pointer-events:none; transform:rotate(4deg); z-index:-1; }
.hero-bottom-line { height:3px; background:linear-gradient(90deg,transparent,#A9D38F,var(--brand),#A9D38F,transparent); opacity:.7; }
/* Photo load: no skeleton squares. Photos bloom in smoothly as each finishes loading. */
.hero-photo-main,.hero-photo-small,.image-duo-main,.image-duo-small,.pain-image,.stress-main,.stress-mini,.therapy-image,.why-image,.consultation-photo { background:radial-gradient(ellipse at 40% 35%,#F4F8F0,#DCE9D8); }
.js-animated img[data-smooth] { transition:opacity 1.05s ease, filter 1.25s ease, transform 1.2s cubic-bezier(.16,.72,.25,1); }
.js-animated img[data-smooth]:not(.is-loaded) { opacity:0; filter:blur(14px); transform:scale(1.065); }
.js-animated img[data-smooth].is-loaded { opacity:1; filter:blur(0); transform:scale(1); }
.js-animated .hover-zoom:hover img[data-smooth].is-loaded { transform:scale(1.055); }
.video-card:hover img[data-smooth].is-loaded { transform:scale(1.06); }
/* The visual sections alternate understated natural shade, never saturated green blocks. */
.section-approach { background:var(--ivory); }
.image-duo-main { border-radius:230px 230px 35px 35px; }
.image-duo-small { border-color:var(--ivory); border-radius:150px 150px 30px 30px; }
.floating-medallion { border:1px solid #C3D8C2; background:white; color:var(--brand); box-shadow:0 15px 36px rgba(20,65,37,.13); }
.floating-medallion i { color:var(--leaf); }
.floating-medallion span { font:800 12px/1.4 var(--font-heading); }
.section-pain { background:#F2F7EF; }
.section-heading-row { margin-bottom:55px; }
.pain-card,.therapy-card,.why-card,.journey-card { -webkit-backface-visibility:hidden; backface-visibility:hidden; }
.pain-card { border:1px solid #DFE8DA; border-radius:30px; box-shadow:0 13px 35px rgba(14,59,36,.06); overflow:hidden; background:white; transition:transform .5s cubic-bezier(.16,.8,.2,1),box-shadow .5s,border-color .5s; }
.pain-card:hover { transform:translateY(-12px); border-color:#9EC88B; box-shadow:0 30px 55px rgba(16,68,38,.15); }
.pain-image { height:255px; border-radius:25px 25px 65px 20px; margin:9px 9px 0; }
.image-scrim { background:linear-gradient(0deg,rgba(13,54,33,.2),transparent 55%); }
.pain-icon { top:229px; right:30px; width:57px; height:57px; background:var(--brand); font-size:18px; border-color:white; }
.pain-copy { padding:36px 26px 30px; }
.pain-copy h3 { font:800 19px/1.42 var(--font-heading); min-height:0; letter-spacing:-.6px; margin-bottom:14px; color:var(--ink); }
.pain-copy p { font:500 15px/1.83 var(--font-main); color:var(--muted); margin-bottom:24px; }
.section-stress { background:#FEFFFC; }
.stress-main { border-radius:260px 260px 34px 34px; }
.stress-mini { border-radius:150px 150px 26px 26px; border-color:#FEFFFC; }
.stress-stamp { background:var(--brand); color:#BEE29F; }
.list-intro { font:800 17px/1.6 var(--font-heading); color:var(--ink); }
.care-list { gap:15px; }
.care-list li { font:600 15.5px/1.65 var(--font-main); color:#52665B; gap:15px; }
.care-list li span { width:29px; height:29px; background:#E5F3DE; color:var(--brand); font-size:12px; }
.section-therapies { background:linear-gradient(140deg,#F1F7ED,#EBF3E9); }
.therapy-card { border-radius:30px; background:white; border:1px solid #E1EBD9; overflow:hidden; box-shadow:0 14px 38px rgba(15,81,50,.06); transition:transform .5s cubic-bezier(.16,.84,.19,1),box-shadow .5s,border-color .5s; }
.therapy-card:hover { transform:translateY(-12px); border-color:#A6C993; box-shadow:0 26px 50px rgba(15,81,50,.14); }
.therapy-image { height:260px; border-radius:28px 28px 74px 22px; margin:9px 9px 0; }
.therapy-icon { background:var(--brand); font-size:18px; right:17px; bottom:-22px; border:5px solid white; width:57px; height:57px; }
.therapy-body { padding:39px 26px 30px; }
.therapy-body h3 { color:var(--ink); font:800 25px/1.35 var(--font-heading); letter-spacing:-.7px; }
.therapy-body p { font:500 15px/1.86 var(--font-main); color:var(--muted); }
.therapy-bottom p { color:var(--muted); font-size:15px; line-height:1.7; }
.therapy-bottom p i { color:var(--brand); }
.section-why { background:#FFF; }
.why-image { border-radius:300px 300px 40px 40px; }
.why-image-label { border-radius:17px; color:var(--brand); font:800 13px/1.55 var(--font-heading); }
.why-image-label i { color:var(--leaf); }
.why-grid { margin-top:31px; }
.why-card { min-height:236px; padding:29px 25px; border-radius:25px; border:1px solid #E0EADD; background:#F9FCF7; transition:background .35s,transform .35s,border-color .35s,box-shadow .35s; }
.why-card:hover { background:#EDF7E9; transform:translateY(-8px); border-color:#B2D49D; box-shadow:0 18px 36px rgba(15,81,50,.12); }
.why-card-icon { font-size:24px; color:var(--brand); margin-bottom:18px; }
.why-card h3 { font:800 17px/1.42 var(--font-heading); color:var(--ink); margin-bottom:12px; }
.why-card p { font:500 14.5px/1.76 var(--font-main); color:var(--muted); }
.section-journey { background:var(--brand-dark); }
.section-journey::after { background:radial-gradient(ellipse at 20% 70%,rgba(112,178,66,.18),transparent 64%); }
.section-journey .section-title { color:white; }
.journey-backdrop { opacity:.08; }
.journey-card { border-radius:28px; border:1px solid rgba(205,241,205,.18); background:rgba(255,255,255,.07); padding:32px 27px; min-height:265px; }
.journey-card:hover { border-color:#9CCB83; background:rgba(194,235,176,.12); transform:translateY(-8px); }
.journey-icon { background:rgba(112,178,66,.22); color:#C3ECA7; width:58px; height:58px; font-size:21px; }
.journey-card h3 { font:800 18px/1.5 var(--font-heading); color:white; }
.journey-card p { font:500 15px/1.78 var(--font-main); color:#D1E3D7; }
/* Cards start gathered in the centre, then split outward only when the grid enters the viewport. */
.js-animated .split-grid .split-col { opacity:.18; transition:transform 1s cubic-bezier(.16,1,.3,1),opacity .8s ease; will-change:transform,opacity; }
.js-animated .split-grid:not(.is-split) .split-col:nth-child(4n + 1) { transform:translate3d(84%,28px,0) scale(.92); }
.js-animated .split-grid:not(.is-split) .split-col:nth-child(4n + 2) { transform:translate3d(28%,28px,0) scale(.94); }
.js-animated .split-grid:not(.is-split) .split-col:nth-child(4n + 3) { transform:translate3d(-28%,28px,0) scale(.94); }
.js-animated .split-grid:not(.is-split) .split-col:nth-child(4n + 4) { transform:translate3d(-84%,28px,0) scale(.92); }
.js-animated .split-grid.is-split .split-col { opacity:1; transform:translate3d(0,0,0) scale(1); }
.js-animated .split-grid.is-split .split-col:nth-child(2) { transition-delay:70ms; }
.js-animated .split-grid.is-split .split-col:nth-child(3) { transition-delay:110ms; }
.js-animated .split-grid.is-split .split-col:nth-child(4) { transition-delay:160ms; }
/* Insurance logo marquee loops forever, pauses on hover/focus, no button. */
.section-insurance { background:white; padding-top:86px; padding-bottom:85px; }
.insurance-title { margin-bottom:43px; }
.insurance-carousel { padding:14px 0 24px; }
.insurance-track { animation:logoMarquee 36s linear infinite; }
.insurance-logo { border:1px solid #E4EBE2; border-radius:23px; background:white; height:128px; box-shadow:0 6px 24px rgba(15,81,50,.055); }
.insurance-logo:hover { border-color:#9EC68B; box-shadow:0 15px 28px rgba(15,81,50,.12); }
.insurance-note { font-size:14px; line-height:1.7; color:var(--muted); margin-top:20px; }
/* Auto-playing looping video slider; opening a video still requires a click. */
.section-videos { background:#F2F7F0; }
.video-swiper { padding-bottom:25px!important; }
.video-card { border-radius:29px; background:#DDE8D8; box-shadow:0 19px 43px rgba(17,58,38,.11); }
.video-card:hover { box-shadow:0 27px 50px rgba(17,58,38,.2); }
.play-circle { background:rgba(15,81,50,.48); border-color:rgba(255,255,255,.7); }
.video-card:hover .play-circle { background:var(--brand); }
.video-caption { font-size:15px; }
.video-modal .modal-content { background:var(--brand-dark); border-radius:23px; }
.video-modal-header h2 { font:800 16px/1.5 var(--font-heading); }
.video-close { background:#1B6947; }
.video-player { background:#0A3526; }
.video-modal-footer a { font:800 14px var(--font-heading); color:#C2E3AF; }
/* FAQ, clearer larger text, tactile hover. */
.section-faq { background:white; }
.faq-stack { border-top:1px solid #D8E6D7; }
.faq-item { border-bottom:1px solid #D8E6D7; }
.faq-question { padding:25px 8px 25px 0; font:800 17px/1.65 var(--font-heading); color:var(--ink); }
.faq-question i { width:39px; height:39px; border-radius:13px; color:var(--brand); background:#E7F2E2; font-size:15px; }
.faq-item.is-open .faq-question i { background:var(--brand); color:white; }
.faq-answer p { font:500 15.5px/1.9 var(--font-main); color:var(--muted); padding-bottom:27px; }
/* Closing invitation preceding last-section enquiry. */
.closing-cta { background:var(--brand-dark); padding:clamp(88px,8.5vw,133px) 0; }
.closing-bg { opacity:.2; filter:saturate(.6); }
.closing-cta::after { background:rgba(9,54,34,.78); }
.closing-cta h2 { font:800 clamp(39px,4.9vw,70px)/1.16 var(--font-heading); letter-spacing:-2.1px; }
.closing-cta p { font:500 18px/1.85 var(--font-main); color:#DFEBE1; }
.closing-location { color:#CAE8B5; font:800 14px/1.5 var(--font-heading); }
.closing-disclaimer { font:500 14px/1.83 var(--font-main); color:#C7DCCE; }
/* Last section: generous contact composition; existing secure form moved here. */
.section-consultation { background:linear-gradient(130deg,#F0F7EC,#FAFCF8 65%); scroll-margin-top:100px; }
.consultation-intro { max-width:590px; }
.consultation-intro .section-title { margin:18px 0 23px; }
.consultation-intro .section-lead { margin-bottom:30px; }
.consultation-photo { height:340px; overflow:hidden; border-radius:32px 120px 32px 32px; box-shadow:0 18px 49px rgba(18,69,39,.1); }
.consultation-photo img { width:100%; height:100%; object-fit:cover; }
.consultation-contacts { display:flex; gap:12px; flex-wrap:wrap; margin-top:24px; }
.consultation-contacts .btn-outline-dark { min-height:52px; padding:12px 18px; font-size:13px; }
.enquiry-card { max-width:620px; margin-left:auto; color:var(--ink); background:#fff; border:1px solid #DCE8D8; border-radius:32px; box-shadow:0 29px 70px rgba(18,68,41,.1); padding:clamp(27px,3.2vw,48px); }
.form-head { margin-bottom:29px; }
.small-kicker { color:var(--brand); font:800 12px/1.6 var(--font-heading); letter-spacing:1.3px; }
.small-kicker i { color:var(--leaf); }
.form-head h2 { font:800 clamp(27px,2.4vw,36px)/1.28 var(--font-heading); color:var(--ink); letter-spacing:-1.3px; }
.form-head p { font:500 15.5px/1.8 var(--font-main); color:var(--muted); }
.field-wrap { margin-bottom:18px; }
.field-wrap label { font:800 13px/1.5 var(--font-heading); color:var(--ink); margin-bottom:9px; }
.field-wrap label span { color:#D36754; }
.field-input { min-height:55px; border:1px solid #DCE7DA; border-radius:13px; background:#FAFCF9; gap:13px; padding:0 16px; }
.field-input:focus-within { border-color:var(--leaf); box-shadow:0 0 0 4px rgba(112,178,66,.13); }
.field-input i { font-size:15px; color:var(--brand); }
.field-input input,.field-input select { min-height:54px; font:600 14px/1.5 var(--font-main); color:var(--ink); }
.field-input input::placeholder { color:#809489; }
.consent-line { gap:12px; margin:21px 0; }
.consent-line input { accent-color:var(--brand); width:20px; height:20px; }
.consent-line label { font:500 13px/1.72 var(--font-main); color:#5B6E61; }
.consent-line a { color:var(--brand); }
.form-submit { min-height:60px; font-size:15px; }
.form-reassurance { font:500 13px/1.65 var(--font-main); color:#617667; gap:10px; }
.form-reassurance i { color:var(--brand); font-size:15px; }
.form-feedback { font-size:14px; }
/* Footer typography substantially enlarged for readability. */
.footer { background:var(--brand-dark); color:#ECF5ED; padding-top:86px; }
.footer-top { padding-bottom:69px; }
.footer-logo img { width:195px; }
.footer-blurb { font:500 15px/1.85 var(--font-main); color:#C5DCCB; }
.footer h3 { font:800 17px/1.55 var(--font-heading); color:#FFF; margin-bottom:23px; }
.footer-list,.footer-contact { gap:14px; }
.footer-list a,.footer-contact a,.footer-contact li { font:500 15px/1.75 var(--font-main); color:#C9E1D1; }
.footer-list a:hover,.footer-contact a:hover,.map-link:hover { color:#B9E69E; }
.footer-contact li i { color:#A4D58D; font-size:15px; margin-top:5px; }
.footer-side-note { font:500 15px/1.8 var(--font-main); color:#C9E1D1; }
.social-links a { width:44px; height:44px; font-size:16px; color:#D7E8DC; border-color:rgba(242,252,245,.24); }
.social-links a:hover { background:var(--leaf); border-color:var(--leaf); color:var(--brand-dark); }
.map-link { font:800 14px/1.5 var(--font-heading); color:#CEE2D1; }
.footer-bottom { padding:25px 0; font:500 13.5px/1.6 var(--font-main); color:#BCD4C4; }
.footer-bottom a { color:#D5E7D7; }
.whatsapp-float { background:#1CA65A; box-shadow:0 13px 32px rgba(15,81,50,.24); }
.whatsapp-float span { font-size:13px; }
.back-to-top { border-color:#CDE5C2; color:var(--brand); width:50px; height:50px; }
.back-to-top:hover { background:var(--brand); }
.privacy-dialog { border-radius:25px; }
.privacy-dialog .modal-title { font:800 26px var(--font-heading); }
.privacy-dialog .modal-body { font-size:15px; }
/* Responsive layout and motion fallbacks. */
@media (max-width:1199.98px) {
  .navbar-dark .navbar-nav .nav-link { font-size:14px; }
  .hero-editorial h1 { font-size:clamp(44px,5.3vw,64px); }
  .pain-image { height:235px; }
  .pain-icon { top:208px; }
  .pain-copy h3 { font-size:18px; }
}
@media (max-width:991.98px) {
  .section { padding:82px 0; }
  .hero-editorial .hero-row { padding-top:62px; padding-bottom:70px; min-height:0; }
  .hero-editorial .hero-copy { max-width:740px; }
  .hero-visual { max-width:610px; margin:0 auto; height:570px; }
  .hero-editorial h1 { font-size:clamp(46px,7vw,70px); }
  .consultation-intro { max-width:730px; }
  .consultation-photo { height:310px; }
  .enquiry-card { margin:0 auto; max-width:750px; }
  .nav-actions { margin-top:10px; }
}
@media (max-width:767.98px) {
  .section { padding:70px 0; }
  .section-title { font-size:clamp(34px,7.3vw,47px); letter-spacing:-1.55px; }
  .section-lead,.body-copy { font-size:16.5px; }
  .hero-editorial .hero-row { padding-top:47px; padding-bottom:56px; }
  .hero-editorial h1 { font-size:clamp(43px,8.8vw,61px); letter-spacing:-1.9px; }
  .hero-editorial .hero-subtitle { font-size:19px; }
  .hero-editorial .hero-description,.hero-editorial .hero-description-secondary { font-size:15.5px; }
  .hero-editorial .hero-buttons .btn-luxe,.hero-editorial .hero-buttons .btn-outline-dark { min-height:57px; font-size:14px; padding:14px 18px; }
  .hero-visual { height:480px; }
  .hero-visual-seal { width:134px; height:134px; left:1%; }
  .hero-visual-seal i { font-size:24px; }
  .hero-visual-seal span { font-size:10px; }
  .hero-photo-small { border-width:7px; }
  .image-duo-small { border-color:var(--ivory); }
  .pain-image { height:250px; }
  .pain-icon { top:224px; }
  .pain-copy p,.therapy-body p { font-size:15.5px; }
  .therapy-image { height:245px; }
  .why-card { min-height:205px; }
  .why-card p { font-size:15px; }
  .insurance-logo { width:200px; height:112px; }
  .insurance-track { gap:15px; animation-duration:35s; }
  .faq-question { font-size:16px; }
  .closing-cta p { font-size:16.5px; }
  .closing-disclaimer { font-size:13px; }
  .footer { padding-top:75px; }
  .footer-bottom { font-size:13.5px; }
  .js-animated .split-grid:not(.is-split) .split-col:nth-child(odd) { transform:translate3d(28px,20px,0) scale(.96); }
  .js-animated .split-grid:not(.is-split) .split-col:nth-child(even) { transform:translate3d(-28px,20px,0) scale(.96); }
}
@media (max-width:479.98px) {
  .navbar-brand img { width:137px; height:69px; }
  .hero-editorial h1 { font-size:clamp(39px,10vw,52px); letter-spacing:-1.5px; }
  .hero-editorial .hero-buttons { flex-direction:column; }
  .hero-editorial .hero-buttons .btn-luxe,.hero-editorial .hero-buttons .btn-outline-dark { width:100%; }
  .hero-visual { height:380px; margin-left:0; }
  .hero-photo-main { left:11%; width:80%; height:89%; }
  .hero-photo-small { width:39%; height:39%; right:-3%; }
  .hero-visual-seal { width:100px; height:100px; left:-1%; top:49%; }
  .hero-visual-seal i { font-size:18px; }
  .hero-visual-seal span { font-size:8px; letter-spacing:.2px; }
  .hero-visual-backdrop { inset:23px 2% 15px 14%; }
  .hero-orbit { display:none; }
  .eyebrow { font-size:11px; letter-spacing:1.4px; }
  .image-duo-main { height:380px; }
  .floating-medallion span { font-size:9px; }
  .pain-image { height:260px; }
  .pain-icon { top:236px; }
  .stress-main { height:350px; }
  .therapy-image { height:260px; }
  .consultation-photo { height:235px; border-radius:26px 80px 26px 26px; }
  .consultation-contacts { flex-direction:column; }
  .consultation-contacts .btn-outline-dark { width:100%; }
  .enquiry-card { border-radius:25px; padding:28px 21px; }
  .form-head h2 { font-size:29px; }
  .footer-blurb,.footer-list a,.footer-contact a,.footer-contact li,.footer-side-note { font-size:15px; }
  .footer h3 { font-size:17px; }
  .whatsapp-float span { display:none; }
  .js-animated .split-grid:not(.is-split) .split-col:nth-child(odd) { transform:translate3d(24px,16px,0) scale(.97); }
  .js-animated .split-grid:not(.is-split) .split-col:nth-child(even) { transform:translate3d(-24px,16px,0) scale(.97); }
}
@media (prefers-reduced-motion:reduce) {
 .js-animated .split-grid .split-col,.js-animated .split-grid:not(.is-split) .split-col { opacity:1!important; transform:none!important; transition:none!important; }
 .js-animated img[data-smooth]:not(.is-loaded) { opacity:1; filter:none; transform:none; }
 .insurance-track { animation:none; }
}
