.elementor-50 .elementor-element.elementor-element-3d41d986{--display:flex;}.elementor-50 .elementor-element.elementor-element-857f495{--display:flex;}.elementor-50 .elementor-element.elementor-element-857f495:not(.elementor-motion-effects-element-type-background), .elementor-50 .elementor-element.elementor-element-857f495 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-450fc7cb *//* ==========================================================
   OLIVERA HEADER V4
   CSS — PARTEA 1
   Base + Topbar + Header + Desktop Navigation
========================================================== */


/* ==========================================================
   1. VARIABILE
========================================================== */

:root {
    --ol-v4-gold: #dca54a;
    --ol-v4-gold-light: #f6d489;
    --ol-v4-gold-dark: #8e5f16;

    --ol-v4-black: #050505;
    --ol-v4-black-soft: #0a0a0a;
    --ol-v4-black-card: #111111;
    --ol-v4-black-elevated: #171717;

    --ol-v4-white: #ffffff;
    --ol-v4-text: #ededed;
    --ol-v4-muted: rgba(255, 255, 255, 0.58);

    --ol-v4-border: rgba(255, 255, 255, 0.08);
    --ol-v4-border-gold: rgba(220, 165, 74, 0.22);

    --ol-v4-container: 1480px;

    --ol-v4-radius-sm: 12px;
    --ol-v4-radius-md: 20px;
    --ol-v4-radius-lg: 30px;
    --ol-v4-radius-xl: 38px;

    --ol-v4-shadow-sm:
        0 10px 30px rgba(0, 0, 0, 0.22);

    --ol-v4-shadow-md:
        0 24px 65px rgba(0, 0, 0, 0.34);

    --ol-v4-shadow-lg:
        0 40px 110px rgba(0, 0, 0, 0.52);

    --ol-v4-transition:
        0.35s cubic-bezier(0.22, 1, 0.36, 1);

    --ol-v4-transition-fast:
        0.22s ease;

    --ol-v4-header-z:
        99990;

    --ol-v4-mega-z:
        99980;

    --ol-v4-overlay-z:
        99970;

    --ol-v4-mobile-z:
        100000;
}


/* ==========================================================
   2. RESET LOCAL
========================================================== */

.ol-v4-header,
.ol-v4-header *,
.ol-v4-mega-backdrop,
.ol-v4-mobile-overlay,
.ol-v4-mobile-menu,
.ol-v4-mobile-menu * {
    box-sizing: border-box;
}

.ol-v4-header a,
.ol-v4-mobile-menu a {
    color: inherit;
    text-decoration: none;
}

.ol-v4-header ul,
.ol-v4-header ol,
.ol-v4-mobile-menu ul,
.ol-v4-mobile-menu ol {
    margin: 0;
    padding: 0;
    list-style: none;
}

.ol-v4-header button,
.ol-v4-mobile-menu button {
    margin: 0;
    padding: 0;
    font: inherit;
}

.ol-v4-header img,
.ol-v4-mobile-menu img {
    display: block;
    max-width: 100%;
}

body.ol-v4-menu-open,
html.ol-v4-menu-open {
    overflow: hidden !important;
}


/* ==========================================================
   3. HEADER PRINCIPAL
========================================================== */

.ol-v4-header {
    position: sticky;
    top: 0;
    z-index: var(--ol-v4-header-z);

    width: 100%;

    color: var(--ol-v4-text);

    background:
        linear-gradient(
            180deg,
            rgba(10, 10, 10, 0.97) 0%,
            rgba(5, 5, 5, 0.95) 100%
        );

    border-bottom:
        1px solid rgba(220, 165, 74, 0.09);

    backdrop-filter:
        blur(22px);

    -webkit-backdrop-filter:
        blur(22px);

    transition:
        background var(--ol-v4-transition),
        box-shadow var(--ol-v4-transition),
        border-color var(--ol-v4-transition);
}

.ol-v4-header.is-shrunk {
    background:
        rgba(5, 5, 5, 0.98);

    border-bottom-color:
        rgba(220, 165, 74, 0.15);

    box-shadow:
        0 18px 55px rgba(0, 0, 0, 0.34);
}


/* ==========================================================
   4. TOP BAR
========================================================== */

.ol-v4-topbar {
    position: relative;

    width: 100%;

    background:
        rgba(2, 2, 2, 0.98);

    border-bottom:
        1px solid rgba(255, 255, 255, 0.045);
}

.ol-v4-topbar-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;

    width: 100%;
    max-width: var(--ol-v4-container);

    margin: 0 auto;
    padding: 10px 30px;

    gap: 24px;

    font-size: 12px;
    line-height: 1.4;
}

.ol-v4-topbar-contact {
    display: flex;
    align-items: center;

    gap: 13px;

    color:
        rgba(255, 255, 255, 0.78);

    font-weight: 500;
}

.ol-v4-topbar-contact a {
    transition:
        color var(--ol-v4-transition-fast);
}

.ol-v4-topbar-contact a:hover,
.ol-v4-topbar-contact a:focus-visible {
    color:
        var(--ol-v4-gold-light);
}

.ol-v4-topbar-dot {
    color:
        var(--ol-v4-gold);

    font-size:
        10px;
}

.ol-v4-topbar-location {
    color:
        var(--ol-v4-gold-light);

    font-weight:
        600;

    letter-spacing:
        0.35px;

    text-align:
        right;
}


/* ==========================================================
   5. HEADER MAIN
========================================================== */

.ol-v4-header-main {
    position: relative;

    width: 100%;

    background:
        linear-gradient(
            180deg,
            rgba(17, 17, 17, 0.94) 0%,
            rgba(8, 8, 8, 0.96) 100%
        );
}

.ol-v4-header-inner {
    display: grid;

    grid-template-columns:
        auto
        minmax(0, 1fr)
        auto;

    align-items: center;

    width: 100%;
    max-width: var(--ol-v4-container);

    min-height: 96px;

    margin: 0 auto;
    padding: 12px 30px;

    column-gap: 34px;

    transition:
        min-height var(--ol-v4-transition),
        padding var(--ol-v4-transition);
}

.ol-v4-header.is-shrunk
.ol-v4-header-inner {
    min-height:
        78px;

    padding-top:
        8px;

    padding-bottom:
        8px;
}


/* ==========================================================
   6. LOGO
========================================================== */

.ol-v4-logo {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;

    flex-shrink: 0;

    outline: none;
}

.ol-v4-logo img {
    width: auto;
    height: 70px;

    object-fit: contain;

    transition:
        height var(--ol-v4-transition),
        transform var(--ol-v4-transition),
        filter var(--ol-v4-transition);
}

.ol-v4-logo:hover img {
    transform:
        scale(1.025);

    filter:
        drop-shadow(
            0 10px 20px rgba(220, 165, 74, 0.14)
        );
}

.ol-v4-logo:focus-visible {
    border-radius:
        var(--ol-v4-radius-sm);

    outline:
        2px solid var(--ol-v4-gold);

    outline-offset:
        6px;
}

.ol-v4-header.is-shrunk
.ol-v4-logo img {
    height:
        58px;
}


/* ==========================================================
   7. NAVIGAȚIE DESKTOP
========================================================== */

.ol-v4-desktop-nav {
    display: flex;
    align-items: center;
    justify-content: center;

    min-width: 0;
}

.ol-v4-nav-list {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 100%;

    gap: clamp(18px, 1.7vw, 34px);
}

.ol-v4-nav-item {
    position: relative;

    display: flex;
    align-items: center;

    min-width: 0;
}

.ol-v4-nav-link {
    position: relative;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 62px;

    color:
        rgba(255, 255, 255, 0.92);

    font-size:
        14px;

    line-height:
        1.25;

    font-weight:
        600;

    letter-spacing:
        0.05px;

    white-space:
        nowrap;

    transition:
        color var(--ol-v4-transition-fast);
}

.ol-v4-nav-link::after {
    content: "";

    position: absolute;
    left: 50%;
    bottom: 7px;

    width: 0;
    height: 1px;

    transform:
        translateX(-50%);

    background:
        linear-gradient(
            90deg,
            transparent 0%,
            var(--ol-v4-gold) 50%,
            transparent 100%
        );

    transition:
        width var(--ol-v4-transition);
}

.ol-v4-nav-link:hover,
.ol-v4-nav-link:focus-visible,
.ol-v4-nav-link.is-active {
    color:
        var(--ol-v4-gold-light);
}

.ol-v4-nav-link:hover::after,
.ol-v4-nav-link:focus-visible::after,
.ol-v4-nav-link.is-active::after {
    width:
        100%;
}

.ol-v4-nav-link:focus-visible {
    outline:
        none;
}


/* ==========================================================
   8. TRIGGER SERVICII
========================================================== */

.ol-v4-services-item {
    position: static;
}

.ol-v4-services-trigger-wrap {
    position: relative;

    display: flex;
    align-items: center;

    gap: 4px;
}

.ol-v4-services-link {
    padding-right:
        1px;
}

.ol-v4-services-trigger {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 30px;
    height: 36px;

    border:
        0;

    border-radius:
        999px;

    background:
        transparent;

    color:
        rgba(255, 255, 255, 0.9);

    cursor:
        pointer;

    transition:
        color var(--ol-v4-transition-fast),
        background var(--ol-v4-transition-fast),
        transform var(--ol-v4-transition);
}

.ol-v4-services-trigger:hover,
.ol-v4-services-trigger:focus-visible {
    color:
        var(--ol-v4-gold-light);

    background:
        rgba(220, 165, 74, 0.09);

    outline:
        none;
}

.ol-v4-services-trigger svg {
    width:
        15px;

    height:
        15px;

    fill:
        none;

    stroke:
        currentColor;

    stroke-width:
        2;

    stroke-linecap:
        round;

    stroke-linejoin:
        round;

    transition:
        transform var(--ol-v4-transition);
}

.ol-v4-services-item.is-open
.ol-v4-services-trigger svg {
    transform:
        rotate(180deg);
}

.ol-v4-services-item.is-open
.ol-v4-services-link {
    color:
        var(--ol-v4-gold-light);
}

.ol-v4-services-item.is-open
.ol-v4-services-link::after {
    width:
        100%;
}


/* ==========================================================
   9. ACȚIUNI DESKTOP
========================================================== */

.ol-v4-header-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;

    flex-shrink: 0;

    gap: 12px;
}

.ol-v4-account-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 46px;

    padding: 0 17px;

    gap: 9px;

    border:
        1px solid rgba(255, 255, 255, 0.09);

    border-radius:
        999px;

    background:
        rgba(255, 255, 255, 0.025);

    color:
        rgba(255, 255, 255, 0.92);

    font-size:
        13px;

    font-weight:
        600;

    white-space:
        nowrap;

    transition:
        color var(--ol-v4-transition-fast),
        border-color var(--ol-v4-transition-fast),
        background var(--ol-v4-transition-fast),
        transform var(--ol-v4-transition);
}

.ol-v4-account-button svg {
    width:
        18px;

    height:
        18px;

    flex-shrink:
        0;
}

.ol-v4-account-button:hover,
.ol-v4-account-button:focus-visible {
    color:
        var(--ol-v4-gold-light);

    border-color:
        rgba(220, 165, 74, 0.45);

    background:
        rgba(220, 165, 74, 0.07);

    transform:
        translateY(-2px);

    outline:
        none;
}

.ol-v4-header-cta {
    position: relative;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height:
        48px;

    padding:
        0 24px;

    overflow:
        hidden;

    border:
        1px solid rgba(255, 224, 147, 0.32);

    border-radius:
        999px;

    background:
        linear-gradient(
            135deg,
            #8f5b12 0%,
            #dca54a 32%,
            #f6d489 55%,
            #c78c2e 78%,
            #80500e 100%
        );

    color:
        #111111;

    box-shadow:
        0 15px 38px rgba(220, 165, 74, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.38);

    font-size:
        13px;

    font-weight:
        750;

    white-space:
        nowrap;

    transition:
        transform var(--ol-v4-transition),
        box-shadow var(--ol-v4-transition),
        filter var(--ol-v4-transition);
}

.ol-v4-header-cta::before {
    content: "";

    position: absolute;
    top: 0;
    left: -120%;

    width:
        70%;

    height:
        100%;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255, 255, 255, 0.52),
            transparent
        );

    transform:
        skewX(-18deg);

    transition:
        left 0.8s ease;
}

.ol-v4-header-cta:hover,
.ol-v4-header-cta:focus-visible {
    transform:
        translateY(-3px);

    filter:
        brightness(1.06);

    box-shadow:
        0 22px 55px rgba(220, 165, 74, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.4);

    outline:
        none;
}

.ol-v4-header-cta:hover::before,
.ol-v4-header-cta:focus-visible::before {
    left:
        145%;
}


/* ==========================================================
   10. BUTON MENIU MOBIL
========================================================== */

.ol-v4-mobile-toggle {
    display:
        none;

    align-items:
        center;

    justify-content:
        center;

    flex-direction:
        column;

    width:
        48px;

    height:
        48px;

    gap:
        6px;

    border:
        1px solid rgba(255, 255, 255, 0.09);

    border-radius:
        50%;

    background:
        rgba(255, 255, 255, 0.035);

    cursor:
        pointer;

    transition:
        border-color var(--ol-v4-transition-fast),
        background var(--ol-v4-transition-fast),
        transform var(--ol-v4-transition);
}

