/* --- HERO COMPONENT --- */

/* WRAPPER & BACKGROUND */
.hero-grid-wrapper {
    position: relative;
    min-height: calc(85vh + 50px); 
    overflow: hidden;
    padding: 0 !important; 
    border-right: none !important;
} 

.hero-visual {
    position: absolute;
    top: 30px;
    right: 100px;
    bottom: 0; 
    width: 60%; 
    z-index: 1; 
    background-image: url('../img/headshot_img.jpg'); 
    background-size: cover; 
    background-position: center top; 
    background-repeat: no-repeat;
    -webkit-mask-image: linear-gradient(to left, rgba(0,0,0,1) 40%, rgba(0,0,0,0) 100%);
    mask-image: linear-gradient(to left, rgba(0,0,0,1) 40%, rgba(0,0,0,0) 100%);
}

.hero-main-title {
    position: absolute;
    top: 50%;
    transform: translateY(-50%); 
    margin-top: -100px;
    left: 40px; 
    width: 60%; 
    z-index: 10; 
    pointer-events: none; 
}

/* --- TEXT STYLES --- */

/* CHANGED: Color updated to #1C1E16 */
.hero-middle-text {
    font-family: 'Oswald', sans-serif;
    font-size: 18px; 
    line-height: 1.2;
    text-transform: uppercase;
    font-weight: 500;
    color: #332F21; /* Dark Green/Grey as requested */
    transform: scaleX(0.85); 
    transform-origin: left;
    max-width: 250px;
}

/* NEW CLASS: For the specific word "FOUNDING" */
.text-founding {
    color: #230C02; /* Dark Brown as requested */
}

.hero-quote {
    font-family: 'Space Mono', monospace;
    font-size: 10px;
    line-height: 1.5;
    color: var(--text-color);
    opacity: 0.8;
    text-align: right;
    max-width: 360px; 
}

.hero-subtext {
    max-width: 300px; 
    font-weight: 400;
    font-size: 18px;
    opacity: 0.9;
    text-align: right; 
    text-transform: uppercase; 
}

/* GRID CELLS */
.hero-cell {
    min-height: calc(85vh + 50px); 
    background: transparent; 
    position: relative;
    z-index: 20; 
    border-bottom: none; 
    border-right: none;
}

/* --- ALIGNMENT UTILITIES --- */

.align-bottom {
    display: flex;
    flex-direction: column;
    justify-content: flex-end; 
}

.align-split-vertical {
    display: flex;
    flex-direction: column;
    justify-content: space-between; 
    align-items: flex-end;          
    text-align: right;
}