:root {
  --atlas-navy: #0b1f4d;
  --atlas-cyan: #0ea5e9;
  --atlas-muted: #64748b;
}
.atlas-section {
  padding: 72px 0;
}
.atlas-section h2,
.atlas-network-banner h2 {
  font-family: "EB Garamond", Georgia, serif;
  font-size: clamp(2rem, 3vw, 3rem);
  line-height: 1.04;
  margin: 0.35rem 0 0.65rem;
  color: var(--atlas-title, #0b1f4d);
}
.atlas-eyebrow {
  display: block;
  color: var(--atlas-accent, #0ea5e9);
  font-size: 0.68rem;
  letter-spacing: 0.17em;
  font-weight: 700;
  text-transform: uppercase;
}
.atlas-section-lead {
  max-width: 760px;
  color: var(--atlas-text, #64748b);
  line-height: 1.65;
  margin: 0 0 2rem;
}
.atlas-feature-grid__items {
  display: grid;
  border: 1px solid #dbe3ee;
}
.atlas-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.atlas-cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.atlas-cols-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.atlas-feature-card {
  padding: 24px;
  min-height: 180px;
  border-right: 1px solid #dbe3ee;
  border-bottom: 1px solid #dbe3ee;
  transition: 0.2s;
  background: #fff;
}
.atlas-feature-card:hover {
  background: var(--atlas-title);
  transform: translateY(-2px);
}
.atlas-feature-card > span {
  color: var(--atlas-accent);
  font-size: 0.65rem;
}
.atlas-feature-card h3,
.atlas-feature-list h3,
.atlas-article-card h3 {
  font-family: "EB Garamond", Georgia, serif;
  color: var(--atlas-title);
  font-size: 1.25rem;
  margin: 0.65rem 0 0.45rem;
}
.atlas-feature-card p,
.atlas-feature-list p {
  color: var(--atlas-text);
  font-size: 0.9rem;
  line-height: 1.5;
  margin: 0;
}
.atlas-feature-card:hover h3,
.atlas-feature-card:hover p {
  color: #fff;
}
.atlas-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
}
.atlas-pills > a,
.atlas-pills > span {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: var(--pill-bg);
  color: var(--pill-color);
  border: 1px solid #dbe3ee;
  border-radius: 999px;
  padding: 0.6rem 1rem;
  font-size: 0.82rem;
  text-decoration: none;
  transition: 0.2s;
}
.atlas-pills > a:hover {
  transform: translateY(-1px);
  border-color: var(--atlas-accent, #0ea5e9);
  box-shadow: 0 5px 16px rgba(11, 31, 77, 0.08);
}
.atlas-pills i {
  font-size: 0.95em;
  color: currentColor;
}
.atlas-article-card {
  width: min(100%, 390px);
  border-top: 4px solid var(--atlas-accent);
  padding: 24px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(11, 31, 77, 0.08);
}
.atlas-article-card > span {
  font-size: 0.65rem;
  color: var(--atlas-accent);
  font-weight: 700;
  letter-spacing: 0.1em;
}
.atlas-article-card p {
  color: #64748b;
  line-height: 1.58;
}
.atlas-article-card a {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--atlas-title);
  font-weight: 700;
  text-decoration: none;
}
.atlas-feature-list__items {
  display: grid;
  gap: 30px;
  margin-top: 2rem;
}
.atlas-feature-list article {
  border-left: 3px solid var(--atlas-accent);
  padding-left: 18px;
}
.atlas-feature-list h3 {
  margin: 0 0 0.35rem;
}
.atlas-network-banner {
  padding: 62px 0;
}
.atlas-network-banner > .container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
}
.atlas-network-banner h2 {
  color: var(--atlas-title);
  max-width: 760px;
  margin: 0.45rem 0;
}
.atlas-network-banner p {
  color: var(--atlas-text);
  max-width: 760px;
  opacity: 0.85;
  margin: 0;
}
.atlas-banner-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.8rem 1.15rem;
  text-decoration: none;
  font-weight: 700;
  white-space: nowrap;
}
.atlas-section-heading .atlas-section-lead {
  margin-left: 0;
  margin-right: 0;
}
.atlas-section-heading[style*="text-align:center"] .atlas-section-lead {
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 991px) {
  .atlas-cols-4,
  .atlas-cols-3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 767px) {
  .atlas-section {
    padding: 52px 0;
  }
  .atlas-cols-2,
  .atlas-cols-3,
  .atlas-cols-4 {
    grid-template-columns: 1fr;
  }
  .atlas-network-banner > .container {
    align-items: flex-start;
    flex-direction: column;
  }
  .atlas-feature-card {
    min-height: auto;
  }
}

/* Atlas Hero Pro */
.atlas-hero-pro__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: inherit;
  padding-block: 96px;
}
.atlas-hero-pro__eyebrow {
  display: block;
  margin-bottom: 28px;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}
