/* MIXBOX landing redesign - override incarcat DUPA main.css si stilurile inline.
   Mobile-first: desktopul ramane neschimbat (totul in media queries max-width). */

/* ================= TYPOGRAPHY_GLOBAL ================= */
/* ============================================================
   MOBILE TYPOGRAPHY OVERRIDE — landing MixBOX
   IMPORTANT: se incarca DUPA main.css (link separat in layout).
   Totul e in media queries max-width => desktopul (>=768px) NU e atins.
   Unitati in px intentionat: html{font-size:14px} face rem-ul nesigur.
   ============================================================ */

/* ---------- Mobil + tableta mica (sub 768px) ---------- */
@media (max-width: 767.98px) {

    /* 1) Baza: body + paragrafe (owner: "mai toate p-urile mai mari") */
    body {
        font-size: 17px;
        line-height: 1.65;
    }
    p {
        font-size: 17px;
        line-height: 1.65;
    }

    /* 2) Scara de headinguri — neutralizeaza si leak-ul global
          `.contact-item h1, h2, h3, h4, h5, h6 {font-size:20px}` (main.css:2855),
          fiindca acest fisier vine dupa main.css in cascada */
    h1 { font-size: 32px; line-height: 1.25; }
    h2 { font-size: 28px; line-height: 1.3; }
    h3 { font-size: 22px; line-height: 1.35; }
    h4 { font-size: 19px; line-height: 1.4; }
    h5 { font-size: 17px; line-height: 1.4; }
    h6 { font-size: 16px; line-height: 1.4; }

    /* 3) Titluri de sectiune ("Problema ta, Soluția noastră",
          "Descoperă Avantajele Unice MIXBOX!", "De ce este MIXBOX diferit?") */
    .section-header .title {
        font-size: 30px;
        line-height: 1.25;
        margin-bottom: 14px;
    }
    /* subtitlurile de sectiune (earning_sub_title, feature_short_description) */
    .section-header .text {
        font-size: 18px;
        line-height: 1.6;
    }

    /* 4) Hero (fixed_header_title + fixed_header_sub_title) */
    .banner-content .title {
        font-size: 34px;
        line-height: 1.2;
    }
    .banner-content .text {
        font-size: 19px;
        line-height: 1.6;
    }

    /* 5) Butoane */
    .cmn--btn {
        font-size: 17px;
        line-height: 1.4;
        padding: 12px 22px;
    }
    /* navbar: compact dar lizibil (main.css il ducea la 12px / weight 400) */
    .navbar-bottom-wrapper .cmn--btn,
    .navbar-bottom-wrapper .header--btn {
        font-size: 14px;
        font-weight: 600;
        padding: 6px 14px;
    }
    .download-app-content .btn-grp .cmn--btn {
        font-size: 16px;
        font-weight: 600;
    }
    .earn-item-img .cmn--btn {
        font-size: 16px;
    }

    /* 6) Carduri "Problema ta, Soluția noastră" (earn money) */
    .earn-item-cont .subtitle { font-size: 20px; }
    .earn-item-cont .title { font-size: 30px; }

    /* 7) "Descoperă Avantajele Unice MIXBOX!" (learn features) */
    .learn-feature-item {
        font-size: 16px;
        line-height: 1.6;
    }
    .learn-feature-item .subtitle {
        font-size: 20px;
        line-height: 1.3;
    }

    /* 8) "De ce este MIXBOX diferit?" (feature cards) */
    .feature-card-cont .subtitle { font-size: 22px; }

    /* 9) Taburi categorii + venture box */
    .venture-content-box { font-size: 17px; }
    .venture-content-box .subtitle { font-size: 19px; }
    .nav--tabs li button { font-size: 15px; }

    /* 10) Download app */
    .download-app-content .title { font-size: 30px; }
    .download-app-content .title .primary-color { font-size: 26px; }
    .download-app-content .subtitle { font-size: 24px; }

    /* 11) Referral / newsletter (fixed_referal_title / fixed_referal_sub_title) */
    .newsletter-content { font-size: 17px; }
    .newsletter-content .title { font-size: 26px; }
    .newsletter-content .text { font-size: 18px; }
    .input--grp .form-control { font-size: 16px; }

    /* 12) Countere */
    .counter-item { font-size: 18px; line-height: 1.5; }
    .counter-item .title span { font-size: 28px; }

    /* 13) Testimoniale */
    .testimonial-item { font-size: 17px; }
    .testimonial-item .user div { font-size: 14px; }
    .testimonial-item .user div .name { font-size: 16px; }

    /* 14) About / contact */
    .about-content { font-size: 17px; }
    .contact-item { font-size: 17px; }

    /* 15) Footer */
    .footer-widget { font-size: 16px; }
    .footer-widget .subtitle { font-size: 19px; }
    .footer-widget.widget-links ul li a { font-size: 16px; line-height: 2; }
    .copyright { font-size: 14px; line-height: 1.6; }
}

/* ---------- Telefoane (sub 576px): re-batem shrink-urile din main.css.
     Aceeasi specificitate, dar fisierul nostru e incarcat dupa => castiga. ---------- */
