/* Sobre nosotros · scrollcrafting con animaciones CSS ligadas al scroll.
   Sin librerías. Todo el contenido queda visible si el navegador no soporta
   animation-timeline (Safari) o si el usuario pide menos movimiento. */

.sc{position:relative}
.sc *{box-sizing:border-box}

/* ---- apertura ---- */
.sc-hero{position:relative; min-height:clamp(460px,82vh,760px); border-radius:20px; overflow:hidden;
  display:flex; align-items:flex-end; margin-bottom:8px}
.sc-hero__bg{position:absolute; inset:0; z-index:0; overflow:hidden}
.sc-hero__bg img{width:100%; height:118%; object-fit:cover; object-position:center 30%}
.sc-hero__bg::after{content:""; position:absolute; inset:0;
  background:linear-gradient(0deg,rgba(64,8,16,.94),rgba(64,8,16,.5) 45%,rgba(64,8,16,.2))}
.sc-hero__in{position:relative; z-index:1; padding:clamp(26px,5vw,60px); max-width:720px; color:#fff}
.sc-hero__eye{display:inline-block; font-weight:800; font-size:12px; letter-spacing:.16em; text-transform:uppercase;
  color:#fff; background:var(--accent); padding:7px 14px; border-radius:999px; margin-bottom:18px}
.sc-hero h1{font-family:Archivo,sans-serif; font-weight:800; font-size:clamp(2rem,5vw,3.4rem); line-height:1.03; margin:0; color:#fff}
.sc-hero p{color:rgba(255,255,255,.92); font-size:clamp(1rem,1.6vw,1.18rem); margin:16px 0 0; max-width:60ch}
.sc-hero__leaf{position:absolute; top:clamp(18px,4vw,40px); right:clamp(18px,4vw,50px); width:clamp(60px,9vw,110px);
  z-index:1; opacity:.9}

/* ---- hilo conector: una sola línea que une toda la sección ---- */
.sc-thread{position:relative; padding:56px 0 20px}
.sc-thread__line{position:absolute; left:clamp(18px,4vw,50%); top:0; bottom:0; width:3px; margin-left:-1.5px;
  background:linear-gradient(180deg,var(--accent),var(--bordo)); border-radius:3px; transform-origin:top; z-index:0}
@media (max-width:820px){ .sc-thread__line{left:20px} }

.sc-node{position:relative; z-index:1; padding:40px 0}
.sc-node__dot{position:absolute; left:clamp(18px,4vw,50%); top:48px; width:16px; height:16px; margin-left:-8px;
  border-radius:50%; background:var(--surface); border:3px solid var(--accent); z-index:2}
@media (max-width:820px){ .sc-node__dot{left:20px} }

/* bloque partido imagen + texto, alternado */
.sc-split{display:grid; grid-template-columns:1fr 1fr; gap:clamp(24px,5vw,64px); align-items:center;
  max-width:1080px; margin:0 auto; padding:0 clamp(16px,4vw,40px)}
.sc-split__media{border-radius:16px; overflow:hidden; box-shadow:0 30px 60px -34px rgba(64,8,16,.6)}
.sc-split__media img{width:100%; height:clamp(300px,42vw,460px); object-fit:cover; display:block}
.sc-split__text .sc-eyebrow{display:inline-block; font-weight:800; font-size:12px; letter-spacing:.12em;
  text-transform:uppercase; color:var(--accent); margin-bottom:12px}
.sc-split__text h2{font-family:Archivo,sans-serif; font-size:clamp(1.5rem,3vw,2.2rem); color:var(--bordo); margin:0 0 14px}
.sc-split__text p{color:var(--muted); font-size:1.04rem; line-height:1.65; margin:0}
@media (max-width:820px){
  .sc-split{grid-template-columns:1fr; padding-left:52px}
  .sc-split--rev .sc-split__media{order:-1}
}
@media (min-width:821px){ .sc-split--rev .sc-split__media{order:2} }

/* razones para elegirnos */
.sc-reasons{max-width:1080px; margin:0 auto; padding:0 clamp(16px,4vw,40px)}
@media (max-width:820px){ .sc-reasons{padding-left:52px} }
.sc-reasons h2{font-family:Archivo,sans-serif; font-size:clamp(1.5rem,3vw,2.2rem); color:var(--bordo); margin:0 0 22px}
.sc-reasons__grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:14px}
.sc-reason{background:var(--surface); border:1px solid var(--line); border-radius:14px; padding:20px 18px;
  box-shadow:var(--shadow)}
.sc-reason__ic{width:34px; height:34px; border-radius:10px; background:var(--brand-soft); color:var(--brand);
  display:flex; align-items:center; justify-content:center; margin-bottom:12px}
.sc-reason h3{font-family:Archivo,sans-serif; font-size:1.02rem; margin:0; color:var(--ink); line-height:1.25}

/* banda de imagen a todo lo ancho */
.sc-band{position:relative; min-height:clamp(300px,44vw,440px); border-radius:18px; overflow:hidden;
  display:flex; align-items:center; margin:16px 0}
.sc-band__bg{position:absolute; inset:0; overflow:hidden}
.sc-band__bg img{width:100%; height:120%; object-fit:cover}
.sc-band__bg::after{content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(29,21,18,.82),rgba(29,21,18,.35))}
.sc-band__in{position:relative; z-index:1; padding:clamp(24px,5vw,54px); max-width:600px; color:#fff}
.sc-band__in h2{font-family:Archivo,sans-serif; font-size:clamp(1.5rem,3vw,2.3rem); margin:0 0 12px; color:#fff}
.sc-band__in p{color:rgba(255,255,255,.9); font-size:1.05rem; line-height:1.6; margin:0}

/* sucursales de cierre */
.sc-suc{max-width:1080px; margin:0 auto; padding:0 clamp(16px,4vw,40px); text-align:center}
.sc-suc h2{font-family:Archivo,sans-serif; font-size:clamp(1.6rem,3vw,2.3rem); color:var(--bordo); margin:0 0 8px}
.sc-suc__sub{color:var(--muted); margin:0 auto 26px; max-width:52ch}
.sc-suc__grid{display:grid; grid-template-columns:1fr 1fr; gap:16px; max-width:720px; margin:0 auto 26px}
@media (max-width:600px){ .sc-suc__grid{grid-template-columns:1fr} }
.sc-suc__card{background:var(--surface); border:1px solid var(--line); border-radius:16px; padding:26px 22px; box-shadow:var(--shadow)}
.sc-suc__card .pin{width:40px; height:40px; border-radius:12px; background:var(--bordo-soft); color:var(--bordo);
  display:flex; align-items:center; justify-content:center; margin:0 auto 14px}
.sc-suc__card h3{font-family:Archivo,sans-serif; font-size:1.3rem; color:var(--ink); margin:0 0 4px}
.sc-suc__card p{color:var(--muted); margin:0}

/* ---- animaciones ligadas al scroll (progresivas, con fallback) ---- */
.sc-reveal{opacity:1}                              /* visible por defecto (fallback) */
@keyframes scReveal{from{opacity:0; transform:translateY(30px)} to{opacity:1; transform:none}}
@keyframes scRevealX{from{opacity:0; transform:translateX(var(--from,-36px))} to{opacity:1; transform:none}}
@keyframes scParallax{from{transform:translateY(-7%)} to{transform:translateY(7%)}}
@keyframes scDraw{from{transform:scaleY(0)} to{transform:scaleY(1)}}
@keyframes scGrow{from{transform:scale(1.14)} to{transform:scale(1)}}

@supports (animation-timeline: view()){
  @media (prefers-reduced-motion: no-preference){
    .sc-reveal{opacity:0; animation:scReveal linear both; animation-timeline:view(); animation-range:entry 4% cover 26%}
    .sc-reveal--x{animation-name:scRevealX}
    .sc-thread__line{transform:scaleY(0); animation:scDraw linear both; animation-timeline:view(); animation-range:entry 0% exit 92%}
    .sc-hero__bg img{animation:scParallax linear both; animation-timeline:view(); animation-range:cover 0% cover 100%}
    .sc-band__bg img{animation:scParallax linear both; animation-timeline:view(); animation-range:cover 0% cover 100%}
    .sc-split__media img{animation:scGrow linear both; animation-timeline:view(); animation-range:entry 0% cover 40%}
    .sc-reason{opacity:0; animation:scReveal linear both; animation-timeline:view(); animation-range:entry 2% cover 22%}
  }
}

/* ================= INICIO (landing) ================= */
.home-hero{min-height:clamp(500px,88vh,820px)}
.home-hero__cta{display:flex; gap:12px; flex-wrap:wrap; margin-top:26px}
.btn--lg{padding:14px 26px; font-size:15px; border-radius:10px}

/* franja de valor: continúa el bordó del hero */
.home-strip{background:var(--bordo); color:#fff; border-radius:16px; margin:14px 0 8px;
  display:grid; grid-template-columns:repeat(4,1fr); gap:8px; padding:26px 22px; text-align:center}
.home-strip__it{display:flex; flex-direction:column; gap:4px; position:relative}
.home-strip__it + .home-strip__it::before{content:""; position:absolute; left:-4px; top:50%; transform:translateY(-50%);
  height:38px; width:1px; background:rgba(255,255,255,.18)}
.home-strip__n{font-family:Archivo,sans-serif; font-weight:800; font-size:clamp(1.6rem,3.4vw,2.4rem); line-height:1; color:#fff}
.home-strip__l{font-size:12.5px; color:rgba(255,255,255,.82); letter-spacing:.02em}
@media (max-width:640px){
  .home-strip{grid-template-columns:1fr 1fr; gap:18px 8px}
  .home-strip__it:nth-child(odd) + .home-strip__it::before,
  .home-strip__it:nth-child(3)::before{display:none}
}

/* recetas destacadas */
.home-recetas{max-width:1080px; margin:0 auto; padding:0 clamp(16px,4vw,40px)}
@media (max-width:820px){ .home-recetas{padding-left:52px} }
.home-recetas__head{display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:20px; flex-wrap:wrap}
.home-recetas__head h2{font-family:Archivo,sans-serif; font-size:clamp(1.4rem,2.6vw,2rem); color:var(--bordo); margin:6px 0 0}
.home-recetas__grid{display:grid; grid-template-columns:repeat(3,1fr); gap:16px}
@media (max-width:760px){ .home-recetas__grid{grid-template-columns:1fr} }

/* CTA final */
.home-cta{max-width:820px; margin:0 auto; text-align:center; background:linear-gradient(135deg,var(--bordo),var(--bordo-2));
  color:#fff; border-radius:20px; padding:clamp(32px,5vw,56px)}
.home-cta h2{font-family:Archivo,sans-serif; font-size:clamp(1.5rem,3vw,2.3rem); color:#fff; margin:0 0 12px}
.home-cta p{color:rgba(255,255,255,.9); margin:0 auto 24px; max-width:52ch; font-size:1.05rem}
.home-cta .btn--primary{background:#fff; color:var(--bordo); border-color:#fff}
.home-cta .btn--primary:hover{filter:none; background:var(--bg)}

/* nodo final del hilo */
.sc-node__dot--end{background:var(--bordo); border-color:var(--bordo); width:20px; height:20px; margin-left:-10px}

/* micro-interacción sutil en las tarjetas de receta destacada */
.home-recetas .receta{transition:transform .22s cubic-bezier(.2,0,0,1), box-shadow .22s}

/* ===== corrección del hilo (24/09): riel a la izquierda, alineado, sin pisar contenido ===== */
.sc-thread{padding:44px 0 12px}
.sc-thread__line{left:24px; margin-left:-1.5px}
.sc-node{padding:30px 0}
.sc-node__dot{left:24px; margin-left:-8px; top:42px}
/* los bloques ocupan el ancho disponible y dejan lugar al riel a la izquierda */
.sc-split,
.sc-reasons,
.sc-suc,
.home-recetas,
.home-cta{max-width:none; margin:0; padding-left:clamp(52px,5vw,68px); padding-right:0}
.sc-band{margin-left:clamp(52px,5vw,68px); margin-right:0}
@media (max-width:820px){
  .sc-split,
  .sc-reasons,
  .sc-suc,
  .home-recetas,
  .home-cta{padding-left:52px}
  .sc-band{margin-left:52px}
  .sc-thread__line{left:24px}
  .sc-node__dot{left:24px}
}

/* ===== 24/09 (2): se quita la línea/hilo; contenido centrado y aireado ===== */
.sc-thread__line, .sc-node__dot{display:none !important}
.sc-thread{padding:24px 0 8px}
.sc-node{padding:30px 0}
.sc-split, .sc-reasons, .sc-suc, .home-recetas, .home-cta,
.sc-resenas{max-width:1180px; margin:0 auto; padding-left:clamp(16px,4vw,32px); padding-right:clamp(16px,4vw,32px)}
.sc-band{max-width:1180px; margin:16px auto}
@media (max-width:820px){
  .sc-split, .sc-reasons, .sc-suc, .home-recetas, .home-cta, .sc-resenas{padding-left:clamp(16px,5vw,22px)}
  .sc-band{margin:16px auto}
}

/* ---- reseñas ---- */
.sc-resenas__head{text-align:center; margin-bottom:24px}
.sc-resenas__head .sc-eyebrow{display:inline-block; font-weight:800; font-size:12px; letter-spacing:.12em; text-transform:uppercase; color:var(--accent); margin-bottom:8px}
.sc-resenas__head h2{font-family:Archivo,sans-serif; font-size:clamp(1.5rem,3vw,2.2rem); color:var(--bordo); margin:0 0 6px}
.sc-resenas__grid{display:grid; grid-template-columns:repeat(3,1fr); gap:16px}
@media (max-width:760px){ .sc-resenas__grid{grid-template-columns:1fr} }
.rese{padding:22px 20px; display:flex; flex-direction:column; gap:12px}
.rese__stars{display:flex; gap:2px; color:var(--accent)}
.rese__txt{margin:0; font-size:14.5px; line-height:1.6; color:var(--ink); font-style:italic}
.rese__aut{display:flex; flex-direction:column}
.rese__aut strong{font-family:Archivo,sans-serif; color:var(--ink)}
.rese__aut span{font-size:12.5px; color:var(--muted)}

/* ---- sucursales con mapa ---- */
.sc-suc__card--map{padding:0; overflow:hidden; text-align:left}
.sc-suc__card--map .sc-suc__body{padding:22px 22px 8px}
.sc-suc__card--map .pin{margin:0 0 12px}
.sc-suc__card--map h3{margin:0 0 2px}
.sc-map{margin-top:12px; line-height:0}
.sc-map iframe{width:100%; height:230px; border:0; display:block; filter:saturate(.95)}

/* ---- contacto ---- */
.sc-contact{display:flex; gap:12px; flex-wrap:wrap; justify-content:center; margin-top:26px}
.sc-contact__it{display:inline-flex; align-items:center; gap:8px; padding:10px 18px; border-radius:999px;
  border:1px solid var(--line); background:var(--surface); color:var(--ink); font-weight:700; font-size:14px}
.sc-contact__it:hover{background:var(--surface-2); text-decoration:none; border-color:var(--accent); color:var(--accent)}

/* ===== 24/09 (3): Inicio/Nosotros separados + pulido premium ===== */
.sc-flow{position:relative; padding:6px 0}

/* hero de Nosotros (más compacto) */
.nosotros-hero{min-height:clamp(320px,54vh,500px)}

/* hint de scroll en el hero */
.sc-scrollhint{position:absolute; left:50%; bottom:20px; transform:translateX(-50%); z-index:2;
  width:26px; height:42px; border:2px solid rgba(255,255,255,.55); border-radius:14px; display:flex; justify-content:center; padding-top:7px}
.sc-scrollhint span{width:4px; height:9px; border-radius:2px; background:#fff; animation:scrollhint 1.7s ease-in-out infinite}
@keyframes scrollhint{0%{opacity:0; transform:translateY(-4px)} 40%{opacity:1} 80%{opacity:0; transform:translateY(9px)} 100%{opacity:0}}
@media (prefers-reduced-motion:reduce){.sc-scrollhint span{animation:none}}

/* showcase de rubros (Inicio) */
.home-cats-wrap{max-width:1180px; margin:0 auto; padding:0 clamp(16px,4vw,32px)}
.home-cats{display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:14px; margin-top:22px}
.home-cat{display:flex; flex-direction:column; align-items:flex-start; gap:5px; text-align:left; position:relative; overflow:hidden;
  background:var(--surface); border:1px solid var(--line); border-radius:16px; padding:22px 20px; cursor:pointer;
  transition:transform .24s cubic-bezier(.2,0,0,1), box-shadow .24s, border-color .24s}
.home-cat:hover{transform:translateY(-4px); border-color:var(--accent); box-shadow:0 26px 46px -26px rgba(64,8,16,.45)}
.home-cat__ic{width:48px; height:48px; border-radius:13px; background:var(--bordo-soft); color:var(--bordo); display:flex; align-items:center; justify-content:center; margin-bottom:8px; transition:background-color .24s, color .24s}
.home-cat:hover .home-cat__ic{background:var(--accent-soft); color:var(--accent)}
.home-cat__nom{font-family:Archivo,sans-serif; font-weight:700; font-size:1.06rem; color:var(--ink); line-height:1.2}
.home-cat__n{font-size:12.5px; color:var(--muted)}
.home-cat__go{position:absolute; right:18px; bottom:16px; color:var(--accent); font-size:20px; opacity:0; transform:translateX(-6px); transition:opacity .22s, transform .22s}
.home-cat:hover .home-cat__go{opacity:1; transform:none}

/* ---- pulido premium de reveals (más lento y elegante) ---- */
@keyframes scReveal{from{opacity:0; transform:translateY(38px)} to{opacity:1; transform:none}}
@keyframes scRevealX{from{opacity:0; transform:translateX(var(--from,-44px))} to{opacity:1; transform:none}}
@supports (animation-timeline: view()){
  @media (prefers-reduced-motion: no-preference){
    .sc-reveal{animation-range:entry 2% cover 30%}
    .home-cat{opacity:0; animation:scReveal linear both; animation-timeline:view(); animation-range:entry 0% cover 24%}
    .receta.sc-reveal{opacity:0; animation:scReveal linear both; animation-timeline:view(); animation-range:entry 0% cover 26%}
    /* stagger sutil por --i en grillas */
    .home-cat, .receta.sc-reveal, .sc-reason.sc-reveal{animation-delay:calc(var(--i,0) * 0ms)}
  }
}
/* franja de valor: números premium */
.home-strip__n{font-variant-numeric:tabular-nums}

/* ---- hero con imágenes que rotan (crossfade) ---- */
.sc-hero__bg .hero-slide{position:absolute; inset:0; width:100%; height:118%; object-fit:cover; object-position:center 30%; opacity:0; transition:opacity 1.3s ease}
.sc-hero__bg .hero-slide.is-active{opacity:1}
@media (prefers-reduced-motion:reduce){ .sc-hero__bg .hero-slide{transition:none} }

/* ---- dejar reseña en Google ---- */
.sc-resenas__cta{text-align:center; margin-top:26px}
.sc-gbtn{gap:9px}
.sc-resenas__note{font-size:12.5px; margin:10px 0 0}
.sc-suc__rev{display:inline-flex; align-items:center; gap:7px; margin-top:12px; font-weight:700; font-size:13.5px; color:var(--accent)}
.sc-suc__rev:hover{text-decoration:underline}

/* ---- horario ---- */
.sc-horario{display:inline-flex; align-items:center; gap:9px; margin:-8px auto 24px; padding:9px 16px; border-radius:999px;
  background:var(--surface-2); color:var(--muted); font-size:13.5px; font-weight:600}
.sc-horario svg{color:var(--accent); flex:none}

/* ================= CALCULADORA DE PRODUCCIÓN ================= */
.calc{display:grid; grid-template-columns:minmax(300px,380px) 1fr; gap:clamp(20px,3vw,34px); align-items:start; margin-top:8px}
.calc__panel{position:sticky; top:82px}
.calc__panel .field{margin-bottom:16px}
.calc__kg{display:flex; align-items:center; gap:8px}
.calc__kg input{width:88px; text-align:center; font-weight:700; font-size:18px}
.calc__unit{color:var(--muted); font-weight:600}
.calc__step{width:38px; height:38px; flex:0 0 auto; border:1px solid var(--line); background:var(--surface); border-radius:var(--radius-sm); font-size:20px; line-height:1; color:var(--ink); cursor:pointer; display:grid; place-items:center; transition:background .2s, transform .1s}
.calc__step:hover{background:var(--surface-2)}
.calc__step:active{transform:scale(.94)}
.calc__chips{display:flex; flex-wrap:wrap; gap:8px; margin-top:12px}
.calc__chips button{border:1px solid var(--line); background:var(--surface-2); color:var(--muted); border-radius:999px; padding:6px 14px; font-weight:650; font-size:13px; cursor:pointer; transition:.2s}
.calc__chips button:hover{border-color:var(--brand); color:var(--brand)}
.calc__base{margin:12px 0 0; font-size:13px}
.calc__nota{margin:14px 0 0; font-size:12.5px; padding-top:14px; border-top:1px solid var(--line)}

.calc-out{padding:0; overflow:hidden}
.calc-out__head{display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; padding:18px 18px 16px}
.calc-out__head h3{margin:0; font-family:Archivo,sans-serif; font-size:1.18rem; color:var(--bordo)}
.calc-list{border-top:1px solid var(--line)}
.calc-row{display:flex; align-items:center; justify-content:space-between; gap:14px; padding:13px 18px; border-bottom:1px solid var(--line-2)}
.calc-row__nom{font-weight:650; color:var(--ink); font-size:14.5px}
.calc-row__rinde{display:block; font-weight:500; font-size:12px; margin-top:2px}
.prod__consultar{font-weight:800; color:var(--bordo)}
.calc-row__meta{display:flex; align-items:center; gap:14px; flex:0 0 auto}
.calc-row__q{min-width:70px; text-align:right; font-weight:800; color:var(--bordo); font-variant-numeric:tabular-nums}
.calc-row__q--gusto{color:var(--muted); font-weight:650; font-style:italic}
.calc-row__price{font-weight:700; color:var(--ink); white-space:nowrap}
.calc-row__off{font-size:12.5px}
.calc-mat{padding:16px 18px; background:var(--surface-2)}
.calc-mat h4{margin:0 0 10px; font-size:12px; text-transform:uppercase; letter-spacing:.08em; color:var(--muted)}
.calc-mat ul{list-style:none; margin:0; padding:0; display:grid; gap:8px}
.calc-mat li{display:flex; justify-content:space-between; gap:12px; font-size:14px; color:var(--muted)}
.calc-mat li b{color:var(--ink); font-variant-numeric:tabular-nums}
.calc-msg{padding:0 18px 16px; margin:10px 0 0; font-size:12.5px}
@media (max-width:820px){
  .calc{grid-template-columns:1fr}
  .calc__panel{position:static}
  .calc-out__head button{width:100%}
}

/* ================= CÓMO COMPRAR ================= */
.pasos{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin:6px 0 30px}
.buy-step{background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); padding:22px 20px; box-shadow:var(--shadow)}
.buy-step__n{display:grid; place-items:center; width:34px; height:34px; border-radius:50%; background:var(--bordo); color:var(--bordo-ink); font-weight:800; font-family:Archivo,sans-serif; margin-bottom:14px}
.buy-step h3{margin:0 0 6px; font-size:1.05rem; font-family:Archivo,sans-serif; color:var(--ink)}
.buy-step p{margin:0; color:var(--muted); font-size:14px}

.info-cards{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-bottom:36px; align-items:start}
.info-card__ic{width:44px; height:44px; border-radius:12px; display:grid; place-items:center; background:var(--brand-soft); color:var(--brand); margin-bottom:14px}
.info-card h3{margin:0 0 8px; font-size:1.1rem; font-family:Archivo,sans-serif; color:var(--ink)}
.info-card>p{margin:0 0 12px; color:var(--muted); font-size:14px}
.info-list{list-style:none; margin:0 0 12px; padding:0; display:grid; gap:7px}
.info-list li{font-size:14px; color:var(--muted); padding-left:16px; position:relative}
.info-list li::before{content:""; position:absolute; left:0; top:8px; width:6px; height:6px; border-radius:50%; background:var(--brand)}
.info-list strong{color:var(--ink); font-weight:700}
.info-horario{display:flex; align-items:flex-start; gap:8px; margin:0; color:var(--muted); font-size:13px; padding-top:12px; border-top:1px solid var(--line)}
.info-horario svg{color:var(--bordo); flex:0 0 auto; margin-top:1px}
.info-wa{display:inline-flex; align-items:center; gap:8px; color:var(--brand); font-weight:700; font-size:14px}
.info-wa svg{flex:0 0 auto}

.faq{margin-top:8px}
.faq__head{margin-bottom:18px}
.faq__head h2{margin:0; font-family:Archivo,sans-serif; font-size:clamp(1.4rem,2.4vw,1.9rem); color:var(--ink)}
.faq__list{display:grid; gap:10px}
.faq__item{background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden}
.faq__item summary{cursor:pointer; list-style:none; padding:16px 18px; font-weight:650; color:var(--ink); display:flex; align-items:center; justify-content:space-between; gap:14px}
.faq__item summary::-webkit-details-marker{display:none}
.faq__item summary::after{content:"+"; font-size:22px; line-height:1; color:var(--bordo); flex:0 0 auto; transition:transform .3s}
.faq__item[open] summary::after{transform:rotate(45deg)}
.faq__item summary:hover{color:var(--bordo)}
.faq__a{padding:0 18px 16px; color:var(--muted); font-size:14.5px; line-height:1.6}
.faq__a p{margin:0}
.faq__a a{color:var(--brand); font-weight:700}
.faq__cta{display:flex; align-items:center; gap:16px; flex-wrap:wrap; margin-top:22px; padding:18px 20px; background:var(--bordo-soft); border-radius:var(--radius)}
.faq__cta p{margin:0; color:var(--ink); font-weight:600}
@media (max-width:820px){ .pasos{grid-template-columns:1fr} .info-cards{grid-template-columns:1fr} }

/* ================= MI CUENTA ================= */
.acct-benes{display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin:6px 0 24px}
.acct-bene{display:flex; gap:11px; align-items:flex-start; background:var(--surface-2); border-radius:var(--radius); padding:14px 16px}
.acct-bene__ic{flex:none; width:30px; height:30px; border-radius:8px; display:grid; place-items:center; background:var(--brand-soft); color:var(--brand)}
.acct-bene strong{display:block; font-size:14px; color:var(--ink)}
.acct-bene span{display:block; font-size:12.5px; color:var(--muted); margin-top:2px; line-height:1.45}

.acct-cols{display:grid; grid-template-columns:1.1fr 1fr; gap:18px; align-items:start}
.acct-card h3{margin:0 0 4px; font-family:Archivo,sans-serif; font-size:1.2rem; color:var(--ink)}
.acct-card>.muted{margin:0 0 16px}
.acct-card .btn--block{margin-top:4px}
.acct-priv{font-size:12px; margin:14px 0 0; padding-top:12px; border-top:1px solid var(--line)}

.acct-panel{display:grid; gap:18px}
.acct-hi{display:flex; align-items:center; gap:16px}
.acct-hi__av{flex:none; width:52px; height:52px; border-radius:50%; display:grid; place-items:center; background:var(--bordo); color:var(--bordo-ink); font-family:Archivo,sans-serif; font-weight:800; font-size:22px}
.acct-hi__id{flex:1; min-width:0}
.acct-hi__id h3{margin:0; font-family:Archivo,sans-serif; font-size:1.2rem; color:var(--ink)}
.acct-hi__id span{font-size:13.5px}
.acct-grid{display:grid; grid-template-columns:1.2fr 1fr; gap:18px; align-items:start}
.acct-h{margin:0 0 14px; font-size:12px; text-transform:uppercase; letter-spacing:.07em; color:var(--faint); font-weight:750}
.acct-cart__n{margin:0 0 6px; font-size:14px; color:var(--muted)}
.acct-cart__n strong{font-size:20px; color:var(--ink); font-family:Archivo,sans-serif}
.acct-peds__list{display:grid; gap:12px}
.acct-ped{border:1px solid var(--line); border-radius:var(--radius-sm); padding:13px 15px}
.acct-ped__top{display:flex; align-items:center; justify-content:space-between; gap:10px}
.acct-ped__top strong{font-family:Archivo,sans-serif; font-size:14.5px}
.acct-ped p{margin:6px 0; font-size:13px; line-height:1.45}
.acct-ped__foot{display:flex; align-items:center; justify-content:space-between; gap:10px; font-size:12.5px; color:var(--muted)}
.acct-ped__foot strong{color:var(--ink); font-size:14px}
@media (max-width:820px){
  .acct-benes{grid-template-columns:1fr}
  .acct-cols{grid-template-columns:1fr}
  .acct-grid{grid-template-columns:1fr}
}
