/*
 * Archetype: beauty-luxe
 * Beauty Luxe — Premium schoonheid en wellness met elegante, verfijnde uitstraling.
 * Auto-generated door build-theme-archetype-css.php
 */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@500;600;700;800&family=Lato:wght@300;400;500;600&display=swap');

:root {
    --primary: #D4A574;
    --primary-dark: color-mix(in srgb, #D4A574 85%, black);
    --primary-light: color-mix(in srgb, #D4A574 15%, white);
    --secondary: #F4E4D7;
    --accent: #C41E3A;
    --bg: #FFFAF5;
    --bg-alt: color-mix(in srgb, #FFFAF5 94%, #2D2D2D);
    --text: #2D2D2D;
    --text-dim: #999999;
    --dim: #374151;
    --muted: #999999;
    --radius: 12px;
    --radius-sm: calc(12px * 0.5);
    --radius-lg: calc(12px * 1.5);
    --shadow: 0 4px 12px rgba(0,0,0,.08);
    --font-heading: 'Playfair Display', system-ui, sans-serif;
    --font-body: 'Lato', system-ui, sans-serif;
}

body { background: var(--bg); color: var(--text); font-family: var(--font-body); font-weight: 300; }
h1,h2,h3,h4,h5,h6 { font-family: var(--font-heading); color: var(--text); }
a { color: var(--primary); }

.btn-primary { color: var(--primary) !important; background: transparent; border: 1.5px solid var(--primary); border-radius: 0; letter-spacing: .1em; text-transform: uppercase; font-size: .85rem; transition: all .4s ease; }
.btn-primary:hover { background: var(--primary) !important; color: #fff !important; }
.btn-secondary { background: var(--bg-alt); color: var(--text); border-radius: 0; }
.card, .itw-card, section.widget { border-radius: 2px; box-shadow: 0 2px 20px rgba(212,165,116,.1); }
.hero-title, .itw-hero__title { color: var(--text); }
.hero-accent, .itw-hero__accent { color: var(--accent); }

/* === BEAUTY: Luxury — thin borders, letter-spacing, delicate === */
h2 { letter-spacing: .06em; font-weight: 500; }
h3 { letter-spacing: .04em; }
.sec-badge { letter-spacing: .15em; text-transform: uppercase; font-size: .7rem; color: var(--primary); border: 1px solid var(--primary); border-radius: 0; padding: 5px 16px; background: transparent; }
.hero-ov { background: linear-gradient(180deg, rgba(255,250,245,.1), rgba(212,165,116,.25)) !important; }
.hero-badge { background: transparent; border: 1px solid rgba(255,255,255,.6); border-radius: 0; letter-spacing: .12em; text-transform: uppercase; font-size: .7rem; backdrop-filter: blur(8px); }
.hero h1, .hero h2 { letter-spacing: .03em; }
.nav { background: rgba(255,250,245,.95); backdrop-filter: blur(10px); border-bottom: 1px solid rgba(212,165,116,.2); }
.topbar { background: #3a2a1a; letter-spacing: .05em; font-size: .8rem; }
.voordeel-card { border-radius: 2px; border: 1px solid rgba(212,165,116,.15); background: #fff; transition: box-shadow .4s ease; }
.voordeel-card:hover { box-shadow: 0 8px 32px rgba(212,165,116,.15); }
.ms12-voordeel-icon { color: var(--primary); }
.ms-price-card { border-radius: 2px; border: 1px solid rgba(212,165,116,.2); }
.ms-price-card--featured { border-color: var(--primary); position: relative; }
.ms-price-card--featured::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: linear-gradient(90deg, var(--primary), var(--accent)); }
.ms-price-badge { background: transparent; color: var(--primary); border: 1px solid var(--primary); letter-spacing: .1em; text-transform: uppercase; font-size: .65rem; }
.ms-problem-card { border-radius: 2px; border: 1px solid rgba(212,165,116,.12); }
.ms12-rating-card { border-radius: 2px; background: #3a2a1a; color: #fff; }
.ms12-rating-card .ms12-rating-title, .ms12-rating-card .ms12-rating-score, .ms12-rating-card .ms12-rating-meta { color: #f4e4d7; }
.ms12-rating-card .ms12-rating-stars i { color: var(--primary); }
.ms12-lead-card { border-radius: 2px; border: 1px solid rgba(212,165,116,.15); }
.ms12-input, .ms12-textarea { border-radius: 0 !important; border: 1px solid rgba(212,165,116,.3); font-weight: 300; }
.ms12-input:focus, .ms12-textarea:focus { border-color: var(--primary); }
.footer { background: #2d1f14; letter-spacing: .04em; }
.sec-alt { background: #f8f0e8; }
.sec h2::after { content: ''; display: block; width: 40px; height: 1px; background: var(--primary); margin-top: 14px; }
.wave-divider { display: none; }
.ms-before-after { border: 1px solid rgba(212,165,116,.15); border-radius: 2px; }
