/* TARGET Scale · ajustes sobre el espejo y las plantillas nuevas. */
:root {
  --target-paper: #f4f4f0;
  --target-night: #11191c;
  --target-aqua: #24ddef;
  --target-title: clamp(2.4rem, 5.6vw, 5.25rem);
  --target-heading: clamp(1.65rem, 3.1vw, 3rem);
  --target-space: clamp(3.5rem, 7.5vw, 7rem);
}

:where(main, footer, #menu-principal) :is(a, button, summary):focus-visible,
header:has(.tsn-menu-toggle) :is(a, button):focus-visible {
  outline: 2px solid #078491;
  outline-offset: 4px;
}

/* Los controles mantienen contraste sobre video, fondos claros y fondos oscuros. */
header:has(.tsn-menu-toggle) {
  background-color: rgba(244, 244, 240, .96);
  box-shadow: inset 0 -1px rgb(16 27 31 / .08);
}

header:has(.tsn-menu-toggle.text-white),
[data-hdr].hdr-scrolled.hdr-dark {
  background-color: rgba(17, 25, 28, .96);
  box-shadow: inset 0 -1px rgb(255 255 255 / .12);
}

header:has(.tsn-menu-toggle) .tsn-menu-toggle {
  min-width: 44px;
  padding-inline: .75rem;
  border: 1px solid #31464e;
  border-radius: 2rem;
  color: white;
  background: var(--target-night);
  margin-right: 0;
}

header:has(.tsn-menu-toggle) button.bg-accent {
  min-height: 44px;
  color: #0e242a;
  border-radius: 2rem;
}

html:has(#menu-principal[aria-hidden="false"]) header:has(.tsn-menu-toggle) {
  background-color: var(--target-night);
  box-shadow: inset 0 -1px rgb(255 255 255 / .16);
}

html:has(#menu-principal[aria-hidden="false"]) [data-hdr] {
  background: var(--target-night) !important;
}

.trg-mm-host .trg-mm {
  border-radius: 0 0 .9rem .9rem;
  background: var(--target-night);
  overflow: hidden;
}

.trg-mm-host .trg-mm-head { font-size: .625rem; }
.trg-mm-host .trg-mm-foot span { color: #a2b1b5; }
#menu-principal .trg-mob-svc b { font-size: .67rem; letter-spacing: .11em; }
#menu-principal .trg-mob-svc a { padding-block: .5rem; line-height: 1.35; }
#menu-principal .trg-mob-svc a:focus-visible { color: var(--target-aqua); }

/* Portada original. El escenario y las capas animadas conservan sus recorridos. */
[class*="Hero-module"][class*="__intro"] h1 {
  font-size: clamp(3.1rem, 6.45vw, 7rem);
  letter-spacing: -.045em;
  line-height: 1.02;
  text-transform: none;
}

[class*="Hero-module"][class*="__introCopy"] {
  top: max(48%, 20rem);
  width: min(36vw, 30rem);
  font-size: clamp(1rem, 1.3vw, 1.25rem);
  line-height: 1.55;
}

[class*="Hero-module"][class*="__introLink"] {
  top: calc(max(48%, 20rem) + 7rem);
  bottom: auto;
  left: clamp(74px, 12vw, 230px);
  font-size: clamp(.9rem, 1.1vw, 1.05rem);
}

[class*="Hero-module"][class*="__finaleTitle"] {
  font-size: clamp(2.7rem, 6.8vw, 7rem);
  letter-spacing: -.055em;
}

[class*="IdeasSection-module"][class*="__title"] {
  font-size: clamp(3.1rem, 7.7vw, 7.25rem);
}

[class*="PruebaSocial-module"][class*="__title"] { font-size: var(--target-heading); }

/* Categorías. El texto puede encogerse dentro de la cuadrícula junto al gráfico. */
[class*="page-module"][class*="__heroGrid"] > *,
[class*="VacancyCultureExperience-module"][class*="__scene"] > * { min-width: 0; }

[class*="page-module"][class*="__heroCopy"] h1 {
  max-width: 12ch;
  font-size: var(--target-title);
  line-height: .98;
  letter-spacing: -.055em;
  overflow-wrap: anywhere;
  text-wrap: balance;
}

[class*="page-module"][class*="__heroCopy"] :is([class*="__eyebrow"], p) {
  white-space: normal;
  overflow-wrap: anywhere;
}

[class*="page-module"][class*="__heroCopy"] [class*="__eyebrow"] { line-height: 1.5; }
[class*="page-module"][class*="__heroCopy"] [class*="__intro"] { color: #c3d0d3; }

[class*="page-module"][class*="__thesis"],
[class*="page-module"][class$="__scope"] {
  padding-block: var(--target-space);
}

[class*="page-module"][class*="__thesis"] h2,
[class*="page-module"][class*="__scopeTitle"] h2,
[class*="page-module"][class*="__cta"] h2,
[class*="ServiceLandingMotion-module"][class*="__copyPanel"] h2 {
  max-width: 21ch;
  font-size: clamp(1.75rem, 4.4vw, 3.85rem);
  line-height: 1.05;
  letter-spacing: -.045em;
  text-wrap: balance;
}

[class*="ServiceLandingMotion-module"][class*="__processPanel"] h2 {
  font-size: clamp(2.35rem, 6vw, 5.5rem);
  line-height: .98;
  text-transform: none;
}

#trg-servicios-cat { padding-block: var(--target-space) !important; }

/* Growth Partner, servicios y confirmación. */
:is(.gp, .svc--landing, .inner) .h-lg {
  font-size: var(--target-heading);
  text-wrap: balance;
}

:is(.gp, .svc--landing) .sec { padding-block: var(--target-space); }
:is(.gp, .svc--landing) .sec--tight { padding-block: clamp(3rem, 6vw, 5.5rem); }

:is(.gp, .svc--landing, .inner) main .btn {
  height: auto;
  min-height: 48px;
  max-width: 100%;
  padding-block: .72rem;
  white-space: normal;
  overflow-wrap: anywhere;
  line-height: 1.3;
  text-align: start;
}

:is(.gp, .svc--landing, .inner) main .btn > * { flex-shrink: 0; }
:is(.gp, .svc--landing) main .label { color: #087a85; }
:is(.gp, .svc--landing) main .on-dark .label { color: var(--target-aqua); }

.gp .hero-media::after {
  background: linear-gradient(0deg, #091518f2 4%, #0a171bd4 33%, #101a1b4a 65%, #10171999 100%);
}

.gp .hero h1 { font-size: clamp(2.65rem, 5.6vw, 5rem); }
.gp .hero-row { margin-top: clamp(1.15rem, 2.4vw, 2rem); }
.gp .hero-in { padding-bottom: clamp(1.75rem, 5vw, 4rem); }
.gp .cube-sec { height: 230vh; }
.gp .sx-name { text-wrap: pretty; }
.gp .form { border-radius: .75rem; }
.gp .form .btn { width: 100%; }
.gp .hero-chips { background: rgb(10 21 25 / .8); }

.svc--landing .svc-hero-in {
  min-height: clamp(25rem, 38vw, 31rem);
  padding-bottom: clamp(2.5rem, 5vw, 4.75rem);
}

.svc--landing .svc-name {
  font-size: clamp(2.15rem, 4.6vw, 4.25rem);
  overflow-wrap: anywhere;
  text-wrap: balance;
}

.svc--landing .svc-name--long { font-size: clamp(1.95rem, 3.6vw, 3.4rem); }
.svc--landing .svc-h1 { max-width: 43ch; }
.svc--landing .svc-hero-img img { object-position: center; }
.svc--landing .steps-wrap .step:not(.is-act) { opacity: .74; }
.svc--landing .faq-list summary { line-height: 1.4; }
.svc--landing .cierre .row { align-items: center; }
.inner .page-hero--full { min-height: 65svh; padding-block: clamp(8rem, 17vh, 11rem) 4rem; }
.inner .page-hero--full .h-xl { font-size: clamp(2.4rem, 5vw, 4.75rem); }

/* Páginas editoriales. */
[class*="BlogExperience-module"][class*="__title"] {
  font-size: clamp(3rem, 7.4vw, 7rem);
  line-height: .9;
}

[class*="page-module"][class*="__article"] header[class*="__hero"] {
  padding-block: clamp(8rem, 12vw, 10.75rem) clamp(2.25rem, 5vw, 4rem);
}

[class*="page-module"][class*="__article"] h1[class*="__title"] {
  max-width: 23ch;
  font-size: clamp(2.05rem, 4.5vw, 4.5rem);
  letter-spacing: -.043em;
  line-height: 1.04;
  text-wrap: balance;
}

[class*="page-module"][class*="__article"] article :is(h2, .elementor-heading-title) {
  font-size: var(--target-heading);
  line-height: 1.12;
  letter-spacing: -.035em;
  text-wrap: pretty;
}

main:has(#fases) > section:first-of-type h1 {
  text-transform: none;
  max-width: 23ch;
  font-size: clamp(1.95rem, 4.6vw, 4.5rem);
  line-height: 1.04;
  text-wrap: balance;
}

main:has(#fases) > section:first-of-type { padding-block: var(--target-space); }

main:has(.tsn-method-step, #fases, [class*="VacancyCultureExperience-module"]) .tsn-marquee-track {
  font-size: clamp(1.8rem, 4vw, 4.2rem);
}

main:has(.tsn-method-step, #fases, [class*="VacancyCultureExperience-module"]) .tsn-marquee-track span {
  font-size: inherit;
}

[class*="ManifestoExperience-module"][class*="__heroThesis"] { margin-top: clamp(3rem, 10vh, 6rem); }
[class*="ManifestoExperience-module"][class*="__heroIntro"] { margin-top: clamp(2.25rem, 7vh, 5rem); }
[class*="ManifestoExperience-module"][class*="__heroThesis"] h1 {
  font-size: clamp(3.05rem, 9vw, 8rem);
  line-height: .87;
}

[class*="ManifestoExperience-module"][class*="__belong"] h2,
[class*="ManifestoExperience-module"][class*="__final"] h2 {
  font-size: clamp(2.45rem, 7vw, 6.5rem);
  line-height: .93;
  overflow-wrap: anywhere;
}

main:has([class*="VacancyCultureExperience-module"]) > section:nth-of-type(2) h2,
[class*="VacancyCultureExperience-module"][class*="__copy"] > h2 {
  max-width: 14ch;
  font-size: clamp(2.05rem, 5vw, 4.65rem);
  line-height: .99;
  letter-spacing: -.045em;
  overflow-wrap: anywhere;
  text-wrap: balance;
}

main:has([class*="VacancyCultureExperience-module"]) > section:first-of-type { padding-block: var(--target-space); }

main:has(#informacion, #uso, #rastreo) > section:first-of-type {
  min-height: 0;
  padding-block: clamp(8rem, 12vw, 10rem) var(--target-space);
}

main:has(#informacion, #uso, #rastreo) > section:first-of-type h1 {
  font-size: var(--target-title);
  line-height: .98;
  max-width: 17ch;
  text-wrap: balance;
}

main:has(#informacion, #uso, #rastreo) > section:last-of-type h2 {
  font-size: var(--target-heading);
  line-height: 1.05;
  max-width: 20ch;
}

@media (max-width: 1023px) {
  [class*="page-module"][class*="__heroGrid"] { grid-template-columns: minmax(0, 1fr); }
  [class*="page-module"][class*="__heroCopy"] h1 { max-width: min(100%, 15ch); }
  #menu-principal .trg-mob-svc { padding-inline: clamp(2rem, 14vw, 5.5rem) 1rem; }
}

@media (min-width: 1024px) {
  [class*="Hero-module"][class*="__introLink"] {
    top: calc(clamp(132px, 22svh, 340px) + clamp(5.2rem, 10.65vw, 11.55rem) + 3.15rem);
  }
}

@media (max-width: 767px) {
  header:has(.tsn-menu-toggle) .tsn-menu-toggle { font-size: .6875rem; }

  [class*="Hero-module"][class*="__intro"] h1 {
    font-size: clamp(2rem, 10.4vw, 3.7rem);
    line-height: 1.02;
  }

  [class*="Hero-module"][class*="__introBreak"] { display: inline; }
  [class*="Hero-module"][class*="__introLineTwo"] { justify-content: flex-start; padding-left: 1.04em; }

  [class*="Hero-module"][class*="__introCopy"] {
    top: clamp(13rem, 29svh, 16rem);
    left: 1.25rem;
    width: min(83vw, 24rem);
    max-width: 34ch;
    font-size: .9375rem;
  }

  [class*="Hero-module"][class*="__introLink"] {
    top: calc(clamp(13rem, 29svh, 16rem) + 6.7rem);
    left: 1.25rem;
  }

  [class*="Hero-module"][class*="__finaleTitle"] { font-size: clamp(2.1rem, 8.9vw, 3.65rem); }

  .gp .hero-in { padding-bottom: 3.65rem; }
  .gp .cube-sec { height: 185vh; }
  .gp .cube-stage { padding-top: 3rem; }
  .gp .cube-caption .row { min-height: 0; }
  .gp:not(:has([data-hdr].hdr-scrolled)) .wa { bottom: 4.6rem; }
  :is(.gp, .svc--landing, .inner) .wa {
    width: 46px;
    height: 46px;
    right: max(.75rem, env(safe-area-inset-right));
  }

  .svc--landing .svc-hero { padding-top: 94px; }
  .svc--landing .svc-hero-in { min-height: 0; padding-block: 1.65rem 2.65rem; }
  .svc--landing .svc-hero > .svc-hero-img { height: clamp(10rem, 30svh, 17rem); min-height: 0; }
  .svc--landing .steps-wrap .step { grid-template-columns: 2rem minmax(0, 1fr); }
  .svc--landing .steps-wrap .step:not(.is-act) { opacity: 1; }

  [class*="VacancyCultureExperience-module"][class*="__copy"] > h2 { margin-top: 0; }

  main:has(.tsn-method-step) .tsn-orbe-stage { height: 28svh; }
  main:has(.tsn-method-step) .tsn-orbe { width: min(12rem, 50vw); }
  .tsn-method-step { min-height: 58svh; padding-top: 1.5rem; }
  .tsn-method-step > div { position: sticky; top: calc(6.6rem + 28svh); }

  [class*="BlogExperience-module"][class*="__title"] {
    font-size: clamp(2.25rem, 12.2vw, 4.5rem);
  }

  [class*="BlogExperience-module"][class*="__thesis"] p { line-height: 1.4; }
}

@media (min-width: 768px) and (max-width: 1100px) {
  [class*="Hero-module"][class*="__introCopy"] { left: 3rem; }
  [class*="Hero-module"][class*="__introLink"] { left: 3rem; }
}

@media (max-width: 767px) and (min-height: 640px) {
  [class*="Hero-module"]:is([class$="__mediaStart"], [class$="__media"]) { top: 65%; }
  [class*="Hero-module"][class*="__scrollLabel"] { bottom: 37%; }
}

@media (min-width: 1024px) and (min-height: 760px) {
  [class*="Hero-module"]:is([class$="__mediaStart"], [class$="__media"]) { top: 75%; }
  [class*="Hero-module"][class*="__scrollLabel"] { bottom: 27%; }
}

@media (max-width: 359px) {
  [class*="Hero-module"][class*="__introLink"] {
    top: calc(clamp(13rem, 29svh, 16rem) + 8rem);
  }

  [class*="page-module"][class*="__heroCopy"] h1 { font-size: 2rem; }
  header:has(.tsn-menu-toggle) .tsn-menu-toggle { padding-inline: .5rem; }
}

/* Portada: la cinta acompaña la transición hacia el Método. */
header:has(.tsn-menu-toggle.text-white) :is(a, button).text-ink {
  color: #edf7f7;
}

header:has(.tsn-menu-toggle.text-white) :is(a, button).text-ink:hover {
  color: var(--target-aqua);
}

main:has(> [class*="MetodoFinale-module"]) > [data-nav-dark]:has(> .tsn-marquee-track) {
  padding-block: clamp(.55rem, 1.1vw, .9rem);
  background: #101719;
  border-color: #ffffff23;
}

main:has(> [class*="MetodoFinale-module"]) > [data-nav-dark] .tsn-marquee-track {
  color: #dce8e8;
  font-size: clamp(1.75rem, 3.4vw, 3.25rem);
  line-height: 1.08;
}

main:has(> [class*="MetodoFinale-module"]) > [data-nav-dark] .tsn-marquee-track .display,
main:has(> [class*="MetodoFinale-module"]) > [data-nav-dark] .tsn-marquee-track .tsn-star {
  font-size: inherit;
}

[class*="Hero-module"][class*="__introLink"] {
  border-bottom-color: #0a8792;
  color: #193136;
}

[class*="MetodoFinale-module"][class*="__section"]:not([class*="__reduced"]) {
  height: 178svh;
}

[class*="MetodoFinale-module"][class*="__stage"] {
  background:
    linear-gradient(110deg, #101719 12%, #101719c9 61%, #101719b8),
    url("/media/metodo-poster-v1.webp") center / cover;
}

[class*="MetodoFinale-module"][class*="__title"] {
  max-width: 16ch;
  font-size: clamp(1.85rem, 3.5vw, 3.55rem);
  line-height: 1.01;
  text-transform: none;
  text-wrap: balance;
}

[class*="MetodoFinale-module"][class*="__sentences"] p {
  font-size: clamp(.98rem, 1.3vw, 1.2rem);
  line-height: 1.48;
}

/* Growth Partner y landings: escala común, contraste y ritmo de lectura. */
:is(.gp, .svc--landing) {
  --target-section-space: clamp(3.25rem, 6.4vw, 5.75rem);
  --target-section-gap: clamp(1.6rem, 4.7vw, 4.75rem);
}

:is(.gp, .svc--landing) .sec { padding-block: var(--target-section-space); }
:is(.gp, .svc--landing) .row { gap: var(--target-section-gap); }
:is(.gp, .svc--landing) .row-l { gap: .8rem; }
:is(.gp, .svc--landing) .row-r { gap: 1.05rem; }
:is(.gp, .svc--landing) .body-lg { max-width: 60ch; }
:is(.gp, .svc--landing) .sec--tight { padding-block: clamp(2.7rem, 5vw, 4.75rem); }

.gp .hero { min-height: clamp(39rem, 86svh, 51rem); }
.gp .hero h1 { font-size: clamp(2.4rem, 5vw, 4.5rem); }
.gp .hero-row p { max-width: 51ch; line-height: 1.58; }
.gp .hero-chips-track { padding-block: .65rem; }
.gp .hero-chips a { padding-block: .38rem; }
.gp #somos .row + .row {
  margin-top: clamp(1.9rem, 4vw, 3.6rem);
  padding-top: clamp(1.9rem, 4vw, 3.6rem);
  border-top: 1px solid #d6dedc;
}

.gp .cube-sec {
  height: 205svh;
  background: radial-gradient(ellipse at 50% 44%, #193238 0%, #13191b 52%, #101719 100%);
}

.gp .cube-caption { padding-bottom: clamp(1.8rem, 5vh, 3.75rem); }
.gp .svc-head { margin-bottom: clamp(1.2rem, 3vw, 2.25rem); }
.gp .sx { margin-top: clamp(1.5rem, 3vw, 2.75rem); }
.gp .sx-cat { padding-block: clamp(1.4rem, 3vw, 2.5rem); }
.gp .sx-row { padding-block: .95rem; }
.gp .sx-go { border-color: #a7b6b7; }
.gp .metodo-name { font-size: clamp(2rem, 5.2vw, 4.6rem); }
.gp .review { border-radius: .85rem; padding: clamp(1.15rem, 2vw, 1.6rem); }

.svc--landing .svc-hero {
  background: radial-gradient(ellipse at 76% 40%, #172b30 0%, #101719 55%, #101517 100%);
}

.svc--landing .svc-hero-in { justify-content: center; }
.svc--landing .svc-hero .crumbs ol { margin-bottom: clamp(1.1rem, 2.8vw, 2rem); }
.svc--landing .svc-name { margin-block: .65rem 1rem; }
.svc--landing .svc-h1 { color: #dce6e7; line-height: 1.52; }

.svc--landing .svc-hero > .svc-hero-img {
  border: 1px solid #c0edf02e;
  border-radius: clamp(.85rem, 1.7vw, 1.5rem);
}

.svc--landing .sec--intro { padding-bottom: clamp(.5rem, 2vw, 1.7rem); }
.svc--landing :is(.pains, .bens, .cases, .steps-wrap, .trust) {
  margin-top: clamp(1.9rem, 4.5vw, 3.65rem);
}

.svc--landing .pain:nth-child(n) { margin-top: 0; }
.svc--landing .pain-n { color: #137782; }
.svc--landing .pain h3 { margin-top: .85rem; }
.svc--landing .steps-wrap .step {
  gap: clamp(.9rem, 3vw, 2.4rem);
  padding-block: clamp(1.35rem, 2.8vw, 2.15rem);
}

.svc--landing .step p { line-height: 1.66; }
.svc--landing .steps-num { font-size: clamp(3.6rem, 8vw, 7.25rem); }

.svc--landing .case {
  padding: clamp(1.3rem, 3.1vw, 2.65rem);
  border: 1px solid #c9d6d5;
  border-radius: .9rem;
  background: #fafbf8;
}

.svc--landing .case-tag.real { background: #d6f4f2; color: #12484e; }
.svc--landing .ticker { background: #dcefed; color: #14373d; padding-block: .9rem; }
.svc--landing .ticker b { color: #0a6570; }

:is(.gp, .svc--landing) .contact .form {
  background: #f8f9f6;
  border-radius: 1rem;
}

.svc--landing .faq-list summary:after { color: #0a7782; }

@media (prefers-reduced-motion: no-preference) {
  :is(.gp, .svc--landing) .rv {
    transition-duration: .54s;
  }

  :is(.gp, .svc--landing) .rv:not(.in) {
    opacity: .38;
    transform: translateY(14px);
  }

  :is(.gp, .svc--landing) .split-ready .sw-i { transition-duration: .62s; }
  .svc--landing .img-reveal { transition-duration: .85s; transition-delay: .07s; }
}

@media (min-width: 821px) {
  .svc--landing .svc-hero > .svc-hero-img { top: 128px; bottom: 2.2rem; }
  .svc--landing .svc-hero-in { padding-bottom: 4.6rem; }
}

@media (max-width: 820px) {
  .svc--landing .svc-hero { padding-top: 110px; }
  .svc--landing .svc-hero > .svc-hero-img {
    width: calc(100% - 2 * var(--gut));
    height: clamp(10rem, 29svh, 18rem);
    margin-inline: auto;
  }
}

@media (max-width: 767px) {
  .gp .hero { min-height: max(38.5rem, 86svh); }
  .gp .hero-in { padding-top: 8rem; padding-bottom: 2.75rem; }
  .gp .cube-sec { height: 168svh; }
  .gp .cube-caption .row { gap: .8rem; }
  .gp .hero-actions { gap: .6rem; }
  .gp:not(:has([data-hdr].hdr-scrolled)) .wa { bottom: .9rem; }

  .svc--landing .svc-hero-in { padding-block: 1.3rem 2.35rem; }
  .svc--landing .svc-hero .crumbs ol { margin-bottom: 1.05rem; }
  .svc--landing .svc-name { margin-bottom: .7rem; }
  .svc--landing .steps-wrap .step { gap: .7rem; }
}

/* El acceso de escritorio insertado por el puente no hereda el estado animado
   que tenía Servicios en el momento de clonarlo. */
header:not([data-hdr]) .trg-mm-host + li:has(> a[href="/growth-partner/"]) {
  opacity: 1 !important;
  transform: none !important;
  pointer-events: auto !important;
}

header:not([data-hdr]) .trg-mm-host + li > a[href="/growth-partner/"] {
  color: #152326;
}

header:not([data-hdr]):has(.tsn-menu-toggle.text-white) .trg-mm-host + li > a[href="/growth-partner/"] {
  color: #edf7f7;
}

header:not([data-hdr]) .trg-mm-host + li > a[href="/growth-partner/"]:hover {
  color: #087884;
}

header:not([data-hdr]):has(.tsn-menu-toggle.text-white) .trg-mm-host + li > a[href="/growth-partner/"]:hover {
  color: var(--target-aqua);
}

@media (min-width: 1024px) {
  .trg-mm-host .trg-mm { width: min(820px, 77vw); }
  .trg-mm-host .trg-mm-col { padding: .9rem .95rem 1rem; }
  .trg-mm-host .trg-mm-link { padding-block: .5rem; }
}

@media (min-width: 1024px) and (max-width: 1159px) {
  .trg-mm-host .trg-mm { left: calc(50% + 2.5rem); }
}

@media (min-width: 1024px) and (min-height: 760px) {
  [class*="Hero-module"][class$="__intro"] {
    --target-intro-top: clamp(8rem, 19svh, 17rem);
    padding-top: var(--target-intro-top);
  }

  [class*="Hero-module"][class$="__intro"] h1 {
    font-size: clamp(3.1rem, 5.9vw, 6.25rem);
  }

  [class*="Hero-module"][class$="__introLink"] {
    top: calc(var(--target-intro-top) + clamp(5.2rem, 9.75vw, 10.32rem) + 3.15rem);
  }

  [class*="Hero-module"]:is([class$="__mediaStart"], [class$="__media"]) { top: 66%; }
  [class*="Hero-module"][class$="__scrollLabel"] { bottom: 36%; }
}

.gp .stat b { font-size: clamp(2.15rem, 3.6vw, 3.25rem); }

.svc--landing .svc-name { font-size: clamp(2.05rem, 4.1vw, 3.75rem); }
.svc--landing .svc-name--long { font-size: clamp(1.9rem, 3.3vw, 3.1rem); }
.svc--landing .steps-num { font-size: clamp(3rem, 6.2vw, 5.25rem); }
.svc--landing .marquee-intro { margin-top: clamp(2rem, 4.4vw, 4.25rem); }

@media (max-width: 767px) {
  :is(.gp, .svc--landing) { --target-section-space: 3rem; }
  .gp .hero { min-height: clamp(36rem, 79svh, 43rem); }
  .svc--landing .svc-hero > .svc-hero-img { height: clamp(9.75rem, 25svh, 15rem); }
}

@media (max-width: 767px) and (min-height: 700px) {
  [class*="Hero-module"]:is([class$="__mediaStart"], [class$="__media"]) { top: 58%; }
  [class*="Hero-module"][class$="__scrollLabel"] { bottom: 44%; }
}

/* Growth Partner: el objeto y sus cuatro mensajes comparten el mismo plano. */
.gp .cube-sec {
  height: 188svh;
  color: #11282e;
  background: radial-gradient(ellipse at 74% 48%, #e2f0ee 0%, #edf3f1 42%, #f5f6f2 75%);
  border-block: 1px solid #d2dfdc;
}

.gp .cube-stick {
  width: min(100%, 86rem);
  margin-inline: auto;
  padding: clamp(5rem, 12svh, 7rem) var(--gut) clamp(2.5rem, 7svh, 5rem);
  grid-template: "caption stage" 1fr / minmax(0, .78fr) minmax(0, 1.22fr);
  align-items: center;
  gap: clamp(1.8rem, 5vw, 4.8rem);
}

.gp .cube-stage {
  grid-area: stage;
  position: relative;
  isolation: isolate;
  aspect-ratio: 1.25;
  max-height: 60svh;
  width: 100%;
  padding: 0;
  border: 1px solid #c4d8d6;
  border-radius: clamp(1rem, 2vw, 1.9rem);
  background:
    linear-gradient(90deg, #456e7110 1px, transparent 1px) center / 32px 32px,
    linear-gradient(#456e7110 1px, transparent 1px) center / 32px 32px,
    radial-gradient(ellipse at 50% 36%, #fbfcf9 12%, #e4eeec 74%, #d8e8e5);
  box-shadow: inset 0 0 0 1px #ffffff8a, 0 22px 46px -34px #264b4b61;
}

.gp .cube-stage::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: min(73%, 24rem);
  aspect-ratio: 1;
  border-radius: 50%;
  border: 1px solid #749a9a43;
  box-shadow: 0 0 0 1.3rem #749a9a12, 0 0 0 2.7rem #749a9a09;
}

.gp .cube-stage::after {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  bottom: 11%;
  width: 60%;
  height: 8%;
  transform: translateX(-50%);
  background: radial-gradient(ellipse, #173f4a55, transparent 70%);
  filter: blur(.48rem);
}

.gp .cube {
  --s: min(21vw, 32svh, 18rem);
  transform: rotateX(-13deg) rotateY(calc(var(--ry, 0deg) - 19deg));
}

.gp .cube-face,
.gp .cube::before,
.gp .cube::after {
  box-shadow: inset 0 0 0 1px #b0e0ea55, inset 0 0 28px #061b3638;
}

.gp .cube::before,
.gp .cube::after {
  content: "";
  position: absolute;
  inset: 0;
  backface-visibility: hidden;
  background: linear-gradient(145deg, #73a8b62e, #102b58bb),
    url("/assets/media/cube-face-flag-a-v1.webp") center / cover;
}

.gp .cube::before { transform: rotateX(90deg) translateZ(calc(var(--s) / 2)); }
.gp .cube::after { transform: rotateX(-90deg) translateZ(calc(var(--s) / 2)); }

.gp .cube-caption {
  grid-area: caption;
  width: 100%;
  max-width: none;
  padding: 0;
}

.gp .cube-caption::before {
  content: "";
  display: block;
  width: 2.8rem;
  height: 2px;
  margin-bottom: clamp(1rem, 2.3vw, 1.7rem);
  background: #137c85;
}

.gp .cube-caption .row {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: .95rem;
  min-height: 0;
  margin: 0;
}

.gp .cube-caption .h-lg {
  font-size: clamp(1.8rem, 3.6vw, 3.4rem);
  line-height: 1.03;
  max-width: 16ch;
}

.gp .cube-caption .row-r { padding: 0; }
.gp .cube-caption .body-lg { color: #365458; max-width: 37ch; line-height: 1.6; }

@media (max-width: 767px) {
  .gp .cube-sec { height: 168svh; }
  .gp .cube-stick {
    grid-template: "stage" auto "caption" minmax(9rem, auto) / minmax(0, 1fr);
    align-content: center;
    padding-block: 4.5rem 2rem;
    gap: 1.55rem;
  }
  .gp .cube-stage { aspect-ratio: auto; height: clamp(12rem, 35svh, 20rem); }
  .gp .cube-stage::before { width: min(62%, 13.5rem); }
  .gp .cube { --s: min(43vw, 22svh, 12rem); }
  .gp .cube-caption .row { gap: .62rem; }
  .gp .cube-caption .h-lg { max-width: 21ch; }
}

@media (max-width: 767px) and (max-height: 580px) {
  .gp .cube-stick { padding-top: 2.7rem; gap: 1rem; }
  .gp .cube-stage { height: clamp(9rem, 31svh, 12rem); }
}

@media (prefers-reduced-motion: reduce) {
  .gp .cube-sec { height: auto; }
  .gp .cube-stick { position: relative; height: auto; min-height: min(42rem, 100svh); }
}

/* Los dos desplegables comparten superficie, escala y separadores. */
header :is(.trg-mm, .Navbar-module__nuAbfa__submenu) {
  background: var(--target-night);
  border-top: 2px solid var(--target-aqua);
  border-radius: 0 0 .9rem .9rem;
  box-shadow: 0 22px 54px #0a1b2236;
}

header :is(.trg-mm-head, [class$="__submenuHeader"]) {
  padding: .75rem 1.1rem;
  font-size: .625rem;
  color: #7de6ee;
}

header [class$="__submenuLink"] {
  min-height: 3.15rem;
  padding-inline: 1.1rem;
  grid-template-columns: 1.8rem minmax(0, 1fr) 1rem;
}

header [class$="__submenuLink"]::before { background: #24ddef24; }

header [class$="__submenuLabel"] {
  font-size: .875rem;
  letter-spacing: -.01em;
  text-transform: none;
}

header [class$="__submenuLink"]:is(:hover, :focus-visible) [class$="__submenuLabel"] {
  color: #f0fafa;
}

header [class$="__submenuLink"]:is(:hover, :focus-visible) [class$="__submenuArrow"] {
  color: #7de6ee;
}

header [class$="__submenuFooter"] {
  color: #a2b1b5;
  padding: .7rem 1.1rem;
  font-size: .625rem;
  border-top: 1px solid #ffffff1f;
}

.tsn-cursor:is(.has-lente, .is-enlace) { mix-blend-mode: normal; }

.tsn-cursor:is(.has-lente, .is-enlace) .tsn-cursor__punto {
  box-sizing: border-box;
  background: #24ddef24;
  border: .28px solid #2aadb9;
  transform: scale(4);
}

.tsn-cursor.has-lente .tsn-cursor__punto { transform: scale(5); }

main:has(> section[class*="Hero-module"]) > #somos { height: 390svh; }

#somos .tsn-copy-hero {
  top: clamp(8rem, 28svh, 16rem);
  left: auto;
  right: max(1.5rem, 6vw);
  width: min(39vw, 33rem);
  font-size: clamp(2rem, 4.2vw, 3.85rem);
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -.045em;
  text-transform: none;
  white-space: normal;
}

#somos .tsn-copy-hero-brand { display: inline; margin-left: 0; }
#somos .tsn-copy-hero-rule { position: static; }
main > #somos .tsn-cube-stage {
  background-color: rgb(255 255 255 / var(--tsn-stage-alpha, 1));
}

main > #somos .tsn-cube-stage::before {
  content: "";
  position: absolute;
  top: 54%;
  left: 35%;
  width: clamp(11rem, 25vw, 26rem);
  aspect-ratio: 1;
  border-radius: 50%;
  background: #d7e2e8;
  filter: blur(clamp(2.75rem, 5vw, 5.5rem));
  transform: translate(-50%, -50%);
  opacity: calc(.85 * var(--tsn-stage-alpha, 1));
  pointer-events: none;
}

#somos .tsn-copy-blend {
  mix-blend-mode: normal;
  color: #102b33;
}

#somos .tsn-copy-center { gap: clamp(.65rem, 1.55svh, .95rem); }

#somos .tsn-copy-line {
  --tsn-copy-reveal: 1;
  max-width: 44ch;
  color: #26434c;
  font-family: var(--font-sans);
  font-size: clamp(.95rem, 1.25vw, 1.15rem);
  font-weight: 400;
  line-height: 1.55;
  letter-spacing: -.01em;
  text-wrap: pretty;
  opacity: var(--tsn-copy-reveal);
  transform: translateY(calc(-.75rem * (1 - var(--tsn-copy-reveal))));
}

#somos .tsn-copy-line:first-child {
  max-width: 23ch;
  color: #102b33;
  font-family: var(--font-display);
  font-size: clamp(1.35rem, 2.15vw, 2.125rem);
  font-weight: 600;
  line-height: 1.16;
  letter-spacing: -.04em;
  text-wrap: balance;
}

#somos .tsn-copy-line .tsn-w-cube {
  opacity: 1;
  filter: none;
  will-change: auto;
  white-space: normal;
}

@media (min-width: 1025px) {
  #somos .tsn-scene { top: 64%; left: 35%; }

  #somos :is(.tsn-copy-hero, .tsn-copy-center) {
    left: max(54%, calc(35% + 11.5rem));
    right: max(1.5rem, 6vw);
    width: auto;
    max-width: 33rem;
  }
}

@media (max-width: 1024px) {
  main > #somos .tsn-cube-stage {
    --somos-cube: clamp(9rem, min(26vw, 28svh), 13rem);
  }

  main > #somos .tsn-cube-stage::before { left: 28%; }

  main > #somos .tsn-scene {
    top: max(63%, calc(7.5rem + 32svh + var(--somos-cube) * .57));
    left: 28%;
  }

  main > #somos .tsn-cube-parallax { --cube-size: var(--somos-cube); }

  main > #somos :is(.tsn-copy-hero, .tsn-copy-center) {
    position: absolute;
    inset: max(8.25rem, 35svh) 5vw auto 52%;
    width: auto;
    transform: none;
  }

  main > #somos .tsn-copy-hero {
    font-size: clamp(1.55rem, 4.15vw, 2.45rem);
    text-wrap: balance;
  }

  main > #somos .tsn-copy-center {
    top: max(8.25rem, 43svh);
  }
}

@media (max-width: 639px) and (min-height: 541px) {
  main > #somos .tsn-cube-stage {
    --somos-cube: min(43vw, 22svh, 11.5rem);
  }

  main > #somos .tsn-cube-stage::before {
    top: 58%;
    left: 50%;
    width: clamp(10rem, 52vw, 15rem);
  }

  main > #somos .tsn-scene { top: 76%; left: 50%; }

  main > #somos :is(.tsn-copy-hero, .tsn-copy-center) {
    inset: max(7.75rem, 25svh) 1.5rem auto;
    margin-inline: auto;
    text-align: center;
  }

  main > #somos .tsn-copy-hero {
    top: max(8rem, 28svh);
    font-size: clamp(1.6rem, 6.4vw, 2.25rem);
  }

  main > #somos .tsn-copy-center {
    top: max(7.75rem, 24svh);
    max-width: 22rem;
    align-items: center;
  }
}

/* El título y la explicación comparten el centro de la escena. */
main > section[data-nav-dark]:has(p.tsn-grad) { height: 390svh; }

main > section[data-nav-dark]:has(p.tsn-grad) > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr) auto auto minmax(0, 1fr);
  justify-items: center;
  padding-block: 6.25rem 1.25rem;
}

main > section[data-nav-dark]:has(p.tsn-grad) > div > h2 {
  position: relative;
  inset: auto;
  grid-area: 2 / 1;
  max-width: none;
  margin: 0 0 clamp(.95rem, 3svh, 1.55rem);
  font-size: clamp(1.9rem, min(4.2vw, 8.6svh), 3.65rem);
  line-height: 1.02;
  text-align: center;
  text-transform: none;
  text-wrap: balance;
}

main > section[data-nav-dark]:has(p.tsn-grad) > div > div:has(> div > p.tsn-grad) {
  position: relative;
  inset: auto;
  grid-area: 3 / 1;
  justify-content: center;
}

main > section[data-nav-dark]:has(p.tsn-grad) > div > div > div:has(> p.tsn-grad) {
  gap: clamp(.8rem, 2svh, 1.35rem);
  max-width: min(100%, 40rem);
  text-align: center;
}

main > section[data-nav-dark]:has(p.tsn-grad) p.tsn-grad {
  font-size: clamp(1.05rem, min(2vw, 4.3svh), 1.7rem);
  line-height: 1.42;
  text-wrap: balance;
}

main > section[data-nav-dark]:has(p.tsn-grad) > div > div:has(> svg #tsnBorde) {
  grid-area: 1 / 1 / -1 / -1;
  align-self: center;
}

@media (max-width: 767px) {
  main > section[data-nav-dark]:has(p.tsn-grad) { height: 345svh; }
}

/* Manifiesto: lectura junto a la tesis, con la órbita como fondo. */
[class*="ManifestoExperience-module"][class$="__hero"] {
  min-height: min(78svh, 47rem);
  padding: 7.4rem max(1.5rem, 6vw) clamp(3rem, 6svh, 4.75rem);
}

[class*="ManifestoExperience-module"][class$="__heroThesis"] {
  margin-top: clamp(2.4rem, 6svh, 4.25rem);
}

[class*="ManifestoExperience-module"][class$="__heroThesis"] h1 {
  font-size: clamp(2.4rem, 5.4vw, 5.1rem);
  letter-spacing: -.055em;
  line-height: .95;
}

[class*="ManifestoExperience-module"][class$="__heroIntro"] {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  max-width: min(67%, 57rem);
  gap: clamp(1.5rem, 3.4vw, 3.4rem);
  margin: clamp(1.75rem, 4svh, 2.85rem) 0 0;
}

[class*="ManifestoExperience-module"][class$="__heroIntro"] p:first-child {
  font-size: clamp(1.05rem, 1.65vw, 1.5rem);
  line-height: 1.36;
}

[class*="ManifestoExperience-module"][class$="__heroIntro"] p:last-child { color: #b4c5c8; }

[class*="ManifestoExperience-module"][class$="__heroOrbit"] {
  opacity: .48;
  width: min(44vw, 41rem);
  top: 12%;
  right: -3vw;
}

[class*="ManifestoExperience-module"]:is([class$="__belong"], [class$="__final"]) h2 {
  font-size: clamp(2.25rem, 5.4vw, 4.75rem);
}

@media (max-width: 767px) {
  [class*="ManifestoExperience-module"][class$="__heroIntro"] {
    grid-template-columns: 1fr;
    max-width: 31rem;
    gap: 1.1rem;
  }

  [class*="ManifestoExperience-module"][class$="__heroOrbit"] { width: 66vw; top: 20%; right: -21vw; }
}


/* Los rótulos de la secuencia de contenido acompañan la imagen. */
[class*="ContentSequence-module"][class$="__word"] {
  left: clamp(1rem, 3vw, 2.75rem);
  bottom: clamp(1rem, 6%, 2rem);
  max-width: calc(100% - 2rem);
  padding: .34em .58em;
  border-left: 2px solid var(--target-aqua);
  border-radius: 0 .3rem .3rem 0;
  background: #0d171de0;
  font-size: clamp(1.3rem, 3.2vw, 2.9rem);
  letter-spacing: -.03em;
  line-height: 1.08;
}

[class*="ContentSequence-module"][class$="__outcome"] p {
  font-size: clamp(1.75rem, 4.4vw, 3.6rem);
  line-height: 1.06;
}

@media (max-width: 767px) {
  [class*="Hero-module"][class$="__intro"] h1 {
    font-size: clamp(1.85rem, 8.6vw, 2.65rem);
  }
}

/* La portada usa el video como escenario continuo, desde la apertura al cierre. */
html:has(.Hero-module__Z8hQ_W__stage) { scrollbar-gutter: stable; }
main:has(> .Hero-module__Z8hQ_W__section) { overflow-x: clip; }

.Hero-module__Z8hQ_W__section {
  --home-nav: 5.875rem;
  --home-gutter: max(clamp(1.5rem, 7vw, 7rem), calc((100% - 83rem) / 2));
  --home-accent: #9af2ec;
}

.Hero-module__Z8hQ_W__section:not(.Hero-module__Z8hQ_W__reduced) { height: 252svh; }

.Hero-module__Z8hQ_W__section .Hero-module__Z8hQ_W__stage {
  min-height: 0;
  background: #0b1a20;
}

.Hero-module__Z8hQ_W__stage :is(
  .Hero-module__Z8hQ_W__mediaStart, .Hero-module__Z8hQ_W__mediaFull, .Hero-module__Z8hQ_W__media
) {
  inset: 0;
  width: 100%;
  max-width: none;
  height: 100%;
  border-radius: 0;
  clip-path: none;
}

.Hero-module__Z8hQ_W__mediaInner video {
  filter: saturate(.78);
}

.Hero-module__Z8hQ_W__stage .Hero-module__Z8hQ_W__intro {
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: clamp(.8rem, 2.3svh, 1.45rem);
  padding: calc(var(--home-nav) + 1rem) var(--home-gutter) 3.75rem;
  z-index: 6;
  isolation: isolate;
  color: #f5fbfa;
  pointer-events: none;
}

.Hero-module__Z8hQ_W__intro::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background:
    linear-gradient(90deg, #07171ffa 0%, #07171fe5 23%, #07171f83 52%, #07171f21 79%),
    linear-gradient(0deg, #07171fdf, #07171f1c 42%, transparent 80%);
}

.Hero-module__Z8hQ_W__intro::after {
  content: "";
  position: absolute;
  inset: auto var(--home-gutter) clamp(1.1rem, 4svh, 2.25rem);
  height: 1px;
  background: linear-gradient(90deg, #9af2ecb3 0 3rem, #c2eeea42 3rem 100%);
}

.Hero-module__Z8hQ_W__stage .Hero-module__Z8hQ_W__intro h1 {
  position: relative;
  width: auto;
  margin: 0;
  padding-top: 2.35rem;
  color: inherit;
  font-size: clamp(2.65rem, 4.4vw, 4.4rem);
  line-height: 1.01;
  letter-spacing: -.052em;
}

.Hero-module__Z8hQ_W__intro .Hero-module__Z8hQ_W__star {
  position: absolute;
  inset: 0 auto auto 0;
  width: 1.5rem;
  height: 1.5rem;
  font-size: 1.5rem;
  color: var(--home-accent);
}

.Hero-module__Z8hQ_W__intro .Hero-module__Z8hQ_W__star svg { width: 100%; height: 100%; }
.Hero-module__Z8hQ_W__intro .Hero-module__Z8hQ_W__introBreak { display: inline; }

.Hero-module__Z8hQ_W__intro .Hero-module__Z8hQ_W__introLineTwo {
  justify-content: flex-start;
  padding: 0;
  color: var(--home-accent);
}

.Hero-module__Z8hQ_W__intro :is(.Hero-module__Z8hQ_W__introCopy, .Hero-module__Z8hQ_W__introLink) {
  position: static;
}

.Hero-module__Z8hQ_W__intro .Hero-module__Z8hQ_W__introCopy {
  width: 100%;
  max-width: 41ch;
  color: #e1efee;
  font-size: clamp(.94rem, 1.18vw, 1.15rem);
  font-weight: 400;
  line-height: 1.55;
}

.Hero-module__Z8hQ_W__intro .Hero-module__Z8hQ_W__introLink {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  gap: 1.15rem;
  padding: .68rem 1.05rem;
  border: 1px solid var(--home-accent);
  border-radius: .35rem;
  background: var(--home-accent);
  color: #102b31;
  font-size: clamp(.79rem, 1vw, .94rem);
  line-height: 1.25;
  font-weight: 600;
  pointer-events: auto;
}

.Hero-module__Z8hQ_W__intro .Hero-module__Z8hQ_W__introLink::after {
  content: "↘" / "";
  font-size: 1rem;
}

.Hero-module__Z8hQ_W__intro .Hero-module__Z8hQ_W__introLink:hover { background: #edfdfa; }

.Hero-module__Z8hQ_W__intro .Hero-module__Z8hQ_W__scrollLabel {
  inset: auto var(--home-gutter) calc(clamp(1.1rem, 4svh, 2.25rem) + .75rem) auto;
  color: #ddf2f0;
  font-size: .65rem;
  letter-spacing: .14em;
}

.Hero-module__Z8hQ_W__stage .Hero-module__Z8hQ_W__finale {
  inset: var(--home-nav) 0 0;
  justify-content: center;
  align-items: flex-start;
  padding: 1.5rem max(1.65rem, 7vw) 1.5rem max(55%, calc(50% + 2.1rem));
  color: #f1f8f7;
  background:
    linear-gradient(90deg, #a5f3ec1f 1px, transparent 1px) 50% 0 / 100% 100%,
    radial-gradient(ellipse at 93% 72%, #16424a, transparent 62%),
    #0b1a20;
}

.Hero-module__Z8hQ_W__finale::before {
  content: "";
  width: 2.6rem;
  height: 2px;
  margin-bottom: clamp(1rem, 3svh, 1.65rem);
  background: var(--home-accent);
  flex: none;
}

.Hero-module__Z8hQ_W__stage .Hero-module__Z8hQ_W__finaleTitle {
  position: static;
  width: 100%;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  column-gap: .23em;
  color: inherit;
  font-size: clamp(2rem, 3.6vw, 3.65rem);
  line-height: 1.04;
  letter-spacing: -.043em;
  text-transform: none;
}

.Hero-module__Z8hQ_W__finaleWord:last-child { color: var(--home-accent); }

.Hero-module__Z8hQ_W__finaleTitle .Hero-module__Z8hQ_W__mediaSlot {
  position: absolute;
  inset: 0 auto 0 0;
  width: 50%;
  margin: 0;
  aspect-ratio: auto;
  transform: none;
}

.Hero-module__Z8hQ_W__finale .Hero-module__Z8hQ_W__finaleNotes {
  width: 100%;
  grid-template-columns: 1fr;
  gap: .65rem;
  margin: clamp(1rem, 3svh, 1.65rem) 0 0;
}

.Hero-module__Z8hQ_W__finaleNotes p {
  max-width: 38ch;
  color: #d1e3e2;
  font-size: clamp(.93rem, 1.2vw, 1.12rem);
  line-height: 1.55;
}

.Hero-module__Z8hQ_W__finaleNotes .Hero-module__Z8hQ_W__finaleNote {
  color: #f5fcfb;
  font-weight: 600;
}

@media (max-width: 767px) {
  .Hero-module__Z8hQ_W__section { --home-gutter: clamp(1.4rem, 5.7vw, 2.75rem); }
  .Hero-module__Z8hQ_W__stage .Hero-module__Z8hQ_W__intro { justify-content: flex-end; }
  .Hero-module__Z8hQ_W__intro::before {
    background: linear-gradient(0deg, #07171ffc 4%, #07171fe9 29%, #07171f92 61%, #07171f1c 100%);
  }
  .Hero-module__Z8hQ_W__stage .Hero-module__Z8hQ_W__intro h1 {
    font-size: clamp(2.15rem, 9vw, 3.35rem);
  }
}

@media (max-width: 650px) and (min-height: 561px) {
  .Hero-module__Z8hQ_W__stage .Hero-module__Z8hQ_W__finale {
    --home-film: calc((100svh - var(--home-nav)) * .45);
    padding: calc(var(--home-film) + 1rem) var(--home-gutter) 1.5rem;
  }

  .Hero-module__Z8hQ_W__finaleTitle .Hero-module__Z8hQ_W__mediaSlot {
    inset: 0 0 auto;
    width: 100%;
    height: var(--home-film);
  }
}

@media (max-height: 560px) {
  .Hero-module__Z8hQ_W__stage .Hero-module__Z8hQ_W__intro {
    justify-content: center;
    gap: .55rem;
    padding-block: calc(var(--home-nav) + .5rem) 1.65rem;
  }
  .Hero-module__Z8hQ_W__stage .Hero-module__Z8hQ_W__intro h1 {
    font-size: clamp(1.6rem, 5vw, 2.6rem);
    padding-top: 1.35rem;
  }
  .Hero-module__Z8hQ_W__intro .Hero-module__Z8hQ_W__star { width: 1rem; height: 1rem; }
  .Hero-module__Z8hQ_W__intro .Hero-module__Z8hQ_W__introCopy { max-width: 52ch; line-height: 1.38; }
  .Hero-module__Z8hQ_W__intro::after { bottom: .7rem; }
  .Hero-module__Z8hQ_W__intro .Hero-module__Z8hQ_W__scrollLabel { bottom: 1.1rem; }
}

.Hero-module__Z8hQ_W__section.Hero-module__Z8hQ_W__reduced { height: auto; }
.Hero-module__Z8hQ_W__reduced .Hero-module__Z8hQ_W__stage { position: relative; height: auto; }
.Hero-module__Z8hQ_W__reduced .Hero-module__Z8hQ_W__stage .Hero-module__Z8hQ_W__intro {
  position: relative;
  min-height: 100svh;
}
.Hero-module__Z8hQ_W__reduced .Hero-module__Z8hQ_W__stage .Hero-module__Z8hQ_W__finale {
  position: relative;
  z-index: 7;
  opacity: 1 !important;
  transform: none !important;
  inset: auto;
  min-height: 0;
  padding: 3rem var(--home-gutter);
}
.Hero-module__Z8hQ_W__reduced .Hero-module__Z8hQ_W__finaleWord { transform: none !important; }
.Hero-module__Z8hQ_W__reduced .Hero-module__Z8hQ_W__media {
  height: 100svh !important;
  clip-path: none !important;
  transform: none !important;
}
.Hero-module__Z8hQ_W__reduced + #somos { margin-top: 0; }

#servicio-ia-automation {
  height: 335svh;
  overflow: visible;
  background: #f2f2f2;
  scroll-margin-top: 0;
}

#servicio-ia-automation .AutomationSequence-module__BxAcYG__stage {
  position: sticky;
  top: 0;
  width: 100%;
  height: 100svh;
  padding: 6.3rem 1rem 1rem;
  justify-content: center;
}

#servicio-ia-automation .AutomationSequence-module__BxAcYG__frame {
  width: min(100%, calc((100svh - 7.3rem) * 16 / 9), 95rem);
  border: 1px solid #d9e3e3;
}

@media (max-width: 767px) {
  #servicio-ia-automation { height: 275svh; }

  #servicio-ia-automation .AutomationSequence-module__BxAcYG__stage {
    padding: 6.25rem clamp(.6rem, 2vw, 1.25rem) 4.1rem;
  }

  #servicio-ia-automation .AutomationSequence-module__BxAcYG__frame {
    display: block;
    width: min(100%, 34rem);
    border-color: #d4dddf;
  }

  #servicio-ia-automation .AutomationSequence-module__BxAcYG__video { display: none; }

  #servicio-ia-automation .AutomationScene-module__gdcXCG__shell {
    height: min(calc(100svh - 10.5rem), 32rem);
    aspect-ratio: auto;
  }

  #servicio-ia-automation .AutomationScene-module__gdcXCG__canvas {
    width: 540px;
    height: var(--auto-h, 820px);
  }
}

@media (prefers-reduced-motion: reduce) {
  #servicio-ia-automation { height: auto; }
  #servicio-ia-automation .AutomationSequence-module__BxAcYG__stage {
    position: relative;
    height: auto;
    padding-block: 3rem;
  }
}

.IdeasSection-module__gofoja__card .IdeasSection-module__gofoja__cardTitle {
  max-width: 25ch;
  font-size: clamp(1.375rem, 2.65vw, 2.35rem);
  line-height: 1.12;
  letter-spacing: -.026em;
}

@media (max-width: 767px) {
  .IdeasSection-module__gofoja__card .IdeasSection-module__gofoja__cardTitle {
    font-size: clamp(1.3rem, 5.6vw, 1.75rem);
  }
}


@media (min-width: 1024px) {
  header:not([data-hdr]):has(.tsn-menu-toggle:not([aria-hidden="true"])) .trg-mm-host + li:has(> a[href="/growth-partner/"]) {
    opacity: 0 !important;
    visibility: hidden;
    pointer-events: none !important;
    transform: translateY(-100%) !important;
  }
}

@media (prefers-reduced-motion: no-preference) {
  .svc--landing .svc-hero .img-reveal:not(.img-in) { clip-path: inset(0 0 22%); }
}

@media (min-width: 821px) {
  .svc--landing .sec--intro .row-l > .btn {
    align-self: flex-start;
    min-width: min(100%, 16.5rem);
    justify-content: space-between;
  }
}

/* La escena Lo que hacemos mantiene el fondo en movimiento y una columna legible. */
main > #somos div:has(> .tsn-reveal-window) > div:has(> h2) {
  padding-inline: clamp(1.35rem, 5vw, 5rem);
}

