/*
 Theme Name:   Proprietary Editorial Engine v3
 Theme URI:    https://lifediverse.com
 Description:  Custom high-performance editorial engine for Life Diverse Network. Proprietary layout systems.
 Author:       LDN Engineering
 Author URI:   https://lifediverse.com
 Template:     generatepress
 Version:      3.0.0
 License:      GNU General Public License v2 or later
 License URI:  https://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  ldn-gp-child
 Tags:         magazine, editorial, lifestyle, minimal, responsive, grid-layout

 ─────────────────────────────────────────────────────────────
 DESIGN TOKENS — Synced from Figma: LDN-First-Child-Template
 File Key: h6fw1mDnn6YoOJOnAgdEYf
 ─────────────────────────────────────────────────────────────
*/

/* =================================================================
   1. ROOT TOKENS — Figma-Aligned Foundation
   ================================================================= */

:root {
    /* ── 2026 Quiet Luxury Editorial Palette (AD PRO / Kinfolk / Condé Nast) ── */
    --bg-primary:     #FAF7F2;
    --bg-secondary:   #F3EDE2;
    --bg-tertiary:    #EFE7DA;
    --bg-overlay:     rgba(30, 27, 24, 0.48);

    /* ── Text (Warm Espresso & Umber) ── */
    --text-primary:   #1E1B18;
    --text-secondary: #5C544E;
    --text-tertiary:  #8C827A;
    --text-inverse:   #FFFFFF;

    /* ── Borders & Dividers (Warm Stone Hairlines) ── */
    --border:         #E6DFD3;
    --border-hover:   #D4C8B4;
    --divider:        #E6DFD3;

    /* ── Accent (Champagne Bronze & Botanical Sage) ── */
    --accent-primary:   #8C6D46;
    --accent-hover:     #1E1B18;
    --accent-muted:     rgba(140, 109, 70, 0.08);
    --ldn-bronze:       #8C6D46;
    --ldn-bronze-light: #F6F1E8;
    --ldn-sage:         #3F5A49;
    --ldn-sage-light:   #EBF1ED;
    --ldn-terracotta:   #A85842;
    --ldn-terra-light:  #FBF0EC;

    /* ── Shadows (Subtle Ambient Warmth) ── */
    --shadow-sm:      0 2px 6px rgba(30, 27, 24, 0.04);
    --shadow-md:      0 10px 28px -12px rgba(30, 27, 24, 0.07);
    --shadow-lg:      0 20px 44px -20px rgba(30, 27, 24, 0.09);
    --shadow-hover:   0 24px 52px -22px rgba(30, 27, 24, 0.12);

    /* ── Typography — Plus Jakarta Sans + Cormorant Garamond ── */
    --font-primary:   'Plus Jakarta Sans', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-serif:     'Cormorant Garamond', Georgia, serif;

    --text-body:      16px;      /* Figma: 16px */
    --text-lg:        20px;      /* Figma: 20px */
    --text-xl:        24px;      /* Figma: 24px */
    --text-2xl:       32px;      /* Figma: 32px */
    --text-3xl:       40px;      /* Figma: 40px */
    --text-4xl:       48px;      /* Figma: 48px */
    --text-hero:      64px;      /* Figma: 64px */

    --text-sm:        14px;
    --text-xs:        12px;

    --leading-tight:  1.2;
    --leading-snug:   1.35;
    --leading-normal: 1.5;       /* Figma: 150% line-height */
    --leading-loose:  1.7;

    --tracking-tight:  -0.02em;
    --tracking-normal: 0;
    --tracking-wide:   0.05em;
    --tracking-wider:  0.1em;

    /* ── Spacing (Figma tokens) ── */
    --space-1:  4px;
    --space-2:  8px;
    --space-3:  12px;
    --space-4:  16px;
    --space-5:  20px;
    --space-6:  24px;
    --space-7:  32px;
    --space-8:  48px;
    --space-9:  64px;
    --space-10: 96px;

    /* ── Layout ── */
    --max-width:       1200px;
    --max-width-wide:  1440px;
    --max-width-prose: 680px;
    --gutter:          var(--space-6);
    --section-gap:     var(--space-9);

    /* ── Radius (Figma: 4, 8, 12) ── */
    --radius-sm:   4px;
    --radius-md:   8px;
    --radius-lg:   12px;
    --radius-pill: 100px;

    /* ── Transitions ── */
    --ease-out:      cubic-bezier(0.16, 1, 0.3, 1);
    --duration:      0.25s;
    --duration-slow: 0.4s;
}

