/* DIVSA OS v7.30.0 — shared campaigns, forms and popup presentation. */
.tap-engagement,.tap-form-card,.tap-popup{--te-brand:var(--tap-purple,#6109be);--te-accent:var(--tap-gold,#f99000);--te-ink:var(--tap-ink,#1e0a2e);--te-muted:var(--tap-muted,#6b5b78);--te-line:var(--tap-line,#ece6f2);--te-card:var(--tap-card,#fff);font-family:var(--tap-font-body,"Plus Jakarta Sans",system-ui,sans-serif);box-sizing:border-box}.tap-engagement *,.tap-form-card *,.tap-popup *{box-sizing:border-box}
.tap-promo{position:relative;width:100%;margin:18px 0}.tap-promo__viewport{overflow:hidden;border-radius:var(--tap-card-radius,18px)}.tap-promo__track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none}.tap-promo__track::-webkit-scrollbar{display:none}.tap-promo__item{position:relative;scroll-snap-align:start;flex:0 0 100%;min-height:220px;border:1px solid var(--te-line);border-radius:var(--tap-card-radius,18px);overflow:hidden;background:linear-gradient(125deg,color-mix(in srgb,var(--te-brand) 78%,#000),var(--te-brand));color:#fff;isolation:isolate}.tap-promo__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.tap-promo__shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(20,7,29,.76),rgba(20,7,29,.18) 72%,rgba(20,7,29,.06))}.tap-promo__body{height:100%;min-height:220px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(22px,5vw,48px);max-width:720px}.tap-promo__eyebrow{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.9;margin-bottom:8px}.tap-promo__body h3{font-family:var(--tap-font-heading,"Fraunces",serif);font-size:clamp(22px,4vw,38px);line-height:1.08;margin:0 0 16px;color:inherit}.tap-promo__cta,.tap-popup__cta{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:999px;background:#fff;color:var(--te-brand);font:inherit;font-weight:800;text-decoration:none;padding:10px 17px;cursor:pointer;min-height:42px}.tap-promo__controls{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:10px}.tap-promo__nav,.tap-promo__pause{border:1px solid var(--te-line);background:var(--te-card);color:var(--te-ink);border-radius:999px;min-width:36px;height:36px;padding:0 11px;font:inherit;font-weight:700;cursor:pointer}.tap-promo__nav{font-size:24px;line-height:1}.tap-promo__dots{display:flex;gap:5px}.tap-promo__dots span{width:7px;height:7px;border-radius:999px;background:color-mix(in srgb,var(--te-muted) 30%,transparent);transition:width .2s,background .2s}.tap-promo__dots span.is-active{width:20px;background:var(--te-brand)}
.tap-promo--rail .tap-promo__item{flex-basis:min(82vw,420px);min-height:240px}.tap-promo--rail .tap-promo__body{min-height:240px;padding:24px}.tap-promo--rail .tap-promo__body h3{font-size:24px}.tap-promo--card .tap-promo__item{flex-basis:min(76vw,330px);min-height:360px}.tap-promo--card .tap-promo__shade{background:linear-gradient(180deg,rgba(20,7,29,.05) 18%,rgba(20,7,29,.84) 86%)}.tap-promo--card .tap-promo__body{min-height:360px;justify-content:flex-end;padding:22px}.tap-promo--card .tap-promo__body h3{font-size:22px}
.tap-form-card{width:100%;max-width:760px;margin:0 auto;padding:clamp(18px,4vw,28px);background:var(--te-card);border:1px solid var(--te-line);border-radius:var(--tap-card-radius,18px);color:var(--te-ink);box-shadow:0 10px 32px rgba(28,20,40,.07)}.tap-form-card--compact{padding:0;border:0;box-shadow:none}.tap-form-card h2{margin:0 0 6px;font-family:var(--tap-font-heading,"Fraunces",serif);font-size:clamp(24px,4vw,32px)}.tap-form-card__intro{margin:0 0 18px;color:var(--te-muted)}.tap-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.tap-form-field{display:flex;flex-direction:column;gap:6px;min-width:0}.tap-form-field--textarea,.tap-form-field--radio,.tap-form-field--checkbox{grid-column:1/-1}.tap-form-field>label{font-size:13px;font-weight:750;color:var(--te-ink)}.tap-form-field input:not([type=radio]):not([type=checkbox]),.tap-form-field textarea,.tap-form-field select{width:100%;border:1px solid var(--te-line);border-radius:12px;background:#fff;color:var(--te-ink);padding:11px 12px;font:inherit;min-height:44px;outline:none}.tap-form-field textarea{resize:vertical}.tap-form-field input:focus,.tap-form-field textarea:focus,.tap-form-field select:focus{border-color:var(--te-brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--te-brand) 13%,transparent)}.tap-form-choices{display:flex;gap:10px;flex-wrap:wrap}.tap-form-choices label,.tap-form-check{display:flex;align-items:center;gap:7px;font-weight:600}.tap-form-error{min-height:15px;color:#b42318;font-size:11px}.tap-form-field.is-error input,.tap-form-field.is-error textarea,.tap-form-field.is-error select{border-color:#d92d20}.tap-form-status{margin:12px 0 0;min-height:20px;font-size:13px;font-weight:650}.tap-form-status.is-success{color:#16794a}.tap-form-status.is-error{color:#b42318}.tap-form-submit{margin-top:12px;min-height:46px;border:0;border-radius:999px;background:var(--te-brand);color:#fff;padding:11px 20px;font:inherit;font-weight:800;cursor:pointer}.tap-form-submit[disabled]{opacity:.55;cursor:wait}.tap-form-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}
.tap-popup[hidden]{display:none!important}.tap-popup{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:18px}.tap-popup__backdrop{position:absolute;inset:0;background:rgba(17,8,23,.58);backdrop-filter:blur(3px)}.tap-popup__panel{position:relative;width:min(620px,100%);max-height:min(86vh,820px);overflow:auto;background:var(--te-card);border-radius:24px;box-shadow:0 28px 80px rgba(17,8,23,.34);color:var(--te-ink);animation:tapPopupIn .2s ease-out}.tap-popup__close{position:absolute;right:12px;top:12px;z-index:2;width:38px;height:38px;border:1px solid rgba(0,0,0,.08);border-radius:999px;background:rgba(255,255,255,.94);font-size:24px;cursor:pointer}.tap-popup__image{display:block;width:100%;max-height:260px;object-fit:cover}.tap-popup__content{padding:clamp(20px,5vw,32px)}.tap-popup__eyebrow{font-size:12px;font-weight:800;color:var(--te-brand);text-transform:uppercase;letter-spacing:.07em;margin-bottom:7px}.tap-popup__content h2{font-family:var(--tap-font-heading,"Fraunces",serif);font-size:clamp(25px,5vw,36px);line-height:1.08;margin:0 0 10px}.tap-popup__content>p{color:var(--te-muted);margin:0 0 18px}.tap-popup__cta{background:var(--te-brand);color:#fff}.tap-popup .tap-form-grid{grid-template-columns:1fr}.tap-popup .tap-form-field{grid-column:auto}@keyframes tapPopupIn{from{transform:translateY(14px) scale(.98);opacity:0}to{transform:none;opacity:1}}
@media(max-width:640px){.tap-promo__item{min-height:190px}.tap-promo__body{min-height:190px;padding:20px}.tap-promo__body h3{font-size:24px}.tap-promo__controls{justify-content:space-between}.tap-promo__dots{flex:1;justify-content:center}.tap-form-grid{grid-template-columns:1fr}.tap-form-field{grid-column:auto}.tap-popup{align-items:end;padding:0}.tap-popup__panel{width:100%;max-height:92vh;border-radius:24px 24px 0 0}.tap-popup__image{max-height:210px}}
@media(max-width:767px){.tap-device-desktop{display:none!important}}@media(min-width:768px){.tap-device-mobile{display:none!important}}
@media(prefers-reduced-motion:reduce){.tap-promo__track{scroll-behavior:auto}.tap-popup__panel{animation:none}}
