﻿
/* =========================================================
   HERO
   ========================================================= */

/* Hero Section */
.hero {
    max-width: var(--container);
    margin: var(--space-xl) auto 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: var(--space-xl);
    align-items: center;
}

/* Hero media queries */



/* =========================================================
   HERO COPY
   ========================================================= */

.hero-copy {
    padding-right: var(--space-xl);
}


.hero-kicker {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    color: var(--color-muted);
    margin-bottom: var(--space-s);
}


.hero-title {
    font-size: var(--hero-title-size);
    font-weight: 600;
    letter-spacing: -0.03em;
    margin: 0 0 var(--space-m);
}

   

    .hero-title span.brand {
        display: inline-block;
    }

.hero-subtitle {
    font-size: var(--hero-subtitle-size);
    color: #4f4f4f;
    max-width: 540px;
    margin-bottom: var(--space-l);
}


.hero-cta-row {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-m);
    align-items: center;
    margin-bottom: var(--space-m);
}

/* =========================================================
   HERO META
   ========================================================= */

.hero-meta {
    font-size: 13px;
    color: var(--color-muted);
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-m);
}



.hero-meta-item {
    display: flex;
    align-items: center;
    gap: 6px;
}


.hero-meta-dot {
    width: 6px;
    height: 6px;
    border-radius: 999px;
    background: #c0c0c0;
}

/* =========================================================
   HERO VISUAL
   ========================================================= */



.hero-visual-wrap {
    position: relative;
}

.hero-visual {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    background: #d4d4d4 no-repeat center center;
    background-size: cover;
    height: 360px;
}

.hero-layer-bg {
    position: absolute;
    inset: -5%;
    background-image: linear-gradient(135deg,#2f3438,#15181b);
    transform: translateY(0);
    will-change: transform;
}


.hero-layer-photo {
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg,rgba(0,0,0,0.36),rgba(0,0,0,0.75));
    mix-blend-mode: multiply;
}


.hero-layer-noise {
    position: absolute;
    inset: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.7' numOctaves='2' stitchTiles='noStitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.12'/%3E%3C/svg%3E");
    opacity: 0.6;
    mix-blend-mode: soft-light;
}


.hero-visual-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top,rgba(0,0,0,0.55),rgba(0,0,0,0.15),transparent);
}


.hero-visual-content {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    color: #f5f5f5;
}


.hero-label {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.18em;
/*    color: #c0c0c0;*/
    margin-bottom: var(--space-xs);
}

.hero-visual-title {
    font-size: 18px;
    font-weight: 500;
/*    max-width: 260px;*/
}

.hero-visual-meta {
    margin-top: var(--space-m);
    font-size: 12px;
/*    color: #d0d0d0;*/
}

    .hero-visual-meta span + span::before {
        content: " · ";
    }

.hero-visual-hint {
    position: absolute;
    top: var(--space-m);
    right: var(--space-m);
    font-size: 11px;
    color: #e0e0e0;
    padding: 4px 10px;
    border-radius: 999px;
    background: rgba(0,0,0,0.36);
    border: 1px solid rgba(255,255,255,0.14);
}

/* =========================================================
   HERO BELOW
   ========================================================= */

.hero-below {
    max-width: 1200px;
    margin: var(--space-2xl) auto 0;
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
    gap: var(--space-xl);
    align-items: flex-start;
}


/* =========================================================
   EFFECTS & UTILITIES
   ========================================================= */

.reveal {
    opacity: 0;
    animation: revealAnimation 1s forwards;
}

@keyframes revealAnimation {
    to {
        opacity: 1;
    }
}

.bottomleft {
    position: absolute;
    padding-left: 17px;
    padding-bottom: 17px;
}

/* =========================================================
   VIDEO
   ========================================================= */

.video-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

    .video-wrapper video {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 100%;
        height: 100%;
        object-fit: cover;
        transform: translate(-50%, -50%);
        pointer-events: none;
    }

        .video-wrapper video::-ms-media-controls {
            display: none !important;
        }

@media (max-width: 767px) {
    .hero-meta {
        display: none;
    }
}

@media(max-width: 900px) {
    .hero {
        grid-template-columns: 1fr;
        gap: var(--space-l);
        margin-top: var(--space-l);
    }
}

@media(max-width: 1000px) {
    .hero-below {
        grid-template-columns: 1fr;
        gap: var(--space-l);
    }
}