/* ===========================================
   Structural Themes — Each theme radically changes
   layout, spacing, shapes, and typography.
   Colors are handled via CSS variables in index.php.
   =========================================== */

/* ============================================================
   1. FOREST LODGE (default) — No overrides needed
   ============================================================ */

/* ============================================================
   2. SNOW RESORT — Frosted glass, sharp lines, ice feel
   ============================================================ */
[data-theme="snow-resort"] {
    --radius-sm: 4px;
    --radius-md: 6px;
    --radius-lg: 8px;
    --radius-xl: 10px;
    --font-display: 'Poppins', sans-serif;
}

[data-theme="snow-resort"] .hero { min-height: 80vh; }
[data-theme="snow-resort"] .hero-badge {
    background: rgba(255,255,255,0.2);
    border-radius: 4px;
    border: 1px solid rgba(255,255,255,0.35);
    letter-spacing: 3px;
}
[data-theme="snow-resort"] .hero-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: clamp(2rem, 5vw, 4rem);
}
[data-theme="snow-resort"] .hero-subtitle { letter-spacing: 1px; }
[data-theme="snow-resort"] .btn-primary,
[data-theme="snow-resort"] .btn-secondary {
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 13px;
}
[data-theme="snow-resort"] .cabana-card {
    border-radius: 6px;
    border: 1px solid rgba(0,0,0,0.08);
}
[data-theme="snow-resort"] .cabana-card img { border-radius: 0; }
[data-theme="snow-resort"] .cabana-info { padding: 20px 18px; }
[data-theme="snow-resort"] .cabanas-grid {
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 20px;
}
[data-theme="snow-resort"] .section-title {
    text-transform: uppercase;
    letter-spacing: 2px;
    font-family: 'Poppins', sans-serif;
    font-weight: 800;
}
[data-theme="snow-resort"] .stat-card {
    background: rgba(255,255,255,0.08);
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 4px;
}
[data-theme="snow-resort"] .attraction-card,
[data-theme="snow-resort"] .tip-card {
    border-radius: 4px;
    border: 1px solid rgba(0,0,0,0.06);
}
[data-theme="snow-resort"] .wave-divider { display: none; }
[data-theme="snow-resort"] .gallery-grid { gap: 3px; }
[data-theme="snow-resort"] .gallery-item { border-radius: 0; }
[data-theme="snow-resort"] .contact-section {
    border-radius: 0;
}

/* ============================================================
   3. OCEAN RETREAT — Flowing curves, soft wave-like feel
   ============================================================ */
[data-theme="ocean-retreat"] {
    --radius-sm: 20px;
    --radius-md: 28px;
    --radius-lg: 36px;
    --radius-xl: 50px;
}

[data-theme="ocean-retreat"] .hero { min-height: 85vh; }
[data-theme="ocean-retreat"] .hero-overlay {
    background: linear-gradient(
        180deg,
        rgba(8, 47, 73, 0.5) 0%,
        rgba(8, 47, 73, 0.2) 40%,
        rgba(8, 47, 73, 0.6) 100%
    );
}
[data-theme="ocean-retreat"] .hero-badge { border-radius: 50px; padding: 10px 24px; }
[data-theme="ocean-retreat"] .hero-cta { gap: 20px; }
[data-theme="ocean-retreat"] .btn-primary,
[data-theme="ocean-retreat"] .btn-secondary {
    border-radius: 50px;
    padding: 15px 36px;
}
[data-theme="ocean-retreat"] .cabana-card {
    border-radius: 28px;
    overflow: hidden;
}
[data-theme="ocean-retreat"] .cabana-card img { border-radius: 0; }
[data-theme="ocean-retreat"] .section-badge { border-radius: 50px; }
[data-theme="ocean-retreat"] .attraction-card {
    border-radius: 24px;
    padding: 32px;
}
[data-theme="ocean-retreat"] .attraction-icon {
    border-radius: 50%;
    width: 56px; height: 56px;
}
[data-theme="ocean-retreat"] .tip-card { border-radius: 24px; }
[data-theme="ocean-retreat"] .gallery-item { border-radius: 20px; }
[data-theme="ocean-retreat"] .review-card { border-radius: 24px; }
[data-theme="ocean-retreat"] .stat-card { border-radius: 20px; }
[data-theme="ocean-retreat"] .stats-section { border-radius: 40px; margin: 0 20px; }
[data-theme="ocean-retreat"] .contact-card { border-radius: 24px; }

