.registro{background:#101118;color:#fff;padding:clamp(64px,8vw,116px) 0}
.registro-layout{display:grid;gap:clamp(36px,6vw,96px);align-items:start}
.registro-intro .tag{color:#9caeff}
.registro-intro h2{font-size:clamp(2.8rem,6vw,6.3rem);margin:18px 0 24px;max-width:8em}
.registro-intro h2 .de,.registro-success h3 .de{font-weight:250}
.registro-intro p{max-width:31rem;color:#c5c8d3;font-size:clamp(1rem,1.4vw,1.2rem)}
.registro-intro img{width:100%;max-height:470px;object-fit:cover;object-position:50% 38%;margin-top:clamp(32px,4vw,56px)}
.registro-panel{background:#fff;color:#101118;padding:clamp(22px,3.5vw,48px)}
.registro fieldset{border:0;min-width:0}
.registro fieldset+fieldset{margin-top:clamp(32px,4vw,48px)}
.registro legend{display:block;width:100%;font-family:var(--display);font-variation-settings:"wdth" 110;font-weight:800;text-transform:uppercase;font-size:clamp(1.18rem,2vw,1.65rem);line-height:1.1;margin-bottom:18px}
.registro legend span{color:var(--blue);font-size:.72em;margin-right:14px;font-variant-numeric:tabular-nums}
.choice-grid{display:grid;gap:8px}
.choice{position:relative;display:block;cursor:pointer;min-width:0}
.choice input{position:absolute;width:100%;height:100%;opacity:0;cursor:pointer;margin:0}
.choice>span{display:flex;flex-direction:column;gap:5px;border:1px solid #d5d7df;min-height:82px;padding:16px;transition:border-color .15s,background .15s,box-shadow .15s}
.choice b{font-family:var(--display);font-variation-settings:"wdth" 115;font-weight:800;text-transform:uppercase;line-height:1.1;font-size:1.07rem}
.choice small{color:#626575;font-size:.79rem;line-height:1.3}
.choice input:checked+span{border-color:var(--blue);background:#f0f2ff;box-shadow:inset 0 0 0 1px var(--blue)}
.choice input:focus-visible+span{outline:3px solid var(--blue);outline-offset:3px}
.choice:hover>span{border-color:var(--blue)}
.choice.unavailable{cursor:not-allowed}
.choice.unavailable>span{color:#858795;background:#f1f1f4;border-color:#e5e5e8}
.package>span{min-height:244px;padding:20px}
.package b{font-size:clamp(1.45rem,2vw,2rem)}
.package small{display:block;margin:4px 0 12px;font-weight:700;color:var(--blue);font-size:.88rem}
.package em{font-style:normal;font-size:.86rem;line-height:1.4;padding:6px 0 6px 18px;position:relative;border-top:1px solid #e4e5eb}
.package em::before{content:"+";position:absolute;left:0;color:var(--red);font-weight:800}
.registro-note,.registro-footnote{font-size:.82rem;color:#666979;margin-top:12px}
.field-grid{display:grid;gap:16px}
.field{display:flex;flex-direction:column;gap:7px;font-size:.84rem;font-weight:700}
.field span{font-weight:400;color:#747786}
.field input{width:100%;border:1px solid #b8bbc6;border-radius:0;background:#fff;color:#101118;font:inherit;font-weight:500;font-size:1rem;padding:12px 13px;min-height:48px}
.field input:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.guardian{background:#f3f4f8;margin-top:20px;padding:18px}
.guardian p{font-size:.86rem;font-weight:700;margin-bottom:14px}
.payment-intro{font-size:.92rem;line-height:1.5;color:#515460;margin-bottom:18px}
.payment-card{background:#161923;color:#fff;border-top:5px solid var(--red);padding:clamp(20px,3vw,30px)}
.payment-card-label{display:block;color:#aeb6cf;font-size:.74rem;letter-spacing:.1em;font-weight:800;text-transform:uppercase}
.payment-price{display:block;font-family:var(--display);font-size:clamp(2.1rem,4vw,3.2rem);font-variation-settings:"wdth" 110;line-height:1.05;margin:10px 0 22px}
.payment-price small{display:block;font-family:var(--body);font-size:.81rem;font-weight:500;color:#bdc2d1;line-height:1.4;margin-top:7px}
.payment-rate{font-size:.82rem;line-height:1.5;color:#bdc2d1;margin:-8px 0 18px}
.payment-rate a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.payment-card dl{margin:0;display:grid;gap:0}
.payment-card dl>div{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid #3b3e4a;padding:13px 0}
.payment-card dt{color:#aeb6cf;font-size:.77rem;text-transform:uppercase;font-weight:800;letter-spacing:.06em}
.payment-card dd{margin:0;text-align:right;font-size:1.02rem;font-weight:800;font-variant-numeric:tabular-nums}
.copy-payment{border:1px solid #71798e;background:transparent;color:#fff;padding:5px 8px;margin-left:8px;font:inherit;font-size:.72rem;font-weight:700;cursor:pointer}
.copy-payment:hover,.copy-payment:focus-visible{background:#fff;color:#161923}
.payment-fields{margin-top:20px}
.field input[type=file]{padding:9px;font-size:.83rem;cursor:pointer}
.field input[type=file]::file-selector-button{border:0;background:#e5e7f0;color:#161923;padding:10px 12px;margin-right:12px;font:inherit;font-weight:800;cursor:pointer}
.consent{display:flex;align-items:flex-start;gap:12px;margin-top:34px;font-size:.84rem;line-height:1.4;cursor:pointer;color:#414451}
.consent input{flex:none;width:20px;height:20px;margin-top:1px;accent-color:var(--blue)}
.consent input:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.registro-submit,.receipt-print{appearance:none;border:0;background:var(--red);color:#fff;font-family:var(--display);font-variation-settings:"wdth" 120;font-size:1.1rem;text-transform:uppercase;font-weight:800;cursor:pointer;padding:18px 22px}
.registro-submit{display:flex;justify-content:space-between;width:100%;margin-top:24px}
.registro-submit:hover,.receipt-print:hover{background:#d1002f}
.registro-submit:disabled{opacity:.65;cursor:wait}
.registro-submit:focus-visible,.receipt-print:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.form-message{margin-top:18px;padding:12px 14px;background:#fff0f1;border-left:3px solid var(--red);color:#971b37;font-size:.9rem}
.trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.registro-success .tag{color:var(--blue)}
.registro-success h3{font-size:clamp(2.3rem,4vw,4.6rem);margin:18px 0 20px}
.registro-success>p{color:#515460;max-width:36rem}
.receipt{display:flex;align-items:center;gap:20px;flex-wrap:wrap;background:#f1f2f7;padding:20px;margin:28px 0}
.receipt img{display:block;width:132px;height:132px}
.receipt>div{display:flex;flex-direction:column;gap:4px}
.receipt small{font-size:.76rem;color:#626575}
.receipt strong{font-family:var(--display);font-variation-settings:"wdth" 110;font-size:1.3rem;letter-spacing:.03em;overflow-wrap:anywhere}
@media(min-width:760px){.choice-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.choice-grid.packages,.field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field.full{grid-column:1/-1}}
@media(min-width:1060px){.registro-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.registro-intro{position:sticky;top:24px}}
@media(max-width:759px){.registro-intro img{display:none}.choice-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.choice-grid.three .choice:last-child{grid-column:1/-1}.package>span{min-height:0}}
@media(max-width:460px){.choice-grid.three{grid-template-columns:1fr}.choice-grid.three .choice:last-child{grid-column:auto}}
@media print{body>*:not(main){display:none!important}main>*:not(.registro){display:none!important}.registro{background:#fff;color:#000;padding:0}.registro-intro,.registro form{display:none!important}.registro-layout{display:block}.registro-panel{padding:0}.registro-success{display:block!important}.receipt{border:1px solid #aaa}}
