/* Lion Head Hauling LLC — Netlify-ready single page site */
:root{
  --black:#0B0B0B;
  --charcoal:#1E1E1E;
  --gray:#2A2A2A;
  --red:#C1121F;
  --gold:#F2A900;
  --white:#FFFFFF;
  --muted:#F4F4F4;
  --text:#121212;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--text);background:var(--white)}
a{color:inherit;text-decoration:none}
.container{width:min(1120px, 92vw); margin:0 auto}

.site-header{
  position:sticky; top:0; z-index:50;
  background:rgba(11,11,11,0.92);
  backdrop-filter: blur(10px);
  border-bottom:1px solid rgba(255,255,255,0.08);
}
.header-inner{
  display:flex; align-items:center; justify-content:space-between;
  gap:16px; padding:10px 0;
}
.brand{display:flex; align-items:center}
.brand-logo{
  height:68px; width:auto;
  filter: drop-shadow(0 6px 12px rgba(0,0,0,0.35));
}
.nav{display:flex; gap:18px; align-items:center; color:rgba(255,255,255,0.9); font-weight:600}
.nav a{padding:10px 8px; border-radius:10px; position:relative}
.nav a:hover{color:var(--white)}
.nav a::after{
  content:""; position:absolute; left:10px; right:10px; bottom:6px;
  height:2px; background:transparent; border-radius:999px;
}
.nav a:hover::after{background:var(--red)}
.header-actions{display:flex; gap:10px; align-items:center}

.lang-toggle{
  border:1px solid rgba(255,255,255,0.22);
  background:rgba(255,255,255,0.06);
  color:var(--white);
  border-radius:999px;
  padding:10px 12px;
  font-weight:800;
  letter-spacing:0.5px;
  cursor:pointer;
}
.lang-toggle:hover{border-color:rgba(255,255,255,0.35)}
.cta{
  background:var(--red);
  color:var(--white);
  padding:11px 14px;
  border-radius:999px;
  font-weight:800;
  box-shadow:0 10px 20px rgba(193,18,31,0.28);
}
.cta:hover{transform:translateY(-1px)}
.mobile-menu{display:none; background:none; border:none; cursor:pointer}
.mobile-menu span{display:block; width:26px; height:3px; background:var(--white); margin:5px 0; border-radius:2px}

.mobile-drawer{
  display:none;
  padding:14px 0 18px;
  border-top:1px solid rgba(255,255,255,0.1);
  background:rgba(11,11,11,0.98);
}
.mobile-drawer a{
  display:block;
  color:rgba(255,255,255,0.92);
  padding:12px 0;
  font-weight:700;
}
.drawer-cta{
  margin-top:8px;
  display:inline-block;
  background:var(--red);
  padding:12px 14px;
  border-radius:12px;
  width:fit-content;
}

.hero{
  position:relative;
  background:
    radial-gradient(1200px 600px at 10% 10%, rgba(242,169,0,0.18), transparent 55%),
    radial-gradient(900px 520px at 80% 20%, rgba(193,18,31,0.18), transparent 55%),
    linear-gradient(180deg, #0B0B0B 0%, #141414 42%, #FFFFFF 42%);
  overflow:hidden;
}
.hero-watermark{
  position:absolute; inset:0;
  background-image:url("assets/lionhead-logo.png");
  background-repeat:no-repeat;
  background-position: center center;
  background-size: 620px auto;
  opacity:0.10;
  transform: rotate(-10deg);
  pointer-events:none;
}
.hero-grid{
  display:grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap:26px;
  padding:34px 0 48px;
  align-items:start;
}
.hero-copy{color:var(--white)}
.badge{
  display:inline-flex; align-items:center; gap:8px;
  background:rgba(255,255,255,0.10);
  border:1px solid rgba(255,255,255,0.14);
  border-radius:999px;
  padding:8px 12px;
  font-weight:700;
}
h1{margin:14px 0 10px; font-size:46px; line-height:1.05; letter-spacing:-0.5px}
.lead{margin:0; color:rgba(255,255,255,0.82); font-size:18px; line-height:1.6; max-width:48ch}

.hero-pills{display:flex; flex-wrap:wrap; gap:10px; margin:18px 0 18px}
.pill{
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.14);
  color:rgba(255,255,255,0.95);
  border-radius:14px;
  padding:10px 12px;
  font-weight:700;
}
.pill strong{color:var(--gold)}

.hero-actions{display:flex; gap:12px; flex-wrap:wrap; margin:10px 0 18px}
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 16px;
  border-radius:14px;
  font-weight:900;
  letter-spacing:0.2px;
  transition:transform .12s ease, box-shadow .12s ease, background .12s ease;
}
.btn.primary{background:var(--red); color:var(--white); box-shadow:0 14px 28px rgba(193,18,31,0.28)}
.btn.primary:hover{transform:translateY(-1px)}
.btn.secondary{
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.22);
  color:var(--white);
}
.btn.secondary:hover{border-color:rgba(255,255,255,0.35); transform:translateY(-1px)}

