*{margin: 0; padding: 0; outline: 0; border: none; box-sizing: border-box;}
body{font: 400 14px/20px 'Inter',Arial,Helvetica,sans-serif; text-align: center; color: #000; background: #e8e8e8;}
a{text-decoration: none;}
a:hover{}
.clear{clear: both;}
.alerta-mensaje{display: block; margin: 0 0 16px; padding: 14px 20px; background: #fff; color: #222; font-size: 14px; text-align: left; border-radius: 8px; max-width: 380px; border: 2px solid #0ea5e9; box-shadow: 0 2px 8px rgba(0,0,0,.08);}
.alerta-mensaje a{color: #0ea5e9; text-decoration: underline;}
.alerta-mensaje.success{background: #f0470f; color: #fff; border-color: #ffffff50;}
#loader{display: none;}
.animated{visibility: hidden;}
.visible{visibility: visible;}
::selection{background: #f0470f; color: #fff;}
::-moz-selection{background: #f0470f; color: #fff;}
::-webkit-selection{background: #f0470f; color: #fff;}
::placeholder{color: #666;}
::-moz-placeholder{color: #666;}
::-webkit-placeholder{color: #666;}

#header{position: fixed; width: 100%; left: 0; background: #000000; top: 0; padding: 4px 5% 8px; z-index: 99999; display: flex; align-items: center;}
#header.min{padding: 0 5% 4px;}
#header .logo{display: flex; max-width: 70px; margin: 0; transition: max-width 100ms ease-out; flex: 0 0 auto;}
#header.min .logo{max-width: 60px;}
#header .logo h1 img{display: block; width: 100%; height: auto;}
#header .logo h1 span{display: block; width: 0; height: 0; font-size: 0; text-indent: -9999999; overflow: hidden;}
#header .spacer{display: none;}

#menu{display: flex; justify-content: center; align-items: center; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); margin: 0;}
#menu .menu{width: auto; display: flex; list-style: none; justify-content: center; align-items: center; gap: 30px;}
#menu .menu li{display: inline-block; margin: 0;}
#menu .menu li a{position: relative; padding: 5px 0; color: #fff; font: 90%/105% 'Unbounded',sans-serif; white-space: nowrap;}
#menu .menu li a:after{position: absolute; content: ''; left: 50%; transform: translateX(-50%); width: 0; height: 2px; bottom: 0; border-radius: 4px; background: #fff; transition: 200ms ease-out;}
#menu .menu li a:hover{color: #f0470f;}
#menu .menu li a:hover:after{width: 100%; background: #f0470f;}
#menu .redes-menu{position: relative; margin: 50px auto 0; list-style: none; text-align: center; white-space: nowrap;}
#menu .redes-menu li{display: inline-block; margin: 0 20px;}
#menu .redes-menu li a{color: #fff; font-size: 200%; transition: 200ms ease-out;}
#menu .redes-menu li a:hover{color: #e8e8e8;}
#menu_button{display: none; position: absolute; right: 5%; top: 50%; transform: translate(0,-50%); z-index: 999; width: 38px; height: 32px; cursor: pointer;}

#menu_button span{position: absolute; display: block; left: 0; width: 100%; height: 4px; background: #fff; border-radius: 4px; transition: all 300ms ease-out; -moz-transition: all 300ms ease-out; -webkit-transition: all 300ms ease-out;}
#menu_button:hover span{background: #f0470f;}
#menu_button span.top{top: 0;}
#menu_button span.middle{top: 13px;}
#menu_button span.bottom{top: 26px;}
#menu_button.active span{background: #fff;}
#menu_button.active span.top{box-shadow: none; transform: rotate(45deg); width: 110%; top: 50%; margin-top: -2.5px;}
#menu_button.active span.middle{box-shadow: none; left: 200%; opacity: 0;}
#menu_button.active span.bottom{box-shadow: none; transform: rotate(135deg); width: 110%; top: 50%; margin-top: -2.5px;}
#menu_button.active span{box-shadow: -2px 2px #a92e3e;}
.wrap{width: 100%; max-width: 1920px; margin: 0 auto; position: relative; background: #fff; text-align: left;}

#portada{position: relative; width: 100%; height: 90vh; min-height: 900px; overflow: hidden; color: #fff; background: #000; display: flex; align-items: center; padding-top: 80px; box-sizing: border-box;}
.portada-video{position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; pointer-events: none;}
.portada-logo{max-width: 95%; height: auto; display: block;}
#portada .row{position: relative; width: 100%; padding: 0 5% 80px; margin: auto; z-index: 1;}
#portada h2{font: 400%/110% 'Unbounded';}
#portada h3{font: 200%/120% 'Unbounded'; margin: 25px 0 30px;}
#portada .btn{margin-bottom: 64px;}
#portada .row>div:first-child{margin-bottom:30px;}
#portada .row>div:last-child{margin-top:130px;}
#portada p{font: 120%/135% 'Inter';}
.portada-sponsors{position:absolute;bottom:0;left:0;width:100%;display:flex;justify-content:center;align-items:center;gap:50px;padding:60px 5% 50px;z-index:2;background:linear-gradient(transparent 40%,rgba(0,0,0,.7));pointer-events:none;}
.portada-sponsor{height:52px;width:auto;object-fit:contain;opacity:.85;}

.btn{display: inline-block; width: auto; text-align: center; background: #f0470f; padding: 12px 32px; color: #fff; font: 500 100%/105% 'Inter'; border-radius: 24px; border: 2px solid #000000; cursor: pointer; transition: background 200ms ease-out, color 200ms ease-out; box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3), inset 0 2px 0 rgba(255, 255, 255, 0.25), inset 0 -3px 0 rgba(0, 0, 0, 0.25);}
.btn:hover{background: #cc3c0d;}
.btn.btn-light{background: #e8e8e8; color: #000; border: 2px solid #111;}
.btn.btn-light:hover{background: #111; color: #fff;}
.btn-instrucciones{background: #e8e8e8; color: #000; border: 2px solid #111; border-radius: 24px; padding: 12px 36px; margin: 10px auto 50px; font: 500 110%/110% 'Inter',Arial,Helvetica,sans-serif; display: inline-block; text-decoration: none; transition: background 0.2s,color 0.2s; box-shadow: 0 2px 3px rgba(0,0,0,0.3),inset 0 2px 0 rgba(255,255,255,0.25),inset 0 -3px 0 rgba(0,0,0,0.25);}
.btn-instrucciones:hover{background: #111; color: #fff;}

#pasos{background: #000000; padding: 150px 5%; width: 100%; text-align: left; color: #fff;}
#pasos .pasos-label{color: #b6c6e3; font: 500 110%/120% 'Inter'; margin: 0 0 15px;}
#pasos .pasos-title{font: 450%/120% 'Unbounded',sans-serif; color: #fff; margin: 0 0 25px;}
#pasos .pasos-desc{color: #fff; font: 110%/150% 'Inter'; max-width: 500px; margin: 0 0 25px;}
#pasos .pasos-btns{margin-bottom: 50px;}
#pasos .pasos-btns .btn{font-weight: 500; background: #f2f2f2; color: #000000; margin: 0 25px 0 0;}
#pasos .pasos-btns .btn:hover{background: #f0470f; color: #fff;}
#pasos .pasos-faq{font-weight: 500; gap: 8px; color: #fff;}
#pasos .pasos-arrow{font-size: 1.3em;}
#pasos .pasos-list{position: relative;}
#pasos .pasos-item{min-height: 80px; padding: 0 0 100px;}
#pasos .pasos-icon{position: relative; z-index: 1; width: 48px; height: 48px; flex-shrink: 0; margin: 0 25px 0 0; background: #000000;}
#pasos .pasos-item-title{font: 125%/120% 'Unbounded',sans-serif; color: #fff; margin: 0 0 10px;}
#pasos .pasos-item-desc{font: 110%/135% 'Inter';}
#pasos .pasos-line{position: absolute; left: 24px; top: 0px; bottom: 120px; width: 2px; background: #b6c6e3; opacity: 0.2; z-index: 0;}

#home-premios{position: relative; min-height: 600px; width: 100%; padding: 100px 0; overflow: hidden; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center;}
.home-premios-video{position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: .5; object-fit: cover; z-index: 0; pointer-events: none;}
#home-premios .home-premios-content{position: relative; z-index: 1; max-width: 900px; margin: auto; display: flex; flex-direction: column; align-items: center; gap: 30px;}
#home-premios .home-premios-texts{display: flex; flex-direction: column; align-items: center; gap: 15px;}
#home-premios .home-premios-title{font: 300%/120% 'Unbounded',sans-serif; color: #000000;}
#home-premios .home-premios-desc{color: #222; font: 125%/150% 'Inter';}
#home-premios .home-premios-btn{background: #fff; color: #000; font-weight: 500; box-shadow: 0 2px 8px rgba(0,0,0,0.07); box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3), inset 0 2px 0 rgba(255, 255, 255, 0.25), inset 0 -3px 0 rgba(0, 0, 0, 0.25);}
#home-premios .home-premios-btn:hover{background: #111; color: #fff;}
#home-premios .home-premios-stickers{position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; z-index: 1;}
#home-premios .home-premios-sticker{position: absolute; width: 180px; height: 180px; object-fit: contain;}
.home-premios-logo{max-width: 300px; height: auto;}

#entradas{background: #fff; padding: 80px 0 60px 0; width: 100%;}
#entradas .container-fluid{max-width: 1400px; padding-left: 5%; padding-right: 5%;}
#entradas .entradas-label{font: 500 110%/120% 'Inter',Arial,Helvetica,sans-serif; color: #000000; margin-bottom: 15px;}
#entradas .entradas-title{font: 350%/110% 'Unbounded',sans-serif; color: #000000; margin-bottom: 0;}
#entradas .entradas-info{display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 32px;}
#entradas .entradas-desc{font: 110%/150% 'Inter',Arial,Helvetica,sans-serif; color: #000000; padding-top: 50px;}
#entradas .entradas-btns{gap: 18px;}
#entradas .entradas-btn-comprar{background: #f4f4f4; border: 2px solid #111; border-radius: 24px; padding: 12px 36px; font: 500 110%/110% 'Inter',Arial,Helvetica,sans-serif; color: #111; box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3), inset 0 2px 0 rgba(255, 255, 255, 0.25), inset 0 -3px 0 rgba(0, 0, 0, 0.25); transition: all 0.2s;}
#entradas .entradas-btn-comprar:hover{background: #111; color: #fff;}
#entradas .entradas-btn-decidir{font: 500 110%/110% 'Inter',Arial,Helvetica,sans-serif; color: #111; display: inline-flex; align-items: center; gap: 8px; text-decoration: none; transition: color 0.2s;}
#entradas .entradas-btn-decidir:hover{color: #f0470f;}
#entradas .icon-arrow-right:before{content: "\ea3c"; font-family: 'icons'!important; font-size: 120%; vertical-align: middle;}
.entradas-video{background:#000; display: block; max-width: 100%; height: auto; margin: 50px auto 0; border-radius: 20px; object-fit: cover;}
.entradas-video-desktop{display: block;}
.entradas-video-mobile{display: none;}

#footer{position: relative; background: #000000; padding: 100px 5%; width: 100%; overflow: hidden; z-index: 2;}
#footer .container-fluid{position: relative; z-index: 1;}
#footer .footer-logo{width: 90px; height: auto; display: block;}
#footer .footer-logo-menu{gap: 40px;}
#footer .footer-menu{list-style: none; padding: 0; margin: auto; display: flex; align-items: center; gap: 32px;}
#footer .footer-menu li{display: inline-block;}
#footer .footer-menu li a{position: relative; color: #fff; font: 90%/120% 'Unbounded',sans-serif; padding: 0 0; transition: color 0.2s; letter-spacing: 0.01em;}
#footer .footer-menu li a:after{content: ''; position: absolute; left: 50%; transform: translateX(-50%); width: 0; height: 1px; bottom: -4px; border-radius: 4px; background: #fff; transition: 200ms ease-out;}
#footer .footer-menu li a:hover{color: #f0470f;}
#footer .footer-menu li a:hover:after{width: 100%; background: #f0470f;}
#footer .footer-socials{gap: 20px;}
#footer .footer-social span[class^="icon-"]{display: inline-block; font-size: 24px; color: #fff; transition: color 0.2s; vertical-align: middle; line-height: 1;}
#footer .footer-social:hover span[class^="icon-"]{color: #f0470f;}
#footer .footer-divider{border: 0; border-top: 1px solid rgba(255,255,255,0.25); margin: 24px 0 18px 0;}
#footer .footer-copy{color: #fff; font: 98%/120% 'Inter',Arial,Helvetica,sans-serif;}
#footer .footer-links{gap: 24px;}
#footer .footer-links a{color: #fff; font: 98%/120% 'Inter',Arial,Helvetica,sans-serif; text-decoration: underline; transition: color 0.2s;}
#footer .footer-links a:hover{color: #f0470f;}

#registro-hero{position: relative; background: #000; padding: 120px 0 60px 0; text-align: center; min-height: 80vh; overflow: hidden; display: flex; align-items: center;}
#registro-hero .container-fluid{max-width: 900px; position: relative; z-index: 1;}
#registro-hero .registro-hero-title{font: 400%/110% 'Unbounded',sans-serif; color: #fff; margin-bottom: 32px;}
#registro-hero .registro-hero-desc{font: 110%/150% 'Inter',Arial,Helvetica,sans-serif; color: #fff;}
.registro-hero-video{position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; pointer-events: none;}

#registro-form{background: #000000; padding: 100px 5%;}
#registro-form.login{min-height: 80vh; padding: 200px 5% 100px;}
#registro-form .registro-form-label{font: 500 110%/120% 'Inter',Arial,Helvetica,sans-serif; color: #fff; margin-bottom: 18px;}
#registro-form .registro-form-title{font: 250%/110% 'Unbounded',sans-serif; color: #fff; margin-bottom: 18px;}
#registro-form .registro-form-desc{font: 110%/120% 'Inter',Arial,Helvetica,sans-serif; color: #fff; margin-bottom: 50px;}
#registro-form .registro-form-desc a{color: #f0470f; text-decoration: underline;}
#registro-form .registro-form-desc a:hover{text-decoration: none;}
#registro-form .form-label{display: block; font: 500 100%/120% 'Inter',Arial,Helvetica,sans-serif; color: #fff; margin-bottom: 10px;}
#registro-form .form-control, #registro-form .form-select{width: 100%; background: #ffffff10; border: 1px solid #ffffff20; border-radius: 8px; color: #fff; font: 100%/120% 'Inter',Arial,Helvetica,sans-serif; padding: 12px 16px; margin-bottom: 15px; box-shadow: none;}
#registro-form .form-control:focus, #registro-form .form-select:focus{background: #ffffff15; color: #fff; box-shadow: 0 0 0 1px #f0470f;}
#registro-form .form-check{white-space: nowrap;}
#registro-form .form-check-input{background: #181c2e; border: 1px solid #ffffff15; width: 18px; height: 18px; margin: 0 10px 10px 0;}
#registro-form .form-check-input:checked{background: #f0470f; border-color: #f0470f;}
#registro-form .form-check-label{font: 100%/120% 'Inter',Arial,Helvetica,sans-serif; color: #fff;}
#registro-form .form-check-label a{color: #f0470f; text-decoration: underline;}
#registro-form .form-check-label a:hover{text-decoration: none;}
#registro-form .registro-form-btn{background: #f0470f; color: #fff; font: 500 110%/110% 'Inter',Arial,Helvetica,sans-serif; border-radius: 24px; padding: 12px 36px; margin-top: 25px; box-shadow: 0 3px 6px rgba(0,0,0,0.08); border: none; transition: background 0.2s; box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3), inset 0 2px 0 rgba(255, 255, 255, 0.25), inset 0 -3px 0 rgba(0, 0, 0, 0.25);}
#registro-form .registro-form-btn:hover{background: #cc3c0d;}
.registro-form-mt{margin: 15px auto 0;}
#registro-form .registro-form-footer{margin: 100px auto 50px; color: #fff; font: 110%/120% 'Inter',Arial,Helvetica,sans-serif;}

#prode-hero{position: relative; background: #000; color: #fff; padding: 120px 0 60px 0; text-align: center; min-height: 80vh; overflow: hidden; display: flex; align-items: center;}
#prode-hero .container-fluid{max-width: 900px; position: relative; z-index: 1;}
.prode-hero-video{position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; pointer-events: none;}
#prode-hero .prode-hero-label{font: 500 110%/120% 'Inter',Arial,Helvetica,sans-serif; margin-bottom: 18px;}
#prode-hero .prode-hero-title{font: 400%/110% 'Unbounded',sans-serif; margin-bottom: 25px;}
#prode-hero .prode-hero-desc{font: 100%/150% 'Inter',Arial,Helvetica,sans-serif; margin-bottom: 25px;}
#prode-hero .prode-hero-text{font: 110%/150% 'Inter',Arial,Helvetica,sans-serif; max-width: 700px; margin: 0 auto 30px;}
.prode-hero-btn{display: inline-block; background: #ffffff15; color: #fff; border: 1px solid #ffffff40; border-radius: 18px; padding: 8px 24px; font: 500 90%/100% 'Inter',Arial,sans-serif; cursor: pointer; transition: background 0.2s,color 0.2s; backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);}
.prode-hero-btn:hover{background: #ffffff30; color: #fff;}
/* --- FAQL STYLES --- */

.faq-hero{background: #ffffff; padding: 180px 5% 50px;}
.faq-hero .faq-hero-title{font: 350%/110% 'Unbounded', sans-serif; font-weight: 400; color: #000; margin-bottom: 40px;}
.faq-hero .faq-hero-desc{font: 120%/150% 'Inter', sans-serif;}
.faq-section{padding: 0 5%;}
.faq-section .accordion-item{position: relative; border: 1px solid #e4e4e4; border-radius: 8px; margin-bottom: 15px; background: #f9f9f9; padding: 12px 20px; cursor: pointer;}
.faq-section .accordion-icon{position: absolute; top: 20px; right: 20px; display: inline-flex; align-items: center; justify-content: center; pointer-events: none;}
.faq-section .accordion-collapse:not(.show){display: none;}
.faq-section .accordion-collapse.show{display: block;}
.faq-section .accordion-button{color:#000;font: bold 100%/120% 'Inter', sans-serif; text-align: left; border: none; background: transparent; padding:12px 12px 12px 0;}
.faq-section .accordion-body{font: 100%/150% 'Inter', sans-serif; padding: 10px 0;}

.cta-container{padding: 60px 5%;}
.cta-container h2{font: 275%/110% 'Unbounded', sans-serif; margin-bottom: 15px;}
.cta-container p{font: 125%/135% 'Inter', sans-serif; margin-bottom: 25px;}
.cta-container .cta-buttons .btn{background: #f4f4f4; border: 2px solid #111; margin: 0 15px 0 0; border-radius: 24px; padding: 12px 36px; font: 500 110%/110% 'Inter',Arial,Helvetica,sans-serif; color: #111; box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3), inset 0 2px 0 rgba(255, 255, 255, 0.25), inset 0 -3px 0 rgba(0, 0, 0, 0.25); transition: all 0.2s;}
.cta-container .cta-buttons .btn:hover{background: #111; color: #fff;}
.cta-register{background: #fff; text-align: center; padding: 100px 0;}
.cta-register h2{font: 450%/110% 'Unbounded', sans-serif; color: #111; max-width: 900px; margin: 0 auto 50px;}

.prode-slider-wrap{max-width: 700px; margin: 0 auto; position: relative;}
.prode-slider-label{font-weight: 600; text-align: center;}
.prode-swiper{padding: 25px 0 !important; border-radius: 0 !important; transition: border-color 0.2s,border-left-width 0.2s,border-right-width 0.2s; border: none;}
.prode-swiper.show-border-right{border-right: 1px solid #ffffff20; border-left: 0;}
.prode-swiper.show-border-left{border-left: 1px solid #ffffff20; border-right: 0;}
.prode-slide{width: 75% !important; padding: 0 15px !important; font-size: 90%;}
.prode-card{border-radius: 18px; border: 1px solid #ffffff20; color: #fff; padding: 15px; height: 180px; display: flex; flex-direction: column; align-items: center; justify-content: center; box-shadow: 0 2px 16px 0 rgba(0,0,0,0.10); background: transparent;}
.prode-swiper-pagination{bottom: 0 !important;}
.prode-dias{background: #000000; padding: 0 0 40px 0;}
.prode-dias .container-fluid{padding: 50px 5%;}
.prode-dia{margin-bottom: 18px;}
.prode-dia-toggle{width: 100%; background: none; border: none; outline: none; color: #5ec3f7; font: 200%/110% 'Unbounded',sans-serif; text-align: left; padding: 24px 0 12px 24px; position: relative; display: flex; align-items: center; justify-content: space-between; cursor: pointer; transition: color 200ms;}
.prode-dia-toggle.open,
.prode-dia-toggle:focus{border-bottom: 2px solid #ffffff40;}
.prode-dia-arrow{font-size: 120%; color: #fff; transition: transform 200ms;}
.prode-dia-content{background: none; color: #fff; font: 110%/150% 'Inter',Arial,Helvetica,sans-serif; padding: 18px 24px 18px 24px;}
.prode-dia-toggle{border-bottom: 2px solid #ffffff20;}
.prode-dia-select-wrap{display: flex; align-items: center; justify-content: space-between; width: 100%; gap: 18px;}
.prode-dia-select-wrap select{background: transparent !important; color: #fff !important; border: none !important; outline: none !important; appearance: none !important; -webkit-appearance: none !important; -moz-appearance: none !important; padding: 12px 16px; border-radius: 8px; font-size: 200% !important; font-family: 'Unbounded',Arial,sans-serif !important; cursor: pointer;}
.prode-dia-select-wrap.con-label{display: flex; flex-direction: column; align-items: flex-start; gap: 8px;}
.prode-dia-select-wrap .prode-cambiar{flex: 0 0 auto; margin-left: 18px; margin-right: 0;}
.prode-dia-select-wrap .prode-develado-badge{flex: 0 0 auto;}
.prode-dia-list{margin: 0; padding: 0;}
.prode-dia-item{display: flex; align-items: center; justify-content: flex-start; gap: 24px; padding: 18px 0 18px 0; border-bottom: 1px solid #ffffff20;}
.prode-dia-num{min-width: 32px; font-size: 110%; line-height: 120%; color: #fff; font-family: 'Inter',Arial,sans-serif; font-weight: 400; text-align: left;}
.prode-dia-label{display: block; color: #fff; border: 1px solid #ffffff50; margin: 10px 0 0; white-space: nowrap; background: #ffffff10; padding: 8px 16px; border-radius: 16px; font-size: 80%; line-height: 105%; font-family: 'Inter',Arial,sans-serif; font-weight: 400; text-align: left;}
.prode-dia-disclaimer{width: 40%; max-width: 250px; font-size: 85%; line-height: 125%;}
.prode-dia-disclaimer.internacional{width: 60%; max-width: 500px;}
.prode-dia-select-wrap .choices{display: flex !important; width: 100% !important; margin: 0 auto !important;}
.prode-develada-lock{display: flex; align-items: center; gap: 12px; padding: 6px 0;}
.prode-develada-lock .prode-develado-banda{font: 500 200%/120% 'Inter',Arial,sans-serif; font-family: 'Unbounded',sans-serif; font-weight: 400; color: #f0470f;}
.prode-dia-item.develada{background: transparent; border-radius: 0;}
.prode-error-summary{background: #18192b; border: 1px solid #f0470f; border-radius: 12px; padding: 24px 28px; color: #fff; font: 400 90%/145% 'Inter',sans-serif; box-shadow: 0 8px 32px rgba(0,0,0,.4); text-align: left;}
.prode-error-summary strong{font-family: 'Unbounded',sans-serif; font-weight: 600; display: block; margin-bottom: 10px; color: #fff; font-size: 110%;}
.prode-error-summary ul{margin: 6px 0 0 22px; padding: 0; list-style: square;}
.prode-error-summary li{margin-bottom: 8px;}
.prode-error-summary .close-btn{float: right; cursor: pointer; color: #94a3b8; font-size: 22px; opacity: .6; line-height: 1; transition: opacity .15s;}
.prode-error-summary .close-btn:hover{opacity: 1; color: #fff;}
.prode-dia-item.has-error .choices__inner{outline: 2px solid #f0470f !important; outline-offset: 2px; border-radius: 4px;}
.prode-dia-item.has-error .autocomplete-input-group{outline: 2px solid #f0470f; outline-offset: 2px; border-radius: 4px;}
.prode-modal-overlay{position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,.85); z-index: 99999; display: flex; align-items: center; justify-content: center;}
.prode-modal-overlay .prode-error-summary,
.prode-modal-overlay .prode-success-summary{position: relative; max-width: 440px; width: 90%; margin: 0;}
.prode-dia-item.has-error .prode-develada-lock{outline: 2px solid #f0470f; outline-offset: 2px; border-radius: 8px;}
.prode-success-summary{background: #18192b; border: 1px solid #4ade80; border-radius: 12px; padding: 24px 28px; color: #fff; font: 400 90%/145% 'Inter',sans-serif; box-shadow: 0 8px 32px rgba(0,0,0,.4); text-align: left;}
.prode-success-summary strong{font-family: 'Unbounded',sans-serif; font-weight: 600; display: block; margin-bottom: 8px; color: #4ade80; font-size: 110%;}
.prode-success-summary .close-btn{float: right; cursor: pointer; color: #94a3b8; font-size: 22px; opacity: .6; line-height: 1; transition: opacity .15s;}
.prode-success-summary .close-btn:hover{opacity: 1; color: #fff;}
.prode-error-msg{color: #c00; font: 500 40%/120% 'Inter', Arial, sans-serif; margin-top: 15px; text-transform: none;}
.prode-dia-select-wrap .choices__inner{width: 100% !important; background: transparent !important; color: #fff !important; font-size: 200% !important; font-family: 'Unbounded', Arial, sans-serif !important; border: none !important; outline: none !important; letter-spacing: 0 !important;}
.prode-dia-select-wrap .choices__list--dropdown{background: #fff; color: #18192b; border: 1px solid #23243a; font-size: 100%; font-family: 'Inter',Arial,sans-serif;}
.prode-dia-select-wrap .choices::after{border-color: #fff transparent transparent !important;}
.prode-dia-select-wrap .choices.is-open::after{transform: rotate(180deg) !important;}
.prode-dia-select-wrap .choices__placeholder{text-transform: none; color: #FFFFFF50;}
.choices-ajax-dots-loader{display: inline-flex; align-items: center; height: 18px; gap: 3px;}
.choices-ajax-dots-loader .dot{width: 6px; height: 6px; border-radius: 50%; background: #ffffff; opacity: 0.7; animation: choices-dots-bounce 1s infinite both; display: inline-block;}
.choices-ajax-dots-loader .dot:nth-child(2){animation-delay: 0.2s;}
.choices-ajax-dots-loader .dot:nth-child(3){animation-delay: 0.4s;}
@keyframes choices-dots-bounce {
0%, 80%, 100%{transform:scale(0.7);opacity:0.7;}
40%{transform:scale(1.2);opacity:1;}
}
.choices .choices__button{background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==) !important;}
.choices[data-type*=select-one] .choices__button:focus{box-shadow: 0 0 0 2px rgba(0,0,0,0.2);}
.prode-cambiar{text-transform: lowercase; cursor: pointer; background: #fff; color: #18192b; border-radius: 18px; border: 1px solid #23243a; padding: 6px 22px; font-size: 100%; font-family: 'Inter',Arial,sans-serif; font-weight: 500; margin-left: 24px; transition: background 0.2s,color 0.2s;}
.prode-cambiar:hover{background: #23243a; color: #fff;}
.prode-develado-badge{text-transform: none; cursor: default; background: #ffffff20; color: #fff; border-radius: 18px; border: 1px solid #ffffff50; padding: 4px 12px; font-size: 80%; font-family: 'Inter',Arial,sans-serif; font-weight: 500; margin-left: 24px;}

.prode-revisar{background: #fff;}
.prode-revisar .container-fluid{padding: 80px 5%;}
.prode-revisar-title{font: 350%/110% 'Unbounded',sans-serif; color: #111; margin-bottom: 32px;}
.prode-revisar-btn{background: #f0470f; color: #fff; font: 500 110%/110% 'Inter',Arial,Helvetica,sans-serif; border-radius: 24px; padding: 12px 36px; margin: 10px auto 50px; box-shadow: 0 3px 6px rgba(0,0,0,0.08); transition: background 0.2s; box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3), inset 0 2px 0 rgba(255, 255, 255, 0.25), inset 0 -3px 0 rgba(0, 0, 0, 0.25);}
.prode-revisar-btn:hover{background: #cc3c0d;}
.prode-revisar-texts p{font: 125%/150% 'Inter',Arial,Helvetica,sans-serif; color: #222; margin-bottom: 18px;}

.prode-instrucciones{background: #dbecf7; text-align: left; color: #222;}
.prode-instrucciones .container-fluid{padding: 80px 5%;}
.prode-instrucciones-title{font: 350%/110% 'Unbounded',sans-serif; margin-bottom: 32px;}
.prode-instrucciones-texts p{font: 110%/150% 'Inter',Arial,Helvetica,sans-serif; margin-bottom: 18px;}
.prode-instrucciones-disclaimer{font-style: italic !important; font-size: 100% !important;}

#share-hero{text-align: center; width: 100%; min-height: 100vh; padding: 200px 5%;}
#share-hero .container-fluid{max-width: 900px;}
#share-hero .share-hero-title{font: 400%/110% 'Unbounded',sans-serif; margin-bottom: 32px;}
#share-hero .share-hero-desc{font: 110%/150% 'Inter',Arial,Helvetica,sans-serif;}
#share-hero .share-cuadro-btns{margin: 50px auto;}
.share-cuadro-img{width: 100%; max-width: 720px; height: auto; display: block; margin: 25px auto; border-radius: 32px; overflow: hidden;}

.seguimiento-hero-slider{width: 100%; position: relative; background: #000; padding-top: 80px;}
.seguimiento-hero-slider .swiper-slide{position: relative; overflow: hidden; width: 100%; height: 85vh; color: #fff;}
.seguimiento-hero-slider .slide-bg{position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; display: block;}
.seguimiento-hero-slider .slide-content{position: absolute; max-width: 900px; top: 50%; left: 50%; transform: translate(-50%,-55%); display: flex; flex-direction: column; align-items: center; text-align: center; padding: 40px 20px; width: 90%;}
.seguimiento-hero-slider .seguimiento-hero-subtitle{font: 180%/110% 'Unbounded',sans-serif; margin-bottom: 16px;}
.seguimiento-hero-slider .seguimiento-hero-title{font: 400%/110% 'Unbounded',sans-serif; margin-bottom: 32px;}
.seguimiento-hero-slider .seguimiento-hero-title.celeste{color: #fff;}
.seguimiento-hero-slider .seguimiento-hero-cat{font: 110%/110% 'Unbounded',sans-serif; margin-bottom: 16px;}
.seguimiento-hero-slider .seguimiento-hero-desc{font: 110%/150% 'Inter',Arial,Helvetica,sans-serif; margin-bottom: 24px;}
.seguimiento-hero-slider .seguimiento-hero-cuadro-btns{margin-top: 16px; text-align: center;}
.seguimiento-hero-slider .swiper-button-disabled{opacity: 0.4; pointer-events: none;}
/* Cookie Consent Banner */

.cookie-banner{display: none; position: fixed; bottom: 0; left: 0; right: 0; z-index: 9999; background: #000000; border-top: 1px solid rgba(255,255,255,0.1); padding: 16px 20px; box-shadow: 0 -4px 20px rgba(0,0,0,0.5); align-items: center; justify-content: center;}
.cookie-banner-content{max-width: 1100px; width: 100%; display: flex; flex-direction: row; align-items: center; gap: 20px;}
.cookie-banner-text{flex: 1; margin: 0; font: 85%/135% 'Inter',Arial,Helvetica,sans-serif; color: rgba(255,255,255,0.85); text-align: left;}
.cookie-banner-buttons{display: flex; gap: 8px; flex-shrink: 0; margin-left: auto;}
.cookie-banner-buttons .btn{white-space: nowrap; padding: 6px 14px; font-size: 80%;}
.btn-cookie-rechazar{background: rgba(255,255,255,0.2); border: 1px solid rgba(255,255,255,0.5); color: #fff;}
.btn-cookie-rechazar:hover{background: rgba(255,255,255,0.3);}

.seguimiento-2-blocks{display: flex; width: 100%; flex-direction: row; justify-content: space-between; gap: 30px; margin: 0 auto;}
.seguimiento-block{position: relative; overflow: hidden; background: #000; min-height: 500px; display: flex; align-items: center; padding: 5%;}
.seguimiento-video{position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: .2; object-fit: cover; z-index: 0; pointer-events: none;}
.seguimiento-video-mobile{display: none;}
.seguimiento-block-inner{position: relative; z-index: 2; width: 100%; background: #f4f4f4; border-radius: 32px; padding: 5%;}
.seguimiento-block .container-fluid{max-width: 900px; margin: 0;}
.seguimiento-block-label{font: 600 120%/120% 'Inter',Arial,Helvetica,sans-serif; color: #222; margin-bottom: 18px;}
.seguimiento-block-title{font: 400%/110% 'Unbounded',sans-serif; color: #000; margin-bottom: 18px;}
.seguimiento-block-desc{font: 110%/150% 'Inter',Arial,Helvetica,sans-serif; color: #222; margin-bottom: 48px; max-width: 700px;}
.seguimiento-block-2-cards{max-width: 900px; display: flex; flex-direction: row;}
.seguimiento-block-2-cards .seguimiento-block-card{max-width: 300px; width: 50%; margin: 0 15px 15px 0;}
.seguimiento-block-card{display: flex; text-align: center; align-items: stretch; justify-content: flex-start; background: #f2f2f2; border-radius: 16px; border: 1px solid #cecece; box-shadow: 0 2px 8px rgba(0,0,0,0.06); padding: 24px 12px; max-width: 540px; margin: 0; gap: 0;}
.seguimiento-block-card-col{display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 0 12px;}
.seguimiento-block-card-date{border-right: 1px solid #cecece; min-width: 100px;}
.seguimiento-block-card-date-dia{font: 100%/110% 'Inter', Arial, Helvetica, sans-serif; color: #222; margin-bottom: 2px;}
.seguimiento-block-card-status{min-width: 140px; display: flex; align-items: center; justify-content: center;}
.seguimiento-block-btn{white-space: nowrap; background: #f0470f; color: #fff; font: 500 100%/110% 'Inter', Arial, Helvetica, sans-serif; border-radius: 24px; border: 2px solid #000000; padding: 12px 24px; margin: 0 16px; box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3), inset 0 2px 0 rgba(255, 255, 255, 0.25), inset 0 -3px 0 rgba(0, 0, 0, 0.25); cursor: pointer; transition: 200ms ease-out; margin: 0 0 0 0;}
.seguimiento-block-btn:hover{background: #cc3c0d;}
.seguimiento-block-card-puntos{border-left: 1px solid #cecece; min-width: 100px;}
.seguimiento-block-card-puntos-num{font: 500 250%/120% 'Unbounded', sans-serif; color: #000000; margin-bottom: 2px;}
.seguimiento-block-card-puntos-label{font: 100%/110% 'Inter', Arial, Helvetica, sans-serif; color: #222; text-align: center;}
.seguimiento-block-card-big{width: 100%; display: flex; text-align: center; flex-direction: column; justify-content: center; align-items: middle; background: #f2f2f2; border-radius: 16px; border: 1px solid #cecece; box-shadow: 0 2px 8px rgba(0,0,0,0.06); padding: 24px 12px; max-width: 540px; margin: 0; gap: 0;}
.seguimiento-block-card-big-date-dia{font: 100%/110% 'Inter', Arial, Helvetica, sans-serif; color: #222; margin-bottom: 2px;}
.seguimiento-block-card-big .seguimiento-block-btn{cursor: default; font-size: 80%; padding: 10px 16px; max-width: 150px; margin: 0 auto 25px;}
.seguimiento-block-card-big-puntos-label{font: 110%/110% 'Inter', Arial, Helvetica, sans-serif; color: #222; text-align: center;}
.seguimiento-block-card-big-puntos-num{font: 500 1000%/120% 'Unbounded', sans-serif; color: #000000; margin-bottom: 2px;}

.premios-block{padding: 80px 5%; text-align: left;}
.premios-block .container-fluid{max-width: 1200px; margin: 0;}
.premios-block-label{font: 600 120%/120% 'Inter', Arial, Helvetica, sans-serif; margin-bottom: 18px;}
.premios-block-title{font: 400%/110% 'Unbounded', sans-serif; margin-bottom: 18px;}
.premios-block-desc{font: 110%/150% 'Inter', Arial, Helvetica, sans-serif; margin-bottom: 48px; max-width: 700px;}
.premios-grid{margin-top: 50px;}
.premios-grid-item{padding: 15px 0; margin: 0 0 15px; display: flex; align-items: center;}
.premios-grid-img{width: 140px; height: 140px; object-fit: cover; border-radius: 18px; margin-right: 1.5rem; background: #f4f4f4; flex-shrink: 0;}
.premios-grid-label{font: 500 80%/110% 'Inter', Arial, Helvetica, sans-serif; color: #222; background: #f4f4f4; border: 1px solid #cecece; border-radius: 12px; padding: 5px 7px; margin-bottom: 8px; display: inline-block;}
.premios-grid-title{font: 135%/110% 'Unbounded', sans-serif; color: #000000; margin-bottom: 6px; margin-top: 0;}
.premios-grid-desc{font: 90%/130% 'Inter', Arial, Helvetica, sans-serif; color: #222; margin-bottom: 0;}

.logout-form{display: inline;}
.logout-btn{background: none; border: none; color: inherit; font: inherit; cursor: pointer; padding: 0;}
.logout-btn:hover{opacity: 0.8;}
.logout-user-name{color: #fff; font: 90%/105% 'Unbounded', sans-serif; margin-right: 8px;}
.logout-user-name-header{color: #fff; font: 500 85%/100% 'Inter', Arial, sans-serif; margin-right: 8px;}
.logout-form-header{margin-left: auto; flex-shrink: 0;}
.logout-header-btn{background: #fff; color: #000; border: none; border-radius: 18px; padding: 6px 20px; font: 500 85%/100% 'Inter', Arial, sans-serif; cursor: pointer; transition: background 0.2s, color 0.2s;}
.logout-header-btn:hover{background: #f0470f; color: #fff;}
.logout-menu-item{display: inline-block;}
.logout-menu-item button{background: none; border: none; color: #fff; font: 90%/105% 'Unbounded', sans-serif; cursor: pointer; padding: 5px 0;}
.logout-menu-item button:hover{color: #fff;}
#header.logged-in .logout-menu-item{display: none;}

