/* ============================================
   SHAKA Biarritz 2026 - Site Styles
   ============================================ */

/* Alpine.js cloak */
[x-cloak] { display: none !important; }

/* ============================================
   Font Faces
   ============================================ */

/* Masqualero Font Family */
@font-face {
    font-family: 'Masqualero';
    src: url('/fonts/Masqualero W04 Regular.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Masqualero';
    src: url('/fonts/Masqualero W04 Italic.otf') format('opentype');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Masqualero';
    src: url('/fonts/Masqualero W04 Light.otf') format('opentype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Masqualero';
    src: url('/fonts/Masqualero W04 Light Italic.otf') format('opentype');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Masqualero';
    src: url('/fonts/Masqualero W04 Bold.otf') format('opentype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Masqualero';
    src: url('/fonts/Masqualero W04 Bold Italic.otf') format('opentype');
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Masqualero';
    src: url('/fonts/Masqualero W04 DemiBold.otf') format('opentype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Masqualero';
    src: url('/fonts/Masqualero W04 DemiBold Italic.otf') format('opentype');
    font-weight: 600;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Masqualero';
    src: url('/fonts/Masqualero W04 Black.otf') format('opentype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Masqualero';
    src: url('/fonts/Masqualero W04 Black Italic.otf') format('opentype');
    font-weight: 900;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Masqualero';
    src: url('/fonts/Masqualero W04 ExtraBlack.otf') format('opentype');
    font-weight: 950;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Masqualero';
    src: url('/fonts/Masqualero W04 ExtraBlack Italic.otf') format('opentype');
    font-weight: 950;
    font-style: italic;
    font-display: swap;
}

/* Poppins Font Family */
@font-face {
    font-family: 'Poppins';
    src: url('/fonts/Poppins-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Poppins';
    src: url('/fonts/Poppins-Italic.ttf') format('truetype');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Poppins';
    src: url('/fonts/Poppins-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Poppins';
    src: url('/fonts/Poppins-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Poppins';
    src: url('/fonts/Poppins-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* ============================================
   Base Styles
   ============================================ */

body {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    font-family: 'Poppins', sans-serif;
}

html {
    scroll-behavior: smooth;
}

/* ============================================
   Font Utility Classes
   ============================================ */

.font-masqualero {
    font-family: 'Masqualero', sans-serif;
    font-weight: 700;
}
.font-masqualero-black {
    font-family: 'Masqualero', sans-serif;
    font-weight: 950;
}
.font-masqualero-italic {
    font-family: 'Masqualero', sans-serif;
    font-weight: 950;
    font-style: italic;
}
.font-poppins {
    font-family: 'Poppins', sans-serif;
}

/* ============================================
   Header Navigation
   ============================================ */

.btn-nav {
    font-family: 'Poppins', sans-serif;
    font-weight: bold;
    color: white;
    backdrop-filter: blur(4px);
}
.btn-nav:hover { background-color: #FF4081 !important; color: white; }
.btn-nav-scrolled {
    background-color: rgb(17, 17, 17) !important;
    color: white !important;
    text-shadow: none;
}
.btn-nav-scrolled:hover {
    background-color: #FF4081 !important;
    color: white !important;
}

/* ============================================
   Skewed Design System
   ============================================ */

.skew-card { transform: skewX(-3deg); }
.skew-card > * { transform: skewX(3deg); }
.skew-card-fill { transform: skewX(-3deg) !important; }
.skew-card-fill > * { transform: skewX(3deg); }
.skew-btn {
    transform: skewX(-6deg);
    display: inline-block;
    font-family: 'Poppins', sans-serif;
}
.skew-btn > * { transform: skewX(6deg); display: inline-block; }

@media (min-width: 768px) {
    .skew-card { transform: skewX(-6deg); }
    .skew-card > * { transform: skewX(6deg); }
    .skew-card-fill { transform: skewX(-6deg) !important; }
    .skew-card-fill > * { transform: skewX(6deg); }
    .skew-btn { transform: skewX(-9deg); }
    .skew-btn > * { transform: skewX(9deg); }
}

/* ============================================
   Nav Item Hover Effect
   ============================================ */

.nav-item {
    position: relative;
    background-color: transparent;
}
.nav-item::before {
    content: '';
    position: absolute;
    inset: 0;
    background-color: #FF4081;
    opacity: 0;
    z-index: -1;
}
.nav-item:hover::before {
    opacity: 1;
}
.nav-item:hover {
    color: white !important;
}
.nav-item:hover span {
    color: white !important;
}

/* ============================================
   Mobile Full Screen Menu
   ============================================ */

.mobile-menu-overlay {
    position: fixed;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.98);
    backdrop-filter: blur(10px);
    z-index: 9999;
}
.mobile-menu-content {
    height: 100%;
    overflow-y: auto;
    padding: 6rem 2rem 2rem;
}
.mobile-menu-link {
    position: relative;
    display: inline-block;
}
.mobile-menu-link:hover {
    transform: translateX(8px);
}
