html,
body {
  overflow-x: hidden;
}

.ds-reveal {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity var(--dur-slow, 600ms) var(--ease-out, ease), transform var(--dur-slow, 600ms) var(--ease-out, ease);
}

.ds-reveal.is-in {
  opacity: 1;
  transform: translateY(0);
}

.menu-toggle-redesign {
  display: none;
}

header.site-nav-shell nav a[style] {
  color: var(--ink-500) !important;
  font-weight: 400 !important;
  transition:
    color var(--dur-base, 220ms) var(--ease-out, ease),
    background var(--dur-base, 220ms) var(--ease-out, ease),
    transform var(--dur-base, 220ms) var(--ease-out, ease) !important;
}

header.site-nav-shell nav a[style] svg {
  opacity: 0 !important;
  transition: opacity var(--dur-base, 220ms) var(--ease-out, ease) !important;
}

header.site-nav-shell nav a[style]:hover {
  color: var(--color-primary) !important;
  transform: translateY(-1px);
}

header.site-nav-shell nav a[style]:hover svg {
  opacity: 0.42 !important;
}

header.site-nav-shell nav a.is-active[style] {
  color: var(--color-primary) !important;
  font-weight: 700 !important;
}

header.site-nav-shell nav a.is-active[style] svg {
  opacity: 1 !important;
}

.case-hero-safe[style] {
  margin-top: 0 !important;
  padding-top: 128px !important;
  min-height: calc(88vh + 28px) !important;
}

.case-hero-safe > div:last-child[style] {
  padding-top: 12px;
}

@media (min-width: 721px) {
  header.site-nav-shell[style] {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 1000 !important;
    pointer-events: none;
  }

  header.site-nav-shell[style] nav[style] {
    pointer-events: none;
  }

  header.site-nav-shell[style] nav > div[style] {
    background: transparent !important;
    border: 1px solid transparent !important;
    border-radius: var(--radius-pill) !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    padding: 0 !important;
    pointer-events: auto;
    transition:
      background var(--dur-base, 220ms) var(--ease-out, ease),
      border-color var(--dur-base, 220ms) var(--ease-out, ease),
      box-shadow var(--dur-base, 220ms) var(--ease-out, ease),
      backdrop-filter var(--dur-base, 220ms) var(--ease-out, ease),
      padding var(--dur-base, 220ms) var(--ease-out, ease);
  }

  header.site-nav-shell.is-floating[style] nav > div[style] {
    background: color-mix(in srgb, var(--color-surface) 82%, transparent) !important;
    border: 1px solid var(--border) !important;
    border-radius: var(--radius-pill) !important;
    box-shadow: var(--shadow-md), inset 0 1px 0 rgba(255, 255, 255, 0.5) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    padding: 6px !important;
    pointer-events: auto;
  }
}

