:root{
    --rojo:#c21617;
    --beige:#eee9e2;
    --gris1:#aaa097;
    --gris2:#a09d9b;
    --gris3:#757473;
}

/* TIPOGRAFÍA */
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family: "sofia-pro-narrow-black", sans-serif;
font-weight: 700;
font-style: normal;
}

body{
    background:var(--beige);
    color:var(--gris3);
}

/* HEADER */
header{
    position:fixed;
    width:100%;
    background:white;
    z-index:10;
}

.nav{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:15px 6%;
}

.logo{
    height:45px;
}

/* MENU */
.menu{
    display:flex;
    gap:25px;
    list-style:none;
}

.menu a{
    text-decoration:none;
    color:var(--gris3);
    font-weight:600;
}

.menu a:hover{
    color:var(--rojo);
}

/* DROPDOWN */
.dropdown{position:relative;}

.submenu{
    position:absolute;
    top:40px;
    background:white;
    padding:10px 0;
    border-radius:12px;
    box-shadow:0 10px 20px rgba(0,0,0,0.1);
    opacity:0;
    visibility:hidden;
    transform:translateY(-10px);
    transition:.3s;
}

.dropdown:hover .submenu{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}

.submenu a{
    display:block;
    padding:10px 20px;
}

.submenu a:hover{
    background:var(--beige);
    color:var(--rojo);
}

/* HERO */
.hero{
    height:100vh;
    width:100%;
    background:url(hero-37.png) center/cover no-repeat;
}

/* capa oscura */
.hero-overlay{
    background:rgba(0,0,0,0.4);
    padding:50px;
    border-radius:12px;
    color:white;
}

.hero h1{
    font-size:70px;
    margin-bottom:10px;
}

.hero p{
    font-size:20px;
    margin-bottom:25px;
}

.hero{
    position:relative; /* importante botón dentro */
}

/* botón bajar en hero */
.hero-scroll-btn{
    position:absolute;
    bottom:40px;
    left:50%;
    transform:translateX(-50%);
    
    width:55px;
    height:55px;
    border:none;
    border-radius:50%;
    
    background:white;
    color:var(--gris3);
    font-size:22px;
    cursor:pointer;
    
    display:flex;
    align-items:center;
    justify-content:center;

    box-shadow:0 10px 20px rgba(0,0,0,0.15);
    transition:.3s;
}

.hero-scroll-btn:hover{
    background:var(--rojo);
    color:white;
    transform:translateX(-50%) translateY(5px);
}

/* botón */
.hero-btn{
    padding:12px 28px;
    border:none;
    border-radius:30px;
    cursor:pointer;
    font-size:16px;
    background:white;
    color:var(--gris3);
    transition:.3s;
}

.hero-btn:hover{
    background:var(--rojo);
    color:white;
    transform:translateY(3px);
}

/* SECCIONES */
.section{
    padding:100px 15%;
    text-align:center;
}

.section.alt{
    background:white;
}

.section-title{
    font-size:40px;
    margin-bottom:20px;
}

.intro{
    max-width:700px;
    margin:auto;
    line-height:1.6;
    font-family: "sofia-pro-narrow-black", sans-serif;
font-weight: 400;
font-style: normal;
}

/* CONTADORES */
.counters{
    display:flex;
    justify-content:center;
    gap:60px;
    margin:50px 0;
    
}

.number{
    font-size:50px;
    font-weight:bold;
    
}

.texto-final{
    font-family: "sofia-pro-narrow-black", sans-serif;
font-weight: 400;
font-style: normal;
}

/* CTA */
.cta{
    padding:120px 20px;
    text-align:center;
}

.cta h2{
    font-size:42px;
    margin-bottom:30px;
}

.cta-btn{
    display:inline-block;
    padding:15px 35px;
    border:none;
    background:var(--gris3);
    color:white;
    border-radius:30px;
    text-decoration:none;
    font-size:18px;
    cursor:pointer;
    transition:.3s;
}

.cta-btn:hover{
    background:var(--rojo);
    transform:scale(1.05);
}

.footer{
    background:var(--gris3);
    color:white;
    padding-top:60px;
}

/* GRID PRINCIPAL */
.footer-container{
    display:grid;
    grid-template-columns:2fr 1fr 1fr 1fr;
    gap:50px;
    padding:0 10% 50px;
}

/* IZQUIERDA */
.footer-left h2{
    font-size:34px;
    margin-bottom:15px;
}

.footer-left p{
    line-height:1.5;
    color:#eee9e2;
    margin-bottom:20px;
    max-width:300px;
}

/* LINKS */
.footer-links h4{
    margin-bottom:15px;
    font-size:18px;
}

.footer-links a{
    display:block;
    color:#eee9e2;
    text-decoration:none;
    margin-bottom:10px;
}

.footer-links a:hover{
    color:var(--rojo);
}

/* REDES SOCIALES */
.socials{
    display:flex;
    gap:12px;
    margin-top:15px;
}

.socials img{
    width:28px;
    height:28px;
    filter:brightness(0) invert(1);
    transition:.3s;
}

.socials img:hover{
    transform:scale(1.15);
}

/* COPYRIGHT */
.footer-bottom{
    text-align:center;
    padding:15px;
    background:#686767;
    font-size:14px;
}

/* BOTÓN SUBIR */
#scrollTopBtn{
    position:fixed;
    bottom:30px;
    right:30px;
    width:60px;
    height:60px;
    border:none;
    cursor:pointer;
    z-index:9999;

    background:var(--gris3);
    color:white;
    font-size:26px;

    display:flex;
    align-items:center;
    justify-content:center;

    /* forma gota */
    border-radius:50% 50% 50% 0;
    transform:rotate(45deg);

    opacity:0;
    visibility:hidden;
    transition:all .4s ease;
}

/* flecha recta */
.arrow{
    transform:rotate(-45deg);
}

/* aparece al hacer scroll */
#scrollTopBtn.show{
    opacity:1;
    visibility:visible;
}

/* hover */
#scrollTopBtn:hover{
    background:var(--rojo);
    transform:rotate(45deg) scale(1.1);
}

.monotalic{
    font-family: "monotalic", sans-serif;
font-weight: 700;
font-style: normal;
}

