/*
Theme Name: NorCal Dual Sport Forest Enduro
Theme URI: https://norcaldualsport.net/
Author: OpenAI
Description: Forest/off-road dual-sport motorcycle theme with tire-tread overlays, orange enduro-style artwork, NextGEN gallery styling, wpForo styling, and event calendar sections.
Version: 3.0.0
License: GPLv2 or later
Text Domain: norcal-dual-sport
*/

:root{
  --ncds-forest:#122019;
  --ncds-forest-2:#1f3b2d;
  --ncds-forest-3:#315c43;
  --ncds-moss:#8fa78f;
  --ncds-tan:#e0d0ad;
  --ncds-paper:#f3ecdc;
  --ncds-dirt:#76512f;
  --ncds-mud:#4a2f1a;
  --ncds-orange:#ef7d19;
  --ncds-cream:#f7f1e3;
  --ncds-ink:#111814;
  --ncds-border:#d5c7ac;
}
*{box-sizing:border-box}
html{font-size:16px;scroll-behavior:smooth}
body{
  margin:0;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  color:var(--ncds-ink);
  line-height:1.65;
  background:
    url('assets/mud-speckle.svg'),
    linear-gradient(180deg,#efe6d2 0%,#f6f0e4 45%,#ebe0c9 100%);
}
a{color:var(--ncds-forest-3);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--ncds-orange)}
img{max-width:100%;height:auto}
.site-header{
  position:relative;
  color:#fff;
  background:
    linear-gradient(90deg,rgba(18,32,25,.96),rgba(18,32,25,.82)),
    url('assets/tire-tread.svg'),
    linear-gradient(135deg,var(--ncds-forest),#07100c);
  border-bottom:4px solid var(--ncds-orange);
  box-shadow:0 8px 28px rgba(0,0,0,.28);
}
.site-header:after{content:"";position:absolute;left:0;right:0;bottom:-13px;height:13px;background:linear-gradient(90deg,var(--ncds-mud),var(--ncds-orange),var(--ncds-mud));clip-path:polygon(0 0,100% 0,98% 70%,94% 40%,90% 92%,84% 44%,78% 100%,72% 40%,65% 86%,58% 55%,50% 100%,42% 50%,35% 92%,28% 44%,20% 100%,12% 44%,4% 84%)}
.header-inner{max-width:1220px;margin:0 auto;padding:22px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.site-branding{display:flex;align-items:center;gap:14px}
.site-branding:before{content:"";width:54px;height:54px;border-radius:50%;display:block;background:radial-gradient(circle at center,#111 0 29%,transparent 31%),conic-gradient(from 0deg,#111 0 12deg,#eee 12deg 18deg,#111 18deg 30deg,#eee 30deg 35deg,#111 35deg 360deg);border:3px solid var(--ncds-orange);box-shadow:inset 0 0 0 5px #2c2c2c,0 5px 12px rgba(0,0,0,.25)}
.site-branding a{color:#fff;text-decoration:none}
.site-title{font-size:clamp(1.35rem,3vw,2.15rem);line-height:1;margin:0;font-weight:900;letter-spacing:.035em;text-transform:uppercase}
.site-tagline{margin:.28rem 0 0;color:var(--ncds-tan);font-weight:650}
.primary-menu{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.primary-menu a{display:block;color:#fff;text-decoration:none;font-weight:800;letter-spacing:.01em;padding:9px 13px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16)}
.primary-menu a:hover{background:var(--ncds-orange);color:#111}
.ncds-hero{
  position:relative;
  min-height:620px;
  display:grid;
  align-items:center;
  overflow:hidden;
  color:#fff;
  background:
    linear-gradient(90deg,rgba(8,14,11,.95) 0%,rgba(8,14,11,.68) 42%,rgba(8,14,11,.18) 100%),
    url('assets/orange-enduro-forest.svg') center/cover no-repeat;
}
.ncds-hero:before{content:"";position:absolute;inset:0;background:url('assets/tire-tread.svg') right center/220px auto repeat-y;opacity:.22;mix-blend-mode:multiply}
.ncds-hero-inner{position:relative;max-width:1220px;margin:0 auto;width:100%;padding:70px 22px 90px}
.ncds-kicker{display:inline-block;color:#111;background:var(--ncds-orange);font-weight:950;letter-spacing:.12em;text-transform:uppercase;border-radius:4px;padding:6px 11px;margin-bottom:17px;box-shadow:0 8px 24px rgba(0,0,0,.22)}
.ncds-hero h1{font-size:clamp(2.2rem,6.2vw,5.6rem);line-height:.94;max-width:850px;text-transform:uppercase;margin:0 0 18px;text-shadow:0 8px 22px rgba(0,0,0,.52)}
.ncds-hero p{max-width:760px;color:#efe6d2;font-size:clamp(1.08rem,2.2vw,1.45rem);font-weight:600;margin:0 0 26px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.button,.wp-block-button__link,button,input[type="submit"]{display:inline-block;background:var(--ncds-orange);color:#111!important;text-decoration:none;font-weight:900;border:0;border-radius:6px;padding:12px 18px;box-shadow:0 6px 16px rgba(0,0,0,.18)}
.button:hover,.wp-block-button__link:hover{background:#ff9a32;color:#111!important}.button.secondary{background:rgba(255,255,255,.08);color:#fff!important;border:1px solid rgba(255,255,255,.34)}
.site-main{max-width:1220px;margin:0 auto;padding:42px 22px 64px}.content-card{position:relative;background:rgba(255,255,255,.9);border:1px solid var(--ncds-border);border-radius:18px;padding:28px;box-shadow:0 14px 38px rgba(17,24,20,.08);overflow:hidden}.content-card:before{content:"";position:absolute;right:-30px;top:-30px;width:260px;height:260px;background:url('assets/tire-tread.svg') center/180px auto;opacity:.06;transform:rotate(-18deg)}.content-card>*{position:relative}.entry-title{font-size:clamp(1.8rem,3.3vw,3rem);line-height:1.05;margin:0 0 16px;color:var(--ncds-forest-2);text-transform:uppercase}.entry-content h2,.entry-content h3{color:var(--ncds-forest-2);line-height:1.2}.entry-content table{width:100%;border-collapse:collapse;margin:1.5rem 0;background:#fff}.entry-content th,.entry-content td{border:1px solid var(--ncds-border);padding:10px;text-align:left}.entry-content th{background:#edf1e7;color:var(--ncds-forest-2)}
.ncds-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin:28px 0}.ncds-card{position:relative;background:#fff;border:1px solid var(--ncds-border);border-radius:16px;padding:22px;box-shadow:0 10px 26px rgba(0,0,0,.055);overflow:hidden}.ncds-card:after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;background:linear-gradient(90deg,var(--ncds-forest-2),var(--ncds-orange),var(--ncds-dirt))}.ncds-card h3{margin-top:0;color:var(--ncds-forest-2);text-transform:uppercase}.ncds-card.feature{min-height:250px;background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(255,255,255,.98)),url('assets/orange-dual-sport-card.svg') center/cover no-repeat}.ncds-badge{display:inline-block;background:var(--ncds-orange);color:#111;border-radius:6px;padding:4px 9px;font-size:.82rem;font-weight:950;margin-right:5px}.ncds-route-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin:22px 0}.ncds-route-legend div{background:#fff8eb;border-left:7px solid var(--ncds-orange);padding:13px;border-radius:8px;box-shadow:0 3px 10px rgba(0,0,0,.04)}
.wpforo-wrap,#wpforo-wrap{--wpf-color-primary:var(--ncds-forest-3);--wpf-color-secondary:var(--ncds-orange)}#wpforo-wrap .wpforo-forum-title,#wpforo-wrap .wpforo-category-title{font-weight:900!important}.ngg-galleryoverview,.ngg-albumoverview{background:rgba(255,255,255,.7);border:1px solid var(--ncds-border);border-radius:16px;padding:18px}.tribe-events,.tribe-common{--tec-color-accent-primary:var(--ncds-forest-3)}
.site-footer{background:linear-gradient(90deg,#07100c,#122019);color:#dce2d4;padding:28px 22px;text-align:center;border-top:5px solid var(--ncds-orange)}.site-footer a{color:var(--ncds-tan)}
@media (max-width:820px){.header-inner{display:block}.primary-menu{margin-top:16px}.primary-menu a{padding:8px 10px;font-size:.92rem}.ncds-hero{min-height:540px;background-position:center}.ncds-hero-inner{padding:50px 18px 70px}.content-card{padding:21px}}