@media (max-width: 720px) {
  :root {
    --gutter: 20px;
    --section-y: clamp(56px, 15vw, 76px);
  }

  header.site-nav-shell[style] {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 1000 !important;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: flex-start !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
    pointer-events: none;
  }

  .menu-toggle-redesign {
    display: inline-flex;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 5px;
    border: 1px solid color-mix(in srgb, var(--border) 82%, transparent);
    border-radius: var(--radius-pill);
    background: color-mix(in srgb, var(--color-surface) 84%, transparent);
    box-shadow: var(--shadow-sm), inset 0 1px 0 rgba(255, 255, 255, 0.58);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    color: var(--text-strong);
    cursor: pointer;
    pointer-events: auto;
  }

  .menu-toggle-redesign span {
    display: block;
    width: 18px;
    height: 1.5px;
    border-radius: 999px;
    background: currentColor;
    transition:
      transform var(--dur-base, 220ms) var(--ease-out, ease),
      opacity var(--dur-base, 220ms) var(--ease-out, ease);
  }

  header.is-menu-open .menu-toggle-redesign span:nth-child(1) {
    transform: translateY(6.5px) rotate(45deg);
  }

  header.is-menu-open .menu-toggle-redesign span:nth-child(2) {
    opacity: 0;
  }

  header.is-menu-open .menu-toggle-redesign span:nth-child(3) {
    transform: translateY(-6.5px) rotate(-45deg);
  }

  header.site-nav-shell nav[style] {
    position: absolute !important;
    top: 66px !important;
    right: 10px !important;
    display: none !important;
    justify-content: flex-end !important;
    width: min(220px, calc(100vw - 20px)) !important;
    max-width: calc(100vw - 20px) !important;
    overflow: visible !important;
    pointer-events: auto;
  }

  header.site-nav-shell.is-menu-open nav[style] {
    display: flex !important;
  }

  header.site-nav-shell nav > div[style] {
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 2px !important;
    padding: 8px !important;
    border: 1px solid var(--border) !important;
    border-radius: 22px !important;
    background: color-mix(in srgb, var(--color-surface) 88%, transparent) !important;
    box-shadow: var(--shadow-lg), inset 0 1px 0 rgba(255, 255, 255, 0.58) !important;
    backdrop-filter: blur(18px) !important;
    -webkit-backdrop-filter: blur(18px) !important;
    transform: none !important;
  }

  header.site-nav-shell nav a[style] {
    width: 100% !important;
    justify-content: center !important;
    padding: 11px 36px !important;
    border-radius: 16px !important;
    font-size: 14px !important;
    position: relative !important;
    text-align: center !important;
  }

  header.site-nav-shell nav a[style]:hover,
  header.site-nav-shell nav a.is-active[style] {
    background: var(--color-primary-wash) !important;
  }

  header.site-nav-shell nav a[style] svg {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
  }

  header.site-nav-shell nav a[style] svg:first-child {
    left: 18px !important;
  }

  header.site-nav-shell nav a[style] svg:last-child {
    right: 18px !important;
  }

  .case-hero-safe[style] {
    padding-top: 112px !important;
    min-height: auto !important;
  }

  section[style],
  footer[style] {
    max-width: 100vw !important;
    overflow: hidden !important;
  }

  h1[style] {
    font-size: clamp(34px, 10vw, 46px) !important;
    line-height: 1.06 !important;
  }

  h2[style] {
    font-size: clamp(27px, 8vw, 36px) !important;
  }

  h3[style] {
    overflow-wrap: anywhere;
  }

  p[style],
  span[style] {
    overflow-wrap: anywhere;
  }

  [style*="display:grid"][style*="grid-template-columns:"],
  [style*="display: grid"][style*="grid-template-columns:"],
  [style*="display: grid"][style*="grid-template-columns:"] {
    grid-template-columns: 1fr !important;
  }

  [style*="display:grid"][style*="grid-template-columns:repeat(2,1fr)"],
  [style*="display:grid"][style*="grid-template-columns:repeat(3,1fr)"],
  [style*="display:grid"][style*="grid-template-columns:repeat(4,1fr)"],
  [style*="display:grid"][style*="grid-template-columns:1fr 1fr"],
  [style*="display: grid"][style*="grid-template-columns: repeat(2, 1fr)"],
  [style*="display: grid"][style*="grid-template-columns: repeat(3, 1fr)"],
  [style*="display: grid"][style*="grid-template-columns: repeat(4, 1fr)"],
  [style*="display: grid"][style*="grid-template-columns: 1fr 1fr"] {
    grid-template-columns: 1fr !important;
  }

  [style*="display:grid"][style*="grid-template-columns:130px 1fr 130px"],
  [style*="display: grid"][style*="grid-template-columns: 130px 1fr 130px"] {
    grid-template-columns: 64px minmax(0, 1fr) 82px !important;
    gap: 8px !important;
  }

  [style*="display:grid"][style*="grid-template-columns:1fr auto 1fr auto"],
  [style*="display: grid"][style*="grid-template-columns: 1fr auto 1fr auto"] {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
  }

  [style*="display:grid"][style*="grid-template-columns:1fr auto 1fr auto"] > div[style*="justify-content:center"],
  [style*="display: grid"][style*="grid-template-columns: 1fr auto 1fr auto"] > div[style*="justify-content: center"] {
    display: none !important;
  }

  [style*="display:grid"][style*="grid-template-columns:"] > *,
  [style*="display: grid"][style*="grid-template-columns:"] > * {
    min-width: 0 !important;
  }

  [style*="display:grid"][style*="grid-template-columns:"] article,
  [style*="display: grid"][style*="grid-template-columns:"] article,
  [style*="display:grid"][style*="grid-template-columns:"] > div,
  [style*="display: grid"][style*="grid-template-columns:"] > div {
    max-width: 100% !important;
  }

  [style*="display:flex"][style*="gap:clamp"],
  [style*="display: flex"][style*="gap: clamp"],
  [style*="display:flex"][style*="gap:48px"],
  [style*="display: flex"][style*="gap: 48px"],
  [style*="display:flex"][style*="gap:80px"],
  [style*="display: flex"][style*="gap: 80px"],
  [style*="display:flex"][style*="gap:clamp(32px"],
  [style*="display: flex"][style*="gap: clamp(32px"],
  [style*="display:flex"][style*="gap:40px"],
  [style*="display: flex"][style*="gap: 40px"],
  [style*="display:flex"][style*="gap:28px"],
  [style*="display: flex"][style*="gap: 28px"],
  [style*="display:flex"][style*="gap:24px"][style*="justify-content:space-between"],
  [style*="display: flex"][style*="gap: 24px"][style*="justify-content: space-between"],
  [style*="display:flex"][style*="gap:20px"][style*="align-items:flex-start"],
  [style*="display: flex"][style*="gap: 20px"][style*="align-items: flex-start"],
  [style*="display:flex"][style*="gap:18px"][style*="align-items:flex-start"],
  [style*="display: flex"][style*="gap: 18px"][style*="align-items: flex-start"],
  [style*="display: flex"][style*="gap: 14px"][style*="align-items: flex-start"],
  [style*="display:flex"][style*="gap:14px"][style*="align-items:flex-start"] {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  #projetos .project-card-featured-mobile,
  #projetos [style*="min-height: 340px"][style*="display: flex"] {
    flex-direction: column !important;
    min-height: auto !important;
  }

  #projetos .project-card-featured-mobile > div:first-child,
  #projetos [style*="min-height: 340px"][style*="display: flex"] > div:first-child {
    flex: none !important;
    justify-content: flex-start !important;
  }

  #projetos .project-card-featured-mobile > div:nth-child(2),
  #projetos [style*="min-height: 340px"][style*="display: flex"] > div:nth-child(2) {
    flex: none !important;
    min-height: 245px !important;
    overflow: hidden !important;
  }

  #projetos .project-card-featured-mobile > div:nth-child(2) img,
  #projetos [style*="min-height: 340px"][style*="display: flex"] > div:nth-child(2) img {
    top: 18px !important;
    left: 50% !important;
    bottom: auto !important;
    width: min(250px, 74vw) !important;
    transform: translateX(-50%) rotate(2deg) !important;
    filter: drop-shadow(0 18px 36px rgba(0, 0, 0, 0.22)) !important;
  }

  #projetos .project-card-grid-mobile,
  #projetos [style*="display:grid"][style*="grid-template-columns:1fr 1fr"] {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
  }

  #publicacoes .publication-card-mobile {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 14px !important;
    padding: 22px !important;
  }

  #publicacoes .publication-card-mobile > div:first-child {
    width: auto !important;
    flex-direction: row !important;
    align-items: center !important;
  }

  #publicacoes .publication-card-mobile > div:nth-child(2) {
    width: 100% !important;
    flex: none !important;
    font-size: clamp(20px, 6.2vw, 27px) !important;
    line-height: 1.14 !important;
  }

  #publicacoes .publication-card-mobile > a {
    width: 100% !important;
    justify-content: space-between !important;
    padding-top: 8px !important;
    white-space: normal !important;
  }

  #sobre .about-profile-mobile {
    flex-direction: column !important;
    align-items: center !important;
    gap: 24px !important;
    text-align: center !important;
  }

  #sobre .about-profile-mobile > div:first-child {
    width: min(220px, 68vw) !important;
  }

  #sobre .about-profile-mobile > div:first-child > div {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 !important;
  }

  #sobre .about-profile-mobile > div:nth-child(2) {
    flex: none !important;
    max-width: 34rem !important;
    align-items: center !important;
  }

  #sobre .about-profile-mobile > div:nth-child(2) p {
    text-align: center !important;
  }

  #sobre .about-profile-mobile > div:nth-child(2) > div {
    justify-content: center !important;
  }

  #sobre .about-profile-mobile > div:nth-child(2) > a {
    justify-content: center !important;
  }

  section[data-screen-label="Sobre Hero"] > div[style] {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 24px !important;
  }

  section[data-screen-label="Sobre Hero"] > div[style] > div:nth-child(2) {
    display: contents !important;
  }

  section[data-screen-label="Sobre Hero"] > div[style] > div:first-child {
    order: 3 !important;
    width: min(100%, 390px) !important;
    align-self: center !important;
    margin: 0 auto 2px !important;
  }

  section[data-screen-label="Sobre Hero"] > div[style] > div:first-child img[style] {
    height: auto !important;
    aspect-ratio: 4 / 5.8 !important;
    object-position: 38% 14% !important;
  }

  section[data-screen-label="Sobre Hero"] > div[style] > div:nth-child(2) > x-import {
    display: none !important;
  }

  section[data-screen-label="Sobre Hero"] > div[style] > div:nth-child(2) > p:first-of-type {
    order: 1 !important;
    margin-bottom: 10px !important;
  }

  section[data-screen-label="Sobre Hero"] > div[style] > div:nth-child(2) > h1 {
    order: 2 !important;
    margin-bottom: 2px !important;
  }

  section[data-screen-label="Sobre Hero"] > div[style] > div:nth-child(2) > p:nth-of-type(2) {
    order: 4 !important;
    margin: 0 0 18px !important;
    max-width: 100% !important;
  }

  section[data-screen-label="Sobre Hero"] > div[style] > div:nth-child(2) > div {
    order: 5 !important;
  }

  section[data-screen-label="Experiência"] > div[style] > div[style*="display: flex"] {
    display: grid !important;
    grid-template-columns: 4px minmax(0, 1fr) !important;
    gap: 18px !important;
    align-items: stretch !important;
  }

  section[data-screen-label="Experiência"] > div[style] > div[style*="display: flex"] > div:first-child {
    width: 4px !important;
    min-height: auto !important;
    height: auto !important;
  }

  section[data-screen-label="Experiência"] > div[style] > div[style*="display: flex"] > div:nth-child(2) > div:first-child {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 6px !important;
  }

  section[data-screen-label="Experiência"] > div[style] > div[style*="display: flex"] > div:nth-child(2) > div:first-child span {
    padding-top: 0 !important;
    white-space: normal !important;
  }

  footer#contato > div[style] {
    border-radius: 24px !important;
  }

  footer#contato > div[style] > div:first-child {
    flex-direction: column !important;
    align-items: center !important;
    gap: 24px !important;
    padding: 32px 22px !important;
    text-align: center !important;
  }

  footer#contato > div[style] > div:first-child > div:first-child {
    align-items: center !important;
    text-align: center !important;
    gap: 16px !important;
  }

  footer#contato > div[style] > div:first-child > div:first-child p {
    max-width: 30rem !important;
    text-align: center !important;
  }

  footer#contato > div[style] > div:first-child > div:first-child x-import {
    align-self: center !important;
  }

  footer#contato > div[style] > div:first-child > div:nth-child(2) {
    display: none !important;
  }

  footer#contato > div[style] > div:first-child > div:nth-child(3) {
    align-items: center !important;
    gap: 14px !important;
    width: 100% !important;
  }

  footer#contato > div[style] > div:first-child > div:nth-child(3) > div:nth-child(2) {
    justify-content: center !important;
  }

  footer#contato > div[style] > div:first-child > div:nth-child(3) a {
    width: 48px !important;
    height: 48px !important;
  }

  footer#contato > div[style] > div:last-child {
    flex-direction: column !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 18px 22px !important;
    text-align: center !important;
  }

  [style*="min-width:300px"],
  [style*="min-width:320px"],
  [style*="min-width:280px"] {
    min-width: 0 !important;
  }

  [style*="padding:44px 48px"],
  [style*="padding:64px 72px"],
  [style*="padding:32px"],
  [style*="padding:28px 30px"],
  [style*="padding:24px 32px"],
  [style*="padding:22px 24px"],
  [style*="padding:22px 28px"],
  [style*="padding:20px 22px"] {
    padding: 22px !important;
  }

  [style*="padding:18px 72px"] {
    padding: 18px 22px !important;
  }

  [style*="padding:16px 20px"][style*="display:flex"] {
    padding: 16px !important;
  }

  [style*="width:110px"],
  [style*="width:64px"] {
    width: auto !important;
  }

  [style*="flex:none"] {
    max-width: 100% !important;
  }

  [style*="max-width:760px"],
  [style*="max-width:780px"],
  [style*="max-width:840px"],
  [style*="max-width:860px"],
  [style*="max-width:920px"] {
    max-width: 100% !important;
  }

  [style*="width:clamp(260px"],
  [style*="width:clamp(280px"],
  [style*="width:clamp(220px"],
  [style*="width:clamp(260px,28vw"] {
    width: min(100%, 320px) !important;
  }

  [style*="width:clamp(160px"],
  [style*="width:clamp(170px"] {
    width: min(100%, 240px) !important;
  }

  [style*="position:sticky"][style*="top:90px"],
  [style*="position: sticky"][style*="top: 90px"] {
    position: static !important;
  }

  section[data-screen-label] > div[style*="display: flex"][style*="flex-wrap: wrap"],
  section[data-screen-label] > div[style*="display:flex"][style*="flex-wrap:wrap"] {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 28px !important;
  }

  section[data-screen-label] > div[style] > div[style*="position: sticky"],
  section[data-screen-label] > div[style] > div[style*="position:sticky"] {
    position: static !important;
    top: auto !important;
  }

  section[data-screen-label="Artefatos"] > div[style] {
    gap: 28px !important;
  }

  section[data-screen-label="Artefatos"] > div[style] > div:first-child {
    position: relative !important;
    z-index: 2 !important;
  }

  section[data-screen-label="Artefatos"] > div[style] > div:nth-child(2) {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    min-height: 0 !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  section[data-screen-label="Artefatos"] > div[style] > div:nth-child(2) > div[style] {
    position: relative !important;
    inset: auto !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    width: 100% !important;
    transform: none !important;
  }

  section[data-screen-label="Artefatos"] > div[style] > div:nth-child(2) > div[style] > div:last-child {
    max-height: 220px !important;
    overflow: hidden !important;
  }

  section[data-screen-label="Aprendizados"] > div[style] {
    flex-direction: column !important;
    gap: 28px !important;
  }

  section[data-screen-label="Aprendizados"] > div[style] > div[style] {
    width: 100% !important;
    flex: none !important;
    min-width: 0 !important;
  }

  section[data-screen-label="Aprendizados"] > div[style] > div:nth-child(2) > div[style] {
    display: grid !important;
    grid-template-columns: 34px minmax(0, 1fr) !important;
    align-items: flex-start !important;
    column-gap: 14px !important;
    row-gap: 10px !important;
  }

  section[data-screen-label="Aprendizados"] > div[style] > div:nth-child(2) > div[style] > div:last-child {
    min-width: 0 !important;
  }

  [style*="flex:none;width:1px;height:180px"] {
    width: 100% !important;
    height: 1px !important;
  }

  img[style*="position:absolute"][style*="width:62%"],
  img[style*="position:absolute"][style*="width:58%"],
  img[style*="position:absolute"][style*="width:66%"],
  img[style*="position:absolute"][style*="width:72%"] {
    max-width: 68vw !important;
  }

  [style*="position:relative"][style*="min-height:clamp(300px"] {
    min-height: 430px !important;
  }

  [style*="position:absolute"][style*="width:64%"],
  [style*="position:absolute"][style*="width:60%"] {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    width: 100% !important;
    transform: none !important;
    margin-bottom: 16px !important;
  }

  [style*="font-size:11px"][style*="letter-spacing:0.18em"],
  [style*="font-size:11px"][style*="letter-spacing:0.16em"],
  [style*="font-size:11px"][style*="letter-spacing:0.14em"] {
    letter-spacing: 0.08em !important;
  }

  div.ds-marquee-track[style] {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 48px !important;
    width: max-content !important;
    min-width: max-content !important;
    height: auto !important;
    animation-name: ds-marquee !important;
    animation-duration: 30s !important;
    animation-timing-function: linear !important;
    animation-iteration-count: infinite !important;
  }

  div.ds-marquee-track[style] span[style] {
    white-space: nowrap !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
}

@media (max-width: 360px) {
  section[data-screen-label="Aprendizados"] > div[style] > div:nth-child(2) > div[style] {
    grid-template-columns: 1fr !important;
  }
}
