/*
Theme Name: Turfiniti
Theme URI: https://turfiniti.com
Author: Turfiniti
Author URI: https://turfiniti.com
Description: A pitch-side booking theme for sports field marketplaces — cricket, soccer, pickleball and more. Built around a scoreboard-and-chalk-line visual system.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: turfiniti
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

/* ==========================================================================
   DESIGN TOKENS
   Palette: Pitch green (#12352A / #1F6E4C / #6FCF97), chalk (#F7F9F4),
   clay (#B5794A) for cricket-crease accents, ink (#132019) for text.
   Type: "Space Grotesk" (display) + "Inter" (body) + "IBM Plex Mono" (scores/data)
   ========================================================================== */
:root{
  --pitch-900:#0E2A20;
  --pitch-800:#12352A;
  --pitch-700:#1F6E4C;
  --pitch-500:#2F9463;
  --pitch-300:#6FCF97;
  --pitch-100:#E4F5EA;
  --chalk:#F7F9F4;
  --chalk-dim:#EDF1E8;
  --clay:#B5794A;
  --clay-dark:#8C5C36;
  --ink:#132019;
  --ink-soft:#3C4A42;
  --line:rgba(19,32,25,0.12);
  --shadow-card: 0 1px 2px rgba(14,42,32,0.06), 0 8px 24px rgba(14,42,32,0.08);
  --radius-sm:6px;
  --radius-md:14px;
  --radius-lg:26px;
  --font-display:'Space Grotesk', 'Helvetica Neue', Arial, sans-serif;
  --font-body:'Inter', 'Helvetica Neue', Arial, sans-serif;
  --font-mono:'IBM Plex Mono', 'Courier New', monospace;
  --container:1200px;
}

*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0;
  font-family:var(--font-body);
  color:var(--ink);
  background:var(--chalk);
  font-size:16px;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
img{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }
ul{ margin:0; padding:0; list-style:none; }
h1,h2,h3,h4{
  font-family:var(--font-display);
  color:var(--pitch-900);
  line-height:1.08;
  margin:0 0 .5em;
  letter-spacing:-0.01em;
}
p{ margin:0 0 1em; }
button, .btn{ font-family:var(--font-body); cursor:pointer; }

.container{
  width:100%;
  max-width:var(--container);
  margin:0 auto;
  padding:0 24px;
}

/* Focus visibility (accessibility floor) */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible{
  outline:3px solid var(--pitch-500);
  outline-offset:2px;
}

@media (prefers-reduced-motion: reduce){
  *{ animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important; scroll-behavior:auto !important; }
}

.btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:14px 26px;
  border-radius:999px;
  font-weight:600;
  font-size:15px;
  border:2px solid transparent;
  transition:transform .15s ease, background .2s ease, color .2s ease, border-color .2s ease;
}
.btn:hover{ transform:translateY(-1px); }
.btn-primary{ background:var(--pitch-300); color:var(--pitch-900); }
.btn-primary:hover{ background:var(--chalk); border-color:var(--pitch-300); }
.btn-outline{ background:transparent; color:var(--chalk); border-color:rgba(247,249,244,0.4); }
.btn-outline:hover{ border-color:var(--chalk); }
.btn-dark{ background:var(--pitch-900); color:var(--chalk); }
.btn-dark:hover{ background:var(--pitch-700); }

.tag{
  display:inline-block;
  padding:5px 12px;
  border-radius:999px;
  font-size:12.5px;
  font-weight:600;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.tag-cricket{ background:#F3E3D3; color:var(--clay-dark); }
.tag-soccer{ background:var(--pitch-100); color:var(--pitch-700); }
.tag-pickleball{ background:#FCEFC7; color:#8A6D1B; }
.tag-default{ background:var(--chalk-dim); color:var(--ink-soft); }

.eyebrow{
  font-family:var(--font-mono);
  font-size:12.5px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--pitch-500);
  display:flex;
  align-items:center;
  gap:10px;
}
.eyebrow::before{
  content:"";
  width:22px; height:2px;
  background:var(--pitch-500);
  display:inline-block;
}
