﻿:root {
  --color-brand-green: #b0f90a;
  --color-brand-black: #000000;
  --color-brand-white: #ffffff;
  --color-brand-beige: #f5f2eb;
  --color-brand-blue: #3d36ff;
  --color-brand-soft-green: rgb(176 249 10 / 32%);
  --color-surface-paper: #faf7f1;
  --color-surface-cream: #f4efe6;
  --color-surface-dark: #0f1114;
  --color-ink-100: #9a9ea6;
  --color-ink-300: #6a6f78;
  --color-ink-500: #3a3f47;
  --color-ink-700: #1c1f24;
  --color-ink-900: #0f1114;
  --color-accent-gold: #b9894c;
  --color-accent-gold-deep: #8a6432;
  --color-border-default: rgb(15 17 20 / 12%);
  --color-border-on-dark: rgb(244 239 230 / 14%);
  --font-display: "Funnel Display", "Arial Narrow", sans-serif;
  --font-body: "Funnel Sans", Arial, sans-serif;
  --space-2: 0.125rem;
  --space-4: 0.25rem;
  --space-8: 0.5rem;
  --space-10: 0.625rem;
  --space-12: 0.75rem;
  --space-16: 1rem;
  --space-18: 1.125rem;
  --space-20: 1.25rem;
  --space-24: 1.5rem;
  --space-32: 2rem;
  --space-48: 3rem;
  --space-64: 4rem;
  --space-80: 5rem;
  --radius-md: 1.25rem;
  --radius-lg: 2rem;
  --radius-pill: 31.25rem;
  --radius-full: 62.4375rem;
  --container-max: 75rem;
  --container-gutter: clamp(1.25rem, 4vw, 2rem);
}
*,
*:before,
*:after {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
}
body {
  margin: 0;
  min-width: 20rem;
  background: var(--color-brand-beige);
  color: var(--color-ink-900);
  font-family: var(--font-body);
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: -0.04em;
  text-rendering: optimizeLegibility;
}
img,
svg {
  display: block;
  max-width: 100%;
}
a {
  color: inherit;
  text-decoration: none;
}
button,
a {
  -webkit-tap-highlight-color: transparent;
}
:focus-visible {
  outline: 3px solid var(--color-brand-blue);
  outline-offset: 3px;
}
h1,
h2,
h3,
p {
  margin: 0;
}
.container {
  width: min(100% - (2 * var(--container-gutter)), var(--container-max));
  margin-inline: auto;
}
.section {
  padding-block: var(--space-80);
}
.eyebrow {
  font-size: 0.75rem;
  letter-spacing: -0.04em;
  text-transform: uppercase;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-10);

  min-height: 2.75rem;
  padding: 0.9375rem 1.5625rem;

  border: 3px solid rgba(1, 62, 251, 0.35);
  border-radius: var(--radius-pill);

  background: var(--color-brand-blue);
  color: var(--color-brand-white);

  font-family: var(--font-body);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;

  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;

  width: fit-content;
  max-width: max-content;

  flex-shrink: 0;
  cursor: pointer;

  transition:
    background-color 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease,
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

/* Force inherited white text */
.button,
.button span,
.button p,
.button strong {
  color: var(--color-brand-white) !important;
}

/* Prevent icon shrinking */
.button img,
.button svg {
  flex-shrink: 0;
}

/* Hover */
.button:hover {
  background: #2b24e6;
  border-color: rgba(1, 62, 251, 0.65);

  color: var(--color-brand-white);

  transform: translateY(-2px);

  box-shadow: 0 4px 12px rgba(61, 54, 255, 0.25);
}

/* Active */
.button:active {
  transform: translateY(0);
  box-shadow: none;
}

/* Focus */
.button:focus-visible {
  outline: 3px solid rgba(61, 54, 255, 0.45);
  outline-offset: 3px;
}

/* Disabled */
.button:disabled,
.button[aria-disabled="true"] {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
}

