/* ==========================================
   HEADER + MOBILE MENU (DESKTOP & MOBILE)
========================================== */

/* ----- BASE HEADER STYLES ----- */

header.is-collapsed .header__nav--list,
header.is-collapsed .header__lang--divider-medium,
header.is-collapsed .header__nav--lang {
    display: none;
}

header.is-collapsed .header__hamburger {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 4px;
    z-index: 1001;
    position: relative;
}

header.is-collapsed .header__hamburger--line {
    display: block;
    width: 24px;
    height: 1.5px;
    background-color: var(--color-text);
    transition: transform 0.3s ease, opacity 0.3s ease;
    transform-origin: center;
}

header.is-collapsed .header__hamburger[aria-expanded="true"] .header__hamburger--line:nth-child(1) {
    transform: translateY(6.5px) rotate(45deg);
}

header.is-collapsed .header__hamburger[aria-expanded="true"] .header__hamburger--line:nth-child(2) {
    opacity: 0;
    transform: scaleX(0);
}

header.is-collapsed .header__hamburger[aria-expanded="true"] .header__hamburger--line:nth-child(3) {
    transform: translateY(-6.5px) rotate(-45deg);
}

header.is-collapsed .header__mobile--menu {
    position: fixed;
    inset: 0;
    background-color: var(--color-background-light);
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.4s ease, visibility 0.4s ease;

    /* containerul exterior NU mai e flex, doar scroll simplu */
    display: block;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

/* wrapper nou, care face centrarea prin min-height, nu prin flex pe containerul cu scroll */
header.is-collapsed .header__mobile--menu-nav {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    /* fallback pt. browsere vechi */
    min-height: 100dvh;
    /* valoarea corectă pt. browsere moderne */
    padding: 6rem 0;
    box-sizing: border-box;
}


header.is-collapsed .header__mobile--menu.is-open {
    opacity: 1;
    visibility: visible;
}

header.is-collapsed .header__mobile--menu-list {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4.8rem;
    text-align: center;
}

header.is-collapsed .header__mobile--menu-link {
    font-family: var(--font-sans);
    text-transform: uppercase;
    font-size: clamp(1.28rem, 3.5vw, 2.24rem);
    font-weight: 400;
    letter-spacing: 0.04em;
    color: var(--color-text);
    transition: opacity 0.3s ease;
}

header.is-collapsed .active-mobile {
    border-bottom: 1px solid var(--color-accent);
    padding-bottom: 3px;
}


header.is-collapsed .header__mobile--menu-link:hover {
    opacity: 0.5;
}

header.is-collapsed .header__mobile--menu-lang {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.8rem;
    margin-top: 4.8rem;
    font-family: var(--font-sans);
    font-size: 1.28rem;
    font-weight: 500;
    letter-spacing: 0.05em;
}

header.is-collapsed .header__mobile--menu-lang-link {
    opacity: 0.5;
    transition: opacity 0.3s ease;
}

header.is-collapsed .header__mobile--menu-lang-link.active,
header.is-collapsed .header__mobile--menu-lang-link:hover {
    opacity: 1;
}


/* ==========================================
   BREAKPOINT 1200px
========================================== */

@media (max-width: 1200px) {
    .process-container {
        display: grid;
        /* Creează exact două coloane egale */
        grid-template-columns: repeat(2, 1fr);
        /* Spațiere generoasă între rânduri și coloane */
        gap: 60px 40px;
    }

    /* Asigură-te că pașii folosesc întreaga lățime a celulei de grid */
    .process-step {
        width: 100%;
        min-width: 0;
    }

    /* Ascundem săgețile intermediare deoarece modelul linear orizontal nu mai funcționează într-un grid 2x2 */
    .process-arrow {
        display: none;
    }

    /* Ajustăm descrierea ca să nu rămână prea mult spațiu pe ecrane medii */
    .step-desc {
        max-width: 100%;
    }

    .classroom__training-container {
        grid-template-columns: 1fr 1fr;
        /* Trece în format 2 coloane pe tablete mari */
        gap: 40px;
    }

    .classroom__intro-column {
        grid-column: span 2;
        /* Introducerea ocupă tot lățimea sus */
        margin-bottom: 20px;
    }

    .art__articles-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 30px 30px;
    }

    .art__article-title {
        min-height: auto;
    }

    .art__article-link-arrow {
        width: 12px;
        height: 12px;
    }

    .art__fr-container {
        grid-template-columns: 350px 1fr 340px;
        /* Micșorează proporțiile treptat */
    }

    .art__fr-content-box {
        padding: 30px 40px;
    }

    .art__toate-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .spadesign__d--column-left {
        padding-left: 170px;
        padding-right: 30px;
    }

    .spadesign__d--column-right {
        padding-left: 30px;
        padding-right: 190px;
    }

    .spadesign__e--container {
        padding: 50px 40px;
    }

    .spadesign__e--graphics {
        width: 260px;
    }

    /* Micșorăm imaginea pe ecrane medii */
}

