/* ==========================================================================
   Locuri în devenire — page-specific component styles.
   Lives in the theme because it styles page presentation, not plugin admin
   functionality. Loaded only on the contest page (see functions.php).
   Layout/spacing is handled natively by Elementor sections/columns; these
   rules only style rich-content blocks embedded inside Text Editor widgets.
   ========================================================================== */

:root {
    --lid-primary: #d8526d;
    --lid-primary-dark: #c84a60;
    --lid-secondary: #002C5B;
    --lid-text: #7E838B;
    --lid-bg: #EEF1F6;
    --lid-border: #E0E4EC;
    --lid-light: #B4C4D0;
    --lid-ong: #DB546C;
    --lid-dark: #0C1C44;
    --lid-heading-font: "Playfair Display", Georgia, serif;
    --lid-body-font: "Work Sans", -apple-system, BlinkMacSystemFont, sans-serif;
    --lid-accent-font: "Poppins", sans-serif;
    --lid-radius: 16px;
    --lid-radius-sm: 10px;
}


/* === HERO — offset for fixed header === */
#hero {
    --lid-header-height: 0px;
}

#hero > .elementor-container {
    min-height: calc(100vh - var(--lid-header-height)) !important;
}
/* === HERO edition label === */
.lid-edition {
    font-family: var(--lid-accent-font);
    font-size: 0.75rem;
    font-weight: 500;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.7);
    margin-bottom: 0.5rem;
}

/* === HERO badge/eyebrow === */
.lid-eyebrow {
    display: inline-block;
    font-family: var(--lid-accent-font);
    font-size: 0.85rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #fff;
    background: rgba(216, 82, 109, 0.9);
    padding: 0.4rem 1.1rem;
    border-radius: 999px;
    white-space: nowrap;
}

/* === HERO content — constrain text to the left so it wraps nicely === */
#hero .elementor-widget-wrap {
    max-width: 720px;
    margin-left: 8rem;
}

#hero .elementor-widget {
    width: 100%;
}

/* === Section headings — override Elementor's 60px global default === */
.elementor-1721 .elementor-widget-heading .elementor-heading-title {
    font-size: 2rem;
    line-height: 1.3;
}

/* Hero heading keeps a larger size */
#hero .elementor-heading-title {
    font-size: 2.75rem;
}

@media (max-width: 1024px) {
    .elementor-1721 .elementor-widget-heading .elementor-heading-title {
        font-size: 1.6rem;
    }

    #hero .elementor-heading-title {
        font-size: 2.25rem;
    }

    #hero .elementor-widget-wrap {
        max-width: 480px;
        margin-left: 2rem;
    }
}

@media (max-width: 767px) {
    #hero .elementor-widget-wrap {
        max-width: 100%;
        margin-left: 0;
        text-align: center;
        align-items: center;
    }

    /* Force the 55% column to full width on mobile so content can center */
    #hero .elementor-column {
        width: 100% !important;
    }

    /* Center all hero widgets and their inner containers */
    #hero .elementor-widget {
        width: 100%;
        text-align: center;
    }

    #hero .elementor-heading-title,
    #hero .elementor-widget-text-editor p {
        text-align: center;
    }

    /* Override Elementor's align-left on the button widget */
    #hero .elementor-widget-button.elementor-align-left {
        text-align: center;
    }

    /* Badge: allow shrinking so it never wraps */
    #hero .lid-eyebrow {
        font-size: clamp(0.6rem, 3vw, 0.7rem);
        letter-spacing: 0.03em;
        padding: 0.3rem 0.7rem;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 100%;
    }
}

/* === Base typography for rich content inside Text Editor widgets === */
.lid-rich-text {
    font-family: var(--lid-body-font);
    color: var(--lid-text);
    line-height: 1.8;
    font-size: 1.05rem;
}

.lid-rich-text h3 {
    font-family: var(--lid-heading-font);
    font-size: clamp(1.2rem, 2.5vw, 1.6rem);
    font-weight: 700;
    color: var(--lid-secondary);
    margin: 1.75rem 0 1rem;
    line-height: 1.3;
}