.contact-strip{
  margin-top:16px;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.14);
  border-radius:18px;
  padding:14px;
  display:grid;
  grid-template-columns: 1.2fr 0.8fr 1fr;
  gap:12px;
}
.contact-item .label{display:block; font-size:12px; color:rgba(255,255,255,0.70); font-weight:800; letter-spacing:0.6px; text-transform:uppercase; margin-bottom:4px}
.contact-item a{color:var(--white); text-decoration:underline; text-decoration-color:rgba(242,169,0,0.7); text-underline-offset:3px}

.hero-visual{color:var(--text)}
.visual-card{
  margin-top:12px;
  border-radius:22px;
  overflow:hidden;
  background:var(--white);
  border:1px solid rgba(0,0,0,0.08);
  box-shadow:0 24px 60px rgba(0,0,0,0.18);
}
.visual-top{padding:18px 16px 6px; background:linear-gradient(180deg, #FFFFFF 0%, #F6F6F6 100%)}
.visual-top img{width:100%; height:auto; display:block}
.visual-bottom{
  padding:14px 16px 16px;
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:10px;
}
.kpi{background:var(--muted); border-radius:16px; padding:12px; border:1px solid rgba(0,0,0,0.06)}
.kpi-num{font-weight:1000; font-size:18px}
.kpi-label{color:#4b4b4b; font-weight:700; font-size:12px; margin-top:6px}
.note{margin:10px 0 0; font-size:12px; color:#2d2d2d}

.section{padding:64px 0}
.section.alt{background:var(--muted)}
.section h2{font-size:34px; margin:0 0 10px}
.section-lead{margin:0 0 18px; color:#343434; max-width:70ch; line-height:1.7}

.cards{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:14px;
  margin-top:18px;
}
.card{
  background:var(--white);
  border-radius:18px;
  padding:18px;
  border:1px solid rgba(0,0,0,0.08);
  box-shadow:0 18px 40px rgba(0,0,0,0.06);
}
.card h3{margin:0 0 8px}
.card p{margin:0; color:#3f3f3f; line-height:1.6}

.cta-band{
  margin-top:18px;
  background:linear-gradient(120deg, rgba(193,18,31,0.10), rgba(242,169,0,0.10));
  border:1px solid rgba(0,0,0,0.10);
  border-radius:20px;
  padding:18px;
  display:flex; align-items:center; justify-content:space-between; gap:16px;
}
.cta-band h3{margin:0 0 6px}
.cta-band p{margin:0; color:#383838}
.cta-band-actions{display:flex; gap:10px; flex-wrap:wrap}

.grid-two{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:14px;
  margin-top:18px;
}
.panel{
  background:var(--white);
  border-radius:18px;
  padding:18px;
  border:1px solid rgba(0,0,0,0.08);
}
.panel h3{margin:0 0 10px}
.panel ul{margin:0; padding-left:18px; line-height:1.9; font-weight:700}
.mini{display:flex; gap:12px; margin-top:12px; flex-wrap:wrap}
.mini-item{
  padding:10px 12px;
  border-radius:14px;
  background:var(--muted);
  border:1px solid rgba(0,0,0,0.06);
  font-weight:800;
}
.mini-item span{color:#5a5a5a; margin-right:6px; font-weight:900}

.about-grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:14px;
  margin-top:18px;
}
.about-box{
  background:var(--white);
  border-radius:18px;
  padding:18px;
  border:1px solid rgba(0,0,0,0.08);
  position:relative;
}
.about-box::before{
  content:"";
  position:absolute;
  left:18px; top:18px;
  width:10px; height:10px;
  background:var(--red);
  border-radius:50%;
  box-shadow:14px 0 0 var(--gold);
}
.about-box h3{margin:0 0 8px; padding-left:28px}
.about-box p{margin:0; color:#3f3f3f; line-height:1.6; padding-left:28px}

.contact-cards{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:14px;
  margin-top:18px;
}
.contact-card{
  background:var(--white);
  border-radius:18px;
  padding:18px;
  border:1px solid rgba(0,0,0,0.08);
}
.big-link{display:inline-block; font-weight:1000; font-size:18px; color:var(--red); margin-top:6px}
.big-text{font-weight:900; margin:8px 0 10px}
.small-link{display:inline-block; margin-top:8px; text-decoration:underline; text-underline-offset:3px}

.footer{
  background:var(--black);
  color:rgba(255,255,255,0.9);
  padding:22px 0;
}
.footer-inner{
  display:grid;
  grid-template-columns: 1.2fr 1fr 1fr;
  gap:14px;
  align-items:center;
}
.footer-brand{display:flex; align-items:center; gap:12px}
.footer-brand img{height:54px; width:auto}
.footer-name{font-weight:1000}
.footer-meta{color:rgba(255,255,255,0.68); font-weight:700; margin-top:3px}
.footer-links{display:flex; gap:12px; justify-content:center; flex-wrap:wrap}
.footer-links a{padding:8px 10px; border-radius:12px}
.footer-links a:hover{background:rgba(255,255,255,0.06)}
.footer-copy{color:rgba(255,255,255,0.65); font-weight:700; text-align:right}

@media (max-width: 980px){
  /* Mobile hero fixes */
  .hero{
    background:
      radial-gradient(900px 520px at 10% 10%, rgba(242,169,0,0.16), transparent 55%),
      radial-gradient(700px 520px at 80% 20%, rgba(193,18,31,0.16), transparent 55%),
      linear-gradient(180deg, #0B0B0B 0%, #141414 68%, #FFFFFF 68%);
  }
  .hero-grid{gap:18px; padding:18px 0 34px}
  h1{font-size:36px}
  .lead{font-size:16px}
  .hero-watermark{
    background-position:center 22%;
    background-size:420px auto;
    opacity:0.08;
    transform: rotate(-8deg);
  }
  .hero-visual{margin-top:-6px}
  .visual-card{margin-top:0}
  .visual-top{padding:12px 12px 4px}
  .note{display:none}

  .hero-grid{grid-template-columns:1fr; padding:26px 0 42px}
  .hero-watermark{background-position: 80% 8%; background-size: 520px auto}
  .contact-strip{grid-template-columns:1fr; }
  .cards,.about-grid,.contact-cards{grid-template-columns:1fr}
  .grid-two{grid-template-columns:1fr}
  .footer-inner{grid-template-columns:1fr; text-align:left}
  .footer-links{justify-content:flex-start}
  .footer-copy{text-align:left}
  .nav{display:none}
  .mobile-menu{display:block}
  .mobile-drawer{display:none}
}


/* Soften truck image to blend into background */
.hero-visual img{
  opacity: 0.82;
  mix-blend-mode: multiply;
}

/* Hero truck background blend */
.hero-visual .visual-top{
  position: relative;
  background: linear-gradient(
    to bottom,
    rgba(11,11,11,1) 0%,
    rgba(11,11,11,0.85) 18%,
    rgba(11,11,11,0.4) 38%,
    rgba(255,255,255,0) 60%
  );
}

.hero-visual .visual-top img{
  position: relative;
  z-index: 2;
}

/* === MOBILE HERO FIX === */
@media (max-width: 768px){
  .hero{
    background:
      linear-gradient(180deg, #0B0B0B 0%, #0B0B0B 55%, #FFFFFF 55%);
  }

  .hero-watermark{
    background-position: center 20%;
    background-size: 420px auto;
    opacity: 0.08;
  }

  .hero-visual .visual-top{
    background: linear-gradient(
      to bottom,
      rgba(11,11,11,1) 0%,
      rgba(11,11,11,0.95) 35%,
      rgba(11,11,11,0.75) 55%,
      rgba(255,255,255,0) 75%
    );
  }

  .hero-visual img{
    max-height: 260px;
    margin: 0 auto;
    display: block;
  }
}
