/* 
=========================================
   PREMIUM SALON & BEAUTY CSS STYLESHEET
   Theme: Luxury Gold (#D4A373), Cream (#FAF3E0), Rose Gold (#B76E79)
   Fonts: Playfair Display (Headings), Poppins (Body)
   v2.0 - With Light/Dark Mode Toggle System
=========================================
*/

/* Google Fonts Import */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

/* ===== LIGHT MODE (Default) CSS Variables ===== */
:root {
    /* Brand Colors - same in both modes */
    --primary-color: #A27B5C;
    --primary-hover: #8D623F;
    --accent-color: #C5A880;

    /* Light Mode Semantic Variables */
    --bg-body: #FFFFFF;
    --bg-secondary: #FAF6F0;
    --bg-card: #FFFFFF;
    --bg-card-hover: #FAF6F0;
    --bg-input: #fbfbfb;
    --bg-input-focus: #FFFFFF;
    --bg-navbar: rgba(255, 255, 255, 0.98);
    --bg-navbar-solid: #FFFFFF;
    --bg-footer: #3C2A21;
    --bg-dark-section: #3C2A21;
    --bg-preloader: #FAF6F0;
    --bg-tag: #FAF6F0;
    --bg-feature-icon: #FAF6F0;
    --bg-product-img: #FAF6F0;

    /* Text Colors */
    --text-primary: #2A221F;
    --text-secondary: #776B66;
    --text-heading: #2A221F;
    --text-muted: #776B66;
    --text-white: #FFFFFF;
    --text-on-dark: rgba(255,255,255,0.85);
    --text-on-primary: #FFFFFF;
    --text-tag: #2A221F;
    --text-nav: #2A221F;

    /* Borders */
    --border-light: rgba(162, 123, 92, 0.15);
    --border-card: rgba(0, 0, 0, 0.05);
    --border-input: rgba(0, 0, 0, 0.12);
    --border-dashed: rgba(0, 0, 0, 0.08);
    --border-widget: rgba(0, 0, 0, 0.04);
    --border-blog-meta: rgba(0, 0, 0, 0.06);

    /* Shadows */
    --shadow-sm: 0 4px 15px rgba(162, 123, 92, 0.08);
    --shadow-md: 0 10px 30px rgba(162, 123, 92, 0.12);
    --shadow-lg: 0 20px 50px rgba(162, 123, 92, 0.18);

    /* Scrollbar */
    --scrollbar-track: #FAF6F0;

    /* Navbar border */
    --navbar-border: rgba(162, 123, 92, 0.1);

    /* Toggle button */
    --toggle-bg: #FAF6F0;
    --toggle-border: rgba(162, 123, 92, 0.3);
    --toggle-icon-color: #A27B5C;
    --toggle-hover-bg: #A27B5C;
    --toggle-hover-icon: #FFFFFF;

    /* Gallery filter */
    --gallery-filter-border: rgba(0,0,0,0.15);
    --gallery-filter-color: #2A221F;

    /* Widget categories */
    --widget-cat-border: rgba(0,0,0,0.08);

    /* Pricing list border */
    --pricing-list-border: rgba(0,0,0,0.08);
    --pricing-card-border: rgba(0,0,0,0.05);

    /* Section bg dark card */
    --dark-bg: #3C2A21;
    --dark-card-bg: #4A3525;

    /* Smooth Theme Transition */
    --theme-transition: background-color 0.35s ease, color 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;
    --transition-smooth: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

/* ===== DARK MODE CSS Variables ===== */
[data-theme="dark"] {
    /* Brand Colors - same */
    --primary-color: #C5A880;
    --primary-hover: #D4B896;
    --accent-color: #D4B896;

    /* Dark Mode Semantic Variables */
    --bg-body: #171210;
    --bg-secondary: #1F1713;
    --bg-card: #241B15;
    --bg-card-hover: #2C2019;
    --bg-input: #2C2019;
    --bg-input-focus: #332618;
    --bg-navbar: rgba(23, 18, 16, 0.98);
    --bg-navbar-solid: #1F1713;
    --bg-footer: #0E0B09;
    --bg-dark-section: #1A1410;
    --bg-preloader: #171210;
    --bg-tag: #2C2019;
    --bg-feature-icon: #2C2019;
    --bg-product-img: #241B15;

    /* Text Colors */
    --text-primary: #EDE8E3;
    --text-secondary: #B8A898;
    --text-heading: #F5F0EB;
    --text-muted: #A09080;
    --text-white: #FFFFFF;
    --text-on-dark: rgba(237, 232, 227, 0.9);
    --text-on-primary: #FFFFFF;
    --text-tag: #EDE8E3;
    --text-nav: #EDE8E3;

    /* Borders */
    --border-light: rgba(197, 168, 128, 0.2);
    --border-card: rgba(197, 168, 128, 0.1);
    --border-input: rgba(197, 168, 128, 0.25);
    --border-dashed: rgba(197, 168, 128, 0.15);
    --border-widget: rgba(197, 168, 128, 0.1);
    --border-blog-meta: rgba(197, 168, 128, 0.1);

    /* Shadows */
    --shadow-sm: 0 4px 15px rgba(0, 0, 0, 0.3);
    --shadow-md: 0 10px 30px rgba(0, 0, 0, 0.4);
    --shadow-lg: 0 20px 50px rgba(0, 0, 0, 0.5);

    /* Scrollbar */
    --scrollbar-track: #1F1713;

    /* Navbar border */
    --navbar-border: rgba(197, 168, 128, 0.12);

    /* Toggle button */
    --toggle-bg: #2C2019;
    --toggle-border: rgba(197, 168, 128, 0.4);
    --toggle-icon-color: #C5A880;
    --toggle-hover-bg: #C5A880;
    --toggle-hover-icon: #171210;

    /* Gallery filter */
    --gallery-filter-border: rgba(197, 168, 128, 0.25);
    --gallery-filter-color: #EDE8E3;

    /* Widget categories */
    --widget-cat-border: rgba(197, 168, 128, 0.12);

    /* Pricing list border */
    --pricing-list-border: rgba(197, 168, 128, 0.12);
    --pricing-card-border: rgba(197, 168, 128, 0.1);

    /* Section bg dark card */
    --dark-bg: #1A1410;
    --dark-card-bg: #241B15;
}

/* ===== Universal Theme Transition ===== */
*, *::before, *::after {
    transition: var(--theme-transition);
}

/* Override transition for elements that need their own */
a, button, .btn, .nav-link, .service-card, .team-card, .pricing-card,
.blog-card, .product-card, .contact-info-card, .gallery-item img,
.back-to-top, .floating-whatsapp, .floating-call, .gallery-zoom-btn,
.feature-icon, .team-img-wrapper img, .service-img-wrapper img {
    transition: var(--transition-smooth) !important;
}

/* ===== Base resets & typography ===== */
html, body {
    font-family: 'Poppins', sans-serif;
    color: var(--text-primary);
    background-color: var(--bg-body);
    overflow-x: clip;
    scroll-behavior: smooth;
    line-height: 1.8;
}

h1, h2, h3, h4, h5, h6, .display-font {
    font-family: 'Playfair Display', serif;
    font-weight: 700;
    color: var(--text-heading);
    letter-spacing: -0.01em;
}

p {
    color: var(--text-primary);
}

a {
    color: var(--primary-color);
    text-decoration: none;
    transition: var(--transition-smooth);
}
a:hover {
    color: var(--accent-color);
}

/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 6px;
}
::-webkit-scrollbar-track {
    background: var(--scrollbar-track);
}
::-webkit-scrollbar-thumb {
    background: var(--primary-color);
}
::-webkit-scrollbar-thumb:hover {
    background: var(--accent-color);
}

