/* FONTURI */
.hero-title-main {
    font-family: 'Sora', sans-serif;
}

/* BANDA SIGLE BRANDURI */
.brands-strip {
    background: var(--white);
    padding: 2rem 20px 1.5rem;
    border-bottom: 1px solid var(--gray-200);
    overflow: hidden;
}
.brands-marquee {
    overflow: hidden;
    width: 100%;
}
.brands-track {
    display: flex;
    align-items: center;
    gap: 0;
    animation: marquee 20s linear infinite;
    width: max-content;
}
.brands-track:hover {
    animation-play-state: paused;
}
.brand-logo {
    height: 40px;
    width: auto;
    object-fit: contain;
    filter: grayscale(20%);
    opacity: 0.85;
    transition: all 0.3s ease;
    flex-shrink: 0;
    vertical-align: middle;
    margin: 0 1.5rem;
}
.brand-logo:hover {
    filter: grayscale(0%);
    opacity: 1;
}
.brands-message {
    text-align: center;
    margin-top: 1rem;
    font-size: 0.9rem;
    color: var(--gray-600);
    font-style: italic;
}
@keyframes marquee {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

/* DE CE SA ALEGI BDK */
.de-ce {
    padding: 40px 0;
    background: var(--gray-100);
}
.de-ce-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
    margin-top: 2rem;
}
.de-ce-card {
    background: var(--white);
    padding: 2rem;
    border-radius: 12px;
    text-align: left;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* Pe mobil: padding redus ca textul sa fie aliniat cu headerul de sectiune.
   Regula trebuie sa fie AICI (new-sections.css e incarcat ULTIMUL) altfel
   o bat .de-ce-card/.serviciu-card din acelasi fisier sau sections.css. */
@media (max-width: 768px) {
    /* Carduri: padding vertical redus de la 40px la 24px pe mobil.
       Pe desktop padding-ul e 40px; pe mobil e prea mare — fiecare card
       ocupa jumătate de ecran inutil. */
    .de-ce-card {
        padding: 24px 20px;
    }
    .serviciu-card {
        padding: 24px 20px;
    }
    .de-ce-grid,
    .servicii-grid {
        padding-left: 0;
        padding-right: 0;
        gap: 16px;
    }
    .section-header > * {
        padding-left: 0;
        padding-right: 0;
    }
    /* Header sectiuni: margin-bottom redus de la 64px la 32px pe mobil. */
    .section-header {
        margin-bottom: 32px;
    }
    /* Carduri servicii: iconița 48px e prea mare pe mobil (77px cu margin).
       Reduc la 36px. Fonturile raman 17.6px (lizibile), dar spacing-ul
       dintre elemente se reduce cu 40%. */
    .serviciu-icon {
        font-size: 36px;
        line-height: 1.1;
        margin-bottom: 12px;
    }
    .serviciu-card h3 {
        margin-bottom: 8px;
        font-size: 16px;
        line-height: 1.3;
    }
    .serviciu-card > p {
        margin-bottom: 14px;
        font-size: 15px;
        line-height: 1.5;
    }
    .serviciu-features {
        gap: 6px;
    }
    .serviciu-features li {
        font-size: 15px;
        line-height: 1.5;
        padding: 4px 0;
    }
    /* Carduri de-ce: aceeasi tratare */
    .de-ce-icon {
        font-size: 32px;
        margin-bottom: 12px;
    }
    .de-ce-card h3 {
        font-size: 16px;
        margin-bottom: 8px;
    }
    .de-ce-card p {
        font-size: 15px;
        line-height: 1.5;
    }
    /* Preturi: padding redus de la 32px la 16px pe mobil.
       Tabelul are 18 randuri x (12px+12px padding + text) — fiecare rand
       consuma ~45px. Reduc padding-ul celulelor la 8px si padding-ul
       containerului la 16px. Total: de la 1740px la ~1200px. */
    .preturi-single {
        padding: 16px 12px;
    }
    .preturi-table td,
    .preturi-table th {
        padding: 8px 10px;
        font-size: 14px;
    }
    .preturi-suplimente table td {
        padding: 8px 10px;
        font-size: 14px;
    }
    .preturi-suplimente {
        margin-top: 20px;
        padding-top: 16px;
    }
    .preturi-suplimente h3,
    .preturi-deplasare h3 {
        font-size: 0.9rem;
        margin-bottom: 10px;
    }
    .preturi-deplasare p {
        font-size: 14px;
    }
    .preturi-icon {
        font-size: 32px;
        margin-bottom: 12px;
    }
    /* Zone cards si testimoniale: spacing redus */
    .zone-grid,
    .testimoniale-grid {
        gap: 16px;
    }
    .testimonial-card {
        padding: 24px 20px;
    }
}
.de-ce-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(0,0,0,0.1);
}
.de-ce-icon {
    font-size: 2.5rem;
    margin-bottom: 1rem;
}
.de-ce-card h3 {
    font-size: 1.2rem;
    margin-bottom: 0.75rem;
    color: var(--navy);
}
.de-ce-card p {
    font-size: 0.95rem;
    color: var(--gray-800);
    line-height: 1.6;
}

/* TESTIMONIALE */
.testimoniale {
    padding: 40px 0;
    background: var(--white);
}
.testimoniale-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
    margin-top: 2rem;
}
.testimonial-card {
    background: var(--gray-100);
    padding: 2rem;
    border-radius: 12px;
    border-left: 4px solid var(--navy);
}
.testimonial-stars {
    color: var(--orange-text);
    font-size: 1.1rem;
    margin-bottom: 1rem;
}
.testimonial-text {
    font-size: 0.95rem;
    color: var(--gray-800);
    line-height: 1.7;
    font-style: italic;
    margin-bottom: 1rem;
}
.testimonial-author {
    font-size: 0.85rem;
    color: var(--gray-600);
    font-weight: 600;
}

/* BANNER URGENȚĂ */
.urgenta-banner {
    background: var(--navy);
    color: var(--white);
    padding: 1.25rem 0;
    text-align: center;
}
.urgenta-banner p {
    font-size: 1.05rem;
    margin: 0;
}
.urgenta-banner a {
    color: var(--orange-text);
    font-weight: 700;
    text-decoration: none;
}
.urgenta-banner a:hover {
    text-decoration: underline;
}

/* ===== Date de contact sub bannerul de urgență (text, nu butoane) ===== */
.urgenta-date {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 6px 22px;
    margin-top: 10px;
    font-size: 0.95rem;
    color: rgba(255, 255, 255, 0.9);
}
.urgenta-date a {
    color: var(--orange-text);
    font-weight: 700;
    text-decoration: none;
}
.urgenta-date a:hover { text-decoration: underline; }

/* ===== Iconițe sociale (Facebook / Instagram) — rand propriu sub datele de contact ===== */
.urgenta-social {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    margin-top: 10px;
}
.urgenta-social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    color: var(--white);
    opacity: 0.85;
    transition: opacity 0.25s ease, background 0.25s ease;
}
.urgenta-social a:hover {
    opacity: 1;
    background: var(--orange-text);
    text-decoration: none;
}

/* RESPONSIVE */
@media (max-width: 768px) {
    .de-ce-grid,
    .testimoniale-grid {
        grid-template-columns: 1fr;
    }
    .brand-logo {
        height: 30px;
    }
    .brands-track {
        gap: 2rem;
    }
}

/* Banner urgenta: spatiul intre intrebarea bold si textul care urmeaza.
   Linkul telefonic a fost scos la cererea proprietarului (text simplu). */
.urgenta-banner p span {
    margin-left: 6px;
}
