/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:"Inter", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-canvas:#171721;--color-ivory:#dbdbce;--color-ice:#c6d8e0;--color-wine:#300000}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.isolate{isolation:isolate}.-z-10{z-index:calc(10 * -1)}.-z-20{z-index:calc(20 * -1)}.m-0{margin:0}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.w-full{width:100%}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-3{gap:calc(var(--spacing) * 3)}.gap-6{gap:calc(var(--spacing) * 6)}.overflow-hidden{overflow:hidden}.bg-canvas{background-color:var(--color-canvas)}.bg-ice{background-color:var(--color-ice)}.font-sans{font-family:var(--font-sans)}.text-ivory{color:var(--color-ivory)}.text-wine{color:var(--color-wine)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (min-width:40rem){.sm\:gap-4{gap:calc(var(--spacing) * 4)}}}@font-face{font-family:Inter;src:url(../fonts/Inter-Variable.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Accia Piano;src:url(../fonts/AcciaPiano-ExtraLight.woff2)format("woff2");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:Accia Piano;src:url(../fonts/AcciaPiano-Light.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Accia Piano;src:url(../fonts/AcciaPiano-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Accia Piano;src:url(../fonts/AcciaPiano-SemiBold.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}:root{--hero-label-size:clamp(1rem, 1.42vw, 2.275rem);--hero-edge:clamp(1.25rem, 2.9vw, 4.625rem);--hero-fade:.85s}html{color-scheme:dark}.hero{height:100svh;min-height:36rem;padding:var(--hero-edge);padding-bottom:max(1.5rem, env(safe-area-inset-bottom));grid-template-rows:auto 1fr auto}.hero__top,.hero__cta{font-size:var(--hero-label-size);letter-spacing:-.045em;font-weight:400;line-height:1.15}.hero__gallery{background:#171721}.hero__slide{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity var(--hero-fade) ease-in-out;will-change:opacity;position:absolute;inset:0;transform:scale(1.045)}.hero__slide.is-active{opacity:1}.hero__slide.is-moving{animation:hero-drift var(--hero-drift,5.5s) linear both}.hero__shade{pointer-events:none;background:#00000061}.hero__identity{min-height:0}.hero__logo{object-fit:contain;width:clamp(15.5rem,37.5vw,62rem);max-width:100%;max-height:60svh;animation:.7s cubic-bezier(.22,1,.36,1) both identity-in;display:block}.hero__logo.is-missing{visibility:hidden}.contact-link{color:#dbdbce;justify-content:center;align-items:center;min-width:44px;min-height:44px;transition:transform .25s,opacity .25s;display:inline-flex}.contact-link svg{width:clamp(1.75rem,2.7vw,4.25rem);height:clamp(1.75rem,2.7vw,4.25rem)}.contact-link[href]:hover{opacity:.8;transform:translateY(-3px)}.hero__cta{white-space:nowrap;padding:.5em .7em;text-decoration:none;transition:background-color .25s,transform .25s}.hero__cta[href]:hover{background:#deebf0;transform:translateY(-2px)}a[href]{cursor:pointer}a:focus-visible,button:focus-visible{outline-offset:6px;outline:2px solid #dbdbce}@keyframes hero-drift{0%{transform:scale(1.045)}to{transform:scale(1)}}@keyframes identity-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width:640px){.hero{min-height:32rem}.hero__logo{width:80vw;max-height:53svh}.hero__bottom{flex-direction:column;gap:1.25rem}.hero__cta{min-height:48px;padding:.8em 1.1em}}@media (max-height:500px) and (min-width:641px){.hero{min-height:24rem}.hero__logo{max-height:58svh}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
:root {
  /* Escala visual calibrada contra la maqueta, no conversión literal pt→px.
     Se reutiliza exactamente para estos tamaños de Elementor durante el proyecto. */
  --section-bg-light: #dbdbce;
  --section-title-dark: #0a040a;
  --section-divider: rgb(10 4 10 / .42);
  --section-gold: #91722b;
  --size-103-76pt: clamp(2.72rem, 4.65vw, 4.12rem);
  --size-80-0449pt: clamp(2.15rem, 3.62vw, 3.2rem);
  --size-57-6428pt: clamp(1.7rem, 2.7vw, 2.45rem);
  --size-38pt: clamp(1rem, 1.65vw, 1.55rem);
  --size-35pt: clamp(1rem, 1.55vw, 1.45rem);
  --size-27pt: clamp(.875rem, 1.2vw, 1.125rem);
  --leading-40pt: 1.48;
}

.investment-section {
  overflow: hidden;
  background: var(--section-bg-light);
  color: var(--section-title-dark);
  padding-block: clamp(5.25rem, 9.2vw, 8.2rem) clamp(5.75rem, 8.5vw, 8rem);
}

.investment-section__inner {
  width: min(100%, 88rem);
  margin-inline: auto;
  padding-inline: clamp(1.5rem, 4.15vw, 3.7rem);
}

.investment-section__header {
  display: grid;
  justify-items: center;
}

.investment-section__title,
.investment-reasons__title,
.investment-section__eyebrow,
.investment-reasons__heading {
  font-family: "Accia Piano", serif;
  font-style: normal;
}

.investment-section__title {
  width: min(100%, 69rem);
  margin: 0;
  color: var(--section-title-dark);
  text-align: center;
  font-size: var(--size-103-76pt);
  font-weight: 200;
  line-height: .97;
  letter-spacing: -.042em;
  text-transform: uppercase;
}

.investment-section__title-line {
  display: block;
  white-space: nowrap;
}

.investment-section__title-con {
  display: inline-block;
  margin-inline: .08em .02em;
  font-size: var(--size-57-6428pt);
  line-height: 1;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .13em;
}

.investment-section__rule {
  width: min(70.5vw, 55.8rem);
  margin-top: clamp(4rem, 7.7vw, 6.9rem);
  border-top: 1px solid var(--section-divider);
  transform-origin: center;
}

.investment-section__overview {
  display: grid;
  grid-template-columns: minmax(0, 1.52fr) minmax(18rem, .93fr);
  align-items: start;
  gap: clamp(2.8rem, 4.4vw, 4.2rem);
  margin-top: clamp(5.3rem, 8.15vw, 7.25rem);
}

.investment-section__media {
  position: relative;
  margin: 0;
  overflow: hidden;
}

