/*
Theme Name: Travellagio
Theme URI: https://travellagio.com
Author: Antigravity
Description: A luxury, professional travel theme for high-end narratives.
Version: 2.0.0
Text Domain: travellagio
*/

/* --- 1. CORE VARIABLES & RESETS --- */
:root {
    --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
    --ease-in-out-circ: cubic-bezier(0.85, 0, 0.15, 1);
}

html {
    scroll-behavior: smooth;
}

body {
    overflow-x: hidden;
    /* Prevent horizontal scroll triggers */
}

/* --- 2. ADVANCED ANIMATIONS --- */

/* Reveal on Scroll (Handled by JS observer adding .is-visible) */
.reveal-on-scroll {
    opacity: 0;
    transform: translateY(60px) scale(0.98);
    transition: all 1.2s var(--ease-out-expo);
    will-change: opacity, transform;
}

.reveal-on-scroll.is-visible {
    opacity: 1;
    transform: translateY(0) scale(1);
}

/* Stagger delays */
.delay-100 {
    transition-delay: 0.1s;
}

.delay-200 {
    transition-delay: 0.2s;
}

.delay-300 {
    transition-delay: 0.3s;
}

/* Cinematic Zoom In */
@keyframes cinematicZoom {
    0% {
        transform: scale(1.1);
    }

    100% {
        transform: scale(1);
    }
}

.hero-bg-anim {
    animation: cinematicZoom 10s ease-out forwards;
}

/* Magnetic Button Effect */
.btn-magnetic {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    transition: transform 0.3s var(--ease-out-expo);
}

.btn-magnetic:hover {
    transform: scale(1.05);
}

/* --- 3. LUXURY COMPONENTS --- */

/* Glass Header (Transparent to Solid) */
/* Glass Header (Transparent to Solid) */
.site-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    padding: 2rem 4rem;
    transition: all 0.4s var(--ease-out-expo);
    background: transparent;
    color: var(--wp--preset--color--white);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.site-header.scrolled {
    background: var(--wp--preset--color--primary);
    /* Midnight Navy */
    backdrop-filter: blur(10px);
    padding: 1rem 4rem;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.site-header.scrolled .wp-block-navigation__responsive-container-open,
.site-header.scrolled .wp-block-navigation-item__content {
    color: var(--wp--preset--color--white) !important;
}

/* Luxury Card */
.luxury-card {
    position: relative;
    overflow: hidden;
    transition: all 0.6s var(--ease-out-expo);
}

.luxury-card img {
    transition: transform 1.5s var(--ease-out-expo);
}

.luxury-card:hover img {
    transform: scale(1.1);
}

.luxury-card-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(10, 25, 47, 0.8), transparent);
    opacity: 0;
    transition: opacity 0.4s ease;
    display: flex;
    align-items: flex-end;
    padding: 2rem;
}

.luxury-card:hover .luxury-card-overlay {
    opacity: 1;
}

/* Text Highlights */
.gold-accent {
    color: var(--wp--preset--color--secondary);
    font-family: var(--wp--preset--font-family--heading);
    font-style: italic;
}

/* --- 4. FLIGHTS/AFFILIATE WIDGET STYLES --- */
.search-widget-container {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(20px);
    border-radius: 0;
    /* Sharp luxury edges */
    padding: 3rem;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.15);
    border: 1px solid var(--wp--preset--color--secondary);
    position: relative;
    z-index: 10;
    margin-top: -5rem;
    /* Overlap hero */
}