/* Harley Bikers Dog v416 — charte visuelle finale
   Règle: orange = accent/CTA seulement; jamais texte courant. */
:root{
  --hbd-orange:#F36C0A!important;
  --orange:#F36C0A!important;
  --rust:#F36C0A!important;
  --gold:#F36C0A!important;
  --accent:#F36C0A!important;
  --hbd-black:#090909!important;
  --hbd-charcoal:#171411!important;
  --hbd-cream:#F5EFE4!important;
  --hbd-paper:#FFFAF2!important;
  --hbd-ink:#17130F!important;
  --hbd-muted:#5B5147!important;
  --hbd-light:#E8E0D6!important;
}

/* Base readable surfaces */
html body{color:var(--hbd-ink)!important;background:var(--hbd-cream)!important;}
html body main,html body article{color:var(--hbd-ink);}
html body main p,html body article p,html body main li,html body article li{
  opacity:1!important;text-shadow:none!important;
}

/* Orange is reserved for small accents. */
html body :is(.ey,.eyebrow,.kicker,.section-kicker,.section-label,.blog-label,.tag,.cat-kicker,.hbd-kicker,.route-label,.card-kicker,.amazon-badge,.verified-badge){
  color:var(--hbd-orange)!important;
  -webkit-text-fill-color:var(--hbd-orange)!important;
  opacity:1!important;
}

