/* TOP corrections, isolated from the subpage layouts under review. */
.home .l-header { padding-block: 0.7rem; }
.home { background: #f3f6fa url('../images/network-bg.webp') center top / cover fixed; }
.p-home-hero { padding-top: calc(59 * var(--pc-scale)); padding-bottom: calc(100 * var(--pc-scale)); }
.p-home-hero__visual { top: auto; bottom: calc(164 * var(--pc-scale)); isolation: isolate; }
.p-home-hero__slides { position: absolute; inset: 0; overflow: hidden; }
.p-home-hero__slide { position: absolute; inset: 0 auto 0 0; width: 109.54%; height: 100%; object-fit: contain; object-position: left center; opacity: 0; transition: opacity 1s ease-in-out; pointer-events: none; }
.p-home-hero__slide.is-previous { opacity: 1; z-index: 1; transition: none; }
.p-home-hero__slide.is-active { opacity: 1; z-index: 2; }
.p-home-hero__title { width: 100%; }
.p-home-hero__intro { margin-top: 1rem; }
.p-home-hero__actions { gap: 1rem; }
.p-home-hero__actions .c-button:first-child { width: 17.8125rem; }
.p-home-hero__actions .c-button:last-child { width: 17.3125rem; padding-inline: 1rem; }
.p-home-hero__services { position: relative; z-index: 1; margin-top: calc(80 * var(--pc-scale)); }
.p-home-hero .c-service-mini { flex: 0 0 calc((100% - 2rem) / 3); }
.p-home-hero [data-hero-service='es'] .c-service-mini__image { object-fit: cover; object-position: center bottom; }
.p-home-hero .c-service-mini__body { padding-block: 0.5rem 1rem; }
.c-service-mini__summary { display: flex; align-items: center; gap: 0.25rem; }
.c-service-mini__summary > span { flex: 1; min-width: 0; }
.c-service-mini__arrow { flex: none; width: 2.5rem; height: auto; opacity: 0; transform: translateY(0.5rem); transition: opacity 0.2s, transform 0.2s; }
.c-service-mini > a:is(:hover, :focus-visible) .c-service-mini__arrow { opacity: 1; transform: translateY(0); }
.c-service-mini__body h2 > span, .c-service-mini__body h2 > small { display: inline-block; }
.c-service-mini__body h2 > small { font-size: 0.8125rem; }
.p-home-achievements, .p-home-quality { background: transparent; }
.p-home-achievements { padding-bottom: calc(25 * var(--pc-scale)); }
.p-home-achievements__list { gap: calc(54.323 * var(--pc-scale)); }
.c-achievement { width: calc(219.555 * var(--pc-scale)); height: calc(134 * var(--pc-scale)); }
.p-home-quality { padding-block: calc(80 * var(--pc-scale)) calc(88 * var(--pc-scale)); }
.p-home-quality .c-section-heading__intro { font-weight: 500; }
.p-home-quality__list { margin-top: calc(40 * var(--pc-scale)); }
.c-quality__body { padding-top: 2.5rem; padding-bottom: 3rem; }
.c-quality h3 { padding-top: 0.5rem; }
.c-quality__icon { object-fit: contain; }
.c-quality:not(:last-child)::after { content: ''; position: absolute; left: 86.9748%; top: calc(100 * var(--pc-scale)); width: calc(156 * var(--pc-scale)); aspect-ratio: 1; background: url('../images/quality-cross.svg') center / contain no-repeat; pointer-events: none; }
.p-home-quality__comparison > h3 { font-size: 1.75rem; line-height: 1.6; font-weight: 500; }
.c-comparison { width: 96.666667%; border-collapse: separate; border-spacing: 0; font-size: 1.125rem; margin-top: calc(40 * var(--pc-scale)); }
.c-comparison__label { width: 20.56%; }
.c-comparison__realone { width: 41.52%; }
.c-comparison th, .c-comparison td { padding: calc(18 * var(--pc-scale)) calc(9 * var(--pc-scale)); }
.c-comparison thead th { font-size: 1rem; }
.c-comparison thead th:nth-child(2) { font-size: 1.5rem; border-bottom: 0; border-radius: 0.5rem 0.5rem 0 0; }
.c-comparison tbody th { font-size: 1.125rem; }
.c-comparison tbody td:nth-child(2) { font-size: 1.25rem; font-weight: 500; border: 0; border-inline: calc(13 * var(--pc-scale)) solid var(--color-red); border-bottom: calc(4.5 * var(--pc-scale)) solid var(--color-red); }
.c-comparison tbody tr:last-child td:nth-child(2) { border-bottom-width: calc(13 * var(--pc-scale)); border-radius: 0 0 0.5rem 0.5rem; }
.p-home-services .c-service-card__number::after { border-color: var(--color-red); }
.c-service-card__suffix { display: inline-block; }
.p-home-sample__inner { width: 71.25%; padding: calc(40 * var(--pc-scale)) calc(78 * var(--pc-scale)); }
.p-home-sample__body { width: 63%; flex-shrink: 0; position: relative; z-index: 1; }
.p-home-sample__screen { position: absolute; right: 6%; top: calc(-18 * var(--pc-scale)); width: 32%; margin: 0; }
.p-home-sample__body .c-button { padding-block: 0.5rem; }
.p-home-approach .c-approach h3 { font-size: 1.75rem; }
.p-home-approach .c-approach__actions p { font-weight: 500; }
.c-approach__decoration { position: absolute; top: 7.384615%; left: -26.490066%; width: 184.988962%; height: auto; pointer-events: none; }
.c-approach--reverse .c-approach__decoration { top: 17.230769%; left: -73.51%; width: 200.0114%; }
.p-home-cases, .p-home-seminar { background: transparent; }
.p-home-cases { overflow: hidden; }
.p-home-cases .c-case-slider { position: relative; }
.p-home-cases .c-case-slider__track { width: calc(100% + 240 * var(--pc-scale)); margin-left: calc(-120 * var(--pc-scale)); padding-inline: calc(199 * var(--pc-scale)); gap: calc(64 * var(--pc-scale)); scroll-padding-inline: calc(199 * var(--pc-scale)); }
.p-home-cases .c-case-card { flex-basis: calc(1042 * var(--pc-scale)); }
.p-home-cases .c-case-card > a { height: 100%; padding: calc(40 * var(--pc-scale)) calc(56 * var(--pc-scale)); gap: calc(40 * var(--pc-scale)); }
.p-home-cases .c-case-slider__controls { position: absolute; inset: 0 calc(16 * var(--pc-scale)) 3rem; align-items: center; justify-content: space-between; margin: 0; pointer-events: none; }
.p-home-cases .c-slider-control { width: 4rem; height: 4rem; background: transparent; padding: 0; pointer-events: auto; }
.p-home-cases .c-slider-control img { width: 4rem; height: 4rem; }
.c-case-slider__pagination { display: flex; justify-content: center; gap: 1rem; margin-top: 2.5rem; }
.c-case-slider__pagination button { position: relative; width: 0.5rem; height: 0.5rem; padding: 0; border-radius: 50%; background: #d8d8d8; }
.c-case-slider__pagination button::before { content: ''; position: absolute; inset: -0.625rem; }
.c-case-slider__pagination button[aria-current] { background: var(--color-red); }
.p-home-cases .c-section-bar { column-gap: calc(64 * var(--pc-scale)); }
.p-home-cases .c-section-bar__intro { font-size: 1rem; font-weight: 500; }
.p-home-cases .c-case-card__body { flex-basis: 0; }
.p-home-cases .c-case-card__image { flex: 0 0 47.85%; width: 47.85%; aspect-ratio: 3 / 2; }
.p-home-cases .c-tag { display: inline-block; border: thin solid var(--color-red); border-radius: 0.25rem; padding-inline: 0.5rem; }
.p-home-cases .c-case-card h3 { font-size: 1.25rem; line-height: 1.5; }
.p-home-cases .c-case-card__excerpt { font-size: 0.9375rem; line-height: 1.7; color: var(--color-body); }
.c-case-card__company { display: flex; align-items: flex-start; gap: 1rem; margin-top: 1rem; font-size: 0.8125rem; line-height: 1.7; color: var(--color-body); }
.c-case-card__company > img { width: 5.25rem; height: 2.5rem; object-fit: contain; flex: 0 0 5.25rem; }
.p-home-cases .c-case-card__body > p:not([class]) { margin-top: 1rem; font-size: 0.875rem; }
.p-home-seminar__body .c-section-heading__title { text-wrap: balance; }
.p-home-seminar__body .c-section-heading__intro { font-size: 1rem; font-weight: 500; }
.p-home-seminar__graphic { display: block; width: 48.333%; height: auto; flex: none; object-fit: contain; border-radius: 0.5rem; }
.p-home-people .c-section-heading__title { text-wrap: balance; }
.p-home-people__inner { width: 41.25rem; }
.p-home-people .c-section-heading__intro { font-weight: 500; }
.p-home-people__actions .c-button { flex: none; width: 15rem; padding-inline: 1rem; }
.home .c-contact { background: url('../images/network-bg.webp') center / cover; }
.home .c-contact__list { margin-top: calc(64 * var(--pc-scale)); }
.home .c-contact__item > .c-button { width: 22.5rem; height: 4.5rem; padding: 1rem 2.5rem; gap: 1rem; border: 0; border-radius: 0.25rem; background: linear-gradient(118deg, #bb1634 1.9%, #d8092f 60.6%); font-size: 1.25rem; line-height: 2; }
.c-chat-launcher { position: fixed; right: 1.5rem; bottom: 1.5rem; z-index: 90; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0.25rem; width: 7rem; height: 7rem; padding: 0.75rem; border: 0.1875rem solid var(--color-red); border-radius: 50%; background: #fafafa; color: var(--color-text); box-shadow: 0 0 1rem rgb(55 57 61 / 20%); font-size: 0.8125rem; font-weight: 500; line-height: 1.5; }
.c-chat-launcher[hidden], .c-chat-status[hidden] { display: none; }
.c-chat-launcher img { width: 2.4375rem; height: 2.4375rem; }
.c-chat-launcher:hover { background: #fff; }
.c-chat-status { position: fixed; right: 1rem; bottom: 9rem; z-index: 90; width: 17rem; padding: 1rem; background: #fff; border: thin solid #ccd8e5; font-size: 0.8125rem; }

@media (48em < width <= 75em) {
  .home .c-contact__item > .c-button { width: 100%; padding-inline: 0.75rem; font-size: 1rem; }
}

@media (width <= 48em) {
  .home .l-header { padding-block: 0.25rem; }
  .p-home-hero { padding-top: 0; padding-bottom: 2.5rem; }
  .p-home-hero__visual { top: 0; bottom: auto; }
  .p-home-hero__title { width: 100%; }
  .p-home-hero__intro { margin-top: 1.25rem; }
  .p-home-hero__actions { gap: 0.75rem; }
  .p-home-hero__actions .c-button:first-child, .p-home-hero__actions .c-button:last-child { width: 100%; }
  .p-home-hero__services { margin-top: 2.5rem; flex-direction: column; overflow: visible; padding-inline: 5.1282%; }
  .p-home-hero .c-service-mini { flex: none; width: 100%; }
  .p-home-hero .c-service-mini__body { padding-block: 0.75rem; }
  .c-achievement { width: calc(151 * var(--sp-scale)); height: calc(92 * var(--sp-scale)); }
  .p-home-quality { padding-block: calc(64 * var(--sp-scale)); }
  .p-home-quality__list { margin-top: 2.5rem; gap: 4rem; }
  .c-quality__body { padding: 2rem 1.5rem 2.5rem; }
  .c-quality:not(:last-child)::after { width: calc(64 * var(--sp-scale)); top: auto; bottom: -3.75rem; left: calc(50% - 32 * var(--sp-scale)); }
  .p-home-quality__comparison > h3 { font-size: 1.125rem; }
  .c-comparison { width: 100%; font-size: 0.8125rem; }
  .c-comparison__label { width: 20%; }
  .c-comparison__realone { width: 42%; }
  .c-comparison th, .c-comparison td { padding: 0.75rem 0.35rem; text-wrap: balance; }
  .c-comparison thead th { font-size: 0.625rem; }
  .c-comparison thead th:nth-child(2) { font-size: 1rem; }
  .c-comparison tbody th { font-size: 0.75rem; }
  .c-comparison tbody td:nth-child(2) { font-size: 0.8125rem; border-inline-width: 0.25rem; border-bottom-width: 0.2rem; }
  .c-comparison tbody tr:last-child td:nth-child(2) { border-bottom-width: 0.25rem; }
  .p-home-services .c-service-card h3 { font-size: 1.375rem; }
  .p-home-services .c-service-card__body { padding-inline: 1.25rem; }
  .p-home-sample__inner { width: 89.74359%; padding: 0 1rem 2rem; }
  .p-home-sample__body { width: 100%; }
  .p-home-sample__screen { position: static; width: 100%; margin-bottom: -0.5rem; }
  .p-home-approach .c-approach h3 { font-size: 1.5rem; text-wrap: balance; }
  .p-home-cases .c-section-bar { row-gap: 1.5rem; }
  .p-home-cases .c-case-slider__track { width: 100%; margin: 0; padding: 0; gap: 1.5rem; scroll-padding: 0; }
  .p-home-cases .c-case-card { flex-basis: 100%; }
  .p-home-cases .c-case-card > a { padding: 1.5rem; gap: 1rem; }
  .p-home-cases .c-case-slider__controls { position: static; margin-top: 1rem; }
  .p-home-cases .c-slider-control, .p-home-cases .c-slider-control img { width: 3rem; height: 3rem; }
  .c-case-slider__pagination { margin-top: -1.75rem; padding-bottom: 1.25rem; }
  .p-home-cases .c-case-card__image { flex: none; width: 100%; }
  .p-home-cases .c-case-card__body { flex-basis: auto; }
  .p-home-cases .c-case-card h3 { font-size: 1.125rem; }
  .p-home-seminar .c-section-heading__title { font-size: 1.5rem; }
  .p-home-seminar__graphic { width: 100%; }
  .p-home-people__inner { width: 89.74359%; padding-inline: 1.25rem; }
  .p-home-people .c-section-heading__title { font-size: 1.3125rem; }
  .p-home-people__actions .c-button { flex: auto; width: 100%; }
  .home .c-contact__list { margin-top: 2rem; }
  .home .c-contact__item > .c-button { width: 100%; padding-inline: 0.75rem; gap: 0.5rem; font-size: 0.9375rem; }
  .c-chat-launcher { width: 5.5rem; height: 5.5rem; right: 0.75rem; bottom: calc(0.75rem + env(safe-area-inset-bottom)); gap: 0.125rem; padding: 0.5rem; font-size: 0.75rem; }
  .c-chat-launcher img { width: 1.75rem; height: 1.75rem; }
  .c-chat-status { bottom: 7rem; width: 15rem; }
  .home .l-footer { padding-bottom: calc(7.5rem + env(safe-area-inset-bottom)); }
  .home .l-footer__bottom small { padding-right: 5.5rem; }
}

@media (width <= 22em) {
  .c-achievement__number, .c-achievement--a .c-achievement__number { font-size: 1.75rem; }
  .c-achievement__unit { font-size: 1.125rem; }
  .c-achievement__suffix, .c-achievement--a .c-achievement__suffix { font-size: 0.5625rem; }
  .c-achievement__ribbon-label { font-size: 0.625rem; }
}

@media (prefers-reduced-motion: reduce) {
  .p-home-hero__slide { transition: none; }
}
