@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Montserrat:wght@300;400;500;600;700&display=swap');

:root{
  --black:#070707;
  --noir:#0d0d0d;
  --graphite:#191716;
  --ivory:#f4eee4;
  --cream:#fff8ee;
  --gold:#c7a35a;
  --soft-gold:#ead6a4;
  --wine:#832235;
  --text:#2b2723;
  --muted:#756b62;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ivory);color:var(--text);font-family:'Montserrat',sans-serif;overflow-x:hidden}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}

.cursor-glow{position:fixed;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(199,163,90,.12),transparent 68%);pointer-events:none;transform:translate(-50%,-50%);z-index:1}
.site-header{position:fixed;top:0;left:0;right:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:14px 5vw;background:rgba(7,7,7,.72);border-bottom:1px solid rgba(234,214,164,.18);backdrop-filter:blur(16px);color:white}
.brand{display:flex;gap:12px;align-items:center;text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:700}
.brand img{width:52px;height:52px;object-fit:cover;border-radius:50%;border:1px solid rgba(234,214,164,.42)}
.main-nav{display:flex;gap:18px;align-items:center}
.main-nav a{font-size:11px;letter-spacing:.1em;text-transform:uppercase;opacity:.82}
.main-nav a:hover{opacity:1;color:var(--soft-gold)}
.header-cta{border:1px solid rgba(234,214,164,.55);padding:10px 16px;font-size:12px;text-transform:uppercase;letter-spacing:.12em}
.menu-toggle{display:none;background:none;color:white;border:1px solid rgba(234,214,164,.38);padding:8px 11px;font-size:18px}

