/* ==========================================================================
   GIAC — design tokens (single source of truth)
   Change a value here and every section/hero/card that uses it follows.
   ========================================================================== */

:root {
	/* Brand — core */
	--giac-maroon: #5a0f13;        /* headings, base */
	--giac-maroon-hover: #46100f;  /* hover / pressed */
	--giac-maroon-light: #8c2424;  /* nav links, accents */
	--giac-burgundy: #651014;
	--giac-gold: #a88643;          /* eyebrows, rules, icons */
	--giac-gold-warm: #c48a45;
	--giac-gold-soft: #f4eadc;
	--giac-orange: #e59e48;

	/* Surfaces */
	--giac-cream: #fbfaf6;
	--giac-cream-deep: #f6f3ed;
	--giac-paper: #fffefa;
	--giac-line: #eadfce;

	/* Text */
	--giac-ink: #342e2b;
	--giac-body: #393939;
	--giac-muted: #77716d;

	/* Sports palettes */
	--giac-tennis-navy: #0b3863;
	--giac-tennis-lime: #d1dc45;
	--giac-tennis-olive: #646925;
	--giac-pickle-blue: #5b81b1;
	--giac-pickle-sky: #6794e0;
	--giac-pickle-ink: #162a69;
	--giac-pickle-gold: #eda84d;

	/* Type */
	--giac-serif: "Velour", Georgia, serif;
	--giac-serif-semi: "Velour Semi-Bold", "Velour", Georgia, serif;
	--giac-sans: "Avenir", Arial, sans-serif;
	--giac-sans-light: "Avenir Light", "Avenir", Arial, sans-serif;

	/* Layout */
	--giac-section: min(1320px, 88vw);
	--giac-radius: 18px;
	--giac-radius-sm: 14px;
	/* Smooth, layered shadows (warm brown tint, no hard edge).
	   Each doubles the offset of the last so they melt into the page. */
	--giac-shadow-xs:
		0 1px 1px rgba(74, 48, 30, 0.05),
		0 2px 2px rgba(74, 48, 30, 0.05),
		0 4px 4px rgba(74, 48, 30, 0.04);
	--giac-shadow-sm:
		0 1px 1px rgba(74, 48, 30, 0.035),
		0 2px 2px rgba(74, 48, 30, 0.035),
		0 4px 4px rgba(74, 48, 30, 0.035),
		0 8px 8px rgba(74, 48, 30, 0.035);
	--giac-shadow-md:
		0 1px 1px rgba(74, 48, 30, 0.035),
		0 2px 2px rgba(74, 48, 30, 0.035),
		0 4px 4px rgba(74, 48, 30, 0.035),
		0 8px 8px rgba(74, 48, 30, 0.035),
		0 16px 16px rgba(74, 48, 30, 0.035);
	--giac-shadow-lg:
		0 1px 1px rgba(74, 48, 30, 0.04),
		0 2px 2px rgba(74, 48, 30, 0.04),
		0 4px 4px rgba(74, 48, 30, 0.04),
		0 8px 8px rgba(74, 48, 30, 0.04),
		0 16px 16px rgba(74, 48, 30, 0.04),
		0 32px 32px rgba(74, 48, 30, 0.04);
	--giac-shadow-maroon:
		0 1px 1px rgba(92, 17, 25, 0.06),
		0 2px 2px rgba(92, 17, 25, 0.06),
		0 4px 4px rgba(92, 17, 25, 0.05),
		0 8px 8px rgba(92, 17, 25, 0.04);
	--giac-shadow: var(--giac-shadow-md);
	--giac-shadow-soft: var(--giac-shadow-sm);
	--giac-ease: cubic-bezier(0.22, 1, 0.36, 1);

	/* Cherry hero + nav geometry (the nav panel reads these so it always
	   lines up with the hero card) */
	--cherry-edge: 3.5%;
	--cherry-panel-color: #fbfaf6;
	--cherry-desktop-radius: 18px;
	--cherry-mobile-radius: 16px;
	--cherry-desktop-gap: 20px;
	--cherry-mobile-gap: 20px;
	--cherry-desktop-split: 50%;
	--cherry-mobile-nav-width: 74%;
	--cherry-desktop-nav-padding: 0 34px 0 26px;
	--cherry-mobile-nav-padding: 0 18px;
	--cherry-curve-top: 20px;
	--cherry-speed: 260ms;

	/* Legacy aliases — older page sections use these names. Keep. */
	--burgundy: var(--giac-burgundy);
	--burgundy-dark: #51090d;
	--gold: var(--giac-gold-warm);
	--gold-soft: var(--giac-gold-soft);
	--navy: #344d69;
	--olive: #879334;
	--cream: var(--giac-cream);
	--cream-deep: var(--giac-cream-deep);
	--paper: var(--giac-paper);
	--ink: var(--giac-ink);
	--muted: var(--giac-muted);
	--line: var(--giac-line);
	--shadow: var(--giac-shadow);
	--section: var(--giac-section);

	/* Membership-card tokens, available outside .giac-mem too */
	--gm-cream: #FBF6EC;
	--gm-card: #FFFCF7;
	--gm-line: #E9DCC6;
	--gm-line-soft: #F0E6D5;
	--gm-maroon: #5E1618;
	--gm-maroon-deep: #46100F;
	--gm-orange: #C25D22;
	--gm-gold: #C08A4A;
	--gm-gold-soft: #D9B87C;
	--gm-check: #C4571F;
	--gm-ink: #2E2924;
	--gm-muted: #6E6257;
	--gm-serif: "EB Garamond", Georgia, "Times New Roman", serif;
	--gm-sans: "Jost", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

@media (max-width: 959px) {
	:root {
		--giac-section: calc(100% - 40px);
	}
}

@media (max-width: 600px) {
	:root {
		--cherry-mobile-radius: 20px; /* phones: corner radius = the 20px gap */
	}
}

@media (max-width: 420px) {
	:root {
		--giac-section: calc(100% - 32px);
	}
}

/* Inline SVG icons that replace Font Awesome (inc/performance.php).
   The <i> keeps its classes; these rules stand in for the parts of the FA stylesheet it relied on. */
i.giac-fa-i { display: inline-block; font-style: normal; font-variant: normal; line-height: 0 !important; text-rendering: auto; } /* line box = the SVG: 0.875em above the baseline, 0.125em below, like the FA font */
i.giac-fa-i.fa-fw { width: 1.25em; text-align: center; }
i.giac-fa-i > svg.giac-fa { display: inline-block; width: var(--giac-fa-w, 1em); height: 1em; overflow: visible; vertical-align: -0.142857em; fill: currentColor; }

/* ---------- Velour: stop Safari faking bold ----------
   Neve declares each Velour cut as its own family with no weight, so a heading at
   font-weight 700 (Neve's default for h1–h3) makes Safari draw a thick "fake bold"
   version. Chrome doesn't, which is why it only showed up in Safari. These extra
   declarations say each file covers every weight, so no browser thickens it. */
@font-face { font-family: "Velour"; src: url("/wp-content/uploads/2026/09/Velour-Regular.ttf") format("truetype"); font-weight: 1 1000; font-display: swap; }
@font-face { font-family: "Velour Thin"; src: url("/wp-content/uploads/2026/09/Velour-Thin.ttf") format("truetype"); font-weight: 1 1000; font-display: swap; }
@font-face { font-family: "Velour Light"; src: url("/wp-content/uploads/2026/09/Velour-Light.ttf") format("truetype"); font-weight: 1 1000; font-display: swap; }
@font-face { font-family: "Velour Medium"; src: url("/wp-content/uploads/2026/09/Velour-medium.ttf") format("truetype"); font-weight: 1 1000; font-display: swap; }
@font-face { font-family: "Velour Semi-Bold"; src: url("/wp-content/uploads/2026/09/Velour-SemiBold.ttf") format("truetype"); font-weight: 1 1000; font-display: swap; }
@font-face { font-family: "Velour Bold"; src: url("/wp-content/uploads/2026/09/Velour-Bold.ttf") format("truetype"); font-weight: 1 1000; font-display: swap; }

/* Discourage saving photos: no drag-out, no iPhone/Android long-press "Save Image" menu.
   Taps and links on images still work normally. */
img, .gch__media, .wp-block-cover__image-background {
	-webkit-user-drag: none;
	user-drag: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	user-select: none;
}
/* iPhone Safari can still offer "Save to Photos" on a long-press even with the callout off.
   Letting touches/clicks pass through photos to what's behind them removes the image menu entirely.
   Links around images still work (the tap lands on the link). */
img:not(.wp-lightbox-container img):not(a img):not(button img) { pointer-events: none; }