/* ===== Page Preloader ===== */
#preloader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--bg-preloader);
    z-index: 99999;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: opacity 0.5s ease, visibility 0.5s ease;
}
.preloader-logo {
    text-align: center;
}
.preloader-logo h1 {
    color: var(--primary-color);
    font-size: 3rem;
    letter-spacing: 6px;
    margin-bottom: 15px;
    animation: pulse 1.8s infinite;
}
.preloader-spinner {
    width: 40px;
    height: 40px;
    border: 2px solid var(--border-light);
    border-top: 2px solid var(--primary-color);
    border-radius: 50%;
    margin: 0 auto;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
@keyframes pulse {
    0%, 100% { opacity: 0.6; }
    50% { opacity: 1; }
}

/* ===== Section Styling ===== */
.section-padding {
    padding: 120px 0;
}
.section-bg-cream {
    background-color: var(--bg-secondary);
}
.section-bg-dark {
    background-color: var(--bg-dark-section);
    color: var(--text-on-dark);
}
.section-bg-dark h1,
.section-bg-dark h2,
.section-bg-dark h3,
.section-bg-dark h4,
.section-bg-dark h5,
.section-bg-dark h6 {
    color: var(--text-white);
}
.section-title {
    text-align: center;
    margin-bottom: 70px;
}
.section-title h6 {
    text-transform: uppercase;
    letter-spacing: 4px;
    color: var(--primary-color);
    font-weight: 600;
    font-size: 0.85rem;
    margin-bottom: 15px;
}
.section-title h2 {
    font-size: 3rem;
    font-weight: 700;
    position: relative;
    padding-bottom: 20px;
    color: var(--text-heading);
}
.section-title h2::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 50px;
    height: 2px;
    background-color: var(--primary-color);
}

/* ===== Navigation & Header ===== */
.top-bar {
    background-color: var(--primary-color);
    font-size: 0.8rem;
    padding: 10px 0;
    border-bottom: 1px solid rgba(255,255,255,0.1);
    letter-spacing: 0.5px;
}
.top-bar span {
    color: rgba(255,255,255,0.85);
}
.top-bar a {
    color: rgba(255,255,255,0.85);
}
.top-bar a:hover {
    color: var(--text-white);
}
.navbar {
    background-color: var(--bg-navbar-solid) !important;
    border-bottom: 1px solid var(--navbar-border);
    transition: var(--transition-smooth) !important;
    padding: 20px 0;
    z-index: 1000;
    position: sticky;
    top: 0;
}
.navbar.sticky-header {
    background: var(--bg-navbar) !important;
    backdrop-filter: blur(20px);
    box-shadow: var(--shadow-md);
    padding: 12px 0;
}
.navbar-brand h2 {
    color: var(--primary-color);
    margin: 0;
    font-weight: 800;
    letter-spacing: 3px;
    font-size: 1.8rem;
}
.navbar-brand span {
    font-family: 'Poppins', sans-serif;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 5px;
    color: var(--text-secondary);
    display: block;
    line-height: 1;
    margin-top: 3px;
}
.nav-link {
    color: var(--text-nav) !important;
    font-weight: 600;
    font-size: 0.85rem;
    margin: 0 12px;
    position: relative;
    letter-spacing: 1px;
    text-transform: uppercase;
    transition: var(--transition-smooth) !important;
}
.nav-link:hover, .nav-link.active {
    color: var(--primary-color) !important;
}
.nav-link::after {
    content: '';
    position: absolute;
    width: 0;
    height: 2px;
    bottom: -5px;
    left: 0;
    background-color: var(--primary-color);
    transition: var(--transition-smooth);
}
.nav-link:hover::after, .nav-link.active::after {
    width: 100%;
}