@media (max-width: 575.98px) {
    .banner-content .title { font-size: 30px; }                    /* main.css: 28px */
    .newsletter-content { font-size: 17px; }                       /* main.css: 15px */
    .newsletter-content .title { font-size: 24px; }                /* main.css: 20px */
    .learn-feature-item { font-size: 16px; line-height: 1.6; }     /* main.css: 14px */
    .download-app-content .btn-grp .cmn--btn {                     /* main.css: 14px/400 */
        font-size: 16px;
        font-weight: 600;
    }
    .footer-widget.widget-links ul li a { font-size: 16px; }       /* main.css: 14px */
    .counter-item { font-size: 18px; }
    .category-slide-item .text { font-size: 21px; }                /* main.css: 20px */
    .navbar-bottom-wrapper .cmn--btn,
    .navbar-bottom-wrapper .header--btn {                          /* main.css: 12px, padding 3px 12px */
        font-size: 13px;
        font-weight: 600;
        padding: 5px 12px;
    }
    .language-bar .lang-btn { font-size: 15px; }                   /* main.css: 14px */
    /* singurul !important necesar: main.css foloseste !important pe aceeasi regula */
    .counter-wrapper .right-side { font-size: 17px !important; }
}

/* ---------- Ecrane foarte inguste (<=375px) ---------- */
@media (max-width: 375px) {
    .banner-content .title { font-size: 28px; }
    .section-header .title { font-size: 28px; }
    .earn-item-img .cmn--btn { font-size: 15px; }                  /* main.css: 14px */
    .cmn--btn { padding: 11px 18px; }
}

/* ================= HERO_NAVBAR ================= */
/* ============================================================
   MIXBOX — override MOBIL: NAVBAR + HERO
   Se incarca DUPA main.css SI dupa <style>-ul inline din
   layouts/landing/app.blade.php (ideal prin @stack('css_or_js')
   sau un <link> chiar inainte de </head>).
   Desktop (>= 992px) NEATINS: totul e in media queries max-width.
   ============================================================ */

/* ---------------- NAVBAR: mobil + tableta ---------------- */
@media (max-width: 991.98px) {

    /* Bara sticky cu blur — aspect premium */
    header .navbar-bottom {
        position: sticky;
        top: 0;
        z-index: 1030;
        background: rgba(255, 255, 255, 0.88);
        -webkit-backdrop-filter: saturate(180%) blur(14px);
        backdrop-filter: saturate(180%) blur(14px);
        box-shadow: 0 1px 0 rgba(0, 0, 0, 0.05),
                    0 10px 28px -20px rgba(0, 0, 0, 0.28);
    }

    header .navbar-bottom-wrapper {
        flex-wrap: wrap;
        align-items: center;
        gap: 10px;
        padding: 10px 0;
    }

    /* Logo: marime stabila, aliniat vertical */
    header .navbar-bottom-wrapper .logo {
        height: auto;
        width: auto;
        max-width: 150px;
        margin-inline-end: 8px;
        display: flex;
        align-items: center;
    }
    header .navbar-bottom-wrapper .logo img,
    header .logo img {
        max-height: 40px;
        width: auto;
        height: auto;
        object-position: left;
    }

    /* Hamburger: tap-target 44x44, aspect de buton rotunjit */
    header .nav-toggle {
        width: 44px;
        height: 44px;
        border-radius: 12px;
        background: rgba(47, 57, 52, 0.06);
        flex-shrink: 0;
        transition: background 0.2s ease;
        -webkit-tap-highlight-color: transparent;
    }
    header .nav-toggle:active {
        background: rgba(47, 57, 52, 0.12);
    }
    header .nav-toggle span {
        width: 20px;
        height: 2px;
        border-radius: 2px;
        inset-inline-start: 12px;
        background: var(--title-clr);
    }
    /* geometrie noua (liniile la 15 / 21 / 27 px, centrate in caseta de 44px) */
    header .nav-toggle span:first-child  { top: 15px; }
    header .nav-toggle span:nth-child(2) { top: 21px; transform: none; }
    header .nav-toggle span:last-child   { bottom: 15px; }
    /* X-ul activ: ambele linii aduse in centrul casetei (top 21px) */
    header .nav-toggle.active span:first-child  { top: 21px; transform: rotate(45deg); }
    header .nav-toggle.active span:nth-child(2) { opacity: 0; }
    header .nav-toggle.active span:last-child   { bottom: 21px; transform: rotate(-45deg); }

    /* Panoul de meniu deschis: alb, umbra mare, colturi rotunjite jos */
    header .navbar-bottom-wrapper .menu {
        position: absolute;
        top: 100%;
        inset-inline-start: 0;
        width: 100%;
        flex-direction: column;
        background: #ffffff;
        border-top: 1px solid rgba(0, 0, 0, 0.06);
        border-radius: 0 0 18px 18px;
        padding: 12px 16px 20px;
        box-shadow: 0 28px 44px -22px rgba(0, 0, 0, 0.28);
        transition: transform 0.28s ease, opacity 0.2s ease;
    }
    header .navbar-bottom-wrapper .menu:not(.active) {
        transform: scaleY(0);
        opacity: 0;
        pointer-events: none;
    }
    header .navbar-bottom-wrapper .menu li {
        padding: 2px 0;
    }
    /* Linkuri mari, cu zona de atingere generoasa
       (!important ca sa batem padding-ul !important din style-ul inline) */
    header .navbar-bottom .navbar-bottom-wrapper .menu li a {
        display: block;
        padding: 14px 14px !important;
        font-size: 17px;
        font-weight: 600;
        line-height: 1.3;
        color: var(--title-clr);
        border-radius: 12px;
        white-space: normal;
    }
    header .navbar-bottom .navbar-bottom-wrapper .menu li a.active,
    header .navbar-bottom .navbar-bottom-wrapper .menu li a:active {
        color: var(--base-1);
        background: rgba(var(--base-rgb), 0.08);
    }
    /* underline-ul animat de desktop nu are sens in panoul mobil */
    header .navbar-bottom-wrapper .menu li a span::before {
        display: none;
    }

    /* Butonul "Browse web" din interiorul meniului: full-width, solid */
    header .navbar-bottom-wrapper .menu .me-2 {
        margin: 10px 0 0 !important;
    }
    header .navbar-bottom-wrapper .menu .cmn--btn {
        display: block;
        width: 100%;
        text-align: center;
        font-size: 16px;
        font-weight: 700;
        padding: 13px 16px;
        border-radius: 12px;
        white-space: normal;
    }

    /* CTA "Alatura-te": mai mare, mai apasat */
    header .join-cta {
        font-size: 14px;
        font-weight: 700;
        padding: 10px 16px;
        border-radius: 12px;
        letter-spacing: 0.01em;
    }

    /* Dropdown-ul "Alatura-te" sa nu iasa din ecran pe telefoane inguste */
    header .dropdown--btn-hover {
        position: relative;
    }
    header .dropdown--btn-hover .dropdown-list {
        inset-inline-end: 0;
        inset-inline-start: auto;
        max-width: min(320px, calc(100vw - 24px));
    }
    header .dropdown-list li a {
        font-size: 15px;
        padding: 13px 16px;
    }
}