.lid-rich-text h4 {
    font-family: var(--lid-accent-font);
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--lid-secondary);
    margin: 1.25rem 0 0.5rem;
}

.lid-rich-text p {
    margin: 0 0 1rem;
}

.lid-rich-text strong {
    color: var(--lid-secondary);
    font-weight: 600;
}

.lid-rich-text ul,
.lid-rich-text ol {
    padding-left: 1.25rem;
    margin: 0 0 1.5rem;
}

.lid-rich-text li {
    margin-bottom: 0.5rem;
    line-height: 1.7;
}

/* === INTRO TEXT — the lead-in block before "Ce este Locuri în devenire?" === */
.lid-intro-text {
    max-width: 760px;
    margin: 0 auto;
    text-align: center;
    font-size: 1.1rem;
}

.lid-intro-text p {
    margin: 0 0 1.25rem;
}

/* === PARTNER LOGOS === */
.lid-partners {
    max-width: 900px;
    margin: 2.5rem auto 0;
    text-align: center;
}

.lid-partners-label {
    font-family: var(--lid-accent-font);
    font-size: 0.8rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--lid-light);
    margin: 1.75rem 0 1rem;
}

.lid-partners-label:first-child {
    margin-top: 0;
}

.lid-partners-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 2rem;
}

.lid-partner-logo {
    width: 130px;
    height: 70px;
    object-fit: contain;
    filter: grayscale(15%);
    opacity: 0.9;
    transition: opacity 0.2s ease, filter 0.2s ease;
}

.lid-partner-logo:hover {
    opacity: 1;
    filter: grayscale(0%);
}

.lid-partner-chip-dark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 130px;
    height: 70px;
    background: var(--lid-dark);
    border-radius: var(--lid-radius-sm);
    box-sizing: border-box;
    padding: 0.75rem 1rem;
}

.lid-partner-chip-dark .lid-partner-logo {
    width: 100%;
    height: 100%;
    opacity: 1;
    filter: none;
}

.lid-partner-chip-text {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 130px;
    height: 70px;
    box-sizing: border-box;
    padding: 0 0.75rem;
    font-family: var(--lid-heading-font);
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--lid-dark);
    background: rgba(180, 196, 208, 0.25);
    border-radius: var(--lid-radius-sm);
    opacity: 0.9;
}

@media (max-width: 767px) {
    .lid-intro-text {
        font-size: 1rem;
        text-align: left;
        padding: 0 1.25rem;
    }

    .lid-partners {
        margin-top: 1.75rem;
    }

    .lid-partners-row {
        gap: 1.25rem;
    }

    .lid-partner-logo {
        width: 100px;
        height: 54px;
    }

    .lid-partner-chip-dark,
    .lid-partner-chip-text {
        width: 100px;
        height: 54px;
    }

    .lid-partner-chip-text {
        font-size: 0.95rem;
    }
}

/* === HIGHLIGHT BOXES === */
.lid-highlight {
    background: linear-gradient(135deg, var(--lid-primary) 0%, var(--lid-primary-dark) 100%);
    color: #fff;
    padding: 1.5rem 2rem;
    border-radius: var(--lid-radius-sm);
    margin: 2rem 0;
    text-align: center;
    font-family: var(--lid-accent-font);
    font-size: 1.1rem;
    font-weight: 600;
}

.lid-highlight strong {
    color: #fff;
}

