/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-space-y-reverse: 0;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
    }
  }
}

@layer theme {
  :root, :host {
    --font-sans: "Aeonik Pro", sans-serif;
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-white: #fff;
    --spacing: .25rem;
    --container-xl: 36rem;
    --text-xs: .75rem;
    --text-xs--line-height: calc(1 / .75);
    --text-sm: .875rem;
    --text-sm--line-height: calc(1.25 / .875);
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-4xl: 2.25rem;
    --text-4xl--line-height: calc(2.5 / 2.25);
    --text-5xl: 3rem;
    --text-5xl--line-height: 1;
    --font-weight-bold: 700;
    --tracking-tight: -.02em;
    --leading-snug: 1.12;
    --leading-normal: 1.6;
    --default-transition-duration: .4s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --line-height: var(--leading-normal);
    --ease-custom: cubic-bezier(.25, .1, .25, 1);
    --tracking-tightest: -.04em;
    --color-brand: #2b5ea7;
    --color-brand-dark: #1f4780;
    --color-brand-deep: #121626;
    --color-brand-soft: #e8eef7;
    --color-ink: #121626;
    --color-muted: #6b6e76;
    --color-paper: #fff;
    --color-sand: #f3f4f2;
    --color-line: #d9dce0;
    --color-mint: #e6ead8;
  }
}

@layer base {
  *, :after, :before, ::backdrop {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  ::file-selector-button {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  html, :host {
    -webkit-text-size-adjust: 100%;
    -moz-tab-size: 4;
      -o-tab-size: 4;
         tab-size: 4;
    line-height: 1.5;
    font-family: var(--default-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }

  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }

  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }

  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }

  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }

  b, strong {
    font-weight: bolder;
  }

  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }

  small {
    font-size: 80%;
  }

  sub, sup {
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
    position: relative;
  }

  sub {
    bottom: -.25em;
  }

  sup {
    top: -.5em;
  }

  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }

  :-moz-focusring:where(:not(iframe)) {
    outline: auto;
  }

  progress {
    vertical-align: baseline;
  }

  summary {
    display: list-item;
  }

  ol, ul, menu {
    list-style: none;
  }

  img, svg, video, canvas, audio, iframe, embed, object {
    vertical-align: middle;
    display: block;
  }

  img, video {
    max-width: 100%;
    height: auto;
  }

  button, input, select, optgroup, textarea {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }

  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }

  ::file-selector-button {
    margin-inline-end: 4px;
  }

  ::-moz-placeholder {
    opacity: 1;
  }

  ::placeholder {
    opacity: 1;
  }

  @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {
    ::-moz-placeholder {
      color: currentColor;
    }
    ::placeholder {
      color: currentColor;
    }

    @supports (color: color-mix(in lab, red, red)) {
      ::-moz-placeholder {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
      ::placeholder {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }

  textarea {
    resize: vertical;
  }

  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }

  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }

  ::-webkit-datetime-edit {
    display: inline-flex;
  }

  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }

  ::-webkit-datetime-edit {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-year-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-month-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-day-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-hour-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-minute-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-second-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-millisecond-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }

  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }

  :-moz-ui-invalid {
    box-shadow: none;
  }

  button, input:where([type="button"], [type="reset"], [type="submit"]) {
    -webkit-appearance: button;
       -moz-appearance: button;
            appearance: button;
  }

  ::file-selector-button {
    -webkit-appearance: button;
       -moz-appearance: button;
            appearance: button;
  }

  ::-webkit-inner-spin-button {
    height: auto;
  }

  ::-webkit-outer-spin-button {
    height: auto;
  }

  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }

  html {
    scroll-padding-top: 8rem;
  }

  body {
    color: var(--color-ink);
    background-color: var(--color-paper);
    line-height: var(--line-height);
  }

  a {
    transition: color .4s var(--ease-custom), opacity .4s var(--ease-custom),
      background-color .4s var(--ease-custom), border-color .4s var(--ease-custom);
  }

  img {
    max-width: 100%;
    height: auto;
  }
}

@layer components {
  .backdrop {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    z-index: 80;
    background-color: #12162680;
    position: fixed;
    inset: 0;
  }

  .btn {
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--color);
    background-color: var(--bg);
    border: 1px solid var(--border);
    cursor: pointer;
    transition: .4s var(--ease-custom);
    border-radius: 10px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    padding: 14px 28px;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    display: inline-flex;
  }

  .btn:hover {
    color: var(--color-hover);
    background-color: var(--bg-hover);
    border-color: var(--border-hover);
  }

  .btn--primary {
    --color: #fff;
    --bg: var(--color-brand);
    --border: var(--color-brand);
    --color-hover: #fff;
    --bg-hover: var(--color-brand-dark);
    --border-hover: var(--color-brand-dark);
  }

  .btn--navy {
    --color: #fff;
    --bg: var(--color-brand-deep);
    --border: var(--color-brand-deep);
    --color-hover: #fff;
    --bg-hover: #000;
    --border-hover: #000;
  }

  .btn--secondary {
    --color: var(--color-ink);
    --bg: transparent;
    --border: var(--color-ink);
    --color-hover: #fff;
    --bg-hover: var(--color-ink);
    --border-hover: var(--color-ink);
  }

  .btn--light {
    --color: var(--color-brand-deep);
    --bg: #fff;
    --border: #fff;
    --color-hover: var(--color-brand-deep);
    --bg-hover: var(--color-sand);
    --border-hover: var(--color-sand);
  }

  .btn--ghost {
    --color: #fff;
    --bg: transparent;
    --border: #fff6;
    --color-hover: #fff;
    --bg-hover: #ffffff1a;
    --border-hover: #fff;
  }

  .btn--full {
    width: 100%;
  }
}

