/* Public campaign visuals: scoped, white-label aware, never change site chrome. */
.public-launch-offers{
  width:min(100%,1200px);
  margin:28px auto 32px;
  padding:0 16px;
  color:var(--brand-text,#111827);
}
.public-launch-offers--home{width:min(100%,1300px);margin:46px auto;padding:0 24px}
.public-offers-heading{margin-bottom:19px;display:flex;justify-content:space-between;gap:20px}
.public-offers-kicker{display:inline-block;font-size:11px;font-weight:850;letter-spacing:.16em;color:var(--brand-accent,var(--brand));margin-bottom:6px}
.public-offers-heading h2{font-size:clamp(22px,3vw,34px);letter-spacing:-.035em;margin:2px 0 8px;color:inherit}
.public-offers-heading p{font-size:14px;line-height:1.6;color:var(--brand-muted,#64748b);margin:0;max-width:780px}
.public-offers-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,248px),1fr));gap:14px}
.public-offer-card{background:var(--brand-surface,#fff);border:1px solid color-mix(in srgb,var(--brand-muted,#64748b) 20%,transparent);border-radius:var(--brand-card-radius,18px);padding:23px;display:flex;flex-direction:column;min-height:280px;min-width:0}
.public-offer-icon{display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--brand-accent,var(--brand)) 11%,transparent);border-radius:14px;color:var(--brand-accent,var(--brand));width:47px;height:47px;font-size:26px;margin-bottom:14px}
.public-offer-flag{display:inline-flex;align-self:flex-start;border:1px solid color-mix(in srgb,var(--brand-accent,var(--brand)) 27%,transparent);border-radius:99px;padding:4px 9px;font-size:11px;font-weight:750;color:var(--brand-accent,var(--brand));margin-bottom:10px}
.public-offer-card h3{font-size:19px;line-height:1.3;margin:0 0 8px;color:inherit}
.public-offer-card>p{font-size:13px;line-height:1.6;color:var(--brand-muted,#64748b);margin:0 0 13px;flex-grow:1}
.public-offer-code{padding:10px 12px;border-radius:10px;border:1px dashed color-mix(in srgb,var(--brand-accent,var(--brand)) 55%,transparent);display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;flex-wrap:wrap;font-size:12px}
.public-offer-code strong{font-size:14px;letter-spacing:.07em}
.public-offer-date{font-size:12px;opacity:.75;margin-bottom:13px}
.public-offer-link{margin-top:auto;display:inline-flex;align-items:center;gap:8px;color:var(--brand-accent,var(--brand));font-size:13px;font-weight:800;text-decoration:none}
.public-offer-link:hover{text-decoration:underline}
.public-membership-intro{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.public-membership-icon{font-size:24px;color:var(--brand-accent,var(--brand))}
.public-benefit-list{padding:0!important;margin:14px 0 17px!important;list-style:none;display:grid;gap:9px}
.public-benefit-list li{display:flex;align-items:flex-start;gap:8px;line-height:1.45;font-size:13px;color:var(--brand-text,#111827)}
.public-benefit-list .fa-icon{color:var(--brand-accent,var(--brand));font-size:19px;margin-top:1px}
.public-membership-founders{background:color-mix(in srgb,var(--brand-accent,var(--brand)) 8%,var(--brand-surface,#fff));border:1px solid color-mix(in srgb,var(--brand-accent,var(--brand)) 23%,transparent);border-radius:13px;padding:14px;margin:16px 0}
.public-membership-founders strong{font-size:18px}
.public-membership-founders small{display:block;margin-top:6px;line-height:1.5;color:var(--brand-muted,#64748b)}
.public-membership-card .membership-price{font-size:clamp(25px,2vw,32px)}
.public-membership-card .public-benefit-list li{font-size:13px}
.public-membership-cta{margin-top:20px}
@media(max-width:740px){
  .public-launch-offers,.public-launch-offers--home{padding:0 16px;margin:30px auto}
  .public-offers-list{display:flex;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;scroll-padding-inline:2px;padding:0 2px 12px;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
  .public-offer-card{flex:0 0 min(85vw,320px);scroll-snap-align:start;min-height:305px}
  .public-offers-heading h2{font-size:25px}
  .membership-plan-grid{grid-template-columns:1fr!important}
}
@media(prefers-reduced-motion:reduce){.public-offers-list{scroll-behavior:auto}}


/* Public membership enrollment — both customer-managed and front-desk paths. */
.public-membership-card{display:flex;flex-direction:column}
.public-membership-card .public-benefit-list{margin-bottom:20px!important}
.public-membership-actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 16px}
.public-membership-actions .button{flex:1 1 180px;display:inline-flex;justify-content:center;align-items:center;text-align:center;gap:8px;min-height:43px}
.public-membership-helper{font-size:12px;line-height:1.6;margin:12px 0 0;color:var(--brand-muted,#64748b)}
.public-membership-checkout{max-width:1100px;margin:0 auto;padding:32px 18px 50px}
.public-membership-back{display:inline-flex;margin-bottom:22px;font-weight:700}
.membership-purchase-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(250px,.8fr);gap:20px;align-items:start}
.membership-purchase-form-card,.membership-purchase-aside,.membership-purchase-status{padding:clamp(20px,4vw,36px)!important}
.membership-purchase-form-card h1,.membership-purchase-status h1{font-size:clamp(26px,4vw,40px);margin:10px 0 14px}
.membership-purchase-form-card>p,.membership-purchase-status>p{line-height:1.65}
.membership-purchase-form-card h2{font-size:18px;margin:0 0 5px}
.membership-payment-step{display:flex;align-items:flex-start;gap:12px;margin-top:26px}
.membership-payment-step p{margin:0;line-height:1.55;font-size:14px}
.membership-payment-number{width:32px;height:32px;flex:0 0 32px;display:grid;place-items:center;border-radius:50%;background:var(--brand-accent,#2d6b66);color:#fff;font-weight:800}
.membership-payment-details{display:grid;gap:12px;margin:18px 0;padding:16px;border-radius:13px;background:color-mix(in srgb,var(--brand-muted,#64748b) 9%,transparent)}
.membership-payment-details>div{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.membership-payment-details small{color:var(--brand-muted,#64748b)}
.membership-online-form{display:grid;gap:16px;margin-top:17px}
.membership-online-form>label,.membership-contact-grid>label{display:grid;gap:6px;font-weight:700;font-size:14px}
.membership-online-form input:not([type=checkbox]),.membership-online-form textarea{width:100%;min-height:44px;border:1px solid #cbd5e1;border-radius:9px;padding:10px 12px;background:var(--brand-surface,#fff);color:var(--brand-text,#111827)}
.membership-online-form input[type=file]{min-height:0}
.membership-online-form label small{font-size:11px;font-weight:400}
.membership-payment-accept{display:flex!important;align-items:flex-start;gap:10px;font-weight:400!important}
.membership-payment-accept input{width:18px;height:18px;flex:0 0 18px;margin-top:2px}
.membership-submit-button{display:inline-flex;justify-content:center;align-items:center;gap:9px;min-height:46px;width:100%}
.membership-payment-state{display:flex;gap:8px;align-items:center;background:color-mix(in srgb,var(--brand-accent,#2d6b66) 10%,transparent);padding:13px;border-radius:10px;font-weight:750;margin:15px 0}
.membership-purchase-aside h2{font-size:24px;margin:12px 0}
.membership-purchase-aside .membership-price{display:block;margin:14px 0}
.membership-purchase-status{max-width:760px;margin:0 auto}
.membership-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.membership-assistance-honeypot{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
@media(max-width:760px){.membership-purchase-layout,.membership-contact-grid{grid-template-columns:1fr}.membership-purchase-aside{order:-1}.public-membership-actions{flex-direction:column}.public-membership-actions .button{flex:0 0 auto;width:100%}}

/* Checkout form fields and confirmation, consistent in direct/standalone view. */
.public-membership-checkout .membership-online-form>label,
.public-membership-checkout .membership-online-form .membership-field-title,
.public-membership-checkout .membership-online-form input,
.public-membership-checkout .membership-payment-accept>span{
    font-size:13px;line-height:1.5;
}
.public-membership-checkout .membership-online-form label small{
    font-size:12px;line-height:1.5;
}
.public-membership-checkout .membership-field-title{
    display:inline-flex;align-items:center;gap:4px;
}
.public-membership-checkout .membership-payment-accept{
    display:flex!important;align-items:center!important;gap:10px;
}
.public-membership-checkout .membership-payment-accept>input[type=checkbox]{
    width:18px!important;height:18px!important;min-width:18px;flex:0 0 18px;
    padding:0!important;margin:0!important;align-self:center;
    accent-color:var(--brand-accent,#617D7B);
}
.public-membership-checkout .membership-payment-accept>span{flex:1;min-width:0}
.public-membership-checkout .membership-payment-state{display:flex;align-items:center;gap:9px;font-size:13px;line-height:1.5}
.public-membership-checkout .membership-payment-state .fa-icon{flex:0 0 auto;align-self:center}

.public-membership-checkout .membership-inline-regular-price{
    font-size:.72em;color:#8c96a2;font-weight:500;
    text-decoration:line-through;text-decoration-thickness:2px;
}
.public-membership-checkout .membership-founder-note{
    font-size:12px;line-height:1.55;color:#3c6852;
    margin:10px 0 14px;
}