.lid-highlight-warning {
    background: linear-gradient(135deg, var(--lid-ong) 0%, #c84a60 100%);
    color: #fff;
    padding: 1.5rem 2rem;
    border-radius: var(--lid-radius-sm);
    margin: 2rem 0;
    font-size: 1.05rem;
    line-height: 1.7;
}

.lid-highlight-warning strong {
    color: #fff;
}

/* === PRIZE CARDS (Premii section) === */
.lid-prizes {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
    margin: 1.5rem 0;
}

.lid-prize-column {
    background: #fff;
    border: 1px solid var(--lid-border);
    border-radius: var(--lid-radius);
    overflow: hidden;
}

.lid-prize-column-header {
    background: var(--lid-secondary);
    color: #fff;
    padding: 1.25rem;
    text-align: center;
    font-family: var(--lid-heading-font);
    font-size: 1.25rem;
    font-weight: 700;
}

.lid-prize-column-header.alt {
    background: var(--lid-dark);
}

.lid-prize-cards {
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.lid-prize-card {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.25rem;
    background: #fff;
    border-radius: var(--lid-radius-sm);
    border: 1px solid var(--lid-border);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.lid-prize-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 44, 91, 0.08);
}

.lid-prize-icon {
    flex-shrink: 0;
    width: 52px;
    height: 52px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 1.6rem;
    line-height: 1;
}

/* Specialiști card (first in each column) — dark blue gradient */
.lid-prize-cards .lid-prize-card:first-child .lid-prize-icon {
    background: linear-gradient(135deg, var(--lid-secondary), #1a3a6b);
}

/* Comunitate card (second in each column) — pink gradient */
.lid-prize-cards .lid-prize-card:last-child .lid-prize-icon {
    background: linear-gradient(135deg, var(--lid-primary), var(--lid-primary-dark));
}

.lid-prize-info {
    flex: 1;
}

.lid-prize-category {
    font-family: var(--lid-accent-font);
    font-weight: 600;
    font-size: 0.95rem;
    color: var(--lid-secondary);
    margin: 0 0 0.25rem;
}

.lid-prize-amount {
    font-family: var(--lid-accent-font);
    font-size: 1.35rem;
    font-weight: 700;
    color: var(--lid-primary);
    margin: 0;
    letter-spacing: -0.02em;
}

/* === CATEGORY BADGES (Zone/category section) === */
.lid-category-badge {
    display: inline-block;
    padding: 0.35rem 1rem;
    border-radius: 999px;
    font-family: var(--lid-accent-font);
    font-size: 0.85rem;
    font-weight: 600;
    margin-bottom: 1rem;
}

.lid-category-badge.specialisti {
    background: rgba(0, 44, 91, 0.1);
    color: var(--lid-secondary);
}

.lid-category-badge.comunitate {
    background: rgba(219, 84, 108, 0.1);
    color: var(--lid-ong);
}

@media (max-width: 767px) {
    .lid-prizes {
        grid-template-columns: 1fr;
    }
}

/* === ZONE CARDS — Malul Dâmbului / Parcul Mitică Apostol === */
.lid-zone-cards .elementor-container {
    gap: 2rem;
}

.lid-zone-cards .elementor-column {
    margin-bottom: 0;
    padding: 0 !important;
    overflow: hidden;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.lid-zone-cards .elementor-column:hover {
    box-shadow: 0 8px 30px rgba(0, 44, 91, 0.12);
    transform: translateY(-3px);
}

/* Full-bleed illustration at the top of the card */
.lid-zone-card-image {
    margin: 0;
    line-height: 0;
}

.lid-zone-card-image img {
    width: 100%;
    height: 240px;
    object-fit: cover;
    display: block;
    min-height: 200px;
}

/* Small pill badge above the title */
.lid-zone-badge {
    display: inline-block;
    font-family: var(--lid-accent-font);
    font-size: 0.78rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: var(--lid-primary);
    background: rgba(216, 82, 109, 0.1);
    padding: 0.3rem 0.85rem;
    border-radius: 999px;
    margin-bottom: 0.6rem;
}

/* Title sits right under the image with matching side padding */
.lid-zone-card-title {
    padding: 1.5rem 1.75rem 0 !important;
    margin: 0 !important;
}

/* Text block (badge + description) below the title */
.lid-zone-card-text {
    padding: 0.5rem 1.75rem 1.75rem !important;
}

.lid-zone-card-text p {
    margin: 0;
    line-height: 1.7;
}

@media (max-width: 767px) {
    .lid-zone-cards {
        flex-direction: column !important;
        gap: 1.5rem !important;
    }

    .lid-zone-card {
        flex: 0 0 auto !important;
        min-width: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .lid-zone-card-image {
        padding: 1rem 1rem 0 !important;
    }

    .lid-zone-card-image img {
        width: 100% !important;
        height: 180px !important;
        object-fit: cover !important;
        display: block !important;
        border-radius: var(--lid-radius-sm) !important;
    }

    .lid-zone-card-title {
        padding: 1rem 1rem 0 !important;
    }

    .lid-zone-card-text {
        padding: 0.5rem 1rem 1rem !important;
    }
}

/* === CATEGORY COLUMNS — distinguishable cards for Specialiști / Comunitate === */
.lid-category-columns .elementor-container {
    gap: 2.5rem;
}

.lid-category-columns .elementor-column {
    background: #fff;
    border-radius: var(--lid-radius);
    padding: 0;
    box-shadow: 0 2px 16px rgba(0, 44, 91, 0.06);
    transition: box-shadow 0.2s ease, transform 0.2s ease;
    overflow: hidden;
}

.lid-category-columns .elementor-column:hover {
    box-shadow: 0 6px 28px rgba(0, 44, 91, 0.1);
    transform: translateY(-2px);
}

/* Left column = Specialiști → blue top accent bar */
.lid-category-columns .elementor-column:first-child {
    border-top: 4px solid var(--lid-secondary);
}

/* Right column = Comunitate → coral/ONG top accent bar */
.lid-category-columns .elementor-column:last-child {
    border-top: 4px solid var(--lid-ong);
}

/* Card inner wrapper */
.lid-category-card {
    padding: 2rem;
}

/* Badge as a centered header */
.lid-category-columns .lid-category-badge {
    display: block;
    text-align: center;
    font-size: 0.9rem;
    padding: 0.5rem 1.2rem;
    margin-bottom: 1.5rem;
}

/* Intro section */
.lid-category-card-intro {
    padding-bottom: 1.25rem;
    margin-bottom: 1.25rem;
    border-bottom: 1px solid var(--lid-border);
}

.lid-category-card-intro p {
    margin: 0 0 0.85rem;
    line-height: 1.7;
}

.lid-category-card-intro p:last-child {
    margin-bottom: 0;
}

/* Sub-sections (requirements, criteria) */
.lid-category-card-section {
    margin-bottom: 1.5rem;
}

.lid-category-card-section:last-child {
    margin-bottom: 0;
}

.lid-category-card-section h4 {
    font-family: var(--lid-accent-font);
    font-weight: 600;
    font-size: 1rem;
    color: var(--lid-secondary);
    margin: 0 0 0.85rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid var(--lid-bg);
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.lid-card-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--lid-bg);
    font-size: 0.8rem;
    flex-shrink: 0;
}

/* Requirements list — styled markers */
.lid-req-list {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

.lid-req-list li {
    position: relative;
    padding-left: 1.75rem;
    margin-bottom: 0.65rem;
    line-height: 1.6;
}

.lid-req-list li:last-child {
    margin-bottom: 0;
}

.lid-req-list li::before {
    content: '→';
    position: absolute;
    left: 0;
    top: 0;
    color: var(--lid-primary);
    font-weight: 700;
    font-size: 0.95rem;
}

/* Criteria list — checkmark markers */
.lid-criteria-list {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

.lid-criteria-list li {
    position: relative;
    padding-left: 1.75rem;
    margin-bottom: 0.55rem;
    line-height: 1.6;
}

.lid-criteria-list li:last-child {
    margin-bottom: 0;
}

.lid-criteria-list li::before {
    content: '✓';
    position: absolute;
    left: 0;
    top: 0;
    color: var(--lid-secondary);
    font-weight: 700;
    font-size: 0.9rem;
}

.lid-category-columns .elementor-column:last-child .lid-criteria-list li::before {
    color: var(--lid-ong);
}

@media (max-width: 767px) {
    .lid-category-columns .elementor-container {
        gap: 1.5rem;
        flex-direction: column;
    }

    .lid-category-card {
        padding: 1.5rem;
    }
}

/* === SHARED "DIRECTIONS" NOTE — applies to both Secțiunea A and B === */
.lid-directions-section {
    position: relative;
}

/* Decorative curly-brace bridge, visually pulling the two columns above
   down into this single shared note. */
.lid-directions-section::before {
    content: '';
    display: block;
    width: min(60%, 460px);
    height: 40px;
    margin: 0 auto 0.75rem;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 460 40'%3E%3Cpath d='M4,4 C130,4 130,34 230,34 C330,34 330,4 456,4' fill='none' stroke='%23d8526d' stroke-width='2.5' stroke-linecap='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center top;
}

.lid-directions-note {
    max-width: 760px;
    margin: 0 auto;
    text-align: center;
}

.lid-directions-label {
    display: inline-flex;
    align-items: center;
    font-family: var(--lid-accent-font);
    font-size: 0.78rem;
    font-weight: 600;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: var(--lid-primary);
    background: rgba(216, 82, 109, 0.08);
    border: 1px solid rgba(216, 82, 109, 0.3);
    padding: 0.4rem 1.1rem;
    border-radius: 999px;
    margin-bottom: 1.25rem;
}

.lid-directions-note h3 {
    font-family: var(--lid-heading-font);
    font-size: clamp(1.25rem, 2.5vw, 1.6rem);
    font-weight: 700;
    color: var(--lid-secondary);
    margin: 0 0 1.5rem;
    line-height: 1.35;
}

.lid-directions-note ul {
    display: inline-block;
    text-align: left;
    padding-left: 1.25rem;
    margin: 0 auto;
}

.lid-directions-note li {
    margin-bottom: 0.6rem;
    line-height: 1.7;
    color: var(--lid-text);
}

@media (max-width: 767px) {
    .lid-directions-section::before {
        width: 70%;
        height: 30px;
    }

    .lid-directions-note h3 {
        font-size: 1.15rem;
    }

    .lid-directions-label {
        font-size: 0.7rem;
        padding: 0.35rem 0.9rem;
    }
}

/* === CTA BUTTONS — force brand pink, overriding Elementor's global kit orange === */
.elementor-1721 .elementor-widget-button .elementor-button {
    background-color: var(--lid-primary) !important;
}

.elementor-1721 .elementor-widget-button .elementor-button:hover,
.elementor-1721 .elementor-widget-button .elementor-button:focus {
    background-color: var(--lid-primary-dark) !important;
}

/* ==========================================================================
   MOBILE — tighten section spacing, shrink type scale, fit hero badge,
   pin the hero CTA button to the bottom of the viewport.
   ========================================================================== */
@media (max-width: 767px) {
    /* Compress the generous 80px/20px desktop section paddings */
    .elementor-1721 > .elementor-section {
        padding-top: 32px !important;
        padding-bottom: 32px !important;
    }

    /* Smaller, tighter headings site-wide on this page */
    .elementor-1721 .elementor-widget-heading .elementor-heading-title {
        font-size: 1.25rem !important;
        line-height: 1.3 !important;
    }

    .elementor-1721 .elementor-widget-text-editor,
    .lid-rich-text {
        font-size: 0.95rem;
    }

    .lid-rich-text h3 {
        font-size: 1.15rem;
        margin: 1.25rem 0 0.75rem;
    }

    /* Eyebrow badge — handled in the hero-specific mobile block above */

    /* Hero heading is the visual anchor — keep it a bit larger than body headings */
    #hero .elementor-heading-title {
        font-size: 1.5rem !important;
        line-height: 1.25 !important;
    }

    #hero .elementor-widget-text-editor {
        font-size: 0.95rem;
    }

    /* Hero — push the CTA button to the very bottom of the viewport */
    #hero .elementor-widget-wrap {
        display: flex;
        flex-direction: column;
        min-height: 100%;
    }

    #hero .elementor-widget-wrap > .elementor-widget-button {
        margin-top: auto;
        padding-top: 1.5rem;
        width: 100%;
    }

    #hero .elementor-widget-wrap > .elementor-widget-button .elementor-button {
        width: auto;
        max-width: 280px;
    }

    /* Reduce highlight/prize/card block spacing */
    .lid-highlight,
    .lid-highlight-warning {
        padding: 1.1rem 1.25rem;
        margin: 1.5rem 0;
        font-size: 1rem;
    }

    .lid-prizes {
        margin: 1rem 0;
    }

    .lid-category-columns .elementor-column {
        padding: 1.25rem;
    }
}
/* === Section titles — match hero heading size === */
.elementor-1708 section:not(#hero) .elementor-widget-heading .elementor-heading-title {
    font-size: 42px !important;
    line-height: 1.3 !important;
}

