.strength-gift-invite[hidden], .strength-gift-fallback[hidden] { display: none; }
.strength-gift-invite { position: fixed; z-index: 900; right: 24px; bottom: 28px; width: 390px; display: grid; grid-template-columns: 104px 1fr; gap: 20px; align-items: center; padding: 18px 30px 18px 18px; background: #eee7dc; color: #171512; border: 1px solid #b99158; box-shadow: 0 16px 48px #0005; }
.strength-gift-invite img { width: 104px; height: 116px; object-fit: cover; }
.strength-gift-label { display: block; color: #795729; font: 500 10px/1.5 Jost, sans-serif; letter-spacing: .17em; text-transform: uppercase; }
.strength-gift-invite p { font: 400 23px/1.2 Jost, sans-serif; color: #171512; margin: 8px 0 12px; }
.strength-gift-close { position: absolute; top: 4px; right: 4px; width: 44px; height: 44px; border: 0; background: transparent; color: #171512; font: 28px/1 sans-serif; cursor: pointer; }
.strength-gift-text-button { background: none; border: 0; border-bottom: 1px solid currentColor; padding: 6px 0; color: #684b25; font: 400 14px/1.5 Jost, sans-serif; cursor: pointer; text-align: left; }
.strength-gift-dialog { position: fixed; inset: 0; padding: 0; border: 1px solid #b99158; background: #eee7dc; color: #171512; width: min(840px, calc(100% - 32px)); max-height: calc(100dvh - 40px); margin: auto; overflow: auto; }
.strength-gift-dialog[open] { display: grid; grid-template-columns: .8fr 1.2fr; }
.strength-gift-dialog::backdrop { background: #080807b8; }
.strength-gift-photo { width: 100%; height: 100%; min-height: 580px; object-fit: cover; }
.strength-gift-content { padding: 46px 38px 30px; }
.strength-gift-dialog h2 { font: 400 44px/1.1 Jost, sans-serif; margin: 16px 0 20px; letter-spacing: -.025em; }
.strength-gift-dialog h2 em { font-family: 'Cormorant Garamond', Georgia, serif; color: #795729; font-weight: 400; }
.strength-gift-content p { font: 400 16px/1.6 Jost, sans-serif; color: #51493e; margin-bottom: 16px; }
.strength-gift-content .strength-gift-description { font-size: 12px; color: #655c50; }
.strength-gift-dialog label { display: block; font: 400 14px/1.5 Jost, sans-serif; margin-bottom: 6px; }
.strength-gift-dialog input { width: 100%; box-sizing: border-box; background: #fff8; border: 1px solid #9f9484; border-radius: 0; padding: 13px; font: 16px Jost, sans-serif; color: #171512; }
.strength-gift-submit { width: 100%; margin-top: 12px; padding: 14px; background: #171512; color: #fff7e9; border: 1px solid #171512; font: 400 15px Jost, sans-serif; cursor: pointer; }
.strength-gift-content .strength-gift-privacy { font-size: 11px; line-height: 1.5; margin: 12px 0 0; color: #655c50; }
.strength-gift-privacy a { color: inherit; text-decoration: underline; }
.strength-gift-content .strength-gift-fallback { margin-top: 18px; font-size: 14px; line-height: 1.6; }
.strength-gift-fallback a { color: #6f4c1c; text-decoration: underline; text-underline-offset: 3px; }
.strength-gift-explore { margin-top: 12px; }
.strength-gift-dialog .formkit-alert { font: 400 16px/1.5 Jost, sans-serif; padding: 12px; }
.strength-gift-dialog .formkit-alert:empty { display: none; }
.strength-gift-dialog .formkit-alert-error { color: #8b201b; }
.strength-gift-dialog :focus-visible, .strength-gift-invite :focus-visible { outline: 2px solid #795729; outline-offset: 4px; }
@media (max-width: 620px) {
  .strength-gift-invite { width: auto; left: 16px; right: 16px; bottom: 20px; grid-template-columns: 56px 1fr; gap: 12px; padding: 12px 40px 12px 12px; }
  .strength-gift-invite img { width: 56px; height: 70px; }
  .strength-gift-invite p { font-size: 19px; margin: 3px 0; }
  .strength-gift-text-button { font-size: 13px; }
  .strength-gift-dialog[open] { display: block; }
  .strength-gift-photo { height: 130px; min-height: 0; object-position: center 55%; }
  .strength-gift-content { padding: 24px; }
  .strength-gift-dialog h2 { font-size: 36px; margin: 12px 0; }
  .strength-gift-dialog > .strength-gift-close { background: #eee7dc; }
}
