/* Rocket X — hoja de estilos unica */

:root{
  --tinta:#23211d;
  --texto:#57524a;
  --suave:#8a837a;
  --crema:#faf8f2;
  --crema-2:#f2eee2;
  --borde:#e4dccb;
  --verde:#3d5a35;
  --verde-claro:#7ba23f;
  --verde-pale:#eef3e2;
  --blanco:#ffffff;
  --radio:14px;
  --ancho:1120px;
  --sombra:0 1px 2px rgba(35,33,29,.04), 0 8px 24px -12px rgba(35,33,29,.14);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;
  background:var(--crema);
  color:var(--texto);
  font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--verde)}
a:hover{text-decoration:underline}

h1,h2,h3,h4{
  font-family:"Fraunces","Iowan Old Style","Palatino Linotype",Georgia,serif;
  color:var(--tinta);
  font-weight:600;
  line-height:1.15;
  letter-spacing:-.015em;
  margin:0 0 .5em;
}
h1{font-size:clamp(2.1rem,6vw,3.3rem)}
h2{font-size:clamp(1.6rem,4vw,2.2rem)}
h3{font-size:1.2rem;line-height:1.3}
p{margin:0 0 1.1em}
ul,ol{margin:0 0 1.2em;padding-left:1.25em}
li{margin-bottom:.5em}
strong{color:var(--tinta);font-weight:600}
hr{border:0;border-top:1px solid var(--borde);margin:2.5rem 0}

.contenedor{width:100%;max-width:var(--ancho);margin:0 auto;padding:0 20px}
.estrecho{max-width:720px}
.seccion{padding:64px 0}
.seccion-clara{background:var(--blanco)}
.seccion-verde{background:var(--verde);color:#dfe6d5}
.seccion-verde h2,.seccion-verde h3{color:#fff}

/* ---------- barra superior ---------- */
.barra{
  position:sticky;top:0;z-index:50;
  background:rgba(250,248,242,.92);
  backdrop-filter:saturate(160%) blur(10px);
  border-bottom:1px solid var(--borde);
}
.barra-in{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;row-gap:9px;gap:16px;padding:12px 20px;max-width:var(--ancho);margin:0 auto}
.logo{display:flex;align-items:center;gap:10px;font-family:"Fraunces",Georgia,serif;font-size:1.15rem;font-weight:600;color:var(--tinta);text-decoration:none;letter-spacing:-.02em}
.logo:hover{text-decoration:none}
.logo svg{flex:none}
.logo span small{display:block;font-family:"Inter",sans-serif;font-size:.62rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--suave);line-height:1.4;margin-top:1px}
/* en movil el menu baja a su propia fila y se desliza; en escritorio va al lado del logo */
.menu{
  display:flex;align-items:center;gap:20px;
  width:100%;overflow-x:auto;scrollbar-width:none;
  border-top:1px solid var(--borde);padding-top:9px;
}
.menu::-webkit-scrollbar{display:none}
.menu a{color:var(--texto);font-size:.88rem;font-weight:500;text-decoration:none;white-space:nowrap}
.menu a:hover,.menu a.activo{color:var(--verde)}
.menu a.activo{font-weight:600}
.menu .btn{display:none}
@media(min-width:900px){
  .barra-in{flex-wrap:nowrap;padding:14px 20px}
  .menu{width:auto;gap:26px;overflow:visible;border-top:0;padding-top:0}
  .menu a{font-size:.93rem}
  .menu .btn{display:inline-flex}
}

/* ---------- botones ---------- */
.btn{
  display:inline-flex;align-items:center;gap:9px;
  padding:13px 24px;border-radius:999px;
  font-family:"Inter",sans-serif;font-size:.95rem;font-weight:600;
  text-decoration:none;border:1px solid transparent;cursor:pointer;
  transition:transform .12s ease, box-shadow .18s ease, background .18s ease;
}
.btn:hover{text-decoration:none;transform:translateY(-1px)}
.btn-verde{background:var(--verde);color:#fff;box-shadow:var(--sombra)}
.btn-verde:hover{background:#334c2c;color:#fff}
.btn-linea{background:transparent;color:var(--verde);border-color:var(--borde)}
.btn-linea:hover{border-color:var(--verde);background:var(--verde-pale)}
.btn-claro{background:#fff;color:var(--verde)}
.btn-claro:hover{background:#f2f6ea;color:var(--verde)}
.btn svg{flex:none}

/* ---------- portada ---------- */
.portada{padding:56px 0 64px;background:linear-gradient(180deg,var(--crema-2) 0%,var(--crema) 100%)}
.portada-grid{display:grid;gap:40px;align-items:center}
@media(min-width:900px){.portada-grid{grid-template-columns:1.05fr .95fr;gap:56px}}
.sello{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--verde-pale);color:var(--verde);
  border:1px solid #d9e4c4;border-radius:999px;
  padding:6px 14px;font-size:.78rem;font-weight:600;
  letter-spacing:.03em;margin-bottom:20px;
}
.entradilla{font-size:1.12rem;color:var(--texto);max-width:52ch}
.acciones{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.portada-img{position:relative;border-radius:20px;overflow:hidden;background:var(--verde-pale);box-shadow:var(--sombra)}
.portada-img img{width:100%;aspect-ratio:4/5;object-fit:cover}

/* ---------- tarjetas ---------- */
.rejilla{display:grid;gap:24px}
.rejilla-2{grid-template-columns:1fr}
.rejilla-3{grid-template-columns:1fr}
@media(min-width:760px){.rejilla-2{grid-template-columns:1fr 1fr}.rejilla-3{grid-template-columns:repeat(3,1fr)}}

.tarjeta{
  background:var(--blanco);border:1px solid var(--borde);border-radius:var(--radio);
  padding:26px;box-shadow:var(--sombra);
}
.tarjeta h3{margin-bottom:.4em}
.tarjeta p:last-child{margin-bottom:0}

.producto{
  background:var(--blanco);border:1px solid var(--borde);border-radius:18px;
  overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--sombra);
  transition:transform .16s ease, box-shadow .2s ease;
}
.producto:hover{transform:translateY(-3px);box-shadow:0 2px 4px rgba(35,33,29,.05),0 18px 40px -18px rgba(35,33,29,.24)}
.producto-img{background:var(--verde-pale);aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;overflow:hidden}
.producto-img img{width:100%;height:100%;object-fit:cover}
.producto-vacio{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:10px;color:var(--verde);text-align:center;padding:24px;
  font-family:"Fraunces",Georgia,serif;font-size:1.35rem;line-height:1.25;
}
.producto-vacio small{font-family:"Inter",sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--verde-claro)}
.producto-cuerpo{padding:24px;display:flex;flex-direction:column;flex:1}
.producto-cuerpo h3{margin-bottom:.25em}
.categoria{font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--verde-claro);margin-bottom:10px}
.producto-cuerpo p{font-size:.96rem}
.producto-pie{margin-top:auto;padding-top:16px}

.lista-limpia{list-style:none;padding:0;margin:0}
.lista-limpia li{position:relative;padding-left:28px;margin-bottom:12px}
.lista-limpia li::before{
  content:"";position:absolute;left:0;top:.55em;
  width:14px;height:8px;border-left:2px solid var(--verde-claro);border-bottom:2px solid var(--verde-claro);
  transform:rotate(-45deg);
}

.dato{display:flex;gap:14px;align-items:flex-start;margin-bottom:18px}
.dato-icono{
  flex:none;width:38px;height:38px;border-radius:10px;
  background:var(--verde-pale);color:var(--verde);
  display:flex;align-items:center;justify-content:center;
}
.dato div p{margin:0;font-size:.95rem}
.dato div strong{display:block;color:var(--tinta)}

.aviso{
  background:var(--crema-2);border:1px solid var(--borde);border-left:3px solid var(--verde-claro);
  border-radius:10px;padding:18px 20px;font-size:.9rem;color:var(--texto);
}
.aviso p:last-child{margin-bottom:0}

/* ---------- paginas de texto ---------- */
.cabecera-pagina{background:var(--crema-2);border-bottom:1px solid var(--borde);padding:48px 0 40px}
.cabecera-pagina p{margin:0;color:var(--suave);font-size:.95rem}
.texto-legal{padding:52px 0 64px}
.texto-legal h2{font-size:1.35rem;margin-top:2.2em}
.texto-legal h2:first-of-type{margin-top:0}
.texto-legal h3{font-size:1.05rem;margin-top:1.8em;font-family:"Inter",sans-serif;font-weight:700}
.texto-legal p,.texto-legal li{font-size:1rem}
.migas{font-size:.82rem;color:var(--suave);margin-bottom:14px}
.migas a{color:var(--suave)}

table{width:100%;border-collapse:collapse;margin:0 0 1.5em;font-size:.95rem}
th,td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--borde);vertical-align:top}
th{color:var(--tinta);font-weight:600;background:var(--crema-2)}

