/* Keep the established colour, type and icon language. */
.space-film .type-section, .treatments-section .type-section,
.simple-development .type-section, .clinic-moments .type-section,
.team-intro .type-section, .faq-section .type-section, .contact-section .type-section {
 font-size:var(--font-size-section); line-height:var(--line-height-heading);
 font-weight:700; letter-spacing:var(--tracking-heading);
}
.treatment-card-top { display:flex; margin-bottom:22px; }
.treatment-card-top svg { width:78px; height:78px; }

.space-film { padding-block:72px 56px; }
.space-film h2 { margin-bottom:32px; }
.simple-video { position:relative; aspect-ratio:16/9; background:#e5e9df; border-radius:8px; overflow:hidden; }
.simple-video iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }
.treatments-section { padding-block:48px 72px; }
.section-intro { margin-top:18px; color:var(--color-body); font-size:17px; }
.treatment-grid { margin-top:36px; gap:0 40px; }
.treatment-card { padding:26px 0; }
.treatment-card h3 { font-size:23px; }
.treatment-card > p { margin:12px 0 18px; font-size:16px; }
.treatment-card-link { text-decoration:underline; text-underline-offset:5px; }
.treatment-card:hover { translate:none; }
.simple-development { padding:60px var(--page-gutter); background:#f0e8dd; }
.simple-development h2 { text-align:center; }
.development-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; margin:40px 0 30px; }
.development-stage { margin:0; text-align:center; min-width:0; }
.stage-visual { height:210px; display:flex; align-items:end; justify-content:center; }
.development-strip .baby-scene { width:100%; height:180px; max-width:270px; overflow:visible; }
.development-stage:last-child .baby-scene { height:210px; }
.development-strip .baby-scene g { transform-box:fill-box; }
.development-strip .lift-head, .development-strip .crawl-head { transform-origin:40% 90%; }
.development-strip .baby-roll { transform-origin:50% 65%; }
.development-strip .crawl-near, .development-strip .crawl-far { transform-origin:50% 0; }
.development-strip .walk-near, .development-strip .walk-far { transform-origin:35% 0; }
.development-strip .walk-arm { transform-origin:50% 30%; }
.development-stage figcaption { margin-top:24px; }
.development-stage h3 { font-size:20px; font-weight:900; color:var(--home-ink); line-height:1.25; }
.development-stage figcaption p { font-size:14px; line-height:1.6; color:var(--color-body); margin:10px auto 0; max-width:23ch; }
.development-caption { display:flex; align-items:center; justify-content:space-between; gap:24px; border-top:1px solid var(--home-line); padding-top:24px; }
.development-caption > p { font-size:14px; line-height:1.6; color:var(--color-body); max-width:580px; }
.stage-motion-toggle { min-height:44px; border:0; background:none; color:var(--home-ink); font:inherit; font-size:12px; text-decoration:underline; text-underline-offset:4px; cursor:pointer; flex-shrink:0; }
.stage-motion-toggle:focus-visible { outline:2px solid var(--home-ink); outline-offset:4px; }
.simple-development:not(.motion-ready) .baby-scene *, .simple-development.motion-paused .baby-scene *, .simple-development.motion-offscreen .baby-scene * { animation-play-state:paused !important; }
.clinic-moments, .team-intro, .faq-section, .contact-section { padding-block:64px; }
.moments-intro { margin-bottom:30px; align-items:center; }
.moments-intro > p { padding-top:0; }
.photo-placeholder__label { font-size:17px; }
.team-intro { border-radius:0; background:transparent; border-block:1px solid var(--home-line); }
.team-portraits { transform:none; }
.portrait-slot:nth-child(2) { margin-top:0; transform:none; }
.portrait-slot { box-shadow:none; padding:0; background:transparent; }
.portrait-placeholder { border-radius:8px; }
.faq-item summary { min-height:76px; }
.faq-item summary::before { display:none; }
.contact-section { border-radius:0; }
@media (min-width:701px) and (max-width:1000px) {
 .development-strip { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 40px; }
}
@media(max-width:700px) {
 .space-film { padding-block:48px 32px; }
 .space-film h2 { margin-bottom:24px; }
 .treatments-section { padding-block:32px 48px; }
 .treatment-grid { gap:0 24px; margin-top:26px; }
 .treatment-card h3 { font-size:19px; }
 .treatment-card > p { font-size:14px; }
 .section-intro { font-size:16px; }
 .simple-development { padding-block:40px; }
 .treatment-card-top svg { width:66px; height:66px; }
 .development-strip { grid-template-columns:1fr 1fr; gap:26px 18px; margin-top:24px; }
 .stage-visual { height:150px; }
 .development-strip .baby-scene { height:115px; max-width:170px; }
 .development-stage:last-child .baby-scene { height:145px; }
 .development-stage figcaption { margin-top:14px; }
 .development-stage h3 { font-size:17px; }
 .development-stage figcaption p { font-size:12px; }
 .development-caption { display:block; }
 .stage-motion-toggle { margin-top:12px; padding:0; }
 .clinic-moments, .team-intro, .faq-section, .contact-section { padding-block:48px; }
 .photo-placeholder__label { font-size:15px; }
}
@media(prefers-reduced-motion:reduce) { .development-strip * { animation:none !important; } .stage-motion-toggle { display:none; } }

