@import url('https://fonts.googleapis.com/css2?family=Anton&family=Outfit:wght@100..900&display=swap');
body{
    background-color: var(--secondary);
    overflow-x: hidden;
}
/* Variables globales */
:root{
    --primary: #e21d25;
    --secondary: #080707;
    --secondary-darken: #1b532a;
    --extra: #0c0c0c;
    --text: #b7b7ba;
    --dark: #000000;
    --white: #ffffff;
    --gray-light: #b4b1b1;
    --gray-dark: #141414;
    --accent: #e11e26;

    --rounded-full: 5rem;
    --rounded-md: .5rem;
    --rounded-lg: 1.5rem;

    --text-xs: 0.8rem;
    --text-sm: .85rem;
    --text-normal: 1.25rem;
    --text-md: 1.3rem;
    --text-lg: 1.8rem;
    --text-xl: 2.2rem;
    --text-xxl: 2.6rem;
}

/* Estilos Generales */
.logo{
    max-width: 180px;
    min-width: 110px;
}
html{
    font-size: 16px;
}
html *{
    scroll-behavior: smooth;
    margin: 0;
    padding: 0;
    font-family: "Outfit", sans-serif;
    font-optical-sizing: auto;
    box-sizing: border-box;
    color: var(--text);
}
*, *:before, *:after {
  box-sizing: inherit;
}
ul{
    list-style: none;
}
.actions{
    margin-top: 2.5rem;
}
/* Heading & Paragraph */
p {
    color: var(--text);
    font-size: var(--text-normal);
    line-height: 1.5;
    margin: 0;
}
h1, h2, h3{
    font-family: "Anton", sans-serif;
    color: var(--white);
    font-weight: 600;
    line-height: 1.2;
    text-transform: uppercase;
    margin: 0;
}
h1{
    font-size: 6rem;
    margin: 0;
    font-weight: 800;
    color: var(--white);
}
h2{
    font-size: var(--text-xxl);
    margin: 1.2rem 0;
}
h3{
    font-size: 1.2rem;
    margin: 1rem 0;
}
h4{
    font-weight: 600;
}

/* Text Color */
.text-primary{
    color: var(--primary) !important;
}
.text-secondary{
    color: var(--secondary);
}
.text-extra{
    color: var(--extra);
}
.text-dark{
    color: var(--dark);
}
.text-white{
    color: var(--white);
}
.text-gray-light{
    color: var(--gray-light);
}
.text-gray-dark{
    color: var(--gray-dark);
}
.text-accent{
    color: var(--accent);
}

/* TEXT SIZE */
.text-md{
    font-size: var(--text-md);
}

/* Text Transform */
.uppercase{
    text-transform: uppercase;
}

/* Background Color */
.bg-primary{
    background-color: var(--primary);
}
.bg-secondary{
    background-color: var(--secondary);
}
.bg-extra{
    background-color: var(--extra);
}
.bg-gray-light{
    background-color: var(--gray-light);
}
.bg-white{
    background-color: var(--white);
}
/* Image Responsive */
img{
    width: 100%;
    height: auto;
}

/* ROUNDED */
.rounded-lg{
    border-radius: var(--rounded-lg);
}
/* ALIGNERS */
.align-items-center{
    display: flex;
    align-items: center;
}
/* TEXT ALIGNERS */
.text-center{
    text-align: center;
    display: block;
}
/* SPACERS */
.p-0{
    padding: 0 !important;
}
.mr-1{
    margin-right: 1rem;
}
.mb-2{
    margin-bottom: 2rem;
}



