/* Shared improvements for the existing exported design. */
html { scroll-behavior: smooth; }
[id] { scroll-margin-top: 2rem; }
main:focus { outline: none; }
main, .e-con, .elementor-widget, .elementor-widget-container { min-width: 0; }
h1, h2, h3, .kt-legal-body { overflow-wrap: anywhere; }
h1, h2 { text-wrap: balance; }
.elementor-kit-6 .kt-heading-compact { font-size: 18px; line-height: 1.3; font-weight: 600; }
.elementor-kit-6 h3.kt-footer-title { font-size: 20px; line-height: 1.3; }
.kt-pkg[hidden] { display: none !important; }
.kt-analytics-consent { position: fixed; z-index: 999; right: max(20px,env(safe-area-inset-right)); bottom: max(20px,env(safe-area-inset-bottom)); width: min(520px,calc(100% - 40px)); box-sizing: border-box; max-height: calc(100dvh - 40px); overflow-y: auto; overscroll-behavior: contain; padding: 1.25rem; border: 1px solid #c8dcd9; border-radius: 18px; background: #edf5f5; color: #173c38; box-shadow: 0 8px 32px #173c3826; font-size: .95rem; line-height: 1.6; }
.kt-analytics-consent[hidden] { display: none; }
.kt-analytics-consent .kt-analytics-consent__title { font-size: 1.1rem; font-weight: 700; margin: 0 0 .5rem; }
.kt-consent-open { padding-bottom: var(--kt-consent-space,0px); }
.kt-analytics-consent p { max-width: 75ch; margin: 0 0 .5rem; }
.kt-analytics-consent a { color: #00594e; text-decoration: underline; }
.kt-analytics-consent__actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1rem; }
.kt-analytics-consent button { min-height: 44px; padding: .65rem 1rem; border: 1px solid #006458; border-radius: 2rem; background: #fff; color: #00594e; font: 600 1rem Manrope,sans-serif; cursor: pointer; }
.kt-analytics-consent button:hover { background: #dceceb; }
@media (max-width: 600px) {
  .kt-analytics-consent { right: max(12px,env(safe-area-inset-right)); bottom: max(12px,env(safe-area-inset-bottom)); width: calc(100% - 24px); max-height: calc(100dvh - 24px); padding: 1rem; border-radius: 14px; font-size: .875rem; }
  .kt-analytics-consent__actions { gap: .5rem; }
  .kt-analytics-consent button { flex: 1 1 135px; font-size: .875rem; padding: .65rem .75rem; }
}
.kt-analytics-settings { background: transparent; border: 1px solid currentColor; border-radius: 2rem; color: inherit; min-height: 44px; padding: .6rem 1rem; font: inherit; cursor: pointer; }
.kt-analytics-settings:focus-visible { outline-color: #fff; }
.kt-identity-note { margin: .5rem 0 1rem; padding: 1rem; border-radius: 12px; color: #fff; background: #006458; font: inherit; font-size: .95rem; line-height: 1.65; max-width: 75ch; }
.kt-editorial-note { margin-top: 1rem; }
.kt-local-contact { width: 100%; padding: 1.25rem 1.5rem; color: #fff; background: #006458; font-size: .95rem; line-height: 1.6; }
.kt-local-contact__inner { width: 100%; max-width: 1310px; margin-inline: auto; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem 2rem; }
.kt-local-contact p { margin: 0; min-width: 0; }
.kt-local-contact a { color: inherit; text-underline-offset: .2em; }
.kt-local-contact a:hover { text-decoration: underline; }
.kt-local-contact a:focus-visible { outline-color: #fff; }
.kt-local-contact__book { display: inline-flex; align-items: center; min-height: 44px; border: 1px solid currentColor; border-radius: 2rem; padding: .6rem 1rem; font-weight: 700; text-decoration: none; }
footer .elementor-icon-list-item a[href$="#recenzii"] { color: #fff; }
@media (max-width: 767px) { .kt-local-contact__inner { flex-direction: column; align-items: flex-start; } }
a, button, input, select, summary { touch-action: manipulation; }
a:focus-visible, button:focus-visible, summary:focus-visible,
input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid #00594e; outline-offset: 4px;
}
.elementskit-menu-container[inert] { visibility: hidden; }
.elementskit-menu-close { min-width: 44px; min-height: 44px; }
.kt-icon { width: 1em; height: 1em; display: inline-block; vertical-align: middle; flex-shrink: 0; }
.kt-icon:not(.kt-arrow) path { fill: none; stroke: currentColor; }
.kt-arrow path { fill: inherit; stroke: none; }
.kt-icon.kt-original-icon path { fill: inherit; stroke: none; }
.jkit-button-wrapper .kt-arrow { width: 36px !important; height: 36px !important; padding: 10px !important; }
.jkit-testimonials .tns-controls { display: flex; justify-content: center; flex-wrap: wrap; gap: .75rem; margin-top: 1.25rem; }
#recenzii .tns-controls button { border: 1px solid currentColor; border-radius: 2rem; padding: .65rem 1rem; color: #fff; background: transparent; font: inherit; }
#recenzii :focus-visible { outline-color: #fff; }
.jkit-testimonials .tns-controls button:hover { background: rgba(255,255,255,.15); }
.jkit-testimonials .tns-controls button:disabled { opacity: .5; cursor: default; }
.jkit-testimonials .tns-nav button { min-width: 24px; min-height: 24px; background-clip: content-box; padding: 7px; }
.jkit-testimonials .testimonials-track:not(.tns-slider) { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,300px),1fr)); gap: 1.25rem; }
.elementor-kit-6 { --e-global-typography-primary-font-family: "Manrope"; --e-global-typography-secondary-font-family: "Manrope"; --e-global-typography-text-font-family: "Manrope"; --e-global-typography-accent-font-family: "Manrope"; }
select, option, input, textarea, button { font-family: inherit; }
.kt-video-toggle { position: absolute; right: 1rem; bottom: 1rem; z-index: 5; pointer-events: auto; border: 1px solid #fff; border-radius: 2rem; padding: .5rem .9rem; color: #fff; background: rgba(0,0,0,.65); font: 600 .85rem Manrope,sans-serif; }
/* Keep the service introduction comfortably wide on desktop. */
@media (min-width: 1025px) {
  #servicii .elementor-element.elementor-element-2db9b4e { width: min(100%,1080px); max-width: 1080px; align-self: center; margin-inline: auto; }
  #servicii .elementor-element-2db9b4e .heading-section-description { width: min(100%,920px); max-width: 920px; margin-inline: auto; }
  #servicii .elementor-element-2db9b4e .heading-section-description p { max-width: none; }
  #servicii .elementor-element-2db9b4e .heading-title .kt-accent { display: block; }
}
@media (max-width: 1024px) {
  .elementor .elementskit-menu-container.elementskit-menu-offcanvas-elements {
    position: fixed; top: 0; left: 0; height: 100dvh; max-width: min(350px,90vw);
    overflow-y: auto; transform: translateX(-105%); transition: transform .2s ease;
  }
  .elementor .elementskit-menu-container.elementskit-menu-offcanvas-elements.active { transform: translateX(0); }
  .elementor .elementskit-menu-overlay { left: 0; opacity: 0; pointer-events: none; transition: opacity .2s ease; }
  .elementor .elementskit-menu-overlay.active { opacity: 1; pointer-events: auto; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
