/* CLASS CHUNG */.sec-padding { padding: 60px 0; }.bg-light { background-color: #f8f9fa; }.container { max-width: 1200px; margin: 0 auto; padding: 0 15px; }.text-center { text-align: center; }.sec-title { color: #042588; font-size: 1.8rem; font-weight: 700; margin-bottom: 8px; }.sec-subtitle { color: #666; font-size: 0.95rem; margin-top: 10px; }.title-line { width: 50px; height: 3px; background: #ff5722; margin-bottom: 15px; }.title-line.center { margin-left: auto; margin-right: auto; }.contact-page .hero-banner {  position: relative;  height: 50vh;  min-height: 500px;  background-position:center center;  background-size: cover;  background-attachment:fixed;  display: flex;  align-items: center;  justify-content: center;  color: #fff;  text-align: center;}.contact-page .hero-overlay {  position: absolute;  top: 0; left: 0; right: 0; bottom: 0;  background: rgba(4, 37, 136, 0.65);}.contact-page .hero-content {  position: relative;  z-index: 5;}.contact-page .hero-content h1 {  font-size: 2.8rem;  font-weight: 700;  letter-spacing: 1px;}.hero-title { font-size: 2.3rem; font-weight: 700; margin-bottom: 10px; }.hero-desc { font-size: 1.05rem; opacity: 0.9; max-width: 680px; margin: 0 auto; }/* GRID VĂN PHÒNG CHI NHÁNH */.office-grid {  display: grid;  grid-template-columns: repeat(3, 1fr);  gap: 25px;  margin-top: 35px;}.office-card {  background: #fff;  border-radius: 8px;  padding: 25px;  border: 1px solid #eef0f5;  box-shadow: 0 4px 12px rgba(0,0,0,0.03);  position: relative;  transition: transform 0.3s ease;}.office-card:hover { transform: translateY(-5px); }.office-card.main-office { border: 2px solid #042588; }.office-badge {  position: absolute;  top: -12px;  right: 20px;  background: #042588;  color: #fff;  font-size: 0.75rem;  font-weight: 600;  padding: 3px 12px;  border-radius: 12px;  text-transform: uppercase;}.office-name { font-size: 1.2rem; color: #042588; margin-bottom: 18px; font-weight: 700; display: flex; align-items: center; gap: 8px; }.office-name i { color: #ff5722; }.office-info-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 12px; }.office-info-list li { display: flex; gap: 12px; font-size: 0.9rem; color: #444; line-height: 1.4; }.office-info-list li i { color: #ff5722; font-size: 1rem; margin-top: 2px; flex-shrink: 0; }/* MAIN GRID FORM + MAP */.contact-main-grid {  display: grid;  grid-template-columns: 1fr 480px;  gap: 40px;  align-items: start;}/* FORM WRAPPER */.contact-form-wrapper { background: #fff; padding: 30px; border-radius: 8px; border: 1px solid #eee; box-shadow: 0 4px 15px rgba(0,0,0,0.04); }.form-title { font-size: 1.35rem; color: #042588; font-weight: 700; margin-bottom: 8px; }.form-desc { font-size: 0.9rem; color: #666; margin-bottom: 22px; }.contact-form { display: flex; flex-direction: column; gap: 16px; }.form-row { display: flex; }.form-row.gap-15 { gap: 15px; }.form-group { flex: 1; }.contact-form input, .contact-form select, .contact-form textarea {  width: 100%;  padding: 12px 15px;  border-radius: 6px;  border: 1px solid #ccc;  font-size: 0.92rem;  outline: none;  box-sizing: border-box;  transition: border-color 0.2s;}.contact-form input:focus, .contact-form select:focus, .contact-form textarea:focus { border-color: #042588; }.btn-submit {  background: #ff5722;  color: #fff;  padding: 13px 25px;  border-radius: 6px;  border: none;  font-size: 0.95rem;  font-weight: 700;  cursor: pointer;  transition: 0.3s;  display: inline-flex;  align-items: center;  justify-content: center;  gap: 8px;}.btn-submit:hover { background: #e0481d; }/* MAP & EMERGENCY CARD */.map-box { border-radius: 8px; overflow: hidden; border: 1px solid #ddd; margin-bottom: 20px; }.emergency-support-card {  background: linear-gradient(135deg, #042588, #0a3bbd);  color: #fff;  border-radius: 8px;  padding: 20px;  display: flex;  align-items: center;  gap: 18px;}.support-icon { font-size: 2.2rem; color: #ff5722; }.support-info h4 { font-size: 1rem; margin-bottom: 4px; font-weight: 700; }.support-info p { font-size: 0.82rem; opacity: 0.88; margin-bottom: 8px; }.hotline-link { font-size: 1.25rem; font-weight: 700; color: #ff5722; text-decoration: none; display: inline-flex; align-items: center; gap: 6px; }.hotline-link:hover { text-decoration: underline; color: #fff; }/* RESPONSIVE */@media (max-width: 992px) {  .office-grid { grid-template-columns: 1fr; }  .contact-main-grid { grid-template-columns: 1fr; }}@media (max-width: 576px) {  .form-row.gap-15 { flex-direction: column; gap: 16px; }  .contact-page .hero-content h1 {font-size: 2.4rem;}}