/* ---------- pie ---------- */
.pie{background:var(--tinta);color:#a9a29a;padding:56px 0 28px;font-size:.9rem}
.pie a{color:#d6d0c6}
.pie a:hover{color:#fff}
.pie h4{color:#fff;font-family:"Inter",sans-serif;font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin:0 0 14px}
.pie-grid{display:grid;gap:32px;margin-bottom:40px}
@media(min-width:760px){.pie-grid{grid-template-columns:1.4fr 1fr 1fr}}
.pie ul{list-style:none;padding:0;margin:0}
.pie li{margin-bottom:9px}
.pie-legal{border-top:1px solid #3a3630;padding-top:22px;font-size:.8rem;color:#7e786f;line-height:1.7}
.pie-logo{display:flex;align-items:center;gap:10px;color:#fff;font-family:"Fraunces",Georgia,serif;font-size:1.1rem;margin-bottom:14px}

/* ---------- boton flotante de WhatsApp ---------- */
.flotante{
  position:fixed;right:18px;bottom:18px;z-index:60;
  display:flex;align-items:center;gap:9px;
  background:#25D366;color:#0b3d1f;
  padding:13px 20px;border-radius:999px;font-weight:700;font-size:.92rem;
  text-decoration:none;box-shadow:0 8px 24px -6px rgba(0,0,0,.32);
}
.flotante:hover{text-decoration:none;color:#0b3d1f;background:#1fbe5a}
@media(max-width:520px){.flotante{padding:13px 16px}.flotante span{display:none}}

.saltar{position:absolute;left:-9999px}
.saltar:focus{left:12px;top:12px;z-index:99;background:#fff;padding:10px 16px;border-radius:8px}

@media(max-width:899px){.barra{position:static}}
