/*
Theme Name: Watershed Analytics
Theme URI: https://www.watershedanalytics.com
Author: ArtForm
Description: Block theme for the Watershed Analytics site redesign.
Version: 1.0.0
Requires at least: 6.5
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: watershed
*/

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap');

/* ---- Remove white gaps between full-width page sections ----
   WP inserts a default 24px margin between top-level blocks; the colored
   sections carry their own padding, so that margin shows as white strips. */
.wp-site-blocks > * + * { margin-block-start: 0; }
.wp-block-post-content > * + *,
.entry-content > * + * { margin-block-start: 0; }

/* ---- Brand helpers used by page content ---- */

/* Kicker / eyebrow line above H1s */
.ws-kicker {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.12em;
}

/* Oversized display heading (home hero) */
.ws-display {
  font-size: 54px;
  line-height: 1.12;
}

/* Lead paragraph under hero headings */
.ws-lead {
  font-size: 17px;
  line-height: 1.65;
}

/* Big gold statement line */
.ws-statement {
  font-size: 27px;
  font-weight: 800;
  letter-spacing: -0.01em;
  line-height: 1.3;
}

/* White card on colored backgrounds */
.ws-card {
  border-radius: 24px;
  padding: 32px 28px;
}

/* Outlined service card on white backgrounds */
.ws-card-outline {
  border: 1.5px solid #14404F;
  border-radius: 28px;
  padding: 32px 28px;
}

/* Service tagline inside cards */
.ws-tagline {
  color: #226B7E;
  font-size: 14px;
  font-weight: 700;
}

/* "Learn More" style links */
.ws-more a {
  font-weight: 800;
  text-decoration: none;
}

/* Team role line */
.ws-role {
  color: #226B7E;
  font-size: 13px;
  font-weight: 700;
}

/* Small print (footer legal, captions) */
.ws-small {
  font-size: 13px;
}

/* Image placeholder blocks (replace with Media Library images) */
.ws-photo-ph {
  background: repeating-linear-gradient(45deg, #E3EDF1, #E3EDF1 12px, #D3E2E8 12px, #D3E2E8 24px);
  border-radius: 20px;
  min-height: 220px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #46626F;
  font-family: monospace;
  font-size: 13px;
  padding: 16px;
}
.ws-photo-ph p { margin: 0; }

/* Square headshot crops */
.ws-headshot img {
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 20px;
  width: 100%;
  height: auto;
}

/* Client logo row */
.ws-logo-row img { opacity: 0.9; height: 36px; width: auto; }

/* Stat figures */
.ws-stat { font-size: 42px; font-weight: 800; line-height: 1.1; }
.ws-stat-label { font-size: 13px; font-weight: 600; }

/* Header/nav polish */
.wp-block-navigation a:hover { color: #7AC2D5; }
.wp-block-button__link { white-space: nowrap; }
.wp-block-button__link:hover { background-color: #98D2E1; color: #14404F; }
.is-style-outline .wp-block-button__link:hover { background-color: rgba(255,255,255,0.08); }

/* Focus visibility */
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}

@media (max-width: 782px) {
  .ws-display { font-size: 38px; }
  h1 { font-size: 36px !important; }
}

@media (prefers-reduced-motion: reduce) {
  * { animation: none !important; }
}
