@media (max-width: 1199px) {
  .gct-container,
  .gct-client-content {
    width: min(calc(100% - 32px), var(--content-max));
  }

  .gct-public-nav__list {
    gap: var(--space-4);
  }

  .gct-grid--4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .gct-container,
  .gct-client-content {
    width: min(calc(100% - 32px), var(--content-max));
  }

  .gct-section {
    padding-block: var(--space-10);
  }

  .gct-section-heading {
    align-items: flex-start;
    flex-direction: column;
    margin-bottom: var(--space-4);
  }

  .gct-section-heading h1 {
    font-size: 28px;
  }

  .gct-section-heading h2 {
    font-size: 24px;
  }

  .gct-grid--2,
  .gct-grid--3,
  .gct-grid--4,
  .gct-form-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .gct-field--full {
    grid-column: auto;
  }

  .gct-panel,
  .gct-card {
    padding: var(--space-4);
  }

  .gct-public-header,
  .gct-public-header__inner {
    min-height: 60px;
  }

  .gct-public-header__inner {
    gap: var(--space-3);
  }

  .gct-brand img {
    width: 130px;
    height: 28px;
  }

  .gct-public-nav {
    position: absolute;
    top: 60px;
    right: 16px;
    left: 16px;
    display: none;
    padding: var(--space-2);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-surface);
    box-shadow: var(--shadow-panel);
  }

  .gct-public-nav[data-open="true"] {
    display: block;
  }

  .gct-public-nav__list {
    display: grid;
    gap: var(--space-1);
  }

  .gct-public-nav__link {
    width: 100%;
    padding: 0 var(--space-3);
  }

  .gct-account-actions .gct-button--secondary {
    display: none;
  }

  .gct-menu-toggle {
    display: inline-flex;
  }

  .gct-client-layout {
    display: block;
  }

  .gct-client-sidebar {
    position: fixed;
    z-index: 30;
    top: 0;
    bottom: 0;
    left: 0;
    width: min(84vw, 320px);
    transform: translateX(-105%);
    transition: transform var(--ease-standard);
  }

  .gct-client-layout[data-sidebar-open="true"] .gct-client-sidebar {
    transform: translateX(0);
  }

  .gct-client-layout[data-sidebar-open="true"]::after {
    position: fixed;
    z-index: 20;
    inset: 0;
    background: rgba(23, 33, 28, 0.35);
    content: "";
  }

  .gct-client-topbar {
    position: sticky;
    z-index: 10;
    top: 0;
    justify-content: space-between;
    padding: 0 var(--space-4);
  }

  .gct-client-content {
    padding-block: var(--space-4);
  }

  .gct-table {
    min-width: 620px;
  }

  .gct-button {
    min-height: 42px;
  }

  .gct-menu-toggle {
    min-height: 44px;
  }

  .gct-inline--mobile-stack {
    align-items: stretch;
    flex-direction: column;
  }

  .gct-inline--mobile-stack > * {
    width: 100%;
  }
}
