/*
======================================================================
Dr. Cătălin Mătușa / MIND SUPORT MEDICAL
FULL STYLESHEET — V6
======================================================================

Acest fișier conține:
1. stilurile complete ale designului premium de bază;
2. toate modificările V5;
3. ultimele modificări V6 pentru:
   - hero;
   - afilieri profesionale;
   - secțiunea Profil profesional;
   - secțiunea MIND SUPORT MEDICAL;
   - slider clinică;
   - recenzii;
   - contact / programări;
   - footer;
   - responsive desktop / tablet / mobile.

Înlocuiește complet:
assets/css/styles.css

cu acest fișier.

După înlocuire, poți elimina din index.html blocul:
<style id="v6-layout-overrides"> ... </style>
pentru că toate acele reguli sunt deja incluse aici.
======================================================================
*/

:root {
  --navy-950: #061923;
  --navy-900: #0c2635;
  --navy-850: #0e3040;
  --navy-800: #123b4d;
  --navy-700: #23576a;
  --teal-500: #28b9be;
  --teal-400: #68d2d1;
  --teal-300: #9ee4df;
  --teal-100: #dff4f1;
  --teal-050: #eef9f7;
  --green: #16855f;
  --green-soft: #dcf3e9;
  --ink: #102c38;
  --text: #435e69;
  --muted: #748991;
  --stone: #f1eee8;
  --paper: #f8faf9;
  --white: #fff;
  --gold: #f4b62d;
  --line: rgba(12, 38, 53, 0.12);
  --line-dark: rgba(255, 255, 255, 0.12);
  --shadow-sm: 0 14px 36px rgba(6, 25, 35, 0.08);
  --shadow-md: 0 28px 72px rgba(6, 25, 35, 0.14);
  --shadow-lg: 0 48px 120px rgba(6, 25, 35, 0.24);
  --radius-sm: 14px;
  --radius-md: 22px;
  --radius-lg: 34px;
  --shell: 1240px;
  --header-height: 88px;
  --serif: "Iowan Old Style", "Palatino Linotype", Palatino, Baskerville, Georgia, serif;
  --sans: Inter, Aptos, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 96px; }
body {
  margin: 0;
  min-width: 320px;
  color: var(--text);
  background: var(--paper);
  font-family: var(--sans);
  font-size: 16px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  overflow-x: clip;
}
body.menu-open { overflow: hidden; }
::selection { color: var(--navy-950); background: var(--teal-400); }
img { display: block; max-width: 100%; height: auto; }
svg { display: block; width: 100%; height: 100%; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 3px solid rgba(40, 185, 190, 0.55); outline-offset: 4px; }
h1, h2, h3, p, blockquote, figure { margin-top: 0; }
h1, h2 { margin-bottom: 0; font-family: var(--serif); font-weight: 500; letter-spacing: -0.045em; }
h3 { margin-bottom: 0; color: var(--ink); line-height: 1.25; }