/* Navbar toggler */
.navbar-toggler {
    border-color: var(--border-light);
}
.navbar-toggler-icon {
    filter: invert(1);
}
[data-theme="dark"] .navbar-toggler-icon {
    filter: none;
}

/* ===== Theme Toggle Button ===== */
.theme-toggle-btn {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background-color: var(--toggle-bg);
    border: 1.5px solid var(--toggle-border);
    color: var(--toggle-icon-color);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    cursor: pointer;
    transition: var(--transition-smooth) !important;
    margin-left: 12px;
    flex-shrink: 0;
    position: relative;
    overflow: hidden;
}
.theme-toggle-btn:hover {
    background-color: var(--toggle-hover-bg);
    color: var(--toggle-hover-icon);
    border-color: var(--toggle-hover-bg);
    transform: scale(1.1) rotate(15deg);
}
.theme-toggle-btn .icon-sun,
.theme-toggle-btn .icon-moon {
    position: absolute;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.theme-toggle-btn .icon-sun {
    opacity: 1;
    transform: scale(1) rotate(0deg);
}
.theme-toggle-btn .icon-moon {
    opacity: 0;
    transform: scale(0.5) rotate(-90deg);
}
[data-theme="dark"] .theme-toggle-btn .icon-sun {
    opacity: 0;
    transform: scale(0.5) rotate(90deg);
}
[data-theme="dark"] .theme-toggle-btn .icon-moon {
    opacity: 1;
    transform: scale(1) rotate(0deg);
}

/* ===== Hero overlay ===== */
.hero-slider-container {
    position: relative;
    height: 100vh;
    min-height: 600px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    display: flex;
    align-items: center;
}
.hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to right, rgba(0,0,0,0.85), rgba(0,0,0,0.55));
    z-index: 1;
}
.hero-content {
    position: relative;
    z-index: 2;
    color: var(--text-white);
}
.hero-content h6 {
    color: var(--accent-color) !important;
    text-transform: uppercase;
    letter-spacing: 4px;
    font-weight: 600;
    margin-bottom: 20px;
    text-shadow: 0 2px 8px rgba(0,0,0,0.6);
}
.hero-content h1 {
    color: #FFFFFF !important;
    font-size: 4.5rem;
    font-weight: 800;
    line-height: 1.15;
    margin-bottom: 30px;
    text-shadow: 0 4px 20px rgba(0,0,0,0.7), 0 2px 6px rgba(0,0,0,0.5);
}
.hero-content p {
    color: rgba(255, 255, 255, 0.92) !important;
    font-size: 1.1rem;
    line-height: 1.8;
    text-shadow: 0 1px 6px rgba(0,0,0,0.5);
    max-width: 600px;
}
@media (max-width: 768px) {
    .hero-content h1 { font-size: 2.6rem; }
    .hero-content p { font-size: 0.95rem; }
}

/* ===== Breadcrumbs Section ===== */
.breadcrumb-section {
    position: relative;
    padding: 120px 0 80px 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    display: flex;
    align-items: center;
}
.breadcrumb-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.5) 100%);
    z-index: 1;
}
.breadcrumb-content {
    position: relative;
    z-index: 2;
    color: var(--text-white);
}
.breadcrumb-content h1 {
    color: var(--text-white) !important;
    font-size: 3.5rem;
    font-weight: 700;
    letter-spacing: 1px;
    margin-bottom: 15px;
}
.breadcrumb-content p {
    font-size: 1.1rem;
    color: rgba(255,255,255,0.85) !important;
    margin: 0;
}
.breadcrumb-links {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    gap: 10px;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    justify-content: center;
}
.breadcrumb-links a {
    color: rgba(255,255,255,0.85);
}
.breadcrumb-links a:hover {
    color: var(--primary-color);
}
.breadcrumb-links li:not(:last-child)::after {
    content: '/';
    margin-left: 10px;
    color: rgba(255, 255, 255, 0.4);
}
.breadcrumb-links li.active {
    color: var(--primary-color);
}

/* ===== Buttons ===== */
.btn-luxury {
    background-color: var(--primary-color);
    color: var(--text-white) !important;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding: 14px 30px;
    border-radius: 8px;
    border: 1px solid var(--primary-color);
    transition: var(--transition-smooth) !important;
    white-space: nowrap;
}
.btn-luxury:hover,
.btn-luxury.active {
    background-color: transparent;
    color: var(--primary-color) !important;
    border-color: var(--primary-color);
}
/* Ensure active/hover states of luxury buttons in transparent light navbar stand out clearly */
[data-theme="light"] .navbar .btn-luxury.active,
[data-theme="light"] .navbar .btn-luxury:hover {
    background-color: var(--primary-color);
    color: var(--text-white) !important;
}
.btn-luxury-outline {
    background-color: transparent;
    color: var(--text-white) !important;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding: 14px 30px;
    border-radius: 8px;
    border: 1px solid var(--text-white);
    transition: var(--transition-smooth) !important;
}
.btn-luxury-outline:hover {
    background-color: var(--text-white);
    color: var(--dark-bg) !important;
}

/* ===== Info Cards & Glassmorphism ===== */
.glass-card {
    background: rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    padding: 40px;
    color: var(--text-white);
    transition: var(--transition-smooth) !important;
}
.glass-card:hover {
    transform: translateY(-5px);
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(255, 255, 255, 0.2);
}