.hero {
  min-height: 36.375rem;
  margin-top: 1.875rem;
  padding: 1.1875rem 9.3125rem 1.1875rem 13.375rem;
  border-radius: var(--radius-lg);
  display: grid;
  grid-template-columns: 26rem 1fr;
  align-items: center;
  gap: 7.0625rem;
  background: var(--color-brand-black);
  color: var(--color-brand-white);
}
.hero__content {
  display: grid;
  gap: 2rem;
}
.hero__headline {
  display: flex;
  flex-direction: column;
  gap: 0;
  width: 26.1875rem;
  margin: 0;
  font-family: var(--font-display);
  text-transform: uppercase;
}
.hero__headline-row {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  min-height: 3.25rem;
}
.hero__headline-small {
  color: var(--color-brand-white);
  font-size: 1.526rem;
  font-weight: 400;
  line-height: 1.44125rem;
  letter-spacing: -0.05em;
}
.hero__headline-large {
  color: var(--color-brand-green);
  font-size: 3.5335rem;
  font-weight: 300;
  line-height: 3.33724rem;
  letter-spacing: -0.05em;
}
.hero__headline-medium {
  color: var(--color-brand-white);
  font-size: 2.27547rem;
  font-weight: 400;
  line-height: 2.14906rem;
  letter-spacing: -0.05em;
}
.hero__copy-wrap {
  display: grid;
  justify-items: start;
  gap: 1.5rem;
  max-width: 25.8125rem;
  color: var(--color-ink-100);
}
@media (max-width: 64rem) {
  .hero {
    grid-template-columns: 1fr;
    padding: 2rem;
    gap: 2rem;
  }
  .hero__visual {
    width: 100%;
    max-width: 32rem;
    justify-self: center;
  }
}
@media (max-width: 48rem) {
  .hero__headline {
    width: 100%;
  }
  .hero__headline-large {
    font-size: 2.35rem;
    line-height: 2.25rem;
  }
  .hero__headline-medium {
    font-size: 1.75rem;
    line-height: 1.7rem;
  }
  .hero__headline-small {
    font-size: 1.1rem;
    line-height: 1.1rem;
  }

  /* Make entire H1 use the same size on mobile */
  .hero__headline-small,
  .hero__headline-large,
  .hero__headline-medium {
    font-size: 2.45rem !important;
    line-height: 1.02 !important;
  }
}

