/* Copiado de FUENTE/welcome-remote.html (prototipo 19/20-09-2026) sin cambios, salvo:
   quitadas las reglas de James Arthur (no se usa), .devchip, #toast y el panel «Notas dev».
   Los ajustes propios de la app van en app.css. */
/* ============================================================
   VEGA MEMBERS CLUB · WELCOME PORTAL — PROTOTIPO DE REDISEÑO
   Sistema: MANUAL DE IDENTIDAD VISUAL pp. 28–29 + jerarquía del
   Activation v8 (18-09-2026). Tipografía Optima en todo.
   ============================================================ */
:root{
  --navy:#161E36;        /* Nightfall Navy — superficie oscura base */
  --navy-deep:#071026;   /* respaldo tras las páginas del deck */
  --ocean:#133D64;       /* Ocean Depths */
  --steel:#94A9BF;       /* Steel Blue — secundarios, itálicas, tachados */
  --coral:#E79673;       /* Sunset Blush — CTA principal */
  --peach:#EEBA96;       /* Desert Peach — títulos, nombres de membresía, eyebrows */
  --amber:#EBDBCA;       /* Amber Glow — etiquetas, explicativos, contornos */
  --white:#F7F4F3;       /* Faded White — SOLO valores escritos e importes */
  --ink:#161E36;
  --ink-60:rgba(22,30,54,.62);
  --ink-40:rgba(22,30,54,.38);
  --line-dark:rgba(235,219,202,.22);
  --line-cream:rgba(22,30,54,.25);
  --serif:"Optima","Optima Nova","URW Classico",Candara,"Gill Sans","Segoe UI",Verdana,sans-serif;
  /* alias del sistema de formularios de la web (NEW DESIGN v6) para reutilizar su CSS tal cual */
  --marino:#161E36; --panel:#1B2340; --champ:#EEBA96; --crema:#EBDBCA; --cobre:#E79673;
  --acero:#94A9BF; --linea:#2E3856; --apagado:#8D9BB3; --tinta:#F7F4F3;
}
*{margin:0;padding:0;box-sizing:border-box}
[hidden]{display:none!important}
.ja{font-family:'James Arthur','Cormorant Garamond',cursive;text-transform:none!important;letter-spacing:0!important;font-weight:400}
html{scroll-behavior:smooth}
body{font-family:var(--serif);background:var(--navy);color:var(--amber);-webkit-font-smoothing:antialiased;min-height:100vh}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
button{font-family:inherit;cursor:pointer}
input,select,textarea{font-family:inherit;font-size:16px;color:var(--ink)}
::placeholder{color:rgba(22,30,54,.35)}
.up{text-transform:uppercase;letter-spacing:.14em}
.view{display:none;min-height:100vh;min-height:100dvh}
.view.on{display:block}
/* ---------- botones ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;border:1px solid transparent;
  font-size:15px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;padding:15px 34px;
  transition:transform .18s cubic-bezier(.05,.7,.1,1),box-shadow .18s,background .18s,color .18s}
.btn-primary{background:var(--coral);color:var(--navy);box-shadow:0 1px 2px rgba(4,10,26,.35),0 6px 18px rgba(4,10,26,.35)}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 2px 4px rgba(4,10,26,.35),0 10px 26px rgba(4,10,26,.45)}
.btn-primary:disabled{opacity:.4;cursor:not-allowed;transform:none}
.btn-ghost{border-color:var(--amber);color:var(--amber);background:transparent}
.btn-ghost:hover{border-color:var(--peach);color:var(--peach)}
.btn-ghost.cream{border-color:var(--ocean);color:var(--ocean)}
.btn-ghost.cream:hover{border-color:var(--ink);color:var(--ink)}
:focus-visible{outline:2px solid var(--coral);outline-offset:3px;border-radius:4px}
/* ============================================================
   1 · ACCESS + 2 · WELCOME (vídeo)
   ============================================================ */
