/**
 * Section: Hạ tầng tỷ đô (Infrastructure) - Frontend Styles
 * 
 * Layout: Full screen section background, content floating on RIGHT.
 * 
 * @package HDev_Theme
 */

.hdev-fullpage .row:has(.hdev-infrastructure-wrapper),
.hdev-fullpage .row.has-hdev-infrastructure {
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.hdev-fullpage .col:has(.hdev-infrastructure-wrapper),
.hdev-fullpage .col.has-hdev-infrastructure {
    padding-bottom: 0 !important;
    max-width: 100% !important;
    flex-basis: 100% !important;
}

/* force full height */
.hdev-infrastructure-wrapper {
    position: relative;
    width: 100%;
    height: 100vh;
    min-height: 100vh;
    display: flex;
    align-items: stretch;
    padding-right: 0;
    /* Spacing from right */
    justify-content: flex-end;
    /* Align content panel to RIGHT */
}

.hdev-infrastructure-content-panel {
    position: relative;
    z-index: 2;
    width: 35%;
    max-width: 450px;
    padding: 20px 5% 20px 20px;
    background: rgba(81, 81, 81, 0.15);
    display: flex;
    flex-direction: column;
    justify-content: center;
    /* margin-left: auto; Handled by justify-content: flex-end in wrapper */
}

.hdev-infrastructure-inner {
    width: 100%;
    padding: 20px;
}

.hdev-inf-title {
    font-family: var(--hdev-font-heading);
    font-size: var(--hdev-fs-heading-opt);
    background: var(--hdev-color-heading-text);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
    display: inline-block;
    margin: 0 0 5px 0;
    line-height: 1.1;
    text-transform: uppercase;
}

.hdev-inf-subtitle {
    font-family: var(--hdev-font-subheading);
    font-size: var(--hdev-fs-subheading-opt);
    color: var(--hdev-gold);
    font-weight: 300;
    font-style: italic;
    margin-top: -10px;
    margin-bottom: 10px;
    text-shadow: none;
    text-transform: none;
}

.hdev-inf-divider {
    width: 50px;
    height: 1px;
    background: rgba(255, 255, 255, 0.8);
    margin: 20px 0 30px 0;
}

.hdev-inf-content p {
    margin-bottom: 15px;
}

.hdev-infrastructure-mobile-bg {
    display: none;
    width: 100%;
    background-size: cover;
    background-position: center;
}

@media (max-width: 1024px) {
    .hdev-infrastructure-content-panel {
        width: 50%;
    }
}

@media (max-width: 768px) {
    .hdev-infrastructure-wrapper {
        min-height: auto;
        height: auto;
        padding: 0;
        flex-direction: column;
    }

    .hdev-infrastructure-content-panel {
        width: 100%;
        max-width: 100%;
        background: #fff;
        color: #333;
        /* Ensure dark text on white bg */
        padding: 0;
        border-radius: 0;
        text-align: left;
    }

    .hdev-inf-title {
        font-size: 2rem;
        text-align: left;
        background: var(--hdev-color-heading-text);
        -webkit-background-clip: text;
        background-clip: text;
        -webkit-text-fill-color: transparent;
        color: transparent;
        display: inline-block;
    }

    .hdev-inf-content {
        text-align: left;
        padding: 0;
    }

    .hdev-infrastructure-mobile-bg {
        display: block;
        height: 50vh;
        min-height: 300px;
    }
}