/* Mobile: reduce only the gap between problem cards (no padding changes) */
@media (max-width: 48rem) {
  .problem__grid {
    gap: 0.5rem;
  }
}
.problem {
  padding-block: 5rem;
}
.problem h2 {
  max-width: 32rem;
  margin-bottom: 3rem;
  font-family: var(--font-display);
  font-size: 2rem;
  line-height: 1;
}
.problem__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem 3rem;
}
.dark-card {
  min-height: 14.8125rem;
  display: grid;
  align-content: center;
  gap: 1.4375rem;
  padding: 2rem;
  border-radius: var(--radius-md);
  background: var(--color-brand-black);
  color: var(--color-brand-white);
}
.dark-card h3 {
  font-family: var(--font-display);
  font-size: 1.25rem;
  line-height: 1;
}
.dark-card p {
  color: var(--color-ink-100);
}
.title-card {
  display: flex;
  align-items: center;
  gap: 1.125rem;
}
blockquote {
  margin: 3rem 0 0;
  padding: 0.625rem 1.5rem;
  border-left: 4px solid var(--color-brand-green);
  font-family: var(--font-display);
  font-size: 1.25rem;
  line-height: 1;
}
@media (max-width: 64rem) {
  .problem__grid {
    grid-template-columns: 1fr;
  }
}
.insider-band {
  padding: 5rem 0;
}
.insider-band.shell--dark {
  background-color: var(--color-brand-black);
  background-image:
    linear-gradient(rgba(0, 0, 0, 0.76), rgba(0, 0, 0, 0.76)),
    url("../assets/bg-insider-band.webp");
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: contain;
  border-radius: var(--radius-lg);
}
.insider-card {
  width: min(59.625rem, calc(100% - 3rem));
  margin-inline: auto;
  padding: 3rem;
  border-radius: var(--radius-lg);
  background: var(--color-brand-green);
  color: var(--color-brand-black);
}
.insider-card .section-heading span {
  color: var(--color-brand-black);
}
.section-heading,
.filter-copy {
  display: grid;
  gap: 1.5rem;
}
.section-heading {
  max-width: 31.125rem;
}
.section-heading h2,
.filter-copy h2 {
  font-family: var(--font-display);
  font-size: 2rem;
  line-height: 1;
}
.section-heading > p,
.filter-copy > p {
  font-size: 1rem;
  line-height: 1.5;
  text-transform: uppercase;
}
.section-heading span {
  display: block;
}
.filter-copy > span {
  display: block;
  color: var(--color-ink-100);
}
.pillars {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.5rem;
  margin-top: 4rem;
}
.pillars article {
  display: grid;
  align-content: end;
  gap: 0.5rem;
  padding: 1rem 1rem;
  border-radius: var(--radius-md);
  background-color: var(--color-brand-black);
  background-image: url("../assets/bg-card-insider.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media (min-width: 48.0625rem) {
  .pillars article {
    height: 12.625rem;
  }
}
.pillars strong {
  font-family: var(--font-display);
  font-size: 1.5rem;
  color: var(--color-brand-green);
  line-height: 1;
}
.pillars h3 {
  font-family: var(--font-display);
  font-size: 1.125rem;
  line-height: 1.2;
  color: var(--color-brand-white);
}
.filter-list h3 {
  font-family: var(--font-display);
  font-size: 1.25rem;
  line-height: 1.2;
  color: var(--color-brand-green);
  margin-bottom: 0.5rem;
}
.pillars p {
  color: var(--color-ink-100);
  font-size: 0.875rem;
  line-height: 1.4;
}
.filter-grid {
  width: min(59.75rem, calc(100% - 3rem));
  margin: 5rem auto 0;
  display: grid;
  grid-template-columns: 22.1875rem 22.1875rem;
  justify-content: space-between;
}
.filter-copy {
  align-content: start;
}

.filter-list {
  display: grid;
  gap: 0;
}
.filter-list article {
  padding: 0 0 2.5rem 2rem;
  background: none;
  border-left: 2px solid var(--color-brand-soft-green);
}
.filter-list article:first-child {
  border-left-color: var(--color-brand-green);
}
.filter-list article:last-child {
  padding-bottom: 0;
}
.filter-list p {
  color: var(--color-ink-100);
  font-size: 0.9375rem;
  line-height: 1.5;
}
@media (max-width: 64rem) {
  .filter-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 48rem) {
  .pillars {
    grid-template-columns: 1fr;
  }
}
.profile {
  padding-block: 5rem;
}
.profile__top {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 2rem;
  margin-bottom: 3rem;
}
.section-heading {
  display: grid;
  gap: 1.5rem;
  max-width: 31.125rem;
}
.section-heading h2 {
  font-family: var(--font-display);
  font-size: 2rem;
  line-height: 1;
}
.section-heading > p {
  font-size: 1rem;
  line-height: 1.5;
  text-transform: uppercase;
}
.section-heading span {
  display: block;
}
.section-heading--light span {
  color: var(--color-ink-300);
}
.profile__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}
.profile-card {
  padding: 1.5rem;
  border-radius: var(--radius-md);
}
.profile-card h3 {
  font-family: var(--font-display);
  font-size: 1.25rem;
  line-height: 1;
}
.profile-card--negative {
  background: #f90a0a1f;
}
.profile-card--positive {
  background: var(--color-brand-green);
}
.profile-card ul {
  display: grid;
  gap: 1.25rem;
  margin: 1.5rem 0 0;
  padding: 0;
  list-style: none;
}
.profile-card li {
  position: relative;
  padding-left: 1.8125rem;
  font-size: 0.875rem;
  color: var(--color-ink-900);
  line-height: 1.5;
  font-weight: 500;
}
.profile-card--negative li:before,
.profile-card--positive li:before {
  position: absolute;
  left: 0;
  top: 0.125rem;
  width: 1.3125rem;
  height: 1.3125rem;
  border-radius: 50%;
}
.profile-card--negative li:before {
  content: "";
  background: #f90a0a2e url("../assets/close-vector.svg") no-repeat center;
}
.profile-card--positive li:before {
  content: "";
  background: #0000001f url("../assets/check-vector.svg") no-repeat center;
}
@media (max-width: 64rem) {
  .profile__top,
  .profile__grid {
    display: grid;
    grid-template-columns: 1fr;
  }
}
.mentors {
  width: min(calc(100% - 3rem), 71.25rem);
  margin-inline: auto;
  padding-block: 5rem;
  display: grid;
  justify-items: center;
  gap: 3.4375rem;
}
.mentors h2 {
  width: min(100%, 53.6875rem);
  font-family: var(--font-display);
  font-size: 2rem;
  line-height: 1;
  text-align: center;
}
.mentors__group {
  width: 100%;
  display: grid;
  gap: 1.25rem;
}
.mentors__group h3 {
  min-height: 1.375rem;
  padding-bottom: 0.25rem;
  border-bottom: 2px solid var(--color-brand-black);
  font-family: var(--font-display);
  font-size: 1.25rem;
  line-height: 1;
  text-transform: uppercase;
}
.mentors__grid {
  display: grid;
  grid-template-columns: repeat(5, 11.25rem);
  justify-content: space-between;
  gap: 0;
}
.mentors__grid--six {
  grid-template-columns: repeat(6, 11.25rem);
}
.mentor-card {
  width: 11.25rem;
  min-height: 14.625rem;
  padding: 0.9375rem 0.9375rem 0.875rem;
  display: grid;
  justify-items: center;
  align-content: start;
  border-radius: 1rem;
  background: var(--color-brand-black);
  color: var(--color-brand-white);
  text-align: center;
  gap: 0.5rem;
}
.mentor-card__photo {
  width: 9.375rem;
  aspect-ratio: 1;
  margin-bottom: 0.5rem;
  border-radius: 0.5rem;
  background:
    linear-gradient(135deg, rgb(255 255 255 / 14%), rgb(255 255 255 / 5%)),
    #171717;
  background-position: center;
  background-size: cover;
  overflow: hidden;
}
.mentor-card__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.mentor-card h4 {
  margin: 0 0 0.125rem;
  font-family: var(--font-display);
  font-size: 1rem;
  line-height: 1;
  font-weight: 400;
  color: var(--color-brand-white);
}
.mentor-card p,
.mentor-card span {
  color: var(--color-brand-white);
  font-size: 0.75rem;
  line-height: 1.25;
  font-weight: 700;
  text-transform: uppercase;
}
.mentor-card span {
  margin-top: 0.0625rem;
  color: #a1a1a1;
  font-weight: 400;
}
.mentors__button {
  min-width: 18rem;
}
@media (max-width: 75rem) {
  .mentors__grid,
  .mentors__grid--six {
    grid-template-columns: repeat(3, 11.25rem);
    justify-content: center;
    gap: 1.5rem 1rem;
  }
}
@media (max-width: 48rem) {
  .mentors {
    width: calc(100% - 2rem);
    padding-block: 3rem;
    gap: 2rem;
  }
  .mentors h2 {
    font-size: 1.75rem;
  }
  .mentors__group {
    gap: 1rem;
  }
  .mentors__grid,
  .mentors__grid--six {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: center;
    gap: 1rem 0.5rem;
  }
  .mentor-card {
    width: 100%;
    max-width: 10.25rem;
    min-height: auto;
    padding: 0.5rem 0.5rem 0.625rem;
  }
.mentor-card__photo {
    width: 100%;
    border-radius: 0.5rem;
  }
  .mentor-card h4 {
    font-size: 1rem;
  }
  .mentor-card p,
  .mentor-card span {
    font-size: 0.75rem;
  }
  .mentors__button {
    min-width: 0;
  }
}
.environment {
  margin-bottom: 5rem;
  padding-block: 5rem;
  padding-inline: 2rem;
  background-color: var(--color-brand-black);
  border-radius: 2rem;
  color: var(--color-brand-white);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.875rem;
}
@media (min-width: 48.0625rem) {
  .environment {
    padding-inline: 9.5rem;
  }
}
.section-heading {
  display: grid;
  gap: 1.5rem;
}
.section-heading h2 {
  font-family: var(--font-display);
  font-size: 2rem;
  line-height: 1;
}
.section-heading > p {
  font-size: 1rem;
  line-height: 1.5;
  text-transform: uppercase;
}
.section-heading span {
  display: block;
}
.section-heading--light span {
  color: var(--color-ink-300);
}
.environment .environment__heading {
  width: 100%;
  max-width: 100%;
  margin-inline: 0;
  margin-bottom: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
.environment .environment__heading h2,
.environment .environment__heading p {
  color: var(--color-brand-white);
  max-width: 100%;
}
.environment .environment__heading span {
  color: var(--color-ink-100);
  max-width: 100%;
}
.accordion,
.segments {
  width: 100%;
}
.accordion {
  display: grid;
  gap: 0.625rem;
}
.accordion__item {
  padding: 1.25rem 2rem;
  border: 2px solid var(--color-brand-soft-green);
  border-radius: var(--radius-md);
  background: var(--color-brand-black);
  color: var(--color-brand-white);
  overflow: hidden;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.accordion__header {
  display: flex;
  align-items: center;
  gap: 1.125rem;
  width: 100%;
  cursor: pointer;
  user-select: none;
}
.accordion__icon {
  width: 1.9375rem;
  height: 1.75rem;
  flex-shrink: 0;
  object-fit: contain;
}
.accordion__title-group {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-grow: 1;
}
.accordion h3,
.segments h3 {
  font-family: var(--font-display);
  font-size: 1.25rem;
  line-height: 1;
}
.accordion__trigger {
  font-family: var(--font-body);
  font-size: 1rem;
  font-weight: 400;
  text-transform: uppercase;
  color: var(--color-brand-white);
  cursor: pointer;
  white-space: nowrap;
}
.accordion__content {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition:
    max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1),
    opacity 0.3s ease,
    margin-top 0.3s ease;
  margin-top: 0;
}
.accordion p {
  color: var(--color-ink-100);
  font-size: 1rem;
  line-height: 1.5;
  margin: 0;
}
.accordion__item--open .accordion__content {
  max-height: 15rem;
  opacity: 1;
  margin-top: 1.4375rem;
}
.segments {
  min-height: 8.0625rem;
  padding: 1.5rem 2rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  border-radius: var(--radius-md);
  background: var(--color-brand-green);
  color: var(--color-brand-black);
}
.segments div {
  max-width: 22.6875rem;
}
.segments p {
  margin-top: 1rem;
}
@media (max-width: 64rem) {
  .segments {
    display: grid;
    grid-template-columns: 1fr;
  }
  .accordion,
  .segments {
    width: 100%;
  }
}
.final-cta {
  padding-block: 5rem;
  min-height: 38.3125rem;
  display: grid;
  justify-items: center;
  align-content: start;
  gap: 1rem;
  background-image: url("../assets/bg-blur-insider.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.placeholder {
  display: grid;
  place-items: center;
  border: 1px dashed rgb(176 249 10 / 45%);
  color: var(--color-brand-green);
  background:
    linear-gradient(135deg, rgb(176 249 10 / 10%), transparent 60%), #ffffff05;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.75rem;
}
.placeholder--orb {
  width: 19.1875rem;
  height: 19.1875rem;
  border-radius: 50%;
  margin-top: 0;
}
.badge-outline {
  padding: 0.75rem 1.5rem;
  border: 1px solid var(--color-ink-300);
  border-radius: var(--radius-full);
  color: var(--color-ink-300);
  text-transform: uppercase;
}
.final-cta__copy {
  display: grid;
  justify-items: center;
  gap: 1.5rem;
  max-width: 33.375rem;
  text-align: center;
}
.final-cta h2 {
  font-family: var(--font-display);
  font-size: 2rem;
  line-height: 1;
}
.final-cta__copy p,
.final-cta__copy small {
  max-width: 26.5625rem;
}
.text-brand-green {
  color: var(--color-brand-green) !important;
  display: inline !important;
}
.cupola-band {
  padding: 5rem 0;
  background-image: url("../assets/bg-cupola-section.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: grid;
  gap: 3rem; /* 48px gap */
}
.cupola-band .section-heading {
  grid-template-columns: 1fr;
  align-items: start;
  gap: 1.5rem;
}
.cupola-band .section-heading h2 {
  font-size: 2.25rem;
  line-height: 1.1;
  max-width: 36.9375rem;
}
.cupola-band .section-heading p,
.cupola-band .section-heading span {
  max-width: 36.9375rem;
}

.section-heading,
.cupola-columns,
.market-box {
  width: min(59.625rem, calc(100% - 3rem));
  margin-inline: auto;
}
.section-heading {
  display: grid;
  gap: 1.5rem;
  max-width: none;
  grid-template-columns: 1fr auto;
  align-items: end;
}
.section-heading p,
.section-heading h2,
.section-heading span {
  grid-column: 1;
  max-width: 31.125rem;
}
.section-heading h2,
.market-box h2 {
  font-family: var(--font-display);
  font-size: 2rem;
  line-height: 1;
}
.section-heading > p {
  font-size: 1rem;
  line-height: 1.5;
  text-transform: uppercase;
}
.section-heading span,
.cupola-band span {
  display: block;
  color: var(--color-ink-100);
}
.cupola-columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3rem;
}
.cupola-columns article {
  display: grid;
  gap: 0.625rem; /* 10px - reduced gap to prevent text overflow */
  padding: 1.5rem; /* 24px all around */
  border: 2px solid var(--color-brand-soft-green);
  border-radius: var(--radius-md);
  background: var(--color-brand-black);
}
@media (min-width: 48.0625rem) {
  .cupola-columns article {
    height: 14.8125rem; /* 237px */
  }
}
/* Reduce large vertical spacing on small screens (mobile) */
@media (max-width: 48rem) {
  .insider-band {
    padding: 2rem 0;
    margin-top: 1rem; /* add small space above on mobile */
  }
  .insider-card {
    padding: 1.25rem;
    width: calc(100% - 1.5rem);
    margin-inline: auto;
    border-radius: 1rem;
  }
  .insider-card .section-heading {
    gap: 1rem;
    max-width: 100%;
  }
  .pillars {
    margin-top: 1.5rem;
    gap: 0.5rem;
  }
  .filter-grid {
    margin: 2rem auto 0;
    width: 100%;
    padding-inline: 1rem; /* 16px laterais no mobile */
    gap: 2rem 1rem; /* vertical gap larger between stacked .filter-copy and .filter-list */
    padding-bottom: 1rem;
    box-sizing: border-box;
  }
  .filter-copy,
  .filter-list {
    gap: 1rem;
  }

  /* Remove lateral padding from final CTA copy (imagem 3) */
  .final-cta__copy {
    padding-inline: 0;
    width: calc(100% - 2rem);
    box-sizing: border-box;
  }
  /* Hide large background blur/illustrations on mobile to reduce visual noise */
  .final-cta {
    background-image: none;
  }
  .cupola-band {
    background-size: cover;
    background-position: center;
  }
  /* Reduce spacing in cupola boxes */
  .cupola-columns {
    gap: 1rem;
    grid-template-columns: 1fr;
  }
  .cupola-columns article {
    padding: 1rem;
    border-radius: 0.75rem;
  }
  .market-box {
    gap: 0.75rem;
    padding: 1rem;
  }

  .footer {
    min-height: auto;
    padding: 1.25rem 1rem 2rem;
  }
  .footer__meta {
    gap: 0.5rem;
    align-items: center;
  }
  /* Accordion (sanfona) smaller, denser layout on mobile */
  .accordion__item {
    padding: 0.875rem 1rem;
    border-radius: 0.75rem;
  }
  .accordion__header {
    gap: 0.75rem;
  }
  .accordion__icon {
    width: 1.5rem;
    height: 1.375rem;
  }
  .accordion__item--open .accordion__content {
    margin-top: 0.75rem;
  }
  /* Remove side indentation from headings/copy */
  .profile .section-heading,
  .insider-card .section-heading,
  .filter-copy,
  .profile__top {
    padding-inline: 0 !important;
    margin-inline: 0 !important;
  }

  /* Filter list tighter left spacing */
  .filter-list article {
    padding-left: 1rem;
  }

  /* Smaller final image */
  .final-cta.circle-insider img {
    width: 120px;
    height: auto;
  }

  /* Footer spacing */
  .footer {
    gap: 1rem;
  }

  /* Accordion mobile layout */
  .accordion__header {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: start;
  }

  .accordion__title-group {
    display: contents;
  }

  .accordion__trigger {
    grid-column: 2;
    grid-row: 1;
    justify-self: end;
  }

  .accordion h3 {
    grid-column: 1 / -1;
    grid-row: 2;
    margin-top: 0.75rem;
  }

  .accordion__content {
    margin-top: 0.5rem;
  }
}
.cupola-columns h3,
.cupola-columns h4,
.cupola-columns p {
  margin: 0;
}
.cupola-columns h3 {
  font-family: var(--font-display);
  font-size: 1.125rem; /* 18px */
  line-height: 1;
  color: var(--color-brand-green);
}
.cupola-columns h4 {
  font-family: var(--font-display);
  font-size: 1.25rem; /* 20px */
  line-height: 1.2;
}
.cupola-columns p {
  font-size: 1rem; /* 16px */
  line-height: 1.4;
  color: var(--color-ink-100);
}
.chips {
  display: flex;
  gap: 0.5rem;
}
.chips span {
  padding: 0.25rem 0.75rem;
  border-radius: var(--radius-full);
  border: 1px solid var(--color-ink-300);
  background: transparent;
  color: var(--color-ink-300);
  font-size: 0.75rem;
  text-transform: uppercase;
}
.market-box__title-img {
  max-width: 100%;
  height: auto;
  display: block;
}
.market-box {
  padding: 2rem;
  display: grid;
  grid-template-columns: 1fr 14.3125rem;
  gap: 2rem;
  align-items: center;
  border-radius: var(--radius-md);
  background: var(--color-brand-green);
  color: var(--color-brand-black);
}
.market-box strong {
  font-weight: 800;
}
.market-box p {
  max-width: 36.9375rem;
  margin-top: 1.5rem;
  color: var(--color-brand-black);
}
.market-box aside {
  display: grid;
  align-content: center;
  justify-items: start;
  gap: 1rem;
}
.market-box aside span {
  color: var(--color-brand-black);
}
@media (max-width: 64rem) {
  .section-heading,
  .cupola-columns,
  .market-box {
    grid-template-columns: 1fr;
  }
  .section-heading {
    display: grid;
  }
}
.page {
  overflow: clip;
  background: var(--color-brand-beige);
}
.shell {
  width: min(calc(100% - 3.625rem), 86.375rem);
  margin-inline: auto;
}
.section-narrow {
  width: min(calc(100% - 3rem), 59.625rem);
  margin-inline: auto;
}
.shell--dark {
  background-color: var(--color-brand-black);
  color: var(--color-brand-white);
}
.footer {
  min-height: 24.3125rem;
  display: grid;
  align-content: start;
  gap: 4rem;
  padding: 0 15.1875rem 7.875rem;
  background: linear-gradient(
    to bottom,
    var(--color-brand-black) 0%,
    #000000 90%,
    var(--color-brand-green) 200%
  );
  color: var(--color-brand-white);
}
.footer > strong {
  font-family: var(--font-display);
  font-size: clamp(3rem, 8vw, 7rem);
  letter-spacing: 0.45em;
  font-weight: 400;
}
.footer__meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-transform: uppercase;
}
@media (max-width: 64rem) {
  .footer {
    padding-inline: 2rem;
  }
}
@media (max-width: 48rem) {
  .shell,
  .section-narrow {
    width: calc(100% - 2rem);
  }
  .footer__meta {
    display: grid;
    gap: 1rem;
  }
}

.apply {
  padding-block: 5rem;
}

.apply__header {
  display: grid;
  justify-items: center;
  gap: 0.25rem;
  margin-bottom: 2rem;
  text-align: center;
}

.apply__header h2 {
  font-family: var(--font-display);
  font-size: 2.5rem;
  line-height: 1;
}

.apply__header p {
  color: var(--color-ink-300);
  font-size: 1rem;
}

/* Typeform */
.apply__placeholder iframe,
.apply__placeholder div[data-tf-live] {
  width: 100% !important;
  height: calc(100% + 120px) !important;
  margin-bottom: -120px;
  overflow: hidden !important;
  border: 0;
}

.ghWgvX {
  padding-block: 0;
}

.apply__form {
  display: flex;
  justify-content: center;
}

.apply__placeholder {
  width: 100%;
  max-width: 58rem;

  height: 44rem;

  overflow: hidden;

  border-radius: var(--radius-lg);

  background: var(--color-brand-black);

  position: relative;
}

/* MOBILE */
@media (max-width: 48rem) {
  .apply {
    padding-top: 1rem;
    padding-bottom: 2rem;
  }

  .apply__header h2 {
    font-size: 2rem;
  }

  .apply__placeholder {
    height: 40rem;
    border-radius: 1.25rem;
  }
}

.cupola-cta {
  padding: 5rem 0rem 5rem 0rem;
}
