.ds-ct { padding: 2.25rem 0 4rem; }
    .ds-ct-grid {
      display: grid;
      grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.18fr);
      gap: 1.75rem;
      align-items: start;
    }
    @media (max-width: 991.98px) {
      .ds-ct-grid { grid-template-columns: 1fr; }
    }

    .ds-ct-phone {
      position: relative;
      overflow: hidden;
      border-radius: 18px;
      padding: 1.6rem 1.5rem 1.45rem;
      color: #fff;
      background:
        radial-gradient(ellipse 70% 80% at 100% 0%, rgba(255,255,255,0.18), transparent 55%),
        linear-gradient(145deg, #4154f1 0%, #012970 100%);
      box-shadow: 0 18px 40px rgba(1, 41, 112, 0.22);
      margin-bottom: 1rem;
    }
    .ds-ct-phone .label {
      margin: 0 0 0.35rem;
      font-size: 0.78rem;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      opacity: 0.85;
    }
    .ds-ct-phone .num {
      display: block;
      margin: 0 0 0.55rem;
      font-size: clamp(1.35rem, 2.6vw, 1.7rem);
      font-weight: 800;
      letter-spacing: -0.02em;
      color: #fff;
      line-height: 1.2;
    }
    .ds-ct-phone .num .bcx-phone-list {
      display: flex;
      width: 100%;
      gap: 0.55rem;
    }
    .ds-ct-phone .num .bcx-phone-line {
      color: #fff;
      font-size: inherit;
      font-weight: inherit;
      letter-spacing: inherit;
      gap: 0.55rem;
      padding: 0.15rem 0;
      transition: opacity 0.15s;
    }
    .ds-ct-phone .num .bcx-phone-line:hover {
      color: #fff;
      opacity: 0.88;
    }
    .ds-ct-phone .num .bcx-phone-ico {
      width: 0.78em;
      height: 0.78em;
      opacity: 0.92;
    }
    .ds-ct-phone .sub {
      margin: 0 0 1.1rem;
      font-size: 0.9rem;
      opacity: 0.88;
      line-height: 1.5;
    }
    .ds-ct-phone .actions {
      display: flex;
      flex-wrap: wrap;
      gap: 0.55rem;
    }
    .ds-ct-phone .actions a {
      display: inline-flex;
      align-items: center;
      gap: 0.35rem;
      padding: 0.55rem 0.95rem;
      border-radius: 999px;
      font-size: 0.88rem;
      font-weight: 600;
      text-decoration: none;
    }
    .ds-ct-phone .actions .primary {
      background: #fff;
      color: #012970;
    }
    .ds-ct-phone .actions .ghost {
      background: rgba(255,255,255,0.12);
      color: #fff;
      border: 1px solid rgba(255,255,255,0.35);
    }

    .ds-ct-channels {
      border: 1px solid #eef1f6;
      border-radius: 16px;
      background: #fff;
      overflow: hidden;
    }
    .ds-ct-channel {
      display: grid;
      grid-template-columns: 44px 1fr;
      gap: 0.85rem;
      padding: 1.05rem 1.2rem;
      border-bottom: 1px solid #eef1f6;
      text-decoration: none;
      color: inherit;
      transition: background 0.15s;
    }
    .ds-ct-channel:last-child { border-bottom: 0; }
    a.ds-ct-channel:hover { background: #f7f9fc; }
    .ds-ct-channel .ico {
      width: 44px;
      height: 44px;
      border-radius: 12px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-size: 1.15rem;
      color: var(--accent-color);
      background: color-mix(in srgb, var(--accent-color), transparent 90%);
    }
    .ds-ct-channel h3 {
      margin: 0 0 0.2rem;
      font-size: 0.82rem;
      font-weight: 600;
      color: #94a3b8;
    }
    .ds-ct-channel p {
      margin: 0;
      font-size: 0.95rem;
      font-weight: 600;
      color: var(--heading-color);
      line-height: 1.45;
    }
    .ds-ct-channel p span {
      display: block;
      font-weight: 500;
      font-size: 0.88rem;
      color: #64748b;
      margin-top: 0.15rem;
    }

    .ds-ct-aside-note {
      margin: 1rem 0 0;
      padding: 0.85rem 1rem;
      border-radius: 12px;
      background: #f7f9fc;
      border: 1px solid #eef1f6;
      font-size: 0.86rem;
      color: #64748b;
      line-height: 1.55;
    }

    .ds-ct-form {
      position: relative;
      border: 1px solid #e8edf5;
      border-radius: 18px;
      background: #fff;
      box-shadow: 0 16px 40px rgba(1, 41, 112, 0.07);
      overflow: hidden;
    }
    .ds-ct-form-head {
      padding: 1.35rem 1.5rem 1.15rem;
      border-bottom: 1px solid #eef1f6;
      background: linear-gradient(180deg, #f7f9fc 0%, #fff 100%);
    }
    .ds-ct-form-head h2 {
      margin: 0 0 0.35rem;
      font-size: 1.35rem;
      font-weight: 800;
    }
    .ds-ct-form-head p {
      margin: 0;
      font-size: 0.92rem;
      color: #64748b;
      line-height: 1.5;
    }
    .ds-ct-form-body { padding: 1.35rem 1.5rem 1.5rem; }

    .ds-ct-need-label {
      margin: 0 0 0.45rem;
      font-size: 0.9rem;
      font-weight: 600;
      color: var(--heading-color);
    }
    .ds-ct-need-hint {
      margin-left: 0.4rem;
      font-size: 0.78rem;
      font-weight: 500;
      color: #94a3b8;
    }
    .ds-ct-chips {
      display: flex;
      flex-wrap: wrap;
      gap: 0.45rem;
      margin: 0 0 1.15rem;
    }
    .ds-ct-chips button {
      appearance: none;
      border: 1px solid #e2e8f0;
      background: #fff;
      color: #475569;
      font: inherit;
      font-size: 0.82rem;
      font-weight: 600;
      padding: 0.4rem 0.75rem;
      border-radius: 999px;
      cursor: pointer;
      transition: border-color 0.15s, background 0.15s, color 0.15s;
    }
    .ds-ct-chips button:hover {
      border-color: color-mix(in srgb, var(--accent-color), transparent 40%);
      color: var(--accent-color);
    }
    .ds-ct-chips button.is-on {
      border-color: color-mix(in srgb, var(--accent-color), transparent 40%);
      background: color-mix(in srgb, var(--accent-color), transparent 92%);
      color: var(--accent-color);
      box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--accent-color), transparent 70%);
    }
    .ds-ct-need-other {
      margin: -0.55rem 0 1.15rem;
    }
    .ds-ct-need-other[hidden] { display: none !important; }
    .ds-ct-need-other input {
      width: 100%;
      margin-top: 0.15rem;
      border: 1px solid #e2e8f0;
      border-radius: 10px;
      padding: 0.55rem 0.75rem;
      font: inherit;
      font-size: 0.9rem;
      font-weight: 500;
    }

    .ds-ct-hp {
      position: absolute;
      left: -10000px;
      top: auto;
      width: 1px;
      height: 1px;
      overflow: hidden;
    }
    .ds-ct-form label {
      display: block;
      margin-bottom: 0.95rem;
      font-size: 0.9rem;
      font-weight: 600;
      color: var(--heading-color);
    }
    .ds-ct-form label .req {
      color: #e11d48;
      margin-left: 0.15rem;
    }
    .ds-ct-form input,
    .ds-ct-form textarea,
    .ds-ct-form select {
      display: block;
      width: 100%;
      margin-top: 0.4rem;
      padding: 0.72rem 0.9rem;
      border: 1px solid #e2e8f0;
      border-radius: 10px;
      font: inherit;
      background: #fafbff;
      transition: border-color 0.15s, box-shadow 0.15s, background 0.15s;
    }
    .ds-ct-form select { cursor: pointer; }
    .ds-ct-form input:focus,
    .ds-ct-form textarea:focus,
    .ds-ct-form select:focus {
      outline: none;
      background: #fff;
      border-color: var(--accent-color);
      box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent-color), transparent 85%);
    }
    .ds-ct-form-row {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 0.85rem;
    }
    @media (max-width: 575px) {
      .ds-ct-form-row { grid-template-columns: 1fr; }
    }
    .ds-ct-form .ds-form-product {
      margin: 0 0 1rem;
    }
    .ds-ct-form .ds-form-extra {
      margin: 0.15rem 0 1rem;
      font-size: 0.9rem;
    }
    .ds-ct-form .ds-form-extra summary {
      cursor: pointer;
      color: var(--accent-color);
      margin-bottom: 0.75rem;
      font-weight: 600;
    }
    .ds-ct-form .actions {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 0.85rem 1.1rem;
      margin-top: 0.25rem;
    }
    .ds-ct-form .actions .ds-btn { min-width: 8.5rem; }
    .ds-ct-form .actions .hint {
      margin: 0;
      font-size: 0.85rem;
      color: #94a3b8;
      line-height: 1.45;
    }
    .ds-ct-form .ds-form-msg { margin-top: 1rem; }

    .ds-ct-map {
      margin-top: 1.75rem;
      border-radius: 18px;
      overflow: hidden;
      border: 1px solid #eef1f6;
      background:
        linear-gradient(135deg, rgba(65,84,241,0.08), rgba(1,41,112,0.04)),
        url('/upload/site/202610/15/082c0ea3.jpg') center / cover no-repeat;
      min-height: 180px;
      display: flex;
      align-items: flex-end;
    }
    .ds-ct-map .panel {
      width: 100%;
      padding: 1.15rem 1.35rem;
      background: linear-gradient(180deg, transparent 0%, rgba(1,41,112,0.82) 55%);
      color: #fff;
    }
    .ds-ct-map .panel strong {
      display: block;
      font-size: 1rem;
      margin-bottom: 0.25rem;
    }
    .ds-ct-map .panel span {
      font-size: 0.9rem;
      opacity: 0.92;
      line-height: 1.5;
    }
