/* Design system global — La Casa del Tull */
:root{
  --c-primary:#f7162e;--c-primary-d:#c80f23;--c-ink:#1b1b2f;--c-muted:#5c5f70;--c-bg:#fff;--c-soft:#f6f6fa;--c-line:#e7e7ef;--c-wa:#1fb855;
  --rainbow:linear-gradient(90deg,#f7162e,#ff8a00,#ffd400,#2bc48a,#1e90ff,#8e44ff,#ff3ea5);
  --r-sm:10px;--r-md:18px;--r-lg:28px;
  --sp-1:.5rem;--sp-2:1rem;--sp-3:1.5rem;--sp-4:2.5rem;--sp-5:4.5rem;
  --max:1180px;--shadow:0 10px 30px rgba(27,27,47,.10);
  --font:'Poppins',system-ui,'Segoe UI',Arial,sans-serif;
}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{font-family:var(--font);color:var(--c-ink);background:var(--c-bg);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none;padding:0}
.container{width:min(100% - 2rem,var(--max));margin-inline:auto}
.section{padding-block:var(--sp-5)}
.section--soft{background:var(--c-soft)}
.eyebrow{font-size:.8rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--c-primary)}
h1,h2,h3{line-height:1.2;font-weight:700}
h2{font-size:clamp(1.6rem,3.2vw,2.3rem);margin:.4rem 0 .8rem}
.lead{color:var(--c-muted);max-width:62ch}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1.6rem;border-radius:999px;font:600 .95rem var(--font);border:2px solid transparent;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s}
.btn:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.btn--sm{padding:.5rem 1.2rem;font-size:.88rem}
.btn--primary{background:var(--c-primary);color:#fff}.btn--primary:hover{background:var(--c-primary-d)}
.btn--wa{background:var(--c-wa);color:#fff}
.btn--ghost{border-color:var(--c-primary);color:var(--c-primary);background:#fff}
:focus-visible{outline:3px solid #1e90ff;outline-offset:2px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.sr-only:focus{position:fixed;top:8px;left:8px;width:auto;height:auto;clip:auto;background:#fff;padding:.6rem 1rem;z-index:200}
.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .6s,transform .6s}
.js .reveal.in{opacity:1;transform:none}
/* Aparición escalonada en cuadrículas */
.cats>.reveal:nth-child(3n+2),.prods>.reveal:nth-child(4n+2),.featured>.reveal:nth-child(4n+2){transition-delay:.08s}
.cats>.reveal:nth-child(3n+3),.prods>.reveal:nth-child(4n+3),.featured>.reveal:nth-child(4n+3){transition-delay:.16s}
.prods>.reveal:nth-child(4n+4),.featured>.reveal:nth-child(4n+4){transition-delay:.24s}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}.js .reveal{opacity:1;transform:none}}
