.tlg-contact{
  --ink:#12293F; --ink-2:#1B3B57; --paper:#F5F4EF; --paper-2:#EDECE4;
  --red:#B8362E; --red-deep:#8F2620; --gold:#C08A2E; --slate:#48545F; --slate-soft:#7C8791;
  --line:rgba(18,41,63,.12); --shadow:0 20px 50px -25px rgba(18,41,63,.35);
  font-family:'Be Vietnam Pro', sans-serif; color:var(--slate); background:var(--paper); line-height:1.7;
}
.tlg-contact *{box-sizing:border-box;}
.tlg-contact h1,.tlg-contact h2,.tlg-contact h3{font-family:'Fraunces',serif; color:var(--ink); font-weight:700; line-height:1.2;}
.tlg-contact .wrap{max-width:1120px; margin:0 auto; padding:0 32px;}

.tlg-contact-hero{
  background:radial-gradient(circle at 85% 15%, rgba(192,138,46,.18), transparent 45%),
    linear-gradient(160deg, var(--ink) 0%, var(--ink-2) 100%);
  color:#fff; text-align:center; padding:72px 0 58px;
}
.tlg-contact-hero .eyebrow{font-family:'JetBrains Mono',monospace; font-size:12px; letter-spacing:.18em; text-transform:uppercase; color:var(--gold); font-weight:600;}
.tlg-contact-hero h1{color:#fff; font-size:34px; margin-top:12px;}
.tlg-contact-hero p{color:rgba(255,255,255,.78); max-width:520px; margin:14px auto 0; font-size:15px;}

.tlg-contact-body{padding:60px 0 90px;}
.tlg-contact-grid{display:grid; grid-template-columns:0.85fr 1.15fr; gap:44px; align-items:start;}

.tlg-contact-cards{display:flex; flex-direction:column; gap:16px;}
.tlg-contact-card{
  background:#fff; border:1px solid var(--line); border-radius:12px; padding:22px 24px;
  display:flex; gap:16px; align-items:flex-start;
}
.tlg-contact-card .ico{
  flex:none; width:46px; height:46px; border-radius:10px; background:var(--paper-2); color:var(--red);
  display:flex; align-items:center; justify-content:center; font-size:1.25rem;
}
.tlg-contact-card strong{display:block; color:var(--ink); font-size:15px; margin-bottom:3px;}
.tlg-contact-card a,.tlg-contact-card span{font-size:14.5px; color:var(--slate);}
.tlg-contact-card a{color:var(--red); font-weight:600;}

.tlg-contact-map-note{
  background:var(--ink); color:rgba(255,255,255,.85); border-radius:12px; padding:22px 24px; font-size:14px;
}
.tlg-contact-map-note strong{color:#fff; display:block; margin-bottom:4px; font-family:'Fraunces',serif; font-size:16px;}

.tlg-contact-form-card{
  background:#fff; border:1px solid var(--line); border-radius:14px; padding:36px; box-shadow:var(--shadow);
}
.tlg-contact-form-card h2{font-size:22px; margin-bottom:18px;}

/* Định dạng lại form hiện có (WPForms/CF7/Elementor form...) cho đẹp,
   không đụng vào chức năng gửi mail phía sau */
.tlg-contact-form-card input[type="text"],
.tlg-contact-form-card input[type="email"],
.tlg-contact-form-card input[type="tel"],
.tlg-contact-form-card input[type="number"],
.tlg-contact-form-card textarea,
.tlg-contact-form-card select{
  width:100% !important;
  border:1.5px solid var(--line) !important;
  border-radius:8px !important;
  padding:13px 15px !important;
  font-family:'Be Vietnam Pro', sans-serif !important;
  font-size:14.5px !important;
  color:var(--ink) !important;
  background:#fbfbfa !important;
  margin-bottom:16px !important;
  transition:border-color .2s, background .2s;
}
.tlg-contact-form-card input:focus,
.tlg-contact-form-card textarea:focus,
.tlg-contact-form-card select:focus{
  border-color:var(--red) !important; background:#fff !important; outline:none !important;
}
.tlg-contact-form-card textarea{min-height:130px !important; resize:vertical;}
.tlg-contact-form-card label{font-weight:600; color:var(--ink); font-size:13.5px; margin-bottom:6px; display:inline-block;}
.tlg-contact-form-card button,
.tlg-contact-form-card input[type="submit"]{
  background:var(--red) !important; color:#fff !important; border:none !important; border-radius:8px !important;
  padding:14px 30px !important; font-weight:700 !important; font-size:14.5px !important; letter-spacing:.02em;
  cursor:pointer; transition:background .2s, transform .2s;
}
.tlg-contact-form-card button:hover,
.tlg-contact-form-card input[type="submit"]:hover{background:var(--red-deep) !important; transform:translateY(-1px);}

@media (max-width:880px){
  .tlg-contact-grid{grid-template-columns:1fr;}
  .tlg-contact-hero h1{font-size:26px;}
  .tlg-contact-form-card{padding:24px;}
}
