.dg .ct-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:28px;align-items:start}
.dg .ct-list{display:grid;gap:14px}
.dg .ct-item{display:flex;gap:16px;align-items:center;padding:18px 20px;border-radius:20px;background:#FFFFFF;border:1px solid var(--line);text-decoration:none;color:var(--ink)}
.dg a.ct-item:hover{color:var(--ink)}
.dg .ct-ico{width:48px;height:48px;border-radius:14px;background:var(--sky);color:var(--blue);display:flex;align-items:center;justify-content:center;flex:none}
.dg .ct-ico.wa-i{background:var(--amber);color:var(--ink)}
.dg .ct-ico svg{width:22px;height:22px}
.dg .ct-item small{display:block;font-size:13px;color:var(--muted)}
.dg .ct-item b{display:block;margin-top:2px;font-size:16.5px;font-weight:600}
.dg .form{background:#FFFFFF;border:1px solid var(--line);border-radius:28px;padding:36px}
.dg .form h2{font-family:"Unbounded",system-ui,sans-serif;font-weight:500;font-size:24px;line-height:1.25}
.dg .form .sub{margin-top:8px;color:var(--muted)}
.dg .fgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px}
.dg .field{display:flex;flex-direction:column;gap:8px}
.dg .field.full{grid-column:1/-1}
.dg .field label{font-size:14px;font-weight:600}
.dg .field input,.dg .field select,.dg .field textarea{font:inherit;font-size:15.5px;padding:13px 16px;border-radius:14px;border:1px solid #CDD5E3;background:#FFFFFF;color:var(--ink);min-height:52px;width:100%;transition:border-color .2s ease,box-shadow .2s ease}
.dg .field input:focus,.dg .field select:focus,.dg .field textarea:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 4px rgba(42,74,138,.12)}
.dg .field textarea{min-height:120px;resize:vertical}
.dg .agree{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:var(--muted);margin-top:18px}
.dg .agree input{width:18px;height:18px;margin:2px 0 0;flex:none}
.dg .form .btn{margin-top:22px}
.dg .map{position:relative;margin-top:28px;border-radius:28px;overflow:hidden;min-height:340px;display:flex;align-items:flex-end;padding:30px;isolation:isolate}
.dg .map::before{content:"";position:absolute;inset:0;z-index:-2;background:url(/assets/img/mountains_valley.webp) center 40%/cover no-repeat}
.dg .map::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(19,38,79,.55) 0%,rgba(19,38,79,0) 60%)}
.dg .map-card{background:#FFFFFF;border-radius:20px;padding:22px 24px;max-width:400px;display:flex;flex-direction:column;gap:6px}
.dg .map-card b{font-family:"Unbounded",system-ui,sans-serif;font-weight:500;font-size:18px}
.dg .map-card span{color:var(--muted);font-size:15px}
.dg .map-card .btn{margin-top:10px;align-self:flex-start}
.dg .faq-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:56px}
.dg .faq-sub{margin-top:14px;color:var(--muted);font-size:16.5px;max-width:360px}
.dg .qa{display:grid;gap:12px}
.dg .qa details{border-radius:22px;background:#FFFFFF;border:1px solid var(--line);padding:0 24px}
.dg .qa summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:72px;font-weight:600;font-size:17px}
.dg .qa summary::-webkit-details-marker{display:none}
.dg .qa summary i{width:34px;height:34px;flex:none;border-radius:50%;background:var(--bg);position:relative}
.dg .qa summary i::before,.dg .qa summary i::after{content:"";position:absolute;left:10px;right:10px;top:16px;height:2px;background:var(--ink);border-radius:2px;transition:transform .2s ease}
.dg .qa summary i::after{transform:rotate(90deg)}
.dg .qa details[open] summary i::after{transform:rotate(0deg)}
.dg .qa details p{padding:0 0 22px;color:var(--muted);font-size:16px;max-width:640px}
@media (max-width:1180px){
  .dg .ct-grid,.dg .faq-grid{grid-template-columns:minmax(0,1fr);gap:24px}
}
@media (max-width:720px){
  .dg .form{padding:24px 18px;border-radius:24px}
  .dg .fgrid{grid-template-columns:minmax(0,1fr)}
  .dg .form .btn{width:100%}
  .dg .map{padding:16px;min-height:300px;border-radius:24px}
  .dg .qa details{padding:0 18px}
  .dg .qa summary{font-size:16px}
}
