:root {
  --blue:#063b8f;
  --red:#00B140;
  --dark:#09111f;
  --light:#ffffff;
  --soft:#f4f7fb;
  --gray:#596273;
}

.logo{
    display: flex;
    align-items: center;
}

.logo img{
    max-width: 360px;   /* Ancho máximo */
    max-height: 120px;   /* Alto máximo */
    width: auto;
    height: auto;
    object-fit: contain;
}

.shape{
    position:absolute;
    border-radius:50%;
    filter:blur(100px);
    z-index:1;
}

.shape1{
    width:450px;
    height:450px;
    background:#00d26a;
    top:-120px;
    right:-120px;
    opacity:.45;
}

.shape2{
    width:350px;
    height:350px;
    background:#00a2ff;
    bottom:-80px;
    left:-80px;
    opacity:.40;
}

.hero{
    min-height:92vh;
    position:relative;
    overflow:hidden;

    background:
        linear-gradient(
            rgba(6,59,143,.65),
            rgba(6,59,143,.45)
        ),
        url("images/hero.jpg");

    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;

    color:white;
}

.hero-content,
.navbar{
    position:relative;
    z-index:2;
}

*{box-sizing:border-box;margin:0;padding:0}
body{font-family:Arial,Helvetica,sans-serif;color:var(--dark);background:var(--soft);line-height:1.6}
a{text-decoration:none;color:inherit}

auto=format&fit=crop&w=1600&q=80') center/cover;color:white}
.navbar{display:flex;justify-content:space-between;align-items:center;padding:20px 7%;gap:4px}
.logo{font-size:24px;font-weight:800;letter-spacing:.4px}
.nav-links{display:flex;gap:22px;font-weight:700}
.nav-links a:hover{opacity:.8}
.hero-content{max-width:780px;padding:120px 7% 80px}
.badge{display:inline-block;background:white;color:var(--blue);padding:6px 16px;border-radius:999px;font-weight:800;margin-bottom:20px}
h1{font-size:56px;line-height:1.05;margin-bottom:20px}
.hero-content p{font-size:20px;margin-bottom:28px}
.hero-buttons{display:flex;gap:14px;flex-wrap:wrap}
.btn{display:inline-block;padding:14px 24px;border-radius:12px;font-weight:800;transition:.2s}
.btn.primary{background:var(--red);color:white}
.btn.secondary{background:white;color:var(--blue)}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(0,0,0,.18)}
.section{padding:72px 7%;background:white}
.section:nth-child(even){background:var(--soft)}
.section h2{font-size:38px;text-align:center;margin-bottom:18px;color:var(--blue)}
.intro>p,.contact p{text-align:center;max-width:760px;margin:0 auto 34px;color:var(--gray);font-size:18px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:22px;margin-top:30px}
.cards.three{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card,.price-card,.menu-box,.passday,.rules p{background:white;border-radius:18px;padding:26px;box-shadow:0 12px 30px rgba(20,40,80,.1)}
.card h3,.menu-box h3{color:var(--red);font-size:24px;margin-bottom:10px}
.blue{background:var(--blue)!important;color:white}
.blue h2,.red h2{color:white}
.schedule{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:32px}
.schedule div{background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.25);border-radius:16px;padding:20px}
.schedule strong{display:block;font-size:22px;margin-bottom:8px}
.schedule span{font-size:18px}
.price-card{text-align:center;border-top:6px solid var(--red)}
.price-card h3{font-size:22px;color:var(--blue)}
.price-card p{font-size:42px;font-weight:900;color:var(--red);margin-top:10px}
.passday{text-align:center;margin:34px auto 0;max-width:520px;background:var(--blue);color:white}
.passday h3{font-size:28px}.passday p{font-size:22px;font-weight:800}
.red{background:linear-gradient(135deg,var(--red),#9b0f15)!important;color:white}
.menu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-top:32px}
.menu-box{color:var(--dark)}
ul{list-style:none;margin-top:12px}li{padding:9px 0;border-bottom:1px solid #eef1f5}
.rules{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:28px}.rules p{font-weight:700;border-left:6px solid var(--blue)}
.contact{text-align:center;background:var(--blue)!important;color:white}.contact h2{color:white}.contact p{color:white}
footer{text-align:center;background:var(--dark);color:white;padding:24px 7%}
@media(max-width:760px){.navbar{align-items:flex-start;flex-direction:column}.nav-links{flex-wrap:wrap}.hero-content{padding-top:70px}h1{font-size:38px}.section h2{font-size:30px}}