@layer utilities {
  .visible {
    visibility: visible;
  }

  .absolute {
    position: absolute;
  }

  .relative {
    position: relative;
  }

  .static {
    position: static;
  }

  .container {
    width: 100%;
  }

  @media (min-width: 40rem) {
    .container {
      max-width: 40rem;
    }
  }

  @media (min-width: 48rem) {
    .container {
      max-width: 48rem;
    }
  }

  @media (min-width: 64rem) {
    .container {
      max-width: 64rem;
    }
  }

  @media (min-width: 80rem) {
    .container {
      max-width: 80rem;
    }
  }

  @media (min-width: 96rem) {
    .container {
      max-width: 96rem;
    }
  }

  .container {
    max-width: 1360px;
    margin: 0 auto;
    padding: 0 1.5rem;
  }

  .mt-12 {
    margin-top: calc(var(--spacing) * 12);
  }

  .mt-auto {
    margin-top: auto;
  }

  .mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
  }

  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }

  .mb-10 {
    margin-bottom: calc(var(--spacing) * 10);
  }

  .mb-12 {
    margin-bottom: calc(var(--spacing) * 12);
  }

  .block {
    display: block;
  }

  .flex {
    display: flex;
  }

  .grid {
    display: grid;
  }

  .hidden {
    display: none;
  }

  .inline {
    display: inline;
  }

  .inline-flex {
    display: inline-flex;
  }

  .aspect-\[16\/10\] {
    aspect-ratio: 16 / 10;
  }

  .h-10 {
    height: calc(var(--spacing) * 10);
  }

  .h-full {
    height: 100%;
  }

  .w-10 {
    width: calc(var(--spacing) * 10);
  }

  .w-full {
    width: 100%;
  }

  .max-w-xl {
    max-width: var(--container-xl);
  }

  .flex-1 {
    flex: 1;
  }

  .transform {
    transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
  }

  .resize {
    resize: both;
  }

  .flex-col {
    flex-direction: column;
  }

  .items-center {
    align-items: center;
  }

  .justify-between {
    justify-content: space-between;
  }

  .justify-center {
    justify-content: center;
  }

  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }

  .gap-5 {
    gap: calc(var(--spacing) * 5);
  }

  :where(.space-y-5 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)));
  }

  .overflow-hidden {
    overflow: hidden;
  }

  .scroll-smooth {
    scroll-behavior: smooth;
  }

  .rounded-\[24px\] {
    border-radius: 24px;
  }

  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }

  .border-line {
    border-color: var(--color-line);
  }

  .bg-brand-soft {
    background-color: var(--color-brand-soft);
  }

  .bg-white {
    background-color: var(--color-white);
  }

  .object-cover {
    -o-object-fit: cover;
       object-fit: cover;
  }

  .p-6 {
    padding: calc(var(--spacing) * 6);
  }

  .py-6 {
    padding-block: calc(var(--spacing) * 6);
  }

  .py-20 {
    padding-block: calc(var(--spacing) * 20);
  }

  .text-4xl {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }

  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }

  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }

  .text-\[11px\] {
    font-size: 11px;
  }

  .leading-normal {
    --tw-leading: var(--leading-normal);
    line-height: var(--leading-normal);
  }

  .leading-snug {
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
  }

  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }

  .tracking-\[0\.14em\] {
    --tw-tracking: .14em;
    letter-spacing: .14em;
  }

  .tracking-\[0\.16em\] {
    --tw-tracking: .16em;
    letter-spacing: .16em;
  }

  .tracking-tight {
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
  }

  .tracking-tightest {
    --tw-tracking: var(--tracking-tightest);
    letter-spacing: var(--tracking-tightest);
  }

  .text-balance {
    text-wrap: balance;
  }

  .text-brand {
    color: var(--color-brand);
  }

  .text-muted {
    color: var(--color-muted);
  }

  .uppercase {
    text-transform: uppercase;
  }

  .antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }

  .blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .filter {
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  @media (min-width: 40rem) {
    .sm\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (min-width: 48rem) {
    .md\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-4 {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .lg\:p-7 {
      padding: calc(var(--spacing) * 7);
    }

    .lg\:py-28 {
      padding-block: calc(var(--spacing) * 28);
    }

    .lg\:text-5xl {
      font-size: var(--text-5xl);
      line-height: var(--tw-leading, var(--text-5xl--line-height));
    }
  }

  @media (min-width: 80rem) {
    .xl\:block {
      display: block;
    }

    .xl\:hidden {
      display: none;
    }
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(16px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes riseIn {
  from {
    opacity: 0;
    transform: translateY(28px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@font-face {
  font-family: Aeonik Pro;
  src: url("../fonts/AeonikPro-Regular.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Aeonik Pro;
  src: url("../fonts/AeonikPro-RegularItalic.woff2") format("woff2");
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Aeonik Pro;
  src: url("../fonts/AeonikPro-Bold.woff2") format("woff2");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@view-transition {
  navigation: auto;
}

@keyframes vt-fade-out {
  to {
    opacity: 0;
  }
}

@keyframes vt-fade-in {
  from {
    opacity: 0;
  }
}

::view-transition-old(root) {
  animation: vt-fade-out .28s var(--ease-custom) both;
}

::view-transition-new(root) {
  animation: vt-fade-in .36s var(--ease-custom) .12s both;
}

::view-transition-group(root) {
  animation-duration: .48s;
}

@media (prefers-reduced-motion: reduce) {
  @view-transition {
    navigation: none;
  }
}

.header {
  z-index: 70;
  background-color: #fff;
  position: relative;
}

.header__top {
  border-bottom: 1px solid #eceef1;
  display: none;
}

@media (min-width: 1024px) {
  .header__top {
    display: block;
  }
}

.header__top .container {
  padding-top: 18px;
  padding-bottom: 18px;
}

.header__auth {
  position: relative;
}

.header__auth button {
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--color-ink);
  background: #fff;
  border: 1px solid #d8dce2;
  border-radius: 999px;
  align-items: center;
  gap: 10px;
  padding: 9px 18px 9px 20px;
  font-size: 11px;
  font-weight: 700;
  display: inline-flex;
}

.header__auth button svg {
  transition: transform .3s var(--ease-custom);
  display: block;
}

.header__auth.is-open button svg {
  transform: rotate(180deg);
}

.header__auth--menu {
  background: #fff;
  border-radius: 14px;
  flex-direction: column;
  min-width: 220px;
  padding: 8px 0;
  display: none;
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
  box-shadow: 0 16px 40px #1216261a;
}

@supports (color: color-mix(in lab, red, red)) {
  .header__auth--menu {
    box-shadow: 0 16px 40px color-mix(in srgb, var(--color-ink) 10%, transparent);
  }
}

.header__auth--menu {
  z-index: 5;
}

.header__auth.is-open .header__auth--menu {
  display: flex;
}

.header__auth a {
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--color-ink);
  padding: 11px 18px;
  font-size: 11px;
  font-weight: 700;
  display: block;
}

.header__auth a:hover {
  color: var(--color-brand);
}

.header__utility {
  align-items: center;
  gap: 36px;
  display: flex;
}

.header__utility a {
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--color-ink);
  font-size: 11px;
  font-weight: 600;
}

.header__utility a:hover {
  color: var(--color-brand);
}

.header__main {
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  padding-top: 28px;
  padding-bottom: 36px;
  display: flex;
}

@media (min-width: 1280px) {
  .header__main {
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    -moz-column-gap: 56px;
         column-gap: 56px;
    padding-top: 32px;
    padding-bottom: 40px;
    display: grid;
  }
}

.header__logo {
  flex-shrink: 0;
  line-height: 0;
  display: block;
}

.header__logo img {
  width: 68px;
  height: auto;
  display: block;
}

@media (min-width: 1280px) {
  .header__logo img {
    width: 78px;
  }
}

.header__navigation {
  justify-self: end;
}

.header__navigation:last-of-type {
  justify-self: start;
}

.header__navigation .menu {
  align-items: center;
  gap: 28px;
  display: flex;
}

@media (min-width: 1400px) {
  .header__navigation .menu {
    gap: 36px;
  }
}

.header__navigation .menu > li {
  align-items: center;
  display: inline-flex;
  position: relative;
}

.header__navigation .menu > li > a {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--color-ink);
  white-space: nowrap;
  align-items: center;
  gap: 8px;
  padding: 10px 0;
  font-size: 13px;
  font-weight: 700;
  display: inline-flex;
}

.header__navigation .menu > li > a svg {
  transition: transform .3s var(--ease-custom);
  display: block;
}

.header__navigation .menu > li > a:hover {
  color: var(--color-brand);
}

.header__navigation .menu > li:hover > a svg, .header__navigation .menu > li:focus-within > a svg, .header__navigation .menu > li.is-open > a svg {
  transform: rotate(180deg);
}

.header__navigation .sub-menu {
  background: #fff;
  border-radius: 14px;
  flex-direction: column;
  min-width: 240px;
  padding: 8px 0;
  display: flex;
  position: absolute;
  top: calc(100% - 4px);
  left: 0;
  box-shadow: 0 16px 40px #1216261a;
}

@supports (color: color-mix(in lab, red, red)) {
  .header__navigation .sub-menu {
    box-shadow: 0 16px 40px color-mix(in srgb, var(--color-ink) 10%, transparent);
  }
}

.header__navigation .sub-menu {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .2s var(--ease-custom), transform .2s var(--ease-custom), visibility .2s;
  z-index: 8;
  transform: translateY(8px);
}

.header__navigation .sub-menu li {
  display: block;
}

.header__navigation .sub-menu a {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--color-ink);
  white-space: nowrap;
  padding: 11px 18px;
  font-size: 12px;
  font-weight: 700;
  display: block;
}

.header__navigation .sub-menu a:hover {
  color: var(--color-brand);
}

.header__navigation .menu-item-has-children:hover .sub-menu, .header__navigation .menu-item-has-children:focus-within .sub-menu, .header__navigation .menu-item-has-children.is-open .sub-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

.header--overlay {
  background: none;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

.header--overlay .header__top {
  border-bottom-color: #ffffff38;
}

.header--overlay .header__auth button {
  color: #fff;
  background: #ffffff14;
  border-color: #ffffff6b;
}

.header--overlay .header__utility a, .header--overlay .header__navigation .menu > li > a {
  color: #fff;
}

.header--overlay .header__utility a:hover, .header--overlay .header__navigation .menu > li > a:hover {
  color: #c4d2e6;
}

@supports (color: color-mix(in lab, red, red)) {
  .header--overlay .header__utility a:hover, .header--overlay .header__navigation .menu > li > a:hover {
    color: color-mix(in srgb, #fff 72%, var(--color-brand));
  }
}

.header--overlay .toggle-navigation-mobile {
  color: #fff;
}

.navigation-mobile {
  background-color: var(--color-paper);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  -ms-overflow-style: none;
  scrollbar-width: none;
  z-index: 90;
  flex-direction: column;
  padding: 0 1.5rem 1.5rem;
  display: flex;
  position: fixed;
  inset: 0;
  overflow-y: auto;
  transform: translateX(100%);
}

.navigation-mobile::-webkit-scrollbar {
  display: none;
}

.navigation-mobile__menu {
  padding: 24px 0;
}

.navigation-mobile__menu .menu {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

.navigation-mobile__menu .menu li {
  display: block;
}

.navigation-mobile__menu .menu li a {
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--color-ink);
  align-items: center;
  gap: 10px;
  padding: 10px 0;
  font-size: 22px;
  font-weight: 700;
  display: flex;
}

.navigation-mobile__menu .menu .menu-item-has-children > a svg {
  display: none;
}

.navigation-mobile__menu .menu .sub-menu {
  flex-direction: column;
  gap: 0;
  padding: 0 0 8px 4px;
  display: flex;
}

.navigation-mobile__menu .menu .sub-menu a {
  letter-spacing: .04em;
  color: #121626b8;
  padding: 6px 0;
  font-size: 16px;
  font-weight: 600;
}

@supports (color: color-mix(in lab, red, red)) {
  .navigation-mobile__menu .menu .sub-menu a {
    color: color-mix(in srgb, var(--color-ink) 72%, transparent);
  }
}

.toggle-navigation-mobile {
  color: var(--color-ink);
}

.footer {
  z-index: 20;
  color: var(--color-ink);
  background-color: #fff;
  padding: 2.75rem 0 3rem;
  position: relative;
}

.footer a {
  color: inherit;
  text-decoration: none;
}

.footer a:hover {
  color: var(--color-brand);
}

.footer__nav {
  border-bottom: 1px solid #eceef1;
  align-items: center;
  margin-bottom: 2.5rem;
  padding-bottom: 2.5rem;
  display: none;
}

@media (min-width: 1280px) {
  .footer__nav {
    grid-template-columns: 1fr auto 1fr;
    -moz-column-gap: 72px;
         column-gap: 72px;
    display: grid;
  }
}

.footer__nav .menu {
  justify-content: space-between;
  align-items: center;
  gap: 28px;
  width: 100%;
  display: flex;
}

.footer__nav .menu > li {
  align-items: center;
  display: inline-flex;
  position: relative;
}

.footer__nav .menu > li > a {
  letter-spacing: .08em;
  text-transform: uppercase;
  white-space: nowrap;
  color: var(--color-ink);
  align-items: center;
  gap: 8px;
  padding: 10px 0;
  font-size: 13px;
  font-weight: 700;
  display: inline-flex;
}

.footer__nav .menu > li > a svg {
  transition: transform .3s var(--ease-custom);
  display: block;
}

.footer__nav .menu > li > a:hover {
  color: var(--color-brand);
}

.footer__nav .menu > li:hover > a svg, .footer__nav .menu > li:focus-within > a svg, .footer__nav .menu > li.is-open > a svg {
  transform: rotate(180deg);
}

.footer__nav .sub-menu {
  background: #fff;
  border-radius: 14px;
  flex-direction: column;
  min-width: 240px;
  padding: 8px 0;
  display: flex;
  position: absolute;
  top: calc(100% - 4px);
  left: 0;
  box-shadow: 0 16px 40px #1216261a;
}

@supports (color: color-mix(in lab, red, red)) {
  .footer__nav .sub-menu {
    box-shadow: 0 16px 40px color-mix(in srgb, var(--color-ink) 10%, transparent);
  }
}

.footer__nav .sub-menu {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .2s var(--ease-custom), transform .2s var(--ease-custom), visibility .2s;
  z-index: 8;
  transform: translateY(8px);
}

.footer__nav .sub-menu li {
  display: block;
}

.footer__nav .sub-menu a {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--color-ink);
  white-space: nowrap;
  padding: 11px 18px;
  font-size: 12px;
  font-weight: 700;
  display: block;
}

.footer__nav .sub-menu a:hover {
  color: var(--color-brand);
}

.footer__nav .menu-item-has-children:hover .sub-menu, .footer__nav .menu-item-has-children:focus-within .sub-menu, .footer__nav .menu-item-has-children.is-open .sub-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

.footer__nav-side {
  justify-content: space-between;
  align-items: center;
  gap: 28px;
  display: flex;
}

.footer__mark {
  justify-self: center;
  line-height: 0;
  display: block;
}

.footer__mark img {
  width: 52px;
  height: auto;
  display: block;
}

.footer__info {
  gap: 2.25rem;
  display: grid;
}

@media (min-width: 1024px) {
  .footer__info {
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    -moz-column-gap: 72px;
         column-gap: 72px;
  }
}

.footer__emec {
  flex-direction: column;
  align-items: flex-start;
  gap: 18px;
  display: flex;
}

.footer__qr {
  align-items: center;
  gap: 12px;
  max-width: 250px;
  display: flex;
}

.footer__qr svg {
  flex-shrink: 0;
}

.footer__qr span {
  color: #8b9098;
  font-size: 11px;
  line-height: 1.45;
}

.footer__shortcuts, .footer__social {
  align-items: center;
  gap: 12px;
  display: flex;
}

.footer__shortcuts a, .footer__social a {
  border: 1.5px solid #2b5ea747;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  display: inline-flex;
}

@supports (color: color-mix(in lab, red, red)) {
  .footer__shortcuts a, .footer__social a {
    border: 1.5px solid color-mix(in srgb, var(--color-brand) 28%, transparent);
  }
}

.footer__shortcuts a, .footer__social a {
  background: #eef2f8;
}

@supports (color: color-mix(in lab, red, red)) {
  .footer__shortcuts a, .footer__social a {
    background: color-mix(in srgb, var(--color-brand) 8%, #fff);
  }
}

.footer__shortcuts a, .footer__social a {
  color: var(--color-brand);
  transition: background .2s var(--ease-custom), color .2s var(--ease-custom), border-color .2s var(--ease-custom);
}

.footer__shortcuts a:hover, .footer__social a:hover {
  background: var(--color-brand);
  border-color: var(--color-brand);
  color: #fff;
}

.footer__social a {
  border-color: #12162629;
}

@supports (color: color-mix(in lab, red, red)) {
  .footer__social a {
    border-color: color-mix(in srgb, var(--color-ink) 16%, transparent);
  }
}

.footer__social a {
  color: var(--color-ink);
  background: #f4f5f7;
}

.footer__social a:hover {
  background: var(--color-brand);
  border-color: var(--color-brand);
  color: #fff;
}

.footer__brand {
  text-align: center;
  justify-self: center;
}

.footer__logo {
  margin-bottom: 1.1rem;
  line-height: 0;
  display: inline-block;
}

.footer__logo img {
  width: 108px;
  height: auto;
  margin: 0 auto;
  display: block;
}

.footer address {
  color: var(--color-ink);
  font-size: 12px;
  font-style: normal;
  line-height: 1.75;
}

.footer__aside {
  flex-direction: column;
  gap: 18px;
  display: flex;
}

@media (min-width: 1024px) {
  .footer__aside {
    text-align: right;
    align-items: flex-end;
  }
}

.footer__slogan {
  letter-spacing: -.03em;
  max-width: 13.5rem;
  color: var(--color-ink);
  font-size: 1.35rem;
  font-weight: 700;
  line-height: 1.2;
}

.form {
  flex-direction: column;
  gap: 16px;
  display: flex;
}

.form label {
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--color-ink);
  font-size: 11px;
  font-weight: 700;
  display: block;
}

.form input, .form textarea, .form select {
  width: 100%;
  color: var(--color-ink);
  border: 1px solid var(--color-line);
  transition: .3s var(--ease-custom);
  background-color: #fff;
  border-radius: 10px;
  outline: none;
  margin-top: 8px;
  padding: 13px 16px;
  font-size: 15px;
  display: block;
}

.form input:focus, .form textarea:focus, .form select:focus {
  border-color: var(--color-brand);
}

.form input::-moz-placeholder, .form textarea::-moz-placeholder, .form select::-moz-placeholder {
  color: var(--color-muted);
}

.form input::placeholder, .form textarea::placeholder, .form select::placeholder {
  color: var(--color-muted);
}

.form textarea {
  resize: vertical;
  min-height: 140px;
}

.form select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 256 256' fill='%23121626'%3E%3Cpath d='M213.66,101.66l-80,80a8,8,0,0,1-11.32,0l-80-80A8,8,0,0,1,53.66,90.34L128,164.69l74.34-74.35a8,8,0,0,1,11.32,11.32Z'/%3E%3C/svg%3E");
  background-position: right 18px center;
  background-repeat: no-repeat;
  background-size: 14px;
  padding-right: 48px;
}

.icon {
  fill: currentColor;
  flex-shrink: 0;
  display: block;
}

@keyframes heroKickerIn {
  from {
    opacity: 0;
    transform: translate3d(0, .4em, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@keyframes heroLineIn {
  from {
    opacity: 0;
    transform: translate3d(0, .16em, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@keyframes heroLineInFirst {
  from {
    opacity: 0;
    transform: translate3d(0, .08em, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

.page-home .hero, .page-curso .hero, .page-vestibular .hero, .page-institucional .hero, .page-professores .hero, .page-ouvidoria .hero, .page-cmv .hero {
  padding-bottom: 2.5rem;
}

.page-home .hero__banner, .page-curso .hero__banner, .page-vestibular .hero__banner, .page-institucional .hero__banner, .page-professores .hero__banner, .page-ouvidoria .hero__banner, .page-cmv .hero__banner {
  background: #fff;
  border-radius: 36px;
  height: min(72vh, 640px);
  padding: 1px;
  position: relative;
  overflow: hidden;
}

.page-home .hero__banner .swiper-wrapper, .page-home .hero__banner .swiper-slide, .page-curso .hero__banner .swiper-wrapper, .page-curso .hero__banner .swiper-slide, .page-vestibular .hero__banner .swiper-wrapper, .page-vestibular .hero__banner .swiper-slide, .page-institucional .hero__banner .swiper-wrapper, .page-institucional .hero__banner .swiper-slide, .page-professores .hero__banner .swiper-wrapper, .page-professores .hero__banner .swiper-slide, .page-ouvidoria .hero__banner .swiper-wrapper, .page-ouvidoria .hero__banner .swiper-slide, .page-cmv .hero__banner .swiper-wrapper, .page-cmv .hero__banner .swiper-slide {
  height: 100%;
}

.page-home .hero__item, .page-curso .hero__item, .page-vestibular .hero__item, .page-institucional .hero__item, .page-professores .hero__item, .page-ouvidoria .hero__item, .page-cmv .hero__item {
  background: #f4f3f0;
  border-radius: 35px;
  height: 100%;
  overflow: hidden;
  box-shadow: inset 0 0 0 1px #f4f3f0;
}

.page-home .hero__link, .page-curso .hero__link, .page-vestibular .hero__link, .page-institucional .hero__link, .page-professores .hero__link, .page-ouvidoria .hero__link, .page-cmv .hero__link {
  height: 100%;
  color: inherit;
  text-decoration: none;
  display: block;
  position: relative;
}

.page-home .hero__banner .swiper-slide-active, .page-home .hero__banner .swiper-slide-active .hero__link, .page-curso .hero__banner .swiper-slide-active, .page-curso .hero__banner .swiper-slide-active .hero__link, .page-vestibular .hero__banner .swiper-slide-active, .page-vestibular .hero__banner .swiper-slide-active .hero__link, .page-institucional .hero__banner .swiper-slide-active, .page-institucional .hero__banner .swiper-slide-active .hero__link, .page-professores .hero__banner .swiper-slide-active, .page-professores .hero__banner .swiper-slide-active .hero__link, .page-ouvidoria .hero__banner .swiper-slide-active, .page-ouvidoria .hero__banner .swiper-slide-active .hero__link, .page-cmv .hero__banner .swiper-slide-active, .page-cmv .hero__banner .swiper-slide-active .hero__link {
  pointer-events: auto;
}

.page-home .hero__media, .page-curso .hero__media, .page-vestibular .hero__media, .page-institucional .hero__media, .page-professores .hero__media, .page-ouvidoria .hero__media, .page-cmv .hero__media {
  border-radius: 0 35px 35px 0;
  position: absolute;
  inset: 0 0 0 22%;
  overflow: hidden;
}

.page-home .hero__media img, .page-curso .hero__media img, .page-vestibular .hero__media img, .page-institucional .hero__media img, .page-professores .hero__media img, .page-ouvidoria .hero__media img, .page-cmv .hero__media img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 70% center;
     object-position: 70% center;
  width: 100%;
  height: 100%;
  display: block;
}

.page-home .hero__shade, .page-curso .hero__shade, .page-vestibular .hero__shade, .page-institucional .hero__shade, .page-professores .hero__shade, .page-ouvidoria .hero__shade, .page-cmv .hero__shade {
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(90deg, #f4f3f0 0% 28%, #f4f3f0b8 46%, #f4f3f02e 68%, #f4f3f000 100%);
  position: absolute;
  inset: 0;
}

.page-home .hero__content, .page-curso .hero__content, .page-vestibular .hero__content, .page-institucional .hero__content, .page-professores .hero__content, .page-ouvidoria .hero__content, .page-cmv .hero__content {
  z-index: 1;
  flex-direction: column;
  justify-content: center;
  max-width: 560px;
  height: 100%;
  padding: 4rem 2rem 5.75rem;
  display: flex;
  position: relative;
}

@media (min-width: 1024px) {
  .page-home .hero__content, .page-curso .hero__content, .page-vestibular .hero__content, .page-institucional .hero__content, .page-professores .hero__content, .page-ouvidoria .hero__content, .page-cmv .hero__content {
    padding: 4.5rem 4.5rem 6rem;
  }
}

.page-home .hero__kicker, .page-curso .hero__kicker, .page-vestibular .hero__kicker, .page-institucional .hero__kicker, .page-professores .hero__kicker, .page-ouvidoria .hero__kicker, .page-cmv .hero__kicker {
  opacity: 1;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--color-muted);
  margin-bottom: 1.25rem;
  font-size: 12px;
  font-weight: 700;
}

.page-home .hero__title, .page-curso .hero__title, .page-vestibular .hero__title, .page-institucional .hero__title, .page-professores .hero__title, .page-ouvidoria .hero__title, .page-cmv .hero__title {
  opacity: 0;
  letter-spacing: -.045em;
  text-transform: uppercase;
  color: var(--color-ink);
  text-wrap: balance;
  font-size: clamp(2.1rem, 4.6vw, 58px);
  font-weight: 700;
  line-height: 1.02;
}

.page-home .hero__title.is-split, .page-curso .hero__title.is-split, .page-vestibular .hero__title.is-split, .page-institucional .hero__title.is-split, .page-professores .hero__title.is-split, .page-ouvidoria .hero__title.is-split, .page-cmv .hero__title.is-split {
  opacity: 1;
}

.page-home .hero__title .hero__line, .page-curso .hero__title .hero__line, .page-vestibular .hero__title .hero__line, .page-institucional .hero__title .hero__line, .page-professores .hero__title .hero__line, .page-ouvidoria .hero__title .hero__line, .page-cmv .hero__title .hero__line {
  opacity: 0;
  display: block;
  transform: translate3d(0, .16em, 0);
}

.page-home .hero__title .hero__line:first-child, .page-curso .hero__title .hero__line:first-child, .page-vestibular .hero__title .hero__line:first-child, .page-institucional .hero__title .hero__line:first-child, .page-professores .hero__title .hero__line:first-child, .page-ouvidoria .hero__title .hero__line:first-child, .page-cmv .hero__title .hero__line:first-child {
  transform: translate3d(0, .08em, 0);
}

.page-home .hero__title.is-animating .hero__line, .page-curso .hero__title.is-animating .hero__line, .page-vestibular .hero__title.is-animating .hero__line, .page-institucional .hero__title.is-animating .hero__line, .page-professores .hero__title.is-animating .hero__line, .page-ouvidoria .hero__title.is-animating .hero__line, .page-cmv .hero__title.is-animating .hero__line {
  animation: heroLineIn .8s var(--ease-custom) both;
}

.page-home .hero__title.is-animating .hero__line:first-child, .page-curso .hero__title.is-animating .hero__line:first-child, .page-vestibular .hero__title.is-animating .hero__line:first-child, .page-institucional .hero__title.is-animating .hero__line:first-child, .page-professores .hero__title.is-animating .hero__line:first-child, .page-ouvidoria .hero__title.is-animating .hero__line:first-child, .page-cmv .hero__title.is-animating .hero__line:first-child {
  animation-name: heroLineInFirst;
  animation-delay: 60ms;
}

.page-home .hero__title.is-animating .hero__line:nth-child(2), .page-curso .hero__title.is-animating .hero__line:nth-child(2), .page-vestibular .hero__title.is-animating .hero__line:nth-child(2), .page-institucional .hero__title.is-animating .hero__line:nth-child(2), .page-professores .hero__title.is-animating .hero__line:nth-child(2), .page-ouvidoria .hero__title.is-animating .hero__line:nth-child(2), .page-cmv .hero__title.is-animating .hero__line:nth-child(2) {
  animation-delay: .14s;
}

.page-home .hero__title.is-animating .hero__line:nth-child(3), .page-curso .hero__title.is-animating .hero__line:nth-child(3), .page-vestibular .hero__title.is-animating .hero__line:nth-child(3), .page-institucional .hero__title.is-animating .hero__line:nth-child(3), .page-professores .hero__title.is-animating .hero__line:nth-child(3), .page-ouvidoria .hero__title.is-animating .hero__line:nth-child(3), .page-cmv .hero__title.is-animating .hero__line:nth-child(3) {
  animation-delay: .22s;
}

.page-home .hero__title.is-animating .hero__line:nth-child(4), .page-curso .hero__title.is-animating .hero__line:nth-child(4), .page-vestibular .hero__title.is-animating .hero__line:nth-child(4), .page-institucional .hero__title.is-animating .hero__line:nth-child(4), .page-professores .hero__title.is-animating .hero__line:nth-child(4), .page-ouvidoria .hero__title.is-animating .hero__line:nth-child(4), .page-cmv .hero__title.is-animating .hero__line:nth-child(4) {
  animation-delay: .3s;
}

.page-home .hero__banner.swiper-initialized .hero__item:not(.swiper-slide-active) .hero__kicker, .page-curso .hero__banner.swiper-initialized .hero__item:not(.swiper-slide-active) .hero__kicker, .page-vestibular .hero__banner.swiper-initialized .hero__item:not(.swiper-slide-active) .hero__kicker, .page-institucional .hero__banner.swiper-initialized .hero__item:not(.swiper-slide-active) .hero__kicker, .page-professores .hero__banner.swiper-initialized .hero__item:not(.swiper-slide-active) .hero__kicker, .page-ouvidoria .hero__banner.swiper-initialized .hero__item:not(.swiper-slide-active) .hero__kicker, .page-cmv .hero__banner.swiper-initialized .hero__item:not(.swiper-slide-active) .hero__kicker {
  opacity: 0;
  animation: none;
}

.page-home .hero__banner.swiper-initialized .swiper-slide-active .hero__kicker, .page-curso .hero__banner.swiper-initialized .swiper-slide-active .hero__kicker, .page-vestibular .hero__banner.swiper-initialized .swiper-slide-active .hero__kicker, .page-institucional .hero__banner.swiper-initialized .swiper-slide-active .hero__kicker, .page-professores .hero__banner.swiper-initialized .swiper-slide-active .hero__kicker, .page-ouvidoria .hero__banner.swiper-initialized .swiper-slide-active .hero__kicker, .page-cmv .hero__banner.swiper-initialized .swiper-slide-active .hero__kicker {
  animation: heroKickerIn .85s var(--ease-custom) both;
  animation-delay: .12s;
}

@media (prefers-reduced-motion: reduce) {
  .page-home .hero__kicker, .page-home .hero__title, .page-home .hero__banner.swiper-initialized .swiper-slide-active .hero__kicker, .page-curso .hero__kicker, .page-curso .hero__title, .page-curso .hero__banner.swiper-initialized .swiper-slide-active .hero__kicker, .page-vestibular .hero__kicker, .page-vestibular .hero__title, .page-vestibular .hero__banner.swiper-initialized .swiper-slide-active .hero__kicker, .page-institucional .hero__kicker, .page-institucional .hero__title, .page-institucional .hero__banner.swiper-initialized .swiper-slide-active .hero__kicker, .page-professores .hero__kicker, .page-professores .hero__title, .page-professores .hero__banner.swiper-initialized .swiper-slide-active .hero__kicker, .page-ouvidoria .hero__kicker, .page-ouvidoria .hero__title, .page-ouvidoria .hero__banner.swiper-initialized .swiper-slide-active .hero__kicker, .page-cmv .hero__kicker, .page-cmv .hero__title, .page-cmv .hero__banner.swiper-initialized .swiper-slide-active .hero__kicker {
    opacity: 1;
    animation: none;
  }

  .page-home .hero__title .hero__line, .page-curso .hero__title .hero__line, .page-vestibular .hero__title .hero__line, .page-institucional .hero__title .hero__line, .page-professores .hero__title .hero__line, .page-ouvidoria .hero__title .hero__line, .page-cmv .hero__title .hero__line {
    opacity: 1;
    animation: none;
    transform: none;
  }
}

.page-home .hero__brand, .page-curso .hero__brand, .page-vestibular .hero__brand, .page-institucional .hero__brand, .page-professores .hero__brand, .page-ouvidoria .hero__brand, .page-cmv .hero__brand {
  z-index: 2;
  pointer-events: none;
  width: 52px;
  height: auto;
  position: absolute;
  bottom: 28px;
  left: 28px;
}

@media (min-width: 1024px) {
  .page-home .hero__brand, .page-curso .hero__brand, .page-vestibular .hero__brand, .page-institucional .hero__brand, .page-professores .hero__brand, .page-ouvidoria .hero__brand, .page-cmv .hero__brand {
    width: 62px;
    bottom: 36px;
    left: 40px;
  }
}

.page-home .hero__pagination, .page-curso .hero__pagination, .page-vestibular .hero__pagination, .page-institucional .hero__pagination, .page-professores .hero__pagination, .page-ouvidoria .hero__pagination, .page-cmv .hero__pagination {
  z-index: 3;
  justify-content: center;
  align-items: center;
  gap: 10px;
  width: 100%;
  display: flex;
  position: absolute;
  bottom: 28px;
  left: 0;
  right: 0;
  transform: none;
}

.page-home .hero__pagination--item, .page-curso .hero__pagination--item, .page-vestibular .hero__pagination--item, .page-institucional .hero__pagination--item, .page-professores .hero__pagination--item, .page-ouvidoria .hero__pagination--item, .page-cmv .hero__pagination--item {
  border: 1.5px solid var(--color-brand);
  opacity: 1;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: none;
  border-radius: 50%;
  width: 11px;
  height: 11px;
  padding: 0;
  display: block;
}

.page-home .hero__pagination--item--active, .page-curso .hero__pagination--item--active, .page-vestibular .hero__pagination--item--active, .page-institucional .hero__pagination--item--active, .page-professores .hero__pagination--item--active, .page-ouvidoria .hero__pagination--item--active, .page-cmv .hero__pagination--item--active {
  background: var(--color-brand);
  border-color: var(--color-brand);
  position: relative;
}

.page-home .hero__pagination--item--active:after, .page-curso .hero__pagination--item--active:after, .page-vestibular .hero__pagination--item--active:after, .page-institucional .hero__pagination--item--active:after, .page-professores .hero__pagination--item--active:after, .page-ouvidoria .hero__pagination--item--active:after, .page-cmv .hero__pagination--item--active:after {
  content: "";
  background: var(--color-brand-deep);
  border-radius: 50%;
  position: absolute;
  inset: 2.5px;
}

.page-home .curso, .page-curso .curso, .page-vestibular .curso, .page-institucional .curso, .page-professores .curso, .page-ouvidoria .curso, .page-cmv .curso {
  background: var(--color-sand);
  padding: 4.5rem 0 5.5rem;
}

.page-home .curso__video, .page-curso .curso__video, .page-vestibular .curso__video, .page-institucional .curso__video, .page-professores .curso__video, .page-ouvidoria .curso__video, .page-cmv .curso__video {
  background: var(--color-brand);
  color: #fff;
  border-radius: 36px;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  min-height: 200px;
  margin-bottom: 3.5rem;
  padding: 2rem 2.5rem;
  display: flex;
}

.page-home .curso__video p, .page-curso .curso__video p, .page-vestibular .curso__video p, .page-institucional .curso__video p, .page-professores .curso__video p, .page-ouvidoria .curso__video p, .page-cmv .curso__video p {
  letter-spacing: .06em;
  text-transform: uppercase;
  text-align: right;
  margin: 0;
  font-size: clamp(1.4rem, 3vw, 28px);
  font-weight: 700;
}

.page-home .curso__play, .page-curso .curso__play, .page-vestibular .curso__play, .page-institucional .curso__play, .page-professores .curso__play, .page-ouvidoria .curso__play, .page-cmv .curso__play {
  border: 1.5px solid;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 56px;
  height: 56px;
  display: inline-flex;
}

.page-home .curso__grid, .page-curso .curso__grid, .page-vestibular .curso__grid, .page-institucional .curso__grid, .page-professores .curso__grid, .page-ouvidoria .curso__grid, .page-cmv .curso__grid {
  gap: 2.5rem;
  display: grid;
}

@media (min-width: 1024px) {
  .page-home .curso__grid, .page-curso .curso__grid, .page-vestibular .curso__grid, .page-institucional .curso__grid, .page-professores .curso__grid, .page-ouvidoria .curso__grid, .page-cmv .curso__grid {
    grid-template-columns: 1.15fr .85fr;
    align-items: start;
    gap: 4rem;
  }
}

.page-home .curso__title, .page-curso .curso__title, .page-vestibular .curso__title, .page-institucional .curso__title, .page-professores .curso__title, .page-ouvidoria .curso__title, .page-cmv .curso__title {
  letter-spacing: -.045em;
  text-transform: uppercase;
  margin-bottom: 1.25rem;
  font-size: clamp(2.2rem, 4vw, 48px);
  font-weight: 700;
  line-height: .95;
}

.page-home .curso__title a, .page-curso .curso__title a, .page-vestibular .curso__title a, .page-institucional .curso__title a, .page-professores .curso__title a, .page-ouvidoria .curso__title a, .page-cmv .curso__title a {
  color: inherit;
  text-decoration: none;
}

.page-home .curso__title a:hover, .page-curso .curso__title a:hover, .page-vestibular .curso__title a:hover, .page-institucional .curso__title a:hover, .page-professores .curso__title a:hover, .page-ouvidoria .curso__title a:hover, .page-cmv .curso__title a:hover {
  color: var(--color-brand);
}

.page-home .curso__text, .page-curso .curso__text, .page-vestibular .curso__text, .page-institucional .curso__text, .page-professores .curso__text, .page-ouvidoria .curso__text, .page-cmv .curso__text {
  max-width: 34rem;
  color: var(--color-muted);
  margin-bottom: 0;
}

.page-home .curso__meta, .page-curso .curso__meta, .page-vestibular .curso__meta, .page-institucional .curso__meta, .page-professores .curso__meta, .page-ouvidoria .curso__meta, .page-cmv .curso__meta {
  flex-wrap: wrap;
  gap: 22px 28px;
  margin: 1.75rem 0 2rem;
  display: flex;
}

.page-home .curso__meta-item, .page-curso .curso__meta-item, .page-vestibular .curso__meta-item, .page-institucional .curso__meta-item, .page-professores .curso__meta-item, .page-ouvidoria .curso__meta-item, .page-cmv .curso__meta-item {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--color-ink);
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 700;
  display: inline-flex;
}

.page-home .curso__photo, .page-curso .curso__photo, .page-vestibular .curso__photo, .page-institucional .curso__photo, .page-professores .curso__photo, .page-ouvidoria .curso__photo, .page-cmv .curso__photo {
  border-radius: 32px;
  margin: 0;
  overflow: hidden;
}

.page-home .curso__photo img, .page-curso .curso__photo img, .page-vestibular .curso__photo img, .page-institucional .curso__photo img, .page-professores .curso__photo img, .page-ouvidoria .curso__photo img, .page-cmv .curso__photo img {
  aspect-ratio: 16 / 9;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  display: block;
}

.page-home .curso__form, .page-curso .curso__form, .page-vestibular .curso__form, .page-institucional .curso__form, .page-professores .curso__form, .page-ouvidoria .curso__form, .page-cmv .curso__form {
  background: #fff;
  border-radius: 32px;
  padding: 36px 32px;
}

.page-home .curso__form h3, .page-curso .curso__form h3, .page-vestibular .curso__form h3, .page-institucional .curso__form h3, .page-professores .curso__form h3, .page-ouvidoria .curso__form h3, .page-cmv .curso__form h3 {
  letter-spacing: -.03em;
  text-transform: uppercase;
  margin-bottom: .4rem;
  font-size: 1.7rem;
  font-weight: 700;
}

.page-home .curso__form > p, .page-curso .curso__form > p, .page-vestibular .curso__form > p, .page-institucional .curso__form > p, .page-professores .curso__form > p, .page-ouvidoria .curso__form > p, .page-cmv .curso__form > p {
  color: var(--color-muted);
  margin-bottom: 1.5rem;
  font-size: 14px;
}

.page-home .sobre, .page-curso .sobre, .page-vestibular .sobre, .page-institucional .sobre, .page-professores .sobre, .page-ouvidoria .sobre, .page-cmv .sobre {
  padding: 5rem 0 4rem;
}

.page-home .sobre__media, .page-curso .sobre__media, .page-vestibular .sobre__media, .page-institucional .sobre__media, .page-professores .sobre__media, .page-ouvidoria .sobre__media, .page-cmv .sobre__media {
  border-radius: 36px;
  margin: 0 0 3rem;
  overflow: hidden;
}

.page-home .sobre__media img, .page-curso .sobre__media img, .page-vestibular .sobre__media img, .page-institucional .sobre__media img, .page-professores .sobre__media img, .page-ouvidoria .sobre__media img, .page-cmv .sobre__media img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: min(420px, 52vw);
  display: block;
}

.page-home .sobre__grid, .page-curso .sobre__grid, .page-vestibular .sobre__grid, .page-institucional .sobre__grid, .page-professores .sobre__grid, .page-ouvidoria .sobre__grid, .page-cmv .sobre__grid {
  gap: 2.5rem;
  display: grid;
}

@media (min-width: 1024px) {
  .page-home .sobre__grid, .page-curso .sobre__grid, .page-vestibular .sobre__grid, .page-institucional .sobre__grid, .page-professores .sobre__grid, .page-ouvidoria .sobre__grid, .page-cmv .sobre__grid {
    grid-template-columns: 1.1fr .9fr;
    align-items: start;
    gap: 4rem;
  }
}

.page-home .sobre__kicker, .page-curso .sobre__kicker, .page-vestibular .sobre__kicker, .page-institucional .sobre__kicker, .page-professores .sobre__kicker, .page-ouvidoria .sobre__kicker, .page-cmv .sobre__kicker {
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--color-brand);
  margin-bottom: .75rem;
  font-size: 11px;
  font-weight: 700;
}

.page-home .sobre__title, .page-curso .sobre__title, .page-vestibular .sobre__title, .page-institucional .sobre__title, .page-professores .sobre__title, .page-ouvidoria .sobre__title, .page-cmv .sobre__title {
  letter-spacing: -.045em;
  text-transform: uppercase;
  margin-bottom: 1.5rem;
  font-size: clamp(2rem, 3.6vw, 44px);
  font-weight: 700;
  line-height: 1.05;
}

.page-home .sobre p, .page-curso .sobre p, .page-vestibular .sobre p, .page-institucional .sobre p, .page-professores .sobre p, .page-ouvidoria .sobre p, .page-cmv .sobre p {
  color: var(--color-muted);
  margin-bottom: 1rem;
}

.page-home .sobre__cards, .page-curso .sobre__cards, .page-vestibular .sobre__cards, .page-institucional .sobre__cards, .page-professores .sobre__cards, .page-ouvidoria .sobre__cards, .page-cmv .sobre__cards {
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  display: grid;
}

.page-home .sobre__card, .page-curso .sobre__card, .page-vestibular .sobre__card, .page-institucional .sobre__card, .page-professores .sobre__card, .page-ouvidoria .sobre__card, .page-cmv .sobre__card {
  border-radius: 28px;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 160px;
  padding: 22px;
  display: flex;
}

.page-home .sobre__card span, .page-curso .sobre__card span, .page-vestibular .sobre__card span, .page-institucional .sobre__card span, .page-professores .sobre__card span, .page-ouvidoria .sobre__card span, .page-cmv .sobre__card span {
  letter-spacing: .14em;
  text-transform: uppercase;
  opacity: .55;
  margin-bottom: .6rem;
  font-size: 11px;
  font-weight: 700;
}

.page-home .sobre__card p, .page-curso .sobre__card p, .page-vestibular .sobre__card p, .page-institucional .sobre__card p, .page-professores .sobre__card p, .page-ouvidoria .sobre__card p, .page-cmv .sobre__card p {
  text-transform: uppercase;
  color: inherit;
  margin: 0;
  font-weight: 700;
}

.page-home .sobre__card--brand, .page-curso .sobre__card--brand, .page-vestibular .sobre__card--brand, .page-institucional .sobre__card--brand, .page-professores .sobre__card--brand, .page-ouvidoria .sobre__card--brand, .page-cmv .sobre__card--brand {
  background: var(--color-brand);
  color: #fff;
}

.page-home .sobre__card--navy, .page-curso .sobre__card--navy, .page-vestibular .sobre__card--navy, .page-institucional .sobre__card--navy, .page-professores .sobre__card--navy, .page-ouvidoria .sobre__card--navy, .page-cmv .sobre__card--navy {
  background: var(--color-brand-deep);
  color: #fff;
}

.page-home .sobre__card--mint, .page-curso .sobre__card--mint, .page-vestibular .sobre__card--mint, .page-institucional .sobre__card--mint, .page-professores .sobre__card--mint, .page-ouvidoria .sobre__card--mint, .page-cmv .sobre__card--mint {
  background: var(--color-mint);
  color: var(--color-ink);
}

.page-home .sobre__card--sand, .page-curso .sobre__card--sand, .page-vestibular .sobre__card--sand, .page-institucional .sobre__card--sand, .page-professores .sobre__card--sand, .page-ouvidoria .sobre__card--sand, .page-cmv .sobre__card--sand {
  background: var(--color-sand);
  color: var(--color-ink);
}

.page-home .noticias, .page-curso .noticias, .page-vestibular .noticias, .page-institucional .noticias, .page-professores .noticias, .page-ouvidoria .noticias, .page-cmv .noticias {
  background: #fff;
  padding: 4.5rem 0 6rem;
}

.page-home .noticias__head, .page-curso .noticias__head, .page-vestibular .noticias__head, .page-institucional .noticias__head, .page-professores .noticias__head, .page-ouvidoria .noticias__head, .page-cmv .noticias__head {
  text-align: center;
  justify-items: center;
  gap: 14px;
  margin-bottom: 2.75rem;
  display: grid;
}

.page-home .noticias__badge, .page-curso .noticias__badge, .page-vestibular .noticias__badge, .page-institucional .noticias__badge, .page-professores .noticias__badge, .page-ouvidoria .noticias__badge, .page-cmv .noticias__badge {
  background: var(--color-brand-soft);
  color: var(--color-brand);
  letter-spacing: .08em;
  text-transform: uppercase;
  border-radius: 999px;
  align-items: center;
  margin: 0;
  padding: 6px 14px;
  font-size: 12px;
  font-weight: 700;
  display: inline-flex;
}

.page-home .noticias h2, .page-curso .noticias h2, .page-vestibular .noticias h2, .page-institucional .noticias h2, .page-professores .noticias h2, .page-ouvidoria .noticias h2, .page-cmv .noticias h2 {
  letter-spacing: -.04em;
  max-width: 16ch;
  font-size: clamp(2rem, 4vw, 48px);
  font-weight: 700;
  line-height: 1.05;
}

.page-home .noticias__board, .page-curso .noticias__board, .page-vestibular .noticias__board, .page-institucional .noticias__board, .page-professores .noticias__board, .page-ouvidoria .noticias__board, .page-cmv .noticias__board {
  gap: 20px;
  display: grid;
}

@media (min-width: 1024px) {
  .page-home .noticias__board, .page-curso .noticias__board, .page-vestibular .noticias__board, .page-institucional .noticias__board, .page-professores .noticias__board, .page-ouvidoria .noticias__board, .page-cmv .noticias__board {
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
  }
}

.page-home .noticias__side, .page-curso .noticias__side, .page-vestibular .noticias__side, .page-institucional .noticias__side, .page-professores .noticias__side, .page-ouvidoria .noticias__side, .page-cmv .noticias__side {
  gap: 20px;
  display: grid;
}

@media (min-width: 1024px) {
  .page-home .noticias__side, .page-curso .noticias__side, .page-vestibular .noticias__side, .page-institucional .noticias__side, .page-professores .noticias__side, .page-ouvidoria .noticias__side, .page-cmv .noticias__side {
    grid-template-rows: 1fr 1fr;
  }
}

.page-home .noticias__feature, .page-home .noticias__row, .page-curso .noticias__feature, .page-curso .noticias__row, .page-vestibular .noticias__feature, .page-vestibular .noticias__row, .page-institucional .noticias__feature, .page-institucional .noticias__row, .page-professores .noticias__feature, .page-professores .noticias__row, .page-ouvidoria .noticias__feature, .page-ouvidoria .noticias__row, .page-cmv .noticias__feature, .page-cmv .noticias__row {
  background: #fff;
  border: 1px solid #eceef1;
  border-radius: 20px;
}

.page-home .noticias__feature, .page-curso .noticias__feature, .page-vestibular .noticias__feature, .page-institucional .noticias__feature, .page-professores .noticias__feature, .page-ouvidoria .noticias__feature, .page-cmv .noticias__feature {
  flex-direction: column;
  display: flex;
}

.page-home .noticias__feature .noticias__media, .page-curso .noticias__feature .noticias__media, .page-vestibular .noticias__feature .noticias__media, .page-institucional .noticias__feature .noticias__media, .page-professores .noticias__feature .noticias__media, .page-ouvidoria .noticias__feature .noticias__media, .page-cmv .noticias__feature .noticias__media {
  background: var(--color-sand);
  border-radius: 20px 20px 0 0;
  display: block;
  overflow: hidden;
}

.page-home .noticias__feature .noticias__media img, .page-curso .noticias__feature .noticias__media img, .page-vestibular .noticias__feature .noticias__media img, .page-institucional .noticias__feature .noticias__media img, .page-professores .noticias__feature .noticias__media img, .page-ouvidoria .noticias__feature .noticias__media img, .page-cmv .noticias__feature .noticias__media img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 210px;
  display: block;
}

.page-home .noticias__feature .noticias__body, .page-curso .noticias__feature .noticias__body, .page-vestibular .noticias__feature .noticias__body, .page-institucional .noticias__feature .noticias__body, .page-professores .noticias__feature .noticias__body, .page-ouvidoria .noticias__feature .noticias__body, .page-cmv .noticias__feature .noticias__body {
  flex-direction: column;
  flex: 1;
  padding: 20px 24px 22px;
  display: flex;
}

.page-home .noticias__feature h3, .page-curso .noticias__feature h3, .page-vestibular .noticias__feature h3, .page-institucional .noticias__feature h3, .page-professores .noticias__feature h3, .page-ouvidoria .noticias__feature h3, .page-cmv .noticias__feature h3 {
  font-size: clamp(1.2rem, 1.7vw, 1.4rem);
}

.page-home .noticias__row, .page-curso .noticias__row, .page-vestibular .noticias__row, .page-institucional .noticias__row, .page-professores .noticias__row, .page-ouvidoria .noticias__row, .page-cmv .noticias__row {
  flex-direction: column;
  gap: 12px;
  padding: 10px;
  display: flex;
}

@media (min-width: 640px) {
  .page-home .noticias__row, .page-curso .noticias__row, .page-vestibular .noticias__row, .page-institucional .noticias__row, .page-professores .noticias__row, .page-ouvidoria .noticias__row, .page-cmv .noticias__row {
    flex-direction: row;
    align-items: stretch;
    gap: 4px;
  }
}

.page-home .noticias__row .noticias__media, .page-curso .noticias__row .noticias__media, .page-vestibular .noticias__row .noticias__media, .page-institucional .noticias__row .noticias__media, .page-professores .noticias__row .noticias__media, .page-ouvidoria .noticias__row .noticias__media, .page-cmv .noticias__row .noticias__media {
  background: var(--color-sand);
  border-radius: 24px;
  flex: none;
  display: block;
  overflow: hidden;
}

@media (min-width: 640px) {
  .page-home .noticias__row .noticias__media, .page-curso .noticias__row .noticias__media, .page-vestibular .noticias__row .noticias__media, .page-institucional .noticias__row .noticias__media, .page-professores .noticias__row .noticias__media, .page-ouvidoria .noticias__row .noticias__media, .page-cmv .noticias__row .noticias__media {
    flex-basis: 236px;
    width: 236px;
  }
}

.page-home .noticias__row .noticias__media img, .page-curso .noticias__row .noticias__media img, .page-vestibular .noticias__row .noticias__media img, .page-institucional .noticias__row .noticias__media img, .page-professores .noticias__row .noticias__media img, .page-ouvidoria .noticias__row .noticias__media img, .page-cmv .noticias__row .noticias__media img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 210px;
  display: block;
}

@media (min-width: 640px) {
  .page-home .noticias__row .noticias__media img, .page-curso .noticias__row .noticias__media img, .page-vestibular .noticias__row .noticias__media img, .page-institucional .noticias__row .noticias__media img, .page-professores .noticias__row .noticias__media img, .page-ouvidoria .noticias__row .noticias__media img, .page-cmv .noticias__row .noticias__media img {
    height: 100%;
    min-height: 210px;
  }
}

.page-home .noticias__row .noticias__body, .page-curso .noticias__row .noticias__body, .page-vestibular .noticias__row .noticias__body, .page-institucional .noticias__row .noticias__body, .page-professores .noticias__row .noticias__body, .page-ouvidoria .noticias__row .noticias__body, .page-cmv .noticias__row .noticias__body {
  flex-direction: column;
  flex: 1;
  justify-content: center;
  min-width: 0;
  padding: 12px 16px 12px 14px;
  display: flex;
}

.page-home .noticias__row h3, .page-curso .noticias__row h3, .page-vestibular .noticias__row h3, .page-institucional .noticias__row h3, .page-professores .noticias__row h3, .page-ouvidoria .noticias__row h3, .page-cmv .noticias__row h3 {
  font-size: clamp(1.05rem, 1.4vw, 1.18rem);
}

.page-home .noticias__body, .page-curso .noticias__body, .page-vestibular .noticias__body, .page-institucional .noticias__body, .page-professores .noticias__body, .page-ouvidoria .noticias__body, .page-cmv .noticias__body {
  padding: 24px;
}

.page-home .noticias__meta, .page-curso .noticias__meta, .page-vestibular .noticias__meta, .page-institucional .noticias__meta, .page-professores .noticias__meta, .page-ouvidoria .noticias__meta, .page-cmv .noticias__meta {
  color: var(--color-muted);
  align-items: center;
  gap: 8px;
  margin: 0 0 12px;
  font-size: 13px;
  font-weight: 600;
  display: flex;
}

.page-home .noticias__meta time:after, .page-curso .noticias__meta time:after, .page-vestibular .noticias__meta time:after, .page-institucional .noticias__meta time:after, .page-professores .noticias__meta time:after, .page-ouvidoria .noticias__meta time:after, .page-cmv .noticias__meta time:after {
  content: "";
  background: var(--color-line);
  vertical-align: -1px;
  width: 1px;
  height: 12px;
  margin: 0 8px;
  display: inline-block;
}

.page-home .noticias h3, .page-curso .noticias h3, .page-vestibular .noticias h3, .page-institucional .noticias h3, .page-professores .noticias h3, .page-ouvidoria .noticias h3, .page-cmv .noticias h3 {
  letter-spacing: -.03em;
  text-wrap: pretty;
  margin: 0 0 12px;
  font-weight: 700;
  line-height: 1.2;
}

.page-home .noticias h3 a, .page-curso .noticias h3 a, .page-vestibular .noticias h3 a, .page-institucional .noticias h3 a, .page-professores .noticias h3 a, .page-ouvidoria .noticias h3 a, .page-cmv .noticias h3 a {
  color: inherit;
  text-decoration: none;
}

.page-home .noticias h3 a:hover, .page-curso .noticias h3 a:hover, .page-vestibular .noticias h3 a:hover, .page-institucional .noticias h3 a:hover, .page-professores .noticias h3 a:hover, .page-ouvidoria .noticias h3 a:hover, .page-cmv .noticias h3 a:hover {
  color: var(--color-brand);
}

.page-home .noticias__excerpt, .page-curso .noticias__excerpt, .page-vestibular .noticias__excerpt, .page-institucional .noticias__excerpt, .page-professores .noticias__excerpt, .page-ouvidoria .noticias__excerpt, .page-cmv .noticias__excerpt {
  max-width: 52ch;
  color: var(--color-muted);
  margin: 0 0 16px;
}

.page-home .noticias .btn, .page-curso .noticias .btn, .page-vestibular .noticias .btn, .page-institucional .noticias .btn, .page-professores .noticias .btn, .page-ouvidoria .noticias .btn, .page-cmv .noticias .btn {
  letter-spacing: .04em;
  border-radius: 999px;
  width: -moz-fit-content;
  width: fit-content;
  padding: 9px 16px;
}

.page-home .noticias__foot, .page-curso .noticias__foot, .page-vestibular .noticias__foot, .page-institucional .noticias__foot, .page-professores .noticias__foot, .page-ouvidoria .noticias__foot, .page-cmv .noticias__foot {
  justify-content: center;
  margin-top: 2rem;
  display: flex;
}

.page-home .home-cta, .page-curso .home-cta, .page-vestibular .home-cta, .page-institucional .home-cta, .page-professores .home-cta, .page-ouvidoria .home-cta, .page-cmv .home-cta {
  padding: 4rem 0 5rem;
}

.page-home .home-cta__banner, .page-curso .home-cta__banner, .page-vestibular .home-cta__banner, .page-institucional .home-cta__banner, .page-professores .home-cta__banner, .page-ouvidoria .home-cta__banner, .page-cmv .home-cta__banner {
  color: #fff;
  background: var(--color-brand-deep);
  border-radius: 32px;
  position: relative;
  overflow: hidden;
}

.page-home .home-cta__media, .page-curso .home-cta__media, .page-vestibular .home-cta__media, .page-institucional .home-cta__media, .page-professores .home-cta__media, .page-ouvidoria .home-cta__media, .page-cmv .home-cta__media {
  position: absolute;
  inset: 0;
}

.page-home .home-cta__media img, .page-curso .home-cta__media img, .page-vestibular .home-cta__media img, .page-institucional .home-cta__media img, .page-professores .home-cta__media img, .page-ouvidoria .home-cta__media img, .page-cmv .home-cta__media img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.page-home .home-cta__shade, .page-curso .home-cta__shade, .page-vestibular .home-cta__shade, .page-institucional .home-cta__shade, .page-professores .home-cta__shade, .page-ouvidoria .home-cta__shade, .page-cmv .home-cta__shade {
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(90deg, #121626e0 0%, #121626b8 42%, #1216267a 100%);
  position: absolute;
  inset: 0;
}

.page-home .home-cta__content, .page-curso .home-cta__content, .page-vestibular .home-cta__content, .page-institucional .home-cta__content, .page-professores .home-cta__content, .page-ouvidoria .home-cta__content, .page-cmv .home-cta__content {
  z-index: 2;
  max-width: 42rem;
  padding: 3.5rem 2rem;
  position: relative;
}

@media (min-width: 1024px) {
  .page-home .home-cta__content, .page-curso .home-cta__content, .page-vestibular .home-cta__content, .page-institucional .home-cta__content, .page-professores .home-cta__content, .page-ouvidoria .home-cta__content, .page-cmv .home-cta__content {
    padding: 5rem 4rem;
  }
}

.page-home .home-cta__kicker, .page-curso .home-cta__kicker, .page-vestibular .home-cta__kicker, .page-institucional .home-cta__kicker, .page-professores .home-cta__kicker, .page-ouvidoria .home-cta__kicker, .page-cmv .home-cta__kicker {
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #ffffff80;
  margin: 0 0 1rem;
  font-size: 11px;
  font-weight: 700;
}

.page-home .home-cta h2, .page-curso .home-cta h2, .page-vestibular .home-cta h2, .page-institucional .home-cta h2, .page-professores .home-cta h2, .page-ouvidoria .home-cta h2, .page-cmv .home-cta h2 {
  letter-spacing: -.045em;
  text-transform: uppercase;
  margin: 0 0 1.25rem;
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 700;
  line-height: 1.15;
}

.page-home .home-cta__lead, .page-curso .home-cta__lead, .page-vestibular .home-cta__lead, .page-institucional .home-cta__lead, .page-professores .home-cta__lead, .page-ouvidoria .home-cta__lead, .page-cmv .home-cta__lead {
  color: #ffffffb3;
  max-width: 32rem;
  margin: 0 0 2rem;
}

.page-home .home-cta__actions, .page-curso .home-cta__actions, .page-vestibular .home-cta__actions, .page-institucional .home-cta__actions, .page-professores .home-cta__actions, .page-ouvidoria .home-cta__actions, .page-cmv .home-cta__actions {
  flex-wrap: wrap;
  gap: 12px;
  display: flex;
}

.page-curso .curso {
  padding-top: 4rem;
}

@media (min-width: 1024px) {
  .page-curso .curso__form {
    position: sticky;
    top: 1.5rem;
  }
}

.page-curso .sobre {
  padding-top: 4.5rem;
}

.page-curso .curso-list {
  color: var(--color-muted);
  margin: 0 0 1.25rem;
  padding-left: 1.15rem;
}

.page-curso .curso-list li {
  margin-bottom: .45rem;
}

.page-curso .curso-auth {
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--color-ink);
  font-size: 13px;
  font-weight: 700;
}

.curso-atuacao, .curso-grade, .curso-razoes {
  padding: 4.5rem 0 1rem;
}

.curso-atuacao .sobre__title, .curso-grade .sobre__title, .curso-razoes .sobre__title {
  margin-bottom: 2rem;
}

.curso-atuacao {
  padding-bottom: 0;
}

.curso-atuacao__tags {
  flex-wrap: wrap;
  gap: 10px;
  display: flex;
}

.curso-atuacao span {
  background: var(--color-sand);
  letter-spacing: .08em;
  text-transform: uppercase;
  border-radius: 999px;
  align-items: center;
  min-height: 42px;
  padding: 0 18px;
  font-size: 12px;
  font-weight: 700;
  display: inline-flex;
}

.curso-grade__grid {
  gap: 14px;
  display: grid;
}

@media (min-width: 768px) {
  .curso-grade__grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 1280px) {
  .curso-grade__grid {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}

.curso-grade__card {
  background: #fff;
  border: 1px solid #eceef1;
  border-radius: 24px;
  padding: 22px 22px 18px;
}

.curso-grade__card h3 {
  letter-spacing: .1em;
  text-transform: uppercase;
  margin: 0 0 1rem;
  font-size: 13px;
  font-weight: 700;
}

.curso-grade__card ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.curso-grade__card li {
  color: var(--color-muted);
  border-top: 1px solid #f0f1f3;
  padding: .35rem 0;
  font-size: 13px;
  line-height: 1.45;
}

.curso-grade__card li:first-child {
  border-top: 0;
  padding-top: 0;
}

.curso-razoes {
  padding-bottom: 2rem;
}

.curso-razoes__layout {
  gap: 14px;
  display: grid;
}

@media (min-width: 1100px) {
  .curso-razoes__layout:has(.curso-razoes__media) {
    grid-template-columns: minmax(0, 1fr) 280px;
    align-items: stretch;
  }
}

.curso-razoes__grid {
  gap: 14px;
  display: grid;
}

@media (min-width: 768px) {
  .curso-razoes__grid {
    grid-template-columns: 1fr 1fr;
  }
}

.curso-razoes__card {
  background: var(--color-sand);
  border-radius: 24px;
  padding: 26px 24px;
}

.curso-razoes__card h3 {
  letter-spacing: -.03em;
  margin: 0 0 .75rem;
  font-size: 1.15rem;
  font-weight: 700;
}

.curso-razoes__card p {
  color: var(--color-muted);
  margin: 0;
  font-size: 14px;
}

.curso-razoes__media {
  background: var(--color-sand);
  border-radius: 24px;
  min-height: 320px;
  margin: 0;
  overflow: hidden;
}

.curso-razoes__media img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top center;
     object-position: top center;
  width: 100%;
  height: 100%;
  display: block;
}

.page-vestibular .vestibular-hero, .page-curso .vestibular-hero {
  color: #fff;
  background: var(--color-brand-deep);
  align-items: flex-end;
  min-height: min(72vh, 620px);
  display: flex;
  position: relative;
  overflow: hidden;
}

.page-vestibular .vestibular-hero__media, .page-curso .vestibular-hero__media {
  position: absolute;
  inset: 0;
}

.page-vestibular .vestibular-hero__media img, .page-curso .vestibular-hero__media img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.page-vestibular .vestibular-hero__shade, .page-curso .vestibular-hero__shade {
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(#121626d1 0%, #12162694 45%, #121626bd 100%);
  position: absolute;
  inset: 0;
}

.page-vestibular .vestibular-hero__content, .page-curso .vestibular-hero__content {
  z-index: 2;
  max-width: 42rem;
  padding: 10rem 0 4.5rem;
  position: relative;
}

.page-vestibular .vestibular-hero__kicker, .page-curso .vestibular-hero__kicker {
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #ffffffb8;
  margin: 0 0 .85rem;
  font-size: 11px;
  font-weight: 700;
}

.page-vestibular .vestibular-hero h1, .page-curso .vestibular-hero h1 {
  letter-spacing: -.045em;
  text-transform: uppercase;
  margin: 0 0 1rem;
  font-size: clamp(2.4rem, 6vw, 64px);
  font-weight: 700;
  line-height: .95;
}

.page-vestibular .vestibular-hero__lead, .page-curso .vestibular-hero__lead {
  color: #ffffffc7;
  max-width: 32rem;
  margin: 0 0 1.75rem;
  font-size: 1.05rem;
  line-height: 1.5;
}

.page-vestibular .vestibular-hero__actions, .page-curso .vestibular-hero__actions {
  flex-wrap: wrap;
  gap: 12px;
  display: flex;
}

.page-vestibular .vestibular-steps, .page-vestibular .vestibular-cursos, .page-vestibular .vestibular-inscricao {
  padding: 4.5rem 0;
}

.page-vestibular .vestibular-steps .sobre__title, .page-vestibular .vestibular-cursos .sobre__title, .page-vestibular .vestibular-inscricao .sobre__title {
  margin-bottom: 2rem;
}

.page-vestibular .vestibular-steps {
  background: #fff;
}

.page-vestibular .vestibular-steps .sobre__card small {
  color: inherit;
  opacity: .72;
  margin-top: .65rem;
  font-size: 13px;
  line-height: 1.45;
  display: block;
}

.page-vestibular .vestibular-cursos {
  background: var(--color-sand);
}

.page-vestibular .vestibular-cursos__grid {
  gap: 18px;
  display: grid;
}

@media (min-width: 768px) {
  .page-vestibular .vestibular-cursos__grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 1024px) {
  .page-vestibular .vestibular-cursos__grid {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

.page-vestibular .vestibular-cursos__card {
  background: #fff;
  border: 1px solid #0000;
  border-radius: 32px;
  flex-direction: column;
  height: 100%;
  display: flex;
  overflow: hidden;
}

.page-vestibular .vestibular-cursos__card.is-selected {
  border-color: var(--color-brand);
}

.page-vestibular .vestibular-cursos__card figure {
  margin: 0;
}

.page-vestibular .vestibular-cursos__card img {
  aspect-ratio: 16 / 9;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  display: block;
}

.page-vestibular .vestibular-cursos__card h3 {
  letter-spacing: -.04em;
  text-transform: uppercase;
  margin: 0 0 .75rem;
  font-size: clamp(1.6rem, 3vw, 32px);
  font-weight: 700;
}

.page-vestibular .vestibular-cursos__card .vestibular-cursos__body > p {
  color: var(--color-muted);
  margin: 0;
}

.page-vestibular .vestibular-cursos__body {
  flex-direction: column;
  flex: 1;
  padding: 28px 28px 32px;
  display: flex;
}

.page-vestibular .vestibular-cursos__actions {
  flex-wrap: wrap;
  gap: 10px;
  margin-top: auto;
  display: flex;
}

.page-vestibular .vestibular-cursos .curso__meta {
  margin: 1.25rem 0 1.5rem;
}

.page-vestibular .vestibular-inscricao {
  background: #fff;
}

.page-vestibular .vestibular-inscricao__grid {
  gap: 2.5rem;
  display: grid;
}

@media (min-width: 1024px) {
  .page-vestibular .vestibular-inscricao__grid {
    grid-template-columns: 1.1fr .9fr;
    align-items: start;
  }
}

.page-vestibular .vestibular-inscricao .curso-list {
  color: var(--color-muted);
  margin: 1.25rem 0 0;
  padding-left: 1.15rem;
}

.page-vestibular .vestibular-inscricao .curso-list li {
  margin-bottom: .45rem;
}

.page-vestibular .vestibular-inscricao .curso__form {
  background: var(--color-sand);
  border-radius: 32px;
  padding: 36px 32px;
}

.page-vestibular .vestibular-inscricao .curso__form h3 {
  letter-spacing: -.03em;
  text-transform: uppercase;
  margin-bottom: .4rem;
  font-size: 1.7rem;
  font-weight: 700;
}

.page-vestibular .vestibular-inscricao .curso__form > p {
  color: var(--color-muted);
  margin-bottom: 1.5rem;
  font-size: 14px;
}

.page-institucional .institucional-sobre {
  padding-top: 4.5rem;
  padding-bottom: 3.5rem;
}

.page-institucional .institucional-sobre .sobre__card p {
  text-transform: none;
  letter-spacing: -.02em;
  font-weight: 600;
  line-height: 1.35;
}

.page-institucional .institucional-sobre__cards {
  grid-template-columns: 1fr;
}

.page-institucional .institucional-valores {
  padding: 0 0 5rem;
}

.page-institucional .institucional-valores__grid {
  gap: 12px;
  display: grid;
}

@media (min-width: 640px) {
  .page-institucional .institucional-valores__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1100px) {
  .page-institucional .institucional-valores__grid {
    grid-template-columns: repeat(5, 1fr);
  }
}

.page-institucional .institucional-valores__card {
  background: var(--color-brand-deep);
  color: #fff;
  border-radius: 28px;
  flex-direction: column;
  justify-content: space-between;
  min-height: 180px;
  padding: 22px;
  display: flex;
}

.page-institucional .institucional-valores__card span {
  letter-spacing: .14em;
  text-transform: uppercase;
  opacity: .55;
  font-size: 11px;
  font-weight: 700;
}

.page-institucional .institucional-valores__card h3 {
  letter-spacing: -.03em;
  text-transform: uppercase;
  margin: 0;
  font-size: 1.15rem;
  font-weight: 700;
  line-height: 1.15;
}

.page-institucional .institucional-selos {
  background: var(--color-sand);
  padding: 4.5rem 0;
}

.page-institucional .institucional-selos__grid {
  align-items: center;
  gap: 2.5rem;
  display: grid;
}

@media (min-width: 1024px) {
  .page-institucional .institucional-selos__grid {
    grid-template-columns: 1.1fr .9fr;
    gap: 4rem;
  }
}

.page-institucional .institucional-selos .sobre__title {
  margin-bottom: 0;
}

.page-institucional .institucional-selos__list {
  flex-wrap: wrap;
  justify-content: center;
  gap: 18px;
  display: flex;
}

@media (min-width: 1024px) {
  .page-institucional .institucional-selos__list {
    justify-content: flex-end;
  }
}

.page-institucional .institucional-selos__item {
  border: 1px solid var(--color-line);
  text-align: center;
  background: #fff;
  border-radius: 50%;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 148px;
  height: 148px;
  padding: 16px;
  display: flex;
}

.page-institucional .institucional-selos__item p {
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--color-brand);
  margin: 0 0 6px;
  font-size: 10px;
  font-weight: 700;
}

.page-institucional .institucional-selos__item strong {
  letter-spacing: -.04em;
  text-transform: uppercase;
  margin-bottom: 6px;
  font-size: 1.35rem;
  font-weight: 700;
  line-height: 1;
}

.page-institucional .institucional-selos__item span {
  color: var(--color-muted);
  max-width: 11ch;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.25;
}

.page-institucional .institucional-orgaos {
  padding: 5rem 0 1rem;
}

.page-institucional .institucional-orgaos .sobre__title {
  margin-bottom: 2rem;
}

.page-institucional .institucional-orgaos__grid {
  gap: 18px;
  display: grid;
}

@media (min-width: 1024px) {
  .page-institucional .institucional-orgaos__grid {
    grid-template-columns: 1fr 1fr;
  }
}

.page-institucional .institucional-orgaos__card {
  background: #fff;
  border: 1px solid #eceef1;
  border-radius: 32px;
  padding: 32px 28px;
}

.page-institucional .institucional-orgaos__card h3 {
  letter-spacing: -.04em;
  text-transform: uppercase;
  margin: 0 0 .85rem;
  font-size: clamp(1.5rem, 2.4vw, 28px);
  font-weight: 700;
}

.page-institucional .institucional-orgaos__card p:last-child {
  color: var(--color-muted);
  margin: 0;
}

.equipe {
  padding: 5rem 0;
}

.equipe__head {
  margin-bottom: 2rem;
}

.equipe__grid {
  gap: 18px;
  display: grid;
}

@media (min-width: 640px) {
  .equipe__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .equipe__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.equipe__card {
  background: #fff;
  border: 1px solid #eceef1;
  border-radius: 28px;
  height: 100%;
  padding: 22px 20px 24px;
}

.equipe__photo {
  background: var(--color-sand);
  border-radius: 50%;
  width: 92px;
  height: 92px;
  margin: 0 0 1.15rem;
  overflow: hidden;
}

.equipe__photo img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.equipe h3 {
  letter-spacing: -.03em;
  margin: 0 0 .45rem;
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.2;
}

.equipe p {
  color: var(--color-muted);
  margin: 0;
  font-size: 13px;
  line-height: 1.45;
}

.equipe__foot {
  justify-content: center;
  margin-top: 2rem;
  display: flex;
}

.page-ouvidoria .ouvidoria-sobre {
  padding-top: 4.5rem;
  padding-bottom: 3.5rem;
}

.page-ouvidoria .ouvidoria-sobre .btn {
  margin-top: .75rem;
}

.page-ouvidoria .ouvidoria-sobre .sobre__card small {
  color: inherit;
  opacity: .72;
  text-transform: none;
  letter-spacing: -.02em;
  margin-top: .65rem;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.45;
  display: block;
}

.page-ouvidoria .ouvidoria-contato {
  background: var(--color-sand);
  padding: 4.5rem 0 5.5rem;
}

.page-ouvidoria .ouvidoria-contato__grid {
  gap: 2.5rem;
  display: grid;
}

@media (min-width: 1024px) {
  .page-ouvidoria .ouvidoria-contato__grid {
    grid-template-columns: 1.1fr .9fr;
    align-items: start;
  }
}

.page-ouvidoria .ouvidoria-contato .sobre__title {
  margin-bottom: 1.25rem;
}

.page-ouvidoria .ouvidoria-contato a {
  color: var(--color-brand);
  font-weight: 700;
}

.page-ouvidoria .ouvidoria-contato .curso-list {
  color: var(--color-muted);
  margin: 1.25rem 0 0;
  padding-left: 1.15rem;
}

.page-ouvidoria .ouvidoria-contato .curso-list li {
  margin-bottom: .45rem;
}

.page-ouvidoria .ouvidoria-contato .curso__form {
  background: #fff;
}

.page-cmv .cmv-sobre {
  padding-top: 4.5rem;
  padding-bottom: 3.5rem;
}

.page-cmv .cmv-sobre .btn {
  margin-top: .75rem;
}

.page-cmv .cmv-sobre .sobre__card small {
  color: inherit;
  opacity: .72;
  text-transform: none;
  letter-spacing: -.02em;
  margin-top: .65rem;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.45;
  display: block;
}

.page-cmv .cmv-contato {
  background: var(--color-sand);
  padding: 4.5rem 0 5.5rem;
}

.page-cmv .cmv-contato__grid {
  gap: 2.5rem;
  display: grid;
}

@media (min-width: 1024px) {
  .page-cmv .cmv-contato__grid {
    grid-template-columns: 1.1fr .9fr;
    align-items: start;
  }
}

.page-cmv .cmv-contato .sobre__title {
  margin-bottom: 1.25rem;
}

.page-cmv .cmv-contato .curso-list {
  color: var(--color-muted);
  margin: 1.25rem 0 0;
  padding-left: 1.15rem;
}

.page-cmv .cmv-contato .curso-list li {
  margin-bottom: .45rem;
}

.page-cmv .cmv-contato__actions {
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 1.75rem;
  display: flex;
}

.page-cmv .cmv-contato .curso__form {
  background: #fff;
}

.page-cmv .cmv-noticias {
  padding-top: 5rem;
}

.page-cmv .cmv-noticias .page-noticias__grid {
  margin-bottom: 0;
}

.page-cmv .cmv-curso {
  padding: 0 0 5.5rem;
}

.page-cmv .cmv-curso__card {
  background: var(--color-brand-deep);
  color: #fff;
  border-radius: 32px;
  position: relative;
  overflow: hidden;
}

.page-cmv .cmv-curso__media {
  position: absolute;
  inset: 0;
}

.page-cmv .cmv-curso__media img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.page-cmv .cmv-curso__shade {
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(90deg, #121626e0 0%, #121626b8 42%, #1216267a 100%);
  position: absolute;
  inset: 0;
}

.page-cmv .cmv-curso__content {
  z-index: 2;
  max-width: 42rem;
  padding: 2.5rem 2rem;
  position: relative;
}

@media (min-width: 768px) {
  .page-cmv .cmv-curso__content {
    padding: 3.5rem 4rem;
  }
}

.page-cmv .cmv-curso__content .sobre__kicker {
  color: #ffffff8c;
}

.page-cmv .cmv-curso__content .sobre__title, .page-cmv .cmv-curso__content p {
  color: #fff;
}

.page-cmv .cmv-curso__content p {
  opacity: .72;
  max-width: 36rem;
}

.page-cmv .cmv-curso__actions {
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 1.5rem;
  display: flex;
}

.page-cmv .cmv-curso .btn--ghost {
  color: #fff;
  border-color: #ffffff47;
}

.page-inner {
  padding: 0 0 5.5rem;
}

.page-inner__hero {
  background: var(--color-sand);
  padding: 2.25rem 0 2.5rem;
}

@media (min-width: 1024px) {
  .page-inner__hero {
    padding: 2.75rem 0 3rem;
  }
}

.page-inner__hero h1 {
  max-width: 18ch;
  letter-spacing: var(--tracking-tightest);
  text-wrap: balance;
  font-size: clamp(2.25rem, 4.2vw, 3.5rem);
  font-weight: 700;
  line-height: 1.05;
}

.page-inner__kicker {
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--color-brand);
  margin: 0 0 .7rem;
  font-size: 11px;
  font-weight: 700;
}

.page-inner__main {
  padding-top: 2.5rem;
}

@media (min-width: 1024px) {
  .page-inner__main {
    padding-top: 3.25rem;
  }
}

.prose-faron {
  max-width: 720px;
}

.prose-faron h1, .prose-faron h2, .prose-faron h3 {
  letter-spacing: var(--tracking-tightest);
  color: var(--color-ink);
}

.prose-faron a {
  color: var(--color-brand);
}

.page-noticia__intro {
  align-items: end;
  gap: 1.25rem 3rem;
  display: grid;
}

@media (min-width: 900px) {
  .page-noticia__intro {
    grid-template-columns: minmax(0, 1.4fr) minmax(10rem, .6fr);
  }
}

.page-noticia h1 {
  letter-spacing: -.04em;
  text-wrap: pretty;
  max-width: 22ch;
  margin: 0;
  font-size: clamp(2rem, 3.8vw, 3.15rem);
  font-weight: 700;
  line-height: 1.08;
}

.page-noticia__kicker {
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--color-brand);
  align-items: center;
  gap: 10px;
  margin: 0 0 .85rem;
  font-size: 11px;
  font-weight: 700;
  display: flex;
}

.page-noticia__date {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--color-muted);
  white-space: nowrap;
  margin: 0;
  font-size: 13px;
  font-weight: 700;
}

@media (min-width: 900px) {
  .page-noticia__date {
    justify-self: end;
    padding-bottom: .35rem;
  }
}

.page-noticia__media {
  background: var(--color-sand);
  border-radius: 28px;
  width: 100%;
  margin: 0 0 2.5rem;
  overflow: hidden;
}

.page-noticia__media img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: min(520px, 52vw);
  display: block;
}

.page-noticia__content {
  gap: 1.15rem;
  max-width: 720px;
  margin-inline: auto;
  display: grid;
}

.page-noticia__content p {
  margin: 0;
}

.page-noticia__content img {
  border-radius: 18px;
  width: 100%;
  display: block;
}

.page-noticia__gallery {
  grid-template-columns: 1fr;
  gap: 12px;
  margin-top: .5rem;
  display: grid;
}

@media (min-width: 700px) {
  .page-noticia__gallery {
    grid-template-columns: 1fr 1fr;
  }
}

.page-noticia__gallery figure {
  background: var(--color-sand);
  border-radius: 18px;
  margin: 0;
  overflow: hidden;
}

.page-noticias__grid {
  align-items: stretch;
  gap: 28px 24px;
  display: grid;
}

@media (min-width: 768px) {
  .page-noticias__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1100px) {
  .page-noticias__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-noticias__pager {
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-top: 3rem;
  display: flex;
}

.page-noticias__pager .page-numbers {
  min-width: 40px;
  height: 40px;
  color: var(--color-ink);
  border: 1px solid #eceef1;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  padding: 0 12px;
  font-size: 13px;
  font-weight: 700;
  display: inline-flex;
}

.page-noticias__pager .page-numbers.current, .page-noticias__pager .page-numbers:hover {
  background: var(--color-ink);
  border-color: var(--color-ink);
  color: #fff;
}

.page-professores .equipe {
  padding: 2.25rem 0 0;
}

@media (min-width: 1024px) {
  .page-professores .equipe {
    padding-top: 2.75rem;
  }
}

.page-professores .equipe__head {
  margin-bottom: 1.5rem;
}

.page-professores .equipe__head .sobre__kicker {
  margin-bottom: .35rem;
}

.page-professores .equipe__head .sobre__title {
  margin-bottom: 0;
  font-size: clamp(1.35rem, 2.2vw, 1.85rem);
}

@property --tw-rotate-x {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-y {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-z {
  syntax: "*";
  inherits: false
}

@property --tw-skew-x {
  syntax: "*";
  inherits: false
}

@property --tw-skew-y {
  syntax: "*";
  inherits: false
}

@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-leading {
  syntax: "*";
  inherits: false
}

@property --tw-font-weight {
  syntax: "*";
  inherits: false
}

@property --tw-tracking {
  syntax: "*";
  inherits: false
}

@property --tw-blur {
  syntax: "*";
  inherits: false
}

@property --tw-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-invert {
  syntax: "*";
  inherits: false
}

@property --tw-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-sepia {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false
}
