/* ===================================================================
 * STYLESHEET FOR: Residential Pillar Page (Refactored)
 * =================================================================== */

/* * NOTE: The old hero section styles have been DELETED from this file.
 * The hero is now 100% controlled by the ".page-hero" component
 * in your global-styles.css file.
 *
 * The styles below are ONLY for the unique page content
 * that appears BELOW the hero.
*/

/* ===================================================================
   2. PAGE COMPONENTS (Mobile-First)
=================================================================== */

/* --- Service Cards --- */
.services-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--space-xl);
}

.service-card {
    position: relative;
    z-index: 1;
    border-radius: var(--border-radius);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-height: 450px;
    background-size: cover;
    background-position: center;
    color: var(--color-light);
}

.service-card::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    background-color: rgba(26, 54, 93, 0.8);
    transition: background-color 0.3s ease;
}

.service-card:hover::before {
    background-color: rgba(26, 54, 93, 0.65);
}

.service-card--replacement {
    background-image: url('https://idealroofingco.com/wp-content/uploads/residential-roofing-replacement.jpg');
}
.service-card--repair {
    background-image: url('https://idealroofingco.com/wp-content/uploads/residential-roofing-flint-repair-collage.jpg');
}

.service-card__content {
    padding: var(--space-lg);
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.service-card__heading {
    color: var(--color-light);
    text-align: center;
    font-size: 1.4rem;
    border-bottom: var(--border-thick) var(--color-accent);
    padding-bottom: var(--space-md);
}

.service-card .service-list {
    flex-grow: 1;
    margin-top: var(--space-lg);
    padding-left: 0;
    list-style: none;
}
.service-card .check-item {
    color: var(--color-light);
}

/* --- Process Grid --- */
.process-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--space-xl);
}
.process-step {
    display: flex;
    align-items: flex-start;
    gap: var(--space-md);
}
.process-step-number {
    flex-shrink: 0;
    background-color: var(--color-primary);
    color: var(--color-light);
    font-weight: 700;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 1.2rem;
}
.process-step-content h3 {
    margin-top: 0;
}
.process-step-content p {
    margin-bottom: 0;
}

/* --- Materials & Solving Problems Sections --- */
.roofing-content-wrapper .service-list {
    list-style: none;
    padding-left: 0;
}
.roofing-content-wrapper .check-item {
    color: var(--color-dark);
}

/* --- Final CTA --- */
/* The .roofing-content-wrapper and .info-panel global classes now handle the layout */
.phone-highlight-centered {
    background-color: var(--color-dark);
    border: 1px solid rgba(255, 255, 255, 0.2);
    padding: var(--space-md);
    border-radius: var(--border-radius);
}
.call-now {
    color: #FFCC00; /* Gold to stand out */
    font-weight: 700;
    margin-bottom: var(--space-sm);
}
.phone-number {
    color: var(--color-light);
    font-size: clamp(1.3rem, 4vw, 1.5rem);
    font-weight: 700;
    text-decoration: none;
}


/* ===================================================================
   3. DESKTOP ENHANCEMENTS
=================================================================== */
@media (min-width: 768px) {
    .services-grid {
        grid-template-columns: 1fr 1fr;
    }
    .process-grid {
        grid-template-columns: 1fr 1fr;
    }
}