:root {
  --blue: #1678c7;
  --blue-dark: #102f4d;
  --cyan: #17a7bd;
  --teal: #17a7bd;
  --coral: #ec735e;
  --gold: #d1a24b;
  --ink: #102235;
  --muted: #667789;
  --line: #dfe9f0;
  --soft: #f2f8fb;
  --white: #ffffff;
  --shadow: 0 20px 60px rgba(18, 64, 92, .13);
  --radius: 8px;
  --container: 1400px;
  --header-offset: 124px;
}
* { box-sizing: border-box; }
html, body { overflow-x: hidden; scroll-padding-top: var(--header-offset); }
body { margin: 0; padding-top: var(--header-offset); font-family: Arial, Helvetica, sans-serif; color: var(--ink); background: #fbfdfe; line-height: 1.65; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; display: block; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, summary:focus-visible { outline: 3px solid rgba(23,120,199,.32); outline-offset: 3px; }
.container { width: min(var(--container), calc(100% - 64px)); margin: 0 auto; }
.top-strip { max-height: 42px; overflow: hidden; background: #f5fbfe; border-bottom: 1px solid var(--line); color: var(--muted); font-size: 14px; transition: max-height .24s ease, opacity .24s ease, border-color .24s ease; }
.top-strip__inner { min-height: 42px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.top-strip a { color: var(--blue); font-weight: 700; }
.top-strip__actions { display: flex; align-items: center; gap: 18px; margin-left: auto; }
.top-strip__actions a { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
.top-strip__actions a > span { display: inline-flex; align-items: center; justify-content: center; width: 25px; height: 25px; border-radius: 50%; background: #e7f7fa; color: var(--teal); font-size: 9px; font-weight: 900; }
.top-strip__actions .top-strip__cta { padding-left: 18px; border-left: 1px solid var(--line); }
.site-header { position: fixed; left: 0; right: 0; top: 0; z-index: 90; overflow: visible; background: rgba(255,255,255,.96); backdrop-filter: blur(14px); box-shadow: 0 1px 0 var(--line); transition: box-shadow .24s ease, background .24s ease; }
body.admin-bar .site-header { top: 32px; }
.site-header.is-scrolled { background: rgba(255,255,255,.98); box-shadow: 0 12px 38px rgba(16,47,77,.12); }
.site-header.is-scrolled .top-strip { max-height: 0; opacity: 0; pointer-events: none; border-color: transparent; }
.nav-shell { min-height: 82px; display: flex; align-items: center; gap: 26px; transition: min-height .24s ease; }
.site-header.is-scrolled .nav-shell { min-height: 70px; }
.brand { display: flex; align-items: center; gap: 14px; min-width: 380px; }
.brand--logo-only { min-width: auto; }
.brand span { min-width: 0; }
.brand img { flex: 0 0 auto; width: 68px; height: 68px; border-radius: 50%; object-fit: contain; background: #fff; box-shadow: 0 10px 26px rgba(16,47,77,.09); transition: width .24s ease, height .24s ease; }
.site-header.is-scrolled .brand img { width: 58px; height: 58px; }
.brand strong { display: block; max-width: 300px; color: var(--blue-dark); font-size: 14px; line-height: 1.35; }
.brand small { display: block; color: var(--muted); font-size: 12px; }
.main-nav { display: flex; align-items: center; gap: 4px; margin-left: auto; }
.nav-item { position: relative; display: flex; align-items: center; }
.nav-link { padding: 29px 11px; font-size: 15px; font-weight: 700; color: #1b2f43; position: relative; white-space: nowrap; }
.nav-item--has-children > .nav-link { padding-right: 34px; }
.nav-link::after { content: ""; position: absolute; left: 11px; right: 11px; bottom: 21px; height: 3px; background: var(--blue); transform: scaleX(0); transform-origin: left; transition: .22s ease; }
.nav-link:hover::after, .nav-link.is-active::after { transform: scaleX(1); }
.nav-submenu-toggle { position: absolute; right: 3px; top: 50%; width: 30px; height: 30px; padding: 0; transform: translateY(-50%); border: 0; border-radius: 50%; background: transparent; color: var(--blue-dark); cursor: pointer; }
.nav-submenu-toggle::before { content: ""; position: absolute; left: 10px; top: 9px; width: 7px; height: 7px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); transition: transform .2s ease; }
.nav-submenu-toggle:hover, .nav-submenu-toggle:focus-visible { background: var(--soft); }
.nav-submenu { position: absolute; left: 0; top: calc(100% - 6px); width: max-content; min-width: 310px; max-width: 390px; padding: 10px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: var(--shadow); opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(8px); transition: opacity .2s ease, transform .2s ease, visibility .2s ease; }
.nav-item:hover > .nav-submenu, .nav-item:focus-within > .nav-submenu, .nav-item.is-open > .nav-submenu { opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); }
.nav-item:hover > .nav-submenu-toggle::before, .nav-item:focus-within > .nav-submenu-toggle::before, .nav-item.is-open > .nav-submenu-toggle::before { transform: rotate(225deg) translate(-2px, -2px); }
.nav-submenu__link { display: block; min-height: 44px; padding: 11px 13px; border-radius: var(--radius); color: var(--blue-dark); font-size: 14px; font-weight: 700; line-height: 1.4; white-space: normal; }
.nav-submenu__link:hover, .nav-submenu__link:focus-visible, .nav-submenu__link.is-active { background: var(--soft); color: var(--blue); }
.menu-toggle { display: none; margin-left: auto; border: 1px solid var(--line); background: #fff; border-radius: var(--radius); padding: 10px 14px; font-weight: 700; }
.home-hero { position: relative; height: 750px; min-height: 750px; overflow: hidden; isolation: isolate; background: #eef9fc; }
.home-hero::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; z-index: 3; height: 4px; background: linear-gradient(90deg, var(--blue) 0 18%, var(--teal) 18% 34%, rgba(255,255,255,.72) 34% 100%); pointer-events: none; }
.home-hero__carousel, .home-hero__wash, .hero-slide-track, .hero-slide { position: absolute; inset: 0; }
.home-hero__carousel { z-index: 0; }
.home-hero__wash { z-index: 1; background: linear-gradient(116deg, rgba(23,167,189,.06) 0 15%, transparent 15.2% 100%), linear-gradient(100deg, rgba(248,253,255,.9) 0%, rgba(248,253,255,.88) 42%, rgba(248,253,255,.82) 50%, rgba(248,253,255,.34) 62%, rgba(248,253,255,.03) 78%, rgba(248,253,255,0) 100%), linear-gradient(180deg, rgba(255,255,255,.02), rgba(9,55,84,.08)); pointer-events: none; }
.hero-slide { opacity: 0; transform: scale(1.02); transition: opacity .7s ease, transform 1.1s ease; }
.hero-slide.is-active { opacity: 1; transform: scale(1); z-index: 1; }
.hero-slide img { width: 100%; height: 100%; object-fit: cover; object-position: center 48%; filter: saturate(1.05) contrast(1.03); }
.home-hero__content { position: relative; z-index: 2; display: flex; align-items: center; min-height: 750px; padding: 50px 0 92px; }
.hero-copy { width: min(840px, 62%); padding-left: 26px; border-left: 4px solid var(--teal); color: var(--blue-dark); }
.hero-copy::before { display: none; }
.home-hero h1 { max-width: 840px; margin-bottom: 18px; font-size: 44px; line-height: 1.08; }
.home-hero h1 span { display: block; }
.hero-carousel__controls { position: absolute; left: max(58px, calc((100% - var(--container)) / 2 + 26px)); bottom: 22px; z-index: 4; display: flex; align-items: center; gap: 10px; }
.hero-carousel__arrow, .hero-carousel__dot { border: 1px solid rgba(22,120,199,.2); background: rgba(255,255,255,.92); color: var(--blue-dark); box-shadow: 0 10px 26px rgba(16,47,77,.1); cursor: pointer; }
.hero-carousel__arrow { width: 40px; height: 40px; border-radius: 50%; font-size: 27px; line-height: 1; }
.hero-carousel__dots { display: inline-flex; align-items: center; gap: 8px; padding: 8px 10px; border-radius: 999px; background: rgba(255,255,255,.72); backdrop-filter: blur(8px); }
.hero-carousel__dot { width: 9px; height: 9px; padding: 0; border-radius: 50%; background: rgba(16,47,77,.24); box-shadow: none; }
.hero-carousel__dot.is-active { width: 24px; border-radius: 999px; background: var(--blue); }
.eyebrow { display: inline-block; color: var(--blue); font-weight: 800; font-size: 13px; letter-spacing: 0; text-transform: uppercase; margin-bottom: 12px; }
.home-hero .eyebrow { color: var(--blue); }
.site-cta .eyebrow, .city-band .eyebrow { color: #bfeeff; }
h1, h2, h3 { line-height: 1.15; margin: 0 0 18px; letter-spacing: 0; }
h1 { font-size: 56px; }
h2 { font-size: 42px; }
h3 { font-size: 21px; }
p { margin: 0 0 18px; color: var(--muted); }
.home-hero p { max-width: 640px; color: #41586c; font-size: 15px; line-height: 1.62; }
.site-cta p, .city-band p { color: rgba(255,255,255,.86); font-size: 17px; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 24px; }
.btn { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 13px 22px; border-radius: var(--radius); font-weight: 800; text-align: center; white-space: normal; border: 1px solid transparent; transition: transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease, color .2s ease; }
.btn:hover { transform: translateY(-2px); box-shadow: 0 14px 28px rgba(16,47,77,.18); }
.btn-primary { background: var(--blue); color: #fff; }
.btn-ghost { color: var(--blue-dark); border-color: rgba(22,120,199,.28); background: rgba(255,255,255,.72); }
.btn-ghost-dark { border-color: var(--line); color: var(--blue-dark); background: #fff; }
.btn-light { background: #fff; color: var(--blue-dark); }
.section { padding: 92px 0; }
.section.compact { padding-top: 0; }
.doctors-section { padding-top: 58px; }
.tinted { background: linear-gradient(180deg, #f5fbfe 0%, #eef7fb 100%); }
.section-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 470px); gap: 28px 70px; align-items: end; margin-bottom: 42px; }
.section-head .eyebrow { grid-column: 1; margin-bottom: 0; }
.section-head h2 { grid-column: 1; margin-bottom: 0; }
.section-head p { grid-column: 2; grid-row: 1 / span 2; align-self: end; margin-bottom: 3px; }
.section-head p { font-size: 18px; }
.service-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.page-index .service-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.service-card, .doctor-card, .price-card, .attraction-card, .wellness-card, .detail-band, .why-card, .mini-card, .certificate-file-group, details { background: #fff; border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; box-shadow: 0 8px 28px rgba(16,47,77,.06); transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
.service-card:hover, .doctor-card:hover, .price-card:hover, .attraction-card:hover, .wellness-card:hover, .why-card:hover, .mini-card:hover, .certificate-file-group:hover { transform: translateY(-3px); border-color: rgba(22,120,199,.24); box-shadow: 0 18px 46px rgba(16,47,77,.1); }
details:hover { border-color: rgba(22,120,199,.24); box-shadow: 0 14px 34px rgba(16,47,77,.08); }
.service-card, .attraction-card, .wellness-card, .price-card, .why-card, .mini-card { display: flex; flex-direction: column; }
.service-card img, .attraction-card img, .wellness-card img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.service-card img, .attraction-card img, .wellness-card img, .rounded-media, .page-hero__media img, .gallery-grid img { transition: transform .28s ease, filter .28s ease; }
.service-card:hover img, .attraction-card:hover img, .wellness-card:hover img { transform: scale(1.035); }
.service-card div, .attraction-card div, .wellness-card div { padding: 22px; display: flex; flex: 1; flex-direction: column; }
.wellness-card h2 { font-size: 21px; }
.text-link { display: inline-block; margin-top: auto; color: var(--blue); font-weight: 800; }
.why-section { background: linear-gradient(135deg, #f7fbfd 0%, #eef9fb 100%); }
.why-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.why-card { padding: 30px; position: relative; min-height: 260px; }
.why-card span { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin-bottom: 22px; border-radius: 50%; color: #fff; background: var(--blue); font-weight: 900; }
.why-card::after { content: ""; position: absolute; right: 0; top: 0; width: 96px; height: 96px; background: linear-gradient(135deg, rgba(23,120,199,.16), rgba(23,167,189,.04)); border-bottom-left-radius: 100%; }
.split-section { background: linear-gradient(180deg, #fff 0%, #f8fcfd 100%); }
.split-grid, .prose-grid, .process-layout, .city-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, 1fr); gap: 56px; align-items: center; }
.split-grid > *, .prose-grid > *, .process-layout > *, .city-grid > * { min-width: 0; }
.implantation-process-section .process-layout { align-items: start; }
.rounded-media { width: 100%; border-radius: var(--radius); aspect-ratio: 4 / 3; object-fit: cover; box-shadow: var(--shadow); }
blockquote { margin: 32px 0 0; padding: 22px 26px; border-left: 5px solid var(--blue); background: var(--soft); color: var(--blue-dark); font-size: 22px; font-weight: 800; }
.media-stack { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.media-stack img, .certificate-grid img { border-radius: var(--radius); aspect-ratio: 4 / 3; object-fit: cover; box-shadow: var(--shadow); }
@media (min-width: 1101px) {
  .implantation-process-section .media-stack img:first-child,
  .implantation-process-section .media-stack img:last-child { grid-column: 1 / -1; }
}
.feature-grid, .price-grid, .attraction-grid, .wellness-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.price-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; }
.feature-grid article { padding: 28px; border-radius: var(--radius); background: #fff; border: 1px solid var(--line); }
.doctor-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px; }
.doctor-feature-grid { display: grid; grid-template-columns: 1fr; gap: 24px; margin-bottom: 56px; }
.doctor-compact-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.doctor-card { display: grid; grid-template-columns: 190px 1fr; min-height: 310px; }
.doctor-card > img { width: 100%; height: 100%; object-fit: cover; object-position: top center; }
.doctor-card__body { padding: 24px; }
.doctor-feature-grid .doctor-card { min-height: auto; }
.doctor-card--featured { display: block; position: relative; overflow: hidden; background: #fff; border-color: #cfe7f1; box-shadow: 0 26px 80px rgba(16,47,77,.12); }
.doctor-card--featured::before { content: ""; position: absolute; inset: 0 0 auto; height: 7px; background: linear-gradient(90deg, var(--blue), var(--teal)); pointer-events: none; }
.doctor-feature-main { display: grid; grid-template-columns: minmax(300px, 365px) 1fr; min-height: 430px; background: linear-gradient(135deg, #ffffff 0%, #f7fcfd 58%, #eef9fc 100%); }
.doctor-portrait { position: relative; z-index: 1; margin: 0; min-height: 430px; padding: 32px 30px 0; display: flex; align-items: flex-end; justify-content: center; background: linear-gradient(180deg, #f1fbfe 0%, #e5f6fb 100%); border-right: 1px solid var(--line); }
.doctor-portrait::before { content: ""; position: absolute; left: 28px; right: 28px; bottom: 0; height: 78%; border: 1px solid rgba(22,120,199,.16); border-bottom: 0; border-radius: 14px 14px 0 0; background: linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.3)); box-shadow: inset 0 1px 0 rgba(255,255,255,.85); }
.doctor-portrait::after { content: ""; position: absolute; left: 72px; right: 72px; bottom: 0; height: 12px; border-radius: 50% 50% 0 0; background: rgba(16,47,77,.08); filter: blur(7px); }
.doctor-portrait img { position: relative; z-index: 1; width: min(286px, 86%); height: auto; max-height: 392px; object-fit: contain; object-position: center bottom; filter: drop-shadow(0 22px 28px rgba(16,47,77,.12)); }
.doctor-portrait figcaption { position: absolute; z-index: 2; left: 24px; top: 24px; max-width: calc(100% - 48px); padding: 9px 13px; border-radius: var(--radius); background: rgba(255,255,255,.94); color: var(--blue); font-size: 13px; font-weight: 900; box-shadow: 0 12px 28px rgba(16,47,77,.1); }
.doctor-card--featured .doctor-card__body { position: relative; z-index: 1; display: flex; flex-direction: column; justify-content: center; padding: 48px 54px; }
.doctor-card--featured .doctor-card__body::before { content: ""; width: 58px; height: 4px; margin-bottom: 22px; border-radius: 999px; background: linear-gradient(90deg, var(--blue), var(--teal)); }
.doctor-role-chip { display: none; }
.doctor-card--featured h2 { font-size: 30px; margin-bottom: 20px; }
.doctor-card--featured ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 22px; padding-left: 0; margin-top: 0; list-style: none; }
.doctor-card--featured li { position: relative; padding: 14px 16px 14px 20px; border: 1px solid rgba(22,120,199,.1); border-radius: var(--radius); background: rgba(255,255,255,.68); line-height: 1.55; }
.doctor-card--featured li::before { content: ""; position: absolute; left: 8px; top: 21px; width: 6px; height: 6px; border-radius: 50%; background: var(--teal); }
.doctor-compact-grid .doctor-card { grid-template-columns: 1fr; min-height: auto; }
.doctor-compact-grid .doctor-card > img { height: auto; aspect-ratio: 4 / 5; }
.doctor-card span { color: var(--blue); font-weight: 800; font-size: 14px; }
.doctor-card:not(.doctor-card--featured) ul, .price-card ul { padding-left: 18px; color: var(--muted); margin: 14px 0 0; }
.subsection-head { margin-bottom: 24px; }
.doctor-certificates { margin-top: 26px; }
.doctor-card--featured .doctor-certificates { margin-top: 0; }
.doctor-certificates--featured { padding: 24px 28px 28px; border: 0; border-top: 1px solid rgba(22,120,199,.14); border-radius: 0; background: linear-gradient(180deg, rgba(244,251,253,.92), #fff); box-shadow: inset 0 1px 0 rgba(255,255,255,.92); }
.doctor-certificates--compact { padding-top: 18px; border-top: 1px solid var(--line); }
.doctor-cert-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 18px; }
.doctor-cert-head h4, .bonus-list h4 { margin: 0; color: var(--blue-dark); font-size: 17px; line-height: 1.25; }
.doctor-cert-eyebrow { display: block; margin-bottom: 5px; color: var(--teal); font-size: 11px; font-weight: 900; letter-spacing: 0; text-transform: uppercase; }
.doctor-cert-count { display: inline-flex; align-items: center; min-height: 30px; padding: 6px 11px; border-radius: 999px; background: #fff; color: var(--blue); border: 1px solid rgba(22,120,199,.18); font-size: 12px; font-weight: 900; white-space: nowrap; }
.doctor-cert-showcase { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; align-items: stretch; }
.doctor-cert-showcase--5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.doctor-cert-showcase--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.doctor-cert-preview-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.doctor-cert-card { position: relative; display: flex; flex-direction: column; min-width: 0; gap: 10px; padding: 10px; border: 1px solid rgba(22,120,199,.14); border-radius: var(--radius); background: rgba(255,255,255,.9); color: var(--blue-dark); box-shadow: 0 12px 30px rgba(16,47,77,.06); }
.doctor-cert-card:hover { border-color: rgba(22,120,199,.42); transform: translateY(-2px); box-shadow: 0 18px 42px rgba(16,47,77,.1); }
.doctor-cert-card--primary { border-color: rgba(22,120,199,.32); background: linear-gradient(180deg, #ffffff 0%, #f8fdff 100%); }
.doctor-certificates--featured .doctor-cert-card--primary, .doctor-certificates--featured .doctor-cert-card--wide { grid-column: auto; }
.doctor-cert-card__media { display: block; overflow: hidden; aspect-ratio: 3 / 4; border-radius: 7px; border: 1px solid var(--line); background: #fff; }
.doctor-certificates--compact .doctor-cert-card--wide .doctor-cert-card__media { aspect-ratio: 16 / 9; }
.doctor-cert-card__media img { display: block; width: 100%; height: 100%; object-fit: contain; }
.doctor-cert-card__text { display: grid; gap: 4px; min-width: 0; }
.doctor-cert-card__kicker { display: block; color: var(--teal); font-size: 11px; font-weight: 900; text-transform: uppercase; }
.doctor-cert-card--primary .doctor-cert-card__kicker { color: var(--blue); }
.doctor-cert-card__title { display: block; color: var(--blue-dark); font-size: 13px; font-weight: 900; line-height: 1.35; }
.doctor-cert-card__doctor { display: block; color: var(--muted); font-size: 12px; font-weight: 700; line-height: 1.35; }
.doctor-cert-card__action { display: inline-flex; width: fit-content; margin-top: 2px; color: var(--blue); font-size: 12px; font-weight: 800; }
.doctor-cert-card__action::after { content: "↗"; margin-left: 6px; }
.doctor-compact-grid .doctor-cert-preview-grid { grid-template-columns: 1fr; }
.doctor-compact-grid .doctor-cert-card { display: grid; grid-template-columns: 78px minmax(0, 1fr); align-items: center; padding: 9px; }
.doctor-compact-grid .doctor-cert-card__media { width: 78px; }
.doc-link-list { display: flex; flex-wrap: wrap; gap: 10px; }
.doc-link-list a { display: inline-flex; align-items: center; min-height: 38px; padding: 8px 12px; border-radius: var(--radius); background: var(--soft); color: var(--blue-dark); border: 1px solid var(--line); font-size: 14px; font-weight: 800; }
.doc-link-list a:hover { border-color: var(--blue); color: var(--blue); }
.price-card { padding: 30px; }
.price-card__top { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 18px; }
.price-card h3 { font-size: 23px; }
.price-card .price { display: inline-block; width: fit-content; color: #fff; background: linear-gradient(90deg, var(--coral), #e09b53); border-radius: 999px; padding: 8px 15px; font-weight: 900; box-shadow: 0 10px 24px rgba(236,115,94,.2); }
.price-card__tag { color: var(--blue); font-size: 12px; font-weight: 900; text-transform: uppercase; }
.price-card__summary { padding: 14px 16px; border-radius: var(--radius); background: var(--soft); color: var(--blue-dark); font-weight: 800; }
.price-card__list-label { margin: 20px 0 8px; color: var(--blue-dark); font-size: 15px; }
.price-card li { margin-bottom: 8px; }
.bonus-list { margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--line); }
.bonus-list ul { margin-top: 0; }
.pricing-inclusive-section { background: #f4fafd; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.pricing-inclusive__head { display: grid; grid-template-columns: minmax(0, .82fr) minmax(380px, 1fr); gap: 64px; align-items: end; margin-bottom: 34px; }
.pricing-inclusive__head h2 { max-width: 620px; margin-bottom: 0; }
.pricing-inclusive__head p { max-width: 700px; margin: 0; font-size: 18px; line-height: 1.68; }
.pricing-inclusive__body { display: grid; grid-template-columns: minmax(310px, .72fr) minmax(0, 1.28fr); gap: 36px; align-items: stretch; }
.pricing-inclusive__body.is-single { grid-template-columns: 1fr; }
.pricing-inclusive__services { padding: 28px; border: 1px solid rgba(22,120,199,.17); border-radius: var(--radius); background: #fff; }
.pricing-inclusive__services h3 { margin-bottom: 18px; font-size: 20px; }
.pricing-inclusive__services ol { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.pricing-inclusive__services li { display: grid; grid-template-columns: 38px minmax(0, 1fr); gap: 12px; align-items: center; min-height: 54px; padding: 9px 0; border-bottom: 1px solid var(--line); }
.pricing-inclusive__services li:last-child { border-bottom: 0; }
.pricing-inclusive__services li span { color: var(--teal); font-size: 12px; font-weight: 900; }
.pricing-inclusive__services li strong { color: var(--blue-dark); font-size: 15px; line-height: 1.45; }
.pricing-inclusive__gallery { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); grid-auto-rows: 150px; gap: 12px; min-width: 0; }
.pricing-inclusive__gallery figure { grid-column: span 4; overflow: hidden; margin: 0; border-radius: var(--radius); background: #fff; box-shadow: 0 12px 30px rgba(16,47,77,.09); }
.pricing-inclusive__gallery figure:first-child { grid-column: span 7; grid-row: span 2; }
.pricing-inclusive__gallery figure:nth-child(2), .pricing-inclusive__gallery figure:nth-child(3) { grid-column: span 5; }
.pricing-inclusive__gallery img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.pricing-inclusive__gallery figure:hover img { transform: scale(1.025); }
.pricing-focus { margin-bottom: 24px; padding: 28px; border-radius: var(--radius); background: linear-gradient(135deg, #ffffff 0%, #f4fbfd 100%); border: 1px solid rgba(22,120,199,.16); box-shadow: 0 16px 44px rgba(16,47,77,.08); }
.pricing-focus__head { display: grid; grid-template-columns: minmax(0, .9fr) minmax(280px, 1fr); gap: 22px; align-items: end; margin-bottom: 22px; }
.pricing-focus__head .eyebrow { margin-bottom: 0; }
.pricing-focus__head h2 { grid-column: 1 / -1; max-width: 880px; margin-bottom: 0; font-size: 32px; }
.pricing-focus__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.pricing-focus__item { padding: 18px; border-radius: var(--radius); border: 1px solid var(--line); background: #fff; }
.pricing-focus__item span { color: var(--teal); font-weight: 900; font-size: 13px; }
.pricing-focus__item h3 { margin: 8px 0 10px; font-size: 18px; }
.pricing-focus__item p { margin: 0; font-size: 15px; line-height: 1.55; }
.page-hero { position: relative; overflow: hidden; padding: 68px 0 72px; background: linear-gradient(135deg, #f5fbfe 0%, #ffffff 56%, #eef8fb 100%); border-bottom: 1px solid var(--line); }
.page-hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(22,120,199,.07), rgba(23,167,189,0) 52%); pointer-events: none; }
.page-hero__grid { position: relative; display: grid; grid-template-columns: minmax(0, .92fr) minmax(360px, .78fr); gap: 72px; align-items: center; }
.page-hero h1 { max-width: 660px; color: var(--blue-dark); font-size: 52px; line-height: 1.06; }
.page-hero p { max-width: 620px; font-size: 18px; line-height: 1.68; }
.page-hero__media { position: relative; }
.page-hero__media::before { content: ""; position: absolute; left: -18px; top: 18px; width: 96%; height: 96%; border: 1px solid rgba(22,120,199,.14); border-radius: var(--radius); background: #eef9fc; box-shadow: 0 18px 44px rgba(16,47,77,.08); }
.page-hero__media img { position: relative; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--radius); box-shadow: var(--shadow); }
.page-promo { padding: 34px 0 72px; background: linear-gradient(180deg, #f5fbfe 0%, #fff 100%); border-bottom: 1px solid var(--line); }
.page-promo__media { position: relative; overflow: hidden; min-height: 480px; max-height: 660px; aspect-ratio: 16 / 8; border-radius: var(--radius); background: var(--soft); box-shadow: var(--shadow); }
.page-promo .hero-carousel__controls { left: 22px; bottom: 22px; }
.page-promo__copy { max-width: 980px; padding-top: 38px; }
.page-promo__copy h1 { font-size: 52px; }
.page-promo__copy p { max-width: 860px; font-size: 18px; line-height: 1.68; }
.page-hero--text-only .page-hero__grid { grid-template-columns: minmax(0, 920px); }
.page-services .page-hero__media img { object-position: center 42%; }
.page-pricing .page-hero__media { padding: 24px; border: 1px solid rgba(22,120,199,.14); border-radius: var(--radius); background: #fff; box-shadow: var(--shadow); }
.page-pricing .page-hero__media::before { display: none; }
.page-pricing .page-hero__media img { aspect-ratio: 4 / 3; object-fit: contain; box-shadow: none; }
.page-contact .page-hero__media img { object-position: center 38%; }
.page-wellness .page-hero__grid { grid-template-columns: minmax(0, .72fr) minmax(480px, 1.28fr); }
.page-wellness .page-hero__media img, .page-wellness .gallery-grid img { object-fit: contain; background: #fff; }
.page-certificates .page-hero__media img { object-fit: contain; object-position: center; padding: 18px; background: #fff; }
.page-hero--directory .page-hero__grid { grid-template-columns: minmax(0, 1fr) minmax(420px, .8fr); }
.page-faq .page-hero__grid,
.page-contact .page-hero__grid { grid-template-columns: minmax(380px, .78fr) minmax(500px, 1.12fr); }
.hero-directory { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border: 1px solid rgba(22,120,199,.16); border-radius: var(--radius); overflow: hidden; background: rgba(255,255,255,.9); box-shadow: var(--shadow); }
.hero-directory a { position: relative; display: flex; align-items: center; min-height: 70px; padding: 16px 48px 16px 18px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); color: var(--blue-dark); font-weight: 850; line-height: 1.35; }
.hero-directory a:nth-child(2n) { border-right: 0; }
.hero-directory a::after { content: "↓"; position: absolute; right: 18px; color: var(--blue); font-size: 18px; }
.hero-directory a:hover { background: var(--soft); color: var(--blue); }
.step-list { display: grid; gap: 16px; }
.step { padding: 22px 24px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; }
.step span { color: var(--cyan); font-weight: 900; }
.route-section { background: #fbfdfe; }
.travel-timeline { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; align-items: stretch; counter-reset: route; }
.travel-timeline .step { position: relative; min-height: 220px; overflow: hidden; box-shadow: 0 10px 30px rgba(16,47,77,.06); }
.travel-timeline .step::after { content: ""; position: absolute; left: 24px; right: 24px; bottom: 0; height: 4px; background: linear-gradient(90deg, var(--blue), var(--teal)); }
.city-band { color: #fff; background: linear-gradient(90deg, rgba(16,47,77,.96), rgba(23,120,199,.82)), url("../images/jinan-spring-season-web.webp") center / cover no-repeat; }
.image-mosaic { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.image-mosaic img { border-radius: var(--radius); aspect-ratio: 4 / 3; object-fit: cover; border: 1px solid rgba(255,255,255,.22); }
.trust-strip { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.prose-grid .trust-strip { grid-template-columns: 1fr; }
.trust-strip div { padding: 22px; border-radius: var(--radius); border: 1px solid var(--line); background: #fff; box-shadow: 0 8px 24px rgba(16,47,77,.05); }
.trust-strip strong { display: block; margin-bottom: 8px; color: var(--blue-dark); }
.trust-strip span { color: var(--muted); font-size: 14px; }
.section-action { margin-top: 28px; text-align: center; }
.brand-list { display: flex; flex-wrap: wrap; gap: 12px; }
.brand-list span { padding: 14px 18px; border-radius: var(--radius); background: #fff; border: 1px solid var(--line); font-weight: 900; color: var(--blue-dark); }
.service-directory { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px; align-items: stretch; }
.detail-band { padding: 34px; }
.table-wrap { overflow-x: auto; }
.price-table { width: 100%; border-collapse: collapse; background: #fff; border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow); }
.price-table th, .price-table td { padding: 20px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
.price-table th { background: var(--blue-dark); color: #fff; }
.cost-table { width: 100%; border-collapse: collapse; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; box-shadow: 0 8px 28px rgba(16,47,77,.06); }
.cost-table th, .cost-table td { padding: 16px 18px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
.cost-table th { width: 42%; color: var(--blue-dark); background: #f7fbfd; }
.note { margin-top: 22px; padding: 18px; border-left: 4px solid var(--coral); background: #fff8f6; color: #495d70; }
.attraction-grid, .wellness-grid { grid-template-columns: repeat(2, 1fr); }
.city-advantage-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.mini-card { padding: 22px; }
.mini-card h3 { font-size: 18px; }
.gallery-grid, .certificate-image-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.gallery-grid img, .certificate-image-grid img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--radius); box-shadow: 0 8px 28px rgba(16,47,77,.06); background: #fff; border: 1px solid var(--line); }
.wellness-gallery__item { position: relative; aspect-ratio: 4 / 3; overflow: hidden; margin: 0; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: 0 8px 28px rgba(16,47,77,.06); transition: opacity .5s ease, transform .5s cubic-bezier(.2,.7,.2,1), border-color .35s ease, box-shadow .35s ease; }
.wellness-gallery__item::after { position: absolute; inset: 0; background: linear-gradient(145deg, rgba(255,255,255,.2), transparent 38%, rgba(16,47,77,.08)); content: ''; opacity: 0; pointer-events: none; transition: opacity .35s ease; }
.wellness-gallery .wellness-gallery__item img { display: block; width: 100%; height: 100%; aspect-ratio: auto; border: 0; border-radius: 0; box-shadow: none; transition: transform .65s cubic-bezier(.2,.7,.2,1), filter .45s ease; }
.wellness-gallery.is-motion-ready .wellness-gallery__item { opacity: 0; transform: translateY(22px) scale(.985); }
.wellness-gallery.is-motion-ready .wellness-gallery__item.is-revealed { opacity: 1; transform: translateY(0) scale(1); }
.wellness-gallery.is-motion-ready .wellness-gallery__item:nth-child(2) { transition-delay: .05s; }
.wellness-gallery.is-motion-ready .wellness-gallery__item:nth-child(3) { transition-delay: .1s; }
.wellness-gallery.is-motion-ready .wellness-gallery__item:nth-child(4) { transition-delay: .15s; }
.wellness-gallery.is-motion-ready .wellness-gallery__item:nth-child(5) { transition-delay: .08s; }
.wellness-gallery.is-motion-ready .wellness-gallery__item:nth-child(6) { transition-delay: .13s; }
.wellness-gallery.is-motion-ready .wellness-gallery__item:nth-child(7) { transition-delay: .18s; }
.wellness-gallery.is-motion-ready .wellness-gallery__item:nth-child(8) { transition-delay: .23s; }
.wellness-gallery.is-motion-ready .wellness-gallery__item.is-reveal-complete { transition-delay: 0s; }
@media (hover: hover) and (pointer: fine) {
  .wellness-gallery .wellness-gallery__item:hover, .wellness-gallery.is-motion-ready .wellness-gallery__item.is-revealed:hover { z-index: 1; transform: translateY(-7px) scale(1.01); border-color: rgba(22,120,199,.28); box-shadow: 0 20px 44px rgba(16,47,77,.16); }
  .wellness-gallery__item:hover::after { opacity: 1; }
  .wellness-gallery__item:hover img { transform: scale(1.055); filter: saturate(1.04) contrast(1.02); }
}
.about-equipment-list { margin-top: 22px; }
.before-after-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; align-items: start; }
.before-after-grid img { width: 100%; max-height: 720px; object-fit: contain; padding: 10px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: 0 8px 28px rgba(16,47,77,.06); }
.review-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.review-card { display: grid; grid-template-columns: minmax(220px, .85fr) minmax(0, 1.15fr); overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: 0 8px 28px rgba(16,47,77,.06); }
.review-card img { width: 100%; height: 100%; min-height: 290px; object-fit: contain; background: var(--soft); }
.review-card div { display: flex; flex-direction: column; justify-content: center; padding: 28px; }
.review-card p { color: var(--ink); font-size: 17px; line-height: 1.7; }
.review-card strong { color: var(--blue); }
.certificate-image-grid { grid-template-columns: repeat(3, 1fr); }
.certificate-image-grid img { object-fit: contain; padding: 10px; }
.certificate-card-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; }
.certificate-card { display: flex; flex-direction: column; min-width: 0; gap: 7px; padding: 8px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; color: var(--blue-dark); box-shadow: 0 8px 24px rgba(16,47,77,.055); }
.certificate-card:hover { border-color: var(--blue); color: var(--blue); transform: translateY(-2px); }
.certificate-card__image { display: block; overflow: hidden; aspect-ratio: 3 / 4; border-radius: 6px; border: 1px solid var(--line); background: #fff; }
.certificate-card--wide .certificate-card__image { aspect-ratio: 3 / 4; }
.certificate-card__image img { display: block; width: 100%; height: 100%; object-fit: contain; }
.certificate-card__doctor { display: block; color: var(--blue); font-size: 11px; font-weight: 900; line-height: 1.35; }
.certificate-card__title { display: block; font-size: 12px; font-weight: 900; line-height: 1.35; }
.wellness-card ul { padding-left: 18px; color: var(--muted); margin: 12px 0 0; }
.services-embedded-intro { scroll-margin-top: var(--header-offset); background: linear-gradient(180deg, #f5fbfe 0%, #fff 100%); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.services-embedded-intro__grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(420px, 1.2fr); gap: 64px; align-items: center; }
.services-embedded-intro__grid.is-text-only { grid-template-columns: minmax(0, 920px); }
.services-embedded-intro__grid h2 { color: var(--blue-dark); }
.services-embedded-intro__grid p { max-width: 720px; font-size: 18px; }
.services-embedded-intro__media { overflow: hidden; border-radius: var(--radius); background: #fff; box-shadow: var(--shadow); }
.services-embedded-intro__media img { width: 100%; aspect-ratio: 4 / 3; object-fit: contain; }
.faq-section { background: #f6fafc; }
.faq-groups { display: grid; gap: 48px; }
.faq-group { scroll-margin-top: var(--header-offset); }
.faq-group h2 { display: flex; align-items: center; gap: 16px; margin-bottom: 22px; font-size: 30px; }
.faq-group h2::before { content: ""; flex: 0 0 38px; height: 4px; border-radius: 999px; background: var(--teal); }
.faq-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; max-width: none; align-items: start; }
details { padding: 0; }
summary { position: relative; cursor: pointer; padding: 22px 54px 22px 26px; font-weight: 900; color: var(--blue-dark); }
summary::after { content: "+"; position: absolute; right: 22px; top: 18px; display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%; background: var(--soft); color: var(--blue); font-size: 20px; }
details[open] summary::after { content: "−"; background: var(--blue); color: #fff; }
details p { padding: 0 26px 24px; }
.contact-conversion { position: relative; overflow: hidden; background: linear-gradient(180deg, #fff 0%, #f4f9fc 100%); }
.contact-conversion::before { content: ""; position: absolute; inset: 0 0 auto; height: 1px; background: linear-gradient(90deg, transparent, rgba(22,120,199,.32), transparent); }
.contact-conversion__grid { position: relative; display: grid; grid-template-columns: minmax(0, .92fr) minmax(420px, 1.08fr); gap: 74px; align-items: start; }
.contact-conversion__grid > * { min-width: 0; }
.contact-intake { position: relative; overflow: hidden; padding: 38px; border: 1px solid #cfe2ed; border-radius: var(--radius); background: #fff; box-shadow: 0 24px 70px rgba(16,47,77,.11); }
.contact-intake::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 6px; background: linear-gradient(90deg, var(--blue), var(--teal)); }
.contact-intake__index { position: absolute; right: 28px; top: 24px; color: rgba(22,120,199,.12); font-size: 76px; font-weight: 900; line-height: 1; }
.contact-intake__heading { position: relative; max-width: 500px; padding-right: 64px; }
.contact-intake__heading h2 { font-size: 34px; }
.contact-intake__heading p { font-size: 17px; }
.akkq-contact-inline-form { position: relative; min-height: 0; margin-top: 28px; }
.akkq-contact-inline-form .yandex-form { min-width: 0; min-height: 0; height: auto; }
.akkq-contact-inline-form #form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.akkq-contact-inline-form #form .list { min-width: 0; margin: 0; }
.akkq-contact-inline-form #form .list:nth-of-type(n+3), .akkq-contact-inline-form #form > p, .akkq-contact-inline-form #form > .spinner { grid-column: 1 / -1; }
.akkq-contact-inline-form #form .list p { margin: 0; line-height: 1; }
.akkq-contact-inline-form #form .list input, .akkq-contact-inline-form #form .list textarea { width: 100%; border: 1px solid #cfe0e9; border-radius: 6px; background: #f8fbfd; color: var(--blue-dark); font: inherit; outline: none; transition: border-color .2s ease, box-shadow .2s ease, background .2s ease; }
.akkq-contact-inline-form #form .list input { min-height: 52px; padding: 13px 15px; }
.akkq-contact-inline-form #form .list textarea { height: 132px; min-height: 132px; padding: 14px 15px; resize: vertical; line-height: 1.5; }
.akkq-contact-inline-form #form .list input:focus, .akkq-contact-inline-form #form .list textarea:focus { border-color: var(--blue); background: #fff; box-shadow: 0 0 0 3px rgba(22,120,199,.12); }
.akkq-contact-inline-form #form .list input::placeholder, .akkq-contact-inline-form #form .list textarea::placeholder { color: #617486; font-size: 14px; opacity: 1; }
.akkq-contact-inline-form #form .error { padding-top: 7px; color: #b42318; font-size: 13px; line-height: 1.4; }
.akkq-contact-inline-form #form > p { margin: 0; }
.akkq-contact-inline-form #form #submit { min-height: 52px; margin: 0; border: 0; border-radius: 6px; background: var(--blue); color: #fff; font: inherit; font-size: 15px; font-weight: 800; line-height: 1.2; cursor: pointer; transition: background .2s ease, transform .2s ease, box-shadow .2s ease; }
.akkq-contact-inline-form #form #submit:hover { background: var(--blue-dark); transform: translateY(-1px); box-shadow: 0 12px 28px rgba(22,120,199,.22); }
.akkq-contact-inline-form #form #submit:focus-visible { outline: 3px solid rgba(22,120,199,.25); outline-offset: 3px; }
.akkq-contact-inline-form #form #submit:disabled { cursor: wait; opacity: .7; transform: none; }
.akkq-contact-inline-form + .form-note { margin-top: 14px; }
.form-note { margin: 0; padding: 13px 15px; border-left: 3px solid var(--teal); border-radius: 0 var(--radius) var(--radius) 0; background: var(--soft); color: var(--muted); font-size: 13px; line-height: 1.5; }
.contact-support { padding: 10px 0; }
.contact-support > h2 { max-width: 650px; font-size: 40px; }
.contact-support__prose { max-width: 690px; margin-bottom: 28px; color: var(--muted); font-size: 17px; }
.contact-support__prose p:last-child { margin-bottom: 0; }
.contact-channels { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin: 0 0 28px; }
.contact-channel { display: grid; grid-template-columns: 42px minmax(0, 1fr); grid-template-rows: auto auto; column-gap: 13px; align-items: center; min-height: 78px; padding: 14px 16px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; color: var(--blue-dark); box-shadow: 0 8px 24px rgba(16,47,77,.05); transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.contact-channel:hover { transform: translateY(-2px); border-color: var(--blue); box-shadow: 0 14px 34px rgba(16,47,77,.1); }
.contact-channel > span { grid-row: 1 / 3; display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 50%; background: #e7f7fa; color: var(--teal); font-size: 12px; font-weight: 900; }
.contact-channel strong { align-self: end; font-size: 15px; line-height: 1.25; }
.contact-channel small { align-self: start; color: var(--muted); font-size: 12px; line-height: 1.35; }
.contact-trust-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.contact-trust-item { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 14px; min-height: 148px; padding: 22px; border: 1px solid var(--line); border-radius: var(--radius); background: rgba(255,255,255,.82); box-shadow: 0 10px 30px rgba(16,47,77,.05); }
.contact-trust-item__index { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 50%; background: #e7f7fa; color: var(--teal); font-size: 12px; font-weight: 900; }
.contact-trust-item h3 { margin: 5px 0 8px; color: var(--blue-dark); font-size: 17px; }
.contact-trust-item p { margin: 0; font-size: 14px; line-height: 1.55; }
.contact-secondary { margin-top: 24px; }
.certificate-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; }
.certificate-clinic-section .certificate-grid img { width: 100%; aspect-ratio: 3 / 4; object-fit: contain; padding: 8px; background: #fff; }
.certificate-files { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px; }
.certificate-file-group { padding: 28px; }
.certificate-clinic-section { background: #fff; }
.certificate-doctors-section { background: #f3f8fb; }
.certificate-doctor-groups { display: grid; gap: 28px; }
.certificate-doctor-group { scroll-margin-top: var(--header-offset); padding: 30px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: 0 14px 42px rgba(16,47,77,.07); }
.certificate-doctor-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 22px; padding-bottom: 18px; border-bottom: 1px solid var(--line); }
.certificate-doctor-head h2 { margin: 0; font-size: 30px; }
.certificate-doctor-head .eyebrow { margin-bottom: 6px; }
.certificate-group-count { flex: 0 0 auto; padding: 7px 12px; border: 1px solid rgba(22,120,199,.18); border-radius: 999px; color: var(--blue); background: var(--soft); font-size: 12px; font-weight: 900; }
.certificate-doctor-group .doc-link-list { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--line); }
.not-found-hero { padding: 84px 0 96px; background: linear-gradient(135deg, #f5fbfe 0%, #fff 58%, #edf8fb 100%); }
.not-found-hero__grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(380px, 1fr); gap: 72px; align-items: center; }
.not-found-code { display: block; margin-bottom: 12px; color: var(--blue); font-size: 92px; font-weight: 900; line-height: .9; }
.not-found-hero h1 { color: var(--blue-dark); font-size: 52px; }
.not-found-hero p { max-width: 540px; font-size: 18px; }
.not-found-hero__media { position: relative; overflow: hidden; border-radius: var(--radius); box-shadow: var(--shadow); }
.not-found-hero__media::after { content: ""; position: absolute; inset: 0; border: 1px solid rgba(255,255,255,.5); border-radius: inherit; pointer-events: none; }
.not-found-hero__media img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.page-404 .site-cta, .page-404 .inquiry-dock { display: none; }
.site-cta { padding: 72px 0; background: linear-gradient(120deg, #081d31 0%, #123a5a 58%, #1163a6 100%); }
.cta-panel { display: flex; justify-content: space-between; gap: 24px; align-items: center; color: #fff; }
.site-footer { padding: 60px 0; background: #081d31; color: #fff; }
.footer-grid { display: grid; grid-template-columns: minmax(320px, 1.35fr) minmax(250px, .9fr) minmax(320px, 1.15fr); gap: 52px; }
.footer-grid h3 { font-size: 20px; }
.footer-grid p { color: rgba(255,255,255,.75); font-size: 16px; }
.footer-grid a { color: rgba(255,255,255,.78); font-size: 15px; }
.footer-brand__title { display: flex; align-items: center; gap: 16px; margin-bottom: 18px; }
.footer-brand__title strong { max-width: 320px; font-size: 18px; line-height: 1.35; }
.footer-logo { flex: 0 0 auto; width: 78px; height: 78px; object-fit: contain; border-radius: 50%; background: #fff; }
.footer-links--wide { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 22px; align-content: start; }
.footer-links--wide h3 { grid-column: 1 / -1; }
.footer-links--wide a { display: block; margin: 7px 0; }
.footer-contacts { display: grid; align-content: start; gap: 10px; }
.footer-contacts a { display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: 10px; padding-bottom: 10px; border-bottom: 1px solid rgba(255,255,255,.1); }
.footer-contacts a strong { color: #fff; }
.footer-contacts a span { overflow-wrap: anywhere; }
.footer-address { margin: 8px 0 0; line-height: 1.6; }
.side-contact { position: fixed; right: 18px; top: 50%; bottom: auto; z-index: 84; display: grid; gap: 10px; transform: translateY(-50%); }
.side-contact__item { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; padding: 0; border: 1px solid rgba(22,120,199,.18); border-radius: var(--radius); background: rgba(255,255,255,.96); color: var(--blue); box-shadow: 0 12px 30px rgba(16,47,77,.12); font: inherit; font-size: 12px; font-weight: 900; cursor: pointer; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.side-contact__item svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.side-contact__item:hover { transform: translateX(-3px); background: var(--blue); color: #fff; box-shadow: 0 18px 42px rgba(16,47,77,.18); }
.side-contact__label { position: absolute; right: 44px; top: 50%; transform: translate(8px, -50%); min-width: max-content; max-width: min(320px, calc(100vw - 96px)); padding: 9px 12px; border: 1px solid rgba(22,120,199,.18); border-radius: var(--radius); background: rgba(255,255,255,.98); color: var(--blue-dark); font-size: 12px; font-weight: 800; line-height: 1.25; opacity: 0; pointer-events: none; box-shadow: 0 14px 32px rgba(16,47,77,.16); transition: opacity .18s ease, right .18s ease, transform .18s ease; }
.side-contact__label { text-transform: none; }
.side-contact__item:hover .side-contact__label, .side-contact__item:focus-visible .side-contact__label { right: 58px; transform: translate(0, -50%); opacity: 1; }
.side-contact__top { display: none; }
.side-contact__top.is-visible { display: inline-flex; }
.side-contact__item--whatsapp { color: #168a5b; }
.side-contact__item--telegram { color: #168bc1; }
.inquiry-dock { position: fixed; right: 22px; bottom: 20px; z-index: 82; display: inline-flex; align-items: center; gap: 12px; min-width: 238px; min-height: 68px; padding: 12px 18px 12px 12px; border: 0; border-radius: var(--radius); background: linear-gradient(135deg, var(--blue), var(--teal)); color: #fff; box-shadow: 0 20px 46px rgba(16,47,77,.22); font: inherit; text-align: left; cursor: pointer; }
.inquiry-dock__icon { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: var(--radius); background: rgba(255,255,255,.18); font-size: 24px; font-weight: 900; }
.inquiry-dock strong { display: block; font-size: 17px; line-height: 1.1; }
.inquiry-dock small { display: block; margin-top: 4px; color: rgba(255,255,255,.82); font-size: 12px; line-height: 1.2; }
.akkq-qet-feedback { position: fixed; right: 22px; bottom: 102px; z-index: 110; display: none; width: min(360px, calc(100% - 44px)); max-height: min(620px, 66.667vh); overflow: auto; overscroll-behavior: contain; padding: 20px; border: 1px solid rgba(22,120,199,.18); border-radius: var(--radius); background: #fff; color: var(--ink); box-shadow: 0 28px 80px rgba(16,47,77,.24); }
.akkq-qet-feedback.is-open { display: block; }
.akkq-qet-feedback .feedbackHeader { margin: 0 38px 14px 0; color: var(--blue-dark); font-size: 20px; line-height: 1.25; }
.akkq-qet-feedback .closeBtn { position: absolute; top: 12px; right: 12px; display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; padding: 0; border: 1px solid var(--line); border-radius: 50%; background: #fff; color: var(--blue-dark); font: inherit; font-size: 20px; line-height: 1; cursor: pointer; }
.akkq-qet-feedback p { margin-bottom: 12px; font-size: 13px; line-height: 1.45; }
.akkq-qet-feedback .feedbackForm { display: grid; gap: 10px; }
.akkq-qet-feedback .line { margin: 0; }
.akkq-qet-feedback input:not([type="submit"]), .akkq-qet-feedback textarea, .akkq-qet-feedback select { width: 100%; min-height: 42px; padding: 9px 11px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; color: var(--ink); font: inherit; font-size: 14px; }
.akkq-qet-feedback textarea { height: 90px; min-height: 82px; max-height: 140px; resize: vertical; }
.akkq-qet-feedback input:focus, .akkq-qet-feedback textarea:focus, .akkq-qet-feedback select:focus { border-color: var(--blue); outline: 3px solid rgba(22,120,199,.14); }
.akkq-qet-feedback input[type="submit"], .akkq-qet-feedback button[type="submit"] { width: 100%; min-height: 44px; padding: 10px 16px; border: 0; border-radius: var(--radius); background: var(--blue); color: #fff; font: inherit; font-size: 14px; font-weight: 900; cursor: pointer; }
.akkq-qet-feedback .tips, .akkq-qet-feedback .error { display: block; margin-top: 4px; font-size: 11px; line-height: 1.35; }
.akkq-qet-feedback .error { color: #b83d35; }
.privacy-consent { position: fixed; left: 50%; bottom: 20px; z-index: 81; transform: translateX(-50%); display: flex; align-items: center; gap: 12px; width: min(520px, calc(100% - 360px)); min-height: 58px; padding: 12px 14px; border: 1px solid rgba(22,120,199,.16); border-radius: var(--radius); background: rgba(255,255,255,.96); box-shadow: 0 18px 48px rgba(16,47,77,.16); backdrop-filter: blur(12px); }
.privacy-consent.is-hidden { display: none; }
.privacy-consent p { flex: 1; min-width: 0; margin: 0; color: var(--muted); font-size: 12px; line-height: 1.45; }
.privacy-consent a { color: var(--blue); font-size: 12px; font-weight: 900; }
.privacy-consent__accept { border: 0; border-radius: var(--radius); background: var(--blue); color: #fff; padding: 9px 12px; font: inherit; font-size: 12px; font-weight: 900; cursor: pointer; }
.thanks-page { display: flex; align-items: center; min-height: calc(100vh - var(--header-offset)); padding: 84px 0 96px; background: linear-gradient(135deg, #f5fbfe 0%, #fff 58%, #edf8fb 100%); }
.thanks-page__inner { max-width: 820px; text-align: center; }
.thanks-page__mark { display: inline-flex; align-items: center; justify-content: center; width: 76px; height: 76px; margin-bottom: 24px; border-radius: 50%; background: #e7f7fa; color: var(--teal); font-size: 36px; font-weight: 900; box-shadow: 0 16px 38px rgba(16,47,77,.1); }
.thanks-page h1 { max-width: 760px; margin: 0 auto 18px; font-size: 46px; }
.thanks-page p { max-width: 640px; margin: 0 auto 28px; color: var(--muted); font-size: 17px; }
.thanks-page .btn { min-width: 180px; }
@media (min-width: 1101px) and (max-width: 1320px) {
  .brand { min-width: 310px; }
  .brand strong { max-width: 220px; font-size: 12px; }
  .nav-link { padding-left: 8px; padding-right: 8px; font-size: 14px; }
  .nav-item--has-children > .nav-link { padding-right: 31px; }
}
@media (max-width: 1100px) {
  .container { width: min(var(--container), calc(100% - 28px)); }
  .privacy-consent { left: 22px; transform: none; width: min(520px, calc(100% - 304px)); }
  .menu-toggle { display: inline-flex; }
  .main-nav { display: none; position: absolute; left: 14px; right: 14px; top: calc(100% + 8px); max-height: calc(100vh - var(--header-offset) - 20px); overflow-y: auto; overscroll-behavior: contain; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow); padding: 12px; flex-direction: column; align-items: stretch; }
  .main-nav.is-open { display: flex; }
  .nav-item { display: grid; grid-template-columns: minmax(0, 1fr) 44px; width: 100%; }
  .nav-link { padding: 13px 12px; }
  .nav-item--has-children > .nav-link { padding-right: 12px; }
  .nav-link::after { display: none; }
  .nav-submenu-toggle { position: relative; right: auto; top: auto; width: 44px; height: 44px; transform: none; border-radius: var(--radius); }
  .nav-submenu-toggle::before { left: 17px; top: 15px; }
  .nav-submenu { grid-column: 1 / -1; position: static; width: 100%; min-width: 0; max-width: none; max-height: 0; padding: 0 0 0 12px; overflow: hidden; border: 0; box-shadow: none; opacity: 1; visibility: hidden; pointer-events: none; transform: none; transition: max-height .24s ease, padding .24s ease, visibility .24s ease; }
  .nav-item.is-open > .nav-submenu { max-height: 320px; padding: 4px 0 8px 12px; visibility: visible; pointer-events: auto; }
  .nav-submenu__link { min-height: 44px; padding: 11px 14px; border-left: 2px solid var(--line); border-radius: 0; }
  .brand { min-width: 0; }
  h1 { font-size: 46px; }
  h2 { font-size: 36px; }
  .page-hero h1 { font-size: 42px; }
  .page-promo__media { min-height: 420px; aspect-ratio: 16 / 9; }
  .page-promo__copy h1 { font-size: 42px; }
  .review-card { grid-template-columns: 1fr; }
  .review-card img { height: auto; min-height: 0; aspect-ratio: 4 / 3; }
  .section-head, .split-grid, .prose-grid, .process-layout, .city-grid, .page-hero__grid, .page-wellness .page-hero__grid, .services-embedded-intro__grid { grid-template-columns: 1fr; gap: 30px; }
  .page-faq .page-hero__grid, .page-contact .page-hero__grid { grid-template-columns: 1fr; }
  .contact-conversion__grid { grid-template-columns: 1fr; gap: 48px; }
  .page-hero--directory .page-hero__grid, .not-found-hero__grid { grid-template-columns: 1fr; gap: 34px; }
  .section-head .eyebrow, .section-head h2, .section-head p { grid-column: auto; grid-row: auto; margin-bottom: 0; }
  .home-hero { height: auto; min-height: 570px; }
  .home-hero__wash { background: linear-gradient(96deg, rgba(248,253,255,1) 0%, rgba(248,253,255,.98) 56%, rgba(248,253,255,.68) 72%, rgba(248,253,255,.16) 100%), linear-gradient(180deg, rgba(255,255,255,.1), rgba(238,249,252,.38)); }
  .home-hero__content { min-height: 570px; padding: 48px 0 96px; }
  .hero-copy { width: min(700px, 78%); }
  .home-hero h1 { font-size: 42px; line-height: 1.1; }
  .hero-carousel__controls { left: 42px; }
  .service-grid, .feature-grid, .price-grid, .doctor-grid, .doctor-compact-grid, .attraction-grid, .wellness-grid, .trust-strip, .footer-grid, .why-grid, .city-advantage-grid, .gallery-grid, .certificate-image-grid, .certificate-files, .service-directory, .pricing-focus__grid, .travel-timeline { grid-template-columns: repeat(2, 1fr); }
  .page-index .service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .certificate-card-grid, .certificate-clinic-section .certificate-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .doctor-feature-grid { grid-template-columns: 1fr; }
  .doctor-feature-main { grid-template-columns: 1fr; }
  .doctor-card--featured .doctor-card__body { padding: 34px 32px; }
  .doctor-card--featured ul { grid-template-columns: 1fr; }
  .doctor-cert-showcase, .doctor-cert-showcase--4, .doctor-cert-showcase--5 { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: minmax(230px, 34vw); overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: inline mandatory; padding-bottom: 10px; }
  .doctor-cert-showcase .doctor-cert-card { scroll-snap-align: start; }
  .doctor-portrait { min-height: 420px; padding: 34px 26px 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .doctor-portrait img { max-height: 390px; }
  .pricing-inclusive__head { grid-template-columns: minmax(0, .75fr) minmax(320px, 1fr); gap: 32px; }
  .pricing-inclusive__body { grid-template-columns: minmax(280px, .8fr) minmax(0, 1.2fr); gap: 24px; }
  .pricing-inclusive__gallery { grid-auto-rows: 128px; }
}
@media (max-width: 782px) {
  body.admin-bar .site-header { top: 46px; }
}
@media (max-width: 640px) {
  :root { --header-offset: 74px; }
  .container { width: auto; max-width: none; margin-left: 14px; margin-right: 14px; }
  .top-strip__inner { display: none; }
  .site-header.is-scrolled .top-strip { max-height: 0; opacity: 0; }
  .nav-shell { min-height: 74px; }
  .brand { gap: 10px; }
  .brand img { width: 50px; height: 50px; }
  .brand strong { max-width: 165px; font-size: 10.5px; line-height: 1.25; overflow-wrap: anywhere; }
  .brand small { display: none; }
  .home-hero { min-height: 620px; }
  .home-hero__wash { background: linear-gradient(180deg, rgba(248,253,255,.99) 0%, rgba(248,253,255,.97) 55%, rgba(238,249,252,.76) 76%, rgba(238,249,252,.3) 100%); }
  .hero-slide img { object-position: 64% center; opacity: .92; }
  .home-hero__content { align-items: flex-start; min-height: 620px; padding: 38px 0 108px; }
  .hero-copy { width: 100%; padding: 0; border-left: 0; background: transparent; box-shadow: none; }
  .hero-copy::before { content: ""; display: block; width: 54px; height: 4px; margin-bottom: 18px; border-radius: 999px; background: linear-gradient(90deg, var(--blue), var(--teal)); }
  .home-hero h1 { margin-bottom: 16px; font-size: 31px; line-height: 1.1; overflow-wrap: normal; word-break: normal; hyphens: none; }
  .home-hero p { font-size: 15px; line-height: 1.55; }
  .hero-carousel__controls { left: 14px; right: auto; top: auto; bottom: 20px; }
  .hero-carousel__arrow { width: 34px; height: 34px; font-size: 23px; }
  h1 { font-size: 34px; }
  h2 { font-size: 28px; }
  .page-hero { padding: 52px 0; }
  .page-hero h1 { font-size: 34px; }
  .page-hero p, .home-hero p { font-size: 16px; line-height: 1.55; }
  .page-promo { padding: 14px 0 52px; }
  .page-promo__media { min-height: 0; aspect-ratio: 4 / 3; }
  .page-promo__copy { padding-top: 28px; }
  .page-promo__copy h1 { font-size: 34px; }
  .page-promo__copy p { font-size: 16px; line-height: 1.55; }
  .page-promo .hero-carousel__controls { left: 12px; bottom: 12px; }
  .page-hero--directory { padding-bottom: 42px; }
  .hero-directory { grid-template-columns: 1fr; }
  .hero-directory a { min-height: 56px; padding: 13px 44px 13px 15px; border-right: 0; font-size: 14px; }
  .main-nav { top: calc(100% + 8px); }
  .hero-actions, .cta-panel { flex-direction: column; align-items: stretch; }
  .btn { width: 100%; }
  .service-grid, .feature-grid, .price-grid, .doctor-grid, .doctor-feature-grid, .doctor-compact-grid, .attraction-grid, .wellness-grid, .trust-strip, .footer-grid, .media-stack, .why-grid, .city-advantage-grid, .gallery-grid, .certificate-image-grid, .certificate-files, .service-directory, .pricing-focus__grid, .travel-timeline { grid-template-columns: 1fr; }
  .page-index .service-grid, .page-index .why-grid, .page-index .doctor-grid, .page-index .price-grid, .page-services .service-grid, .page-implantation .price-grid, .page-pricing .price-grid, .page-doctors .doctor-compact-grid, .page-dental-tour .attraction-grid, .page-wellness .wellness-grid, .page-about .gallery-grid, .page-wellness .gallery-grid { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: calc(100% - 28px); max-width: 100%; min-width: 0; gap: 14px; align-items: start; overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: inline mandatory; scroll-padding-inline: 0; padding: 4px 0 18px; scrollbar-width: thin; scrollbar-color: var(--blue) var(--soft); }
  .page-index .service-grid > *, .page-index .why-grid > *, .page-index .doctor-grid > *, .page-index .price-grid > *, .page-services .service-grid > *, .page-implantation .price-grid > *, .page-pricing .price-grid > *, .page-doctors .doctor-compact-grid > *, .page-dental-tour .attraction-grid > *, .page-wellness .wellness-grid > *, .page-about .gallery-grid > *, .page-wellness .gallery-grid > * { scroll-snap-align: start; }
  .page-index .price-grid, .page-implantation .price-grid, .page-pricing .price-grid { grid-auto-columns: calc(100% - 16px); }
  .page-about .media-stack, .page-implantation .media-stack { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .doctor-card, .doctor-feature-grid .doctor-card { grid-template-columns: 1fr; min-height: auto; }
  .doctor-card > img { aspect-ratio: 3 / 4; height: auto; }
  .doctor-feature-main { min-height: auto; }
  .doctor-portrait { min-height: 392px; padding: 26px 18px 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .doctor-portrait::before { left: 18px; right: 18px; height: 72%; }
  .doctor-portrait img { width: min(320px, 88%); max-height: 350px; aspect-ratio: auto; }
  .doctor-portrait figcaption { left: 18px; top: 18px; max-width: calc(100% - 36px); }
  .doctor-card--featured .doctor-card__body { padding: 24px 22px 28px; }
  .doctor-card--featured .doctor-card__body::before { margin-bottom: 18px; }
  .doctor-card--featured ul { grid-template-columns: 1fr; }
  .doctor-certificates--featured { padding: 14px; }
  .doctor-cert-head { align-items: flex-start; flex-direction: column; }
  .doctor-cert-showcase, .doctor-cert-preview-grid, .doctor-compact-grid .doctor-cert-preview-grid { grid-template-columns: 1fr; }
  .doctor-cert-showcase { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: min(82vw, 320px); overflow-x: auto; scroll-snap-type: inline mandatory; padding-bottom: 10px; }
  .doctor-cert-showcase .doctor-cert-card { scroll-snap-align: start; }
  .doctor-cert-card, .doctor-cert-card--primary, .doctor-compact-grid .doctor-cert-card { display: grid; grid-template-columns: 84px minmax(0, 1fr); align-items: center; }
  .doctor-cert-card--wide { grid-column: auto; }
  .doctor-certificates--featured .doctor-cert-card--primary { grid-template-columns: 84px minmax(0, 1fr); }
  .doctor-cert-card__media, .doctor-cert-card--primary .doctor-cert-card__media, .doctor-cert-card--wide .doctor-cert-card__media, .doctor-compact-grid .doctor-cert-card__media { width: 84px; aspect-ratio: 3 / 4; }
  .pricing-focus { padding: 20px; }
  .pricing-focus__head { display: block; }
  .pricing-focus__head h2 { font-size: 25px; }
  .pricing-inclusive__head, .pricing-inclusive__body { grid-template-columns: 1fr; gap: 22px; }
  .pricing-inclusive__head { display: grid; margin-bottom: 24px; }
  .pricing-inclusive__head p { font-size: 16px; line-height: 1.58; }
  .pricing-inclusive__services { padding: 20px; }
  .pricing-inclusive__gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: auto; gap: 8px; }
  .pricing-inclusive__gallery figure, .pricing-inclusive__gallery figure:first-child, .pricing-inclusive__gallery figure:nth-child(2), .pricing-inclusive__gallery figure:nth-child(3) { grid-column: auto; grid-row: auto; aspect-ratio: 1 / 1; }
  .pricing-inclusive__gallery figure:last-child:nth-child(odd) { grid-column: 1 / -1; aspect-ratio: 4 / 3; }
  .doctor-compact-grid .doctor-card > img { aspect-ratio: 3 / 4; }
  .image-mosaic { grid-template-columns: 1fr; }
  .section { padding: 64px 0; }
  .faq-groups { gap: 38px; }
  .faq-group h2 { font-size: 25px; }
  .faq-list { grid-template-columns: 1fr; }
  summary { padding: 18px 48px 18px 18px; font-size: 15px; }
  summary::after { right: 14px; top: 14px; }
  details p { padding: 0 18px 20px; font-size: 15px; }
  .certificate-doctor-group { padding: 18px; }
  .certificate-doctor-head { align-items: flex-start; flex-direction: column; gap: 10px; }
  .certificate-doctor-head h2 { font-size: 25px; }
  .certificate-clinic-section .certificate-grid, .certificate-doctor-group .certificate-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-flow: row; grid-auto-columns: auto; max-width: 100%; min-width: 0; gap: 10px; overflow: visible; padding-bottom: 0; }
  .certificate-doctor-group .certificate-card--wide { grid-column: auto; }
  .before-after-grid, .review-grid { grid-template-columns: 1fr; }
  .review-card div { padding: 22px; }
  .not-found-hero { padding: 58px 0 68px; }
  .not-found-code { font-size: 72px; }
  .not-found-hero h1 { font-size: 34px; }
  .table-wrap { overflow-x: visible; }
  .price-table, .price-table thead, .price-table tbody, .price-table tr, .price-table td, .cost-table, .cost-table tbody, .cost-table tr, .cost-table th, .cost-table td { display: block; width: 100%; }
  .price-table thead { display: none; }
  .price-table tr, .cost-table tr { border-bottom: 1px solid var(--line); }
  .price-table td, .cost-table th, .cost-table td { border-bottom: 0; padding: 12px 14px; overflow-wrap: anywhere; }
  .price-table td::before { display: block; margin-bottom: 4px; color: var(--blue); font-size: 12px; font-weight: 900; text-transform: uppercase; }
  .price-table td:nth-child(1)::before { content: "Услуга"; }
  .price-table td:nth-child(2)::before { content: "Стоимость"; }
  .price-table td:nth-child(3)::before { content: "Пакет"; }
  .cost-table th { background: #f7fbfd; }
  .contact-intake { padding: 26px 22px; }
  .contact-intake__index { right: 18px; top: 20px; font-size: 58px; }
  .contact-intake__heading { padding-right: 46px; }
  .contact-intake__heading h2, .contact-support > h2 { font-size: 28px; }
  .akkq-contact-inline-form #form { grid-template-columns: 1fr; }
  .akkq-contact-inline-form #form .list:nth-of-type(n+3), .akkq-contact-inline-form #form > p, .akkq-contact-inline-form #form > .spinner { grid-column: auto; }
  .contact-trust-list { grid-template-columns: 1fr; }
  .contact-channels { grid-template-columns: 1fr; }
  .contact-trust-item { min-height: auto; padding: 18px; }
  .side-contact { right: 10px; top: auto; bottom: 78px; display: grid; gap: 8px; transform: none; }
  .side-contact__item { width: 44px; height: 44px; }
  .side-contact__label { display: none; }
  .inquiry-dock { left: auto; right: 10px; bottom: 10px; width: 58px; min-width: 58px; min-height: 58px; padding: 8px; justify-content: center; }
  .inquiry-dock__icon { width: 42px; height: 42px; font-size: 24px; }
  .inquiry-dock > span:last-child { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
  .akkq-qet-feedback { left: 10px; right: 10px; bottom: 78px; width: auto; max-height: 66.667vh; padding: 16px; }
  .privacy-consent { left: 10px; right: 78px; bottom: 10px; transform: none; width: auto; min-height: 58px; align-items: center; display: grid; grid-template-columns: 1fr auto; gap: 5px 8px; padding: 8px 10px; }
  .privacy-consent p { grid-column: 1 / -1; }
  .privacy-consent p, .privacy-consent a, .privacy-consent__accept { font-size: 10px; }
  .privacy-consent p { line-height: 1.3; }
  .privacy-consent a { align-self: center; }
  .privacy-consent__accept { min-width: 70px; padding: 6px 9px; }
  .page-contact .inquiry-dock { display: none; }
  .page-contact .privacy-consent { right: 78px; }
  .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 22px; }
  .footer-grid > div:first-child { grid-column: 1 / -1; padding-bottom: 24px; border-bottom: 1px solid rgba(255,255,255,.12); }
  .footer-grid h3 { font-size: 18px; }
  .footer-grid p, .footer-grid a { font-size: 14px; }
  .footer-brand__title { align-items: flex-start; }
  .footer-brand__title strong { font-size: 16px; }
  .footer-contacts a { grid-template-columns: 78px minmax(0, 1fr); }
  .site-footer { padding-bottom: 112px; }
  .page-contact .site-footer, .page-404 .site-footer { padding-bottom: 60px; }
  .thanks-page { min-height: calc(100vh - 74px); padding: 58px 0 68px; }
  .thanks-page__mark { width: 64px; height: 64px; margin-bottom: 20px; font-size: 30px; }
  .thanks-page h1 { font-size: 32px; }
  .thanks-page .btn { width: min(240px, calc(100% - 70px)); }
  .page-thanks .inquiry-dock { display: none; }
  .page-thanks .privacy-consent { right: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition: none !important; scroll-behavior: auto !important; }
  .wellness-gallery.is-motion-ready .wellness-gallery__item { opacity: 1; transform: none; }
}
