/*
Theme Name: Partners in Network
Theme URI: https://partnersinnetwork.com
Description: GeneratePress child theme for Partners in Network. Holds the global design concept (brand tokens, type, header/footer, shared components). Page-specific layout lives in each page's own pasted HTML block, scoped to that page.
Author: The Web Design Ninja
Template: generatepress
Version: 3.0.0
*/

/* ==========================================================================
   THE MAIN CONCEPT — global design tokens
   Change a brand value here and every page + component follows. This is the
   ONLY :root block in the project; the component CSS files inherit from it,
   so delete the duplicate :root at the top of pin-open-seats.css and
   pin-find-a-chapter.css when you add them.
   ========================================================================== */
:root {
	--pin-garnet:       #8E2B34;
	--pin-garnet-dark:  #6f1f27;
	--pin-garnet-tint:  #f3e2dc;
	--pin-paper:        #fdf6ef;
	--pin-paper-2:      #faf4ec;
	--pin-ink:          #2c2b29;
	--pin-ink-soft:     #6b6862;
	--pin-line:         #e3dccf;
	--pin-line-strong:  #ccc2b0;
	--pin-open:         #3B6D11;

	--pin-radius:       10px;
	--pin-radius-lg:    14px;
	--pin-container:    1120px;
	--pin-section-y:    clamp(2.5rem, 6vw, 5rem);

	--pin-serif: "Fraunces", Georgia, "Times New Roman", serif;
	--pin-sans:  "Archivo", system-ui, -apple-system, "Segoe UI", sans-serif;
}

/* ==========================================================================
   BASE TYPOGRAPHY
   ========================================================================== */
body {
	font-family: var(--pin-sans);
	color: var(--pin-ink);
	background: #fffdfa;
	font-size: 17px;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, .pin-serif {
	font-family: var(--pin-serif);
	font-weight: 500;
	color: var(--pin-ink);
	line-height: 1.14;
	letter-spacing: -0.01em;
}

a { color: var(--pin-garnet); text-decoration: none; }
a:hover { text-decoration: underline; }

/* Reusable type helpers pages can lean on */
.pin-eyebrow {
	font-family: var(--pin-sans);
	font-size: 0.72rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--pin-garnet);
	font-weight: 600;
}
.pin-lead { font-size: 1.15rem; color: var(--pin-ink-soft); line-height: 1.6; }

/* ==========================================================================
   LAYOUT HELPERS (global — shared by every page block)
   ========================================================================== */
.pin-container { max-width: var(--pin-container); margin-inline: auto; padding-inline: clamp(1.1rem, 4vw, 2.5rem); }
.pin-section   { padding-block: var(--pin-section-y); }

/* Full-bleed background bands that still align inner content to the container */
.pin-band { width: 100%; }
.pin-band--garnet   { background: var(--pin-garnet); color: var(--pin-paper); }
.pin-band--charcoal { background: var(--pin-ink);    color: #e8e3d9; }
.pin-band--paper    { background: var(--pin-paper-2); }

/* ==========================================================================
   BUTTONS (global)
   ========================================================================== */
.pin-btn {
	display: inline-block;
	font-family: var(--pin-sans);
	font-weight: 600;
	font-size: 0.95rem;
	line-height: 1;
	padding: 0.85em 1.5em;
	border-radius: var(--pin-radius);
	border: 1px solid transparent;
	cursor: pointer;
	transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
	text-decoration: none;
}
.pin-btn:hover { text-decoration: none; }
.pin-btn--primary  { background: var(--pin-garnet); color: var(--pin-paper); }
.pin-btn--primary:hover { background: var(--pin-garnet-dark); color: var(--pin-paper); }
.pin-btn--paper    { background: var(--pin-paper); color: var(--pin-garnet); }
.pin-btn--paper:hover { background: #fff; }
.pin-btn--ghost    { background: transparent; color: currentColor; border-color: currentColor; }
.pin-btn--ghost:hover { background: rgba(255,255,255,0.08); }

/* ==========================================================================
   HEADER / NAV  (GeneratePress overrides)
   ========================================================================== */
.site-header { background: #fffdfa; border-bottom: 1px solid var(--pin-line); }
.main-title, .site-logo a { font-family: var(--pin-serif); }
.main-navigation .main-nav ul li a {
	font-family: var(--pin-sans);
	font-weight: 500;
	font-size: 0.95rem;
	color: var(--pin-ink);
}
.main-navigation .main-nav ul li a:hover,
.main-navigation .main-nav ul li.current-menu-item a { color: var(--pin-garnet); }

/* A menu item with the CSS class "pin-nav-cta" becomes the garnet button */
.main-navigation .main-nav ul li.pin-nav-cta a {
	background: var(--pin-garnet);
	color: var(--pin-paper);
	border-radius: var(--pin-radius);
	margin: 0.35em 0 0.35em 0.6em;
	padding: 0.6em 1.1em;
}
.main-navigation .main-nav ul li.pin-nav-cta a:hover { background: var(--pin-garnet-dark); color: var(--pin-paper); }

/* Optional top utility bar (see functions.php hook) */
.pin-utilitybar { background: var(--pin-ink); color: #cfc9bf; font-size: 0.8rem; }
.pin-utilitybar .pin-container { display: flex; justify-content: flex-end; gap: 1.25rem; padding-block: 0.4rem; }
.pin-utilitybar a { color: #e8e3d9; }

/* ==========================================================================
   FOOTER
   ========================================================================== */
.site-footer, .site-info { background: #211f1d; color: #a8a29a; }
.site-info a { color: #e8e3d9; }

/* ==========================================================================
   QUALITY FLOOR
   ========================================================================== */
:where(a, button, input, select, textarea):focus-visible {
	outline: 2px solid var(--pin-garnet);
	outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
	* { animation-duration: 0.001ms !important; transition-duration: 0.001ms !important; }
}
