/* Correcciones discretas. No se modifica el diseño original de Astra. */
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{overflow-x:hidden}
:where(a,button,input,textarea,select,figure[role="button"]):focus-visible{outline:3px solid #bf8636!important;outline-offset:3px!important}
.rc-phone-header{color:inherit;text-decoration:none;font-weight:700;font-size:17px}
.rc-phone-header:hover{text-decoration:underline}
#servicios,#quienes-somos,#obras,.rc-contact-anchor{scroll-margin-top:96px}
.rc-contact-anchor{position:absolute}
.rc-form-note{border-left:3px solid #b98639;padding:10px 12px!important;margin:0 0 12px!important;background:#fff9ef;color:#5b4d38!important;font-size:12px!important;line-height:1.55!important}
.rc-copy-request{border:1px solid #be8a3f!important;background:#fff!important;color:#86612b!important;font-size:13px!important;padding:10px 16px!important;border-radius:3px!important;cursor:pointer;min-height:44px}
.rc-copy-request:hover{background:#fff8ed!important}
#ast-desktop-header .main-header-menu .menu-link{font-size:13px}
@media(max-width:1120px){#ast-desktop-header .main-header-menu .menu-link{font-size:12px!important}}
@media(max-width:767px){#inicio h1{overflow-wrap:break-word}#inicio .wp-block-cover__inner-container{max-width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


/* Uniformidad visual de las fotografías, respetando el diseño original. */
/* Tarjetas de Servicios: idéntica relación de aspecto y altura por fila. */
#servicios + .wp-block-columns > .wp-block-column > figure.wp-block-image {
  width: 100%;
  aspect-ratio: 16 / 10;
  overflow: hidden;
}
#servicios + .wp-block-columns > .wp-block-column > figure.wp-block-image > img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  object-fit: cover;
  object-position: center;
}
/* Galería de Obras: misma proporción y separación en todas las imágenes. */
#obras .wp-block-gallery.has-nested-images {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--wp--style--unstable-gallery-gap, 12px);
  align-items: stretch;
}
#obras .wp-block-gallery.has-nested-images > figure.wp-block-image {
  box-sizing: border-box;
  width: 100% !important;
  min-width: 0;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  margin: 0;
  flex: none !important;
  align-self: stretch;
}
#obras .wp-block-gallery.has-nested-images > figure.wp-block-image > img {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  flex: none !important;
  object-fit: cover !important;
  object-position: center;
}
@media (max-width: 900px) {
  #obras .wp-block-gallery.has-nested-images {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 359px) {
  #obras .wp-block-gallery.has-nested-images {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Nota de procedencia de las fotografías de la galería. */
#obras .rc-gallery-note{max-width:880px;margin:0 auto 22px;text-align:center;font-size:14px;line-height:1.6;color:#68625a;padding:0 18px}
