/* Scoped to the privacy-page illustration and contact panel. */
.info-content .privacy-login-card { display: flex; flex-direction: column; }
.info-content .privacy-login-card > .info-icon { flex-shrink: 0; }
.info-content .privacy-login-visual { margin: auto 0 0; padding-top: 24px; }
.info-content .privacy-login-visual img { display: block; width: 100%; max-width: 340px; height: auto; margin: 0 auto; }
.info-content .privacy-contact-panel { display: grid; grid-template-columns: minmax(0, 1fr) 246px; gap: 32px; align-items: center; margin: 22px 0; padding: 28px; border: 1px solid #cae4f1; border-radius: 10px; background: #f4fbff; }
.info-content .privacy-contact-panel .info-contact { min-width: 0; }
.info-content .privacy-contact-panel .info-contact > div { padding: 16px 0; }
.info-content .privacy-line-qr { width: 246px; max-width: 100%; margin: 0; text-align: center; }
.info-content .privacy-line-qr a { display: block; padding: 10px; border: 1px solid #d1e6f1; border-radius: 10px; background: #fff; line-height: 0; }
.info-content .privacy-line-qr img { display: block; width: 100%; height: auto; }
.info-content .privacy-line-qr figcaption { margin-top: 12px; color: #506676; font-size: 14px; line-height: 1.6; }
@media (max-width: 768px) {
  .info-content .privacy-login-visual { padding-top: 20px; }
  .info-content .privacy-login-visual img { max-width: 280px; }
  .info-content .privacy-contact-panel { grid-template-columns: 1fr; gap: 24px; padding: 20px; }
  .info-content .privacy-line-qr { justify-self: start; }
}
