/* Gizlen Global — final designer completion pass, 2026-08-04.
   Loaded last to protect navigation, rhythm, responsive composition, and
   content relationships across the complete site. */

:root {
  --gg-shell-max: 1580px;
  --gg-flow-gap: clamp(26px, 3vw, 40px);
}

/* Full buyer-path navigation. */
body.gg-refined .gg-nav-row,
body.gg-design-v2 .gg-nav-row {
  width: min(calc(100% - 40px), var(--gg-shell-max)) !important;
  gap: clamp(16px, 1.5vw, 24px) !important;
}

body.gg-refined .gg-site-header .brand img,
body.gg-design-v2 .gg-site-header .brand img {
  width: clamp(178px, 12.4vw, 206px) !important;
}

body.gg-refined .gg-primary-nav,
body.gg-design-v2 .gg-primary-nav {
  gap: clamp(10px, .9vw, 16px) !important;
}

body.gg-refined .gg-primary-nav a,
body.gg-design-v2 .gg-primary-nav a {
  font-size: clamp(.72rem, .68vw, .8rem) !important;
  letter-spacing: -.01em !important;
  white-space: nowrap !important;
}

body.gg-refined .gg-header-cta,
body.gg-design-v2 .gg-header-cta {
  min-height: 46px !important;
  padding-inline: clamp(15px, 1.2vw, 20px) !important;
  font-size: clamp(.76rem, .7vw, .82rem) !important;
}

/* Global flow: section headings, grids, cards, and the text that follows them
   retain explicit breathing room without turning sections into empty screens. */
body.gg-refined .section-head,
body.gg-design-v2 .section-head {
  margin-bottom: var(--gg-flow-gap) !important;
}

body.gg-refined :is(.card-grid-3, .card-grid-4, .offer-grid, .tool-grid, .pricing-program-grid, .gg-faq-grid) + :is(p, .insights-note, .hero-actions, .button-row),
body.gg-design-v2 :is(.card-grid-3, .card-grid-4, .offer-grid, .tool-grid, .pricing-program-grid, .gg-faq-grid) + :is(p, .insights-note, .hero-actions, .button-row) {
  margin-top: clamp(24px, 3vw, 38px) !important;
}

body.gg-refined :is(.card, .program-card, .tool-card, .home-route-card),
body.gg-design-v2 :is(.card, .program-card, .tool-card, .home-route-card) {
  min-width: 0 !important;
}

/* Details elements must size to their own content. An open FAQ may never
   stretch the closed card beside it into an empty white panel. */
.gg-faq-grid {
  align-items: start !important;
  grid-auto-rows: auto !important;
}

.gg-faq-item {
  align-self: start !important;
  height: auto !important;
  min-height: 0 !important;
}

.gg-faq-item summary {
  min-height: 72px !important;
}

/* Home: preserve the strong hero while keeping calls-to-action and authority
   proof in proportion. */
body.page-home .hero .button-row {
  align-items: center !important;
  gap: 14px !important;
  margin-top: 26px !important;
}

body.page-home .hero .button-row .button {
  min-height: 52px !important;
  padding: 13px 22px !important;
  font-size: clamp(.86rem, .9vw, .96rem) !important;
  line-height: 1.25 !important;
}

body.page-home .hero-proof-line {
  margin-top: 18px !important;
  max-width: 780px !important;
  font-size: clamp(.8rem, .8vw, .9rem) !important;
  line-height: 1.55 !important;
}

body.page-home .home-buyer-paths {
  padding-block: clamp(68px, 7vw, 94px) !important;
}

body.page-home .home-buyer-paths .section-head {
  margin-bottom: clamp(34px, 4vw, 48px) !important;
}

body.page-home .home-symptom-grid {
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 28px !important;
  align-items: start !important;
}

body.page-home .home-symptom-panel {
  padding: clamp(26px, 3vw, 36px) !important;
}

body.page-home .home-symptom-panel .check-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px clamp(28px, 5vw, 64px) !important;
  margin-top: 24px !important;
}

body.page-home .home-route-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;
  align-items: stretch !important;
}

body.page-home .home-route-card {
  padding: clamp(24px, 2.4vw, 32px) !important;
}

body.page-home .home-honest-fit {
  margin-top: 28px !important;
}

body.page-home .home-honest-fit + .button-row {
  margin-top: 28px !important;
}

/* About: keep the sole portrait in the hero and make the supporting authority
   panel read as one composed unit. */
body.page-about .founder-text-only .founder-profile-aside {
  gap: 22px !important;
}

body.page-about .founder-text-only .credentials {
  row-gap: 10px !important;
}

body.page-about .founder-text-only .profile-speaking-link {
  padding-top: 4px !important;
  line-height: 1.65 !important;
}