.investment-section__media img {
  display: block;
  width: 100%;
  aspect-ratio: 1.64 / 1;
  object-fit: cover;
  object-position: center 43%;
  transform-origin: center;
}

.investment-section__copy {
  padding-top: .1rem;
}

.investment-section__eyebrow {
  width: min(100%, 25rem);
  margin: 0;
  color: #300000;
  font-size: clamp(1.75rem, 2.72vw, 2.48rem);
  font-weight: 200;
  line-height: 1.08;
  letter-spacing: -.03em;
  text-transform: uppercase;
}

.investment-section__lead,
.investment-section__features {
  width: min(100%, 25rem);
  margin: 0;
  color: #000;
  font-family: "Inter", sans-serif;
  font-size: var(--size-27pt);
  font-weight: 400;
  line-height: var(--leading-40pt);
  letter-spacing: -.025em;
  text-transform: uppercase;
}

.investment-section__lead {
  margin-top: clamp(1.65rem, 2.3vw, 2.1rem);
}

.investment-section__features {
  margin-top: clamp(.9rem, 1.25vw, 1.15rem);
  padding-left: 1.05em;
  list-style: disc;
}

.investment-section__features li::marker {
  font-size: .78em;
}

.investment-reasons {
  margin-top: clamp(5.7rem, 8.5vw, 7.6rem);
}

.investment-reasons__title {
  margin: 0;
  color: #000;
  text-align: center;
  font-size: var(--size-80-0449pt);
  font-weight: 200;
  line-height: 1.08;
  letter-spacing: -.038em;
  text-transform: uppercase;
  white-space: nowrap;
  padding: .08em .12em .1em;
}

.investment-reasons__question-mark {
  display: inline-block;
  padding-left: .06em;
  margin-right: .075em;
}

.investment-reasons__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: clamp(3.15rem, 4.15vw, 3.9rem);
}

.investment-reasons__card {
  min-width: 0;
  padding-inline: clamp(.7rem, 1.55vw, 1.4rem);
  text-align: center;
}

.investment-reasons__card:not(:first-child) {
  border-left: 1px solid rgb(10 4 10 / .44);
}

.investment-reasons__number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2em;
  height: 1.75em;
  padding-inline: .25em;
  background: var(--section-gold);
  color: #dbdbce;
  font-family: "Accia Piano", serif;
  font-size: var(--size-38pt);
  font-weight: 400;
  line-height: 1;
}

.investment-reasons__heading {
  margin: clamp(1rem, 1.45vw, 1.3rem) auto 0;
  max-width: 100%;
  color: var(--section-gold);
  font-size: var(--size-35pt);
  font-weight: 300;
  line-height: 1.08;
  letter-spacing: -.03em;
  text-transform: uppercase;
  white-space: normal;
  text-wrap: balance;
  overflow-wrap: normal;
}

.investment-reasons__text {
  max-width: 17.5rem;
  margin: clamp(.85rem, 1.15vw, 1.05rem) auto 0;
  color: #000;
  font-family: "Inter", sans-serif;
  font-size: var(--size-27pt);
  font-weight: 400;
  line-height: var(--leading-40pt);
  letter-spacing: -.025em;
  text-transform: uppercase;
  text-wrap: balance;
}

@media (max-width: 1040px) {
  .investment-section__title-line,
  .investment-reasons__title,
  .investment-reasons__heading {
    white-space: normal;
  }

  .investment-section__overview {
    grid-template-columns: minmax(0, 1.35fr) minmax(15rem, .8fr);
    gap: clamp(2rem, 4vw, 3rem);
  }
}

@media (max-width: 760px) {
  .investment-section {
    padding-block: 4rem 5rem;
  }

  .investment-section__title {
    width: min(100%, 36rem);
    font-size: clamp(2.15rem, 8vw, 3.5rem);
  }

  .investment-section__title-line {
    white-space: normal;
  }

  .investment-section__title-con {
    font-size: .62em;
  }

  .investment-section__rule {
    width: 82%;
    margin-top: 3.4rem;
  }

  .investment-section__overview {
    grid-template-columns: 1fr;
    gap: 2.25rem;
    margin-top: 3.8rem;
  }

  .investment-section__copy,
  .investment-section__eyebrow,
  .investment-section__lead,
  .investment-section__features {
    width: 100%;
    max-width: none;
  }

  .investment-section__eyebrow {
    max-width: 30rem;
  }

  .investment-reasons {
    margin-top: 4.7rem;
  }

  .investment-reasons__title {
    font-size: clamp(2rem, 7.2vw, 3rem);
  }

  .investment-reasons__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 2.4rem;
  }

  .investment-reasons__card:nth-child(3) {
    border-left: none;
  }
}

@media (max-width: 480px) {
  .investment-reasons__grid {
    grid-template-columns: 1fr;
    margin-top: 2rem;
  }

  .investment-reasons__card {
    padding-block: 1.5rem;
  }

  .investment-reasons__card:not(:first-child) {
    border-left: none;
    border-top: 1px solid rgb(10 4 10 / .35);
  }
}


/* 03. Ubicación — continuidad editorial y cinematográfica del home */
:root {
  /* 41.4pt conserva la relación visual con --size-80-0449pt (≈ 51.7%). */
  --size-41-4pt: clamp(1.12rem, 1.88vw, 1.66rem);
  --location-bg: #300000;
  --location-ivory: #dbdbce;
  --location-copper: #c59570;
}

.location-section {
  position: relative;
  overflow: hidden;
  background: var(--location-bg);
  color: var(--location-ivory);
  padding-block: clamp(4.5rem, 6.1vw, 6rem) clamp(1.25rem, 2.2vw, 2rem);
}

.location-section__content {
  width: min(100%, 71rem);
  margin-inline: auto;
  padding-inline: clamp(1.5rem, 4.9vw, 4.2rem);
}

.location-section__header {
  display: grid;
  justify-items: center;
}

.location-section__title {
  width: min(100%, 58.5rem);
  margin: 0;
  color: var(--location-ivory);
  font-family: "Accia Piano", serif;
  font-size: var(--size-80-0449pt);
  font-weight: 200;
  line-height: .97;
  letter-spacing: -.035em;
  text-align: center;
  text-transform: uppercase;
}

.location-motion-line {
  display: block;
  overflow: hidden;
}

.location-motion-line > span {
  display: block;
}

.location-section__connector {
  display: inline-block;
  margin-inline: .14em .10em;
  padding-bottom: .08em;
  border-bottom: 1px solid currentColor;
  font-size: .57em;
  line-height: .94;
  vertical-align: .58em;
  letter-spacing: -.02em;
}

