/* Trang Liên hệ — nội dung quản trị tại Page dùng template page-lienhe.php. */
.dmax-contact-page .site-inner { width:calc(100% - 30px); max-width:1200px; }
.dmax-contact-page .content-sidebar-wrap { float:none; margin:0; }
.dmax-contact { padding:40px 0 60px; color:var(--primary); }
.dmax-contact .contact-heading { margin:0 0 12px; color:var(--primary); font-family:var(--font-accent); font-size:36px; font-weight:800; line-height:1.3; }
.dmax-contact .contact-intro { margin-bottom:28px; font-size:16px; line-height:1.6; }
.dmax-contact .contact-intro > :last-child,
.dmax-contact .contact-form-intro > :last-child { margin-bottom:0; }
.dmax-contact .contact-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.dmax-contact .contact-card { display:flex; flex-direction:column; align-items:center; justify-content:center; min-width:0; min-height:154px; margin:0; padding:22px 20px; border-radius:18px; background:var(--primary); color:#fff; text-align:center; }
.dmax-contact .contact-card-content { width:100%; min-width:0; color:#fff; font-size:14px; line-height:1.5; overflow-wrap:anywhere; }
.dmax-contact .contact-card-content p { margin:0 0 8px; color:inherit; font-size:inherit; line-height:inherit; }
.dmax-contact .contact-card-content > :last-child { margin-bottom:0; }
.dmax-contact .contact-card-content img { display:inline-block; max-width:100%; height:auto; vertical-align:middle; }
.dmax-contact .contact-card-content strong { font-size:20px; font-weight:800; line-height:1.3; }
.dmax-contact .contact-card-content .contact-card-title,
.dmax-contact .contact-card-content h2,
.dmax-contact .contact-card-content h3 { margin:0 0 6px; color:inherit; font-family:var(--font-main); font-size:20px; font-weight:800; line-height:1.3; }
.dmax-contact .contact-card a { color:inherit; text-decoration:none; }
.dmax-contact .contact-card a:hover { text-decoration:underline; text-underline-offset:3px; }
.dmax-contact .contact-request-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:32px; margin-top:54px; }
.dmax-contact .contact-request-grid.has-map { grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr); }
.dmax-contact .contact-consultation { min-width:0; }
.dmax-contact .contact-eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 8px; color:var(--primary); font-size:13px; font-weight:700; line-height:1.5; text-transform:uppercase; }
.dmax-contact .contact-eyebrow::before { content:""; flex:0 0 42px; height:2px; background:var(--accent); }
.dmax-contact .contact-form-heading { margin:0 0 12px; color:var(--primary); font-family:var(--font-accent); font-size:28px; font-weight:800; line-height:1.3; }
.dmax-contact .contact-form-intro { margin-bottom:24px; font-size:16px; line-height:1.6; }
.dmax-contact .contact-form { min-width:0; }
.dmax-contact .contact-form .caldera-grid { color:var(--primary); font-family:var(--font-main); font-size:16px; }
.dmax-contact .contact-form .caldera-grid .row { display:flex; flex-wrap:wrap; column-gap:16px; margin-right:0; margin-left:0; }
.dmax-contact .contact-form .caldera-grid .row::before,
.dmax-contact .contact-form .caldera-grid .row::after { display:none; }
.dmax-contact .contact-form .caldera-grid [class*="col-sm-"] { float:none; min-width:0; padding-right:0; padding-left:0; }
.dmax-contact .contact-form .caldera-grid .col-sm-6 { width:calc(50% - 8px); }
.dmax-contact .contact-form .caldera-grid .col-sm-12 { width:100%; }
.dmax-contact .contact-form .caldera-grid .form-group { margin:0 0 14px; }
.dmax-contact .contact-form .caldera-grid .form-control { width:100%; max-width:100%; height:46px; padding:0 18px; border:1px solid transparent; border-radius:26px; background:var(--light); color:var(--text); box-shadow:none; font-family:var(--font-main); font-size:16px; line-height:1.5; }
.dmax-contact .contact-form .caldera-grid textarea.form-control { height:auto; min-height:154px; padding:14px 18px; border-radius:20px; resize:vertical; }
.dmax-contact .contact-form .caldera-grid .form-control::placeholder { color:var(--muted); opacity:1; }
.dmax-contact .contact-form .caldera-grid .form-control:focus { border-color:var(--primary); outline:0; box-shadow:0 0 0 2px rgba(0,16,98,.08); }
.dmax-contact .contact-form .caldera-grid input[type="submit"],
.dmax-contact .contact-form .caldera-grid button[type="submit"] { display:inline-flex; align-items:center; justify-content:center; width:auto; height:var(--button-height); margin:4px 0 0; padding:0 24px; border:0; border-radius:30px; background:var(--accent); color:var(--primary); font-family:var(--font-main); font-size:16px; font-weight:800; line-height:1.5; cursor:pointer; }
.dmax-contact .contact-form .caldera-grid input[type="submit"]:hover,
.dmax-contact .contact-form .caldera-grid button[type="submit"]:hover { background:var(--primary); color:#fff; }
.dmax-contact .contact-form .caldera-grid .has-error .form-control { border-color:#c8151a; }
.dmax-contact .contact-form .caldera-grid .help-block,
.dmax-contact .contact-form .caldera-grid .alert { font-size:14px; line-height:1.5; }
.dmax-contact .contact-map { position:relative; min-width:0; min-height:420px; margin:44px 0 14px; border:1px solid var(--border); border-radius:20px; background:var(--light); overflow:hidden; }
.dmax-contact .contact-map iframe { position:absolute; inset:0; display:block; width:100%; height:100%; border:0; }
.dmax-contact a:focus-visible,
.dmax-contact input[type="submit"]:focus-visible,
.dmax-contact button:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }

/* Responsive luôn đặt cuối file, từ breakpoint lớn xuống nhỏ. */
@media (max-width: 960px) {
    .dmax-contact .contact-cards { gap:16px; }
    .dmax-contact .contact-card { padding:20px 14px; }
    .dmax-contact .contact-request-grid { gap:24px; }
    .dmax-contact .contact-request-grid.has-map { grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); }
}
@media (max-width: 768px) {
    .dmax-contact { padding:28px 0 40px; }
    .dmax-contact .contact-heading { font-size:28px; }
    .dmax-contact .contact-form-heading { font-size:24px; }
    .dmax-contact .contact-request-grid { margin-top:36px; }
    .dmax-contact .contact-request-grid.has-map { grid-template-columns:minmax(0,1fr); }
    .dmax-contact .contact-map { min-height:340px; margin:0; }
}
@media (max-width: 680px) {
    .dmax-contact .contact-cards { grid-template-columns:minmax(0,1fr); gap:12px; }
    .dmax-contact .contact-card { min-height:106px; padding:18px 20px; }
    .dmax-contact .contact-card-content .contact-card-title,
    .dmax-contact .contact-card-content h2,
    .dmax-contact .contact-card-content h3,
    .dmax-contact .contact-card-content strong { font-size:18px; }
}
@media (max-width: 500px) {
    .dmax-contact .contact-form .caldera-grid .col-sm-6 { width:100%; }
    .dmax-contact .contact-form-intro { margin-bottom:18px; }
    .dmax-contact .contact-map { min-height:300px; }
}