/* ==========================================
   Responsive: Mobile 1024px
========================================== */

@media (max-width: 1024px) {

    .footer__container {
        grid-template-columns: 1fr 1fr;
        padding: 0 24px;
    }

    .footer__brand {
        grid-column: 1 / -1;
    }

    .footer__col+.footer__col {
        border-left: none;
        padding-left: 0;
    }

    .expertise-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .section__metodologia {
        grid-template-columns: 1fr;
        row-gap: 48px;
        padding: 48px 28px;
    }

    .divider {
        width: 100%;
        height: 1px;
    }

    .steps {
        grid-template-columns: 1fr;
        row-gap: 28px;
    }

    .step-desc {
        max-width: 100%;
    }

    .step-arrow {
        display: none;
    }

    .step {
        padding-right: 0;
    }

    .expertise {
        flex-direction: column;
    }

    .expertise__content,
    .expertise__media {
        flex: 1 1 auto;
    }

    .expertise__media {
        height: 360px;
    }

    .expertise__content {
        padding: 56px 7%;
    }

    .expertise__media::after {
        background: linear-gradient(to bottom, var(--color-background-light), transparent);

    }

    .classroom__benefits-container {
        flex-direction: column;
        gap: 50px;
    }

    .classroom__vertical-divider {
        width: 100%;
        height: 1px;
        /* Linia devine orizontală pe ecrane mai mici */
    }

    .classroom__outcomes-block {
        padding-left: 0;
    }

    .classroom__outcomes-grid {
        grid-template-columns: repeat(3, 1fr);
        /* 3 coloane pe tabletă */
    }

    .art__resources-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 40px 0;
    }

    .art__resource-card {
        border-right: none !important;
        border-bottom: 1px solid var(--color-divider-dark);
        padding-bottom: 30px;
    }

    .art__resources-grid .art__resource-card:nth-child(4),
    .art__resources-grid .art__resource-card:nth-child(5) {
        border-bottom: none;
        padding-bottom: 0;
    }

    .art__rec-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px 30px;
    }

    .art__rec-card-title {
        min-height: auto;
        margin-bottom: 10px;
    }

    .art__split-container {
        grid-template-columns: 1fr;
    }

    /* Resetează grid-ul interior din blocul stânga */
    .art__block-left {
        grid-template-columns: 1fr;
        flex-direction: column;
    }

    /* Ascunde imaginea pe mobil (opțional) */
    .art__block-image-wrapper {
        display: none;
    }

    /* Padding redus pentru ambele blocuri */
    .art__block-left .art__block-content,
    .art__block-right .art__block-content {
        padding: 32px 20px;
        max-width: 100%;
    }

    /* Formularul pe coloană */
    .art__split-form {
        flex-direction: column;
        gap: 12px;
    }

    .art__split-input {
        margin-right: 0;
        width: 100%;
        box-sizing: border-box;
    }

    .art__split-btn {
        width: 100%;
        padding: 14px 20px;
        white-space: normal;
    }

    .art__block-left {
        grid-template-columns: 1.2fr 0.8fr;
        border-bottom: 1px solid var(--color-divider-dark);
    }

    .art__partners-section {
        padding: 40px 64px 20px;
    }

    .art__partners-logos {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        /* Împarte logourile pe 2 rânduri de câte 3 */
        gap: 40px 30px;
        padding: 0;
    }

    .art__features-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 0;
        /* Păstrăm 0 pentru ca liniile să se unească perfect în centru */
    }

    .art__feature-card {
        padding: 40px 30px;
        /* Adăugăm padding sus/jos egal pentru o cruce simetrică */
        border: none !important;
        /* Resetăm complet bordurile vechi */
    }

    /* Linia verticală din centru (aplicată doar pe prima coloană: cardurile 1 și 3) */
    .art__features-grid .art__feature-card:nth-child(odd) {
        border-right: 1px solid var(--color-divider-dark) !important;
    }

    /* Linia orizontală din centru (aplicată doar pe primul rând: cardurile 1 și 2) */
    .art__features-grid .art__feature-card:nth-child(1),
    .art__features-grid .art__feature-card:nth-child(2) {
        border-bottom: 1px solid var(--color-divider-dark) !important;
    }

    .spadesign__b--timeline {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 30px 15px;
    }

    .spadesign__b--arrow {
        display: none;
        /* Ascundem săgețile text pentru a păstra layout-ul curat */
    }

    .spadesign__f--container {
        padding: 40px;
    }

}

/* ==========================================
   Responsive: Mobile 992px
========================================== */