/* Botones */
.btn{
    color: var(--white) !important;
    text-decoration: none;
    border-style: solid;
    border-color: #cccccc;
    border-width: 3px;
    padding: .5rem 2.5rem;
    margin: 10px;
    display: inline-block;
    text-wrap: nowrap;
    text-align: center;
    font-family: "Outfit", sans-serif;
    font-weight: 600;
    font-size: 1.2rem;
    background-color: #cccccc;
    transition: all 0.3s ease-in-out;
    cursor: pointer;
}
.btn i{
    margin-right: .8rem;
}
.btn-primary{
    background-color: var(--primary);
    color: var(--white);
    border-color: var(--primary);
}
.btn-primary:hover{
    filter: brightness(120%);
}
.btn-secondary{
    background-color: var(--secondary);
    color: var(--white);
    border-color: var(--secondary);
}
.btn-secondary i{
    color: var(--white);
}
.btn-secondary:hover{
    filter: brightness(130%);
}
.btn-extra{
    background-color: var(--extra);
    color: var(--white);
    border-color: var(--extra);
    font-size: var(--text-xs);
}
.btn-extra i{
    color: var(--white);
}
.btn-extra:hover{
    background-color: var(--secondary);
}
.btn-outline-primary{
    background-color: transparent;
    color: var(--primary);
    border-color: var(--primary);
}
.btn-outline-primary:hover{
    background-color: var(--primary);
    color: var(--white);
}
.btn-outline-secondary{
    background-color: transparent;
    color: var(--secondary);
    border-color: var(--secondary);
}
.btn-outline-secondary:hover{
    background-color: var(--secondary);
    color: var(--white);
}
.btn-outline-extra{
    background-color: transparent;
    color: var(--extra);
    border-color: var(--extra);
}
.btn-outline-extra:hover{
    background-color: var(--secondary);
    color: var(--white);
}

/* BTN Responsive */
@media screen and (max-width: 768px){
    .btn{
        border-width: 2px;
        font-size: var(--text-sm);
        padding: .5rem 1rem;
    }
}
/* Container */
.container{
    max-width: 1333px;
    margin: 0 auto;
    gap: 1.5rem;
}

/* Columns */
.columns{
    display: flex;
    gap: 1rem;
}
.columns > *{
    flex: 1;
    padding: 2rem;
}

/* MAIN */
/* SECTIONS */
.hero{
    background-image: url(img/01.jpeg);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    background-blend-mode: multiply;
    background-color: rgba(0, 0, 0, .90);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 3rem 0;
}
.hero .container{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
.hero .cost{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    margin: 2rem 0;
}
.hero h1 span{
    color: var(--primary);
    font-family: "Anton", sans-serif;
}
.hero p{
    max-width: 800px;
}
.hero .offer{
    text-decoration:line-through;
    font-size: var(--text-normal);
}
.hero h2.price{
    font-size: 4.5rem;
    color: var(--primary);
    margin: 0;
}
.glow-primary{
    text-shadow: 0 0 30px rgba(227, 27, 35, 0.7);
}
.hero .list{
    color: var(--white);
    display: flex;
    gap: 2rem;
    margin-top: 2rem;
}
.hero .list li i{
    color: var(--primary);
    margin-right: 1rem;
}
.hero .wrapper-band-list{
    width: 100%;
    margin-top: 4rem;
    overflow: hidden;
    border-top: solid 2px rgba(255, 255, 255, .15);
    border-bottom: solid 2px rgba(255, 255, 255, .15);
    background-color: var(--gray-dark);
}
.hero .wrapper-band-list .band-list{
    padding: 1rem 0;
    display: flex;
    justify-content: space-around;
    align-items: center;
    color: var(--gray-light);
}
.hero .wrapper-band-list .band-list li{
    display: flex;
    align-items: center;
    text-transform: uppercase;
    font-family: "Anton", sans-serif;
    font-size: 2rem;
    letter-spacing: 3px;
    padding: 0 4rem;
    white-space: nowrap;
}
.hero .wrapper-band-list .band-list li::before{
    content: '';
    position: relative;
    display: block;
    width: 15px;
    height: 15px;
    left: -60px;
    border-radius: 50px 50px;
    background-color: var(--gray-light);
}
.band-list {
    display: flex;
    width: max-content;
    animation: scrollBand linear infinite;
}

@keyframes scrollBand {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(calc(-1 * var(--scroll-width)));
    }
}

section{
    padding: 4rem 0;
}