.location-section__info {
  display: grid;
  grid-template-columns: minmax(0, 1.16fr) minmax(18rem, .84fr);
  align-items: start;
  column-gap: clamp(4rem, 9.5vw, 8.5rem);
  margin-top: clamp(4.4rem, 6vw, 5.25rem);
}

.location-section__nearby,
.location-section__callout {
  font-family: "Inter", sans-serif;
  font-weight: 400;
  text-transform: uppercase;
}

.location-section__nearby {
  color: var(--location-ivory);
  font-size: var(--size-27pt);
  line-height: 1.18;
  letter-spacing: -.03em;
}

.location-section__intro {
  margin: 0;
}

.location-section__list {
  margin: clamp(2.2rem, 3.25vw, 2.85rem) 0 0;
  padding: 0;
  list-style: none;
}

.location-section__list li {
  position: relative;
  padding-left: .72em;
}

.location-section__list li::before {
  content: "•";
  position: absolute;
  left: 0;
  top: 0;
}

.location-section__callout {
  display: grid;
  justify-items: center;
  gap: clamp(2.15rem, 3.8vw, 3.25rem);
  color: var(--location-copper);
  font-size: var(--size-35pt);
  line-height: 1.08;
  letter-spacing: -.035em;
  text-align: center;
}

.location-section__callout p {
  margin: 0;
}

.location-section__callout-line {
  display: block;
  width: 100%;
  height: 1px;
  background: var(--location-copper);
  transform-origin: center;
}

.location-map {
  position: relative;
  width: min(calc(100% - clamp(2.4rem, 3.15vw, 3.8rem)), 92rem);
  margin: clamp(4rem, 5vw, 4.5rem) auto 0;
}

.location-map__reveal {
  position: relative;
  overflow: hidden;
  aspect-ratio: 1.68 / 1;
  background: #190000;
}

.location-map__frame {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  pointer-events: none;
  filter: saturate(.9) contrast(1.02);
  transform: scale(1.025);
  transform-origin: center;
}

.location-map__link {
  position: absolute;
  inset: 0;
  z-index: 3;
}

.location-map__pin {
  position: absolute;
  z-index: 4;
  left: 50%;
  top: 50%;
  width: clamp(4.5rem, 8vw, 7rem);
  height: clamp(5.8rem, 10vw, 8.8rem);
  transform: translate(-50%, -100%);
  pointer-events: none;
}

.location-map__pin::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  width: clamp(4.5rem, 8vw, 7rem);
  aspect-ratio: 1;
  border-radius: 50% 50% 50% 0;
  background: #f23b32;
  transform: translateX(-50%) rotate(-45deg);
  transform-origin: center;
}

.location-map__pin-label {
  position: absolute;
  z-index: 2;
  left: 50%;
  top: clamp(.8rem, 1.45vw, 1.25rem);
  transform: translateX(-50%);
  color: #fff;
  font-family: "Accia Piano", serif;
  font-size: clamp(.72rem, 1.25vw, 1.08rem);
  font-weight: 300;
  line-height: .9;
  text-align: center;
  letter-spacing: -.035em;
}

.location-map__pin-point {
  position: absolute;
  z-index: 2;
  left: 50%;
  bottom: .25rem;
  width: .45rem;
  height: .45rem;
  border-radius: 50%;
  background: #f23b32;
  transform: translateX(-50%);
}

.location-map__pin-ring {
  position: absolute;
  left: 50%;
  bottom: -.3rem;
  width: 74%;
  height: 20%;
  border: 3px solid #f23b32;
  border-radius: 50%;
  transform: translateX(-50%);
}

.location-map__scan {
  position: absolute;
  z-index: 5;
  display: block;
  background: var(--location-copper);
  pointer-events: none;
}

.location-map__scan--top,
.location-map__scan--bottom {
  left: 0;
  width: 100%;
  height: 1px;
  transform-origin: left;
}

.location-map__scan--top { top: 0; }
.location-map__scan--bottom { bottom: 0; transform-origin: right; }

.location-map__scan--left,
.location-map__scan--right {
  top: 0;
  width: 1px;
  height: 100%;
  transform-origin: top;
}

.location-map__scan--left { left: 0; transform-origin: bottom; }
.location-map__scan--right { right: 0; }

@media (max-width: 900px) {
  .location-section__content {
    width: min(100%, 48rem);
  }

  .location-section__title {
    width: min(100%, 45rem);
    font-size: clamp(2.05rem, 6.8vw, 3.25rem);
  }

  .location-section__connector {
    font-size: .52em;
  }

  .location-section__info {
    grid-template-columns: 1fr;
    gap: 3.5rem;
    margin-top: 4rem;
  }

  .location-section__nearby {
    max-width: 34rem;
  }

  .location-section__callout {
    width: min(100%, 30rem);
    justify-self: end;
  }

  .location-map {
    width: calc(100% - 2rem);
    margin-top: 4.25rem;
  }
}

@media (max-width: 560px) {
  .location-section {
    padding-top: 3.8rem;
  }

  .location-section__content {
    padding-inline: 1.3rem;
  }

  .location-section__title {
    font-size: clamp(1.9rem, 9.4vw, 2.75rem);
    line-height: 1.02;
  }

  .location-motion-line {
    overflow: visible;
  }

  .location-section__info {
    margin-top: 3.5rem;
  }

  .location-section__intro br,
  .location-section__callout br {
    display: none;
  }

  .location-section__callout {
    justify-self: stretch;
    width: 100%;
  }

  .location-map {
    width: calc(100% - 1.5rem);
  }

  .location-map__reveal {
    aspect-ratio: .92 / 1;
  }

  .location-map__frame {
    width: 178%;
    margin-left: -39%;
  }

  .location-map__pin {
    left: 50%;
    top: 50%;
  }
}

