/* ═══════════════════════════════════════
   CONTACT — Hero, Form, Info, Map
═══════════════════════════════════════ */

/* Contact hero */
.contact-hero{background:linear-gradient(135deg,#0e0c08,#1e1508);padding:100px 80px 72px;text-align:center;border-bottom:2px solid rgba(240,180,41,0.15)}
.contact-hero h1{font-family:'Playfair Display',serif;font-size:clamp(48px,6vw,80px);font-weight:900;color:var(--cream)}
.contact-hero h1 em{color:var(--gold)}
.contact-hero p{margin-top:16px;font-size:14px;letter-spacing:2px;color:var(--muted);font-family:'Cinzel',serif;text-transform:uppercase}

/* Contact body */
.contact-body{display:grid;grid-template-columns:1fr 1fr;min-height:600px}
.contact-form-panel{background:var(--dark-wood);padding:80px 72px}
.contact-form-panel h2{font-family:'Playfair Display',serif;font-size:36px;font-weight:900;color:var(--cream);margin-bottom:8px}
.contact-form-panel h2 em{color:var(--gold)}
.contact-form-panel .subtitle{font-size:13px;color:var(--muted);margin-bottom:40px}
.form-group{margin-bottom:24px}
.form-group label{display:block;font-family:'Cinzel',serif;font-size:10px;letter-spacing:3px;color:var(--gold);text-transform:uppercase;margin-bottom:8px}
.form-group input,.form-group textarea,.form-group select{width:100%;background:rgba(255,255,255,0.04);border:1px solid rgba(240,180,41,0.2);color:var(--cream);font-family:'Lato',sans-serif;font-size:14px;padding:14px 18px;outline:none;transition:border-color .2s}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--gold)}
.form-group textarea{resize:vertical;min-height:120px}
.form-group select option{background:var(--dark-wood);color:var(--cream)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}

/* Info panel */
.contact-info-panel{background:var(--black);padding:80px 72px;display:flex;flex-direction:column;justify-content:center;border-left:1px solid rgba(240,180,41,0.1)}
.contact-info-panel h2{font-family:'Playfair Display',serif;font-size:32px;font-weight:900;color:var(--cream);margin-bottom:40px}
.contact-info-panel h2 em{color:var(--gold)}
.info-item{display:flex;gap:20px;margin-bottom:36px;align-items:flex-start}
.info-icon{width:48px;height:48px;border:1px solid rgba(240,180,41,0.3);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;color:var(--gold)}
.info-item h4{font-family:'Cinzel',serif;font-size:10px;letter-spacing:3px;color:var(--gold);text-transform:uppercase;margin-bottom:6px}
.info-item p,.info-item a{font-size:14px;color:var(--muted);text-decoration:none;line-height:1.8}
.info-item a:hover{color:var(--gold)}
.delivery-info{margin-top:40px;padding:28px;border:1px solid rgba(240,180,41,0.15);background:rgba(240,180,41,0.04)}
.delivery-info h4{font-family:'Cinzel',serif;font-size:10px;letter-spacing:3px;color:var(--gold);text-transform:uppercase;margin-bottom:16px}
.delivery-badges{display:flex;gap:12px}

/* Map section */
.contact-map-section{display:grid;grid-template-columns:1fr 1fr;min-height:420px}
.contact-map-text{background:var(--green-dark);padding:72px;display:flex;flex-direction:column;justify-content:center}
.contact-map-text h2{font-family:'Playfair Display',serif;font-size:36px;font-weight:900;color:var(--gold);margin-bottom:16px}
.contact-map-text p{font-size:14px;line-height:1.9;color:rgba(245,234,214,0.7);margin-bottom:32px;max-width:380px}
.contact-map-panel{background:#0e1a0e;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}

/* Form success / error states */
.cf-success-msg{text-align:center;padding:48px 24px;animation:fadeIn .4s ease}
.cf-success-icon{width:64px;height:64px;border-radius:50%;background:rgba(240,180,41,0.12);border:2px solid var(--gold);display:flex;align-items:center;justify-content:center;font-size:28px;color:var(--gold);margin:0 auto 24px}
.cf-success-msg h3{font-family:'Playfair Display',serif;font-size:28px;color:var(--cream);margin-bottom:12px}
.cf-success-msg p{font-size:14px;color:var(--muted);line-height:1.8}
.cf-error-msg{margin-top:16px;padding:14px 18px;border:1px solid rgba(220,60,60,0.4);background:rgba(220,60,60,0.06)}
.cf-error-msg p{font-size:13px;color:#e57373;margin:0}
.cf-error-msg a{color:var(--gold);text-decoration:underline}
@keyframes fadeIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}

/* ── Responsive ── */
@media(max-width:1024px){
  .contact-hero{padding:80px 48px 56px}
  .contact-form-panel{padding:60px 48px}
  .contact-info-panel{padding:60px 48px}
  .contact-map-text{padding:56px 48px}
}

@media(max-width:768px){
  .contact-hero{padding:72px 24px 48px}
  .contact-body{grid-template-columns:1fr}
  .contact-form-panel{padding:48px 24px}
  .contact-info-panel{padding:48px 24px;border-left:none;border-top:1px solid rgba(240,180,41,0.1)}
  .form-row{grid-template-columns:1fr}
  .contact-map-section{grid-template-columns:1fr}
  .contact-map-text{padding:48px 24px}
  .contact-map-panel{min-height:260px}
}

@media(max-width:480px){
  .contact-info-panel h2,.contact-form-panel h2{font-size:26px}
}