.vidwrap{position:fixed;inset:0;overflow:hidden;z-index:0;background:radial-gradient(120% 90% at 50% 18%,#1E2A4F 0%,#0B1128 72%)}
.vidwrap video{width:100%;height:100%;object-fit:cover;opacity:.85}
.vidwrap::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,16,38,.55) 0%,rgba(7,16,38,.15) 40%,rgba(7,16,38,.72) 100%)}
.overvid{position:relative;z-index:1;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;padding:max(5vh,34px) 24px calc(24px + env(safe-area-inset-bottom))}
.gate-logo{width:min(320px,62vw);margin-top:6vh;filter:drop-shadow(0 4px 22px rgba(4,10,26,.5))}
.gate-form{margin-top:auto;width:min(430px,100%);padding-bottom:6vh}
.gate-form label{display:block;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--amber);margin-bottom:10px}
.passrow{display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--amber)}
.passrow input{flex:1;background:transparent;border:0;color:var(--white);font-size:19px;letter-spacing:.34em;padding:10px 0;text-transform:uppercase}
.passrow input:focus{outline:none}
.eye{background:none;border:0;color:var(--steel);display:flex;padding:6px}
.gate-form .btn{width:100%;margin-top:26px}
.gate-hint{margin-top:18px;font-size:13px;color:var(--steel);font-style:italic;text-align:center;line-height:1.6}
.gate-err{display:none;margin-top:14px;font-size:13px;color:var(--peach);text-align:center;letter-spacing:.06em}
/* welcome */
.wel-center{margin:auto;text-align:center}
.wel-center h1{font-size:clamp(34px,7vw,58px);font-weight:400;color:var(--peach);letter-spacing:.04em}
.wel-center p{margin-top:18px;font-size:16px;color:var(--amber);font-style:italic;letter-spacing:.04em}
.wel-center .by{color:var(--steel)}
.wel-next{margin-left:auto}
/* ============================================================
   3 · REGISTRO (crema)
   ============================================================ */