/* =================================================================
   Global Full-Width Layout Override System
   ================================================================= */
body.ldn-magazine .grid-container {
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 40px !important;
    padding-right: 40px !important;
    box-sizing: border-box !important;
}

body.ldn-magazine #page,
body.ldn-magazine .site-content {
    max-width: 100% !important;
    width: 100% !important;
}

@media (max-width: 768px) {
    body.ldn-magazine .grid-container {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
}

/* =================================================================
   EventPrime Calendar Widget Styling Fixes
   ================================================================= */
.ldn-sidebar-widget .ep-events-view-switcher,
.ldn-sidebar-widget .ep-calendar-view,
.ldn-sidebar-widget .fc-right,
.ldn-sidebar-widget .em-cal-nav,
.ldn-sidebar-widget .em-view-switcher {
    display: none !important;
}

/* Clear border and layout spacing */
.ldn-sidebar-widget .fc-view-container {
    border: none !important;
    background: transparent !important;
}
.ldn-sidebar-widget .fc-toolbar.fc-header-toolbar {
    margin: 0 0 15px 0 !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
}
.ldn-sidebar-widget .fc-toolbar.fc-header-toolbar h2 {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #1a1a1a !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    margin: 0 !important;
}

/* Style prev/next navigation buttons */
.ldn-sidebar-widget .fc-button {
    background: #fff !important;
    border: 1px solid #C5A880 !important;
    color: #C5A880 !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 8px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    padding: 4px 8px !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}
.ldn-sidebar-widget .fc-button:hover {
    background: #C5A880 !important;
    color: #fff !important;
}
.ldn-sidebar-widget .fc-button-group {
    display: inline-flex !important;
    gap: 3px !important;
}
.ldn-sidebar-widget .fc-today-button {
    display: none !important; /* Hide today button to save space */
}

/* Weekday header cells (M T W T F S S) */
.ldn-sidebar-widget .fc-day-header {
    font-family: 'Inter', sans-serif !important;
    font-size: 8px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.02em !important;
    color: #999 !important;
    padding: 6px 1px !important;
    border: none !important;
    border-bottom: 1px solid #E8E8E8 !important;
}
.ldn-sidebar-widget th.fc-day-header span {
    display: inline-block;
    max-width: 12px;
    overflow: hidden;
    text-overflow: clip;
}

/* Table grid borders and padding resets */
.ldn-sidebar-widget .fc-head,
.ldn-sidebar-widget .fc-body,
.ldn-sidebar-widget .fc-widget-header,
.ldn-sidebar-widget .fc-widget-content,
.ldn-sidebar-widget .fc-row,
.ldn-sidebar-widget .fc-content-skeleton table,
.ldn-sidebar-widget .fc-bg table {
    border: none !important;
}
.ldn-sidebar-widget td.fc-day-top {
    text-align: center !important;
    padding: 4px 0 !important;
}
.ldn-sidebar-widget .fc-day-number {
    float: none !important;
    display: inline-block !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    color: #1a1a1a !important;
}
.ldn-sidebar-widget .fc-day-grid-event {
    margin: 1px !important;
    padding: 6px 10px !important;
    border-radius: 0 !important;
    border: none !important;
    background: #C5A880 !important;
    color: #fff !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    text-align: center !important;
    box-shadow: none !important;
    overflow: hidden;
    white-space: normal !important;
    text-overflow: clip !important;
    line-height: 1.4 !important;
}
.ldn-sidebar-widget .fc-row.fc-week {
    border-bottom: 1px solid #F0F0F0 !important;
    min-height: 38px !important;
}
.ldn-sidebar-widget .fc-scroller {
    height: auto !important;
    overflow: hidden !important;
}





/* ═══════════════════════════════════════════════════════ 
   DC LIFE GALLERY STORE — Gallery Dept Aesthetic
   SCOPED TO /shop-2 ONLY (page-id-19123)
   Does NOT affect homepage or any other page.
   ═══════════════════════════════════════════════════════ */

/* --- Dark luxe background --- */
body.page-id-19123 {
  background-color: #0a0a0a !important;
}

body.page-id-19123 .jeg_viewport,
body.page-id-19123 .jeg_main .jeg_container,
body.page-id-19123 .jeg_content {
  background-color: #0a0a0a !important;
}

/* --- Page title --- */
body.page-id-19123 .entry-header .jeg_post_title,
body.page-id-19123 h1.entry-title {
  color: #fff !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 42px !important;
  letter-spacing: 4px !important;
  text-transform: uppercase !important;
  text-align: center !important;
}

/* --- Product grid cards --- */
body.page-id-19123 ul.products li.product {
  background: #111 !important;
  border: 1px solid #222 !important;
  border-radius: 0 !important;
  transition: border-color 0.3s ease, transform 0.3s ease !important;
  overflow: hidden !important;
}

body.page-id-19123 ul.products li.product:hover {
  border-color: #c5a55a !important;
  transform: translateY(-4px) !important;
}

/* --- Product images --- */
body.page-id-19123 ul.products li.product img {
  border-radius: 0 !important;
  transition: transform 0.4s ease !important;
}

body.page-id-19123 ul.products li.product:hover img {
  transform: scale(1.03) !important;
}

/* --- Product titles --- */
body.page-id-19123 ul.products li.product .woocommerce-loop-product__title,
body.page-id-19123 ul.products li.product h2 {
  color: #fff !important;
  font-family: 'Helvetica Neue', Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  padding: 12px 16px 4px !important;
}

/* --- Prices --- */
body.page-id-19123 ul.products li.product .price,
body.page-id-19123 ul.products li.product .price span {
  color: #c5a55a !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  padding: 0 16px 16px !important;
}

/* --- Add to cart buttons --- */
body.page-id-19123 ul.products li.product .button,
body.page-id-19123 ul.products li.product a.add_to_cart_button {
  background: transparent !important;
  color: #c5a55a !important;
  border: 1px solid #c5a55a !important;
  border-radius: 0 !important;
  text-transform: uppercase !important;
  font-size: 11px !important;
  letter-spacing: 2px !important;
  padding: 10px 20px !important;
  transition: all 0.3s ease !important;
}

body.page-id-19123 ul.products li.product .button:hover,
body.page-id-19123 ul.products li.product a.add_to_cart_button:hover {
  background: #c5a55a !important;
  color: #000 !important;
}

/* --- Sale badge --- */
body.page-id-19123 ul.products li.product .onsale {
  background: #c5a55a !important;
  color: #000 !important;
  border-radius: 0 !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
}

/* --- WooCommerce result count & ordering --- */
body.page-id-19123 .woocommerce-result-count,
body.page-id-19123 .woocommerce-ordering select {
  color: #888 !important;
}

/* --- Breadcrumbs --- */
body.page-id-19123 .woocommerce-breadcrumb,
body.page-id-19123 .woocommerce-breadcrumb a {
  color: #666 !important;
}

body.page-id-19123 .woocommerce-breadcrumb a:hover {
  color: #c5a55a !important;
}

/* --- Pagination --- */
body.page-id-19123 .woocommerce-pagination .page-numbers {
  color: #888 !important;
  border-color: #333 !important;
}

body.page-id-19123 .woocommerce-pagination .page-numbers.current {
  background: #c5a55a !important;
  color: #000 !important;
  border-color: #c5a55a !important;
}

/* --- Sidebar / filters --- */
body.page-id-19123 .widget-title,
body.page-id-19123 .widget .widgettitle {
  color: #fff !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
  font-size: 13px !important;
}

body.page-id-19123 .widget a {
  color: #aaa !important;
}

body.page-id-19123 .widget a:hover {
  color: #c5a55a !important;
}

/* --- Star ratings --- */
body.page-id-19123 .star-rating span::before {
  color: #c5a55a !important;
}

/* --- Hide unnecessary JNews/Newsletter elements on shop page --- */
body.page-id-19123 .jeg_share_button,
body.page-id-19123 .jeg_post_tags,
body.page-id-19123 .jeg_authorbox,
body.page-id-19123 .ldn-widget-newsletter,
body.page-id-19123 .newsletter-box,
body.page-id-19123 .jetpack_subscription_widget,
body.page-id-19123 .wp-block-jetpack-subscriptions {
  display: none !important;
}

/* --- Shop Info Footer Block Layout Fix --- */
body.page-id-19123 .shop-info-footer {
  width: 100% !important;
  max-width: 800px !important;
  margin: 60px auto !important;
  padding: 0 20px !important;
  display: block !important;
  float: none !important;
  clear: both !important;
  box-sizing: border-box !important;
}

body.page-id-19123 .shop-info-footer .wp-block-group__inner-container {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  display: block !important;
  box-sizing: border-box !important;
}

body.page-id-19123 .shop-info-footer p {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  text-align: center !important;
  margin: 8px 0 !important;
  padding: 0 !important;
  font-size: 16px !important;
  line-height: 1.3 !important;
  color: #cccccc !important;
}

body.page-id-19123 .shop-info-footer .shop-address {
  color: #b5b5b5 !important;
  font-size: 14px !important;
  font-family: 'Inter', sans-serif !important;
  letter-spacing: 0.05em !important;
  margin: 15px 0 !important;
}

body.page-id-19123 .shop-info-footer .shop-footer-links {
  margin-top: 15px !important;
  font-size: 14px !important;
  color: #888888 !important;
}

body.page-id-19123 .shop-info-footer .shop-footer-links a {
  color: #c5a880 !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.05em !important;
  margin: 0 10px !important;
  display: inline-block !important;
  transition: color 0.2s ease !important;
}

body.page-id-19123 .shop-info-footer .shop-footer-links a:hover {
  color: #ffffff !important;
  text-decoration: underline !important;
}



/* ═══════════════════════════════════════════════════════
   POST EDITOR FIX — H2/H3 Readability
   Makes subheadings dark/readable in the Gutenberg editor
   ═══════════════════════════════════════════════════════ */

/* Fix light H2/H3 headings in the block editor */
.editor-styles-wrapper h2,
.editor-styles-wrapper h3,
.wp-block-heading[data-type="core/heading"] {
  color: #1a1a1a !important;
}

/* --- Hide header words, page title words, and mockup image on storefront (Page ID: 19123) --- */
.page-id-19123 .site-header,
.page-id-19123 .page-header-image,
.page-id-19123 .entry-header {
  display: none !important;
}

/* Reduce space between menu and shop hero image */
body.page-id-19123 #page {
    margin-top: 0 !important;
}
body.page-id-19123 .site-content {
    padding-top: 0 !important;
}
body.page-id-19123 .inside-article {
    padding-top: 0 !important;
}

/* Hide Mediavine Grow.me Recommended Content Widget */
body.page-id-19123 #grow-me-in-content-recs-root {
    display: none !important;
}

