/*
Theme Name: Satinder OmShanti Luxury Theme v7 Master
Theme URI: https://satinderomshanti.com
Author: Antigravity DeepMind Pair
Description: Master production theme with exact #0F2744 navy, #C8A75D gold, flushed permalinks, auto-populated legal pages, and 100% CMS editability.
Version: 1.0.8
*/

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	color: #333333;
	background-color: #F8F9FA;
	-webkit-font-smoothing: antialiased;
}

/* Typography Tokens */
.font-heading {
	font-family: 'Playfair Display', Georgia, serif;
}

/* Color Background Utilities (Exact Original Hex Match) */
.bg-navy { background-color: #0F2744 !important; }
.bg-gold { background-color: #C8A75D !important; }
.bg-light { background-color: #F8F9FA !important; }
.text-navy { color: #0F2744 !important; }
.text-gold { color: #C8A75D !important; }
.text-light { color: #F8F9FA !important; }
.border-gold { border-color: #C8A75D !important; }

/* Luxury Glassmorphism */
.glass {
	background: rgba(255, 255, 255, 0.1);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border: 1px solid rgba(255, 255, 255, 0.2);
}

.glass-dark {
	background: rgba(15, 39, 68, 0.85);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border: 1px solid rgba(255, 255, 255, 0.1);
}

/* WordPress Core Alignment Fallbacks */
.aligncenter { display: block; margin: 0 auto; }
.alignleft { float: left; margin-right: 1.5em; margin-bottom: 1em; }
.alignright { float: right; margin-left: 1.5em; margin-bottom: 1em; }

/* Luxury Button & Card Micro-Animations */
a.bg-navy, a.bg-gold, a.bg-white, button[type="submit"], button.bg-white {
	transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

a.bg-navy:hover, a.bg-gold:hover, button[type="submit"]:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 25px -5px rgba(200, 167, 93, 0.35);
}

a.bg-white:hover, button.bg-white:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 25px -5px rgba(255, 255, 255, 0.25);
}

/* Interactive Card Elevation */
.group {
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.group:hover {
	transform: translateY(-3px);
}

/* FAQ Accordion Smooth Animations */
.faq-content {
	max-height: 0;
	overflow: hidden;
	opacity: 0;
	transition: max-height 0.35s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.25s ease, padding 0.25s ease;
}
.faq-content.open {
	max-height: 500px;
	opacity: 1;
	padding-top: 10px;
	padding-bottom: 24px;
}
.faq-icon {
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.faq-icon.rotate {
	transform: rotate(180deg);
}
