/* yesocaba.com: capa con el diseño de pintor.uy (22/10/2026). Va después de style.css y landing.css.
   Paleta de pintor.uy: gris oscuro #2E2E2E (topbar, títulos, fondos oscuros; hover #1F1F1F), rojo #D62828 (botones, rayas,
   acentos; hover #B01E1E), grises neutros. Fuentes propias (public/fonts): Oswald 700 en mayúsculas para títulos, menú y
   botones; Open Sans para el texto. Los nombres viejos ("Barlow Condensed" y "Poppins") apuntan a esos archivos, así todo
   el CSS existente toma las fuentes nuevas sin depender de Google Fonts. Sin blur. */
@font-face { font-family: "Open Sans"; font-style: normal; font-weight: 300 800; font-display: swap; src: url("../fonts/open-sans-latin-ext.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Open Sans"; font-style: normal; font-weight: 300 800; font-display: swap; src: url("../fonts/open-sans-latin.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Oswald"; font-style: normal; font-weight: 400 700; font-display: swap; src: url("../fonts/oswald-latin-ext.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Oswald"; font-style: normal; font-weight: 400 700; font-display: swap; src: url("../fonts/oswald-latin.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
/* Alias de los nombres viejos */
@font-face { font-family: "Barlow Condensed"; font-style: normal; font-weight: 400 800; font-display: swap; src: url("../fonts/oswald-latin.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Barlow Condensed"; font-style: normal; font-weight: 400 800; font-display: swap; src: url("../fonts/oswald-latin-ext.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Poppins"; font-style: normal; font-weight: 300 800; font-display: swap; src: url("../fonts/open-sans-latin.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Poppins"; font-style: normal; font-weight: 300 800; font-display: swap; src: url("../fonts/open-sans-latin-ext.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }

:root {
  --pri: #2E2E2E; --pri-2: #1F1F1F; --rojo: #D62828; --rojo-2: #B01E1E;
  --f-titulos: Oswald, "Arial Narrow", sans-serif;
  --radio: 8px;
  --alto-topbar: 0px;
}
@media (min-width: 860px) { :root { --alto-topbar: 38px; } }

/* Barra superior: gris oscuro de la marca, solo desde 860 px */
.topbar { display: none; background: var(--pri); color: #fff; font-size: .8125rem; font-weight: 600; position: relative; z-index: 3; }
@media (min-width: 860px) { .topbar { display: block; } }
.topbar__fila { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 38px; }
.topbar i { color: #fff; opacity: .85; margin-right: 5px; font-size: 1rem; }
.topbar__zona, .topbar__horario { color: #E4E4E4; display: inline-flex; align-items: center; }
.topbar__horario { display: none; }
@media (min-width: 1180px) { .topbar__horario { display: inline-flex; } }
.topbar__acciones { display: flex; align-items: center; gap: 22px; }
.topbar a { color: #fff; text-decoration: none; display: inline-flex; align-items: center; letter-spacing: .02em; }
.topbar a:hover { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
/* El fijo deja lugar para la topbar */
body { padding-top: calc(72px + var(--alto-topbar)); }
@media (max-width: 600px) { body { padding-top: 60px; } }
body.home-page, body.sobre-hero { padding-top: 0; }

/* Header: blanco y sólido, sombra al bajar */
.header { background: #fff; box-shadow: 0 1px 0 #ECECEC; }
.header--scrolled { box-shadow: 0 6px 20px rgba(24,24,24,.08); }
.header .header__logo-img { display: block; }
.header .header__logo-img--blanco { display: none; }
.header .header__hamburger span { background: #181818; height: 2.5px; border-radius: 2px; }

/* Menú de escritorio: Oswald en mayúsculas, raya roja abajo en hover */
.header .header__nav { align-self: stretch; display: flex; }
.header .header__nav-list { gap: 2px; align-items: stretch; }
.header .header__nav-list li { display: flex; }
.header .header__nav-list a {
  position: relative; display: flex; align-items: center; padding: 0 12px;
  font-family: var(--f-titulos); font-weight: 700; font-size: 1.0625rem; letter-spacing: .04em; text-transform: uppercase;
  color: #181818;
}
.header .header__nav-list a::after {
  content: ""; position: absolute; left: 12px; right: 12px; bottom: 16px; height: 3px; border-radius: 2px;
  background: var(--rojo); transform: scaleX(0); transform-origin: left; transition: transform .2s;
}
.header .header__nav-list a:hover { color: var(--pri); }
.header .header__nav-list a:hover::after { transform: scaleX(1); }

/* Botón del header: rectángulo rojo de radio 8 px */
.header .header__cta {
  background: var(--rojo); color: #fff; border-radius: var(--radio);
  font-family: var(--f-titulos); font-weight: 700; font-size: 1.0625rem; letter-spacing: .04em;
  padding: .6em 1.1em;
}
.header .header__cta:hover { background: var(--rojo-2); color: #fff; transform: none; }

/* Home y landings: transparente sobre el hero con textos blancos hasta bajar o abrir el menú */
:is(.home-page,.sobre-hero) .header:not(.header--scrolled) { background: transparent; box-shadow: none; }
:is(.home-page,.sobre-hero) .header:not(.header--scrolled) .header__logo-img { display: none; }
:is(.home-page,.sobre-hero) .header:not(.header--scrolled) .header__logo-img--blanco { display: block; }
:is(.home-page,.sobre-hero) .header:not(.header--scrolled) .header__nav-list a { color: #fff; text-shadow: 0 1px 8px rgba(0,0,0,.3); }
:is(.home-page,.sobre-hero) .header:not(.header--scrolled) .header__nav-list a:hover { color: #fff; }
:is(.home-page,.sobre-hero) .header:not(.header--scrolled) .header__hamburger span { background: #fff; }
:is(.home-page,.sobre-hero) .header:not(.header--scrolled) .header__cta { background: var(--rojo); color: #fff; }
:is(.home-page,.sobre-hero) .header:not(.header--scrolled) .header__cta:hover { background: var(--rojo-2); color: #fff; }
:is(.home-page,.sobre-hero) .header--scrolled { background: #fff; box-shadow: 0 6px 20px rgba(24,24,24,.08); }

/* Menú de celular: Oswald gris oscuro, botón rojo rectangular */
.mobile-link { font-family: var(--f-titulos); color: #181818; border-bottom: 1px solid #E5E5E5; font-size: clamp(1.6rem, 7vw, 2.2rem); padding: .8rem 0; }
.mobile-link:hover { color: var(--rojo); }
.mobile-menu__wsp { border-radius: var(--radio); background: var(--rojo); font-family: var(--f-titulos); font-weight: 700; }
.mobile-menu__wsp:hover { background: var(--rojo-2); color: #fff; }
.mobile-menu__tel { border-radius: var(--radio); border-color: var(--pri); color: var(--pri); font-family: var(--f-titulos); font-weight: 700; }

/* Hero: foto de fondo con capa gris casi negra de abajo hacia arriba; alto según el contenido (no pantalla completa) */
.hero { background: #1B1B1B; }
.hero__bg-img { filter: none; }
.hero__bg-overlay, .hero--landing .hero__bg-overlay {
  background: linear-gradient(0deg, rgba(20,20,20,.92) 0%, rgba(20,20,20,.7) 40%, rgba(20,20,20,.35) 80%, rgba(20,20,20,.3) 100%);
}
.hero__layout, .hero--landing .hero__layout { min-height: 0; padding-top: 28px; padding-bottom: 40px; }
:is(.home-page,.sobre-hero) .hero__layout { padding-top: calc(52px + 72px + var(--alto-topbar)); padding-bottom: 60px; }
@media (min-width: 961px) { :is(.home-page,.sobre-hero) .hero__layout { padding-top: calc(80px + 72px + var(--alto-topbar)); padding-bottom: 88px; } }
@media (max-width: 600px) { :is(.home-page,.sobre-hero) .hero__layout { padding-top: calc(60px + 28px); padding-bottom: 40px; } }
.hero__content { max-width: 760px; text-shadow: 0 1px 12px rgba(0,0,0,.35); }

/* Eyebrow: chico, blanco y en mayúsculas, como el de pintor */
.hero__eyebrow { color: #fff; opacity: .85; font-size: .8125rem; letter-spacing: .12em; }
.hero__eyebrow-line { background: var(--rojo); }
.hero__trust-item { font-family: var(--f-titulos); border-radius: 4px; }

/* Título: Oswald 700 en mayúsculas */
.hero__title, .hero--landing .hero__title {
  font-family: var(--f-titulos); font-weight: 700 !important; text-transform: uppercase;
  letter-spacing: .015em; line-height: 1.05; text-wrap: balance;
  font-size: clamp(2rem, 1.55rem + 1.9vw, 3.125rem); margin: .15em 0 .35em;
}
:is(.home-page,.pg--inicio) .hero__title { font-size: clamp(2.125rem, 1.5rem + 2.6vw, 3.5rem); }
.hero__subtitle { font-size: clamp(1.0625rem, .99rem + .3vw, 1.25rem); color: #EBEBEB; max-width: 760px; line-height: 1.65; margin-bottom: 0; }

/* Botones: rectángulos de radio 8 px; el de presupuesto en rojo y el segundo con línea blanca */
.hero__actions { flex-direction: row; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
.hero__btn-primary, .hero__btn-secondary {
  border-radius: var(--radio); font-family: var(--f-titulos); font-weight: 700; text-transform: uppercase;
  letter-spacing: .04em; font-size: clamp(1.1rem, 1.04rem + .22vw, 1.24rem); padding: .85em 1.5em; text-shadow: none;
}
.hero__btn-primary { background: var(--rojo); color: #fff; }
.hero__btn-primary:hover { background: var(--rojo-2); transform: none; }
.hero__btn-secondary { background: transparent; color: #fff; border: 2px solid #fff; }
.hero__btn-secondary:hover { background: #fff; color: var(--pri); border-color: #fff; }

/* Celular: botones del hero uno abajo del otro y de ancho completo; H1 en dos líneas como máximo */
@media (max-width: 767px) {
  .hero__actions { flex-direction: column; align-items: stretch; }
  .hero__btn-primary, .hero__btn-secondary { width: 100%; }
}
@media (max-width: 600px) {
  .hero__title, .hero--landing .hero__title, .home-page .hero__title { font-size: 8.4vw; text-transform: uppercase; margin-bottom: .5em; text-shadow: none; }
  .hero__subtitle { font-size: 1.0625rem; font-weight: 400; line-height: 1.6; }
  .hero__btn-primary, .hero__btn-secondary { min-height: 0; border-radius: var(--radio); }
}

/* Páginas internas (hero--landing): menos aire arriba que la home */
.sobre-hero .hero--landing .hero__layout { padding-top: calc(28px + 72px + var(--alto-topbar)); padding-bottom: 44px; }
@media (max-width: 600px) { .sobre-hero .hero--landing .hero__layout { padding-top: calc(60px + 24px); padding-bottom: 36px; } }

/* Que entren logo, menú y botón en una fila entre 1100 y 1399 px */
@media (min-width: 1100px) and (max-width: 1399px) {
  .header__inner { gap: 1rem; }
  .header .header__nav-list a { padding: 0 8px; font-size: 1rem; }
  .header .header__nav-list a::after { left: 8px; right: 8px; }
  .header .header__cta { font-size: 1rem; padding: .55em .9em; margin-left: 0; }
}

/* Como pintor.uy: debajo de 1100 px el menú pasa a la hamburguesa (con Oswald no entra en una fila) */
@media (max-width: 1099px) {
  .header .header__nav, .header .header__cta { display: none; }
  .header__hamburger { display: flex; margin-left: auto; }
}

/* Como pintor.uy: entre 1100 y 1279 px el botón del header queda solo con el ícono de WhatsApp (el texto sigue para lectores) */
@media (min-width: 1100px) and (max-width: 1279px) {
  .header .header__cta { font-size: 0; gap: 0; padding: .5rem .7rem; }
  .header .header__cta i { font-size: 1.35rem; }
}

/* Logo YesoCaba (22/10/2026, casi 1,6:1): va por alto y casi llena el header (72 / 60 px) */
.header__logo img { height: 60px; width: auto; }
@media (max-width: 600px) { .header__logo img { height: 48px; } }
.footer__logo img { height: 96px; width: auto; }

/* Íconos Font Awesome en los botones (22/10/2026): style.css pone font-weight 400 a los <i> de varios botones y los sólidos van en 900 */
i.fa-solid { font-weight: 900 !important; font-family: "Font Awesome 6 Free" !important; }
i.fa-brands { font-weight: 400 !important; font-family: "Font Awesome 6 Brands" !important; }

/* ── VENTAJAS DEBAJO DEL HERO (22/10/2026), igual que pintor.uy ──
   Ilustraciones a dos tonos en línea: trazo gris oscuro, rojo, gris claro y blanco.
   Celular: una tarjeta con filas, el dibujo en un círculo gris a la izquierda. Desde 760 px: tres tarjetas sueltas con pestaña roja
   arriba, el dibujo en un círculo gris claro y sombra recta sin desenfoque; al pasar el mouse la tarjeta sube. */
.svgp { display: block; width: 100%; height: 100%; color: var(--pri); overflow: visible; }
.svgp .a { fill: var(--rojo); } .svgp .m { fill: #CFCFCF; } .svgp .s { fill: #F2F2F2; } .svgp .w { fill: #fff; } .svgp .o { fill: currentColor; }
.franja.ventajas { padding: clamp(28px, 4vw, 52px) 0 clamp(20px, 3vw, 36px); background: #fff; }
.ventajas__tarjeta { display: grid; grid-template-columns: 1fr; background: #fff; border: 1px solid #E0E0E0; border-radius: 14px; box-shadow: 0 4px 0 rgba(46,46,46,.06); }
.ventaja.franja__item { display: grid; grid-template-columns: 72px 1fr; grid-template-rows: auto auto; column-gap: 16px; align-items: start; padding: 20px 18px 22px; border-bottom: 1px solid #E0E0E0; }
.ventaja.franja__item:last-child { border-bottom: 0; }
.ventaja__ico { grid-row: 1 / 3; display: grid; place-items: center; width: 72px; height: 72px; border-radius: 50%; background: #EBEBEB; line-height: 0; transition: background-color .2s; }
.ventaja__ico .svgp { width: 54px; height: 54px; transition: transform .25s ease; }
.ventaja.franja__item strong { position: relative; align-self: start; margin: 4px 0 0; padding-bottom: 8px; font-family: var(--f-titulos); font-weight: 700; text-transform: uppercase; letter-spacing: .03em; font-size: 1.25rem; line-height: 1.1; color: var(--pri); }
.ventaja.franja__item strong::after { content: ""; position: absolute; left: 0; bottom: 0; width: 28px; height: 3px; border-radius: 2px; background: var(--rojo); }
.ventaja.franja__item > span:last-child { grid-column: 2; margin: 4px 0 0; font-size: .9375rem; line-height: 1.55; color: #545454; }
@media (min-width: 760px) {
  .ventajas__tarjeta { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; background: none; border: 0; border-radius: 0; box-shadow: none; }
  .ventaja.franja__item { position: relative; grid-template-columns: 1fr; grid-template-rows: auto; padding: 30px 26px 28px; background: #fff; border: 1px solid #E0E0E0; border-radius: 16px; box-shadow: 0 6px 0 rgba(46,46,46,.07); transition: transform .2s, box-shadow .2s; }
  .ventaja.franja__item:last-child { border: 1px solid #E0E0E0; }
  .ventaja.franja__item::before { content: ""; position: absolute; top: -1px; left: 26px; width: 56px; height: 4px; border-radius: 0 0 4px 4px; background: var(--rojo); }
  .ventaja__ico { grid-row: auto; width: 96px; height: 96px; margin-bottom: 20px; }
  .ventaja__ico .svgp { width: 72px; height: 72px; }
  .ventaja.franja__item strong { margin-top: 0; font-size: 1.375rem; padding-bottom: 10px; }
  .ventaja.franja__item > span:last-child { grid-column: auto; margin-top: 12px; }
  .ventaja.franja__item:hover { transform: translateY(-4px); box-shadow: 0 10px 0 rgba(46,46,46,.09); }
  .ventaja.franja__item:hover .ventaja__ico { background: #E0E0E0; }
  .ventaja.franja__item:hover .ventaja__ico .svgp { transform: translateY(-2px) scale(1.05); }
}
@media (min-width: 1024px) { .ventaja.franja__item { padding: 32px 30px 30px; } .ventaja.franja__item strong { font-size: 1.5rem; } .ventaja.franja__item > span:last-child { font-size: 1rem; } }
@media (prefers-reduced-motion: reduce) { .ventaja.franja__item, .ventaja__ico, .ventaja__ico .svgp { transition: none; } .ventaja.franja__item:hover, .ventaja.franja__item:hover .ventaja__ico .svgp { transform: none; } }
.ventaja.franja__item { align-content: start; }

/* ── "QUÉ HACEMOS" CON FOTOS (22/10/2026), igual que pintor.uy ──
   Tarjeta blanca horizontal: foto (stock editado con ChatGPT, images/servicios-tarjetas) a la izquierda que se funde en blanco hacia el
   texto; sombra recta que pasa a gris oscuro al pasar el mouse y toda la tarjeta clickeable. 7 servicios: una columna en celular;
   desde 900 px la primera a lo ancho y las otras de a dos. */
.grilla-servicios { list-style: none; padding: 0; margin: 24px 0 8px; display: grid; gap: 16px; grid-template-columns: 1fr; }
.grilla-servicios__item { position: relative; isolation: isolate; display: flex; align-items: stretch; margin: 0; padding: 0; background: #fff; border: 1px solid #E0E0E0; border-radius: 16px; box-shadow: 5px 5px 0 #DADADA; overflow: hidden; transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.grilla-servicios__item:hover { transform: translate(-3px, -3px); box-shadow: 8px 8px 0 var(--pri); border-color: var(--pri); }
.grilla-servicios__item:focus-within { outline: 3px solid var(--rojo); outline-offset: 3px; }
.grilla-servicios__foto { position: relative; z-index: -1; flex: 0 0 44%; min-height: 150px; overflow: hidden; background: #F5F5F5; }
.grilla-servicios__foto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.grilla-servicios__item:hover .grilla-servicios__foto img { transform: scale(1.05); }
/* La foto se funde en blanco hacia el texto de la derecha */
.grilla-servicios__foto::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(255,255,255,0) 48%, rgba(255,255,255,.8) 82%, #fff 98%); pointer-events: none; }
.grilla-servicios__txt { align-self: center; margin-left: -6%; padding: 18px 20px 20px 0; font-size: .9375rem; line-height: 1.55; color: #545454; }
.grilla-servicios__txt > a:first-child { display: block; margin-bottom: 6px; font-family: var(--f-titulos); font-weight: 700; text-transform: uppercase; letter-spacing: .02em; font-size: clamp(1.25rem, 1.15rem + .4vw, 1.5rem); line-height: 1.15; color: var(--pri); text-decoration: none; }
.grilla-servicios__txt > a:first-child::before { content: ""; position: absolute; inset: 0; z-index: 2; border-radius: 16px; }
.grilla-servicios__txt > a:first-child::after { content: "\00a0\2192"; position: relative; left: 0; color: var(--rojo); font-family: "Open Sans", sans-serif; white-space: nowrap; transition: left .2s ease; }
.grilla-servicios__item:hover .grilla-servicios__txt > a:first-child::after { left: 4px; }
.grilla-servicios__txt > a:focus-visible { outline: 0; }
.grilla-servicios__desc { display: block; }
@media (max-width: 639px) {
  .grilla-servicios { gap: 14px; }
  .grilla-servicios__item { box-shadow: 4px 4px 0 #DADADA; }
  .grilla-servicios__foto { min-height: 140px; }
  .grilla-servicios__txt { margin-left: -8%; padding: 14px 14px 16px 0; }
  .grilla-servicios__txt > a:first-child { font-size: 1.125rem; }
}
@media (min-width: 640px) { .grilla-servicios__foto { flex-basis: 40%; min-height: 180px; } }
@media (min-width: 900px) {
  .grilla-servicios { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
  .grilla-servicios__foto { flex-basis: 44%; min-height: 200px; }
  .grilla-servicios > .grilla-servicios__item:first-child { grid-column: 1 / -1; }
  .grilla-servicios > .grilla-servicios__item:first-child .grilla-servicios__foto { flex-basis: 52%; min-height: 260px; }
  .grilla-servicios > .grilla-servicios__item:first-child .grilla-servicios__foto::after { background: linear-gradient(90deg, rgba(255,255,255,0) 60%, rgba(255,255,255,.8) 88%, #fff 99%); }
  .grilla-servicios > .grilla-servicios__item:first-child .grilla-servicios__txt { padding: 26px 32px 28px 0; max-width: 480px; }
  .grilla-servicios > .grilla-servicios__item:first-child .grilla-servicios__txt > a:first-child { font-size: 1.75rem; }
}
@media (prefers-reduced-motion: reduce) { .grilla-servicios__item, .grilla-servicios__foto img, .grilla-servicios__txt > a:first-child::after { transition: none; } .grilla-servicios__item:hover, .grilla-servicios__item:hover .grilla-servicios__foto img { transform: none; } }
.ar .grilla-servicios, .ar-content .grilla-servicios { padding: 0; margin-left: 0; margin-right: 0; }

/* ════════════════════════════════════════════════════════════════════════════════════════════════
   TODO EL SITIO CON EL SISTEMA DE PINTOR.UY (22/10/2026)
   Franjas a todo el ancho con fondo alternado (blanco / gris claro), títulos en Oswald con rayita roja, listas con punto rojo,
   pasos numerados, tablas con encabezado gris oscuro, preguntas frecuentes en dos columnas, cierre en tarjeta gris oscuro
   con sombra roja recta, botones rectos rojos y pie gris oscuro. Mismos textos que antes.
   ════════════════════════════════════════════════════════════════════════════════════════════════ */
:root { --texto: #181818; --texto-2: #545454; --borde: #E0E0E0; --fondo-2: #F5F5F5; }
body { color: var(--texto); }

/* Franjas */
.pg-cuerpo { padding: 0; }
.banda { padding: clamp(44px, 6vw, 80px) 0; background: #fff; scroll-margin-top: 90px; }
.banda--gris { background: var(--fondo-2); }
.banda--intro { padding: clamp(28px, 4vw, 44px) 0 0; }
.banda--intro + .banda { padding-top: clamp(32px, 4vw, 52px); }
.banda--cierre { padding: clamp(40px, 5vw, 64px) 0 clamp(36px, 4vw, 56px); }
.banda__in > p, .banda__in > ul, .banda__in > ol, .banda__in > h3, .banda__in > .ar-note, .banda__in > .pg-fig,
.banda__in > .pg-tabla-pie, .banda__in > aside, .banda__in > .ar-answer, .banda__in > .ar-keypoints, .banda__in > .ar-toc { max-width: 880px; }
.banda__in > .ar-table-wrap { max-width: 980px; }
.pg-cuerpo.ar-content > section, .pg-cuerpo .banda { border: 0; margin: 0; }

/* Títulos: Oswald en mayúsculas con rayita roja abajo (sin la barra de la izquierda) */
.pg .ar-content h2::before { display: none; }
.pg .ar-content h2 { padding-left: 0; }
.ar-content h2, .banda h2, .ar-faq h2, .ar-more__title {
  position: relative; font-family: var(--f-titulos); font-weight: 700; text-transform: uppercase; letter-spacing: .015em;
  font-size: clamp(1.625rem, 1.35rem + 1.1vw, 2.25rem); line-height: 1.1; color: var(--pri); margin: 0 0 .9em; padding-bottom: 16px; text-wrap: balance;
}
.ar-content h2::after, .banda h2::after { content: ""; position: absolute; left: 0; bottom: 0; width: 44px; height: 4px; border-radius: 2px; background: var(--rojo); }
.ar-content h3 { font-family: var(--f-titulos); font-weight: 700; text-transform: uppercase; letter-spacing: .02em; font-size: clamp(1.2rem, 1.1rem + .4vw, 1.45rem); line-height: 1.15; color: var(--pri); margin: 1.6em 0 .5em; }
.ar-content p, .ar-content li { font-size: clamp(1rem, .96rem + .15vw, 1.0625rem); line-height: 1.7; color: var(--texto); }

/* Enlaces del texto: gris oscuro subrayado, como en pintor */
.ar-content a:not(.btn):not([class*="__"]) { color: var(--pri); text-decoration: underline; text-decoration-color: rgba(46,46,46,.45); text-underline-offset: 3px; }
.ar-content a:not(.btn):not([class*="__"]):hover { color: var(--rojo); text-decoration-color: var(--rojo); }

/* Listas: punto rojo */
.banda__in > ul, .ar-body .ar-content ul { list-style: none; padding-left: 0; }
.banda__in > ul > li, .ar-body .ar-content ul > li { position: relative; padding-left: 22px; margin-bottom: .55em; }
.banda__in > ul > li::before, .ar-body .ar-content ul > li::before { content: ""; position: absolute; left: 2px; top: .68em; width: 8px; height: 8px; border-radius: 50%; background: var(--rojo); }
/* Listas numeradas: pasos con número en círculo gris oscuro y una línea que los une */
.banda__in > ol, .ar-body .ar-content ol { list-style: none; padding-left: 0; counter-reset: paso; }
.banda__in > ol > li, .ar-body .ar-content ol > li { position: relative; counter-increment: paso; padding: 0 0 18px 54px; margin: 0; min-height: 36px; }
.banda__in > ol > li::before, .ar-body .ar-content ol > li::before { content: counter(paso); position: absolute; left: 0; top: -2px; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: var(--pri); color: #fff; font-family: var(--f-titulos); font-weight: 700; font-size: 1.05rem; }
.banda__in > ol > li:not(:last-child)::after, .ar-body .ar-content ol > li:not(:last-child)::after { content: ""; position: absolute; left: 17px; top: 36px; bottom: 0; width: 2px; background: #D0D0D0; }

/* Tablas: marco redondeado, encabezado gris oscuro, filas alternadas */
.ar-table-wrap { border: 1px solid var(--borde); border-radius: 14px; overflow-x: auto; background: #fff; box-shadow: 4px 4px 0 #DADADA; margin: 8px 0 18px; }
.ar-table { border-collapse: collapse; font-size: .95rem; }
.ar-table th, .ar-table td { border: 0; border-bottom: 1px solid #ECECEC; padding: .8rem 1rem; }
.ar-table thead th { background: var(--pri); color: #fff; font-family: var(--f-titulos); font-weight: 700; text-transform: uppercase; letter-spacing: .04em; font-size: .9rem; }
.ar-table tbody tr:nth-child(even) td { background: #FAFAFA; }
.ar-table tbody tr:last-child td { border-bottom: 0; }
.ar-table caption { font-family: var(--f-titulos); text-transform: uppercase; color: var(--pri); padding: 1rem 1rem .4rem; }
.pg-tabla-pie { font-size: .875rem; color: var(--texto-2); }

/* Nota: fondo rosado claro con filete rojo */
.ar-note { background: #FDEDED; border: 0; border-left: 4px solid var(--rojo); border-radius: 0 12px 12px 0; padding: 1rem 1.2rem; }
.ar-note i { color: var(--rojo); }

/* Figuras */
.pg-fig, .pg .pg-fig { border: 1px solid var(--borde); border-radius: 14px; overflow: hidden; box-shadow: 4px 4px 0 #DADADA; background: #fff; }

/* Arranque de la página: respuesta corta, puntos clave e índice */
.ar-answer, .pg .ar-answer { position: relative; background: #fff; border: 1px solid var(--borde); border-radius: 14px; box-shadow: 4px 4px 0 #DADADA; padding: 22px 24px; margin: 0 0 22px; }
.ar-answer::before { content: ""; position: absolute; top: -1px; left: 24px; width: 56px; height: 4px; border-radius: 0 0 4px 4px; background: var(--rojo); }
.ar-answer__label { font-family: var(--f-titulos); font-weight: 700; text-transform: uppercase; letter-spacing: .08em; font-size: .85rem; color: var(--rojo); }
.ar-answer p:last-child { color: var(--texto); font-weight: 400; }
.ar-keypoints, .pg .ar-keypoints { background: var(--fondo-2); border: 0; border-radius: 14px; padding: 20px 24px; margin: 0 0 22px; }
.ar-keypoints__title { font-family: var(--f-titulos); text-transform: uppercase; letter-spacing: .03em; font-size: 1.15rem; color: var(--pri); padding-bottom: 0; }
.ar-keypoints__title::after { display: none; }
.ar-keypoints li, .pg .ar-keypoints li { border: 0; background: none; }
.ar-keypoints li::before { background: var(--rojo); }
.ar-toc, .pg .ar-toc { background: #fff; border: 1px solid var(--borde); border-radius: 14px; padding: 16px 20px; margin: 0 0 8px; }
.ar-toc__title { font-family: var(--f-titulos); font-weight: 700; text-transform: uppercase; letter-spacing: .04em; font-size: 1rem; color: var(--pri); }
.ar-toc__title i { color: var(--rojo); }
.ar-toc ol { display: flex; flex-wrap: wrap; gap: 8px; padding: 6px 0 0; list-style: none; }
.ar-toc ol li { margin: 0; padding: 0; min-height: 0; }
.ar-toc ol li::before, .ar-toc ol li::after { display: none; }
.ar-toc a { display: inline-block; padding: .4em .85em; border: 1px solid var(--borde); border-radius: 999px; font-size: .9rem; color: var(--pri); text-decoration: none; background: #fff; }
.ar-toc a:hover { border-color: var(--pri); color: var(--pri); text-decoration: none; }

/* Preguntas frecuentes: en escritorio el título a la izquierda y las preguntas a la derecha; tarjetas con + rojo que pasa a × */
.ar-faq { margin: 0; }
.ar-faq__grilla { display: grid; gap: 8px; }
@media (min-width: 900px) { .ar-faq__grilla { grid-template-columns: minmax(0, 1fr) minmax(0, 1.75fr); gap: 48px; align-items: start; } }
.ar-faq__item, .pg .ar-faq__item { background: #fff; border: 1px solid var(--borde); border-radius: 14px; box-shadow: 4px 4px 0 #DADADA; margin-bottom: 12px; transition: border-color .2s, box-shadow .2s; }
.ar-faq__item[open] { border-color: var(--pri); box-shadow: 6px 6px 0 var(--pri); }
.ar-faq__item summary { padding: 18px 20px; }
.ar-faq__item summary h3 { font-family: var(--f-titulos); font-weight: 700; text-transform: uppercase; letter-spacing: .02em; font-size: 1.05rem; line-height: 1.25; color: var(--pri); margin: 0; }
.ar-faq__item summary i { flex: 0 0 auto; display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: var(--rojo); color: #fff; font-size: 0; transition: background-color .2s, transform .2s; }
.ar-faq__item summary i::before { content: "+"; font-family: "Open Sans", sans-serif; font-weight: 700; font-size: 20px; line-height: 1; font-style: normal; }
.ar-faq__item[open] summary i { transform: rotate(45deg); background: var(--pri); }
.ar-faq__a { margin: 0 20px; border-top: 1px dashed #D6D6D6; padding: 14px 0 20px; color: var(--texto-2); }
.ar-faq__a p { font-size: 1rem; line-height: 1.7; color: var(--texto-2); }

/* Botones de WhatsApp de cierre y laterales: rectángulo rojo como el resto */
.btn--whatsapp, .pg .btn--whatsapp { display: inline-flex; align-items: center; gap: .55em; background: var(--rojo); color: #fff; border: 0; border-radius: var(--radio); padding: .85em 1.4em; font-family: var(--f-titulos); font-weight: 700; text-transform: uppercase; letter-spacing: .04em; font-size: clamp(1.05rem, 1rem + .2vw, 1.15rem); box-shadow: none; text-decoration: none; }
.btn--whatsapp:hover, .pg .btn--whatsapp:hover { background: var(--rojo-2); color: #fff; transform: none; }

/* Cierre: tarjeta gris oscuro con sombra roja recta y dibujo en un círculo claro */
.ar-cta, .pg .ar-cta { position: relative; display: grid; gap: 20px; align-items: center; background: var(--pri); color: #fff; border-radius: 16px; padding: clamp(26px, 4vw, 44px); box-shadow: 8px 8px 0 var(--rojo); margin: 0 0 8px; border: 0; }
@media (min-width: 760px) { .ar-cta, .pg .ar-cta { grid-template-columns: auto 1fr; gap: 32px; } }
.ar-cta__ico { display: grid; place-items: center; width: 104px; height: 104px; border-radius: 50%; background: #F5F5F5; box-shadow: 0 0 0 6px rgba(255,255,255,.12); }
.ar-cta__ico .svgp { width: 78px; height: 78px; }
.ar-cta__eyebrow { color: #E4E4E4; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; font-size: .8rem; margin: 0 0 .4rem; }
.ar-cta h2, .pg .ar-cta h2 { color: #fff; font-size: clamp(1.6rem, 1.3rem + 1.2vw, 2.4rem); margin: 0 0 .5em; padding-bottom: 14px; }
.ar-cta h2::after { background: var(--rojo); }
.ar-cta p { color: #E6E6E6; max-width: 640px; }

/* Fuentes y fecha: chicos y discretos */
.ar-sources { margin: 28px 0 0; font-size: .875rem; color: var(--texto-2); }
.ar-sources h2 { font-size: 1rem; padding-bottom: 0; margin-bottom: .4em; }
.ar-sources h2::after { display: none; }
.ar-sources a { color: var(--texto-2); }
.pg-actualizado { margin: 18px 0 0; font-size: .875rem; color: var(--texto-2); }

/* Servicios de las páginas internas */
.pg-svc, .pg .pg-svc { margin: 0; }

/* Barrios vecinos y "Te puede servir": botones blancos con sombra recta */
.pg-vecinos, .pg .pg-vecinos { margin: 0; }
.pg-vecinos ul, .pg-enlaces ul { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 12px; max-width: none; }
.pg-vecinos li, .pg-enlaces li { margin: 0; padding: 0; min-height: 0; }
.pg-vecinos li::before, .pg-enlaces li::before { display: none; }
.pg-vecinos a, .pg-enlaces a, .ar-content .pg-vecinos a, .ar-content .pg-enlaces a { display: inline-flex; align-items: center; gap: .5em; padding: .7em 1.1em; background: #fff; border: 1px solid var(--borde); border-radius: 10px; box-shadow: 3px 3px 0 #DADADA; color: var(--pri); font-weight: 600; font-size: .95rem; text-decoration: none; transition: transform .15s, box-shadow .15s, border-color .15s; }
.pg-vecinos a:hover, .pg-enlaces a:hover, .ar-content .pg-vecinos a:hover, .ar-content .pg-enlaces a:hover { transform: translate(-2px, -2px); box-shadow: 5px 5px 0 var(--pri); border-color: var(--pri); color: var(--pri); background: #fff; }
.pg-enlaces a i { color: var(--rojo); font-size: .85em; }
.pg-enlaces__titulo { font-family: var(--f-titulos); font-weight: 700; text-transform: uppercase; letter-spacing: .06em; font-size: 1rem; color: var(--rojo); margin: 0 0 14px; }

/* Tarjetas de servicios: con número impar la primera va a lo ancho; con par, de a dos */
@media (min-width: 900px) {
  .grilla-servicios > .grilla-servicios__item:first-child { grid-column: auto; }
  .grilla-servicios > .grilla-servicios__item:first-child .grilla-servicios__foto { flex-basis: 44%; min-height: 200px; }
  .grilla-servicios > .grilla-servicios__item:first-child .grilla-servicios__foto::after { background: linear-gradient(90deg, rgba(255,255,255,0) 48%, rgba(255,255,255,.8) 82%, #fff 98%); }
  .grilla-servicios > .grilla-servicios__item:first-child .grilla-servicios__txt { padding: 18px 20px 20px 0; max-width: none; }
  .grilla-servicios > .grilla-servicios__item:first-child .grilla-servicios__txt > a:first-child { font-size: clamp(1.25rem, 1.15rem + .4vw, 1.5rem); }
  .grilla-servicios--impar > .grilla-servicios__item:first-child { grid-column: 1 / -1; }
  .grilla-servicios--impar > .grilla-servicios__item:first-child .grilla-servicios__foto { flex-basis: 56%; min-height: 300px; }
  .grilla-servicios--impar > .grilla-servicios__item:first-child .grilla-servicios__foto::after { background: linear-gradient(90deg, rgba(255,255,255,0) 60%, rgba(255,255,255,.8) 88%, #fff 99%); }
  .grilla-servicios--impar > .grilla-servicios__item:first-child .grilla-servicios__txt { padding: 28px 40px 30px 0; max-width: 500px; }
  .grilla-servicios--impar > .grilla-servicios__item:first-child .grilla-servicios__txt > a:first-child { font-size: 2rem; }
}
.banda .grilla-servicios__txt > a:first-child { text-decoration: none; color: var(--pri); }
.grilla-servicios__item { list-style: none; }
.grilla-servicios__item::before, .grilla-servicios__item::after { display: none !important; }
.banda__in > .grilla-servicios { max-width: none; }
.banda__in > .grilla-servicios > li { padding: 0; margin: 0; }

/* "Para empezar" / vecinos: sin el sangrado de las listas con punto */
.banda__in > ul.pg-enlaces__lista, .pg-enlaces .banda__in > ul, .pg-vecinos .banda__in > ul { padding-left: 0; }
.pg-enlaces .banda__in > ul > li, .pg-vecinos .banda__in > ul > li { padding-left: 0; margin: 0; }
.pg-enlaces .banda__in > ul > li::before, .pg-vecinos .banda__in > ul > li::before { display: none; }

/* ── CONTACTO (antes del pie): el título en Oswald con rayita roja, botón rojo recto y el formulario en una tarjeta
   blanca con filete gris oscuro arriba y sombra recta, como la calculadora y el formulario de pintor.uy ── */
.contacto-home { background: var(--fondo-2); padding: clamp(48px, 6vw, 84px) 0; }
.contacto-home__title { position: relative; font-family: var(--f-titulos); font-weight: 700; text-transform: uppercase; letter-spacing: .015em; font-size: clamp(2rem, 1.6rem + 1.6vw, 3rem); line-height: 1.05; color: var(--pri); margin: 0 0 .5em; padding-bottom: 18px; }
.contacto-home__title::after { content: ""; position: absolute; left: 0; bottom: 0; width: 44px; height: 4px; border-radius: 2px; background: var(--rojo); }
.contacto-home__lead { color: var(--texto-2); font-size: clamp(1.0625rem, .99rem + .3vw, 1.25rem); line-height: 1.6; }
.contacto-home__wa { display: inline-flex; align-items: center; gap: .55em; background: var(--rojo); color: #fff; border-radius: var(--radio); padding: .85em 1.4em; font-family: var(--f-titulos); font-weight: 700; text-transform: uppercase; letter-spacing: .04em; font-size: clamp(1.05rem, 1rem + .2vw, 1.2rem); box-shadow: none; }
.contacto-home__wa:hover { background: var(--rojo-2); color: #fff; transform: none; }
.contacto-home__datos a, .contacto-home__datos span { color: var(--texto); }
.contacto-home__datos i { color: var(--rojo); }
.contacto-home__form { position: relative; background: #fff; border: 1px solid var(--borde); border-top: 4px solid var(--pri); border-radius: 16px; box-shadow: 6px 6px 0 #DADADA; padding: clamp(22px, 3vw, 34px); }
.contacto-home__form-title { font-family: var(--f-titulos); font-weight: 700; text-transform: uppercase; letter-spacing: .03em; color: var(--pri); }
.contacto-home__input, .contacto-home__textarea { border: 1px solid #D6D6D6; border-radius: var(--radio); background: #fff; font-family: "Open Sans", sans-serif; }
.contacto-home__input:focus, .contacto-home__textarea:focus { border-color: var(--pri); outline: 2px solid rgba(46,46,46,.15); outline-offset: 0; box-shadow: none; }
.contacto-home__submit { width: 100%; background: var(--rojo); color: #fff; border: 0; border-radius: var(--radio); padding: .9em 1.4em; font-family: var(--f-titulos); font-weight: 700; text-transform: uppercase; letter-spacing: .04em; font-size: 1.15rem; cursor: pointer; }
.contacto-home__submit:hover { background: var(--rojo-2); color: #fff; }

/* ── PIE: gris oscuro de la marca, títulos en Oswald con rayita roja, botón rojo recto y franja de abajo en el mismo gris ── */
.footer { background: var(--pri); color: #E6E6E6; }
.footer__heading { position: relative; font-family: var(--f-titulos); font-weight: 700; text-transform: uppercase; letter-spacing: .03em; color: #fff; padding-bottom: 12px; margin-bottom: 18px; }
.footer__heading::after { content: ""; position: absolute; left: 0; bottom: 0; width: 28px; height: 3px; border-radius: 2px; background: var(--rojo); }
.footer__tagline, .footer__list a, .footer__contact a, .footer__contact span { color: #E6E6E6; }
.footer__list a:hover, .footer__contact a:hover { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.footer__contact i { color: #fff; opacity: .8; }
.footer__wa { display: inline-flex; align-items: center; gap: .55em; background: var(--rojo); color: #fff; border: 0; border-radius: var(--radio); padding: .8em 1.3em; font-family: var(--f-titulos); font-weight: 700; text-transform: uppercase; letter-spacing: .04em; box-shadow: none; }
.footer__wa i { color: #fff; }
.footer__wa:hover { background: var(--rojo-2); color: #fff; }
.footer__bottom { border-top: 1px solid rgba(255,255,255,.12); }
.footer__copy, .footer__copy a { color: #BDBDBD; }

/* Puntos clave ("Datos de…"): tarjetas blancas chicas con número rojo, en dos columnas desde 760 px, sombra recta */
.pg .ar-keypoints { background: transparent; padding: 0; margin: 0 0 22px; }
.pg .ar-keypoints__title { font-size: 1.25rem; margin: 0 0 14px; }
.pg .ar-keypoints ul { display: grid; grid-template-columns: 1fr; gap: 12px; margin: 0; padding: 0; }
@media (min-width: 760px) { .pg .ar-keypoints ul { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.pg .ar-keypoints li, .pg .ar-content .ar-keypoints li { position: relative; margin: 0; min-height: 0; background: #fff; border: 1px solid var(--borde); border-radius: 12px; box-shadow: 3px 3px 0 #DADADA; padding: 14px 16px 14px 52px; font-size: .95rem; line-height: 1.55; }
.pg .ar-keypoints li::before { left: 14px; top: 13px; width: 26px; height: 26px; background: var(--rojo); color: #fff; font-family: var(--f-titulos); font-weight: 700; font-size: .95rem; border-radius: 50%; }

/* Botones de enlaces: sin subrayado */
.pg-enlaces a, .pg-vecinos a, .ar-content .pg-enlaces a, .ar-content .pg-vecinos a { text-decoration: none !important; }

/* Barrios por comuna (/yesero): tarjetas blancas con pestaña roja y sombra recta, sin los márgenes de sección */
.pg-comunas { gap: 20px; margin: 24px 0 0; }
.pg-comunas .pg-comuna, .ar-content .pg-comunas .pg-comuna { position: relative; margin: 0; padding: 22px 22px 20px; background: #fff; border: 1px solid var(--borde); border-radius: 14px; box-shadow: 4px 4px 0 #DADADA; border-top: 1px solid var(--borde); }
.pg-comuna::before { content: ""; position: absolute; top: -1px; left: 22px; width: 48px; height: 4px; border-radius: 0 0 4px 4px; background: var(--rojo); }
.ar-content .pg-comuna h3 { font-family: var(--f-titulos); text-transform: uppercase; letter-spacing: .03em; font-size: 1.05rem; color: var(--pri); margin: 4px 0 12px; }
.pg-comuna ul li { padding: 0 !important; margin: 0 0 .5rem; min-height: 0; }
.pg-comuna ul li::before, .pg-comuna ul li::after { display: none !important; }
.pg-comuna a { text-decoration: none !important; }
.pg-comuna a strong { color: var(--pri); text-decoration: underline; text-decoration-color: var(--rojo); text-decoration-thickness: 2px; text-underline-offset: 4px; }
.pg-comuna a:hover strong { color: var(--rojo); }

/* Índice de la página: chips sin subrayado */
.ar-toc a, .ar-content .ar-toc a { text-decoration: none !important; }

/* ── Botones de todo el sitio: rectángulo de radio 8 px, Oswald en mayúsculas, rojo; nada de píldoras ── */
.btn { border-radius: var(--radio); font-family: var(--f-titulos); font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }
.btn--primary { background: var(--rojo); border-color: var(--rojo); color: #fff; }
.btn--primary:hover { background: var(--rojo-2); border-color: var(--rojo-2); color: #fff; transform: none; }
.btn--whatsapp:hover { box-shadow: none; }
.btn--outline { border-radius: var(--radio); }
.e404__btn { border-radius: var(--radio); background: var(--rojo); font-family: var(--f-titulos); font-weight: 700; }
.e404__btn:hover { background: var(--rojo-2); }

/* ── Contacto ── */
.contacto__form-title { font-family: var(--f-titulos); font-weight: 700; text-transform: uppercase; letter-spacing: .02em; color: var(--pri); position: relative; padding-bottom: 14px; }
.contacto__form-title::after { content: ""; position: absolute; left: 0; bottom: 0; width: 44px; height: 4px; border-radius: 2px; background: var(--rojo); }
.contacto__wa-card { background: var(--rojo) !important; border-radius: 14px; box-shadow: 5px 5px 0 var(--pri); }
.contacto__wa-card:hover { background: var(--rojo-2) !important; }
.contacto__wa-card strong, .contacto__wa-card span, .contacto__wa-card i { color: #fff; }
.contacto__submit { width: auto; }
.contacto input, .contacto select, .contacto textarea { border-radius: var(--radio); }
.contacto [class*="__card"]:not(.contacto__wa-card), .contacto [class*="__box"] { border-radius: 14px; box-shadow: 4px 4px 0 #DADADA; }

/* ── Encabezados de página oscuros (guías, contacto): gris oscuro de la marca con la rayita roja ── */
.page-intro { background: var(--pri); }
.page-intro__title { position: relative; padding-bottom: 16px; }
.page-intro__title::after { content: ""; position: absolute; left: 0; bottom: 0; width: 56px; height: 4px; border-radius: 2px; background: var(--rojo); }
.page-intro__eyebrow { color: #E4E4E4; }
.page-intro__desc a { color: #fff; }

/* ── Guías (/articulos): tarjetas blancas con pestaña roja, título en Oswald y sombra recta que pasa a gris oscuro ── */
.ar-card { position: relative; border: 1px solid var(--borde); border-radius: 16px; box-shadow: 5px 5px 0 #DADADA; transition: transform .2s, box-shadow .2s, border-color .2s; background: #fff; }
.ar-card::before { content: ""; position: absolute; top: -1px; left: 22px; width: 48px; height: 4px; border-radius: 0 0 4px 4px; background: var(--rojo); z-index: 1; }
.ar-card:hover { transform: translate(-3px, -3px); box-shadow: 8px 8px 0 var(--pri); border-color: var(--pri); }
.ar-card__title, .ar-card__title a { font-family: var(--f-titulos); font-weight: 700; text-transform: uppercase; letter-spacing: .02em; font-size: 1.3rem; line-height: 1.15; color: var(--pri); }
.ar-card__cat { color: var(--rojo); font-family: var(--f-titulos); letter-spacing: .1em; }
.ar-card__link { color: var(--rojo); font-family: var(--f-titulos); text-transform: uppercase; letter-spacing: .04em; }
.ar-list__cat { border-radius: 999px; }
.ar-list__cat:hover, .ar-list__cat.is-active, .ar-list__cat[aria-current] { background: var(--pri); border-color: var(--pri); color: #fff; }

/* ── Artículos: encabezado gris oscuro de la marca, columna lateral con tarjetas de sombra recta ── */
.ar-head { background: var(--pri); }
.ar-head__cat a { background: var(--rojo); border-radius: 6px; }
.ar-side__box, .pg .ar-side__box { border: 1px solid var(--borde); border-radius: 14px; box-shadow: 4px 4px 0 #DADADA; background: #fff; }
.ar-side__box--dark, .pg .ar-side__box--dark { background: var(--pri); border: 0; box-shadow: 6px 6px 0 var(--rojo); }
.ar-side__title { font-family: var(--f-titulos); text-transform: uppercase; letter-spacing: .06em; color: var(--pri); }
.ar-side__box--dark .ar-side__title { color: #fff; }
.ar-side__box a i { color: var(--rojo); }
.ar-author { color: var(--texto-2); }
.ar-more { background: var(--fondo-2); }
.ar-more__title em { font-style: normal; color: var(--rojo); }

/* ── 404 ── */
.home-page .e404, .e404 { padding-top: calc(72px + var(--alto-topbar) + 40px); }

/* Chips del hero (desktop): sin inclinación, borde blanco translúcido y Oswald, como las etiquetas de pintor.uy */
.hero__trust-item, .hero__trust-item span { transform: none !important; }
.hero__trust-item { background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.45); border-radius: 6px; color: #fff; box-shadow: none; font-family: var(--f-titulos); font-weight: 700; text-transform: uppercase; letter-spacing: .08em; font-size: .85rem; padding: .4rem .8rem; }
