/* ====================================================================
   BRASA — Steak House · carta.css
   Stili dedicati al menu "cartaceo": estetica intimate, type-driven
   ==================================================================== */

.carta-page{background:var(--bg-1)}
.carta-main{padding-top:0}

/* ============= HERO CARTA ============= */
.carta-hero{
  position:relative;
  height:62vh;min-height:480px;
  display:flex;align-items:flex-end;
  padding-bottom:80px;
  overflow:hidden;
}
.carta-hero__bg{
  position:absolute;inset:0;
  background-size:cover;background-position:center;
  animation:kenburns 18s linear infinite alternate;
}
.carta-hero__veil{
  position:absolute;inset:0;
  background:
    linear-gradient(180deg, rgba(22,32,42,.35) 0%, rgba(22,32,42,.7) 50%, rgba(22,32,42,.95) 100%);
}
.carta-hero__inner{position:relative;z-index:2;text-align:center}
.carta-hero__inner .eyebrow{justify-content:center}
.carta-hero__sub{
  font-family:var(--ff-serif);font-size:clamp(1.05rem, 1.6vw, 1.2rem);
  color:var(--cream);max-width:680px;margin:1.5rem auto 0;font-weight:400;line-height:1.6;
}

/* ============= STICKY TABS ============= */
.carta-tabs{
  position:sticky;top:62px;z-index:50;
  background:rgba(22,32,42,.92);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  border-block:1px solid var(--line-soft);
}
.carta-tabs__inner{
  display:flex;gap:0;
  overflow-x:auto;
  scrollbar-width:none;
  -ms-overflow-style:none;
}
.carta-tabs__inner::-webkit-scrollbar{display:none}
.carta-tabs__inner a{
  flex-shrink:0;
  padding:1rem 1.4rem;
  font-size:.7rem;letter-spacing:.28em;text-transform:uppercase;
  color:var(--text-mute);font-weight:500;
  position:relative;
  white-space:nowrap;
}
.carta-tabs__inner a::after{
  content:"";position:absolute;left:1.4rem;right:1.4rem;bottom:0;height:1px;
  background:var(--copper);transform:scaleX(0);transform-origin:left;
  transition:transform .35s var(--e-out);
}
.carta-tabs__inner a:hover, .carta-tabs__inner a.is-active{color:var(--copper-soft)}
.carta-tabs__inner a.is-active::after{transform:scaleX(1)}

/* ============= CARTA PAPER ============= */
.carta-paper{
  background:var(--bg-1);
  padding:80px 0 40px;
}
.carta-paper__inner{
  max-width:920px;
  margin-inline:auto;
  background:var(--paper);
  color:var(--ink);
  border-radius:6px;
  padding:clamp(2rem, 6vw, 5rem) clamp(1.4rem, 5vw, 4.5rem);
  box-shadow:
    0 50px 120px -40px rgba(0,0,0,.6),
    0 0 0 1px rgba(0,0,0,.05),
    inset 0 0 80px rgba(122,68,30,.06);
  position:relative;
}
/* paper grain */
.carta-paper__inner::before{
  content:"";position:absolute;inset:0;border-radius:6px;
  background-image:
    radial-gradient(rgba(58, 38, 18, .03) 1px, transparent 1px),
    radial-gradient(rgba(58, 38, 18, .02) 1px, transparent 1px);
  background-size:3px 3px, 4px 4px;
  pointer-events:none;
}
.carta-paper__inner > *{position:relative}

/* paper head */
.paper-head{
  display:flex;align-items:center;justify-content:center;gap:1.2rem;
  flex-direction:column;
  margin-bottom:3.5rem;text-align:center;
}
.paper-head__rule{
  width:80px;height:1px;background:var(--copper-deep);
  position:relative;
}
.paper-head__rule::before, .paper-head__rule::after{
  content:"";position:absolute;top:50%;width:5px;height:5px;
  border-radius:50%;background:var(--copper-deep);transform:translateY(-50%);
}
.paper-head__rule::before{left:-10px}.paper-head__rule::after{right:-10px}

.paper-head__brand{
  font-family:var(--ff-display);font-weight:700;
  font-size:clamp(2.6rem, 5vw, 4.2rem);
  letter-spacing:.18em;color:var(--copper-deep);
}
.paper-head__sub{
  font-family:var(--ff-body);font-size:.7rem;letter-spacing:.5em;
  text-transform:uppercase;color:var(--ink);font-weight:500;
}

/* blocks */
.paper-block{margin:0 0 3rem;padding:0;scroll-margin-top:140px}
.paper-block__title{
  font-family:var(--ff-display);font-weight:700;
  font-size:clamp(1.4rem, 2.4vw, 1.9rem);
  color:var(--copper-deep);
  text-align:center;
  text-transform:uppercase;letter-spacing:.18em;
  margin:0 0 .4rem;
  position:relative;
  padding-bottom:.6rem;
}
.paper-block__title::after{
  content:"";display:block;width:60px;height:1px;background:var(--copper-deep);
  margin:.6rem auto 0;
}
.paper-block__sub{
  font-family:var(--ff-display);font-style:italic;font-weight:400;
  font-size:1.4rem;color:var(--ink);text-align:center;margin:0 0 .8rem;
}
.paper-block__lead{
  text-align:center;color:#5a4530;font-style:italic;font-family:var(--ff-serif);
  font-size:1.05rem;margin:0 0 2rem;
}

