/* Base Portfolio Sections CSS */
/* Shared styles for all sections */

.ast-scroll-top {
    display: none !important;
}

.content-section {
    background: white;
    height: auto;
    display: flex;
    align-items: center;
    width: 100%;
}

.section-container {
    max-width: 100%;
    width: 100%;
}

/* Unified Typography System */
/* Supermax - Major section titles */
a {
    color: #808080;
}

a:hover {
    color: #39e58f;
}

h1 {
    font-family: var(--primary-font);
    font-size: 80px;
    font-weight: 600;
    line-height: 1.1;
    color: inherit;
    margin: 0;
}

/* Headline - Main content headings */
h2 {
    font-family: var(--primary-font);
    font-size: 40px;
    font-weight: 400;
    line-height: 1.2;
    color: #000;
    margin: 0;
}

/* Standfirst - Sub-headings, emphasis text */
h3 {
    font-family: var(--primary-font);
    font-size: 24px;
    font-weight: 400;
    line-height: 1.3;
    color: #000;
    margin: 0;
}

/* Body - Regular paragraph text */
p {
    font-family: var(--primary-font);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.6;
    color: #000;
    margin: 0;
}

/* Credit/Caption - Photo credits, captions */
.caption,
.photo-credit {
    font-family: var(--primary-font);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
    color: #808080;
    margin: 8px 0 0 0;
    text-align: right;
}

/* Font Size Adjustment for Legitima */
/* Scale Legitima up by 1.23x to match Innovator Grotesk x-height */

/* h2 serif scaled: 32px * 1.23 = 39.36px */
h2.serif-font-scaled {
    font-family: var(--serif-font);
    font-size: calc(32px * 1.23);
}

/* h3 serif scaled: 24px * 1.23 = 29.52px */
h3.serif-font-scaled {
    font-family: var(--serif-font);
    font-size: calc(24px * 1.23);
}

/* Generic serif scaled for other elements */
.serif-font-scaled {
    font-family: var(--serif-font);
}


/* Tablet Typography Adjustments */
@media (max-width: 1200px) {
    h2 {
        font-size: 24px;
    }
    
    /* Tablet serif scaling */
    h2.serif-font-scaled {
        font-size: calc(24px * 1.23); /* 24px * 1.23 = 29.52px */
    }
    
    p {
        font-size: 16px;
    }
}

/* Mobile Typography Adjustments */
@media (max-width: 768px) {
    h1 {
        font-size: 12vw; /* Adaptive viewport-based sizing */
        min-font-size: 32px;
    }
    
    h2 {
        font-size: 24px;
    }
    
    h3 {
        font-size: 20px;
    }
    
    /* Mobile serif scaling */
    h2.serif-font-scaled {
        font-size: calc(24px * 1.23); /* 24px * 1.23 = 29.52px */
    }
    
    h3.serif-font-scaled {
        font-size: calc(20px * 1.23); /* 20px * 1.23 = 24.6px */
    }
    
    p {
        font-size: 16px;
    }
}
