/* ============================================================
   AAMA REAL ESTATE - sistema de diseño
   Tema hijo de Blocksy.
   - Lo que cuelga de .aama es exclusivo de la plantilla "AAMA - Portada".
   - Lo que cuelga de .hp- viste las tarjetas de HivePress en TODO el sitio
     (portada, archivo de propiedades y relacionadas), para que el listado
     no se vea distinto de la portada.
   - Los colores, tipografias y botones globales vienen de la paleta de
     Blocksy (Apariencia > Personalizar), no de aqui.
   ============================================================ */

:root{
  --sombra:#0F0E0C;
  --piedra:#1A1815;
  --cal:#F2EDE3;
  --cal-2:#E9E3D6;
  --oro:#C9A227;
  --oro-luz:#E8CE84;
  --oro-oscuro:#8A7318;
  --selva:#3F5D53;
  --tinta:#EDE7DA;
  --tinta-baja:#9A9287;

  --img-logo:url(https://aamarealestate.com/wp-content/uploads/2026/09/aama-logo.webp);
  --img-hero:url(https://aamarealestate.com/wp-content/uploads/2026/09/hero.webp);

  --display:'Bodoni Moda',Georgia,serif;
  --body:'Karla',system-ui,sans-serif;
  --mono:'IBM Plex Mono',monospace;
}

/* ---- base (solo en la portada AAMA) ---- */
body.aama{background:var(--sombra);color:var(--tinta);font-family:var(--body);font-weight:300;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden;margin:0}
body.aama *{box-sizing:border-box}
body.aama a{color:inherit;text-decoration:none}
body.aama img{max-width:100%;height:auto;display:block}
body.aama :focus-visible{outline:2px solid var(--oro);outline-offset:3px}
html:has(body.aama){scroll-behavior:smooth}

.aama .wrap{width:min(94vw,1720px);margin-inline:auto}
.aama-main{display:block}

/* Gutenberg: los bloques de sección no deben añadir ancho ni margen propios.
   Las secciones que mezclan HTML con bloques dinámicos de HivePress y WPForms
   (Propiedades y Contacto) son core/group con la clase de la sección. */
.aama-main>*{margin-block:0}
.aama-main>.wp-block-group{margin-block:0;padding-inline:0}
.aama .wp-block-group__inner-container{max-width:none}
.aama .props.wp-block-group,
.aama .contacto.wp-block-group{margin:0}
.aama .props>.wrap,
.aama .contacto>.wrap{margin-inline:auto}
.aama .contacto-form{min-width:0}
.aama .contacto .wrap>*{margin-block:0}

.aama .eyebrow{font-family:var(--mono);font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;color:var(--oro);display:block}
/* El color va explicito: al fijar la paleta global de Blocksy, su regla
   h2{color:var(--theme-heading-color)} pintaba de #151310 tambien los
   titulos de las secciones oscuras (Zonas y Contacto). Las secciones claras
   lo vuelven a oscurecer mas abajo con .aama .cats h2 y compania. */
.aama h1,.aama h2,.aama h3{font-family:var(--display);font-weight:400;line-height:1.06;letter-spacing:-.01em;margin:0;color:var(--tinta)}
.aama h2{font-size:clamp(2rem,4.4vw,3.4rem)}
.aama h3{font-size:clamp(1.15rem,1.8vw,1.45rem)}
.aama p{margin:0}
.aama .lead{font-size:clamp(1rem,1.35vw,1.15rem);color:var(--tinta-baja);max-width:54ch}

/* ---- botones ---- */
.aama .btn{display:inline-flex;align-items:center;gap:.7em;font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;padding:1.05em 1.9em;border:1px solid var(--oro);color:var(--oro);background:transparent;cursor:pointer;position:relative;overflow:hidden;transition:color .45s ease}
.aama .btn::after{content:'';position:absolute;inset:0;background:var(--oro);transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.7,0,.2,1);z-index:0}
.aama .btn>span{position:relative;z-index:1}
.aama .btn:hover{color:var(--sombra)}
.aama .btn:hover::after{transform:scaleX(1)}
.aama .btn--solido{background:var(--oro);color:var(--sombra)}
.aama .btn--solido::after{background:var(--sombra)}
.aama .btn--solido:hover{color:var(--oro)}

/* ---- nav ---- */
.aama-nav{position:fixed;top:0;left:0;right:0;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.2rem clamp(1rem,4vw,3rem);transition:background .5s ease,border-color .5s ease;border-bottom:1px solid transparent}
.aama-nav.pegado{background:rgba(15,14,12,.94);backdrop-filter:blur(14px);border-color:rgba(201,162,39,.22)}
.aama-nav .nav-logo{width:88px;aspect-ratio:1400/1234;background-image:var(--img-logo);background-size:contain;background-repeat:no-repeat;background-position:center;opacity:0;transform:translateY(-6px);transition:opacity .5s ease,transform .5s ease;pointer-events:none}
.aama-nav.pegado .nav-logo{opacity:1;transform:none;pointer-events:auto}
.aama-nav .menu{display:flex;gap:2.1rem;font-size:.85rem;letter-spacing:.04em;margin-left:auto;list-style:none;padding:0}
.aama-nav .menu li{list-style:none;margin:0}
.aama-nav .menu a{position:relative;padding-block:.3rem;display:inline-block}
.aama-nav .menu a::after{content:'';position:absolute;left:0;bottom:0;height:1px;width:0;background:var(--oro);transition:width .35s ease}
.aama-nav .menu a:hover::after{width:100%}
.aama-nav .menu-btn{display:none;background:none;border:0;color:var(--oro);font-family:var(--mono);font-size:.7rem;letter-spacing:.15em;cursor:pointer;margin-left:auto}

/* ---- hero ---- */
.aama .hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:6rem 0 4rem;overflow:hidden}
.aama .hero-fondo{position:absolute;inset:0;z-index:0}
.aama .hero-fondo::before{content:'';position:absolute;inset:0;background-image:var(--img-hero);background-size:cover;background-position:center 58%;background-color:#0E1614}
.aama .hero-fondo::after{content:'';position:absolute;inset:0;
  background:
    radial-gradient(120% 90% at 50% 38%, rgba(8,9,7,.86) 0%, rgba(8,9,7,.6) 42%, rgba(10,14,13,.42) 70%, rgba(16,26,24,.36) 100%),
    linear-gradient(180deg, rgba(10,9,7,.78) 0%, rgba(10,9,7,.2) 24%, rgba(10,9,7,.3) 62%, rgba(10,9,7,.92) 100%);
}
.aama .relieve{position:absolute;inset:0;z-index:1;opacity:.24;mix-blend-mode:screen;width:100%;height:100%}
.aama .hero .wrap{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;text-align:center}
.aama .logo-hero{width:min(60%,660px);aspect-ratio:1400/1234;background-image:var(--img-logo);background-size:contain;background-repeat:no-repeat;background-position:center;filter:drop-shadow(0 10px 50px rgba(6,8,6,.9));margin:0}
.aama .hero-txt{width:100%;text-align:left;margin-top:2.6rem}
.aama .hero-txt h2{font-size:clamp(2.4rem,5.6vw,4.4rem);line-height:1.04;max-width:16ch;color:var(--tinta);text-shadow:0 2px 34px rgba(8,10,8,.9),0 1px 4px rgba(8,10,8,.6)}
.aama .hero-txt h2 em{font-style:italic;color:var(--oro-luz)}
.aama .hero .buscador{width:100%;text-align:left}

/* ---- reveal ---- */
.aama .sube{opacity:0;transform:translateY(26px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}
.aama .sube.visible{opacity:1;transform:none}

/* ---- buscador (formulario real hacia HivePress) ---- */
.aama .buscador{margin-top:2.4rem;background:rgba(16,15,12,.66);backdrop-filter:blur(18px);border:1px solid rgba(201,162,39,.3);max-width:1000px}
.aama .modos{display:flex;flex-wrap:wrap;border-bottom:1px solid rgba(201,162,39,.2)}
.aama .modo{padding:.95rem 1.7rem;background:none;border:0;border-right:1px solid rgba(201,162,39,.16);font-family:var(--mono);font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;color:var(--tinta-baja);cursor:pointer;transition:color .35s ease,background .35s ease}
.aama .modo:hover{color:var(--oro)}
.aama .modo.activo{background:var(--oro);color:var(--sombra)}
.aama .tipos{display:flex;flex-wrap:wrap;gap:8px;padding:1.1rem 1.4rem;border-bottom:1px solid rgba(201,162,39,.16)}
.aama .tipo{display:inline-flex;align-items:center;gap:.5em;padding:.55em 1em;background:none;cursor:pointer;border:1px solid rgba(201,162,39,.28);color:var(--tinta-baja);font-family:var(--mono);font-size:.62rem;letter-spacing:.13em;text-transform:uppercase;transition:color .3s ease,border-color .3s ease,background .3s ease}
.aama .tipo svg{width:15px;height:15px;flex:none}
.aama .tipo:hover{color:var(--oro);border-color:var(--oro)}
.aama .tipo.activo{background:var(--oro);border-color:var(--oro);color:var(--sombra)}
.aama .campos{display:grid;grid-template-columns:1fr 1fr auto}
.aama .campo-b{padding:1.05rem 1.4rem;border-right:1px solid rgba(201,162,39,.16);display:flex;flex-direction:column;gap:.45rem;position:relative}
.aama .campo-b>span{font-family:var(--mono);font-size:.56rem;letter-spacing:.2em;text-transform:uppercase;color:var(--oro)}
.aama .campo-b select{background:transparent;border:0;color:var(--tinta);font-family:var(--body);font-size:.95rem;font-weight:300;cursor:pointer;appearance:none;padding-right:1.2rem;width:100%}
.aama .campo-b select:focus{outline:none}
.aama .campo-b option{background:#1A1815;color:#EDE7DA}
.aama .campo-b::after{content:'';position:absolute;right:1.4rem;bottom:1.45rem;width:6px;height:6px;border-right:1px solid var(--oro);border-bottom:1px solid var(--oro);transform:rotate(45deg);pointer-events:none}
.aama .buscar{display:inline-flex;align-items:center;justify-content:center;gap:.6em;background:var(--oro);border:0;color:var(--sombra);cursor:pointer;font-family:var(--mono);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;padding:0 2.4rem;transition:background .35s ease}
.aama .buscar svg{width:15px;height:15px}
.aama .buscar:hover{background:var(--oro-luz)}
.aama .mas{width:100%;background:none;border:0;border-top:1px solid rgba(201,162,39,.16);padding:.85rem 1.4rem;text-align:left;cursor:pointer;font-family:var(--mono);font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--tinta-baja);transition:color .35s ease}
.aama .mas:hover{color:var(--oro)}
.aama .extras{display:none;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(201,162,39,.16)}
.aama .extras.abierto{display:grid}
.aama .extras .campo-b{border-right:1px solid rgba(201,162,39,.16)}
.aama .extras .campo-b:last-child{border-right:0}

/* ---- franja ---- */
.aama .franja{background:var(--selva);color:var(--cal)}
.aama .franja .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(242,237,227,.18)}
.aama .dato{background:var(--selva);padding:2.1rem 1.5rem}
.aama .dato .dato__titulo{display:block;font-family:var(--display);font-size:clamp(1.15rem,1.9vw,1.6rem);font-weight:400;line-height:1.2}
.aama .dato .dato__pie{font-family:var(--mono);font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;opacity:.72;display:block;margin-top:.6rem}

/* ---- tipos de propiedad ---- */
.aama .cats{background:var(--cal);color:#221F1A;padding:clamp(4rem,9vw,7rem) 0}
.aama .cats .eyebrow{color:var(--oro-oscuro)}
.aama .cats h2{color:#151310}
.aama .cab{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;flex-wrap:wrap;margin-bottom:2.6rem}
.aama .cab h2{margin-top:.9rem;max-width:16ch}
.aama .rejilla-cats{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:rgba(34,31,26,.14);border:1px solid rgba(34,31,26,.14)}
.aama .cat{background:var(--cal);padding:2rem 1.4rem;display:flex;flex-direction:column;gap:.9rem;transition:background .4s ease}
.aama .cat:hover{background:var(--cal-2)}
.aama .cat svg{width:28px;height:28px;color:var(--oro-oscuro);flex:none}
.aama .cat b{font-family:var(--mono);font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:#151310;font-weight:500}
.aama .cat span{font-family:var(--mono);font-size:.58rem;letter-spacing:.12em;color:#6B6155}

/* ---- propiedades: HivePress con la piel de AAMA ---- */
.aama .props{background:var(--cal-2);color:#221F1A;padding:clamp(4rem,9vw,7rem) 0}
.aama .props .eyebrow{color:var(--oro-oscuro)}
.aama .props h2{color:#151310}
.aama .props .btn{border-color:var(--oro-oscuro);color:var(--oro-oscuro)}
.aama .props .btn::after{background:#151310}
.aama .props .btn:hover{color:var(--cal)}
.aama .props-pie{display:flex;justify-content:center;margin-top:3rem}

/* Rejilla de tarjetas. Ojo: HivePress usa .hp-row en dos niveles distintos
   (la rejilla de tarjetas y la sub-rejilla de los specs), asi que hay que
   apuntar solo al hijo directo de .hp-listings. */
.hp-listings>.hp-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.6rem;margin:0;padding:0;list-style:none}
.hp-listings>.hp-row>.hp-grid__item,
.hp-listings>.hp-row>[class*='hp-col']{width:auto;max-width:none;flex:none;padding:0;margin:0}

/* tarjeta: rejilla de 2 filas. El pie de HivePress se coloca en la MISMA
   celda que la imagen y se alinea abajo a la derecha, asi el precio queda
   sobre la foto sin mover nada en PHP ni depender del alto de la imagen. */
.hp-listing--view-block{position:relative;background:var(--cal);border:1px solid rgba(34,31,26,.13);display:grid;grid-template-columns:100%;grid-template-rows:auto 1fr;height:100%;overflow:hidden;transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s ease}
.hp-listing--view-block:hover{transform:translateY(-6px);box-shadow:0 22px 50px -28px rgba(21,19,16,.5)}

/* imagen + degradado */
.hp-listing--view-block .hp-listing__header{grid-area:1/1;position:relative;margin:0;padding:0;min-width:0}
/* HivePress separa las partes de la tarjeta con
   .hp-listing__X:not(:last-child){margin-bottom:1rem}. Esa pseudoclase le da
   una clase mas de especificidad, asi que hay que igualar el patron o el
   precio queda 16px por debajo del borde de la foto. */
.hp-listing--view-block .hp-listing__header:not(:last-child),
.hp-listing--view-block .hp-listing__content:not(:last-child),
.hp-listing--view-block .hp-listing__footer:not(:last-child){margin-bottom:0}
/* HivePress fija aspect-ratio 4:3 con estilo inline desde su JS de carrusel;
   el diseno pide 16/10, de ahi el !important. */
.hp-listing--view-block .hp-listing__image{display:block;margin:0;aspect-ratio:16/10!important;overflow:hidden;background:#151310}
.hp-listing--view-block .hp-listing__image>a{display:block;width:100%;height:100%}
.hp-listing--view-block .hp-listing__image img{width:100%;height:100%;object-fit:cover}
.hp-listing--view-block .hp-listing__header::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,14,12,.42) 0%,transparent 40%,rgba(15,14,12,.6) 100%);pointer-events:none;z-index:1}

/* etiqueta de categoria sobre la imagen */
.hp-listing--view-block .hp-listing__details--primary{position:absolute;top:.9rem;left:.9rem;z-index:3;margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:.4rem}
.hp-listing--view-block .hp-listing__details--primary>*{margin:0;padding:.42em .95em;background:rgba(11,10,8,.84);border:1px solid rgba(232,206,132,.4);color:var(--oro-luz);font-family:var(--mono);font-size:.54rem;letter-spacing:.16em;text-transform:uppercase;line-height:1.3;list-style:none}
.hp-listing--view-block .hp-listing__details--primary>*::after,
.hp-listing--view-block .hp-listing__details--primary>*::before{content:none}
.hp-listing--view-block .hp-listing__details--primary a{color:inherit}

/* pie = precio, sobre la esquina inferior derecha de la imagen */
.hp-listing--view-block .hp-listing__footer{grid-area:1/1;align-self:end;justify-self:end;z-index:3;display:flex;align-items:flex-end;margin:0;padding:0 1rem .7rem 0;border:0;background:none}
.hp-listing--view-block .hp-listing__footer .hp-listing--view-block .hp-listing__attributes--primary{margin:0;padding:0;list-style:none;display:flex;gap:.6rem;align-items:baseline}
.hp-listing--view-block .hp-listing__footer .hp-listing--view-block .hp-listing__attributes--primary>*{margin:0;padding:0;list-style:none}
.aama-precio{font-family:var(--display);font-size:1.45rem;line-height:1.1;color:#151310;white-space:nowrap;display:inline-block}
.hp-listing--view-block .hp-listing__footer .aama-precio{color:#F2EDE3;text-shadow:0 2px 18px rgba(8,10,8,.9)}
.aama-precio small{font-family:var(--mono);font-size:.42em;letter-spacing:.12em}

/* cuerpo */
.hp-listing--view-block .hp-listing__content{grid-area:2/1;padding:1.5rem;display:flex;flex-direction:column;min-width:0}

/* El area ternaria lleva Ubicacion y Resumen. display:contents la disuelve
   para poder intercalar el titulo entre las dos. */
.hp-listing--view-block .hp-listing__attributes--ternary{display:contents}
.hp-listing--view-block .hp-listing__attributes--ternary>*{margin:0;padding:0;list-style:none}
.hp-listing--view-block .hp-listing__attributes--ternary>*:has(.aama-ubi){order:1;margin-bottom:.6rem}
.hp-listing--view-block .hp-listing__attributes--ternary>*:has(.aama-desc){order:3;flex:1}
.aama-ubi{display:block;font-family:var(--mono);font-size:.58rem;letter-spacing:.15em;text-transform:uppercase;color:var(--oro-oscuro)}
.aama-desc{display:block;font-family:var(--body);font-weight:300;font-size:.94rem;line-height:1.55;letter-spacing:0;text-transform:none;color:#5B5348}
.aama-desc p{margin:0}
.aama-desc p+p{margin-top:.5em}

.hp-listing--view-block .hp-listing__title{order:2;font-family:var(--display);font-weight:400;font-size:clamp(1.15rem,1.8vw,1.45rem);line-height:1.06;color:#151310;margin:0 0 .6rem}
.hp-listing--view-block .hp-listing__title a{color:inherit}

/* ficha tecnica: area secundaria. HivePress la sirve como sub-rejilla de
   2 columnas; se aplana a una sola fila como en el diseno. */
.hp-listing--view-block .hp-listing__attributes--secondary{order:4;margin:1.2rem 0 0;padding-top:1.1rem;border-top:1px solid rgba(34,31,26,.13);font-family:var(--mono);font-size:.6rem;letter-spacing:.1em;color:#6B6155}
.hp-listing--view-block .hp-listing__attributes--secondary>.hp-row{display:flex;gap:1.4rem;flex-wrap:wrap;margin:0;padding:0;list-style:none}
.hp-listing--view-block .hp-listing__attributes--secondary>.hp-row>[class*='hp-col']{width:auto;max-width:none;flex:none;padding:0;margin:0;list-style:none}
.hp-listing--view-block .hp-listing__attributes--secondary .hp-listing--view-block .hp-listing__attribute{margin:0;padding:0;display:flex;align-items:center;gap:.4em;white-space:nowrap}
.hp-listing--view-block .hp-listing__attributes--secondary i{font-style:normal;opacity:.75}

/* piezas de HivePress que el diseno no contempla */
.hp-listing--view-block .hp-listing__actions--primary{display:none}
.hp-listing--view-block .hp-listing__created-date,
.hp-listing--view-block .hp-listing__favorite-toggle,
.aama .hp-listings__count,
.hp-listing--view-block .hp-listing__featured-badge,
.hp-listing--view-block .hp-listing__verified-badge{display:none}

/* ---- zonas ---- */
.aama .zonas{padding:clamp(4rem,9vw,7rem) 0;position:relative;overflow:hidden}
.aama .zonas::before{content:'';position:absolute;inset:0;background:radial-gradient(70% 90% at 92% 40%,rgba(63,93,83,.42) 0%,transparent 62%)}
.aama .zonas .wrap{position:relative;z-index:2}
.aama .mosaico{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:190px;gap:14px;margin-top:2.6rem}
.aama .zona{position:relative;overflow:hidden;background:var(--piedra);display:flex;align-items:flex-end;padding:1.4rem;border:1px solid rgba(201,162,39,.16);transition:border-color .5s ease}
.aama .zona:hover{border-color:rgba(201,162,39,.5)}
.aama .zona::before{content:'';position:absolute;inset:0;background-image:var(--img);background-size:cover;background-position:center bottom;background-repeat:no-repeat;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.aama .zona:hover::before{transform:scale(1.08)}
.aama .zona::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,14,12,.9) 0%,transparent 72%)}
.aama .zona-txt{position:relative;z-index:2}
.aama .zona-txt b{display:block;font-family:var(--display);font-size:1.4rem;font-weight:400}
.aama .zona-txt span{font-family:var(--mono);font-size:.58rem;letter-spacing:.15em;color:var(--oro);text-transform:uppercase}
.aama .z-playa{--img:url(zonas/playa-del-carmen.svg);background-color:#1B4A52}
.aama .z-tulum{grid-column:span 2;--img:url(zonas/tulum.svg);background-color:#27503F}
.aama .z-bacalar{grid-column:span 2;grid-row:span 2;--img:url(zonas/bacalar.svg);background-color:#17505F}
.aama .z-mahahual{--img:url(zonas/mahahual.svg);background-color:#33492F}

/* ---- nosotros ---- */
.aama .nosotros{background:var(--cal);color:#221F1A;padding:clamp(4.5rem,10vw,8rem) 0}
.aama .nosotros .eyebrow{color:var(--oro-oscuro)}
.aama .nosotros h2{color:#151310}
.aama .nosotros h2 em{font-style:italic;color:var(--oro-oscuro)}
.aama .nosotros .lead{color:#4A443B}
.aama .nosotros .wrap{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.5rem,6vw,5rem);align-items:center}
.aama .pilares{display:grid;gap:0}
.aama .pilar{padding:1.5rem 0;border-top:1px solid rgba(34,31,26,.16)}
.aama .pilar .pilar__num{font-family:var(--mono);font-size:.62rem;letter-spacing:.18em;color:var(--oro-oscuro);text-transform:uppercase;display:block;margin-bottom:.5rem}
.aama .pilar p{color:#5B5348;font-size:.96rem}

/* ---- contacto ---- */
.aama .contacto{background:var(--piedra);padding:clamp(4.5rem,10vw,8rem) 0;border-top:1px solid rgba(201,162,39,.18)}
.aama .contacto .wrap{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.5rem,6vw,5rem)}
.aama .datos-contacto{display:grid;gap:1.5rem;align-content:center}
.aama .dc .dc__titulo{font-family:var(--mono);font-size:.62rem;letter-spacing:.18em;color:var(--oro);text-transform:uppercase;display:block;margin-bottom:.35rem}
.aama .dc .dc__valor{font-family:var(--display);font-size:1.25rem}

/* WPForms con la piel de AAMA.
   Sus reglas propias usan selectores como
   div.wpforms-container-full button[type=submit]:not(:hover):not(:active),
   que suman mas especificidad que una cadena de clases normal. En lugar de
   pelear con !important se sobrescriben sus variables CSS, que es la via que
   el propio plugin expone, y se iguala el patron :not() donde hace falta. */
.aama .contacto .wpforms-container{
  margin:0;max-width:none;
  --wpforms-container-padding:0px;
  --wpforms-label-color:#9A9287;
  --wpforms-label-sublabel-color:#9A9287;
  --wpforms-field-text-color:#EDE7DA;
  --wpforms-field-background-color:transparent;
  --wpforms-field-border-color:rgba(237,231,218,.24);
  --wpforms-field-border-color-spare:rgba(237,231,218,.24);
  --wpforms-field-border-radius:0px;
  --wpforms-button-background-color:#C9A227;
  --wpforms-button-border-color:#C9A227;
  --wpforms-button-text-color:#0F0E0C;
  --wpforms-button-border-radius:0px;
  --wpforms-button-size-font-size:12px;
  --wpforms-button-size-height:52px;
  --wpforms-button-size-padding-h:32px;
  --wpforms-button-size-margin-top:24px;
}
.aama .contacto .wpforms-form .wpforms-field{padding:0 0 1.4rem}
.aama .contacto .wpforms-form .wpforms-field-label{font-family:var(--mono);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--tinta-baja);font-weight:400;margin-bottom:.55rem;display:block}
.aama .contacto .wpforms-form input[type=text],
.aama .contacto .wpforms-form input[type=email],
.aama .contacto .wpforms-form input[type=tel],
.aama .contacto .wpforms-form textarea{width:100%;max-width:none;background:transparent;border:0;border-bottom:1px solid rgba(237,231,218,.24);border-radius:0;color:var(--tinta);font-family:var(--body);font-size:1rem;padding:.7rem 0;box-shadow:none;transition:border-color .35s ease}
.aama .contacto .wpforms-form input:focus,
.aama .contacto .wpforms-form textarea:focus{outline:none;border-color:var(--oro);box-shadow:none}
.aama .contacto .wpforms-form textarea{resize:vertical;min-height:80px}
.aama .contacto .wpforms-form button[type=submit],
.aama .contacto .wpforms-form button[type=submit]:not(:hover):not(:active){font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;border:1px solid var(--oro);border-radius:0;cursor:pointer;transition:background-color .35s ease,color .35s ease}
.aama .contacto .wpforms-form button[type=submit]:hover,
.aama .contacto .wpforms-form button[type=submit]:active{background-color:transparent;color:var(--oro);border-color:var(--oro)}
.aama .contacto .wpforms-field-description{color:var(--tinta-baja);font-size:.8rem}

/* ---- footer ---- */
.aama-footer{padding:3rem 0 2.5rem;border-top:1px solid rgba(201,162,39,.14)}
.aama-footer .footer-logo{width:120px;aspect-ratio:1400/1234;background-image:var(--img-logo);background-size:contain;background-repeat:no-repeat;background-position:left center;margin-bottom:1.6rem;opacity:.85}
.aama-footer .fila{display:flex;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;color:var(--tinta-baja);text-transform:uppercase}

/* ---- WhatsApp ---- */
.aama .wa{position:fixed;right:1.5rem;bottom:1.5rem;z-index:70;width:56px;height:56px;border-radius:50%;background:var(--oro);color:var(--sombra);display:grid;place-items:center;box-shadow:0 10px 30px -8px rgba(201,162,39,.6);transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.aama .wa:hover{transform:scale(1.09)}

/* ---- escalas ---- */
@media(min-width:1024px){
  body.aama{font-size:1.05rem}
  .aama .lead{font-size:1.3rem;max-width:50ch}
  .aama .eyebrow{font-size:.78rem}
  .aama .btn{font-size:.8rem;padding:1.15em 2.1em}
  .aama-nav .menu{font-size:.94rem}
  .aama .dato b{font-size:1.7rem}
  .aama .dato span{font-size:.68rem}
  .aama .cat b{font-size:.72rem}
  .hp-listing--view-block .hp-listing__attributes--ternary{font-size:.64rem}
  .hp-listing--view-block .hp-listing__attributes--secondary{font-size:.66rem}
  .aama .pilar p{font-size:1.05rem}
  .aama .modo{font-size:.74rem;padding:1.05rem 2rem}
  .aama .tipo{font-size:.72rem;padding:.68em 1.15em}
  .aama .campo-b>span{font-size:.66rem}
  .aama .campo-b select{font-size:1.12rem}
  .aama .buscar{font-size:.78rem}
  .aama .mas{font-size:.7rem}
}
@media(max-width:1100px){
  .hp-listings>.hp-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .aama .rejilla-cats{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:960px){
  .aama-nav .menu{position:fixed;inset:0;background:var(--sombra);flex-direction:column;justify-content:center;align-items:center;gap:2.2rem;font-size:1.4rem;transform:translateX(100%);transition:transform .5s cubic-bezier(.7,0,.2,1);margin:0;overflow-y:auto;padding:5rem 1.5rem}
  /* backdrop-filter crea un bloque contenedor para los hijos con
     position:fixed, asi que el menu quedaba atrapado dentro de los
     117px de alto de la barra y solo se veian 3 de los 5 enlaces.
     En movil se quita: el fondo ya es opaco al 94% y no se nota. */
  .aama-nav.pegado{backdrop-filter:none}
  /* que no quede debajo de la barra de administracion de WordPress */
  body.admin-bar .aama-nav .menu{top:46px}
  .aama-nav .menu.abierto{transform:none}
  .aama-nav .menu-btn{display:block;position:relative;z-index:80}
  .aama .nosotros .wrap,.aama .contacto .wrap{grid-template-columns:1fr}
  .aama .franja .wrap{grid-template-columns:repeat(2,1fr)}
  .aama .mosaico{grid-template-columns:repeat(2,1fr);grid-auto-rows:160px}
  .aama .z-bacalar{grid-column:span 2;grid-row:span 1}
}
@media(max-width:760px){
  .aama .campos{grid-template-columns:1fr}
  .aama .campo-b{border-right:0;border-bottom:1px solid rgba(201,162,39,.16)}
  .aama .buscar{padding:1.1rem 2rem}
  .aama .extras{grid-template-columns:1fr}
  .aama .extras .campo-b{border-right:0}
  .aama .modo{flex:1;padding:.9rem .6rem;text-align:center}
  .aama .logo-hero{width:78%}
}
@media(max-width:640px){
  .hp-listings>.hp-row,.aama .rejilla-cats{grid-template-columns:1fr}
  .aama .franja .wrap{grid-template-columns:1fr}
  .aama .mosaico{grid-template-columns:1fr}
  .aama .z-bacalar,.aama .z-tulum{grid-column:span 1}
}
@media(prefers-reduced-motion:reduce){
  .aama *{transition-duration:.01ms!important}
  .aama .sube{opacity:1;transform:none}
}

/* ---- CABECERA Y PIE DE BLOCKSY con la piel de AAMA ----
   El fondo de fila de Blocksy vive dentro de su constructor de cabecera
   (theme mod header_placements), una estructura anidada que no conviene
   escribir a mano. Por eso estos colores se fijan aqui y NO desde
   Apariencia > Personalizar: si algun dia hay que cambiarlos, es en
   este bloque. La portada no se ve afectada, usa su propio nav. */
#header [data-row]{background-color:var(--sombra)}
#header [data-row]>.ct-container{background-color:transparent}
#header .site-logo-container img{max-height:54px;width:auto}

/* El logo ya lleva el nombre, asi que el titulo de texto y la descripcion
   sobran debajo. No se pierde accesibilidad: la imagen del logo lleva el
   nombre del sitio en su atributo alt. */
#header .site-title,
#header .site-description{display:none}

/* Fuera el buscador de la cabecera: la busqueda de propiedades se hace
   desde el buscador de la portada y el filtro del listado. */
#header [data-id="search"]{display:none}

/* enlaces del menu */
#header .menu .menu-item>a{color:var(--tinta)}
#header .menu .menu-item>a:hover,
#header .menu .menu-item.current-menu-item>a,
#header .menu .menu-item.current_page_item>a{color:var(--oro)}
#header .sub-menu{background-color:var(--piedra)}
#header .sub-menu .menu-item>a{color:var(--tinta)}
#header .sub-menu .menu-item>a:hover{color:var(--oro)}

/* iconos: hamburguesa y buscador */
#header [data-id="trigger"] .ct-icon,
#header [data-id="search"] .ct-icon{color:var(--oro);fill:var(--oro)}

/* panel lateral del movil */
#offcanvas{background-color:var(--sombra)}
#offcanvas .menu .menu-item>a{color:var(--tinta)}
#offcanvas .menu .menu-item>a:hover{color:var(--oro)}
#offcanvas .ct-toggle-close{color:var(--oro)}

/* ============================================================
   FICHA DE PROPIEDAD (hp-listing--view-page)
   Reordenada desde functions.php con el filtro de plantilla de HivePress.
   Aqui solo el aspecto.
   ============================================================ */

/* Contenedor mas ancho, como el .wrap del diseno */
body.single-hp_listing .ct-container,
body.post-type-archive-hp_listing .ct-container,
body.search .ct-container,
body.tax-hp_listing_category .ct-container{--theme-container-width:min(94vw,1720px)}

/* Se oculta la barra superior, que solo traia la pestana Detalles */
.hp-listing--view-page .hp-page__topbar,
.hp-page__topbar--separate:empty{display:none}

.hp-listing--view-page{align-items:flex-start}

/* ---- galeria ---- */
.hp-listing--view-page .hp-listing__images{margin:0 0 2rem;border:1px solid rgba(34,31,26,.14);background:#151310;overflow:hidden}
.hp-listing--view-page .hp-listing__images img{width:100%;height:100%;object-fit:cover;display:block}

/* ---- antetitulo: categoria y ubicacion ---- */

/* ---- titulo ---- */
.hp-listing--view-page>.hp-page__content>.hp-listing__title,
.hp-listing--view-page .hp-listing__title{font-family:var(--display);font-weight:400;font-size:clamp(2rem,4vw,3rem);line-height:1.06;letter-spacing:-.01em;color:#151310;margin:0 0 1.6rem}

/* ---- barra de ficha tecnica ---- */
.hp-listing--view-page .hp-listing__attributes--secondary{display:flex;flex-wrap:wrap;gap:0;margin:0 0 2.4rem;padding:1.1rem 0;border-top:1px solid rgba(34,31,26,.16);border-bottom:1px solid rgba(34,31,26,.16)}
.hp-listing--view-page .hp-listing__attributes--secondary>.hp-row{display:contents}
.hp-listing--view-page .hp-listing__attributes--secondary [class*='hp-col']{width:auto;max-width:none;flex:none;padding:0;margin:0}
.hp-listing--view-page .hp-listing__attribute{display:flex;flex-direction:column;gap:.4rem;padding:0 1.9rem;border-left:1px solid rgba(34,31,26,.16);white-space:nowrap}
.hp-listing--view-page .hp-listing__attributes--secondary>.hp-row>*:first-child .hp-listing__attribute,
.hp-listing--view-page .hp-listing__attributes--secondary>*:first-child{border-left:0;padding-left:0}

/* ---- descripcion ---- */
.hp-listing--view-page .hp-listing__description{margin:0 0 2.4rem;color:#5B5348;font-size:1.02rem;line-height:1.75;max-width:62ch}
.hp-listing--view-page .hp-listing__description p{margin:0 0 1em}
.hp-listing--view-page .hp-listing__description p:last-child{margin-bottom:0}

/* ---- amenidades ---- */
.hp-listing--view-page .hp-listing__attributes--ternary{margin:0}
.hp-listing--view-page .hp-listing__attributes--ternary .hp-listing__attribute{padding:0;border:0;white-space:normal;font-family:var(--body);font-size:1rem;color:#5B5348}

.hp-listing--view-page .hp-page__content{display:flex;flex-direction:column}

/* ============================================================
   TARJETA DE CONTACTO del lateral
   ============================================================ */
.aama-ficha-contacto{background:var(--sombra);color:var(--tinta);padding:1.8rem 1.6rem;border:1px solid rgba(201,162,39,.28)}
.aama-ficha-contacto__precio{font-family:var(--display);font-size:2rem;line-height:1.1;color:var(--cal);margin:0}
.aama-ficha-contacto__precio small{font-family:var(--mono);font-size:.4em;letter-spacing:.14em;color:var(--oro-luz)}
.aama-ficha-contacto__meta{font-family:var(--mono);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--oro);margin:.6rem 0 0}
.aama-ficha-contacto__nota{font-family:var(--body);font-size:.82rem;color:var(--tinta-baja);margin:1.1rem 0 0;line-height:1.5}

.aama-cta{display:flex;align-items:center;justify-content:center;gap:.7em;margin-top:1.1rem;padding:1.05em 1.3em;font-family:var(--mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border:1px solid var(--oro);transition:background-color .35s ease,color .35s ease}
.aama-cta svg{width:18px;height:18px;flex:none}
.aama-cta--wa{background:var(--oro);color:var(--sombra)}
.aama-cta--wa:hover{background:transparent;color:var(--oro)}
.aama-cta--mail{background:transparent;color:var(--oro)}
.aama-cta--mail:hover{background:var(--oro);color:var(--sombra)}

/* ---- seccion de relacionadas ---- */
.hp-listing--view-page ~ * .hp-section__title,
.hp-page__footer .hp-section__title{font-family:var(--display);font-weight:400;font-size:clamp(1.6rem,3vw,2.2rem);color:#151310;margin:0 0 1.8rem}

@media(max-width:900px){
  .hp-listing--view-page .hp-listing__attribute{padding:0 1rem}
  .aama-ficha-contacto{margin-top:2rem}
}
@media(max-width:600px){
  .hp-listing--view-page .hp-listing__attributes--secondary{gap:.8rem 0}
  .hp-listing--view-page .hp-listing__attribute{border-left:0;padding:0;width:50%}
}
/* etiquetas de amenidades en la ficha */
.aama-chip{display:inline-block;margin:0 .45rem .45rem 0;padding:.5em 1em;border:1px solid rgba(34,31,26,.2);font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:#5B5348}
.hp-listing--view-page .hp-listing__attributes--ternary .hp-listing__attribute{display:flex;flex-wrap:wrap;gap:0}

/* ---- migas de pan de la ficha ---- */
.aama-migas{margin:0;min-width:0}
.aama-migas ol{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;margin:0;padding:0;list-style:none}
.aama-migas li{display:flex;align-items:center;gap:.55rem;margin:0;padding:0;list-style:none}
.aama-migas li+li::before{content:'/';color:rgba(34,31,26,.35);font-family:var(--mono);font-size:.62rem}
.aama-migas a{font-family:var(--mono);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:#6B6155;text-decoration:none;transition:color .3s ease}
.aama-migas a:hover{color:var(--oro-oscuro)}
.aama-migas a[aria-current='page']{color:var(--oro-oscuro)}

/* ---- encabezados de seccion de la ficha ---- */
.hp-listing--view-page .aama-seccion{font-family:var(--mono);font-size:.62rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--oro-oscuro);margin:0 0 .9rem}
/* ---- datos de la propiedad ----
   Un solo display_format sirve en los dos sitios:
   - en la ficha, etiqueta arriba y valor grande debajo (tabla de datos);
   - en las tarjetas, valor y etiqueta en linea y en minusculas. */
.hp-listing--view-page .aama-dato__etiqueta{font-family:var(--mono);font-size:.56rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--oro-oscuro)}
.hp-listing--view-page .aama-dato__valor{font-family:var(--display);font-size:1.5rem;line-height:1;color:#151310}

.hp-listing--view-block .hp-listing__attributes--secondary .hp-listing__attribute{display:flex;flex-direction:row;align-items:baseline;gap:.35em;white-space:nowrap}
.hp-listing--view-block .hp-listing__attributes--secondary .aama-dato__valor{order:1;font-family:var(--mono);color:#3F3A32;font-weight:500}
.hp-listing--view-block .hp-listing__attributes--secondary .aama-dato__etiqueta{order:2;font-family:var(--mono);text-transform:lowercase;letter-spacing:.06em;color:#6B6155}

@media(max-width:760px){
  .hp-listing--view-page .hp-listing__attributes--secondary{gap:1.4rem 0}
  .hp-listing--view-page .hp-listing__attribute{border-left:0;padding:0;width:50%}
  .hp-listing--view-page .aama-dato__valor{font-size:1.25rem}
}
/* acceso de asesores: discreto en el pie, en los dos pies del sitio */
.aama-acceso{color:var(--tinta-baja);text-decoration:none;border-bottom:1px solid rgba(201,162,39,.35);padding-bottom:2px;transition:color .3s ease,border-color .3s ease}
.aama-acceso:hover{color:var(--oro);border-color:var(--oro)}
#footer .aama-acceso,.ct-footer .aama-acceso{color:inherit;opacity:.8}
#footer .aama-acceso:hover,.ct-footer .aama-acceso:hover{color:var(--oro-oscuro);opacity:1}

/* Red de seguridad de la tarjeta: nada de texto fuera del recuadro */
.hp-listing--view-block .hp-listing__content{min-width:0;overflow-wrap:anywhere}
.hp-listing--view-block .aama-desc,
.hp-listing--view-block .aama-ubi{white-space:normal;min-width:0;max-width:100%}
.hp-listing--view-block .aama-desc p{overflow-wrap:anywhere}

/* ============================================================
   BLOQUES NATIVOS DE GUTENBERG
   Franja, Nosotros y los datos de contacto son core/group y
   core/paragraph para que su texto se edite en el editor. Gutenberg
   inyecta sus propias clases y margenes; aqui se neutralizan para que
   el resultado sea identico al HTML que habia antes.
   ============================================================ */
.aama .franja .wp-block-group,
.aama .nosotros .wp-block-group,
.aama .datos-contacto .wp-block-group{margin-block:0}
.aama .dato>*,
.aama .pilar>*,
.aama .dc>*{margin-block:0}
.aama .franja .wrap.wp-block-group,
.aama .nosotros .wrap.wp-block-group{padding:0}

/* el titulo de Nosotros llevaba estilos en linea; ahora viven aqui */
.aama .nosotros-titulo{margin-top:1rem;max-width:13ch}
.aama .nosotros .lead{margin-top:1.5rem}
.aama .nosotros-intro>*+*{margin-top:0}

/* el grupo .pilares no debe heredar el hueco entre bloques */
.aama .pilares.wp-block-group{display:grid;gap:0}
/* ---- fila superior de la ficha: migas + editar ----
   El boton va en esta fila y no dentro del h1: meterlo en el encabezado
   ensuciaria el titulo de la pagina de cara a buscadores. */
.aama-ficha-cabecera{display:flex;align-items:center;justify-content:space-between;gap:1rem 1.5rem;flex-wrap:wrap;margin:0 0 1rem}

.aama-editar{display:inline-flex;align-items:center;gap:.55em;flex:none;padding:.72em 1.1em;border:1px solid rgba(138,115,24,.5);color:var(--oro-oscuro);background:transparent;text-decoration:none;font-family:var(--mono);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;line-height:1;transition:background-color .3s ease,color .3s ease,border-color .3s ease}
.aama-editar svg{width:15px;height:15px;flex:none}
.aama-editar:hover{background-color:var(--oro);border-color:var(--oro);color:var(--sombra)}

@media(max-width:600px){
  .aama-ficha-cabecera{flex-direction:column;align-items:flex-start}
  .aama-editar{width:100%;justify-content:center}
}
/* ============================================================
   GALERIA DE LA FICHA
   HivePress monta dos carruseles Slick dentro de .hp-listing__images:
     .hp-listing__images-slider    -> la foto grande
     .hp-listing__images-carousel  -> la tira de miniaturas
   Su JS pone aspect-ratio en linea sobre cada diapositiva, de ahi el
   !important para fijar la altura. Las miniaturas no se tocan.
   ============================================================ */
.hp-listing--view-page .hp-listing__images{border:0;background:none;overflow:visible}

.hp-listing--view-page .hp-listing__images-slider{border:1px solid rgba(34,31,26,.14);background:#151310;overflow:hidden}
.hp-listing--view-page .hp-listing__images-slider .slick-slide{aspect-ratio:auto!important;height:550px}
.hp-listing--view-page .hp-listing__images-slider .slick-list,
.hp-listing--view-page .hp-listing__images-slider .slick-track{height:550px!important}
.hp-listing--view-page .hp-listing__images-slider img,
.hp-listing--view-page .hp-listing__images-slider video{width:100%;height:550px;object-fit:cover;display:block;cursor:zoom-in}

/* flechas */
.hp-listing--view-page .hp-listing__images-slider .slick-arrow{width:44px;height:44px;display:grid;place-items:center;background:rgba(11,10,8,.72);border:1px solid rgba(232,206,132,.35);color:var(--oro-luz);z-index:3;transition:background-color .3s ease}
.hp-listing--view-page .hp-listing__images-slider .slick-arrow:hover{background:var(--oro);color:var(--sombra)}
.hp-listing--view-page .hp-listing__images-slider .slick-prev{left:14px}
.hp-listing--view-page .hp-listing__images-slider .slick-next{right:14px}

/* tira de miniaturas */
.hp-listing--view-page .hp-listing__images-carousel{margin-top:10px}
.hp-listing--view-page .hp-listing__images-carousel .slick-slide{aspect-ratio:auto!important;height:84px;opacity:.45;cursor:pointer;transition:opacity .3s ease}
.hp-listing--view-page .hp-listing__images-carousel .slick-slide:hover{opacity:.8}
.hp-listing--view-page .hp-listing__images-carousel .slick-current{opacity:1}
.hp-listing--view-page .hp-listing__images-carousel img,
.hp-listing--view-page .hp-listing__images-carousel video{width:100%;height:84px;object-fit:cover;display:block}

@media(max-width:760px){
  .hp-listing--view-page .hp-listing__images-slider .slick-slide,
  .hp-listing--view-page .hp-listing__images-slider .slick-list,
  .hp-listing--view-page .hp-listing__images-slider .slick-track{height:320px!important}
  .hp-listing--view-page .hp-listing__images-slider img,
  .hp-listing--view-page .hp-listing__images-slider video{height:320px}
  .hp-listing--view-page .hp-listing__images-carousel .slick-slide,
  .hp-listing--view-page .hp-listing__images-carousel img{height:60px}
}

/* ---------------------------------------------------------------------------
   FICHA TECNICA Y DETALLES DEL DESARROLLO
   Orden de la pagina: 1 descripcion, 2 amenidades, 3 ficha, 4 detalles.
   --------------------------------------------------------------------------- */
.hp-listing--view-page .aama-seccion{font-family:var(--display);font-weight:400;font-size:clamp(1.35rem,2.2vw,1.6rem);line-height:1.15;letter-spacing:-.005em;text-transform:none;color:#151310;margin:0 0 1.15rem}

.hp-listing--view-page .aama-panel{background:#fff;border:1px solid rgba(34,31,26,.16);padding:.5rem 1.75rem;margin:0 0 2.6rem}
.hp-listing--view-page .aama-ficha{width:100%;border-collapse:collapse;font-size:1rem;margin:0}
.hp-listing--view-page .aama-ficha tr{border-bottom:1px solid rgba(34,31,26,.16)}
.hp-listing--view-page .aama-ficha tr:last-child{border-bottom:0}
.hp-listing--view-page .aama-ficha th{width:min(40%,290px);text-align:left;font-family:var(--body);font-weight:500;font-size:1rem;color:#5B5348;padding:.88rem 1.6rem .88rem 0;vertical-align:top}
.hp-listing--view-page .aama-ficha td{padding:.88rem 0;vertical-align:top;color:#151310}
.hp-listing--view-page .aama-ficha td p{margin:0}
.hp-listing--view-page .aama-ficha td p+p{margin-top:.6em}
.aama-cifra{font-family:var(--mono);font-size:.94rem}
.aama-desde{font-family:var(--mono);font-size:.62rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--oro-oscuro);margin-right:.5em;white-space:nowrap}

/* El precio es el dato mas buscado: se pinta con la tipografia de display. */
.hp-listing--view-page .aama-ficha__fila--precio td{font-family:var(--display);font-size:1.32rem;line-height:1.25}
.hp-listing--view-page .aama-ficha__fila--precio small{font-family:var(--mono);font-size:.46em;letter-spacing:.12em}

/* Aviso legal: al pie del bloque de detalles, no como fila de la tabla. */
.hp-listing--view-page .aama-legal{margin:-1.5rem 0 2.6rem;font-size:.86rem;line-height:1.6;color:#7A7266;font-style:italic;max-width:74ch}

/* Amenidades: bloque propio entre la descripcion y la ficha. */
.hp-listing--view-page .hp-listing__attributes--ternary{margin:0 0 2.8rem}
.aama-chip{background:#fff;border-color:rgba(34,31,26,.28);color:#1B1A17;padding:.72em 1.25em;font-size:.68rem;font-weight:500;letter-spacing:.11em;margin:0 .55rem .55rem 0}

@media(max-width:640px){
  .hp-listing--view-page .aama-panel{padding:.3rem 1.1rem}
  .hp-listing--view-page .aama-ficha th,
  .hp-listing--view-page .aama-ficha td{display:block;width:auto;padding:0}
  .hp-listing--view-page .aama-ficha th{padding-top:.85rem;font-family:var(--mono);font-size:.62rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:#6B6155}
  .hp-listing--view-page .aama-ficha td{padding-bottom:.85rem}
}

/* aama-fix-chips: el contenedor de atributos hereda flex-direction:column de
   la ficha antigua; las etiquetas tienen que ir en linea y envolver. */
.hp-listing--view-page .hp-listing__attributes--ternary .hp-listing__attribute{flex-direction:row;flex-wrap:wrap;align-items:flex-start}

/* aama-fix-chips-movil: en movil la ficha antigua pone los atributos al 50%,
   lo que dejaba una etiqueta por linea. Las amenidades ocupan todo el ancho. */
@media(max-width:768px){
  .hp-listing--view-page .hp-listing__attributes--ternary .hp-listing__attribute{width:100%}
}

/* aama-ficha-limpia: sin marco ni lineas verticales. Solo la linea de abajo
   de cada fila, que es lo unico que hace falta para leerla ordenada. */
.hp-listing--view-page .aama-panel{border:0;border-radius:10px;padding:.85rem 2rem;box-shadow:0 1px 2px rgba(34,31,26,.05),0 14px 32px -20px rgba(34,31,26,.4)}
.hp-listing--view-page .aama-ficha tr{border-bottom:1px solid rgba(34,31,26,.10)}
.hp-listing--view-page .aama-ficha th{font-weight:500;color:#6B6155;padding:1.05rem 1.6rem 1.05rem 0}
.hp-listing--view-page .aama-ficha td{padding:1.05rem 0}

/* aama-lateral-flotante: la columna solo medi­a lo que la tarjeta por el
   align-items:flex-start de la fila; estirandola, la tarjeta ya tiene por
   donde desplazarse y se detiene donde acaba el contenido. */
.hp-listing--view-page>.hp-page__sidebar{align-self:stretch}
.hp-listing--view-page .aama-ficha-contacto{position:sticky;top:24px}

@media(max-width:768px){
  .hp-listing--view-page>.hp-page__sidebar{align-self:auto}
  .hp-listing--view-page .aama-ficha-contacto{position:static;top:auto}
  .hp-listing--view-page .aama-panel{padding:.5rem 1.25rem}
}

/* aama-sticky-overflow: Blocksy pone overflow-x:hidden en el body, y eso
   convierte al body en contenedor de desplazamiento, con lo que cualquier
   position:sticky de dentro queda anclado a algo que nunca se mueve. clip
   recorta igual el desborde horizontal pero no crea ese contenedor. */
body.single-hp_listing{overflow-x:clip}

/* aama-ficha-sin-rejilla: Blocksy da borde propio a th y td, que es lo que
   dibujaba la cuadricula. La linea se lleva a la celda para que quede solo
   la de abajo, y la ultima fila va sin ninguna. */
.hp-listing--view-page .aama-ficha tr{border:0}
.hp-listing--view-page .aama-ficha th,
.hp-listing--view-page .aama-ficha td{border:0;border-bottom:1px solid rgba(34,31,26,.10)}
.hp-listing--view-page .aama-ficha tr:last-child th,
.hp-listing--view-page .aama-ficha tr:last-child td{border-bottom:0}

/* aama-ficha-esquina-viva: el resto del sitio es plano y de esquina viva
   (tarjetas, botones, etiquetas). El panel se sostiene por el contraste del
   blanco contra el crema, sin redondeo ni sombra. */
.hp-listing--view-page .aama-panel{border-radius:0;box-shadow:none}

/* aama-ficha-sin-marco: la regla "table, th, td" de Blocksy da 1px a los
   cuatro lados de la propia tabla, no solo a las celdas. Sin esto queda un
   marco alrededor aunque las celdas ya esten limpias. */
.hp-listing--view-page .aama-ficha{border:0}

/* aama-tarjeta-clicable: el enlace del titulo se estira sobre toda la
   tarjeta. Sigue habiendo un solo enlace por anuncio, que es lo correcto
   para un lector de pantalla, y no hace falta JavaScript. La categoria se
   levanta por encima para que siga llevando a su archivo. */
.hp-listing--view-block{cursor:pointer}
.hp-listing--view-block .hp-listing__title a::after{content:"";position:absolute;inset:0;z-index:1}
.hp-listing--view-block .hp-listing__details--primary a{position:relative;z-index:2}

/* aama-franja-vacia: si una propiedad no tiene ninguno de los datos de esa
   franja, HivePress imprime el contenedor vacio y queda un hueco. */
.hp-listing--view-block .hp-listing__attributes--secondary:not(:has(.hp-listing__attribute)){display:none}

/* aama-precio-pasa-clic: el precio va superpuesto sobre la foto y tapaba el
   enlace justo en esa zona. Sin puntero propio, el clic atraviesa hasta el
   enlace de la tarjeta. Los enlaces y botones que pueda haber ahi dentro lo
   recuperan, para no dejar nada muerto. */
.hp-listing--view-block .hp-listing__footer{pointer-events:none}
.hp-listing--view-block .hp-listing__footer a,
.hp-listing--view-block .hp-listing__footer button{pointer-events:auto;position:relative;z-index:2}

/* aama-ancho-fluido: Blocksy topa el contenedor en 1290px y HivePress su
   pagina en 1280px, de ahi las bandas vacias en pantallas grandes. Se pasa
   a un ancho fluido con un tope alto, para que la linea de texto no se
   vuelva ilegible en monitores muy anchos. html:root gana al :root que
   Blocksy imprime en linea, sin necesidad de !important. */
html:root{--theme-normal-container-max-width:min(94vw,1720px);--theme-container-width:min(94vw,1720px)}
.hp-page.site-main{max-width:none}
.aama .wrap{width:min(94vw,1720px)}
body.tax-hp_listing_category .ct-container{--theme-container-width:min(94vw,1720px)}

/* Con mas ancho disponible caben mas tarjetas por fila; sin esto se
   volverian enormes en vez de aprovechar el espacio. */
@media(min-width:1500px){.hp-listings>.hp-row{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:2100px){.hp-listings>.hp-row{grid-template-columns:repeat(5,minmax(0,1fr))}}

/* aama-cuerpo-mayor: 1 o 2 px mas en el texto de lectura. Los titulos, los
   rotulos en monoespaciada y los botones se quedan igual. */
.aama-desc{font-size:1.05rem}
.aama .pilar p{font-size:1.06rem}
.hp-listing--view-page .hp-listing__description{font-size:1.12rem}
.hp-listing--view-page .hp-listing__attributes--ternary .hp-listing__attribute{font-size:1.08rem}
.hp-listing--view-page .aama-ficha{font-size:1.08rem}
.hp-listing--view-page .aama-ficha th{font-size:1.08rem}
.aama-cifra{font-size:1.02rem}
.hp-listing--view-page .aama-legal{font-size:.94rem}
