/* CertDrop Hallmark desktop revision v3.
   Checkout-first iteration. Loaded after v2, affects only homepage >= 940px.
   Mobile and the original form/script logic remain untouched. */
@media (min-width: 940px) {
  body.certdrop-home .card {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto !important;
    column-gap: 0 !important;
    row-gap: 13px !important;
    padding-top: 20px !important;
  }

  /* Remove the tall split hero. The offer is a compact introduction. */
  body.certdrop-home .card > .card-header {
    grid-column: 1 !important;
    grid-row: 1 !important;
    max-width: none !important;
    padding: 0 !important;
  }

  body.certdrop-home .card .card-header h1 {
    max-width: 27ch !important;
    font-size: clamp(35px, 3.1vw, 43px) !important;
    line-height: 1.12 !important;
    margin: 14px 0 10px !important;
  }

  body.certdrop-home .card .card-header > p {
    max-width: 84ch !important;
    font-size: 16px !important;
    line-height: 1.5 !important;
    margin: 0 0 8px !important;
  }

  body.certdrop-home #cd-jit-announcement {
    padding: 11px 15px !important;
    margin: 0 0 16px !important;
    gap: 14px !important;
  }

  body.certdrop-home .cd-jit-announcement-copy span {
    line-height: 1.35 !important;
  }

  /* The full selector and the order steps are directly underneath the offer.
     The hero CTA and mini library promotion duplicate information there. */
  body.certdrop-home .card .hero-order-actions,
  body.certdrop-home .card .ipa-library-launch-card {
    display: none !important;
  }

  body.certdrop-home .card > #service-status-strip {
    grid-column: 1 !important;
    grid-row: 2 !important;
    margin: 0 !important;
    min-height: 0 !important;
  }

  body.certdrop-home .card > #error-msg {
    grid-column: 1 !important;
    grid-row: 3 !important;
    margin: 0 !important;
  }

  body.certdrop-home .card > #error-msg:empty {
    display: none !important;
  }

  body.certdrop-home .card > #order-form {
    grid-column: 1 !important;
    grid-row: 4 !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 13px 20px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.certdrop-home #order-form > #jit-product-choice {
    margin: 0 !important;
    padding: 20px 22px 18px !important;
    border-radius: 14px !important;
  }

  body.certdrop-home #jit-product-choice legend {
    font-size: 25px !important;
    padding-inline: 8px !important;
  }

  body.certdrop-home #jit-product-choice .cd-product-choice-intro {
    font-size: 14px !important;
    line-height: 1.4 !important;
    margin: 0 !important;
  }

  body.certdrop-home #jit-product-choice .cd-product-options {
    align-items: stretch !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    margin-top: 12px !important;
  }

  body.certdrop-home #jit-product-choice .cd-product-option {
    height: 100% !important;
    min-height: 174px !important;
    padding: 18px 20px !important;
    gap: 5px !important;
    border-radius: 12px !important;
  }

  body.certdrop-home #jit-product-choice .cd-product-price {
    font-size: 33px !important;
  }

  body.certdrop-home #jit-product-choice .cd-product-title {
    font-size: 19px !important;
    line-height: 1.2 !important;
  }

  body.certdrop-home #jit-product-choice .cd-product-selected {
    margin-top: auto !important;
    padding-top: 5px !important;
  }

  body.certdrop-home #jit-product-choice .cd-product-new {
    margin-top: auto !important;
  }

  body.certdrop-home #jit-product-choice #cd-selected-product-benefit {
    padding: 9px 0 0 !important;
    font-size: 13px !important;
  }

  body.certdrop-home #order-form > .certdrop-warranty-policy-note {
    max-width: 1080px;
    margin: 0 auto !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
  }

  body.certdrop-home #order-form > .checkout-progress {
    margin: 2px auto 0 !important;
    max-width: 840px;
  }

  /* Order details form a compact equal-height pair. */
  body.certdrop-home #order-form > .checkout-step-device,
  body.certdrop-home #order-form > .checkout-step-delivery {
    min-height: 0 !important;
    padding: 21px !important;
    border-radius: 14px !important;
    align-self: stretch !important;
    margin: 0 !important;
  }

  body.certdrop-home #order-form > .checkout-step-device {
    grid-column: 1 !important;
  }

  body.certdrop-home #order-form > .checkout-step-delivery {
    grid-column: 2 !important;
  }

  body.certdrop-home #order-form > .checkout-privacy-note {
    margin: 0 auto !important;
    padding: 4px 8px !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
  }

  body.certdrop-home #order-form > .checkout-step-payment {
    grid-column: 1 / -1 !important;
    width: min(840px, 100%) !important;
    padding: 23px 28px !important;
    border-radius: 14px !important;
    margin: 0 !important;
  }

  body.certdrop-home #order-form .checkout-step-head {
    margin-bottom: 11px !important;
  }

  body.certdrop-home #order-form .checkout-step-head strong {
    font-size: 21px !important;
  }

  body.certdrop-home #order-form .checkout-udid-action-panel {
    padding: 13px !important;
  }

  /* Fulfillment statistics and benefit list are useful secondary material.
     They no longer delay the shopper from reaching the order form. */
  body.certdrop-home #order-form > #checkout-live-proof {
    order: 99;
    margin: 4px auto 0 !important;
  }

  body.certdrop-home .card > .features {
    grid-column: 1 !important;
    grid-row: 5 !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 18px 28px !important;
    align-items: start !important;
    margin: 38px 0 0 !important;
    padding: 23px 27px !important;
    border-radius: 14px !important;
  }

  body.certdrop-home .card > .features::before {
    grid-column: 1 / -1 !important;
    margin: 0 0 2px !important;
  }

  body.certdrop-home .card > .features .feature {
    min-height: 46px;
    font-size: 14px !important;
  }

  body.certdrop-home .card > #certdrop-speed-proof {
    grid-column: 1 !important;
    grid-row: 6 !important;
    gap: 13px !important;
    margin: 6px 0 0 !important;
  }

  body.certdrop-home #certdrop-speed-proof > div {
    min-height: 72px !important;
    padding: 13px !important;
  }
}

@media (min-width: 940px) and (max-width: 1119px) {
  body.certdrop-home .card .card-header h1 {
    font-size: 37px !important;
  }

  body.certdrop-home #jit-product-choice .cd-product-option {
    padding: 15px !important;
  }

  body.certdrop-home .card > .features {
    gap: 12px 18px !important;
    padding: 19px !important;
  }
}