.ol-v4-mobile-toggle span {
    display:
        block;

    width:
        22px;

    height:
        2px;

    border-radius:
        999px;

    background:
        var(--ol-v4-white);

    transition:
        transform var(--ol-v4-transition),
        opacity var(--ol-v4-transition),
        background var(--ol-v4-transition-fast);
}

.ol-v4-mobile-toggle:hover,
.ol-v4-mobile-toggle:focus-visible {
    border-color:
        rgba(220, 165, 74, 0.45);

    background:
        rgba(220, 165, 74, 0.08);

    transform:
        scale(1.04);

    outline:
        none;
}

.ol-v4-mobile-toggle:hover span,
.ol-v4-mobile-toggle:focus-visible span {
    background:
        var(--ol-v4-gold-light);
}


/* ==========================================================
   11. MEGA MENU BACKDROP
========================================================== */

.ol-v4-mega-backdrop {
    position:
        fixed;

    inset:
        0;

    z-index:
        var(--ol-v4-overlay-z);

    background:
        rgba(0, 0, 0, 0.52);

    backdrop-filter:
        blur(5px);

    -webkit-backdrop-filter:
        blur(5px);

    opacity:
        0;

    visibility:
        hidden;

    pointer-events:
        none;

    transition:
        opacity var(--ol-v4-transition),
        visibility var(--ol-v4-transition);
}

.ol-v4-mega-backdrop.is-active {
    opacity:
        1;

    visibility:
        visible;

    pointer-events:
        auto;
}


/* ==========================================================
   12. MEGA MENU — CONTAINER
========================================================== */

.ol-v4-mega-menu {
    position:
        fixed;

    left:
        50%;

    top:
        var(--ol-v4-mega-top, 128px);

    z-index:
        var(--ol-v4-mega-z);

    width:
        min(1460px, calc(100vw - 42px));

    max-height:
        calc(100vh - var(--ol-v4-mega-top, 128px) - 24px);

    overflow:
        hidden auto;

    transform:
        translateX(-50%)
        translateY(18px)
        scale(0.985);

    opacity:
        0;

    visibility:
        hidden;

    pointer-events:
        none;

    filter:
        drop-shadow(
            0 42px 95px rgba(0, 0, 0, 0.55)
        );

    transition:
        opacity var(--ol-v4-transition),
        transform var(--ol-v4-transition),
        visibility var(--ol-v4-transition);
}

.ol-v4-services-item.is-open
.ol-v4-mega-menu {
    opacity:
        1;

    visibility:
        visible;

    pointer-events:
        auto;

    transform:
        translateX(-50%)
        translateY(0)
        scale(1);
}

.ol-v4-mega-shell {
    position:
        relative;

    width:
        100%;

    padding:
        30px;

    overflow:
        hidden;

    border:
        1px solid rgba(255, 255, 255, 0.075);

    border-radius:
        var(--ol-v4-radius-xl);

    background:
        linear-gradient(
            150deg,
            rgba(20, 20, 20, 0.985) 0%,
            rgba(9, 9, 9, 0.995) 54%,
            rgba(5, 5, 5, 0.998) 100%
        );

    box-shadow:
        var(--ol-v4-shadow-lg);

    backdrop-filter:
        blur(30px);

    -webkit-backdrop-filter:
        blur(30px);
}

.ol-v4-mega-shell::before {
    content: "";

    position:
        absolute;

    top:
        -320px;

    right:
        -230px;

    width:
        650px;

    height:
        650px;

    border-radius:
        50%;

    background:
        radial-gradient(
            circle,
            rgba(220, 165, 74, 0.13) 0%,
            rgba(220, 165, 74, 0.045) 35%,
            transparent 72%
        );

    pointer-events:
        none;
}

.ol-v4-mega-shell::after {
    content: "";

    position:
        absolute;

    bottom:
        -260px;

    left:
        -210px;

    width:
        520px;

    height:
        520px;

    border-radius:
        50%;

    background:
        radial-gradient(
            circle,
            rgba(255, 255, 255, 0.045) 0%,
            transparent 70%
        );

    pointer-events:
        none;
}


/* ==========================================================
   13. MEGA MENU HEADER
========================================================== */

.ol-v4-mega-header {
    position:
        relative;

    z-index:
        2;

    display:
        flex;

    align-items:
        flex-end;

    justify-content:
        space-between;

    gap:
        28px;

    margin-bottom:
        26px;

    padding-bottom:
        23px;

    border-bottom:
        1px solid rgba(255, 255, 255, 0.07);
}

.ol-v4-mega-eyebrow {
    display:
        block;

    margin-bottom:
        7px;

    color:
        var(--ol-v4-gold);

    font-size:
        10px;

    font-weight:
        750;

    letter-spacing:
        2.1px;

    text-transform:
        uppercase;
}

.ol-v4-mega-title {
    margin:
        0;

    color:
        var(--ol-v4-white);

    font-size:
        clamp(24px, 2vw, 34px);

    line-height:
        1.1;

    font-weight:
        700;

    letter-spacing:
        -0.6px;
}

.ol-v4-mega-all-link {
    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    min-height:
        42px;

    padding:
        0 17px;

    gap:
        10px;

    border:
        1px solid rgba(220, 165, 74, 0.24);

    border-radius:
        999px;

    background:
        rgba(220, 165, 74, 0.055);

    color:
        var(--ol-v4-gold-light);

    font-size:
        12px;

    font-weight:
        650;

    white-space:
        nowrap;

    transition:
        border-color var(--ol-v4-transition-fast),
        background var(--ol-v4-transition-fast),
        transform var(--ol-v4-transition);
}

.ol-v4-mega-all-link span {
    font-size:
        17px;

    line-height:
        1;

    transition:
        transform var(--ol-v4-transition);
}

.ol-v4-mega-all-link:hover,
.ol-v4-mega-all-link:focus-visible {
    border-color:
        rgba(220, 165, 74, 0.48);

    background:
        rgba(220, 165, 74, 0.105);

    transform:
        translateY(-2px);

    outline:
        none;
}

.ol-v4-mega-all-link:hover span,
.ol-v4-mega-all-link:focus-visible span {
    transform:
        translateX(4px);
}


/* ==========================================================
   14. LAYOUT MEGA MENU
========================================================== */

.ol-v4-mega-layout {
    position:
        relative;

    z-index:
        2;

    display:
        grid;

    grid-template-columns:
        minmax(0, 4fr)
        minmax(270px, 1.18fr);

    gap:
        28px;

    align-items:
        stretch;
}

.ol-v4-mega-services {
    display:
        grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap:
        0;

    min-width:
        0;
}


/* ==========================================================
   15. COLOANE GENERATE DIN JAVASCRIPT
========================================================== */

.ol-v4-mega-category {
    position:
        relative;

    display:
        flex;

    flex-direction:
        column;

    min-width:
        0;

    padding:
        4px 24px;
}

.ol-v4-mega-category:first-child {
    padding-left:
        4px;
}

.ol-v4-mega-category:last-child {
    padding-right:
        4px;
}

.ol-v4-mega-category:not(:last-child)::after {
    content: "";

    position:
        absolute;

    top:
        0;

    right:
        0;

    width:
        1px;

    height:
        100%;

    background:
        linear-gradient(
            180deg,
            transparent 0%,
            rgba(255, 255, 255, 0.085) 15%,
            rgba(255, 255, 255, 0.085) 85%,
            transparent 100%
        );
}

.ol-v4-mega-category-title {
    margin:
        0 0 15px;

    color:
        var(--ol-v4-gold);

    font-size:
        14px;

    line-height:
        1.35;

    font-weight:
        750;

    letter-spacing:
        0.15px;
}

.ol-v4-mega-category-links {
    display:
        flex;

    flex-direction:
        column;

    gap:
        1px;
}

.ol-v4-mega-subtitle {
    margin:
        16px 0 7px;

    color:
        rgba(255, 255, 255, 0.42);

    font-size:
        9px;

    line-height:
        1.3;

    font-weight:
        750;

    letter-spacing:
        1.75px;

    text-transform:
        uppercase;
}

.ol-v4-mega-service-link {
    position:
        relative;

    display:
        flex;

    align-items:
        flex-start;

    min-width:
        0;

    padding:
        7px 0;

    color:
        rgba(255, 255, 255, 0.82);

    font-size:
        12px;

    line-height:
        1.35;

    font-weight:
        520;

    transition:
        color var(--ol-v4-transition-fast),
        padding-left var(--ol-v4-transition),
        transform var(--ol-v4-transition);
}

.ol-v4-mega-service-link::before {
    content: "";

    width:
        5px;

    height:
        5px;

    flex:
        0 0 auto;

    margin:
        6px 10px 0 0;

    border-radius:
        50%;

    background:
        var(--ol-v4-gold);

    opacity:
        0.46;

    transition:
        opacity var(--ol-v4-transition-fast),
        transform var(--ol-v4-transition);
}

.ol-v4-mega-service-link::after {
    content: "";

    position:
        absolute;

    left:
        15px;

    right:
        0;

    bottom:
        3px;

    height:
        1px;

    transform:
        scaleX(0);

    transform-origin:
        left center;

    background:
        linear-gradient(
            90deg,
            var(--ol-v4-gold),
            transparent
        );

    opacity:
        0.52;

    transition:
        transform var(--ol-v4-transition);
}

.ol-v4-mega-service-link:hover,
.ol-v4-mega-service-link:focus-visible {
    padding-left:
        7px;

    color:
        var(--ol-v4-gold-light);

    outline:
        none;
}

.ol-v4-mega-service-link:hover::before,
.ol-v4-mega-service-link:focus-visible::before {
    opacity:
        1;

    transform:
        scale(1.35);
}

.ol-v4-mega-service-link:hover::after,
.ol-v4-mega-service-link:focus-visible::after {
    transform:
        scaleX(1);
}

.ol-v4-mega-service-link.is-primary {
    color:
        var(--ol-v4-white);

    font-weight:
        650;
}

.ol-v4-mega-service-link.is-primary::before {
    background:
        var(--ol-v4-gold-light);

    opacity:
        0.82;
}


/* ==========================================================
   16. CARD PREMIUM MEGA MENU
========================================================== */

.ol-v4-mega-feature {
    position:
        relative;

    display:
        flex;

    flex-direction:
        column;

    justify-content:
        center;

    min-width:
        0;

    min-height:
        100%;

    padding:
        30px;

    overflow:
        hidden;

    border:
        1px solid rgba(220, 165, 74, 0.22);

    border-radius:
        var(--ol-v4-radius-lg);

    background:
        linear-gradient(
            145deg,
            rgba(220, 165, 74, 0.13) 0%,
            rgba(255, 255, 255, 0.035) 55%,
            rgba(220, 165, 74, 0.065) 100%
        );

    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.055);

    transition:
        transform var(--ol-v4-transition),
        border-color var(--ol-v4-transition),
        box-shadow var(--ol-v4-transition);
}