:root{--size-71pt:clamp(1.97rem,3.25vw,2.90rem);--size-45-3823pt:clamp(1.265rem,2.045vw,1.89rem);--suites-bg:#c6d8e0;--suites-ink:#07344b;--suites-black:#000;--suites-rail:1px;--suites-underline:1px}.suites-section{position:relative;overflow:hidden;background:var(--suites-bg);color:var(--suites-ink);padding-block:clamp(5.4rem,7vw,6.9rem) clamp(5.8rem,7.2vw,7rem)}.suites-section__inner{width:min(100%,100rem);margin-inline:auto;padding-inline:clamp(1.5rem,3.05vw,3.15rem)}.suites-section__header{display:grid;justify-items:center;text-align:center}.suites-section__kicker{margin:0;overflow:hidden;color:var(--suites-ink);font-family:Inter,sans-serif;font-size:var(--size-38pt);font-weight:400;line-height:1.12;letter-spacing:-.035em;text-transform:uppercase}.suites-section__kicker>span{display:block}.suites-section__title{width:min(100%,72rem);margin:clamp(2rem,2.8vw,2.7rem) 0 0;color:var(--suites-ink);font-family:"Accia Piano",serif;font-size:var(--size-80-0449pt);font-weight:200;line-height:.98;letter-spacing:-.038em;text-transform:uppercase}.suites-motion-line{display:block;overflow:hidden}.suites-motion-line>span{display:block}.suites-section__connector{display:inline-block;margin-inline:.14em .1em;padding-bottom:.08em;border-bottom:1px solid currentColor;font-size:.57em;line-height:.94;vertical-align:.58em;letter-spacing:-.02em}.suites-section__rule{display:block;width:min(36.4rem,42vw);height:1px;margin-top:clamp(2.35rem,3vw,3rem);background:var(--suites-black);transform-origin:center}.suites-section__description{width:min(100%,51rem);margin:clamp(2.85rem,3.55vw,3.55rem) 0 0;color:var(--suites-black);font-family:Inter,sans-serif;font-size:var(--size-27pt);font-weight:400;line-height:1.14;letter-spacing:-.032em;text-transform:uppercase}.suites-copy-line{display:block;overflow:hidden}.suites-copy-line>span{display:block}.suites-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(2.5rem,3.75vw,4rem);row-gap:clamp(4.15rem,4.9vw,5.1rem);margin-top:clamp(7.4rem,9.1vw,9rem)}.suite-option{position:relative;min-width:0;height:clamp(4.25rem,4.7vw,4.65rem)}.suite-option--right{transform:translateY(clamp(2.7rem,3vw,3.15rem))}.suite-option__rail{position:absolute;z-index:1;top:0;left:0;width:100%;height:1.5px;background:var(--suites-ink);transform-origin:var(--suite-origin,left)}.suite-option__label{position:absolute;z-index:2;top:0;left:27%;width:46%;height:100%}.suite-option__frame{position:absolute;z-index:3;display:block;background:var(--suites-ink);pointer-events:none}.suite-option__frame--left,.suite-option__frame--right{top:0;width:var(--suites-rail);height:100%;transform-origin:top}.suite-option__frame--left{left:0}.suite-option__frame--right{right:0}.suite-option__frame--bottom{left:0;bottom:0;width:100%;height:var(--suites-rail);transform-origin:center}.suite-option__node{position:absolute;z-index:5;top:calc(var(--suites-rail)*-.75);left:calc(var(--suites-rail)*-.75);width:calc(var(--suites-rail)*2.5);aspect-ratio:1;border-radius:50%;background:var(--suites-ink);pointer-events:none}.suite-option__copy{position:relative;z-index:4;display:flex;align-items:center;justify-content:center;gap:clamp(.45rem,.85vw,.8rem);width:100%;height:100%;padding-inline:clamp(.55rem,1vw,.95rem);overflow:hidden;white-space:nowrap}.suite-option__type,.suite-option__area{margin:0;color:var(--suites-ink);font-family:"Accia Piano",serif;font-weight:300;line-height:1;letter-spacing:-.042em;text-transform:uppercase}.suite-option__type{font-size:var(--size-71pt)}.suite-option__area{position:relative;padding-bottom:.18em;font-size:var(--size-45-3823pt)}.suite-option__type>span,.suite-option__area>span{display:block}.suite-option__area i{position:absolute;left:0;right:0;bottom:0;height:var(--suites-underline);background:var(--suites-ink);transform-origin:left}@media(max-width:1000px){.suites-section__title{width:min(100%,58rem)}.suites-options{column-gap:2rem}.suite-option__label{left:18%;width:64%}}@media(max-width:720px){.suites-section{padding-block:4.6rem 5.4rem}.suites-section__title{line-height:1.01}.suites-motion-line{overflow:visible}.suites-section__rule{width:min(78vw,24rem)}.suites-copy-line{display:inline;overflow:visible}.suites-copy-line>span{display:inline}.suites-options{grid-template-columns:1fr;gap:3.6rem;margin-top:5.6rem}.suite-option--right{transform:none}.suite-option__label{left:15%;width:70%}}@media(max-width:440px){.suites-section__inner{padding-inline:1.15rem}.suites-section__kicker{font-size:clamp(1rem,4.8vw,1.2rem)}.suites-section__description{font-size:clamp(.82rem,3.7vw,1rem);line-height:1.2}.suite-option{height:4rem}.suite-option__label{left:8%;width:84%}}

/* HOME / 05. CIERRE Y CONTACTO */
:root {
  /* 54.54pt mantiene una proporción intermedia y coherente con 57.6428pt. */
  --size-54-54pt: clamp(1.62rem, 2.56vw, 2.32rem);
  --final-ivory: #dbdbce;
}

.final-contact {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: max(43rem, 58.84vw);
  background: #300000;
  color: var(--final-ivory);
}

.final-contact__background {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.final-contact__inner {
  position: relative;
  width: min(100%, 120rem);
  min-height: inherit;
  margin-inline: auto;
  padding: clamp(3.5rem, 6.4vw, 7.8rem) clamp(1.5rem, 5vw, 6rem) clamp(2.7rem, 4.8vw, 5.8rem);
  display: grid;
  grid-template-rows: auto 1fr auto;
}

.final-contact__contact {
  justify-self: center;
  text-align: center;
}

.final-contact__heading,
.final-contact__phone {
  color: var(--final-ivory);
  font-family: "Accia Piano", serif;
  font-size: var(--size-57-6428pt);
  line-height: .98;
  letter-spacing: -.02em;
}

.final-contact__heading {
  margin: 0;
  font-weight: 400;
  text-transform: uppercase;
}

.final-contact__heading > span,
.final-contact__phone > span {
  display: inline-block;
}

.final-contact__phone {
  display: block;
  margin-top: clamp(.25rem, .55vw, .75rem);
  font-weight: 600;
  text-decoration: none;
  transition: opacity .25s ease;
}

.final-contact__phone:hover {
  opacity: .82;
}

.final-contact__brand {
  align-self: center;
  justify-self: center;
  width: min(100%, 72rem);
  display: grid;
  justify-items: center;
  margin-top: clamp(2rem, 5vw, 6rem);
}

.final-contact__brand-logo {
  display: block;
  width: clamp(24rem, 53vw, 55rem);
  max-width: 100%;
  height: auto;
}

.final-contact__rule {
  display: block;
  width: 100%;
  height: 1px;
  margin-top: clamp(1.25rem, 2vw, 2.25rem);
  background: var(--final-ivory);
  transform-origin: center;
}

.final-contact__address {
  margin: clamp(1rem, 1.75vw, 1.9rem) 0 0;
  color: var(--final-ivory);
  font-family: "Inter", sans-serif;
  font-size: var(--size-54-54pt);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -.025em;
  text-align: center;
  text-transform: uppercase;
}

.final-contact__partners {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: end;
  gap: clamp(2rem, 5vw, 6rem);
}

.final-contact__partner {
  display: block;
  height: auto;
}

.final-contact__partner--left {
  justify-self: start;
  width: clamp(9rem, 16vw, 18rem);
}

.final-contact__partner--center {
  justify-self: center;
  width: clamp(5.5rem, 9vw, 9.5rem);
}

.final-contact__partner--right {
  justify-self: end;
  width: clamp(7.5rem, 12vw, 13rem);
}

@media (max-width: 760px) {
  .final-contact {
    min-height: 46rem;
  }

  .final-contact__inner {
    padding-block: 4rem 2.8rem;
  }

  .final-contact__brand {
    margin-top: 3.5rem;
  }

  .final-contact__brand-logo {
    width: min(34rem, 94vw);
  }

  .final-contact__partners {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.25rem;
  }

  .final-contact__partner--left,
  .final-contact__partner--center,
  .final-contact__partner--right {
    justify-self: center;
    max-width: 100%;
  }
}

@media (max-width: 480px) {
  .final-contact__address {
    letter-spacing: -.04em;
  }

  .final-contact__partners {
    align-items: center;
  }
}

.suites-page-root{color-scheme:light;background:#c6d8e0}.suites-page-body{margin:0;min-width:320px;background:#c6d8e0;color:#07344b;font-family:Inter,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.suites-page-hero.suites-section{min-height:100svh;padding:0;background:#c6d8e0;display:grid;grid-template-rows:auto 1fr}.suites-page-nav{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:clamp(1rem,2.2vw,2.25rem);width:100%;padding:var(--hero-edge);padding-bottom:0}.suites-page-nav__link{width:fit-content;color:#0a040a;font-family:Inter,sans-serif;font-size:var(--hero-label-size);font-weight:400;line-height:1.15;letter-spacing:-.045em;text-decoration:none;transition:opacity .25s ease,transform .25s ease}.suites-page-nav__link--home{justify-self:start}.suites-page-nav__link--contact{justify-self:end}.suites-page-nav__link:hover{opacity:.62;transform:translateY(-2px)}.suites-page-nav__link:focus-visible,.suites-page-nav__brand:focus-visible{outline:2px solid #07344b;outline-offset:6px}.suites-page-nav__brand{display:block;justify-self:center;width:clamp(10rem,14.4vw,16rem);text-decoration:none}.suites-page-nav__brand img{display:block;width:100%;height:auto}.suites-page-hero__inner.suites-section__inner{width:min(100%,100rem);min-height:0;padding-inline:clamp(1.5rem,3.05vw,3.15rem);display:grid;align-items:start}.suites-page-hero__content.suites-section__header{align-self:start;padding-top:clamp(9.25rem,18.5vh,11.5rem);padding-bottom:clamp(5rem,10vh,8rem)}@media(max-width:760px){.suites-page-nav{gap:clamp(.55rem,2vw,1rem)}.suites-page-nav__brand{width:clamp(8.5rem,34vw,10rem)}.suites-page-hero__content.suites-section__header{padding-top:clamp(5.5rem,10vh,7rem)}}@media(max-width:430px){.suites-page-nav{padding-inline:1rem}.suites-page-nav__brand{width:7.5rem}.suites-page-nav__link{font-size:.875rem;letter-spacing:-.035em}.suites-page-hero__inner.suites-section__inner{padding-inline:1rem}}

/* 07. Página interna SUITES — detalle de tipologías */
.suite-detail{position:relative;overflow:hidden;background:var(--suites-bg);color:var(--suites-ink);padding-block:clamp(2.5rem,4vw,4.75rem) clamp(6.5rem,10vw,11rem)}.suite-detail--last{padding-bottom:clamp(5.5rem,8vw,9rem)}.suite-detail__layout{display:grid;align-items:start;gap:clamp(1.75rem,3vw,3.75rem);width:100%}.suite-detail--left .suite-detail__layout{grid-template-columns:clamp(19.5rem,22.75vw,25rem) minmax(0,1fr);padding-right:clamp(1.5rem,5vw,6rem)}.suite-detail--right .suite-detail__layout{grid-template-columns:minmax(0,1fr) clamp(19.5rem,22.75vw,25rem);padding-left:clamp(1.5rem,5vw,6rem)}.suite-detail__meta{min-width:0;padding-top:clamp(.7rem,1vw,1.35rem)}.suite-detail__badge{position:relative;isolation:isolate;display:flex;align-items:center;gap:clamp(.55rem,.95vw,1rem);width:100%;min-height:clamp(3.7rem,4.2vw,4.8rem);overflow:hidden;color:var(--suites-bg);padding-block:.36em}.suite-detail__badge:before{content:"";position:absolute;inset:0;z-index:-1;background:var(--suites-ink);transform-origin:var(--suite-detail-origin,left)}.suite-detail--left .suite-detail__badge{padding-left:clamp(2.2rem,4.5vw,5.35rem);padding-right:clamp(.9rem,1.4vw,1.5rem)}.suite-detail--right .suite-detail__badge{padding-left:clamp(1rem,1.25vw,1.5rem);padding-right:clamp(1rem,2vw,2.3rem)}.suite-detail--left{--suite-detail-origin:left}.suite-detail--right{--suite-detail-origin:right}.suite-detail__type,.suite-detail__area{position:relative;margin:0;color:currentColor;font-family:"Accia Piano",serif;font-weight:300;line-height:1;letter-spacing:-.042em;text-transform:uppercase;white-space:nowrap}.suite-detail__type{font-size:var(--size-71pt)}.suite-detail__area{align-self:center;padding-bottom:.18em;font-size:var(--size-45-3823pt)}.suite-detail__type>span,.suite-detail__area>span{display:block}.suite-detail__area i{position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform-origin:left}.suite-detail__features{margin:clamp(1.25rem,1.75vw,1.9rem) 0 0;padding:0;list-style:none;color:#0a040a;font-family:"Inter",sans-serif;font-size:var(--size-27pt);font-weight:400;line-height:1.14;letter-spacing:-.032em;text-transform:uppercase}.suite-detail--left .suite-detail__features{padding-left:clamp(2.2rem,4.5vw,5.35rem);padding-right:.75rem}.suite-detail--right .suite-detail__features{padding-left:clamp(1rem,1.25vw,1.5rem);padding-right:clamp(1rem,2vw,2.3rem)}.suite-detail__features li{position:relative;padding-left:.72em}.suite-detail__features li:before{content:"•";position:absolute;left:0;top:0}.suite-detail__plan{position:relative;min-width:0;margin:0}.suite-detail__plan-reveal{position:relative;z-index:1;overflow:hidden}.suite-detail__plan img{display:block;width:100%;height:auto;max-width:none}.suite-detail__guide{position:absolute;z-index:3;display:block;background:rgb(7 52 75/.52);opacity:0;pointer-events:none}.suite-detail__guide--top,.suite-detail__guide--bottom{left:0;width:100%;height:1px;transform-origin:var(--suite-detail-origin,left)}.suite-detail__guide--top{top:0}.suite-detail__guide--bottom{bottom:0}.suite-detail__guide--left,.suite-detail__guide--right{top:0;width:1px;height:100%;transform-origin:top}.suite-detail__guide--left{left:0}.suite-detail__guide--right{right:0}@media(max-width:900px){.suite-detail{padding-block:clamp(3.5rem,7vw,5rem) clamp(5.5rem,10vw,7.5rem)}.suite-detail--left .suite-detail__layout,.suite-detail--right .suite-detail__layout{grid-template-columns:1fr;gap:clamp(2rem,5vw,3rem);padding-inline:clamp(1.25rem,4vw,2.5rem)}.suite-detail--right .suite-detail__meta{order:0}.suite-detail--right .suite-detail__plan{order:1}.suite-detail__meta{width:min(100%,34rem);margin-inline:auto;padding-top:0}.suite-detail--left .suite-detail__badge,.suite-detail--right .suite-detail__badge{padding-inline:clamp(1.25rem,5vw,2.5rem)}.suite-detail--left .suite-detail__features,.suite-detail--right .suite-detail__features{padding-inline:clamp(1.25rem,5vw,2.5rem)}.suite-detail__plan{width:min(100%,62rem);margin-inline:auto}}@media(max-width:480px){.suite-detail{padding-block:3.25rem 5rem}.suite-detail--left .suite-detail__layout,.suite-detail--right .suite-detail__layout{padding-inline:1rem}.suite-detail__badge{min-height:3.55rem;gap:.55rem}.suite-detail--left .suite-detail__badge,.suite-detail--right .suite-detail__badge,.suite-detail--left .suite-detail__features,.suite-detail--right .suite-detail__features{padding-inline:1rem}}
@media(max-width:440px){.suite-detail__features{font-size:clamp(.82rem,3.7vw,1rem);line-height:1.2}}

@media (min-width:901px){#tipo-3 .suite-detail__badge--tipo3{width:calc(100% + clamp(.75rem,1vw,1rem))}}

/* 08. Página interna CONTACTO — primera sección */
:root{--size-31-1pt:clamp(.94rem,1.38vw,1.30rem);--size-50-4pt:clamp(1.45rem,2.38vw,2.18rem);--contact-bg:#dbdbce;--contact-wine:#5a0000;--contact-wine-muted:#5a000099;--contact-ink:#0a040a}.contact-page-root{color-scheme:light;background:var(--contact-bg)}.contact-page-body{margin:0;min-width:320px;background:var(--contact-bg);color:var(--contact-ink);font-family:"Inter",sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.contact-page{min-height:100svh;background:var(--contact-bg);overflow:hidden}.contact-page-nav .suites-page-nav__link:focus-visible,.contact-page-nav .suites-page-nav__brand:focus-visible{outline-color:var(--contact-wine)}.contact-page__inner{width:min(100%,96rem);margin-inline:auto;padding:clamp(8.5rem,14.5vh,10rem) var(--hero-edge) clamp(4rem,7vw,6rem)}.contact-page__headline{display:grid;justify-items:center}.contact-page__title{width:min(100%,89rem);margin:0;color:var(--contact-wine);font-family:"Accia Piano",serif;font-size:var(--size-103-76pt);font-weight:200;line-height:.94;letter-spacing:-.045em;text-align:center;text-transform:uppercase;white-space:nowrap}.contact-page__title-piece{display:inline-block;overflow:hidden;vertical-align:bottom}.contact-page__title-piece>span{display:inline-block}.contact-page__connector{position:relative;display:inline-block;margin-inline:.13em .10em;font-size:.57em;font-weight:200;line-height:.94;letter-spacing:-.02em;vertical-align:.58em}.contact-page__connector>span{display:inline-block}.contact-page__connector i{position:absolute;left:0;right:0;bottom:-.13em;height:1px;background:currentColor;transform-origin:left center}.contact-page__content{display:grid;grid-template-columns:minmax(18rem,.82fr) minmax(34rem,1.42fr);align-items:end;gap:clamp(4rem,8vw,9rem);margin-top:clamp(8.5rem,15vh,12.5rem)}.contact-card{align-self:end;min-width:0}.contact-card__logo{display:block;width:clamp(14rem,21vw,20.5rem);max-width:100%;height:auto}.contact-card__details{margin-top:clamp(1.6rem,2.3vw,2.5rem);color:var(--contact-wine-muted);font-family:"Accia Piano",serif;text-transform:uppercase}.contact-card__label{margin:0;overflow:hidden;font-size:var(--size-31-1pt);font-weight:400;line-height:1.05;letter-spacing:-.025em}.contact-card__label>span,.contact-card__phone>span{display:inline-block}.contact-card__phone{display:inline-block;margin-top:clamp(.45rem,.65vw,.7rem);overflow:hidden;color:var(--contact-wine-muted);font-size:var(--size-50-4pt);font-weight:600;line-height:1;letter-spacing:-.035em;text-decoration:none}.contact-card__phone:hover{opacity:.72}.contact-form{align-self:end;width:100%;max-width:46.5rem;justify-self:end;color:var(--contact-ink);font-family:"Inter",sans-serif;font-size:var(--size-27pt);font-weight:400;line-height:1.15;text-transform:uppercase}.contact-form__row--split{display:grid;grid-template-columns:1.08fr 1fr;gap:clamp(2rem,3.2vw,3rem)}.contact-form__field{position:relative;display:grid;gap:clamp(1.25rem,2.2vw,2rem);margin:0 0 clamp(1.15rem,1.9vw,1.7rem)}.contact-form__label{display:inline-block;width:fit-content;letter-spacing:-.035em}.contact-form input,.contact-form textarea{width:100%;min-width:0;margin:0;padding:0 0 .35rem;border:0;outline:0;background:transparent;color:var(--contact-ink);font:inherit;line-height:1.25;text-transform:none;resize:none}.contact-form input{min-height:1.5rem}.contact-form textarea{min-height:clamp(3rem,4.5vw,4.5rem)}.contact-form__field--message{gap:clamp(.9rem,1.45vw,1.25rem)}.contact-form__line{position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--contact-ink);transform-origin:left center;transition:background-color .25s ease,transform .35s cubic-bezier(.16,1,.3,1)}.contact-form__field:focus-within .contact-form__line{background:var(--contact-wine);transform:scaleY(2)}.contact-form__submit{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:clamp(9.1rem,11vw,10.5rem);min-height:clamp(2.35rem,3.1vw,2.85rem);margin-top:clamp(.55rem,1vw,1rem);padding:.28em 1.5em;overflow:hidden;border:0;border-radius:0;background:var(--contact-wine);color:var(--contact-bg);font-family:"Inter",sans-serif;font-size:var(--size-27pt);font-weight:400;line-height:1;text-transform:uppercase;cursor:pointer;transition:transform .25s ease,opacity .25s ease}.contact-form__submit span{position:relative;z-index:1;display:inline-block}.contact-form__submit:hover{transform:translateY(-2px);opacity:.88}.contact-form__submit:focus-visible{outline:2px solid var(--contact-wine);outline-offset:5px}@media(max-width:980px){.contact-page__title{white-space:normal;text-wrap:balance}.contact-page__content{grid-template-columns:.78fr 1.22fr;gap:clamp(2.5rem,5vw,4rem);margin-top:clamp(6rem,10vh,8rem)}}@media(max-width:760px){.contact-page__inner{padding-top:clamp(4.5rem,8vh,6rem);padding-inline:clamp(1.25rem,5vw,2rem)}.contact-page__title{width:min(100%,38rem);line-height:.98}.contact-page__content{grid-template-columns:1fr;align-items:start;gap:clamp(4rem,9vw,5.5rem);margin-top:clamp(5rem,10vw,7rem)}.contact-card{display:grid;grid-template-columns:minmax(10rem,.8fr) minmax(12rem,1fr);align-items:end;gap:clamp(1.5rem,5vw,3rem)}.contact-card__logo{width:min(100%,15rem)}.contact-card__details{margin-top:0}}@media(max-width:540px){.contact-page__inner{padding-inline:1rem;padding-bottom:3.5rem}.contact-page__title{font-size:clamp(2.35rem,11vw,3rem)}.contact-page__connector{margin-inline:.10em .07em}.contact-card{grid-template-columns:1fr;gap:1.6rem}.contact-card__logo{width:min(68vw,14rem)}.contact-form__row--split{grid-template-columns:1fr;gap:0}.contact-form textarea{min-height:4rem}}

/* 08.1 CONTACTO — retícula final alineada al arte maestro */
:root{--contact-frame-width:min(86.35vw,104rem)}
@media (min-width:981px){
.contact-page__inner{width:100%;max-width:none;padding-inline:0}
.contact-page__headline,.contact-page__content{width:var(--contact-frame-width);margin-inline:auto}
.contact-page__title{width:100%;font-size:clamp(3rem,5.25vw,6.35rem)}
.contact-page__connector{font-size:.485em;vertical-align:.70em}
.contact-page__content{grid-template-columns:42% 51%;column-gap:7%;gap:7%}
.contact-card__logo{width:clamp(13rem,20.5vw,24.7rem)}
.contact-form{width:100%;max-width:none;justify-self:stretch}
.contact-form__row--split .contact-form__field{min-height:clamp(6rem,6.9vw,7.4rem);align-content:start}
}

/* 08.2 CONTACTO — banner de cierre / inversión */
:root{--size-133-37pt:clamp(2.65rem,6.63vw,8.01rem);--contact-banner-copy:#f4ecd6}.contact-investment{position:relative;isolation:isolate;width:100%;aspect-ratio:1920/1204.63;overflow:hidden;background:#5a0000;color:var(--contact-banner-copy)}.contact-investment__media{position:absolute;inset:0;z-index:-1;overflow:hidden;background:#5a0000}.contact-investment__media img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center center}.contact-investment__copy{position:absolute;inset:0;display:grid;justify-items:center;pointer-events:none}.contact-investment__title{position:absolute;top:23.2%;left:50%;width:min(78vw,76rem);margin:0;transform:translateX(-50%);color:var(--contact-banner-copy);font-family:"Accia Piano",serif;font-size:var(--size-133-37pt);font-weight:200;line-height:1.02;letter-spacing:-.05em;text-align:center;text-transform:uppercase;white-space:nowrap}.contact-investment__line{display:block;overflow:hidden}.contact-investment__line>span,.contact-investment__investment>span,.contact-investment__tu>span{display:inline-block}.contact-investment__line--two{overflow:visible}.contact-investment__tu{position:relative;display:inline-block;margin-right:.08em;font-size:.631em;line-height:1;letter-spacing:-.05em;transform:translateY(-.255em);vertical-align:baseline}.contact-investment__tu i{position:absolute;left:.06em;right:-.04em;bottom:-.14em;height:clamp(1px,.10vw,2px);background:currentColor;transform-origin:left center}.contact-investment__investment{display:inline-block}@media(max-width:760px){.contact-investment__title{top:22%;width:calc(100% - 2rem)}}@media(max-width:540px){.contact-investment{min-height:32rem;aspect-ratio:auto}.contact-investment__media img{object-position:50% 50%}.contact-investment__title{top:20%;width:calc(100% - 1.5rem);font-size:clamp(2.35rem,10.2vw,2.75rem);line-height:1.04}}

/* 08.3 CONTACTO — footer de aliados */
.contact-partners{--contact-partners-line:#5a0000;position:relative;width:100%;min-height:clamp(19rem,22.05vw,26.6rem);overflow:hidden;background:#dbdbce}.contact-partners__grid{position:absolute;inset:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center}.contact-partners__item{position:relative;display:flex;align-items:center;min-width:0;height:100%}.contact-partners__item--left{justify-content:flex-start;padding-left:clamp(2rem,3.55vw,4.3rem)}.contact-partners__item--center{justify-content:center}.contact-partners__item--right{justify-content:flex-end;padding-right:clamp(2rem,3.55vw,4.3rem)}.contact-partners__logo{display:block;height:auto;max-width:100%}.contact-partners__logo--soteco,.contact-partners__logo--urbano{width:clamp(15rem,18.4vw,22.2rem)}.contact-partners__logo--mgi{width:clamp(9.5rem,11.47vw,13.85rem)}.contact-partners__divider{position:absolute;top:31%;bottom:24%;width:1px;background:var(--contact-partners-line);transform-origin:center center}.contact-partners__divider--left,.contact-partners__divider--right{left:0}@media(max-width:760px){.contact-partners{min-height:0;overflow:visible}.contact-partners__grid{position:relative;inset:auto;grid-template-columns:1fr;padding:clamp(3.5rem,12vw,5rem) clamp(1.5rem,7vw,2.5rem)}.contact-partners__item{justify-content:center;min-height:clamp(8rem,35vw,10rem);padding-inline:0}.contact-partners__logo--soteco,.contact-partners__logo--urbano{width:min(76vw,22rem)}.contact-partners__logo--mgi{width:min(45vw,13rem)}.contact-partners__divider{top:0;bottom:auto;left:50%;width:min(72vw,20rem);height:1px;transform:translateX(-50%)}}
.whatsapp-float{position:fixed;right:clamp(1rem,2vw,1.75rem);bottom:calc(clamp(1rem,2vw,1.75rem) + env(safe-area-inset-bottom));z-index:80;display:inline-flex;align-items:center;justify-content:center;width:clamp(3.25rem,4vw,4rem);aspect-ratio:1;border-radius:999px;background:#25D366;color:#fff;box-shadow:0 .45rem 1.45rem rgb(0 0 0/.22);transition:transform .32s cubic-bezier(.16,1,.3,1),box-shadow .32s ease,bottom .48s cubic-bezier(.16,1,.3,1)}.whatsapp-float svg{width:56%;height:56%}.whatsapp-float:hover{transform:translateY(-3px) scale(1.035);box-shadow:0 .65rem 1.75rem rgb(0 0 0/.28)}.whatsapp-float:focus-visible{outline:2px solid currentColor;outline-offset:4px}.home-contact-bar{position:fixed;inset-inline:0;bottom:0;z-index:70;padding-bottom:env(safe-area-inset-bottom);background:#300000;color:#DBDBCE;border-top:1px solid rgb(219 219 206/.32);transform:translateY(110%);opacity:0;visibility:hidden;pointer-events:none;transition:transform .72s cubic-bezier(.16,1,.3,1),opacity .35s ease,visibility 0s linear .72s}.home-contact-bar.is-visible{transform:translateY(0);opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}.home-contact-bar__inner{width:min(100%,94rem);min-height:clamp(4.15rem,5vw,5.15rem);margin-inline:auto;padding:.65rem clamp(1.25rem,4vw,4rem);display:flex;align-items:center;justify-content:space-between;gap:clamp(1rem,3vw,3rem)}.home-contact-bar__message{margin:0;font-family:"Inter",sans-serif;font-size:clamp(.92rem,1.15vw,1.18rem);font-weight:400;line-height:1.2;letter-spacing:-.02em}.home-contact-bar__cta{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:2.55rem;padding:.7em 1.2em;border:1px solid #DBDBCE;color:#DBDBCE;font-family:"Inter",sans-serif;font-size:clamp(.85rem,1vw,1.03rem);font-weight:400;line-height:1;text-decoration:none;transition:background-color .25s ease,color .25s ease,transform .25s ease}.home-contact-bar__cta:hover{background:#DBDBCE;color:#300000;transform:translateY(-1px)}html.has-home-contact-bar .whatsapp-float{bottom:calc(clamp(5.85rem,7vw,7.15rem) + env(safe-area-inset-bottom))}@media(max-width:640px){.whatsapp-float{width:3.35rem;right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom))}.home-contact-bar__inner{min-height:5.2rem;padding:.7rem 1rem;gap:.8rem}.home-contact-bar__message{max-width:13.5rem;font-size:.82rem;line-height:1.22}.home-contact-bar__cta{min-height:2.35rem;padding-inline:.9rem;font-size:.78rem}html.has-home-contact-bar .whatsapp-float{bottom:calc(6.35rem + env(safe-area-inset-bottom))}}@media(prefers-reduced-motion:reduce){.whatsapp-float,.home-contact-bar,.home-contact-bar__cta{transition:none!important}}
.home-contact-bar-clearance{height:calc(var(--home-contact-bar-height,5.15rem) + clamp(.65rem,1vw,.85rem));background:#300000}@media(max-width:640px){.home-contact-bar-clearance{height:calc(var(--home-contact-bar-height,5.2rem) + .75rem)}}


/* =========================================================
   HOME — WhatsApp visible desde 20% de scroll / v27
   Solo afecta al botón de la Home. Suites y Contacto
   conservan el botón visible desde el inicio.
   ========================================================= */
.whatsapp-float--home {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(.85rem) scale(.94);
  transition:
    opacity .35s ease,
    visibility 0s linear .35s,
    transform .55s cubic-bezier(.16,1,.3,1),
    box-shadow .32s ease,
    bottom .48s cubic-bezier(.16,1,.3,1);
}
.whatsapp-float--home.is-scroll-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0) scale(1);
  transition-delay: 0s;
}
.whatsapp-float--home.is-scroll-visible:hover {
  transform: translateY(-3px) scale(1.035);
}
@media (prefers-reduced-motion: reduce) {
  .whatsapp-float--home {
    transition: none !important;
  }
}
