:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#203044;background:#f7fbff;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.hero{background:linear-gradient(111deg,#2196f3 0%,#5bb3f9 64%,#d7f0ff 100%);position:relative;overflow:hidden;color:#fff}.hero:after{content:"";position:absolute;width:48rem;height:48rem;border:1px solid #ffffff50;border-radius:50%;right:-16rem;top:-25rem;box-shadow:0 0 0 5rem #ffffff12,0 0 0 10rem #ffffff12;pointer-events:none}.hero-inner{max-width:1100px;margin:auto;padding:22px 30px 76px;position:relative;z-index:1}.brand{display:flex;gap:13px;align-items:center;letter-spacing:.12em;font-size:.85rem;font-weight:850}.brand img{width:65px;height:65px;object-fit:contain}.hero-content{padding:44px 0 10px;max-width:650px}.eyebrow{font-size:.78rem;letter-spacing:.17em;font-weight:850;margin:0 0 14px}.hero-content .eyebrow{color:#ffeb3b}.hero h1{font-size:clamp(2.25rem,5vw,4.25rem);line-height:1.08;letter-spacing:-.05em;margin:0 0 18px}.hero h1 span{color:#ffeb3b}.hero-content>p:last-child{line-height:1.6;font-size:1.1rem;max-width:520px}.main{max-width:920px;padding:0 24px 80px;margin:-42px auto 0;position:relative}.intro{border-radius:18px;background:#fff;padding:26px 34px;box-shadow:0 10px 32px #2196f318;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.blue{color:#2196f3;margin-bottom:6px}.intro h2{font-size:1.65rem;letter-spacing:-.035em;margin:0 0 5px}.intro p:last-child{margin:0;color:#657488}.country{border:1px solid #2196f355;color:#2196f3;background:#f3faff;border-radius:99px;padding:10px 16px;white-space:nowrap;font-weight:700}.card{background:#fff;border-radius:18px;padding:29px 34px 34px;margin:16px 0;border:1px solid #e8f1fa;box-shadow:0 3px 20px #21374e0b}.section-head{display:flex;gap:18px;align-items:center;margin-bottom:25px}.step{flex:none;width:43px;height:43px;background:#e7f5ff;color:#2196f3;border-radius:13px;display:grid;place-items:center;font-weight:900}.section-head h3{font-size:1.2rem;margin:0 0 5px;letter-spacing:-.02em}.section-head p{margin:0;color:#657488;font-size:.9rem}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:21px}.fields .full{grid-column:1/-1}label{font-size:.91rem;font-weight:700;display:block}input:not([type=radio]):not([type=checkbox]):not([type=file]),select,textarea{display:block;width:100%;margin-top:9px;background:#fff;border:1.5px solid #d3e0ec;color:#24364a;border-radius:11px;padding:13px 15px;min-height:48px;outline:none;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:#2196f3!important;box-shadow:0 0 0 3px #2196f328!important}input::placeholder,textarea::placeholder{color:#8796a5}select:disabled{background:#f5f7fa;color:#8c9aaa}label small{display:block;color:#6b7a8d;font-weight:400;margin-top:6px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:14px}.choice{display:flex;align-items:center;gap:12px;min-height:105px;border:1.5px solid #d3e0ec;border-radius:13px;padding:17px;cursor:pointer;transition:background .2s,border-color .2s}.choice:has(input:checked){background:#f2fff2;border-color:#4caf50;box-shadow:0 0 0 2px #4caf5024}.choice input{accent-color:#4caf50;flex:none}.choice-visual{font-size:1.4rem;color:#4caf50}.choice strong,.choice small{display:block}.choice small{font-size:.79rem;line-height:1.45;margin-top:5px;color:#657488;font-weight:400}.reveal{margin-top:20px;background:#f5faff;border-radius:12px;padding:20px}.reveal[hidden]{display:none}.reveal textarea{min-height:104px;resize:vertical}.photo-box{margin-top:9px;border:1.5px dashed #9bbbd4;background:#f7fbff;border-radius:12px;position:relative;min-height:168px;display:grid;place-items:center;overflow:hidden}.photo-box input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.photo-box:focus-within{outline:3px solid #2196f344;outline-offset:2px}.photo-box #photo-placeholder{text-align:center;pointer-events:none}.photo-box #photo-placeholder span{display:block;font-size:2rem;color:#2196f3}.photo-box strong{display:block;color:#2196f3}.photo-box small{display:block;color:#657488;margin-top:5px}.photo-box img{height:168px;width:100%;object-fit:contain;background:#fff}.photo-wrap{font-size:.91rem;font-weight:700}.consent{display:flex;align-items:start;gap:11px;margin-top:23px;color:#42566b;font-size:.87rem;line-height:1.5}.consent input{margin:4px 0 0;accent-color:#4caf50;flex:none}.trap{position:absolute;left:-9999px;visibility:hidden}.security{background:#fff;border:1px solid #e8f1fa;border-radius:15px;margin:18px 0;padding:19px 25px}.security p{margin:0 0 12px;font-weight:700}.security small{color:#657488}.notice{padding:16px;border-radius:10px;margin:16px 0;line-height:1.5}.notice.error{background:#fff4f2;color:#982b26;border:1px solid #f6c8c2}.notice.success{background:#ebf8ee;color:#247033;border:1px solid #acdcb5}#submit{border:0;border-radius:11px;background:#4caf50;color:#fff;font-weight:850;padding:18px 25px;width:100%;display:flex;justify-content:center;align-items:center;gap:12px;font-size:1.05rem;box-shadow:0 5px 12px #4caf5035}#submit:disabled{background:#a1caa3;box-shadow:none;cursor:not-allowed}.footer-note{text-align:center;color:#6d7d8d;font-size:.83rem}footer{padding:22px;text-align:center;background:#fff;color:#62768b;font-size:.82rem}@media(max-width:650px){.hero-inner{padding:16px 20px 72px}.hero-content{padding:26px 0 4px}.hero-content>p:last-child{font-size:.98rem}.brand img{width:49px;height:49px}.brand{font-size:.72rem}.main{padding:0 14px 50px}.intro,.card{padding:23px 19px}.intro{align-items:flex-start}.country{display:none}.fields,.choices{grid-template-columns:1fr}.section-head{gap:13px}.section-head p{font-size:.83rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

