/* ==========================================================================
   Contact Us page
   ========================================================================== */

.contact-hero{
  position:relative;min-height:400px;display:flex;flex-direction:column;justify-content:center;align-items:center;
  color:#fff;text-align:center;padding:70px 24px;
  background:linear-gradient(rgba(20,10,5,.4),rgba(11,29,51,.6)),
             url('https://images.unsplash.com/photo-1477587458883-47145ed94245?w=1800&q=80') center 30%/cover no-repeat;
}
.contact-hero h1{font-size:2.8rem;font-weight:normal;font-family:Georgia,serif;}
.contact-hero p{margin-top:14px;color:#f1ede3;font-size:.95rem;}

@media(max-width:960px){
  .contact-hero h1{font-size:2.1rem;}
  .contact-hero{min-height:320px;}
}

.contact-layout{
  max-width:1180px;margin:0 auto;padding:70px 48px;
  display:grid;grid-template-columns:1.5fr 1fr;gap:36px;
}
@media(max-width:960px){
  .contact-layout{grid-template-columns:1fr;padding:50px 22px;}
}

.contact-form-card{background:#fff;border:1px solid var(--border);border-radius:10px;padding:38px;}
.contact-form-card h2{font-size:1.5rem;color:var(--heritage-ink);margin-bottom:8px;font-family:Georgia,serif;}
.contact-form-card > p{font-size:.88rem;color:var(--muted);margin-bottom:26px;line-height:1.6;}

.contact-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.contact-field{grid-column:span 1;}
.contact-field.full{grid-column:span 2;}
.contact-field label{display:block;font-size:.7rem;letter-spacing:.6px;text-transform:uppercase;color:var(--heritage-ink);font-weight:bold;margin-bottom:8px;}
.contact-field input,
.contact-field select,
.contact-field textarea{
  width:100%;border:none;border-bottom:1px solid #d8d1bd;background:transparent;
  padding:8px 2px;font-size:.92rem;color:var(--text);font-family:inherit;
}
.contact-field input::placeholder,
.contact-field textarea::placeholder{color:#b3ac97;}
.contact-field textarea{resize:vertical;min-height:70px;}
.contact-field input:focus,
.contact-field select:focus,
.contact-field textarea:focus{outline:none;border-bottom-color:var(--palace-red);}
.contact-submit{grid-column:span 2;margin-top:6px;}

@media(max-width:600px){
  .contact-form-grid{grid-template-columns:1fr;}
  .contact-field.full,.contact-submit{grid-column:span 1;}
}

/* Sidebar info cards */
.contact-sidebar{display:flex;flex-direction:column;gap:18px;}
.contact-info-card{
  background:var(--sand);border-radius:10px;padding:22px 24px;display:flex;gap:16px;align-items:flex-start;
}
.contact-info-card .ic{
  width:40px;height:40px;border-radius:50%;background:#fff;color:var(--palace-red);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.contact-info-card .ic svg{width:19px;height:19px;}
.contact-info-card h4{font-size:.98rem;color:var(--heritage-ink);margin-bottom:6px;font-family:Georgia,serif;}
.contact-info-card p{font-size:.85rem;color:var(--muted);line-height:1.6;margin:0;}

.contact-social{display:flex;gap:12px;margin-top:4px;}
.contact-social a{
  width:40px;height:40px;border-radius:50%;background:var(--sand);color:var(--palace-red);
  display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s;
}
.contact-social a:hover{background:var(--palace-red);color:#fff;}
.contact-social a svg{width:17px;height:17px;}

/* Map section */
.contact-map-section{background:var(--cream);padding:0 48px 90px;max-width:1180px;margin:0 auto;text-align:center;}
.contact-map-section h2{font-size:1.7rem;color:var(--heritage-ink);margin-bottom:8px;}
.contact-map-section > p{color:var(--muted);font-size:.9rem;margin-bottom:30px;}
.contact-map-frame{border-radius:10px;overflow:hidden;border:1px solid var(--border);height:400px;}
.contact-map-frame iframe{width:100%;height:100%;border:0;display:block;filter:grayscale(15%) sepia(8%);}

@media(max-width:960px){
  .contact-map-section{padding:0 22px 60px;}
  .contact-map-frame{height:300px;}
}
