/* ═══════════════════════════════════════════════════
   DECOFI PROJECT PAGE — STYLESHEET
   Font: Be Vietnam Pro
   Brand theme: Blue (#005495) & Dark (#000000)
   ════════════════════════════════════════════════════ */

/* ── Page-level resets ── */
.decofi-page {
    background-color: #ffffff;
    color: #221f1f;
    font-family: 'Be Vietnam Pro', sans-serif;
    margin: 0;
    padding: 0;
}

/* Remove spacing from global .has-nav */
.decofi-page .has-nav {
    padding-top: 0 !important;
}

/* Keep label and value on the same line (override delafee display:block) */
.decofi-page .dlf-info-label {
    display: inline;
}

/* ═══════════════════════════════════════════════════
   HERO OVERRIDES
   ════════════════════════════════════════════════════ */

/* Dark overlay for text readability over the hero image */
.decofi-page .dlf-hero__bg::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.35);
    z-index: 1;
    pointer-events: none;
}

.decofi-page .dlf-hero__bg {
    position: relative;
}

/* Ensure hero inner content sits above the overlay */
.decofi-page .dlf-hero__inner {
    z-index: 2;
}

/* Force all hero metadata text to white for contrast */
.decofi-page .dlf-hero__info * {
    color: #fff !important;
}

/* ═══════════════════════════════════════════════════
   FULL WIDTH PORTFOLIO IMAGES
   Each image spans exactly 100% of the screen width
   ════════════════════════════════════════════════════ */
.decofi-full-img {
    width: 100%;
    margin: 0;
    padding: 0;
    display: block;
    line-height: 0;
    background-color: #fff;
    overflow: hidden;
}

.decofi-full-img img {
    width: 100%;
    height: auto;
    display: block;
    margin: 0;
    padding: 0;
    border: none;
}

/* ═══════════════════════════════════════════════════
   TWO COLUMN GRID (DECOFI-12A & 12B)
   Side-by-side on desktop, stacked on mobile
   ════════════════════════════════════════════════════ */
.decofi-grid-2col {
    width: 100%;
    margin: 0;
    padding: 0;
    background-color: #fff;
    line-height: 0;
}

.decofi-grid-2col__container {
    display: flex;
    gap: 0;
    width: 100%;
}

.decofi-grid-2col__container img {
    width: 50%;
    height: auto;
    display: block;
    object-fit: cover;
}

/* ═══════════════════════════════════════════════════
   VIDEO SHOWCASE (DECOFI-15.mp4)
   Responsive inline video player
   ════════════════════════════════════════════════════ */
.decofi-video-section {
    width: 100%;
    margin: 0;
    padding: 0;
    line-height: 0;
    background-color: #fff;
    overflow: hidden;
}

.decofi-video-section video {
    width: 100%;
    height: auto;
    display: block;
}

/* ═══════════════════════════════════════════════════
   RESPONSIVE DESIGN (TABLET & MOBILE)
   ════════════════════════════════════════════════════ */
@media (max-width: 768px) {

    /* Hero: stack layout and set brand background for info panel */
    .decofi-page .dlf-hero {
        height: auto;
    }

    .decofi-page .dlf-hero__bg {
        position: relative;
    }

    .decofi-page .dlf-hero__bg img {
        height: auto;
    }

    .decofi-page .dlf-hero__inner {
        position: relative;
        padding-top: 40px;
        padding-bottom: 40px;
        height: auto;
        background-color: #005495;
    }

    .decofi-page .dlf-hero__container {
        grid-template-columns: 1fr;
    }

    /* Two-column grid stacks vertically */
    .decofi-grid-2col__container {
        flex-direction: column;
    }

    .decofi-grid-2col__container img {
        width: 100%;
    }
}