.cream{background:var(--amber);color:var(--ink)}
.reg-wrap{max-width:640px;margin:0 auto;padding:52px 24px calc(60px + env(safe-area-inset-bottom))}
.reg-logo{width:150px;margin:0 auto 26px}
.reg-wrap h1,.sel-head h1{font-weight:400}
.reg-wrap h1{font-size:clamp(27px,5.4vw,36px);letter-spacing:.12em;text-align:center;text-transform:uppercase}
.form{margin-top:44px}
.fgrid{display:grid;grid-template-columns:repeat(6,1fr);gap:26px 20px}
.field{grid-column:span 6;display:flex;flex-direction:column;gap:7px}
@media(min-width:560px){
  .f2{grid-column:span 2}.f3{grid-column:span 3}.f4{grid-column:span 4}
  .f2b{grid-column:span 2}
}
.field label{font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-60)}
.field label i{font-style:italic;text-transform:none;letter-spacing:.02em;color:var(--ink-40)}
.in{background:transparent;border:0;border-bottom:1px solid var(--line-cream);padding:9px 2px;transition:border-color .18s}
.in:focus{outline:none;border-bottom-color:var(--ocean)}
textarea.in{min-height:92px;resize:vertical;line-height:1.5}
select.in{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='7'%3E%3Cpath d='M1 1l4.5 4.5L10 1' stroke='%23133D64' fill='none' stroke-width='1.4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 4px center;padding-right:22px;border-radius:0}
/* segmented treatment */
.seg{display:flex;gap:0;border:1px solid var(--ocean);border-radius:999px;overflow:hidden;width:max-content}
.seg label{position:relative;display:block}
.seg input{position:absolute;opacity:0;inset:0}
.seg span{display:block;padding:9px 28px;font-size:13px;letter-spacing:.16em;color:var(--ocean);transition:background .15s,color .15s}
.seg input:checked+span{background:var(--ocean);color:var(--amber)}
.seg input:focus-visible+span{outline:2px solid var(--coral);outline-offset:-2px}
/* checkbox */
.check{display:flex;gap:13px;align-items:flex-start;cursor:pointer;font-size:14px;line-height:1.6;color:var(--ink-60)}
.check input{position:absolute;opacity:0;width:0}
.check .box{flex:0 0 21px;height:21px;margin-top:2px;border:1px solid var(--ocean);border-radius:4px;display:grid;place-items:center;transition:background .15s}
.check .box svg{width:13px;height:13px;stroke:var(--amber);stroke-width:2.6;fill:none;opacity:0}
.check input:checked~.box{background:var(--ocean)}
.check input:checked~.box svg{opacity:1}
.check input:focus-visible~.box{outline:2px solid var(--coral);outline-offset:2px}
.check a{color:var(--ocean);text-decoration:underline;text-underline-offset:3px}
.reg-actions{margin-top:44px;display:flex;justify-content:space-between;align-items:center;gap:14px}
/* ============================================================
   4 · DECK
   ============================================================ */
#v-deck{background:var(--navy-deep)}
.deckbar{position:fixed;top:0;left:0;right:0;z-index:40;display:flex;align-items:center;justify-content:space-between;
  padding:10px max(18px,env(safe-area-inset-left)) 10px;min-height:56px;
  background:rgba(7,16,38,.78);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(148,169,191,.14)}
.deckbar img{height:30px;width:auto}
.deckbar .cap{font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--steel)}
.burger{background:none;border:0;display:flex;flex-direction:column;gap:5px;padding:8px}
.burger span{display:block;width:24px;height:1.6px;background:var(--amber)}
#deckprog{position:fixed;top:0;left:0;height:2.5px;width:0;background:var(--peach);z-index:41;transition:width .1s linear}
.deck-pages{padding:56px 0 150px;display:flex;flex-direction:column;align-items:center}
.deck-pages img{width:min(100vw,560px);height:auto;background:#0a1230;scroll-margin-top:64px}
.apply-float{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(20px + env(safe-area-inset-bottom));z-index:42;
  padding:16px 40px;font-size:15px;text-transform:none;letter-spacing:.04em;white-space:nowrap;box-shadow:0 2px 6px rgba(4,10,26,.5),0 14px 34px rgba(4,10,26,.6)}
.apply-float:hover{transform:translateX(-50%) translateY(-1px)}
@keyframes pulse{0%,100%{opacity:.9;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}
/* menú del deck */
.deckmenu{position:fixed;inset:0;z-index:60;background:rgba(7,16,38,.985);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:none;overflow:auto;padding:26px 24px calc(40px + env(safe-area-inset-bottom))}
.deckmenu.on{display:block}
.deckmenu .top{display:flex;justify-content:space-between;align-items:center;max-width:560px;margin:0 auto}
.deckmenu .top img{height:34px}
.xbtn{background:none;border:0;color:var(--steel);font-size:26px;line-height:1;padding:8px 10px}
.deckmenu nav{max-width:560px;margin:34px auto 0;display:flex;flex-direction:column}
.deckmenu nav a{padding:13px 4px;border-bottom:1px solid rgba(148,169,191,.14);text-decoration:none;
  font-size:16px;letter-spacing:.12em;text-transform:uppercase;color:var(--amber);display:flex;justify-content:space-between;align-items:baseline}
.deckmenu nav a small{font-size:11px;color:var(--steel);letter-spacing:.18em}
.deckmenu nav a:hover{color:var(--peach)}
.deckmenu nav a.cta{color:var(--coral);border-bottom:0;margin-top:16px;font-weight:600}
/* ============================================================
   5 · SELECCIÓN DE MEMBRESÍA
   ============================================================ */
#v-select{background:var(--navy);padding:0 0 130px}
.sel-top{position:sticky;top:0;z-index:30;display:flex;justify-content:flex-end;padding:14px 16px;
  background:linear-gradient(180deg,var(--navy) 55%,rgba(22,30,54,0))}
.sel-wrap{max-width:730px;margin:0 auto;padding:4px 22px 0}
.sel-head{text-align:center}
.sel-head h1{font-size:clamp(26px,5.2vw,38px);letter-spacing:.1em;text-transform:uppercase;color:var(--peach);margin-top:4px}
.openbox{margin-top:26px;border:1px solid rgba(238,186,150,.55);background:rgba(238,186,150,.06);border-radius:16px;padding:20px 22px 19px}
.ob-title{display:inline-flex;align-items:center;gap:10px;font-size:13.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--peach)}
.ob-title .dot{width:7px;height:7px;border-radius:50%;background:var(--peach);animation:pulse 2.2s infinite}
.ob-lead{margin-top:10px;font-size:16px;line-height:1.55;color:var(--amber)}
.ob-sub{margin-top:5px;font-size:12.5px;line-height:1.6;color:var(--steel);font-style:italic}
.tiers{margin-top:40px;display:flex;flex-direction:column;gap:16px}
.tier{position:relative;display:block;border:1px solid var(--line-dark);border-radius:16px;padding:24px 22px 22px;cursor:pointer;
  transition:border-color .18s,background .18s,transform .18s}
.tier:hover{border-color:rgba(238,186,150,.55)}
.tier input{position:absolute;opacity:0}
.tier.sel{border-color:var(--coral);background:rgba(231,150,115,.07)}
.tier .mark{position:absolute;top:18px;right:18px;width:24px;height:24px;border:1px solid var(--steel);border-radius:50%;display:grid;place-items:center;transition:all .15s}
.tier .mark svg{width:13px;height:13px;stroke:var(--navy);stroke-width:3;fill:none;opacity:0}
.tier.sel .mark{background:var(--coral);border-color:var(--coral)}
.tier.sel .mark svg{opacity:1}
.tier input:focus-visible~.mark{outline:2px solid var(--coral);outline-offset:3px}
.t-name{font-size:20px;letter-spacing:.18em;text-transform:uppercase;color:var(--peach)}
.t-kick{margin-top:5px;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--steel)}
.t-std{margin-top:16px;font-size:15px;color:var(--steel)}
.t-std em{font-style:italic;letter-spacing:.04em}
.t-std s{text-decoration-color:rgba(231,150,115,.9);text-decoration-thickness:1px;margin-left:8px;color:var(--steel)}
.t-open{margin-top:9px;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 14px}
.t-amount{font-size:31px;color:var(--white);letter-spacing:.02em}
.t-amount small{font-size:13px;color:var(--amber);letter-spacing:.1em;text-transform:uppercase;margin-left:7px}
.t-join{font-size:14.5px;color:var(--white)}
.t-join small{color:var(--amber);font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.t-cred{margin-top:7px;font-size:13.5px;color:var(--amber)}
.t-qtr{margin-top:13px;padding-top:13px;border-top:1px dashed rgba(148,169,191,.28)}
.t-qtr .tag{display:inline-block;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--peach);border:1px solid rgba(238,186,150,.45);border-radius:999px;padding:2.5px 10px}
.t-qamt{margin-top:10px;font-size:24px;color:var(--white);letter-spacing:.02em}
.t-qamt small{font-size:12px;color:var(--amber);letter-spacing:.1em;text-transform:uppercase;margin-left:6px}
.t-qjoin{margin-top:4px;font-size:12.5px;color:var(--amber)}
.t-limit{margin-top:13px;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--steel)}
.corp-tiers{margin-top:13px;display:grid;grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:8px}
.corp-tiers div{border:1px solid rgba(148,169,191,.25);border-radius:10px;padding:9px 10px;text-align:center}
.corp-tiers b{display:block;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--amber);font-weight:400}
.corp-tiers span{display:block;margin-top:4px;font-size:15.5px;color:var(--white)}
.corp-tiers small{font-size:10.5px;color:var(--steel)}
.or{display:flex;align-items:center;gap:18px;margin:34px 0 18px;color:var(--steel);font-size:12px;letter-spacing:.3em;text-transform:uppercase}
.or::before,.or::after{content:"";flex:1;height:1px;background:rgba(148,169,191,.25)}
.soft{display:flex;flex-direction:column;gap:11px}
.soft .tier{padding:17px 20px;border-radius:12px}
.soft .t-softname{font-size:15px;letter-spacing:.06em;color:var(--amber);font-style:italic}
.soft .t-softsub{margin-top:4px;font-size:12.5px;color:var(--steel)}
.soft .mark{top:50%;transform:translateY(-50%)}
.selbar{position:fixed;left:0;right:0;bottom:0;z-index:35;display:flex;justify-content:center;gap:18px;align-items:center;
  padding:16px 22px calc(16px + env(safe-area-inset-bottom));background:linear-gradient(0deg,var(--navy) 62%,rgba(22,30,54,0))}
