/* Gush Shalom — site-wide layout & responsive rules.
   Loads after tokens.css. */

* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
  font-family: var(--font-sans);
  color: var(--fg-1);
  background: var(--bg-1);
  -webkit-font-smoothing: antialiased;
}
[dir="rtl"] body,
[dir="rtl"] .gs-root { font-family: var(--font-rtl); }
a { color: inherit; }
img { display: block; }

.gs-wrap { max-width: var(--max-content); margin: 0 auto; padding-left: var(--space-5); padding-right: var(--space-5); }
.gs-prose { max-width: var(--max-prose); }

/* Section rhythm */
.gs-section { padding-top: var(--space-9); padding-bottom: var(--space-9); }
.gs-section--tight { padding-top: var(--space-8); padding-bottom: var(--space-8); }
.gs-surface { background: var(--bg-2); }
.gs-divider-top { border-top: 1px solid var(--color-border); }
.gs-divider-bottom { border-bottom: 1px solid var(--color-border); }

/* Page hero (text only, white canvas, no imagery) */
.gs-pagehero { padding-top: var(--space-9); padding-bottom: var(--space-8); border-bottom: 1px solid var(--color-border); }

/* Responsive */
@media (max-width: 860px) {
  .gs-desktop-nav { display: none !important; }
  .gs-mobile-toggle { display: inline-flex !important; }
  .gs-grid-2 { grid-template-columns: 1fr !important; }
  .gs-grid-3 { grid-template-columns: 1fr !important; }
  .gs-grid-insta { grid-template-columns: repeat(2, 1fr) !important; }
  .gs-statement-grid { grid-template-columns: 1fr !important; }
  .gs-archive-col { border-inline-start: none !important; padding-inline-start: 0 !important; border-top: 1px solid var(--color-border); padding-top: var(--space-5); margin-top: var(--space-5); }
  .gs-bio-grid { grid-template-columns: 1fr !important; }
  .gs-blog-row { flex-direction: column !important; gap: 16px !important; }
  .gs-blog-thumb { width: 100% !important; order: -1; }
}

/* Settlement Product Project — search focus + table row hover */
.gs-search-input:focus {
  border-color: var(--color-ink) !important;
  box-shadow: 0 0 0 2px rgba(204, 51, 102, 0.35);
}
.gs-company-row:hover { background: var(--bg-2); }
@media (max-width: 560px) {
  .gs-gallery { grid-template-columns: 1fr !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

/* Fade-in on load (respects reduced motion via the query above) */
@keyframes gsFade { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.gs-fade { animation: gsFade var(--duration-slow) var(--ease-out) both; }

/* Anchored sections (unified About page) sit clear of the sticky chrome */
html { scroll-behavior: smooth; }
.gs-anchor { scroll-margin-top: 128px; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
