/* =====================================================================
   Theme: ELITE - refined and minimal
   Specialist coaching: quality, facilities, testimonials, enquiries.
   Fine rules instead of cards, wide margins, restrained motion.
   ===================================================================== */

:root {
    --font-display: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
    --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --radius: 2px;
    --radius-lg: 3px;
    --radius-sm: 2px;
    --container: 1120px;
}

:root:not([data-theme="dark"]) {
    --page-bg: #ffffff;
    --surface: #ffffff;
    --surface-alt: #f7f7f5;
    --border: rgba(17, 24, 39, .12);
}

.club-site { letter-spacing: .01em; }
.club-site :is(h1, h2, h3, h4) { font-weight: 600; line-height: 1.12; letter-spacing: 0; }
.club-site .section-title {
    text-transform: none; font-size: clamp(2.1rem, 4.2vw, 3.4rem); font-weight: 500;
}
.club-site .hero__title {
    text-transform: none; font-weight: 500; letter-spacing: -.005em;
    font-size: clamp(2.6rem, 7vw, 4.6rem); text-shadow: none;
}
.club-site .section { padding: 96px 0; }
@media (min-width: 992px) { .club-site .section { padding: 132px 0; } }

/* Hero: quiet, centred, a single line of accent above the name */
.club-site .hero { min-height: 560px; }
.club-site .hero__overlay { background: linear-gradient(180deg, rgba(10, 12, 16, .3) 0%, rgba(10, 12, 16, .62) 100%); }
.club-site .hero__content { justify-content: flex-end; }
.club-site .hero__inner { max-width: 640px; }
.club-site .hero__badge {
    background: transparent; border: 0; padding: 0 0 14px; color: #fff;
    letter-spacing: .34em; font-size: .7rem; font-weight: 500; position: relative;
}
.club-site .hero__badge::after {
    content: ''; position: absolute; left: 0; bottom: 6px; width: 46px; height: 1px;
    background: var(--club-accent);
}
.club-site .hero__text { font-size: 1.06rem; opacity: .86; }

/* Buttons: outlined, letter-spaced, no lift */
.club-site .btn-club {
    border-radius: 0; font-family: var(--font-body); font-weight: 500;
    letter-spacing: .16em; font-size: .82rem; text-transform: uppercase;
    padding: 15px 32px; border-width: 1px;
}
.club-site .btn-club:hover { transform: none; }
.club-site .btn-club--primary { box-shadow: none; }
.club-site .btn-club--primary:hover { filter: none; background: color-mix(in srgb, var(--club-primary) 84%, #000); }
.club-site .btn-club--ghost { border-color: rgba(255, 255, 255, .55); background: transparent; }

/* Rules instead of cards */
.club-site .eyebrow {
    letter-spacing: .3em; font-size: .68rem; font-weight: 500; color: var(--text-secondary);
}
.club-site .eyebrow::before, .club-site .section__head--center .eyebrow::after {
    height: 1px; width: 40px; background: var(--club-accent);
}
.club-site .feature-card,
.club-site .trophy,
.club-site .quote,
.club-site .day-card,
.club-site .team-card,
.club-site .news-card,
.club-site .event-card,
.club-site .coach-card {
    border: 0; border-top: 1px solid var(--border); border-radius: 0;
    background: transparent; box-shadow: none;
}
.club-site .feature-card::after { display: none; }
.club-site .feature-card:hover,
.club-site .team-card:hover,
.club-site .coach-card:hover,
.club-site .event-card:hover,
.club-site .news-card:hover { transform: none; box-shadow: none; }
.club-site .feature-card { padding: 30px 0 0; }
.club-site .feature-card__icon {
    background: transparent; color: var(--club-accent); width: auto; height: auto;
    font-size: 1.15rem; margin-bottom: 14px;
}
.club-site .feature-card h3 { text-transform: none; font-size: 1.45rem; }

/* Coaching quality leads: large portraits, name in serif */
.club-site .coaches { gap: 36px; }
.club-site .coach-card__photo { aspect-ratio: 3/4; }
.club-site .coach-card__body { padding: 18px 0 0; }
.club-site .coach-card__name { font-family: var(--font-display); text-transform: none; font-size: 1.5rem; font-weight: 500; }
.club-site .coach-card__role { color: var(--text-secondary); letter-spacing: .2em; font-size: .68rem; font-weight: 500; }
.club-site .chip { border-radius: 0; background: transparent; border-color: var(--border); color: var(--text-secondary); }

/* Testimonials: centred serif quotes, one at a time */
.club-site .quotes { grid-template-columns: 1fr; max-width: 820px; margin: 0 auto; gap: 48px; }
.club-site .quote { padding: 0; text-align: center; }
.club-site .quote::before { display: none; }
.club-site .quote__text { font-family: var(--font-display); font-size: 1.6rem; line-height: 1.45; }
.club-site .quote__who { justify-content: center; }

/* Enquiry is the call to action, not "register now" */
.club-site .form-card { border-radius: 0; box-shadow: none; border: 1px solid var(--border); }
.club-site .field input, .club-site .field textarea { border-radius: 0; background: transparent; }
.club-site .join-band { padding: 120px 0; }
.club-site .join-band h2 { text-transform: none; font-weight: 500; }
.club-site .join-band__overlay { background: linear-gradient(90deg, rgba(10, 12, 16, .82), rgba(10, 12, 16, .5)); }

.club-site .stats-bar__card { border-radius: 0; box-shadow: none; border-top: 1px solid var(--border); }
.club-site .stat__value { font-family: var(--font-display); font-weight: 500; }
.club-site .mosaic__item { border-radius: 0; }
.club-site .site-footer { border-top-width: 1px; }