.ol-v4-mega-feature:hover {
    transform:
        translateY(-4px);

    border-color:
        rgba(220, 165, 74, 0.38);

    box-shadow:
        0 25px 60px rgba(0, 0, 0, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
}

.ol-v4-mega-feature-glow {
    position:
        absolute;

    top:
        -120px;

    right:
        -120px;

    width:
        280px;

    height:
        280px;

    border-radius:
        50%;

    background:
        radial-gradient(
            circle,
            rgba(246, 212, 137, 0.18) 0%,
            transparent 70%
        );

    pointer-events:
        none;
}

.ol-v4-feature-badge {
    position:
        relative;

    z-index:
        2;

    display:
        inline-flex;

    align-items:
        center;

    width:
        max-content;

    max-width:
        100%;

    margin-bottom:
        18px;

    padding:
        7px 12px;

    border:
        1px solid rgba(220, 165, 74, 0.2);

    border-radius:
        999px;

    background:
        rgba(220, 165, 74, 0.095);

    color:
        var(--ol-v4-gold-light);

    font-size:
        9px;

    line-height:
        1.2;

    font-weight:
        750;

    letter-spacing:
        1.5px;

    text-transform:
        uppercase;
}

.ol-v4-mega-feature h3 {
    position:
        relative;

    z-index:
        2;

    margin:
        0 0 18px;

    color:
        var(--ol-v4-white);

    font-size:
        clamp(20px, 1.6vw, 27px);

    line-height:
        1.23;

    font-weight:
        680;

    letter-spacing:
        -0.45px;
}

.ol-v4-feature-list {
    position:
        relative;

    z-index:
        2;

    display:
        flex;

    flex-direction:
        column;

    gap:
        8px;

    margin:
        0 0 24px !important;
}

.ol-v4-feature-list li {
    position:
        relative;

    padding-left:
        20px;

    color:
        rgba(255, 255, 255, 0.77);

    font-size:
        12px;

    line-height:
        1.45;

    font-weight:
        500;
}

.ol-v4-feature-list li::before {
    content:
        "✓";

    position:
        absolute;

    left:
        0;

    top:
        0;

    color:
        var(--ol-v4-gold-light);

    font-weight:
        800;
}

.ol-v4-feature-button {
    position:
        relative;

    z-index:
        2;

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    width:
        max-content;

    max-width:
        100%;

    min-height:
        44px;

    padding:
        0 19px;

    border:
        1px solid rgba(255, 225, 151, 0.25);

    border-radius:
        999px;

    background:
        linear-gradient(
            135deg,
            #98631a,
            #e1b95e,
            #f4d88e,
            #bd8125
        );

    color:
        #111111;

    box-shadow:
        0 13px 32px rgba(220, 165, 74, 0.2);

    font-size:
        11px;

    font-weight:
        750;

    text-align:
        center;

    transition:
        transform var(--ol-v4-transition),
        box-shadow var(--ol-v4-transition),
        filter var(--ol-v4-transition);
}

.ol-v4-feature-button:hover,
.ol-v4-feature-button:focus-visible {
    transform:
        translateY(-3px);

    filter:
        brightness(1.06);

    box-shadow:
        0 20px 45px rgba(220, 165, 74, 0.31);

    outline:
        none;
}


/* ==========================================================
   17. SCROLLBAR MEGA MENU
========================================================== */

.ol-v4-mega-menu {
    scrollbar-width:
        thin;

    scrollbar-color:
        rgba(220, 165, 74, 0.42)
        transparent;
}

.ol-v4-mega-menu::-webkit-scrollbar {
    width:
        8px;
}

.ol-v4-mega-menu::-webkit-scrollbar-track {
    background:
        transparent;
}

.ol-v4-mega-menu::-webkit-scrollbar-thumb {
    border:
        2px solid transparent;

    border-radius:
        999px;

    background:
        rgba(220, 165, 74, 0.4);

    background-clip:
        padding-box;
}


/* ==========================================================
   18. ANIMAȚII DESKTOP
========================================================== */

@keyframes olV4MegaItemReveal {
    from {
        opacity:
            0;

        transform:
            translateY(12px);
    }

    to {
        opacity:
            1;

        transform:
            translateY(0);
    }
}

.ol-v4-services-item.is-open
.ol-v4-mega-category {
    animation:
        olV4MegaItemReveal
        0.5s
        both;
}

.ol-v4-services-item.is-open
.ol-v4-mega-category:nth-child(1) {
    animation-delay:
        0.02s;
}

.ol-v4-services-item.is-open
.ol-v4-mega-category:nth-child(2) {
    animation-delay:
        0.06s;
}

.ol-v4-services-item.is-open
.ol-v4-mega-category:nth-child(3) {
    animation-delay:
        0.10s;
}

.ol-v4-services-item.is-open
.ol-v4-mega-category:nth-child(4) {
    animation-delay:
        0.14s;
}

.ol-v4-services-item.is-open
.ol-v4-mega-feature {
    animation:
        olV4MegaItemReveal
        0.55s
        0.18s
        both;
}


/* ==========================================================
   19. REDUCERE ANIMAȚII
========================================================== */

@media (prefers-reduced-motion: reduce) {

    .ol-v4-header *,
    .ol-v4-mega-backdrop,
    .ol-v4-mobile-overlay,
    .ol-v4-mobile-menu,
    .ol-v4-mobile-menu * {
        animation:
            none !important;

        transition:
            none !important;

        scroll-behavior:
            auto !important;
    }
}
/* ==========================================================
   OLIVERA HEADER V4
   CSS — PARTEA 2
   Mobile Menu + Overlay + Responsive
========================================================== */


/* ==========================================================
   20. OVERLAY MENIU MOBIL
========================================================== */

.ol-v4-mobile-overlay {
    position:
        fixed;

    inset:
        0;

    z-index:
        calc(var(--ol-v4-mobile-z) - 1);

    background:
        rgba(0, 0, 0, 0.72);

    backdrop-filter:
        blur(7px);

    -webkit-backdrop-filter:
        blur(7px);

    opacity:
        0;

    visibility:
        hidden;

    pointer-events:
        none;

    transition:
        opacity var(--ol-v4-transition),
        visibility var(--ol-v4-transition);
}

.ol-v4-mobile-overlay.is-active {
    opacity:
        1;

    visibility:
        visible;

    pointer-events:
        auto;
}


/* ==========================================================
   21. PANOU MENIU MOBIL
========================================================== */

.ol-v4-mobile-menu {
    position:
        fixed;

    top:
        0;

    right:
        0;

    z-index:
        var(--ol-v4-mobile-z);

    width:
        min(470px, 100vw);

    height:
        100vh;

    min-height:
        100vh;

    display:
        flex;

    flex-direction:
        column;

    overflow:
        hidden;

    color:
        var(--ol-v4-text);

    background:
        linear-gradient(
            180deg,
            #111111 0%,
            #080808 48%,
            #040404 100%
        );

    border-left:
        1px solid rgba(255, 255, 255, 0.07);

    box-shadow:
        -30px 0 90px rgba(0, 0, 0, 0.56);

    transform:
        translateX(105%);

    visibility:
        hidden;

    pointer-events:
        none;

    transition:
        transform 0.48s cubic-bezier(0.22, 1, 0.36, 1),
        visibility var(--ol-v4-transition);
}

.ol-v4-mobile-menu.is-open {
    transform:
        translateX(0);

    visibility:
        visible;

    pointer-events:
        auto;
}


/* ==========================================================
   22. HEADER MENIU MOBIL
========================================================== */

.ol-v4-mobile-head {
    position:
        relative;

    z-index:
        10;

    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;

    flex:
        0 0 auto;

    min-height:
        88px;

    padding:
        16px 22px;

    border-bottom:
        1px solid rgba(255, 255, 255, 0.07);

    background:
        rgba(9, 9, 9, 0.95);

    backdrop-filter:
        blur(20px);

    -webkit-backdrop-filter:
        blur(20px);
}

.ol-v4-mobile-logo {
    display:
        inline-flex;

    align-items:
        center;

    max-width:
        180px;
}

.ol-v4-mobile-logo img {
    width:
        auto;

    height:
        54px;

    object-fit:
        contain;
}


/* ==========================================================
   23. BUTON ÎNCHIDERE MOBIL
========================================================== */

.ol-v4-mobile-close {
    position:
        relative;

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    flex:
        0 0 auto;

    width:
        46px;

    height:
        46px;

    border:
        1px solid rgba(255, 255, 255, 0.09);

    border-radius:
        50%;

    background:
        rgba(255, 255, 255, 0.035);

    cursor:
        pointer;

    transition:
        border-color var(--ol-v4-transition-fast),
        background var(--ol-v4-transition-fast),
        transform var(--ol-v4-transition);
}

.ol-v4-mobile-close span {
    position:
        absolute;

    width:
        20px;

    height:
        2px;

    border-radius:
        999px;

    background:
        #ffffff;

    transition:
        background var(--ol-v4-transition-fast);
}

.ol-v4-mobile-close span:first-child {
    transform:
        rotate(45deg);
}

.ol-v4-mobile-close span:last-child {
    transform:
        rotate(-45deg);
}

.ol-v4-mobile-close:hover,
.ol-v4-mobile-close:focus-visible {
    border-color:
        rgba(220, 165, 74, 0.48);

    background:
        rgba(220, 165, 74, 0.09);

    transform:
        rotate(4deg)
        scale(1.04);

    outline:
        none;
}

.ol-v4-mobile-close:hover span,
.ol-v4-mobile-close:focus-visible span {
    background:
        var(--ol-v4-gold-light);
}


/* ==========================================================
   24. ZONĂ SCROLL MOBIL
========================================================== */

.ol-v4-mobile-scroll {
    position:
        relative;

    flex:
        1 1 auto;

    min-height:
        0;

    overflow-x:
        hidden;

    overflow-y:
        auto;

    overscroll-behavior:
        contain;

    -webkit-overflow-scrolling:
        touch;

    padding:
        8px 22px 42px;

    scrollbar-width:
        thin;

    scrollbar-color:
        rgba(220, 165, 74, 0.38)
        transparent;
}

.ol-v4-mobile-scroll::-webkit-scrollbar {
    width:
        7px;
}

.ol-v4-mobile-scroll::-webkit-scrollbar-track {
    background:
        transparent;
}

.ol-v4-mobile-scroll::-webkit-scrollbar-thumb {
    border:
        2px solid transparent;

    border-radius:
        999px;

    background:
        rgba(220, 165, 74, 0.4);

    background-clip:
        padding-box;
}


/* ==========================================================
   25. NAVIGAȚIE PRINCIPALĂ MOBIL
========================================================== */

.ol-v4-mobile-main-nav,
.ol-v4-mobile-secondary-nav {
    display:
        flex;

    flex-direction:
        column;
}

.ol-v4-mobile-main-nav {
    padding:
        8px 0 22px;

    border-bottom:
        1px solid rgba(255, 255, 255, 0.07);
}

.ol-v4-mobile-main-link {
    position:
        relative;

    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;

    width:
        100%;

    min-height:
        60px;

    padding:
        14px 2px;

    gap:
        18px;

    border-bottom:
        1px solid rgba(255, 255, 255, 0.055);

    color:
        rgba(255, 255, 255, 0.92);

    font-size:
        16px;

    line-height:
        1.35;

    font-weight:
        620;

    letter-spacing:
        -0.1px;

    transition:
        color var(--ol-v4-transition-fast),
        padding-left var(--ol-v4-transition),
        border-color var(--ol-v4-transition-fast);
}

.ol-v4-mobile-main-link:last-child {
    border-bottom:
        0;
}

.ol-v4-mobile-main-link span:last-child {
    flex:
        0 0 auto;

    color:
        var(--ol-v4-gold);

    font-size:
        19px;

    line-height:
        1;

    transition:
        transform var(--ol-v4-transition);
}

.ol-v4-mobile-main-link:hover,
.ol-v4-mobile-main-link:focus-visible,
.ol-v4-mobile-main-link.is-active {
    padding-left:
        7px;

    color:
        var(--ol-v4-gold-light);

    border-color:
        rgba(220, 165, 74, 0.18);

    outline:
        none;
}

.ol-v4-mobile-main-link:hover span:last-child,
.ol-v4-mobile-main-link:focus-visible span:last-child {
    transform:
        translateX(4px);
}


/* ==========================================================
   26. SECȚIUNE SERVICII MOBIL
========================================================== */

.ol-v4-mobile-services-section {
    position:
        relative;

    padding:
        30px 0 16px;
}

.ol-v4-mobile-section-head {
    position:
        relative;

    margin-bottom:
        28px;

    padding:
        0 2px 24px;

    border-bottom:
        1px solid rgba(255, 255, 255, 0.075);
}

.ol-v4-mobile-eyebrow {
    display:
        block;

    margin-bottom:
        8px;

    color:
        var(--ol-v4-gold);

    font-size:
        10px;

    line-height:
        1.3;

    font-weight:
        760;

    letter-spacing:
        1.8px;

    text-transform:
        uppercase;
}

.ol-v4-mobile-section-head h2 {
    margin:
        0 0 10px;

    color:
        #ffffff;

    font-size:
        31px;

    line-height:
        1.08;

    font-weight:
        700;

    letter-spacing:
        -0.7px;
}

.ol-v4-mobile-section-head p {
    max-width:
        380px;

    margin:
        0;

    color:
        rgba(255, 255, 255, 0.55);

    font-size:
        13px;

    line-height:
        1.65;

    font-weight:
        450;
}


/* ==========================================================
   27. CONTAINER SERVICII GENERATE MOBIL
========================================================== */

.ol-v4-mobile-services {
    display:
        flex;

    flex-direction:
        column;

    gap:
        20px;
}


/* ==========================================================
   28. CATEGORIE SERVICIU MOBIL
========================================================== */

.ol-v4-mobile-category {
    position:
        relative;

    width:
        100%;

    padding:
        24px 20px;

    overflow:
        hidden;

    border:
        1px solid rgba(255, 255, 255, 0.075);

    border-radius:
        24px;

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.045) 0%,
            rgba(255, 255, 255, 0.018) 100%
        );

    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.025);

    transition:
        border-color var(--ol-v4-transition),
        transform var(--ol-v4-transition),
        background var(--ol-v4-transition);
}

.ol-v4-mobile-category::before {
    content:
        "";

    position:
        absolute;

    top:
        -90px;

    right:
        -90px;

    width:
        190px;

    height:
        190px;

    border-radius:
        50%;

    background:
        radial-gradient(
            circle,
            rgba(220, 165, 74, 0.12) 0%,
            transparent 70%
        );

    pointer-events:
        none;
}

.ol-v4-mobile-category:hover {
    transform:
        translateY(-2px);

    border-color:
        rgba(220, 165, 74, 0.22);

    background:
        linear-gradient(
            145deg,
            rgba(220, 165, 74, 0.07) 0%,
            rgba(255, 255, 255, 0.022) 100%
        );
}

.ol-v4-mobile-category-title {
    position:
        relative;

    z-index:
        2;

    margin:
        0 0 18px;

    color:
        var(--ol-v4-gold-light);

    font-size:
        20px;

    line-height:
        1.25;

    font-weight:
        700;

    letter-spacing:
        -0.3px;
}

.ol-v4-mobile-category-links {
    position:
        relative;

    z-index:
        2;

    display:
        flex;

    flex-direction:
        column;

    gap:
        1px;
}


