.px-teddy-promo{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(260px,.78fr);overflow:hidden;border:1px solid #ecdcc8;border-radius:24px;background:#fff;margin:32px auto;max-width:1180px;color:#3b302a;text-align:left;isolation:isolate}
.px-teddy-promo-photo{min-height:370px;position:relative;background:#f7efe6}
.px-teddy-promo-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.px-teddy-promo-copy{padding:36px 30px;align-self:center;min-width:0}
.px-teddy-promo-kicker{display:block;color:#c92d36;font-size:11px;font-weight:800;letter-spacing:.12em;line-height:1.6}
.px-teddy-promo-copy h2{font:500 clamp(28px,3vw,42px)/1.1 Georgia,serif!important;margin:16px 0!important;color:#3b302a!important}
.px-teddy-promo-copy p{font-size:14px!important;line-height:1.6!important;margin:0 0 22px!important;color:#6b5b51!important}
.px-teddy-promo-copy ul{list-style:none!important;padding:0!important;margin:0!important;display:grid;gap:16px}
.px-teddy-promo-copy li{display:flex;align-items:center;gap:12px;font-size:14px;line-height:1.45}
.px-teddy-promo svg{fill:none;stroke:#c92d36;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.px-teddy-promo-copy li svg{width:26px;height:26px}
.px-teddy-promo-offer{background:#fff5f5;border-left:1px solid #ecdcc8;padding:32px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:16px;min-width:0}
.px-teddy-promo-gift{width:48px;height:48px}
.px-teddy-promo-offer h3{font:500 clamp(25px,2.4vw,32px)/1.2 Georgia,serif!important;color:#c92d36!important;margin:0!important;overflow-wrap:break-word}
.px-teddy-promo-offer p{font-size:13px!important;line-height:1.55!important;margin:0!important;color:#6b5b51!important}
.px-teddy-promo-code{width:100%;padding:12px 10px;border:1px dashed #d65259;border-radius:10px;font-size:14px;color:#c92d36;overflow-wrap:anywhere}
.px-teddy-promo-code strong{font-size:18px;letter-spacing:.07em}
.px-teddy-promo-offer small{font-size:12px;color:#8a625d}
.px-teddy-promo-offer>a{display:flex;justify-content:center;align-items:center;gap:8px;width:100%;border-radius:999px;background:#c92d36;color:#fff!important;padding:14px 12px;font-size:13px!important;font-weight:700;text-decoration:none!important;line-height:1.4;min-height:48px}
.px-teddy-promo-offer>a:hover{background:#b3212b}
.px-teddy-promo-offer>a:focus-visible{outline:3px solid #c6974c;outline-offset:4px}
@media(max-width:1000px){.px-teddy-promo{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.px-teddy-promo-offer{grid-column:1/-1;border-left:0;border-top:1px solid #ecdcc8;padding:24px}.px-teddy-promo-code,.px-teddy-promo-offer>a{max-width:400px}.px-teddy-promo-photo{min-height:330px}.px-teddy-promo-copy{padding:30px 24px}}
@media(max-width:600px){.px-teddy-promo{grid-template-columns:minmax(0,1fr);border-radius:20px;margin:24px 0}.px-teddy-promo-photo{min-height:0;height:240px}.px-teddy-promo-copy{padding:26px 24px}.px-teddy-promo-copy h2{font-size:34px!important}.px-teddy-promo-copy ul{gap:14px}.px-teddy-promo-offer{grid-column:auto;padding:28px 24px}.px-teddy-promo-offer h3{font-size:29px!important}}

.promotion-editor{border-top:1px solid var(--line,#e7e2dc);padding:15px 0}.promotion-editor summary{cursor:pointer;display:flex;flex-wrap:wrap;align-items:center;gap:12px}.promotion-editor summary strong{min-width:185px}.promotion-editor summary small{margin-left:auto;color:#786d66}.promotion-editor form{padding-top:18px}.promotion-type-list{display:flex;flex-wrap:wrap;gap:12px;border:1px solid #e7e2dc;border-radius:12px;padding:15px}.promotion-type-list label{display:flex;align-items:center;gap:6px;margin:0}.promotion-type-list input{width:auto}.teddy-booking-gift{max-width:100%}.teddy-gift-confirmation{margin:14px 0;padding:16px 20px;border-radius:14px;background:#fff5e5}.teddy-gift-confirmation[hidden]{display:none!important}

.px-teddy-promo-code{display:flex;flex-direction:column;align-items:center;gap:5px;overflow-wrap:normal}.px-teddy-promo-code strong{white-space:nowrap;font-size:clamp(12px,1.25vw,17px);letter-spacing:.025em;max-width:100%}@media(max-width:1000px){.px-teddy-promo-code strong{font-size:17px}}@media(max-width:360px){.px-teddy-promo-code strong{font-size:14px}}
