/*
 * Sections — Hero, About, Projects, Skills, Contact, Footer
 */

/* ── HERO ── */
.hero {
    padding: var(--space-64) var(--page-padding) var(--space-48);
    border-bottom: var(--border);
}

.hero__top {
    display: grid;
    grid-template-columns: 1fr 200px;
    gap: var(--space-48);
    align-items: start;
}

.hero__photo {
    width: 100%;
    aspect-ratio: 3/4;
    object-fit: cover;
    object-position: top center;
    display: block;
}

@media (max-width: 768px) {
    .hero__top {
        grid-template-columns: 1fr;
    }
    .hero__photo {
        width: 120px;
        aspect-ratio: 1;
        border-radius: 50%;
        order: -1;
    }
}

.hero__label {
    font-family: var(--font-mono);
    font-size: var(--text-xs);
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--color-navy);
    margin-bottom: var(--space-16);
}

.hero__name {
    font-family: var(--font-sans);
    font-size: var(--text-hero);
    font-weight: 800;
    letter-spacing: -2px;
    line-height: 1;
    color: var(--color-text);
    margin-bottom: var(--space-20);
}

.hero__bio {
    font-family: var(--font-mono);
    font-size: var(--text-sm);
    line-height: 1.75;
    color: var(--color-muted);
    max-width: 520px;
}

/* Stats bar */
.hero__stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    border-top: var(--border);
    margin-top: var(--space-40);
    padding-top: var(--space-20);
    gap: var(--space-24);
}

@media (max-width: 768px) {
    .hero__stats {
        grid-template-columns: 1fr 1fr;
    }
}

.hero__stat {
    padding-right: var(--space-24);
    border-right: var(--border);
}
.hero__stat:last-child {
    border-right: none;
    padding-right: 0;
}

.hero__stat-label {
    font-family: var(--font-mono);
    font-size: var(--text-3xs);
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: var(--color-faint);
    margin-bottom: var(--space-8);
}

.hero__stat-value {
    font-family: var(--font-sans);
    font-size: 15px;
    font-weight: 700;
    color: var(--color-text);
    margin-bottom: var(--space-4);
}

.hero__stat-sub {
    font-family: var(--font-mono);
    font-size: var(--text-xs);
    color: var(--color-subtle);
}

/* ── ABOUT ── */
.about__text p {
    font-family: var(--font-mono);
    font-size: var(--text-sm);
    line-height: 1.8;
    color: var(--color-muted);
    margin-bottom: var(--space-16);
}
.about__text p:last-child { margin-bottom: 0; }

.about__text strong {
    color: var(--color-text);
    font-weight: 700;
}

/* ── PROJECTS ── */
.projects__header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: var(--space-32);
}

.projects__count {
    font-family: var(--font-mono);
    font-size: var(--text-xs);
    letter-spacing: 1px;
    color: var(--color-subtle);
}

/* ── CONTACT ── */
.contact__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-64);
    align-items: start;
}

@media (max-width: 768px) {
    .contact__grid {
        grid-template-columns: 1fr;
        gap: var(--space-40);
    }
}

.contact__title {
    font-family: var(--font-sans);
    font-size: 40px;
    font-weight: 800;
    letter-spacing: -1px;
    line-height: 1.1;
    margin-bottom: var(--space-16);
}

.contact__sub {
    font-family: var(--font-mono);
    font-size: var(--text-xs);
    line-height: 1.7;
    color: var(--color-subtle);
}

/* ── PROJECT / EXPERIENCE DETAIL HERO ── */
.page-hero {
    padding: calc(var(--nav-height) + var(--space-40)) var(--page-padding) var(--space-48);
    border-bottom: var(--border);
}

.page-hero__grid {
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: var(--space-48);
    align-items: start;
}

@media (max-width: 768px) {
    .page-hero__grid {
        grid-template-columns: 1fr;
    }
    .page-hero__media { order: -1; }
}

.page-hero__eyebrow {
    font-family: var(--font-mono);
    font-size: var(--text-xs);
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: var(--color-navy);
    margin-bottom: var(--space-16);
}

.page-hero__title {
    font-family: var(--font-sans);
    font-size: 48px;
    font-weight: 800;
    letter-spacing: -1px;
    line-height: 1.1;
    color: var(--color-text);
    margin-bottom: var(--space-12);
}

.page-hero__role {
    font-family: var(--font-mono);
    font-size: var(--text-xs);
    color: var(--color-muted);
    margin-bottom: var(--space-20);
}

.page-hero__desc {
    font-family: var(--font-mono);
    font-size: var(--text-sm);
    line-height: 1.75;
    color: var(--color-muted);
    max-width: 500px;
}

.page-hero__media img,
.page-hero__media video {
    width: 100%;
    height: auto;
    max-height: 340px;
    object-fit: cover;
    display: block;
}

/* ── FOOTER ── */
.footer {
    padding: var(--space-24) var(--page-padding);
    border-top: var(--border);
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.footer__brand {
    font-family: var(--font-sans);
    font-weight: 900;
    font-size: 14px;
}
.footer__brand .dot { color: var(--color-navy); }

.footer__mono {
    font-family: var(--font-mono);
    font-size: var(--text-3xs);
    letter-spacing: 1px;
    color: var(--color-faint);
}
