/* Behaviour and reset only. Typography, colours, spacing and grids are Elementor settings. */
.ae-v14-page { margin: 0; }
.ae-v14-page .elementor-widget-text-editor p { margin: 0; }
.ae-v14-page .elementor-heading-title { margin: 0; }
.ae-v14-page .elementor-widget-image img { display: block; }
.ae-v14-page .ae-need-option { text-decoration: none; cursor: pointer; }
.ae-v14-page .ae-need-option:focus-visible { outline: 2px solid currentColor; outline-offset: -2px; }
.ae-v14-page .ae-hidden { display: none !important; }
.ae-v14-page .ae-v14-modal { padding: 0; border: 0; width: min(1120px, calc(100% - 28px)); max-width: none; max-height: calc(100vh - 28px); background: transparent; overflow: auto; }
.ae-v14-page .ae-v14-modal[data-kind="brief-dialog"] { width: min(720px, calc(100% - 28px)); }
.ae-v14-page .ae-v14-modal::backdrop { background: rgba(16,22,20,.72); backdrop-filter: blur(6px); }
.ae-v14-page .ae-v14-modal > .e-con { width: 100%; }
.elementor-widget-ae-brief-field .ae-field-label { display: block; }
.elementor-widget-ae-brief-field .ae-field-input { width: 100%; border: 1px solid; border-radius: 0; }
.ae-v14-page [data-ae-role="summary"] pre { white-space: pre-wrap; font: inherit; }
.ae-v14-page .ae-site-header.is-scrolled { backdrop-filter: blur(18px); }
.ae-v14-page [data-ae-role="zoom"] { transform-origin: top left; }
@media(max-width:767px) {
 .ae-v14-page:not(.elementor-editor-active) [data-ae-role="navigation"] { position: fixed; top: 72px; left: 0; transform: translateX(110%); min-height: calc(100vh - 72px); }
 .ae-v14-page:not(.elementor-editor-active) [data-ae-role="navigation"].is-open { transform: none; }
}
@media(prefers-reduced-motion:reduce) { .ae-v14-page { scroll-behavior: auto; } }

.ae-price-table-scroll { overflow-x: auto; }
.ae-price-table { width:100%; border-collapse:collapse; border:0; margin:0; table-layout:fixed; }
.ae-price-table th, .ae-price-table td { border:0; border-bottom-style:solid; vertical-align:top; }
.ae-price-table th:first-child { text-align:left; }
.ae-price-table small { display:block; }
.ae-price-table td { font-weight:inherit; }
.ae-v14-page .elementor-widget-ae-template-reference { min-width:0; }
.ae-v14-page.admin-bar:not(.elementor-editor-active) .ae-site-header { top:32px; }
@media(max-width:782px) { .ae-v14-page.admin-bar:not(.elementor-editor-active) .ae-site-header { top:46px; } }

.ae-v14-page [data-ae-action="faq"] a[aria-expanded="true"] .ae-faq-vertical { display:none; }
