/* Migration corrections; intentionally loaded after original page declarations. */
html,body { overflow-x:clip; }
body { margin:0; }
.sqs-blockStatus,.removed-script { display:none!important; }
.sqs-block-image img { opacity:1; }
.section-background img { width:100%;height:100%;object-fit:cover; }
.section-background .sqs-video-background { position:absolute;inset:0; }
.section-background video { width:100%;height:100%;object-fit:cover; }
.dp-astro-horizontal { position:relative!important;width:100%!important; }
.dp-astro-horizontal > .dp-horizontal-frame { position:sticky!important;top:0!important;height:100dvh!important;overflow:clip!important; }
.dp-astro-horizontal > .dp-horizontal-frame > .dp-horizontal-track { position:relative!important;display:flex!important;width:max-content!important;left:0!important;right:auto!important;height:100dvh!important;will-change:transform; }
.dp-astro-horizontal .dp-horizontal-track > section { flex:0 0 100vw!important;width:100vw!important;max-width:none!important;height:100dvh!important;min-height:0!important;overflow:visible; }
body:not(.dp-desktop-horizontal) article > .region { display:block!important; }
body:not(.dp-desktop-horizontal) #siteWrapper main section.page-section { width:100%!important;max-width:100%!important; }
body:not(.dp-desktop-horizontal) #siteWrapper main .content-wrapper { max-width:100%; }
body:not(.dp-desktop-horizontal):not([data-supplemental-page]):not([data-vertical-parity]) #siteWrapper .fluid-engine { --sqs-site-max-width:1500px; }
@media (min-width:1921px) {
  .dp-article__body { max-width:720px; }
  #siteWrapper .fluid-engine { --sqs-site-max-width:1500px!important; }
}
@media (max-width:767px) {
  .site-logo { --logo-height:26px;--logo-left:16px; }
  #contact-trigger { padding:10px 14px;font-size:12px; }
  .dp-article { min-width:0; }
  .dp-article__body { min-width:0;overflow-wrap:anywhere; }
}
.dp-consent { position:fixed;bottom:0;left:0;right:0;z-index:2147483645;display:flex;align-items:center;gap:20px;padding:18px 20px;background:#fff;color:#1a1a1a;font:12px/1.7 'Outfit',sans-serif;box-shadow:0 -1px 12px #0001; }
.dp-consent p { margin:0;flex:1; }
.dp-consent-actions { display:flex;gap:12px;align-items:center;flex-wrap:wrap; }
.dp-consent button { font:inherit;cursor:pointer;border:1px solid #1a1a1a;border-radius:999px;padding:9px 16px;background:#fff;color:#1a1a1a;white-space:nowrap; }
.dp-consent button[data-consent="reject"] { background:#1a1a1a;color:#fff; }
.dp-consent button:focus-visible { outline:2px solid #7da632;outline-offset:3px; }
.dp-consent-settings { display:block;position:fixed;bottom:12px;left:12px;z-index:1000;border:1px solid #777;border-radius:999px;background:white;color:#1a1a1a;padding:6px 12px;font:12px system-ui;cursor:pointer; }
@media(max-width:767px) { .dp-consent{flex-direction:column;align-items:stretch;gap:12px;padding:16px}.dp-consent-actions{justify-content:center}.dp-consent button{padding:8px 12px} }
@media(prefers-reduced-motion:reduce) { .dp-loader{display:none!important} }

/* Native media replaces the platform video controller. */
.sqs-video-background-native { position:absolute!important;inset:0!important; }
.sqs-video-background-native video { width:100%;height:100%;object-fit:cover; }
body[data-horizontal-page] .page-section { position:relative; }
body[data-horizontal-page] .page-section > .content-wrapper { position:relative;z-index:2; }

/* Fixed parallax backgrounds cannot share the translated track's containing block.
   Keep each background inside its own panel in both reading modes. */
body[data-horizontal-page="true"] #siteWrapper section.page-section .section-background,
body[data-horizontal-page="true"] #siteWrapper section.page-section .sqs-section-background,
body[data-horizontal-page="true"] #siteWrapper section.page-section .section-background-overlay {
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
}
body.dp-desktop-horizontal #siteWrapper .dp-horizontal-track > section {
  padding-top:0;
}
body.dp-desktop-horizontal #siteWrapper .dp-horizontal-track > section .section-background {
  margin:-1px;
}
/* In vertical mode panels size to their content and use the normal document scrollbar. */
body[data-horizontal-page="true"]:not(.dp-desktop-horizontal) #siteWrapper section.page-section {
  height:auto!important;overflow:visible;
}

/* Only short desktop windows need an internal panel scrollbar; normal-height
   panels retain the original portrait/shape overlap across section edges. */
@media (max-height:700px) {
  body.dp-desktop-horizontal .dp-horizontal-track > section {
    overflow-y:auto;overflow-x:hidden;
  }
}
/* Keep source headline sizes; fit only the two long phone words that otherwise split. */
@media(max-width:767px) {
  body#collection-696e3325bc62fc2ef64e0186 #siteWrapper h1,
  body#collection-696e3325bc62fc2ef64e0186 #siteWrapper h1 span[class^="sqsrte-text-color"] { font-size:clamp(2rem,16vw,4rem)!important;line-height:1.1!important; }
  body#collection-699428313c60f20ab927cf2a #siteWrapper h1 > span { font-size:clamp(1.7rem,8.8vw,2.7rem)!important; }
}

/* The imported presets otherwise override the source overlay scroll lock. */
html:has(body.menu-is-open),html:has(body.dp-modal-open),
body.menu-is-open,body.dp-modal-open { overflow:hidden!important;overscroll-behavior:none; }
@media (max-width:767px) {
  body#collection-6993906a631a8652a2f27850 .sqs-video-background-native video { object-position:65% center; }
}

/* Cover fractional-pixel seams without changing grid geometry or real borders. */
.dp-shape-bleed > svg.sqs-shape-rectangle {
  position: relative;
  left: calc(-1 * var(--dp-shape-left-bleed, 1px));
  top: -1px;
  width: calc(100% + var(--dp-shape-left-bleed, 1px) + var(--dp-shape-right-bleed, 1px)) !important;
  height: calc(100% + 2px) !important;
  display: block;
}
/* Let desktop backgrounds and existing portrait overlaps cross grid edges.
   The outer horizontal frame still clips the viewport. */
body.dp-desktop-horizontal .dp-horizontal-track .fluid-engine {
  overflow: visible !important;
}
/* Some exported shape blocks add their own overflow:hidden. Allow the
   borderless SVG bleed through that wrapper as well as the desktop grid. */
.sqs-block:has(> .sqs-block-content > .sqs-shape-block-outer-container > .dp-shape-bleed) {
  overflow: visible !important;
}

/* The exported blog grid waits for a Squarespace JS reveal that no longer runs. */
.blog-basic-grid .blog-basic-grid--container { opacity: 1 !important; }

/* Native Google Maps embeds retain the existing map block geometry. */
.dp-native-map { position:relative; min-height:240px; overflow:hidden; }
.dp-native-map iframe { display:block; width:100%; height:100%; min-height:240px; border:0; }
.dp-map-directions { position:absolute; bottom:12px; left:12px; max-width:calc(100% - 48px); padding:8px 12px; background:#fff; color:#1f1f1f; border-radius:16px; box-shadow:0 2px 8px #0003; font-size:13px; line-height:1.4; }
.dp-map-directions:focus-visible { outline:3px solid #aec75a; outline-offset:3px; }

/* Supplemental landing-page media use native players rather than platform JS. */
.dp-imported-video { position:relative; width:100%; }
.dp-imported-video video { display:block; width:100%; height:100%; object-fit:contain; border-radius:inherit; }
.dp-imported-embed { position:absolute; inset:0; }
.dp-imported-embed iframe { width:100%; height:100%; border:0; }
.dp-form-preview-notice { font-size:12px; line-height:1.4; margin-top:12px; }
.accordion-item__dropdown[hidden] { display:none!important; }

/* Faithful landing-page chrome, without the Squarespace runtime. */
@media(max-width:767px) {
  body[data-supplemental-page] .site-logo { --logo-height:32px; --logo-left:20px; }
}
body[data-supplemental-page] footer { position:relative; }
body[data-supplemental-page] .dp-consent-settings { position:absolute; bottom:0; left:60px; border:0; border-radius:0; padding:8px 12px; font:12px/1.6 'Outfit',sans-serif; }
body[data-supplemental-page] .accordion-item__click-target[aria-expanded="true"] .plus__vertical-line { transform:rotate(90deg); opacity:0; }
body[data-supplemental-page] .dp-native-map { min-height:0; height:100%; }
body[data-supplemental-page] .dp-native-map iframe { min-height:0; filter:grayscale(1); }
body[data-supplemental-page] .dp-map-directions { width:1px;height:1px;padding:0;clip-path:inset(50%);overflow:hidden; }
body[data-supplemental-page] .dp-map-directions:focus-visible { width:auto;height:auto;padding:8px 12px;clip-path:none;outline-offset:-4px; }
/* Controls match the original slim player; native controls remain the no-JS fallback. */
.dp-player { position:relative; }
.dp-player button { cursor:pointer; color:#fff; border:0; background:transparent; padding:6px; line-height:1; }
.dp-player button:focus-visible,.dp-player input:focus-visible { outline:2px solid #aec75a;outline-offset:2px; }
.dp-player svg { width:20px;height:20px;display:block;fill:currentColor; }
.dp-player .dp-player-play { position:absolute; left:50%;top:50%;transform:translate(-50%,-50%); width:48px;height:48px;border-radius:50%;background:#555a;display:grid;place-items:center; }
.dp-player[data-playing="true"] .dp-player-play { opacity:0;pointer-events:none; }
.dp-player-controls { position:absolute;inset:auto 0 0; padding:36px 10px 8px; color:#fff; background:linear-gradient(transparent,#0009);font:12px/1.4 Outfit,sans-serif; }
.dp-player-row { display:flex;align-items:center;gap:8px; }
.dp-player-time { margin-right:auto; }
.dp-player-seek { display:block;width:100%;height:12px;margin:0; accent-color:#fff;cursor:pointer; }
.dp-player:fullscreen { background:#000;display:grid;place-items:center; }
.dp-player:fullscreen video { width:100%;height:100vh;object-fit:contain; }
body[data-supplemental-page] .sqsrte-scaled-text-container .sqsrte-scaled-text { display:inline-block; width:max-content; white-space:nowrap; }
.dp-native-carousel .user-items-list-carousel__slides { position:relative; overflow:hidden; }
.dp-native-carousel .user-items-list-carousel__slide { position:absolute;left:0;top:0; transition:transform .35s ease; }
.dp-native-carousel button:disabled { opacity:.4;cursor:default; }
@media(prefers-reduced-motion:reduce) { .dp-native-carousel .user-items-list-carousel__slide { transition:none; } }


/* Preserve rounded source masks while allowing square adjacent backgrounds to bleed. */
body[data-horizontal-page="true"] #siteWrapper .sqs-block.dp-rounded-clip { overflow:hidden!important; }
@media(max-width:767px) {
  body[data-horizontal-page="true"] .site-logo { --logo-height:32px;--logo-left:20px; }
}
body[data-horizontal-page="true"] { position:relative; }
body[data-horizontal-page="true"] .dp-consent-settings { position:absolute;bottom:0;left:60px;border:0;border-radius:0;padding:8px 12px;font:12px/1.6 Outfit,sans-serif; }
@media(max-width:767px) {
  body:is([data-horizontal-page="true"],[data-supplemental-page]) #contact-trigger { font-size:13px;padding:10px 20px; }
}
@media(max-width:767px) {
  body#collection-69940c86883b0639f80dc0fc #siteWrapper h1,
  body#collection-69940c86883b0639f80dc0fc #siteWrapper h1 span[class^="sqsrte-text-color"] { font-size:clamp(2rem,14.65vw,3.436rem)!important; }
}
@media(max-width:359px) {
  body[data-horizontal-page="true"] .site-logo { --logo-height:26px;--logo-left:16px; }
  body[data-horizontal-page="true"] #contact-trigger { font-size:12px;padding:10px 14px; }
}
/* Live Home keeps this duplicate white radiology backing transparent. */
body[data-horizontal-page="true"] #block-c7d115941932d0b9d937 { opacity:0; }
@media(max-width:1279px) {
  body[data-horizontal-page="true"] #block-111c27c191194825acc9 h2 {
    font-size:clamp(1.6rem,3vw,2.5rem)!important;
    white-space:nowrap;
  }
}

/* Vertical-route parity: preserve source geometry before the large-screen cap. */
body[data-vertical-parity] { position:relative; }
body[data-vertical-parity] footer { position:relative; }
body[data-vertical-parity] .dp-consent-settings { position:absolute;bottom:0;left:60px;border:0;border-radius:0;padding:8px 12px;font:12px/1.6 Outfit,sans-serif; }
body[data-vertical-parity] .dp-native-map { min-height:0;height:100%; }
body[data-vertical-parity] .dp-native-map iframe { min-height:0;filter:grayscale(1); }
body[data-vertical-parity] .dp-map-directions { width:1px;height:1px;padding:0;clip-path:inset(50%);overflow:hidden; }
body[data-vertical-parity] .dp-map-directions:focus-visible { width:auto;height:auto;padding:8px 12px;clip-path:none;outline-offset:-4px; }
@media(max-width:767px) {
  body[data-vertical-parity] .site-logo { --logo-height:32px;--logo-left:20px; }
  body[data-vertical-parity] #contact-trigger { font-size:13px;padding:10px 20px; }
}
@media(max-width:359px) {
  body[data-vertical-parity] .site-logo { --logo-height:26px;--logo-left:16px; }
  body[data-vertical-parity] #contact-trigger { font-size:12px;padding:10px 14px; }
}
/* Article/listing footer uses an edge-to-edge source grid on larger screens. */
@media(min-width:768px) {
  body[data-vertical-parity] footer .fluid-engine { --sqs-site-gutter:0px; }
}
/* Keep the existing contact card inside narrow phone viewports. */
@media(max-width:359px) {
  body #contact-card { position:fixed;left:16px;right:16px;top:74px;width:auto;max-width:none;max-height:calc(100dvh - 90px);overflow-y:auto;box-sizing:border-box; }
}
/* Preserve the centered menu, but allow every link to be reached in short windows. */
@media(max-height:600px) {
  .custom-menu-overlay .custom-menu-content { max-height:calc(100dvh - 180px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin; }
}
/* Navigation uses the same social links as the appointment card. */
.custom-menu-overlay .dp-menu-socials {display:flex;justify-content:center;align-items:center;gap:12px;margin-top:20px;}
.custom-menu-overlay .dp-menu-socials a {display:flex;align-items:center;justify-content:center;width:44px;height:44px;color:var(--dp-white,#fff);border-radius:50%;text-decoration:none;}
.custom-menu-overlay .dp-menu-socials svg {width:22px;height:22px;}
.custom-menu-overlay .dp-menu-socials a:hover {color:var(--dp-accent,#a4ce49);}
.custom-menu-overlay .dp-menu-socials a:focus-visible {outline:2px solid currentColor;outline-offset:2px;}
@media(max-width:767px) {
 .custom-menu-overlay .custom-menu-content {max-height:calc(100dvh - 190px);overflow-y:auto;overscroll-behavior:contain;}
 .custom-menu-overlay .dp-menu-socials {margin-top:12px;gap:8px;}
}
.custom-menu-overlay .custom-menu-content {max-height:calc(100dvh - 190px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;}
.custom-menu-overlay .custom-menu-footer {gap:12px 20px;}
/* Keep homepage service navigation inside its card, clear of floating contact. */
body#collection-6993906a631a8652a2f27850 [data-dp-modal-group="services"] .dp-modal {padding-bottom:96px;}
body#collection-6993906a631a8652a2f27850 [data-dp-modal-group="services"] .dp-modal__nav {top:auto;bottom:20px;transform:none;width:44px;height:44px;background:#f4f7ed;border:1px solid #d5e5b7;}
body#collection-6993906a631a8652a2f27850 [data-dp-modal-group="services"] .dp-modal__nav--prev {left:28px;}
body#collection-6993906a631a8652a2f27850 [data-dp-modal-group="services"] .dp-modal__nav--next {right:28px;}
body#collection-6993906a631a8652a2f27850 [data-dp-modal-group="services"] .dp-modal__nav svg {stroke:#4b651b;}
@media(max-width:767px) {
 body#collection-6993906a631a8652a2f27850 [data-dp-modal-group="services"] {padding:24px 16px calc(100px + env(safe-area-inset-bottom,0px));}
 body#collection-6993906a631a8652a2f27850 [data-dp-modal-group="services"] .dp-modal {max-height:calc(100dvh - 144px - env(safe-area-inset-bottom,0px));}
}
[data-dp-modal-group="services"] .dp-modal {touch-action:pan-y pinch-zoom;}
/* Why: popups follow the responsive layout instead of hover capability alone. */
body[data-why-interaction="popup"] .dp-why__bubble {display:none!important;}
body[data-why-interaction="popup"] .dp-modal-overlay[data-dp-modal-group="why"] {display:flex!important;}
body[data-why-interaction="hover"] .dp-modal-overlay[data-dp-modal-group="why"] {display:none!important;}
body[data-why-interaction="hover"] .dp-why__bar {overflow:visible!important;}

/* Keep homepage Why navigation inside its card, clear of floating contact. */
body#collection-6993906a631a8652a2f27850 [data-dp-modal-group="why"] .dp-modal {padding-bottom:96px;}
body#collection-6993906a631a8652a2f27850 [data-dp-modal-group="why"] .dp-modal__nav {top:auto;bottom:20px;transform:none;width:44px;height:44px;background:#f4f7ed;border:1px solid #d5e5b7;}
body#collection-6993906a631a8652a2f27850 [data-dp-modal-group="why"] .dp-modal__nav--prev {left:28px;}
body#collection-6993906a631a8652a2f27850 [data-dp-modal-group="why"] .dp-modal__nav--next {right:28px;}
body#collection-6993906a631a8652a2f27850 [data-dp-modal-group="why"] .dp-modal__nav svg {stroke:#4b651b;}
@media(max-width:767px) {
 body#collection-6993906a631a8652a2f27850 [data-dp-modal-group="why"] {padding:24px 16px calc(100px + env(safe-area-inset-bottom,0px));}
 body#collection-6993906a631a8652a2f27850 [data-dp-modal-group="why"] .dp-modal {max-height:calc(100dvh - 144px - env(safe-area-inset-bottom,0px));}
}

[data-dp-modal-group="why"] .dp-modal {touch-action:pan-y pinch-zoom;}
/* Phone-only video rounding matches the following image's 24px corners. */
@media(max-width:767px) {
 body#collection-6993906a631a8652a2f27850 [data-section-id="6993906a631a8652a2f2785c"] {background:#1f1f1f;}
 body#collection-6993906a631a8652a2f27850 [data-section-id="6993906a631a8652a2f2785c"] .section-background {border-radius:24px;overflow:hidden;}
}
/* Frame the homepage process photograph within its dark panel on phones. */
@media(max-width:767px) {
 body#collection-6993906a631a8652a2f27850 .fe-block-c05be20dfa6fc9bbb861 {
  margin-inline:16px;
  min-width:0;
 }
}
/* Keep the established desktop content scale on larger monitors. Backgrounds
   and horizontal panels still fill the viewport; only the content grid is capped. */
@media(min-width:1921px) {
 body#collection-6a144b3af6a2e2120eefa4c7 #siteWrapper main .fluid-engine {
  display:block!important;
  width:100%;max-width:960px;margin-inline:auto;padding-inline:32px;box-sizing:border-box;
 }
 body#collection-6a144b3af6a2e2120eefa4c7 #siteWrapper main .sqs-html-content {max-width:896px;margin-inline:auto;}
 body#collection-6a144b3af6a2e2120eefa4c7 #siteWrapper main h1 {font-size:48px!important;line-height:1.2!important;}
}

/* /echipa: link from a doctor card to the doctor's profile page (rendered from EmDash, see src/lib/cms-blocks.ts) */
.dp-echipa__profile, .dp-echipa__sheet-profile {
  display: block; width: max-content; margin: 10px auto 0; padding: 6px 2px;
  font: 600 11px/1.2 "DM Sans", "Helvetica Neue", Arial, sans-serif; letter-spacing: .08em; text-transform: uppercase;
  color: #a3cb4d; text-decoration: none; border-bottom: 1px solid rgba(163,203,77,.45);
  transition: color .2s ease, border-color .2s ease;
}
.dp-echipa__profile:hover, .dp-echipa__profile:focus-visible, .dp-echipa__sheet-profile:hover { color: #b5d96a; border-color: #b5d96a; }
.dp-echipa__profile:focus-visible, .dp-echipa__sheet-profile:focus-visible { outline: 2px solid #a3cb4d; outline-offset: 3px; }
.dp-echipa__sheet-profile { margin: 24px 0 0; color: #1a1a1a; border-bottom-color: #a3cb4d; border-bottom-width: 2px; }
.dp-echipa__sheet-profile:hover { color: #1a1a1a; }
