:root{
  --bg:#1a1a1a;
  --surface:#242424;
  --texto:#f5efe0;
  --texto-suave:#c9c0ab;
  --acento:#c0271a;
  --acento-2:#ff6b4a;
  --borde:#3a3a3a;

  --font-display:system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --font-mono:ui-monospace,'SF Mono',Menlo,monospace;

  --sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:40px;--sp-7:64px;
}

*{box-sizing:border-box;margin:0}

html{-webkit-text-size-adjust:100%}

body{
  background:var(--bg);
  color:var(--texto);
  font-family:var(--font-display);
  line-height:1.6;
  padding-bottom:72px;
}

@media (min-width:768px){
  body{padding-bottom:0}
}

img{max-width:100%;display:block}

a{color:inherit}

ul,ol{list-style:none;padding:0}

.sr-solo{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

:focus-visible{
  outline:2px solid var(--acento-2);
  outline-offset:3px;
}

@media (prefers-reduced-motion:reduce){
  *{transition:none !important;animation:none !important}
}

.titulo-seccion{
  font-family:var(--font-display);
  font-weight:800;
  font-size:clamp(1.8rem,5vw,2.75rem);
  letter-spacing:-0.01em;
  line-height:1.05;
  text-transform:uppercase;
  margin-bottom:var(--sp-5);
}

/* ---------- botones ---------- */
.boton{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:var(--sp-3) var(--sp-5);
  font-family:var(--font-display);
  font-weight:800;
  font-size:1rem;
  text-decoration:none;
  border-radius:0;
  border:2px solid transparent;
  transition:opacity .15s ease;
}
.boton:hover{opacity:.88}

.boton--primario{
  background:var(--acento);
  color:var(--texto);
}

.boton--secundario{
  background:transparent;
  color:var(--texto);
  border-color:var(--texto);
}

/* ---------- barra fija (móvil) ---------- */
.barra-fija{
  position:fixed;
  left:0;right:0;bottom:0;
  display:flex;
  z-index:50;
  background:var(--surface);
  border-top:1px solid var(--borde);
}
@media (min-width:768px){
  .barra-fija{display:none}
}
.barra-fija__boton{
  flex:1;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:56px;
  font-family:var(--font-display);
  font-weight:800;
  text-decoration:none;
  font-size:1rem;
}
.barra-fija__boton--llamar{
  background:var(--acento);
  color:var(--texto);
}
.barra-fija__boton--llegar{
  background:var(--bg);
  color:var(--texto);
  border-left:1px solid var(--borde);
}

/* ---------- hero ---------- */
.hero{
  max-width:960px;
  margin:0 auto;
  padding:var(--sp-6) var(--sp-4);
  display:flex;
  flex-direction:column;
  gap:var(--sp-6);
}
@media (min-width:768px){
  .hero{
    padding:var(--sp-7) var(--sp-5);
    flex-direction:row;
    align-items:center;
    gap:var(--sp-7);
  }
}

.hero__contenido{flex:1;min-width:0}

.hero__badge{
  font-family:var(--font-mono);
  font-size:.8125rem;
  font-weight:500;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--acento-2);
  border:1px solid var(--borde);
  display:inline-block;
  padding:var(--sp-2) var(--sp-3);
  margin-bottom:var(--sp-5);
}

.hero__titulo{
  font-family:var(--font-display);
  font-weight:900;
  font-size:clamp(2.6rem,9vw,5rem);
  letter-spacing:-0.02em;
  line-height:.95;
  text-transform:uppercase;
  margin-bottom:var(--sp-4);
}

.hero__subtitulo{
  color:var(--texto-suave);
  font-size:clamp(1rem,.95rem + .3vw,1.0625rem);
  max-width:52ch;
  margin-bottom:var(--sp-5);
}

.hero__botones{
  display:flex;
  flex-wrap:wrap;
  gap:var(--sp-3);
}