/* Spacing and Overlays on Store Header */
/* General .shop-hero on all store & catalog pages */
.shop-hero, body.page-id-19123 .shop-hero, body.page-id-6906 .shop-hero, body.post-type-archive-product .shop-hero {
    position: relative !important;
    width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    height: 60vh !important;
    overflow: hidden !important;
    margin-bottom: 30px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.shop-hero-img, body.page-id-19123 .shop-hero-img, body.page-id-6906 .shop-hero-img, body.post-type-archive-product .shop-hero-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center 30% !important;
    display: block !important;
}

.shop-hero::after, body.page-id-19123 .shop-hero::after, body.page-id-6906 .shop-hero::after, body.post-type-archive-product .shop-hero::after {
    content: "" !important;
    position: absolute !important;
    top: 0; left: 0; right: 0; bottom: 0 !important;
    background: rgba(0, 0, 0, 0.4) !important; /* Semi-dark overlay so white text stands out! */
    pointer-events: none !important;
    z-index: 1 !important;
}

.shop-hero-text-overlay, body.page-id-19123 .shop-hero-text-overlay, body.page-id-6906 .shop-hero-text-overlay, body.post-type-archive-product .shop-hero-text-overlay {
    position: absolute !important;
    z-index: 2 !important;
    color: #ffffff !important;
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: 54px !important;
    font-weight: 700 !important;
    letter-spacing: 0.15em !important;
    text-transform: uppercase !important;
    text-align: center !important;
    text-shadow: 0 4px 15px rgba(0, 0, 0, 0.4) !important;
}