/* ============================================================
   4. SUNSET CABIN — Warm overlap, layered cards
   ============================================================ */
[data-theme="sunset-cabin"] {
    --radius-sm: 16px;
    --radius-md: 20px;
    --radius-lg: 24px;
}

[data-theme="sunset-cabin"] .hero-overlay {
    background: linear-gradient(
        180deg,
        rgba(124, 45, 18, 0.4) 0%,
        rgba(67, 20, 7, 0.3) 40%,
        rgba(67, 20, 7, 0.75) 100%
    );
}
[data-theme="sunset-cabin"] .hero-content { max-width: 900px; }
[data-theme="sunset-cabin"] .hero-title {
    font-size: clamp(2.8rem, 7vw, 5.5rem);
    line-height: 1.05;
}
[data-theme="sunset-cabin"] .cabanas-grid {
    grid-template-columns: repeat(auto-fill, minmax(380px, 1fr));
    gap: 28px;
}
[data-theme="sunset-cabin"] .cabana-card {
    box-shadow: 0 20px 60px rgba(0,0,0,0.15);
    border-radius: 20px;
}
[data-theme="sunset-cabin"] .cabana-card:hover { transform: translateY(-12px); }
[data-theme="sunset-cabin"] .attraction-card {
    background: linear-gradient(145deg, rgba(255,237,213,0.5), #fff);
    border: 1px solid rgba(234,88,12,0.1);
}
[data-theme="sunset-cabin"] .section-title { font-weight: 800; }
[data-theme="sunset-cabin"] .stats-section {
    background: linear-gradient(135deg, #7c2d12, #431407);
}
[data-theme="sunset-cabin"] .wave-divider svg path { opacity: 0.5; }
[data-theme="sunset-cabin"] .gallery-grid { gap: 10px; }
[data-theme="sunset-cabin"] .gallery-item { border-radius: 16px; }

/* ============================================================
   5. AUTUMN WOODS — Earthy, serif-heavy, editorial
   ============================================================ */
[data-theme="autumn-woods"] {
    --font-display: Georgia, 'Playfair Display', serif;
    --radius-sm: 8px;
    --radius-md: 12px;
    --radius-lg: 16px;
}

[data-theme="autumn-woods"] body,
[data-theme="autumn-woods"] .section-subtitle,
[data-theme="autumn-woods"] .hero-subtitle {
    font-family: Georgia, 'Times New Roman', serif;
}
[data-theme="autumn-woods"] .hero-title {
    font-family: Georgia, serif;
    font-style: italic;
    font-size: clamp(3rem, 7vw, 6rem);
    font-weight: 400;
}
[data-theme="autumn-woods"] .hero-badge {
    font-family: Georgia, serif;
    font-style: italic;
    letter-spacing: 2px;
}
[data-theme="autumn-woods"] .section-title {
    font-family: Georgia, serif;
    font-style: italic;
    font-weight: 400;
    font-size: clamp(2rem, 4vw, 3rem);
}
[data-theme="autumn-woods"] .section-badge {
    font-family: Georgia, serif;
    font-style: italic;
}
[data-theme="autumn-woods"] .btn-primary {
    border-radius: 0;
    font-family: Georgia, serif;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-size: 12px;
}
[data-theme="autumn-woods"] .btn-secondary {
    border-radius: 0;
}
[data-theme="autumn-woods"] .cabana-card { border-radius: 0; }
[data-theme="autumn-woods"] .cabana-card img { border-radius: 0; }
[data-theme="autumn-woods"] .cabanas-grid {
    grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
    gap: 0;
}
[data-theme="autumn-woods"] .attraction-card {
    border-radius: 0;
    border-bottom: 2px solid;
    border-image: linear-gradient(to right, var(--green-600), transparent) 1;
    box-shadow: none;
    background: transparent;
}
[data-theme="autumn-woods"] .tip-card {
    border-radius: 0;
    border-left: 3px solid var(--green-600);
}
[data-theme="autumn-woods"] .gallery-item { border-radius: 0; }
[data-theme="autumn-woods"] .gallery-grid { gap: 4px; }
[data-theme="autumn-woods"] .wave-divider { display: none; }
[data-theme="autumn-woods"] .review-card { border-radius: 0; }

/* ============================================================
   6. VOLCÁNICO — Full dark mode, dramatic contrast
   ============================================================ */
[data-theme="volcanic"] {
    --dark-900: #0f0505;
    --dark-800: #1a0a0a;
    --gray-50: #1e1212;
    --gray-100: #2a1515;
}

[data-theme="volcanic"] header {
    background: rgba(15, 5, 5, 0.9) !important;
}
[data-theme="volcanic"] header.scrolled {
    background: rgba(15, 5, 5, 0.95) !important;
}
[data-theme="volcanic"] .welcome-section,
[data-theme="volcanic"] .attractions-section,
[data-theme="volcanic"] .tips-section,
[data-theme="volcanic"] .gallery-section {
    background: #0f0505;
    color: #f5f5f5;
}
[data-theme="volcanic"] .section-title { color: #f5f5f5; }
[data-theme="volcanic"] .section-subtitle { color: rgba(255,255,255,0.6); }
[data-theme="volcanic"] .section-badge {
    background: rgba(220, 38, 38, 0.15);
    color: #fca5a5;
}
[data-theme="volcanic"] .welcome-text p { color: rgba(255,255,255,0.7); }
[data-theme="volcanic"] .hero-overlay {
    background: linear-gradient(180deg, rgba(15,5,5,0.6) 0%, rgba(15,5,5,0.3) 40%, rgba(15,5,5,0.8) 100%);
}
[data-theme="volcanic"] .cabana-card {
    background: #1a0a0a;
    border: 1px solid rgba(220,38,38,0.15);
    color: #f5f5f5;
}
[data-theme="volcanic"] .cabana-name,
[data-theme="volcanic"] .cabana-price { color: #f5f5f5; }
[data-theme="volcanic"] .cabana-desc { color: rgba(255,255,255,0.6); }
[data-theme="volcanic"] .cabana-features span { color: rgba(255,255,255,0.7); background: rgba(255,255,255,0.06); }
[data-theme="volcanic"] .attraction-card {
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(220,38,38,0.1);
    color: #f5f5f5;
}
[data-theme="volcanic"] .attraction-card h3 { color: #f5f5f5; }
[data-theme="volcanic"] .attraction-card p { color: rgba(255,255,255,0.6); }
[data-theme="volcanic"] .tip-card {
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(220,38,38,0.1);
    color: #f5f5f5;
}
[data-theme="volcanic"] .tip-card h3 { color: #f5f5f5; }
[data-theme="volcanic"] .tip-card p { color: rgba(255,255,255,0.6); }
[data-theme="volcanic"] .review-card {
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.08);
}
[data-theme="volcanic"] .review-card p { color: rgba(255,255,255,0.7); }
[data-theme="volcanic"] .review-name { color: #f5f5f5; }
[data-theme="volcanic"] .wave-divider svg path { fill: #0f0505; }
[data-theme="volcanic"] footer {
    background: #080303;
    border-top: 1px solid rgba(220,38,38,0.15);
}
[data-theme="volcanic"] .contact-section {
    background: linear-gradient(135deg, #1a0a0a, #0f0505);
}

/* ============================================================
   7. LAVENDER SPRINGS — Soft, rounded, spa-like
   ============================================================ */
[data-theme="lavender-springs"] {
    --radius-sm: 24px;
    --radius-md: 30px;
    --radius-lg: 40px;
    --radius-xl: 50px;
}

[data-theme="lavender-springs"] .hero { min-height: 75vh; }
[data-theme="lavender-springs"] .hero-overlay {
    background: linear-gradient(180deg, rgba(46,16,101,0.5) 0%, rgba(76,29,149,0.3) 50%, rgba(46,16,101,0.7) 100%);
}
[data-theme="lavender-springs"] .hero-title {
    font-weight: 400;
    font-style: italic;
    font-size: clamp(2.5rem, 6vw, 4.5rem);
}
[data-theme="lavender-springs"] .hero-badge { border-radius: 50px; }
[data-theme="lavender-springs"] .btn-primary,
[data-theme="lavender-springs"] .btn-secondary {
    border-radius: 50px;
    padding: 14px 32px;
    font-weight: 400;
    letter-spacing: 0.5px;
}
[data-theme="lavender-springs"] .cabana-card {
    border-radius: 30px;
    box-shadow: 0 8px 40px rgba(124, 58, 237, 0.08);
}
[data-theme="lavender-springs"] .cabana-card img { border-radius: 30px 30px 0 0; }
[data-theme="lavender-springs"] .cabanas-grid { gap: 30px; }
[data-theme="lavender-springs"] .attraction-card {
    border-radius: 28px;
    padding: 30px;
    border: 1px solid rgba(124,58,237,0.08);
}
[data-theme="lavender-springs"] .attraction-icon { border-radius: 50%; }
[data-theme="lavender-springs"] .tip-card {
    border-radius: 28px;
    border: 1px solid rgba(124,58,237,0.08);
}
[data-theme="lavender-springs"] .stats-section { border-radius: 50px; margin: 0 40px; }
[data-theme="lavender-springs"] .stat-card { border-radius: 24px; }
[data-theme="lavender-springs"] .gallery-item { border-radius: 24px; }
[data-theme="lavender-springs"] .gallery-grid { gap: 12px; }
[data-theme="lavender-springs"] .review-card { border-radius: 28px; }
[data-theme="lavender-springs"] .section-title {
    font-weight: 400;
    font-style: italic;
}
[data-theme="lavender-springs"] .contact-card { border-radius: 28px; }

/* ============================================================
   8. DESERT OASIS — Wide spacing, large text, horizontal feel
   ============================================================ */
[data-theme="desert-oasis"] {
    --radius-sm: 6px;
    --radius-md: 8px;
    --radius-lg: 12px;
}

[data-theme="desert-oasis"] .hero {
    min-height: 95vh;
}
[data-theme="desert-oasis"] .hero-content { max-width: 1000px; }
[data-theme="desert-oasis"] .hero-title {
    font-size: clamp(3rem, 8vw, 6.5rem);
    letter-spacing: -2px;
    line-height: 1;
    font-weight: 800;
}
[data-theme="desert-oasis"] .hero-subtitle {
    font-size: 18px;
    max-width: 600px;
    margin: 0 auto;
}
[data-theme="desert-oasis"] .welcome-section,
[data-theme="desert-oasis"] .attractions-section,
[data-theme="desert-oasis"] .tips-section {
    padding: 100px 0;
}
[data-theme="desert-oasis"] .section-title {
    font-size: clamp(2.2rem, 5vw, 3.5rem);
    letter-spacing: -1px;
}
[data-theme="desert-oasis"] .cabanas-grid {
    grid-template-columns: repeat(auto-fill, minmax(400px, 1fr));
    gap: 32px;
}
[data-theme="desert-oasis"] .cabana-card { border-radius: 8px; }
[data-theme="desert-oasis"] .cabana-card img { height: 280px; }
[data-theme="desert-oasis"] .attractions-grid {
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 24px;
}
[data-theme="desert-oasis"] .attraction-card {
    padding: 36px;
    border-radius: 8px;
}
[data-theme="desert-oasis"] .gallery-grid { gap: 6px; }
[data-theme="desert-oasis"] .gallery-item { border-radius: 4px; }
[data-theme="desert-oasis"] .wave-divider { display: none; }
[data-theme="desert-oasis"] .stats-section { border-radius: 0; }
[data-theme="desert-oasis"] .btn-primary,
[data-theme="desert-oasis"] .btn-secondary {
    border-radius: 4px;
    padding: 16px 40px;
    font-size: 15px;
}

/* ============================================================
   9. NORDIC PINE — Ultra-minimal, thin lines, airy spacing
   ============================================================ */
[data-theme="nordic-pine"] {
    --radius-sm: 0;
    --radius-md: 0;
    --radius-lg: 0;
    --radius-xl: 0;
}

[data-theme="nordic-pine"] .hero { min-height: 70vh; }
[data-theme="nordic-pine"] .hero-badge {
    border-radius: 0;
    border: 1px solid rgba(255,255,255,0.3);
    background: transparent;
}
[data-theme="nordic-pine"] .hero-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 300;
    font-size: clamp(2.5rem, 6vw, 5rem);
    letter-spacing: 4px;
    text-transform: uppercase;
}
[data-theme="nordic-pine"] .hero-subtitle { font-weight: 300; letter-spacing: 1px; }
[data-theme="nordic-pine"] .btn-primary {
    border-radius: 0;
    border: 2px solid #fff;
    background: transparent;
    font-weight: 400;
    letter-spacing: 3px;
    text-transform: uppercase;
    font-size: 12px;
}
[data-theme="nordic-pine"] .btn-primary:hover {
    background: rgba(255,255,255,0.15);
}
[data-theme="nordic-pine"] .btn-secondary {
    border-radius: 0;
    border: 1px solid rgba(255,255,255,0.3);
}
[data-theme="nordic-pine"] .btn-reserve-header { border-radius: 0; }
[data-theme="nordic-pine"] .section-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 4px;
    font-size: clamp(1.5rem, 3vw, 2.2rem);
}
[data-theme="nordic-pine"] .section-badge {
    border-radius: 0;
    letter-spacing: 3px;
    font-weight: 400;
}
[data-theme="nordic-pine"] .cabana-card {
    border-radius: 0;
    border: 1px solid #e2e8f0;
    box-shadow: none;
}
[data-theme="nordic-pine"] .cabana-card:hover {
    box-shadow: 0 4px 20px rgba(0,0,0,0.05);
    transform: none;
}
[data-theme="nordic-pine"] .cabana-card img { border-radius: 0; }
[data-theme="nordic-pine"] .cabanas-grid { gap: 1px; background: #e2e8f0; }
[data-theme="nordic-pine"] .attraction-card {
    border-radius: 0;
    border: 1px solid #e2e8f0;
    box-shadow: none;
}
[data-theme="nordic-pine"] .tip-card {
    border-radius: 0;
    border: 1px solid #e2e8f0;
    box-shadow: none;
}
[data-theme="nordic-pine"] .gallery-item { border-radius: 0; }
[data-theme="nordic-pine"] .gallery-grid { gap: 1px; }
[data-theme="nordic-pine"] .review-card { border-radius: 0; border: 1px solid #e2e8f0; }
[data-theme="nordic-pine"] .stats-section { border-radius: 0; }
[data-theme="nordic-pine"] .stat-card { border-radius: 0; }
[data-theme="nordic-pine"] .wave-divider { display: none; }
[data-theme="nordic-pine"] .contact-card { border-radius: 0; }

/* ============================================================
   10. MIDNIGHT AURORA — Full dark, neon borders, glowing accents
   ============================================================ */
[data-theme="midnight-aurora"] {
    --dark-900: #020617;
    --dark-800: #0f172a;
    --gray-50: #0f172a;
    --gray-100: #1e293b;
}

[data-theme="midnight-aurora"] header {
    background: rgba(2, 6, 23, 0.9) !important;
}
[data-theme="midnight-aurora"] header.scrolled {
    background: rgba(2, 6, 23, 0.95) !important;
    border-bottom: 1px solid rgba(99,102,241,0.2);
}
[data-theme="midnight-aurora"] .welcome-section,
[data-theme="midnight-aurora"] .attractions-section,
[data-theme="midnight-aurora"] .tips-section,
[data-theme="midnight-aurora"] .gallery-section {
    background: #020617;
    color: #f1f5f9;
}
[data-theme="midnight-aurora"] .section-title { color: #f1f5f9; }
[data-theme="midnight-aurora"] .section-subtitle { color: rgba(241,245,249,0.5); }
[data-theme="midnight-aurora"] .section-badge {
    background: rgba(99,102,241,0.12);
    color: #a5b4fc;
    border: 1px solid rgba(99,102,241,0.2);
}
[data-theme="midnight-aurora"] .welcome-text p { color: rgba(241,245,249,0.6); }
[data-theme="midnight-aurora"] .hero-overlay {
    background: linear-gradient(180deg, rgba(2,6,23,0.6) 0%, rgba(30,27,75,0.3) 50%, rgba(2,6,23,0.85) 100%);
}
[data-theme="midnight-aurora"] .cabana-card {
    background: #0f172a;
    border: 1px solid rgba(99,102,241,0.15);
    color: #f1f5f9;
    box-shadow: 0 0 30px rgba(99,102,241,0.05);
}
[data-theme="midnight-aurora"] .cabana-card:hover {
    border-color: rgba(99,102,241,0.35);
    box-shadow: 0 0 40px rgba(99,102,241,0.1);
}
[data-theme="midnight-aurora"] .cabana-name,
[data-theme="midnight-aurora"] .cabana-price { color: #f1f5f9; }
[data-theme="midnight-aurora"] .cabana-desc { color: rgba(241,245,249,0.5); }
[data-theme="midnight-aurora"] .cabana-features span {
    color: rgba(241,245,249,0.7);
    background: rgba(99,102,241,0.08);
}
[data-theme="midnight-aurora"] .attraction-card {
    background: rgba(99,102,241,0.04);
    border: 1px solid rgba(99,102,241,0.12);
    color: #f1f5f9;
}
[data-theme="midnight-aurora"] .attraction-card:hover {
    border-color: rgba(99,102,241,0.3);
    box-shadow: 0 0 20px rgba(99,102,241,0.08);
}
[data-theme="midnight-aurora"] .attraction-card h3 { color: #f1f5f9; }
[data-theme="midnight-aurora"] .attraction-card p { color: rgba(241,245,249,0.5); }
[data-theme="midnight-aurora"] .attraction-icon {
    background: rgba(99,102,241,0.1);
    border: 1px solid rgba(99,102,241,0.2);
}
[data-theme="midnight-aurora"] .tip-card {
    background: rgba(99,102,241,0.04);
    border: 1px solid rgba(99,102,241,0.12);
    color: #f1f5f9;
}
[data-theme="midnight-aurora"] .tip-card:hover {
    border-color: rgba(99,102,241,0.3);
}
[data-theme="midnight-aurora"] .tip-card h3 { color: #f1f5f9; }
[data-theme="midnight-aurora"] .tip-card p { color: rgba(241,245,249,0.5); }
[data-theme="midnight-aurora"] .review-card {
    background: rgba(99,102,241,0.04);
    border: 1px solid rgba(99,102,241,0.12);
}
[data-theme="midnight-aurora"] .review-card:hover {
    border-color: rgba(99,102,241,0.25);
}
[data-theme="midnight-aurora"] .review-card p { color: rgba(241,245,249,0.7); }
[data-theme="midnight-aurora"] .review-name { color: #f1f5f9; }
[data-theme="midnight-aurora"] .wave-divider svg path { fill: #020617; }
[data-theme="midnight-aurora"] footer {
    background: #010413;
    border-top: 1px solid rgba(99,102,241,0.15);
}
[data-theme="midnight-aurora"] .stats-section {
    background: linear-gradient(135deg, #1e1b4b, #0f172a);
    border: 1px solid rgba(99,102,241,0.1);
}
[data-theme="midnight-aurora"] .contact-section {
    background: linear-gradient(135deg, #0f172a, #020617);
}
[data-theme="midnight-aurora"] .btn-primary {
    box-shadow: 0 0 20px rgba(99,102,241,0.3);
}
[data-theme="midnight-aurora"] .btn-primary:hover {
    box-shadow: 0 0 30px rgba(99,102,241,0.5);
}

/* ============================================================
   RESPONSIVE ADJUSTMENTS
   ============================================================ */
@media (max-width: 768px) {
    [data-theme="desert-oasis"] .cabanas-grid { grid-template-columns: 1fr; }
    [data-theme="desert-oasis"] .hero-title { letter-spacing: -1px; }
    [data-theme="ocean-retreat"] .stats-section,
    [data-theme="lavender-springs"] .stats-section { margin: 0; border-radius: 0; }
    [data-theme="snow-resort"] .cabanas-grid { grid-template-columns: 1fr; }
    [data-theme="nordic-pine"] .cabanas-grid { gap: 16px; background: transparent; }
}