@media (max-width: 1024px) {
    .elementor-1708 section:not(#hero) .elementor-widget-heading .elementor-heading-title {
        font-size: 32px !important;
    }
}

@media (max-width: 767px) {
    .elementor-1708 section:not(#hero) .elementor-widget-heading .elementor-heading-title {
        font-size: 26px !important;
        line-height: 1.25 !important;
    }
}

/* ==========================================================================
   MOBILE (≤767px) — coherent spacing for elementor-1708 page
   ========================================================================== */
@media (max-width: 767px) {
    /* Compress desktop 80px section paddings to a consistent 40px */
    .elementor-1708 > .elementor-section {
        padding-top: 40px !important;
        padding-bottom: 40px !important;
    }

    /* Hero gets extra top padding for breathing room below the fixed header */
    .elementor-1708 > .elementor-section:first-child {
        padding-top: 56px !important;
    }

    /* The intro+partners section: less bottom padding */
    .elementor-1708 .elementor-element-1736ff6a {
        padding-bottom: 24px !important;
    }

    /* The "Înscrie-te acum" button section after zone cards: tight spacing */
    .elementor-1708 .elementor-element-bdea222 {
        padding-top: 16px !important;
        padding-bottom: 40px !important;
    }

    /* "Ce se întâmplă cu propunerile" — tight bottom before the buttons */
    .elementor-1708 .elementor-element-51f711b {
        padding-top: 40px !important;
        padding-bottom: 16px !important;
    }

    /* Two-button section (Înscrie-te / Citește regulamentul): tight, stack on mobile */
    .elementor-1708 .elementor-element-200d6f2 {
        padding-top: 8px !important;
        padding-bottom: 40px !important;
    }

    .elementor-1708 .elementor-element-200d6f2 .elementor-column {
        width: 100% !important;
    }

    .elementor-1708 .elementor-element-200d6f2 .elementor-widget-button {
        margin-bottom: 0.75rem;
    }

    /* Center all section headings on mobile */
    .elementor-1708 section:not(#hero) .elementor-widget-heading .elementor-heading-title {
        text-align: center !important;
    }

    /* Ensure section titles have consistent bottom margin */
    .elementor-1708 section:not(#hero) .elementor-widget-heading {
        margin-bottom: 1rem;
    }

    /* Rich text blocks: comfortable side padding on all sections */
    .elementor-1708 .lid-rich-text {
        padding-left: 1.25rem;
        padding-right: 1.25rem;
    }

    /* Intro text already has padding, partners don't need extra */
    .lid-partners {
        padding-left: 1.25rem;
        padding-right: 1.25rem;
    }
}

