
:root{--azul:#1c63c9;--marino:#0d2f6e;--mango:#ffc22e;--rojo:#ef4c4c;--crema:#fff6e4;--cesped:#2f9e57;--tierra:#d9925b}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--crema);color:var(--marino);font:700 17px/1.5 Nunito,system-ui,sans-serif;overflow-x:hidden}
h1,h2{font-family:"Bowlby One",sans-serif;font-weight:400;line-height:1.08;margin:0}
h3{font:400 1.5rem/1.1 "Bowlby One",sans-serif;margin:0}
.dentro{max-width:1160px;margin:auto;padding:0 22px;position:relative}
.barra{position:absolute;z-index:6;inset:0 0 auto}
.barra .dentro{display:flex;align-items:center;height:78px;gap:16px}
.logo{font:400 1.5rem "Bowlby One",sans-serif;color:#fff;text-decoration:none;text-shadow:3px 3px 0 var(--marino)}.logo i{font-style:normal;color:var(--mango)}
nav{margin-left:auto;display:flex;gap:10px;align-items:center}
nav a{color:#fff;text-decoration:none;font-weight:900;text-shadow:1px 2px 0 var(--marino);padding:.3rem .6rem}
.btn{display:inline-block;background:var(--rojo);color:#fff;text-decoration:none;text-shadow:none;font:400 1.08rem "Bowlby One",sans-serif;padding:.62rem 1.5rem;border-radius:14px;border:4px solid #fff;box-shadow:0 6px 0 var(--marino);cursor:pointer}
nav .btn{padding:.34rem 1rem;font-size:.95rem;box-shadow:0 4px 0 var(--marino)}
.portada{position:relative;min-height:820px;overflow:hidden;background:#1b8fe6}
.escena{position:absolute;inset:0;width:100%;height:100%;display:block}
.texto{position:relative;z-index:3;padding-top:100px;max-width:620px;color:#fff}
.equipo{font:400 3.1rem/1 Yellowtail,cursive;color:var(--mango);display:inline-block;transform:rotate(-4deg);text-shadow:3px 3px 0 var(--marino);margin-bottom:.15rem}
h1{font-size:clamp(2.9rem,6.2vw,5rem);color:#fff;text-shadow:0 4px 0 var(--marino),4px 0 0 var(--marino),-4px 0 0 var(--marino),0 -4px 0 var(--marino),4px 4px 0 var(--marino),-4px 4px 0 var(--marino),7px 9px 0 var(--marino)}
h1 i{font-style:normal;color:var(--mango)}
.sub{font-size:1.17rem;font-weight:800;margin:.9rem 0 1.1rem;max-width:500px;background:#0d2f6ed9;border-radius:12px;padding:.55rem .9rem;transform:rotate(-.6deg)}
.ctas{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.precio{background:var(--mango);color:var(--marino);border-radius:50%;width:104px;height:104px;display:grid;place-content:center;text-align:center;font:400 1.75rem/1 "Bowlby One";border:5px solid #fff;box-shadow:0 6px 0 var(--marino);transform:rotate(8deg);text-shadow:none}
.precio small{display:block;font:900 .7rem/1.1 Nunito;margin-top:3px}
.ban{display:block;width:100%;height:46px;background:var(--crema)}
.seccion{padding:50px 0 66px;position:relative}
h2{font-size:clamp(2rem,4.4vw,3.1rem)}
.script{font:400 1.95rem/1.1 Yellowtail,cursive;color:var(--rojo);margin:.15rem 0 1.7rem}
.cartas{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;align-items:start}
.carta{background:#fff;border:6px solid var(--c);border-radius:16px;padding:.7rem .8rem 1rem;transform:rotate(var(--a));box-shadow:0 9px 0 var(--marino);position:relative}
.carta:nth-child(even){margin-top:24px}
.foto{background:linear-gradient(#bfe6fb,#fff);border-radius:10px;height:230px;overflow:hidden;padding:8px}.foto img{height:100%;width:100%;object-fit:contain;display:block}
.num{position:absolute;left:-14px;top:-14px;width:50px;height:50px;background:var(--mango);border:4px solid var(--marino);border-radius:50%;text-align:center;font:400 1.35rem/42px "Bowlby One"}
.carta h3{margin-top:.6rem;font-size:1.2rem}.carta b{color:var(--azul);font-weight:900}.carta p{margin:.15rem 0 0;font-size:.95rem;font-weight:700}
.campo{background:linear-gradient(#1b8fe6,#35b4ea);color:#fff}
.campo .script{color:var(--mango)}
.bases{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;position:relative}
.bases:before{content:"";position:absolute;top:50px;left:10%;right:10%;border-top:8px dotted var(--crema)}
.base{text-align:center;position:relative}
.rombo{width:92px;height:92px;margin:6px auto 22px;transform:rotate(45deg);border:6px solid #fff;display:grid;place-items:center;border-radius:12px;box-shadow:6px 6px 0 #0003}
.rombo span{transform:rotate(-45deg);font:400 .92rem/1 "Bowlby One";color:var(--marino);text-align:center}
.base p{margin:.25rem 0 0;font-weight:700}
.pizarra{background:var(--marino);color:#fff;border:10px solid #7c5230;border-radius:14px;padding:1rem 1.2rem;box-shadow:0 10px 0 var(--marino);transform:rotate(-.7deg);font-family:"Bebas Neue",sans-serif;font-size:1.65rem;letter-spacing:.5px}
.pizarra table{width:100%;border-collapse:collapse}.pizarra th{font-weight:400;color:#ffe9a8;font-size:1.25rem;padding:.1rem .4rem;text-align:center}
.pizarra td{text-align:center;padding:.25rem .4rem;border-top:2px solid #ffffff2a}.pizarra td:first-child,.pizarra th:first-child{text-align:left}
.pizarra .si{color:#ffd34d}.pizarra .no{color:#ff9c8f}
.chiste{font-size:.95rem;margin:.9rem 0 0;font-weight:800}
.compra{background:linear-gradient(135deg,var(--azul),var(--marino));color:#fff}.compra .script{color:var(--mango)}
.mesa{display:grid;grid-template-columns:.85fr 1.15fr;gap:28px;align-items:start}
.t{background:var(--crema);color:var(--marino);border:6px solid #fff;border-radius:16px;padding:1.25rem;box-shadow:0 9px 0 #0003}
.t.a{transform:rotate(-1.4deg);text-align:center}.t.b{transform:rotate(.6deg)}
.t h3{font-size:1.3rem;margin-bottom:.6rem}.prod{height:280px;max-width:100%;object-fit:contain;display:block;margin:0 auto .4rem}.prod[hidden]{display:none}.viaje{height:78px;width:112px;object-fit:contain;flex:none}
.cuantas{display:flex;justify-content:center;align-items:center;gap:18px;font:400 1.8rem "Bowlby One"}
.cuantas button{width:46px;height:46px;border-radius:13px;border:0;background:var(--mango);box-shadow:0 4px 0 #cf9412;font:900 1.5rem Nunito;color:var(--marino)}
.total{display:flex;justify-content:space-between;border-top:3px dotted #cdb88d;margin-top:.7rem;padding-top:.55rem;font:400 1.25rem "Bowlby One"}
.op{display:flex;align-items:center;gap:12px;background:#fff;border-radius:12px;padding:.62rem .9rem;margin-bottom:.5rem;font-weight:900;border:3px solid #dfd2b3}
.op.si{background:#fff0bf;border-color:var(--mango)}.op i{width:20px;height:20px;border:3px solid var(--marino);border-radius:50%;flex:none}.op.si i{background:var(--rojo)}
.op span{flex:1}.op small{display:block;font-weight:700;opacity:.8}.op b{white-space:nowrap}
.campos{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:.8rem 0}.campos div{background:#fff;border:2px solid #e6d7b4;border-radius:10px;padding:.55rem .8rem;color:#7b8798}
.t .btn{display:block;text-align:center;box-shadow:0 6px 0 #a92c33}
.pases{display:grid;gap:14px;max-width:560px}
.pase{background:#fff;border:3px dashed var(--azul);border-radius:12px;padding:.9rem 1.1rem;font-weight:900;transform:rotate(var(--a))}
.pase b{display:block;font:400 1.2rem "Bowlby One"}.pase small{font-weight:700;font-size:.95rem}
.pie{background:var(--marino);color:#fff;text-align:center;padding:24px 0;font-weight:800}
.pie .logo{display:block}
.juego,.marcador,.recoge{display:grid;gap:30px;align-items:center}.juego{grid-template-columns:300px 1fr}.marcador{grid-template-columns:1fr 250px}.recoge{grid-template-columns:1fr 340px}.lado{text-align:center}.per{display:block;margin:auto;max-width:100%}.juego .per{height:430px}.marcador .per{height:300px}.recoge .per{height:300px}.globo{background:#fff;color:var(--marino);border:4px solid var(--marino);border-radius:18px;padding:.6rem .9rem;font-weight:900;font-size:1rem;line-height:1.25;position:relative;box-shadow:0 5px 0 #0d2f6e33;text-align:left}.globo.abajo{margin-bottom:20px}.globo.abajo:after{content:"";position:absolute;left:46%;bottom:-16px;width:24px;height:24px;background:#fff;border:solid var(--marino);border-width:0 4px 4px 0;transform:rotate(45deg)}.globo.izq{display:inline-block;margin-top:.7rem}.globo.izq:after{content:"";position:absolute;left:-15px;top:40%;width:22px;height:22px;background:#fff;border:solid var(--marino);border-width:0 0 4px 4px;transform:rotate(45deg)}.chisme{transform:rotate(-2deg)}.diamante{position:relative;height:540px;max-width:640px}.diamante svg{position:absolute;inset:50px 120px 60px;width:calc(100% - 240px);height:calc(100% - 110px)}.bs{position:absolute;width:190px;text-align:center}.bs .rombo{width:70px;height:70px;margin:6px auto 12px;background:#fff}.bs .rombo span{font-size:.78rem}.bs h3{font-size:1.1rem;background:#2197e9;border-radius:8px;padding:.15rem .2rem 0}.bs p{font-size:.92rem;margin:0;font-weight:700;background:#2197e9;border-radius:8px;padding:.1rem .3rem .25rem}.d2{top:0;left:calc(50% - 95px)}.d3{top:170px;left:0}.d1{top:170px;right:0}.dh{bottom:0;left:calc(50% - 95px)}.dh .rombo{background:var(--mango)}.ruta{background:var(--mango);padding:30px 0;border-top:6px solid var(--marino);border-bottom:6px solid var(--marino)}.via{display:grid;grid-template-columns:460px 1fr;gap:34px;align-items:center}.via .per{height:300px}.ruta h2{font-size:clamp(1.8rem,3.6vw,2.7rem)}.relleno{position:fixed;z-index:9;right:12px;bottom:12px;background:#0d2f6ee6;color:#fff;font-size:.8rem;border-radius:9px;padding:.3rem .6rem}
@media (max-width:900px){
 nav a:not(.btn){display:none}
 .portada{min-height:0;padding-bottom:330px}
 .escena{top:auto;bottom:0;height:500px}
 .texto{padding-top:84px}
 .precio{width:88px;height:88px;font-size:1.4rem}
 .cartas{grid-template-columns:1fr 1fr;gap:18px}
 .carta:nth-child(even){margin-top:14px}
 .mesa,.juego,.marcador,.recoge,.via{grid-template-columns:1fr}.juego .per{height:330px}.diamante{height:auto;max-width:none}.diamante svg{display:none}.bs{position:static;width:auto;margin-bottom:22px}.bs h3,.bs p{background:none}.via .per{height:auto;width:100%}.globo.izq:after{display:none}
 .bases:before{display:none}
 .t.a,.t.b{transform:none}
 .pizarra{font-size:1.25rem;padding:.7rem}.pizarra th{font-size:1rem}
}
[hidden]{display:none!important}
.idioma{background:#ffffffd9;border:0;border-radius:99px;padding:.3rem .8rem;font:900 .9rem Nunito;color:var(--marino);cursor:pointer}
label{display:block;font-weight:800;margin:.65rem 0 .2rem}
.ayuda{display:block;font-weight:700;font-size:.85rem;color:#5b6b85}
input[type=text],input[type=tel],input:not([type]),select{width:100%;font:700 1rem Nunito;color:var(--marino);padding:.6rem .8rem;border:2px solid #e0d2ae;border-radius:10px;background:#fff}
input:focus,select:focus{outline:3px solid var(--azul);outline-offset:0}
.dos{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}
.t h4{font:400 1.1rem "Bowlby One",sans-serif;margin:1.1rem 0 .1rem}
.op{cursor:pointer}.op input{position:absolute;opacity:0;width:1px;height:1px}
.op:has(input:checked){background:#fff0bf;border-color:var(--mango)}.op:has(input:checked) i{background:var(--rojo)}
.op:has(input:focus-visible){outline:3px solid var(--azul)}
.fila{display:flex;justify-content:space-between;font-weight:800;margin-top:.3rem}
button.btn{width:100%;font-family:"Bowlby One",sans-serif}button.btn:disabled{opacity:.7;cursor:default}
.error{background:#fdecea;color:#a8281c;border-radius:10px;padding:.6rem .8rem;margin-top:.7rem;font-weight:800}
.prod{height:280px;max-width:100%;object-fit:contain;display:block;margin:0 auto .4rem}
.faq{display:grid;gap:10px;max-width:760px}.faq details{background:#fff;border:3px solid var(--marino);border-radius:12px;padding:.7rem 1rem}.faq summary{font-weight:900;cursor:pointer}.faq p{margin:.4rem 0 0;font-weight:700}

.portada{min-height:720px}
.texto{margin:0 auto;padding-top:96px;max-width:660px;text-align:center}
.sub{margin-inline:auto}.ctas{justify-content:center}
@media (max-width:900px){.portada{padding-bottom:236px}.escena{height:290px}.texto{padding-top:84px}}

.cartas{grid-template-columns:repeat(3,1fr);max-width:900px}
@media (max-width:900px){.cartas{grid-template-columns:1fr 1fr}.carta:nth-child(3){grid-column:1/-1;width:62%;margin-inline:auto}}

@media (min-width:901px){.texto{max-width:540px;padding-top:92px}h1{font-size:clamp(2.8rem,4.6vw,4rem)}.sub{font-size:1.08rem}}

.cartas{max-width:none}

.vehiculo{height:300px;display:flex;align-items:center;justify-content:center}.vehiculo .per{height:300px;max-width:100%;object-fit:contain}
.rutas{display:flex;flex-wrap:wrap;gap:10px;margin:.7rem 0 .2rem}
.ruta-btn{font:400 1.02rem "Bowlby One",sans-serif;color:var(--marino);background:#fff;border:4px solid var(--marino);border-radius:14px;padding:.5rem 1.1rem;cursor:pointer;box-shadow:0 5px 0 var(--marino)}
.ruta-btn[aria-pressed=true]{background:var(--azul);color:#fff}
.ruta-btn:focus-visible{outline:3px solid #fff;outline-offset:2px}
@media (max-width:900px){.vehiculo{height:auto;min-height:250px}.vehiculo .per{height:auto;width:100%;max-height:330px}.ruta-btn{flex:1 1 100%}}

.ruta-precio{display:inline-block;background:var(--rojo);color:#fff;border:4px solid #fff;border-radius:14px;padding:.25rem 1rem;font-weight:900;font-size:1.05rem;margin:.75rem 0 .1rem;box-shadow:0 5px 0 var(--marino);transform:rotate(-1.5deg)}
.ruta-precio b{font:400 1.7rem "Bowlby One",sans-serif;vertical-align:-.1em}
.ruta .globo.izq{display:block;width:fit-content}

/* Punta del globo de la franja: triángulo con borde, no choca con las esquinas redondeadas */
.globo.izq{border-radius:16px}
.globo.izq:before,.globo.izq:after{content:"";position:absolute;top:50%;width:0;height:0;background:none;border-style:solid;border-color:transparent;transform:none}
.globo.izq:before{left:-19px;margin-top:-11px;border-width:11px 19px 11px 0;border-right-color:var(--marino)}
.globo.izq:after{left:-12px;margin-top:-7px;border-width:7px 12px 7px 0;border-right-color:#fff}
@media (max-width:900px){.globo.izq:before,.globo.izq:after{display:none}}

@media (min-width:901px){.ctas .precio{display:none}}
@media (max-width:900px){.sello-svg{display:none}}