/* CTA standard everywhere: orange Harley + black text. */
html body :is(
  a.btn,a.btn-primary,a.cta-btn,a.product-btn,a.see-all,a.seo-cta,a.nav-cta,
  a.hbd-btn,a.hbd-button,a.join-btn,a.submit-btn,a.teaser-link,a.back-blog,
  a.map-cta,a.platform-arrow,.hero-btns a,.about-actions a,.card-body>a,
  .stop-links a.cta-btn,button[type="submit"],input[type="submit"],input[type="button"],
  .sib-form-block__button
){
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  background:var(--hbd-orange)!important;background-image:none!important;
  color:#090909!important;-webkit-text-fill-color:#090909!important;
  border:2px solid var(--hbd-orange)!important;
  font-weight:900!important;text-decoration:none!important;text-shadow:none!important;
  opacity:1!important;
}
html body :is(
  a.btn,a.btn-primary,a.cta-btn,a.product-btn,a.see-all,a.seo-cta,a.nav-cta,
  a.hbd-btn,a.hbd-button,a.join-btn,a.submit-btn,a.teaser-link,a.back-blog,
  a.map-cta,a.platform-arrow,.hero-btns a,.about-actions a,.card-body>a,
  button[type="submit"],input[type="submit"],input[type="button"],.sib-form-block__button
) *{color:#090909!important;-webkit-text-fill-color:#090909!important;}
html body :is(a.btn,a.btn-primary,a.cta-btn,a.product-btn,a.see-all,a.seo-cta,a.nav-cta,a.hbd-btn,a.hbd-button,a.join-btn,a.submit-btn,a.teaser-link,a.back-blog,a.map-cta,.platform-arrow,.hero-btns a,.about-actions a,.card-body>a):hover{
  background:#FF7B1A!important;border-color:#FF7B1A!important;transform:translateY(-1px);
}

/* Dark surfaces: title white, copy light gray, labels orange. */
html body :is(
  nav,.nav,.topbar,.site-header,.hbd-site-header,.hero,.seo-hero,.blog-hero,.listing-hero,
  .dark,.dark-card,.tool-card,.community-card,.hbd-community,.hbd-route-card,.partner-box,
  .map-toolbar,.side-panel,.side-head,.platforms,.amazon-section,.hbd-simple-footer,
  .destination-card,.region-card,.chapter-teaser,.next-chapter
){background-color:var(--hbd-charcoal)!important;color:#fff!important;}
html body :is(
  nav,.nav,.topbar,.site-header,.hbd-site-header,.hero,.seo-hero,.blog-hero,.listing-hero,
  .dark,.dark-card,.tool-card,.community-card,.hbd-community,.hbd-route-card,.partner-box,
  .map-toolbar,.side-panel,.side-head,.platforms,.amazon-section,.hbd-simple-footer,
  .destination-card,.region-card,.chapter-teaser,.next-chapter
) :is(h1,h2,h3,h4,h5,h6,strong){
  color:#fff!important;-webkit-text-fill-color:#fff!important;opacity:1!important;
}
html body :is(
  nav,.nav,.topbar,.site-header,.hbd-site-header,.hero,.seo-hero,.blog-hero,.listing-hero,
  .dark,.dark-card,.tool-card,.community-card,.hbd-community,.hbd-route-card,.partner-box,
  .map-toolbar,.side-panel,.side-head,.platforms,.amazon-section,.hbd-simple-footer,
  .destination-card,.region-card,.chapter-teaser,.next-chapter
) :is(p,li,small,em,.lead,.sub,.description,.card-copy,.platform-handle,.platforms-sub){
  color:var(--hbd-light)!important;-webkit-text-fill-color:var(--hbd-light)!important;opacity:1!important;
}
html body :is(
  .dark,.dark-card,.tool-card,.community-card,.hbd-community,.hbd-route-card,.partner-box,
  .destination-card,.region-card,.platform-card
) :is(.ey,.eyebrow,.kicker,.section-label,.tag,.cat-kicker,.hbd-kicker,.route-label,.card-kicker){
  color:var(--hbd-orange)!important;-webkit-text-fill-color:var(--hbd-orange)!important;
}

/* Do not let regular links become pale orange paragraphs. */
html body :is(.dark,.dark-card,.tool-card,.community-card,.hbd-community,.hbd-route-card,.partner-box,.destination-card,.region-card) p a:not(.btn):not(.cta-btn):not(.hbd-button){
  color:#fff!important;-webkit-text-fill-color:#fff!important;text-decoration-color:var(--hbd-orange)!important;
}

/* Light cards: dark titles and copy. */
html body :is(.trip,.route-card:not(.dark),.product-card,.stop-card,.place-card,.chapter-card,.story-card,.blog-card,.card:not(.dark):not(.orange),.about,.blog-section){
  color:var(--hbd-ink)!important;
}
html body :is(.trip,.route-card:not(.dark),.product-card,.stop-card,.place-card,.chapter-card,.story-card,.blog-card,.card:not(.dark):not(.orange),.about,.blog-section) :is(h1,h2,h3,h4,h5,h6,strong){
  color:var(--hbd-ink)!important;-webkit-text-fill-color:var(--hbd-ink)!important;opacity:1!important;
}
html body :is(.trip,.route-card:not(.dark),.product-card,.stop-card,.place-card,.chapter-card,.story-card,.blog-card,.card:not(.dark):not(.orange),.about,.blog-section) :is(p,li,small,em,.lead,.description){
  color:var(--hbd-muted)!important;-webkit-text-fill-color:var(--hbd-muted)!important;opacity:1!important;
}
html body :is(.trip,.product-card,.stop-card,.place-card,.chapter-card,.story-card,.blog-card) :is(.tag,.ey,.eyebrow,.kicker,.section-label,.card-kicker){
  color:var(--hbd-orange)!important;-webkit-text-fill-color:var(--hbd-orange)!important;
}

/* Road trip listings: compact professional cards. */
html body.hbd-listing .trip{
  background:var(--hbd-paper)!important;border:1px solid #D9C9B8!important;
  box-shadow:0 10px 28px rgba(31,22,14,.08)!important;
}
html body.hbd-listing .trip h2{color:var(--hbd-ink)!important;-webkit-text-fill-color:var(--hbd-ink)!important;}
html body.hbd-listing .trip p{color:var(--hbd-muted)!important;-webkit-text-fill-color:var(--hbd-muted)!important;}

/* Blog cards. */
html body .blog-card{background:var(--hbd-paper)!important;border-color:#D9C9B8!important;}
html body .blog-card .card-body h3{color:var(--hbd-ink)!important;-webkit-text-fill-color:var(--hbd-ink)!important;}
html body .blog-card .card-body p{color:var(--hbd-muted)!important;-webkit-text-fill-color:var(--hbd-muted)!important;}
html body .blog-card .card-body .tag{color:var(--hbd-orange)!important;-webkit-text-fill-color:var(--hbd-orange)!important;}

/* Homepage cards: never full paragraphs in orange. */
html body.hbd-home :is(.product-card,.hbd-shop-card,.universe-card,.platform-card) h3,
html body.hbd-home :is(.product-card,.hbd-shop-card,.universe-card,.platform-card) .platform-name{
  color:#fff!important;-webkit-text-fill-color:#fff!important;
}
html body.hbd-home :is(.product-card,.hbd-shop-card,.universe-card,.platform-card) p,
html body.hbd-home :is(.product-card,.hbd-shop-card,.universe-card,.platform-card) .platform-handle{
  color:var(--hbd-light)!important;-webkit-text-fill-color:var(--hbd-light)!important;
}
html body.hbd-home :is(.product-card,.hbd-shop-card,.universe-card,.platform-card) :is(.section-label,.tag,.eyebrow,.product-kicker){
  color:var(--hbd-orange)!important;-webkit-text-fill-color:var(--hbd-orange)!important;
}

/* About section stays light and readable. */
html body.hbd-home section.about{background:var(--hbd-cream)!important;color:var(--hbd-ink)!important;}
html body.hbd-home section.about :is(h1,h2,h3,h4,strong){color:var(--hbd-ink)!important;-webkit-text-fill-color:var(--hbd-ink)!important;}
html body.hbd-home section.about p{color:#332A23!important;-webkit-text-fill-color:#332A23!important;}
html body.hbd-home section.about .section-label{color:var(--hbd-orange)!important;-webkit-text-fill-color:var(--hbd-orange)!important;}
html body.hbd-home section.about .about-quote{background:var(--hbd-charcoal)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;}

/* GPS: clear light itinerary card and readable black controls. */
html body.gps-page .hero .route-card{background:var(--hbd-paper)!important;color:var(--hbd-ink)!important;border-color:#D4C4B3!important;}
html body.gps-page .hero .route-card :is(h1,h2,h3,h4,p,span:not(.eyebrow),strong,small){color:var(--hbd-ink)!important;-webkit-text-fill-color:var(--hbd-ink)!important;}
html body.gps-page .hero .route-card .eyebrow{color:var(--hbd-orange)!important;-webkit-text-fill-color:var(--hbd-orange)!important;}
html body.gps-page :is(.traveller-switch .switch,.map-toolbar .filter){background:#111!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border-color:#665A50!important;}
html body.gps-page :is(.traveller-switch .switch.active,.map-toolbar .filter.active){background:var(--hbd-orange)!important;color:#090909!important;-webkit-text-fill-color:#090909!important;border-color:var(--hbd-orange)!important;}
html body.gps-page :is(.place,.place-card){background:var(--hbd-paper)!important;color:var(--hbd-ink)!important;}
html body.gps-page :is(.place,.place-card) :is(h3,h4,p,span,strong,small){color:var(--hbd-ink)!important;-webkit-text-fill-color:var(--hbd-ink)!important;}

/* Orange panels use black text, never red/orange text. */
html body :is(.orange,.hbd-side-card.orange,[style*="background:#F36C0A"],[style*="background: #F36C0A"]){background:var(--hbd-orange)!important;color:#090909!important;}
html body :is(.orange,.hbd-side-card.orange,[style*="background:#F36C0A"],[style*="background: #F36C0A"]) :is(h1,h2,h3,h4,p,li,span,strong,em,small,a){color:#090909!important;-webkit-text-fill-color:#090909!important;}

/* Footer and navigation stay white on black; CTA alone is orange. */
html body :is(nav,.nav,.hbd-simple-footer) a:not(.nav-cta):not(.btn):not(.cta-btn){color:#fff!important;-webkit-text-fill-color:#fff!important;}
html body .hbd-footer-tagline{color:var(--hbd-light)!important;-webkit-text-fill-color:var(--hbd-light)!important;}

/* Final anti-regression lock. */
html body main :is(h1,h2,h3,h4,h5,h6,p,li,span,strong,em,small),
html body article :is(h1,h2,h3,h4,h5,h6,p,li,span,strong,em,small){opacity:1!important;text-shadow:none!important;}

@media(max-width:760px){
  html body :is(a.btn,a.btn-primary,a.cta-btn,a.product-btn,a.see-all,a.seo-cta,a.nav-cta,a.hbd-btn,a.hbd-button,a.join-btn,a.submit-btn,a.teaser-link,a.back-blog,a.map-cta,.platform-arrow,.hero-btns a,.about-actions a,.card-body>a){min-height:48px!important;}
}