/* Telefoane mici */
@media (max-width: 575.98px) {
    header .navbar-bottom-wrapper {
        padding: 8px 0;
        gap: 8px;
    }
    header .navbar-bottom-wrapper .logo {
        max-width: 126px;
        width: auto !important; /* anuleaza width:60px !important din main.css L1090 */
    }
    header .navbar-bottom-wrapper .logo img,
    header .logo img {
        max-height: 34px;
    }
    header .join-cta {
        font-size: 13px;
        padding: 9px 13px;
    }
}

/* ---------------- HERO (banner-section): mobil + tableta ---------------- */
@media (max-width: 991.98px) {
    .banner-section .banner-content {
        padding-top: 44px;
        padding-bottom: 28px;
        padding-inline: 8px;
    }
    /* H1 mare si indraznet — Lato 900 e deja incarcat */
    .banner-section .banner-content .title {
        font-size: clamp(36px, 9vw, 44px);
        line-height: 1.12;
        font-weight: 900;
        letter-spacing: -0.02em;
        margin-bottom: 14px;
        color: var(--title-clr);
    }
    /* logo-ul din hero, putin mai compact */
    .banner-section .banner-content img {
        max-height: 48px;
        margin-bottom: 18px;
    }
    /* Subtitlul "Comanda produsul. Programeaza specialistul..." —
       mare, aerisit, mai inchis la culoare pentru lizibilitate */
    .banner-section .banner-content .text {
        font-size: 20px;
        line-height: 1.65;
        font-weight: 500;
        color: #4c5751;
        max-width: 34ch;
        margin-inline: auto;
    }
}

@media (max-width: 575.98px) {
    .banner-section .banner-content {
        padding-top: 36px;
    }
    .banner-section .banner-content .title {
        font-size: clamp(32px, 10vw, 40px);
    }
    .banner-section .banner-content .text {
        font-size: 19px;
        max-width: 30ch;
    }
}

/* ================= EARN_MONEY ================= */
/* ============================================================
   MIXBOX OVERRIDE — earn-money-section (carduri + butoane inregistrare)
   Se incarca DUPA main.css. !important e necesar pe butoane fiindca
   au stiluri inline in home.blade.php (functioneaza si FARA modificarea HTML).
   Desktop: se schimba DOAR aspectul butoanelor (cerut de owner), nu layout-ul.
   ============================================================ */

