/* Costa Nova GO — Experience Layer v2 — 29/08/2026. */

:root {
  --cngo-ease-emphasized: cubic-bezier(.22, 1, .36, 1);
  --cngo-focus-ring: #45d4e7;
  --cngo-premium-shadow: 0 24px 70px rgba(3, 14, 28, .16);
}

html {
  overflow-x: clip;
  scroll-behavior: smooth;
}

@supports not (overflow: clip) {
  html {
    overflow-x: hidden;
  }
}

::selection {
  color: #07111f;
  background: #45d4e7;
}

:where(a, button, input, select, textarea, [tabindex]):focus-visible {
  outline: 3px solid var(--cngo-focus-ring) !important;
  outline-offset: 3px !important;
}

.cngo-button,
.cngo-menu-button,
.cngo-tech-tab,
.cngo-form :where(input, select, textarea) {
  transition: border-color .22s ease, background-color .22s ease, color .22s ease,
    box-shadow .28s ease, transform .28s var(--cngo-ease-emphasized);
}

.cngo-button--primary {
  box-shadow: 0 14px 34px rgba(20, 184, 212, .22);
}

.cngo-form :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea):focus {
  border-color: #14b8d4 !important;
  box-shadow: 0 0 0 4px rgba(20, 184, 212, .14) !important;
}

.cngo-form :where(input, select, textarea):user-invalid {
  border-color: #b94f42;
}

@media (min-width: 1100px) {
  .home .cngo-hero {
    min-height: 720px;
    padding-top: 118px;
    padding-bottom: 64px;
  }

  .home .cngo-hero h1 {
    max-width: 760px;
    margin-bottom: 20px;
    font-size: clamp(4rem, 6vw, 4.75rem);
    line-height: 1.03;
    letter-spacing: -.045em;
  }

  .home .cngo-hero__intro {
    max-width: 650px;
    margin-bottom: 0;
    font-size: 1.18rem;
    line-height: 1.62;
  }

  .home .cngo-hero .cngo-actions {
    margin-top: 24px;
  }

  .home .cngo-hero__chips {
    margin-top: 20px;
  }
}

@media (min-width: 960px) {
  .home main > .cngo-section {
    padding-top: 104px;
    padding-bottom: 104px;
  }
}

@media (hover: hover) and (pointer: fine) {
  .cngo-button--primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 46px rgba(20, 184, 212, .32);
  }

  .cngo-button--ghost:hover {
    transform: translateY(-2px);
    border-color: rgba(69, 212, 231, .7);
    background: rgba(69, 212, 231, .08);
  }

  .home :where(.cngo-card, .cngo-audience-card, .cngo-detail-card, .cngo-leadership-card, .cngo-ecosystem-card) {
    transition: transform .35s var(--cngo-ease-emphasized), border-color .28s ease,
      box-shadow .35s ease;
  }

  .home :where(.cngo-card, .cngo-audience-card, .cngo-detail-card, .cngo-leadership-card, .cngo-ecosystem-card):hover {
    z-index: 2;
    transform: translateY(-6px);
    border-color: rgba(20, 184, 212, .32);
    box-shadow: var(--cngo-premium-shadow);
  }

  .home .cngo-card:hover .cngo-card__link {
    color: #0d9c93;
  }
}

/* A área autenticada deve parecer produto, não uma página do CMS. */
body.cngo-portal-page #wpadminbar {
  display: none !important;
}

html:has(body.cngo-portal-page) {
  margin-top: 0 !important;
}

html body.cngo-portal-page a.cngo-whatsapp,
html body.page-id-111 a.cngo-whatsapp {
  display: none !important;
}

body.cngo-portal-page .cngo-main {
  background:
    radial-gradient(circle at 96% 3%, rgba(56, 197, 211, .13), transparent 25rem),
    linear-gradient(180deg, #f8faf7 0%, #edf2ee 100%);
}

body.cngo-portal-page .cngo-topbar {
  border-bottom: 1px solid rgba(7, 24, 43, .08);
  background: rgba(255, 253, 248, .84);
  -webkit-backdrop-filter: blur(18px) saturate(140%);
  backdrop-filter: blur(18px) saturate(140%);
}

body.cngo-portal-page .cngo-main-nav button,
body.cngo-portal-page .cngo-mobile-nav button,
body.cngo-portal-page .cngo-primary-button,
body.cngo-portal-page .cngo-card button {
  transition: background-color .2s ease, border-color .2s ease, color .2s ease,
    box-shadow .28s ease, transform .28s var(--cngo-ease-emphasized);
}

body.cngo-portal-page :where(.cngo-card, .cngo-health, .cngo-metrics > article) {
  border: 1px solid rgba(7, 24, 43, .08);
  box-shadow: 0 14px 38px rgba(7, 24, 43, .07);
}

body.cngo-portal-page .cngo-login-card .cngo-kicker {
  color: #075e67;
}

body.cngo-portal-page .cngo-auth-tabs button {
  color: #4f5b6e;
}

@media (min-width: 901px) {
  body.cngo-portal-page .cngo-main > .cngo-section {
    padding-top: 44px !important;
    padding-bottom: 72px !important;
  }

  body.cngo-portal-page .cngo-page-head {
    margin-bottom: 20px;
  }

  body.cngo-portal-page .cngo-sidebar {
    scrollbar-width: thin;
    scrollbar-color: rgba(69, 212, 231, .45) transparent;
  }
}

@media (hover: hover) and (pointer: fine) {
  body.cngo-portal-page .cngo-main-nav button:hover {
    transform: translateX(4px);
    background: rgba(69, 212, 231, .1);
  }

  body.cngo-portal-page :where(.cngo-card, .cngo-metrics > article):hover {
    transform: translateY(-3px);
    border-color: rgba(20, 184, 212, .22);
    box-shadow: 0 20px 48px rgba(7, 24, 43, .11);
  }
}

@media (max-width: 900px) {
  body.cngo-portal-page .cngo-main {
    padding-bottom: calc(92px + env(safe-area-inset-bottom));
  }

  body.cngo-portal-page .cngo-main > .cngo-section {
    padding: 28px 0 44px !important;
  }

  body.cngo-portal-page .cngo-topbar {
    min-height: 68px;
  }

  body.cngo-portal-page .cngo-mobile-nav {
    padding-bottom: max(8px, env(safe-area-inset-bottom));
    border-top: 1px solid rgba(69, 212, 231, .18);
    background: rgba(7, 17, 31, .9);
    -webkit-backdrop-filter: blur(18px) saturate(135%);
    backdrop-filter: blur(18px) saturate(135%);
  }

  body.cngo-portal-page .cngo-mobile-nav button {
    min-height: 54px;
  }

  body.cngo-portal-page .cngo-page-head h1 {
    font-size: clamp(2rem, 9vw, 2.7rem);
    line-height: 1.03;
  }

  body.cngo-portal-page :where(.cngo-card, .cngo-health, .cngo-metrics > article) {
    border-radius: 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}