/* Responsive: Tablet */
@media (max-width: 992px) {

    .header__logo {
        line-height: 0.6;
    }

    .header__logo--title {
        font-size: 3.3rem;
    }

    .header__logo--sub {
        font-size: 0.89rem;
        font-weight: 600;
    }

    .hero {
        flex-direction: column;
        height: auto;
    }

    .hero__text--side {
        padding: 40px 20px;
        text-align: center;
        padding-bottom: 0;
    }

    .hero__image--side {
        height: 50vh;
        width: 100%;
        order: -1;
    }

    .hero__divider {
        margin: 30px auto;
    }

    .gradient-overlay {
        width: 100%;
        height: 100%;
        background: linear-gradient(to bottom, transparent 30%, var(--color-background-light) 100%);
    }

    .buttons {
        flex-direction: column;
        align-items: center;
    }

    .btn-solid {
        margin-right: 0;
        margin: 20px;
        margin-bottom: 25px;
        padding: clamp(12px, 1vw, 15px) clamp(20px, 2vw, 30px);
    }

    .btn-outline {
        padding: clamp(12px, 1vw, 15px) clamp(20px, 2vw, 30px);
    }

    /* LINIA VERTICALĂ CENTRALĂ */
    /* Pentru celula 1 (sus-stânga): linia merge de la mijloc în jos, scurtată doar sus */
    .int__stat-cell:nth-child(1)::after {
        content: "";
        position: absolute;
        right: 0;
        top: 30px;
        /* Scurtată cu 30px în partea de sus */
        height: calc(100% - 30px);
        /* Merge până jos, în centrul + -ului */
        width: 1px;
        background-color: var(--color-divider-dark);
    }

    /* Pentru celula 3 (jos-stânga): linia pornește din centru și se termină mai devreme jos */
    .int__stat-cell:nth-child(3)::after {
        content: "";
        position: absolute;
        right: 0;
        top: 0;
        /* Pornește exact din centru ca să se unească cu celula 1 */
        height: calc(100% - 30px);
        /* Se oprește cu 30px înainte de final */
        width: 1px;
        background-color: var(--color-divider-dark);
    }

    /* LINIA ORIZONTALĂ CENTRALĂ */
    /* Pentru celula 1 (sus-stânga): linia pornește mai târziu din stânga și merge până în centru */
    .int__stat-cell:nth-child(1)::before {
        content: "";
        position: absolute;
        bottom: 0;
        left: 30px;
        /* Scurtată cu 30px în stânga */
        width: calc(100% - 30px);
        /* Merge până în marginea din dreapta (centru) */
        height: 1px;
        background-color: var(--color-divider-dark);
    }

    /* Pentru celula 2 (sus-dreapta): linia pornește din centru și se termină mai devreme în dreapta */
    .int__stat-cell:nth-child(2)::before {
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        /* Pornește exact din centru ca să se unească cu celula 1 */
        width: calc(100% - 30px);
        /* Se oprește cu 30px înainte de finalul din dreapta */
        height: 1px;
        background-color: var(--color-divider-dark);
    }

    .features-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .feature-item {
        border-right: none;
        border-bottom: 1px solid var(--color-divider);
        padding: clamp(12px, 3vw, 24px) clamp(8px, 3vw, 20px);
    }

    .feature-item:nth-child(odd) {
        border-right: 1px solid var(--color-divider);
    }

    .feature-item:nth-last-child(-n+2) {
        border-bottom: none;
    }

    .ws-section {
        padding: 40px 10px 25px;
        margin-bottom: 0rem;
    }

    .ws-grid {
        grid-template-columns: 1fr;
    }

    .ticker-track {
        flex-wrap: nowrap;
        justify-content: flex-start;
        animation: tickerMove 30s linear infinite;
    }

    #blog {
        padding: 48px 10px;
        padding-bottom: 0;
    }

    .blog-left {
        align-items: center;
        text-align: center;
        padding-top: 0;
    }

    .blog-inner {
        margin-bottom: 0;
        padding-bottom: 10px;
        grid-template-columns: 1fr;
        gap: 36px;
    }

    .blog-all-link {
        grid-column: unset;
        justify-self: center;
        margin: 0 auto;
    }

    .blog-cards {
        grid-template-columns: 1fr;
        gap: 1.2rem;
    }

    #wellness-trends {
        padding: 48px 24px;
        overflow-x: hidden;
        /* previne scroll orizontal */
    }

    .wt-left {
        text-align: center;
    }

    .wt-inner {
        grid-template-columns: 1fr;
        gap: 36px;
    }

    .wt-items {
        grid-template-columns: repeat(3, 1fr);
        /* 3 coloane → 3+3+1, mai stabil */
        gap: 1.2rem;
        padding: 0;
        margin-bottom: 10px;
    }

    .wt-item {
        border-left: 0;
        padding: 0 0.4rem;
        /* padding mai mic pe mobil */
    }

    #about-founder {
        padding: 0;
        margin: 0;

    }

    .af-inner {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .af-img {
        align-self: center;
        margin: 0 auto;
    }

    .af-bio {
        padding: 5rem;
    }

    .af-quote-wrap {
        padding-top: 32px;
        padding-left: 45px;
        border-left: none;
        border-top: 1px solid #c8c8c0;
    }

    #clients {
        padding: 48px 24px;
        overflow-x: hidden;
    }

    .cl-logos {
        grid-template-columns: repeat(3, 1fr);
        /* 3+3+1 mai echilibrat decât 4+3 */
        gap: 0.8rem;
    }

    .cl-logo {
        border-left: none;
        padding: 1.2rem 0.8rem;
    }

    .cl-logo-name {
        font-size: 0.9rem;
        letter-spacing: 0.1em;
    }

    .cl-logo-sub {
        font-size: 0.7rem;
        letter-spacing: 0.08em;
    }

    .footer {
        padding: 36px 0px;
    }


    .footer-inner {
        grid-template-columns: 1fr;
        text-align: center;
        gap: 24px;
    }

    .footer__bottom {
        flex-direction: column;
        gap: 10px;
        text-align: center;
        padding: 16px 24px;
    }

    #trust-stats {
        grid-template-columns: repeat(2, 1fr);
        padding-left: 10px;
        padding-right: 10px;
    }

    .stat-cell:nth-child(2) {
        border-right: none;
    }

    .stat-cell:nth-child(3) {
        border-right: 1px solid var(--color-divider-dark);
        border-top: 1px solid var(--color-divider-dark);
    }

    .stat-cell:nth-child(4) {
        border-top: 1px solid var(--color-divider-dark);
    }

    #core-services {
        grid-template-columns: 1fr;
        padding: 0;
        gap: clamp(24px, 4vw, 40px);
    }

    .core-left {
        padding: clamp(60px, 5vw, 64px) clamp(16px, 5vw, 40px) 20px;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    .core-left h2 {
        font-weight: 400;
        font-size: clamp(26px, 3.2vw, 48px);
        line-height: 1.15;
        margin: 0 0 clamp(14px, 1.5vw, 20px);
        max-width: 100%;
    }

    .core-left>p {
        font-size: clamp(12px, 1.1vw, 14px);
        line-height: 1.7;
        margin: 0;
    }

    .services-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: clamp(6px, 1.5vw, 10px);
        padding: 10px;
    }

    .service-card {
        padding: 0;
    }

    .card-body {
        padding: clamp(16px, 3vw, 24px) clamp(12px, 2.5vw, 20px);
    }

    .core-left .label-tag {
        padding-top: 0;
    }

    #philosophy {
        grid-template-columns: 1fr;
    }

    .philosophy-img {
        display: block;
    }

    .philosophy-content {
        border-right: none;
        padding: clamp(24px, 4vw, 40px) clamp(16px, 5vw, 40px) 0;
    }

    .philosophy-points {
        flex-direction: column;
        padding: 0 clamp(16px, 5vw, 40px) 30px;
        gap: 0;
    }

    .philo-point {
        border-right: none;
        padding-right: 0;
        padding-bottom: 0;
    }

    .philo-point:last-child {
        border-bottom: none;
        padding-bottom: 0;
    }

    .philo-point::after {
        display: none;
    }

    .expertise-left .label-tag {
        padding-top: 0;
    }

    #expertise {
        grid-template-columns: 1fr;
        gap: clamp(24px, 4vw, 40px);
    }

    .expertise-left {
        padding: 4rem 2.2rem 0;
        margin-left: 0;
    }

    .expertise-grid {
        grid-template-columns: repeat(2, 1fr);
        padding: 0 2.2rem 2.2rem;
        /* jos + laterale egale cu .expertise-left */
        border-left: none;
        gap: 1.2rem;
    }

    .expertise-card {
        background: var(--color-background-soft);
        padding-bottom: clamp(18px, 2vw, 28px);
        /* păstrează spațiul intern al cardului */
    }

    .expertise-card::after {
        display: none;
        /* elimină divizorul vertical pe mobil — nu mai are sens cu gap real */
    }

    .spa-columns {
        flex-wrap: wrap;
    }

    .spa-column {
        flex: 1 1 50%;
        border-right: none;
        border-bottom: 1px solid #4a4138;
        padding: 28px 16px;
    }

    .spa-column-last {
        border-bottom: none;
    }

    .spa-header-title {
        font-size: 16px;
        letter-spacing: 3px;
        white-space: normal;
        text-align: center;
    }

    .spa-header-line {
        display: none;
    }

    .expertise-section {
        padding: 0 10px;
    }

    .expertise-container {
        width: 100%;
        padding: 40px 0;

    }

    /* Titlul + liniile decorative */
    .expertise__header--section {
        flex-direction: column;
        margin-bottom: 30px;
    }

    .expertise__header--section-line {
        width: 60%;
    }

    .expertise__header--section-title {
        font-size: 1.6rem;
        margin: 0;
        letter-spacing: 0.12em;
        white-space: normal;
        text-align: center;
    }

    /* GRID pe 2 coloane */
    .expertise__columns-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        position: relative;
        gap: 0;
    }

    /* Coloanele individuale */
    .expertise__grid--column {
        border: none;
        padding-top: 2rem;
        padding-bottom: 2rem;
    }

    /* Lista */
    .expertise__grid--column li {
        margin-bottom: 1.2rem;
        padding-left: 18px;
    }


    .expertise__grid--column:nth-child(1) {
        border-bottom: 1px solid var(--color-divider-dark);
    }

    .expertise__grid--column:nth-child(2) {
        border-bottom: 1px solid var(--color-divider-dark);
        border-right: none;
    }

    .expertise__grid--column:nth-child(3) {
        padding-top: 4rem;
        padding-bottom: 0;
    }

    .expertise__grid--column:nth-child(4) {
        padding-top: 4rem;
        padding-bottom: 0;
    }


    /* Container devine coloană */
    .strategic-container {
        flex-direction: column;
    }

    /* Panourile devin full-width */
    .strategic-panel {
        padding: 40px 20px;
    }

    .strategic__panel-content {
        max-width: 100%;
        text-align: left;
    }

    /* Titluri */
    .strategic__panel-content h2 {
        font-size: 1.8rem;
        letter-spacing: 2px;
        margin-bottom: 20px;
    }

    /* Divider */
    .strategic__divider {
        width: 6rem;
        margin-bottom: 2rem;
    }

    .strategic__after_space {
        height: 0;
    }

    /* Paragrafe */
    .strategic-description-left,
    .strategic-description-right {
        font-size: 1.2rem;
        max-width: 100%;
        margin-bottom: 30px;
    }

    /* FLOW STEPS (stânga) — devine coloană */
    /* Transformăm flow-ul în grid 2 coloane */
    .strategic__flow-steps {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 25px 15px;
        margin-bottom: 40px;
    }

    /* Fiecare step devine item de grid */
    .strategic-step {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        width: 100%;
    }

    /* Eliminăm punctele dintre elemente */
    .strategic-dot {
        display: none;
    }

    /* Iconițe mai mici */
    .strategic-step .strategic__feature-icon {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
    }

    .strategic-step .strategic__feature-icon img {
        display: block;
        width: 30px;
        height: 30px;
        margin: 0 auto;
    }

    .strategic-label {
        font-size: 0.9rem;
        text-align: center;
    }

    /* FOOTER TEXT */
    .strategic__footer-text,
    .strategic__footer--text-serif {
        font-size: 1rem;
        line-height: 1.5;
    }

    /* GRID FEATURES (dreapta) — devine 2 coloane */
    .strategic__features-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
        margin-bottom: 40px;
    }

    .strategic__feature-item {
        text-align: center;
    }

    .strategic__feature-icon img {
        width: 40px;
        height: 40px;
    }

    .strategic__feature-label {
        font-size: 0.9rem;
        line-height: 1.4;
    }

    .rezumat-section {
        padding: 40px 20px;
    }

    .rezumat-title {
        font-size: calc(var(--title-h3) * 0.75);
        letter-spacing: 2px;
        margin-bottom: 2rem;
    }

    .rezumat-text {
        font-size: calc(var(--text-bigger) * 0.8);
        line-height: 1.8;
    }

    .rezumat-dot {
        transform: scale(0.55);
        /* ușor mai mic pe mobil */
        margin: 0 4px;
    }

    .portfolio-section {
        padding: 30px 10px;
    }

    .portfolio-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px 20px;
    }

    .portfolio-filters {
        gap: 10px;
        margin-bottom: 2.5rem;
    }

    /* Reducem uniform padding-ul butoanelor pe ecrane mai mici */
    .filter-btn {
        padding: 14px 18px;
        font-size: 0.85rem;
    }

    /* „TOATE ȚĂRILE” se rupe curat pe rândul următor, având proporții perfecte */
    .portfolio-filter-select {
        margin-left: 0;
        padding: 10px 18px;
        margin-top: 5px;
    }

    .arrow-right-svg {
        margin-left: 0 !important;
        width: 18px !important;
        height: 18px !important;
    }

    .portfolio-grid {
        gap: 10px 10px;

    }

    .process-container {
        grid-template-columns: 1fr;
        /* Trece pe un singur rând vertical */
        gap: 40px;
    }

    .process-section {
        padding: 30px 24px;
        /* Reduce spațiul gol pe telefoane */
    }

    .step-desc {
        margin-left: 0;
        /* Aliniază descrierea uniform sub cifre pe ecrane foarte mici */
    }

    .hero__audit-card {
        display: none;
    }

    .hero__audit-card-servicii {
        display: none;
    }

    .mobile__hero--audit-card {
        background-color: var(--color-background-dark);
        padding: 3rem;
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }

    .classroom__features-section {
        padding: 40px 10px;
    }

    .classroom__features-container {
        flex-direction: column;
        gap: 40px;
        padding: 0 10px;
        align-items: flex-start;
    }

    .classroom__feature-icon {
        width: 40px;
        height: auto;
    }

    .classroom__feature-item:not(:last-child)::after {
        display: none;
    }

    .classroom__feature-item {
        width: 100%;
    }

    .classroom__training-section {
        padding: 40px 10px 10px;
    }

    .classroom__training-container {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .classroom__btn {
        align-self: center;
    }

    .classroom__intro-column {
        grid-row: auto;
        grid-column: span 1;
        padding: 20px;
    }

    .classroom__card-title,
    .classroom__card-desc {
        min-height: auto;
        /* Elimină înălțimea minimă pe mobil */
    }

    .classroom__benefits-section {
        padding: 40px 20px;
    }

    .classroom__outcomes-grid {
        grid-template-columns: repeat(2, 1fr);
        /* 2 coloane pe telefoane mobile */
        gap: 30px 15px;
    }

    .classroom__cta-container {
        grid-template-columns: 1fr;
        /* Comută pe o singură coloană pe tablete/mobil */
    }

    .classroom__cta-content {
        padding: 60px 40px;
    }

    .classroom__cta-image-wrapper {
        height: 300px;
        /* Reduce înălțimea imaginii pe ecrane mici */
        min-height: auto;
    }

    .classroom__cta-actions {
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
    }

    .classroom__cta-overlay {
        background: linear-gradient(to bottom, var(--color-background-dark), transparent);
    }

    .classroom-highlights__section {
        padding: 40px 20px;
    }

    .classroom-highlights__container {
        flex-direction: column;
        gap: 35px;
        align-items: flex-start;
        /* Aliniere corectă la stânga pe mobil pentru lizibilitate */
    }

    .classroom-highlights__item:not(:last-child)::after {
        display: none;
        /* Ascunde liniile separatoare verticale pe mobil */
    }

    .classroom-highlights__item {
        width: 100%;
    }

    .classroom-cta-banner__section {
        padding: 30px 20px;
    }

    .classroom-cta-banner__container {
        flex-direction: column;
        align-items: stretch;
        /* ocupă toată lățimea */
        gap: 25px;
        padding: 0;
    }

    .classroom-cta-banner__content {
        align-items: flex-start;
    }

    .classroom-cta-banner__action {
        width: 100%;
    }

    .classroom-cta-banner__button {
        width: 100%;
        display: flex;
        justify-content: center;
        white-space: normal;
        font-size: 0.85rem;
        letter-spacing: 0.08em;
        padding: 14px 16px;
        box-sizing: border-box;
    }

    .art__resources-section {
        padding: 40px 20px;
    }

    .art__resources-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        border-bottom: none;
        padding-bottom: 0;
    }

    .art__resource-card {
        align-items: center;
        text-align: center;
        padding: 0;
        border: none;
    }

    .art__card-text {
        max-width: 300px;
    }

    .art__resource-card:not(:last-child) {
        border: none;
    }

    .art__card-title {
        justify-content: center;
        min-height: auto;
    }

    .art__recommended-section {
        padding: 40px 30px;
    }

    .art__rec-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .art__rec-image-wrapper {
        margin-bottom: 15px;
    }

    .art__block-left .art__block-content {
        padding: 40px 30px;
    }

    .art__block-right .art__block-content {
        padding: 40px 30px;
    }

    .art__block-left {
        grid-template-columns: 1fr;
    }

    .art__block-image-wrapper::before {
        width: 100%;
        height: 35%;
        background: linear-gradient(to bottom, var(--color-background-accent), transparent);
        /* Schimbă degradeul de sus în jos pe mobil */
    }

    .art__partners-logos {
        grid-template-columns: repeat(2, 1fr);
        /* Împarte logourile în 3 rânduri de câte 2 */
        gap: 35px 20px;
    }

    .art__partners-title {
        font-size: 1rem;
        letter-spacing: 2px;
    }

    .art__partners-subtitle {
        font-size: 0.78rem;
        padding: 0 10px;
    }

    .art__cta-dark-section {
        padding: 40px 40px 20px;
    }

    .art__cta-dark-title {
        font-size: 1.15rem;
        letter-spacing: 3px;
    }

    .art__cta-dark-text {
        font-size: 0.85rem;
        margin-bottom: 30px;
    }

    .art__desktop-only {
        display: none;
        /* Textul curge natural pe mobil */
    }

    .art__articles-section {
        padding: 40px 10px 10px;
    }

    .art__articles-grid,
    .art__toate-grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 10px 10px;
    }

    .art__articles-header {
        margin-bottom: 20px;
    }

    .art__free-resource-section {
        padding-bottom: 60px;
    }

    /* Trece din Grid în Flex vertical pentru aspectul curat de mobil */
    .art__fr-container {
        display: flex;
        flex-direction: column;
    }

    /* Imaginea sus, complet lipită stânga-dreapta */
    .art__fr-image-box {
        width: 100%;
        height: auto;
        aspect-ratio: 4 / 3;
        margin-bottom: 35px;
    }

    .art__fr-image-box::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(to top,
                var(--color-background-accent) 0%,
                transparent 100%);
        pointer-events: none;
        /* nu blochează click-uri/interacțiuni */
    }

    .art__fr-form-box {
        width: 100%;
        max-width: 400px;
        padding: 0 32px;
        padding-top: 20px;
    }

    .art__fr-form {
        width: 100%;
        min-width: auto;
        margin: 0;
    }

    .art__features-section {
        padding: 50px 24px;
    }

    .art__features-grid {
        grid-template-columns: 1fr;
        gap: 45px;
        /* Adăugăm spațiu vertical între carduri acum că nu mai avem linii */
    }

    .art__feature-card {
        padding: 0;
        /* Forțăm eliminarea absolut tuturor bordurilor setate anterior */
        border: none !important;
    }

    .art__features-grid .art__feature-card:nth-child(1),
    .art__features-grid .art__feature-card:nth-child(2) {
        border: none !important;
    }

    .art__feature-icon-box {
        flex: 0 0 40px;
        height: 40px;
        margin-right: 15px;
    }

    .art__feature-title {
        margin-bottom: 10px;
    }

    .gallery-grid {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
        grid-auto-rows: 100px;
        grid-auto-flow: dense;
        gap: 5px;
    }

    #portfolio {
        padding: 40px 0 10px;
    }

    .portfolio__header {
        padding: 20px;
    }

    .portfolio__grid-wrap {
        padding: 10px 10px 0;
    }

    .portfolio__projects-grid {
        grid-template-columns: 1fr;
        gap: 6px;
    }

    .portfolio__card-body {
        padding: 28px 10px 28px;
    }

    .portfolio__card-arrow {
        opacity: 1;
    }

    .modal {
        margin: 0;
    }

    #modalGallery {
        padding-top: 36px;
    }

    .modal-content {
        padding: 20px;
    }

    .modal-body {
        padding: 20px;
    }

    .modal-close {
        right: 20px;
        background: #fff;
        border-radius: 50%;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.25);
        color: #333;
    }

    .modal-close:hover {
        color: var(--color-accent);
        box-shadow: 0 4px 14px rgba(0, 0, 0, 0.3);
    }

    .gallery-grid {
        grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
        grid-auto-rows: 50px;
        gap: 5px;
    }

    .gold-line {
        margin: 0 20px 20px;
    }

    .nav-btn {
        display: none;
    }

    .lightbox {
        padding: 0px;
    }

    .lightbox-content {
        margin: 10px;
    }

    .close-btn {
        position: absolute;
        top: 10px;
        right: 10px;
    }

    #proj {
        padding: 4rem 1rem 2rem;
    }

    .proj-header {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 2rem;
        margin-bottom: 2.5rem;
    }

    .proj-header-center {
        gap: 1rem;
    }

    .proj-grid {
        grid-template-columns: 1fr;
        gap: 1.6rem;
    }

    .art__modal {
        padding: 0;
    }

    .art__modal-backdrop {
        display: none;
    }

    .art__modal-close {
        position: absolute;
        top: 10px;
        right: 15px;
        width: 40px;
        height: 40px;
        background-color: #ffffff;
        border-radius: 50%;

        display: flex;
        align-items: center;
        /* Centrare pe verticală */
        justify-content: center;
        /* Centrare pe orizontală */

        text-align: unset;
        line-height: unset;
        text-indent: unset;

        color: #333333;
        cursor: pointer;
        border: none;
        z-index: 10010;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
        transition: transform 0.2s ease, box-shadow 0.2s ease;
    }

    .art__modal-close svg {
        width: 22px;
        height: 22px;
        display: block;
    }

    .art__modal-close:hover {
        color: var(--color-accent);

        box-shadow: 0 6px 16px rgba(0, 0, 0, 0.22);
    }

    .art__modal-content article.postare {
        padding: 1px;
    }

    .postare-galerie {
        margin: 35px 20px;
    }

    article.postare h1 {
        font-size: 2rem;
        padding: 20px 20px 0px;
    }

    article.postare p,
    article.postare ol {
        padding-left: 20px;
        padding-right: 20px;
    }

    .spadesign__a--container {
        padding: 40px 20px 20px;
    }

    .spadesign__a--grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .spadesign__a--title {
        font-size: var(--title-h3);
    }

    .spadesign__a--subtitle {
        font-size: var(--title-h4);
    }

    .spadesign__a--card {
        padding: 30px 20px;
    }

    .spadesign__b--container {
        padding: 30px 20px;
    }

    .spadesign__b--header {
        text-align: center;
    }

    .spadesign__b--title {
        color: var(--color-text);
    }

    .spadesign__b--timeline {
        grid-template-columns: repeat(2, 1fr);
        /* 2 pe rând pentru a nu ocupa prea mult spațiu vertical */
        gap: 30px 20px;
    }

    .spadesign__c--container {
        padding: 40px 10px 30px;
        gap: 0;
    }

    .spadesign__c--rows-wrapper {
        gap: 60px;
    }

    .spadesign__c--title {
        text-align: center;
    }

    .spadesign__c--gallery {
        flex-direction: column;
        gap: 0;
    }

    .spadesign__c--image-wrapper {
        aspect-ratio: 16 / 10;
    }

    .spadesign__c--divider {
        position: relative;
        left: auto;
        top: auto;
        align-self: center;
        /* centrare explicită, sigură */
        transform: rotate(90deg);
        margin: -10px 0;
        /* doar offset vertical, fără auto orizontal */
    }

    .spadesign__d--container {
        flex-direction: column;
        min-height: auto;
    }

    .spadesign__d--column::before {
        display: none;
    }

    /* eliminăm imaginile pe mobil */

    .spadesign__d--column-left,
    .spadesign__d--column-right {
        padding: 48px 40px !important;
    }

    .spadesign__d--column-left {
        border-bottom: 0.5px solid var(--color-divider);
    }

    .spadesign__e--container {
        padding: 50px 40px;
    }

    /* Modificăm structura într-un flux vertical pe tablete */
    .spadesign__e--wrapper {
        flex-direction: column-reverse;
        gap: 50px;
    }


    /* Coloanele trec în stil listă una sub alta pe mobile */
    .spadesign__e--grid {
        flex-direction: column;
        width: 100%;
        gap: 25px;
    }

    .spadesign__e--column {
        text-align: left;
        padding: 0;
        width: 100%;
    }

    /* Eliminăm liniile verticale pe mobile */
    .spadesign__e--column:not(:last-child)::after {
        display: none;
    }

    .spadesign__e--title {
        margin-bottom: 30px;
    }

    .spadesign__f--wrapper {
        flex-direction: column;
        text-align: center;
        gap: 35px;
    }

    .spadesign__f--action,
    .spadesign__f--contact {
        justify-content: center;
        width: 100%;
        margin-left: 0;
        /* Resetăm spațiul orizontal pe mobil */
    }

    .spadesign__f--button {
        max-width: 320px;
    }
}


