:root{
  --pc-bg:#070a0d;
  --pc-bg-2:#0b1016;
  --pc-gold:#ffbf00;
  --pc-text:rgba(255,255,255,.92);
  --pc-muted:rgba(255,255,255,.70);
  --pc-border:rgba(255,191,0,.35);
  --pc-border-strong:rgba(255,191,0,.62);
  --pc-shadow:0 10px 30px rgba(0,0,0,.45);
  --pc-shadow-pop:0 10px 22px rgba(255,191,0,.18),0 10px 28px rgba(0,0,0,.55);
  --pc-header-logo-desktop:80px;
  --pc-header-logo-mobile:72px;
  --pc-footer-logo:86px;
}

/* BASE */
html,body{height:100%;}
body{
  background:
    radial-gradient(1200px 500px at 20% 0%, rgba(255,191,0,.10), transparent 55%),
    radial-gradient(900px 450px at 85% 10%, rgba(255,255,255,.06), transparent 55%),
    linear-gradient(180deg,var(--pc-bg),var(--pc-bg-2));
  color:var(--pc-text);
}
a{color:var(--pc-text);}
a:hover{color:#fff;}
.text-muted{color:var(--pc-muted)!important;}
section{scroll-margin-top:110px;}

/* NAV */
.site-header{position:relative;z-index:1030;}
.site-nav{
  background:linear-gradient(180deg,rgba(0,0,0,.78),rgba(0,0,0,.48));
  border-bottom:1px solid rgba(255,255,255,.08);
  backdrop-filter:blur(10px);
}
.nav-main{gap:.4rem;}
.navbar-dark .navbar-nav{align-items:center;}
.navbar-dark .navbar-nav .nav-link{
  white-space:nowrap;
  font-weight:760;
  padding:.58rem .86rem;
  border-radius:999px;
}

/* GLOBAL HERO */
.hero{
  position:relative;
  overflow:hidden;
  border-bottom:1px solid rgba(255,255,255,.08);
  min-height:420px;
  display:flex;
  align-items:flex-end;
}
@media(max-width:768px){.hero{min-height:320px;}}
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:url("/assets/images/header/hero-van.jpg") center/cover no-repeat;
  filter:brightness(1.25) contrast(1.04) saturate(1.05);
  transform:scale(1.03);
  z-index:0;
}
.hero-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(0,0,0,.4),rgba(0,0,0,.22)),
    radial-gradient(900px 520px at 18% 30%,rgba(255,191,0,.18),transparent 60%);
  z-index:1;
}
.hero-content{
  position:relative;
  z-index:2;
  padding:3.2rem 0 3.8rem;
}
.hero-eyebrow{
  border:1px solid rgba(255,191,0,.55);
  padding:6px 14px;
  border-radius:999px;
  font-size:.78rem;
  letter-spacing:.12em;
  color:var(--pc-gold);
}
.hero-title{font-size:clamp(2.1rem,4.4vw,3.3rem);font-weight:950;}
.hero-sub{max-width:720px;color:var(--pc-muted);}

/* CARDS */
.card{
  border:2px solid var(--pc-border-strong);
  background:rgba(0,0,0,.22);
  box-shadow:var(--pc-shadow);
  border-radius:18px;
}
.card-img-top{height:220px;object-fit:cover;}

/* BLOG */
.blog-card{display:flex;flex-direction:column;height:100%;}
.badge-category{
  background:rgba(255,191,0,.14);
  color:var(--pc-gold);
  border:1px solid rgba(255,191,0,.45);
  font-weight:800;
  letter-spacing:.08em;
  padding:.35rem .65rem;
  border-radius:999px;
}
.clamp-2,.clamp-3{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.clamp-2{-webkit-line-clamp:2;}
.clamp-3{-webkit-line-clamp:3;}

/* CTA */
.cta-ribbon{
  position:relative;
  border:2px solid var(--pc-border-strong);
  background:rgba(0,0,0,.32);
}
.cta-ribbon::before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;
  width:4px;
  background:var(--pc-gold);
}
