/* Limited to the dated ComfyLab campaign, using the current site's tokens. */
[data-lab-promo][hidden]{display:none!important}
.lab-promo-strip{position:relative;z-index:29;background:var(--raised);border-bottom:1px solid var(--ember)}
.lab-promo-strip>.wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:8px}
.lab-promo-strip p{display:flex;flex-wrap:wrap;gap:4px 20px;max-width:none;font-size:14px;line-height:1.4}
.lab-promo-strip p span{color:var(--muted)}
.lab-promo-strip .lnk{font-size:14px;min-height:44px;flex:none}
.lab-promo-section{position:relative;z-index:2;background:var(--bg);padding-block:32px 48px;scroll-margin-top:100px}
.lab-promo-block{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px 48px;padding:clamp(24px,4vw,48px);border-color:var(--ember)}
.lab-promo-block h2{font-size:clamp(28px,3vw,40px);margin:14px 0 20px;max-width:20ch}
.lab-promo-block p{color:var(--muted)}
.lab-promo-tag,.lab-promo-block strong{color:var(--ink)}
.lab-promo-tag{display:inline-block;border-left:2px solid var(--ember);padding-left:12px}
.lab-promo-summary p{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px 16px;padding-block:12px;max-width:none;border-bottom:1px solid var(--hair)}
.lab-promo-summary s{font-size:14px;color:var(--muted)}
.lab-promo-summary span{white-space:nowrap}
.lab-promo-block .lab-promo-bonus{grid-column:1/-1;color:var(--ink);max-width:none;border-left:2px solid var(--ember);padding-left:16px}
.lab-promo-block .actions{grid-column:1/-1;margin:0}
.plan .lab-workshop{border-color:var(--ember)}
.plan-price>[data-lab-promo]:first-child{margin-top:0}
.lab-promotion-active.journey-enhanced .home .opening{padding-top:calc(128px + var(--lab-strip-height,0px))}
.lab-promotion-active.journey-enhanced .home .journey-skip{top:calc(96px + var(--lab-strip-height,0px))}
@media(max-width:600px){
 .lab-promo-strip>.wrap{gap:12px}
 .lab-promo-strip p{font-size:12px;display:block}
 .lab-promo-strip p span{display:block;margin-top:4px}
 .lab-promo-strip .lnk{font-size:12px}
 .lab-promo-block{grid-template-columns:1fr;gap:24px}
 .lab-promo-summary p{font-size:15px}
 .lab-promo-section{padding-block:24px 32px}
 .lab-promotion-active.journey-enhanced .home .opening{padding-top:calc(112px + var(--lab-strip-height,0px));gap:16px;justify-content:flex-start}
 .lab-promotion-active.journey-enhanced .home .journey-skip{top:calc(80px + var(--lab-strip-height,0px))}
}

/* Home-only campaign modal. Native dialog supplies the inert background and semantics. */
.lab-promo-dialog{width:min(620px,calc(100% - 32px));max-width:calc(100% - 32px);max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid var(--ember);border-radius:var(--r-card);background:var(--raised);color:var(--ink);box-shadow:var(--float);overflow:auto;overscroll-behavior:contain}
.lab-promo-dialog::backdrop{background:var(--mask-heavy)}
.lab-popup-content{position:relative;padding:36px 40px;text-align:center}
.lab-popup-toolbar{position:sticky;top:0;height:0;z-index:2;pointer-events:none}
.lab-popup-close{position:absolute;right:12px;top:12px;width:44px;height:44px;min-height:44px;justify-content:center;padding:0;font-size:28px;line-height:1;background:var(--raised);pointer-events:auto}
.lab-popup-brand{color:var(--muted);margin:0 auto 10px;letter-spacing:.18em}
.lab-promo-dialog h2{margin:0;line-height:1}
.lab-popup-discount{display:block;font-size:clamp(88px,16vw,132px);font-weight:800;letter-spacing:-.065em;color:var(--ember)}
.lab-popup-discount-label{display:block;font-size:clamp(19px,3.6vw,26px);font-weight:600;letter-spacing:.06em;margin-top:8px}
.lab-popup-intro{font-size:clamp(18px,3.4vw,22px);line-height:1.4;margin:24px auto;max-width:32ch;color:var(--ink)}
.lab-popup-workshop{padding:20px 0;border-block:1px solid var(--hair-strong)}
.lab-popup-workshop p{font-size:15px;line-height:1.5;margin-inline:auto;color:var(--muted)}
.lab-popup-workshop h3{font-size:clamp(23px,4vw,28px);margin:14px 0 8px;color:var(--ink)}
.lab-popup-dates{font-size:13px;line-height:1.5;margin:20px auto;color:var(--muted)}
.lab-popup-actions{display:flex;flex-direction:column;align-items:center;gap:12px}
.lab-popup-actions .lnk{font-size:14px;min-height:44px;align-items:center;padding:0}
.lab-popup-actions .btn{justify-content:center;max-width:100%;text-align:center;min-height:48px}
@media(max-width:600px){
 .lab-promo-dialog{width:calc(100% - 24px);max-width:calc(100% - 24px);max-height:calc(100dvh - 24px)}
 .lab-popup-content{padding:30px 22px 22px}
 .lab-popup-brand{margin-top:8px}
 .lab-popup-close{top:8px;right:8px}
 .lab-popup-intro{margin-block:20px}
 .lab-popup-workshop{padding-block:16px}
 .lab-popup-actions .btn{width:100%;font-size:14px;padding-inline:16px}
}
@media(max-height:680px){.lab-popup-content{padding-top:28px}.lab-popup-discount{font-size:88px}.lab-popup-intro{margin-block:16px}.lab-popup-workshop{padding-block:14px}.lab-popup-dates{margin-block:16px}}
