/* ═══════════════════════════════════════
   contact.css — Contact page
   ═══════════════════════════════════════ */

/* ─── PAGE HERO ─── */
.page-hero { background: linear-gradient(135deg,#060606 0%,#111 50%,#0a0a0a 100%); padding: 100px 0 70px; position: relative; overflow: hidden; width: 100%; }
.page-hero-pattern { position: absolute; inset: 0; background-image: radial-gradient(circle at 1px 1px,rgba(184,134,11,.05) 1px,transparent 0); background-size: 32px 32px; }
.page-hero-content { position: relative; z-index: 2; }
.breadcrumb-bar { display: flex; align-items: center; gap: .5rem; margin-bottom: 1.5rem; flex-wrap: wrap; }
.breadcrumb-bar a { font-size: .76rem; color: rgba(255,255,255,.4); letter-spacing: .06em; text-transform: uppercase; transition: color .28s; }
.breadcrumb-bar a:hover { color: var(--gold-light); }
.breadcrumb-bar span { font-size: .65rem; color: rgba(255,255,255,.2); }
.breadcrumb-bar p { font-size: .76rem; color: var(--gold-light); letter-spacing: .06em; text-transform: uppercase; margin: 0; }
.page-title { font-size: clamp(2rem,4vw,3.2rem); color: #fff; line-height: 1.15; margin-bottom: 1rem; }
.page-title span { color: var(--gold-bright); }
.page-subtitle { font-size: 1rem; color: rgba(255,255,255,.55); line-height: 1.78; max-width: 600px; }

/* ─── CONTACT MAIN ─── */
.sec-contact-main { padding: 90px 0; background: #fff; }
.contact-info-card { background: var(--dark); border-radius: 10px; padding: 2.5rem 2rem; height: 100%; }
.contact-info-card h4 { font-family: 'Playfair Display',serif; color: var(--gold-bright); font-size: 1.4rem; margin-bottom: .5rem; }
.contact-info-card > p { font-size: .88rem; color: rgba(255,255,255,.5); margin-bottom: 2rem; line-height: 1.7; }
.contact-item { display: flex; align-items: flex-start; gap: 1rem; margin-bottom: 1.5rem; }
.contact-icon-box { width: 44px; height: 44px; background: rgba(184,134,11,.12); border: 1px solid rgba(184,134,11,.25); border-radius: 6px; display: flex; align-items: center; justify-content: center; font-size: 1rem; color: var(--gold-light); flex-shrink: 0; }
.contact-item h6 { font-size: .68rem; letter-spacing: .1em; text-transform: uppercase; color: rgba(255,255,255,.4); font-weight: 600; margin-bottom: .25rem; font-family: 'Inter',sans-serif; }
.contact-item p { color: #fff; font-size: .88rem; margin: 0; line-height: 1.55; }
.contact-item a { color: var(--gold-light); text-decoration: none; transition: color .25s; }
.contact-item a:hover { color: var(--gold-bright); }
.contact-socials { display: flex; gap: 10px; margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid rgba(184,134,11,.15); }
.contact-social { width: 38px; height: 38px; border: 1px solid rgba(184,134,11,.22); border-radius: 4px; display: flex; align-items: center; justify-content: center; color: rgba(255,255,255,.4); font-size: .95rem; text-decoration: none; transition: all .25s; }
.contact-social:hover { border-color: var(--gold-light); color: var(--gold-bright); background: rgba(184,134,11,.1); }
.contact-hours { background: rgba(184,134,11,.08); border: 1px solid rgba(184,134,11,.18); border-radius: 6px; padding: 1.1rem 1.25rem; margin-top: 1.5rem; }
.contact-hours h6 { font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; color: var(--gold-light); font-weight: 700; margin-bottom: .7rem; font-family: 'Inter',sans-serif; }
.contact-hours p { font-size: .82rem; color: rgba(255,255,255,.55); margin: 0; line-height: 1.7; }

/* ─── CONTACT FORM ─── */
.contact-form-card { background: #fff; border: 1px solid rgba(184,134,11,.15); border-radius: 10px; padding: 2.5rem 2.2rem; height: 100%; }
.contact-form-card h4 { font-family: 'Playfair Display',serif; font-size: 1.4rem; color: var(--dark); margin-bottom: .4rem; }
.contact-form-card > p { font-size: .88rem; color: #777; margin-bottom: 2rem; }
.form-field { margin-bottom: 1.1rem; }
.form-field label { display: block; font-size: .76rem; color: #555; letter-spacing: .05em; margin-bottom: .4rem; text-transform: uppercase; font-weight: 600; }
.form-field input, .form-field select, .form-field textarea { width: 100%; background: #F9F8F5; border: 1px solid rgba(184,134,11,.18); color: var(--dark); border-radius: 4px; padding: .72rem 1rem; font-size: .88rem; font-family: 'Inter',sans-serif; transition: all .25s; outline: none; appearance: none; }
.form-field input::placeholder, .form-field textarea::placeholder { color: #bbb; }
.form-field input:focus, .form-field select:focus, .form-field textarea:focus { background: var(--gold-pale); border-color: var(--gold); box-shadow: 0 0 0 3px rgba(184,134,11,.1); }
.form-field select option { background: #fff; color: var(--dark); }
.form-field textarea { resize: vertical; min-height: 120px; }
.form-success { display: none; background: var(--gold-pale); border: 1px solid rgba(184,134,11,.35); border-radius: 4px; padding: 1.1rem; color: var(--gold); font-size: .88rem; text-align: center; margin-top: 1rem; }
.form-success.show { display: block; }

/* ─── MAP / LOCATION ─── */
.sec-map { padding: 0 0 90px; background: #fff; }
.map-wrap { border-radius: 10px; overflow: hidden; border: 1px solid rgba(184,134,11,.15); height: 380px; background: #F9F8F5; display: flex; align-items: center; justify-content: center; }
.map-placeholder { text-align: center; }
.map-placeholder i { font-size: 3rem; color: var(--gold); opacity: .4; margin-bottom: 1rem; }
.map-placeholder p { font-size: .88rem; color: #999; }

/* ─── QUICK CONTACT CARDS ─── */
.sec-quick { padding: 90px 0; background: #F9F8F5; }
.quick-card { background: #fff; border: 1px solid rgba(184,134,11,.12); border-radius: 8px; padding: 2rem 1.5rem; text-align: center; height: 100%; transition: all .3s; }
.quick-card:hover { border-color: rgba(184,134,11,.35); box-shadow: 0 8px 24px rgba(184,134,11,.09); transform: translateY(-3px); }
.quick-icon { width: 64px; height: 64px; background: var(--gold-pale); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 1.6rem; color: var(--gold); margin: 0 auto 1rem; border: 2px solid rgba(184,134,11,.2); }
.quick-card h5 { font-size: .95rem; font-weight: 700; color: var(--dark); margin-bottom: .4rem; font-family: 'Inter',sans-serif; }
.quick-card p { font-size: .82rem; color: #777; margin-bottom: 1.1rem; line-height: 1.65; }
.quick-link { display: inline-flex; align-items: center; gap: .4rem; font-size: .78rem; font-weight: 700; color: var(--gold); text-transform: uppercase; letter-spacing: .06em; transition: gap .25s; }
.quick-link:hover { gap: .7rem; color: var(--gold-light); }

/* ─── RESPONSIVE ─── */
@media(max-width:991px) {
  .page-hero { padding: 80px 0 55px; }
  .contact-info-card, .contact-form-card { padding: 2rem; }
  .map-wrap { height: 300px; }
}
@media(max-width:767px) {
  .page-title { font-size: 1.75rem; }
  .contact-info-card { margin-bottom: 1.5rem; }
}
@media(max-width:480px) {
  .page-title { font-size: 1.45rem; }
  .page-hero { padding: 70px 0 45px; }
  .contact-form-card, .contact-info-card { padding: 1.5rem; }
}