:root{--t66-topo-img:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='640'%20height='640'%20viewBox='0%200%20640%20640'%3E%3Cpath%20fill='none'%20stroke='%23e8dbca'%20stroke-opacity='.05'%20stroke-width='1'%20stroke-linejoin='round'%20d='M203%20180%20202%20184%20199%20188%20196%20192%20192%20195%20189%20198%20186%20201%20181%20203%20175%20204%20170%20203%20165%20201%20161%20199%20158%20197%20154%20195%20151%20192%20148%20190%20146%20187%20144%20184%20142%20180%20139%20176%20137%20171%20138%20166%20142%20161%20147%20159%20154%20159%20160%20159%20166%20160%20170%20161%20174%20162%20178%20162%20182%20164%20186%20166%20189%20167%20194%20169%20198%20172%20202%20176Z%20M236%20180%20234%20189%20229%20197%20222%20203%20215%20209%20208%20216%20201%20222%20192%20226%20181%20228%20170%20226%20161%20222%20153%20217%20146%20213%20139%20209%20132%20205%20127%20200%20122%20194%20118%20187%20113%20180%20108%20171%20105%20161%20106%20151%20113%20143%20125%20138%20138%20137%20151%20139%20161%20140%20170%20142%20178%20143%20186%20145%20194%20148%20201%20151%20209%20155%20217%20159%20226%20164%20233%20171Z%20M270%20180%20267%20193%20258%20205%20247%20215%20237%20224%20228%20234%20217%20243%20202%20250%20186%20252%20170%20249%20156%20242%20144%20236%20133%20230%20123%20224%20113%20217%20105%20209%2099%20200%2093%20191%2085%20180%2077%20167%2072%20152%2074%20137%2085%20124%20102%20117%20122%20116%20141%20118%20157%20121%20170%20123%20182%20125%20195%20127%20206%20131%20217%20137%20228%20142%20241%20148%20254%20156%20265%20167Z%20M303%20180%20299%20198%20287%20213%20273%20227%20260%20239%20247%20252%20232%20264%20213%20273%20192%20275%20170%20271%20151%20263%20135%20254%20121%20246%20107%20239%2094%20230%2083%20219%2075%20207%2067%20194%2057%20180%2046%20163%2040%20143%2042%20122%2056%20105%2080%2096%20107%2094%20131%2097%20152%20101%20170%20104%20187%20106%20203%20110%20218%20115%20232%20122%20247%20129%20264%20137%20282%20148%20297%20163Z%20M336%20180%20331%20202%20317%20222%20299%20238%20282%20254%20266%20270%20248%20285%20224%20296%20197%20299%20170%20294%20147%20284%20127%20273%20109%20263%2091%20253%2075%20242%2062%20229%2051%20214%2041%20198%2029%20180%2016%20159%207%20134%2010%20108%2028%2087%2057%2075%2091%2073%20122%2076%20148%2081%20170%2085%20191%2088%20211%2092%20230%2099%20248%20108%20267%20117%20288%20127%20310%20140%20328%20158Z%20M369%20180%20363%20207%20346%20230%20325%20250%20304%20268%20285%20288%20263%20306%20235%20319%20202%20323%20170%20317%20142%20305%20118%20291%2097%20279%2076%20268%2056%20255%2040%20239%2027%20221%2015%20201%200%20180%20-15%20154%20-26%20124%20-22%2093%20-1%2068%2035%2054%2075%2051%20112%2056%20143%2061%20170%2066%20195%2069%20219%2075%20242%2083%20263%2093%20286%20104%20312%20116%20338%20132%20360%20154Z%20M498%20230%20496%20234%20494%20237%20490%20239%20486%20241%20482%20241%20479%20242%20476%20244%20474%20246%20470%20249%20465%20251%20460%20251%20455%20250%20451%20248%20448%20244%20445%20241%20444%20237%20444%20234%20445%20230%20447%20227%20450%20224%20452%20222%20453%20219%20455%20216%20458%20213%20462%20212%20466%20212%20470%20212%20474%20213%20478%20213%20483%20213%20488%20213%20492%20215%20495%20219%20497%20222%20498%20226Z%20M525%20230%20523%20237%20518%20244%20511%20248%20502%20251%20494%20252%20488%20254%20483%20257%20477%20263%20470%20268%20460%20272%20450%20273%20440%20270%20432%20265%20426%20259%20421%20252%20418%20245%20417%20237%20420%20230%20425%20224%20430%20218%20433%20213%20436%20208%20440%20202%20446%20197%20453%20194%20462%20194%20470%20194%20478%20195%20486%20195%20495%20195%20505%20197%20514%20201%20521%20207%20524%20215%20526%20222Z%20M553%20230%20549%20241%20542%20251%20531%20258%20518%20262%20506%20263%20496%20266%20489%20271%20481%20279%20470%20287%20456%20293%20440%20294%20426%20290%20414%20283%20404%20273%20396%20263%20392%20252%20391%20241%20395%20230%20402%20221%20409%20213%20415%20205%20419%20197%20425%20188%20433%20180%20445%20176%20458%20175%20470%20177%20482%20178%20494%20178%20508%20178%20523%20180%20537%20186%20546%20196%20552%20207%20553%20218Z%20M580%20230%20576%20245%20566%20257%20551%20267%20534%20272%20518%20275%20505%20278%20495%20284%20485%20295%20470%20307%20451%20314%20430%20316%20411%20310%20395%20300%20382%20288%20372%20274%20366%20260%20365%20245%20370%20230%20379%20218%20389%20207%20397%20197%20403%20186%20410%20174%20421%20164%20437%20158%20454%20157%20470%20159%20486%20161%20502%20161%20521%20161%20541%20164%20559%20172%20572%20184%20579%20199%20581%20215Z%20M608%20230%20602%20248%20590%20264%20572%20276%20550%20283%20530%20286%20514%20290%20502%20298%20488%20311%20470%20326%20446%20336%20420%20337%20396%20330%20376%20318%20360%20302%20347%20285%20339%20267%20339%20248%20345%20230%20357%20214%20369%20201%20378%20189%20386%20175%20395%20160%20409%20147%20428%20140%20449%20139%20470%20141%20490%20143%20510%20144%20534%20144%20559%20147%20581%20157%20597%20173%20606%20191%20609%20211Z%20M635%20230%20628%20252%20614%20271%20592%20285%20566%20293%20542%20297%20523%20302%20508%20312%20492%20328%20470%20345%20441%20357%20410%20358%20381%20350%20357%20335%20338%20317%20323%20297%20313%20275%20312%20252%20320%20230%20334%20211%20349%20195%20360%20180%20369%20164%20380%20146%20397%20131%20420%20122%20445%20121%20470%20123%20493%20126%20518%20126%20546%20126%20576%20131%20603%20143%20623%20161%20633%20184%20637%20207Z%20M322%20500%20322%20503%20322%20506%20320%20509%20318%20512%20316%20515%20313%20517%20309%20520%20305%20522%20300%20523%20295%20523%20290%20521%20286%20519%20282%20517%20278%20514%20274%20512%20271%20508%20270%20504%20272%20500%20275%20497%20278%20494%20281%20492%20284%20489%20286%20487%20288%20484%20292%20482%20296%20480%20300%20479%20305%20477%20311%20476%20317%20477%20322%20479%20325%20484%20326%20488%20324%20493%20323%20497Z%20M344%20500%20344%20506%20343%20512%20341%20518%20337%20524%20331%20529%20325%20534%20318%20539%20310%20544%20300%20547%20290%20546%20280%20543%20272%20538%20265%20533%20257%20528%20249%20523%20243%20516%20241%20508%20243%20500%20250%20493%20257%20488%20263%20483%20267%20479%20272%20474%20277%20469%20283%20464%20291%20461%20300%20458%20310%20454%20322%20453%20334%20454%20344%20459%20350%20467%20351%20477%20349%20486%20346%20494Z%20M367%20500%20366%20509%20365%20519%20361%20528%20355%20536%20347%20544%20338%20551%20328%20559%20315%20566%20300%20570%20284%20569%20270%20564%20258%20557%20247%20550%20235%20543%20223%20535%20214%20524%20211%20512%20215%20500%20224%20490%20235%20481%20244%20475%20251%20468%20257%20460%20265%20453%20275%20447%20287%20441%20300%20436%20315%20432%20333%20429%20351%20430%20367%20438%20375%20451%20377%20465%20373%20479%20369%20490Z%20M389%20500%20388%20512%20387%20525%20382%20537%20373%20548%20362%20558%20350%20568%20337%20579%20320%20588%20300%20593%20279%20592%20260%20585%20244%20576%20229%20566%20214%20557%20198%20546%20186%20533%20182%20516%20187%20500%20199%20486%20213%20475%20225%20466%20235%20457%20243%20447%20254%20437%20267%20429%20282%20422%20300%20415%20321%20409%20344%20405%20368%20407%20389%20417%20400%20434%20402%20454%20398%20472%20392%20487Z%20M411%20500%20410%20515%20408%20531%20402%20546%20392%20560%20378%20573%20363%20586%20346%20599%20325%20610%20300%20616%20274%20615%20250%20606%20230%20595%20211%20583%20192%20571%20172%20558%20157%20541%20152%20520%20159%20500%20174%20483%20192%20469%20207%20458%20218%20446%20229%20434%20242%20422%20259%20411%20278%20402%20300%20394%20326%20386%20355%20381%20386%20384%20411%20397%20425%20418%20428%20442%20422%20465%20415%20484Z%20M433%20500%20432%20518%20430%20537%20423%20555%20410%20572%20394%20587%20376%20603%20355%20618%20330%20632%20300%20640%20269%20638%20241%20628%20216%20614%20194%20599%20170%20585%20147%20569%20129%20549%20122%20525%20130%20500%20149%20479%20170%20463%20188%20449%20202%20436%20215%20421%20231%20406%20250%20393%20274%20383%20300%20373%20331%20363%20366%20358%20403%20361%20433%20376%20451%20401%20453%20431%20446%20458%20438%20481Z'/%3E%3C/svg%3E")}

/* Trocha66 · eventos. Mismo lenguaje visual del tema: tinta oscura, hueso, óxido; Barlow Condensed + DM Sans. */
:root{--ink:#11130f;--bone:#e8dbca;--cream:#f1e9dc;--rust:#ce6842;--rust-dark:#a85137;--muted:#9d9b8f;--line:rgba(232,219,202,.24)}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;min-height:100svh;background:var(--ink);color:var(--bone);font-family:'DM Sans',system-ui,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
h1,h2,p{margin:0}
a{color:inherit}
:focus-visible{outline:3px solid var(--rust);outline-offset:3px}
::selection{background:var(--rust);color:#fff}
.sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* ---------- página ---------- */
.ev{position:relative;isolation:isolate;min-height:100svh;display:grid;align-items:center;padding:clamp(28px,4vw,64px) clamp(18px,5vw,84px);overflow:hidden}
.ev__bg{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:50% 60%;filter:saturate(.9)}
.ev::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,12,9,.94) 0%,rgba(10,12,9,.78) 48%,rgba(10,12,9,.5) 100%),linear-gradient(0deg,rgba(10,12,9,.7),transparent 45%)}
.ev::after{content:'';position:absolute;inset:0;z-index:-1;background-image:var(--t66-topo-img);background-size:760px 760px;opacity:.16;mix-blend-mode:soft-light;pointer-events:none}
.ev__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);align-items:center;gap:clamp(32px,6vw,110px);width:100%;max-width:1380px;margin-inline:auto}
.ev__brand{min-width:0}
.ev__logo{width:min(100%,clamp(280px,38vw,560px));margin-block-end:clamp(26px,3vw,44px);filter:drop-shadow(0 8px 40px rgba(0,0,0,.5))}
.ev__eyebrow{display:flex;align-items:center;gap:12px;font-size:11px;font-weight:800;letter-spacing:.24em;text-transform:uppercase;color:#f1c7a8}
.ev__eyebrow::before{content:'';width:27px;height:1px;background:var(--rust)}
.ev__title{margin-block:clamp(14px,1.6vw,22px) clamp(14px,1.6vw,22px);font-family:'Barlow Condensed',Impact,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:-.035em;line-height:.84;font-size:clamp(48px,6.4vw,104px)}
.ev__title span{display:block;color:var(--rust)}
.ev__lead{max-width:44ch;font-size:clamp(16px,1.3vw,19px);color:#d9cdbb}
.ev__facts{display:flex;flex-wrap:wrap;gap:10px 28px;margin:clamp(24px,2.8vw,40px) 0 0;padding:clamp(14px,1.6vw,20px) 0 0;list-style:none;border-block-start:1px solid var(--line)}
.ev__facts li{display:grid;gap:2px}
.ev__facts small{font-size:10px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--rust)}
.ev__facts b{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(22px,2vw,30px);font-weight:800;text-transform:uppercase;line-height:1}

/* ---------- boleto con el formulario ---------- */
.ticket-wrap{min-width:0;filter:drop-shadow(10px 10px 0 rgba(0,0,0,.55))}
.ticket{--notch:15px;--pad:clamp(22px,2.6vw,40px);--notch-y:calc(var(--pad) + 64px);position:relative;background:var(--cream);color:var(--ink);padding:var(--pad);-webkit-mask:radial-gradient(circle var(--notch) at 0 var(--notch-y),#0000 97%,#000) left/51% 100% no-repeat,radial-gradient(circle var(--notch) at 100% var(--notch-y),#0000 97%,#000) right/51% 100% no-repeat;mask:radial-gradient(circle var(--notch) at 0 var(--notch-y),#0000 97%,#000) left/51% 100% no-repeat,radial-gradient(circle var(--notch) at 100% var(--notch-y),#0000 97%,#000) right/51% 100% no-repeat}
.ticket__head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding-block-end:clamp(18px,2vw,26px);margin-block-end:clamp(18px,2vw,26px);border-block-end:2px dashed rgba(17,19,15,.38)}
.ticket__tag{padding:7px 12px;background:var(--ink);color:var(--cream);font-size:10px;font-weight:800;letter-spacing:.2em;text-transform:uppercase}
.ticket__name{font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#6b6c62}
.form{display:grid;gap:clamp(14px,1.6vw,20px)}
.field{display:grid;gap:7px;min-width:0}
.field label{font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.field label i{font-style:normal;font-weight:600;letter-spacing:.04em;text-transform:none;color:#6b6c62}
.field input,.field textarea{width:100%;min-height:52px;padding:0 14px;border:1.5px solid rgba(17,19,15,.5);border-radius:0;background:rgba(255,255,255,.65);color:var(--ink);font:500 16px 'DM Sans',sans-serif;appearance:none;-webkit-appearance:none;transition:background .2s,border-color .2s}
.field textarea{min-height:104px;padding:12px 14px;resize:vertical}
.field input::placeholder,.field textarea::placeholder{color:#7a7b70}
.field input:focus-visible,.field textarea:focus-visible{outline:3px solid var(--rust);outline-offset:2px;background:#fff}
.field input[aria-invalid='true']{border-color:#b3261e;background:#fff5f3}
.field__error{font-size:13px;font-weight:600;color:#b3261e}
.field__error:empty{display:none}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,1.6vw,20px)}
.consent{display:flex;align-items:flex-start;gap:12px;font-size:13px;line-height:1.45;color:#3d4137;cursor:pointer}
.field label.consent{font-size:13px;font-weight:500;letter-spacing:0;text-transform:none;line-height:1.45}
.consent input{position:absolute;opacity:0;width:1px;height:1px}
.consent a{color:var(--rust-dark);text-underline-offset:3px}
.consent b{font-weight:800;color:var(--ink)}
.consent__box{position:relative;flex:none;width:22px;height:22px;margin-block-start:1px;border:1.5px solid var(--ink);background:transparent}
.consent input:checked + .consent__box{background:var(--ink)}
.consent input:checked + .consent__box::after{content:'';position:absolute;inset-block-start:2px;inset-inline-start:6px;width:6px;height:11px;border:solid var(--rust);border-width:0 2.5px 2.5px 0;rotate:45deg}
.consent input:focus-visible + .consent__box{outline:3px solid var(--rust);outline-offset:3px}
.consent input[aria-invalid='true'] + .consent__box{border-color:#b3261e;box-shadow:0 0 0 3px rgba(179,38,30,.25)}
.submit{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:64px;padding:0 clamp(20px,2vw,30px);border:0;background:var(--ink);color:var(--cream);font:800 13px 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background .3s,color .3s}
.submit b{display:inline-block;font-size:26px;transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.submit:hover{background:var(--rust);color:#171711}
.submit:hover b{transform:translate(6px,-6px)}
.submit[disabled]{opacity:.6;cursor:progress}
.form__status{font-size:14px;font-weight:600;color:#b3261e}
.form__status:empty{display:none}
.form__status a{color:var(--rust-dark)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.help{margin-block-start:clamp(22px,2.4vw,34px);font-size:13px;color:var(--muted)}
.help a{color:var(--bone);text-underline-offset:3px}

/* ---------- gracias ---------- */
.thanks{display:grid;gap:clamp(18px,2vw,26px);justify-items:start}
.thanks .ev__logo{margin:0}
.thanks__actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px}
.btn-link{display:inline-flex;align-items:center;gap:14px;min-height:56px;padding:0 28px;background:var(--rust);color:#171711;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;transition:background .25s,transform .25s}
.btn-link:hover{background:#eba079;transform:translateY(-2px)}
.btn-text{font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;border-block-end:1px solid currentColor;padding-block-end:6px}

@media (prefers-reduced-motion:no-preference){
  .ev__logo{animation:rise 1s cubic-bezier(.2,.8,.2,1) both}
  .ev__eyebrow,.ev__title,.ev__lead,.ev__facts{animation:fade .9s .25s ease-out both}
  .ticket-wrap{animation:drop 1s .15s cubic-bezier(.2,.8,.2,1) both}
}
@keyframes rise{from{opacity:0;translate:0 28px}}
@keyframes fade{from{opacity:0;translate:0 16px}}
@keyframes drop{from{opacity:0;translate:0 50px;scale:.97}}
@media (max-width:959px){
  .ev{align-items:start;padding-block-start:clamp(28px,8vw,56px)}
  .ev__grid{grid-template-columns:1fr;gap:clamp(32px,8vw,48px)}
  .ev::before{background:linear-gradient(0deg,rgba(10,12,9,.95),rgba(10,12,9,.7) 55%,rgba(10,12,9,.5))}
  .ev__logo{margin-inline:auto;width:min(100%,380px)}
  .ev__brand{text-align:center}
  .ev__eyebrow{justify-content:center}
  .ev__lead{margin-inline:auto}
  .ev__facts{justify-content:center;text-align:center}
  .ticket-wrap{filter:drop-shadow(7px 7px 0 rgba(0,0,0,.55));margin-inline-end:7px}
  .thanks{justify-items:center;text-align:center}
  .thanks__actions,.thanks__tips{justify-content:center}
}
@media (max-width:560px){
  .row2{grid-template-columns:1fr}
  .ticket__head{flex-wrap:wrap}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* =====================================================================
   Vida: brillo que sigue al cursor, boleto con inclinación, progreso, palomitas, sello y franja.
   Solo transform y opacity; todo se apaga con "reducir movimiento".
   ===================================================================== */
.ev__glow{position:absolute;inset:0 auto auto 0;z-index:-1;width:640px;height:640px;border-radius:50%;background:radial-gradient(circle,rgba(206,104,66,.26),rgba(206,104,66,0) 62%);pointer-events:none;opacity:0;transition:opacity .8s}
.ev:hover .ev__glow{opacity:1}
.ev__bg{transform:scale(1.07)}
.ticket-wrap{transform-style:preserve-3d}
.ticket{overflow:hidden}
.ticket__glare{position:absolute;inset:-30%;z-index:0;pointer-events:none;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.55),rgba(255,255,255,0) 45%);opacity:.5}
.ticket>*:not(.hp):not(.stamp):not(.ticket__glare){position:relative;z-index:1}

/* progreso del boleto */
.progress{display:flex;align-items:center;gap:6px;margin-block-start:calc(clamp(14px,1.6vw,20px) * -.4)}
.progress i{position:relative;flex:1;height:5px;background:rgba(17,19,15,.14);overflow:hidden}
.progress i::after{content:'';position:absolute;inset:0;background:var(--rust);transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.progress i[data-on]::after{transform:none}
.progress span{min-width:3.2em;text-align:end;font-size:11px;font-weight:800;letter-spacing:.1em;font-variant-numeric:tabular-nums;color:#6b6c62}
.form[data-complete] .progress span{color:var(--rust-dark)}

/* palomita al validar un campo */
.field{position:relative}
.field[data-ok]::after{content:'';position:absolute;inset-inline-end:14px;inset-block-end:15px;width:22px;height:22px;border-radius:50%;background:var(--ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ce6842' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12.5 4 4 8-9'/%3E%3C/svg%3E") center/70% no-repeat;pointer-events:none;animation:pop .45s cubic-bezier(.2,1.6,.4,1)}
.field[data-ok] input{padding-inline-end:46px}
@keyframes pop{from{scale:0;opacity:0}}
.field input:focus-visible,.field textarea:focus-visible{box-shadow:0 6px 0 -3px var(--rust)}

/* botón: moto que corre mientras se envía */
.submit{position:relative;overflow:hidden;will-change:transform;transition:background .3s,color .3s,transform .25s cubic-bezier(.2,.8,.2,1)}
.submit__moto{position:absolute;inset-block-end:10px;inset-inline-start:-60px;width:44px;height:28px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;opacity:0}
.form[data-sending] .submit__moto{opacity:1;animation:ride 1s linear infinite}
.form[data-sending] .submit b{opacity:0}
@keyframes ride{to{translate:560px}}
.form[data-complete] .submit{background:var(--rust);color:#171711}
.form[data-complete] .submit b{animation:nudge 1.6s ease-in-out infinite}
@keyframes nudge{50%{transform:translate(4px,-4px)}}

/* sello de confirmación */
.stamp{position:absolute;inset-block-start:50%;inset-inline-start:50%;z-index:3;translate:-50% -50%;rotate:-11deg;padding:6px 24px;border:6px solid var(--rust-dark);color:var(--rust-dark);background:rgba(241,233,220,.92);font:900 clamp(44px,6vw,76px)/1 'Barlow Condensed',Impact,sans-serif;letter-spacing:.03em;text-transform:uppercase;opacity:0;pointer-events:none}
.form[data-sent] .stamp{animation:stamp .6s cubic-bezier(.2,1.4,.4,1) forwards}
@keyframes stamp{0%{opacity:0;scale:2.4}55%{opacity:1;scale:.94}100%{opacity:1;scale:1}}
.form[data-sent]{animation:thud .35s .28s ease-out}
@keyframes thud{0%,100%{translate:0}30%{translate:0 5px}60%{translate:0 -2px}}

/* entrada escalonada de los campos y logo que "respira" */
@media (prefers-reduced-motion:no-preference){
  .ev__logo{animation:rise 1s cubic-bezier(.2,.8,.2,1) both,float 7s 1.2s ease-in-out infinite}
  .ev__facts li{animation:fade .8s both}
  .ev__facts li:nth-child(2){animation-delay:.38s}.ev__facts li:nth-child(3){animation-delay:.5s}
}
@keyframes field-in{from{opacity:0;translate:0 14px}}
@keyframes float{50%{transform:translateY(-6px)}}

/* franja de frases al pie */
.strip{position:absolute;inset:auto 0 0 0;overflow:hidden;border-block-start:1px solid var(--line);background:rgba(10,12,9,.7);pointer-events:none}
.strip__track{display:flex;width:max-content;animation:strip 38s linear infinite}
.strip__track span{flex:none;padding:10px 0;font-family:'Barlow Condensed',Impact,sans-serif;font-weight:700;font-size:20px;letter-spacing:.08em;text-transform:uppercase;color:rgba(232,219,202,.5);white-space:nowrap}
.strip__track b{margin-inline:22px;color:var(--rust)}
@keyframes strip{to{transform:translateX(-50%)}}
.ev{padding-block-end:clamp(64px,7vw,96px)}

/* gracias */
.thanks__tips{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.thanks__tips li{padding:8px 12px;border:1px solid var(--line);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--bone)}
.thanks__tips li:first-child{border-color:var(--rust);color:#f1c7a8}
.thanks__count{display:inline-block;padding:8px 14px;border:1px solid var(--rust);font-size:11px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:#f1c7a8}
.thanks__count:empty{display:none}

@media (hover:none){.ev__glow{display:none}}
@media (prefers-reduced-motion:reduce){
  .ev__glow,.ticket__glare,.submit__moto{display:none}
  .strip__track{animation:none}
  .ev__bg{transform:none}
}

/* =====================================================================
   Inscripción por pasos: pestañas, paneles, piezas de equipo, reglas y navegación.
   Sin JavaScript todos los pasos se ven apilados (las pestañas y los botones de pasos llevan [hidden]).
   ===================================================================== */
.tab[hidden],.btn-back[hidden],.submit[hidden]{display:none}
.form:not([data-js]) .tabs{display:none}
.tabs{display:flex;min-height:64px;margin-block-end:clamp(18px,2vw,26px);border-block-end:2px dashed rgba(17,19,15,.38)}
.tab{position:relative;display:flex;align-items:center;gap:10px;flex:1;min-width:0;padding:0 clamp(8px,1.4vw,18px);border:0;background:transparent;color:inherit;font:inherit;text-align:start;cursor:pointer;transition:background .25s}
.tab + .tab{border-inline-start:1px solid rgba(17,19,15,.16)}
.tab:hover{background:rgba(17,19,15,.05)}
.tab::after{content:'';position:absolute;inset:auto 0 -2px 0;height:4px;background:var(--rust);transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.tab[aria-selected='true']::after{transform:none}
.tab__num{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:800;font-size:26px;line-height:1;color:transparent;-webkit-text-stroke:1.2px rgba(17,19,15,.55)}
.tab[aria-selected='true'] .tab__num{color:var(--rust);-webkit-text-stroke-color:var(--rust)}
.tab__name{min-width:0;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;line-height:1.15}
.tab__tick{display:none;flex:none;margin-inline-start:auto;width:20px;height:20px;border-radius:50%;background:var(--ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ce6842' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12.5 4 4 8-9'/%3E%3C/svg%3E") center/70% no-repeat}
.tab[data-done] .tab__tick{display:block;animation:pop .45s cubic-bezier(.2,1.6,.4,1)}

.stage{min-width:0}
.form[data-js] .stage{min-height:clamp(330px,26vw,400px)}
.step{display:grid;gap:clamp(12px,1.4vw,18px);align-content:start;min-width:0}
.step[hidden]{display:none}
.form:not([data-js]) .step + .step{margin-block-start:28px;padding-block-start:28px;border-block-start:1px dashed rgba(17,19,15,.35)}
.step__title{margin:0;font-family:'Barlow Condensed',Impact,sans-serif;font-weight:800;font-size:clamp(28px,2.6vw,38px);line-height:1;text-transform:uppercase;letter-spacing:-.01em}
.step__title:focus{outline:none}
.step__intro{margin:0;font-size:15px;font-weight:600;line-height:1.45;color:#2c2f27}
.form[data-js] .step:not([hidden]){animation:field-in .45s cubic-bezier(.2,.8,.2,1)}

/* piezas de equipo y de moto */
.gear{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none}
.gear__item{min-width:0}
.gear__label{position:relative;display:flex;align-items:center;gap:12px;min-height:78px;padding:10px 14px;border:1.5px solid rgba(17,19,15,.55);background:rgba(255,255,255,.55);cursor:pointer;transition:background .25s,transform .3s cubic-bezier(.2,.8,.2,1)}
.gear__label:hover{background:#fff;transform:translateY(-2px)}
.gear__item--obl .gear__label{border:2.5px solid var(--ink);background:#fff}
.gear__label input{position:absolute;opacity:0;width:1px;height:1px}
.gear__label input:focus-visible ~ .gear__box{outline:3px solid var(--rust);outline-offset:3px}
.gear__label input[aria-invalid='true'] ~ .gear__box{border-color:#b3261e;box-shadow:0 0 0 3px rgba(179,38,30,.25)}
.gear__box{position:relative;flex:none;order:3;margin-inline-start:auto;width:24px;height:24px;border:2px solid var(--ink);transition:background .25s}
.gear__label input:checked ~ .gear__box{background:var(--ink)}
.gear__label input:checked ~ .gear__box::after{content:'';position:absolute;inset-block-start:2px;inset-inline-start:7px;width:6px;height:12px;border:solid var(--rust);border-width:0 3px 3px 0;rotate:45deg;animation:pop .35s cubic-bezier(.2,1.6,.4,1)}
.gear__icon{flex:none;order:1;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--ink);color:var(--cream);transition:background .25s,color .25s,rotate .5s cubic-bezier(.2,.8,.2,1)}
.gear__label input:checked ~ .gear__icon{background:var(--rust);color:#171711;rotate:-8deg}
.gear__txt{order:2;display:grid;gap:2px;min-width:0}
.gear__txt strong{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(19px,1.7vw,24px);font-weight:800;line-height:1;text-transform:uppercase}
.gear__txt small{font-size:12.5px;line-height:1.3;color:#4a4e43}
.gear__label input:checked ~ .gear__txt strong{text-decoration:line-through;text-decoration-thickness:2px;text-decoration-color:var(--rust)}
.gear__badge{justify-self:start;padding:2px 7px;border:1px solid var(--ink);font-size:9px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.gear__item--obl .gear__badge{background:var(--rust);border-color:var(--rust);color:#171711}
.gear .field__error{margin-block-start:4px}

/* reglas */
.rules{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.rules li{display:flex;gap:14px;padding:14px 16px;border:2px solid var(--ink);background:#fff}
.rules__n{flex:none;font-family:'Barlow Condensed',Impact,sans-serif;font-weight:900;font-size:40px;line-height:.8;color:var(--rust)}
.rules strong{display:block;font-family:'Barlow Condensed',Impact,sans-serif;font-size:21px;font-weight:800;line-height:1;text-transform:uppercase}
.rules p{margin:6px 0 0;font-size:13.5px;line-height:1.45;color:#3d4137}

/* navegación entre pasos */
.nav{display:flex;align-items:stretch;gap:12px;margin-block-start:clamp(4px,.6vw,8px)}
.nav .submit{flex:1}
.btn-back{min-height:64px;padding:0 24px;border:2px solid var(--ink);background:transparent;color:var(--ink);font:800 12px 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background .25s,color .25s}
.btn-back:hover{background:var(--ink);color:var(--cream)}
.form[data-sent] .stage,.form[data-sent] .tabs,.form[data-sent] .nav{opacity:.25;transition:opacity .4s}

@media (prefers-reduced-motion:no-preference){
  .form>.tabs{animation:field-in .6s .3s cubic-bezier(.2,.8,.2,1) both}
  .form>.stage{animation:field-in .6s .42s cubic-bezier(.2,.8,.2,1) both}
  .form>.nav{animation:field-in .6s .55s cubic-bezier(.2,.8,.2,1) both}
}
@media (max-width:700px){
  .gear{grid-template-columns:1fr}
  .tab{flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;padding:0 8px}
  .tab__num{font-size:20px}
  .tab__name{font-size:9px;letter-spacing:.08em}
  .tab__tick{position:absolute;inset-block-start:6px;inset-inline-end:6px;margin:0;width:16px;height:16px}
  .gear__label{min-height:70px}
  .form[data-js] .stage{min-height:0}
}

/* =====================================================================
   Siete pasos cortos: pestañas numeradas, fichas de un toque, campos de detalle, archivo y notas.
   ===================================================================== */
.tabs{min-height:56px}
.tab{justify-content:center;padding:0;min-width:0}
.tab__name{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.tab__num{font-size:24px}
.tab__tick{position:absolute;inset-block-start:7px;inset-inline-end:6px;margin:0;width:16px;height:16px}
:root{--tabs-h:56px}
.ticket{--notch-y:calc(var(--pad) + 56px)}

.step__eyebrow{margin:0;font-size:10px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--rust-dark)}
.step__title{margin-block-start:-6px}

/* grupos de opciones (Sí/No, tallas, sangre, solo/pareja) como fichas */
fieldset.field{margin:0;padding:0;border:0;min-width:0}
.field legend{padding:0;margin-block-end:8px;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{position:relative;display:block;cursor:pointer}
.chip input{position:absolute;opacity:0;width:1px;height:1px}
.chip span{display:inline-grid;place-items:center;min-width:60px;min-height:44px;padding:0 16px;border:1.5px solid rgba(17,19,15,.55);background:rgba(255,255,255,.55);font-size:14px;font-weight:700;transition:background .2s,color .2s,transform .2s cubic-bezier(.2,.8,.2,1)}
.chip:hover span{background:#fff;transform:translateY(-2px)}
.chip input:checked + span{background:var(--ink);border-color:var(--ink);color:var(--cream);box-shadow:inset 0 -3px 0 var(--rust)}
.chip input:focus-visible + span{outline:3px solid var(--rust);outline-offset:2px}
.chip input[aria-invalid='true'] + span{border-color:#b3261e}
.chips--sizes .chip span{min-width:52px;padding:0 10px}
.chips--blood .chip span{min-width:54px;padding:0 10px;font-family:'Barlow Condensed',Impact,sans-serif;font-size:20px;font-weight:800}

/* campos que aparecen solo cuando hacen falta */
.cond{display:grid;gap:7px;padding-inline-start:14px;border-inline-start:3px solid var(--rust)}
.cond[hidden]{display:none}
.form[data-js] .cond:not([hidden]){animation:field-in .35s cubic-bezier(.2,.8,.2,1)}

/* campo con atajo ("Ninguna") */
.inline{display:flex;gap:8px;align-items:stretch}
.inline input{flex:1;min-width:0}
.quick{flex:none;min-height:52px;padding:0 16px;border:1.5px solid var(--ink);background:transparent;color:var(--ink);font:800 11px 'DM Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s}
.quick:hover{background:var(--ink);color:var(--cream)}

/* fecha, archivo y nota */
.field input[type='date']{min-height:52px;font-family:'DM Sans',sans-serif}
.field input.file{padding:10px 12px;min-height:52px;font-size:14px;cursor:pointer}
.field input.file::file-selector-button{margin-inline-end:12px;padding:8px 14px;border:0;background:var(--ink);color:var(--cream);font:800 11px 'DM Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.note{margin:0;padding:12px 14px;border-inline-start:3px solid var(--rust);background:rgba(206,104,66,.1);font-size:13.5px;line-height:1.5;color:#3d4137}
.note b{color:var(--ink)}

@media (max-width:700px){
  .tab__num{font-size:20px}
  .chip span{min-width:52px;min-height:46px}
  .inline{flex-direction:column}
  .quick{min-height:44px;align-self:flex-start}
}

/* =====================================================================
   Portada de eventos (forms.trocha66.com)
   ===================================================================== */
.hub{display:grid;gap:clamp(14px,1.6vw,22px);justify-items:start;max-width:1100px;margin-inline:auto;width:100%}
.hub__brand{width:84px;height:auto;margin-block-end:8px}
.hub__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:clamp(14px,1.8vw,24px);width:100%;margin:clamp(10px,2vw,28px) 0 0;padding:0;list-style:none}
.hub__link{display:grid;gap:14px;height:100%;padding:clamp(18px,2vw,28px);border:1px solid var(--line);background:rgba(10,12,9,.62);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-decoration:none;transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .25s,background .25s}
.hub__link:hover{transform:translateY(-4px);border-color:var(--rust);background:rgba(10,12,9,.82)}
.hub__logo{width:min(100%,260px);height:auto}
.hub__meta{display:grid;gap:2px}
.hub__meta b{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(24px,2.2vw,32px);font-weight:800;text-transform:uppercase;line-height:1}
.hub__meta small{font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.hub__cta{display:inline-flex;align-items:center;justify-content:space-between;min-height:52px;padding:0 18px;background:var(--rust);color:#171711;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.hub__cta i{font-style:normal;font-size:20px;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.hub__link:hover .hub__cta i{transform:translate(4px,-4px)}
.hub__link:focus-visible{outline:3px solid var(--rust);outline-offset:3px}
@media (max-width:959px){.hub{justify-items:center;text-align:center}.hub .ev__eyebrow{justify-content:center}}

/* ---------- intro de marca (una vez por sesión; solo transform y opacity) ---------- */
.intro{position:fixed;inset:0;z-index:100;display:none;place-items:center;align-content:center;gap:clamp(14px,3vh,28px);padding:24px;background:var(--ink,#11130f);text-align:center;opacity:1;transition:opacity .5s ease,transform .5s ease}
.intro-on .intro{display:grid}
.intro--out{opacity:0;transform:scale(1.04);pointer-events:none}
.intro__glow{position:absolute;inset:0;background:radial-gradient(600px 400px at 50% 46%,rgba(206,104,66,.28),transparent 70%);opacity:0}
.intro__logo{position:relative;width:min(78vw,520px);height:auto;opacity:0;transform:scale(.86)}
.intro__text{position:relative;max-width:22ch;margin:0;font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(26px,5.4vw,44px);font-weight:900;line-height:1;text-transform:uppercase;letter-spacing:.01em;color:var(--bone,#e8dbca);text-wrap:balance;opacity:0;transform:translateY(16px)}
.intro__bar{position:relative;width:min(60vw,220px);height:3px;background:rgba(232,219,202,.14);overflow:hidden}
.intro__bar::after{content:'';position:absolute;inset:0;background:var(--rust,#ce6842);transform:scaleX(0);transform-origin:left}
.intro__skip{position:absolute;inset:auto 20px 20px auto;min-height:44px;padding:0 16px;border:1.5px solid rgba(232,219,202,.4);border-radius:10px;background:transparent;color:var(--bone,#e8dbca);font:800 11px/1 'DM Sans',sans-serif;letter-spacing:.16em;text-transform:uppercase;cursor:pointer}
.intro__skip:hover{background:rgba(232,219,202,.12)}
.intro--go .intro__glow{animation:introGlow 2.6s ease-out both}
.intro--go .intro__logo{animation:introLogo .9s cubic-bezier(.2,.8,.2,1) .1s both}
.intro--go .intro__text{animation:introText .7s cubic-bezier(.2,.8,.2,1) .95s both}
.intro--go .intro__bar::after{animation:introBar 2.5s linear both}
@keyframes introLogo{from{opacity:0;transform:scale(.86)}to{opacity:1;transform:scale(1)}}
@keyframes introText{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes introGlow{0%{opacity:0}35%{opacity:1}100%{opacity:.7}}
@keyframes introBar{to{transform:scaleX(1)}}
@media (prefers-reduced-motion:reduce){.intro{display:none!important}}
.intro-on,.intro-on body{overflow:hidden}

/* inscripciones cerradas (ajuste del panel) */
.closed{display:grid;gap:10px;padding:clamp(24px,4vw,40px);border:1.5px solid rgba(232,219,202,.3);border-radius:16px;background:rgba(17,19,15,.85);text-align:center}
.closed h2{margin:0;font-family:"Barlow Condensed",Impact,sans-serif;font-size:clamp(30px,5vw,44px);font-weight:900;line-height:.95;text-transform:uppercase;color:var(--rust,#ce6842)}
.closed p{margin:0}

/* =====================================================================
   Gracias: pase de rodada, cuenta regresiva, qué sigue y lista para alistar
   ===================================================================== */
.ev--thanks{align-items:start}
.thanks-page{display:grid;gap:clamp(36px,5vw,72px);width:100%;max-width:1380px;margin-inline:auto}
.thanks-page .ev__grid{margin:0}
.ev__title .line{display:block;color:inherit}
.ev__title .line--rust{color:var(--rust)}
.thanks__hello{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(24px,2.6vw,36px);font-weight:800;text-transform:uppercase;letter-spacing:.02em;color:var(--cream)}

/* cuenta regresiva */
.countdown{display:grid;gap:8px}
.countdown__label{font-size:11px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:#f1c7a8}
.countdown__cells{display:flex;gap:clamp(8px,1.2vw,14px)}
.countdown__cells span{display:grid;justify-items:center;min-width:clamp(62px,6vw,84px);padding:10px 8px 8px;border:1px solid var(--line);background:rgba(17,19,15,.55)}
.countdown__cells b{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(36px,4.2vw,58px);font-weight:900;line-height:.95;font-variant-numeric:tabular-nums;color:var(--cream)}
.countdown__cells small{font-size:9px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--rust)}
.thanks__actions{align-items:stretch}
.btn-ghost{display:inline-flex;align-items:center;min-height:56px;padding:0 22px;border:1.5px solid var(--bone);background:transparent;color:var(--bone);font:800 12px 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background .25s,color .25s,transform .25s}
.btn-ghost:hover{background:var(--bone);color:var(--ink);transform:translateY(-2px)}
.thanks__actions .btn-text{align-self:center}

/* pase de rodada */
.pass{display:grid;gap:6px;--notch-y:calc(var(--pad) + 22px)}
.pass .ticket__head{margin-block-end:clamp(14px,1.6vw,22px)}
.pass__label{font-size:10px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:#6b6c62}
.pass__who{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(40px,5vw,68px);font-weight:900;line-height:.9;text-transform:uppercase;letter-spacing:-.02em;overflow-wrap:anywhere}
.pass__event{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-block-start:10px;font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(24px,2.4vw,34px);font-weight:800;text-transform:uppercase;color:var(--rust-dark)}
.pass__event span{font-size:.55em;letter-spacing:.14em;color:#6b6c62}
.pass__facts{display:flex;flex-wrap:wrap;gap:8px 32px;margin:clamp(12px,1.4vw,18px) 0;padding-block:clamp(12px,1.4vw,18px);border-block:2px dashed rgba(17,19,15,.38)}
.pass__facts div{display:grid;gap:2px}
.pass__facts dt{font-size:10px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--rust-dark)}
.pass__facts dd{margin:0;font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(20px,1.8vw,26px);font-weight:800;text-transform:uppercase;line-height:1}
.pass__code{display:grid;gap:6px}
.pass__code i{display:block;height:44px;background:repeating-linear-gradient(90deg,var(--ink) 0 2px,transparent 2px 5px,var(--ink) 5px 6px,transparent 6px 8px,var(--ink) 8px 11px,transparent 11px 13px)}
.pass__code span{font-size:9px;font-weight:800;letter-spacing:.3em;text-transform:uppercase;color:#6b6c62}

/* qué sigue + lista */
.next{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:clamp(20px,3vw,48px);padding-block-start:clamp(24px,3vw,40px);border-block-start:1px solid var(--line)}
.next h2{margin-block-end:16px;font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(30px,3vw,42px);font-weight:900;line-height:.95;text-transform:uppercase}
.steps{display:grid;gap:0;margin:0;padding:0;list-style:none;counter-reset:s}
.steps li{position:relative;display:grid;grid-template-columns:36px 1fr;gap:14px;padding-block-end:20px}
.steps li:not(:last-child)::before{content:'';position:absolute;inset:36px auto 0 17px;width:2px;background:var(--line)}
.steps b{display:grid;place-items:center;width:36px;height:36px;border:1.5px solid var(--rust);border-radius:50%;font-size:14px;font-weight:800;color:#f1c7a8}
.steps .is-done b{background:var(--rust);color:#171711}
.steps strong{display:block;font-size:16px}
.steps span{display:block;font-size:14px;color:#cfc3b0}
.pack{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.pack label{display:flex;align-items:center;gap:14px;min-height:52px;padding:10px 14px;border:1px solid var(--line);background:rgba(17,19,15,.5);font-weight:700;cursor:pointer;transition:border-color .2s,background .2s}
.pack label:hover{border-color:rgba(232,219,202,.5)}
.pack input{position:absolute;opacity:0;width:1px;height:1px}
.pack__box{position:relative;flex:none;width:24px;height:24px;border:1.5px solid var(--bone)}
.pack__box::after{content:'';position:absolute;inset:3px 8px 6px 8px;border:solid var(--ink);border-width:0 3px 3px 0;rotate:45deg;scale:0;transition:scale .25s cubic-bezier(.2,1.6,.4,1)}
.pack input:checked + .pack__box{background:var(--rust);border-color:var(--rust)}
.pack input:checked + .pack__box::after{scale:1}
.pack label:has(input:checked){border-color:var(--rust);background:rgba(206,104,66,.14)}
.pack input:focus-visible + .pack__box{outline:3px solid var(--rust);outline-offset:3px}
.pack__count{margin-block-start:12px;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#f1c7a8}

/* entrada épica: título que sube línea por línea, pase que "cae" con un golpe de luz */
@media (prefers-reduced-motion:no-preference){
  .is-in .ev__title .line{animation:line .8s cubic-bezier(.2,.9,.2,1) both}
  .is-in .ev__title .line--rust{animation-delay:.18s}
  .is-in .thanks__hello,.is-in .countdown,.is-in .thanks__actions{animation:fade .9s .55s ease-out both}
  .is-in .ticket-wrap{animation:slam 1.1s .35s cubic-bezier(.2,1.2,.3,1) both}
  .is-in .pass::after{content:'';position:absolute;inset:0;z-index:2;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.85) 50%,transparent 65%);transform:translateX(-120%);animation:sheen 1.2s 1.1s ease-out forwards;pointer-events:none}
  .is-in .next{animation:fade 1s 1.2s ease-out both}
  .is-in .steps li{animation:fade .6s ease-out both}
  .is-in .steps li:nth-child(1){animation-delay:1.3s}.is-in .steps li:nth-child(2){animation-delay:1.45s}.is-in .steps li:nth-child(3){animation-delay:1.6s}.is-in .steps li:nth-child(4){animation-delay:1.75s}
}
@keyframes line{from{opacity:0;translate:0 60%;clip-path:inset(0 0 100% 0)}to{opacity:1;clip-path:inset(0)}}
@keyframes slam{0%{opacity:0;translate:0 -80px;scale:1.18;rotate:-4deg}60%{opacity:1;translate:0 6px;scale:.98;rotate:.6deg}100%{opacity:1;translate:0 0;scale:1;rotate:0deg}}
@keyframes sheen{to{transform:translateX(120%)}}
@media (max-width:959px){
  .countdown{justify-items:center}
  .thanks__actions .btn-link,.thanks__actions .btn-ghost{flex:1 1 220px;justify-content:center}
}

/* indicador para bajar */
.scroll-cue{position:fixed;inset:auto auto 22px 50%;z-index:20;translate:-50% 0;display:grid;justify-items:center;gap:6px;padding:10px 18px;border:1px solid var(--line);border-radius:99px;background:rgba(17,19,15,.82);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--bone);font:800 10px 'DM Sans',sans-serif;letter-spacing:.22em;text-transform:uppercase;cursor:pointer;opacity:0;animation:cueIn .6s 2.6s ease-out forwards;transition:opacity .3s,transform .3s}
.scroll-cue i{width:10px;height:10px;border:solid var(--rust);border-width:0 2px 2px 0;rotate:45deg;animation:cueBob 1.4s ease-in-out infinite}
.scroll-cue:hover{border-color:var(--rust)}
.scroll-cue.is-gone{animation:none;opacity:0;transform:translateY(12px);pointer-events:none}
@keyframes cueIn{to{opacity:1}}
@keyframes cueBob{50%{translate:0 5px}}
@media (prefers-reduced-motion:reduce){.scroll-cue{animation:none;opacity:1}.scroll-cue i{animation:none}}

/* =====================================================================
   Portada: selector de eventos (pósters)
   ===================================================================== */
.hubx{position:relative;isolation:isolate;min-height:100svh;display:grid;align-items:center;padding:clamp(28px,4vw,64px) clamp(18px,5vw,84px) clamp(70px,8vw,110px);overflow:hidden;background:var(--ink)}
.hubx::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,12,9,.94) 0%,rgba(10,12,9,.7) 50%,rgba(10,12,9,.45) 100%),linear-gradient(0deg,rgba(10,12,9,.75),transparent 50%)}
.hubx::after{content:'';position:absolute;inset:0;z-index:-1;background-image:var(--t66-topo-img);background-size:760px 760px;opacity:.16;mix-blend-mode:soft-light;pointer-events:none}
.hubx__bgs{position:absolute;inset:0;z-index:-2}
.hubx__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 60%;opacity:0;transform:scale(1.06);transition:opacity 1s ease,transform 8s ease-out;filter:saturate(.9)}
.hubx__bg.is-on{opacity:1;transform:scale(1.0)}
.hubx__wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(28px,5vw,90px);width:100%;max-width:1380px;margin-inline:auto}
.hubx__head{display:grid;gap:clamp(12px,1.4vw,20px);justify-items:start}
.hubx__brand{width:64px;height:auto;margin-block-end:6px}
.hubx .ev__title .line{display:block}
.hubx .ev__title .line--rust{color:var(--rust)}
.hubx__rail{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:clamp(14px,1.8vw,26px);margin:0;padding:0;list-style:none}
.hubx__item{min-width:0}

.poster{--px:0;--py:0;position:relative;isolation:isolate;display:grid;align-content:end;gap:10px;aspect-ratio:3/4;padding:clamp(16px,1.8vw,24px);overflow:hidden;border:1px solid var(--line);border-radius:6px;color:var(--cream);text-decoration:none;background:#10120d;box-shadow:0 20px 50px rgba(0,0,0,.45);transition:border-color .3s,box-shadow .4s,transform .25s ease-out;will-change:transform}
.poster:hover,.poster:focus-visible{border-color:var(--rust);box-shadow:0 30px 90px rgba(206,104,66,.35),0 20px 50px rgba(0,0,0,.5)}
.poster__img{position:absolute;inset:-7%;z-index:-3;width:114%;max-width:none;height:114%;object-fit:cover;object-position:50% 60%;translate:calc(var(--px) * -16px) calc(var(--py) * -12px);transition:scale .9s cubic-bezier(.2,.8,.2,1),filter .5s;filter:saturate(.85) brightness(.8)}
.poster:hover .poster__img{scale:1.06;filter:saturate(1.05) brightness(.95)}
.poster__shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(0deg,rgba(10,12,9,.96) 0%,rgba(10,12,9,.55) 42%,rgba(10,12,9,.2) 70%,rgba(10,12,9,.55) 100%)}
.poster__tag{position:absolute;inset:14px auto auto 14px;display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:99px;background:rgba(17,19,15,.7);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:9.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.poster__tag i{width:8px;height:8px;border-radius:50%;background:#7fbf7a;box-shadow:0 0 0 0 rgba(127,191,122,.6);animation:live 1.8s ease-out infinite}
.poster__logo{position:absolute;inset:clamp(44px,6vw,64px) 8% auto;width:84%;max-width:none;height:auto;filter:drop-shadow(0 8px 30px rgba(0,0,0,.6));translate:calc(var(--px) * 8px) calc(var(--py) * 6px);transition:scale .6s cubic-bezier(.2,.8,.2,1)}
.poster:hover .poster__logo{scale:1.05}
.poster__meta{display:grid;gap:3px}
.poster__meta b{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(28px,2.8vw,40px);font-weight:900;line-height:.92;text-transform:uppercase;letter-spacing:-.01em}
.poster__meta small{font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#d9cdbb}
.poster__count{justify-self:start;margin-block-start:6px;padding:4px 10px;border:1px solid var(--rust);font-size:10px;font-style:normal;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#f1c7a8}
.poster__count:empty{display:none}
.poster__cta{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:0 18px;background:var(--rust);color:#171711;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;transition:background .25s}
.poster__cta i{font-style:normal;font-size:20px;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.poster:hover .poster__cta{background:#eba079}
.poster:hover .poster__cta i{transform:translate(5px,-5px)}
.poster__cta--ghost{background:transparent;border:1.5px solid var(--bone);color:var(--bone)}
.poster:hover .poster__cta--ghost{background:var(--bone);color:var(--ink)}
.poster__glare{position:absolute;inset:-30%;z-index:-1;pointer-events:none;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.22),rgba(255,255,255,0) 45%);opacity:0;translate:calc(var(--px) * 38%) calc(var(--py) * 38%);transition:opacity .4s}
.poster:hover .poster__glare{opacity:1}
.poster--next{border-style:dashed;background:rgba(17,19,15,.6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.poster__soon{position:absolute;inset:clamp(40px,5vw,60px) 0 auto;display:grid;place-items:center;font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(120px,14vw,200px);font-weight:900;line-height:1;color:transparent;-webkit-text-stroke:2px rgba(232,219,202,.28)}

@keyframes live{70%{box-shadow:0 0 0 9px rgba(127,191,122,0)}100%{box-shadow:0 0 0 0 rgba(127,191,122,0)}}
@media (prefers-reduced-motion:no-preference){
  .hubx .ev__brand,.hubx__brand{animation:rise .9s cubic-bezier(.2,.8,.2,1) both}
  .hubx .ev__eyebrow,.hubx .ev__lead{animation:fade .9s .3s ease-out both}
  .hubx .ev__title .line{animation:line .8s .15s cubic-bezier(.2,.9,.2,1) both}
  .hubx .ev__title .line--rust{animation-delay:.32s}
  .hubx__item{animation:posterIn .9s calc(.35s + var(--i) * .14s) cubic-bezier(.2,1,.3,1) both}
}
@keyframes posterIn{from{opacity:0;translate:0 70px;scale:.94}}
@media (max-width:959px){
  .hubx{align-items:start}
  .hubx__wrap{grid-template-columns:1fr;gap:clamp(24px,6vw,40px)}
  .hubx__head{justify-items:center;text-align:center}
  .hubx .ev__eyebrow{justify-content:center}
  .hubx::before{background:linear-gradient(0deg,rgba(10,12,9,.95),rgba(10,12,9,.7) 55%,rgba(10,12,9,.5))}
  .hubx__rail{grid-template-columns:minmax(0,min(100%,380px));justify-content:center}
}
@media (prefers-reduced-motion:reduce){.poster__tag i{animation:none}.hubx__bg{transition:none}}

/* aviso bajo la descripción (event.json > aviso) */
.ev__notice{display:flex;align-items:flex-start;gap:12px;max-width:44ch;margin-block-start:clamp(14px,1.6vw,20px);padding:12px 16px;border:1px solid rgba(206,104,66,.55);border-inline-start:4px solid var(--rust);background:rgba(206,104,66,.12);font-size:15px;line-height:1.4;color:var(--cream)}
.ev__notice>span:first-child{display:grid;place-items:center;flex:none;width:22px;height:22px;margin-block-start:1px;border-radius:50%;background:var(--rust);color:#171711;font-size:13px;font-weight:900}
.ev__notice b{color:#f1c7a8}
@media (max-width:959px){.ev__notice{margin-inline:auto;text-align:start}}
