.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Official Dsmartpack PNG on the dark site chrome. */
.brand { gap: 0; }
.brand-logo-link { min-width: 72px; }
.brand-logo {
  display: block;
  width: 72px;
  height: 68px;
  object-fit: contain;
  object-position: center;
}

/* The only input form on the site: mobile number + submit. */
.inquiry-simple {
  position: relative;
  display: grid;
  grid-template-columns: minmax(300px, .82fr) minmax(0, 1.18fr);
  gap: 74px;
  align-items: center;
}
.inquiry-simple .inquiry-copy { position: static; }
.inquiry-form-simple { padding: 42px; }
.phone-submit-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; }
.phone-submit-row input {
  width: 100%;
  min-height: 58px;
  padding: 0 18px;
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 999px;
  color: var(--white);
  background: rgba(5, 13, 22, .72);
  outline: none;
  transition: border-color .18s ease, box-shadow .18s ease;
}
.phone-submit-row input::placeholder { color: #7e8d9d; }
.phone-submit-row input:focus { border-color: var(--cyan); box-shadow: 0 0 0 3px rgba(25, 211, 197, .14); }
.phone-submit-row input[aria-invalid="true"] { border-color: var(--orange); }
.phone-submit-row .button { min-width: 126px; border: 0; }
.inquiry-form-simple .field-error { min-height: 1.35em; margin-top: 8px; }
.inquiry-form-simple .form-status { min-height: 1.35em; margin-top: 6px; }
.form-privacy { margin: 8px 0 0; color: #8191a0; font-size: .74rem; }

/* Footer: navigation, two explicit QR placeholders, centered copyright. */
.brand-logo-footer { width: 112px; height: 104px; }
.footer-qrs {
  display: grid;
  grid-template-columns: repeat(2, minmax(112px, 1fr));
  gap: 24px;
  align-content: start;
}
.footer-qrs figure { margin: 0; text-align: center; }
.qr-placeholder {
  position: relative;
  width: 112px;
  max-width: 100%;
  aspect-ratio: 1;
  margin-inline: auto;
  overflow: hidden;
  border: 8px solid var(--white);
  border-radius: 8px;
  background:
    linear-gradient(90deg, #07111d 15%, transparent 15% 28%, #07111d 28% 44%, transparent 44% 60%, #07111d 60% 74%, transparent 74%),
    linear-gradient(#07111d 14%, transparent 14% 30%, #07111d 30% 46%, transparent 46% 62%, #07111d 62% 78%, transparent 78%),
    var(--white);
}
.qr-placeholder::after {
  position: absolute;
  inset: 12px;
  border: 3px solid rgba(7, 17, 29, .22);
  content: "";
}
.qr-placeholder span {
  position: absolute;
  z-index: 2;
  inset: auto 8px 8px;
  padding: 3px 4px;
  border-radius: 4px;
  color: var(--white);
  background: rgba(7, 17, 29, .9);
  font-size: .64rem;
  font-weight: 800;
}
.footer-qrs figcaption { margin-top: 10px; color: #c9d2dc; font-size: .8rem; font-weight: 700; }
.footer-bottom {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 26px;
  border-top: 1px solid rgba(255, 255, 255, .1);
  text-align: center;
}
.footer-bottom p { margin: 0; color: #c9d2dc; font-size: .78rem; font-weight: 800; }

@media (max-width: 900px) {
  .inquiry-simple { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .brand-logo-link { min-width: 60px; }
  .brand-logo { width: 60px; height: 58px; }
  .phone-submit-row { grid-template-columns: 1fr; }
  .phone-submit-row .button { width: 100%; }
  .brand-logo-footer { width: 104px; height: 96px; }
  .footer-qrs { grid-template-columns: repeat(2, minmax(100px, 130px)); }
}
