/* WTCC Professional Brand Guidelines v5 — neutral-first homepage layer. */
.public-home {
  --wtcc-blue:#1769FF;
  --wtcc-soft-blue:#EEF4FF;
  --wtcc-navy:#0B1220;
  --wtcc-text:#111827;
  --wtcc-muted:#667085;
  --wtcc-surface:#F6F8FB;
  --wtcc-border:#E5E7EB;
  --wtcc-white:#FFFFFF;
  --wtcc-black:#000000;
  --color-background:var(--wtcc-white);
  --color-surface:var(--wtcc-white);
  --color-surface-elevated:var(--wtcc-surface);
  --color-border:var(--wtcc-border);
  --color-border-bright:var(--wtcc-blue);
  --color-primary:var(--wtcc-blue);
  --color-primary-bright:var(--wtcc-blue);
  --color-text:var(--wtcc-text);
  --color-text-muted:var(--wtcc-muted);
  --color-text-subtle:var(--wtcc-muted);
  background:var(--wtcc-white);
  color:var(--wtcc-text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.public-home :is(h1,h2,h3,h4),
.public-home :is(.ph-btn,.ph-text-link,.ph-preview-copy a),
.public-home :is(.mini-grid b,.journey-card>span,.ph-app-test__guide li>span,.hero-feature-card span,.hero-feature-card strong,.ph-support__button span,.ph-fuel-promo__button,.club-dashboard__top span,.how-grid li>span) {
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.public-home :is(h1,h2,h3,h4) { color:var(--wtcc-text);font-weight:700;letter-spacing:-.025em;line-height:1.12;text-transform:none; }
.public-home p { color:var(--wtcc-muted);font-size:1rem;line-height:1.55; }
.public-home .ph-container { max-width:1280px;padding-left:32px;padding-right:32px; }
.public-home .ph-section { padding:96px 0; }
.public-home .ph-eyebrow { color:var(--wtcc-blue)!important;font-family:inherit;font-size:.78rem;font-weight:600;letter-spacing:.1em;margin-bottom:16px; }
.public-home .ph-heading { margin-bottom:48px; }
.public-home .ph-heading h2 { font-size:clamp(2rem,3vw,2.25rem);letter-spacing:-.025em; }
.public-home .ph-heading>p:last-child { font-size:1rem;max-width:68ch; }

.public-home .ph-btn { border-radius:8px;font-size:.92rem;font-weight:600;letter-spacing:0;min-height:46px;padding:10px 24px;text-transform:none;transition:background-color 180ms ease,border-color 180ms ease,box-shadow 180ms ease,color 180ms ease; }
.public-home .ph-btn--primary { background:var(--wtcc-blue);box-shadow:none;color:#fff; }
.public-home .ph-btn--primary:hover,.public-home .ph-btn--primary:focus { background:var(--wtcc-blue);box-shadow:0 0 0 3px rgba(23,105,255,.18);color:#fff;transform:none; }
.public-home .ph-btn--secondary { background:var(--wtcc-white);border-color:var(--wtcc-border);color:var(--wtcc-text); }
.public-home .ph-btn--secondary:hover,.public-home .ph-btn--secondary:focus { border-color:var(--wtcc-blue);color:var(--wtcc-blue);transform:none; }
.public-home :is(a,button):focus-visible { outline:2px solid var(--wtcc-blue);outline-offset:3px; }

.public-home .ph-hero { background:var(--wtcc-navy); }
.public-home .ph-hero__media { background-image:linear-gradient(90deg,rgba(11,18,32,.96) 3%,rgba(11,18,32,.78) 44%,rgba(11,18,32,.18) 78%),var(--home-hero-image,url('/assets/img/home/car-club-hero-1600.jpg')); }
.public-home .ph-hero h1 { color:#fff;font-size:clamp(3rem,5vw,3.5rem);letter-spacing:-.04em;line-height:1.05; }
.public-home .ph-hero h1 span { color:#fff; }
.public-home .ph-hero__copy { max-width:760px; }
.public-home .ph-hero__copy>p:not(.ph-eyebrow) { color:#D0D5DD;font-size:1.125rem;max-width:65ch; }
.public-home .ph-hero .ph-eyebrow { color:#B9D1FF!important; }
.public-home .ph-hero__free,.public-home .ph-hero small,.public-home .ph-hero small a { color:#fff!important; }
.public-home .ph-hero .ph-btn--secondary { background:transparent;border-color:rgba(255,255,255,.4);color:#fff; }

.public-home :is(.ph-club-tools,.ph-eligibility,.ph-club-value,.ph-journeys,.ph-events,.ph-business) { background:var(--wtcc-white); }
.public-home :is(.ph-dashboard-showcase,.ph-how,.ph-chat-feature,.ph-drives,.ph-market) { background:var(--wtcc-surface); }
.public-home :is(.club-tools-grid article,.how-grid li,.vehicle-card,.drive-card,.market-row article,.club-value-card,.business-service-card) { background:var(--wtcc-white);border:1px solid var(--wtcc-border);border-radius:12px;box-shadow:none;color:var(--wtcc-text);padding-left:24px;padding-right:24px; }
.public-home :is(.club-tools-grid article,.how-grid li,.club-value-card,.business-service-card):hover { border-color:#C7D2E3;box-shadow:0 4px 12px rgba(16,24,40,.04);transform:none; }
.public-home :is(.club-tools-grid h3,.how-grid h3,.club-value-card h3,.business-service-card h3,.vehicle-card h3,.drive-card h3,.market-row h3) { color:var(--wtcc-text); }
.public-home .how-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
@media(max-width:991px){.public-home .how-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:575px){.public-home .how-grid{grid-template-columns:1fr;}}
.public-home :is(.club-tools-grid p,.how-grid p,.club-value-card p,.club-value-list span,.business-service-card p,.business-service-card ul,.vehicle-card p,.drive-card p,.drive-card ul,.market-row small) { color:var(--wtcc-muted)!important; }
.public-home :is(.club-tools-grid article>i,.club-value-card__icon,.club-value-list li>i,.feature-list i) { background:var(--wtcc-soft-blue);border-color:transparent;color:var(--wtcc-blue); }

.public-home .ph-dashboard-showcase__copy h2,.public-home .ph-eligibility h2 { color:var(--wtcc-text);font-size:clamp(2.25rem,3.5vw,3rem); }
.public-home .ph-dashboard-showcase__copy h2 span { color:var(--wtcc-blue); }
.public-home .club-dashboard { background:var(--wtcc-navy);border-color:#344054;box-shadow:0 1px 2px rgba(16,24,40,.04),0 4px 12px rgba(16,24,40,.04);transform:none; }
.public-home .club-dashboard :is(h3,strong) { color:#fff; }
.public-home .club-dashboard :is(p,small) { color:#D0D5DD; }
.public-home .club-dashboard__top,.public-home .club-dashboard__stats>span,.public-home .club-dashboard__panels section { background:#182230; }
.public-home .club-dashboard__body nav { background:var(--wtcc-navy); }
.public-home .club-dashboard__welcome,.public-home .club-dashboard__body nav .is-active { background:var(--wtcc-blue); }
.public-home .ph-check-list li { color:var(--wtcc-muted); }

.public-home .eligibility-types span { background:var(--wtcc-white);border:1px solid var(--wtcc-border);border-radius:8px;color:var(--wtcc-text); }
.public-home .eligibility-types span:before { color:var(--wtcc-blue); }
.public-home .journey-card :is(h3,p,a),.public-home .journey-card .ph-eyebrow { color:#fff!important; }
.public-home .ph-photo { box-shadow:none; }
.public-home .ph-feature-copy :is(h2,h3) { color:var(--wtcc-text); }
.public-home .ph-feature-copy h2 span { color:var(--wtcc-blue); }
.public-home .feature-list strong { color:var(--wtcc-text); }

.public-home .ph-fuel-promo { background:var(--wtcc-soft-blue);border-color:#D9E5FF;color:var(--wtcc-text); }
.public-home .ph-fuel-promo:after { color:rgba(23,105,255,.05); }
.public-home .ph-fuel-promo__icon { background:var(--wtcc-blue);color:#fff;transform:none; }
.public-home .ph-fuel-promo__copy .ph-eyebrow { color:var(--wtcc-blue)!important; }
.public-home .ph-fuel-promo__copy h2 { color:var(--wtcc-text); }
.public-home .ph-fuel-promo__copy>p:last-child { color:var(--wtcc-muted); }
.public-home .ph-fuel-promo__button { background:var(--wtcc-blue);border-radius:8px;color:#fff;letter-spacing:0;min-height:46px;text-transform:none; }
.public-home .ph-fuel-promo__button:hover,.public-home .ph-fuel-promo__button:focus { background:var(--wtcc-blue);box-shadow:0 0 0 3px rgba(23,105,255,.18);color:#fff;transform:none; }

.public-home .ph-app-test { background:var(--wtcc-surface);border-color:var(--wtcc-border); }
.public-home .ph-app-test__copy :is(h2,h3),.public-home .ph-app-test__guide h3 { color:var(--wtcc-text); }
.public-home .ph-app-test__copy h2 span,.public-home .ph-app-test__copy .ph-eyebrow { color:var(--wtcc-blue)!important; }
.public-home .ph-app-test__guide { background:var(--wtcc-white);border-color:var(--wtcc-border);box-shadow:none; }
.public-home .ph-app-test__guide :is(strong,p) { color:var(--wtcc-text); }
.public-home .ph-app-test__badge { background:var(--wtcc-soft-blue);border-color:#D9E5FF;color:var(--wtcc-blue); }

.public-home .ph-support { background:var(--wtcc-white); }
.public-home .ph-support--header { background:#0E1A2B;border-bottom:1px solid #25334A;padding:0;position:relative;z-index:2; }
.public-home .ph-support--header .ph-support__panel { background:transparent;border:0;border-radius:0;box-shadow:none;gap:16px;grid-template-columns:auto minmax(0,1fr) auto;min-height:72px;padding:10px 0; }
.public-home .ph-support--header .ph-support__icon { background:rgba(110,160,255,.14);height:40px;width:40px; }
.public-home .ph-support--header .ph-support__copy h2 { font-size:1rem;line-height:1.25;margin:0;text-transform:none; }
.public-home .ph-support--header .ph-support__copy p { color:#AEB9C8!important;font-size:.78rem;line-height:1.4;margin:3px 0 0; }
.public-home .ph-support--header .ph-support__button { border-radius:7px;gap:9px;min-height:42px;padding:8px 15px; }
.public-home .ph-support--header .ph-support__button span { font-size:.84rem;white-space:nowrap; }
.public-home .ph-support--header .ph-support__button>i:last-child { display:none; }
@media(max-width:991px) and (min-width:576px) {.public-home .ph-support--header .ph-support__panel { grid-template-columns:auto minmax(0,1fr) auto; }.public-home .ph-support--header .ph-support__button { grid-column:auto;justify-self:end; }}
.public-home .ph-support__panel { background:var(--wtcc-navy);border-color:#344054;box-shadow:none; }
.public-home .ph-support__copy h2,.public-home .ph-support__copy p { color:#fff; }
.public-home .ph-support__copy .ph-eyebrow { color:#D0D5DD!important; }
.public-home .ph-support__copy h2 { color:#FFFFFF;font-size:clamp(1.75rem,2.5vw,2.25rem);line-height:1.15; }
.public-home .ph-support__copy h2 span { color:inherit; }
.public-home .ph-support__icon { background:rgba(23,105,255,.16);box-shadow:none;color:#8DB3FF; }
.public-home .ph-support__panel:after { display:none; }
.public-home .ph-support__button { background:#1769FF;border-color:#1769FF;box-shadow:none;color:#FFFFFF;min-height:48px; }
.public-home .ph-support__button:hover,.public-home .ph-support__button:focus { background:#1769FF;box-shadow:0 0 0 3px rgba(23,105,255,.2);color:#FFFFFF;transform:none; }
.public-home .ph-support__button span { color:#FFFFFF;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-weight:600;letter-spacing:0;text-transform:none; }
.public-home .ph-support__button small { color:#D9E5FF;font-family:inherit;font-weight:400; }

.public-home .ph-featured-club { background:radial-gradient(circle at 14% 18%,rgba(23,105,255,.2),transparent 34%),radial-gradient(circle at 88% 82%,rgba(57,126,255,.1),transparent 30%),linear-gradient(145deg,#07101D 0%,#0B1627 52%,#08111F 100%);border-bottom:1px solid #22314A;border-top:1px solid #22314A;padding:56px 0;position:relative; }
.public-home .ph-featured-club:before { background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:44px 44px;content:"";inset:0;pointer-events:none;position:absolute; }
.public-home .ph-featured-club>.ph-container { position:relative;z-index:1; }
.public-home .featured-club-spotlight { background:var(--wtcc-navy);border:1px solid #344054;border-radius:18px;display:grid;grid-template-columns:minmax(300px,.82fr) minmax(390px,1.18fr);min-height:380px;overflow:hidden; }
.public-home .featured-club-spotlight__media { background-image:linear-gradient(0deg,rgba(11,18,32,.38),rgba(11,18,32,.04)),var(--featured-club-image);background-position:center;background-size:cover;min-height:380px;position:relative; }
.public-home .featured-club-spotlight__badge { align-items:center;background:#1769FF;border-radius:999px;color:#fff;display:inline-flex;font-size:.72rem;font-weight:700;gap:7px;left:22px;padding:8px 12px;position:absolute;top:22px;text-transform:uppercase; }
.public-home .featured-club-spotlight__logo { background:#fff;border:4px solid #fff;border-radius:13px;bottom:22px;box-shadow:0 12px 30px rgba(0,0,0,.25);height:80px;left:22px;object-fit:contain;position:absolute;width:80px; }
.public-home .featured-club-spotlight__content { align-self:center;padding:38px 44px; }
.public-home .featured-club-spotlight__content h2 { color:#fff;font-size:clamp(2.35rem,3.5vw,3.7rem);line-height:.95; }
.public-home .featured-club-spotlight__lead { color:#D0D5DD!important;font-size:.94rem;margin:18px 0; }
.public-home .featured-club-spotlight__facts { border-bottom:1px solid #344054;border-top:1px solid #344054;display:flex;flex-wrap:wrap;gap:14px 22px;margin-bottom:24px;padding:15px 0; }
.public-home .featured-club-spotlight__facts span { align-items:center;color:#EAECF0;display:flex;font-size:.82rem;font-weight:600;gap:8px; }
.public-home .featured-club-spotlight__facts i { color:#8DB3FF; }
.public-home .featured-club-spotlight__content .ph-actions { align-items:center; }
.public-home .featured-club-spotlight__content .ph-btn { gap:10px; }
.public-home .featured-club-spotlight__content .ph-text-link { margin-left:8px; }
@media(max-width:900px) {.public-home .featured-club-spotlight { grid-template-columns:1fr; }.public-home .featured-club-spotlight__media { min-height:300px; }.public-home .featured-club-spotlight__content { padding:34px; }}
@media(max-width:575px) {.public-home .ph-support--header .ph-support__panel { gap:10px;grid-template-columns:auto minmax(0,1fr);min-height:66px;padding:9px 0; }.public-home .ph-support--header .ph-support__copy p { display:none; }.public-home .ph-support--header .ph-support__button { grid-column:1/-1;justify-self:stretch;margin-bottom:6px; }.public-home .ph-featured-club { padding:36px 0; }.public-home .featured-club-spotlight { border-radius:14px; }.public-home .featured-club-spotlight__media { min-height:230px; }.public-home .featured-club-spotlight__badge { left:16px;top:16px; }.public-home .featured-club-spotlight__logo { bottom:16px;height:68px;left:16px;width:68px; }.public-home .featured-club-spotlight__content { padding:26px 20px; }.public-home .featured-club-spotlight__content h2 { font-size:2.25rem; }.public-home .featured-club-spotlight__content .ph-actions { align-items:stretch;flex-direction:column; }.public-home .featured-club-spotlight__content .ph-text-link { margin:8px 0 0;text-align:center; }}
.public-home .ph-proof { background:var(--wtcc-surface);border-color:var(--wtcc-border); }
.public-home .ph-proof strong { color:var(--wtcc-text); }
.public-home .ph-proof span { color:var(--wtcc-muted); }
.public-home .ph-proof a { color:var(--wtcc-text); }

.public-home .ph-final { background:var(--wtcc-navy);padding:96px 0; }
.public-home .ph-final__media { background-image:linear-gradient(90deg,rgba(11,18,32,.96),rgba(11,18,32,.42)),url('/assets/img/home/routes-hero.png');filter:none; }
.public-home .ph-final :is(h2,p),.public-home .ph-final h2 span { color:#fff; }
.public-home .ph-final h2 { font-size:clamp(2.75rem,5vw,3.5rem); }
.public-home .ph-final .ph-btn--secondary { background:transparent;border-color:rgba(255,255,255,.4);color:#fff; }

.public-home :is(.journey-card,.business-service-card,.hero-feature-card,.home-clickable-card,.event-card__cta,.ph-support__button):hover { transform:none; }
.public-home :is(.journey-card,.business-service-card,.hero-feature-card,.home-clickable-card,.event-card__cta,.ph-support__button) { transition-duration:180ms; }
@media(max-width:767px) {
  .public-home .ph-container { padding-left:20px;padding-right:20px; }
  .public-home .ph-section { padding:64px 0; }
  .public-home .ph-heading { margin-bottom:32px; }
  .public-home .ph-hero h1 { font-size:clamp(2.25rem,9vw,2.5rem); }
}
@media(max-width:575px) {
  .public-home .ph-container { padding-left:16px;padding-right:16px; }
  .public-home .ph-section { padding:48px 0; }
  .public-home .club-tools-grid article { padding:16px; }
  .public-home .ph-final { padding:64px 0; }
}
@media(prefers-reduced-motion:reduce) {
  .public-home * { animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important; }
}

/* Theme contrast contract. These rules intentionally come last so the theme
   switch controls product surfaces without changing the dark marketing hero. */
html[data-theme="light"] .public-home {
  --color-background:#FFFFFF;
  --color-surface:#FFFFFF;
  --color-surface-elevated:#F6F8FB;
  --color-border:#E5E7EB;
  --color-border-bright:#1769FF;
  --color-primary:#1769FF;
  --color-primary-bright:#1769FF;
  --color-text:#111827;
  --color-text-muted:#667085;
  --color-text-subtle:#667085;
  background:#FFFFFF;
  color:#111827;
}
html[data-theme="light"] .public-home :is(h1,h2,h3,h4,strong) { color:#111827; }
html[data-theme="light"] .public-home :is(p,li,small) { color:#667085; }
html[data-theme="light"] .public-home :is(.ph-club-tools,.ph-eligibility,.ph-club-value,.ph-journeys,.ph-events,.ph-business) { background:#FFFFFF; }
html[data-theme="light"] .public-home :is(.ph-dashboard-showcase,.ph-how,.ph-chat-feature,.ph-drives,.ph-market,.ph-app-test,.ph-proof) { background:#F6F8FB; }
html[data-theme="light"] .public-home :is(.club-tools-grid article,.how-grid li,.vehicle-card,.drive-card,.market-row article,.club-value-card,.business-service-card,.ph-app-test__guide) { background:#FFFFFF;border-color:#E5E7EB;color:#111827; }
html[data-theme="light"] .public-home :is(.club-tools-grid h3,.how-grid h3,.vehicle-card h3,.drive-card h3,.market-row h3,.club-value-card h3,.business-service-card h3,.ph-app-test h2,.ph-app-test h3,.ph-feature-copy h2,.feature-list strong) { color:#111827; }
html[data-theme="light"] .public-home :is(.club-tools-grid p,.how-grid p,.vehicle-card p,.drive-card p,.drive-card li,.market-row small,.club-value-card p,.club-value-list span,.business-service-card p,.business-service-card li,.ph-app-test p,.feature-list span) { color:#667085!important; }

html[data-theme="dark"] .public-home {
  --color-background:#080D18;
  --color-surface:#0B1220;
  --color-surface-elevated:#151E2E;
  --color-border:#2A3547;
  --color-border-bright:#1769FF;
  --color-primary:#1769FF;
  --color-primary-bright:#6EA0FF;
  --color-text:#F8FAFC;
  --color-text-muted:#C5CDD8;
  --color-text-subtle:#98A2B3;
  background:#080D18;
  color:#F8FAFC;
}
html[data-theme="dark"] .public-home :is(h1,h2,h3,h4,strong) { color:#F8FAFC; }
html[data-theme="dark"] .public-home :is(p,li,small) { color:#C5CDD8; }
html[data-theme="dark"] .public-home .ph-eyebrow { color:#8DB3FF!important; }
html[data-theme="dark"] .public-home :is(.ph-club-tools,.ph-eligibility,.ph-club-value,.ph-journeys,.ph-events,.ph-business) { background:#080D18; }
html[data-theme="dark"] .public-home :is(.ph-dashboard-showcase,.ph-how,.ph-chat-feature,.ph-drives,.ph-market,.ph-app-test,.ph-proof) { background:#0B1220; }
html[data-theme="dark"] .public-home :is(.club-tools-grid article,.how-grid li,.vehicle-card,.drive-card,.market-row article,.club-value-card,.business-service-card,.ph-app-test__guide) { background:#111A29;border-color:#2A3547;color:#F8FAFC; }
html[data-theme="dark"] .public-home :is(.club-tools-grid article,.how-grid li,.club-value-card,.business-service-card):hover { border-color:#475467;box-shadow:0 4px 12px rgba(0,0,0,.18); }
html[data-theme="dark"] .public-home :is(.club-tools-grid h3,.how-grid h3,.vehicle-card h3,.drive-card h3,.market-row h3,.club-value-card h3,.business-service-card h3,.ph-app-test h2,.ph-app-test h3,.ph-feature-copy h2,.feature-list strong) { color:#F8FAFC; }
html[data-theme="dark"] .public-home :is(.club-tools-grid p,.how-grid p,.vehicle-card p,.drive-card p,.drive-card li,.market-row small,.club-value-card p,.club-value-list span,.business-service-card p,.business-service-card li,.ph-app-test p,.feature-list span) { color:#C5CDD8!important; }
html[data-theme="dark"] .public-home :is(.club-tools-grid article>i,.club-value-card__icon,.club-value-list li>i,.feature-list i) { background:rgba(23,105,255,.14);border-color:rgba(110,160,255,.25);color:#8DB3FF; }
html[data-theme="dark"] .public-home .eligibility-types span { background:#111A29;border-color:#2A3547;color:#F8FAFC; }
html[data-theme="dark"] .public-home .ph-fuel-promo { background:#111A29;border-color:#2A3547; }
html[data-theme="dark"] .public-home .ph-fuel-promo__copy h2 { color:#F8FAFC; }
html[data-theme="dark"] .public-home .ph-fuel-promo__copy>p:last-child { color:#C5CDD8; }
html[data-theme="dark"] .public-home .ph-btn--secondary { background:transparent;border-color:#475467;color:#F8FAFC; }
html[data-theme="dark"] .public-home .ph-btn--secondary:hover { border-color:#8DB3FF;color:#FFFFFF; }
html[data-theme="dark"] .public-home .ph-text-link { color:#F8FAFC; }
html[data-theme="dark"] .public-home .ph-proof strong,html[data-theme="dark"] .public-home .ph-proof a { color:#F8FAFC; }
html[data-theme="dark"] .public-home .ph-proof span { color:#C5CDD8; }

/* The spotlight intentionally stays photographic and dark in both themes. */
html[data-theme] .public-home .featured-club-spotlight__content h2 { color:#FFFFFF; }
html[data-theme] .public-home .featured-club-spotlight__lead { color:#D0D5DD!important; }
html[data-theme] .public-home .featured-club-spotlight__facts span { color:#EAECF0; }
html[data-theme] .public-home .featured-club-spotlight__content .ph-text-link { color:#FFFFFF; }