/* ==========================================================
   29. SUBTITLURI CATEGORII MOBIL
========================================================== */

.ol-v4-mobile-subtitle {
    display:
        flex;

    align-items:
        center;

    gap:
        10px;

    margin:
        20px 0 9px;

    color:
        rgba(255, 255, 255, 0.4);

    font-size:
        10px;

    line-height:
        1.3;

    font-weight:
        760;

    letter-spacing:
        1.7px;

    text-transform:
        uppercase;
}

.ol-v4-mobile-subtitle::after {
    content:
        "";

    flex:
        1;

    height:
        1px;

    background:
        linear-gradient(
            90deg,
            rgba(220, 165, 74, 0.24),
            transparent
        );
}


/* ==========================================================
   30. LINKURI SERVICII MOBIL
========================================================== */

.ol-v4-mobile-service-link {
    position:
        relative;

    display:
        flex;

    align-items:
        flex-start;

    width:
        100%;

    min-width:
        0;

    padding:
        10px 0;

    color:
        rgba(255, 255, 255, 0.78);

    font-size:
        14px;

    line-height:
        1.42;

    font-weight:
        500;

    transition:
        color var(--ol-v4-transition-fast),
        padding-left var(--ol-v4-transition),
        background var(--ol-v4-transition-fast);
}

.ol-v4-mobile-service-link::before {
    content:
        "";

    flex:
        0 0 auto;

    width:
        6px;

    height:
        6px;

    margin:
        7px 11px 0 1px;

    border-radius:
        50%;

    background:
        var(--ol-v4-gold);

    opacity:
        0.48;

    transition:
        opacity var(--ol-v4-transition-fast),
        transform var(--ol-v4-transition);
}

.ol-v4-mobile-service-link::after {
    content:
        "";

    position:
        absolute;

    left:
        18px;

    right:
        0;

    bottom:
        4px;

    height:
        1px;

    transform:
        scaleX(0);

    transform-origin:
        left center;

    background:
        linear-gradient(
            90deg,
            rgba(220, 165, 74, 0.5),
            transparent
        );

    transition:
        transform var(--ol-v4-transition);
}

.ol-v4-mobile-service-link:hover,
.ol-v4-mobile-service-link:focus-visible {
    padding-left:
        6px;

    color:
        var(--ol-v4-gold-light);

    outline:
        none;
}

.ol-v4-mobile-service-link:hover::before,
.ol-v4-mobile-service-link:focus-visible::before {
    opacity:
        1;

    transform:
        scale(1.35);
}

.ol-v4-mobile-service-link:hover::after,
.ol-v4-mobile-service-link:focus-visible::after {
    transform:
        scaleX(1);
}

.ol-v4-mobile-service-link.is-primary {
    margin-bottom:
        1px;

    color:
        #ffffff;

    font-weight:
        650;
}

.ol-v4-mobile-service-link.is-primary::before {
    background:
        var(--ol-v4-gold-light);

    opacity:
        0.9;
}


/* ==========================================================
   31. NAVIGAȚIE SECUNDARĂ MOBIL
========================================================== */

.ol-v4-mobile-secondary-nav {
    margin-top:
        28px;

    padding:
        12px 0 22px;

    border-top:
        1px solid rgba(255, 255, 255, 0.075);

    border-bottom:
        1px solid rgba(255, 255, 255, 0.075);
}


/* ==========================================================
   32. CARD CONTACT MOBIL
========================================================== */

