/* ============================================================
   vinosjerez.es — hoja de estilos
   Paleta: albariza (blanco tierra), fino (oro), oloroso (ámbar),
           PX (marrón profundo), tinta.
   ============================================================ */
:root{
  --albariza:#f7f3ea;   /* fondo tierra clara */
  --albariza-2:#efe7d6;
  --fino:#e8b84b;       /* oro fino */
  --oloroso:#b5762d;    /* ámbar oloroso */
  --px:#5a3410;         /* marrón PX */
  --tinta:#211812;      /* texto casi negro cálido */
  --tinta-soft:#5c4f43;
  --crema:#fffdf8;
  --linea:#e3d8c3;
  --verde:#2f6b4f;      /* acento viñedo (CTAs de reserva) */
  --sombra:0 10px 40px rgba(33,24,18,.10);
  --radio:16px;
  --ancho:1140px;
  --sans:'Poppins',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  --serif:'Playfair Display',Georgia,'Times New Roman',serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:var(--sans);
  color:var(--tinta);
  background:var(--albariza);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3{font-family:var(--serif);font-weight:700;line-height:1.15;letter-spacing:-.01em}
.wrap{max-width:var(--ancho);margin:0 auto;padding:0 20px}
.eyebrow{font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;color:var(--oloroso);font-weight:600}

/* ---------- Barra superior ---------- */
.top{background:var(--tinta);color:var(--albariza);font-size:.82rem}
.top .wrap{display:flex;justify-content:space-between;align-items:center;height:38px;gap:12px}
.top a{opacity:.85}
.top a:hover{opacity:1}

/* ---------- Cabecera / nav ---------- */
header{position:sticky;top:0;z-index:50;background:rgba(247,243,234,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--linea)}
.nav{display:flex;align-items:center;justify-content:space-between;height:66px}
.brand{font-family:var(--serif);font-size:1.4rem;font-weight:800;letter-spacing:-.02em}
.brand span{color:var(--oloroso)}
.menu{display:flex;gap:26px;align-items:center}
.menu a{font-size:.92rem;font-weight:500;color:var(--tinta-soft)}
.menu a:hover{color:var(--px)}
.btn{display:inline-flex;align-items:center;gap:8px;font-weight:600;padding:12px 22px;border-radius:999px;font-size:.95rem;transition:.2s;cursor:pointer;border:none}
.btn-primary{background:var(--verde);color:#fff}
.btn-primary:hover{filter:brightness(1.08);transform:translateY(-1px)}
.btn-oro{background:var(--fino);color:var(--tinta)}
.btn-oro:hover{filter:brightness(1.05);transform:translateY(-1px)}
.btn-ghost{background:transparent;border:1.5px solid var(--tinta);color:var(--tinta)}
.btn-ghost:hover{background:var(--tinta);color:var(--albariza)}
.burger{display:none;font-size:1.6rem;background:none;border:none;cursor:pointer}

/* ---------- Hero ---------- */
.hero{position:relative;overflow:hidden;
  background:
    radial-gradient(1200px 500px at 80% -10%, rgba(232,184,75,.25), transparent 60%),
    linear-gradient(180deg,var(--albariza) 0%, var(--albariza-2) 100%);
  padding:72px 0 84px}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.hero h1{font-size:clamp(2.2rem,5vw,3.6rem);margin:14px 0 18px}
.hero p.lead{font-size:1.15rem;color:var(--tinta-soft);max-width:520px}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.hero-art{position:relative;aspect-ratio:4/5;border-radius:24px;
  box-shadow:var(--sombra);overflow:hidden}
.hero-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-art::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(33,24,18,.55) 100%)}
.hero-art .tag{position:absolute;z-index:2;bottom:18px;left:18px;right:18px;background:rgba(255,253,248,.94);border-radius:12px;padding:12px 16px;font-size:.85rem;color:var(--tinta);box-shadow:0 6px 20px rgba(0,0,0,.18)}
.hero-art .tag b{color:var(--px)}
/* imágenes de relleno */
.cover{width:100%;height:100%;object-fit:cover;display:block}

/* ---------- Doble camino ---------- */
.paths{padding:64px 0}
.paths-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:34px}
.path{background:var(--crema);border:1px solid var(--linea);border-radius:var(--radio);padding:34px;box-shadow:var(--sombra);transition:.25s}
.path:hover{transform:translateY(-4px)}
.path .ico{font-size:2.4rem}
.path h3{font-size:1.5rem;margin:12px 0 8px}
.path p{color:var(--tinta-soft);margin-bottom:18px}

/* ---------- Sección genérica ---------- */
.section{padding:66px 0}
.section.alt{background:var(--albariza-2)}
.section-head{text-align:center;max-width:640px;margin:0 auto 40px}
.section-head h2{font-size:clamp(1.8rem,4vw,2.6rem);margin:10px 0}
.section-head p{color:var(--tinta-soft)}

