/* ============================================================
   HOMEPAGE ABOUT US SECTION
   Appended after the homepage content via pil_render_homepage_sections().
   Matches the site design system (navy #19191A / blue #009FD8).
   ============================================================ */

.pil-hp-about {
    background: linear-gradient(135deg, #19191A 0%, #008ECB 100%);
    color: #fff;
    padding: 72px 0;
}

.pil-hp-about-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 24px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px;
    align-items: center;
}

.pil-hp-about-text {
    max-width: 560px;
}

.pil-hp-about-text h2 {
    margin: 0 0 12px;
    font-size: clamp(26px, 3vw, 36px);
    font-weight: 800;
    line-height: 1.15;
    color: #fff;
}

.pil-hp-about-sub {
    margin: 0 0 18px;
    font-size: 16px;
    color: rgba(255, 255, 255, 0.8);
}

.pil-hp-about-desc {
    margin: 0 0 26px;
    font-size: 15.5px;
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.9);
}

.pil-hp-about-cta {
    display: inline-block;
    background: #fff;
    color: #008ECB;
    padding: 13px 26px;
    border-radius: 999px;
    font-size: 14.5px;
    font-weight: 700;
    text-decoration: none;
    transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.pil-hp-about-cta:hover {
    background: #EAF2FB;
    color: #19191A;
    transform: translateY(-2px);
}

.pil-hp-about-media {
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.3);
    aspect-ratio: 4 / 3;
    background: rgba(255, 255, 255, 0.05);
}

.pil-hp-about-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Responsive */
@media (max-width: 991px) {
    .pil-hp-about-inner {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .pil-hp-about-text {
        max-width: 100%;
        order: 1;
    }

    .pil-hp-about-media {
        order: 0;
        max-width: 560px;
        margin: 0 auto;
        aspect-ratio: 16 / 10;
    }
}

@media (max-width: 640px) {
    .pil-hp-about {
        padding: 52px 0;
    }

    .pil-hp-about-inner {
        padding: 0 16px;
        gap: 24px;
    }

    .pil-hp-about-media {
        max-width: 100%;
    }
}
