.launch-offer { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(0,1fr); gap:26px 48px; padding:34px; margin-block:26px 42px; background:#edf1e8; border:1px solid #bdceba; border-radius:var(--radius); color:var(--ink); }
.launch-offer-copy,.launch-offer-action { min-width:0; }
.launch-offer .eyebrow { margin-bottom:14px; }
.launch-offer h2 { font-size:clamp(29px,3.2vw,41px); line-height:1.15; margin-bottom:16px; }
.launch-offer[hidden],.launch-offer-closed[hidden] { display:none; }
.launch-offer .launch-offer-count { display:inline-block; margin:0 0 8px; padding:8px 12px; background:#fff; border:1px solid #bdceba; border-radius:7px; font-size:15px; line-height:1.5; color:var(--ink); }
.launch-offer .launch-offer-count[hidden] { display:none; }
.launch-offer-count strong { font-size:20px; }
.launch-offer .launch-offer-freshness { font-size:12px; margin:0 0 16px; color:var(--text); }
.launch-offer-closed { border:1px solid var(--line); border-radius:var(--radius); padding:22px; margin-block:26px 42px; background:var(--soft-green); }
.launch-offer-closed p { overflow-wrap:anywhere; margin:0 0 10px; }
.launch-offer-closed p:last-child { font-size:13px; margin:0; }
.launch-offer p { overflow-wrap:anywhere; }
.launch-offer-copy > p:last-child { margin:0; font-size:15px; color:var(--text); }
.launch-offer-action { align-self:center; }
.launch-offer-code { display:flex; flex-direction:column; gap:4px; margin:0 0 18px; }
.launch-offer-code > span { font-size:12px; }
.launch-offer-code > strong { font:700 28px/1.2 var(--sans); letter-spacing:2px; }
.launch-offer-action .button { width:100%; }
.launch-offer-action > p:last-child { margin:12px 0 0; font-size:12px; line-height:1.6; color:var(--text); }
.launch-offer-conditions { grid-column:1/-1; border-top:1px solid #bdceba; padding-top:18px; font-size:13px; }
.launch-offer-conditions summary { cursor:pointer; font-weight:600; text-decoration:underline; text-underline-offset:4px; }
.launch-offer-conditions summary:focus-visible { outline:2px solid var(--pine); outline-offset:5px; }
.launch-offer-conditions ul { padding-left:20px; margin:20px 0 12px; }
.launch-offer-conditions li { padding-left:3px; margin-bottom:10px; }
.launch-offer-conditions > p { margin:0; color:var(--text); }
@media(max-width:760px) { .launch-offer { grid-template-columns:1fr; gap:22px; padding:24px; margin-block:22px 30px; } .launch-offer h2 { font-size:31px; } .launch-offer-action { border-top:1px solid #bdceba; padding-top:20px; } }
@media(max-width:360px) { .launch-offer { padding:20px; } .launch-offer h2 { font-size:28px; } }