/* Diseño actualizado. La lógica y los nombres de los campos no cambian. */
[hidden]{display:none!important}
html,body{max-width:100%}
body{overflow-x:hidden;background:#f6faf9;color:#25313a}
.hero{background:#2196f3 url('banner.webp') center 53%/cover no-repeat;isolation:isolate}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(33,150,243,.97) 0%,rgba(33,150,243,.85) 36%,rgba(33,150,243,.25) 76%,rgba(33,150,243,.06) 100%);z-index:0}
.hero:after{content:"";position:absolute;left:0;right:0;top:auto;bottom:0;height:5px;width:auto;border:0;border-radius:0;box-shadow:none;background:linear-gradient(90deg,#4caf50 0 40%,#ffeb3b 40% 46%,#2196f3 46% 100%)}
.hero-inner{max-width:1120px;min-height:412px;padding:22px 32px 103px}
.brand{display:inline-flex;max-width:100%;font-size:.83rem;line-height:1.3;text-shadow:0 1px 8px #2196f3}
.brand img{width:68px;height:68px;flex:none;filter:drop-shadow(0 6px 16px rgba(33,150,243,.22))}
.hero-content{padding:45px 0 0;max-width:610px}
.hero-eyebrow{display:inline-block;padding:10px 15px;border:1px solid rgba(255,255,255,.72);border-radius:999px;background:rgba(33,150,243,.38);backdrop-filter:blur(6px);letter-spacing:.11em;color:#fff!important}
.hero h1{font-size:clamp(2.45rem,5.5vw,4.5rem);text-wrap:balance;text-shadow:0 2px 18px rgba(33,150,243,.35)}
.hero-content>p:last-child{text-shadow:0 1px 8px rgba(33,150,243,.36)}
.main{max-width:920px;width:min(100% - 36px,920px);padding:0 0 80px;margin:-54px auto 0}
.intro,.card,.security{min-width:0;border:1px solid #e1ecea;box-shadow:0 8px 29px rgba(33,150,243,.06)}
.intro{border-radius:23px;padding:29px 36px;margin-bottom:23px;box-shadow:0 18px 55px rgba(33,150,243,.1),0 3px 8px rgba(76,175,80,.04)}
.intro>div{min-width:0}
.intro h2{font-size:clamp(1.65rem,3vw,2.05rem)}
.country{border-color:#9dd1f9;background:#f6fbff}
.card{position:relative;border-radius:23px;padding:32px 36px 36px;margin:16px 0}
.card:before{content:"";position:absolute;left:35px;right:35px;top:0;height:2px;background:linear-gradient(90deg,#4caf50,rgba(76,175,80,0) 65%)}
.section-head,.section-head>div{min-width:0}
.section-head p{line-height:1.4}
.step{width:46px;height:46px;border:1px solid #b4e4c0;background:#f0faf2;color:#4caf50;border-radius:15px}
.fields{grid-template-columns:repeat(2,minmax(0,1fr))}
.fields>*,label,.photo-wrap,.reveal,.choice>span:last-child{min-width:0}
label{overflow-wrap:anywhere}
input:not([type=radio]):not([type=checkbox]):not([type=file]),select,textarea{max-width:100%;min-width:0;min-height:51px;border-color:#cadcdb;border-radius:12px;box-shadow:0 1px 2px rgba(33,150,243,.035)}
input::placeholder,textarea::placeholder{color:#778a8e;opacity:1}
.choices{grid-template-columns:repeat(2,minmax(0,1fr))}
.choice{min-width:0;min-height:120px;background:#fff;border-color:#d7e5e2;border-radius:16px;align-items:flex-start}
.choice:hover{border-color:#4caf50;box-shadow:0 8px 22px rgba(76,175,80,.09)}
.choice:has(input:checked){background:#f1fbf3}
.choice input{margin-top:5px}
.choice-visual{flex:none}
.reveal{background:#f6fbff;border:1px solid #d7ecfd;border-left:3px solid #2196f3;border-radius:14px}
.photo-box{max-width:100%;border-color:#8bc8f7;border-radius:14px}
.photo-box input{max-width:100%}
.consent{padding-top:23px;border-top:1px solid #e8efed}
.consent span{min-width:0}
.security{overflow-x:auto;border-radius:17px}
.notice{overflow-wrap:anywhere}
#submit{border-radius:13px;min-height:57px;box-shadow:0 10px 23px rgba(76,175,80,.25)}
footer{border-top:1px solid #e1ecea}
@media(max-width:700px){
  .hero-inner{min-height:390px;padding:16px 22px 90px}
  .hero:before{background:linear-gradient(90deg,rgba(33,150,243,.95),rgba(33,150,243,.72) 62%,rgba(33,150,243,.4))}
  .hero-content{padding:38px 0 0}
  .hero h1{font-size:clamp(2.4rem,8vw,3.65rem)}
  .main{width:min(100% - 28px,920px);padding:0 0 55px}
  .intro,.card{padding:25px 24px}
  .fields,.choices{grid-template-columns:minmax(0,1fr)}
  .fields .full{grid-column:auto}
  .choice{min-height:0}
  .card:before{left:24px;right:24px}
}
@media(max-width:420px){
  .hero{background-position:63% center}
  .hero:before{background:linear-gradient(90deg,rgba(33,150,243,.95),rgba(33,150,243,.82))}
  .hero-inner{min-height:398px;padding:14px 18px 82px}
  .brand{gap:9px;font-size:.7rem;letter-spacing:.085em}
  .brand img{width:51px;height:51px}
  .hero-content{padding:35px 0 0}
  .hero-eyebrow{font-size:.64rem;padding:9px 10px;letter-spacing:.07em}
  .hero h1{font-size:clamp(2.15rem,9vw,2.65rem)}
  .hero-content>p:last-child{font-size:.95rem;line-height:1.55}
  .main{width:calc(100% - 24px);margin-top:-45px;padding-bottom:48px}
  .intro,.card{padding:22px 17px;border-radius:19px}
  .card{margin:13px 0}
  .card:before{left:17px;right:17px}
  .section-head{align-items:flex-start;gap:12px;margin-bottom:22px}
  .step{width:40px;height:40px;border-radius:12px;font-size:.85rem}
  .section-head h3{font-size:1.08rem}
  .section-head p{font-size:.82rem}
  .fields{gap:18px}
  .choice{gap:9px;padding:14px 11px}
  .choice-visual{font-size:1.2rem}
  .choice strong{font-size:.86rem}
  .choice small{font-size:.76rem}
  .reveal{padding:15px}
  .security{padding:17px 14px}
  #submit{font-size:.98rem}
}
@media(max-width:330px){
  .brand{font-size:.62rem}
  .hero h1{font-size:2rem}
  .hero-content>p:last-child{font-size:.88rem}
  .main{width:calc(100% - 18px)}
  .intro,.card{padding:19px 13px}
  .card:before{left:13px;right:13px}
  .choice{padding:12px 8px}
  .choice-visual{display:none}
}

/* V3: banner sin recorte en móvil y fecha contenida en iPhone. */
.hero-banner-mobile{display:none}
.hero:before{background:linear-gradient(90deg,rgba(33,150,243,.78) 0%,rgba(33,150,243,.58) 34%,rgba(33,150,243,.14) 75%,transparent 100%)}
.hero-content>p:last-child,.hero h1{text-shadow:0 2px 9px rgba(33,150,243,.62)}
input[type="date"]{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  inline-size:100%!important;
  min-inline-size:0!important;
  max-inline-size:100%!important;
  box-sizing:border-box!important;
  -webkit-appearance:none;
  appearance:none;
  overflow:hidden;
  font-size:16px;
}
input[type="date"]::-webkit-date-and-time-value{min-width:0;max-width:100%;text-align:left}
input[type="date"]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}
input[type="date"]::-webkit-calendar-picker-indicator{flex:none;margin-left:0}
@media(max-width:700px){
  .hero{background:#fff;color:#25313a}
  .hero:before{display:none}
  .hero-inner{padding:0;min-height:0;max-width:none}
  .brand{display:flex;margin:0;padding:15px 22px;color:#2196f3;text-shadow:none}
  .brand img{filter:none}
  .hero-banner-mobile{display:block;width:100%;max-width:100%;height:auto;aspect-ratio:1891/831;object-fit:contain;background:#fff}
  .hero-content{max-width:none;padding:26px 22px 72px;background:#fff}
  .hero-content .hero-eyebrow{color:#2196f3!important;background:#f5fbff;border-color:#9dd1f9;backdrop-filter:none}
  .hero h1{color:#2196f3;text-shadow:none}
  .hero h1 span{color:#4caf50}
  .hero-content>p:last-child{color:#475a5e;text-shadow:none}
  .main{margin-top:-38px}
}
@media(max-width:420px){
  .hero{background:#fff}
  .hero:before{display:none}
  .brand{padding:12px 18px}
  .hero-content{padding:25px 18px 65px}
  .hero h1{font-size:clamp(2.15rem,9vw,2.65rem)}
  .hero-content>p:last-child{color:#475a5e}
  .main{margin-top:-34px}
}
@media(max-width:330px){
  .brand{padding:10px 14px}
  .hero-content{padding:21px 14px 57px}
  .main{margin-top:-28px}
}