/* ---------- Tarjetas de vino ---------- */
.vinos-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.vino{background:var(--crema);border:1px solid var(--linea);border-radius:14px;padding:22px;transition:.22s;position:relative}
.vino:hover{transform:translateY(-4px);box-shadow:var(--sombra);border-color:var(--fino)}
.vino .dot{width:34px;height:34px;border-radius:50%;margin-bottom:12px}
.vino h4{font-family:var(--serif);font-size:1.15rem;margin-bottom:6px}
.vino p{font-size:.85rem;color:var(--tinta-soft)}
.vino .mas{font-size:.82rem;font-weight:600;color:var(--oloroso);margin-top:12px;display:inline-block}

/* ---------- Bloque catas (dinero) ---------- */
.catas{background:linear-gradient(160deg,var(--px),#3a2109);color:var(--albariza)}
.catas .wrap{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}
.catas h2{color:#fff;font-size:clamp(1.9rem,4vw,2.7rem)}
.catas p{color:rgba(247,243,234,.85);margin:16px 0 24px}
.catas ul{list-style:none;display:grid;gap:12px;margin-bottom:28px}
.catas li{display:flex;gap:10px;align-items:flex-start;font-size:.98rem}
.catas li::before{content:"✓";color:var(--fino);font-weight:800}
.catas-card{background:var(--crema);color:var(--tinta);border-radius:18px;padding:8px;box-shadow:var(--sombra)}
.catas-card .top-img{border-radius:12px;aspect-ratio:16/10;overflow:hidden;background:var(--albariza-2)}
.catas-card .top-img img{width:100%;height:100%;object-fit:cover;display:block}
.catas-card .body{padding:18px}
.catas-card h4{font-family:var(--serif);font-size:1.25rem}
.catas-card .price{font-size:1.5rem;font-weight:700;color:var(--px);margin:6px 0}
.catas-card .price small{font-size:.85rem;color:var(--tinta-soft);font-weight:500}

/* ---------- Bodegas ---------- */
.bodegas-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.bodega{background:var(--crema);border:1px solid var(--linea);border-radius:14px;overflow:hidden;transition:.22s}
.bodega:hover{transform:translateY(-4px);box-shadow:var(--sombra)}
.bodega .img{aspect-ratio:16/9;overflow:hidden;background:var(--albariza-2)}
.bodega .img img{width:100%;height:100%;object-fit:cover;display:block;transition:.4s}
.bodega:hover .img img{transform:scale(1.05)}
.bodega .body{padding:18px}
.bodega h4{font-family:var(--serif);font-size:1.2rem;margin-bottom:4px}
.bodega p{font-size:.85rem;color:var(--tinta-soft)}

/* ---------- Blog ---------- */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.post{background:var(--crema);border:1px solid var(--linea);border-radius:14px;overflow:hidden;transition:.22s}
.post:hover{transform:translateY(-4px);box-shadow:var(--sombra)}
.post .img{aspect-ratio:16/9;overflow:hidden;background:var(--albariza-2)}
.post .img img{width:100%;height:100%;object-fit:cover;display:block;transition:.4s}
.post:hover .img img{transform:scale(1.05)}
.post .body{padding:20px}
.post .cat{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--oloroso);font-weight:700}
.post h4{font-family:var(--serif);font-size:1.15rem;margin:8px 0}
.post p{font-size:.88rem;color:var(--tinta-soft)}

/* ---------- Newsletter ---------- */
.news{background:var(--tinta);color:var(--albariza);text-align:center;border-radius:24px;padding:54px 24px;margin:0 auto}
.news h2{color:#fff;font-size:2rem}
.news p{color:rgba(247,243,234,.8);margin:12px 0 24px}
.news form{display:flex;gap:10px;max-width:460px;margin:0 auto;flex-wrap:wrap;justify-content:center}
.news input{flex:1;min-width:220px;padding:14px 18px;border-radius:999px;border:none;font-size:.95rem}

/* ---------- Footer ---------- */
footer{background:#1a120c;color:rgba(247,243,234,.75);padding:54px 0 26px;font-size:.9rem}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px;margin-bottom:34px}
footer h5{font-family:var(--serif);color:#fff;font-size:1.1rem;margin-bottom:14px}
footer .brand-f{font-family:var(--serif);font-size:1.5rem;color:#fff;font-weight:800}
footer .brand-f span{color:var(--fino)}
footer ul{list-style:none;display:grid;gap:9px}
footer a:hover{color:var(--fino)}
.disclosure{border-top:1px solid rgba(255,255,255,.12);padding-top:20px;font-size:.78rem;color:rgba(247,243,234,.55);line-height:1.7}
.edad{display:inline-block;border:1px solid rgba(255,255,255,.3);border-radius:8px;padding:4px 10px;font-weight:700;color:#fff;margin-bottom:10px;font-size:.8rem}

/* ---------- Responsive ---------- */
@media(max-width:900px){
  .menu{display:none}
  .burger{display:block}
  .hero .wrap{grid-template-columns:1fr;gap:32px}
  .hero-art{max-width:340px}
  .paths-grid{grid-template-columns:1fr}
  .vinos-grid{grid-template-columns:repeat(2,1fr)}
  .catas .wrap{grid-template-columns:1fr}
  .bodegas-grid,.posts{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  .vinos-grid{grid-template-columns:1fr 1fr}
  .foot-grid{grid-template-columns:1fr}
}