.ol-v4-mobile-contact-card {
    position:
        relative;

    margin-top:
        28px;

    padding:
        26px 22px;

    overflow:
        hidden;

    border:
        1px solid rgba(220, 165, 74, 0.2);

    border-radius:
        26px;

    background:
        linear-gradient(
            145deg,
            rgba(220, 165, 74, 0.12) 0%,
            rgba(255, 255, 255, 0.028) 58%,
            rgba(220, 165, 74, 0.055) 100%
        );

    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

.ol-v4-mobile-contact-card::before {
    content:
        "";

    position:
        absolute;

    top:
        -110px;

    right:
        -100px;

    width:
        240px;

    height:
        240px;

    border-radius:
        50%;

    background:
        radial-gradient(
            circle,
            rgba(246, 212, 137, 0.2) 0%,
            transparent 70%
        );

    pointer-events:
        none;
}

.ol-v4-mobile-contact-label {
    position:
        relative;

    z-index:
        2;

    display:
        block;

    margin-bottom:
        10px;

    color:
        var(--ol-v4-gold-light);

    font-size:
        9px;

    line-height:
        1.35;

    font-weight:
        760;

    letter-spacing:
        1.6px;

    text-transform:
        uppercase;
}

.ol-v4-mobile-contact-card h3 {
    position:
        relative;

    z-index:
        2;

    margin:
        0 0 12px;

    color:
        #ffffff;

    font-size:
        22px;

    line-height:
        1.25;

    font-weight:
        680;

    letter-spacing:
        -0.35px;
}

.ol-v4-mobile-contact-card p {
    position:
        relative;

    z-index:
        2;

    margin:
        0 0 21px;

    color:
        rgba(255, 255, 255, 0.62);

    font-size:
        13px;

    line-height:
        1.65;
}

.ol-v4-mobile-cta {
    position:
        relative;

    z-index:
        2;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    width:
        100%;

    min-height:
        50px;

    padding:
        12px 18px;

    border:
        1px solid rgba(255, 229, 165, 0.3);

    border-radius:
        999px;

    background:
        linear-gradient(
            135deg,
            #8e5a13 0%,
            #dca54a 33%,
            #f6d489 56%,
            #be8226 100%
        );

    color:
        #111111;

    box-shadow:
        0 15px 36px rgba(220, 165, 74, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.35);

    font-size:
        13px;

    font-weight:
        760;

    text-align:
        center;

    transition:
        transform var(--ol-v4-transition),
        box-shadow var(--ol-v4-transition),
        filter var(--ol-v4-transition);
}

.ol-v4-mobile-cta:hover,
.ol-v4-mobile-cta:focus-visible {
    transform:
        translateY(-3px);

    filter:
        brightness(1.05);

    box-shadow:
        0 22px 48px rgba(220, 165, 74, 0.32);

    outline:
        none;
}


/* ==========================================================
   33. DATE CONTACT MOBIL
========================================================== */

.ol-v4-mobile-contact-details {
    position:
        relative;

    z-index:
        2;

    display:
        flex;

    flex-direction:
        column;

    align-items:
        flex-start;

    gap:
        8px;

    margin-top:
        21px;

    padding-top:
        18px;

    border-top:
        1px solid rgba(255, 255, 255, 0.08);

    color:
        rgba(255, 255, 255, 0.53);

    font-size:
        11px;

    line-height:
        1.5;
}

.ol-v4-mobile-contact-details a {
    transition:
        color var(--ol-v4-transition-fast);
}

.ol-v4-mobile-contact-details a:hover,
.ol-v4-mobile-contact-details a:focus-visible {
    color:
        var(--ol-v4-gold-light);

    outline:
        none;
}


/* ==========================================================
   34. ANIMAȚII MOBIL
========================================================== */

@keyframes olV4MobileLinkReveal {
    from {
        opacity:
            0;

        transform:
            translateX(14px);
    }

    to {
        opacity:
            1;

        transform:
            translateX(0);
    }
}

@keyframes olV4MobileCardReveal {
    from {
        opacity:
            0;

        transform:
            translateY(16px);
    }

    to {
        opacity:
            1;

        transform:
            translateY(0);
    }
}

.ol-v4-mobile-menu.is-open
.ol-v4-mobile-main-nav
.ol-v4-mobile-main-link {
    animation:
        olV4MobileLinkReveal
        0.45s
        both;
}

.ol-v4-mobile-menu.is-open
.ol-v4-mobile-main-nav
.ol-v4-mobile-main-link:nth-child(1) {
    animation-delay:
        0.04s;
}

.ol-v4-mobile-menu.is-open
.ol-v4-mobile-main-nav
.ol-v4-mobile-main-link:nth-child(2) {
    animation-delay:
        0.08s;
}

.ol-v4-mobile-menu.is-open
.ol-v4-mobile-main-nav
.ol-v4-mobile-main-link:nth-child(3) {
    animation-delay:
        0.12s;
}

.ol-v4-mobile-menu.is-open
.ol-v4-mobile-main-nav
.ol-v4-mobile-main-link:nth-child(4) {
    animation-delay:
        0.16s;
}

.ol-v4-mobile-menu.is-open
.ol-v4-mobile-category {
    animation:
        olV4MobileCardReveal
        0.5s
        both;
}

.ol-v4-mobile-menu.is-open
.ol-v4-mobile-category:nth-child(1) {
    animation-delay:
        0.18s;
}

.ol-v4-mobile-menu.is-open
.ol-v4-mobile-category:nth-child(2) {
    animation-delay:
        0.23s;
}

.ol-v4-mobile-menu.is-open
.ol-v4-mobile-category:nth-child(3) {
    animation-delay:
        0.28s;
}

.ol-v4-mobile-menu.is-open
.ol-v4-mobile-category:nth-child(4) {
    animation-delay:
        0.33s;
}


/* ==========================================================
   35. RESPONSIVE DESKTOP MEDIU
========================================================== */

@media screen and (max-width: 1480px) {

    :root {
        --ol-v4-container:
            1380px;
    }

    .ol-v4-header-inner {
        column-gap:
            24px;

        padding-left:
            24px;

        padding-right:
            24px;
    }

    .ol-v4-nav-list {
        gap:
            19px;
    }

    .ol-v4-nav-link {
        font-size:
            13px;
    }

    .ol-v4-account-button {
        padding:
            0 14px;
    }

    .ol-v4-header-cta {
        padding:
            0 19px;
    }

    .ol-v4-mega-shell {
        padding:
            26px;
    }

    .ol-v4-mega-layout {
        grid-template-columns:
            minmax(0, 4fr)
            minmax(255px, 1.05fr);

        gap:
            22px;
    }

    .ol-v4-mega-category {
        padding-left:
            18px;

        padding-right:
            18px;
    }
}


/* ==========================================================
   36. RESPONSIVE DESKTOP COMPACT
========================================================== */

@media screen and (max-width: 1320px) {

    .ol-v4-header-inner {
        column-gap:
            18px;
    }

    .ol-v4-nav-list {
        gap:
            15px;
    }

    .ol-v4-nav-link {
        font-size:
            12px;
    }

    .ol-v4-logo img {
        height:
            62px;
    }

    .ol-v4-account-button span {
        display:
            none;
    }

    .ol-v4-account-button {
        width:
            46px;

        padding:
            0;
    }

    .ol-v4-header-cta {
        padding:
            0 17px;

        font-size:
            12px;
    }

    .ol-v4-mega-service-link {
        font-size:
            11px;
    }
}


/* ==========================================================
   37. BREAKPOINT PRINCIPAL MOBILE
========================================================== */

@media screen and (max-width: 1180px) {

    .ol-v4-topbar {
        display:
            none;
    }

    .ol-v4-desktop-nav,
    .ol-v4-header-actions {
        display:
            none;
    }

    .ol-v4-mobile-toggle {
        display:
            flex;
    }

    .ol-v4-header {
        backdrop-filter:
            none;

        -webkit-backdrop-filter:
            none;
    }

    .ol-v4-header-inner {
        grid-template-columns:
            minmax(0, 1fr)
            auto;

        min-height:
            82px;

        padding:
            10px 18px;

        column-gap:
            18px;
    }

    .ol-v4-header.is-shrunk
    .ol-v4-header-inner {
        min-height:
            72px;

        padding-top:
            7px;

        padding-bottom:
            7px;
    }

    .ol-v4-logo img {
        height:
            60px;
    }

    .ol-v4-header.is-shrunk
    .ol-v4-logo img {
        height:
            53px;
    }

    .ol-v4-mega-menu,
    .ol-v4-mega-backdrop {
        display:
            none !important;
    }
}


/* ==========================================================
   38. TABLETĂ
========================================================== */

@media screen and (max-width: 768px) {

    .ol-v4-header-inner {
        min-height:
            76px;

        padding:
            8px 15px;
    }

    .ol-v4-logo img {
        height:
            54px;
    }

    .ol-v4-header.is-shrunk
    .ol-v4-logo img {
        height:
            49px;
    }

    .ol-v4-mobile-toggle {
        width:
            45px;

        height:
            45px;
    }

    .ol-v4-mobile-menu {
        width:
            min(450px, 100vw);
    }

    .ol-v4-mobile-head {
        min-height:
            80px;

        padding:
            13px 18px;
    }

    .ol-v4-mobile-logo img {
        height:
            50px;
    }

    .ol-v4-mobile-scroll {
        padding:
            6px 18px 38px;
    }

    .ol-v4-mobile-main-link {
        min-height:
            57px;

        font-size:
            15px;
    }

    .ol-v4-mobile-section-head h2 {
        font-size:
            28px;
    }

    .ol-v4-mobile-category {
        padding:
            22px 18px;

        border-radius:
            22px;
    }

    .ol-v4-mobile-category-title {
        font-size:
            19px;
    }

    .ol-v4-mobile-service-link {
        font-size:
            13px;
    }
}


/* ==========================================================
   39. TELEFOANE
========================================================== */

@media screen and (max-width: 520px) {

    .ol-v4-mobile-menu {
        width:
            100vw;

        border-left:
            0;
    }

    .ol-v4-mobile-head {
        padding-left:
            15px;

        padding-right:
            15px;
    }

    .ol-v4-mobile-scroll {
        padding-left:
            15px;

        padding-right:
            15px;
    }

    .ol-v4-mobile-section-head {
        margin-bottom:
            23px;

        padding-bottom:
            20px;
    }

    .ol-v4-mobile-section-head h2 {
        font-size:
            26px;
    }

    .ol-v4-mobile-section-head p {
        font-size:
            12px;
    }

    .ol-v4-mobile-services {
        gap:
            16px;
    }

    .ol-v4-mobile-category {
        padding:
            20px 16px;

        border-radius:
            20px;
    }

    .ol-v4-mobile-category-title {
        margin-bottom:
            15px;

        font-size:
            18px;
    }

    .ol-v4-mobile-service-link {
        padding:
            9px 0;

        font-size:
            13px;
    }

    .ol-v4-mobile-contact-card {
        padding:
            23px 18px;

        border-radius:
            22px;
    }

    .ol-v4-mobile-contact-card h3 {
        font-size:
            20px;
    }
}


/* ==========================================================
   40. TELEFOANE MICI
========================================================== */

@media screen and (max-width: 380px) {

    .ol-v4-header-inner {
        padding-left:
            12px;

        padding-right:
            12px;
    }

    .ol-v4-logo img {
        height:
            49px;
    }

    .ol-v4-mobile-toggle {
        width:
            42px;

        height:
            42px;
    }

    .ol-v4-mobile-head {
        min-height:
            74px;

        padding:
            11px 13px;
    }

    .ol-v4-mobile-logo img {
        height:
            46px;
    }

    .ol-v4-mobile-close {
        width:
            42px;

        height:
            42px;
    }

    .ol-v4-mobile-scroll {
        padding-left:
            13px;

        padding-right:
            13px;
    }

    .ol-v4-mobile-main-link {
        font-size:
            14px;
    }

    .ol-v4-mobile-category {
        padding:
            18px 14px;
    }

    .ol-v4-mobile-category-title {
        font-size:
            17px;
    }

    .ol-v4-mobile-service-link {
        font-size:
            12px;
    }
}


/* ==========================================================
   41. SAFE AREA — IPHONE
========================================================== */

@supports (
    padding-bottom:
        env(safe-area-inset-bottom)
) {

    .ol-v4-mobile-head {
        padding-top:
            max(
                13px,
                env(safe-area-inset-top)
            );
    }

    .ol-v4-mobile-scroll {
        padding-bottom:
            max(
                42px,
                calc(
                    env(safe-area-inset-bottom)
                    + 28px
                )
            );
    }
}


/* ==========================================================
   42. FALLBACK FĂRĂ BACKDROP FILTER
========================================================== */

@supports not (
    backdrop-filter:
        blur(10px)
) {

    .ol-v4-header {
        background:
            rgba(5, 5, 5, 0.99);
    }

    .ol-v4-mobile-overlay {
        background:
            rgba(0, 0, 0, 0.84);
    }

    .ol-v4-mobile-head {
        background:
            #090909;
    }
}

/* ==========================================================
   OLIVERA HEADER V4.1
   CSS COMPLET — ÎNLOCUIEȘTE V4.1 VECHI

   FUNCȚII:
   - meniu mobil mai compact;
   - categorii tip accordion;
   - subservicii afișate complet la deschidere;
   - fără spațiu gol în categoriile închise;
   - o singură categorie deschisă prin JavaScript V4.1;
   - aspect luxury Apple × Dior;
========================================================== */


/* ==========================================================
   1. TABLETĂ ȘI MOBIL
========================================================== */

@media screen and (max-width: 1180px) {

    /* ======================================================
       HEADERUL MENIULUI MOBIL
    ====================================================== */

    .ol-v4-mobile-head {
        min-height: 76px;
        padding: 12px 18px;

        border-bottom:
            1px solid rgba(255, 255, 255, 0.07);

        background:
            rgba(8, 8, 8, 0.97);
    }

    .ol-v4-mobile-logo {
        max-width: 165px;
    }

    .ol-v4-mobile-logo img {
        width: auto;
        height: 48px;
        object-fit: contain;
    }


    /* ======================================================
       BUTON ÎNCHIDERE
    ====================================================== */

    .ol-v4-mobile-close {
        width: 42px;
        height: 42px;

        border:
            1px solid rgba(220, 165, 74, 0.38);

        background:
            linear-gradient(
                135deg,
                #976217 0%,
                #dca54a 42%,
                #f6d489 100%
            );

        box-shadow:
            0 12px 28px rgba(220, 165, 74, 0.24);
    }

    .ol-v4-mobile-close span {
        width: 18px;
        height: 2px;

        background: #111111;
    }

    .ol-v4-mobile-close:hover,
    .ol-v4-mobile-close:focus-visible {
        border-color:
            rgba(246, 212, 137, 0.75);

        background:
            linear-gradient(
                135deg,
                #a86f1c 0%,
                #e5b85c 50%,
                #f8dd9b 100%
            );

        transform:
            rotate(4deg)
            scale(1.04);

        outline: none;
    }

    .ol-v4-mobile-close:hover span,
    .ol-v4-mobile-close:focus-visible span {
        background: #050505;
    }


    /* ======================================================
       ZONA DE SCROLL
    ====================================================== */

    .ol-v4-mobile-scroll {
        padding-top: 2px;
        padding-bottom: 34px;

        scroll-behavior: smooth;
    }


    /* ======================================================
       NAVIGAȚIE PRINCIPALĂ
    ====================================================== */

    .ol-v4-mobile-main-nav {
        padding-top: 2px;
        padding-bottom: 14px;
    }

    .ol-v4-mobile-main-link {
        min-height: 52px;

        padding:
            10px
            2px;

        font-size: 15px;
        line-height: 1.3;
        font-weight: 650;

        border-bottom:
            1px solid rgba(255, 255, 255, 0.065);
    }

    .ol-v4-mobile-main-link span:first-child {
        min-width: 0;
    }

    .ol-v4-mobile-main-link span:last-child {
        font-size: 17px;

        color:
            var(--ol-v4-gold);
    }

    .ol-v4-mobile-main-link:hover,
    .ol-v4-mobile-main-link:focus-visible,
    .ol-v4-mobile-main-link.is-active {
        padding-left: 6px;

        color:
            var(--ol-v4-gold-light);
    }


    /* ======================================================
       SECȚIUNEA SERVICII
    ====================================================== */

    .ol-v4-mobile-services-section {
        padding-top: 21px;
        padding-bottom: 10px;
    }

    .ol-v4-mobile-section-head {
        margin-bottom: 18px;

        padding:
            0
            2px
            17px;

        border-bottom:
            1px solid rgba(255, 255, 255, 0.08);
    }

    .ol-v4-mobile-eyebrow {
        margin-bottom: 5px;

        color:
            var(--ol-v4-gold);

        font-size: 9px;
        line-height: 1.3;
        font-weight: 800;
        letter-spacing: 1.55px;
    }

    .ol-v4-mobile-section-head h2 {
        margin: 0;

        color: #ffffff;

        font-size: 27px;
        line-height: 1.05;
        font-weight: 750;
        letter-spacing: -0.65px;
    }

    .ol-v4-mobile-section-head p {
        display: none;
    }


    /* ======================================================
       LISTA CATEGORIILOR
    ====================================================== */

    .ol-v4-mobile-services {
        display: flex;
        flex-direction: column;

        gap: 11px;
    }


    /* ======================================================
       CARD CATEGORIE
    ====================================================== */

    .ol-v4-mobile-category {
        position: relative;

        width: 100%;
        height: auto !important;
        min-height: 0 !important;

        margin: 0;
        padding: 0 !important;

        overflow: hidden;

        border:
            1px solid rgba(255, 255, 255, 0.09);

        border-radius: 15px;

        background:
            linear-gradient(
                145deg,
                rgba(255, 255, 255, 0.042) 0%,
                rgba(255, 255, 255, 0.018) 100%
            );

        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.025);

        transform: none;

        transition:
            border-color var(--ol-v4-transition),
            background var(--ol-v4-transition),
            box-shadow var(--ol-v4-transition);
    }

    .ol-v4-mobile-category::before {
        content: "";

        position: absolute;
        top: -85px;
        right: -80px;

        width: 165px;
        height: 165px;

        border-radius: 50%;

        background:
            radial-gradient(
                circle,
                rgba(220, 165, 74, 0.105) 0%,
                transparent 70%
            );

        pointer-events: none;
    }

    .ol-v4-mobile-category:hover {
        transform: none;

        border-color:
            rgba(220, 165, 74, 0.22);

        background:
            linear-gradient(
                145deg,
                rgba(220, 165, 74, 0.055) 0%,
                rgba(255, 255, 255, 0.018) 100%
            );
    }


    /* ======================================================
       CATEGORIE DESCHISĂ
    ====================================================== */

    .ol-v4-mobile-category.is-open {
        border-color:
            rgba(220, 165, 74, 0.32);

        background:
            linear-gradient(
                145deg,
                rgba(220, 165, 74, 0.085) 0%,
                rgba(255, 255, 255, 0.025) 55%,
                rgba(220, 165, 74, 0.035) 100%
            );

        box-shadow:
            0 15px 35px rgba(0, 0, 0, 0.2),
            inset 0 1px 0 rgba(255, 255, 255, 0.035);
    }


    /* ======================================================
       BUTONUL CATEGORIEI
    ====================================================== */

    .ol-v4-mobile-category-toggle,
    .ol-v4-mobile-category-title {
        position: relative;
        z-index: 3;

        display: flex;
        align-items: center;
        justify-content: space-between;

        width: 100%;
        min-height: 56px;

        margin: 0 !important;

        padding:
            15px
            48px
            15px
            17px !important;

        appearance: none;
        -webkit-appearance: none;

        border: 0;
        border-radius: 0;

        background: transparent;

        color:
            var(--ol-v4-gold-light);

        font-family: inherit;
        font-size: 16px;
        line-height: 1.25;
        font-weight: 750;
        letter-spacing: -0.2px;

        text-align: left;

        cursor: pointer;
        user-select: none;

        transition:
            color var(--ol-v4-transition-fast),
            background var(--ol-v4-transition-fast);
    }

    .ol-v4-mobile-category-toggle span {
        display: block;

        min-width: 0;

        color: inherit;
    }

    .ol-v4-mobile-category-toggle:hover,
    .ol-v4-mobile-category-toggle:focus-visible,
    .ol-v4-mobile-category-title:hover,
    .ol-v4-mobile-category-title:focus-visible {
        color: #ffffff;

        background:
            rgba(220, 165, 74, 0.035);

        outline: none;
    }

    .ol-v4-mobile-category-toggle:focus-visible {
        outline:
            2px solid var(--ol-v4-gold);

        outline-offset: -4px;
    }


    /* ======================================================
       ICON PLUS / MINUS
    ====================================================== */

    .ol-v4-mobile-category-toggle::before,
    .ol-v4-mobile-category-toggle::after,
    .ol-v4-mobile-category-title::before,
    .ol-v4-mobile-category-title::after {
        content: "";

        position: absolute;
        top: 50%;
        right: 18px;

        width: 14px;
        height: 2px;

        border-radius: 999px;

        background:
            var(--ol-v4-gold-light);

        transform:
            translateY(-50%);

        transition:
            transform var(--ol-v4-transition),
            opacity var(--ol-v4-transition-fast),
            background var(--ol-v4-transition-fast);
    }

    .ol-v4-mobile-category-toggle::after,
    .ol-v4-mobile-category-title::after {
        transform:
            translateY(-50%)
            rotate(90deg);
    }

    .ol-v4-mobile-category.is-open
    .ol-v4-mobile-category-toggle,
    .ol-v4-mobile-category.is-open
    .ol-v4-mobile-category-title {
        color: #ffffff;

        background:
            rgba(220, 165, 74, 0.045);
    }

    .ol-v4-mobile-category.is-open
    .ol-v4-mobile-category-toggle::after,
    .ol-v4-mobile-category.is-open
    .ol-v4-mobile-category-title::after {
        opacity: 0;

        transform:
            translateY(-50%)
            rotate(0deg);
    }


    /* ======================================================
       CONȚINUT ACCORDION — ÎNCHIS

       Folosim max-height, nu grid.
       Astfel nu mai apare spațiul gol.
    ====================================================== */

    .ol-v4-mobile-category-links {
        position: relative;
        z-index: 2;

        display: flex !important;
        flex-direction: column;

        width: 100%;
        height: auto;
        min-height: 0;

        max-height: 0;

        gap: 1px;

        margin: 0;

        padding:
            0
            17px !important;

        overflow: hidden;

        opacity: 0;
        visibility: hidden;

        border-top:
            1px solid transparent;

        pointer-events: none;

        transition:
            max-height 0.55s cubic-bezier(0.22, 1, 0.36, 1),
            opacity 0.25s ease,
            visibility 0.25s ease,
            padding 0.4s cubic-bezier(0.22, 1, 0.36, 1),
            border-color 0.35s ease;
    }

    .ol-v4-mobile-category-links > * {
        overflow: visible !important;
    }


    /* ======================================================
       CONȚINUT ACCORDION — DESCHIS
    ====================================================== */

    .ol-v4-mobile-category.is-open
    .ol-v4-mobile-category-links {
        max-height: 1600px;

        padding:
            12px
            17px
            17px !important;

        opacity: 1;
        visibility: visible;

        border-top-color:
            rgba(255, 255, 255, 0.075);

        pointer-events: auto;
    }


    /* ======================================================
       LINKURI SUBSERVICII
    ====================================================== */

    .ol-v4-mobile-service-link {
        position: relative;

        display: flex;
        align-items: flex-start;

        width: 100%;
        min-width: 0;

        padding:
            8px
            0;

        color:
            rgba(255, 255, 255, 0.78);

        font-size: 13px;
        line-height: 1.42;
        font-weight: 520;

        white-space: normal;

        opacity: 1;

        transition:
            color var(--ol-v4-transition-fast),
            padding-left var(--ol-v4-transition),
            opacity var(--ol-v4-transition-fast);
    }

    .ol-v4-mobile-service-link::before {
        content: "";

        flex: 0 0 auto;

        width: 5px;
        height: 5px;

        margin:
            6px
            10px
            0
            1px;

        border-radius: 50%;

        background:
            var(--ol-v4-gold);

        opacity: 0.58;

        transition:
            opacity var(--ol-v4-transition-fast),
            transform var(--ol-v4-transition);
    }

    .ol-v4-mobile-service-link::after {
        content: "";

        position: absolute;
        left: 16px;
        right: 0;
        bottom: 3px;

        height: 1px;

        transform:
            scaleX(0);

        transform-origin:
            left center;

        background:
            linear-gradient(
                90deg,
                rgba(220, 165, 74, 0.55),
                transparent
            );

        transition:
            transform var(--ol-v4-transition);
    }

    .ol-v4-mobile-service-link:hover,
    .ol-v4-mobile-service-link:focus-visible {
        padding-left: 5px;

        color:
            var(--ol-v4-gold-light);

        outline: none;
    }

    .ol-v4-mobile-service-link:hover::before,
    .ol-v4-mobile-service-link:focus-visible::before {
        opacity: 1;

        transform:
            scale(1.3);
    }

    .ol-v4-mobile-service-link:hover::after,
    .ol-v4-mobile-service-link:focus-visible::after {
        transform:
            scaleX(1);
    }


    /* ======================================================
       LINKURI PRINCIPALE DIN CATEGORIE
    ====================================================== */

    .ol-v4-mobile-service-link.is-primary {
        color: #ffffff;

        font-size: 13px;
        font-weight: 680;
    }

    .ol-v4-mobile-service-link.is-primary::before {
        background:
            var(--ol-v4-gold-light);

        opacity: 0.95;
    }


    /* ======================================================
       SUBTITLURI: ZONE FEMEI, TEHNOLOGII ETC.
    ====================================================== */

    .ol-v4-mobile-subtitle {
        display: flex;
        align-items: center;

        width: 100%;

        gap: 10px;

        margin:
            15px
            0
            6px;

        color:
            rgba(255, 255, 255, 0.44);

        font-size: 9px;
        line-height: 1.3;
        font-weight: 800;
        letter-spacing: 1.45px;

        text-transform: uppercase;
    }

    .ol-v4-mobile-subtitle::after {
        content: "";

        flex: 1;

        height: 1px;

        background:
            linear-gradient(
                90deg,
                rgba(220, 165, 74, 0.28),
                transparent
            );
    }


    /* ======================================================
       NAVIGAȚIE SECUNDARĂ
    ====================================================== */

    .ol-v4-mobile-secondary-nav {
        margin-top: 20px;

        padding-top: 8px;
        padding-bottom: 14px;

        border-top:
            1px solid rgba(255, 255, 255, 0.075);

        border-bottom:
            1px solid rgba(255, 255, 255, 0.075);
    }


    /* ======================================================
       CARD CONTACT
    ====================================================== */

    .ol-v4-mobile-contact-card {
        margin-top: 20px;

        padding:
            22px
            18px;

        border-radius: 20px;
    }

    .ol-v4-mobile-contact-label {
        margin-bottom: 8px;
    }

    .ol-v4-mobile-contact-card h3 {
        margin-bottom: 9px;

        font-size: 19px;
        line-height: 1.28;
    }

    .ol-v4-mobile-contact-card p {
        margin-bottom: 17px;

        font-size: 12px;
        line-height: 1.55;
    }

    .ol-v4-mobile-cta {
        min-height: 46px;

        font-size: 12px;
    }

    .ol-v4-mobile-contact-details {
        margin-top: 17px;
        padding-top: 15px;
    }


    /* ======================================================
       ELIMINĂ ANIMAȚIA VECHE A CARDURILOR

       Previne calcule greșite de înălțime în Elementor.
    ====================================================== */

    .ol-v4-mobile-menu.is-open
    .ol-v4-mobile-category {
        animation: none !important;
    }
}