/* ===== Service Cards ===== */
.service-card {
    background-color: var(--bg-card);
    border: none;
    border-radius: 0;
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    transition: var(--transition-smooth) !important;
    height: 100%;
    position: relative;
}
.service-card:hover {
    transform: translateY(-8px);
    box-shadow: var(--shadow-lg);
}
.service-img-wrapper {
    position: relative;
    overflow: hidden;
    aspect-ratio: 4/3;
}
.service-img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: var(--transition-smooth) !important;
}
.service-card:hover .service-img-wrapper img {
    transform: scale(1.1);
}
.service-icon-badge {
    position: absolute;
    bottom: -20px;
    right: 25px;
    width: 50px;
    height: 50px;
    background-color: var(--primary-color);
    color: var(--text-white);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    box-shadow: var(--shadow-md);
    transition: var(--transition-smooth) !important;
    z-index: 2;
}
.service-card:hover .service-icon-badge {
    background-color: var(--accent-color);
    transform: rotate(360deg);
}
.service-card-body {
    padding: 35px 25px 25px;
    background-color: var(--bg-card);
}
.service-card-body h4 {
    font-size: 1.4rem;
    margin-bottom: 15px;
    color: var(--text-heading);
}
.service-card-body p {
    font-size: 0.95rem;
    color: var(--text-secondary);
}
.service-price {
    color: var(--primary-color);
    font-weight: 700;
    font-size: 1.15rem;
    margin-top: 15px;
    display: inline-block;
}

/* ===== Why Choose Us Features ===== */
.feature-box {
    display: flex;
    margin-bottom: 30px;
}
.feature-icon {
    min-width: 60px;
    height: 60px;
    background-color: var(--bg-feature-icon);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--primary-color);
    font-size: 1.5rem;
    margin-right: 20px;
    transition: var(--transition-smooth) !important;
}
.feature-box:hover .feature-icon {
    background-color: var(--primary-color);
    color: var(--text-white);
    transform: scale(1.1);
}
.feature-content h4 {
    font-size: 1.25rem;
    margin-bottom: 10px;
    color: var(--text-heading);
}
.feature-content p {
    font-size: 0.9rem;
    color: var(--text-secondary);
    margin: 0;
}

/* ===== Before & After Comparison ===== */
.ba-card {
    position: relative;
    overflow: hidden;
    height: 350px;
}
.ba-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.ba-label {
    position: absolute;
    bottom: 20px;
    left: 20px;
    background-color: rgba(0,0,0,0.7);
    color: var(--text-white);
    padding: 5px 15px;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* ===== Team Card styling ===== */
.team-card {
    background-color: var(--bg-card);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
    transition: var(--transition-smooth) !important;
}
.team-card:hover {
    transform: translateY(-8px);
    box-shadow: var(--shadow-lg);
}
.team-img-wrapper {
    position: relative;
    overflow: hidden;
    aspect-ratio: 4/5;
}
.team-img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: var(--transition-smooth) !important;
}
.team-card:hover .team-img-wrapper img {
    transform: scale(1.08);
}
.team-social-overlay {
    position: absolute;
    bottom: -50px;
    left: 0;
    width: 100%;
    background: rgba(162, 123, 92, 0.95);
    padding: 12px 0;
    text-align: center;
    transition: var(--transition-smooth) !important;
    display: flex;
    justify-content: center;
    gap: 15px;
}
.team-card:hover .team-social-overlay {
    bottom: 0;
}
.team-social-overlay a {
    color: var(--text-white) !important;
    font-size: 1.1rem;
}
.team-social-overlay a:hover {
    color: var(--bg-dark-section) !important;
}
.team-info {
    padding: 25px 20px;
    text-align: center;
    background-color: var(--bg-card);
}
.team-info h4 {
    margin-bottom: 5px;
    font-size: 1.35rem;
    color: var(--text-heading);
}
.team-info span {
    font-size: 0.85rem;
    text-transform: uppercase;
    color: var(--primary-color);
    font-weight: 600;
    letter-spacing: 1px;
    display: block;
    margin-bottom: 8px;
}
.team-exp {
    font-size: 0.85rem;
    color: var(--text-secondary);
}