main > #somos div:has(> .tsn-reveal-window) > div > span:first-child {
  color: #b8f4f1;
  font-size: clamp(.75rem, 1.05vw, .95rem);
  line-height: 1.35;
  letter-spacing: .12em;
}

main > #somos div:has(> .tsn-reveal-window) > div > h2 {
  max-width: 20ch;
  margin: .7rem 0 0;
  font-size: clamp(1.85rem, 3.35vw, 3rem);
  line-height: 1.07;
  letter-spacing: -.035em;
  text-transform: none;
  text-wrap: balance;
}

main > #somos div:has(> .tsn-reveal-window) > div > p {
  max-width: 45ch;
  margin: .9rem 0 0;
  color: #e3edf1;
  font-size: clamp(.95rem, 1.16vw, 1.125rem);
  line-height: 1.55;
}

main > #somos div:has(> .tsn-reveal-window) > div > a {
  margin-top: 1.25rem;
  border-radius: .4rem;
  overflow: hidden;
}

main > #somos .tsn-reveal-media > span:last-child {
  background: linear-gradient(95deg, #051426e8 0%, #06182bba 34%, #06182b26 68%, #06182b16);
}

@media (max-width: 767px) {
  main > #somos div:has(> .tsn-reveal-window) > div:has(> h2) {
    justify-content: flex-end;
    padding-bottom: clamp(4rem, 11svh, 6rem);
  }

  main > #somos .tsn-reveal-media > span:last-child {
    background: linear-gradient(0deg, #051426f2, #06182bd4 37%, #06182b38 76%, #06182b26);
  }
}


