
:root { --as-radius: 4px; }
html { scroll-behavior: smooth; }
body { overflow-x: hidden; }
.wp-site-blocks { padding-top: 0; padding-bottom: 0; }

.as-site-header {
  position: absolute;
  z-index: 50;
  top: 0;
  left: 0;
  right: 0;
  color: #fff;
  background: linear-gradient(180deg, rgba(10,26,22,.86), rgba(10,26,22,.38) 65%, transparent);
}
.as-site-header a { color: inherit; }
.as-site-header .wp-block-site-title a { color:#fff; }
.as-site-header .wp-block-navigation-item__content { color:#fff; }
.as-site-header .wp-block-navigation-item__content:hover { color:#D8C8A8; }
.as-site-header .wp-block-navigation__responsive-container.is-menu-open {
  background:#102F28;
  color:#fff;
  padding:2rem;
}
.as-logo-mark {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:30px;
  margin-right:.7rem;
  color:#B56F43;
}


/* Encuadres fotográficos integrados en la versión 1.2.0. */
.as-hero .wp-block-cover__image-background { object-position:74% 50%; }
.as-final-cta .wp-block-cover__image-background { object-position:52% 48%; }
.as-image-frame img { aspect-ratio:4/3; width:100%; object-fit:cover; }

.as-hero { min-height: 92vh; }
.as-hero .wp-block-cover__background { background: linear-gradient(90deg, rgba(9,24,20,.82) 0%, rgba(9,24,20,.52) 45%, rgba(9,24,20,.18) 100%) !important; opacity:1 !important; }
.as-hero__inner { min-height:92vh; display:flex; align-items:center; padding-top:8rem; padding-bottom:5rem; }
.as-hero__eyebrow { text-transform:uppercase; letter-spacing:.19em; font-size:.78rem; font-weight:700; }
.as-hero h1 { max-width: 820px; text-wrap: balance; }
.as-outline-button .wp-block-button__link { background:transparent; border:1px solid rgba(255,255,255,.65); color:#fff; }
.as-outline-button .wp-block-button__link:hover { background:#fff; color:#102F28; }

.as-section { padding-top:clamp(4.5rem,8vw,8rem); padding-bottom:clamp(4.5rem,8vw,8rem); }
.as-section-title { position:relative; padding-bottom:.85rem; }
.as-section-title:after { content:""; display:block; width:54px; height:2px; background:#B56F43; margin-top:.7rem; }
.has-text-align-center.as-section-title:after { margin-left:auto; margin-right:auto; }
.as-kicker { text-transform:uppercase; letter-spacing:.16em; font-weight:700; font-size:.76rem; color:#B56F43; }

.as-feature-row { gap:0 !important; border-top:1px solid rgba(16,47,40,.12); padding-top:1.5rem; }
.as-feature { padding:0 1.35rem; border-right:1px solid rgba(16,47,40,.12); }
.as-feature:first-child { padding-left:0; }
.as-feature:last-child { border-right:0; }
.as-icon { width:44px; height:44px; display:flex; align-items:center; justify-content:center; border-radius:999px; background:#102F28; color:#F6F3EC; }

.as-image-frame { overflow:hidden; border-radius:var(--as-radius); box-shadow:0 18px 50px rgba(16,47,40,.12); }
.as-image-frame img { transition: transform .6s ease; }
.as-image-frame:hover img { transform:scale(1.025); }

.as-gallery-grid { display:grid !important; grid-template-columns:1.05fr 1.05fr 1.05fr .9fr .9fr; gap:.4rem !important; }
.as-gallery-grid > * { min-height:310px; }
.as-gallery-grid figure, .as-gallery-grid img { height:100%; width:100%; object-fit:cover; }

.as-card { height:100%; border:1px solid rgba(16,47,40,.12); border-radius:4px; box-shadow:0 8px 24px rgba(16,47,40,.08); transition:transform .25s ease, box-shadow .25s ease; }
.as-card:hover { transform:translateY(-4px); box-shadow:0 18px 38px rgba(16,47,40,.13); }
.as-card-arrow { color:#B56F43; font-size:1.55rem; line-height:1; }

.as-topography { position:relative; overflow:hidden; }
.as-topography:before { content:""; position:absolute; inset:0; opacity:.12; background-image:radial-gradient(circle at 25% 35%, transparent 0 36px, #D8C8A8 37px 38px, transparent 39px 55px, #D8C8A8 56px 57px, transparent 58px), radial-gradient(circle at 75% 70%, transparent 0 52px, #D8C8A8 53px 54px, transparent 55px 74px, #D8C8A8 75px 76px, transparent 77px); background-size:260px 220px; }
.as-topography > * { position:relative; z-index:1; }

.as-final-cta .wp-block-cover__background { background:linear-gradient(180deg,rgba(16,47,40,.25),rgba(16,47,40,.88)) !important; opacity:1 !important; }
.as-footer { border-top:1px solid rgba(255,255,255,.12); }
.as-footer a { color:#F6F3EC; }
.as-footer a:hover { color:#D8C8A8; }

@media (max-width: 900px) {
  .as-site-header { position:absolute; }
  .as-site-header .wp-block-navigation__responsive-container-open { display:flex; }
  .as-hero, .as-hero__inner { min-height:82vh; }
  .as-gallery-grid { grid-template-columns:repeat(2,1fr); }
  .as-gallery-grid > * { min-height:240px; }
  .as-gallery-grid > *:last-child { grid-column:1/-1; }
}
@media (max-width: 600px) {
  .as-site-header .wp-block-site-title { font-size:1rem !important; }
  .as-hero__inner { padding-top:7rem; }
  .as-hero h1 { font-size:clamp(2.7rem,14vw,4.3rem) !important; }
  .as-hero .wp-block-cover__image-background { object-position:68% 50%; }
  .as-feature { border-right:0; border-bottom:1px solid rgba(16,47,40,.12); padding:1.25rem 0; }
  .as-feature:last-child { border-bottom:0; }
  .as-gallery-grid { grid-template-columns:1fr; }
  .as-gallery-grid > *:last-child { grid-column:auto; }
}