body.page-about .founder-text-only .gg-profile-social {
  padding-top: 20px !important;
}

/* Insights: center the final pair instead of leaving a dead third column, and
   preserve clear space between cards and the editorial note. */
body.page-insights .insights-articles-grid {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 24px !important;
  align-items: stretch !important;
}

body.page-insights .insights-articles-grid > * {
  grid-column: span 2 !important;
  height: 100% !important;
}

body.page-insights .insights-articles-grid > :nth-last-child(2) {
  grid-column: 2 / span 2 !important;
}

body.page-insights .insights-articles-grid > :last-child {
  grid-column: 4 / span 2 !important;
}

body.page-insights .insights-note {
  max-width: 900px !important;
  margin: 32px auto 0 !important;
  text-align: center !important;
  line-height: 1.65 !important;
}

body.page-insights .insights-tools-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 24px !important;
}

/* Speaking: the book is a purposeful authority object, not an empty text band. */
body.page-speaking .evidence-section {
  padding-bottom: clamp(44px, 5vw, 64px) !important;
}

body.page-speaking .evidence-note {
  margin-top: 22px !important;
  margin-bottom: 0 !important;
  line-height: 1.6 !important;
}

body.page-speaking .speaking-book-promo {
  padding-block: clamp(58px, 6vw, 82px) !important;
}

body.page-speaking .speaking-book-promo-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.35fr) minmax(180px, .65fr) !important;
  gap: clamp(44px, 7vw, 96px) !important;
  align-items: center !important;
}

body.page-speaking .speaking-book-promo-copy .section-title {
  max-width: 13ch !important;
  margin-top: 12px !important;
}

body.page-speaking .speaking-book-promo-copy .section-lead {
  max-width: 620px !important;
  margin-top: 22px !important;
  line-height: 1.65 !important;
}

body.page-speaking .speaking-book-promo-copy .hero-actions {
  margin-top: 26px !important;
}

body.page-speaking .speaking-book-promo-cover {
  display: grid !important;
  place-items: center !important;
  justify-self: center !important;
  width: min(100%, 230px) !important;
  padding: 16px !important;
  border: 1px solid #d9e1e3 !important;
  border-radius: 20px !important;
  background: rgba(255,255,255,.88) !important;
  box-shadow: 0 24px 52px rgba(18,38,55,.14) !important;
}

body.page-speaking .speaking-book-promo-cover img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  border-radius: 5px !important;
}

/* Book facts: the original three-column fact block becomes one composed panel
   before it reaches a width where the right edge could be clipped. */
body.page-clarity-os .book-facts-panel,
body.page-clarity-os .book-facts-grid,
body.page-clarity-os .book-facts-grid > div {
  min-width: 0 !important;
  max-width: 100% !important;
}

body.page-clarity-os .book-facts-panel {
  overflow: hidden !important;
}

/* Diagnostics: remove the decorative dead zone below the two hero actions. */
body.page-diagnostics .page-hero,
body.page-diagnostics .hero {
  padding-bottom: clamp(48px, 5vw, 66px) !important;
  min-height: 0 !important;
}

body.page-diagnostics .page-hero + .section,
body.page-diagnostics .hero + .section,
body.page-diagnostics .hero + .section-tight {
  padding-top: clamp(58px, 6vw, 82px) !important;
}

@media (max-width: 1320px) {
  body.gg-refined .gg-primary-nav,
  body.gg-design-v2 .gg-primary-nav {
    display: none !important;
  }

  body.gg-refined .gg-menu-toggle,
  body.gg-design-v2 .gg-menu-toggle {
    display: block !important;
  }

  body.gg-refined .gg-header-actions,
  body.gg-design-v2 .gg-header-actions {
    justify-self: end !important;
  }
}

@media (max-width: 1100px) {
  body.page-home .home-route-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.page-insights .insights-articles-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.page-insights .insights-articles-grid > *,
  body.page-insights .insights-articles-grid > :nth-last-child(2),
  body.page-insights .insights-articles-grid > :last-child {
    grid-column: auto !important;
  }

  body.page-clarity-os .book-facts-panel {
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 24px !important;
  }
}

@media (max-width: 820px) {
  body.page-home .home-symptom-panel .check-list,
  body.page-home .home-route-grid,
  body.page-insights .insights-tools-grid,
  body.page-speaking .speaking-book-promo-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.page-speaking .speaking-book-promo-cover {
    justify-self: start !important;
    width: min(100%, 190px) !important;
  }

  body.page-clarity-os .book-facts-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 680px) {
  body.page-home .home-route-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.page-insights .insights-articles-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.page-home .hero .button-row .button,
  body.page-home .home-buyer-paths > .container > .button-row .button {
    width: 100% !important;
  }
}

@media (max-width: 480px) {
  body.page-clarity-os .book-facts-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}