.shop-back-to-home, body.page-id-19123 .shop-back-to-home, body.page-id-6906 .shop-back-to-home, body.post-type-archive-product .shop-back-to-home {
    position: absolute !important;
    top: 20px !important;
    left: 30px !important;
    z-index: 10 !important;
    color: #ffffff !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.15em !important;
    text-decoration: none !important;
    background: rgba(0, 0, 0, 0.4) !important;
    padding: 8px 16px !important;
    border-radius: 4px !important;
    transition: background 0.2s ease !important;
}

.shop-back-to-home:hover, body.page-id-19123 .shop-back-to-home:hover {
    background: rgba(0, 0, 0, 0.6) !important;
    color: #C5A880 !important;
}

@media (max-width: 768px) {
    .shop-hero, body.page-id-19123 .shop-hero, body.page-id-6906 .shop-hero {
        height: 40vh !important;
    }
    .shop-hero-text-overlay, body.page-id-19123 .shop-hero-text-overlay, body.page-id-6906 .shop-hero-text-overlay {
        font-size: 36px !important;
    }
    .shop-back-to-home, body.page-id-19123 .shop-back-to-home, body.page-id-6906 .shop-back-to-home {
        top: 15px !important;
        left: 15px !important;
        font-size: 11px !important;
        padding: 6px 12px !important;
    }
}






