/* ==========================================================================
   slots.irish - Global Styles
   Design System: "The Digital Concierge"
   ========================================================================== */

/* --- Base Typography --- */
body {
    font-family: 'Inter', sans-serif;
}

h1, h2, h3, h4, .headline {
    font-family: 'Plus Jakarta Sans', sans-serif;
}

/* --- Material Symbols Configuration --- */
.material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
    display: inline-block;
    line-height: 1;
    text-transform: none;
    letter-spacing: normal;
    word-wrap: normal;
    white-space: nowrap;
    direction: ltr;
}

/* --- Glassmorphism Navigation --- */
.glass-nav {
    background: rgba(248, 249, 250, 0.8);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
}

/* --- Gradient Utilities --- */
.cta-gradient,
.primary-gradient,
.content-gradient {
    background: linear-gradient(135deg, #006e26 0%, #09de57 100%);
}

.hero-gradient {
    background: linear-gradient(0deg, rgba(25, 28, 29, 0.9) 0%, rgba(25, 28, 29, 0) 60%);
}

/* --- Ambient Shadow (Tinted, per Design System) --- */
.ambient-shadow {
    box-shadow: 0 24px 40px rgba(25, 28, 29, 0.05);
}

/* --- Ghost Border (per Design System, outline_variant at 15% opacity) --- */
.ghost-border {
    border: 1px solid rgba(186, 203, 182, 0.15);
}

/* --- Mega Menu --- */
.mega-menu {
    opacity: 0;
    visibility: hidden;
    transform: translateY(-8px);
    transition: all 0.3s ease;
}

.group:hover .mega-menu,
.mega-menu-trigger:hover .mega-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    display: block;
}

/* --- Card Hover Lift --- */
.card-hover {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.card-hover:hover {
    transform: scale(1.02);
    box-shadow: 0 24px 40px rgba(25, 28, 29, 0.06);
}

/* --- Filled Icon Utility --- */
.icon-filled {
    font-variation-settings: 'FILL' 1;
}