/* ==========================================================
   2. TELEFOANE — MAXIMUM 520 PX
========================================================== */

@media screen and (max-width: 520px) {

    .ol-v4-mobile-head {
        min-height: 72px;

        padding:
            10px
            14px;
    }

    .ol-v4-mobile-logo img {
        height: 45px;
    }

    .ol-v4-mobile-close {
        width: 40px;
        height: 40px;
    }

    .ol-v4-mobile-scroll {
        padding-left: 14px;
        padding-right: 14px;
    }

    .ol-v4-mobile-main-link {
        min-height: 49px;

        padding:
            9px
            1px;

        font-size: 14px;
    }

    .ol-v4-mobile-services-section {
        padding-top: 18px;
    }

    .ol-v4-mobile-section-head {
        margin-bottom: 15px;
        padding-bottom: 14px;
    }

    .ol-v4-mobile-section-head h2 {
        font-size: 25px;
    }

    .ol-v4-mobile-services {
        gap: 9px;
    }

    .ol-v4-mobile-category {
        border-radius: 14px;
    }

    .ol-v4-mobile-category-toggle,
    .ol-v4-mobile-category-title {
        min-height: 54px;

        padding:
            14px
            44px
            14px
            15px !important;

        font-size: 15px;
    }

    .ol-v4-mobile-category-toggle::before,
    .ol-v4-mobile-category-toggle::after,
    .ol-v4-mobile-category-title::before,
    .ol-v4-mobile-category-title::after {
        right: 16px;

        width: 13px;
    }

    .ol-v4-mobile-category-links {
        padding-left:
            15px !important;

        padding-right:
            15px !important;
    }

    .ol-v4-mobile-category.is-open
    .ol-v4-mobile-category-links {
        padding:
            10px
            15px
            14px !important;
    }

    .ol-v4-mobile-service-link {
        padding:
            7px
            0;

        font-size: 12px;
    }

    .ol-v4-mobile-service-link.is-primary {
        font-size: 12px;
    }

    .ol-v4-mobile-subtitle {
        margin-top: 13px;
        margin-bottom: 5px;

        font-size: 8px;
        letter-spacing: 1.35px;
    }

    .ol-v4-mobile-contact-card {
        padding:
            20px
            16px;

        border-radius: 18px;
    }
}


/* ==========================================================
   3. TELEFOANE FOARTE MICI — MAXIMUM 380 PX
========================================================== */

@media screen and (max-width: 380px) {

    .ol-v4-mobile-scroll {
        padding-left: 12px;
        padding-right: 12px;
    }

    .ol-v4-mobile-main-link {
        font-size: 13px;
    }

    .ol-v4-mobile-section-head h2 {
        font-size: 23px;
    }

    .ol-v4-mobile-category-toggle,
    .ol-v4-mobile-category-title {
        min-height: 52px;

        padding:
            13px
            42px
            13px
            14px !important;

        font-size: 14px;
    }

    .ol-v4-mobile-category-links {
        padding-left:
            14px !important;

        padding-right:
            14px !important;
    }

    .ol-v4-mobile-category.is-open
    .ol-v4-mobile-category-links {
        padding:
            9px
            14px
            13px !important;
    }

    .ol-v4-mobile-service-link,
    .ol-v4-mobile-service-link.is-primary {
        font-size: 11px;
    }
}


/* ==========================================================
   4. SAFE AREA IPHONE
========================================================== */

@supports (
    padding-bottom:
        env(safe-area-inset-bottom)
) {

    @media screen and (max-width: 1180px) {

        .ol-v4-mobile-scroll {
            padding-bottom:
                max(
                    34px,
                    calc(
                        env(safe-area-inset-bottom)
                        + 24px
                    )
                );
        }
    }
}


/* ==========================================================
   5. REDUCEREA ANIMAȚIILOR
========================================================== */

@media (
    prefers-reduced-motion:
    reduce
) {

    @media screen and (max-width: 1180px) {

        .ol-v4-mobile-category,
        .ol-v4-mobile-category *,
        .ol-v4-mobile-category-links {
            animation: none !important;
            transition: none !important;
        }
    }
}/* End custom CSS */
/* Start custom CSS */body{
  margin:0;
  padding:0;
  background:#000000;
  color:#ffffff;
  font-family:'Poppins',sans-serif;
}

html{
  scroll-behavior:smooth;
}

img{
  max-width:100%;
  display:block;
}

a{
  text-decoration:none;
}

/* ===== LAYOUT GENERAL ===== */
.olivera-container{
  width:100%;
  max-width:1240px;
  margin:0 auto;
  padding:90px 20px;
}

.olivera-title{
  font-size:42px;
  line-height:1.15;
  font-weight:700;
  text-align:center;
  margin:0 0 18px;
  color:#ffffff;
}

.olivera-subtitle{
  max-width:850px;
  margin:0 auto 50px;
  text-align:center;
  font-size:18px;
  line-height:1.7;
  color:rgba(255,255,255,.78);
}

.olivera-section-dark{
  background:#050505;
}

