/* contact page */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@700;800;900&family=Poppins:wght@400;500;600;700&display=swap');
.contact-banner h1 { font-family:'Montserrat',sans-serif; font-size:clamp(2rem,5vw,3rem); font-weight:900; color:#fff; margin:0 0 12px; }
.contact-banner p  { color:rgba(255,255,255,.75); font-size:1rem; max-width:500px; margin:0 auto; }
.breadcrumb-nav    { font-size:.85rem; color:rgba(255,255,255,.55); margin-top:10px; }
.breadcrumb-nav a  { color:#ffc107; text-decoration:none; }

/* ═══ CONTACT SECTION ═══ */
.contact-section { padding: 72px 20px; background: #f7f9fb; }
.contact-wrap    { max-width: 1160px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1.35fr; gap: 40px; }

/* ── Info Side ── */
.contact-info-card { background:#fff; border-radius:18px; padding:40px 32px; box-shadow:0 4px 32px rgba(0,0,0,.07); }
.contact-info-card h2 { font-family:'Montserrat',sans-serif; font-size:1.45rem; font-weight:800; color:#111; margin:0 0 8px; }
.contact-info-card .sub { font-size:.9rem; color:#777; margin-bottom:32px; line-height:1.6; }

.info-item { display:flex; align-items:flex-start; gap:18px; margin-bottom:28px; }
.info-icon { width:50px; height:50px; border-radius:14px; background:linear-gradient(135deg,#1a2744,#2a3f6e); flex-shrink:0;
             display:flex; align-items:center; justify-content:center; font-size:1.1rem; color:#ffc107; }
.info-text h4 { font-size:.95rem; font-weight:700; color:#111; margin:0 0 4px; }
.info-text a,
.info-text p  { font-size:.88rem; color:#555; margin:0; line-height:1.6; text-decoration:none; }
.info-text a:hover { color:#ffc107; }

.social-row       { display:flex; gap:12px; margin-top:28px; padding-top:24px; border-top:1px solid #f0f0f0; }
.social-row a     { width:42px; height:42px; border-radius:10px; background:#f4f4f4;
                    display:flex; align-items:center; justify-content:center; font-size:1rem;
                    color:#333; text-decoration:none; transition:.2s; }
.social-row a:hover { background:#1a2744; color:#ffc107; }

.wa-btn { display:flex; align-items:center; justify-content:center; gap:10px;
          background:#25d366; color:#fff; border-radius:12px; padding:14px 22px;
          font-weight:700; font-size:.92rem; text-decoration:none; margin-top:22px; transition:.2s; }
.wa-btn:hover { background:#1ebe5a; }

/* ── Form Side ── */
.contact-form-card { background:#fff; border-radius:18px; padding:40px 36px; box-shadow:0 4px 32px rgba(0,0,0,.07); }
.contact-form-card h2 { font-family:'Montserrat',sans-serif; font-size:1.45rem; font-weight:800; color:#111; margin:0 0 8px; }
.contact-form-card .sub { font-size:.9rem; color:#777; margin-bottom:28px; }

.form-row-2 { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.form-group { margin-bottom:16px; }
.form-group label  { display:block; font-size:.8rem; font-weight:700; color:#444; margin-bottom:6px; text-transform:uppercase; letter-spacing:.5px; }
.form-group input,
.form-group textarea,
.form-group select { width:100%; padding:12px 16px; border:1.5px solid #e8e8e8; border-radius:10px;
                     font-size:.9rem; color:#222; background:#fafafa; transition:.2s; box-sizing:border-box; }
.form-group input:focus,
.form-group textarea:focus,
.form-group select:focus { border-color:#1a2744; background:#fff; outline:none; }
.form-group textarea { resize:vertical; min-height:130px; }

.submit-btn { width:100%; padding:15px; background:linear-gradient(135deg,#ffc107,#ffab00);
              color:#1a2744; border:none; border-radius:12px; font-size:1rem;
              font-weight:800; cursor:pointer; transition:.2s; display:flex; align-items:center; justify-content:center; gap:10px; }
.submit-btn:hover { transform:translateY(-2px); box-shadow:0 8px 24px rgba(255,193,7,.4); }

.alert-success { background:#d1fae5; border:1.5px solid #6ee7b7; color:#065f46; border-radius:10px;
                 padding:14px 18px; margin-bottom:20px; font-size:.9rem; display:flex; align-items:center; gap:10px; }
.alert-warn    { background:#fef3c7; border:1.5px solid #fcd34d; color:#92400e; border-radius:10px;
                 padding:14px 18px; margin-bottom:20px; font-size:.9rem; display:flex; align-items:center; gap:10px; }
.alert-error   { background:#fee2e2; border:1.5px solid #fca5a5; color:#991b1b; border-radius:10px;
                 padding:14px 18px; margin-bottom:20px; font-size:.9rem; display:flex; align-items:center; gap:10px; }

/* ═══ MAP ═══ */
.map-section { padding: 0 20px 72px; background:#f7f9fb; }
.map-wrap    { max-width:1160px; margin:0 auto; border-radius:18px; overflow:hidden; box-shadow:0 4px 32px rgba(0,0,0,.10); }
.map-wrap iframe { width:100%; height:440px; border:none; display:block; }
.map-placeholder { background:#e8edf2; height:300px; display:flex; align-items:center; justify-content:center; color:#999; font-size:1rem; border-radius:18px; }

/* ═══ QUICK CONTACT BAR ═══ */
.quick-bar { background:linear-gradient(135deg,#1a2744,#2a3f6e); padding:32px 20px; }
.quick-bar-inner { max-width:1160px; margin:0 auto; display:flex; gap:24px; justify-content:center; flex-wrap:wrap; }
.quick-item { display:flex; align-items:center; gap:14px; }
.quick-item i { font-size:1.6rem; color:#ffc107; }
.quick-item h4 { font-size:.8rem; color:rgba(255,255,255,.55); margin:0 0 2px; text-transform:uppercase; letter-spacing:.5px; }
.quick-item a,
.quick-item p  { font-size:1rem; font-weight:700; color:#fff; margin:0; text-decoration:none; }
.quick-item a:hover { color:#ffc107; }
.quick-divider { width:1px; background:rgba(255,255,255,.15); align-self:stretch; }

@media(max-width:768px){
  .contact-wrap  { grid-template-columns:1fr; }
  .form-row-2    { grid-template-columns:1fr; }
  .quick-divider { display:none; }
}