/* Dynamic Theme CSS - Generated from database */
:root {
    --text-dark: #3d2d2a;
    --dark-color: #5c4340;
    --text-light: #6b524e;
    --light-color: #fdf8f7;
    --accent-color: #8a7a5c;
    --primary-color: #8d6f6c;
    --secondary-color: #dcc4c0;

    --white: #ffffff;
    --font-heading: 'Cormorant Garamond', serif;
    --font-body: 'Montserrat', sans-serif;
    --transition: all 0.3s ease;
    --shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    --shadow-hover: 0 8px 30px rgba(0, 0, 0, 0.12);
}

/* Override base styles with theme colors */
body {
    background-color: var(--light-color);
    color: var(--text-dark);
}

.navbar {
    background: rgba(255, 255, 255, 0.98);
}

.nav-brand-text {
    color: var(--primary-color);
}

.nav-link:hover {
    color: var(--primary-color);
}

.hero {
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
}

.hero::before {
    background: linear-gradient(135deg, rgba(141, 111, 108, 0.7) 0%, rgba(220, 196, 192, 0.7) 100%);
}

.hero-overlay {
    background: rgba(92, 67, 64, 0.4);
}

.btn-primary {
    background: var(--accent-color);
    border-color: var(--accent-color);
}

.btn-primary:hover {
    background: transparent;
    border-color: var(--white);
}

.btn-secondary {
    border-color: var(--white);
}

.btn-secondary:hover {
    background: var(--white);
    color: var(--primary-color);
}

.about {
    background: var(--white);
}

.section-title {
    color: var(--section-title, var(--dark-color));
}

.services {
    background: var(--light-color);
}

.service-card {
    background: var(--white);
}

/* Service headings use darkened primary for WCAG AA contrast */
.service-content h3 {
    color: color-mix(in srgb, var(--primary-color) 70%, #000000);
}

/* Service type uses darkened accent for WCAG AA contrast */
.service-type {
    color: color-mix(in srgb, var(--accent-color) 60%, #000000) !important;
}

.service-price {
    color: var(--dark-color) !important;
    border-top-color: var(--light-color);
}

.service-image {
    background: linear-gradient(135deg, var(--secondary-color) 0%, var(--primary-color) 100%);
}

.about-image {
    background: linear-gradient(135deg, var(--secondary-color) 0%, var(--primary-color) 100%);
}

.cta {
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--dark-color) 100%);
}

.btn-light {
    background: var(--white);
    color: var(--primary-color);
}

.btn-light:hover {
    background: var(--primary-color);
    color: var(--white);
}

.contact {
    background: var(--white);
}

/* Contact headings use darkened primary for WCAG AA contrast */
.info-item h3 {
    color: color-mix(in srgb, var(--primary-color) 70%, #000000);
}

/* Phone link uses darkened primary for WCAG AA contrast */
.phone-link {
    color: color-mix(in srgb, var(--primary-color) 70%, #000000);
}

.phone-link:hover {
    color: var(--accent-color);
}

.social-link {
    background: var(--primary-color);
}

.social-link:hover {
    background: var(--dark-color);
}

.contact-map {
    background: var(--light-color);
}

.map-placeholder {
    background: linear-gradient(135deg, var(--secondary-color) 0%, var(--primary-color) 100%);
}

.footer {
    background: var(--dark-color);
}

.footer-brand a:hover {
    color: var(--accent-color);
}

.footer-links a:hover {
    color: var(--accent-color);
}

.social-icon:hover {
    background: var(--accent-color);
}