/* ==========================================
   Responsive: Mobile 480px
========================================== */

@media (max-width: 480px) {

    .ws-title {
        font-size: 28px;
    }

    .cl-logos {
        grid-template-columns: repeat(2, 1fr);
    }

    .portfolio-grid {
        grid-template-columns: 1fr;
    }

    .portfolio-main-title {
        font-size: 1.6rem;
    }

    .portfolio-grid {
        grid-template-columns: 1fr;
        /* O singură coloană pentru carduri */
    }

    .classroom-cta-banner__content {
        flex-direction: column;
        gap: 15px;
    }

    .classroom-cta-banner__text h2 {
        font-size: 18px;
    }

    .art__cta-dark-title {
        font-size: 1rem;
        letter-spacing: 2px;
    }

    .art__cta-dark-btn {
        width: 100%;
        /* Butonul ocupă toată lățimea disponibilă pe ecrane foarte mici */
        padding: 15px 20px;
    }

    .art__articles-header {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 12px;

    }

    .art__filtre {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        /* Forțează fix 2 coloane egale */
        gap: 12px !important;
        /* Spațiul dintre butoane (sus-jos și stânga-dreapta) */
        width: 100% !important;
        margin-top: 0;
        margin-bottom: 28px;
    }

    .art__filtru-btn {
        width: 100% !important;
        /* Butonul ocupă toată lățimea coloanei sale */
        box-sizing: border-box !important;
        border: 0.5px solid var(--color-divider-dark);
        color: var(--color-accent);
    }

    .art__articles-main-title {
        order: 1;
        width: 100%;
        margin-bottom: 8px;
    }

    .art__view-all-link {
        order: 2;
    }

    .art__article-image-wrapper {
        margin-bottom: 15px;
    }

    .art__articles-grid,
    .art__toate-grid {
        grid-template-columns: 1fr;
    }

    .spadesign__d--lists-grid {
        grid-template-columns: 1fr;
    }

    .spadesign__d--title {
        font-size: 1.8rem;
    }

}

/* ==========================================
   Responsive: Mobile 320px
========================================== */

@media (max-width: 480px) {}

/* ==========================================
   KEYFRAMES
========================================== */

@keyframes tickerMove {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}