[data-vm-presentation] {
    --vmx-ink: #102b2a;
    --vmx-deep: #073f3b;
    --vmx-teal: #087c6b;
    --vmx-bright: #20b99e;
    --vmx-mint: #dff4ed;
    --vmx-cream: #f5f4ed;
    --vmx-muted: #647a76;
    --vmx-line: rgba(16, 67, 61, .14);
    --vmx-shell: min(1180px, calc(100vw - 48px));
    overflow: clip;
    color: var(--vmx-ink);
    background: #fbfcf9;
    font-family: Inter, sans-serif;
}

[data-vm-presentation] *,
[data-vm-presentation] *::before,
[data-vm-presentation] *::after { box-sizing: border-box; }

[data-vm-presentation] > section {
    position: relative;
    display: flex;
    align-items: center;
    height: auto;
    min-height: var(--vmx-panel-height, calc(100svh - 110px));
    overflow: clip;
    padding-top: clamp(30px, 5vh, 62px) !important;
    padding-bottom: clamp(30px, 5vh, 62px) !important;
    isolation: isolate;
}

[data-vm-presentation] > section:nth-child(odd) {
    background:
        linear-gradient(rgba(8,124,107,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(8,124,107,.035) 1px, transparent 1px),
        radial-gradient(circle at 82% 40%, rgba(73, 199, 169, .18), transparent 30%),
        #fbfcf9 !important;
    background-size: 70px 70px, 70px 70px, auto, auto !important;
}

[data-vm-presentation] > section:nth-child(even) {
    background: linear-gradient(145deg, #eff8f4 0%, #f7f4eb 100%) !important;
}

[data-vm-presentation] > section:first-child {
    background:
        linear-gradient(rgba(8,124,107,.045) 1px, transparent 1px),
        linear-gradient(90deg, rgba(8,124,107,.045) 1px, transparent 1px),
        radial-gradient(circle at 76% 48%, rgba(99,215,184,.27), transparent 34%),
        linear-gradient(145deg, #fbfcf8 0%, #eef8f3 58%, #f7f4eb 100%) !important;
    background-size: 72px 72px, 72px 72px, auto, auto !important;
}

[data-vm-presentation] > section[data-panel-scroll] {
    height: auto;
    overflow: clip;
}

[data-vm-presentation] > section > .container,
[data-vm-presentation] > section > [class$="-wrap"],
[data-vm-presentation] > section > [class*="-wrap "] {
    width: var(--vmx-shell);
    max-width: var(--vmx-shell);
    margin-inline: auto;
}

[data-vm-presentation] h1 {
    color: var(--vmx-ink) !important;
    font-size: clamp(2.8rem, 5.4vw, 5.8rem) !important;
    font-weight: 560 !important;
    letter-spacing: -.06em;
    line-height: 1 !important;
}

[data-vm-presentation] h1 em,
[data-vm-presentation] h1 span,
[data-vm-presentation] .ambu-hero-accent { color: var(--vmx-teal) !important; }

[data-vm-presentation] h2:not(.accordion-header) {
    color: var(--vmx-ink);
    font-size: clamp(2rem, 3.6vw, 4rem);
    font-weight: 560 !important;
    letter-spacing: -.045em;
    line-height: 1.06;
}

[data-vm-presentation] h3 { color: var(--vmx-ink); letter-spacing: -.025em; }
[data-vm-presentation] p { color: var(--vmx-muted); }

[data-vm-presentation] [class$="-section-head"],
[data-vm-presentation] [class*="-section-head "] {
    display: block;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    outline: 0;
}

[data-vm-presentation] .card,
[data-vm-presentation] [class$="-card"],
[data-vm-presentation] [class*="-card "] {
    border: 1px solid var(--vmx-line) !important;
    border-radius: 20px !important;
    background: rgba(255,255,255,.84) !important;
    box-shadow: 0 18px 48px rgba(18,66,58,.08) !important;
    backdrop-filter: blur(12px);
    transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease;
}

[data-vm-presentation] .card:hover,
[data-vm-presentation] [class$="-card"]:hover,
[data-vm-presentation] [class*="-card "]:hover {
    border-color: rgba(8,124,107,.32) !important;
    box-shadow: 0 26px 60px rgba(18,66,58,.14) !important;
    transform: translateY(-5px);
}

[data-vm-presentation] .btn-primary,
[data-vm-presentation] [class$="-btn-primary"],
[data-vm-presentation] [class*="-btn-primary "] {
    border-color: var(--vmx-teal) !important;
    background: var(--vmx-teal) !important;
    color: #fff !important;
}

[data-vm-presentation] .btn-primary:hover,
[data-vm-presentation] [class$="-btn-primary"]:hover,
[data-vm-presentation] [class*="-btn-primary "]:hover {
    border-color: #056658 !important;
    background: #056658 !important;
}

[data-vm-presentation] .text-primary,
[data-vm-presentation] .text-success { color: var(--vmx-teal) !important; }
[data-vm-presentation] .bg-primary,
[data-vm-presentation] .bg-success { background-color: var(--vmx-teal) !important; }

[data-vm-presentation] .accordion-item,
[data-vm-presentation] details,
[data-vm-presentation] form {
    border-color: var(--vmx-line) !important;
    border-radius: 16px !important;
}

[data-vm-presentation] input:focus,
[data-vm-presentation] select:focus,
[data-vm-presentation] textarea:focus {
    border-color: var(--vmx-teal) !important;
    box-shadow: 0 0 0 3px rgba(8,124,107,.12) !important;
}

[data-vm-presentation] [data-vmx-reveal] {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity .7s ease, transform .7s cubic-bezier(.2,.7,.2,1);
    transition-delay: var(--vmx-delay, 0ms);
    will-change: opacity, transform;
}

[data-vm-presentation] [data-vmx-reveal].is-visible {
    opacity: 1;
    transform: translateY(0);
}

.page-wrapper:has([data-vm-presentation]) > .vm-footer {
    border-top: 1px solid rgba(120,223,198,.16);
    color: rgba(255,255,255,.74);
}

.page-wrapper:has([data-vm-presentation]) > .vm-footer .vm-footer-logo-text {
    background: none;
    color: #78dfc6;
    -webkit-text-fill-color: currentColor;
}

.page-wrapper:has([data-vm-presentation]) > .vm-footer .vm-footer-contact-item i,
.page-wrapper:has([data-vm-presentation]) > .vm-footer .vm-footer-copy strong { color: #78dfc6; }

@media (min-width: 992px) {
    .page-wrapper:has([data-vm-presentation]) > main {
        scroll-behavior: smooth;
        scroll-snap-type: none;
    }

    [data-vm-presentation] > section[data-panel-compact] {
        padding-top: 24px !important;
        padding-bottom: 24px !important;
    }

}

@media (min-width: 992px) and (max-height: 850px) {
    [data-vm-presentation] > section {
        padding-top: 24px !important;
        padding-bottom: 24px !important;
    }

    [data-vm-presentation] h1 { font-size: clamp(2.5rem, 4.6vw, 4.7rem) !important; }
    [data-vm-presentation] h2:not(.accordion-header) { font-size: clamp(1.8rem, 3vw, 3.2rem); }
    [data-vm-presentation] .row.g-5 { --bs-gutter-y: 1.5rem; }
}

@media (max-width: 991.98px) {
    [data-vm-presentation] { --vmx-shell: min(100% - 32px, 760px); overflow: clip; }
    [data-vm-presentation] > section,
    [data-vm-presentation] > section[data-panel-scroll] {
        display: block;
        height: auto;
        min-height: calc(100svh - 52px);
        overflow: visible;
        padding-top: 52px !important;
        padding-bottom: 52px !important;
        scroll-snap-align: none;
    }
    [data-vm-presentation] h1 { font-size: clamp(2.5rem, 11vw, 4.2rem) !important; }
    [data-vm-presentation] h2:not(.accordion-header) { font-size: clamp(2rem, 8vw, 3.3rem); }
    [data-vm-presentation] .card:hover,
    [data-vm-presentation] [class$="-card"]:hover,
    [data-vm-presentation] [class*="-card "]:hover { transform: none; }
}

@media (prefers-reduced-motion: reduce) {
    [data-vm-presentation] *,
    [data-vm-presentation] *::before,
    [data-vm-presentation] *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
    }
    [data-vm-presentation] [data-vmx-reveal] { opacity: 1; transform: none; }
}
