/* CONTACT LLZJD */
.ll-contact-head{text-align:center;max-width:780px;margin:0 auto 48px;}
.ll-contact-head h2{font-size:32px;font-weight:800;color:#0a1d32;margin:12px 0 14px;line-height:1.35;}
.ll-contact-head p{font-size:15px;color:#5B6574;line-height:1.85;margin:0;}
.ll-contact-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:52px;}
.ll-cc{display:flex;align-items:center;gap:16px;padding:24px 22px;background:#fff;border-radius:16px;border:1px solid #E5EAF0;box-shadow:0 4px 20px rgba(15,76,129,.05);text-decoration:none;color:inherit;transition:all .3s ease;}
.ll-cc:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(15,76,129,.12);border-color:#EAF2FA;}
.ll-cc--phone{background:linear-gradient(135deg,#0F4C81,#0B3A63);border-color:transparent;color:#fff;}
.ll-cc--phone:hover{background:linear-gradient(135deg,#115593,#093357);color:#fff;}
.ll-cc-ico{width:52px;height:52px;border-radius:14px;background:#EAF2FA;color:#0F4C81;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.ll-cc--phone .ll-cc-ico{background:rgba(255,255,255,.16);color:#fff;}
.ll-cc-ico svg{width:26px;height:26px;}
.ll-cc-body{display:flex;flex-direction:column;gap:4px;min-width:0;}
.ll-cc-label{font-size:12.5px;font-weight:700;color:#5B6574;letter-spacing:.5px;}
.ll-cc--phone .ll-cc-label{color:rgba(255,255,255,.82);}
.ll-cc-value{font-size:17px;font-weight:800;color:#0a1d32;line-height:1.4;word-break:break-word;}
.ll-cc--phone .ll-cc-value{color:#fff;}
.ll-cc-value a{color:#0F4C81;text-decoration:none;}
.ll-cc-value a:hover{text-decoration:underline;}

.ll-contact-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:36px;margin-bottom:56px;}
.ll-contact-form{background:#fff;border-radius:20px;padding:36px 32px;border:1px solid #E5EAF0;box-shadow:0 10px 36px rgba(15,76,129,.07);}
.ll-cf-kicker{font-size:13px;letter-spacing:3px;font-weight:700;color:#0F4C81;margin-bottom:12px;text-transform:uppercase;}
.ll-contact-form h3{font-size:22px;font-weight:800;color:#0a1d32;margin:0 0 8px;}
.ll-cf-desc{font-size:14px;color:#5B6574;line-height:1.85;margin:0 0 24px;}
.ll-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;}
.ll-form-field{display:flex;flex-direction:column;gap:8px;}
.ll-form-field label{font-size:14px;font-weight:700;color:#0a1d32;}
.ll-form-field label em{color:#E67E22;font-style:normal;margin-left:2px;}
.ll-form-field input,.ll-form-field select,.ll-form-field textarea{width:100%;padding:13px 16px;border-radius:12px;border:1.5px solid #DCE3EC;background:#f8fafc;font-size:14px;color:#0a1d32;font-family:inherit;transition:all .25s ease;outline:none;box-sizing:border-box;}
.ll-form-field input:focus,.ll-form-field select:focus,.ll-form-field textarea:focus{border-color:#0F4C81;background:#fff;box-shadow:0 0 0 3px rgba(15,76,129,.12);}
.ll-form-field select{appearance:none;background-image:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%230F4C81%22%20stroke-width%3D%222.5%22%3E%3Cpolyline%20points%3D%226%209%2012%2015%2018%209%22%2F%3E%3C%2Fsvg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px;padding-right:42px;}
.ll-form-full{grid-column:1 / -1;}
.ll-cf-actions{display:flex;gap:14px;margin-top:8px;align-items:center;flex-wrap:wrap;}
.ll-cf-submit{flex:1;min-width:200px;padding:14px 22px;background:#0F4C81;color:#fff;border:0;border-radius:999px;font-size:15px;font-weight:800;cursor:pointer;box-shadow:0 10px 24px rgba(15,76,129,.2);transition:all .3s ease;}
.ll-cf-submit:hover{background:#0B3A63;transform:translateY(-1px);box-shadow:0 14px 30px rgba(15,76,129,.3);}
.ll-cf-tip{font-size:13px;color:#5B6574;margin:0;}

.ll-contact-side{display:flex;flex-direction:column;gap:24px;}
.ll-geo-panel{padding:32px 28px;background:#fff;border-radius:20px;border:1px solid #E5EAF0;box-shadow:0 10px 36px rgba(15,76,129,.07);}
.ll-geo-panel h3{font-size:20px;font-weight:800;color:#0a1d32;margin:0 0 18px;}
.ll-geo-panel p{font-size:14px;color:#5B6574;line-height:1.9;margin:14px 0 0;}
.ll-geo-map-wrap{border-radius:14px;overflow:hidden;border:1px solid #E5EAF0;background:#fff;padding:12px;}
.ll-geo-map-wrap svg{width:100%;height:auto;display:block;}
.ll-contact-cities{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;}
.ll-ccity{padding:8px 18px;border-radius:999px;background:#f5f7fa;color:#0F4C81;font-weight:700;font-size:13px;border:1px solid #EAF2FA;transition:all .25s ease;}
.ll-ccity:hover{background:#0F4C81;color:#fff;transform:translateY(-1px);}
.ll-ccity.is-hot{background:rgba(230,126,34,.1);color:#E67E22;border-color:rgba(230,126,34,.25);}
.ll-ccity.is-hot:hover{background:#E67E22;color:#fff;}

.ll-contact-promise{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:56px;}
.ll-cp{display:flex;align-items:flex-start;gap:14px;padding:22px 20px;background:#fff;border:1px solid #E5EAF0;border-radius:16px;transition:all .3s ease;}
.ll-cp:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(15,76,129,.1);border-color:#EAF2FA;}
.ll-cp-ico{width:44px;height:44px;border-radius:12px;background:#EAF2FA;color:#0F4C81;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.ll-cp-ico svg{width:22px;height:22px;}
.ll-cp-body{min-width:0;}
.ll-cp-body strong{display:block;font-size:15px;color:#0a1d32;font-weight:800;margin-bottom:6px;}
.ll-cp-body span{font-size:13px;color:#5B6574;line-height:1.8;}

/* contact-specific responsive */
@media(max-width:1024px){
  .ll-contact-cards{grid-template-columns:repeat(2,1fr);}
  .ll-contact-promise{grid-template-columns:repeat(2,1fr);}
  .ll-contact-grid{grid-template-columns:1fr;gap:24px;}
}
@media(max-width:768px){
  .ll-contact-head{margin-bottom:32px;}
  .ll-contact-head h2{font-size:24px;}
  .ll-contact-cards{grid-template-columns:1fr;gap:14px;margin-bottom:34px;}
  .ll-cc{padding:18px;}
  .ll-form-row{grid-template-columns:1fr;gap:14px;margin-bottom:14px;}
  .ll-contact-form{padding:24px 20px;border-radius:16px;}
  .ll-contact-form h3{font-size:19px;}
  .ll-cf-submit{width:100%;flex:auto;}
  .ll-cf-tip{width:100%;}
  .ll-contact-promise{grid-template-columns:1fr;gap:14px;margin-bottom:34px;}
  .ll-geo-panel{padding:22px 18px;}
  .ll-contact-cities{gap:6px;}
  .ll-ccity{padding:6px 14px;font-size:12.5px;}
}