/* Contact Us Page Styles */
:root {
	--gold: #C9A34E;
	--rose-gold: #D4A0A7;
	--ivory: #F8F6F2;
	--champagne: #FBF7F2;
	--pastel: #F4EAF6;
	--text: #2F2B2A;
	--muted: #6F6A68;
	--white: #ffffff;
	--shadow: 0 10px 30px rgba(0,0,0,0.08);
	--shadow-strong: 0 20px 50px rgba(0,0,0,0.12);
	--radius: 14px;
	--transition: all .35s ease;
}

/* Hero */
.cu-hero { position: relative; min-height: 56vh; display: grid; place-items: center; text-align: center; color: var(--white); overflow: hidden; }
.cu-hero-bg { position: absolute; inset: 0; background: url('../../assets/contectus1.jpg') center/cover no-repeat; transform: scale(1.05); }
.cu-hero::before { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,.45), rgba(0,0,0,.35)); z-index: 1; }
.cu-hero-inner { position: relative; z-index: 2; display: grid; gap: .5rem; }
.cu-hero .title { font-family: 'Playfair Display', serif; font-size: clamp(2rem, 4vw, 3rem); color: white;}
.cu-hero .subtitle { opacity: .95; color: white;}

/* Contact */
.cu-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 1.5rem; }
.cu-form-grid { grid-template-columns: 1fr 1fr; }
.cu-form-grid .col-span { grid-column: 1 / -1; }
.cu-details .title { font-family: 'Playfair Display', serif; font-size: 1.4rem; margin-bottom: .5rem; }
.cu-list { list-style: none; margin: 0; padding: 0; display: grid; gap: .75rem; }
.cu-list li { display: grid; grid-template-columns: 40px 1fr; gap: .75rem; align-items: start; padding: .75rem; border: 1px solid rgba(201,163,78,.2); border-radius: var(--radius); background: var(--champagne); }
.cu-list i { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 999px; background: linear-gradient(135deg, var(--gold), var(--rose-gold)); color: #fff; }
.cu-socials { display: flex; gap: .5rem; margin-top: .75rem; }
.cu-socials .icon { width: 40px; height: 40px; border-radius: 999px; display: grid; place-items: center; background: #f0f2ff; color: #222; box-shadow: var(--shadow); }

/* Map reuse */
.cu-map .map .ratio { position: relative; width: 100%; aspect-ratio: 16/9; border-radius: var(--radius); overflow: hidden; }
.cu-map .map iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

/* CTA */
.cu-cta { position: relative; min-height: 48vh; display: grid; place-items: center; text-align: center; color:white; overflow: hidden; }
.cu-cta-bg { position: absolute; inset: 0; background: url('../../assets/ContactUS.jpg') center/cover no-repeat fixed; transform: scale(1.05); }
.cu-cta::before { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,.45), rgba(0,0,0,.35)); z-index: 1; }
.cu-cta-inner { position: relative; z-index: 2; display: grid; gap: .5rem; color: white;}
.cu-cta-inner h3 { font-family: 'Playfair Display', serif; font-size: clamp(1.8rem, 3.2vw, 2.4rem); }

/* Mega Menu Styles */
.has-mega-menu{position:relative}
.mega-menu{position:absolute;right:0;top:100%;width:min(800px,95vw);background:#fff;border:1px solid #eee;border-radius:16px;box-shadow:0 20px 40px rgba(0,0,0,.1);padding:20px;display:none;z-index:200}
.mega-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.mega-category h4{margin:0 0 12px;font-size:1rem;color:var(--gold);font-weight:700;border-bottom:2px solid var(--champagne);padding-bottom:8px}
.mega-category ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.mega-category a{text-decoration:none;color:var(--text);padding:6px 10px;border-radius:8px;transition:all .2s ease;display:block;font-size:.85rem}
.mega-category a:hover{background:var(--champagne);color:var(--gold);transform:translateX(4px)}
.has-mega-menu:hover .mega-menu{display:block}
@media (min-width:900px) and (max-width:1100px){
	.mega-menu{width:min(700px,95vw)}
	.mega-grid{grid-template-columns:repeat(3,1fr)}
}
@media (min-width:900px) and (max-width:950px){
	.mega-menu{width:min(600px,95vw)}
	.mega-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:899px){
	.has-mega-menu .mega-menu{position:static;display:block;border:0;box-shadow:none;padding:6px 0;width:auto}
	.mega-grid{grid-template-columns:1fr;gap:8px}
}

/* Responsive */
@media (max-width: 1024px) {
	.cu-grid { grid-template-columns: 1fr; }
	.cu-form-grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
	.cu-hero { min-height: 46vh; }
	.cu-cta { min-height: 40vh; }
}

