html { scroll-behavior:smooth; }
body { margin:0; }
.skip-link { position:fixed;top:0;left:1rem;z-index:99999;transform:translateY(-150%);padding:1rem;background:#042938;color:#fff; }
.skip-link:focus { transform:none; }
:focus-visible { outline:3px solid #c2a04d;outline-offset:4px; }
.elementor-invisible { visibility:visible!important; }
.elementor-widget-nav-menu .elementor-menu-toggle { border:0;background:transparent; }
.elementor-widget-nav-menu .sub-menu { display:none;position:absolute;z-index:1000;min-width:220px; }
.elementor-widget-nav-menu li { position:relative; }
.elementor-widget-nav-menu li:hover > .sub-menu,.elementor-widget-nav-menu li:focus-within > .sub-menu,.elementor-widget-nav-menu li.submenu-open > .sub-menu { display:block; }
.submenu-toggle { border:0;background:transparent;color:inherit;font-size:16px;padding:4px;position:absolute;right:0;top:12px;cursor:pointer; }
.elementor-widget-nav-menu .menu-item-has-children > a { padding-right:24px!important; }
nav.elementor-nav-menu--dropdown { display:none; }
nav.elementor-nav-menu--dropdown.is-open { display:block;max-height:80vh;overflow:auto;position:relative;top:0; }
nav.elementor-nav-menu--dropdown .sub-menu { position:static; }
.elementor-widget-image-carousel .swiper-wrapper { display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;transform:none!important; }
.elementor-widget-image-carousel .swiper-slide { width:100%;min-width:100%;scroll-snap-align:start; }
.elementor-widget-image-carousel .swiper-slide img { width:100%;object-fit:contain; }
.elementor-widget-image-carousel .elementor-image-carousel-wrapper { position:relative; }
.carousel-control { position:absolute;z-index:2;top:45%;border:0;background:#042938bb;color:white;font-size:32px;line-height:1.1;padding:4px 12px;cursor:pointer; }
.carousel-prev { left:8px; }.carousel-next { right:8px; }
.elementor-widget-video iframe { width:100%;height:100%;border:0;aspect-ratio:16/9; }
.elementor-widget-video .elementor-wrapper { aspect-ratio:16/9; }
.native-accordion { border:1px solid #d5d8dc;margin-bottom:4px; }
.native-accordion summary { padding:18px 20px;cursor:pointer;color:#042938;font-weight:600; }
.native-accordion[open] summary { color:#9b7a2e; }
.accordion-content { padding:0 20px 20px; }
.appointment-options { padding:20px;line-height:1.8;text-align:center; }
.appointment-options h3 { color:inherit; }
.appointment-options .elementor-button { display:inline-block;margin:8px;background:#c2a04d;color:#042938;font-weight:600;padding:14px 22px; }
.appointment-options .portal-button { background:#042938;color:white;border:1px solid #c2a04d; }
.appointment-note { font-size:14px; }
.image-dialog { max-width:95vw;max-height:95vh;padding:12px;border:0;background:#fff; }
.image-dialog::backdrop { background:#000c; }
.image-dialog img { max-width:90vw;max-height:85vh;object-fit:contain; }
.image-dialog button { position:absolute;right:12px;top:12px;background:#042938;color:white;border:0;font-size:30px;cursor:pointer; }
.not-found { max-width:1100px;margin:80px auto;padding:30px;text-align:center; }
@media(max-width:1024px) { .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown .elementor-nav-menu { display:block; } .elementor-nav-menu--dropdown .submenu-toggle { right:12px;top:8px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation:none!important;transition:none!important; } }
.elementor-widget-nav-menu nav.elementor-nav-menu--dropdown.is-open { max-height:80vh!important;height:auto!important;transform:none!important;opacity:1!important;width:min(92vw,420px); }
.elementor-widget-image-carousel .swiper:not(.swiper-initialized) .swiper-wrapper { display:flex!important; }
.elementor-widget-nav-menu .elementor-widget-container { position:relative; }
.elementor-widget-nav-menu nav.elementor-nav-menu--dropdown.is-open { position:absolute;top:100%!important;left:0;z-index:1001; }
.elementor-widget-nav-menu .elementor-menu-toggle { position:relative;z-index:1002; }
.uael-img-gallery-wrap { display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:100%; }
.uael-img-gallery-wrap .uael-grid-item { width:auto!important;max-width:100%;padding:0!important;position:relative!important;left:auto!important;top:auto!important; }
@media(max-width:767px) { .uael-img-gallery-wrap { grid-template-columns:repeat(2,minmax(0,1fr)); } }
.video-fallback { display:block;font-size:12px;text-align:right;padding:3px 8px;color:#042938;background:#fff; }
.video-poster { width:100%;height:100%;position:relative;display:block;overflow:hidden;border:0;padding:0;background:#042938;cursor:pointer;aspect-ratio:16/9; }
.video-poster img { display:block;width:100%;height:100%;object-fit:cover; }
.video-poster span { position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:72px;height:52px;border-radius:12px;background:#042938d9;color:white;font-size:30px;padding-left:5px; }
.video-poster:hover span,.video-poster:focus-visible span { background:#c2a04d;color:#042938; }
