/* Scope estricto: no altera los encabezados, menús ni el resto del tema ALICASA. */
.alv, .alv *{box-sizing:border-box}
.alv{
  --alv-primary:#dc496e;--alv-hover:#b93658;--alv-text:#262733;
  --alv-secondary:#69717d;--alv-border:#ebe4e8;--alv-pale:#fff6f8;
  font-family:inherit!important;font-weight:400;color:var(--alv-text);
  max-width:980px;width:100%;margin:25px auto 38px;padding:clamp(19px,4.8vw,43px);
  background:#fff;border:1px solid var(--alv-border);border-radius:14px;
  box-shadow:0 9px 34px rgba(27,20,32,.045);
}
.alv h2,.alv h3,.alv p{font-family:inherit;text-transform:none;letter-spacing:normal}
.alv .alv-eyebrow{display:flex;gap:9px;align-items:center;font-size:11px;letter-spacing:.11em;font-weight:800;color:var(--alv-primary);margin-bottom:13px}
.alv .alv-dot{width:8px;height:8px;border-radius:50%;background:var(--alv-primary);display:inline-block}
.alv .alv-heading-row{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:29px}
.alv .alv-heading-row h2{font-size:clamp(28px,4vw,38px);line-height:1.13;color:var(--alv-text);font-weight:750;margin:0 0 12px;padding:0}
.alv .alv-heading-row p{font-size:15px;line-height:1.6;color:var(--alv-secondary);margin:0;max-width:650px}
.alv .alv-house-symbol{display:flex;align-items:center;justify-content:center;color:var(--alv-primary);background:var(--alv-pale);border-radius:14px;min-width:62px;height:62px;font:normal 54px/1 sans-serif}
.alv .alv-grid{display:grid;gap:18px;margin:0 0 20px;max-width:none}
.alv .alv-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.alv .alv-field{display:flex;flex-direction:column;gap:8px;min-width:0;font-size:13px;font-weight:650;color:var(--alv-text);margin:0}
.alv .alv-field i{font-style:normal;color:var(--alv-primary)}
.alv .alv-field small,.alv .alv-extras small{color:var(--alv-secondary);font-size:12px;font-weight:400}
.alv .alv-field input,.alv .alv-field select{
  appearance:auto!important;background:#fff!important;display:block!important;
  width:100%!important;min-width:0!important;max-width:100%!important;
  height:51px!important;min-height:51px!important;border-radius:7px!important;
  padding:9px 13px!important;border:1px solid #dcdce1!important;
  font-family:inherit!important;font-weight:400!important;font-size:15px!important;line-height:1.4!important;color:var(--alv-text)!important;
  box-shadow:none!important;text-transform:none!important;letter-spacing:normal!important;
}
.alv .alv-field input::placeholder{color:#9799a3}
.alv .alv-field input:focus,.alv .alv-field select:focus{border-color:var(--alv-primary)!important;outline:3px solid rgba(220,73,110,.13)!important;outline-offset:0}
.alv .alv-extras{border:0!important;min-width:0!important;padding:0!important;margin:9px 0 23px!important;display:flex;flex-wrap:wrap;gap:10px}
.alv .alv-extras legend{font-size:13px;font-weight:700;color:var(--alv-text);margin:0 0 12px;width:100%;padding:0;line-height:1.5}
.alv .alv-extras label{display:inline-flex;align-items:center;gap:8px;min-height:35px;padding:7px 12px;border:1px solid var(--alv-border);border-radius:100px;font-family:inherit;font-weight:500;font-size:13px;line-height:1.45;color:var(--alv-text);cursor:pointer;margin:0;float:none;background:#fff}
.alv .alv-extras label:has(input:checked){background:var(--alv-pale);border-color:#eeb7c5}
.alv .alv-extras input{appearance:auto;width:15px;height:15px;min-height:0;min-width:0;accent-color:var(--alv-primary);margin:0;vertical-align:middle}
.alv .alv-submit,.alv .alv-contact{display:flex!important;justify-content:center;align-items:center;gap:9px;background:var(--alv-primary)!important;color:#fff!important;border:1px solid transparent!important;text-decoration:none!important;font-family:inherit!important;font-weight:700!important;font-size:15px!important;line-height:1.3!important;min-height:53px;padding:15px 19px;border-radius:8px;box-shadow:none;cursor:pointer;text-transform:none!important}
.alv .alv-submit{width:100%}
.alv .alv-submit:hover,.alv .alv-contact:hover{background:var(--alv-hover)!important;color:#fff!important}
.alv .alv-submit:focus-visible,.alv .alv-contact:focus-visible,.alv .alv-print:focus-visible{outline:3px solid #f7b6c5;outline-offset:2px}
.alv .alv-privacy-note{font-size:12px;color:var(--alv-secondary);text-align:center;margin:13px 0 0;line-height:1.45}
.alv .alv-status{color:#a52e48;font-size:13px;margin:7px 0;line-height:1.4}
.alv .alv-status:empty{display:none}
.alv .alv-result{background:linear-gradient(160deg,#fff7f9,#fff);border:1px solid #f0d9e0;border-radius:12px;padding:clamp(18px,4vw,29px);margin:25px 0 0;color:var(--alv-text)}
.alv .alv-result[hidden]{display:none!important}
.alv .alv-result-caption{font-size:10px;font-weight:800;letter-spacing:.12em;color:var(--alv-primary);margin:0 0 8px}
.alv .alv-result h3{font-size:clamp(32px,6vw,46px);font-weight:800;line-height:1.15;color:var(--alv-text);margin:8px 0 8px;padding:0}
.alv .alv-result h3.alv-no-price{font-size:clamp(23px,4vw,30px)}
.alv .alv-result p{font-size:13px;line-height:1.6}
.alv .alv-range-title{margin:4px 0 20px;color:#626875}
.alv .alv-rangebar{height:11px;background:#f2c9d4;border-radius:100px;position:relative;overflow:visible}
.alv .alv-rangebar>span{height:18px;width:4px;background:#a52546;position:absolute;left:50%;top:-4px;border-radius:2px}
.alv .alv-rangeticks{display:flex;justify-content:space-between;color:#6b6a75;font-size:12px;margin:8px 0 20px}
.alv .alv-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.alv .alv-stats>div{padding:13px;background:#fff;border:1px solid #f0e2e6;border-radius:8px;display:flex;flex-direction:column;gap:4px}
.alv .alv-stats small{font-size:12px;color:var(--alv-secondary)}
.alv .alv-stats b{font-size:clamp(15px,2vw,20px);color:var(--alv-text)}
.alv .alv-method{margin:18px 0 8px}
.alv .alv-method b{font-size:13px}
.alv .alv-method p,.alv .alv-small{font-size:12px;line-height:1.6;color:#616872;margin:8px 0}
.alv .alv-method a{color:var(--alv-primary);text-decoration:underline;font-weight:600}
.alv .alv-warning{color:#a52e48;font-size:12px;font-weight:700}
.alv .alv-result-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px;align-items:stretch}
.alv .alv-result-actions .alv-contact{flex:2 1 280px}
.alv .alv-print{flex:1 1 190px;background:#fff;color:#a53251;border:1px solid #eabfcb;border-radius:8px;cursor:pointer;padding:10px 16px;font-family:inherit;font-weight:650;font-size:13px;line-height:1.4;text-transform:none}
.alv .alv-print:hover{background:#fff1f5}
.alv .alv-disclaimer{color:#89828b;font-size:11px;line-height:1.7;margin:19px 0 0}
@media(max-width:670px){.alv{border-radius:10px;padding:21px 16px}.alv .alv-two{grid-template-columns:1fr}.alv .alv-heading-row p{font-size:14px}.alv .alv-house-symbol{min-width:45px;height:45px;font-size:39px}.alv .alv-stats{grid-template-columns:1fr}.alv .alv-heading-row{align-items:flex-start}}
@media print{body *{visibility:hidden!important}.alv,.alv .alv-result,.alv .alv-result *{visibility:visible!important}.alv{position:absolute;top:0;left:0;width:100%;border:0;box-shadow:none;margin:0;max-width:none}.alv .alv-form,.alv .alv-disclaimer,.alv .alv-result-actions{display:none!important}.alv .alv-result{display:block!important;break-inside:avoid}}
@media(prefers-reduced-motion:reduce){.alv *{scroll-behavior:auto!important;transition:none!important}}

/* 2.1: dirección completa sin alterar el resto de WordPress */
.alv .alv-address-row{grid-template-columns:minmax(0,2.3fr) minmax(90px,.65fr) minmax(85px,.6fr) minmax(85px,.6fr);gap:13px;margin-top:3px;margin-bottom:9px}
.alv .alv-one{grid-template-columns:minmax(0,1fr)}
.alv .alv-address-note{font-size:12px;line-height:1.55;margin:0 0 19px;color:var(--alv-secondary)}
.alv .alv-address-display{margin:10px 0 15px;padding:10px 13px;border:1px solid var(--alv-border);background:#fff;border-radius:7px;color:#565b68;font-size:13px;line-height:1.55}
.alv .alv-address-display b{color:var(--alv-text)}
@media(max-width:670px){.alv .alv-address-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.alv .alv-address-row .alv-field:first-child{grid-column:1/-1}}
@media(max-width:340px){.alv .alv-address-row{grid-template-columns:1fr}.alv .alv-address-row .alv-field:first-child{grid-column:auto}}

/* 2.2: desplegable buscable controlado por el plugin, sin dependencia de datalist. */
.alv .alv-city-combobox{position:relative;width:100%;min-width:0}
.alv .alv-city-combobox input{width:100%}
.alv .alv-city-list{position:absolute;top:calc(100% + 5px);left:0;right:0;z-index:9999;max-height:260px;overflow-y:auto;overscroll-behavior:contain;box-shadow:0 15px 35px rgba(29,20,36,.16);background:#fff;border:1px solid #e8d7df;border-radius:9px;padding:5px}
.alv .alv-city-list[hidden]{display:none!important}
.alv .alv-city-option{appearance:none!important;display:block!important;width:100%;min-height:37px;text-align:left!important;float:none!important;border:0!important;background:transparent!important;box-shadow:none!important;text-transform:none!important;letter-spacing:normal!important;font-family:inherit!important;font-size:14px!important;font-weight:500!important;line-height:1.35!important;padding:10px 11px!important;margin:0!important;border-radius:6px!important;cursor:pointer;color:var(--alv-text)!important}
.alv .alv-city-option:hover,.alv .alv-city-option.alv-option-active,.alv .alv-city-option:focus-visible{background:var(--alv-pale)!important;color:#a42e4c!important}
.alv .alv-city-no-results{color:var(--alv-secondary);padding:13px;font-size:13px;font-weight:400;line-height:1.5}
.alv .alv-field input[aria-invalid="true"]{border-color:#bb3150!important}