/* ===== Pricing Page Styles ===== */
.pricing-card {
    background-color: var(--bg-card);
    padding: 50px 35px;
    text-align: center;
    box-shadow: var(--shadow-sm);
    position: relative;
    transition: var(--transition-smooth) !important;
    border: 1px solid var(--pricing-card-border);
    height: 100%;
}
.pricing-card.featured {
    border: 2px solid var(--primary-color);
    background-color: var(--bg-secondary);
}
.pricing-card:hover {
    transform: translateY(-8px);
    box-shadow: var(--shadow-lg);
}
.pricing-badge {
    position: absolute;
    top: 20px;
    right: 20px;
    background-color: var(--accent-color);
    color: var(--text-white);
    padding: 4px 12px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.pricing-header h4 {
    font-size: 1.6rem;
    margin-bottom: 15px;
    color: var(--text-heading);
}
.pricing-price {
    font-size: 3rem;
    font-weight: 700;
    color: var(--primary-color);
    margin-bottom: 25px;
    font-family: 'Playfair Display', serif;
}
.pricing-price span {
    font-size: 1rem;
    font-family: 'Poppins', sans-serif;
    color: var(--text-secondary);
    font-weight: 400;
}
.pricing-list {
    list-style: none;
    padding: 0;
    margin: 0 0 35px 0;
}
.pricing-list li {
    padding: 10px 0;
    border-bottom: 1px dashed var(--pricing-list-border);
    font-size: 0.95rem;
    color: var(--text-primary);
}
.pricing-list li.muted {
    text-decoration: line-through;
    color: var(--text-muted);
}

/* ===== Testimonial slider ===== */
.testimonials-section {
    background-color: var(--bg-secondary);
}
.testimonial-swiper {
    padding-bottom: 60px !important;
}
.testimonial-item {
    background-color: var(--bg-card);
    padding: 45px 35px;
    text-align: center;
    box-shadow: var(--shadow-sm);
    max-width: 750px;
    margin: 10px auto;
}
.testi-quote-icon {
    font-size: 2.5rem;
    color: var(--primary-color);
    opacity: 0.3;
    margin-bottom: 20px;
}
.testimonial-item p {
    font-size: 1.15rem;
    font-style: italic;
    color: var(--text-primary);
    margin-bottom: 30px;
}
.client-info {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
}
.client-img {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    object-fit: cover;
}
.client-meta h5 {
    margin: 0;
    font-size: 1.1rem;
    color: var(--text-heading);
}
.client-meta span {
    font-size: 0.8rem;
    color: var(--primary-color);
    text-transform: uppercase;
    letter-spacing: 1px;
}
.swiper-pagination-bullet-active {
    background-color: var(--primary-color) !important;
}

/* ===== Statistics Counter ===== */
.counter-box {
    text-align: center;
}
.counter-box i {
    font-size: 1.75rem;
    opacity: 0.9;
}
.counter-number {
    font-size: 2.5rem;
    font-weight: 600;
    color: var(--primary-color);
    font-family: 'Playfair Display', serif;
    margin-bottom: 5px;
    display: block;
}
.counter-title {
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 500;
    color: var(--text-primary);
}

/* ===== Gallery Masonry Layout ===== */
.gallery-filter-btn {
    background: transparent;
    border: 1px solid var(--gallery-filter-border);
    color: var(--gallery-filter-color);
    padding: 8px 22px;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 600;
    border-radius: 0;
    margin: 5px;
    transition: var(--transition-smooth) !important;
}
.gallery-filter-btn:hover, .gallery-filter-btn.active {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    color: var(--text-white);
}

.gallery-masonry {
    column-count: 3;
    column-gap: 20px;
}
@media (max-width: 991px) {
    .gallery-masonry { column-count: 2; }
}
@media (max-width: 575px) {
    .gallery-masonry { column-count: 1; }
}
.gallery-item {
    break-inside: avoid;
    margin-bottom: 20px;
    position: relative;
    overflow: hidden;
    box-shadow: var(--shadow-sm);
}
.gallery-item img {
    width: 100%;
    display: block;
    transition: var(--transition-smooth) !important;
}
.gallery-hover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(20, 14, 10, 0.88);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    opacity: 0;
    transition: var(--transition-smooth) !important;
    padding: 20px;
    text-align: center;
}
.gallery-item:hover .gallery-hover {
    opacity: 1;
}
.gallery-item:hover img {
    transform: scale(1.08);
}
.gallery-hover h4 {
    color: var(--text-white);
    font-size: 1.4rem;
    margin-bottom: 8px;
}
.gallery-hover p {
    color: var(--primary-color);
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 15px;
}
.gallery-zoom-btn {
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background-color: var(--primary-color);
    color: var(--text-white) !important;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    transition: var(--transition-smooth) !important;
}
.gallery-zoom-btn:hover {
    background-color: var(--accent-color);
    transform: scale(1.1);
}

/* ===== Custom Lightbox ===== */
.lightbox-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.95);
    z-index: 10000;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    visibility: hidden;
    transition: var(--transition-smooth) !important;
}
.lightbox-modal.active {
    opacity: 1;
    visibility: visible;
}
.lightbox-content {
    max-width: 85%;
    max-height: 80vh;
    box-shadow: var(--shadow-lg);
}
.lightbox-close {
    position: absolute;
    top: 30px;
    right: 40px;
    color: var(--text-white);
    font-size: 2.5rem;
    cursor: pointer;
    transition: var(--transition-smooth) !important;
}
.lightbox-close:hover {
    color: var(--primary-color);
}

/* ===== Instagram Feed Grid ===== */
.instagram-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
}
@media (max-width: 991px) {
    .instagram-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 575px) {
    .instagram-grid { grid-template-columns: repeat(2, 1fr); }
}
.instagram-item {
    position: relative;
    overflow: hidden;
    aspect-ratio: 1;
}
.instagram-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: var(--transition-smooth) !important;
}
.instagram-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(162, 123, 92, 0.88);
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    color: var(--text-white);
    font-size: 1.5rem;
    transition: var(--transition-smooth) !important;
}
.instagram-item:hover .instagram-overlay {
    opacity: 1;
}
.instagram-item:hover img {
    transform: scale(1.1);
}

