/* golf.html case-study page. Uses site tokens from components.css. */

/* hero with photo */
.golf-hero { display: grid; grid-template-columns: 1fr 0.85fr; gap: 40px; align-items: center; }
.golf-hero-copy { max-width: 560px; }
.golf-hero-img img { width: 100%; height: auto; border-radius: 16px; object-fit: cover;
  box-shadow: 0 1px 2px rgba(20,20,19,.05), 0 18px 40px rgba(20,20,19,.12); }

/* hero stat strip */
.golf-stats {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px;
  margin-top: 40px; max-width: 920px;
}
.gstat {
  background: #fff; border: 1px solid #E0DDD2; border-radius: 12px;
  padding: 18px 16px; text-align: center;
  box-shadow: 0 1px 2px rgba(20,20,19,.04), 0 8px 22px rgba(20,20,19,.05);
}
.gnum { display: block; font-family: "Fraunces", Georgia, serif; font-weight: 600;
  font-size: 30px; color: #141413; line-height: 1; }
.glab { display: block; margin-top: 8px; font-size: 12.5px; color: #6E6A60; }

/* logo strip */
.logo-strip { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 14px 0 28px; max-width: 860px; }
.logo-strip-label { font-size: 13px; color: #6E6A60; font-weight: 500; width: 100%; margin-bottom: 8px; }
.lchip { display: inline-flex; align-items: center; gap: 7px; background: #fff; border: 1px solid #E0DDD2;
  border-radius: 99px; padding: 6px 13px 6px 9px; font-size: 13px; font-weight: 500; color: #2E2A23; }
.lchip img { width: 18px; height: 18px; border-radius: 4px; object-fit: contain; }
.lchip.more { background: transparent; border-style: dashed; border-color: #D5D1C5; color: #8A857A; padding: 6px 13px; }

/* insight cards */
.insight-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin: 24px 0 0; }
.ic-type img { width: 20px; height: 20px; border-radius: 4px; object-fit: contain; vertical-align: -4px; margin-right: 9px; }
.insight-card { background: #fff; border: 1px solid #E0DDD2; border-radius: 14px; padding: 22px 22px 20px;
  box-shadow: 0 1px 2px rgba(20,20,19,.04), 0 10px 26px rgba(20,20,19,.06); }
.ic-type { font-family: "Fraunces", Georgia, serif; font-weight: 600; font-size: 19px; color: #141413; margin-bottom: 16px; }
.ic-bars { display: flex; flex-direction: column; gap: 11px; }
.ic-bar { display: grid; grid-template-columns: 110px 1fr 38px; align-items: center; gap: 10px; }
.ic-name { font-size: 13.5px; color: #2E2A23; font-weight: 500; }
.ic-track { height: 9px; background: #F0E6D6; border-radius: 99px; overflow: hidden; }
.ic-track i { display: block; height: 100%; background: #D97757; border-radius: 99px; }
.ic-pct { font-size: 13px; font-weight: 600; color: #BC5B3F; text-align: right; }
.ic-note { margin-top: 16px; font-size: 13.5px; color: #6E6A60; line-height: 1.5; }
.insight-punch { max-width: 720px; margin: 22px auto 0; font-size: 17px; line-height: 1.6; color: #141413;
  font-weight: 500; border-left: 3px solid #D97757; padding-left: 18px; }

/* csv window */
.csv-window { background: #fff; border: 1px solid #E0DDD2; border-radius: 14px; overflow: hidden;
  box-shadow: 0 1px 2px rgba(20,20,19,.04), 0 12px 30px rgba(20,20,19,.07); max-width: 860px; }
.csv-bar { background: #EFE9DC; padding: 11px 15px; border-bottom: 1px solid #E0DDD2;
  display: flex; align-items: center; gap: 7px; }
.csv-dot { width: 11px; height: 11px; border-radius: 50%; display: inline-block; }
.csv-dot.r { background: #D97757; } .csv-dot.y { background: #E3B341; } .csv-dot.g { background: #8FAE6B; }
.csv-file { margin-left: 8px; font-family: ui-monospace, Menlo, monospace; font-size: 12.5px; color: #6E6A60; }
.csv-count { margin-left: auto; font-size: 12.5px; color: #97907F; }
.csv-count b { color: #2E2A23; }
.csv-search { padding: 10px 14px; border-bottom: 1px solid #EDE9DF; background: #FBF9F3; }
.csv-search input { width: 100%; border: 1px solid #E0DDD2; border-radius: 8px; padding: 8px 12px;
  font-size: 13.5px; color: #2E2A23; background: #fff; }
.csv-search input:focus { outline: none; border-color: #D4A27F; }
.csv-scroll { max-height: 440px; overflow-y: auto; }
.csv-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.csv-table thead th { position: sticky; top: 0; background: #F6F1E4; text-align: left;
  padding: 10px 14px; font-weight: 600; color: #8A2D1E; border-bottom: 1px solid #E2D9C4;
  font-size: 11.5px; letter-spacing: .04em; text-transform: uppercase; }
.csv-table td { padding: 9px 14px; border-bottom: 1px solid #F0ECE2; color: #2E2A23; }
.csv-table tbody tr:hover { background: #FBF9F3; }
.ctag { display: inline-block; padding: 2px 9px; border-radius: 99px; font-size: 11.5px; font-weight: 600; }
.t-private { background: #F3E3DC; color: #9A3B22; }
.t-publicdailyfee, .t-public { background: #E2ECDE; color: #4A6B3C; }
.t-resort { background: #E5E7F0; color: #4A557E; }
.t-municipal { background: #F0EAD9; color: #7A6322; }
.t-semiprivate { background: #EDE5E0; color: #6E5240; }
.t-unknown { background: #ECE9E0; color: #908A7C; }
.csv-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px;
  padding: 12px 15px; border-top: 1px solid #EDE9DF; background: #FBF9F3; }
#csv-shown { font-size: 12.5px; color: #6E6A60; }
.csv-dl { font-size: 13px; font-weight: 600; color: #BC5B3F; text-decoration: none; }
.csv-dl:hover { text-decoration: underline; }

/* email pair */
.email-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }

/* cta */
.golf-cta { padding: 34px 32px; }
.golf-optin { display: flex; gap: 10px; max-width: 480px; flex-wrap: wrap; }
.golf-optin input { flex: 1; min-width: 220px; border: 1px solid #D8D2C4; border-radius: 10px;
  padding: 12px 14px; font-size: 15px; background: #fff; color: #141413; }
.golf-optin input:focus { outline: none; border-color: #D97757; }

@media (max-width: 860px) {
  .golf-hero { grid-template-columns: 1fr; gap: 24px; }
  .golf-hero-img { order: -1; }
  .golf-hero-img img { max-height: 240px; }
}
@media (max-width: 720px) {
  .golf-stats { grid-template-columns: repeat(3, 1fr); gap: 8px; }
  .golf-stats .gnum { font-size: 22px; }
  .golf-stats .glab { font-size: 11px; }
  .insight-grid, .email-pair { grid-template-columns: 1fr; }
  .ic-bar { grid-template-columns: 96px 1fr 36px; }
  .csv-table th:nth-child(5), .csv-table td:nth-child(5) { display: none; }
}