/* Formularios y acceso directo a las reseñas de TARGET en Google. */
.target-form-header {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: .35rem 1rem;
  color: #265059;
  font-size: clamp(.74rem, 1.35vw, .85rem);
  line-height: 1.4;
}

.target-form-progress {
  display: block;
  width: 100%;
  height: .3rem;
  margin: .75rem 0 1.4rem;
  border: 0;
  border-radius: 1rem;
  overflow: hidden;
  appearance: none;
  background: #dceae7;
  accent-color: #087d87;
}

.target-form-progress::-webkit-progress-bar { background: #dceae7; }
.target-form-progress::-webkit-progress-value { background: #087d87; transition: width .22s ease; }
.target-form-progress::-moz-progress-bar { background: #087d87; }

.target-form-step { min-width: 0; margin: 0; padding: 0; border: 0; }

.target-form-step legend {
  margin-bottom: .8rem;
  font-family: var(--font-display);
  color: #112f35;
  font-size: clamp(1.1rem, 2.15vw, 1.5rem);
  font-weight: 600;
  line-height: 1.22;
}

.target-form-flow .field label { color: #35535a; }

.target-form-flow .field :is(input:not([type="hidden"]), select) {
  border: 1px solid #c4d5d4;
  border-radius: .55rem;
  background: #fff;
}

.target-form-flow .field :is(input, select):focus-visible {
  outline: 2px solid #07838c;
  outline-offset: 2px;
}

.target-form-actions { display: flex; gap: .65rem; align-items: stretch; }

.target-form-flow :is(.target-form-back, .target-form-actions .btn) { margin: 0; min-height: 48px; }

.target-form-back {
  flex: none;
  border: 1px solid #c4d5d4;
  border-radius: .55rem;
  padding: .65rem .8rem;
  background: transparent;
  color: #183c43;
  font: inherit;
  font-size: .85rem;
}

.target-form-flow .target-form-actions .btn {
  flex: 1;
  min-width: 0;
  height: auto;
  padding: .75rem 1rem;
  border: 1px solid #a9e8e4;
  border-radius: .55rem;
  background: #a9e8e4;
  color: #102e34;
  text-align: left;
}

.target-form-flow .target-form-actions .btn:hover { background: #caf4ef; }
.target-form-flow [hidden] { display: none !important; }
.target-form-flow .form-note { color: #45646a; }

.target-form-dialog {
  position: fixed;
  inset: 0;
  width: min(34rem, calc(100% - 1.5rem));
  max-height: calc(100dvh - 1.5rem);
  margin: auto;
  padding: clamp(1rem, 4vw, 1.85rem);
  overflow: auto;
  overscroll-behavior: contain;
  border: 1px solid #c9dbd8;
  border-radius: 1rem;
  background: #f7faf8;
  color: #14282d;
  box-shadow: 0 24px 70px #061c2545;
}

.target-form-dialog::backdrop { background: #0a1928ad; backdrop-filter: blur(5px); }
:root:has(.target-form-dialog[open]) { overflow: hidden; }

.target-dialog-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: .9rem;
}

.target-dialog-heading h2 {
  font-size: clamp(1.3rem, 3.6vw, 1.85rem);
  font-weight: 650;
  line-height: 1.15;
  color: #112f35;
}

.target-dialog-close {
  display: grid;
  flex: none;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 1px solid #c4d5d4;
  border-radius: 50%;
  background: #fff;
  color: #183c43;
  font-size: 1.5rem;
  line-height: 1;
}

.target-form-dialog :is(.target-dialog-close, .target-form-back, .target-form-actions .btn):focus-visible,
.target-dialog-trigger:focus-visible {
  outline: 2px solid #087d87;
  outline-offset: 2px;
}

.target-dialog-trigger {
  width: fit-content;
  min-height: 44px;
  padding: .7rem 1.15rem;
  border-radius: .55rem;
  background: #a9e8e4;
  color: #102e34;
  font-weight: 650;
}

.target-form-dialog > .target-form-flow {
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  color: #14282d;
}

.target-form-dialog > form[hidden] { display: none; }
:is(.target-form-dialog, .target-hablemos-inline) .field { display: grid; gap: .35rem; margin-bottom: .8rem; }
:is(.target-form-dialog, .target-hablemos-inline) .field label { font-size: .88rem; line-height: 1.3; }
:is(.target-form-dialog, .target-hablemos-inline) .field :is(input:not([type="radio"], [type="checkbox"]), textarea) {
  min-width: 0;
  min-height: 44px;
  width: 100%;
  padding: .55rem .7rem;
  border: 1px solid #c4d5d4;
  border-radius: .55rem;
  background: #fff;
  color: #14282d;
  font: inherit;
  font-size: 1rem;
}

:is(.target-form-dialog, .target-hablemos-inline) .field textarea { resize: vertical; }
:is(.target-form-dialog, .target-hablemos-inline) .hp { position: absolute; left: -10000px; width: 1px; height: 1px; }
:is(.target-form-dialog, .target-hablemos-inline) .form-note { margin-top: .75rem; font-size: .8rem; }
:is(.target-form-dialog, .target-hablemos-inline) .form-msg:not(:empty) { margin-top: .75rem; color: #a72828; font-size: .9rem; }
:is(.target-form-dialog, .target-hablemos-inline) .btn:disabled { opacity: .65; }
.target-form-privacy label { display: flex; align-items: start; gap: .55rem; }
.target-form-privacy a { text-decoration: underline; }
.target-dialog-success { display: grid; justify-items: start; gap: 1rem; font-size: 1rem; line-height: 1.5; }

.target-form-options {
  display: grid;
  gap: .65rem;
  max-height: min(39dvh, 24rem);
  padding: .25rem .4rem .25rem .2rem;
  overflow-y: auto;
  border-block: 1px solid #dceae7;
  overscroll-behavior: contain;
  scrollbar-color: #85bcbf #eaf4f1;
}

.target-form-options fieldset {
  display: grid;
  align-content: start;
  gap: .35rem;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

.target-form-options fieldset > legend {
  padding: 0;
  margin: .25rem 0 .35rem;
  color: #45646a;
  font-size: .75rem;
  letter-spacing: 0;
}

:is(.target-form-dialog, .target-hablemos-inline) .target-form-options label {
  display: flex;
  align-items: center;
  gap: .6rem;
  min-height: 42px;
  padding: .45rem .65rem;
  border: 1px solid #c4d5d4;
  border-radius: .55rem;
  background: #fff;
  color: #183c43;
  cursor: pointer;
}

.target-form-options label:has(input:checked) { border-color: #087d87; background: #e2f6f4; }
.target-form-options label:focus-within { outline: 2px solid #087d87; outline-offset: -2px; }
:is(.target-form-dialog, .target-hablemos-inline) input:is([type="radio"], [type="checkbox"]) { flex: none; accent-color: #087d87; }
#agendamiento .target-form-dialog > form { margin: 0; }

@media (min-width: 640px) {
  .target-form-options {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-height: min(48dvh, 27rem);
  }
  .target-form-options > label { grid-column: 1 / -1; }
}

.target-hablemos-inline {
  padding: clamp(2.25rem, 5.5vw, 4.5rem) clamp(1rem, 5vw, 3.5rem);
  scroll-margin-top: 6rem;
  background: #eaf4f1;
  color: #14282d;
}

.target-hablemos-layout {
  display: grid;
  grid-template-columns: minmax(0, .75fr) minmax(0, 1.25fr);
  align-items: start;
  gap: clamp(1.25rem, 5vw, 4rem);
  width: min(100%, 68rem);
  margin-inline: auto;
}

.target-hablemos-layout h2 {
  font-size: clamp(2rem, 4vw, 3.35rem);
  font-weight: 650;
  line-height: 1.07;
  letter-spacing: -.04em;
}

.target-hablemos-layout h2 + p {
  max-width: 33ch;
  margin-top: .65rem;
  color: #36555b;
  font-size: clamp(.94rem, 1.5vw, 1.1rem);
  line-height: 1.5;
}

.target-hablemos-card {
  min-width: 0;
  padding: clamp(.9rem, 2.5vw, 1.7rem);
  border: 1px solid #c9dbd8;
  border-radius: 1rem;
  background: #f7faf8;
}

@media (max-width: 767px) {
  .target-hablemos-layout { grid-template-columns: minmax(0, 1fr); }
}

.target-google-review {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: .25rem .65rem;
  width: fit-content;
  max-width: 100%;
  margin-top: 1.2rem;
  padding: .5rem 1rem .5rem .65rem;
  border: 1px solid #e6e9ec;
  border-radius: 999px;
  background: #fff;
  color: #555e65;
  box-shadow: 0 14px 34px -22px #13131373;
  font-size: clamp(.75rem, 1.15vw, .875rem);
  line-height: 1.35;
  text-decoration: none;
}

.target-google-review > * { white-space: nowrap; }
.target-google-review strong { color: #131313; }
.target-google-review:hover { border-color: #0e8792; }

.target-google-avatars { display: inline-flex; align-items: center; }

.target-google-avatars i {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  margin-left: -9px;
  border: 2px solid #fff;
  border-radius: 50%;
  background: var(--review-avatar-bg);
  color: var(--review-avatar-ink);
  box-shadow: 0 4px 10px -6px #13131380;
  font-size: 11px;
  font-style: normal;
  font-weight: 700;
}

.target-google-avatars i:nth-child(1) { margin-left: 0; --review-avatar-bg: #d9f6fa; --review-avatar-ink: #0b6f7a; }
.target-google-avatars i:nth-child(2) { --review-avatar-bg: #131313; --review-avatar-ink: #fff; }
.target-google-avatars i:nth-child(3) { --review-avatar-bg: #fde8d4; --review-avatar-ink: #8a4510; }
.target-google-avatars i:nth-child(4) { --review-avatar-bg: #e5e7ff; --review-avatar-ink: #3a43b8; }
.target-google-cta { color: #086773; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
#resenas .target-google-review { margin-top: .5rem; }

.target-wa {
  position: fixed;
  right: max(1rem, env(safe-area-inset-right));
  bottom: max(1rem, env(safe-area-inset-bottom));
  z-index: 90;
  display: grid;
  place-items: center;
  width: 3.25rem;
  height: 3.25rem;
  border-radius: 50%;
  background: #168947;
  box-shadow: 0 10px 24px -8px #112f3570;
  text-decoration: none;
  color: #fff;
}

.target-wa:hover { background: #0c7439; }
.target-wa:focus-visible { outline: 2px solid #087d87; outline-offset: 3px; }
.target-wa svg { width: 1.65rem; height: 1.65rem; fill: currentColor; }

@media (max-width: 767px) {
  .Hero-module__Z8hQ_W__intro .Hero-module__Z8hQ_W__scrollLabel {
    right: auto;
    left: var(--home-gutter);
  }
}


@media (max-width: 480px) {
  .target-google-review { border-radius: 1.35rem; }
}

[role="dialog"][aria-labelledby="tsn-hablemos-titulo"] {
  border: 1px solid #c9dbd8;
  border-radius: 1rem;
  background: #f7faf8;
  color: #14282d;
}

[aria-labelledby="tsn-hablemos-titulo"] button[aria-label="Cerrar"],
[aria-labelledby="tsn-hablemos-titulo"] form label,
[aria-labelledby="tsn-hablemos-titulo"] form label a { color: #265059; }

[aria-labelledby="tsn-hablemos-titulo"] form :is(input:not([type="checkbox"]):not([aria-hidden]), textarea) {
  border: 1px solid #c4d5d4;
  border-radius: .55rem;
  background: #fff;
  color: #14282d;
}

[aria-labelledby="tsn-hablemos-titulo"] form :is(input, textarea)::placeholder { color: #45646a; }
[aria-labelledby="tsn-hablemos-titulo"] form :is(input, textarea):focus-visible { outline: 2px solid #087d87; }
[aria-labelledby="tsn-hablemos-titulo"] form button[type="submit"] {
  width: 100%;
  border-radius: .55rem;
  background: #a9e8e4;
  color: #102e34;
}
[aria-labelledby="tsn-hablemos-titulo"] form p[aria-live] { color: #086773; }
[aria-labelledby="tsn-hablemos-titulo"] form p.text-red-300 { color: #a72828; }

/* Estrategia conserva el texto legible durante el movimiento del gráfico. */
#servicio-estrategia-crecimiento .ServiceModule-module__ONk6-a__stage {
  background: radial-gradient(ellipse at 51% 50%, #e0efed, transparent 60%), #f4f5f1;
}

#servicio-estrategia-crecimiento .ServiceModule-module__ONk6-a__grid {
  width: min(100%, 87rem);
  gap: clamp(1.25rem, 3vw, 3rem);
  padding: 0 clamp(1.45rem, 4vw, 3.25rem);
}

#servicio-estrategia-crecimiento .ServiceModule-module__ONk6-a__title h3 {
  max-width: 12ch;
  margin: 0;
  color: #112c32;
  font-size: clamp(2.25rem, 3.4vw, 3.4rem);
  line-height: 1.03;
  text-wrap: balance;
  text-transform: none;
}

#servicio-estrategia-crecimiento :is(
  .ServiceModule-module__ONk6-a__title, .ServiceModule-module__ONk6-a__detail
) {
  opacity: 1;
  transform: none;
}

#servicio-estrategia-crecimiento .ServiceModule-module__ONk6-a__graph {
  width: min(100%, 30rem);
  opacity: 1;
  transform: none;
}

#servicio-estrategia-crecimiento .ServiceModule-module__ONk6-a__claim {
  max-width: 23ch;
  color: #142f35;
  font-size: clamp(1.25rem, 1.85vw, 1.85rem);
  line-height: 1.17;
}

#servicio-estrategia-crecimiento .ServiceModule-module__ONk6-a__subservicios { margin-top: 1rem; }
#servicio-estrategia-crecimiento .ServiceModule-module__ONk6-a__button { margin-top: 1.15rem; }

@media (min-width: 1024px) and (min-height: 591px) {
  #servicio-estrategia-crecimiento { height: 158svh; }
  #servicio-estrategia-crecimiento .ServiceModule-module__ONk6-a__stage { padding: 6.25rem 0 1.5rem; }
  #servicio-estrategia-crecimiento .ServiceModule-module__ONk6-a__grid {
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.1fr) minmax(0, 1fr);
  }
}

@media (max-width: 1023px), (max-height: 590px) {
  #servicio-estrategia-crecimiento { height: auto; min-height: 0; }
  #servicio-estrategia-crecimiento .ServiceModule-module__ONk6-a__stage {
    position: relative;
    height: auto;
    min-height: 0;
    padding: clamp(3.5rem, 9svh, 6.25rem) 0;
  }
  #servicio-estrategia-crecimiento .ServiceModule-module__ONk6-a__grid {
    grid-template-columns: minmax(0, 1fr);
    width: min(100%, 39rem);
  }
  #servicio-estrategia-crecimiento .ServiceModule-module__ONk6-a__detail { justify-self: start; }
  #servicio-estrategia-crecimiento .ServiceModule-module__ONk6-a__graph { width: min(70vw, 17rem); }
}

@media (prefers-reduced-motion: reduce) {
  #servicio-estrategia-crecimiento { height: auto; }
  #servicio-estrategia-crecimiento .ServiceModule-module__ONk6-a__stage {
    position: relative;
    height: auto;
    padding-block: 4rem;
  }
}

/* Tipografía de la secuencia Posicionamiento y Adquisición. */
#acquisition-title {
  max-width: 17ch;
  margin-top: 0;
  color: #f6faf9;
  font-size: clamp(2rem, 3.7vw, 3.75rem);
  font-weight: 500;
  text-shadow: 0 2px 20px #030708b3;
  line-height: 1.02;
  letter-spacing: -.043em;
  text-transform: none;
}

.AcquisitionSequence-module__O3osIW__panel { container-type: inline-size; }

.AcquisitionSequence-module__O3osIW__module .AcquisitionSequence-module__O3osIW__panel strong {
  font-size: clamp(1.15rem, 10.8cqi, 3.4rem);
  line-height: 1.03;
  letter-spacing: -.04em;
}

.AcquisitionSequence-module__O3osIW__module .AcquisitionSequence-module__O3osIW__caption {
  max-width: calc(100% - 2rem);
  color: #e6eeec;
  font-size: clamp(.6rem, 1.8cqi, .71rem);
  line-height: 1.2;
  letter-spacing: .1em;
  text-align: right;
  white-space: normal;
}

.AcquisitionSequence-module__O3osIW__module .AcquisitionSequence-module__O3osIW__outcome > p {
  font-size: clamp(1.25rem, 1.65vw, 1.85rem);
  line-height: 1.2;
  letter-spacing: -.027em;
  text-wrap: balance;
}

.AcquisitionSequence-module__O3osIW__subservicios .Subservicios-module__l1PxJq__item {
  font-size: clamp(.95rem, 1.15vw, 1.1rem);
  line-height: 1.28;
}

@media (min-width: 1024px) {
  .AcquisitionSequence-module__O3osIW__caption {
    left: calc(50% - var(--final-phase) * (50% - clamp(1rem, 2vw, 2rem)));
    right: auto;
    transform: translateX(calc(-50% * (1 - var(--final-phase))));
  }

  .AcquisitionSequence-module__O3osIW__heading {
    top: clamp(8rem, 18svh, 10rem);
    width: min(43vw, 42rem);
  }

  .AcquisitionSequence-module__O3osIW__outcome {
    inset: clamp(8rem, 18svh, 10rem) clamp(2rem, 4vw, 5rem) auto auto;
    width: min(32vw, 27rem);
    padding: clamp(1rem, 2vw, 1.5rem);
    background: linear-gradient(110deg, #0b1215e8, #0b1215a3);
  }
}

@media (max-width: 1023px) {
  #acquisition-title { font-size: clamp(1.8rem, 6vw, 2.7rem); }

  .AcquisitionSequence-module__O3osIW__module .AcquisitionSequence-module__O3osIW__panel strong {
    bottom: 2.75rem;
    font-size: clamp(1.55rem, 9.3cqi, 2.55rem);
  }
}

#agendamiento [class$="__formIntro"] > [class$="__prueba"] {
  display: none;
}

/* Navegación y contacto del pie compartido. */
footer.bg-dark {
  padding-block: clamp(1.3rem, 2.15vw, 2rem);
}

footer.bg-dark > div {
  align-items: start;
  gap: clamp(1rem, 3vw, 2.8rem);
}

footer.bg-dark > div > div:first-child > p.display {
  font-size: clamp(1.1rem, 1.9vw, 1.85rem);
  line-height: 1.2;
  max-width: 23ch;
  text-transform: none;
}

footer.bg-dark > div > div:first-child > button {
  margin-top: .75rem;
  padding: .65rem .9rem;
  min-height: 42px;
  font-size: .7rem;
}

footer.bg-dark > div > div:nth-child(2) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: clamp(1.25rem, 3vw, 2.75rem);
}

footer.bg-dark > div > div:nth-child(2) > div {
  gap: .5rem;
}

footer.bg-dark .target-footer-nav {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: clamp(.9rem, 2vw, 1.75rem);
  row-gap: 0;
  max-width: none;
  margin-bottom: .35rem;
}

footer.bg-dark .target-footer-nav a {
  display: flex;
  align-items: center;
  min-height: 30px;
  color: #e0e6e6;
  font-size: .82rem;
  line-height: 1.22;
  letter-spacing: normal;
  text-transform: none;
}

footer.bg-dark a:hover { color: var(--color-accent, #17d2e0); }

footer.bg-dark img[alt="TARGET Inc"] {
  width: 66px;
  margin-top: .4rem;
}

@media (max-width: 767px) {
  footer.bg-dark > div { display: grid; }

  footer.bg-dark > div > div:first-child {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .7rem;
  }

  footer.bg-dark > div > div:first-child > button {
    flex: none;
    margin-top: 0;
  }

  footer.bg-dark > div > div:nth-child(2) {
    grid-template-columns: minmax(0, 1fr);
    gap: .65rem;
  }

  footer.bg-dark > div > div:nth-child(2) > div:first-child {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    font-size: .78rem;
  }

  footer.bg-dark .target-footer-nav {
    grid-column: 1 / -1;
    padding-block: .35rem;
    border-block: 1px solid #ffffff22;
  }

  footer.bg-dark > div > div:nth-child(2) > div:last-child {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    padding-top: .65rem;
    border-top: 1px solid #ffffff22;
    padding-right: 2.8rem;
  }

  footer.bg-dark img[alt="TARGET Inc"] {
    grid-area: 1 / 2 / span 2;
    align-self: center;
    margin: 0;
    width: 55px;
  }
}
