
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    font-family:'Montserrat', sans-serif;
    background:#0a0a0a;
    color:white;
}

/* HERO */
.hero{
    position:relative;
    height:100vh;
    overflow:hidden;
}

.bg-video{
    position:absolute;
    width:100%;
    height:100%;
    object-fit:cover;
    filter:brightness(0.6);
}

.overlay{
    position:absolute;
    width:100%;
    height:100%;
    background:linear-gradient(to bottom, rgba(0,0,0,0.3), #0a0a0a);
}

.hero-content{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    text-align:center;
}



.hero h1{
    font-family:'Playfair Display', serif;
    font-size:70px;
    letter-spacing:4px;
}

.hero p{
    margin-top:15px;
    font-size:18px;
    color:#c9a75d;
    letter-spacing:3px;
}

/* BOTON */
.btn{
    display:inline-block;
    margin-top:30px;
    padding:12px 30px;
    border:1px solid #c9a75d;
    color:#c9a75d;
    text-decoration:none;
    transition:0.3s;
}

.btn:hover{
    background:#c9a75d;
    color:#0a0a0a;
}

/* CHEF */
.chef{
    padding:120px 10%;
}

.chef-content{
    display:flex;
    gap:80px;
    align-items:center;
    flex-wrap:wrap;
}

.chef-text{
    flex:1;
    animation:fadeUp 1.5s ease;
}

.chef-text h2{
    font-family:'Playfair Display', serif;
    font-size:50px;
}

.chef-text span{
    display:block;
    margin:10px 0 20px;
    color:#c9a75d;
    letter-spacing:2px;
}

.chef-text p{
    font-size:16px;
    line-height:1.8;
    max-width:500px;
}

.line{
    margin-top:30px;
    width:60px;
    height:2px;
    background:#c9a75d;
}

/* GALERIA */
.chef-gallery{
    flex:1;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:15px;
}

.chef-gallery img{
    width:100%;
    height:250px;
    object-fit:cover;
    filter:grayscale(100%);
    transition:0.5s;
}

.chef-gallery img:nth-child(1){
    grid-column:span 2;
    height:300px;
}

.chef-gallery img:hover{
    filter:grayscale(0%);
    transform:scale(1.05);
}

/* SECCION EXTRA */
.signature{
    text-align:center;
    padding:100px 20px;
}

.signature h2{
    font-family:'Playfair Display', serif;
    font-size:40px;
}

.signature p{
    margin-top:15px;
    color:#aaa;
}

/* FOOTER */
.footer{
    text-align:center;
    padding:30px;
    border-top:1px solid rgba(255,255,255,0.1);
    color:#777;
}

@keyframes fadeIn{
    from{opacity:0; transform:translateY(20px);} 
    to{opacity:1; transform:translateY(0);} 
}

@keyframes fadeUp{
    from{opacity:0; transform:translateY(40px);} 
    to{opacity:1; transform:translateY(0);} 
}

/* RESPONSIVE */
@media(max-width:768px){

.hero h1{
    font-size:38px;
}

.hero p{
    font-size:14px;
}

.chef-content{
    flex-direction:column;
    text-align:center;
}

.chef-text p{
    margin:auto;
}

.chef-gallery img{
    height:200px;
}

}

.hero::after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:radial-gradient(ellipse at center, rgba(0,0,0,0) 40%, rgba(0,0,0,0.6) 100%);
}

/* Título con brillo sutil */
.hero h1{
    text-shadow:0 10px 30px rgba(0,0,0,0.6);
}

/* Subtítulo con línea animada */
.hero p{
    position:relative;
    display:inline-block;
}
.hero p::after{
    content:"";
    display:block;
    height:1px;
    width:0%;
    margin:8px auto 0;
    background:#c9a75d;
    transition:width .6s ease;
}
.hero-inner:hover p::after{
    width:80%;
}

/* Botón con glow premium */
.btn{
    border-radius:30px;
    letter-spacing:2px;
    position:relative;
    overflow:hidden;
}
.btn::before{
    content:"";
    position:absolute;
    top:0;
    left:-100%;
    width:100%;
    height:100%;
    background:linear-gradient(120deg, transparent, rgba(255,255,255,0.4), transparent);
    transition:0.6s;
}
.btn:hover::before{
    left:100%;
}

/* Tarjeta chef con glass effect */
.chef-content{
    backdrop-filter:blur(8px);
}

/* Imágenes con sombra premium */
.chef-gallery img{
    border-radius:10px;
    box-shadow:0 10px 25px rgba(0,0,0,0.5);
}

/* Hover más fino */
.chef-gallery img:hover{
    transform:scale(1.07) rotate(0.5deg);
}

/* Línea animada */
.line{
    position:relative;
    overflow:hidden;
}
.line::after{
    content:"";
    position:absolute;
    left:-100%;
    top:0;
    width:100%;
    height:100%;
    background:#fff;
    animation:lineMove 3s infinite;
}

@keyframes lineMove{
    0%{left:-100%;}
    50%{left:100%;}
    100%{left:100%;}
}

/* Sección signature con fondo sutil */
.signature{
    background:linear-gradient(to top, #0a0a0a, #111);
}

/* Footer más elegante */
.footer{
    font-size:14px;
    letter-spacing:1px;
}

/* Scroll suave */
html{
    scroll-behavior:smooth;
}

.hero-inner{
    opacity:0;
    animation:luxFade 2.5s ease forwards;
}

/* TITULO LUJO */
.hero h1{
    font-family:'Playfair Display', serif;
    font-size:70px;
    letter-spacing:4px;

    background:linear-gradient(90deg,#d4af37,#fff3c4,#d4af37);
    background-size:200% auto;

    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;

    opacity:0;
    transform:translateY(30px);

    animation:goldReveal 2.5s ease forwards;
}

/* SUBTITULO */
.hero p{
    margin-top:15px;
    font-size:18px;
    letter-spacing:3px;

    opacity:0;
    transform:translateY(20px);

    animation:fadeLuxury 3s ease forwards;
    animation-delay:0.8s;
}

/* ANIMACIONES */

@keyframes luxFade{
    0%{
        opacity:0;
    }
    100%{
        opacity:1;
    }
}

@keyframes goldReveal{
    0%{
        opacity:0;
        transform:translateY(40px);
        background-position:0% center;
    }
    100%{
        opacity:1;
        transform:translateY(0);
        background-position:200% center;
    }
}

@keyframes fadeLuxury{
    0%{
        opacity:0;
        transform:translateY(30px);
    }
    100%{
        opacity:1;
        transform:translateY(0);
    }
}

.nav a{
  color:#ccc;
  text-decoration:none;
  letter-spacing:6px;
  font-size:18px;
  transition:0.3s;
}

.nav a:hover{
  color:#d4af37;
}


.nav{
  display:flex;
  justify-content:center;
  gap:60px;
  padding:20px 0;
 align-items:center; /* 👈 esto arregla lo de las letras arriba */
  background:#0b0b0b;  
}

.logo img{
  height: 70px;   
  width: auto;
  display: block;
  align-items: center;
}

/* my one model responsive */
@media (max-width: 768px){

  .nav{
    flex-direction:column;
    gap:15px;
    text-align:center;
  }

  .nav{ gap:30px; }
}