.development-caption { justify-content:center; border:0; padding-top:12px; }
.development-caption .btn2 { gap:10px; }
.development-strip .baby-scene--head, .development-strip .baby-scene--roll { max-width:none; height:210px; }
.development-strip .baby-scene .prone-head { transform-box:view-box; transform-origin:258px 185px; animation:prone-lift 4s ease-in-out 1 both; }
.development-strip .baby-scene .rolling-baby { transform-box:view-box; transform-origin:205px 209px; animation:roll-to-side 4.4s ease-in-out 1 both; }
.development-strip .baby-scene .rolling-arm { transform-box:view-box; transform-origin:172px 193px; animation:roll-reach 4.4s ease-in-out 1 both; }
.development-strip .baby-scene .rolling-knee { transform-box:view-box; transform-origin:240px 196px; animation:roll-knee 4.4s ease-in-out 1 both; }
.development-strip .baby-crawl, .development-strip .crawl-near, .development-strip .crawl-far, .development-strip .crawl-head, .development-strip .baby-walk, .development-strip .walk-near, .development-strip .walk-far, .development-strip .walk-arm { animation-iteration-count:2; }
.simple-development:not(.motion-ready) .baby-scene * { animation:none !important; }
@keyframes prone-lift { 0%,100% { transform:rotate(13deg); } 40%,70% { transform:rotate(-9deg); } }
@keyframes roll-to-side { 0%,100% { transform:translateX(0) rotate(0) scaleY(1); } 45%,65% { transform:translateX(12px) rotate(9deg) scaleY(.83); } }
@keyframes roll-reach { 0%,100% { transform:rotate(0); } 45%,65% { transform:rotate(-28deg); } }
@keyframes roll-knee { 0%,100% { transform:rotate(0); } 45%,65% { transform:rotate(-16deg); } }
@media(max-width:700px) {
 .development-strip .baby-scene--head, .development-strip .baby-scene--roll { height:150px; }
 .development-caption .btn2 { font-size:14px; text-align:center; padding-inline:18px; }
}

/* Treatment cards: defined surfaces on desktop, easy-to-scan rows on phones. */
.treatment-grid { gap:18px; }
.treatment-card {
  min-height:100%; padding:24px; border:1px solid rgba(54,87,79,.14); border-radius:16px;
  background:#fffdf9; box-shadow:0 5px 18px rgba(54,87,79,.045); transition:box-shadow .2s ease,border-color .2s ease;
}
.treatment-card:hover { translate:none; border-color:rgba(54,87,79,.32); box-shadow:0 8px 22px rgba(54,87,79,.09); }
.treatment-card-top { margin-bottom:20px; }
.treatment-card-top svg { width:74px; height:74px; padding:5px; border-radius:19px; }
.treatment-card--1 svg, .treatment-card--4 svg { border-radius:19px; }
.treatment-card--6 svg { color:#94506e; background:#efdae2; }
.treatment-card--7 svg { color:#426580; background:#dce8ee; }
.treatment-card h3 { min-height:2.4em; font-size:21px; }
.treatment-card > p { margin:10px 0 22px; font-size:14px; line-height:1.65; }
.treatment-card-link { padding-top:13px; border-top:1px solid rgba(54,87,79,.12); font-size:12px; font-weight:700; text-decoration:none; }
.treatment-card-link::after { content:"→"; font-size:20px; line-height:1; font-weight:400; }
.treatment-card:hover .treatment-card-link { text-decoration:none; }
.treatment-card:hover svg { transform:none; }
@media(min-width:701px) and (max-width:1000px) {
 .treatment-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
}
@media(max-width:700px) {
 .treatment-grid { grid-template-columns:1fr; gap:12px; margin-top:24px; }
 .treatment-card {
  display:grid; grid-template-columns:54px minmax(0,1fr); grid-template-rows:auto auto auto;
  column-gap:15px; row-gap:5px; align-items:start; padding:17px; border-radius:13px;
 }
 .treatment-card-top { grid-column:1; grid-row:1 / span 3; margin:0; }
 .treatment-card-top svg { width:64px; height:64px; padding:4px; border-radius:17px; }
 .treatment-card h3 { grid-column:2; grid-row:1; min-height:0; align-self:center; font-size:18px; }
 .treatment-card > p { grid-column:2; grid-row:2; margin:3px 0 8px; max-width:none; font-size:13px; line-height:1.5; }
 .treatment-card-link { grid-column:2; grid-row:3; padding-top:7px; font-size:11px; }
}