/* ===== Products Section ===== */
.product-card {
    background-color: var(--bg-card);
    border: none;
    box-shadow: var(--shadow-sm);
    transition: var(--transition-smooth) !important;
    text-align: center;
    height: 100%;
}
.product-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-lg);
}
.product-img-holder {
    background-color: var(--bg-product-img);
    padding: 30px;
    position: relative;
    overflow: hidden;
}
.product-img-holder img {
    max-height: 200px;
    object-fit: contain;
    mix-blend-mode: multiply;
    transition: var(--transition-smooth) !important;
}
[data-theme="dark"] .product-img-holder img {
    mix-blend-mode: normal;
}
.product-card:hover .product-img-holder img {
    transform: scale(1.08);
}
.product-badge {
    position: absolute;
    top: 15px;
    left: 15px;
    background-color: var(--primary-color);
    color: var(--text-white);
    font-size: 0.75rem;
    padding: 3px 10px;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.product-body {
    padding: 25px 20px;
    background-color: var(--bg-card);
}
.product-category {
    font-size: 0.8rem;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 1px;
    display: block;
    margin-bottom: 5px;
}
.product-title {
    font-size: 1.15rem;
    margin-bottom: 10px;
    color: var(--text-heading);
}
.product-rating {
    color: #FFC107;
    font-size: 0.85rem;
    margin-bottom: 10px;
}
.product-price {
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--primary-color);
}

/* ===== Blog layouts ===== */
.blog-card {
    background-color: var(--bg-card);
    border: none;
    box-shadow: var(--shadow-sm);
    transition: var(--transition-smooth) !important;
    height: 100%;
}
.blog-card:hover {
    transform: translateY(-8px);
    box-shadow: var(--shadow-lg);
}
.blog-img-holder {
    position: relative;
    overflow: hidden;
    aspect-ratio: 16/10;
}
.blog-img-holder img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: var(--transition-smooth) !important;
}
.blog-card:hover .blog-img-holder img {
    transform: scale(1.08);
}
.blog-date-badge {
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: var(--primary-color);
    color: var(--text-white);
    padding: 8px 18px;
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.blog-body {
    padding: 30px 25px;
    background-color: var(--bg-card);
}
.blog-category {
    color: var(--accent-color);
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    display: inline-block;
    margin-bottom: 10px;
}
.blog-title {
    font-size: 1.35rem;
    margin-bottom: 15px;
    line-height: 1.4;
    color: var(--text-heading);
}
.blog-title a {
    color: var(--text-heading) !important;
}
.blog-title a:hover {
    color: var(--primary-color) !important;
}
.blog-desc {
    color: var(--text-secondary);
    font-size: 0.9rem;
    margin-bottom: 20px;
}
.blog-meta {
    padding-top: 15px;
    border-top: 1px solid var(--border-blog-meta);
    font-size: 0.8rem;
    color: var(--text-secondary);
    display: flex;
    justify-content: space-between;
}

/* ===== Sidebar widget styles ===== */
.sidebar-widget {
    background-color: var(--bg-card);
    padding: 30px;
    box-shadow: var(--shadow-sm);
    margin-bottom: 30px;
    border: 1px solid var(--border-widget);
}
.widget-title {
    font-size: 1.35rem;
    margin-bottom: 25px;
    position: relative;
    padding-bottom: 10px;
    color: var(--text-heading);
}
.widget-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 40px;
    height: 2px;
    background-color: var(--primary-color);
}
.widget-search-form .form-control {
    border-radius: 0;
    border: 1px solid var(--border-input);
    padding: 12px;
    background-color: var(--bg-input);
    color: var(--text-primary);
}
.widget-search-form .form-control::placeholder {
    color: var(--text-muted);
}
.widget-search-form .btn {
    border-radius: 0;
}
.widget-categories-list {
    list-style: none;
    padding: 0;
    margin: 0;
}
.widget-categories-list li {
    padding: 10px 0;
    border-bottom: 1px dashed var(--widget-cat-border);
    display: flex;
    justify-content: space-between;
    font-size: 0.95rem;
    color: var(--text-primary);
}
.widget-categories-list li a {
    color: var(--text-primary) !important;
}
.widget-categories-list li a:hover {
    color: var(--primary-color) !important;
}
.widget-categories-list li:last-child {
    border: none;
}
.widget-recent-posts {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.recent-post-item {
    display: flex;
    align-items: center;
    gap: 15px;
}
.recent-post-item img {
    width: 70px;
    height: 70px;
    object-fit: cover;
}
.recent-post-info h5 {
    font-size: 0.95rem;
    margin: 0 0 5px 0;
    line-height: 1.4;
    color: var(--text-heading);
}
.recent-post-info h5 a {
    color: var(--text-heading) !important;
}
.recent-post-info h5 a:hover {
    color: var(--primary-color) !important;
}
.recent-post-info span {
    font-size: 0.75rem;
    color: var(--text-secondary);
}
.widget-tags-cloud {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.widget-tags-cloud a {
    background-color: var(--bg-tag);
    color: var(--text-tag);
    padding: 6px 14px;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.widget-tags-cloud a:hover {
    background-color: var(--primary-color);
    color: var(--text-white);
}

/* ===== Appointment & Contact Forms ===== */
.booking-card {
    background-color: var(--bg-card);
    padding: 50px;
    box-shadow: var(--shadow-lg);
    border-top: 4px solid var(--primary-color);
}
@media (max-width: 575px) {
    .booking-card { padding: 30px 20px; }
}
.booking-form .form-label {
    font-size: 0.85rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--text-primary);
    margin-bottom: 8px;
}
.booking-form .form-control,
.booking-form .form-select {
    border-radius: 0;
    border: 1px solid var(--border-input);
    padding: 14px;
    background-color: var(--bg-input);
    color: var(--text-primary);
    font-size: 0.95rem;
}
.booking-form .form-control::placeholder {
    color: var(--text-muted);
}
.booking-form .form-control:focus,
.booking-form .form-select:focus {
    box-shadow: none;
    border-color: var(--primary-color);
    background-color: var(--bg-input-focus);
    color: var(--text-primary);
}
.booking-form .form-select option {
    background-color: var(--bg-card);
    color: var(--text-primary);
}

/* Bootstrap form controls dark mode */
[data-theme="dark"] .form-control,
[data-theme="dark"] .form-select {
    background-color: var(--bg-input);
    color: var(--text-primary);
    border-color: var(--border-input);
}
[data-theme="dark"] .form-control::placeholder {
    color: var(--text-muted);
}
[data-theme="dark"] .form-control:focus,
[data-theme="dark"] .form-select:focus {
    background-color: var(--bg-input-focus);
    color: var(--text-primary);
    border-color: var(--primary-color);
    box-shadow: 0 0 0 0.2rem rgba(197, 168, 128, 0.15);
}

/* ===== Footer Section ===== */
footer {
    background-color: var(--bg-footer);
    color: rgba(255, 255, 255, 0.85);
    padding-top: 80px;
    border-top: 1px solid rgba(255,255,255,0.06);
}
.footer-title {
    color: var(--text-white);
    font-size: 1.35rem;
    margin-bottom: 25px;
    position: relative;
    padding-bottom: 12px;
}
.footer-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 40px;
    height: 2px;
    background-color: var(--primary-color);
}
.footer-about-logo h2 {
    color: var(--primary-color);
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: 5px;
}
.footer-about-logo span {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 4px;
    color: rgba(255,255,255,0.85);
    display: block;
    margin-bottom: 20px;
}
.footer-links-list {
    list-style: none;
    padding: 0;
    margin: 0;
}
.footer-links-list li {
    margin-bottom: 12px;
}
.footer-links-list a {
    color: rgba(255,255,255,0.85);
    font-size: 0.95rem;
    display: inline-block;
    transition: var(--transition-smooth) !important;
}
.footer-links-list a:hover {
    color: var(--primary-color);
    transform: translateX(5px);
}
.footer-links-list a i {
    color: var(--primary-color);
}
.footer-contact-info p {
    margin-bottom: 15px;
    font-size: 0.95rem;
    display: flex;
    align-items: flex-start;
    gap: 12px;
    color: rgba(255,255,255,0.85);
}
.footer-contact-info i {
    color: var(--primary-color);
    font-size: 1.1rem;
    margin-top: 4px;
}
.footer-social-icons {
    display: flex;
    gap: 10px;
    margin-top: 20px;
}
.footer-social-icons a {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.08);
    color: var(--text-white) !important;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: var(--transition-smooth) !important;
}
.footer-social-icons a:hover {
    background-color: var(--primary-color);
    transform: translateY(-3px);
}
.newsletter-form .form-control {
    border-radius: 0;
    border: none;
    padding: 12px;
    font-size: 0.9rem;
    background-color: rgba(255,255,255,0.1);
    color: var(--text-white);
}
.newsletter-form .form-control::placeholder {
    color: rgba(255,255,255,0.5);
}
.newsletter-form .btn {
    border-radius: 0;
    background-color: var(--primary-color);
    color: var(--text-white);
    border: none;
    padding: 0 20px;
    transition: var(--transition-smooth) !important;
}
.newsletter-form .btn:hover {
    background-color: var(--accent-color);
}
.copyright-area {
    margin-top: 60px;
    padding: 25px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    font-size: 0.85rem;
    color: rgba(255,255,255,0.5);
}