.hero{min-height:100vh;position:relative;display:grid;grid-template-columns:1.12fr .88fr;align-items:center;gap:6vw;padding:130px 6vw 80px;color:white;overflow:hidden}
.hero-bg{position:absolute;inset:0;background:url('../img/creadores-hero.jpg') center/cover;transform:scale(1.03)}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.94),rgba(0,0,0,.72) 48%,rgba(0,0,0,.28)),radial-gradient(circle at 70% 30%,rgba(199,163,90,.23),transparent 34%)}
.hero-content,.hero-card{position:relative;z-index:2}
.hero-logo{width:170px;height:170px;object-fit:cover;border-radius:50%;border:1px solid rgba(234,214,164,.38);margin-bottom:24px;box-shadow:0 22px 70px rgba(0,0,0,.55)}
.eyebrow{margin:0 0 18px;color:var(--soft-gold);text-transform:uppercase;letter-spacing:.22em;font-size:12px;font-weight:700}
.eyebrow.dark{color:var(--wine)}
h1,h2,h3{font-family:'Cormorant Garamond',serif;font-weight:600;line-height:.98;margin:0}
h1{font-size:clamp(52px,8vw,108px);letter-spacing:-.055em;max-width:990px}
h2{font-size:clamp(38px,5vw,70px);letter-spacing:-.045em;margin-bottom:20px}
h3{font-size:31px;margin-bottom:14px}
.hero-text{max-width:720px;color:#eee2d3;font-size:18px;line-height:1.8;margin:28px 0 36px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.btn{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:0 28px;text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:800;transition:.3s ease}
.btn.primary{background:var(--gold);color:#111}
.btn.ghost{border:1px solid rgba(234,214,164,.65);color:white}
.btn:hover{transform:translateY(-3px)}
.hero-card{background:rgba(13,13,13,.73);border:1px solid rgba(234,214,164,.28);padding:42px;backdrop-filter:blur(18px);box-shadow:0 30px 100px rgba(0,0,0,.55)}
.hero-card::before{content:"";position:absolute;inset:14px;border:1px solid rgba(255,255,255,.08);pointer-events:none}
.mini-title{color:var(--soft-gold);text-transform:uppercase;letter-spacing:.18em;font-size:11px}
.hero-card h2{font-size:42px;margin-top:20px}
.hero-card p{color:#ded2c2;line-height:1.8}
.reserve-line{height:1px;background:rgba(234,214,164,.26);margin:26px 0}
.reserve-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.reserve-grid strong{color:#f5ead9;font-size:12px;letter-spacing:.08em;text-transform:uppercase}

.luxury-strip{display:flex;justify-content:center;gap:4vw;flex-wrap:wrap;background:var(--black);color:var(--soft-gold);border-block:1px solid rgba(234,214,164,.22);padding:18px 6vw}
.luxury-strip span{font-size:11px;letter-spacing:.22em;text-transform:uppercase}

.section{padding:110px 6vw}
.section-heading{max-width:930px;margin-bottom:52px}
.section-heading.centered{text-align:center;margin-left:auto;margin-right:auto}
.section-heading p,.copy p,.creator-copy p,.featured-dish p{color:var(--muted);line-height:1.85;font-size:17px}
.light-heading h2{color:white}.light-heading p{color:#d7cbbb}
.creators-section{background:linear-gradient(180deg,#f4eee4,#fff8ee)}
.creators-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.creator-photo img{height:620px;width:100%;object-fit:cover;object-position:center;border:1px solid rgba(199,163,90,.35);box-shadow:32px 32px 0 rgba(199,163,90,.14)}
.creator-copy{background:rgba(255,248,238,.94);padding:46px;border:1px solid rgba(131,34,53,.14)}
.creator-copy h3{font-size:44px;color:#161616}
.creator-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.creator-tags span{border:1px solid rgba(131,34,53,.25);padding:10px 13px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--wine)}

.split-section{display:grid;grid-template-columns:.95fr 1.05fr;gap:7vw;align-items:center}
.image-stack{position:relative}
.image-stack img{height:640px;width:100%;object-fit:cover;object-position:center;border:1px solid rgba(199,163,90,.35);box-shadow:32px 32px 0 rgba(199,163,90,.14)}
.floating-card{position:absolute;right:-34px;bottom:56px;width:280px;padding:26px;background:rgba(7,7,7,.88);color:white;border:1px solid rgba(234,214,164,.35)}
.floating-card strong{display:block;font-family:'Cormorant Garamond',serif;color:var(--soft-gold);font-size:34px;line-height:1}
.floating-card span{font-size:13px;color:#e6d9c8}
.signature{margin-top:28px;color:var(--wine);font-family:'Cormorant Garamond',serif;font-size:28px}

.cuisine-section{background:#fff8ee}
.featured-dish{display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:center;margin-bottom:38px;background:#f4eee4;border:1px solid rgba(199,163,90,.22);padding:24px}
.featured-dish img{height:460px;width:100%;object-fit:cover}
.featured-dish div{padding:22px}
.featured-dish h3{font-size:44px;color:#181818}
.masonry-gallery{columns:3 290px;column-gap:18px}
.masonry-gallery figure{break-inside:avoid;margin:0 0 18px;background:#0d0d0d;color:white;position:relative;overflow:hidden;border:1px solid rgba(199,163,90,.24)}
.masonry-gallery img{width:100%;height:auto;transition:.45s ease;filter:saturate(.98) contrast(1.02)}
.masonry-gallery figure:hover img{transform:scale(1.04)}
.masonry-gallery figcaption{position:absolute;left:0;right:0;bottom:0;padding:18px;background:linear-gradient(transparent,rgba(0,0,0,.86));font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:var(--soft-gold)}

.dark-section{background:radial-gradient(circle at 10% 10%,rgba(199,163,90,.12),transparent 30%),var(--noir);color:white}
.dark-section .section-heading p{color:#d7cbbb}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.service-card{min-height:310px;padding:34px;background:linear-gradient(135deg,rgba(255,255,255,.07),rgba(255,255,255,.025));border:1px solid rgba(234,214,164,.22);transition:.35s ease}
.service-card:hover{transform:translateY(-8px);border-color:rgba(234,214,164,.55)}
.service-card span{color:var(--gold);letter-spacing:.22em;font-size:12px;font-weight:800}
.service-card p{color:#d8cfc2;line-height:1.8}

.consultoria{background:linear-gradient(180deg,rgba(255,255,255,.45),rgba(244,238,228,.93)),url('../img/creadores-bn.jpg') center/cover fixed}
.consultoria .section-heading{background:rgba(244,238,228,.92);padding:42px;border:1px solid rgba(131,34,53,.15)}
.diagnostic-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.diagnostic-card{background:rgba(255,248,238,.94);padding:38px;border:1px solid rgba(0,0,0,.08)}
.diagnostic-card.accent{background:rgba(13,13,13,.92);color:white;border-color:rgba(234,214,164,.32)}
.diagnostic-card ul{margin:0;padding-left:20px}
.diagnostic-card li{margin:12px 0;color:#554d45}
.diagnostic-card.accent li{color:#e1d6c6}

.creators-gallery-section{background:var(--black);padding-block:80px}
.scene-gallery{display:grid;grid-template-columns:1.1fr .8fr 1fr;gap:18px}
.scene-gallery img{height:420px;width:100%;object-fit:cover;filter:saturate(.92) contrast(1.05)}
.scene-gallery img:nth-child(2){height:520px;margin-top:-58px}

.quote-section{min-height:440px;display:grid;place-items:center;text-align:center;padding:90px 6vw;color:white;background:linear-gradient(rgba(7,7,7,.78),rgba(7,7,7,.78)),url('../img/platillo-pulpo-negro.jpg') center/cover}
.quote-section p{max-width:990px;font-family:'Cormorant Garamond',serif;font-size:clamp(34px,5vw,72px);line-height:1.12;margin:0;color:#f8efe0}

.contact-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:6vw;align-items:start;padding:110px 6vw;background:linear-gradient(90deg,rgba(7,7,7,.96),rgba(7,7,7,.82)),url('../img/platillo-maridaje.jpg') center/cover;color:white}
.contact-logo{width:145px;height:145px;object-fit:cover;border-radius:50%;border:1px solid rgba(234,214,164,.42);margin-bottom:24px}
.contact-copy p{color:#e1d6c7;line-height:1.85}
.contact-form{display:grid;gap:14px;background:rgba(255,255,255,.07);padding:38px;border:1px solid rgba(234,214,164,.32);backdrop-filter:blur(14px)}
input,select,textarea{width:100%;padding:16px 17px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.94);color:#111;font:500 14px 'Montserrat',sans-serif}
textarea{min-height:138px;resize:vertical}
button{min-height:54px;border:0;background:var(--gold);color:#111;font-weight:800;letter-spacing:.16em;text-transform:uppercase;cursor:pointer}
small{color:#d8ccbd;line-height:1.6}

footer{background:#030303;color:#9f9589;display:flex;justify-content:center;align-items:center;gap:22px;flex-wrap:wrap;padding:28px 6vw;font-size:12px;letter-spacing:.08em;text-transform:uppercase;text-align:center}
footer img{width:58px;height:58px;border-radius:50%;object-fit:cover;border:1px solid rgba(234,214,164,.35)}
footer span:first-of-type{color:var(--soft-gold)}
.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:30;background:#1f8f4d;color:white;padding:14px 18px;border-radius:999px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;box-shadow:0 14px 40px rgba(0,0,0,.35)}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}
.reveal.visible{opacity:1;transform:translateY(0)}

@media(max-width:1120px){
  .main-nav{position:absolute;top:82px;left:0;right:0;background:rgba(7,7,7,.96);display:none;flex-direction:column;padding:22px 6vw;border-bottom:1px solid rgba(234,214,164,.18)}
  .main-nav.open{display:flex}
  .menu-toggle{display:block}
  .header-cta{display:none}
}

@media(max-width:980px){
  .hero,.creators-grid,.split-section,.featured-dish,.service-grid,.diagnostic-grid,.scene-gallery,.contact-section{grid-template-columns:1fr}
  .hero{padding-top:122px}.hero-card{padding:30px}h1{font-size:54px}h2{font-size:42px}
  .hero-logo{width:128px;height:128px}
  .creator-photo img,.image-stack img,.featured-dish img{height:430px;box-shadow:16px 16px 0 rgba(199,163,90,.14)}
  .floating-card{position:relative;right:auto;bottom:auto;margin-top:-60px;margin-left:22px}
  .scene-gallery img,.scene-gallery img:nth-child(2){height:330px;margin-top:0}
  .masonry-gallery{columns:2 260px}
}

@media(max-width:560px){
  .site-header{padding:12px 5vw}.brand span{display:none}
  .hero{padding-inline:5vw}.section,.contact-section{padding:76px 5vw}
  .reserve-grid{grid-template-columns:1fr}.hero-actions .btn{width:100%}.contact-form{padding:24px}
  .masonry-gallery{columns:1}
  .creator-copy{padding:30px}
}
