/* ==========================================================================
   «Desde el balcón» · el valorador de la web independiente de Valorador Maresme.
   Solo se enlaza desde scripts/build.mjs y todo cuelga de body.tema-balcon.pagina-valorar o de
   form[data-tema="balcon"]: la web de inmobiliariamalgrat.com no carga esta hoja y no cambia.
   Arena de la playa, lino de las cortinas, nogal de los muebles, teja de los tejados, oliva de las macetas y
   oro de la luz de tarde. valorar.css se reestiliza por sus variables; aquí solo se afina lo demás.
   Sin :has() y sin estilos en línea (CSP style-src 'self').
   ========================================================================== */

.tema-balcon.pagina-valorar {
  --arena: #F7F2EA; --arena-2: #EFE6D8; --lino: #FFFFFF;
  --nogal: #2B2420; --nogal-2: #62554C; --nogal-3: #8A7C70;
  --linea: #E4D9CA; --linea-2: #B9AA97;
  --teja: #9C3D1E; --teja-osc: #7F3018; --teja-claro: #F7E9E2;
  --oliva: #5F6B3C; --oliva-osc: #4C5630; --oliva-claro: #ECEEE1;
  --oro: #E9C886; --oro-claro: #F5E7C6; --oro-tinta: #6B4A12;
  --error: #A3241A;
  --r-tarjeta: 20px; --r-campo: 14px;
  --ease: cubic-bezier(.23, 1, .32, 1);
  --sombra: 0 1px 2px rgba(43,36,32,.06), 0 10px 24px -12px rgba(43,36,32,.18), 0 28px 56px -28px rgba(43,36,32,.30);
  /* Texto secundario que cumple AA sobre arena y sobre lino (nogal-3 queda para bordes y marcas). */
  --nogal-texto-3: #6E6157;

  /* Variables de valorar.css y main.css, con los colores del balcón */
  --pagina: var(--arena); --nit: var(--arena); --sand: var(--arena);
  --superficie: var(--lino); --superficie-2: var(--arena-2);
  --ink: var(--nogal); --ink-2: var(--nogal-2); --ink-3: var(--nogal-texto-3); --txt-2: var(--nogal-2);
  --brand: var(--oliva); --brand-700: var(--oliva-osc); --brand-100: #D9DEC4; --brand-050: var(--oliva-claro);
  --accent: var(--teja); --accent-600: var(--teja-osc); --accent-050: var(--teja-claro);
  --line: var(--linea); --vora: var(--linea-2); --vora-hover: var(--nogal-3); --vora-camp: #9A8B7A;
  --fosc: var(--nogal); --fosc-suau: var(--oro);
  --sobre-accent: #FFFFFF; --sobre-brand: #FFFFFF;
  --ok: var(--oliva); --warn: var(--oro-tinta); --danger: var(--error);
  --ok-fons: var(--oliva-claro); --ok-text: var(--oliva-osc);
  --error-fons: #F9E6E3; --error-text: var(--error);
  --avis-fons: var(--oro-claro); --avis-text: var(--oro-tinta); --avis-vora: var(--oro);
  --sombra-1: 0 1px 2px rgba(43,36,32,.06), 0 2px 8px rgba(43,36,32,.05);
  --sombra-2: 0 4px 12px rgba(43,36,32,.08), 0 12px 32px rgba(43,36,32,.07);
  --sombra-3: var(--sombra);
  color-scheme: light;
  background: var(--arena);
  color: var(--nogal);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.tema-balcon.pagina-valorar img { background: transparent; }
.tema-balcon.pagina-valorar :focus-visible { outline: 3px solid var(--teja); outline-offset: 2px; }
.tema-balcon.pagina-valorar .val-main { padding: 0 0 48px; }
/* Fuera del flujo (valorar.css la deja relativa para el mapa, y aquí dejaría una franja vacía arriba). */
.tema-balcon.pagina-valorar .skip-link { position: absolute; z-index: 100; }
.tema-balcon.pagina-valorar .valorador { max-width: none; margin: 0; }

/* ---------- Cabecera: atrás · marca · idioma (el «Paso N de M» vive en la tarjeta) ---------- */
.js .tema-balcon.pagina-valorar .valorador__cap {
  position: sticky; top: 0; z-index: 30;
  background: rgba(247,242,234,.94);
  -webkit-backdrop-filter: saturate(1.2) blur(10px); backdrop-filter: saturate(1.2) blur(10px);
  box-shadow: 0 1px 0 rgba(43,36,32,.08);
}
.tema-balcon.pagina-valorar .progres-pista { background: var(--linea); }
.tema-balcon.pagina-valorar .progres-fill { background: var(--oliva); }
/* En pantallas muy estrechas la marca toma el hueco que dejan «Atrás» y el idioma; desde 380 px va centrada de verdad. */
.tema-balcon.pagina-valorar .val-barra {
  grid-template-columns: auto minmax(0, 1fr) auto; column-gap: 4px;
  max-width: 1120px; min-height: 56px; margin: 0 auto; padding: 3px 8px 0;
}
@media (min-width: 380px) {
  .tema-balcon.pagina-valorar .val-barra { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); }
}
.tema-balcon.pagina-valorar .val-barra .marca { min-width: 0; max-width: 100%; }
.tema-balcon.pagina-valorar .val-barra .marca__nom { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tema-balcon.pagina-valorar .val-enrere {
  justify-self: start; gap: 2px; min-height: 44px; padding: 0 10px 0 4px; border-radius: 10px;
  color: var(--teja); font-size: 16px; font-weight: 600; line-height: 1;
}
.tema-balcon.pagina-valorar .val-enrere svg { width: 22px; height: 22px; }
.tema-balcon.pagina-valorar .val-barra .marca {
  justify-self: center; gap: 8px; min-height: 44px; padding: 0 4px; border-radius: 10px; color: var(--nogal);
}
.tema-balcon.pagina-valorar .val-barra .marca__logo { width: 30px; height: 30px; color: var(--teja); }
.tema-balcon.pagina-valorar .val-barra .marca__logo path:last-child { stroke: var(--oro); }
.tema-balcon.pagina-valorar .val-barra .marca__nom {
  font-family: var(--font-body); font-size: 16px; font-weight: 600; letter-spacing: -.005em; color: var(--nogal);
}
/* El contador se queda para los lectores de pantalla (aria-live) y para la tarjeta, que lo copia. */
.tema-balcon.pagina-valorar .val-pas {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden;
  clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap;
}
.bv-idiomas { justify-self: end; display: flex; gap: 2px; }
.bv-idiomas a {
  display: grid; place-items: center; min-width: 44px; min-height: 44px; border-radius: 10px;
  color: var(--nogal-2); font: 600 14px/1 var(--font-body); text-decoration: none;
  transition: background-color .15s ease, color .15s ease;
}
.bv-idiomas a[aria-current="true"] { background: var(--lino); color: var(--nogal); box-shadow: 0 0 0 1px var(--linea-2); }
form[data-tema="balcon"][data-pas="12"] .val-enrere,
form[data-tema="balcon"][data-pas="13"] .val-enrere { visibility: hidden; }
form[data-tema="balcon"][data-pas="12"] .progres-pista,
form[data-tema="balcon"][data-pas="13"] .progres-pista { display: none; }
@media (max-width: 399px) {
  .tema-balcon.pagina-valorar .val-barra { padding-inline: 6px; column-gap: 2px; }
  .tema-balcon.pagina-valorar .val-enrere { min-width: 44px; justify-content: center; padding: 0; }
  .bv-enrere__t {
    position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap;
  }
  .bv-idiomas a { min-width: 42px; }
}
@media (max-width: 359px) {
  .tema-balcon.pagina-valorar .val-barra .marca { gap: 6px; padding: 0 2px; }
  .tema-balcon.pagina-valorar .val-barra .marca__nom { font-size: 14px; letter-spacing: -.01em; }
  .tema-balcon.pagina-valorar .val-barra .marca__logo { width: 26px; height: 26px; }
  .bv-idiomas a { min-width: 40px; }
}
@media (hover: hover) and (pointer: fine) {
  .tema-balcon.pagina-valorar .val-enrere:hover,
  .bv-idiomas a:hover { background: rgba(43,36,32,.06); color: var(--nogal); }
  .tema-balcon.pagina-valorar .val-enrere:hover { color: var(--teja-osc); }
}

/* ---------- Franja de fotos: una por paso ---------- */
.bv-escenario { position: relative; overflow-x: clip; --bv-foto-alto: 172px; --bv-solape: 44px; }
.js .bv-escenario.solo-js { display: block; }
.bv-foto { position: relative; height: var(--bv-foto-alto); overflow: hidden; background: var(--arena-2); }
.bv-foto__img {
  position: absolute; inset: 0; display: block; width: 100%; height: 100%; max-width: none;
  object-fit: cover; object-position: 50% 50%;
  opacity: 0; filter: blur(6px);
  transition: opacity 280ms var(--ease), filter 280ms var(--ease);
}
.bv-foto__img.ver, .bv-foto__img.sale { opacity: 1; filter: none; }
.bv-foto__img.sale { transition: none; }
.bv-foto::after {
  content: ""; position: absolute; inset: 0; z-index: 2; pointer-events: none;
  background: linear-gradient(180deg, rgba(247,242,234,0) 42%, rgba(247,242,234,.5) 74%, var(--arena) 100%);
}
.bv-foto__noche {
  position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background: rgba(43,36,32,.55); opacity: 0; transition: opacity .7s var(--ease);
}
/* Encuadres (móvil; en pantallas anchas, abajo) */
.bv-foto__img[data-encuadre="campanar"] { object-position: 50% 45%; }
.bv-foto__img[data-encuadre="fachada"] { object-position: 50% 40%; }
.bv-foto__img[data-encuadre="salon"] { object-position: 50% 42%; }
.bv-foto__img[data-encuadre="detalle"] { object-position: 18% 78%; }
.bv-foto__img[data-encuadre="balcon"] { object-position: 50% 48%; }
.bv-foto__img[data-encuadre="llave"] { object-position: 50% 45%; }
.bv-foto__img[data-encuadre="cafe"] { object-position: 40% 56%; }
.bv-foto__img[data-encuadre="ventana"] { object-position: 50% 52%; }
.bv-foto__img[data-encuadre="grande"] { object-position: 58% 60%; }
@media (min-width: 720px) {
  .bv-escenario { --bv-foto-alto: 264px; --bv-solape: 64px; }
  .bv-foto__img[data-encuadre="fachada"] { object-position: 50% 46%; }
  .bv-foto__img[data-encuadre="salon"] { object-position: 50% 40%; }
  .bv-foto__img[data-encuadre="detalle"] { object-position: 30% 74%; }
  .bv-foto__img[data-encuadre="balcon"] { object-position: 50% 42%; }
  .bv-foto__img[data-encuadre="cafe"] { object-position: 50% 33%; }
  .bv-foto__img[data-encuadre="ventana"] { object-position: 50% 55%; }
  .bv-foto__img[data-encuadre="grande"] { object-position: 50% 58%; }
}

/* ---------- «Tu horquilla»: la tarjeta que solapa la foto ---------- */
.bv-horquilla {
  position: relative; z-index: 3; max-width: 640px; margin: calc(var(--bv-solape) * -1) 16px 0;
  background: var(--lino); border-radius: var(--r-tarjeta); box-shadow: var(--sombra); color: var(--nogal);
}
@media (min-width: 672px) { .bv-horquilla { margin-inline: auto; } }
.bv-horquilla__in { padding: 12px 16px 10px; }
.bv-horquilla__top { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.bv-horquilla__eti, .bv-horquilla__paso { font: 500 14px/18px var(--font-body); color: var(--nogal-2); }
.bv-horquilla__paso { font-variant-numeric: tabular-nums; white-space: nowrap; }
.bv-horquilla__mid { display: flex; align-items: center; gap: 14px; margin: 4px 0 0; }
.bv-horquilla__pct {
  flex: none; width: 4.4ch; white-space: nowrap;
  font: 600 30px/36px var(--font-title); font-optical-sizing: auto; letter-spacing: -.015em;
  font-variant-numeric: tabular-nums lining-nums; color: var(--nogal);
}
.bv-horquilla__msg { margin: 8px 0 0; min-height: 20px; font: 500 14px/20px var(--font-body); color: var(--nogal-2); text-wrap: balance; }
.bv-horquilla__msg--ok { color: var(--oliva-osc); font-weight: 600; }
.bv-horquilla__resp {
  position: relative; flex: none; display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  width: 44px; height: 44px; padding: 0; border: 1.5px solid var(--linea-2); border-radius: 999px;
  background: var(--lino); color: var(--teja); font: 600 15px/1 var(--font-body);
  transition: background-color .15s ease, border-color .15s ease;
}
.bv-horquilla__resp-t {
  position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap;
}
.bv-horquilla__resp svg { transition: transform .2s var(--ease); }
.bv-horquilla__resp[aria-expanded="true"] svg { transform: rotate(180deg); }
.bv-horquilla--off .bv-horquilla__mid { display: none; }
.bv-horquilla--off .bv-horquilla__msg { margin-top: 2px; color: var(--nogal); }

.bv-barra { position: relative; flex: 1; height: 12px; min-width: 0; --l: 50%; --r: 50%; }
.bv-barra__pista { position: absolute; left: 0; right: 0; top: 50%; height: 2px; margin-top: -1px; border-radius: 2px; background: var(--linea-2); }
.bv-barra__relleno {
  position: absolute; inset: 0; border-radius: 999px; background: var(--oro);
  clip-path: inset(0 var(--r) 0 var(--l) round 999px); transition: clip-path .36s var(--ease);
}
.bv-barra__mordaza {
  position: absolute; top: -6px; bottom: -6px; width: 3px; margin-left: -1.5px; border-radius: 2px;
  background: var(--nogal); transition: left .36s var(--ease), opacity .2s ease;
}
.bv-barra__mordaza--i { left: var(--l); }
.bv-barra__mordaza--d { left: calc(100% - var(--r)); }
.bv-barra__centro { position: absolute; left: 50%; top: 3px; bottom: 3px; width: 2px; margin-left: -1px; border-radius: 1px; background: var(--lino); }
/* Trece marcas, como una regla: cada doceavo una raya y la del centro más larga. */
.bv-barra__marcas {
  position: absolute; left: 0; right: 0; top: calc(100% + 5px); height: 4px;
  background-image: linear-gradient(90deg, #BFB2A2 1px, transparent 1px);
  background-size: calc((100% - 1px) / 12) 4px; background-repeat: repeat-x;
}
.bv-barra__marcas::after { content: ""; position: absolute; left: 50%; top: 0; width: 1px; height: 6px; background: var(--nogal-2); }
.bv-barra__candado {
  position: absolute; left: 50%; top: 50%; width: 38px; height: 38px; margin: -19px 0 0 -19px; border-radius: 50%;
  display: grid; place-items: center; background: var(--lino); color: var(--nogal); box-shadow: 0 2px 10px rgba(0,0,0,.25);
}
.bv-barra__candado[hidden] { display: none; }

.bv-resumen { padding: 0 16px 12px; max-height: 52vh; overflow: auto; overscroll-behavior: contain; }
.bv-resumen__lista { margin: 0; padding: 0; }
.bv-resumen__fila { display: flex; align-items: center; gap: 12px; padding: 8px 0; border-top: 1px solid var(--linea); }
.bv-resumen__texto { flex: 1; min-width: 0; }
.bv-resumen__l { display: block; font: 500 14px/19px var(--font-body); color: var(--nogal-2); }
.bv-resumen__v { display: block; font: 500 16px/22px var(--font-body); color: var(--nogal); overflow-wrap: anywhere; }
.bv-resumen__vacio { margin: 8px 0; font-size: 15px; color: var(--nogal-2); }

@media (min-width: 720px) {
  .bv-horquilla__in { padding: 16px 22px 12px; }
  .bv-horquilla__pct { font-size: 36px; line-height: 42px; }
  .bv-barra { height: 14px; }
  .bv-horquilla__mid { gap: 24px; margin: 4px 0; }
  .bv-horquilla__resp { width: auto; padding: 0 14px 0 18px; }
  .bv-horquilla__resp-t { position: static; width: auto; height: auto; overflow: visible; clip: auto; clip-path: none; }
  .bv-resumen { padding: 0 22px 14px; }
}
@media (hover: hover) and (pointer: fine) {
  .bv-horquilla__resp:hover { background: var(--teja-claro); border-color: var(--teja); }
}

/* ---------- Resultado: la foto crece y la horquilla vive encima ---------- */
.bv-escenario[data-modo="grande"] { --bv-foto-alto: clamp(372px, 48vh, 480px); --bv-solape: 28px; }
@supports (height: 1svh) { .bv-escenario[data-modo="grande"] { --bv-foto-alto: clamp(372px, 48svh, 480px); } }
.bv-escenario[data-modo="grande"] .bv-foto::after {
  background: linear-gradient(180deg, rgba(28,22,18,.06) 0%, rgba(28,22,18,.36) 22%, rgba(28,22,18,.68) 46%, rgba(28,22,18,.9) 100%);
}
.bv-escenario[data-modo="grande"]:not([data-abierto]) .bv-foto__noche { opacity: 1; }
.bv-horquilla--grande {
  position: absolute; left: 0; right: 0; bottom: var(--bv-solape); margin: 0; max-width: none;
  background: none; border-radius: 0; box-shadow: none; color: #FFFFFF;
}
.bv-horquilla--grande .bv-horquilla__in { max-width: 760px; margin: 0 auto; padding: 0 20px 22px; }
.bv-horquilla--grande .bv-horquilla__eti {
  font: 600 16px/22px var(--font-body); color: #FFFFFF; text-wrap: balance;
  text-shadow: 0 1px 2px rgba(0,0,0,.45), 0 0 14px rgba(0,0,0,.35);
}
.bv-horquilla--grande .bv-horquilla__paso,
.bv-horquilla--grande .bv-horquilla__pct,
.bv-horquilla--grande .bv-horquilla__resp,
.bv-horquilla--grande .bv-horquilla__msg { display: none; }
.bv-horquilla--grande .bv-horquilla__mid { display: block; margin: 4px 0 0; }
.bv-horquilla__extremos {
  display: flex; flex-wrap: wrap; align-items: baseline; column-gap: .26em; margin: 6px 0 14px;
  font: 500 44px/50px var(--font-title); font-optical-sizing: auto; letter-spacing: -.02em; color: #FFFFFF;
}
.bv-ext {
  white-space: nowrap; font-variant-numeric: tabular-nums lining-nums;
  text-shadow: 0 2px 18px rgba(0,0,0,.3);
  transition: filter .7s var(--ease), opacity .7s var(--ease);
}
.bv-ext--velo { filter: blur(12px); opacity: .3; }
.bv-ext--sin-transicion { transition: none; }
.bv-horquilla--grande .bv-barra { height: 14px; }
.bv-horquilla--grande .bv-barra__pista { background: rgba(255,255,255,.45); }
.bv-horquilla--grande .bv-barra__mordaza { top: -8px; bottom: -8px; width: 4px; margin-left: 0; background: #FFFFFF; }
.bv-horquilla--grande .bv-barra__mordaza--d { margin-left: -4px; }
.bv-horquilla--grande .bv-barra__centro { background: var(--nogal); opacity: .35; }
.bv-horquilla--grande .bv-barra__marcas { display: none; }
.bv-horquilla__conf {
  margin: 16px 0 0; font: 500 16px/23px var(--font-body); color: #FFFFFF;
  font-variant-numeric: tabular-nums; text-shadow: 0 1px 8px rgba(0,0,0,.45);
}
@media (min-width: 720px) {
  .bv-escenario[data-modo="grande"] { --bv-foto-alto: clamp(400px, 50vh, 500px); --bv-solape: 36px; }
  .bv-horquilla--grande .bv-horquilla__in { padding: 0 20px 26px; }
  .bv-horquilla--grande .bv-horquilla__eti { font-size: 17px; }
  .bv-horquilla__extremos { font-size: 64px; line-height: 70px; }
}
@media (max-width: 359px) { .bv-horquilla__extremos { font-size: 38px; line-height: 44px; } }

/* ---------- Pasos: una pregunta por pantalla, sobre arena ---------- */
.tema-balcon.pagina-valorar .valorador__cos {
  position: relative; max-width: 640px; margin: 0 auto; padding: 28px 16px 8px;
  background: transparent; border: 0; border-radius: 0; box-shadow: none;
}
@media (min-width: 720px) { .tema-balcon.pagina-valorar .valorador__cos { padding-top: 44px; } }
.tema-balcon.pagina-valorar .pas__llegenda {
  margin: 0 0 8px; font: 500 30px/35px var(--font-title); font-optical-sizing: auto;
  letter-spacing: -.012em; text-wrap: balance; color: var(--nogal);
}
@media (min-width: 720px) { .tema-balcon.pagina-valorar .pas__llegenda { font-size: 40px; line-height: 45px; } }
.tema-balcon.pagina-valorar .pas__ajuda { margin: 0 0 20px; font-size: 17px; line-height: 25px; color: var(--nogal-2); text-wrap: pretty; }
.tema-balcon.pagina-valorar .micro { font-size: 14px; line-height: 20px; color: var(--nogal-2); }
.tema-balcon.pagina-valorar .small { color: var(--nogal-2); }
.tema-balcon.pagina-valorar .camp > label { margin-bottom: 8px; font: 600 17px/23px var(--font-body); color: var(--nogal); }
.tema-balcon.pagina-valorar .camp__control {
  min-height: 56px; padding: 0 16px; border: 1.5px solid var(--vora-camp); border-radius: var(--r-campo);
  background: var(--lino); color: var(--nogal); font-size: 18px; box-shadow: none;
}
.tema-balcon.pagina-valorar select.camp__control { padding-right: 40px; }
.tema-balcon.pagina-valorar .camp__control::placeholder { color: var(--nogal-texto-3); }
.tema-balcon.pagina-valorar .camp__control:focus { outline: 3px solid var(--oro); outline-offset: 0; border-color: var(--nogal); box-shadow: none; }
.tema-balcon.pagina-valorar .camp__control[aria-invalid="true"] { border-color: var(--error); }
.tema-balcon.pagina-valorar .camp__control:disabled { background: var(--arena-2); color: var(--nogal-2); }
.tema-balcon.pagina-valorar .camp__error { margin-top: 10px; font: 600 15px/21px var(--font-body); color: var(--error); }
.tema-balcon.pagina-valorar .camp--cerca { margin-top: 0; }
.tema-balcon.pagina-valorar .camp--cerca .camp__control { padding-left: 46px; }
.tema-balcon.pagina-valorar .camp__lupa { left: 16px; top: 19px; color: var(--nogal-2); }
.tema-balcon.pagina-valorar .suggeriments {
  top: calc(100% + 8px); border: 0; border-radius: var(--r-campo); background: var(--lino); box-shadow: var(--sombra); max-height: 320px;
}
.tema-balcon.pagina-valorar .suggeriments li { border-bottom: 0; border-top: 1px solid var(--linea); }
.tema-balcon.pagina-valorar .suggeriments li:first-child { border-top: 0; }
.tema-balcon.pagina-valorar .suggeriments button { min-height: 56px; padding: 8px 16px; font-size: 17px; line-height: 22px; color: var(--nogal); align-items: center; }
.tema-balcon.pagina-valorar .suggeriments button:hover,
.tema-balcon.pagina-valorar .suggeriments li[aria-selected="true"] > button { background: var(--oro-claro); box-shadow: none; }
.tema-balcon.pagina-valorar .suggeriments .sug__zona { font-size: 15px; line-height: 20px; color: var(--nogal-2); }
.tema-balcon.pagina-valorar .sug__icona { color: var(--nogal-2); }
.tema-balcon.pagina-valorar .adreca-triada {
  gap: 12px; margin-top: 0; padding: 12px 14px; border: 1.5px solid var(--oliva); border-radius: var(--r-campo); background: var(--oliva-claro);
}
.tema-balcon.pagina-valorar .adreca-triada__icona { background: var(--lino); color: var(--oliva); box-shadow: none; }
.tema-balcon.pagina-valorar .adreca-triada__text strong { font-size: 18px; line-height: 24px; color: var(--nogal); }
.tema-balcon.pagina-valorar .adreca-triada__text span { font-size: 15px; line-height: 20px; color: var(--nogal-2); }
.tema-balcon.pagina-valorar .lugar-triat__ajuda { color: var(--nogal-2); }
.tema-balcon.pagina-valorar .camp--numero, .tema-balcon.pagina-valorar .camp--pis { margin-top: 22px; }
.tema-balcon.pagina-valorar .camp--numero .camp__control { max-width: 150px; font-variant-numeric: tabular-nums; }
.tema-balcon.pagina-valorar .estat-adreca {
  margin-top: 16px; padding: 12px 14px; border-radius: var(--r-campo);
  background: var(--arena-2); color: var(--nogal); font-size: 16px; line-height: 23px; font-weight: 500;
}
.tema-balcon.pagina-valorar .estat-adreca--avis { background: var(--oro-claro); color: var(--oro-tinta); }
.tema-balcon.pagina-valorar .camp-manual { margin-top: 16px; padding: 16px; border-radius: 16px; background: var(--lino); box-shadow: 0 0 0 1px var(--linea); }
.tema-balcon.pagina-valorar .enllac {
  min-height: 44px; padding: 0 2px; color: var(--teja); font: 600 16px/1.3 var(--font-body);
  text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1.5px; border-radius: 4px;
}
.tema-balcon.pagina-valorar .avis { border-radius: var(--r-campo); font-size: 16px; line-height: 23px; font-weight: 500; }
.tema-balcon.pagina-valorar .avis--ok { background: var(--oliva-claro); color: var(--oliva-osc); }
.tema-balcon.pagina-valorar .avis--error { background: var(--error-fons); color: var(--error); }
.tema-balcon.pagina-valorar .avis--info { background: var(--arena-2); color: var(--nogal); }
.bv-visita-aviso { margin: 0 0 16px; }

/* Retomar una valoración a medias: arriba del todo, en la luz de tarde */
.js form[data-tema="balcon"] #paso-0[data-actiu] { display: flex; flex-direction: column; }
.tema-balcon.pagina-valorar .retomar {
  order: -1; margin: 0 0 18px; padding: 12px 16px; gap: 8px 16px;
  border: 1px solid #EBD9B0; border-radius: var(--r-campo); background: var(--oro-claro); color: var(--oro-tinta);
  font-size: 16px; line-height: 23px; font-weight: 500;
}
.tema-balcon.pagina-valorar .retomar span { flex: 1 1 220px; }
.tema-balcon.pagina-valorar .retomar .btn { min-height: 44px; padding: 0 18px; border-radius: 12px; font-size: 16px; color: var(--teja); background: var(--lino); box-shadow: inset 0 0 0 2px var(--teja); }

/* Opciones en fila, con su «radio» a la izquierda */
.tema-balcon.pagina-valorar .opcions,
.tema-balcon.pagina-valorar .opcions--2,
.tema-balcon.pagina-valorar .opcions--3 { grid-template-columns: 1fr; gap: 10px; }
@media (min-width: 720px) {
  .tema-balcon.pagina-valorar .opcions--2,
  .tema-balcon.pagina-valorar .opcions--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.tema-balcon.pagina-valorar .opcio__cara {
  /* column-gap separa icono y texto; row-gap, título y explicación (valorar.css las apila si hay explicación) */
  min-height: 60px; padding: 12px 16px 12px 54px; column-gap: 14px; row-gap: 2px;
  border: 1.5px solid var(--linea-2); border-radius: var(--r-campo); background: var(--lino);
  font: 600 18px/24px var(--font-body); color: var(--nogal);
  transition-property: border-color, background-color, box-shadow, transform; transition-duration: .15s, .15s, .15s, .12s;
}
.tema-balcon.pagina-valorar .opcio__cara small { margin-top: 2px; font: 400 15px/21px var(--font-body); color: var(--nogal-2); }
.tema-balcon.pagina-valorar .opcio__cara::after {
  left: 16px; right: auto; width: 24px; height: 24px; margin-top: -12px; border: 2px solid var(--nogal-3); background: var(--lino);
}
.tema-balcon.pagina-valorar .opcio__icona { width: 22px; height: 22px; color: var(--nogal-2); }
.tema-balcon.pagina-valorar .opcio input:checked + .opcio__cara {
  border-color: var(--oliva); background: var(--oliva-claro); box-shadow: inset 0 0 0 1px var(--oliva);
}
.tema-balcon.pagina-valorar .opcio input:checked + .opcio__cara::after { border-color: var(--oliva); background: var(--lino); box-shadow: inset 0 0 0 6px var(--oliva); }
.tema-balcon.pagina-valorar .opcio input:checked + .opcio__cara .opcio__icona { color: var(--oliva); }
.tema-balcon.pagina-valorar .opcio input:focus-visible + .opcio__cara { outline: 3px solid var(--teja); outline-offset: 2px; }
.tema-balcon.pagina-valorar .opcio input:active + .opcio__cara { transform: scale(.985); }

.tema-balcon.pagina-valorar .xips { gap: 10px; }
.tema-balcon.pagina-valorar .xip__cara {
  min-height: 48px; padding: 0 18px; gap: 8px; border: 1.5px solid var(--linea-2); border-radius: 999px;
  background: var(--lino); color: var(--nogal); font: 600 17px/1.2 var(--font-body);
  transition-property: border-color, background-color, box-shadow, transform; transition-duration: .15s, .15s, .15s, .12s;
}
.tema-balcon.pagina-valorar .xip__cara::before { color: var(--nogal-2); }
.tema-balcon.pagina-valorar .xip input:checked + .xip__cara { border-color: var(--oliva); background: var(--oliva-claro); color: var(--nogal); box-shadow: inset 0 0 0 1px var(--oliva); }
.tema-balcon.pagina-valorar .xip input:checked + .xip__cara::before { color: var(--oliva); }
.tema-balcon.pagina-valorar .xip input:focus-visible + .xip__cara { outline: 3px solid var(--teja); outline-offset: 2px; }
.tema-balcon.pagina-valorar .xip input:active + .xip__cara { transform: scale(.97); }

.tema-balcon.pagina-valorar .stepper { gap: 16px; }
.tema-balcon.pagina-valorar .stepper__btn {
  width: 56px; height: 56px; flex: 0 0 56px; border: 1.5px solid var(--linea-2); background: var(--lino); color: var(--teja);
  transition-property: border-color, background-color, transform; transition-duration: .15s, .15s, .12s;
}
.tema-balcon.pagina-valorar .stepper__btn:active { transform: scale(.95); }
.tema-balcon.pagina-valorar input.stepper__valor { font: 500 40px/1 var(--font-title); font-variant-numeric: tabular-nums lining-nums; color: var(--nogal); }
.tema-balcon.pagina-valorar .slider-grup { gap: 12px; }
.tema-balcon.pagina-valorar .slider-grup input[type="number"] { max-width: 180px; font-size: 22px; font-weight: 600; font-variant-numeric: tabular-nums; }
.tema-balcon.pagina-valorar .slider-grup .unitat { font-size: 18px; color: var(--nogal-2); }
.tema-balcon.pagina-valorar input[type="range"]::-webkit-slider-runnable-track { background: var(--linea-2); }
.tema-balcon.pagina-valorar input[type="range"]::-moz-range-track { background: var(--linea-2); }
.tema-balcon.pagina-valorar input[type="range"]::-webkit-slider-thumb { background: var(--oliva); border-color: var(--lino); }
.tema-balcon.pagina-valorar input[type="range"]::-moz-range-thumb { background: var(--oliva); border-color: var(--lino); }
.tema-balcon.pagina-valorar .consent label { font-size: 15px; line-height: 22px; color: var(--nogal-2); }
.tema-balcon.pagina-valorar .consent input[type="checkbox"] { accent-color: var(--oliva); }
.tema-balcon.pagina-valorar .consent a { color: var(--teja); }
/* «Información básica» de protección de datos: plegada bajo la casilla, pequeña y sin ruido. */
.tema-balcon.pagina-valorar .info-basica { margin: -4px 0 14px 32px; font-size: 13px; line-height: 19px; color: var(--nogal-2); }
.tema-balcon.pagina-valorar .info-basica summary {
  display: inline-flex; align-items: center; gap: 6px; min-height: 32px; cursor: pointer; list-style: none;
  font-weight: 600; color: var(--nogal-2); text-decoration: underline; text-decoration-color: var(--linea-2); text-underline-offset: 3px;
}
.tema-balcon.pagina-valorar .info-basica summary::-webkit-details-marker { display: none; }
.tema-balcon.pagina-valorar .info-basica summary::after {
  content: ""; width: 7px; height: 7px; margin-top: -3px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg); transition: transform .2s var(--ease);
}
.tema-balcon.pagina-valorar .info-basica[open] summary::after { margin-top: 3px; transform: rotate(-135deg); }
.tema-balcon.pagina-valorar .info-basica summary:focus-visible { outline: 3px solid var(--teja); outline-offset: 2px; border-radius: 4px; }
.tema-balcon.pagina-valorar .info-basica p { margin: 2px 0 0; }
.tema-balcon.pagina-valorar .info-basica a { color: var(--teja); }
.tema-balcon.pagina-valorar .codi-sms input { border: 1.5px solid var(--vora-camp); border-radius: var(--r-campo); background: var(--lino); color: var(--nogal); }
.tema-balcon.pagina-valorar .codi-sms input:focus { outline: 3px solid var(--oro); outline-offset: 0; border-color: var(--nogal); box-shadow: none; }

/* Lo que dice el Catastro sobre la pregunta */
.tema-balcon.pagina-valorar .pista-cat {
  position: relative; margin: 0 0 16px; padding: 12px 14px 12px 44px; border: 0; border-radius: var(--r-campo);
  background: var(--lino); box-shadow: 0 0 0 1px var(--linea); color: var(--nogal); font-size: 16px; line-height: 23px;
}
.tema-balcon.pagina-valorar .pista-cat::before {
  content: ""; position: absolute; left: 14px; top: 14px; width: 20px; height: 20px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235F6B3C' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v5.5M12 7.5v.01'/%3E%3C/svg%3E") center / 20px no-repeat;
}

/* Botones */
.tema-balcon.pagina-valorar .btn {
  border-radius: var(--r-campo); font-family: var(--font-body); text-wrap: balance;
  transition-property: transform, background-color, color, box-shadow; transition-duration: .12s, .15s, .15s, .15s;
}
.tema-balcon.pagina-valorar .btn:hover { transform: none; }
.tema-balcon.pagina-valorar .btn:active { transform: scale(.97); }
.tema-balcon.pagina-valorar .btn--principal,
.tema-balcon.pagina-valorar .pas__peu .btn--principal,
.tema-balcon.pagina-valorar .pas__peu .btn--principal:hover {
  min-height: 56px; padding: 8px 22px; border: 0; border-radius: var(--r-campo);
  background: var(--teja); color: #FFFFFF; font-size: 18px; font-weight: 600; line-height: 1.2;
  box-shadow: 0 1px 2px rgba(43,36,32,.18), 0 8px 18px -10px rgba(156,61,30,.7);
}
.tema-balcon.pagina-valorar .btn--contorn { background: var(--lino); color: var(--teja); border: 0; box-shadow: inset 0 0 0 2px var(--teja); }
.tema-balcon.pagina-valorar .btn--marca { background: var(--oliva); color: #FFFFFF; border: 0; }
.tema-balcon.pagina-valorar .btn--fantasma { color: var(--teja); font-weight: 600; text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1.5px; }
.tema-balcon.pagina-valorar .btn[aria-busy="true"] { opacity: .75; }
@media (hover: hover) and (pointer: fine) {
  .tema-balcon.pagina-valorar .btn--principal:hover,
  .tema-balcon.pagina-valorar .pas__peu .btn--principal:hover { background: var(--teja-osc); }
  .tema-balcon.pagina-valorar .btn--contorn:hover { background: var(--teja-claro); }
  .tema-balcon.pagina-valorar .btn--marca:hover { background: var(--oliva-osc); }
  .tema-balcon.pagina-valorar .opcio input:hover + .opcio__cara,
  .tema-balcon.pagina-valorar .xip input:hover + .xip__cara,
  .tema-balcon.pagina-valorar .stepper__btn:hover { border-color: var(--nogal-3); box-shadow: none; }
  .tema-balcon.pagina-valorar .opcio input:checked:hover + .opcio__cara,
  .tema-balcon.pagina-valorar .xip input:checked:hover + .xip__cara { border-color: var(--oliva); box-shadow: inset 0 0 0 1px var(--oliva); }
  .tema-balcon.pagina-valorar .enllac:hover { color: var(--teja-osc); text-decoration-thickness: 2.5px; }
}

/* «Continuar» siempre a mano en el móvil; en pantallas anchas, en su sitio */
.tema-balcon.pagina-valorar .pas__peu { margin-top: 24px; gap: 8px; }
.tema-balcon.pagina-valorar .pas__peu-accions .btn--contorn {
  min-height: 44px; padding: 0 4px; background: none; box-shadow: none; color: var(--teja); font-size: 16px;
  text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1.5px;
}
@media (max-width: 719px) {
  .js .tema-balcon.pagina-valorar .pas > .pas__peu {
    position: sticky; bottom: 0; z-index: 5; margin: 10px -16px 0;
    padding: 14px 16px calc(14px + env(safe-area-inset-bottom, 0px));
    background: linear-gradient(rgba(247,242,234,0), var(--arena) 18px);
  }
  .tema-balcon.pagina-valorar .pas__peu > .btn--principal,
  .tema-balcon.pagina-valorar .pas__peu > span,
  .tema-balcon.pagina-valorar .pas__peu .btn--principal { width: 100%; }
  .tema-balcon.pagina-valorar .pas__peu > span { flex-direction: column-reverse; gap: 2px; align-items: stretch; }
}
@media (min-width: 720px) {
  .tema-balcon.pagina-valorar .pas__peu { justify-content: flex-start; margin-top: 30px; }
  .tema-balcon.pagina-valorar .pas__peu > .btn--principal { margin-left: 0; min-width: 320px; }
  .tema-balcon.pagina-valorar .pas__peu-accions { flex-direction: row-reverse; justify-content: flex-end; align-items: center; gap: 16px; }
  .tema-balcon.pagina-valorar .pas__peu-accions .btn--principal { min-width: 320px; }
}

/* Notas al pie de los pasos */
.bv-prueba { margin: 22px 0 0; font-size: 15px; line-height: 22px; color: var(--nogal-2); text-wrap: pretty; }
.bv-prueba + .bv-prueba { margin-top: 8px; }
.bv-guardado { gap: 8px; align-items: center; margin: 14px 0 0; font-size: 15px; line-height: 21px; color: var(--nogal-2); }
.js .bv-guardado.solo-js-inline { display: flex; }
.bv-guardado svg { flex: none; color: var(--oliva); }
.tema-balcon.pagina-valorar .garanties { max-width: 640px; color: var(--nogal-2); font-size: 15px; }
.tema-balcon.pagina-valorar .garanties svg { color: var(--oliva); }
.tema-balcon.pagina-valorar .val-nota { max-width: 640px; color: var(--nogal-2); font-size: 13px; line-height: 19px; text-wrap: pretty; }

/* ---------- Ficha oficial: cuatro cifras y el resto plegado ---------- */
.tema-balcon.pagina-valorar .fitxa-cat {
  position: relative; margin: 0 0 8px; padding: 0; overflow: hidden;
  border: 0; border-radius: var(--r-tarjeta); background: var(--lino); box-shadow: var(--sombra);
}
.tema-balcon.pagina-valorar .fitxa-cat__titol { margin: 0; padding: 16px; font: 600 18px/24px var(--font-body); letter-spacing: 0; color: var(--nogal); text-wrap: balance; }
.tema-balcon.pagina-valorar [data-ficha-catastro][data-con-plano][data-plegada] .fitxa-cat__titol { padding-right: 128px; min-height: 104px; }
.bv-datos4 { display: grid; grid-template-columns: 1fr 1fr; margin: 0; border-top: 1px solid var(--linea); }
.bv-dato { display: flex; flex-direction: column; padding: 14px 16px 16px; border-top: 1px solid var(--linea); min-width: 0; }
.bv-dato:nth-child(-n+2) { border-top: 0; }
.bv-dato:nth-child(odd) { border-right: 1px solid var(--linea); }
.bv-dato__v {
  order: -1; display: flex; align-items: center; gap: 8px; margin: 0; white-space: nowrap;
  font: 500 36px/42px var(--font-title); font-optical-sizing: auto; letter-spacing: -.015em;
  font-variant-numeric: tabular-nums lining-nums; color: var(--nogal);
}
.bv-dato__l { font: 500 15px/20px var(--font-body); color: var(--nogal-2); }
.bv-dato--cargando .bv-dato__v { color: var(--nogal-3); }
.bv-letra { display: inline-block; flex: none; width: 12px; height: 24px; border-radius: 2px 8px 8px 2px; }
.tema-balcon.pagina-valorar [data-ficha-contenido] { padding: 0 16px; }
.tema-balcon.pagina-valorar [data-ficha-catastro]:not([data-plegada]) [data-ficha-contenido] { padding-top: 12px; border-top: 1px solid var(--linea); }
.tema-balcon.pagina-valorar [data-ficha-catastro][data-plegada] [data-ficha-contenido] > :not(.fitxa-cat__plano) { display: none; }
.tema-balcon.pagina-valorar [data-ficha-catastro][data-plegada] [data-ficha-contenido] .fitxa-cat__plano {
  position: absolute; top: 16px; right: 16px; width: 96px; height: 72px; margin: 0;
}
.tema-balcon.pagina-valorar [data-ficha-catastro][data-plegada] .fitxa-cat__plano img {
  width: 96px; height: 72px; aspect-ratio: auto; object-fit: cover; border-radius: 10px;
  border: 0; outline: 1px solid rgba(0,0,0,.1); outline-offset: -1px;
}
.tema-balcon.pagina-valorar [data-ficha-catastro][data-plegada] .fitxa-cat__plano figcaption { display: none; }
.tema-balcon.pagina-valorar .fitxa-cat__plano img { border-color: var(--linea); background: var(--arena); }
.tema-balcon.pagina-valorar .fitxa-cat__fila { border-top-color: var(--linea); padding: 10px 0; }
.tema-balcon.pagina-valorar .fitxa-cat__clau { font: 500 14px/20px var(--font-body); color: var(--nogal-2); }
.tema-balcon.pagina-valorar .fitxa-cat__valor { font-size: 16px; line-height: 23px; color: var(--nogal); }
.tema-balcon.pagina-valorar .fitxa-cat__fila--falta .fitxa-cat__valor { color: var(--oro-tinta); }
.tema-balcon.pagina-valorar .fitxa-cat__nota { font-size: 14px; line-height: 20px; color: var(--nogal-2); }
.tema-balcon.pagina-valorar .bv-mas {
  display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 54px;
  padding: 0 16px; border-top: 1px solid var(--linea); text-align: left;
}
.tema-balcon.pagina-valorar .fitxa-cat .bv-mas { border-radius: 0; }
.tema-balcon.pagina-valorar .fitxa-cat__estalvi { margin: 0; padding: 12px 16px; border-radius: 0; background: var(--oliva-claro); color: var(--oliva-osc); font-size: 16px; line-height: 23px; }
.tema-balcon.pagina-valorar .fitxa-cat__carregant,
.tema-balcon.pagina-valorar [data-ficha-revisando] { margin: 0; padding: 10px 16px 0; }
.tema-balcon.pagina-valorar .fitxa-cat__revisar { margin: 4px 16px 8px; }
.tema-balcon.pagina-valorar .resultat__fitxa { margin-top: 24px; box-shadow: 0 0 0 1px var(--linea); }
.tema-balcon.pagina-valorar .resultat__fitxa .fitxa-cat__dades { padding: 0 16px 8px; }
@media (min-width: 720px) {
  .bv-dato { padding: 18px 20px 20px; }
  .bv-dato__v { font-size: 48px; line-height: 54px; }
}
@media (max-width: 359px) { .bv-dato__v { font-size: 30px; line-height: 36px; } }

/* ---------- Calculando ---------- */
.tema-balcon.pagina-valorar .calculant { padding: 32px 0; }
.tema-balcon.pagina-valorar .calculant__anell { border-color: var(--linea-2); border-top-color: var(--oliva); }
.tema-balcon.pagina-valorar .calculant__estat { font-size: 18px; line-height: 26px; color: var(--nogal); }

/* ---------- Resultado: hoja blanca sobre el balcón ---------- */
form[data-tema="balcon"][data-pas="13"] .valorador__cos {
  z-index: 4; max-width: none; margin-top: -28px; padding: 30px 16px 12px;
  background: var(--lino); border-radius: 24px 24px 0 0; box-shadow: 0 -10px 30px -18px rgba(28,22,18,.5);
}
form[data-tema="balcon"][data-pas="13"] .valorador__cos > .paso { max-width: 640px; margin: 0 auto; }
@media (min-width: 720px) {
  form[data-tema="balcon"][data-pas="13"] .valorador__cos {
    max-width: 760px; margin: -36px auto 0; padding: 40px 60px 20px; border-radius: 24px; box-shadow: var(--sombra);
  }
}
.tema-balcon.pagina-valorar .resultat { text-align: left; }
.tema-balcon.pagina-valorar .resultat > .eyebrow { margin: 0 0 4px; font: 600 15px/20px var(--font-body); color: var(--nogal-2); }
.tema-balcon.pagina-valorar .resultat > .small { margin: 0 0 18px; font: 600 18px/25px var(--font-body); color: var(--nogal); }
/* Tapado: en la página (y aria-hidden), pero no se ve; las cifras ya están sobre la foto */
.tema-balcon.pagina-valorar .preu-tapat:not(.preu-tapat--obert) { display: none; }
.tema-balcon.pagina-valorar .preu-tapat--obert { margin: 0 0 22px; padding: 0 0 20px; border-bottom: 1px solid var(--linea); }
.tema-balcon.pagina-valorar .resultat__xifra {
  justify-content: flex-start; margin: 0 0 8px; gap: .2em;
  font: 500 40px/46px var(--font-title); font-optical-sizing: auto; letter-spacing: -.015em; color: var(--nogal);
  font-variant-numeric: tabular-nums lining-nums;
}
.tema-balcon.pagina-valorar .resultat__guio { color: var(--nogal-3); }
/* Abierto: la horquilla ya está sobre la foto; en la hoja manda el valor estimado (la del muro queda para lectores). */
.tema-balcon.pagina-valorar .preu-tapat--obert .resultat__xifra {
  position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap;
}
.bv-valor { margin: 0 0 12px; }
.bv-valor__l { margin: 0; font: 600 15px/20px var(--font-body); color: var(--nogal-2); }
.bv-valor__n {
  margin: 0; font: 500 40px/46px var(--font-title); font-optical-sizing: auto; letter-spacing: -.015em;
  font-variant-numeric: tabular-nums lining-nums; color: var(--nogal);
}
@media (min-width: 720px) { .bv-valor__n { font-size: 48px; line-height: 54px; } }
.tema-balcon.pagina-valorar .resultat__m2 {
  align-items: flex-start; text-align: left; margin: 0 0 10px; padding: 10px 14px;
  border: 0; border-radius: var(--r-campo); background: var(--arena); color: var(--nogal); font-size: 15px;
}
.tema-balcon.pagina-valorar .resultat__m2 .separador { color: var(--nogal-3); }
@media (min-width: 560px) { .tema-balcon.pagina-valorar .resultat__m2 { justify-content: flex-start; border-radius: var(--r-campo); } }
.tema-balcon.pagina-valorar .resultat__confianza { margin-top: 8px; font: 600 16px/23px var(--font-body); color: var(--oliva-osc); }
.tema-balcon.pagina-valorar .resultat__desglose h3 { margin: 24px 0 10px; font: 500 26px/31px var(--font-title); letter-spacing: -.01em; }
.tema-balcon.pagina-valorar .resultat__desglose ul { gap: 0; }
.tema-balcon.pagina-valorar .resultat__desglose li { padding: 10px 0; border-bottom: 0; border-top: 1px solid var(--linea); font-size: 16px; line-height: 22px; }
.tema-balcon.pagina-valorar .var-sube { color: var(--oliva-osc); }
.tema-balcon.pagina-valorar .var-baja { color: var(--teja); }
.tema-balcon.pagina-valorar .resultat__comparar { margin-top: 16px; padding: 12px 14px; border-radius: var(--r-campo); background: var(--arena-2); color: var(--nogal); font-size: 16px; line-height: 23px; }
.tema-balcon.pagina-valorar .informe { margin-top: 0; padding: 0; border: 0; border-radius: 0; background: transparent; }
.tema-balcon.pagina-valorar .informe__titol { margin: 0 0 8px; font: 500 30px/35px var(--font-title); letter-spacing: -.012em; text-wrap: balance; color: var(--nogal); }
.tema-balcon.pagina-valorar .informe__ajuda { font-size: 17px; line-height: 25px; color: var(--nogal); }
.tema-balcon.pagina-valorar .informe > .small { font-size: 15px; line-height: 22px; margin-bottom: 18px; }
.tema-balcon.pagina-valorar .informe__previa { display: none; }
.tema-balcon.pagina-valorar .informe .btn--gran { min-height: 56px; margin-top: 16px; font-size: 18px; }
.tema-balcon.pagina-valorar .resultat__legal {
  margin-top: 24px; padding: 14px 16px; border-left: 3px solid var(--oro); border-radius: 0 12px 12px 0;
  background: var(--arena); color: var(--nogal-2); font-size: 15px; line-height: 22px;
}
.tema-balcon.pagina-valorar .resultat__legal strong { color: var(--nogal); }
.tema-balcon.pagina-valorar .resultat > .pas__peu { justify-content: flex-start; }
@media (min-width: 720px) {
  .tema-balcon.pagina-valorar .resultat__xifra { font-size: 48px; line-height: 54px; }
  .tema-balcon.pagina-valorar .informe .btn--gran { width: auto; min-width: 320px; }
}

/* Nave o almacén: la valoración se prepara a mano (sin cifras). */
.tema-balcon.pagina-valorar .a-mano {
  margin: 16px 0 0; padding: 18px 18px 16px; border-radius: var(--r-tarjeta); background: var(--lino);
  box-shadow: 0 0 0 1px var(--linea);
}
.tema-balcon.pagina-valorar .a-mano__t { margin: 0 0 8px; font: 500 26px/31px var(--font-title); letter-spacing: -.012em; text-wrap: balance; color: var(--nogal); }
.tema-balcon.pagina-valorar .a-mano__d { margin: 0; font-size: 16px; line-height: 24px; color: var(--nogal-2); }
.tema-balcon.pagina-valorar .a-mano__correo { margin: 12px 0 0; font-size: 16px; line-height: 23px; font-weight: 600; color: var(--oliva-osc); overflow-wrap: anywhere; }
.tema-balcon.pagina-valorar .a-mano__colabora { margin: 10px 0 0; }
/* En los pasos: sin porcentaje ni barra (no hay horquilla que estrechar); queda el botón «Tus respuestas». */
.bv-horquilla--a-mano:not(.bv-horquilla--grande) .bv-horquilla__pct,
.bv-horquilla--a-mano:not(.bv-horquilla--grande) .bv-barra { display: none; }
.bv-horquilla--a-mano:not(.bv-horquilla--grande) .bv-horquilla__mid { position: absolute; top: 36px; right: 16px; margin: 0; }
.bv-horquilla--a-mano:not(.bv-horquilla--grande) .bv-horquilla__msg { min-height: 44px; padding-right: 56px; }
.bv-horquilla--grande.bv-horquilla--a-mano .bv-horquilla__mid { display: none; }
.bv-horquilla--grande.bv-horquilla--a-mano .bv-horquilla__msg {
  display: block; margin: 6px 0 0; font: 500 30px/36px var(--font-title); color: #FFFFFF; text-wrap: balance;
  text-shadow: 0 2px 18px rgba(0,0,0,.3);
}
@media (min-width: 720px) {
  .tema-balcon.pagina-valorar .a-mano { padding: 22px 24px 20px; }
  .tema-balcon.pagina-valorar .a-mano__t { font-size: 30px; line-height: 35px; }
  .bv-horquilla--grande.bv-horquilla--a-mano .bv-horquilla__msg { font-size: 44px; line-height: 50px; }
}

/* La visita gratuita, con la agencia colaboradora */
.bv-visita {
  display: grid; grid-template-columns: 88px 1fr; gap: 4px 16px; align-items: center;
  margin: 24px 0 0; padding: 16px; border-radius: var(--r-tarjeta); background: var(--arena);
}
.bv-visita__foto {
  width: 88px; height: 88px; border-radius: var(--r-campo); object-fit: cover; object-position: 40% 50%;
  outline: 1px solid rgba(0,0,0,.1); outline-offset: -1px; background: var(--arena-2);
}
.bv-visita__t { margin: 0; font: 500 23px/27px var(--font-title); letter-spacing: -.01em; text-wrap: balance; color: var(--nogal); }
.bv-visita__d { margin: 4px 0 0; font-size: 16px; line-height: 23px; color: var(--nogal-2); }
.bv-visita > :not(.bv-visita__foto):not(.bv-visita__texto) { grid-column: 1 / -1; }
.tema-balcon.pagina-valorar .bv-visita .btn { margin-top: 12px; width: 100%; }
.tema-balcon.pagina-valorar .bv-visita .micro-cta { margin: 8px 0 0; text-align: left; }
.bv-visita__colabora { margin: 6px 0 0; }
.bv-visita__pedida { margin: 12px 0 0; }
@media (min-width: 720px) {
  .bv-visita { grid-template-columns: 120px 1fr; padding: 20px; }
  .bv-visita__foto { width: 120px; height: 120px; }
  .bv-visita__t { font-size: 28px; line-height: 32px; }
  .tema-balcon.pagina-valorar .bv-visita .btn { justify-self: start; width: auto; min-width: 320px; }
}

/* ---------- Sin movimiento ---------- */
@media (prefers-reduced-motion: reduce) {
  .bv-foto__img { filter: none; transition: opacity .2s linear; }
  .bv-foto__noche { transition: opacity .2s linear; }
  .bv-barra__relleno, .bv-barra__mordaza, .bv-horquilla__resp svg { transition: none; }
  .bv-ext { transition: opacity .2s linear; }
  .bv-ext--velo { filter: none; }
  .tema-balcon.pagina-valorar .btn:active,
  .tema-balcon.pagina-valorar .stepper__btn:active,
  .tema-balcon.pagina-valorar .opcio input:active + .opcio__cara,
  .tema-balcon.pagina-valorar .xip input:active + .xip__cara { transform: none; }
}