/* ===== Floating Actions & Buttons ===== */
.back-to-top {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 45px;
    height: 45px;
    background-color: var(--primary-color);
    color: var(--text-white) !important;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    z-index: 999;
    box-shadow: var(--shadow-md);
    transition: var(--transition-smooth) !important;
}
.back-to-top.active {
    opacity: 1;
    visibility: visible;
}
.back-to-top:hover {
    background-color: var(--accent-color);
    transform: translateY(-5px);
}

.floating-whatsapp {
    position: fixed;
    bottom: 95px;
    right: 30px;
    width: 45px;
    height: 45px;
    background-color: #25D366;
    color: var(--text-white) !important;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    z-index: 999;
    box-shadow: var(--shadow-md);
    transition: var(--transition-smooth) !important;
}
.floating-whatsapp:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-lg);
}

.floating-call {
    position: fixed;
    bottom: 160px;
    right: 30px;
    width: 45px;
    height: 45px;
    background-color: var(--accent-color);
    color: var(--text-white) !important;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    z-index: 999;
    box-shadow: var(--shadow-md);
    transition: var(--transition-smooth) !important;
}
.floating-call:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-lg);
}

/* ===== Contact Info Boxes ===== */
.contact-info-card {
    background-color: var(--bg-card);
    padding: 35px 25px;
    text-align: center;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-card);
    height: 100%;
    transition: var(--transition-smooth) !important;
}
.contact-info-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-lg);
}
.contact-info-icon {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: var(--bg-feature-icon);
    color: var(--primary-color);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    margin: 0 auto 20px auto;
}
.contact-info-card h4 {
    font-size: 1.25rem;
    margin-bottom: 12px;
    color: var(--text-heading);
}
.contact-info-card p {
    font-size: 0.95rem;
    color: var(--text-secondary);
    margin: 0;
}

/* ===== About page specifics ===== */
.about-stat-box {
    background-color: var(--bg-card);
    padding: 30px;
    text-align: center;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-card);
}
.about-stat-box h3 {
    color: var(--primary-color);
}
.about-stat-box p {
    color: var(--text-secondary);
    margin: 0;
}
.cert-badge {
    background-color: var(--bg-secondary);
    border: 1px solid var(--border-light);
    padding: 15px 20px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    gap: 12px;
    color: var(--text-primary);
}
.cert-badge i {
    color: var(--primary-color);
    font-size: 1.4rem;
}