/* SEC 1 */
.sec-1{
    padding: 8rem 20px;
}
.sec-1 h2{
    font-size: 3.75rem;
    line-height: 1;
    position: relative;
    text-align: left;
}
.sec-1 h2::after{
    content: '';
    display: block;
    width: 80px;
    height: 5px;
    background-color: var(--primary);
}
.sec-1 .col{
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.sec-1 .grid{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}
.sec-1 .card{
    border: solid 1px rgba(255, 255, 255, .15);
    padding: 1.8rem;
    background-color: var(--gray-dark);
}
.sec-1 .card p{
    margin-top: 1rem;
    font-size: var(--text-sm);
}
.sec-1 .card:hover{
    border: solid 1px var(--primary);
}
.sec-1 .card i{
    color: var(--primary);
    font-size: 2rem;
}
/* SEC 2 */
.sec-2{
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: var(--extra);
    padding: 8rem 20px;
}
.sec-2 p, h2{
    text-align: center;
}
.sec-2 h2{
    font-size: 3.75rem;
}
.sec-2 .grid{
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1rem;
    margin: 3rem 0;

}
.sec-2 .card{
    border: solid 1px rgba(255, 255, 255, .15);
    height: 100%;
    padding: 2rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: var(--gray-dark);
}
.sec-2 .card i{
    font-size: var(--text-xl);
    color: var(--primary);
}
.sec-2 h3{
    font-size: 1.6rem;
}
.sec-2 .card p{
    font-size: var(--text-sm);
}
.sec-2 .card:hover{
    border: solid 1px var(--primary);
}
/* SEC 3 */
.sec-3{
    padding: 8rem 20px;
}
.sec-3 .col{
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.sec-3 .grid{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}
.sec-3 .grid .img-wrapper{
    overflow: hidden;
    aspect-ratio: 16 / 10;
    display: flex;
    justify-content: center;
    align-items: center;
}
.sec-3 .grid .img-wrapper img{
    object-fit: cover;
    width: 100%;
}
.sec-3 .icon-top{
    font-size: var(--text-xxl);
    color: var(--primary);
    margin-bottom: 1rem;
}
.sec-3 h2{
    font-size: var(--text-xxl);
    text-align: left;
}
.sec-3 h2::after{
    content: '';
    display: block;
    width: 80px;
    height: 5px;
    background-color: var(--primary);
}
.sec-3 ul li{
    padding: .5rem 0;
}
.sec-3 ul li i{
    color: var(--primary);
    margin-right: 1rem;
}
.sec-3 .note{
    background-color: var(--gray-dark);
    border: solid 1px rgba(255, 255, 255, .15);
    padding: 2rem;
    margin: 2rem 0;
    font-size: 1rem;
    line-height: 1.6;
}
/* SEC 4 */
.sec-4{
    background: radial-gradient(circle,rgba(226, 29, 37, 0.24) 0%, rgba(226, 29, 37, 0) 100%);
    padding: 6rem 20px;
}
.sec-4 .container{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.sec-4 i{
    font-size: 3rem;
    background-color: var(--primary);
    padding: 1.5rem;
    border-radius: 50px;
}
.sec-4 .btn i{
    font-size: 1rem;
    padding: 0;
}
.sec-4 h2{
    text-align: center;
    font-size: 4rem;
}
.sec-4 p{
    text-align: center;
    max-width: 800px;
}
/* SEC 5 */
.sec-5{
    padding: 8rem 20px;
}
.sec-5 .grid{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 3rem;
}
.sec-5 .card{
    padding: 3rem;
    display: flex;
    flex-direction: column;
    align-items: start;
    background-color: var(--gray-dark);
    height: 100%;
    border: solid 1px rgba(255, 255, 255, .15);
}
.sec-5 .card:hover{
    border: solid 1px var(--primary);
}
.sec-5 .card i{
    color: var(--primary);
    font-size: 3rem;
    margin-bottom: 1rem;
}
.sec-5 .card h2{
    text-align: left;
    font-size: 2.2rem;
    margin: 0;
}
.sec-5 .card p{
    margin: 2rem 0;
}
.sec-5 .card ul li{
    padding: .5rem 0;
}
.sec-5 .card ul li i{
    font-size: 1rem;
    margin: 0;
    margin-right: 1rem;
}
/* SEC 6 */
.sec-6{
    background-color: var(--gray-dark);
    padding: 8rem 20px;
}
.sec-6 .container{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 0;
}
.sec-6 h2{
    font-size: 4rem;
    max-width: 800px;
    line-height: 1;
}
.sec-6 .big-price{
    font-family: "Anton", sans-serif;
    font-size: 6rem !important;
    color: var(--primary);
}
/* SEC 7 */
.sec-7{
    padding: 8rem 20px;
}
.sec-7 .container{
    max-width: 600px;
}
.sec-7 p{
    text-align: center;
    margin-bottom: 2rem;
}
/* FOOTER */
footer{
    height: 100%;
    border-top: solid 1px rgba(255, 255, 255, .15);
}

footer .inner-footer{
    width: 100%;
    height: 100%;
    padding: 20px 20pxpx;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--extra);
}
footer .container{
    width: 1333px;
    border-bottom: solid 1px rgba(255, 255, 255, .15);

}
footer .col-1{
    width: 30%;
}
footer .col-1 .logo{
    max-width: 140px;
}
footer .col-1 .logo img{
    width: 100%;
}
footer .col-2{
    width: 60%;
}
footer .col-2 h2{
    font-size: 1.5rem;
    color: var(--gray-light);
}
footer .col-2 ul{
    display: flex;
    justify-content: center;
    gap: 1rem;
} 
footer .col-2 ul li a{
    padding: .5rem;
    border: solid 1px rgba(255, 255, 255, .15);
    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    width: 50px;
    height: 50px;
} 
footer .col-2 ul li a:hover{
    background-color: var(--primary);
} 
footer .col-2 ul li a i{
    font-size: var(--text-md);
} 
footer .col-3{
    width: 30%;
    display: flex;
    flex-direction: column;
    align-items: end;
    justify-content: center;
}
footer .copyright{
    padding: 1rem 0 3rem 0;
    background-color: var(--extra);
}

/* CONTACT FORM */
form{
    width: 100%;
}
form span{
    display: block;
    text-align: right;
    font-size: var(--text-xs);
    padding-right: 20px;
    padding-bottom: 10px;
}

form .form-wrapper{
    display: flex;
    flex-direction: column;
}
form .form-wrapper span{
    display: flex;
    flex-direction: column;
    padding: 8px 0;
}
form .form-wrapper span label{
    text-align: left;
    margin-bottom: 5px;
    padding-left: 20px;
    color: #4b4b4d;
    font-weight: 600;
    font-size: var(--text-xs);
    display: none;
}
form .form-wrapper input[type=text], form .form-wrapper input[type=email], form .form-wrapper input[type=tel]{
    padding: 15px 20px;
    border: none;
    outline: none;
    background-color: var(--gray-dark);
    border-radius: 0;
    color: var(--gray-light);
    font-size: 1rem;
    font-weight: 600;
    border: solid 2px rgba(255, 255, 255, .15);
}

/* HONEYPOT ANTI-SPAM FIELD */
.hp-field {
  position: absolute;
  left: -9999px;
  opacity: 0;
  height: 0;
  overflow: hidden;
}
input[type=submit]{
    font-size: var(--text-normal);
    margin: 5px 0;
}
form .form-wrapper select{
    padding: 15px 20px;
    border: none;
    outline: none;
    background-color: rgba(255, 255, 255, .15);
    border-radius: 15px;
    color: var(--dark);
    font-size: 1rem;
    font-weight: 600;
    appearance: none;
    border: solid 2px var(--gray-light);
}

form .form-wrapper select:invalid{
    color: rgba(0, 0, 0, .60);
}

/* Form Error Messaje */
.error{
    text-align: center;
    background-color: rgba(249, 249, 249, 0.95);
    margin: 0 auto;
    padding: 5rem 2rem;
    box-shadow: 0 0 20px rgba(0, 0, 0, .3);
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 20000;
    overflow: hidden;
}
.error i{
    color: rgb(224, 57, 57);
    font-size: var(--text-xxl);
}
.error h2{
    text-align: center;
    color: var(--dark);
    font-size: var(--text-xxl);
}
.error p{
    text-align: center;
    margin: 0 auto;
    max-width: 700px;
    color: var(--text);
    font-size: var(--text-lg);
}
button {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 50%;
    height: auto;
    transform: translateY(-50%);
    background-color: transparent;
    border: none;
    cursor: pointer;
}
.error button{
    position: absolute;
    top: 3rem;
    right: 2rem;
    cursor: pointer;
}
.error button i{
    color: var(--dark);
    font-size: var(--text-md);
}

@media screen and (max-width: 768px){
    .error p{
        font-size: var(--text-md);
    }
}

.thankyou{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 5rem .5rem;
}
.thankyou .top-icon i{
    margin-top: 4rem;
    font-size: 4rem;
    color: greenyellow;
}
.thankyou h1{
    text-align: center;
}
.thankyou p{
    text-align: center;
    font-size: var(--text-md);
    max-width: 800px;
}
.thankyou a.btn i{
    color: var(--white);
}

/* Go to Top button */
.go-top{
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    bottom: 120px;
    right: 32px;
    width: 50px;
    height: 50px;
    background-color: var(--primary);
    border-radius: .3rem;
    text-decoration: none;
    box-shadow: 0 0 .8rem rgba(0, 0, 0, .3);
    opacity: 0;
    pointer-events: none;
    transition: all .3s ease;
}
.go-top:hover{
    filter: brightness(110%);
    box-shadow: 0 0 .4rem rgba(0, 0, 0, .7);
    transform: scale(0.93);
}
.go-top:active{
    filter: brightness(110%);
    box-shadow: 0 0 .2rem rgba(0, 0, 0, .7);
    transform: scale(0.85);
}
.go-top.show {
      opacity: 1;
      pointer-events: auto;
    }
.go-top i{
    color: var(--white);
    font-size: var(--text-md);
}

.wrap-logo{
    max-width: 280px;
}


/* CARRUSEL */
.carousel {
    position: relative;
    width: 100%;
    max-width: 1200px;
    overflow: hidden;
    margin: 0 auto;
    padding: 0 20px; /* evita que pegue a bordes */
}

.carousel-track-wrapper {
    overflow: hidden;
}

/* TRACK */
.carousel-track {
    display: flex;
    gap: 20px;
    transition: transform 0.5s ease;
    padding: 40px 0;
}

/* ITEMS (DESKTOP: 3 visibles) */
.carousel-track li {
    flex: 0 0 calc((100% - 40px) / 1); /* 3 elementos + gaps */
    position: relative;
    overflow: hidden;
}

/* IMAGEN */
.carousel-track img {
    width: 100%;
    height: 600px;
    object-fit: cover;
    transition: transform 0.6s ease;
}

/* HOVER */
.carousel-track li:hover img {
    transform: scale(1.15);
}

/* EFECTO LATERALES */
.carousel-track-wrapper {
    padding: 0 8%;
}

/* BOTONES */
.nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: red;
    border: none;
    color: #fff;
    font-size: 20px;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    cursor: pointer;
    z-index: 2;
}

.prev { left: 5px; }
.next { right: 5px; }

.nav:hover {
    background: #ff3333;
}

/* GLOW PULSE */
.glow-pulse {
    position: relative;
    z-index: 1;
}

/* Glow base */
.glow-pulse::after {
    content: "";
    position: absolute;
    inset: -5px;
    border-radius: inherit;
    background: radial-gradient(circle, var(--primary) 0%, transparent 70%);
    opacity: 0.6;
    filter: blur(10px);
    z-index: -1;

    animation: glowPulse 2s infinite ease-in-out;
}

/* Animación */
@keyframes glowPulse {
    0% {
        transform: scale(0.95);
        opacity: 0.4;
        filter: blur(8px);
    }
    50% {
        transform: scale(1.1);
        opacity: 1;
        filter: blur(30px);
    }
    100% {
        transform: scale(0.95);
        opacity: 0.4;
        filter: blur(8px);
    }
}

/* ELEMENTO ANTES DE APARECER */
.anim-intro{
    opacity:0;
    transform:translateY(80px);
    transition:
        opacity .8s cubic-bezier(.22,.61,.36,1),
        transform .8s cubic-bezier(.22,.61,.36,1);
}

.anim-intro.in-view{
    opacity:1;
    transform:translateY(0);
}

/* WHATSAPP WIDGET */
.wa-widget{
position:fixed;
bottom:20px;
right:20px;
z-index:9999;
font-family: "Manrope", sans-serif;
}
.wa-widget a{
    text-decoration: none;
    color: var(--white);
    font-size: var(--text-lg);
}

/* BOTON */

.wa-button{
width:60px;
height:60px;
background:#25D366;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
box-shadow:0 8px 20px rgba(0,0,0,.2);
animation: waPulse 2s infinite;
}

@keyframes waPulse{
0%{box-shadow:0 0 0 0 rgba(37,211,102,.7);}
70%{box-shadow:0 0 0 18px rgba(37,211,102,0);}
100%{box-shadow:0 0 0 0 rgba(37,211,102,0);}
}

/* BURBUJA */

.wa-bubble{
position:absolute;
bottom:80px;
right:0;
width:260px;
background:white;
padding:18px;
border-radius:12px;
box-shadow:0 10px 30px rgba(0,0,0,.15);
display:none;
animation:waFade .4s ease;
}

@keyframes waFade{
from{
opacity:0;
transform:translateY(10px);
}
to{
opacity:1;
transform:translateY(0);
}
}

/* MENSAJE */

.wa-message{
font-size:14px;
line-height:1.4;
margin-bottom:12px;
}

/* BOTON CHAT */

.wa-start{
display:block;
background:#25D366;
color:white;
text-align:center;
padding:10px;
border-radius:6px;
text-decoration:none;
font-weight:bold;
font-size: var(--text-normal)!important;
}

/* CERRAR */

.wa-close{
position:absolute;
top:8px;
right:8px;
background:none;
border:none;
font-size:16px;
font-weight: 600;
cursor:pointer;
color:#777;
}

.wa-close:hover{
color:#000;
}

/* FLECHA */

.wa-bubble:after{
content:"";
position:absolute;
bottom:-10px;
right:22px;
border-width:10px;
border-style:solid;
border-color:white transparent transparent transparent;
}

/*CONFIGURACIÓN RESPOSIVE */
/* Columns Responsive */
@media screen and (max-width: 1024px) {
    .columns > *{
        padding: 0.8rem;
    }
}
@media screen and (max-width: 992px) {
    .columns > *{
        padding: 0.5rem;
    }
}
@media screen and (max-width: 880px) {
    .wrap-logo{
        max-width: 180px;
    }
    .columns{
        flex-direction: column;
    }
    .hero h1{
        text-align: center;
    }
    .hero .list{
        flex-direction: column;
    }
    .hero .wrapper-band-list .band-list li{
        font-size: 1.2rem;
    }
    .hero .wrapper-band-list .band-list li::before{
        width: 8px;
        height: 8px;
    }
    .hero, .sec-1, .sec-2, .sec-3, .sec-4, .sec-5, .sec-6, .sec-7{
        padding: 4rem 20px;
    }
    .sec-2 .carousel{
        width: 100%;
    }
    .sec-2 .grid{
        grid-template-columns: repeat(2, 1fr);
    }
    .sec-5 .grid{
        gap: 1rem;
        grid-template-columns: repeat(1, 1fr);
    }
    footer .inner-footer .col-1{
        width: 100%;
        display: flex;
        justify-content: center;
    }
    footer .inner-footer .col-2{
        width: 100%;
    }
    footer .inner-footer .col-3{
        width: 100%;
        align-items: center;
    }
}
@media (max-width: 500px) {

    .carousel {
        padding: 0 10px;
    }

    .carousel-track {
        gap: 12px;
        padding: 20px 0;
    }

    /* 1 elemento visible (UX correcta en móvil) */
    .carousel-track li {
        flex: 0 0 100%;
    }

    .carousel-track img {
        height: 260px; /* adaptable */
    }

    /* quitamos recorte lateral en móvil */
    .carousel-track-wrapper {
        padding: 0;
    }

    /* botones más pequeños */
    .nav {
        width: 36px;
        height: 36px;
        font-size: 18px;
    }
}
@media screen and (max-width:420px){
    .hero p{
        text-align: center;
    }
    .hero h1{
        font-size: 4rem;
        line-height: 1;
    }
    .hero h2.price{
        font-size: 3rem;
    }
    .sec-1 h2{
        font-size: 3rem;
    }
    .sec-1 .grid{
        grid-template-columns: repeat(1, 1fr);
    }
    .sec-2 h2{
        font-size: 2.5rem;
    }
    .sec-2 .grid{
        grid-template-columns: repeat(1, 1fr);
    }
    .sec-4 .btn{
        padding: 1.5rem 2.5rem;
        font-size: var(--text-md);
    }
    .sec-6 h2{
        font-size: 2rem;
    }
    .sec-6 .big-price{
        font-size: 3rem !important;
    }
    .sec-6 p{
        text-align: center;
    }
    .sec-6 .actions{
        width: 100%;
    }
    .sec-6 .actions .btn{
        display: block;
        margin: 1rem;
        padding: 2rem 3rem;
        font-size: 18px;
    }
    .hero .actions{
        display: flex;
        flex-direction: column;
        gap: 1rem;
        width: 100%;
    }
    .hero .actions .btn{
        margin: 0;
        padding: 2rem 4rem;
        font-size: var(--text-md);
    }
    
}