/* Resume-specific styling — does NOT affect landing page */

/* Reduce base font size for resume only */
html {
    font-size: 15px;
}

/* Narrower resume container */
main.container {
    max-width: 900px;   /* sweet spot */
}

/* Header layout */
.resume-header {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    margin-top: 1rem;
    margin-bottom: 1rem;
}

.resume-header .header-left {
    text-align: left;
    font-size: 0.9rem;
}

.resume-header .header-center {
    text-align: center;
}

.resume-header .header-right {
    text-align: right;
    font-size: 0.9rem;
}

/* Divider */
.resume-divider {
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1.5rem 0;
}

/* Section layout */
.resume-section {
    display: grid;
    grid-template-columns: 180px 1fr;
    gap: 1rem;
    margin-bottom: 2rem;
}

.resume-section h3 {
    margin: 0;
    padding-top: 0.25rem;
    font-weight: 600;
}

/* Job layout */
.job-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    margin-bottom: 0.5rem;
}

.job-dates {
    text-align: left;
    font-weight: 500;
}

.job-company {
    text-align: right;
    font-weight: 500;
}

.job-title {
    text-align: center;
    font-size: 1.1rem;
    font-weight: 600;
    margin: 0.5rem 0 0.75rem 0;
}

/* Responsive adjustments */
@media (max-width: 700px) {

    .resume-header {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .resume-header .header-left,
    .resume-header .header-right {
        text-align: center;
    }

    .resume-section {
        grid-template-columns: 1fr;
    }

    .job-grid {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .job-dates,
    .job-company {
        text-align: center;
    }
}

.resume-section h4 {
    font-size: 1rem;
    margin-top: 0.5rem;
}

.resume-section-divider {
    border: 0;
    border-top: 1px solid #ddd;
    margin: 1.5rem 0;
}

/* PRINT OPTIMIZATION */
@media print {

    /* Make left column narrower and right column wider for print */
    .resume-section {
        grid-template-columns: 120px 1fr !important;
        margin-bottom: 0.75rem !important; /* was 2rem */
        gap: 0.5rem !important;            /* was 1rem */
    }

    /* Reduce section title size for print */
    .resume-section h3 {
        font-size: 1.0rem !important;
        margin-top: 0;
        margin-bottom: 0.25rem;
    }

    /* Remove the 900px width limit for print */
    main.container {
        max-width: 100% !important;
        padding: 0.25in; /* prevents edge clipping */
    }

    /* Prevent elements from being split across pages */
    .resume-section,
    .job-grid,
    .job-title,
    ul,
    li {
        break-inside: auto;
        page-break-inside: auto;
    }

    /* Slightly smaller font for print */
    html {
        font-size: 12px;
    }
}
