/*!
 * SimplePadel State / City Guide stylesheet
 * Enqueued by SimplePadel API Tools plugin on posts containing class="sp-guide".
 * Source of truth: Skills/CMS/WordPress/snippets/simplepadel-api-tools/assets/sp-guide.css
 *
 * Brand green: #3f6339
 * Class system: BEM-ish, prefixed sp-guide__
 */
.sp-guide{max-width:760px;margin:0 auto;padding:0 1rem;color:#1c1c1c}
.sp-guide *{box-sizing:border-box}
.sp-guide a{color:#3f6339;text-decoration:none}
.sp-guide a:hover{text-decoration:underline}
.sp-guide__dek{color:#6b7280;margin:.25rem 0 1.5rem;font-style:italic}
.sp-guide__hero-placeholder{border:2px dashed #cbd5e1;border-radius:.5rem;display:flex;align-items:center;justify-content:center;height:18rem;margin-bottom:2rem;background:#f8fafc;color:#94a3b8;font-size:.9rem;letter-spacing:.05em;text-transform:uppercase}
.sp-guide__intro p{line-height:1.65;margin:0 0 1.25rem}
.sp-guide__snapshot{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:1.5rem;margin:2.5rem 0;box-shadow:0 1px 2px 0 rgba(0,0,0,.04)}
.sp-guide__snapshot-label{font-size:1.05rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#6b7280;margin:0 0 1.25rem}
.sp-guide__snapshot-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}
@media(min-width:600px){.sp-guide__snapshot-grid{grid-template-columns:repeat(5,1fr)}}
.sp-guide__snapshot-item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.5rem}
.sp-guide__snapshot-icon{width:2.5rem;height:2.5rem;border-radius:50%;background:rgba(63,99,57,.08);color:#3f6339;display:flex;align-items:center;justify-content:center}
.sp-guide__snapshot-value{font-size:1.85rem;font-weight:700;line-height:1}
.sp-guide__snapshot-key{color:#6b7280;font-weight:500}
.sp-guide__sub{color:#6b7280;margin:0 0 1.5rem}
.sp-guide__table{width:100%;border-collapse:collapse;margin-bottom:.5rem}
.sp-guide__table thead tr{border-bottom:2px solid rgba(0,0,0,.12)}
.sp-guide__table th{text-align:left;padding:.85rem .5rem;font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#52525b}
.sp-guide__table th.center{text-align:center}
.sp-guide__table tbody tr{border-bottom:1px solid #e5e7eb;cursor:pointer;transition:background .15s ease}
.sp-guide__table tbody tr:nth-child(even){background:#fafafa}
.sp-guide__table tbody tr:hover{background:rgba(63,99,57,.06)}
.sp-guide__table td{padding:.95rem .5rem}
.sp-guide__table td.center{text-align:center}
.sp-guide__table td.club{font-weight:500;color:#1c1c1c}
.sp-guide__table td.muted{color:#6b7280}
.sp-guide__table-note{color:#9ca3af;font-style:italic;margin:.5rem 0 0;font-size:.95rem}
.sp-guide__rule{border:0;border-top:1px solid #e5e7eb;margin:2rem 0}
.sp-guide__club{margin-bottom:3.5rem;scroll-margin-top:2rem}
.sp-guide__club-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.75rem;flex-wrap:wrap}
.sp-guide__club-rating{display:flex;align-items:center;gap:.6rem;flex-shrink:0;flex-wrap:wrap}
.sp-guide__pill-rated{display:inline-flex;align-items:center;gap:.45rem;background:#ecfdf5;color:#047857;border:1px solid rgba(167,243,208,.6);padding:.4rem .85rem;border-radius:9999px;font-size:1rem;font-weight:600}
.sp-guide__pill-google{display:inline-flex;align-items:center;gap:.35rem;color:#6b7280;font-size:1rem;text-decoration:none}
.sp-guide__pill-google:hover{color:#3f6339}
.sp-guide__pill-google .count{opacity:.7}
.sp-guide__pill-google .src{opacity:.5}
.sp-guide__club-desc{color:#3f3f46;line-height:1.65;margin:0 0 1.25rem;font-style:italic}
.sp-guide__hero-club{border:2px dashed #cbd5e1;border-radius:.5rem;display:flex;align-items:center;justify-content:center;height:14rem;margin-bottom:1.5rem;background:#f8fafc;color:#94a3b8;font-size:.85rem;letter-spacing:.05em;text-transform:uppercase}
.sp-guide__quickfacts{background:#fafafa;border:1px solid #e5e7eb;border-radius:.5rem;padding:1.25rem;margin-bottom:1.25rem}
.sp-guide__quickfacts-label{font-size:1.05rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#6b7280;margin:0 0 .85rem}
.sp-guide__facts-grid{display:grid;grid-template-columns:1fr;gap:.85rem 1.5rem}
@media(min-width:600px){.sp-guide__facts-grid{grid-template-columns:1fr 1fr}}
.sp-guide__fact{display:flex;align-items:flex-start;gap:.65rem;color:#3f3f46;line-height:1.5}
.sp-guide__fact-icon{color:#3f6339;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;height:1.5em;width:1rem}
.sp-guide__court-num{font-size:1.6rem;font-weight:700;line-height:1;margin-right:.3rem}
.sp-guide__court-suffix{color:#6b7280}
.sp-guide__court-split{font-size:.9rem;color:#6b7280;background:#e5e7eb;padding:.15rem .6rem;border-radius:9999px;margin-left:.5rem;display:inline-block}
.sp-guide__amenities{margin-bottom:1.25rem}
.sp-guide__amenities-label{font-size:1.05rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#6b7280;margin:0 0 .65rem}
.sp-guide__pills{display:flex;flex-wrap:wrap;gap:.45rem}
.sp-guide__pill{display:inline-block;font-size:1rem;font-weight:500;color:#52525b;background:rgba(0,0,0,.04);padding:.35rem .85rem;border-radius:9999px;border:1px solid rgba(0,0,0,.05)}
.sp-guide__cta-row{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.25rem}
.sp-guide__btn{display:inline-flex;align-items:center;gap:.45rem;padding:.7rem 1.4rem;font-weight:500;border-radius:9999px;text-decoration:none!important;transition:background .15s ease,color .15s ease;border:1px solid transparent}
/* Higher specificity needed because .sp-guide a wins over .sp-guide__btn--primary */
.sp-guide a.sp-guide__btn--primary,.sp-guide a.sp-guide__btn--primary:hover{color:#fff!important}
.sp-guide a.sp-guide__btn--primary{background:#3f6339}
.sp-guide a.sp-guide__btn--primary:hover{background:#345229}
.sp-guide a.sp-guide__btn--secondary{background:transparent;color:#3f6339!important;border-color:#3f6339}
.sp-guide a.sp-guide__btn--secondary:hover{background:rgba(63,99,57,.05);color:#3f6339!important;text-decoration:none!important}
.sp-guide__club-divider{margin-top:2.5rem;border:0;border-bottom:1px solid #e5e7eb}
.sp-guide__summary{background:rgba(0,0,0,.03);border:1px solid #e5e7eb;border-radius:.5rem;padding:2rem;margin:2.5rem -80px}
.sp-guide__summary > *:first-child{margin-top:0}
.sp-guide__summary p{line-height:1.65;margin:0 0 1rem}
.sp-guide__summary p:last-child{margin-bottom:0}
@media(max-width:920px){.sp-guide__summary{margin-left:-1rem;margin-right:-1rem}}
.sp-guide__faq{margin:2.5rem 0}
.sp-guide__faq details{border-bottom:1px solid #e5e7eb;padding:1.25rem 0}
.sp-guide__faq summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;align-items:center;color:#1c1c1c;gap:1rem}
.sp-guide__faq summary:hover{color:#3f6339}
.sp-guide__faq summary::-webkit-details-marker{display:none}
.sp-guide__faq summary::after{content:"+";font-size:1.6rem;font-weight:300;color:#9ca3af;transition:transform .2s ease;line-height:1;flex-shrink:0}
.sp-guide__faq details[open] summary::after{content:"–"}
.sp-guide__faq p{margin:.85rem 0 0;color:#3f3f46;line-height:1.65}
.sp-guide__crosslinks{background:#fafafa;border:1px solid #e5e7eb;border-radius:.5rem;padding:2rem;margin:2.5rem 0}
.sp-guide__crosslinks > *:first-child{margin-top:0}
.sp-guide__crosslinks-intro{color:#52525b;margin:0 0 1.5rem}
.sp-guide__crosslinks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.7rem;margin:1rem 0 2rem}
.sp-guide__crosslinks-item{display:flex;align-items:center;gap:.6rem;padding:.75rem 1rem;background:#fff;border:1px solid #e5e7eb;border-radius:.4rem;color:#1c1c1c;text-decoration:none;transition:border-color .15s ease,background .15s ease}
.sp-guide__crosslinks-item:hover{border-color:#3f6339;background:#fff;text-decoration:none}
.sp-guide__crosslinks-item .arrow{color:#3f6339;margin-left:auto;flex-shrink:0;font-size:1.1rem}
.sp-guide__crosslinks-tier{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:#3f6339;font-weight:600;margin-right:.4rem}
.sp-guide__crosslinks-hub{display:inline-flex;align-items:center;gap:.4rem;font-weight:600;color:#3f6339;font-size:.95rem;margin-top:.5rem;padding-top:1rem;border-top:1px solid #e5e7eb;width:100%}
