/* Fallback styling for the gift card request system. */
.lap-product-request-wrap { max-width: 1040px; margin: 36px auto; }
.lap-product-request-shell { overflow: hidden; background: #fff; border: 1px solid #ded6c8; }
.lap-product-request-aside { padding: 32px; background: #4d6224; color: #fff; }
.lap-product-request-aside h2 { margin-top: 0; color: inherit; }
.lap-product-request-aside ul { padding-left: 20px; }
.lap-product-request-form { padding: 32px; }
.lap-product-request-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.lap-product-request-grid .lap-field--full { grid-column: 1 / -1; }
.lap-product-payment-note { margin: 4px 0 18px; padding: 14px 16px; background: #f4efe4; border-left: 4px solid #8e4aa8; }
.lap-product-message { display: none; margin-bottom: 16px; padding: 12px; }
.lap-product-message.is-visible { display: block; }
.lap-product-message.is-error { background: #fff0ec; color: #7e3e2f; }
.lap-product-message.is-success { background: #edf4e6; color: #365324; }
.lap-product-submit[disabled] { opacity: .6; cursor: wait; }
.lap-product-honeypot { position: absolute!important; left: -9999px!important; opacity: 0!important; pointer-events: none!important; }
.lap-product-success { padding: 42px 10px; text-align: center; }
.lap-product-success__icon { width: 68px; height: 68px; display: grid; place-items: center; margin: 0 auto 18px; border-radius: 50%; background: #dce6d2; color: #4d6224; font-size: 28px; }
.lap-product-catalogue { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.lap-product-catalogue__item { padding: 24px; border: 1px solid #ded6c8; background: #fff; }
.lap-product-catalogue__item img { width: 100%; height: auto; }
.lap-product-catalogue__item h3 a { text-decoration: none; }
.lap-product-catalogue__price { font-weight: 700; }
@media (min-width: 800px) { .lap-product-request-shell { display: grid; grid-template-columns: .72fr 1.28fr; } }
@media (max-width: 700px) {
    .lap-product-request-grid, .lap-product-catalogue { grid-template-columns: 1fr; }
    .lap-product-request-grid .lap-field--full { grid-column: auto; }
    .lap-product-request-aside, .lap-product-request-form { padding: 24px 20px; }
}