.olivera-section-soft{
  background:linear-gradient(180deg,#0a0a0a 0%, #121212 100%);
}

.olivera-white-section{
  background:#ffffff;
  color:#111111;
}

.olivera-white-section .olivera-container{
  padding-top:100px;
  padding-bottom:100px;
}

.olivera-white-section p{
  color:#555555;
  line-height:1.8;
}

/* ===== GRID ===== */
.olivera-grid{
  display:grid;
  gap:28px;
  align-items:stretch;
}

.olivera-grid > *{
  height:100%;
}

.grid-2{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.grid-3{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.grid-4{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

/* ===== CARDURI ULTRA PREMIUM ===== */
.olivera-card{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  align-items:stretch;
  background:
    radial-gradient(circle at top left, rgba(220,165,74,0.08), transparent 28%),
    linear-gradient(180deg, rgba(22,22,22,0.96) 0%, rgba(10,10,10,0.98) 100%);
  border:1px solid rgba(220,165,74,0.14);
  border-radius:28px;
  overflow:hidden;
  box-shadow:
    0 16px 40px rgba(0,0,0,0.34),
    inset 0 1px 0 rgba(255,255,255,0.03);
  transition:
    transform 0.4s ease,
    box-shadow 0.4s ease,
    border-color 0.4s ease,
    filter 0.4s ease;
}

.olivera-card::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:28px;
  padding:1px;
  background:linear-gradient(
    135deg,
    rgba(220,165,74,0.24),
    rgba(255,255,255,0.04),
    rgba(220,165,74,0.16)
  );
  -webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  pointer-events:none;
}

.olivera-card:hover{
  transform:translateY(-10px);
  border-color:rgba(220,165,74,0.34);
  box-shadow:
    0 26px 64px rgba(0,0,0,0.42),
    0 10px 34px rgba(220,165,74,0.10);
  filter:brightness(1.02);
}

/* ===== IMAGINE ÎN CARD ===== */
.olivera-card-image{
  position:relative;
  width:100%;
  height:260px; /* 🔥 control înălțime uniformă */
  overflow:hidden;

  display:flex;
  justify-content:center;
  align-items:center;

  background:linear-gradient(180deg,#0f1720 0%, #0a0a0a 100%);
}

/* IMAGINE PERFECT CENTRATĂ */
.olivera-card-image img{
  max-width:90%;
  max-height:90%;
  object-fit:contain;
  object-position:center;

  display:block;
  margin:0 auto;

  transition:transform .4s ease, filter .4s ease;
}

/* HOVER PREMIUM */
.olivera-card:hover .olivera-card-image img{
  transform:scale(1.05);
  filter:brightness(1.05);
}

/* GLOW SUBTIL SUB PRODUS (APPLE STYLE) */
.olivera-card-image::after{
  content:"";
  position:absolute;
  bottom:-20%;
  left:50%;
  transform:translateX(-50%);
  width:60%;
  height:40%;

  background:radial-gradient(circle, rgba(220,165,74,0.25), transparent 70%);
  filter:blur(20px);
  opacity:.7;

  pointer-events:none;
}

/* ===== BODY CARD ===== */
.olivera-card-body{
  position:relative;
  padding:24px 24px 26px;
  text-align:center;
}

.olivera-card h3{
  margin:0 0 10px;
  text-align:center;
  font-size:23px;
  line-height:1.25;
  color:#ffffff;
  font-weight:700;
  letter-spacing:-0.2px;
}

.olivera-card p{
  margin:0;
  text-align:center;
  font-size:15px;
  line-height:1.75;
  color:rgba(255,255,255,0.76);
}

.olivera-card-badge{
  position:absolute;
  top:16px;
  left:16px;
  z-index:3;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(8,8,8,0.62);
  backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,0.10);
  color:#ffffff;
  font-size:12px;
  font-weight:600;
  letter-spacing:0.3px;
}

.olivera-card .btn-gold,
.olivera-card .btn-outline-gold{
  margin-top:20px;
}

/* ===== CARDURI LIGHT ===== */
.olivera-card.is-light{
  background:#ffffff;
  border:1px solid rgba(0,0,0,0.08);
  box-shadow:0 16px 34px rgba(0,0,0,0.08);
}

.olivera-card.is-light::before{
  display:none;
}

.olivera-card.is-light h3{
  color:#111111;
}

.olivera-card.is-light p{
  color:#555555;
}

/* ===== BUTON GOLD ===== */
.btn-gold{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:14px 28px;
  border-radius:999px;
  font-weight:700;
  font-size:16px;
  color:#111111;
  text-decoration:none;

  background:linear-gradient(135deg,#b77e24 0%,#f4d27a 38%,#fff0b4 50%,#dca54a 62%,#9d6a1b 100%);
  border:1px solid rgba(220,165,74,.35);

  overflow:hidden;
  isolation:isolate;
  z-index:1;

  box-shadow:
    0 10px 30px rgba(220,165,74,.25),
    inset 0 1px 2px rgba(255,255,255,.30);

  transition:
    transform .30s ease,
    box-shadow .30s ease,
    filter .30s ease;
}

/* TEXT */
.btn-gold span{
  position:relative;
  z-index:2;
}

/* SHINE STÂNGA → DREAPTA (CA BADGE) */
.btn-gold::before{
  content:"";
  position:absolute;
  top:-40%;
  left:-70%;
  width:40%;
  height:180%;

  background:linear-gradient(
    90deg,
    transparent 0%,
    rgba(255,255,255,.25) 30%,
    rgba(255,255,255,.7) 50%,
    rgba(255,255,255,.25) 70%,
    transparent 100%
  );

  transform:skewX(-25deg);
  animation:btnGoldShine 4.5s linear infinite;

  pointer-events:none;
  z-index:1;
}

/* ANIMAȚIE */
@keyframes btnGoldShine{
  0%{ left:-70%; }
  100%{ left:140%; }
}

/* HOVER */
.btn-gold:hover{
  transform:translateY(-3px) scale(1.02);

  box-shadow:
    0 18px 45px rgba(220,165,74,.42),
    0 0 24px rgba(220,165,74,.28),
    inset 0 1px 2px rgba(255,255,255,.35);

  filter:brightness(1.05);
}

/* CLICK */
.btn-gold:active{
  transform:translateY(0) scale(.985);
}

/* FOCUS */
.btn-gold:focus-visible{
  outline:none;
  box-shadow:
    0 0 0 3px rgba(255,255,255,.18),
    0 0 0 6px rgba(220,165,74,.28),
    0 18px 45px rgba(220,165,74,.35);
}
/* ===== BUTON OUTLINE GOLD ===== */
.btn-outline-gold{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:14px 28px;
  border-radius:999px;
  font-weight:600;
  font-size:16px;
  color:#dca54a;
  text-decoration:none;
  background:transparent;
  border:1px solid rgba(220,165,74,.6);
  overflow:hidden;
  isolation:isolate;
  z-index:1;
  transition:all .3s ease;
}

.btn-outline-gold::before{
  content:"";
  position:absolute;
  inset:-3px;
  border-radius:999px;
  background:conic-gradient(
    from 0deg,
    transparent 0deg,
    transparent 60deg,
    rgba(220,165,74,.7) 100deg,
    transparent 140deg,
    transparent 360deg
  );
  filter:blur(4px);
  opacity:.6;
  animation:rotateGlow 5s linear infinite;
  z-index:-2;
}

.btn-outline-gold::after{
  content:"";
  position:absolute;
  inset:1px;
  border-radius:999px;
  background:#050505;
  z-index:-1;
}

.btn-outline-gold span{
  position:relative;
  z-index:2;
}

.btn-outline-gold span::before{
  content:"";
  position:absolute;
  top:-70%;
  left:-85%;
  width:50%;
  height:200%;
  background:linear-gradient(
    90deg,
    transparent,
    rgba(255,255,255,.4),
    transparent
  );
  transform:rotate(25deg);
  transition:.6s;
}

.btn-outline-gold:hover span::before{
  left:130%;
}

.btn-outline-gold:hover{
  transform:translateY(-2px);
  color:#ffffff;
  border-color:#dca54a;
  box-shadow:
    0 0 20px rgba(220,165,74,.25),
    inset 0 0 10px rgba(220,165,74,.1);
}

.btn-outline-gold:active{
  transform:translateY(0) scale(.98);
}

/* ===== ANIMAȚII COMUNE ===== */
@keyframes rotateGlow{
  0%{ transform:rotate(0deg); }
  100%{ transform:rotate(360deg); }
}

@keyframes oliveraShine{
  0%{ left:-35%; }
  100%{ left:135%; }
}

@keyframes oliveraBadgeShine{
  0%{ left:-75%; }
  100%{ left:145%; }
}

/* ===== HERO ===== */
.olivera-hero{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:#071623;
}

.olivera-hero-bg{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(5,10,14,.88) 0%, rgba(7,25,38,.76) 45%, rgba(20,106,180,.25) 100%);
  z-index:1;
}

.olivera-hero-inner{
  position:relative;
  z-index:2;
  width:100%;
  max-width:1240px;
  margin:0 auto;
  padding:120px 20px 90px;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:30px;
  align-items:center;
}

.olivera-kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:#dca54a;
  font-size:14px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:1px;
  margin-bottom:18px;
}

.olivera-kicker::before{
  content:"";
  width:34px;
  height:1px;
  background:#dca54a;
}

.olivera-hero h1{
  margin:0 0 18px;
  font-size:58px;
  line-height:1.06;
  font-weight:800;
  color:#ffffff;
}

.olivera-hero h1 span{
  color:#dca54a;
}

.olivera-hero p{
  max-width:700px;
  margin:0 0 30px;
  font-size:19px;
  line-height:1.75;
  color:rgba(255,255,255,.82);
}

.olivera-hero-buttons{
  display:flex;
  gap:16px;
  flex-wrap:wrap;
  margin-bottom:28px;
}

/* ===== BADGES ===== */
.olivera-badges{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  align-items:center;
}

.olivera-badge{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:12px 18px;
  border-radius:999px;
  overflow:hidden;
  background:
    radial-gradient(circle at top, rgba(220,165,74,0.12), transparent 55%),
    linear-gradient(135deg, rgba(18,18,18,0.92), rgba(8,8,8,0.96));
  border:1px solid rgba(220,165,74,0.22);
  color:rgba(255,255,255,0.94);
  font-size:14px;
  font-weight:600;
  line-height:1;
  letter-spacing:0.2px;
  box-shadow:
    0 8px 20px rgba(0,0,0,0.26),
    inset 0 1px 0 rgba(255,255,255,0.04);
  backdrop-filter:blur(8px);
  transition:
    transform .3s ease,
    border-color .3s ease,
    box-shadow .3s ease,
    filter .3s ease;
}

.olivera-badge::before{
  content:"";
  position:absolute;
  top:-30%;
  left:-70%;
  width:42%;
  height:170%;
  background:linear-gradient(
    90deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0.10) 25%,
    rgba(255,255,255,0.52) 50%,
    rgba(255,255,255,0.10) 75%,
    rgba(255,255,255,0) 100%
  );
  transform:skewX(-24deg);
  animation:oliveraBadgeShine 5.2s linear infinite;
  pointer-events:none;
}

.olivera-badge::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:999px;
  background:
    radial-gradient(circle at 50% -20%, rgba(255,255,255,0.10), transparent 46%),
    radial-gradient(circle at 50% 120%, rgba(220,165,74,0.08), transparent 48%);
  pointer-events:none;
}

.olivera-badge:hover{
  transform:translateY(-2px);
  border-color:rgba(220,165,74,0.42);
  box-shadow:
    0 14px 28px rgba(0,0,0,0.34),
    0 6px 22px rgba(220,165,74,0.14);
  filter:brightness(1.03);
}

.olivera-badge-icon{
  width:18px;
  height:18px;
  flex:0 0 18px;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 1px 4px rgba(220,165,74,0.22));
}

.olivera-badge.highlight{
  color:#111111;
  background:
    radial-gradient(circle at top, rgba(255,255,255,0.38), transparent 48%),
    linear-gradient(135deg, #b77e24 0%, #f4d27a 38%, #fff0b0 50%, #dca54a 63%, #9d691b 100%);
  border:1px solid rgba(255,255,255,0.26);
  box-shadow:
    0 12px 28px rgba(220,165,74,0.26),
    inset 0 1px 0 rgba(255,255,255,0.22);
}

.olivera-badge.highlight::before{
  background:linear-gradient(
    90deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0.18) 25%,
    rgba(255,255,255,0.72) 50%,
    rgba(255,255,255,0.18) 75%,
    rgba(255,255,255,0) 100%
  );
}

.olivera-badge.highlight:hover{
  box-shadow:
    0 16px 36px rgba(220,165,74,0.34),
    0 0 22px rgba(220,165,74,0.18);
}

.olivera-badge.blue{
  background:
    radial-gradient(circle at top, rgba(255,255,255,0.10), transparent 48%),
    linear-gradient(135deg, rgba(10,44,74,0.96), rgba(18,112,188,0.96));
  border:1px solid rgba(90,178,255,0.28);
  color:#ffffff;
  box-shadow:
    0 10px 24px rgba(0,0,0,0.26),
    0 6px 18px rgba(46,176,255,0.10);
}

.olivera-badge-dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#dca54a;
  box-shadow:0 0 10px rgba(220,165,74,0.65);
  flex:0 0 8px;
}

.olivera-badge.blue .olivera-badge-dot{
  background:#5cb8ff;
  box-shadow:0 0 10px rgba(92,184,255,0.62);
}

/* ===== HERO VISUAL ===== */
.olivera-hero-visual{
  position:relative;
  min-height:500px;
}

.olivera-hero-main{
  position:absolute;
  right:0;
  bottom:0;
  width:85%;
  z-index:3;
  filter:drop-shadow(0 20px 40px rgba(0,0,0,.35));
}

.olivera-hero-side{
  position:absolute;
  left:0;
  bottom:0;
  width:52%;
  z-index:2;
}

.olivera-gloss-pill{
  position:absolute;
  top:600px;
  right:100px;
  z-index:4;
  min-width:400px;
  padding:16px 22px;
  text-align:center;
  border-radius:999px;
  background:linear-gradient(90deg,#0e5fa1 0%, #2eb0ff 100%);
  color:#ffffff;
  font-weight:700;
  overflow:hidden;
  box-shadow:0 16px 40px rgba(46,176,255,.22);
}

.olivera-gloss-pill::after{
  content:"";
  position:absolute;
  left:-30%;
  top:0;
  width:50%;
  height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);
  transform:skewX(-25deg);
  animation:oliveraShine 4s linear infinite;
}

/* ===== SPLIT SECTION ===== */
.olivera-split{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:34px;
  align-items:center;
}

.olivera-split-image img{
  width:100%;
  height:520px;
  object-fit:cover;
  border-radius:28px;
  box-shadow:0 18px 42px rgba(0,0,0,.18);
}

.olivera-split-content h2{
  margin:0 0 18px;
  font-size:42px;
  line-height:1.15;
  color:#00000;
}

/* ===== BLUE BUTTON ===== */
.olivera-white-section .btn-blue{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:14px 26px;
  border-radius:999px;
  background:linear-gradient(90deg,#0e69b0,#26a9ff);
  color:#ffffff;
  font-weight:700;
  box-shadow:0 12px 28px rgba(38,169,255,.24);
}

/* ===== STRIP GALLERY ===== */
.olivera-strip-gallery{
  display:grid;
  grid-template-columns:repeat(8, minmax(120px,1fr));
  gap:16px;
  margin-top:30px;
}

.olivera-strip-gallery img{
  width:100%;
  height:120px;
  object-fit:cover;
  border-radius:22px;
  transition:transform .35s ease;
}

.olivera-strip-gallery img:hover{
  transform:translateY(-5px);
}

/* ===== FEATURE CARDS ===== */
.olivera-feature-card{
  position:relative;
  min-height:320px;
  border-radius:30px;
  overflow:hidden;
  background:#0f1c28;
}

.olivera-feature-card img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.olivera-feature-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.08) 0%, rgba(0,0,0,.58) 100%);
}

.olivera-feature-content{
  position:absolute;
  left:24px;
  right:24px;
  bottom:24px;
  z-index:2;
}

.olivera-feature-content h3{
  margin:0 0 8px;
  font-size:30px;
  color:#ffffff;
}

