/* ── Section Tags ── */
.section-tag {
    display: inline-block;
    font-size: 0.75rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: #0d9488;
    font-weight: 700;
    font-family: 'Lato', sans-serif;
}

.section-title {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: clamp(2rem, 4vw, 3.25rem);
    font-weight: 700;
    color: #0f172a;
    line-height: 1.15;
}

/* ── Nav Link Color Transition ── */
.nav-link {
    position: relative;
}
.nav-link::after {
    content: '';
    position: absolute;
    bottom: -4px;
    left: 0;
    width: 0;
    height: 2px;
    background: #2dd4bf;
    transition: width 0.3s ease;
}
.nav-link:hover::after {
    width: 100%;
}

/* ── Hero Animations ── */
.hero-sub { animation: fadeSlideUp 0.8s ease forwards 0.2s; }
.hero-title { animation: fadeSlideUp 0.8s ease forwards 0.4s; }
.hero-desc { animation: fadeSlideUp 0.8s ease forwards 0.6s; }
.hero-cta { animation: fadeSlideUp 0.8s ease forwards 0.8s; }

@keyframes fadeSlideUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ── Scroll Indicator ── */
.scroll-indicator {
    animation: bounceDown 2s ease infinite;
}
@keyframes bounceDown {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(8px); }
}

/* ── Reveal Animations (below fold only) ── */
.reveal {
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.7s ease, transform 0.7s ease;
}
.reveal-left {
    opacity: 1;
    transform: translateX(0);
    transition: opacity 0.7s ease, transform 0.7s ease;
}
.reveal-right {
    opacity: 1;
    transform: translateX(0);
    transition: opacity 0.7s ease, transform 0.7s ease;
}

/* Reduced motion: keep everything visible */
@media (prefers-reduced-motion: reduce) {
    .reveal, .reveal-left, .reveal-right,
    .hero-sub, .hero-title, .hero-desc, .hero-cta {
        opacity: 1;
        transform: none;
        animation: none;
    }
}

/* ── Gallery Hover ── */
.gallery-item {
    cursor: pointer;
}
.gallery-item img {
    transition: transform 0.7s ease;
}

/* ── Mobile Link ── */
.mobile-link {
    position: relative;
}
