/* Global Legacy CSS for Subpages (Mapped to Tailwind Theme) */
:root {
    --primary: #1A3626; /* forest */
    --secondary: #B89C72; /* gold */
    --accent: #B89C72; /* gold */
    --text: #2C2A28; /* earth */
    --bg: #F7F6F2; /* alabaster */
}

* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: 'DM Sans', sans-serif; color: var(--text); background: var(--bg); line-height: 1.6; overflow-x: hidden; }
h1, h2, h3, h4, h5, h6 { font-family: 'Playfair Display', serif; font-weight: 600; color: var(--primary); }

.container { max-width: 1200px; margin: 0 auto; padding: 0 24px; }
.section { padding: 80px 0; }

/* Utility */
.text-center { text-align: center; }
.mt-4 { margin-top: 24px; }
.mb-4 { margin-bottom: 24px; }

/* 12-column Grid */
.row { display: grid; grid-template-columns: repeat(12, 1fr); gap: 24px; }
.col-3 { grid-column: span 3; }
.col-4 { grid-column: span 4; }
.col-6 { grid-column: span 6; }
.col-12 { grid-column: span 12; }

/* Components */
.btn { height: 48px; border-radius: 2px; background: var(--primary); color: #fff; text-decoration: none; display: inline-flex; align-items: center; justify-content: center; padding: 0 24px; font-weight: 500; font-family: 'DM Sans', sans-serif; text-transform: uppercase; transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1); border: 1px solid var(--primary); cursor: pointer; letter-spacing: 0.15em; }
.btn:hover { background: #0F2418; color: #fff; border-color: #0F2418; }
.btn-outline { background: transparent; color: var(--primary); border: 1px solid var(--primary); box-shadow: none; }
.btn-outline:hover { background: var(--primary); color: #fff; }

.card { background: #fff; border-radius: 4px; box-shadow: 0 10px 40px rgba(26,54,38,0.06); overflow: hidden; transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1); border: 1px solid rgba(184,156,114,0.1); }
.card:hover { transform: translateY(-4px); box-shadow: 0 20px 40px rgba(26,54,38,0.1); }

.glass { background: rgba(247, 246, 242, 0.8); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border: 1px solid rgba(184, 156, 114, 0.2); box-shadow: 0 8px 32px rgba(26, 54, 38, 0.05); }

/* Inputs */
.input { height: 48px; border: 1px solid rgba(184,156,114,0.3); border-radius: 2px; padding: 0 16px; font-family: inherit; font-size: 16px; width: 100%; transition: all 0.3s ease; background: #fff; }
.input:focus { border-color: var(--primary); outline: none; box-shadow: 0 0 0 1px var(--primary); }

/* Animations */
.fade-in { animation: fadeIn 1s ease forwards; opacity: 0; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }

/* Mobile Adaptations */
@media (max-width: 900px) {
    .row { grid-template-columns: 1fr 1fr; }
    .col-3, .col-4 { grid-column: span 1; }
    .col-6 { grid-column: span 2; }
}

@media (max-width: 768px) {
    .row { grid-template-columns: 1fr; }
    .col-3, .col-4, .col-6 { grid-column: span 1; }
    .section { padding: 40px 0; }
    .container { padding: 0 16px; }
    .hide-mobile { display: none !important; }
}
/* Premium Boutique Theme Additions */
.glass-nav { background: rgba(247, 246, 242, 0.98); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border-bottom: 1px solid rgba(44, 42, 40, 0.08); box-shadow: 0 4px 20px rgba(0,0,0,0.05); }
.glass-card { background: rgba(255, 255, 255, 0.98); border: 1px solid rgba(184, 156, 114, 0.3); box-shadow: 0 10px 40px rgba(26, 54, 38, 0.1); }
.hero-bg { animation: slowZoom 20s infinite alternate; }
@keyframes slowZoom { 0% { transform: scale(1); } 100% { transform: scale(1.1); } }

/* Scroll Reveal Framework */
.reveal { opacity: 0; transform: translateY(40px); transition: all 1s cubic-bezier(0.5, 0, 0, 1); }
.reveal.active { opacity: 1; transform: translateY(0); }
.reveal-left { opacity: 0; transform: translateX(-50px); transition: all 1s cubic-bezier(0.5, 0, 0, 1); }
.reveal-left.active { opacity: 1; transform: translateX(0); }
.reveal-right { opacity: 0; transform: translateX(50px); transition: all 1s cubic-bezier(0.5, 0, 0, 1); }
.reveal-right.active { opacity: 1; transform: translateX(0); }

/* Interactive Product System */
.product-img-wrapper { overflow: hidden; }
.product-img { transition: transform 0.7s ease; }
.product-card-hover:hover .product-img { transform: scale(1.08); }

/* Global UI Polish */
#preloader { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: #F7F6F2; z-index: 9999; display: flex; justify-content: center; align-items: center; transition: opacity 0.6s ease; }
@keyframes pulse { 0% { opacity: 0.5; transform: scale(0.95); } 50% { opacity: 1; transform: scale(1.05); } 100% { opacity: 0.5; transform: scale(0.95); } }
.motif-bg { background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 2C12 2 9 6 6 8C3 10 2 13 2 13C2 13 4 12 7 12C5 15 4 18 6 20C7 21 10 20 12 17C14 20 17 21 18 20C20 18 19 15 17 12C20 12 22 13 22 13C22 13 21 10 18 8C15 6 12 2 12 2Z' fill='%23B89C72' fill-opacity='0.08'/%3E%3C/svg%3E"); }

/* Mobile Menu White Background Override */
#mobile-menu { background-color: #ffffff !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
.menu-open#navbar { background-color: #ffffff !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; box-shadow: none !important; border-bottom: 1px solid rgba(0,0,0,0.05) !important; }