.olivera-feature-content p{
  margin:0;
  color:rgba(255,255,255,.88);
  line-height:1.6;
}

.olivera-mini-note{
  display:inline-block;
  margin-top:14px;
  padding:8px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  color:#ffffff;
  font-size:13px;
  font-weight:600;
}

/* ===== ICON CARDS ===== */
.olivera-icon-card{
  text-align:center;
  padding:30px 24px;
}

.olivera-icon-card img{
  width:100%;
  height:220px;
  object-fit:cover;
  border-radius:20px;
  margin-bottom:20px;
}

.olivera-icon-card h3{
  margin:0 0 10px;
}

.olivera-icon-card p{
  margin:0;
}

/* ===== CTA BAND ===== */
.olivera-cta-band{
  background:linear-gradient(90deg,#0b2232 0%, #115888 100%);
  border:1px solid rgba(255,255,255,.08);
  border-radius:34px;
  padding:42px 34px;
  box-shadow:0 18px 46px rgba(0,0,0,.24);
}

.olivera-cta-band h2{
  margin:0 0 12px;
  font-size:40px;
  text-align:center;
}

.olivera-cta-band p{
  margin:0 auto 26px;
  max-width:760px;
  text-align:center;
  color:rgba(255,255,255,.84);
}

.olivera-cta-band-buttons{
  display:flex;
  justify-content:center;
  gap:16px;
  flex-wrap:wrap;
}

/* ===== FOOTER ===== */
.olivera-footer{
  background:#030303;
  border-top:1px solid rgba(255,255,255,.06);
}

.olivera-footer h3{
  margin:0 0 14px;
  color:#ffffff;
}

.olivera-footer p,
.olivera-footer a{
  color:rgba(255,255,255,.74);
  line-height:1.9;
}

.olivera-footer a:hover{
  color:#dca54a;
}

/* ===== FLOATING WHATSAPP ===== */
.olivera-whatsapp-float{
  position:fixed;
  right:20px;
  bottom:20px;
  z-index:9999;
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:14px 18px;
  border-radius:999px;
  background:#25D366;
  color:#ffffff;
  font-weight:700;
  box-shadow:0 14px 34px rgba(37,211,102,.3);
}

/* ===== TABLET ===== */
@media (max-width:1100px){
  .olivera-hero-inner{
    grid-template-columns:1fr;
  }

  .olivera-hero-visual{
    min-height:420px;
  }

  .olivera-split{
    grid-template-columns:1fr;
  }

  .grid-4{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .olivera-strip-gallery{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}

/* ===== MOBILE ===== */
@media (max-width:767px){
  .olivera-container{
    padding:70px 16px;
  }

  .olivera-title{
    font-size:29px;
  }

  .olivera-subtitle{
    font-size:16px;
    margin-bottom:34px;
  }

  .grid-2,
  .grid-3,
  .grid-4{
    grid-template-columns:1fr;
  }

  .olivera-hero{
    min-height:auto;
  }

  .olivera-hero-inner{
    padding:110px 16px 70px;
  }

  .olivera-hero h1{
    font-size:36px;
  }

  .olivera-hero p{
    font-size:16px;
  }

  .olivera-hero-buttons{
    flex-direction:column;
  }

  .btn-gold,
  .btn-outline-gold{
    width:100%;
  }

  .olivera-badges{
    gap:10px;
  }

  .olivera-badge{
    padding:11px 14px;
    font-size:13px;
    gap:8px;
  }

  .olivera-badge-icon{
    width:16px;
    height:16px;
    flex-basis:16px;
  }

  .olivera-hero-visual{
    min-height:340px;
  }

  .olivera-hero-main{
    width:78%;
  }

  .olivera-hero-side{
    width:48%;
  }

  .olivera-gloss-pill{
    top:10px;
    right:10px;
    min-width:160px;
    font-size:14px;
    padding:12px 16px;
  }

  .olivera-split-image img{
    height:340px;
  }

  .olivera-strip-gallery{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .olivera-strip-gallery img{
    height:100px;
  }

  .olivera-feature-card{
    min-height:260px;
  }

  .olivera-cta-band{
    padding:34px 20px;
  }

  .olivera-cta-band h2{
    font-size:30px;
  }

  .olivera-card{
    border-radius:24px;
  }

  .olivera-card::before{
    border-radius:24px;
  }

  .olivera-card-image img{
    height:210px;
  }

  .olivera-card-body{
    padding:20px 18px 22px;
  }

  .olivera-card h3{
    font-size:20px;
  }

  .olivera-card p{
    font-size:14px;
    line-height:1.7;
  }
}
.olivera-hero-video-right .olivera-hero-inner{
  grid-template-columns: 1.05fr .95fr;
  gap: 44px;
  align-items: center;
}

.olivera-hero-video-wrap{
  position: relative;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;

}

.olivera-video-card{
  position: relative;
  width: 62%;
  max-width: 480px;
  border-radius: 30px;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(20,20,20,.96), rgba(8,8,8,.98));
  border: 1px solid rgba(220,165,74,.18);
  box-shadow:
    0 24px 60px rgba(0,0,0,.42),
    0 10px 30px rgba(220,165,74,.08);
}

.olivera-video-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(255,255,255,.05) 0%, rgba(255,255,255,0) 22%, rgba(0,0,0,.12) 100%);
  pointer-events:none;
  z-index:2;
}

.olivera-video-card::after{
  content:"";
  position:absolute;
  inset:auto -20% -30% -20%;
  height:46%;
  background: radial-gradient(circle, rgba(220,165,74,.16) 0%, rgba(220,165,74,0) 70%);
  pointer-events:none;
  z-index:1;
}

.olivera-hero-video{
  width: 100%;
  height: 620px;
  object-fit: contain;
  object-position: center center;
  display: block;
  transform: scale(1);
  transition: transform .5s ease;
}

.olivera-video-card:hover .olivera-hero-video{
  transform: scale(1.02);
}

.olivera-hero-video-wrap .olivera-gloss-pill{
  top: -18px;
  right: 12px;
  min-width: 220px;
  z-index: 5;
}

@media (max-width: 1100px){
  .olivera-hero-video-right .olivera-hero-inner{
    grid-template-columns: 1fr;
    gap: 34px;
    text-align: center;
  }

  .olivera-hero-video-wrap{
    justify-content: center;
  }

  .olivera-video-card{
    max-width: 560px;
  }

  .olivera-hero-video{
    height: 520px;
  }

  .olivera-hero-buttons,
  .olivera-badges{
    justify-content: center;
  }
}

@media (max-width: 767px){
  .olivera-video-card{
    max-width: 100%;
    border-radius: 22px;
  }

  .olivera-hero-video{
    height: 360px;
  }

  .olivera-hero-video-wrap .olivera-gloss-pill{
    top: -10px;
    right: 8px;
    min-width: 150px;
    font-size: 13px;
    padding: 10px 14px;
  }
}
.btn-gold{
  position:relative;
  overflow:hidden;
}

.btn-gold .btn-ripple{
  position:absolute;
  border-radius:50%;
  transform:scale(0);
  animation:btnRipple .65s ease-out forwards;
  background:rgba(255,255,255,.35);
  pointer-events:none;
  z-index:1;
}

@keyframes btnRipple{
  0%{
    transform:scale(0);
    opacity:.55;
  }
  100%{
    transform:scale(4);
    opacity:0;
  }
}
/* ===== FLOATING ICONS - APPLE STYLE ===== */

.olivera-floating-icons{
  position:fixed;
  left:18px;
  bottom:110px;
  z-index:9999;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.olivera-floating-icon{
  position:relative;
  width:56px;
  height:56px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:18px;
  color:#111111;
  background:linear-gradient(135deg,#b77e24 0%,#f4d27a 38%,#fff0b4 50%,#dca54a 62%,#9d6a1b 100%);
  border:1px solid rgba(220,165,74,.35);
  box-shadow:
    0 10px 24px rgba(220,165,74,.22),
    inset 0 1px 2px rgba(255,255,255,.30);
  overflow:hidden;
  isolation:isolate;
  transition:
    transform .25s ease,
    box-shadow .25s ease,
    filter .25s ease;
}

.olivera-floating-icon svg{
  width:26px;
  height:26px;
  position:relative;
  z-index:2;
}

/* shine discret */
.olivera-floating-icon::before{
  content:"";
  position:absolute;
  top:-40%;
  left:-70%;
  width:42%;
  height:180%;
  background:linear-gradient(
    90deg,
    transparent 0%,
    rgba(255,255,255,.18) 30%,
    rgba(255,255,255,.62) 50%,
    rgba(255,255,255,.18) 70%,
    transparent 100%
  );
  transform:skewX(-25deg);
  animation:oliveraFloatingShine 4.8s linear infinite;
  pointer-events:none;
  z-index:1;
}

/* label Apple */
.olivera-floating-icon::after{
  content:attr(data-label);
  position:absolute;
  left:72px;
  top:50%;
  transform:translateY(-50%) scale(.96);
  transform-origin:left center;
  padding:10px 14px;
  border-radius:999px;
  white-space:nowrap;
  font-size:13px;
  font-weight:600;
  letter-spacing:.1px;
  color:#ffffff;
  background:rgba(22,22,22,.68);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:
    0 10px 30px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  opacity:0;
  pointer-events:none;
  transition:
    opacity .22s ease,
    transform .22s ease;
}

.olivera-floating-icon:hover{
  transform:translateY(-2px) scale(1.04);
  box-shadow:
    0 18px 34px rgba(220,165,74,.30),
    0 0 18px rgba(220,165,74,.14),
    inset 0 1px 2px rgba(255,255,255,.35);
  filter:brightness(1.04);
}

.olivera-floating-icon:hover::after{
  opacity:1;
  transform:translateY(-50%) scale(1);
}

.olivera-floating-icon:active{
  transform:scale(.97);
}

@keyframes oliveraFloatingShine{
  0%{ left:-70%; }
  100%{ left:145%; }
}

/* mobil */
@media (max-width:767px){
  .olivera-floating-icons{
    left:12px;
    bottom:90px;
    gap:10px;
  }

  .olivera-floating-icon{
    width:50px;
    height:50px;
    border-radius:16px;
  }

  .olivera-floating-icon svg{
    width:23px;
    height:23px;
  }

  /* pe mobil nu mai afișăm label permanent la tap */
  .olivera-floating-icon::after{
    display:none;
  }
}
.olivera-card-badge{
  position:absolute;
  top:16px;
  right:16px;
  z-index:6;

  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:fit-content;
  max-width:calc(100% - 32px);

  padding:9px 14px;
  border-radius:999px;

  font-size:12px;
  font-weight:700;
  letter-spacing:.2px;
  line-height:1;
  white-space:nowrap;

  color:#fff;

 background:radial-gradient(circle at top, rgba(220,165,74,0.12), transparent 55%),
    linear-gradient(135deg, rgba(18,18,18,0.92), rgba(8,8,8,0.96));
   
  border:1px solid rgba(255,255,255,.28);

  box-shadow:
    0 10px 24px rgba(220,165,74,.28),
    0 4px 14px rgba(0,0,0,.18),
    inset 0 1px 2px rgba(255,255,255,.45);

  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);

  overflow:hidden;
  isolation:isolate;

  transform:translateY(0);
  transition:
    transform .25s ease,
    box-shadow .25s ease,
    filter .25s ease;
}

.olivera-card-badge::before{
  content:"";
  position:absolute;
  top:-40%;
  left:-75%;
  width:42%;
  height:190%;
  background:linear-gradient(
    90deg,
    transparent 0%,
    rgba(255,255,255,.20) 28%,
    rgba(255,255,255,.72) 50%,
    rgba(255,255,255,.20) 72%,
    transparent 100%
  );
  transform:skewX(-24deg);
  animation:oliveraAppleBadgeShine 4.8s linear infinite;
  pointer-events:none;
  z-index:1;
}

.olivera-card-badge::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:999px;
  background:
    radial-gradient(circle at 50% -30%, rgba(255,255,255,.18), transparent 42%),
    radial-gradient(circle at 50% 140%, rgba(220,165,74,.10), transparent 46%);
  pointer-events:none;
  z-index:0;
}

.olivera-card:hover .olivera-card-badge{
  transform:translateY(-2px);
  box-shadow:
    0 14px 30px rgba(220,165,74,.34),
    0 6px 16px rgba(0,0,0,.22),
    inset 0 1px 2px rgba(255,255,255,.5);
  filter:brightness(1.03);
}

@keyframes oliveraAppleBadgeShine{
  0%{ left:-75%; }
  100%{ left:145%; }
}

@media (max-width:767px){
  .olivera-card-badge{
    top:12px;
    right:12px;
    padding:8px 12px;
    font-size:11px;
    max-width:calc(100% - 24px);
  }
}
@media (max-width:767px){
  .olivera-floating-icons{
    left:auto;
    right:8px;
    bottom:120px;
    gap:8px;
    z-index:999;
  }

  .olivera-floating-icon{
    width:44px;
    height:44px;
    border-radius:14px;
  }

  .olivera-floating-icon svg{
    width:20px;
    height:20px;
  }

  .olivera-floating-icon::after{
    display:none;
  }
}/* End custom CSS */