/* ---------- 1. Butoanele de inregistrare — pill glassmorphism (toate ecranele) ---------- */
.earn-money-section .earn-item-img .cmn--btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    max-width: 100%;
    min-height: 52px;
    text-align: center;
    line-height: 1.3;
    white-space: normal;
    background: rgba(15, 23, 42, 0.38) !important;
    -webkit-backdrop-filter: blur(14px) saturate(160%);
    backdrop-filter: blur(14px) saturate(160%);
    border: 1.5px solid rgba(255, 255, 255, 0.4) !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 0.08em !important;
    padding: 14px 28px !important;
    border-radius: 999px !important;
    box-shadow: 0 10px 30px rgba(2, 12, 27, 0.35),
        inset 0 1px 0 rgba(255, 255, 255, 0.25) !important;
    animation: none !important; /* opreste pulse-ul care scala butonul cu 25% */
    transition: transform 0.25s ease, box-shadow 0.25s ease,
        background 0.25s ease, border-color 0.25s ease;
}
.earn-money-section .earn-item-img .cmn--btn:hover,
.earn-money-section .earn-item-img .cmn--btn:focus-visible {
    transform: translateY(-2px);
    background: rgba(15, 23, 42, 0.55) !important;
    border-color: rgba(255, 255, 255, 0.75) !important;
    box-shadow: 0 16px 40px rgba(2, 12, 27, 0.45),
        inset 0 1px 0 rgba(255, 255, 255, 0.3) !important;
    filter: none; /* anuleaza brightness(0.9) din .cmn--btn:hover */
    color: #fff !important;
}
.earn-money-section .earn-item-img .cmn--btn i {
    font-size: 1.1em;
    flex-shrink: 0;
}
@media (min-width: 768px) {
    .earn-money-section .earn-item-img .cmn--btn {
        font-size: 16px !important;
        padding: 16px 34px !important;
    }
}
/* Fallback pentru browsere fara backdrop-filter */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
    .earn-money-section .earn-item-img .cmn--btn {
        background: rgba(15, 23, 42, 0.72) !important;
    }
}
/* Accente pe rol la iconite (active doar daca se aplica modificarea HTML cu clasele earn-cta--*) */
.earn-cta--store i   { color: #ffb26b; }
.earn-cta--courier i { color: #7dffcf; }
.earn-cta--tasker i  { color: #c3b2ff; }

/* ---------- 2. MOBIL: tipografie mare + card premium (poza sus, text jos) ---------- */
@media (max-width: 767px) {
    .earn-money-section {
        padding: 56px 0 72px;
        border-bottom-right-radius: 60px;
    }

    /* Header sectiune: earning_title / earning_sub_title */
    .earn-money-section .section-header {
        margin-bottom: 40px;
        padding: 0 8px;
    }
    .earn-money-section .section-header .title {
        font-size: clamp(30px, 8vw, 36px);
        line-height: 1.15;
        font-weight: 800;
        letter-spacing: -0.02em;
        margin-bottom: 14px;
    }
    .earn-money-section .section-header .text {
        font-size: 17px;
        line-height: 1.6;
        max-width: 36ch;
        margin: 0 auto;
    }

    /* Card: poza (cu CTA peste) sus, textul dedesubt — anuleaza wrap-reverse */
    .earn-money-section .earn-item {
        flex-wrap: wrap;
    }
    .earn-money-section .earn-item:not(:last-child) {
        margin-bottom: 48px;
    }
    .earn-money-section .earn-item-img {
        width: 100%;
        max-width: 100%;
        min-height: 290px;
        padding: 20px 16px 24px;
        border-radius: 28px;
        justify-content: center;
        align-items: flex-end;
        box-shadow: 0 18px 40px -18px rgba(2, 12, 27, 0.35);
    }

    /* Overlay elegant de jos in sus, indiferent de nth-child(even) / rtl */
    .earn-money-section .earn-item .earn-item-img::before,
    .earn-money-section .earn-item:nth-child(even) .earn-item-img::before,
    [dir="rtl"] .earn-money-section .earn-item .earn-item-img::before,
    [dir="rtl"] .earn-money-section .earn-item:nth-child(even) .earn-item-img::before {
        background: linear-gradient(
            180deg,
            rgba(15, 23, 42, 0) 30%,
            rgba(15, 23, 42, 0.35) 62%,
            rgba(15, 23, 42, 0.82) 100%
        );
        filter: none;
    }

    .earn-money-section .earn-item-img .cmn--btn {
        font-size: 14px !important;
        padding: 13px 22px !important;
    }

    /* Textul de sub poza: eyebrow + titlu mare + descriere aerisita */
    .earn-money-section .earn-item-cont,
    .earn-money-section .earn-item:nth-child(even) .earn-item-cont {
        width: 100%;
        padding: 22px 6px 0;
        text-align: center;
        justify-content: center;
    }
    .earn-money-section .earn-item-cont .subtitle {
        font-size: 13px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.14em;
        color: var(--base-1);
        margin-bottom: 2px;
    }
    .earn-money-section .earn-item-cont .title {
        font-size: 28px;
        line-height: 1.2;
        margin-top: 4px;
        color: var(--title-clr);
    }
    .earn-money-section .earn-item-cont .desc {
        font-size: 16px;
        line-height: 1.65;
        margin-top: 10px;
        color: var(--body-clr);
    }
}

/* Telefoane foarte inguste */
@media (max-width: 375px) {
    .earn-money-section .earn-item-img {
        min-height: 250px;
    }
    .earn-money-section .earn-item-img .cmn--btn {
        font-size: 13px !important;
        padding: 12px 18px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .earn-money-section .earn-item-img .cmn--btn {
        transition: none;
    }
}

/* ================= FEATURES_SLIDER ================= */
/* ============================================================
   LEARN FEATURE SECTION — slider ORIZONTAL (owl-carousel)
   Override, mobile-first. De pus intr-un fisier incarcat dupa main.css.
   Merge impreuna cu modificarile HTML/JS din proposed_html_changes.
   ============================================================ */

/* --- Wrapper nou (inlocuieste .learn-feature-wrapper care avea height:430px + overflow) --- */
.feature-slider-wrapper {
    position: relative;
}

/* --- Loc pentru iconita ridicata (translateY(-34px)) — altfel owl o taie
       (.owl-stage-outer are overflow:hidden) --- */
.feature-slider .item {
    padding-top: 40px;
    height: 100%;
}
.feature-slider .learn-feature-item {
    margin-top: 0;              /* anuleaza margin-top:30px din main.css */
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.feature-slider .learn-feature-item .learn-feature-item-content .text {
    min-height: 0;              /* anuleaza min-height:52px, inaltimea o da flex-ul */
}

/* --- Carduri egale ca inaltime in slider --- */
.feature-slider .owl-stage {
    display: flex;
    align-items: stretch;
}
.feature-slider .owl-item {
    display: flex;
    float: none;
}
.feature-slider .owl-item > .item {
    width: 100%;
    display: flex;
    flex-direction: column;
}

/* --- Dots premium (pastila alungita pe activ, verde brand) --- */
.feature-slider.owl-theme .owl-dots {
    margin-top: 14px;
    text-align: center;
}
.feature-slider.owl-theme .owl-dots .owl-dot span {
    width: 8px;
    height: 8px;
    margin: 0 4px;
    border-radius: 50px;
    background: rgba(var(--base-rgb), 0.25);
    transition: all 0.3s ease;
}
.feature-slider.owl-theme .owl-dots .owl-dot.active span {
    width: 22px;
    background: rgb(var(--base-rgb));
}
.feature-slider.owl-theme .owl-dots .owl-dot:hover span {
    background: rgba(var(--base-rgb), 0.6);
}

/* --- Fix typo markup: h5 are class="subttle", main.css stila doar .subtitle --- */
.learn-feature-item .subttle {
    font-weight: 600;
    font-size: 20px;
    line-height: 1.3;
    letter-spacing: 0.02em;
    margin-bottom: 12px;
}

/* --- Tablet: pastreaza marginile laterale pe care le dadea .learn-feature-wrapper --- */
@media (max-width: 991px) {
    .feature-slider-wrapper {
        margin-inline-start: 20px;
        margin-inline-end: 20px;
    }
}

/* ============================================================
   MOBIL — tipografie mult mai mare, aspect premium
   Selectorii au 3 clase ca sa bata override-ul inline din home.blade
   (.learn-feature-content .text { 0.95rem !important } — bloc in <body>)
   ============================================================ */
@media (max-width: 768px) {
    /* scoate padding-ul vertical mostenit (sectiunea are deja 28px din override-ul global) */
    .learn-feature-section .learn-feature-content {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
    .learn-feature-section .feature-slider-wrapper.py-5 {
        padding-top: 1.25rem !important;
        padding-bottom: 0.75rem !important;
    }

    /* Titlul sectiunii: "Descoperă Avantajele Unice MIXBOX!" */
    .learn-feature-section .section-header .title {
        font-size: 1.75rem !important;
        line-height: 1.25 !important;
        font-weight: 800 !important;
        letter-spacing: -0.01em;
        margin-bottom: 12px;
    }

    /* Descrierea (feature_short_description) — MULT mai mare decat 0.95rem */
    .learn-feature-section .learn-feature-content .text {
        font-size: 1.15rem !important;
        line-height: 1.65 !important;
        color: #333 !important;
    }

    /* Cardurile din slider */
    .learn-feature-section .learn-feature-item {
        font-size: 1rem !important;
        line-height: 1.6 !important;
        padding-bottom: 24px;
    }
    .learn-feature-section .learn-feature-item .subttle,
    .learn-feature-section .learn-feature-item .subtitle {
        font-size: 1.25rem !important;
        font-weight: 700 !important;
        line-height: 1.3 !important;
        margin-bottom: 10px;
    }
    .learn-feature-section .learn-feature-item .learn-feature-item-content .text {
        font-size: 1.05rem !important;
        line-height: 1.6 !important;
        color: #333 !important;
    }
    .learn-feature-section .learn-feature-item .learn-feature-icon {
        width: 78px;
        height: 78px;
    }
}

@media (max-width: 480px) {
    .learn-feature-section .section-header .title {
        font-size: 1.55rem !important;
    }
}

/* ================= DELIVERY_ZONE ================= */
/* =====================================================================
   DELIVERY AREA ("Livrare rapida") — override single-zone + mobil
   Fix: sectiunea era gandita pentru multe zone (wrapper fix 200px +
   gradient de fade + padding pt. scroll) -> cu o singura zona ramanea
   un gol mare inainte de "Obtine puncte prin recomandare".
   Necesita clasa .single-zone pe <section> (vezi modificarea blade).
   Exista si fallback :has() la sectiunea 3 (merge si FARA blade edit
   pe toate browserele moderne).
   ===================================================================== */

/* --------- 1) O SINGURA zona: card compact, fara inaltime fixa --------- */
.delivery-area-section.single-zone .zone-list-wrapper {
    height: auto;
    min-height: 0;
    overflow: visible;
}
.delivery-area-section.single-zone .zone-list-container::after {
    display: none; /* fade-ul de scroll nu are sens cu 1 zona */
}
.delivery-area-section.single-zone .zone-list {
    max-width: none;
    padding: 0;
    justify-content: center; /* mobil/tableta: randul e text-center */
}
@media (min-width: 992px) {
    .delivery-area-section.single-zone .zone-list {
        justify-content: flex-start; /* desktop: aliniat cu textul din stanga */
    }
}
.delivery-area-section.single-zone .zone-list .item {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 16px 28px;
    border-radius: 14px;
    border: 1px solid rgba(3, 157, 85, 0.28);
    background: linear-gradient(135deg, #ffffff 0%, #f2fbf6 100%);
    box-shadow: 0 8px 24px rgba(3, 157, 85, 0.10);
    color: #1f2d27;
    font-size: 20px;
    cursor: default;
}
.delivery-area-section.single-zone .zone-list .item::before {
    content: "";
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23039d55'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5z'/%3E%3C/svg%3E") center / contain no-repeat;
}
.delivery-area-section.single-zone .zone-list .item:hover {
    box-shadow: 0 10px 28px rgba(3, 157, 85, 0.18);
    color: #039d55;
}
.delivery-area-section.single-zone .section-header {
    margin-bottom: 20px; /* headerul sta mai aproape cand nu mai e lista lunga */
}

/* --------- 2) MOBIL: text mult mai mare + sectiune compacta --------- */
@media (max-width: 767px) {
    .delivery-area-section {
        padding: 48px 0;
    }
    .delivery-area-section .section-header {
        margin-bottom: 14px;
    }
    .delivery-area-section .section-header .title {
        font-size: 30px;
        line-height: 1.2;
        font-weight: 800;
        letter-spacing: -0.02em;
    }
    .delivery-area-section .text {
        font-size: 17px;
        line-height: 1.65;
    }
    .delivery-area-section .zone-list .item {
        font-size: 18px;
        padding: 13px 22px;
    }
    .delivery-area-section.single-zone .zone-list .item {
        font-size: 19px;
        padding: 15px 26px;
        max-width: 100%;
    }
    .delivery-area-section.single-zone .zone-list-wrapper.mt-4 {
        margin-top: 14px !important;
    }
    /* imaginea nu mai domina ecranul cand exista o singura zona */
    .delivery-area-section.single-zone .mw-450 {
        display: block;
        max-width: 300px !important;
        margin-inline: auto;
    }
}

/* --------- 3) Fallback FARA modificarea blade (browsere cu :has) ---------
   Rulele sunt duplicate intentionat, in blocuri separate, ca sa nu
   invalideze selectorii .single-zone pe browsere fara :has(). */
.delivery-area-section:has(.zone-list .item:only-child) .zone-list-wrapper {
    height: auto;
    min-height: 0;
    overflow: visible;
}
.delivery-area-section:has(.zone-list .item:only-child) .zone-list-container::after {
    display: none;
}
.delivery-area-section:has(.zone-list .item:only-child) .zone-list {
    max-width: none;
    padding: 0;
    justify-content: center;
}
@media (min-width: 992px) {
    .delivery-area-section:has(.zone-list .item:only-child) .zone-list {
        justify-content: flex-start;
    }
}
.delivery-area-section:has(.zone-list .item:only-child) .zone-list .item {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 16px 28px;
    border-radius: 14px;
    border: 1px solid rgba(3, 157, 85, 0.28);
    background: linear-gradient(135deg, #ffffff 0%, #f2fbf6 100%);
    box-shadow: 0 8px 24px rgba(3, 157, 85, 0.10);
    color: #1f2d27;
    font-size: 20px;
    cursor: default;
}
.delivery-area-section:has(.zone-list .item:only-child) .zone-list .item::before {
    content: "";
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23039d55'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5z'/%3E%3C/svg%3E") center / contain no-repeat;
}
.delivery-area-section:has(.zone-list .item:only-child) .section-header {
    margin-bottom: 20px;
}
@media (max-width: 767px) {
    .delivery-area-section:has(.zone-list .item:only-child) .zone-list .item {
        font-size: 19px;
        padding: 15px 26px;
        max-width: 100%;
    }
    .delivery-area-section:has(.zone-list .item:only-child) .zone-list-wrapper.mt-4 {
        margin-top: 14px !important;
    }
    .delivery-area-section:has(.zone-list .item:only-child) .mw-450 {
        display: block;
        max-width: 300px !important;
        margin-inline: auto;
    }
}

/* ================= REFER_SECTION ================= */
/* ============================================================
   MIXBOX mobile override — REFER SECTION + toate listele cu BIFE
   Se incarca DUPA main.css (ideal ultimul fisier CSS).
   Selectorii sunt prefixati cu clasa sectiunii ca sa bata cu
   specificitate <style>-ul inline din home.blade.php.
   Desktopul NU e atins: totul e in max-width media queries.
   NB: html { font-size:14px } pe acest site => folosim px, nu rem.
   ============================================================ */

@media (max-width: 768px) {

    /* ---------- 1. REFER SECTION: "Obține puncte prin recomandare." ---------- */
    .refer-section .section-header { margin-bottom: 12px !important; }

    .refer-section .section-header .title {
        font-size: 28px !important;
        line-height: 1.22 !important;
        font-weight: 800 !important;
        letter-spacing: -0.02em;
        margin-bottom: 10px !important;
    }

    /* Subtitlul "Recomandă MIXBOX unui prieten..." — div.text e IN AFARA
       .section-header, deci trebuie tintit direct */
    .refer-section .text {
        font-size: 17px !important;
        line-height: 1.6 !important;
        color: #333 !important;
        max-width: 36ch;
        margin-left: auto;
        margin-right: auto;
    }

    /* Butonul "Distribuie" — mai mare si centrat pe mobil */
    .refer-section .btn-grp { margin-top: 18px !important; }
    .refer-section .btn-grp .cmn--btn {
        font-size: 16px !important;
        font-weight: 600 !important;
        padding: 13px 24px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        border-radius: 12px;
    }

    /* Lista de share (Facebook/Instagram/WhatsApp/TikTok) — text mai mare, centrata */
    .refer-section .dropdown-menu {
        margin-left: auto !important;
        margin-right: auto !important;
    }
    .refer-section .dropdown-menu .dropdown-item {
        font-size: 16px !important;
        font-weight: 500 !important;
        padding: 10px 14px !important;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    /* ---------- 2. BIFE: "Descoperă Avantajele Unice MIXBOX!" (learn-feature) ---------- */
    /* Cutia iconitei cu bifa — mai mare (imaginea umple cutia) */
    .learn-feature-section .learn-feature-item .learn-feature-icon {
        width: 88px !important;
        height: 88px !important;
        margin-bottom: 14px !important;
    }
    .learn-feature-section .learn-feature-item .learn-feature-icon img {
        max-width: 100% !important;
        max-height: 100% !important;
    }

    /* Cardul: text mai mare (era 14px pe mobil) */
    .learn-feature-section .learn-feature-item {
        font-size: 16px !important;
        line-height: 1.55 !important;
        font-weight: 400 !important;
    }

    /* Titlul itemului: blade are class="subttle" (typo) — acoperim ambele */
    .learn-feature-section .learn-feature-item .subttle,
    .learn-feature-section .learn-feature-item .subtitle {
        font-size: 18px !important;
        font-weight: 700 !important;
        line-height: 1.3 !important;
        margin-bottom: 8px !important;
    }

    .learn-feature-section .learn-feature-item .learn-feature-item-content .text {
        font-size: 16px !important;
        line-height: 1.55 !important;
    }

    /* Bate regula inline `.learn-feature-content .text {0.95rem!important}` (13.3px) */
    .learn-feature-section .learn-feature-content .text {
        font-size: 16px !important;
        line-height: 1.6 !important;
    }

    /* ---------- 3. BIFE: "De ce este MIXBOX diferit?" (feature-card) ---------- */
    .special-feature-section .feature-card-icon {
        width: 78px !important;
        height: 78px !important;
    }
    .special-feature-section .feature-card-icon img { width: 100% !important; }

    .special-feature-section .feature-card-cont .subtitle {
        font-size: 22px !important;
        line-height: 1.25 !important;
    }
}

/* ---------- Telefoane mici ---------- */
@media (max-width: 480px) {
    .refer-section .section-header .title { font-size: 25px !important; }
    .refer-section .text { font-size: 16px !important; }

    .learn-feature-section .learn-feature-item .learn-feature-icon {
        width: 80px !important;
        height: 80px !important;
    }
    .special-feature-section .feature-card-icon {
        width: 70px !important;
        height: 70px !important;
    }
}

/* ================= WHY_DIFFERENT ================= */
/* ============================================================
   SPECIAL FEATURE SECTION ("De ce este MIXBOX diferit?")
   Override MOBIL: card = rand orizontal (iconita STANGA, titlu DREAPTA),
   text mai mare, aspect premium. Desktop (≥768px) neatins.
   Se incarca DUPA main.css.
   ============================================================ */

@media (max-width: 767px) {

    /* --- Titlul sectiunii: mult mai mare, premium --- */
    .special-feature-section .section-header {
        margin-bottom: 28px;
    }
    .special-feature-section .section-header .title {
        font-size: 28px;
        line-height: 1.25;
        font-weight: 800;
        letter-spacing: -0.02em;
        margin-bottom: 10px;
    }

    /* --- Lista de carduri: randuri full-width, spatiere aerisita --- */
    .special-feature-section .special-feature-wrapper {
        gap: 14px;
    }

    /* --- Cardul devine rand flex: iconita stanga, text dreapta --- */
    .special-feature-section .feature-card {
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 18px;
        width: 100%;
        padding: 18px 20px;
        border-radius: 14px;
        transform: none !important;
    }

    /* Iconita: dimensiune fixa in stanga, fara margini mostenite
       (anuleaza margin-inline-start:auto de pe desktop si
       margin-block-end:20px din media query-ul vechi ≤575px) */
    .special-feature-section .feature-card-icon {
        width: 54px;
        height: 54px;
        min-width: 54px;
        flex: 0 0 54px;
        margin: 0;
    }
    .special-feature-section .feature-card-icon img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    /* Textul: langa iconita, centrat vertical */
    .special-feature-section .feature-card-cont {
        margin-top: 0;
        flex: 1 1 auto;
        min-width: 0;
    }
    .special-feature-section .feature-card-cont .subtitle {
        font-size: 19px;
        line-height: 1.35;
        font-weight: 700;
        margin: 0;
    }

    /* Blade-ul insereaza un <br> dupa primul cuvant al titlului
       (design desktop cu cuvinte stivuite). Pe mobil il ascundem
       ca titlul sa curga pe un singur rand langa iconita. */
    .special-feature-section .feature-card-cont .subtitle br {
        display: none;
    }
}

/* --- Ajustari fine pe telefoane inguste --- */
@media (max-width: 575px) {
    .special-feature-section .section-header .title {
        font-size: 26px;
    }
    .special-feature-section .feature-card {
        padding: 16px 18px;
        gap: 16px;
    }
    .special-feature-section .feature-card-icon {
        width: 48px;
        height: 48px;
        min-width: 48px;
        flex: 0 0 48px;
    }
    .special-feature-section .feature-card-cont .subtitle {
        font-size: 18px;
    }
}

/* ================= STATS_COUNTER ================= */
/* ==========================================================================
   MixBOX override — banda de statistici dupa hero + counter-section pe mobil
   A se incarca DUPA main.css (fisier de override sau in blocul <style> din blade)
   ========================================================================== */

/* --------------------------------------------------------------------------
   1) BANDA DE STATISTICI (noua) — .mx-stats-section, imediat dupa hero
   Desktop: 4 coloane cu separatoare verticale. Mobil: grila 2x2, scris mare.
   -------------------------------------------------------------------------- */
.mx-stats-section {
    padding: 6px 0 46px;
    position: relative;
    z-index: 2;
}

.mx-stats-band {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-items: stretch;
    background: #ffffff;
    border: 1px solid #d9f3e6;
    border-radius: 24px;
    box-shadow: 0 18px 45px rgba(0, 138, 73, 0.10);
    padding: 30px 14px;
    position: relative;
    overflow: hidden;
}

/* linie gradient premium pe muchia de sus */
.mx-stats-band::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--base-1, #039d55) 0%, var(--base-2, #04f485) 100%);
}

.mx-stat {
    position: relative;
    text-align: center;
    padding: 8px 14px;
}

/* separator vertical intre coloane (desktop) */
.mx-stat + .mx-stat::before {
    content: "";
    position: absolute;
    inset-inline-start: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 58%;
    width: 1px;
    background: #e3f4eb;
}

.mx-stat-value {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 3px;
    font-weight: 800;
    font-size: 40px;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: #10241a;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

.mx-stat-plus {
    color: var(--base-1, #039d55);
    font-size: 0.7em;
    font-weight: 800;
    transform: translateY(-0.1em);
}

/* varianta cu text (Oradea) */
.mx-stat-value--text {
    font-size: 30px;
    align-items: center;
    gap: 7px;
}
.mx-stat-pin { width: 0.62em; height: auto; flex: 0 0 auto; }
.mx-stat-pin path { fill: var(--base-1, #039d55); }

.mx-stat-label {
    margin-top: 7px;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #64766d;
}

/* --- mobil: grila 2x2, numere mari --- */
@media (max-width: 767px) {
    .mx-stats-section { padding: 0 0 8px; }
    .mx-stats-band {
        grid-template-columns: 1fr 1fr;
        border-radius: 20px;
        padding: 10px 0;
        box-shadow: 0 12px 34px rgba(0, 138, 73, 0.12);
    }
    .mx-stat { padding: 20px 10px; }

    /* separatoarele se recompun pentru 2x2 */
    .mx-stat + .mx-stat::before { display: none; }
    .mx-stat:nth-child(2n)::before {
        content: "";
        display: block;
        position: absolute;
        inset-inline-start: 0;
        top: 50%;
        transform: translateY(-50%);
        height: 52%;
        width: 1px;
        background: #e3f4eb;
    }
    .mx-stat:nth-child(n + 3)::after {
        content: "";
        position: absolute;
        top: 0;
        left: 12%;
        right: 12%;
        height: 1px;
        background: #e3f4eb;
    }

    .mx-stat-value { font-size: clamp(30px, 8.6vw, 38px); }
    .mx-stat-value--text { font-size: clamp(22px, 6.4vw, 28px); }
    .mx-stat-label { font-size: 12px; margin-top: 5px; letter-spacing: 0.06em; }
}

@media (max-width: 360px) {
    .mx-stat-value { font-size: 27px; }
    .mx-stat-value--text { font-size: 20px; }
    .mx-stat-label { font-size: 11px; }
}

/* --------------------------------------------------------------------------
   2) COUNTER-SECTION EXISTENT — polish DOAR pe mobil/tableta
   (numere mai mari, etichete lizibile — baza avea #cfcfcf pe alb)
   Desktop (>=992px) ramane neatins.
   -------------------------------------------------------------------------- */
@media (max-width: 991px) {
    .counter-wrapper { padding: 26px 16px 30px; }
    .counter-wrapper .contact-wrapper-inner .left-side { gap: 18px 0; }

    .counter-item {
        color: #64766d;          /* era #cfcfcf — ilizibil pe fundal alb */
        font-size: 14px;
        line-height: 1.35;
    }
    .counter-item .title { margin-bottom: 2px; }
    .counter-item .title span { font-size: 36px; line-height: 44px; }
    .counter-item .text {
        font-size: 12.5px;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        margin-top: 3px;
    }
    .counter-wrapper .right-side {
        font-size: 15px !important;
        border-radius: 14px !important;
    }
}
