/* =========================================================
   VANTHEX SYSTEM — ACCESO Y PRECIO
   ========================================================= */
.tdb-offer { overflow: clip; }
.tdb-offer-heading { max-width: 780px; margin-bottom: 40px; }
.tdb-offer-heading h2 { max-width: 760px; margin: 18px 0 0; }
.tdb-offer-heading p { max-width: 720px; margin: 18px 0 0; color: var(--tdb-muted); font-size: 18px; line-height: 1.65; }
.tdb-access-layout { position: relative; display: grid; grid-template-columns: minmax(0,1.08fr) minmax(340px,.72fr); gap: clamp(28px,4vw,58px); padding: clamp(28px,4vw,54px); border: 1px solid color-mix(in srgb,var(--tdb-accent) 24%,rgba(255,255,255,.08)); border-radius: 30px; background: radial-gradient(circle at 90% 5%,color-mix(in srgb,var(--tdb-accent) 20%,transparent),transparent 34%),linear-gradient(145deg,rgba(255,255,255,.052),rgba(255,255,255,.012)); box-shadow: 0 40px 100px rgba(0,0,0,.3); }
.tdb-access-layout::before { content:""; position:absolute; inset:16px; border:1px solid rgba(255,255,255,.035); border-radius:22px; pointer-events:none; }
.tdb-access-benefits,.tdb-price-box { position: relative; z-index: 1; }
.tdb-access-benefits__topline { display:flex; align-items:center; justify-content:space-between; gap:20px; padding-bottom:18px; border-bottom:1px solid rgba(255,255,255,.075); }
.tdb-access-benefits__topline span { color:var(--tdb-accent-2); font-size:10px; font-weight:800; letter-spacing:.18em; }
.tdb-access-benefits__topline small { color:#7d8799; font-size:11px; }
.tdb-access-benefits ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px 24px; padding:0; margin:22px 0 28px; list-style:none; }
.tdb-access-benefits li { display:flex; align-items:flex-start; gap:11px; min-height:42px; padding:9px 0; color:#c7ceda; font-size:14px; line-height:1.5; }
.tdb-access-benefits li i { display:grid; place-items:center; width:20px; height:20px; flex:0 0 20px; border:1px solid rgba(72,239,190,.28); border-radius:50%; background:rgba(72,239,190,.08); color:var(--tdb-success); font-size:10px; font-style:normal; box-shadow:0 0 14px rgba(72,239,190,.1); }
.tdb-license-flex { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.tdb-license-flex > div { display:flex; align-items:center; gap:14px; min-height:82px; padding:17px 18px; border:1px solid rgba(255,255,255,.07); border-radius:16px; background:rgba(3,5,11,.4); }
.tdb-license-flex strong { color:#fff; font-size:30px; line-height:1; letter-spacing:-.05em; }
.tdb-license-flex span { color:#8e98a9; font-size:12px; line-height:1.45; }
.tdb-price-box { align-self:stretch; display:flex; flex-direction:column; justify-content:center; padding:30px; border:1px solid color-mix(in srgb,var(--tdb-accent) 26%,rgba(255,255,255,.08)); border-radius:24px; background:linear-gradient(160deg,rgba(10,12,21,.94),rgba(4,5,10,.84)); box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 26px 60px rgba(0,0,0,.28); }
.tdb-price-badge { display:flex; align-items:center; gap:9px; color:#aab2c0; font-size:9px; font-weight:800; letter-spacing:.17em; }
.tdb-price-badge span { width:7px; height:7px; border-radius:50%; background:var(--tdb-success); box-shadow:0 0 12px var(--tdb-success); }
.tdb-price-product { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-top:18px; padding-bottom:16px; border-bottom:1px solid rgba(255,255,255,.07); }
.tdb-price-product span { color:#fff; font-size:18px; font-weight:760; }
.tdb-price-product small { color:#7c879a; font-size:10px; }
.tdb-price-discount { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:17px; padding:10px 12px; border:1px solid color-mix(in srgb,var(--tdb-accent) 30%,transparent); border-radius:12px; background:color-mix(in srgb,var(--tdb-accent) 10%,transparent); }
.tdb-price-discount b { color:#fff; font-size:12px; }
.tdb-price-discount span { color:#9ba5b7; font-size:9px; text-align:right; }
.tdb-price-original,.tdb-price-final { display:flex; align-items:center; justify-content:space-between; gap:18px; min-width:0; }
.tdb-price-original { margin-top:19px; }
.tdb-price-original > span,.tdb-price-final > span { flex:1 1 auto; min-width:0; color:#778194; font-size:11px; }
.tdb-price-original del { display:block; flex:0 0 auto; min-width:max-content; margin:0; color:#818a99; font-size:15px; line-height:1.2; text-align:right; white-space:nowrap; font-variant-numeric:tabular-nums; }
.tdb-price-final { margin-top:10px; }
.tdb-price-final strong { display:block; flex:0 0 auto; min-width:max-content; margin:0; color:#fff; font-size:clamp(34px,3.3vw,46px); line-height:1; letter-spacing:-.05em; text-align:right; white-space:nowrap; font-variant-numeric:tabular-nums; }
.tdb-price-box .woocommerce-Price-amount,.tdb-price-box .woocommerce-Price-amount bdi { display:inline-flex!important; align-items:flex-start!important; gap:0!important; white-space:nowrap!important; }
.tdb-price-box .woocommerce-Price-currencySymbol { display:inline!important; position:static!important; float:none!important; width:auto!important; margin:0!important; font-size:.62em!important; line-height:1!important; vertical-align:top!important; }
.tdb-price-trust { display:flex; flex-wrap:wrap; gap:7px; margin:19px 0 22px; }
.tdb-price-trust span { padding:7px 9px; border:1px solid rgba(255,255,255,.065); border-radius:99px; color:#8791a3; font-size:9px; }
.tdb-access-button { width:100%; min-height:54px; border:0; cursor:pointer; }
.tdb-price-note { display:block; margin-top:15px; color:#748094; font-size:10px; line-height:1.55; text-align:center; }

/* Modal de acceso */
.tdb-access-modal { position:fixed; inset:0; z-index:100000; display:grid; place-items:center; padding:20px; opacity:0; visibility:hidden; transition:opacity .28s ease,visibility .28s ease; }
.tdb-access-modal.is-open { opacity:1; visibility:visible; }
.tdb-access-modal__backdrop { position:absolute; inset:0; background:rgba(1,2,6,.78); -webkit-backdrop-filter:blur(16px); backdrop-filter:blur(16px); }
.tdb-access-modal__dialog { position:relative; z-index:1; width:min(100%,680px); max-height:min(90vh,850px); overflow:auto; padding:30px; border:1px solid color-mix(in srgb,var(--tdb-accent) 30%,rgba(255,255,255,.1)); border-radius:26px; background:radial-gradient(circle at 90% 0,color-mix(in srgb,var(--tdb-accent) 22%,transparent),transparent 35%),#090b12; box-shadow:0 50px 140px rgba(0,0,0,.65),inset 0 1px 0 rgba(255,255,255,.07); color:#fff; }
.tdb-access-modal__close { position:absolute; top:15px; right:15px; width:36px; height:36px; border:1px solid rgba(255,255,255,.1); border-radius:50%; background:rgba(255,255,255,.03); color:#b3bdcc; font-size:24px; line-height:1; cursor:pointer; transition:.2s ease; }
.tdb-access-modal__close:hover { color:#fff; border-color:color-mix(in srgb,var(--tdb-accent) 45%,transparent); transform:rotate(8deg); }
.tdb-access-modal__brand { display:flex; align-items:center; gap:12px; }
.tdb-access-modal__brand strong { display:block; font-size:15px; }
.tdb-access-modal__brand small { display:block; margin-top:3px; color:#646e80; font-size:7px; letter-spacing:.16em; }
.tdb-access-vmark { position:relative; width:31px; height:31px; filter:drop-shadow(0 0 12px color-mix(in srgb,var(--tdb-accent) 55%,transparent)); }
.tdb-access-vmark i { position:absolute; top:1px; width:7px; height:28px; border-radius:4px; background:linear-gradient(180deg,#8e7cff,var(--tdb-accent),var(--tdb-accent-2)); transform-origin:50% 100%; }
.tdb-access-vmark i:first-child { left:6px; transform:rotate(-25deg); }
.tdb-access-vmark i:last-child { right:6px; transform:rotate(25deg); }
.tdb-access-modal__intro { margin-top:26px; }
.tdb-access-modal__intro > span { color:var(--tdb-accent-2); font-size:9px; font-weight:800; letter-spacing:.18em; }
.tdb-access-modal__intro h3 { max-width:560px; margin:10px 0 0; color:#fff; font-size:clamp(28px,5vw,42px); line-height:1.02; letter-spacing:-.045em; }
.tdb-access-modal__intro p { max-width:590px; margin:13px 0 0; color:#949eae; font-size:14px; line-height:1.6; }
.tdb-access-form { margin-top:24px; }
.tdb-access-form__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.tdb-access-form label { display:grid; gap:7px; }
.tdb-access-form label > span { color:#aeb7c5; font-size:10px; font-weight:650; }
.tdb-access-form__wide { grid-column:1/-1; }
.tdb-access-form input:not([type=checkbox]),.tdb-access-form select { width:100%; height:48px; padding:0 13px; border:1px solid rgba(255,255,255,.11); border-radius:11px; outline:0; background:rgba(2,4,9,.64); color:#fff; font:inherit; font-size:13px; transition:border-color .2s ease,box-shadow .2s ease; }
.tdb-access-form input:focus,.tdb-access-form select:focus { border-color:color-mix(in srgb,var(--tdb-accent) 72%,#fff); box-shadow:0 0 0 3px color-mix(in srgb,var(--tdb-accent) 13%,transparent); }
.tdb-access-form select option { background:#0a0c13; }
.tdb-access-consent { grid-template-columns:18px 1fr !important; align-items:start; gap:10px !important; margin-top:17px; }
.tdb-access-consent input { margin:2px 0 0; accent-color:var(--tdb-accent); }
.tdb-access-consent span { color:#7f8a9d !important; font-weight:400 !important; line-height:1.55; }
.tdb-access-form__status { min-height:20px; margin-top:12px; color:#9fa9ba; font-size:12px; }
.tdb-access-form__status.is-error { color:#ff838f; }
.tdb-access-form__status.is-success { color:var(--tdb-success); }
.tdb-access-submit { width:100%; min-height:54px; margin-top:4px; border:0; cursor:pointer; }
.tdb-access-submit[disabled] { opacity:.65; cursor:wait; }
.tdb-access-form > small { display:block; margin-top:10px; color:#687286; font-size:9px; text-align:center; }
html.tdb-access-open,html.tdb-access-open body { overflow:hidden; }

@media(max-width:900px){.tdb-access-layout{grid-template-columns:1fr}.tdb-access-benefits ul{grid-template-columns:1fr 1fr}.tdb-price-box{max-width:560px}}
@media(max-width:640px){.tdb-offer-heading{margin-bottom:28px}.tdb-offer-heading p{font-size:16px}.tdb-access-layout{padding:22px;border-radius:23px}.tdb-access-benefits ul,.tdb-license-flex{grid-template-columns:1fr}.tdb-price-box{padding:23px}.tdb-price-product{align-items:flex-start;flex-direction:column}.tdb-price-discount{align-items:flex-start;flex-direction:column}.tdb-price-discount span{text-align:left}.tdb-price-original,.tdb-price-final{gap:12px}.tdb-price-final strong{font-size:34px}.tdb-access-modal{padding:10px}.tdb-access-modal__dialog{padding:23px 18px;border-radius:20px}.tdb-access-form__grid{grid-template-columns:1fr}.tdb-access-form__wide{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.tdb-access-modal,.tdb-access-modal__close{transition:none}}

.tdb-access-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}