.shell { width: min(calc(100% - 48px), var(--shell)); margin-inline: auto; }
.skip-link {
  position: fixed; z-index: 1000; top: -100px; left: 16px;
  padding: 11px 16px; border-radius: 10px;
  color: var(--navy-950); background: var(--teal-400);
  font-size: .82rem; font-weight: 850; transition: top .2s ease;
}
.skip-link:focus { top: 16px; }
.page-progress { position: fixed; z-index: 350; inset: 0 0 auto; height: 3px; pointer-events: none; }
.page-progress span {
  display: block; width: 100%; height: 100%; transform: scaleX(0); transform-origin: left;
  background: linear-gradient(90deg, var(--teal-500), var(--teal-300), #cdf5e8);
  will-change: transform;
}

/* Header */
.site-header {
  position: fixed; z-index: 250; inset: 0 0 auto; height: var(--header-height);
  color: var(--white); border-bottom: 1px solid transparent;
  transition: height .35s ease, background-color .35s ease, border-color .35s ease, box-shadow .35s ease, color .35s ease;
}
.site-header.is-scrolled {
  height: 76px; color: var(--ink); background: rgba(249, 251, 250, .91);
  border-color: rgba(12, 38, 53, .08); box-shadow: 0 9px 32px rgba(6, 25, 35, .06);
  backdrop-filter: blur(18px) saturate(145%);
}
.header-inner { height: 100%; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 38px; }
.brand { display: inline-flex; align-items: center; gap: 13px; min-width: max-content; }
.brand-mark { width: 45px; height: 45px; flex: 0 0 auto; color: var(--white); }
.brand-mark svg rect { fill: rgba(255,255,255,.07); stroke: rgba(255,255,255,.30); stroke-width: 1; }
.brand-mark svg path { fill: none; stroke: currentColor; stroke-width: 2.8; stroke-linecap: round; }
.brand-mark svg circle { fill: var(--teal-400); }
.site-header.is-scrolled .brand-mark { color: var(--white); }
.site-header.is-scrolled .brand-mark svg rect { fill: var(--navy-900); stroke: var(--navy-900); }
.brand-text { display: flex; flex-direction: column; line-height: 1.12; }
.brand-text strong { font-family: var(--serif); font-size: 1.12rem; font-weight: 600; letter-spacing: -.02em; }
.brand-text small { margin-top: 5px; font-size: .60rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; opacity: .65; }
.site-nav { justify-self: center; display: flex; align-items: center; gap: clamp(17px,2.1vw,32px); }
.site-nav a { position: relative; padding: 10px 0; font-size: .78rem; font-weight: 750; opacity: .75; transition: opacity .2s ease; }
.site-nav a::after {
  content: ""; position: absolute; right: 100%; bottom: 3px; left: 0; height: 2px; border-radius: 99px;
  background: var(--teal-400); transition: right .28s ease;
}
.site-nav a:hover, .site-nav a.is-active { opacity: 1; }
.site-nav a:hover::after, .site-nav a.is-active::after { right: 0; }
.header-cta {
  min-height: 44px; padding: 0 17px; display: inline-flex; align-items: center; gap: 9px;
  border: 1px solid rgba(255,255,255,.24); border-radius: 999px; background: rgba(255,255,255,.07);
  font-size: .74rem; font-weight: 850; transition: .25s ease;
}
.header-cta svg { width: 17px; height: 17px; fill: currentColor; }
.header-cta:hover { background: rgba(255,255,255,.14); transform: translateY(-1px); }
.site-header.is-scrolled .header-cta { color: var(--white); border-color: var(--navy-900); background: var(--navy-900); }
.nav-toggle { display: none; width: 46px; height: 46px; padding: 0; border: 1px solid rgba(255,255,255,.25); border-radius: 50%; color: inherit; background: transparent; cursor: pointer; }
.nav-toggle span { display: block; width: 19px; height: 2px; margin: 4px auto; border-radius: 99px; background: currentColor; transition: transform .25s ease, opacity .2s ease; }

/* Hero */
.hero {
  position: relative; min-height: 940px; overflow: hidden; color: var(--white);
  background:
    radial-gradient(circle at 78% 20%, rgba(40,185,190,.20), transparent 31%),
    radial-gradient(circle at 7% 76%, rgba(104,210,209,.10), transparent 27%),
    linear-gradient(132deg, var(--navy-950) 0%, var(--navy-900) 48%, #0d4351 100%);
}
.hero::before {
  content: ""; position: absolute; inset: 0; opacity: .33;
  background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 54px 54px; mask-image: linear-gradient(90deg, black, transparent 60%, black);
}
.hero-aura { position: absolute; border-radius: 50%; pointer-events: none; }
.aura-one {
  width: 590px; height: 590px; right: -230px; top: 70px;
  border: 1px solid rgba(104,210,209,.15); box-shadow: 0 0 0 82px rgba(104,210,209,.022), 0 0 0 164px rgba(104,210,209,.014);
  animation: breathe 7s ease-in-out infinite;
}
.aura-two { width: 280px; height: 280px; left: -100px; bottom: 95px; background: rgba(104,210,209,.055); filter: blur(10px); animation: drift 11s ease-in-out infinite alternate; }
.neural-lines { position: absolute; right: -5%; top: 10%; width: 62%; height: 78%; opacity: .20; }
.neural-lines path { fill: none; stroke: #8fe0dc; stroke-width: 1.3; stroke-dasharray: 7 11; animation: dash 22s linear infinite; }
.neural-lines circle { fill: #8fe0dc; filter: drop-shadow(0 0 7px rgba(143,224,220,.55)); }
.hero-grid {
  position: relative; z-index: 2; min-height: 840px; padding-top: calc(var(--header-height) + 68px); padding-bottom: 64px;
  display: grid; grid-template-columns: minmax(0,1.06fr) minmax(400px,.78fr); align-items: center; gap: clamp(60px,7vw,110px);
}
.hero-copy { max-width: 760px; }
.hero-kicker { display: flex; align-items: center; gap: 10px; color: #9de4df; font-size: .69rem; font-weight: 900; letter-spacing: .18em; text-transform: uppercase; }
.kicker-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--teal-400); box-shadow: 0 0 0 6px rgba(104,210,209,.1); }
.hero h1 { max-width: 790px; margin: 23px 0 0; color: var(--white); font-size: clamp(4rem,6.7vw,7rem); line-height: .94; }
.hero h1 em { color: var(--teal-400); font-weight: 500; }
.hero-name { margin: 28px 0 8px; color: var(--white); font-family: var(--serif); font-size: clamp(1.55rem,2.3vw,2.3rem); letter-spacing: -.02em; }
.hero-intro { max-width: 650px; margin-bottom: 31px; color: rgba(235,246,247,.66); font-size: 1rem; line-height: 1.8; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.button {
  position: relative; min-height: 66px; padding: 10px 21px 10px 11px; display: inline-flex; align-items: center; gap: 13px;
  overflow: hidden; border: 1px solid transparent; border-radius: 17px; transition: transform .22s ease, background-color .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.button::before { content: ""; position: absolute; width: 90px; height: 90px; left: -110px; top: -12px; border-radius: 50%; background: rgba(255,255,255,.16); transition: left .45s ease; }
.button:hover::before { left: calc(100% + 20px); }
.button:hover { transform: translateY(-2px); }
.button-primary { color: var(--navy-950); background: var(--teal-400); box-shadow: 0 17px 39px rgba(40,185,190,.18); }
.button-primary:hover { background: #88dfdb; box-shadow: 0 22px 49px rgba(40,185,190,.25); }
.button-whatsapp { color: var(--white); border-color: rgba(255,255,255,.17); background: rgba(255,255,255,.065); backdrop-filter: blur(12px); }
.button-whatsapp:hover { border-color: rgba(117,219,180,.34); background: rgba(70,172,139,.15); }
.button-icon { position: relative; z-index: 1; width: 44px; height: 44px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 13px; }
.button-primary .button-icon { color: var(--white); background: var(--navy-900); }
.button-whatsapp .button-icon { color: #126b4e; background: #d9f2e8; }
.button-icon svg { width: 22px; height: 22px; fill: currentColor; }
.button > span:last-child { position: relative; z-index: 1; display: flex; flex-direction: column; line-height: 1.12; }
.button small { margin-bottom: 5px; font-size: .60rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; opacity: .64; }
.button strong { font-size: .88rem; font-weight: 850; }
.hero-metrics { max-width: 720px; margin-top: 39px; padding-top: 25px; display: grid; grid-template-columns: .7fr 1.1fr .8fr; border-top: 1px solid rgba(255,255,255,.10); }
.metric { min-height: 64px; padding: 0 20px; display: flex; flex-direction: column; justify-content: center; border-right: 1px solid rgba(255,255,255,.09); }
.metric:first-child { padding-left: 0; }
.metric:last-child { border-right: 0; }
.metric strong { color: var(--white); font-family: var(--serif); font-size: 1.2rem; font-weight: 550; line-height: 1; }
.metric > span { margin-top: 7px; color: rgba(235,246,247,.45); font-size: .64rem; line-height: 1.35; }
.rating-metric { transition: color .2s ease; }
.rating-metric:hover strong { color: var(--teal-400); }
.rating-metric small { color: rgba(255,255,255,.40); font-family: var(--sans); font-size: .68rem; }
.rating-metric b { color: var(--gold); letter-spacing: .08em; }
.hero-visual { position: relative; width: min(100%,530px); justify-self: end; padding: 27px 20px 32px; will-change: transform; }
.portrait-frame {
  position: relative; z-index: 2; padding: 12px; overflow: hidden; border: 1px solid rgba(255,255,255,.15); border-radius: 47% 47% 31px 31px;
  background: linear-gradient(rgba(8,47,61,.08),rgba(8,47,61,.08)), url('../img/doctor-catalin-matusa.jpg') center 48% / cover no-repeat;
  box-shadow: var(--shadow-lg); transition: transform .35s ease;
}
.portrait-frame:hover { transform: translateY(-4px); }
.portrait-frame::before { content: ""; position: absolute; z-index: 3; inset: 10px; border: 1px solid rgba(255,255,255,.11); border-radius: 46% 46% 24px 24px; pointer-events: none; }
.portrait-frame picture { display: block; aspect-ratio: 1 / 1.13; overflow: hidden; border-radius: 45% 45% 22px 22px; }
.portrait-frame img { width: 100%; height: 100%; object-fit: cover; object-position: center 48%; border-radius: inherit; filter: saturate(.88) contrast(1.02); }
.portrait-glow { position: absolute; z-index: -1; width: 75%; height: 60%; left: 12%; top: 10%; border-radius: 50%; background: rgba(104,210,209,.24); filter: blur(45px); }
.portrait-shade { position: absolute; z-index: 3; inset: 12px; border-radius: 45% 45% 22px 22px; background: linear-gradient(to top, rgba(6,25,35,.77), transparent 48%); pointer-events: none; }
.portrait-caption { position: absolute; z-index: 4; right: 34px; bottom: 34px; left: 34px; color: var(--white); }
.portrait-caption span { display: block; color: var(--teal-300); font-size: .63rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.portrait-caption strong { display: block; margin-top: 7px; font-family: var(--serif); font-size: 1.45rem; font-weight: 550; }
.floating-rating, .floating-clinic { position: absolute; z-index: 6; display: flex; align-items: center; border-radius: 18px; backdrop-filter: blur(15px); box-shadow: 0 24px 60px rgba(6,25,35,.23); }
.floating-rating { left: -44px; bottom: 78px; width: 196px; min-height: 88px; padding: 15px 16px; gap: 11px; color: var(--ink); background: rgba(255,255,255,.95); border: 1px solid rgba(12,38,53,.08); transition: .25s ease; }
.floating-rating:hover { transform: translateY(-5px); box-shadow: 0 31px 72px rgba(6,25,35,.28); }
.google-g { width: 36px; height: 36px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 50%; color: var(--white); background: linear-gradient(135deg,#4285f4,#34a853); font-size: 1rem; font-weight: 900; }
.floating-rating > span:nth-child(2) { display: flex; flex-direction: column; line-height: 1.15; }
.floating-rating small { color: var(--muted); font-size: .58rem; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.floating-rating strong { margin-top: 4px; color: var(--navy-900); font-family: var(--serif); font-size: 1.25rem; }
.floating-rating b { position: absolute; left: 63px; bottom: 11px; color: var(--gold); font-size: .56rem; letter-spacing: .06em; }
.floating-clinic { right: -25px; top: 87px; max-width: 190px; padding: 14px; gap: 11px; color: var(--white); background: rgba(7,31,44,.64); border: 1px solid rgba(255,255,255,.14); }
.clinic-symbol { width: 38px; height: 38px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 12px; color: var(--navy-950); background: var(--teal-400); font-size: 1.25rem; }
.floating-clinic > span:last-child { display: flex; flex-direction: column; line-height: 1.2; }
.floating-clinic small { color: rgba(255,255,255,.52); font-size: .58rem; }
.floating-clinic strong { margin-top: 4px; color: var(--white); font-size: .68rem; line-height: 1.35; }
.professional-strip {
  position: relative; z-index: 3; min-height: 108px; padding: 26px 0; display: grid; grid-template-columns: 165px 1fr; align-items: center; gap: 28px;
  border-top: 1px solid rgba(255,255,255,.09);
}
.strip-heading { color: rgba(255,255,255,.42); font-size: .61rem; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.strip-list { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.strip-list span { color: rgba(235,246,247,.64); font-family: var(--serif); font-size: .95rem; line-height: 1.35; }

/* Shared section typography */
.section { position: relative; padding: 124px 0; }
.section-index { display: inline-flex; width: 45px; height: 45px; align-items: center; justify-content: center; border: 1px solid var(--line); border-radius: 50%; color: var(--teal-500); font-size: .65rem; font-weight: 900; }
.section-index.light { border-color: rgba(255,255,255,.14); color: var(--teal-300); }
.eyebrow { margin: 22px 0 16px; color: var(--teal-500); font-size: .68rem; font-weight: 900; letter-spacing: .18em; text-transform: uppercase; }
.eyebrow.light { color: var(--teal-300); }
.section-intro h2, .journey-heading h2, .section-heading-wide h2, .clinic-content h2, .contact-main h2 {
  color: var(--ink); font-size: clamp(2.75rem,4.8vw,5.05rem); line-height: 1;
}
.section-lead { max-width: 480px; margin: 28px 0 0; color: var(--muted); font-size: .93rem; }

/* About */
.about { overflow: hidden; background: var(--paper); }
.about::after { content: ""; position: absolute; width: 560px; height: 560px; right: -370px; top: 80px; border: 1px solid rgba(12,38,53,.055); border-radius: 50%; box-shadow: 0 0 0 85px rgba(12,38,53,.015), 0 0 0 170px rgba(12,38,53,.009); }
.about-layout { position: relative; z-index: 2; display: grid; grid-template-columns: .73fr 1.25fr; gap: clamp(70px,9vw,140px); }
.about-statement { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; }
.about-statement p:first-child { color: var(--ink); font-family: var(--serif); font-size: clamp(1.45rem,2.4vw,2.1rem); line-height: 1.42; }
.about-statement p:last-child { color: var(--muted); font-size: .93rem; }
.care-principles { margin-top: 42px; display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; }
.principle-card { position: relative; min-height: 285px; padding: 25px; overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius-md); background: rgba(255,255,255,.72); transition: .28s ease; }
.principle-card::after { content: ""; position: absolute; width: 130px; height: 130px; right: -86px; bottom: -88px; border-radius: 50%; background: var(--teal-100); transition: transform .45s ease; }
.principle-card:hover { transform: translateY(-5px); border-color: rgba(40,185,190,.32); box-shadow: var(--shadow-sm); }
.principle-card:hover::after { transform: scale(1.7); }
.principle-number { position: absolute; right: 22px; top: 20px; color: rgba(12,38,53,.25); font-size: .61rem; font-weight: 900; }
.principle-icon { width: 48px; height: 48px; margin-bottom: 52px; display: grid; place-items: center; border-radius: 15px; color: var(--navy-900); background: var(--teal-100); }
.principle-icon svg { width: 25px; height: 25px; }
.principle-icon path { fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.principle-card h3 { position: relative; z-index: 1; margin-bottom: 10px; font-family: var(--serif); font-size: 1.3rem; font-weight: 600; }
.principle-card p { position: relative; z-index: 1; margin-bottom: 0; color: var(--muted); font-size: .79rem; }
.professional-quote { position: relative; margin: 44px 0 0; padding: 31px 35px 31px 84px; overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius-md); background: linear-gradient(120deg,rgba(104,210,209,.12),transparent 56%),var(--white); box-shadow: var(--shadow-sm); }
.professional-quote > svg { position: absolute; left: 28px; top: 27px; width: 35px; height: 27px; fill: var(--teal-500); opacity: .9; }
.professional-quote p { margin-bottom: 0; color: var(--ink); font-family: var(--serif); font-size: 1.26rem; line-height: 1.45; }

/* Journey */
.journey { overflow: hidden; color: rgba(235,246,247,.66); background: radial-gradient(circle at 8% 16%,rgba(104,210,209,.08),transparent 25%),linear-gradient(145deg,var(--navy-950),var(--navy-900)); }
.journey-orb { position: absolute; border: 1px solid rgba(104,210,209,.08); border-radius: 50%; }
.journey-orb-a { width: 700px; height: 700px; right: -430px; top: 100px; box-shadow: 0 0 0 90px rgba(104,210,209,.014),0 0 0 180px rgba(104,210,209,.009); }
.journey-orb-b { width: 250px; height: 250px; left: -150px; bottom: 80px; background: rgba(104,210,209,.035); }
.journey-heading { position: relative; z-index: 2; margin-bottom: 67px; display: grid; grid-template-columns: 1fr 385px; align-items: end; gap: 70px; }
.journey-heading h2 { color: var(--white); }
.journey-heading > p { margin-bottom: 5px; color: rgba(235,246,247,.55); font-size: .91rem; }
.timeline { position: relative; z-index: 2; max-width: 1060px; margin-inline: auto; }
.timeline-line { position: absolute; width: 2px; top: 8px; bottom: 8px; left: 176px; overflow: hidden; background: rgba(255,255,255,.08); }
.timeline-line span { display: block; width: 100%; height: 100%; background: linear-gradient(to bottom,var(--teal-400),rgba(104,210,209,.24)); transform: scaleY(0); transform-origin: top; will-change: transform; }
.timeline-item { position: relative; min-height: 151px; display: grid; grid-template-columns: 148px 58px 1fr; }
.timeline-year { padding-top: 31px; color: var(--teal-300); font-size: .73rem; font-weight: 850; letter-spacing: .08em; text-align: right; }
.timeline-dot { position: relative; }
.timeline-dot::before { content: ""; position: absolute; z-index: 2; width: 14px; height: 14px; left: 22px; top: 32px; border: 3px solid var(--navy-900); border-radius: 50%; background: var(--teal-400); box-shadow: 0 0 0 5px rgba(104,210,209,.10); }
.timeline-card { margin-bottom: 18px; padding: 26px 30px; border: 1px solid rgba(255,255,255,.085); border-radius: 18px; background: rgba(255,255,255,.035); backdrop-filter: blur(8px); transition: .28s ease; }
.timeline-item:hover .timeline-card { transform: translateX(5px); border-color: rgba(104,210,209,.20); background: rgba(255,255,255,.055); }
.timeline-item.featured .timeline-card { border-color: rgba(104,210,209,.19); background: linear-gradient(120deg,rgba(104,210,209,.085),rgba(255,255,255,.025)); }
.timeline-item.featured .timeline-dot::before { box-shadow: 0 0 0 5px rgba(104,210,209,.11),0 0 22px rgba(104,210,209,.45); }
.timeline-card > span { color: #87d2d0; font-size: .60rem; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.timeline-card h3 { margin: 8px 0 7px; color: var(--white); font-family: var(--serif); font-size: 1.4rem; font-weight: 550; }
.timeline-card p { max-width: 720px; margin-bottom: 0; color: rgba(235,246,247,.54); font-size: .82rem; }

/* Experience */
.experience { background: var(--stone); }
.section-heading-wide { margin-bottom: 55px; display: grid; grid-template-columns: 1fr 390px; align-items: end; gap: 80px; }
.section-heading-wide > p { margin-bottom: 5px; color: var(--muted); font-size: .91rem; }
.experience-showcase { display: grid; grid-template-columns: 1.08fr .9fr .9fr; gap: 13px; }
.experience-feature { position: relative; min-height: 425px; padding: 31px; overflow: hidden; border: 1px solid transparent; border-radius: 25px; color: rgba(255,255,255,.67); background: var(--navy-900); box-shadow: var(--shadow-sm); }
.experience-feature.light-card { color: var(--text); border-color: var(--line); background: rgba(255,255,255,.72); }
.experience-feature.current-card { color: var(--text); border-color: rgba(40,185,190,.22); background: linear-gradient(145deg,var(--teal-050),rgba(255,255,255,.9)); }
.experience-topline { display: flex; align-items: center; justify-content: space-between; gap: 18px; color: var(--teal-300); font-size: .63rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.light-card .experience-topline, .current-card .experience-topline { color: var(--teal-500); }
.experience-feature h3 { max-width: 400px; margin: 67px 0 9px; color: var(--white); font-family: var(--serif); font-size: clamp(1.75rem,2.6vw,2.6rem); font-weight: 550; line-height: 1.08; }
.light-card h3, .current-card h3 { color: var(--ink); }
.experience-place { margin-bottom: 23px; color: var(--teal-300); font-size: .74rem; font-weight: 800; }
.light-card .experience-place, .current-card .experience-place { color: var(--teal-500); }
.experience-feature > p:last-of-type { margin-bottom: 0; font-size: .82rem; }
.light-card > p:last-of-type, .current-card > p:last-of-type { color: var(--muted); }
.experience-accent { position: absolute; width: 190px; height: 190px; right: -54px; bottom: -54px; color: rgba(104,210,209,.14); }
.experience-accent circle, .experience-accent path { fill: none; stroke: currentColor; stroke-width: 1.3; }
.inline-link { display: inline-flex; margin-top: 30px; gap: 8px; color: var(--ink); border-bottom: 1px solid rgba(12,38,53,.22); font-size: .76rem; font-weight: 850; }
.responsibilities-grid { margin-top: 14px; display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; }
.responsibilities-grid article { min-height: 235px; padding: 25px; border: 1px solid rgba(12,38,53,.10); border-radius: var(--radius-md); background: rgba(255,255,255,.58); transition: .28s ease; }
.responsibilities-grid article:hover { transform: translateY(-4px); border-color: rgba(40,185,190,.31); box-shadow: var(--shadow-sm); }
.responsibility-icon { width: 44px; height: 44px; margin-bottom: 43px; display: grid; place-items: center; border-radius: 14px; color: var(--navy-900); background: var(--teal-100); }
.responsibility-icon svg { width: 24px; height: 24px; }
.responsibility-icon path { fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.responsibilities-grid h3 { margin-bottom: 10px; font-family: var(--serif); font-size: 1.2rem; font-weight: 600; }
.responsibilities-grid p { margin-bottom: 0; color: var(--muted); font-size: .78rem; }

/* Clinic */
.clinic { overflow: hidden; background: var(--paper); }
.clinic-bg-word { position: absolute; right: -25px; top: 35px; color: rgba(12,38,53,.028); font-family: var(--serif); font-size: clamp(10rem,22vw,22rem); font-weight: 700; line-height: 1; pointer-events: none; }
.clinic-layout { position: relative; z-index: 2; display: grid; grid-template-columns: .78fr 1.22fr; align-items: center; gap: clamp(55px,7vw,105px); }
.clinic-content h2 { max-width: 610px; }
.clinic-lead { margin: 29px 0 15px; color: var(--ink); font-family: var(--serif); font-size: clamp(1.25rem,1.9vw,1.65rem); line-height: 1.45; }
.clinic-content > p:not(.eyebrow):not(.clinic-lead) { color: var(--muted); font-size: .91rem; }
.clinic-services { margin-top: 26px; display: flex; flex-wrap: wrap; gap: 8px; }
.clinic-services span { padding: 8px 11px; border: 1px solid var(--line); border-radius: 999px; color: var(--ink); background: var(--white); font-size: .65rem; font-weight: 800; }
.cjas-note { display: block; margin-top: 11px; color: var(--muted); font-size: .64rem; }
.clinic-address-card { margin-top: 30px; padding: 19px; display: flex; gap: 14px; border: 1px solid var(--line); border-radius: 17px; background: var(--white); box-shadow: var(--shadow-sm); }
.address-icon { width: 43px; height: 43px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 13px; color: var(--navy-900); background: var(--teal-100); }
.address-icon svg { width: 23px; height: 23px; fill: currentColor; }
.clinic-address-card > div { display: flex; flex-direction: column; }
.clinic-address-card small { color: var(--muted); font-size: .58rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.clinic-address-card strong { margin-top: 4px; color: var(--ink); font-size: .77rem; line-height: 1.45; }
.clinic-address-card a { margin-top: 7px; color: var(--teal-500); font-size: .68rem; font-weight: 850; }
.clinic-socials { margin-top: 24px; }
.clinic-socials > span { display: block; margin-bottom: 10px; color: var(--muted); font-size: .60rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.clinic-socials > div { display: flex; gap: 8px; }
.clinic-socials a { min-height: 44px; padding: 0 14px; display: inline-flex; align-items: center; gap: 8px; border: 1px solid var(--line); border-radius: 12px; color: var(--ink); background: var(--white); font-size: .69rem; font-weight: 800; transition: .25s ease; }
.clinic-socials a:hover { transform: translateY(-2px); border-color: rgba(40,185,190,.30); box-shadow: var(--shadow-sm); }
.clinic-socials svg { width: 18px; height: 18px; fill: currentColor; }
.clinic-gallery { min-width: 0; }
.gallery-viewport { position: relative; aspect-ratio: 4/4.25; min-height: 590px; overflow: hidden; border-radius: 30px; background: var(--navy-900); box-shadow: var(--shadow-lg); touch-action: pan-y; }
.gallery-track { position: relative; width: 100%; height: 100%; }
.gallery-slide { position: absolute; inset: 0; margin: 0; opacity: 0; visibility: hidden; transform: scale(1.045); transition: opacity .75s ease, transform 1.15s cubic-bezier(.2,.7,.2,1), visibility 0s linear .75s; }
.gallery-slide.is-active { opacity: 1; visibility: visible; transform: scale(1); transition-delay: 0s; }
.gallery-slide img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.82) contrast(1.03); }
.gallery-slide::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top,rgba(6,25,35,.82),transparent 52%); }
.gallery-slide figcaption { position: absolute; z-index: 2; right: 30px; bottom: 27px; left: 30px; display: flex; align-items: flex-end; justify-content: space-between; gap: 22px; color: var(--white); }
.gallery-slide figcaption span { color: var(--teal-300); font-size: .67rem; font-weight: 900; letter-spacing: .12em; }
.gallery-slide figcaption strong { max-width: 410px; font-family: var(--serif); font-size: clamp(1.35rem,2.2vw,2rem); font-weight: 550; line-height: 1.15; text-align: right; }
.brand-slide img { object-fit: contain; padding: 90px; background: linear-gradient(145deg,#eef8f7,#dbeeee); }
.brand-slide::after { background: linear-gradient(to top,rgba(6,25,35,.70),transparent 55%); }
.gallery-controls { min-height: 71px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 18px; }
.gallery-counter { display: flex; align-items: center; gap: 8px; color: var(--muted); font-size: .65rem; font-weight: 850; }
.gallery-counter span:first-child { color: var(--ink); }
.gallery-counter i { width: 25px; height: 1px; background: var(--line); }
.gallery-progress { height: 2px; overflow: hidden; background: var(--line); }
.gallery-progress span { display: block; width: 100%; height: 100%; transform: scaleX(0); transform-origin: left; background: var(--teal-500); }
.clinic-gallery.is-playing .gallery-progress span { animation: sliderProgress 6s linear forwards; }
.gallery-buttons { display: flex; gap: 7px; }
.gallery-buttons button { width: 43px; height: 43px; padding: 0; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 12px; color: var(--ink); background: var(--white); cursor: pointer; transition: .25s ease; }
.gallery-buttons button:hover { color: var(--navy-950); border-color: var(--teal-400); background: var(--teal-400); }
.gallery-buttons svg { width: 18px; height: 18px; }
.gallery-buttons path { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

/* Reviews */
.reviews { overflow: hidden; color: rgba(235,246,247,.65); background: var(--navy-950); }
.reviews-rings { position: absolute; right: -330px; top: -340px; width: 720px; height: 720px; }
.reviews-rings span { position: absolute; inset: 0; border: 1px solid rgba(104,210,209,.08); border-radius: 50%; }
.reviews-rings span:nth-child(2) { inset: 80px; }
.reviews-rings span:nth-child(3) { inset: 160px; }
.reviews-grid { position: relative; z-index: 2; display: grid; grid-template-columns: .55fr 1.22fr; align-items: start; gap: clamp(60px,8vw,115px); }
.rating-panel { position: sticky; top: 108px; padding: 34px; border: 1px solid rgba(255,255,255,.11); border-radius: 28px; background: linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.025)); box-shadow: 0 32px 80px rgba(0,0,0,.17); backdrop-filter: blur(12px); }
.rating-value { margin: 18px 0 0; display: flex; align-items: flex-end; }
.rating-value strong { color: var(--white); font-family: var(--serif); font-size: clamp(5rem,8vw,8.4rem); font-weight: 500; line-height: .82; letter-spacing: -.07em; }
.rating-value span { padding-bottom: 8px; color: rgba(255,255,255,.36); font-size: .9rem; font-weight: 850; }
.rating-stars { margin: 22px 0 19px; color: var(--gold); font-size: 1.04rem; letter-spacing: .14em; }
.rating-panel > p { color: rgba(235,246,247,.50); font-size: .79rem; }
.button-light { min-height: 50px; padding: 0 16px; color: var(--white); border-color: rgba(255,255,255,.11); background: rgba(255,255,255,.04); font-size: .72rem; font-weight: 800; }
.button-light:hover { color: var(--navy-950); border-color: var(--teal-400); background: var(--teal-400); }
.button-light svg { width: 18px; height: 18px; }
.button-light path { fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; }
.testimonials { min-width: 0; }
.testimonial-top { margin-bottom: 24px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.testimonial-top p { margin-bottom: 0; color: var(--teal-300); font-size: .67rem; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.testimonial-nav { display: flex; gap: 7px; }
.testimonial-nav button { width: 42px; height: 42px; border: 1px solid rgba(255,255,255,.11); border-radius: 50%; color: var(--white); background: rgba(255,255,255,.035); font-size: 1.35rem; cursor: pointer; transition: .25s ease; }
.testimonial-nav button:hover { color: var(--navy-950); border-color: var(--teal-400); background: var(--teal-400); }
.testimonial-stage { position: relative; min-height: 345px; }
.testimonial { position: absolute; inset: 0; padding: 38px; opacity: 0; visibility: hidden; transform: translateY(18px); border: 1px solid rgba(255,255,255,.09); border-radius: 24px; background: rgba(255,255,255,.035); transition: .55s ease; }
.testimonial.is-active { opacity: 1; visibility: visible; transform: translateY(0); }
.testimonial .quote-mark { width: 45px; height: 34px; fill: var(--teal-400); opacity: .8; }
.testimonial blockquote { max-width: 690px; margin: 55px 0 45px; color: var(--white); font-family: var(--serif); font-size: clamp(1.75rem,3vw,3rem); line-height: 1.22; letter-spacing: -.025em; }
.testimonial footer { display: flex; flex-direction: column; }
.testimonial footer strong { color: var(--white); font-size: .78rem; }
.testimonial footer span { margin-top: 4px; color: rgba(255,255,255,.42); font-size: .63rem; }
.testimonial-dots { margin-top: 19px; display: flex; gap: 8px; }
.testimonial-dots button { width: 9px; height: 9px; padding: 0; border: 0; border-radius: 99px; background: rgba(255,255,255,.20); cursor: pointer; transition: .25s ease; }
.testimonial-dots button.is-active { width: 28px; background: var(--teal-400); }

/* Contact */
.contact { background: radial-gradient(circle at 100% 10%,rgba(104,210,209,.16),transparent 27%),var(--paper); }
.contact-card { padding: 18px; display: grid; grid-template-columns: 1.05fr .78fr; gap: 18px; border: 1px solid var(--line); border-radius: 32px; background: var(--white); box-shadow: var(--shadow-md); }
.contact-main { padding: 45px; border-radius: 24px; color: rgba(235,246,247,.66); background: linear-gradient(145deg,var(--navy-950),var(--navy-900)); }
.contact-main h2 { max-width: 670px; color: var(--white); }
.contact-main > p:not(.eyebrow) { max-width: 620px; margin: 27px 0 31px; color: rgba(235,246,247,.59); font-size: .91rem; }
.contact-actions { display: grid; gap: 10px; }
.contact-action { min-height: 84px; padding: 14px 16px; display: grid; grid-template-columns: 48px 1fr auto; align-items: center; gap: 14px; border: 1px solid rgba(255,255,255,.12); border-radius: 17px; background: rgba(255,255,255,.045); transition: .25s ease; }
.contact-action:hover { transform: translateY(-3px); border-color: rgba(104,210,209,.23); background: rgba(255,255,255,.075); }
.contact-action-icon { width: 47px; height: 47px; display: grid; place-items: center; border-radius: 14px; color: var(--navy-950); background: var(--teal-400); }
.contact-action.whatsapp .contact-action-icon { color: #126b4e; background: var(--green-soft); }
.contact-action-icon svg { width: 23px; height: 23px; fill: currentColor; }
.contact-action > span:nth-child(2) { display: flex; flex-direction: column; }
.contact-action small { color: rgba(255,255,255,.43); font-size: .59rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.contact-action strong { margin-top: 5px; color: var(--white); font-size: .98rem; }
.contact-action b { color: var(--teal-300); font-size: 1rem; }
.medical-info-line { margin-top: 25px; padding-top: 22px; display: flex; align-items: center; justify-content: space-between; gap: 18px; border-top: 1px solid rgba(255,255,255,.10); }
.medical-info-line span { color: rgba(255,255,255,.46); font-size: .68rem; }
.medical-info-line a { color: var(--teal-300); font-family: var(--serif); font-size: 1.3rem; font-weight: 600; }
.contact-details { padding: 31px; display: flex; flex-direction: column; }
.clinic-logo-wrap { min-height: 112px; display: grid; place-items: center; border-bottom: 1px solid var(--line); }
.clinic-logo-wrap img { width: min(100%,310px); height: auto; }
.detail-block { padding: 25px 0; display: flex; flex-direction: column; border-bottom: 1px solid var(--line); }
.detail-block > span { color: var(--teal-500); font-size: .60rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.detail-block strong { margin-top: 8px; color: var(--ink); font-family: var(--serif); font-size: 1.22rem; line-height: 1.35; font-weight: 600; }
.detail-block a { margin-top: 10px; color: var(--teal-500); font-size: .68rem; font-weight: 850; }
.schedule-block { padding-top: 22px; }
.schedule-heading { margin-bottom: 9px; display: flex; justify-content: space-between; gap: 20px; }
.schedule-heading span { color: var(--ink); font-family: var(--serif); font-size: 1.08rem; font-weight: 600; }
.schedule-heading small { color: var(--muted); font-size: .58rem; }
.schedule-row { min-height: 39px; display: flex; align-items: center; justify-content: space-between; gap: 16px; border-bottom: 1px solid rgba(12,38,53,.065); }
.schedule-row span { color: var(--muted); font-size: .72rem; }
.schedule-row strong { color: var(--ink); font-size: .73rem; }
.emergency-note { max-width: 840px; margin: 24px auto 0; color: var(--muted); font-size: .67rem; text-align: center; }
.emergency-note strong { color: var(--ink); }

/* Footer */
.site-footer { position: relative; overflow: hidden; color: rgba(235,246,247,.55); background: var(--navy-950); }
.footer-grid { padding: 76px 0 55px; display: grid; grid-template-columns: 1.25fr .72fr 1fr .75fr; gap: 48px; }
.footer-brand { color: var(--white); }
.footer-brand .brand-mark svg rect { fill: var(--teal-400); stroke: var(--teal-400); }
.footer-brand .brand-mark { color: var(--navy-950); }
.footer-brand-column p { max-width: 310px; margin: 23px 0 0; font-size: .76rem; }
.footer-column { display: flex; flex-direction: column; align-items: flex-start; gap: 9px; }
.footer-column > strong { margin-bottom: 10px; color: var(--teal-300); font-size: .61rem; font-weight: 900; letter-spacing: .15em; text-transform: uppercase; }
.footer-column a, .footer-column span { font-size: .72rem; line-height: 1.45; }
.footer-column a { transition: color .2s ease; }
.footer-column a:hover { color: var(--white); }
.footer-bottom { min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 25px; border-top: 1px solid rgba(255,255,255,.08); color: rgba(235,246,247,.34); font-size: .64rem; }
.footer-bottom a { display: inline-flex; align-items: center; gap: 7px; color: rgba(235,246,247,.55); font-weight: 800; }

/* Floating contact */
.floating-actions { position: fixed; z-index: 210; right: 18px; bottom: 18px; display: grid; gap: 8px; }
.floating-actions a { min-height: 48px; padding: 0 15px; display: flex; align-items: center; gap: 8px; border-radius: 14px; color: var(--white); box-shadow: 0 13px 35px rgba(6,25,35,.20); font-size: .69rem; font-weight: 850; transition: .25s ease; }
.floating-actions a:hover { transform: translateY(-3px); }
.float-phone { background: var(--navy-900); }
.float-whatsapp { color: #105e46 !important; background: #ddf3ea; }
.floating-actions svg { width: 20px; height: 20px; fill: currentColor; }

/* Reveal and load animation */
body.no-js [data-reveal], body.no-js .reveal-on-load { opacity: 1 !important; transform: none !important; }
body:not(.no-js) [data-reveal] { opacity: 0; transform: translateY(32px); transition: opacity .8s cubic-bezier(.22,.7,.2,1) var(--delay,0ms), transform .8s cubic-bezier(.22,.7,.2,1) var(--delay,0ms); }
body:not(.no-js) [data-reveal].is-visible { opacity: 1; transform: translateY(0); }
body:not(.no-js) .reveal-on-load { opacity: 0; transform: translateY(24px); transition: opacity .75s ease, transform .75s cubic-bezier(.22,.7,.2,1); }
body.is-loaded .reveal-on-load { opacity: 1; transform: translateY(0); }
body.is-loaded .reveal-on-load.delay-1 { transition-delay: .12s; }
body.is-loaded .reveal-on-load.delay-2 { transition-delay: .22s; }
body.is-loaded .reveal-on-load.delay-3 { transition-delay: .32s; }
body.is-loaded .reveal-on-load.delay-4 { transition-delay: .42s; }

@keyframes breathe { 0%,100%{transform:scale(.96);opacity:.65} 50%{transform:scale(1.04);opacity:1} }
@keyframes drift { from{transform:translate3d(0,0,0)} to{transform:translate3d(70px,-38px,0)} }
@keyframes dash { to{stroke-dashoffset:-360} }
@keyframes sliderProgress { from{transform:scaleX(0)} to{transform:scaleX(1)} }

/* Responsive */
@media (max-width: 1120px) {
  :root { --shell: 1030px; }
  .site-nav { gap: 17px; }
  .hero-grid { grid-template-columns: minmax(0,1fr) minmax(350px,.72fr); gap: 50px; }
  .floating-rating { left: -22px; }
  .floating-clinic { right: -4px; }
  .experience-showcase { grid-template-columns: 1fr 1fr; }
  .experience-feature.current-card { grid-column: 1 / -1; min-height: 315px; }
  .responsibilities-grid { grid-template-columns: 1fr 1fr; }
  .footer-grid { grid-template-columns: 1.2fr 1fr 1fr; }
  .footer-column:last-child { grid-column: 2 / 4; }
}

@media (max-width: 920px) {
  :root { --header-height: 76px; }
  .shell { width: min(calc(100% - 36px), var(--shell)); }
  .site-header, .site-header.is-scrolled { height: var(--header-height); }
  .header-inner { grid-template-columns: auto 1fr auto; }
  .header-cta { display: none; }
  .nav-toggle { display: block; justify-self: end; }
  .site-header.is-scrolled .nav-toggle { border-color: var(--line); }
  .nav-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
  .nav-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
  .nav-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
  .site-nav {
    position: fixed; inset: var(--header-height) 14px auto; padding: 13px; display: flex; flex-direction: column; align-items: stretch; gap: 0;
    color: var(--ink); border: 1px solid var(--line); border-radius: 20px; background: rgba(255,255,255,.97); box-shadow: var(--shadow-md);
    backdrop-filter: blur(18px); opacity: 0; visibility: hidden; transform: translateY(-14px) scale(.98); transform-origin: top; transition: .24s ease;
  }
  .site-nav.is-open { opacity: 1; visibility: visible; transform: translateY(0) scale(1); }
  .site-nav a { padding: 14px 13px; border-bottom: 1px solid rgba(12,38,53,.07); font-size: .88rem; opacity: 1; }
  .site-nav a:last-child { border-bottom: 0; }
  .site-nav a::after { display: none; }
  .hero { min-height: auto; }
  .hero-grid { min-height: auto; padding-top: calc(var(--header-height) + 62px); grid-template-columns: 1fr; gap: 58px; }
  .hero-copy { max-width: 800px; }
  .hero h1 { font-size: clamp(4.25rem,12.5vw,7rem); }
  .hero-visual { width: min(78vw,550px); justify-self: center; }
  .neural-lines { right: -24%; top: 42%; width: 100%; }
  .professional-strip { grid-template-columns: 1fr; gap: 12px; }
  .strip-list { grid-template-columns: 1fr; gap: 7px; }
  .section { padding: 96px 0; }
  .about-layout, .clinic-layout, .reviews-grid { grid-template-columns: 1fr; gap: 55px; }
  .journey-heading, .section-heading-wide { grid-template-columns: 1fr; gap: 17px; }
  .journey-heading > p, .section-heading-wide > p { max-width: 680px; }
  .clinic-content { max-width: 740px; }
  .clinic-gallery { width: min(100%,680px); margin-inline: auto; }
  .gallery-viewport { min-height: 560px; }
  .rating-panel { position: static; max-width: 410px; }
  .contact-card { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-column:last-child { grid-column: auto; }
}

@media (max-width: 680px) {
  body { padding-bottom: 75px; }
  .shell { width: min(calc(100% - 28px), var(--shell)); }
  .brand-mark { width: 40px; height: 40px; }
  .brand-text strong { font-size: 1rem; }
  .brand-text small { font-size: .52rem; }
  .hero-grid { padding-top: calc(var(--header-height) + 48px); padding-bottom: 54px; }
  .hero h1 { max-width: 100%; font-size: clamp(3.15rem,15.2vw,4.65rem); line-height: .94; overflow-wrap: break-word; }
  .hero-name { font-size: 1.5rem; }
  .hero-intro { font-size: .91rem; }
  .hero-actions { display: grid; grid-template-columns: 1fr; }
  .button { width: 100%; }
  .hero-metrics { grid-template-columns: 1fr 1fr; gap: 0; }
  .metric { padding: 0 13px; }
  .metric:nth-child(2) { border-right: 0; }
  .metric:last-child { grid-column: 1 / -1; margin-top: 15px; padding: 15px 0 0; border-top: 1px solid rgba(255,255,255,.09); }
  .hero-visual { width: min(100%,480px); padding-inline: 3px; }
  .portrait-frame { border-radius: 44% 44% 25px 25px; }
  .portrait-frame img, .portrait-shade { border-radius: 43% 43% 18px 18px; }
  .floating-rating { left: -3px; bottom: 50px; width: 178px; }
  .floating-clinic { right: -3px; top: 72px; max-width: 158px; }
  .professional-strip { padding: 25px 0 30px; }
  .section { padding: 78px 0; }
  .section-intro h2, .journey-heading h2, .section-heading-wide h2, .clinic-content h2, .contact-main h2 { font-size: clamp(2.45rem,12.5vw,3.75rem); }
  .about-statement, .care-principles, .experience-showcase, .responsibilities-grid { grid-template-columns: 1fr; }
  .about-statement p:first-child { font-size: 1.48rem; }
  .principle-card { min-height: 235px; }
  .principle-icon { margin-bottom: 34px; }
  .professional-quote { padding: 65px 23px 25px; }
  .professional-quote > svg { left: 23px; top: 20px; }
  .journey-heading { margin-bottom: 45px; }
  .timeline-line { left: 11px; }
  .timeline-item { min-height: auto; padding-left: 31px; grid-template-columns: 1fr; }
  .timeline-year { padding: 0 0 8px; text-align: left; }
  .timeline-dot { position: absolute; left: -18px; top: -1px; }
  .timeline-dot::before { left: 22px; top: 4px; }
  .timeline-card { padding: 22px; }
  .experience-feature { min-height: 330px; }
  .experience-feature.current-card { grid-column: auto; }
  .experience-feature h3 { margin-top: 53px; }
  .responsibilities-grid article { min-height: 210px; }
  .responsibility-icon { margin-bottom: 31px; }
  .gallery-viewport { min-height: 450px; aspect-ratio: 4/5; }
  .gallery-slide figcaption { right: 22px; bottom: 22px; left: 22px; flex-direction: column; align-items: flex-start; gap: 8px; }
  .gallery-slide figcaption strong { max-width: 100%; text-align: left; }
  .brand-slide img { padding: 55px; }
  .gallery-controls { grid-template-columns: auto 1fr; gap: 14px; }
  .gallery-progress { grid-column: 1 / -1; grid-row: 1; }
  .gallery-counter { grid-row: 2; }
  .gallery-buttons { grid-row: 2; justify-self: end; }
  .testimonial-stage { min-height: 360px; }
  .testimonial { padding: 28px; }
  .testimonial blockquote { margin: 45px 0 37px; font-size: 1.75rem; }
  .contact-card { padding: 8px; border-radius: 25px; }
  .contact-main { padding: 31px 22px; }
  .contact-details { padding: 24px 20px; }
  .contact-action { grid-template-columns: 45px 1fr auto; }
  .medical-info-line { align-items: flex-start; flex-direction: column; gap: 4px; }
  .footer-grid { padding-top: 62px; grid-template-columns: 1fr; gap: 33px; }
  .footer-bottom { padding: 20px 0; align-items: flex-start; flex-direction: column; }
  .floating-actions { right: 9px; bottom: calc(9px + env(safe-area-inset-bottom)); left: 9px; padding: 7px; grid-template-columns: 1fr 1fr; gap: 7px; border: 1px solid var(--line); border-radius: 18px; background: rgba(255,255,255,.95); box-shadow: 0 16px 42px rgba(6,25,35,.20); backdrop-filter: blur(17px); }
  .floating-actions a { min-height: 50px; justify-content: center; border-radius: 12px; box-shadow: none; }
}

@media (max-width: 390px) {
  .brand-text small { display: none; }
  .hero h1 { font-size: 3.08rem; }
  .floating-clinic { display: none; }
  .floating-rating { width: 164px; padding: 13px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *,*::before,*::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .001ms !important; }
  body:not(.no-js) [data-reveal], body:not(.no-js) .reveal-on-load { opacity: 1 !important; transform: none !important; }
}

/* Legal and utility pages */
body.legal-page {
  min-height: 100vh;
  padding-bottom: 0;
  background: var(--paper);
}
.legal-page .site-header.is-scrolled {
  color: var(--ink);
  background: rgba(249,251,250,.96);
}
.legal-page .site-header.is-scrolled .brand-mark {
  color: var(--white);
}
.legal-hero {
  position: relative;
  overflow: hidden;
  padding: calc(var(--header-height) + 92px) 0 86px;
  color: var(--white);
  background:
    radial-gradient(circle at 82% 20%, rgba(40,185,190,.18), transparent 28%),
    linear-gradient(132deg, var(--navy-950), var(--navy-900) 58%, #0e4351);
}
.legal-hero::before {
  content: "";
  position: absolute;
  width: 580px;
  height: 580px;
  right: -210px;
  top: -260px;
  border: 1px solid rgba(104,210,209,.12);
  border-radius: 50%;
  box-shadow: 0 0 0 82px rgba(104,210,209,.024), 0 0 0 164px rgba(104,210,209,.014);
}
.legal-hero .shell { position: relative; z-index: 1; }
.legal-hero .eyebrow { margin-top: 0; color: var(--teal-300); }
.legal-hero h1 {
  max-width: 900px;
  color: var(--white);
  font-size: clamp(3.2rem,6vw,6rem);
  line-height: .98;
}
.legal-hero p:last-child {
  max-width: 690px;
  margin: 28px 0 0;
  color: rgba(235,246,247,.68);
  font-size: 1rem;
}
.legal-content { padding: 92px 0 118px; }
.legal-article {
  max-width: 920px;
  padding: clamp(30px,5vw,70px);
  border: 1px solid var(--line);
  border-radius: 30px;
  background: var(--white);
  box-shadow: var(--shadow-sm);
}
.legal-article h2 {
  margin: 42px 0 13px;
  color: var(--ink);
  font-family: var(--serif);
  font-size: clamp(1.55rem,2.5vw,2.15rem);
  font-weight: 550;
  letter-spacing: -.025em;
}
.legal-article h2:first-child { margin-top: 0; }
.legal-article p { margin: 0 0 18px; color: var(--text); }
.legal-article a {
  color: #137c81;
  font-weight: 800;
  text-decoration: underline;
  text-decoration-color: rgba(19,124,129,.28);
  text-underline-offset: 4px;
}
.legal-article a:hover { text-decoration-color: currentColor; }

@media (max-width: 680px) {
  body.legal-page { padding-bottom: 0; }
  .legal-hero { padding: calc(var(--header-height) + 58px) 0 64px; }
  .legal-hero h1 { font-size: clamp(2.8rem,13vw,4rem); }
  .legal-hero p:last-child { font-size: .92rem; }
  .legal-content { padding: 55px 0 72px; }
  .legal-article { padding: 27px 22px; border-radius: 22px; }
  .legal-article h2 { margin-top: 33px; }
}

/* ==================================================================
   V6 FINAL OVERRIDES
   ================================================================== */

/* V5 desktop refinements. Existing styles.css remains the base theme. */
    .desktop-title-break { display: block; }

    /* HERO */
    @media (min-width: 1100px) {
      .hero-grid {
        grid-template-columns: minmax(0, 1.15fr) minmax(430px, .85fr);
        gap: clamp(34px, 4.5vw, 72px);
      }
      .hero-copy { max-width: 760px; }
      .hero h1 {
        max-width: 750px;
        font-size: clamp(3.55rem, 5.2vw, 5.75rem);
        line-height: .93;
        letter-spacing: -.04em;
      }
      .hero-intro { max-width: 660px; font-size: 1.02rem; line-height: 1.78; }
      .hero-visual { width: min(100%, 510px); padding: 12px 8px 28px; }
      .portrait-frame picture { aspect-ratio: 1 / 1.08; }
      .floating-rating { left: -28px; bottom: 132px; }
      .floating-clinic { right: -16px; top: 78px; }
      .portrait-caption { bottom: 22px; }
    }

    .hero-actions .button { min-height: 72px; padding: 12px 22px 12px 12px; }
    .hero-actions .button-icon { width: 48px; height: 48px; border-radius: 14px; }
    .hero-actions .button small {
      margin-bottom: 3px;
      font-family: var(--sans);
      font-size: .69rem;
      font-weight: 800;
      letter-spacing: .09em;
      opacity: .82;
    }
    .hero-actions .button strong {
      font-family: var(--sans);
      font-size: 1.01rem;
      font-weight: 800;
      letter-spacing: -.01em;
    }

    /* PROFESSIONAL AFFILIATIONS */
    .professional-strip {
      min-height: auto;
      padding: 30px 0 36px;
      grid-template-columns: 200px 1fr;
      gap: 24px;
    }
    .strip-heading-wrap { align-self: center; }
    .strip-kicker {
      display: block;
      color: var(--teal-300);
      font-size: .67rem;
      font-weight: 900;
      letter-spacing: .15em;
      text-transform: uppercase;
    }
    .strip-heading-wrap strong {
      display: block;
      margin-top: 8px;
      color: rgba(255,255,255,.84);
      font-family: var(--serif);
      font-size: 1.06rem;
      font-weight: 550;
      line-height: 1.25;
    }
    .strip-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
    .strip-card {
      min-height: 112px;
      padding: 17px 18px;
      display: grid;
      grid-template-columns: 35px 1fr;
      gap: 12px;
      align-items: start;
      border: 1px solid rgba(255,255,255,.11);
      border-radius: 17px;
      background: rgba(255,255,255,.045);
      backdrop-filter: blur(10px);
    }
    .strip-card-mark {
      width: 32px;
      height: 32px;
      display: grid;
      place-items: center;
      border-radius: 10px;
      color: var(--navy-950) !important;
      background: var(--teal-400);
      font-family: var(--sans) !important;
      font-size: .64rem !important;
      font-weight: 900;
    }
    .strip-card strong {
      display: block;
      color: var(--white);
      font-family: var(--serif);
      font-size: 1rem;
      font-weight: 600;
      line-height: 1.32;
    }
    .strip-card div > span {
      display: block;
      margin-top: 7px;
      color: rgba(235,246,247,.52);
      font-family: var(--sans);
      font-size: .75rem;
    }

    /* ABOUT */
    @media (min-width: 1100px) {
      .about-layout { grid-template-columns: .88fr 1.12fr; gap: clamp(48px, 6vw, 90px); }
      #despre .section-intro h2 {
        max-width: 520px;
        font-size: clamp(3.1rem, 4.25vw, 4.7rem);
        line-height: .95;
      }
    }
    .about-content { width: 100%; }
    .about-statement { display: block; width: 100%; }
    .about-statement p:first-child {
      width: 100%;
      max-width: none;
      margin-bottom: 0;
      font-size: clamp(1.55rem, 2.15vw, 2.15rem);
      line-height: 1.43;
    }
    .care-principles { gap: 14px; }
    .principle-card { padding: 27px 23px; }
    .principle-card h3 { font-size: 1.02rem; }
    .principle-card p { font-size: .92rem; line-height: 1.66; }
    .professional-quote p { font-size: 1.14rem; line-height: 1.55; }

    /* CLINIC */
    .clinic-heading-top {
      position: relative;
      z-index: 2;
      max-width: 1040px;
      margin-bottom: 42px;
    }

    .clinic-heading-top .section-index {
      margin-bottom: 20px;
    }

    .clinic-heading-top .eyebrow {
      margin: 0;
    }

    .clinic-heading-top h2 {
      max-width: 990px;
      margin: 18px 0 0;
      color: var(--ink);
      font-family: var(--serif);
      font-size: clamp(3rem, 4.35vw, 4.75rem);
      font-weight: 500;
      line-height: .96;
      letter-spacing: -.043em;
      text-wrap: balance;
    }

    .clinic-content {
      width: 100%;
      max-width: 490px;
    }

    .clinic-lead {
      margin-top: 0;
      font-size: clamp(1.34rem, 1.72vw, 1.66rem);
      line-height: 1.48;
    }

    .clinic-content > p:not(.clinic-lead) {
      font-size: .98rem;
      line-height: 1.78;
    }

    .clinic-services {
      margin-top: 27px;
      gap: 10px;
    }

    .clinic-services span {
      padding: 10px 15px;
      border-color: rgba(12,38,53,.12);
      border-radius: 999px;
      background: rgba(255,255,255,.92);
      box-shadow: 0 8px 22px rgba(12,38,53,.055);
      font-size: .75rem;
      font-weight: 850;
      letter-spacing: -.005em;
      transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
    }

    .clinic-services span:hover {
      transform: translateY(-2px);
      border-color: rgba(40,185,190,.32);
      box-shadow: 0 10px 26px rgba(12,38,53,.085);
    }

    .clinic-services span:last-child {
      color: var(--white);
      border-color: var(--navy-900);
      background: var(--navy-900);
      box-shadow: 0 10px 24px rgba(6,25,35,.14);
    }

    .cjas-note {
      margin-top: 12px;
      font-size: .67rem;
      line-height: 1.55;
    }

    .clinic-address-card {
      margin-top: 28px;
      padding: 20px;
      border-radius: 19px;
      box-shadow: 0 16px 36px rgba(12,38,53,.07);
    }

    .clinic-address-card strong {
      font-size: .84rem;
      line-height: 1.48;
    }

    .clinic-address-card a {
      margin-top: 8px;
      font-size: .75rem;
    }

    .clinic-socials {
      margin-top: 26px;
    }

    .clinic-socials > span {
      margin-bottom: 11px;
      font-size: .65rem;
    }

    .clinic-socials > div {
      gap: 10px;
    }

    .clinic-socials a {
      min-height: 52px;
      padding: 0 18px;
      gap: 10px;
      border-radius: 14px;
      font-size: .81rem;
      font-weight: 850;
      box-shadow: 0 8px 22px rgba(12,38,53,.045);
    }

    .clinic-socials svg {
      width: 20px;
      height: 20px;
    }

    .clinic-socials a:hover {
      transform: translateY(-3px);
      border-color: rgba(40,185,190,.35);
      box-shadow: 0 12px 28px rgba(12,38,53,.09);
    }

    @media (min-width: 1100px) {
      .clinic-heading-top {
        margin-left: 0;
      }

      .clinic-layout {
        grid-template-columns: minmax(340px, .82fr) minmax(520px, 1.18fr);
        align-items: center;
        gap: clamp(48px, 6vw, 90px);
      }

      .clinic-gallery {
        width: 100%;
        max-width: 690px;
        margin-top: 0;
        justify-self: end;
      }

      .clinic-gallery .gallery-viewport {
        aspect-ratio: 16 / 10;
        min-height: 0;
        border-radius: 27px;
      }

      .clinic-gallery .gallery-slide figcaption {
        right: 28px;
        bottom: 24px;
        left: 28px;
      }

      .clinic-gallery .gallery-slide figcaption strong {
        max-width: 410px;
        font-size: clamp(1.45rem, 2.1vw, 2.15rem);
      }
    }

    /* REVIEWS */
    .reviews-grid { grid-template-columns: .58fr 1.2fr; gap: clamp(48px, 7vw, 96px); }
    .rating-panel > p { font-size: .92rem; line-height: 1.65; }
    .button-light { min-height: 56px; padding: 0 20px; font-size: .99rem; font-weight: 850; }
    .button-light > span { position: relative; z-index: 1; }
    .testimonial-top > div:first-child > span {
      display: block;
      margin-top: 5px;
      color: rgba(235,246,247,.42);
      font-size: .74rem;
    }
    .testimonial-nav button { width: 48px; height: 48px; }
    .testimonial-stage { min-height: 380px; }
    .testimonial blockquote {
  font-size: clamp(1.6rem, 2.2vw, 2.5rem);
  line-height: 1.14;
}
    .testimonial footer strong { font-size: 1.02rem; }
    .testimonial footer span { font-size: .76rem; }
    .testimonial-dots { max-width: 290px; display: flex; flex-wrap: wrap; gap: 8px; }
    .testimonial-dots button { width: 8px; height: 8px; }
    .testimonial-dots button.is-active { width: 30px; }

    /* CONTACT */
    .contact-card { grid-template-columns: 1fr .94fr; }
    .contact-main { padding: 48px 45px; }
    .contact-main > p:not(.eyebrow) { font-size: 1rem; line-height: 1.72; }
    .contact-action { min-height: 90px; padding: 16px 18px; }
    .contact-action small { font-size: .69rem; letter-spacing: .10em; color: rgba(255,255,255,.60); }
    .contact-action strong { font-size: 1.15rem; font-weight: 800; }
    .medical-info-line span { font-size: .78rem; }
    .medical-info-line a { font-size: 1.55rem; }
    .contact-details { padding: 34px 38px 30px; }
    .clinic-logo-wrap { min-height: 150px; padding: 10px 0 24px; }
    .clinic-logo-wrap img { width: min(100%, 360px); max-height: 120px; object-fit: contain; }
    .detail-block > span { font-size: .68rem; }
    .detail-block strong { font-size: 1.5rem; line-height: 1.32; }
    .detail-block a { font-size: .82rem; }
    .schedule-heading span { font-size: 1.35rem; }
    .schedule-row { min-height: 49px; }
    .schedule-row span { font-size: .91rem; }
    .schedule-row strong { font-size: .96rem; }
    .google-review-actions {
  display: grid;
  gap: 10px;
  margin-top: 24px;
}

.google-review-actions .button {
  width: 100%;
  justify-content: flex-start;
}

.google-review-actions .button > svg {
  margin-left: auto;
}

.button-review {
  min-height: 58px;
  padding: 0 18px;

  display: flex;
  align-items: center;
  gap: 12px;
  border: 1px solid rgba(104, 210, 209, .32);
  border-radius: 15px;

  background: var(--teal-400);
  color: var(--navy-950);

  font-family: var(--sans);
  font-size: .92rem;
  font-weight: 850;

  transition:
    transform .25s ease,
    box-shadow .25s ease,
    background-color .25s ease;
}

.button-review:hover {
  transform: translateY(-2px);

  box-shadow:
    0 14px 30px rgba(0, 0, 0, .16);
}

.button-review > svg {
  width: 18px;
  height: 18px;

  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
}

.google-review-icon {
  width: 32px;
  height: 32px;

  display: grid;
  place-items: center;

  flex: 0 0 auto;

  border-radius: 50%;

  background: #fff;
  color: #4285f4;

  font-size: .94rem;
  font-weight: 900;

  box-shadow:
    0 4px 12px rgba(0, 0, 0, .08);
}

    /* FOOTER */
    .footer-column > strong { font-size: .70rem; }
    .footer-column a,
    .footer-column span,
    .footer-brand-column p { font-size: .84rem; line-height: 1.58; }
    .footer-bottom { font-size: .74rem; }

    /* TABLET / MOBILE: keep the existing mobile composition. */
    @media (max-width: 1099px) {
      .desktop-title-break { display: none; }
      .professional-strip { grid-template-columns: 1fr; }
      .strip-list { grid-template-columns: 1fr; }
      .strip-card { min-height: auto; }
      .clinic-heading-top { margin-bottom: 28px; }
      .clinic-heading-top h2 { max-width: 780px; font-size: clamp(2.8rem, 8vw, 4.2rem); }
      .clinic-layout { grid-template-columns: 1fr; }
      .clinic-content { max-width: 100%; }
      .clinic-gallery { width: 100%; max-width: 760px; margin-top: 18px; justify-self: start; }
      .clinic-gallery .gallery-viewport { aspect-ratio: 16 / 10.5; min-height: 0; }
      .reviews-grid { grid-template-columns: 1fr; }
      .contact-card { grid-template-columns: 1fr; }
    }

    @media (max-width: 700px) {
      .hero h1 { font-size: clamp(3rem, 14vw, 4.6rem); }
      .floating-rating { bottom: 102px; left: 4px; }
      .hero-actions .button small { font-size: .64rem; }
      .hero-actions .button strong { font-size: .94rem; }
      .about-statement p:first-child { font-size: 1.5rem; }
      .clinic-heading-top { margin-bottom: 22px; }
      .clinic-heading-top .section-index { margin-bottom: 16px; }
      .clinic-heading-top h2 { margin-top: 14px; }
      .clinic-services span { padding: 9px 13px; font-size: .72rem; }
      .clinic-socials a { min-height: 48px; padding: 0 15px; font-size: .78rem; }
      .testimonial-stage { min-height: 330px; }
      .contact-main { padding: 38px 24px; }
      .contact-details { padding: 28px 24px; }
    }