/* feature block (cortes) */
.paper-block--feature{
  border-block:1px solid var(--copper-deep);
  padding:2.2rem 0 2rem;margin-block:3.5rem;
}
.paper-feature{
  display:flex;align-items:center;justify-content:center;gap:1.2rem;
  margin-bottom:.4rem;
}
.paper-feature__diamond{color:var(--copper-deep);font-size:1rem}
.paper-block--feature .paper-block__title{margin-bottom:.4rem}
.paper-block--feature .paper-block__title::after{display:none}

/* paper list */
.paper-list{margin:0;display:flex;flex-direction:column;gap:1.1rem}
.paper-list--cols{
  display:grid;grid-template-columns:1fr 1fr;gap:1.4rem 3rem;
}
.paper-list--feature{
  font-family:var(--ff-display);
  display:flex;flex-direction:column;gap:.9rem;
}
.paper-list--feature .paper-item__name{font-style:italic;font-size:1.3rem;color:var(--ink)}
.paper-list--feature .paper-item__price{font-family:var(--ff-body);font-weight:500;color:var(--copper-deep)}

.paper-list--mini{
  display:grid;grid-template-columns:repeat(2, 1fr);gap:.6rem 3rem;
}
.paper-list--mini li{
  display:flex;align-items:baseline;gap:.6rem;
  font-family:var(--ff-serif);font-size:1.1rem;color:var(--ink);
}
.paper-list--mini .paper-item__name{flex:1}
.paper-list--mini .paper-item__price{color:var(--copper-deep);font-weight:500}

.paper-item__head{
  display:flex;align-items:baseline;gap:.6rem;
  font-family:var(--ff-display);
}
.paper-item__name{
  font-weight:600;color:var(--ink);font-size:1.05rem;letter-spacing:.01em;
  font-family:var(--ff-display);
}
.paper-item__name em{font-family:var(--ff-serif);font-size:.85em;color:#5a4530;font-weight:400;font-style:italic;margin-left:.3em}
.paper-item__dots{
  flex:1;border-bottom:1px dotted rgba(0,0,0,.25);transform:translateY(-5px);min-width:20px;
}
.paper-item__price{
  font-family:var(--ff-body);font-size:.9rem;font-weight:600;color:var(--copper-deep);
  white-space:nowrap;
}
.paper-item__desc{
  font-family:var(--ff-serif);
  font-size:.95rem;color:#594433;font-weight:400;font-style:italic;
  margin:.25rem 0 0;line-height:1.5;
}

/* paper pair (degustación cards) */
.paper-pair{
  display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;
}
.paper-pair__card{
  border:1px solid var(--copper-deep);
  padding:1.6rem 1.6rem 1.4rem;
  background:linear-gradient(180deg, rgba(255,255,255,.4), transparent);
  position:relative;
}
.paper-pair__card::before{
  content:"";position:absolute;inset:5px;border:1px solid rgba(122,68,30,.18);pointer-events:none;
}
.paper-pair__card h3{
  font-family:var(--ff-display);
  font-size:1.3rem;color:var(--copper-deep);
  margin:0 0 1rem;text-transform:uppercase;letter-spacing:.15em;
  display:flex;align-items:baseline;justify-content:space-between;gap:1rem;
}
.paper-pair__card h3 span{font-family:var(--ff-body);font-size:1rem;letter-spacing:.05em;color:var(--ink);font-weight:600}
.paper-pair__card ul{display:flex;flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none}
.paper-pair__card li{
  font-family:var(--ff-serif);font-size:.95rem;color:var(--ink);font-weight:400;line-height:1.55;
}
.paper-pair__card li strong{color:var(--copper-deep);font-weight:600}

/* paper foot */
.paper-foot{
  display:flex;flex-direction:column;align-items:center;gap:1rem;
  margin-top:3rem;text-align:center;
}
.paper-foot__rule{
  width:80px;height:1px;background:var(--copper-deep);
  position:relative;
}
.paper-foot__rule::before, .paper-foot__rule::after{
  content:"";position:absolute;top:50%;width:5px;height:5px;
  border-radius:50%;background:var(--copper-deep);transform:translateY(-50%);
}
.paper-foot__rule::before{left:-10px}.paper-foot__rule::after{right:-10px}
.paper-foot p{font-family:var(--ff-serif);font-size:.95rem;color:var(--ink);margin:0;font-style:italic}
.paper-foot a{color:var(--copper-deep)}
.paper-foot a:hover{color:var(--copper)}

/* ============= CTA ============= */
.carta-cta{
  padding:140px 0;background:var(--bg-0);text-align:center;
  position:relative;overflow:hidden;
}
.carta-cta__inner{max-width:720px;margin-inline:auto}
.carta-cta__btns{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:1.2rem}

/* ============= RESPONSIVE ============= */
@media (max-width: 760px){
  .carta-hero{height:54vh;min-height:380px;padding-bottom:50px}
  .carta-tabs{top:56px}
  .carta-paper{padding:40px 0 20px}
  .carta-paper__inner{padding:1.6rem 1rem;border-radius:0}
  .paper-list--cols{grid-template-columns:1fr;gap:1.1rem}
  .paper-list--mini{grid-template-columns:1fr;gap:.5rem}
  .paper-pair{grid-template-columns:1fr}
  .paper-block__title{font-size:1.3rem;letter-spacing:.12em}
  .paper-head__brand{font-size:2.4rem}
  .carta-cta{padding:90px 0}
}