/* ── LDN Hero Slider Styles ── */
.ldn-slider-container {
    position: relative;
    width: 100%;
    height: 520px;
    margin-bottom: 40px;
    overflow: hidden;
    border-radius: var(--radius-md, 8px);
    box-shadow: var(--shadow-lg);
}

.ldn-slider-wrapper {
    width: 100%;
    height: 100%;
    position: relative;
}

.ldn-slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.8s ease;
    z-index: 1;
}

.ldn-slide-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    z-index: 2;
    pointer-events: none;
}

.ldn-slide.active {
    opacity: 1;
    visibility: visible;
    z-index: 2;
}

.ldn-slide-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0.65) 100%);
    z-index: 3;
    pointer-events: none;
}

.ldn-slide-content {
    position: absolute;
    bottom: 50px;
    left: 50px;
    right: 50px;
    z-index: 4;
    max-width: 750px;
    color: #ffffff;
}

.ldn-slide-category {
    display: inline-block;
    padding: 4px 10px;
    background: var(--accent-primary, #C5A880);
    color: #ffffff !important;
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    text-decoration: none;
    margin-bottom: 16px;
    border-radius: 2px;
}

.ldn-slide-title {
    font-family: 'Cormorant Garamond', Georgia, serif;
    font-size: 40px;
    font-weight: 600;
    line-height: 1.15;
    margin: 0 0 20px 0;
    text-shadow: 0 2px 10px rgba(0,0,0,0.3);
}

.ldn-slide-title a {
    color: #ffffff !important;
    text-decoration: none;
}

.ldn-slide-title a:hover {
    color: var(--accent-hover, #C5A880) !important;
}

.ldn-slide-button {
    display: inline-block;
    padding: 10px 24px;
    background: #ffffff;
    color: #000000 !important;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    text-decoration: none;
    border-radius: 0;
    transition: all 0.25s ease;
}

.ldn-slide-button:hover {
    background: var(--accent-primary, #C5A880);
    color: #ffffff !important;
}

.ldn-slider-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 5;
    background: rgba(255,255,255,0.15);
    border: none;
    color: #ffffff;
    font-size: 24px;
    padding: 12px 16px;
    cursor: pointer;
    transition: all 0.25s ease;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ldn-slider-arrow:hover {
    background: var(--accent-primary, #C5A880);
    color: #ffffff;
}

.prev-arrow {
    left: 30px;
}

.next-arrow {
    right: 30px;
}

.ldn-slider-dots {
    position: absolute;
    bottom: 20px;
    right: 50px;
    z-index: 5;
    display: flex;
    gap: 8px;
}

.ldn-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(255,255,255,0.4);
    cursor: pointer;
    transition: all 0.25s ease;
}

.ldn-dot.active {
    background: var(--accent-primary, #C5A880);
    transform: scale(1.2);
}

@media (max-width: 768px) {
    .ldn-slider-container {
        height: 380px;
    }
    .ldn-slide-content {
        bottom: 30px;
        left: 20px;
        right: 20px;
    }
    .ldn-slide-title {
        font-size: 26px;
    }
    .ldn-slider-arrow {
        display: none;
    }
    .ldn-slider-dots {
        right: 20px;
    }
}

/* =================================================================
   HOMEPAGE CUSTOM OVERRIDES (Page ID: 44436)
   ================================================================= */
/* Hide the main "DC Life Home" title heading at the top */
.home .entry-header {
    display: none !important;
}

/* Center and style category headings on homepage */
.home .entry-content h2 {
    text-align: center !important;
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: 38px !important;
    font-weight: 400 !important;
    font-style: italic !important;
    color: #1E1B18 !important;
    margin: 44px 0 22px 0 !important;
    letter-spacing: -0.01em !important;
}

/* Hide legacy footer widget clouds globally */
#footer-widgets,
.footer-widgets {
    display: none !important;
}

/* Quiet Luxury Hero Slider Refinements */
.ldn-slider-container {
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 24px 54px -26px rgba(30, 27, 24, 0.14) !important;
}
.ldn-slide-category {
    font-family: 'Plus Jakarta Sans', 'Inter', sans-serif !important;
    font-weight: 600 !important;
    letter-spacing: 0.16em !important;
    background: rgba(250, 247, 242, 0.94) !important;
    color: #8C6D46 !important;
    border-radius: 999px !important;
    padding: 5px 14px !important;
}
.ldn-slide-title,
.ldn-slide-title a {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-weight: 400 !important;
    letter-spacing: -0.01em !important;
}
.ldn-slide-button {
    font-family: 'Plus Jakarta Sans', 'Inter', sans-serif !important;
    font-weight: 600 !important;
    letter-spacing: 0.1em !important;
    border-radius: 999px !important;
    background: #FAF7F2 !important;
    color: #1E1B18 !important;
    border: 1px solid #FAF7F2 !important;
}
.ldn-slide-button:hover {
    background: #8C6D46 !important;
    border-color: #8C6D46 !important;
    color: #FFFFFF !important;
}

/* EventPrime Contrast Fixes */
.ep-btn-dark, .ep_event_view_filter.ep-active-view {
    color: #ffffff !important;
    background-color: #333333 !important;
}
.ep-calendar-button, .ep-btn-outline-primary {
    color: #333333 !important;
    border-color: #cccccc !important;
}



/* =================================================================
   WP 7.1 MODERN LUXURY MICRO-INTERACTIONS & BUTTON CRO
   ================================================================= */
/* Interactive Luxury Button States (WooCommerce, CTAs, Hero Buttons) */
.wp-block-button__link,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce #respond input#submit,
.woocommerce input.button,
.ldn-btn-primary {
    transition: all 0.28s cubic-bezier(0.16, 1, 0.3, 1) !important;
    position: relative !important;
    overflow: hidden !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
}

.wp-block-button__link:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce input.button:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12) !important;
    filter: brightness(1.05) !important;
}

.wp-block-button__link:active,
.woocommerce a.button:active,
.woocommerce button.button:active,
.woocommerce #respond input#submit:active,
.woocommerce input.button:active {
    transform: translateY(0) !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08) !important;
}

.wp-block-button__link:focus-visible,
.woocommerce a.button:focus-visible,
.woocommerce button.button:focus-visible {
    outline: 2px solid #C5A880 !important;
    outline-offset: 3px !important;
}

/* Zero Layout Shift on Embedded Native Media & Audio */
.wp-block-audio,
.wp-block-playlist,
.ldn-audio-preview-box {
    contain: layout paint;
    max-width: 100%;
}