.atlas-hero-pro__title {
  margin: 0;
  font-size: clamp(3rem, 5.1vw, 5.35rem);
  line-height: 1.03;
  letter-spacing: -0.025em;
}
.atlas-hero-pro__title em {
  color: var(--atlas-hero-accent);
  font-weight: inherit;
}
.atlas-hero-pro__subtitle {
  max-width: 690px;
  margin: 30px 0 0;
  font-size: clamp(1rem, 1.35vw, 1.25rem);
  line-height: 1.55;
}
.atlas-hero-pro__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 34px;
}
.atlas-hero-pro__actions .atlas-hero-pro__button {
  margin: 0 !important;
}
.atlas-hero-pro__button {
  min-height: 52px;
  padding: 13px 26px;
  border-width: 1px;
  border-style: solid;
  border-radius: 2px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.atlas-hero--center .atlas-hero-pro__content {
  margin-inline: auto;
  align-items: center;
}
.atlas-hero--center .atlas-hero-pro__subtitle {
  margin-inline: auto;
}
.atlas-hero--right .atlas-hero-pro__content {
  margin-left: auto;
  align-items: flex-end;
}
.atlas-hero--right .atlas-hero-pro__subtitle {
  margin-left: auto;
}
@media (max-width: 767.98px) {
  .atlas-hero-pro__content {
    padding-block: 70px;
  }
  .atlas-hero-pro__title {
    font-size: clamp(2.5rem, 12vw, 4rem);
  }
  .atlas-hero-pro__actions {
    flex-direction: column;
    align-items: stretch;
  }
  .atlas-hero-pro__button {
    width: 100%;
  }
}

/* Atlas CTA Pro 1.0 */
.atlas-cta {
  background: var(--atlas-cta-bg, #e9fbf0);
  padding: var(--atlas-cta-pt, 40px) var(--atlas-cta-pr, 32px)
    var(--atlas-cta-pb, 40px) var(--atlas-cta-pl, 32px);
  position: relative;
  overflow: hidden;
}
.atlas-cta__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
}
.atlas-cta__copy {
  max-width: 760px;
}
.atlas-cta__eyebrow {
  display: block;
  color: var(--atlas-cta-eyebrow, #0ea5e9);
  font-size: var(--atlas-type-eyebrow, 0.72rem);
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  margin: 0 0 14px;
}
.atlas-cta__copy h2 {
  color: var(--atlas-cta-title, #1f2937);
  margin: 0 0 10px;
  line-height: 1.15;
}
.atlas-cta__copy p {
  color: var(--atlas-cta-text, #475569);
  margin: 0;
  line-height: 1.65;
}
.atlas-cta__action {
  flex: 0 0 auto;
}
.atlas-cta__button {
  background: var(--atlas-cta-button, #374151);
  border-color: var(--atlas-cta-button, #374151);
  color: var(--atlas-cta-button-text, #fff);
  white-space: nowrap;
}
.atlas-cta__button:hover {
  filter: brightness(0.94);
  color: var(--atlas-cta-button-text, #fff);
}

.atlas-cta__richtext {
  color: var(--atlas-cta-text, #475569);
  line-height: 1.65;
}

.atlas-cta__richtext > :first-child {
  margin-top: 0;
}

.atlas-cta__richtext > :last-child {
  margin-bottom: 0;
}

.atlas-cta__richtext p {
  color: inherit;
  margin: 0 0 0.85rem;
}

.atlas-cta__richtext ul,
.atlas-cta__richtext ol {
  margin: 0.75rem 0 0.9rem;
  padding-left: 1.4rem;
}

.atlas-cta__richtext li {
  margin: 0.3rem 0;
}

.atlas-cta__richtext a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

.atlas-cta__button--solid {
  background: var(--atlas-cta-button, #374151);
  border-color: var(--atlas-cta-button-border, var(--atlas-cta-button, #374151));
  color: var(--atlas-cta-button-text, #fff);
}

.atlas-cta__button--outline {
  background: transparent;
  border-color: var(--atlas-cta-button-border, var(--atlas-cta-button, #374151));
  color: var(--atlas-cta-button-text, var(--atlas-cta-button, #374151));
}

.atlas-cta__button--ghost {
  background: transparent;
  border-color: transparent;
  color: var(--atlas-cta-button-text, var(--atlas-cta-button, #374151));
}

.atlas-cta__button--link {
  background: transparent;
  border-color: transparent;
  padding-left: 0;
  padding-right: 0;
  color: var(--atlas-cta-button-text, var(--atlas-cta-button, #374151));
}

.atlas-cta__button--outline:hover,
.atlas-cta__button--ghost:hover,
.atlas-cta__button--link:hover {
  background: transparent;
  color: var(--atlas-cta-button-text, var(--atlas-cta-button, #374151));
  filter: brightness(0.85);
}
.atlas-cta--align-center .atlas-cta__inner {
  flex-direction: column;
  text-align: center;
}
.atlas-cta--align-center .atlas-cta__copy {
  margin-inline: auto;
}
.atlas-cta--align-right .atlas-cta__inner {
  text-align: right;
}
.atlas-cta--align-right .atlas-cta__copy {
  margin-left: auto;
}
.atlas-cta--whatsapp {
  border-radius: 18px;
}
.atlas-cta--whatsapp::before {
  content: "\f232";
  font-family: "Font Awesome 6 Brands";
  position: absolute;
  right: 5%;
  top: 50%;
  transform: translateY(-50%);
  font-size: 150px;
  line-height: 1;
  color: rgba(37, 211, 102, 0.12);
  pointer-events: none;
}
.atlas-cta--whatsapp .atlas-cta__inner {
  position: relative;
  z-index: 1;
}
.atlas-cta--corporate {
  border-radius: 0;
}
.atlas-cta--corporate::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    120deg,
    transparent 55%,
    rgba(255, 255, 255, 0.06)
  );
  pointer-events: none;
}
.atlas-cta--gradient {
  background: linear-gradient(135deg, var(--atlas-cta-bg, #123b7a), #0ea5e9);
}
.atlas-cta--centered .atlas-cta__inner {
  flex-direction: column;
  text-align: center;
}
.atlas-cta--centered .atlas-cta__copy {
  margin-inline: auto;
}
.atlas-cta--centered .atlas-cta__button {
  min-width: 180px;
}
.atlas-cta--minimal {
  background: transparent;
  border-top: 1px solid #dbe3ee;
  border-bottom: 1px solid #dbe3ee;
}
.atlas-cta--minimal .atlas-cta__button {
  border-radius: 999px;
}
@media (max-width: 767.98px) {
  .atlas-cta {
    padding-left: min(var(--atlas-cta-pl, 32px), 24px);
    padding-right: min(var(--atlas-cta-pr, 32px), 24px);
  }
  .atlas-cta__inner {
    align-items: flex-start;
    flex-direction: column;
  }
  .atlas-cta--align-center .atlas-cta__inner,
  .atlas-cta--centered .atlas-cta__inner {
    align-items: center;
  }
  .atlas-cta--align-right .atlas-cta__inner {
    align-items: flex-end;
  }
  .atlas-cta__action,
  .atlas-cta__button {
    width: 100%;
  }
  .atlas-cta--whatsapp::before {
    font-size: 100px;
    right: -10px;
  }
}

/* Atlas Typography 1.0 - shared by current and future components */
.atlas-component,
.atlas-section,
.atlas-network-banner,
.atlas-preview-hero,
.atlas-preview-text,
.atlas-preview-section-heading,
.atlas-preview-corporate,
.atlas-preview-network,
.atlas-preview-cta {
  --atlas-type-eyebrow: 0.72rem;
  --atlas-type-heading: clamp(2.15rem, 3vw, 3rem);
  --atlas-type-body: clamp(1rem, 1.2vw, 1.18rem);
  --atlas-type-heading-weight: 600;
  --atlas-type-body-line: 1.65;
}
.atlas-eyebrow,
.atlas-hero-pro__eyebrow,
.atlas-preview-kicker {
  font-size: var(--atlas-type-eyebrow) !important;
}
.atlas-section h2,
.atlas-section-heading h2,
.atlas-network-banner h2,
.atlas-cta__copy h2,
.atlas-hero-pro__title,
.atlas-preview-section-heading h3,
.atlas-preview-corporate h3,
.atlas-preview-network h3,
.atlas-preview-cta h4 {
  font-size: var(--atlas-type-heading) !important;
  font-weight: var(--atlas-type-heading-weight) !important;
}
.atlas-section-lead,
.atlas-network-banner p,
.atlas-cta__copy p,
.atlas-hero-pro__subtitle,
.atlas-text .tn-prose,
.atlas-preview-section-heading p,
.atlas-preview-corporate > p,
.atlas-preview-network p,
.atlas-preview-cta p,
.atlas-preview-rich-content {
  font-size: var(--atlas-type-body) !important;
  line-height: var(--atlas-type-body-line) !important;
}
.atlas-section-heading h2 {
  line-height: 1.05;
  margin: 0.45rem 0 0.8rem;
}
.atlas-section-heading .atlas-section-lead {
  margin-bottom: 0;
}
.atlas-typography-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
@media (max-width: 575.98px) {
  .atlas-typography-grid {
    grid-template-columns: 1fr;
  }
}

/* Atlas Feature Grid Pro */
.atlas-feature-card__icon {
  display: block;
  margin: 0 0 0.9rem;
  color: var(--atlas-accent);
  font-size: 1.45rem;
  line-height: 1;
}
.atlas-feature-card__number {
  display: block;
}

/* Atlas Cards Pro 2.0 */
.atlas-cards__grid {
  display: grid;
  gap: 24px;
}
.atlas-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  background: var(--atlas-card-bg, #fff);
  border: 1px solid #dbe3ee;
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    border-color 0.25s ease;
}
.atlas-card.is-featured {
  grid-column: span 2;
}
.atlas-card__media {
  aspect-ratio: 16/10;
  overflow: hidden;
  background: #e2e8f0;
}
.atlas-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.35s ease;
}
.atlas-card__body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 24px;
}
.atlas-card__icon {
  display: inline-grid;
  place-items: center;
  width: 48px;
  height: 48px;
  margin-bottom: 18px;
  border-radius: 12px;
  background: color-mix(in srgb, var(--atlas-accent) 12%, transparent);
  color: var(--atlas-accent);
  font-size: 1.3rem;
}
.atlas-card__badge {
  display: block;
  margin-bottom: 10px;
  color: var(--atlas-accent);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.atlas-card h3 {
  margin: 0 0 12px;
  color: var(--atlas-title);
  font-family: "EB Garamond", Georgia, serif;
  font-size: 1.55rem;
  line-height: 1.15;
}
.atlas-card p {
  margin: 0;
  color: var(--atlas-card-text, var(--atlas-text));
  font-size: 0.95rem;
  line-height: 1.65;
}
.atlas-card__actions {
  position: relative;
  z-index: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: auto;
  padding-top: 22px;
}
.atlas-card__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 42px;
  padding: 0.65rem 1rem;
  border: 1px solid var(--atlas-accent);
  font-size: 0.82rem;
  font-weight: 800;
  text-decoration: none;
  transition: 0.2s;
}
.atlas-card__button--solid {
  background: var(--atlas-accent);
  color: #fff;
}
.atlas-card__button--outline {
  background: transparent;
  color: var(--atlas-accent);
}
.atlas-card__button--link {
  min-height: auto;
  padding: 0.35rem 0;
  border-color: transparent;
  color: var(--atlas-title);
}
.atlas-card__cover-link {
  position: absolute;
  inset: 0;
  z-index: 1;
}
.atlas-card__actions a {
  position: relative;
  z-index: 3;
}
.atlas-cards--hover-lift .atlas-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 18px 45px rgba(11, 31, 77, 0.14);
}
.atlas-cards--hover-scale .atlas-card:hover {
  transform: scale(1.025);
}
.atlas-cards--hover-scale .atlas-card:hover .atlas-card__media img {
  transform: scale(1.06);
}
.atlas-cards--hover-border .atlas-card:hover {
  border-color: var(--atlas-accent);
}
.atlas-cards--hover-glow .atlas-card:hover {
  box-shadow:
    0 0 0 3px color-mix(in srgb, var(--atlas-accent) 20%, transparent),
    0 20px 46px rgba(11, 31, 77, 0.12);
}
.atlas-cards--editorial .atlas-card {
  border: 0;
  border-top: 4px solid var(--atlas-accent);
  box-shadow: 0 10px 30px rgba(11, 31, 77, 0.08);
}
.atlas-cards--feature .atlas-card {
  border-radius: 16px;
}
.atlas-cards--feature .atlas-card__media {
  display: none;
}
.atlas-cards--corporate .atlas-card {
  border-radius: 2px;
  border-left: 4px solid var(--atlas-accent);
}
.atlas-cards--overlay .atlas-card {
  min-height: 390px;
  border: 0;
  background: #071330;
  color: #fff;
}
.atlas-cards--overlay .atlas-card__media {
  position: absolute;
  inset: 0;
  height: 100%;
  aspect-ratio: auto;
}
.atlas-cards--overlay .atlas-card__media:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(7, 19, 48, 0.08),
    rgba(7, 19, 48, 0.9)
  );
}
.atlas-cards--overlay .atlas-card__body {
  position: relative;
  z-index: 1;
  justify-content: flex-end;
}
.atlas-cards--overlay .atlas-card h3,
.atlas-cards--overlay .atlas-card p,
.atlas-cards--overlay .atlas-card__button--link {
  color: #fff;
}
.atlas-cards--minimal .atlas-card {
  border: 0;
  border-bottom: 1px solid #dbe3ee;
  background: transparent;
}
.atlas-cards--minimal .atlas-card__body {
  padding-left: 0;
  padding-right: 0;
}
.atlas-cards--premium .atlas-card {
  border: 0;
  border-radius: 20px;
  box-shadow: 0 14px 40px rgba(11, 31, 77, 0.12);
}
.atlas-cards--premium .atlas-card__badge {
  display: inline-flex;
  align-self: flex-start;
  padding: 0.38rem 0.65rem;
  border-radius: 999px;
  background: color-mix(in srgb, var(--atlas-accent) 12%, #fff);
}
@media (max-width: 991.98px) {
  .atlas-card.is-featured {
    grid-column: span 1;
  }
}
@media (max-width: 767.98px) {
  .atlas-cards__grid {
    grid-template-columns: 1fr !important;
  }
  .atlas-card__actions {
    flex-direction: column;
  }
  .atlas-card__button {
    width: 100%;
  }
}

/* Cards Pro Builder */
.atlas-cards-theme-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}
.atlas-cards-theme-card {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 10px;
  border: 1px solid #dbe3ee;
  border-radius: 10px;
  background: #fff;
  color: #475569;
  font-size: 0.76rem;
  font-weight: 800;
  text-align: left;
}
.atlas-cards-theme-card:hover,
.atlas-cards-theme-card.is-active {
  border-color: #2563eb;
  background: #eff6ff;
  color: #1d4ed8;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.08);
}
.atlas-card-editor {
  padding: 14px;
  margin-bottom: 14px;
  border: 1px solid #dbe3ee;
  border-radius: 14px;
  background: #f8fafc;
}
.atlas-card-button-row {
  padding: 12px;
  margin-bottom: 10px;
  border: 1px dashed #cbd5e1;
  border-radius: 10px;
  background: #fff;
}
.atlas-card-icon-button {
  height: 38px;
  padding: 0;
  justify-content: center;
}
.atlas-card-icon-button .atlas-icon-preview {
  width: 100%;
  height: 36px;
}
.atlas-preview-cards-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 18px;
}
.atlas-preview-card {
  display: flex;
  flex-direction: column;
  gap: 7px;
  min-height: 150px;
  padding: 14px;
  border: 1px solid #dbe3ee;
  border-top: 3px solid var(--atlas-accent);
  border-radius: 10px;
  background: #fff;
}
.atlas-preview-card.is-featured {
  grid-column: span 2;
}
.atlas-preview-card img {
  width: 100%;
  height: 80px;
  object-fit: cover;
  border-radius: 7px;
}
.atlas-preview-card-icon {
  color: var(--atlas-accent);
  font-size: 1.15rem;
}
.atlas-preview-card small {
  color: var(--atlas-accent);
  font-weight: 800;
}
.atlas-preview-card strong {
  color: #0b1f4d;
}
.atlas-preview-card span {
  color: #64748b;
  font-size: 0.78rem;
}
.atlas-preview-cards--overlay .atlas-preview-card {
  background: #0b1f4d;
}
.atlas-preview-cards--overlay .atlas-preview-card strong,
.atlas-preview-cards--overlay .atlas-preview-card span {
  color: #fff;
}
@media (max-width: 575.98px) {
  .atlas-cards-theme-grid,
  .atlas-preview-cards-grid {
    grid-template-columns: 1fr;
  }
  .atlas-preview-card.is-featured {
    grid-column: span 1;
  }
}

/* Atlas Feature List Pro 1.0 */
.atlas-feature-list__items {
  display: grid;
  gap: 28px;
  margin-top: 2.25rem;
}
.atlas-feature-list__item {
  position: relative;
  min-width: 0;
  color: var(--atlas-text);
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    border-color 0.2s ease,
    background-color 0.2s ease;
}
.atlas-feature-list__content {
  position: relative;
  z-index: 1;
}
.atlas-feature-list__item h3 {
  margin: 0 0 0.45rem;
  color: var(--atlas-title);
  font-family: "EB Garamond", Georgia, serif;
  font-size: 1.22rem;
  line-height: 1.15;
}
.atlas-feature-list__item p {
  margin: 0;
  color: var(--atlas-text);
  font-size: 0.96rem;
  line-height: 1.6;
}
.atlas-feature-list__icon {
  position: relative;
  z-index: 1;
  color: var(--atlas-accent);
  font-size: 1.5rem;
  line-height: 1;
}
.atlas-feature-list__link {
  position: relative;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  margin-top: 1rem;
  color: var(--atlas-title);
  font-weight: 700;
  text-decoration: none;
}
.atlas-feature-list__link:hover {
  color: var(--atlas-accent);
}
.atlas-feature-list__cover-link {
  position: absolute;
  inset: 0;
  z-index: 2;
}
.atlas-feature-list--line .atlas-feature-list__item {
  padding: 8px 12px 8px 22px;
  border-left: 3px solid var(--atlas-accent);
}
.atlas-feature-list--line .atlas-feature-list__icon {
  margin: 0 0 0.8rem;
}
.atlas-feature-list--icon .atlas-feature-list__item {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 16px;
  align-items: start;
  padding: 10px 0;
}
.atlas-feature-list--icon .atlas-feature-list__icon {
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid color-mix(in srgb, var(--atlas-accent) 35%, transparent);
  border-radius: 50%;
}
.atlas-feature-list--card .atlas-feature-list__item {
  padding: 26px;
  background: var(--atlas-feature-bg, #fff);
  border: 1px solid #dbe3ee;
  border-radius: 14px;
  box-shadow: 0 10px 28px rgba(11, 31, 77, 0.06);
}
.atlas-feature-list--card .atlas-feature-list__item:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 38px rgba(11, 31, 77, 0.11);
  border-color: color-mix(in srgb, var(--atlas-accent) 45%, #dbe3ee);
}
.atlas-feature-list--card .atlas-feature-list__icon {
  margin-bottom: 1rem;
}
.atlas-feature-list--minimal .atlas-feature-list__item {
  padding: 6px 0;
}
.atlas-feature-list--minimal .atlas-feature-list__icon {
  display: none;
}
.atlas-preview-feature-list .atlas-mini-features {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 18px;
}
.atlas-preview-feature-list .atlas-mini-features > div {
  position: relative;
  padding: 10px 12px;
}
.atlas-preview-feature-list .atlas-mini-features--line > div {
  border-left: 3px solid var(--atlas-accent);
}
.atlas-preview-feature-list .atlas-mini-features--card > div {
  border: 1px solid #dbe3ee;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 7px 18px rgba(11, 31, 77, 0.05);
}
.atlas-preview-feature-list .atlas-mini-features--icon > div {
  padding-left: 38px;
}
.atlas-preview-feature-list .atlas-mini-features--icon i {
  position: absolute;
  left: 10px;
  top: 12px;
  color: var(--atlas-accent);
}
.atlas-preview-feature-list .atlas-mini-features i {
  display: block;
  margin-bottom: 7px;
  color: var(--atlas-accent);
}
.atlas-preview-feature-list .atlas-mini-features strong,
.atlas-preview-feature-list .atlas-mini-features span,
.atlas-preview-feature-list .atlas-mini-features small {
  display: block;
}
.atlas-preview-feature-list .atlas-mini-features span {
  margin-top: 4px;
  color: var(--atlas-text);
  font-size: 0.78rem;
  line-height: 1.45;
}
.atlas-preview-feature-list .atlas-mini-features small {
  margin-top: 7px;
  color: var(--atlas-accent);
  font-weight: 700;
}
@media (max-width: 991px) {
  .atlas-feature-list .atlas-cols-4,
  .atlas-feature-list .atlas-cols-3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 767px) {
  .atlas-feature-list__items,
  .atlas-preview-feature-list .atlas-mini-features {
    grid-template-columns: 1fr !important;
  }
  .atlas-feature-list--icon .atlas-feature-list__item {
    grid-template-columns: auto 1fr;
  }
}
/* Atlas Split Content Pro 1.0 */
.atlas-split {
  padding: clamp(64px, 8vw, 96px) 0;
  background: var(--atlas-split-bg, #fff);
}
.atlas-split__grid {
  display: grid;
  gap: clamp(32px, 5vw, 64px);
}
.atlas-split--50-50 .atlas-split__grid {
  grid-template-columns: 1fr 1fr;
}
.atlas-split--60-40 .atlas-split__grid {
  grid-template-columns: 1.5fr 1fr;
}
.atlas-split--40-60 .atlas-split__grid {
  grid-template-columns: 1fr 1.5fr;
}

.atlas-split--panel-content .atlas-split__content {
  order: 2;
}
.atlas-split--panel-content .atlas-split__panel {
  order: 1;
}

.atlas-split--align-start .atlas-split__grid {
  align-items: start;
}
.atlas-split--align-center .atlas-split__grid {
  align-items: center;
}
.atlas-split--align-end .atlas-split__grid {
  align-items: end;
}

.atlas-split__content h2 {
  margin: 0.55rem 0 1rem;
  color: var(--atlas-split-title, var(--atlas-primary));
  font-family: "EB Garamond", Georgia, serif;
  font-size: clamp(2.1rem, 3.6vw, 3.4rem);
  line-height: 1.05;
}
.atlas-split__content p {
  margin: 0;
  max-width: 720px;
  color: var(--atlas-split-text, var(--atlas-text-muted));
  font-size: 1.05rem;
  line-height: 1.75;
}
.atlas-split__panel {
  background: var(--atlas-split-panel-bg, #f6f8fb);
  border: 1px solid #dfe6ef;
}
.atlas-split__item {
  padding: 22px 24px;
  border-left: 3px solid var(--atlas-split-accent, var(--atlas-accent));
}
.atlas-split__item + .atlas-split__item {
  border-top: 1px solid #dfe6ef;
}
.atlas-split__item h3 {
  margin: 0 0 0.4rem;
  color: var(--atlas-split-title, var(--atlas-primary));
  font-family: "EB Garamond", Georgia, serif;
  font-size: 1.2rem;
}
.atlas-split__item p {
  margin: 0;
  color: var(--atlas-split-text, var(--atlas-text-muted));
  line-height: 1.6;
  font-size: 0.94rem;
}

@media (max-width: 767.98px) {
  .atlas-split__grid {
    grid-template-columns: 1fr !important;
  }
  .atlas-split--panel-content .atlas-split__content,
  .atlas-split--panel-content .atlas-split__panel {
    order: initial;
  }
}

/* Atlas Process Steps Pro 1.0 */
.atlas-process {
  padding: clamp(64px, 8vw, 96px) 0;
  background: var(--atlas-process-bg, #fff);
}

.atlas-process__header {
  max-width: 820px;
  margin-bottom: clamp(36px, 5vw, 56px);
}

.atlas-process__header h2 {
  margin: 0.55rem 0 1rem;
  color: var(--atlas-process-title, var(--atlas-primary));
  font-family: "EB Garamond", Georgia, serif;
  font-size: clamp(2.2rem, 3.8vw, 3.6rem);
  line-height: 1.05;
}

.atlas-process__header p {
  margin: 0;
  color: var(--atlas-process-text, var(--atlas-text-muted));
  font-size: 1.05rem;
  line-height: 1.75;
}

.atlas-process__steps {
  display: grid;
  gap: 0;
}

.atlas-process--cols-2 .atlas-process__steps {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.atlas-process--cols-3 .atlas-process__steps {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.atlas-process--cols-4 .atlas-process__steps {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.atlas-process__step {
  position: relative;
  padding: 28px 26px;
  background: var(--atlas-process-step-bg, #fff);
  border-top: 1px solid #dfe6ef;
  border-right: 1px solid #dfe6ef;
  border-bottom: 1px solid #dfe6ef;
}

.atlas-process__step:first-child {
  border-left: 1px solid #dfe6ef;
}

.atlas-process__number {
  margin-bottom: 1rem;
  color: var(--atlas-process-accent, var(--atlas-accent));
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.14em;
}

.atlas-process__body h3 {
  margin: 0 0 0.55rem;
  color: var(--atlas-process-title, var(--atlas-primary));
  font-family: "EB Garamond", Georgia, serif;
  font-size: 1.35rem;
}

.atlas-process__body p {
  margin: 0;
  color: var(--atlas-process-text, var(--atlas-text-muted));
  font-size: 0.94rem;
  line-height: 1.65;
}

.atlas-process--vertical .atlas-process__steps {
  display: block;
}

.atlas-process--vertical .atlas-process__step {
  display: grid;
  grid-template-columns: 86px 1fr;
  gap: 22px;
  border-left: 3px solid var(--atlas-process-accent, var(--atlas-accent));
  border-right: 0;
  border-top: 0;
}

.atlas-process--vertical .atlas-process__step:first-child {
  border-top: 1px solid #dfe6ef;
}

.atlas-process--cards .atlas-process__steps {
  gap: 18px;
}

.atlas-process--cards .atlas-process__step {
  border: 1px solid #dfe6ef;
  box-shadow: 0 12px 30px rgba(11, 31, 77, 0.06);
}

@media (max-width: 991.98px) {
  .atlas-process--cols-3 .atlas-process__steps,
  .atlas-process--cols-4 .atlas-process__steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .atlas-process__step:nth-child(odd) {
    border-left: 1px solid #dfe6ef;
  }
}

@media (max-width: 767.98px) {
  .atlas-process__steps,
  .atlas-process--cols-2 .atlas-process__steps,
  .atlas-process--cols-3 .atlas-process__steps,
  .atlas-process--cols-4 .atlas-process__steps {
    grid-template-columns: 1fr;
  }

  .atlas-process__step {
    border-left: 1px solid #dfe6ef;
  }

  .atlas-process--vertical .atlas-process__step {
    grid-template-columns: 58px 1fr;
  }
}
/* Atlas Stats / Metrics Pro 1.0 */
.atlas-stats {
  padding: clamp(64px, 8vw, 96px) 0;
  background: var(--atlas-stats-bg, #f6f8fb);
}

.atlas-stats__header {
  max-width: 820px;
  margin-bottom: clamp(36px, 5vw, 56px);
}

.atlas-stats__header h2 {
  margin: 0.55rem 0 1rem;
  color: var(--atlas-stats-title, var(--atlas-primary));
  font-family: "EB Garamond", Georgia, serif;
  font-size: clamp(2.2rem, 3.8vw, 3.6rem);
  line-height: 1.05;
}

.atlas-stats__header p {
  margin: 0;
  color: var(--atlas-stats-text, var(--atlas-text-muted));
  font-size: 1.05rem;
  line-height: 1.75;
}

.atlas-stats__grid {
  display: grid;
  border-top: 1px solid #dfe6ef;
  border-left: 1px solid #dfe6ef;
}

.atlas-stats--cols-2 .atlas-stats__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.atlas-stats--cols-3 .atlas-stats__grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.atlas-stats--cols-4 .atlas-stats__grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.atlas-stats__item {
  min-height: 220px;
  padding: 30px 28px;
  border-right: 1px solid #dfe6ef;
  border-bottom: 1px solid #dfe6ef;
}

.atlas-stats__value {
  display: block;
  margin-bottom: 1.1rem;
  color: var(--atlas-stats-value, var(--atlas-primary));
  font-family: "EB Garamond", Georgia, serif;
  font-size: clamp(2.4rem, 4vw, 4.4rem);
  font-weight: 600;
  line-height: 0.95;
}

.atlas-stats__item h3 {
  margin: 0 0 0.55rem;
  color: var(--atlas-stats-title, var(--atlas-primary));
  font-family: "EB Garamond", Georgia, serif;
  font-size: 1.25rem;
}

.atlas-stats__item p {
  margin: 0;
  color: var(--atlas-stats-text, var(--atlas-text-muted));
  font-size: 0.9rem;
  line-height: 1.6;
}

.atlas-stats--dark {
  --atlas-stats-bg: #0b1f4d;
  --atlas-stats-title: #ffffff;
  --atlas-stats-text: #cbd5e1;
  --atlas-stats-value: var(--atlas-stats-accent);
}

.atlas-stats--dark .atlas-stats__grid {
  border-color: rgba(255, 255, 255, 0.16);
}

.atlas-stats--dark .atlas-stats__item {
  border-color: rgba(255, 255, 255, 0.16);
}

.atlas-stats--minimal .atlas-stats__grid {
  border: 0;
  gap: 30px;
}

.atlas-stats--minimal .atlas-stats__item {
  min-height: 0;
  padding: 0;
  border: 0;
}

@media (max-width: 991.98px) {
  .atlas-stats--cols-3 .atlas-stats__grid,
  .atlas-stats--cols-4 .atlas-stats__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .atlas-stats__grid,
  .atlas-stats--cols-2 .atlas-stats__grid,
  .atlas-stats--cols-3 .atlas-stats__grid,
  .atlas-stats--cols-4 .atlas-stats__grid {
    grid-template-columns: 1fr;
  }

  .atlas-stats__item {
    min-height: 0;
  }
}
/* Atlas Pillars / Authority Pro 1.0 */
.atlas-pillars {
  padding: clamp(72px, 9vw, 110px) 0;
  background: var(--atlas-pillars-bg, #0b1f4d);
}

.atlas-pillars__header {
  max-width: 820px;
  margin-bottom: clamp(42px, 6vw, 64px);
}

.atlas-pillars__header h2 {
  margin: 0.55rem 0 1rem;
  color: var(--atlas-pillars-title, #fff);
  font-family: "EB Garamond", Georgia, serif;
  font-size: clamp(2.3rem, 4vw, 3.8rem);
  line-height: 1.04;
}

.atlas-pillars__header p {
  margin: 0;
  color: var(--atlas-pillars-text, #cbd5e1);
  font-size: 1.05rem;
  line-height: 1.75;
}

.atlas-pillars__grid {
  display: grid;
  border-top: 1px solid rgba(255, 255, 255, 0.15);
  border-left: 1px solid rgba(255, 255, 255, 0.15);
}

.atlas-pillars--cols-2 .atlas-pillars__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.atlas-pillars--cols-3 .atlas-pillars__grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.atlas-pillars--cols-4 .atlas-pillars__grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.atlas-pillars__item {
  min-height: 245px;
  padding: 32px 28px;
  background: var(--atlas-pillars-item-bg, transparent);
  border-right: 1px solid rgba(255, 255, 255, 0.15);
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}

.atlas-pillars__number {
  display: block;
  margin-bottom: 2rem;
  color: var(--atlas-pillars-accent, var(--atlas-accent));
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.16em;
}

.atlas-pillars__item h3 {
  margin: 0 0 0.7rem;
  color: var(--atlas-pillars-title, #fff);
  font-family: "EB Garamond", Georgia, serif;
  font-size: 1.4rem;
}

.atlas-pillars__item p {
  margin: 0;
  color: var(--atlas-pillars-text, #cbd5e1);
  font-size: 0.92rem;
  line-height: 1.65;
}

.atlas-pillars--light {
  --atlas-pillars-bg: #f6f8fb;
  --atlas-pillars-title: #0b1f4d;
  --atlas-pillars-text: #64748b;
}

.atlas-pillars--light .atlas-pillars__grid,
.atlas-pillars--light .atlas-pillars__item {
  border-color: #dfe6ef;
}

.atlas-pillars--minimal .atlas-pillars__grid {
  border: 0;
  gap: 30px;
}

.atlas-pillars--minimal .atlas-pillars__item {
  min-height: 0;
  padding: 0;
  border: 0;
}

@media (max-width: 991.98px) {
  .atlas-pillars--cols-3 .atlas-pillars__grid,
  .atlas-pillars--cols-4 .atlas-pillars__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .atlas-pillars__grid,
  .atlas-pillars--cols-2 .atlas-pillars__grid,
  .atlas-pillars--cols-3 .atlas-pillars__grid,
  .atlas-pillars--cols-4 .atlas-pillars__grid {
    grid-template-columns: 1fr;
  }

  .atlas-pillars__item {
    min-height: 0;
  }
}
/* Atlas Quote / Highlight Pro 1.0 */
.atlas-quote {
  padding: clamp(78px, 10vw, 128px) 0;
  background: var(--atlas-quote-bg, #0b1f4d);
}

.atlas-quote__inner {
  position: relative;
  max-width: 960px;
}

.atlas-quote--center .atlas-quote__inner {
  margin-inline: auto;
  text-align: center;
}

.atlas-quote__mark {
  margin: 0.5rem 0 -0.8rem;
  color: var(--atlas-quote-accent, var(--atlas-accent));
  font-family: "EB Garamond", Georgia, serif;
  font-size: clamp(4.5rem, 8vw, 7rem);
  line-height: 1;
}

.atlas-quote blockquote {
  margin: 0;
  color: var(--atlas-quote-color, #fff);
  font-family: "EB Garamond", Georgia, serif;
  font-size: clamp(2rem, 4vw, 3.75rem);
  line-height: 1.08;
  font-weight: 500;
}

.atlas-quote__meta {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  margin-top: 2rem;
  color: var(--atlas-quote-meta, #cbd5e1);
}

.atlas-quote__meta strong {
  color: var(--atlas-quote-accent, var(--atlas-accent));
  font-size: 0.84rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.atlas-quote__meta span {
  font-size: 0.92rem;
}

.atlas-quote--light {
  --atlas-quote-bg: #f6f8fb;
  --atlas-quote-color: #0b1f4d;
  --atlas-quote-meta: #64748b;
}

.atlas-quote--accent {
  --atlas-quote-bg: var(--atlas-quote-accent);
  --atlas-quote-color: #071330;
  --atlas-quote-meta: #17324f;
}

.atlas-quote--accent .atlas-eyebrow,
.atlas-quote--accent .atlas-quote__mark,
.atlas-quote--accent .atlas-quote__meta strong {
  color: #071330;
}

/* Atlas Corporate CTA Pro 1.0 */
.atlas-corporate-cta {
  padding: clamp(72px, 9vw, 112px) 0;
  background: var(--atlas-cta-bg, #0b1f4d);
}

.atlas-corporate-cta__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) auto;
  align-items: center;
  gap: clamp(36px, 6vw, 80px);
}

.atlas-corporate-cta--center .atlas-corporate-cta__inner {
  grid-template-columns: 1fr;
  text-align: center;
}

.atlas-corporate-cta--center .atlas-corporate-cta__copy {
  max-width: 900px;
  margin-inline: auto;
}

.atlas-corporate-cta--center .atlas-corporate-cta__actions {
  justify-content: center;
}

.atlas-corporate-cta__copy h2 {
  margin: 0.55rem 0 1rem;
  max-width: 900px;
  color: var(--atlas-cta-title, #fff);
  font-family: "EB Garamond", Georgia, serif;
  font-size: clamp(2.4rem, 4.4vw, 4.3rem);
  line-height: 1.02;
}

.atlas-corporate-cta__copy p {
  margin: 0;
  max-width: 760px;
  color: var(--atlas-cta-text, #cbd5e1);
  font-size: 1.05rem;
  line-height: 1.75;
}

.atlas-corporate-cta__actions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
}

.atlas-corporate-cta__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  min-height: 52px;
  padding: 0.85rem 1.25rem;
  background: var(--atlas-cta-button-bg, var(--atlas-accent));
  color: var(--atlas-cta-button-color, #071330);
  text-decoration: none;
  font-weight: 800;
  transition: 0.2s ease;
}

.atlas-corporate-cta__button:hover {
  transform: translateY(-2px);
  color: var(--atlas-cta-button-color, #071330);
}

.atlas-corporate-cta__secondary {
  color: var(--atlas-cta-text, #cbd5e1);
  text-decoration: none;
  font-weight: 700;
  border-bottom: 1px solid currentColor;
}

.atlas-corporate-cta--light {
  --atlas-cta-bg: #f6f8fb;
  --atlas-cta-title: #0b1f4d;
  --atlas-cta-text: #64748b;
}

.atlas-corporate-cta--accent .atlas-eyebrow {
  color: var(--atlas-cta-eyebrow, var(--atlas-cta-accent, var(--atlas-accent)));
}

@media (max-width: 767.98px) {
  .atlas-corporate-cta__inner {
    grid-template-columns: 1fr;
  }

  .atlas-corporate-cta__actions {
    align-items: stretch;
  }

  .atlas-corporate-cta__button {
    width: 100%;
  }
}

/* Atlas Network / Logos Pro 1.0 */
.atlas-network {
  padding: clamp(72px, 9vw, 110px) 0;
  background: var(--atlas-network-bg, #fff);
}

.atlas-network__header {
  max-width: 820px;
  margin-bottom: clamp(40px, 6vw, 64px);
}

.atlas-network__header h2 {
  margin: 0.55rem 0 1rem;
  color: var(--atlas-network-title, var(--atlas-primary));
  font-family: "EB Garamond", Georgia, serif;
  font-size: clamp(2.3rem, 4vw, 3.8rem);
  line-height: 1.04;
}

.atlas-network__header p {
  margin: 0;
  color: var(--atlas-network-text, var(--atlas-text-muted));
  font-size: 1.05rem;
  line-height: 1.75;
}

.atlas-network__grid {
  display: grid;
  gap: 18px;
}

.atlas-network--cols-2 .atlas-network__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.atlas-network--cols-3 .atlas-network__grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.atlas-network--cols-4 .atlas-network__grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.atlas-network__item {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 250px;
  padding: 28px;
  background: var(--atlas-network-card, #fff);
  border: 1px solid #dfe6ef;
  color: inherit;
  text-decoration: none;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    border-color 0.2s ease;
}

a.atlas-network__item:hover {
  transform: translateY(-4px);
  border-color: var(--atlas-network-accent, var(--atlas-accent));
  box-shadow: 0 16px 36px rgba(11, 31, 77, 0.08);
}

.atlas-network__logo {
  display: flex;
  align-items: center;
  min-height: 105px;
  margin-bottom: 28px;
}

.atlas-network__logo img {
  display: block;
  max-width: 180px;
  max-height: 80px;
  width: auto;
  height: auto;
  object-fit: contain;
}

.atlas-network__placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 72px;
  height: 72px;
  border: 1px solid #dfe6ef;
  color: var(--atlas-network-accent, var(--atlas-accent));
  font-family: "EB Garamond", Georgia, serif;
  font-size: 2rem;
}

.atlas-network__meta {
  margin-top: auto;
}

.atlas-network__meta h3 {
  margin: 0 0 0.5rem;
  color: var(--atlas-network-title, var(--atlas-primary));
  font-family: "EB Garamond", Georgia, serif;
  font-size: 1.3rem;
}

.atlas-network__meta span {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  color: var(--atlas-network-text, var(--atlas-text-muted));
  font-size: 0.85rem;
}

.atlas-network__meta span i {
  color: var(--atlas-network-accent, var(--atlas-accent));
}

.atlas-network__link-icon {
  position: absolute;
  top: 22px;
  right: 22px;
  color: var(--atlas-network-text, var(--atlas-text-muted));
  font-size: 0.8rem;
}

.atlas-network--dark {
  --atlas-network-bg: #0b1f4d;
  --atlas-network-title: #fff;
  --atlas-network-text: #cbd5e1;
  --atlas-network-card: #102958;
}

.atlas-network--dark .atlas-network__item,
.atlas-network--dark .atlas-network__placeholder {
  border-color: rgba(255, 255, 255, 0.14);
}

.atlas-network--minimal .atlas-network__grid {
  gap: 0;
  border-top: 1px solid #dfe6ef;
  border-left: 1px solid #dfe6ef;
}

.atlas-network--minimal .atlas-network__item {
  border: 0;
  border-right: 1px solid #dfe6ef;
  border-bottom: 1px solid #dfe6ef;
}

@media (max-width: 991.98px) {
  .atlas-network--cols-3 .atlas-network__grid,
  .atlas-network--cols-4 .atlas-network__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .atlas-network__grid,
  .atlas-network--cols-2 .atlas-network__grid,
  .atlas-network--cols-3 .atlas-network__grid,
  .atlas-network--cols-4 .atlas-network__grid {
    grid-template-columns: 1fr;
  }

  .atlas-network__item {
    min-height: 210px;
  }
}

/* Atlas Cards Pro 1.0 */
.atlas-cards-pro {
  padding: clamp(72px, 9vw, 110px) 0;
  background: var(--atlas-cards-pro-bg, #fff);
}

.atlas-cards-pro__header {
  max-width: 820px;
  margin-bottom: clamp(40px, 6vw, 64px);
}

.atlas-cards-pro__header h2 {
  margin: 0.55rem 0 1rem;
  color: var(--atlas-cards-pro-title, var(--atlas-primary));
  font-family: "EB Garamond", Georgia, serif;
  font-size: clamp(2.3rem, 4vw, 3.8rem);
  line-height: 1.04;
}

.atlas-cards-pro__header p {
  margin: 0;
  color: var(--atlas-cards-pro-text, var(--atlas-text-muted));
  font-size: 1.05rem;
  line-height: 1.75;
}

.atlas-cards-pro__grid {
  display: grid;
  gap: 22px;
}

.atlas-cards-pro--cols-2 .atlas-cards-pro__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.atlas-cards-pro--cols-3 .atlas-cards-pro__grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.atlas-cards-pro--cols-4 .atlas-cards-pro__grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.atlas-cards-pro__card {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  min-height: 100%;
  background: var(--atlas-cards-pro-card, #fff);
  border: 1px solid #dfe6ef;
  transition:
    transform 0.22s ease,
    border-color 0.22s ease,
    box-shadow 0.22s ease;
}

.atlas-cards-pro__card.is-featured {
  border-color: var(--atlas-cards-pro-accent, var(--atlas-accent));
}

.atlas-cards-pro__media {
  position: relative;
  aspect-ratio: 16/10;
  overflow: hidden;
  background: #eef2f7;
}

.atlas-cards-pro__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.atlas-cards-pro__body {
  position: relative;
  z-index: 2;
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 28px;
}

.atlas-cards-pro__icon {
  margin-bottom: 1.25rem;
  color: var(--atlas-cards-pro-accent, var(--atlas-accent));
  font-size: 1.65rem;
}

.atlas-cards-pro__badge {
  display: inline-block;
  align-self: flex-start;
  margin-bottom: 0.85rem;
  color: var(--atlas-cards-pro-accent, var(--atlas-accent));
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.atlas-cards-pro__body h3 {
  margin: 0 0 0.75rem;
  color: var(--atlas-cards-pro-title, var(--atlas-primary));
  font-family: "EB Garamond", Georgia, serif;
  font-size: 1.45rem;
  line-height: 1.15;
}

.atlas-cards-pro__body p {
  margin: 0;
  color: var(--atlas-cards-pro-text, var(--atlas-text-muted));
  line-height: 1.65;
}

.atlas-cards-pro__more {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  margin-top: auto;
  padding-top: 1.4rem;
  color: var(--atlas-cards-pro-title, var(--atlas-primary));
  font-size: 0.88rem;
  font-weight: 800;
}

.atlas-cards-pro__cover-link {
  position: absolute;
  inset: 0;
  z-index: 3;
}

/* Hover */
.atlas-cards-pro--hover-lift .atlas-cards-pro__card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 42px rgba(11, 31, 77, 0.1);
}

.atlas-cards-pro--hover-scale .atlas-cards-pro__card:hover {
  transform: scale(1.02);
}

.atlas-cards-pro--hover-border .atlas-cards-pro__card:hover {
  border-color: var(--atlas-cards-pro-accent, var(--atlas-accent));
}

.atlas-cards-pro--hover-glow .atlas-cards-pro__card:hover {
  box-shadow:
    0 0 0 1px var(--atlas-cards-pro-accent, var(--atlas-accent)),
    0 18px 42px rgba(11, 31, 77, 0.12);
}

.atlas-cards-pro__card:hover .atlas-cards-pro__media img {
  transform: scale(1.04);
}

/* Themes */
.atlas-cards-pro--editorial .atlas-cards-pro__card {
  border-radius: 0;
}

.atlas-cards-pro--feature .atlas-cards-pro__media {
  display: none;
}

.atlas-cards-pro--feature .atlas-cards-pro__body {
  min-height: 260px;
}

.atlas-cards-pro--corporate .atlas-cards-pro__card {
  border-top: 3px solid var(--atlas-cards-pro-accent, var(--atlas-accent));
}

.atlas-cards-pro--minimal .atlas-cards-pro__grid {
  gap: 34px;
}

.atlas-cards-pro--minimal .atlas-cards-pro__card {
  border: 0;
  background: transparent;
}

.atlas-cards-pro--minimal .atlas-cards-pro__body {
  padding: 0;
}

.atlas-cards-pro--premium .atlas-cards-pro__card {
  box-shadow: 0 18px 44px rgba(11, 31, 77, 0.08);
}

.atlas-cards-pro--premium .atlas-cards-pro__body {
  padding: 32px;
}

.atlas-cards-pro--overlay .atlas-cards-pro__card {
  min-height: 360px;
  background: #0b1f4d;
}

.atlas-cards-pro--overlay .atlas-cards-pro__media {
  position: absolute;
  inset: 0;
  aspect-ratio: auto;
  height: 100%;
}

.atlas-cards-pro--overlay .atlas-cards-pro__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(7, 19, 48, 0.16),
    rgba(7, 19, 48, 0.92)
  );
}

.atlas-cards-pro--overlay .atlas-cards-pro__body {
  justify-content: flex-end;
  min-height: 360px;
}

.atlas-cards-pro--overlay .atlas-cards-pro__body h3,
.atlas-cards-pro--overlay .atlas-cards-pro__more {
  color: #fff;
}

.atlas-cards-pro--overlay .atlas-cards-pro__body p {
  color: #d7e0ec;
}

.atlas-cards-pro--overlay .atlas-cards-pro__icon,
.atlas-cards-pro--overlay .atlas-cards-pro__badge {
  color: var(--atlas-cards-pro-accent, var(--atlas-accent));
}

@media (max-width: 991.98px) {
  .atlas-cards-pro--cols-3 .atlas-cards-pro__grid,
  .atlas-cards-pro--cols-4 .atlas-cards-pro__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .atlas-cards-pro__grid,
  .atlas-cards-pro--cols-2 .atlas-cards-pro__grid,
  .atlas-cards-pro--cols-3 .atlas-cards-pro__grid,
  .atlas-cards-pro--cols-4 .atlas-cards-pro__grid {
    grid-template-columns: 1fr;
  }
}

/* =========================================================
   Atlas Feature Grid Pro 1.0
   ========================================================= */

.atlas-feature-pro {
  padding: clamp(72px, 9vw, 110px) 0;
  background: var(--atlas-feature-bg, #fff);
}

.atlas-feature-pro__header {
  max-width: 820px;
  margin-bottom: clamp(38px, 5vw, 60px);
}

.atlas-feature-pro__header h2 {
  margin: 0.55rem 0 1rem;
  color: var(--atlas-feature-title, var(--atlas-primary));
  font-family: "EB Garamond", Georgia, serif;
  font-size: clamp(2.25rem, 4vw, 3.7rem);
  line-height: 1.05;
}

.atlas-feature-pro__header p {
  margin: 0;
  max-width: 760px;
  color: var(--atlas-feature-text, var(--atlas-text-muted));
  font-size: 1.05rem;
  line-height: 1.75;
}

.atlas-feature-pro__grid {
  display: grid;
}

.atlas-feature-pro--cols-2 .atlas-feature-pro__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.atlas-feature-pro--cols-3 .atlas-feature-pro__grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.atlas-feature-pro--cols-4 .atlas-feature-pro__grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.atlas-feature-pro__item {
  position: relative;
  min-width: 0;
  min-height: 260px;
  padding: 28px;
  background: var(--atlas-feature-card, #fff);
  color: var(--atlas-feature-text, var(--atlas-text-muted));
}

.atlas-feature-pro__number {
  display: block;
  margin-bottom: 1.4rem;
  color: var(--atlas-feature-accent, var(--atlas-accent));
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
}

.atlas-feature-pro__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  margin-bottom: 1.25rem;
  border-radius: 10px;
  background: color-mix(
    in srgb,
    var(--atlas-feature-accent, var(--atlas-accent)) 12%,
    transparent
  );
  color: var(--atlas-feature-accent, var(--atlas-accent));
  font-size: 1.15rem;
}

.atlas-feature-pro__item h3 {
  margin: 0 0 0.7rem;
  color: var(--atlas-feature-title, var(--atlas-primary));
  font-family: "EB Garamond", Georgia, serif;
  font-size: 1.35rem;
  line-height: 1.2;
}

.atlas-feature-pro__item p {
  margin: 0;
  color: var(--atlas-feature-text, var(--atlas-text-muted));
  line-height: 1.65;
}

.atlas-feature-pro__more {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 1.5rem;
  color: var(--atlas-feature-title, var(--atlas-primary));
  font-size: 0.86rem;
  font-weight: 800;
}

.atlas-feature-pro__cover-link {
  position: absolute;
  inset: 0;
  z-index: 3;
}

/* Bordered */

.atlas-feature-pro--bordered .atlas-feature-pro__grid {
  border-top: 1px solid #dfe6ef;
  border-left: 1px solid #dfe6ef;
}

.atlas-feature-pro--bordered .atlas-feature-pro__item {
  border-right: 1px solid #dfe6ef;
  border-bottom: 1px solid #dfe6ef;
}

/* Cards */

.atlas-feature-pro--cards .atlas-feature-pro__grid {
  gap: 20px;
}

.atlas-feature-pro--cards .atlas-feature-pro__item {
  border: 1px solid #dfe6ef;
  border-top: 3px solid var(--atlas-feature-accent, var(--atlas-accent));
  border-radius: 12px;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.06);
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease;
}

.atlas-feature-pro--cards .atlas-feature-pro__item:hover {
  transform: translateY(-5px);
  box-shadow: 0 18px 38px rgba(15, 23, 42, 0.1);
}

/* Minimal */

.atlas-feature-pro--minimal .atlas-feature-pro__grid {
  gap: 34px;
}

.atlas-feature-pro--minimal .atlas-feature-pro__item {
  min-height: auto;
  padding: 0 0 24px;
  border-bottom: 1px solid #dfe6ef;
  background: transparent;
}

/* Dark */

.atlas-feature-pro--dark {
  background: #071330;
}

.atlas-feature-pro--dark .atlas-feature-pro__header h2,
.atlas-feature-pro--dark .atlas-feature-pro__item h3,
.atlas-feature-pro--dark .atlas-feature-pro__more {
  color: #fff;
}

.atlas-feature-pro--dark .atlas-feature-pro__header p,
.atlas-feature-pro--dark .atlas-feature-pro__item p {
  color: #cbd5e1;
}

.atlas-feature-pro--dark .atlas-feature-pro__grid {
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  border-left: 1px solid rgba(255, 255, 255, 0.12);
}

.atlas-feature-pro--dark .atlas-feature-pro__item {
  background: rgba(255, 255, 255, 0.025);
  border-right: 1px solid rgba(255, 255, 255, 0.12);
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

@media (max-width: 991.98px) {
  .atlas-feature-pro--cols-3 .atlas-feature-pro__grid,
  .atlas-feature-pro--cols-4 .atlas-feature-pro__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .atlas-feature-pro__grid,
  .atlas-feature-pro--cols-2 .atlas-feature-pro__grid,
  .atlas-feature-pro--cols-3 .atlas-feature-pro__grid,
  .atlas-feature-pro--cols-4 .atlas-feature-pro__grid {
    grid-template-columns: 1fr;
  }

  .atlas-feature-pro__item {
    min-height: auto;
  }
}

/* =========================================================
   ATLAS HERO ALFONSO FINAL
   Hero compacto de servicios + escudo TN
   ========================================================= */

.tn-hero.atlas-hero.alfonso-service-hero{
  position:relative;
  overflow:hidden;
  min-height:0 !important;
  padding:72px 0 78px !important;
}

.tn-hero.atlas-hero.alfonso-service-hero .container{
  position:relative;
  z-index:2;
}

.tn-hero.atlas-hero.alfonso-service-hero .tn-hero__content{
  position:relative;
  z-index:3;
  max-width:680px !important;
}

.tn-hero.atlas-hero.alfonso-service-hero .atlas-hero-pro__title{
  margin-bottom:18px;
}

.tn-hero.atlas-hero.alfonso-service-hero .atlas-hero-pro__subtitle{
  max-width:650px;
  margin-bottom:26px;
}

.atlas-hero-decorative-logo{
  position:absolute;
  top:50%;
  z-index:1;
  width:clamp(320px,31vw,560px);
  height:78%;
  transform:translateY(-50%);
  pointer-events:none;
  user-select:none;
}

.atlas-hero-decorative-logo--right{
  right:2.5%;
}

.atlas-hero-decorative-logo--center{
  left:50%;
  transform:translate(-50%,-50%);
}

.atlas-hero-decorative-logo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}

@media (max-width:991.98px){
  .tn-hero.atlas-hero.alfonso-service-hero{
    padding:64px 0 68px !important;
  }

  .atlas-hero-decorative-logo{
    right:-70px;
    width:400px;
    height:70%;
  }
}

@media (max-width:767.98px){
  .tn-hero.atlas-hero.alfonso-service-hero{
    padding:52px 0 58px !important;
  }

  .atlas-hero-decorative-logo{
    right:-115px;
    width:320px;
    height:62%;
    opacity:.045 !important;
  }
}

/* Ajuste final del escudo TN en Hero Alfonso */
.tn-hero.atlas-hero.alfonso-service-hero
.atlas-hero-decorative-logo--right{
    right:7%;
    width:clamp(250px,24vw,430px);
    height:68%;
}

@media (max-width:991.98px){
    .tn-hero.atlas-hero.alfonso-service-hero
    .atlas-hero-decorative-logo--right{
        right:2%;
        width:340px;
        height:64%;
    }
}

@media (max-width:767.98px){
    .tn-hero.atlas-hero.alfonso-service-hero
    .atlas-hero-decorative-logo--right{
        right:-60px;
        width:270px;
        height:58%;
    }
}

/* =========================================================
   ATLAS LEADERSHIP / CEO LETTER
   ========================================================= */

.atlas-leadership-letter{
    padding:clamp(4rem,7vw,7rem) 0;
    background:var(--letter-bg,#fff);
}

.atlas-leadership-letter-grid{
    display:grid;
    grid-template-columns:minmax(260px,.72fr) minmax(0,1.55fr);
    gap:clamp(2rem,5vw,5.5rem);
    align-items:center;
}

.atlas-leadership-letter-grid > *{
    min-width:0;
}

.atlas-leadership-letter.is-reversed .atlas-leadership-letter-visual{
    order:2;
}

.atlas-leadership-letter.is-reversed .atlas-leadership-letter-content{
    order:1;
}

.atlas-leadership-letter-visual{
    position:relative;
}

.atlas-leadership-letter-photo{
    position:relative;
    overflow:hidden;
    aspect-ratio:4/5;
    background:#e9edf3;
}

.atlas-leadership-letter-photo:after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:5px;
    background:var(--letter-accent,var(--atlas-accent));
}

.atlas-leadership-letter-photo img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.atlas-leadership-letter-placeholder{
    aspect-ratio:4/5;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#eef1f5;
    color:#9aa5b5;
    font-size:4rem;
}

.atlas-leadership-letter-person{
    padding:1.15rem 0 0;
}

.atlas-leadership-letter-person strong,
.atlas-leadership-letter-person span,
.atlas-leadership-letter-meta strong,
.atlas-leadership-letter-meta span{
    display:block;
}

.atlas-leadership-letter-person strong,
.atlas-leadership-letter-meta strong{
    color:var(--letter-author,var(--atlas-primary));
    font-weight:700;
}

.atlas-leadership-letter-person span,
.atlas-leadership-letter-meta span{
    margin-top:.2rem;
    color:var(--letter-text,var(--atlas-text-muted));
    font-size:.88rem;
}

.atlas-leadership-letter-content{
    position:relative;
    padding:clamp(2rem,4vw,4rem);
    background:var(--letter-panel,#f6f8fb);
    border-top:4px solid var(--letter-accent,var(--atlas-accent));
}

.atlas-leadership-letter-content:before{
    content:"“";
    position:absolute;
    right:clamp(1rem,3vw,2.5rem);
    top:.35rem;
    font-family:"EB Garamond",Georgia,serif;
    font-size:clamp(5rem,10vw,9rem);
    line-height:1;
    color:var(--letter-accent,var(--atlas-accent));
    opacity:.12;
    pointer-events:none;
}

.atlas-leadership-letter-eyebrow{
    margin-bottom:.8rem;
    color:var(--letter-accent,var(--atlas-accent));
    font-size:.75rem;
    font-weight:800;
    letter-spacing:.16em;
    text-transform:uppercase;
}

.atlas-leadership-letter h2{
    position:relative;
    z-index:1;
    max-width:780px;
    margin:0 0 1.6rem;
    color:var(--letter-title,var(--atlas-primary));
    font-family:"EB Garamond",Georgia,serif;
    font-size:clamp(2rem,4vw,3.5rem);
    line-height:1.04;
    font-weight:500;
}

.atlas-leadership-letter-copy{
    position:relative;
    z-index:1;
    max-width:850px;
    color:var(--letter-text,var(--atlas-text-muted));
    font-size:1rem;
    line-height:1.85;
}

.atlas-leadership-letter-copy p{
    margin:0 0 1.2rem;
}

.atlas-leadership-letter-copy p:last-child{
    margin-bottom:0;
}

.atlas-leadership-letter-signature{
    display:block;
    max-width:190px;
    max-height:85px;
    object-fit:contain;
    object-position:left center;
    margin-top:1.75rem;
}

.atlas-leadership-letter-meta{
    margin-top:1.4rem;
    padding-top:1.25rem;
    border-top:1px solid rgba(15,23,42,.12);
}

.atlas-leadership-letter-person{
    display:none;
}

.atlas-leadership-letter--dark{
    --letter-bg:#071330;
    --letter-panel:#0b1f4d;
    --letter-title:#fff;
    --letter-text:#cbd5e1;
    --letter-author:#fff;
}

.atlas-leadership-letter--dark .atlas-leadership-letter-meta{
    border-top-color:rgba(255,255,255,.14);
}

@media (max-width:991.98px){
    .atlas-leadership-letter-grid{
        grid-template-columns:1fr;
        gap:1.75rem;
    }

    .atlas-leadership-letter.is-reversed .atlas-leadership-letter-visual,
    .atlas-leadership-letter.is-reversed .atlas-leadership-letter-content{
        order:initial;
    }

    .atlas-leadership-letter-visual{
        max-width:420px;
    }

    .atlas-leadership-letter-photo,
    .atlas-leadership-letter-placeholder{
        aspect-ratio:4/4.6;
    }
}

@media (max-width:575.98px){
    .atlas-leadership-letter{
        padding:3.25rem 0;
    }

    .atlas-leadership-letter-content{
        padding:1.6rem 1.35rem;
    }
}

/* ==========================================================
   Corporate CTA Pro - RichText / spacing fixes
   ========================================================== */

/*
 * El archivo atlas-corporate-pages.css contiene una regla antigua
 * .atlas-corporate-cta que puede sobrescribir padding del componente Pro.
 * :has(.atlas-corporate-cta__inner) identifica únicamente la versión nueva.
 */
.atlas-corporate-cta:has(.atlas-corporate-cta__inner) {
  padding: clamp(64px, 7vw, 96px) 0;
  margin-block: clamp(32px, 4vw, 64px);
}

/* Texto enriquecido */
.atlas-corporate-cta__text {
  max-width: 760px;
  color: var(--atlas-cta-text, #cbd5e1);
  font-size: 1.05rem;
  line-height: 1.7;
}

.atlas-corporate-cta__text p {
  margin: 0 0 0.85rem;
  color: inherit;
}

/* Listas */
.atlas-corporate-cta__text ul,
.atlas-corporate-cta__text ol {
  margin: 0.65rem 0 0;
  padding-left: 1.5rem;
  color: var(--atlas-cta-text, #cbd5e1);
}

.atlas-corporate-cta__text li {
  margin: 0.25rem 0;
  padding-left: 0.2rem;
  color: inherit;
  line-height: 1.55;
}

/* Marcadores/viñetas: importante para fondos oscuros */
.atlas-corporate-cta__text li::marker {
  color: var(--atlas-cta-accent, var(--atlas-accent, #c9a227));
}

/* CTA claro */
.atlas-corporate-cta--light .atlas-corporate-cta__text,
.atlas-corporate-cta--light .atlas-corporate-cta__text ul,
.atlas-corporate-cta--light .atlas-corporate-cta__text ol {
  color: var(--atlas-cta-text, #64748b);
}

/* Separación móvil */
@media (max-width: 767.98px) {
  .atlas-corporate-cta:has(.atlas-corporate-cta__inner) {
    padding: 52px 0;
    margin-block: 28px;
  }

  .atlas-corporate-cta__text ul,
  .atlas-corporate-cta__text ol {
    padding-left: 1.35rem;
  }
}



/* ==========================================================
   Atlas Corporate CTA Pro 1.1
   Layout configurable desde Atlas Studio
   ========================================================== */

/*
 * Aísla el componente Pro de reglas históricas de
 * atlas-corporate-pages.css que también usan .atlas-corporate-cta.
 */
.atlas-corporate-cta.atlas-corporate-cta--pro {
  display: block;
  gap: 0;
  align-items: initial;
  justify-content: initial;

  padding-inline: 0;

  background: var(--atlas-cta-bg, #0b1f4d);

  overflow: hidden;
  box-sizing: border-box;
}

/* ----------------------------------------------------------
   Separación exterior
   ---------------------------------------------------------- */

.atlas-corporate-cta--pro.atlas-corporate-cta--space-none {
  margin-block: 0;
}

.atlas-corporate-cta--pro.atlas-corporate-cta--space-sm {
  margin-block: clamp(16px, 2vw, 24px);
}

.atlas-corporate-cta--pro.atlas-corporate-cta--space-md {
  margin-block: clamp(32px, 4vw, 48px);
}

.atlas-corporate-cta--pro.atlas-corporate-cta--space-lg {
  margin-block: clamp(48px, 6vw, 72px);
}


/* ----------------------------------------------------------
   Espaciado interior
   ---------------------------------------------------------- */

.atlas-corporate-cta--pro.atlas-corporate-cta--padding-compact {
  padding-block: clamp(36px, 4vw, 48px);
}

.atlas-corporate-cta--pro.atlas-corporate-cta--padding-normal {
  padding-block: clamp(56px, 6vw, 76px);
}

.atlas-corporate-cta--pro.atlas-corporate-cta--padding-roomy {
  padding-block: clamp(76px, 8vw, 104px);
}


/* ----------------------------------------------------------
   Radio
   ---------------------------------------------------------- */

.atlas-corporate-cta--pro.atlas-corporate-cta--radius-none {
  border-radius: 0;
}

.atlas-corporate-cta--pro.atlas-corporate-cta--radius-sm {
  border-radius: 8px;
}

.atlas-corporate-cta--pro.atlas-corporate-cta--radius-md {
  border-radius: 14px;
}

.atlas-corporate-cta--pro.atlas-corporate-cta--radius-lg {
  border-radius: 22px;
}


/* ----------------------------------------------------------
   Ancho
   ---------------------------------------------------------- */

.atlas-corporate-cta--pro.atlas-corporate-cta--width-full {
  width: 100%;
}

.atlas-corporate-cta--pro.atlas-corporate-cta--width-contained {
  width: min(calc(100% - 2rem), 1180px);
  margin-inline: auto;
}


/* Cuando el bloque es contenido, conservamos margin-inline:auto
   independientemente del espacio vertical seleccionado. */

.atlas-corporate-cta--width-contained.atlas-corporate-cta--space-none {
  margin-top: 0;
  margin-bottom: 0;
}

.atlas-corporate-cta--width-contained.atlas-corporate-cta--space-sm {
  margin-top: clamp(16px, 2vw, 24px);
  margin-bottom: clamp(16px, 2vw, 24px);
}

.atlas-corporate-cta--width-contained.atlas-corporate-cta--space-md {
  margin-top: clamp(32px, 4vw, 48px);
  margin-bottom: clamp(32px, 4vw, 48px);
}

.atlas-corporate-cta--width-contained.atlas-corporate-cta--space-lg {
  margin-top: clamp(48px, 6vw, 72px);
  margin-bottom: clamp(48px, 6vw, 72px);
}


/* ----------------------------------------------------------
   RichText
   ---------------------------------------------------------- */

.atlas-corporate-cta--pro .atlas-corporate-cta__text {
  max-width: 760px;
  color: var(--atlas-cta-text, #cbd5e1);
  font-size: 1.05rem;
  line-height: 1.7;
}

.atlas-corporate-cta--pro .atlas-corporate-cta__text p {
  margin: 0 0 0.85rem;
  color: inherit;
}

.atlas-corporate-cta--pro .atlas-corporate-cta__text ul,
.atlas-corporate-cta--pro .atlas-corporate-cta__text ol {
  margin: 0.7rem 0 0;
  padding-left: 1.55rem;
  color: inherit;
}

.atlas-corporate-cta--pro .atlas-corporate-cta__text li {
  margin: 0.25rem 0;
  padding-left: 0.15rem;
  color: inherit;
  line-height: 1.55;
}

.atlas-corporate-cta--pro .atlas-corporate-cta__text li::marker {
  color: var(
    --atlas-cta-accent,
    var(--atlas-accent, #c9a227)
  );
}


/* ----------------------------------------------------------
   Responsive
   ---------------------------------------------------------- */

@media (max-width: 767.98px) {

  .atlas-corporate-cta--pro.atlas-corporate-cta--width-contained {
    width: min(calc(100% - 1.25rem), 1180px);
  }

  .atlas-corporate-cta--pro.atlas-corporate-cta--padding-compact {
    padding-block: 32px;
  }

  .atlas-corporate-cta--pro.atlas-corporate-cta--padding-normal {
    padding-block: 44px;
  }

  .atlas-corporate-cta--pro.atlas-corporate-cta--padding-roomy {
    padding-block: 58px;
  }

}



/* ==========================================================
   Corporate CTA Pro - Button variants
   ========================================================== */

/*
 * La mayor especificidad evita que las reglas históricas:
 *
 * .atlas-corporate-cta a { background:#fff; ... }
 *
 * pisen el componente Pro.
 */
.atlas-corporate-cta--pro .atlas-corporate-cta__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .75rem;

  min-height: 52px;
  padding: .85rem 1.25rem;

  border: 2px solid transparent;
  border-radius: 10px;

  text-decoration: none;
  font-weight: 800;

  transition:
    background-color .2s ease,
    color .2s ease,
    border-color .2s ease,
    transform .2s ease;
}


/* SÓLIDO */

.atlas-corporate-cta--pro
.atlas-corporate-cta__button--solid {
  background: var(--atlas-cta-button-bg);
  border-color: var(--atlas-cta-button-bg);
  color: var(--atlas-cta-button-color);
}

.atlas-corporate-cta--pro
.atlas-corporate-cta__button--solid:hover {
  background: var(--atlas-cta-button-bg);
  border-color: var(--atlas-cta-button-bg);
  color: var(--atlas-cta-button-color);
  transform: translateY(-2px);
}


/* OUTLINE */

.atlas-corporate-cta--pro
.atlas-corporate-cta__button--outline {
  background: transparent;
  border-color: var(
    --atlas-cta-button-border,
    var(--atlas-cta-accent)
  );
  color: var(--atlas-cta-button-color);
}

.atlas-corporate-cta--pro
.atlas-corporate-cta__button--outline:hover {
  background: var(
    --atlas-cta-button-border,
    var(--atlas-cta-accent)
  );
  border-color: var(
    --atlas-cta-button-border,
    var(--atlas-cta-accent)
  );
  color: var(--atlas-cta-button-color);
  transform: translateY(-2px);
}


/* GHOST */

.atlas-corporate-cta--pro
.atlas-corporate-cta__button--ghost {
  background: transparent;
  border-color: transparent;
  color: var(--atlas-cta-button-color);
}

.atlas-corporate-cta--pro
.atlas-corporate-cta__button--ghost:hover {
  background: rgba(255,255,255,.08);
  border-color: transparent;
  color: var(--atlas-cta-button-color);
}


/* LINK */

.atlas-corporate-cta--pro
.atlas-corporate-cta__button--link {
  min-height: auto;
  padding: .35rem 0;

  background: transparent;
  border: 0;
  border-radius: 0;

  color: var(--atlas-cta-button-color);

  border-bottom: 1px solid currentColor;
}

.atlas-corporate-cta--pro
.atlas-corporate-cta__button--link:hover {
  background: transparent;
  color: var(--atlas-cta-button-color);
  transform: none;
}


/* Evita específicamente la regla legacy del CTA corporativo antiguo */

.atlas-corporate-cta--pro
a.atlas-corporate-cta__button {
  text-decoration: none;
}


/* Atlas RichText inside Split Content and Feature Grid */
.atlas-split__richtext,
.atlas-split__item-richtext,
.atlas-feature-pro__richtext,
.atlas-feature-pro__item-richtext {
    color: inherit;
}

.atlas-split__richtext p,
.atlas-split__item-richtext p,
.atlas-feature-pro__richtext p,
.atlas-feature-pro__item-richtext p {
    margin: 0 0 .65rem;
    line-height: 1.6;
}

.atlas-split__richtext p:last-child,
.atlas-split__item-richtext p:last-child,
.atlas-feature-pro__richtext p:last-child,
.atlas-feature-pro__item-richtext p:last-child {
    margin-bottom: 0;
}

.atlas-split__richtext ul,
.atlas-split__richtext ol,
.atlas-split__item-richtext ul,
.atlas-split__item-richtext ol,
.atlas-feature-pro__richtext ul,
.atlas-feature-pro__richtext ol,
.atlas-feature-pro__item-richtext ul,
.atlas-feature-pro__item-richtext ol {
    margin: .5rem 0 0;
    padding-left: 1.35rem;
}

.atlas-split__richtext ul,
.atlas-split__item-richtext ul,
.atlas-feature-pro__richtext ul,
.atlas-feature-pro__item-richtext ul {
    list-style: disc;
}

.atlas-split__richtext ol,
.atlas-split__item-richtext ol,
.atlas-feature-pro__richtext ol,
.atlas-feature-pro__item-richtext ol {
    list-style: decimal;
}

.atlas-split__richtext li,
.atlas-split__item-richtext li,
.atlas-feature-pro__richtext li,
.atlas-feature-pro__item-richtext li {
    margin: .18rem 0;
    padding-left: .1rem;
    line-height: 1.5;
}

.atlas-split__richtext li::marker,
.atlas-split__item-richtext li::marker,
.atlas-feature-pro__richtext li::marker,
.atlas-feature-pro__item-richtext li::marker {
    color: var(--atlas-split-accent, var(--atlas-feature-accent, var(--atlas-accent)));
}


/* Feature Grid Pro responsive columns V2 */
.atlas-feature-pro .atlas-feature-pro__grid {
    grid-template-columns:
        repeat(var(--atlas-feature-cols-desktop, 4), minmax(0, 1fr));
}

@media (max-width: 991.98px) {
    .atlas-feature-pro .atlas-feature-pro__grid {
        grid-template-columns:
            repeat(var(--atlas-feature-cols-tablet, 2), minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .atlas-feature-pro .atlas-feature-pro__grid {
        grid-template-columns:
            repeat(var(--atlas-feature-cols-mobile, 1), minmax(0, 1fr));
    }

    .atlas-feature-pro__item {
        min-height: auto;
    }
}

/*
 * Dos columnas en teléfonos requieren una tarjeta más compacta
 * para evitar que el contenido quede excesivamente comprimido.
 */
@media (max-width: 767.98px) {
    .atlas-feature-pro[style*="--atlas-feature-cols-mobile:2"]
    .atlas-feature-pro__item {
        padding: 20px 16px;
    }

    .atlas-feature-pro[style*="--atlas-feature-cols-mobile:2"]
    .atlas-feature-pro__item h3 {
        font-size: 1.15rem;
    }

    .atlas-feature-pro[style*="--atlas-feature-cols-mobile:2"]
    .atlas-feature-pro__number {
        margin-bottom: 1rem;
    }

    .atlas-feature-pro[style*="--atlas-feature-cols-mobile:2"]
    .atlas-feature-pro__icon {
        margin-bottom: 1rem;
    }
}


/* Atlas Hero V2 responsive content */
.atlas-hero-pro__subtitle--mobile {
    display: none;
}

@media (max-width: 767.98px) {
    .atlas-hero-pro__subtitle--mobile {
        display: block;
    }

    .atlas-hero-pro__subtitle--mobile
        ~ .atlas-hero-pro__actions {
        margin-top: 34px;
    }

    .atlas-hero-pro__content:has(.atlas-hero-pro__subtitle--mobile)
        .atlas-hero-pro__subtitle--desktop {
        display: none;
    }
}

/* Atlas Hero V2 - configurable overlay */
.atlas-hero {
    position: relative;
    overflow: hidden;
}

.atlas-hero-background-overlay {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background: var(--atlas-hero-overlay-color, #071330);
    opacity: var(--atlas-hero-overlay-opacity, .62);
}

.atlas-hero > .container,
.atlas-hero > .container-fluid {
    position: relative;
    z-index: 2;
}

.atlas-hero .atlas-hero-decorative-logo {
    z-index: 1;
}

/* Imagen alternativa móvil Hero V2 */
@media (max-width: 767.98px) {
    .atlas-hero--has-mobile-image {
        background-image: var(--atlas-hero-mobile-bg) !important;
        background-position:
            var(--atlas-hero-mobile-position, center center) !important;
        background-size: cover !important;
        background-repeat: no-repeat !important;
    }
}

/* =========================================================
   Atlas Hero V2 - Video Background
   ========================================================= */

.atlas-hero-video {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
    background: transparent;
}

.atlas-hero-video__native {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    pointer-events: none;
}

.atlas-hero-video__iframe {
    position: absolute;
    top: 50%;
    left: 50%;

    /*
     * Mantiene un iframe 16:9 cubriendo el Hero
     * sin barras negras.
     */
    width: max(100%, 177.77777778vh);
    height: max(100%, 56.25vw);

    transform: translate(-50%, -50%);
    border: 0;
    pointer-events: none;
}

/* Atlas Hero V2 - video por dispositivo */
.atlas-hero-video--mobile {
    display: none;
}

@media (max-width: 767.98px) {
    .atlas-hero-video--desktop {
        display: none;
    }

    .atlas-hero-video--mobile {
        display: block;
    }

    /*
     * En móvil el video suele ser 9:16 o 4:5.
     * Estas reglas lo fuerzan a cubrir todo el Hero.
     */
    .atlas-hero-video--mobile .atlas-hero-video__native {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .atlas-hero-video--mobile .atlas-hero-video__iframe {
        min-width: 100%;
        min-height: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .atlas-hero-video--desktop,
    .atlas-hero-video--mobile {
        display: none !important;
    }
}

/* =========================================================
   Atlas Hero V2 - Animated Backgrounds
   ========================================================= */

.atlas-hero-animation {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
}

/* 1. Gradiente animado */
.atlas-hero-animation--gradient {
    background:
        linear-gradient(
            125deg,
            #071330 0%,
            #0b1f4d 25%,
            #0b6f9f 50%,
            #12336f 75%,
            #071330 100%
        );
    background-size: 300% 300%;
    animation: atlasHeroGradient 14s ease infinite;
}

@keyframes atlasHeroGradient {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

/* 2. Orbes suaves */
.atlas-hero-animation--orbs {
    background:
        linear-gradient(135deg, #071330 0%, #0b1f4d 100%);
}

.atlas-hero-animation__orb {
    position: absolute;
    display: block;
    border-radius: 50%;
    filter: blur(12px);
    opacity: .32;
    will-change: transform;
}

.atlas-hero-animation__orb--1 {
    width: 420px;
    height: 420px;
    top: -140px;
    right: -80px;
    background: rgba(1, 174, 240, .75);
    animation: atlasHeroOrbOne 16s ease-in-out infinite alternate;
}

.atlas-hero-animation__orb--2 {
    width: 330px;
    height: 330px;
    left: 8%;
    bottom: -170px;
    background: rgba(201, 162, 39, .48);
    animation: atlasHeroOrbTwo 19s ease-in-out infinite alternate;
}

.atlas-hero-animation__orb--3 {
    width: 240px;
    height: 240px;
    left: 46%;
    top: 18%;
    background: rgba(18, 51, 111, .9);
    animation: atlasHeroOrbThree 13s ease-in-out infinite alternate;
}

@keyframes atlasHeroOrbOne {
    from {
        transform: translate3d(0, 0, 0) scale(1);
    }
    to {
        transform: translate3d(-110px, 100px, 0) scale(1.16);
    }
}

@keyframes atlasHeroOrbTwo {
    from {
        transform: translate3d(0, 0, 0) scale(1);
    }
    to {
        transform: translate3d(130px, -80px, 0) scale(1.2);
    }
}

@keyframes atlasHeroOrbThree {
    from {
        transform: translate3d(0, 0, 0) scale(.9);
    }
    to {
        transform: translate3d(90px, 70px, 0) scale(1.18);
    }
}

/* 3. Formas flotantes */
.atlas-hero-animation--shapes {
    background:
        linear-gradient(135deg, #071330 0%, #0b1f4d 65%, #12336f 100%);
}

.atlas-hero-animation__shape {
    position: absolute;
    display: block;
    border: 1px solid rgba(255, 255, 255, .16);
    background: rgba(255, 255, 255, .035);
    backdrop-filter: blur(2px);
    will-change: transform;
}

.atlas-hero-animation__shape--1 {
    width: 230px;
    height: 230px;
    top: 8%;
    right: 9%;
    transform: rotate(24deg);
    animation: atlasHeroShapeOne 18s ease-in-out infinite alternate;
}

.atlas-hero-animation__shape--2 {
    width: 150px;
    height: 150px;
    bottom: 8%;
    left: 12%;
    border-radius: 50%;
    animation: atlasHeroShapeTwo 14s ease-in-out infinite alternate;
}

.atlas-hero-animation__shape--3 {
    width: 110px;
    height: 110px;
    top: 32%;
    left: 48%;
    transform: rotate(45deg);
    animation: atlasHeroShapeThree 12s ease-in-out infinite alternate;
}

@keyframes atlasHeroShapeOne {
    from {
        transform: translate3d(0, 0, 0) rotate(24deg);
    }
    to {
        transform: translate3d(-80px, 55px, 0) rotate(58deg);
    }
}

@keyframes atlasHeroShapeTwo {
    from {
        transform: translate3d(0, 0, 0);
    }
    to {
        transform: translate3d(95px, -65px, 0);
    }
}

@keyframes atlasHeroShapeThree {
    from {
        transform: translate3d(0, 0, 0) rotate(45deg);
    }
    to {
        transform: translate3d(70px, 85px, 0) rotate(105deg);
    }
}

/* 4. Glow corporativo */
.atlas-hero-animation--glow {
    background:
        linear-gradient(135deg, #071330 0%, #0b1f4d 75%, #071330 100%);
}

.atlas-hero-animation__glow {
    position: absolute;
    width: 75vw;
    height: 75vw;
    max-width: 1000px;
    max-height: 1000px;
    top: 50%;
    left: 72%;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    background:
        radial-gradient(
            circle,
            rgba(1, 174, 240, .48) 0%,
            rgba(18, 51, 111, .24) 35%,
            rgba(7, 19, 48, 0) 70%
        );
    filter: blur(10px);
    animation: atlasHeroGlow 9s ease-in-out infinite alternate;
}

@keyframes atlasHeroGlow {
    from {
        opacity: .55;
        transform: translate(-50%, -50%) scale(.88);
    }
    to {
        opacity: 1;
        transform: translate(-50%, -50%) scale(1.12);
    }
}

/* Jerarquía Hero V2 */
.atlas-hero-video,
.atlas-hero-animation {
    z-index: 0;
}

.atlas-hero-background-overlay {
    z-index: 1;
}

.atlas-hero .atlas-hero-decorative-logo {
    z-index: 2;
}

.atlas-hero > .container,
.atlas-hero > .container-fluid {
    z-index: 3;
}

/* Menos movimiento cuando el sistema lo solicita */
@media (prefers-reduced-motion: reduce) {
    .atlas-hero-animation,
    .atlas-hero-animation *,
    .atlas-hero-animation::before,
    .atlas-hero-animation::after {
        animation: none !important;
    }
}

/* Ajustes móviles */
@media (max-width: 767.98px) {
    .atlas-hero-animation__orb--1 {
        width: 280px;
        height: 280px;
    }

    .atlas-hero-animation__orb--2 {
        width: 230px;
        height: 230px;
    }

    .atlas-hero-animation__orb--3 {
        width: 170px;
        height: 170px;
    }

    .atlas-hero-animation__shape--1 {
        width: 150px;
        height: 150px;
    }

    .atlas-hero-animation__shape--2 {
        width: 110px;
        height: 110px;
    }

    .atlas-hero-animation__shape--3 {
        width: 80px;
        height: 80px;
    }

    .atlas-hero-animation__glow {
        width: 130vw;
        height: 130vw;
        left: 65%;
    }
}

/* =========================================================
   Atlas Hero V2 - Red digital
   ========================================================= */

.atlas-hero-animation--network {
    background:
        radial-gradient(
            circle at 72% 38%,
            rgba(1, 174, 240, .16),
            transparent 32%
        ),
        linear-gradient(
            135deg,
            #06112b 0%,
            #0b1f4d 55%,
            #071330 100%
        );
}

.atlas-hero-network {
    position: absolute;
    inset: 0;
    overflow: hidden;
}

.atlas-hero-network__grid {
    position: absolute;
    inset: -15%;
    opacity: .25;

    background-image:
        linear-gradient(
            rgba(1, 174, 240, .08) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(1, 174, 240, .08) 1px,
            transparent 1px
        );

    background-size: 72px 72px;

    transform:
        perspective(700px)
        rotateX(62deg)
        translateY(18%);

    transform-origin: center bottom;

    mask-image:
        linear-gradient(
            to bottom,
            transparent,
            #000 30%,
            #000 85%,
            transparent
        );

    animation:
        atlasHeroNetworkGrid 18s linear infinite;
}

.atlas-hero-network__node {
    position: absolute;

    width: 8px;
    height: 8px;

    border-radius: 50%;

    background: #01aef0;

    box-shadow:
        0 0 0 5px rgba(1, 174, 240, .08),
        0 0 22px rgba(1, 174, 240, .8);

    animation:
        atlasHeroNetworkNode 4s ease-in-out infinite alternate;
}

.atlas-hero-network__node--1 {
    left: 12%;
    top: 30%;
}

.atlas-hero-network__node--2 {
    left: 29%;
    top: 54%;
    animation-delay: -1s;
}

.atlas-hero-network__node--3 {
    left: 45%;
    top: 24%;
    animation-delay: -2.4s;
}

.atlas-hero-network__node--4 {
    left: 60%;
    top: 49%;
    animation-delay: -1.7s;
}

.atlas-hero-network__node--5 {
    left: 76%;
    top: 25%;
    animation-delay: -.8s;
}

.atlas-hero-network__node--6 {
    left: 84%;
    top: 62%;
    animation-delay: -3s;
}

.atlas-hero-network__node--7 {
    left: 52%;
    top: 72%;
    animation-delay: -2s;
}

/* Líneas */
.atlas-hero-network__line {
    position: absolute;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(1, 174, 240, .65),
            rgba(255, 255, 255, .18),
            transparent
        );

    transform-origin: left center;

    opacity: .62;

    animation:
        atlasHeroNetworkLine 6s ease-in-out infinite alternate;
}

.atlas-hero-network__line--1 {
    width: 24%;
    left: 12%;
    top: 31%;
    transform: rotate(31deg);
}

.atlas-hero-network__line--2 {
    width: 22%;
    left: 29%;
    top: 54%;
    transform: rotate(-33deg);
    animation-delay: -2s;
}

.atlas-hero-network__line--3 {
    width: 22%;
    left: 45%;
    top: 25%;
    transform: rotate(31deg);
    animation-delay: -1s;
}

.atlas-hero-network__line--4 {
    width: 22%;
    left: 60%;
    top: 49%;
    transform: rotate(-34deg);
    animation-delay: -3s;
}

.atlas-hero-network__line--5 {
    width: 26%;
    left: 52%;
    top: 72%;
    transform: rotate(-54deg);
    animation-delay: -4s;
}

/* Pulsos que recorren la red */
.atlas-hero-network__pulse {
    position: absolute;

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: #fff;

    box-shadow:
        0 0 8px #fff,
        0 0 20px rgba(1, 174, 240, .95);

    opacity: 0;
}

.atlas-hero-network__pulse--1 {
    left: 12%;
    top: 30%;
    animation:
        atlasHeroNetworkPulseOne 7s linear infinite;
}

.atlas-hero-network__pulse--2 {
    left: 45%;
    top: 24%;
    animation:
        atlasHeroNetworkPulseTwo 8s linear infinite 2s;
}

.atlas-hero-network__pulse--3 {
    left: 52%;
    top: 72%;
    animation:
        atlasHeroNetworkPulseThree 9s linear infinite 4s;
}

@keyframes atlasHeroNetworkGrid {
    from {
        background-position: 0 0, 0 0;
    }

    to {
        background-position:
            0 72px,
            72px 0;
    }
}

@keyframes atlasHeroNetworkNode {
    from {
        opacity: .45;
        transform: scale(.85);
    }

    to {
        opacity: 1;
        transform: scale(1.35);
    }
}

@keyframes atlasHeroNetworkLine {
    from {
        opacity: .22;
    }

    to {
        opacity: .72;
    }
}

@keyframes atlasHeroNetworkPulseOne {
    0% {
        transform: translate(0, 0);
        opacity: 0;
    }

    12% {
        opacity: 1;
    }

    58% {
        transform: translate(270px, 130px);
        opacity: 1;
    }

    75%,
    100% {
        opacity: 0;
    }
}

@keyframes atlasHeroNetworkPulseTwo {
    0% {
        transform: translate(0, 0);
        opacity: 0;
    }

    15% {
        opacity: 1;
    }

    60% {
        transform: translate(300px, 150px);
        opacity: 1;
    }

    80%,
    100% {
        opacity: 0;
    }
}

@keyframes atlasHeroNetworkPulseThree {
    0% {
        transform: translate(0, 0);
        opacity: 0;
    }

    12% {
        opacity: 1;
    }

    55% {
        transform: translate(260px, -230px);
        opacity: 1;
    }

    75%,
    100% {
        opacity: 0;
    }
}

@media (max-width: 767.98px) {
    .atlas-hero-network__grid {
        background-size: 48px 48px;
    }

    .atlas-hero-network__node--1 {
        left: 8%;
    }

    .atlas-hero-network__node--5 {
        left: 78%;
    }

    .atlas-hero-network__node--6 {
        left: 90%;
    }

    .atlas-hero-network__line {
        opacity: .45;
    }

    .atlas-hero-network__pulse {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .atlas-hero-network__grid,
    .atlas-hero-network__node,
    .atlas-hero-network__line,
    .atlas-hero-network__pulse {
        animation: none !important;
    }
}

/* =========================================================
   Atlas Hero V2 - Red de nodos dinámica
   ========================================================= */

.atlas-hero-animation--dynamic_nodes {
    background:
        radial-gradient(circle at 68% 46%, rgba(1,174,240,.12), transparent 26%),
        linear-gradient(135deg,#06112b 0%,#080b21 58%,#111027 100%);
}

.atlas-hero-dynamic-nodes {
    position: absolute;
    inset: 0;
    overflow: hidden;
}

.atlas-hero-dynamic-nodes__center {
    position: absolute;
    left: 68%;
    top: 50%;
    width: 14px;
    height: 14px;
    transform: translate(-50%,-50%);
    border-radius: 50%;
    background: rgba(1,174,240,.65);
    box-shadow:
        0 0 0 8px rgba(1,174,240,.07),
        0 0 32px rgba(1,174,240,.38);
    animation: atlasDynamicCenter 3s ease-in-out infinite alternate;
}

.atlas-hero-dynamic-node {
    position: absolute;
    left: 68%;
    top: 50%;
    width: 1px;
    height: 1px;
    color: var(--atlas-node-color);
    transform-origin: 0 0;
    animation:
        atlasDynamicNodeFloat
        var(--atlas-node-duration, 8s)
        ease-in-out
        var(--atlas-node-delay, 0s)
        infinite
        alternate;
    will-change: transform;
}

/* Posiciones alrededor del centro */
.atlas-hero-dynamic-node--1 { --dx:-250px; --dy:-135px; }
.atlas-hero-dynamic-node--2 { --dx: 215px; --dy:-105px; }
.atlas-hero-dynamic-node--3 { --dx:-225px; --dy: 145px; }
.atlas-hero-dynamic-node--4 { --dx: 235px; --dy: 125px; }
.atlas-hero-dynamic-node--5 { --dx: -70px; --dy:-205px; }
.atlas-hero-dynamic-node--6 { --dx:  65px; --dy: 205px; }
.atlas-hero-dynamic-node--7 { --dx:-315px; --dy:  20px; }
.atlas-hero-dynamic-node--8 { --dx: 300px; --dy: -10px; }

.atlas-hero-dynamic-node__point {
    position: absolute;
    left: var(--dx);
    top: var(--dy);
    width: 9px;
    height: 9px;
    border-radius: 50%;
    transform: translate(-50%,-50%);
    background: var(--atlas-node-color);
    box-shadow: 0 0 18px color-mix(in srgb, var(--atlas-node-color) 75%, transparent);
    animation: atlasDynamicPointPulse 2.8s ease-in-out infinite alternate;
}

.atlas-hero-dynamic-node__line {
    position: absolute;
    left: 0;
    top: 0;
    width: 1px;
    height: 1px;
    background: linear-gradient(
        90deg,
        rgba(255,255,255,.08),
        var(--atlas-node-color)
    );
    transform-origin: 0 50%;
    opacity: .48;
}

/* Ángulos predecibles */
.atlas-hero-dynamic-node--1 .atlas-hero-dynamic-node__line { width:284px; transform:rotate(-151.6deg); }
.atlas-hero-dynamic-node--2 .atlas-hero-dynamic-node__line { width:239px; transform:rotate(-26.0deg); }
.atlas-hero-dynamic-node--3 .atlas-hero-dynamic-node__line { width:268px; transform:rotate(147.2deg); }
.atlas-hero-dynamic-node--4 .atlas-hero-dynamic-node__line { width:266px; transform:rotate(28.0deg); }
.atlas-hero-dynamic-node--5 .atlas-hero-dynamic-node__line { width:217px; transform:rotate(-108.9deg); }
.atlas-hero-dynamic-node--6 .atlas-hero-dynamic-node__line { width:215px; transform:rotate(72.4deg); }
.atlas-hero-dynamic-node--7 .atlas-hero-dynamic-node__line { width:316px; transform:rotate(176.4deg); }
.atlas-hero-dynamic-node--8 .atlas-hero-dynamic-node__line { width:300px; transform:rotate(-1.9deg); }

.atlas-hero-dynamic-node__label {
    position: absolute;
    left: var(--dx);
    top: var(--dy);
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: max-content;
    max-width: 220px;
    padding: 9px 14px;
    transform: translate(-50%, calc(-100% - 18px));
    border: 1px solid color-mix(in srgb, var(--atlas-node-color) 55%, transparent);
    border-radius: 10px;
    background: rgba(7,17,43,.72);
    color: #fff;
    font-size: .76rem;
    line-height: 1.2;
    letter-spacing: .02em;
    box-shadow:
        0 10px 30px rgba(0,0,0,.12),
        inset 0 1px 0 rgba(255,255,255,.025);
    backdrop-filter: blur(8px);
    transition:
        border-color .25s ease,
        background-color .25s ease,
        box-shadow .25s ease;
}

.atlas-hero-dynamic-node__label i {
    width: 7px;
    height: 7px;
    flex: 0 0 7px;
    border-radius: 50%;
    background: var(--atlas-node-color);
    box-shadow: 0 0 12px var(--atlas-node-color);
}

/*
 * Cada nodo usa un ritmo ligeramente distinto para evitar
 * que toda la red se mueva de forma sincronizada.
 */
.atlas-hero-dynamic-node--1 {
    --atlas-node-duration: 7.2s;
    --atlas-node-delay: -1.2s;
    --atlas-float-x: -16px;
    --atlas-float-y: 11px;
}

.atlas-hero-dynamic-node--2 {
    --atlas-node-duration: 8.4s;
    --atlas-node-delay: -3.1s;
    --atlas-float-x: 18px;
    --atlas-float-y: -13px;
}

.atlas-hero-dynamic-node--3 {
    --atlas-node-duration: 9.1s;
    --atlas-node-delay: -4.4s;
    --atlas-float-x: -19px;
    --atlas-float-y: -10px;
}

.atlas-hero-dynamic-node--4 {
    --atlas-node-duration: 7.8s;
    --atlas-node-delay: -2.6s;
    --atlas-float-x: 16px;
    --atlas-float-y: 14px;
}

.atlas-hero-dynamic-node--5 {
    --atlas-node-duration: 8.8s;
    --atlas-node-delay: -5.2s;
    --atlas-float-x: -12px;
    --atlas-float-y: -18px;
}

.atlas-hero-dynamic-node--6 {
    --atlas-node-duration: 9.4s;
    --atlas-node-delay: -1.8s;
    --atlas-float-x: 14px;
    --atlas-float-y: 18px;
}

.atlas-hero-dynamic-node--7 {
    --atlas-node-duration: 8.1s;
    --atlas-node-delay: -4.7s;
    --atlas-float-x: -20px;
    --atlas-float-y: 8px;
}

.atlas-hero-dynamic-node--8 {
    --atlas-node-duration: 9.7s;
    --atlas-node-delay: -3.8s;
    --atlas-float-x: 21px;
    --atlas-float-y: -8px;
}

@keyframes atlasDynamicNodeFloat {
    0% {
        transform: translate3d(
            calc(var(--atlas-float-x) * -.45),
            calc(var(--atlas-float-y) * -.45),
            0
        );
    }

    45% {
        transform: translate3d(
            calc(var(--atlas-float-x) * .25),
            calc(var(--atlas-float-y) * -.15),
            0
        );
    }

    100% {
        transform: translate3d(
            var(--atlas-float-x),
            var(--atlas-float-y),
            0
        );
    }
}

@keyframes atlasDynamicCenter {
    from {
        transform:translate(-50%,-50%) scale(.85);
        opacity:.7;
    }
    to {
        transform:translate(-50%,-50%) scale(1.18);
        opacity:1;
    }
}

@media (max-width: 991.98px) {
    .atlas-hero-dynamic-nodes {
        opacity:.62;
    }

    .atlas-hero-dynamic-nodes__center,
    .atlas-hero-dynamic-node {
        left:72%;
    }
}

@media (max-width: 767.98px) {
    .atlas-hero-dynamic-nodes {
        opacity: .46;
        pointer-events: none;
    }

    .atlas-hero-dynamic-nodes__center,
    .atlas-hero-dynamic-node {
        left: 50%;
        top: 76%;
    }

    /*
     * En móvil mostramos cuatro nodos para mantener
     * legibilidad y evitar sobrecargar el Hero.
     */
    .atlas-hero-dynamic-node--1 {
        --dx: -112px;
        --dy: -64px;
        --atlas-float-x: -8px;
        --atlas-float-y: 6px;
    }

    .atlas-hero-dynamic-node--2 {
        --dx: 112px;
        --dy: -64px;
        --atlas-float-x: 8px;
        --atlas-float-y: -6px;
    }

    .atlas-hero-dynamic-node--3 {
        --dx: -105px;
        --dy: 68px;
        --atlas-float-x: -7px;
        --atlas-float-y: -5px;
    }

    .atlas-hero-dynamic-node--4 {
        --dx: 105px;
        --dy: 68px;
        --atlas-float-x: 7px;
        --atlas-float-y: 5px;
    }

    .atlas-hero-dynamic-node--5,
    .atlas-hero-dynamic-node--6,
    .atlas-hero-dynamic-node--7,
    .atlas-hero-dynamic-node--8 {
        display: none;
    }

    .atlas-hero-dynamic-node__line {
        display: none;
    }

    .atlas-hero-dynamic-node__point {
        width: 7px;
        height: 7px;
        box-shadow: 0 0 10px var(--atlas-node-color);
    }

    .atlas-hero-dynamic-node__label {
        max-width: 118px;
        padding: 6px 8px;
        gap: 5px;
        border-radius: 8px;
        font-size: .58rem;
        line-height: 1.15;
        white-space: normal;
        text-align: center;
    }

    .atlas-hero-dynamic-node__label i {
        width: 5px;
        height: 5px;
        flex-basis: 5px;
    }

    .atlas-hero-dynamic-nodes__center {
        width: 10px;
        height: 10px;
        box-shadow:
            0 0 0 5px rgba(1,174,240,.06),
            0 0 20px rgba(1,174,240,.28);
    }
}

@media (prefers-reduced-motion: reduce) {
    .atlas-hero-dynamic-node,
    .atlas-hero-dynamic-node__label,
    .atlas-hero-dynamic-node__point,
    .atlas-hero-dynamic-nodes__center {
        animation: none !important;
    }

    .atlas-hero-dynamic-node {
        transform: none !important;
    }

    .atlas-hero-dynamic-node__point {
        scale: 1 !important;
    }
}

.atlas-hero-dynamic-node--2 .atlas-hero-dynamic-node__point { animation-delay:-.7s; }
.atlas-hero-dynamic-node--3 .atlas-hero-dynamic-node__point { animation-delay:-1.4s; }
.atlas-hero-dynamic-node--4 .atlas-hero-dynamic-node__point { animation-delay:-2.1s; }
.atlas-hero-dynamic-node--5 .atlas-hero-dynamic-node__point { animation-delay:-1s; }
.atlas-hero-dynamic-node--6 .atlas-hero-dynamic-node__point { animation-delay:-1.8s; }
.atlas-hero-dynamic-node--7 .atlas-hero-dynamic-node__point { animation-delay:-.4s; }
.atlas-hero-dynamic-node--8 .atlas-hero-dynamic-node__point { animation-delay:-2.4s; }

@keyframes atlasDynamicPointPulse {
    from {
        opacity:.62;
        scale:.82;
    }

    to {
        opacity:1;
        scale:1.16;
    }
}

/* =========================================================
   Hero V2 - etiquetas inferiores debajo de su nodo
   ========================================================= */

/* Nodos de la mitad inferior */
.atlas-hero-dynamic-node--3 .atlas-hero-dynamic-node__label,
.atlas-hero-dynamic-node--4 .atlas-hero-dynamic-node__label,
.atlas-hero-dynamic-node--6 .atlas-hero-dynamic-node__label {
    transform: translate(-50%, 18px);
}

/*
 * El nodo 7 es lateral, pero si su posición termina
 * visualmente debajo del centro mantenemos la etiqueta abajo.
 */
.atlas-hero-dynamic-node--7 .atlas-hero-dynamic-node__label {
    transform: translate(-50%, 18px);
}

/* En móvil mantenemos la misma lógica con menor separación */
@media (max-width: 767.98px) {
    .atlas-hero-dynamic-node--3 .atlas-hero-dynamic-node__label,
    .atlas-hero-dynamic-node--4 .atlas-hero-dynamic-node__label,
    .atlas-hero-dynamic-node--6 .atlas-hero-dynamic-node__label,
    .atlas-hero-dynamic-node--7 .atlas-hero-dynamic-node__label {
        transform: translate(-50%, 14px);
    }
}

/* Hero V2 - red dinámica en teléfonos compactos */
@media (max-width: 420px) {
    .atlas-hero-dynamic-nodes {
        opacity: .38;
    }

    .atlas-hero-dynamic-nodes__center,
    .atlas-hero-dynamic-node {
        top: 79%;
    }

    .atlas-hero-dynamic-node--1 {
        --dx: -88px;
        --dy: -55px;
    }

    .atlas-hero-dynamic-node--2 {
        --dx: 88px;
        --dy: -55px;
    }

    .atlas-hero-dynamic-node--3 {
        --dx: -82px;
        --dy: 58px;
    }

    .atlas-hero-dynamic-node--4 {
        --dx: 82px;
        --dy: 58px;
    }

    .atlas-hero-dynamic-node__label {
        max-width: 96px;
        padding: 5px 7px;
        font-size: .54rem;
    }
}

/* =========================================================
   Feature Grid Pro - Media
   ========================================================= */

.atlas-feature-pro__media {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 10;
    margin-bottom: 1.35rem;
    overflow: hidden;
    border-radius: 12px;
    background: rgba(11, 27, 63, .05);
}

.atlas-feature-pro__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .45s ease;
}

.atlas-feature-pro__item:hover .atlas-feature-pro__media img {
    transform: scale(1.035);
}

@media (max-width: 767.98px) {
    .atlas-feature-pro__media {
        margin-bottom: 1rem;
        border-radius: 9px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .atlas-feature-pro__media img {
        transition: none;
    }

    .atlas-feature-pro__item:hover .atlas-feature-pro__media img {
        transform: none;
    }
}


/* =========================================================
   Servicios Landing V2
   Ajustes visuales exclusivos de /es/servicios
   ========================================================= */


/* ---------------------------------------------------------
   Feature Grid
   --------------------------------------------------------- */

.services-landing-grid {
    padding-top: clamp(72px, 8vw, 100px);
    padding-bottom: clamp(76px, 8vw, 104px);
}

.services-landing-grid .atlas-feature-pro__header {
    margin-bottom: clamp(34px, 4vw, 48px);
}

.services-landing-grid .atlas-feature-pro__grid {
    gap: 16px;
}

.services-landing-grid .atlas-feature-pro__item {
    min-height: 235px;
    padding: 24px;
    border-radius: 10px;
    box-shadow: 0 8px 24px rgba(15, 23, 42, .055);
    transition:
        transform .2s ease,
        box-shadow .2s ease,
        border-color .2s ease;
}

.services-landing-grid .atlas-feature-pro__item:hover {
    transform: translateY(-2px);
    box-shadow: 0 13px 28px rgba(15, 23, 42, .085);
}

.services-landing-grid .atlas-feature-pro__icon {
    margin-bottom: 1rem;
}

.services-landing-grid .atlas-feature-pro__item h3 {
    margin-bottom: .55rem;
}

.services-landing-grid .atlas-feature-pro__item-richtext {
    font-size: .94rem;
    line-height: 1.6;
}

.services-landing-grid .atlas-feature-pro__more {
    margin-top: 1.15rem;
}


/*
 * Desktop:
 * mantenemos visualmente 4 + 3,
 * pero centramos la segunda fila mediante una retícula de 8 columnas.
 */
@media (min-width: 992px) {

    .services-landing-grid .atlas-feature-pro__grid {
        grid-template-columns: repeat(8, minmax(0, 1fr));
    }

    .services-landing-grid .atlas-feature-pro__item {
        grid-column: span 2;
    }

    .services-landing-grid .atlas-feature-pro__item:nth-child(5) {
        grid-column: 2 / span 2;
    }
}


/* ---------------------------------------------------------
   Split Content
   --------------------------------------------------------- */

.services-landing-split {
    padding-top: clamp(70px, 7vw, 92px);
    padding-bottom: clamp(70px, 7vw, 92px);
}

.services-landing-split .atlas-split__grid {
    gap: clamp(42px, 5vw, 68px);
}

.services-landing-split .atlas-split__content {
    max-width: 690px;
}

.services-landing-split .atlas-split__panel {
    overflow: hidden;
    border-radius: 12px;
    border-color: rgba(11, 27, 63, .10);
    box-shadow: 0 12px 34px rgba(15, 23, 42, .055);
}

.services-landing-split .atlas-split__item {
    padding: 24px 26px;
}

.services-landing-split .atlas-split__item h3 {
    margin-bottom: .45rem;
}

.services-landing-split .atlas-split__item-richtext {
    font-size: .94rem;
    line-height: 1.62;
}


/* ---------------------------------------------------------
   Corporate CTA
   --------------------------------------------------------- */

.services-landing-cta.atlas-corporate-cta--pro {
    width: min(calc(100% - 2rem), 1180px);
    margin-left: auto;
    margin-right: auto;

    border-radius: 14px;

    box-shadow:
        0 18px 45px rgba(7, 19, 48, .12);
}

.services-landing-cta.atlas-corporate-cta--space-md {
    margin-top: clamp(52px, 6vw, 72px);
    margin-bottom: clamp(52px, 6vw, 72px);
}

.services-landing-cta.atlas-corporate-cta--padding-normal {
    padding-top: clamp(52px, 5vw, 68px);
    padding-bottom: clamp(52px, 5vw, 68px);
}

.services-landing-cta .atlas-corporate-cta__inner {
    gap: clamp(32px, 5vw, 72px);
}

.services-landing-cta .atlas-corporate-cta__copy {
    max-width: 760px;
}

.services-landing-cta .atlas-corporate-cta__copy h2 {
    max-width: 22ch;
}


/* ---------------------------------------------------------
   Tablet
   --------------------------------------------------------- */

@media (max-width: 991.98px) {

    .services-landing-grid .atlas-feature-pro__grid {
        gap: 14px;
    }

    .services-landing-grid .atlas-feature-pro__item {
        min-height: 220px;
    }

    .services-landing-split .atlas-split__grid {
        gap: 38px;
    }
}


/* ---------------------------------------------------------
   Mobile
   --------------------------------------------------------- */

@media (max-width: 767.98px) {

    .services-landing-grid {
        padding-top: 58px;
        padding-bottom: 64px;
    }

    .services-landing-grid .atlas-feature-pro__header {
        margin-bottom: 30px;
    }

    .services-landing-grid .atlas-feature-pro__grid {
        gap: 12px;
    }

    .services-landing-grid .atlas-feature-pro__item {
        min-height: auto;
        border-radius: 9px;
    }

    .services-landing-split {
        padding-top: 58px;
        padding-bottom: 62px;
    }

    .services-landing-split .atlas-split__grid {
        gap: 30px;
    }

    .services-landing-split .atlas-split__panel {
        border-radius: 10px;
    }

    .services-landing-split .atlas-split__item {
        padding: 20px;
    }

    .services-landing-cta.atlas-corporate-cta--pro {
        width: min(calc(100% - 1.25rem), 1180px);
        border-radius: 12px;
    }

    .services-landing-cta.atlas-corporate-cta--space-md {
        margin-top: 42px;
        margin-bottom: 42px;
    }
}


/* ---------------------------------------------------------
   Reduced motion
   --------------------------------------------------------- */

@media (prefers-reduced-motion: reduce) {

    .services-landing-grid .atlas-feature-pro__item {
        transition: none;
    }

    .services-landing-grid .atlas-feature-pro__item:hover {
        transform: none;
    }
}