.selbar .hint{font-size:12.5px;font-style:italic;color:var(--steel);letter-spacing:.06em}
/* ============================================================
   6 · APPLICATION — sistema de formularios de la web (NEW DESIGN v6), sobre navy
   ============================================================ */
#v-apply .app-wrap{max-width:var(--wrap,1100px);margin:0 auto;padding:40px clamp(20px,4vw,56px) calc(80px + env(safe-area-inset-bottom))}
#v-apply .app-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}
#v-apply .app-top img{width:96px}
#v-apply .back{background:none;border:0;display:inline-flex;align-items:center;gap:8px;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--acero);text-decoration:none;cursor:pointer}
#v-apply .back:hover{color:var(--champ)}
#v-apply .app-eyebrow{font-size:12px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--champ);margin-bottom:14px}
#v-apply .apply-h1{font-size:clamp(28px,3.6vw,44px);font-weight:400;line-height:1.1;color:var(--tinta);letter-spacing:.01em}
#v-apply .lead{font-size:clamp(16px,1.4vw,18px);font-weight:300;color:var(--crema);max-width:60ch}
#v-apply .apply-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,5vw,64px);align-items:start;margin-top:6px}
#v-apply .apply-head ul{margin:12px 0 0;padding-left:18px;font-size:15px;font-weight:300;display:grid;gap:8px;color:var(--crema)}
#v-apply .apply-head li::marker{color:var(--cobre)}
#v-apply .rates{border:1px solid rgba(238,186,150,.25);border-radius:18px;padding:22px 24px;background:var(--panel)}
#v-apply .rates .k{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--champ);font-weight:600;margin-bottom:8px}
#v-apply .rates .big{font-size:28px;color:var(--tinta);font-weight:300;line-height:1.1}
#v-apply .rates .big small{font-size:14px;color:var(--crema)}
#v-apply .rates p{font-size:14px;color:var(--crema);font-weight:300;margin-top:8px}
#v-apply .rates .std{font-size:14px;color:var(--acero);margin-top:10px}
#v-apply .rates .std s{text-decoration-color:var(--cobre);text-decoration-thickness:1px}
#v-apply .instal{margin-top:40px;border:1px solid rgba(238,186,150,.25);border-radius:18px;padding:22px 26px;background:var(--panel)}
#v-apply .instal .k{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--champ);font-weight:600;margin-bottom:6px}
#v-apply .radio{display:flex;gap:12px;align-items:flex-start;cursor:pointer;font-size:14.5px;font-weight:300;color:var(--crema);padding:12px 0;border-top:1px solid var(--linea)}
#v-apply .radio:first-of-type{border-top:0}
#v-apply .radio input{position:absolute;opacity:0;width:0;height:0}
#v-apply .radio .dot{flex:none;width:17px;height:17px;border:1px solid var(--champ);border-radius:50%;margin-top:3px;display:grid;place-items:center}
#v-apply .radio .dot::after{content:"";width:9px;height:9px;border-radius:50%;background:var(--champ);opacity:0}
#v-apply .radio input:checked+.dot::after{opacity:1}
#v-apply .radio input:focus-visible+.dot{outline:2px solid var(--crema);outline-offset:2px}
#v-apply .radio b{font-weight:500;color:var(--tinta)}
#v-apply .radio em{font-style:normal;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--acero);margin-left:10px}
#v-apply .radio small{display:block;color:var(--apagado);font-size:13px;margin-top:2px}
#v-apply .form{margin-top:36px}
#v-apply .eyebrow{font-size:12px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--champ);margin:0 0 18px;display:block}
#v-apply .fgrid{display:grid;grid-template-columns:repeat(6,1fr);gap:24px 22px}
#v-apply .field{display:flex;flex-direction:column;gap:6px;min-width:0}
#v-apply .s1{grid-column:span 1}#v-apply .s2{grid-column:span 2}#v-apply .s3{grid-column:span 3}#v-apply .s4{grid-column:span 4}#v-apply .s5{grid-column:span 5}#v-apply .s6{grid-column:span 6}
@media(max-width:820px){#v-apply .apply-head{grid-template-columns:1fr}#v-apply .s1,#v-apply .s2,#v-apply .s3,#v-apply .s4,#v-apply .s5{grid-column:span 6}}
@media(min-width:601px) and (max-width:820px){#v-apply .s3{grid-column:span 3}}
#v-apply .field label{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--crema);font-weight:500}
#v-apply .field label.req::after,#v-apply .rates .k.req::after,#v-apply .chips-title.req::after{content:" *";color:var(--cobre)}
#v-apply .in{background:transparent;border:0;border-bottom:1px solid var(--linea);color:var(--tinta);font:inherit;font-size:16px;padding:10px 0;width:100%;border-radius:0;transition:border-color .2s;appearance:none;-webkit-appearance:none}
#v-apply .in:focus{outline:0;border-bottom-color:var(--champ)}
#v-apply .in::placeholder{color:var(--apagado);opacity:.8}
#v-apply textarea.in{min-height:96px;resize:vertical;line-height:1.5}
#v-apply select.in{cursor:pointer;padding-right:20px}
#v-apply .in option{color:#161E36}
#v-apply .ctrl{position:relative}
#v-apply .ctrl.sel::after{content:"";position:absolute;right:6px;top:50%;width:7px;height:7px;border-right:1px solid var(--champ);border-bottom:1px solid var(--champ);transform:translateY(-70%) rotate(45deg);pointer-events:none}
#v-apply .check{display:flex;align-items:flex-start;gap:12px;font-size:14px;font-weight:300;cursor:pointer;color:var(--crema)}
#v-apply .check input{position:absolute;opacity:0;width:0;height:0}
#v-apply .check .box{flex:none;width:17px;height:17px;border:1px solid var(--champ);border-radius:4px;margin-top:3px;display:grid;place-items:center}
#v-apply .check .box svg{width:10px;height:10px;stroke:var(--marino);stroke-width:2.6;fill:none;opacity:0}
#v-apply .check input:checked~.box{background:var(--champ)}#v-apply .check input:checked~.box svg{opacity:1}
#v-apply .check input:focus-visible~.box{outline:2px solid var(--crema);outline-offset:2px}
#v-apply .check a{color:var(--champ);text-decoration:underline;text-underline-offset:3px}
#v-apply .assist{display:none;grid-column:span 6}#v-apply .assist.on{display:block}
#v-apply .assist .fgrid{margin-top:16px}
#v-apply .other-ind{display:none}#v-apply .other-ind.on{display:flex}
#v-apply .fsect{margin-top:36px;padding-top:26px;border-top:1px solid var(--linea)}
#v-apply .fsect .eyebrow{margin-bottom:16px}
#v-apply .chips{display:flex;flex-wrap:wrap;gap:8px}
#v-apply .chips label{cursor:pointer}
#v-apply .chips input{position:absolute;opacity:0;width:0;height:0}
#v-apply .chips span{display:inline-block;border:1px solid var(--linea);border-radius:999px;padding:8px 13px;font-size:12px;letter-spacing:.04em;color:var(--crema);transition:all .15s}
#v-apply .chips input:checked+span{background:var(--champ);color:var(--marino);border-color:var(--champ)}
#v-apply .chips input:focus-visible+span{outline:2px solid var(--crema);outline-offset:2px}
#v-apply .file{display:flex;align-items:center;gap:12px;border:1px dashed var(--linea);border-radius:12px;padding:12px 14px;font-size:13.5px;color:var(--apagado);cursor:pointer}
#v-apply .file b{font-weight:500;color:var(--champ)}
#v-apply .file input{position:absolute;opacity:0;width:0;height:0}
#v-apply .rgroup{display:flex;flex-wrap:wrap;gap:8px 18px}
#v-apply .rgroup .radio{border:0;padding:6px 0}
#v-apply .refchip{border:1px solid rgba(238,186,150,.35);background:var(--panel);border-radius:14px;padding:16px 18px;font-size:14.5px;font-weight:300;line-height:1.6;color:var(--crema)}
#v-apply .refchip b{display:block;margin-top:8px;font-weight:500;color:var(--tinta);letter-spacing:.02em}
#v-apply .refchip .ref-name{font-weight:500;color:var(--tinta)}
#v-apply .benefits-note{margin-top:10px;font-size:12.5px;font-weight:300;opacity:.75}
#v-apply .app-submit{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-top:30px}
#v-apply .app-submit .note{font-size:13px;color:var(--apagado);font-style:italic}
/* ============================================================
   7 · CIERRES
   ============================================================ */
.close-wrap{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:60px 26px;position:relative;z-index:1}
.close-wrap img.logo{width:150px;margin-bottom:44px}
.close-wrap h1{font-size:clamp(27px,5.4vw,40px);font-weight:400;letter-spacing:.05em;color:var(--peach)}
.close-wrap .msg{margin-top:16px;font-size:16.5px;line-height:1.7;color:var(--amber);max-width:44ch;font-style:italic}
.close-wrap img.firma{width:150px;margin-top:36px;opacity:.9}
.close-contact{margin-top:38px;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--steel);line-height:2.1}
.close-contact a{color:var(--amber);text-decoration:none;border-bottom:1px solid rgba(235,219,202,.4);padding-bottom:1px}
.close-wrap .btn{margin-top:44px}
/* ============================================================
   PRIVACY MODAL
   ============================================================ */
.modal{position:fixed;inset:0;z-index:80;background:rgba(7,16,38,.6);display:none;align-items:flex-end;justify-content:center}
.modal.on{display:flex}
.modal .card{background:var(--amber);color:var(--ink);max-width:640px;width:100%;max-height:82vh;overflow:auto;border-radius:18px 18px 0 0;padding:30px 28px calc(34px + env(safe-area-inset-bottom))}
@media(min-width:700px){.modal{align-items:center}.modal .card{border-radius:18px}}
.modal h2{font-size:15px;letter-spacing:.26em;text-transform:uppercase;font-weight:400;color:var(--ocean)}
.modal p{margin-top:14px;font-size:14px;line-height:1.7;color:var(--ink-60)}
.modal .btn{margin-top:24px}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  html{scroll-behavior:auto}
}