/* ===== Bootstrap Table Dark Mode ===== */
[data-theme="dark"] .table {
    color: var(--text-primary);
    border-color: var(--border-card);
}
[data-theme="dark"] .table-borderless td {
    color: var(--text-primary);
}
[data-theme="dark"] .border-bottom {
    border-color: var(--border-card) !important;
}
[data-theme="dark"] .bg-white {
    background-color: var(--bg-card) !important;
}
[data-theme="dark"] .shadow-sm {
    box-shadow: var(--shadow-sm) !important;
}
[data-theme="dark"] .border {
    border-color: var(--border-card) !important;
}
[data-theme="dark"] .text-dark {
    color: var(--text-primary) !important;
}
[data-theme="dark"] .text-muted {
    color: var(--text-muted) !important;
}
[data-theme="dark"] .fw-bold {
    color: var(--text-primary);
}

/* ===== Responsive ===== */
@media (max-width: 991px) {
    .section-padding { padding: 80px 0; }
    .section-title h2 { font-size: 2.2rem; }
    .navbar-collapse {
        background-color: var(--bg-navbar-solid);
        padding: 20px;
        margin-top: 10px;
        border: 1px solid var(--border-light);
    }
    .nav-link { margin: 5px 0; }
    .theme-toggle-btn { margin: 10px 0 0 0; }
}
@media (max-width: 768px) {
    .section-padding { padding: 60px 0; }
    .hero-content h1 { font-size: 2.6rem; }
    .hero-content p { font-size: 0.95rem; }
    .booking-card { padding: 30px 20px; }
    .section-title h2 { font-size: 1.8rem; }
}

/* ===== Pricing Page - A La Carte Menu Item Cards ===== */
.menu-category-label {
    margin-bottom: 30px;
    position: relative;
}
.menu-category-label span {
    display: inline-block;
    font-family: 'Playfair Display', serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-heading);
    padding-bottom: 12px;
    border-bottom: 3px solid var(--primary-color);
}
.menu-item-card {
    background-color: var(--bg-card);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-card);
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    height: 100%;
    display: flex;
    flex-direction: column;
}
.menu-item-card:hover {
    transform: translateY(-8px);
    box-shadow: var(--shadow-lg);
}
.menu-item-img {
    position: relative;
    overflow: hidden;
    aspect-ratio: 4/3;
}
.menu-item-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    display: block;
}
.menu-item-card:hover .menu-item-img img {
    transform: scale(1.08);
}
.menu-item-price {
    position: absolute;
    top: 15px;
    right: 15px;
    background-color: var(--primary-color);
    color: #fff;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 1rem;
    padding: 6px 16px;
    letter-spacing: 0.5px;
    z-index: 2;
}
.menu-item-body {
    padding: 25px 22px 22px;
    display: flex;
    flex-direction: column;
    flex: 1;
    background-color: var(--bg-card);
}
.menu-item-icon {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background-color: var(--bg-feature-icon);
    color: var(--primary-color);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    margin-bottom: 14px;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.menu-item-card:hover .menu-item-icon {
    background-color: var(--primary-color);
    color: #fff;
    transform: rotate(10deg) scale(1.1);
}
.menu-item-body h5 {
    font-size: 1.2rem;
    font-weight: 700;
    margin-bottom: 8px;
    color: var(--text-heading);
    font-family: 'Playfair Display', serif;
}
.menu-item-body p {
    font-size: 0.88rem;
    color: var(--text-secondary);
    line-height: 1.6;
    flex: 1;
    margin-bottom: 18px;
}

/* ===== Contact Form Input Groups & Icons ===== */
.booking-form .input-group {
    border: 1px solid var(--border-input);
    background-color: var(--bg-input);
    transition: border-color var(--theme-transition);
}
.booking-form .input-group:focus-within {
    border-color: var(--primary-color);
}
.booking-form .input-group-text {
    background-color: transparent;
    border: none;
    color: var(--primary-color);
    padding-left: 15px;
    padding-right: 10px;
}
.booking-form .input-group .form-control {
    border: none !important;
    padding-left: 5px;
}
.bg-luxury-soft {
    background-color: rgba(197, 168, 128, 0.1);
}
[data-theme="dark"] .bg-luxury-soft {
    background-color: rgba(197, 168, 128, 0.15);
}

/* Fix visibility of text inside table in both light and dark mode */
.working-hours-table td {
    color: var(--text-primary) !important;
}
[data-theme="dark"] .working-hours-table td {
    color: var(--text-primary) !important;
}

/* Overrides to make table wrapper and inner td look perfect in both Light and Dark modes */
.working-hours-table {
    background-color: transparent !important;
}
.working-hours-table tr {
    background-color: transparent !important;
}
.working-hours-table td {
    background-color: transparent !important;
    color: var(--text-primary) !important;
}

/* Ensure the table responsive container is transparent */
.table-responsive {
    background-color: transparent !important;
}

/* ===== Responsive adjustments for team cards on mobile (2 columns) ===== */
@media (max-width: 767px) {
    .team-info {
        padding: 12px 10px;
    }
    .team-info h4 {
        font-size: 1.05rem;
    }
    .team-info span {
        font-size: 0.7rem;
    }
    .team-info p.team-exp {
        font-size: 0.75rem;
        margin-bottom: 0;
    }
    .team-social-overlay a {
        font-size: 0.9rem;
    }
    .team-social-overlay {
        gap: 8px;
        padding: 6px 0;
    }
}