/* ---------- comanda (dispositivo visual firma) ---------- */
.comanda{
  position:relative;
  flex-shrink:0;
  width:100%;
  max-width:320px;
  margin:0 auto;
  background:#f5efe0;
  color:#1a1a1a;
  border-radius:2px;
  transform:rotate(-1deg);
  padding:var(--sp-5) var(--sp-4);
  -webkit-mask-image:
    radial-gradient(circle 5px at 6px 0, transparent 4.6px, #000 5px),
    radial-gradient(circle 5px at 6px 100%, transparent 4.6px, #000 5px);
  mask-image:
    radial-gradient(circle 5px at 6px 0, transparent 4.6px, #000 5px),
    radial-gradient(circle 5px at 6px 100%, transparent 4.6px, #000 5px);
  -webkit-mask-repeat:repeat-x,repeat-x;
  mask-repeat:repeat-x,repeat-x;
  -webkit-mask-size:12px 100%,12px 100%;
  mask-size:12px 100%,12px 100%;
  -webkit-mask-position:top left,bottom left;
  mask-position:top left,bottom left;
}
@media (min-width:768px){
  .comanda{transform:rotate(-2deg);margin:0}
}

.comanda__clip{
  position:absolute;
  top:-4px;left:50%;
  width:28px;height:10px;
  background:var(--borde);
  transform:translateX(-50%) rotate(45deg);
}

.comanda__etiqueta{
  font-family:var(--font-mono);
  font-size:.8125rem;
  font-weight:500;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.comanda__divisor{
  border-top:2px dashed #c9c0ab;
  margin:var(--sp-3) 0;
}

.comanda__telefono{
  display:flex;
  align-items:center;
  min-height:44px;
  font-family:var(--font-mono);
  font-weight:700;
  font-size:clamp(1.4rem,5vw,1.9rem);
  text-decoration:none;
  color:#1a1a1a;
  margin-bottom:var(--sp-2);
}

.comanda__linea{
  font-family:var(--font-mono);
  font-size:.875rem;
  color:#3a3a3a;
}

/* ---------- franja de confianza ---------- */
.confianza{
  background:var(--surface);
  text-align:center;
  padding:var(--sp-5) var(--sp-4);
}
.confianza__enlace{
  font-family:var(--font-mono);
  font-size:.9375rem;
  font-weight:500;
  color:var(--acento-2);
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}

/* ---------- tablero (menú) ---------- */
.tablero{
  max-width:960px;
  margin:0 auto;
  padding:var(--sp-6) var(--sp-4);
}
@media (min-width:768px){
  .tablero{padding:var(--sp-7) var(--sp-5)}
}

.tablero__lista{
  max-width:760px;
  margin:0 auto;
  border:3px solid var(--borde);
  outline:1px solid var(--borde);
  outline-offset:5px;
  padding:var(--sp-4);
}

.fila{
  padding-block:var(--sp-3);
  border-bottom:1px solid var(--borde);
}
.fila:last-child{border-bottom:none}

.fila__cabecera{
  display:flex;
  align-items:baseline;
  gap:var(--sp-2);
}

.fila__nombre{
  font-family:var(--font-display);
  font-weight:700;
  font-size:clamp(1.125rem,3vw,1.375rem);
  white-space:nowrap;
}

.fila__puntos{
  flex:1;
  align-self:center;
  border-bottom:2px dotted var(--texto-suave);
  height:0;
}

.fila__icono{
  color:var(--texto);
  flex-shrink:0;
}

.fila__desc{
  color:var(--texto-suave);
  font-size:.9375rem;
  margin-top:var(--sp-1);
}

.tablero__nota{
  font-family:var(--font-mono);
  font-size:.8125rem;
  color:var(--texto-suave);
  text-align:center;
  margin-top:var(--sp-5);
}

/* ---------- por qué orlans ---------- */
.porque{
  max-width:760px;
  margin:0 auto;
  padding:var(--sp-6) var(--sp-4);
}
@media (min-width:768px){
  .porque{padding:var(--sp-7) var(--sp-5)}
}
.porque__lista{
  display:flex;
  flex-direction:column;
  gap:var(--sp-5);
}
.porque__punto{
  border-top:1px solid var(--borde);
  padding-top:var(--sp-4);
  max-width:62ch;
}
.porque__atribucion{
  color:var(--texto-suave);
  font-family:var(--font-mono);
  font-size:.8125rem;
  margin-top:var(--sp-2);
}

/* ---------- reseñas ---------- */
.resenas{
  background:var(--surface);
  padding:var(--sp-6) var(--sp-4);
}
@media (min-width:768px){
  .resenas{padding:var(--sp-7) var(--sp-5)}
}
.resenas > .titulo-seccion{max-width:760px;margin-left:auto;margin-right:auto}
.resena{
  max-width:760px;
  margin:0 auto var(--sp-5);
  padding-bottom:var(--sp-5);
  border-bottom:1px solid var(--borde);
}
.resena:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.resena__texto{
  font-size:1.0625rem;
  max-width:62ch;
  margin-bottom:var(--sp-3);
}
.resena__autor{
  font-family:var(--font-mono);
  font-size:.8125rem;
  letter-spacing:.04em;
  color:var(--texto-suave);
}
.resena__estrellas{color:var(--acento-2)}
.resenas__mas{
  max-width:760px;
  margin:var(--sp-5) auto 0;
}
.resenas__mas a{
  font-family:var(--font-mono);
  font-size:.9375rem;
  color:var(--acento-2);
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  display:inline-block;
  padding:12px 0;
  margin:-12px 0;
}

/* ---------- ubicación ---------- */
.ubicacion{
  max-width:760px;
  margin:0 auto;
  padding:var(--sp-6) var(--sp-4);
}
@media (min-width:768px){
  .ubicacion{padding:var(--sp-7) var(--sp-5)}
}
.ubicacion__direccion{font-size:1.0625rem;margin-bottom:var(--sp-2)}
.ubicacion__resumen{
  font-family:var(--font-mono);
  color:var(--texto-suave);
  margin-bottom:var(--sp-4);
}
.ubicacion__toggle{
  display:inline-block;
  background:transparent;
  border:1px solid var(--borde);
  color:var(--acento-2);
  font-family:var(--font-mono);
  font-size:.8125rem;
  letter-spacing:.04em;
  padding:var(--sp-2) var(--sp-3);
  min-height:44px;
  cursor:pointer;
  margin-bottom:var(--sp-4);
}
.ubicacion__tabla{
  width:100%;
  border-collapse:collapse;
  margin-bottom:var(--sp-5);
  font-family:var(--font-mono);
  font-size:.9375rem;
}
.ubicacion__tabla th,.ubicacion__tabla td{
  text-align:left;
  padding:var(--sp-2) 0;
  border-bottom:1px solid var(--borde);
  font-weight:400;
}
.ubicacion__tabla th{color:var(--texto)}
.ubicacion__tabla td{color:var(--texto-suave)}

/* ---------- cta final ---------- */
.cta-final{
  background:var(--acento);
  text-align:center;
  padding:var(--sp-6) var(--sp-4);
}
@media (min-width:768px){
  .cta-final{padding:var(--sp-7) var(--sp-5)}
}
.cta-final .titulo-seccion{margin-bottom:var(--sp-3)}
.cta-final__texto{
  max-width:52ch;
  margin:0 auto var(--sp-5);
  color:var(--texto);
}
.cta-final__boton{
  background:var(--bg);
  color:var(--texto);
}

/* ---------- footer ---------- */
.pie{
  max-width:960px;
  margin:0 auto;
  padding:var(--sp-5) var(--sp-4) var(--sp-6);
  text-align:center;
  font-size:.875rem;
  color:var(--texto-suave);
}
.pie__texto{margin-bottom:var(--sp-2)}
.pie__credito a{color:var(--acento-2)}