/* === Hero background — desktop fallback (Elementor CSS missing for desktop) === */
.elementor-73 .elementor-element-110ba9a:not(.elementor-motion-effects-element-type-background),
.elementor-73 .elementor-element-110ba9a > .elementor-motion-effects-container > .elementor-motion-effects-layer,
.elementor-1708 .elementor-element-110ba9a:not(.elementor-motion-effects-element-type-background),
.elementor-1708 .elementor-element-110ba9a > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-image: url("https://ploiestipentruoameni.ro/wp-content/uploads/2026/08/hero-banner.png");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

/* Keep the two post-hero project-description blocks stacked on wide desktops. */
.elementor-1708 .elementor-element-58ec0437 > .elementor-widget-wrap {
    flex-direction: column;
    flex-wrap: nowrap;
}

/* Tighten the transition from documentation to partner logos. */
.elementor-1708 .elementor-element-90475c2 {
    padding-bottom: 40px !important;
}

.elementor-1708 .elementor-element-22e2a96 {
    padding-top: 32px !important;
}

.elementor-1708 .elementor-element-22e2a96 .lid-partners {
    margin-top: 0;
}

@media (max-width: 767px) {
    .elementor-1708 .elementor-element-22e2a96 {
        padding-top: 24px !important;
    }
}

/* Remove the raster background edge from the FNF partner logo only. */
.elementor-1708 .lid-partner-logo[src*="fnf-logo-color.png"] {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    mix-blend-mode: multiply;
}
