
:root{
  --ink:#0a0b0d;
  --coal:#111419;
  --panel:#171b21;
  --panel2:#20262d;
  --gold:#c89a3d;
  --gold2:#e4bd70;
  --cream:#f4f1eb;
  --silver:#c8ced5;
  --muted:#a5adb6;
  --white:#fff;
  --max:1200px;
  --shadow:0 24px 70px rgba(0,0,0,.22);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--ink);color:var(--white);
  font-family:Inter,Arial,Helvetica,sans-serif;line-height:1.6;
}
img{display:block;width:100%}
a{text-decoration:none;color:inherit}
button,input,select,textarea{font:inherit}
.container{width:min(92%,var(--max));margin:auto}
.eyebrow{font-size:.76rem;text-transform:uppercase;letter-spacing:.18em;font-weight:900;color:var(--gold2)}
h1,h2,h3{font-family:Arial Black,Inter,Arial,sans-serif;line-height:1.03;margin:0 0 18px;letter-spacing:-.02em}
h1{font-size:clamp(3rem,7.4vw,7.3rem);max-width:960px}
h2{font-size:clamp(2.15rem,4.6vw,4.3rem)}
h3{font-size:1.24rem}
p{margin:0 0 18px}
.muted{color:var(--muted)}
.gold{color:var(--gold2)}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  min-height:50px;padding:0 22px;border-radius:3px;border:1px solid transparent;
  font-weight:900;letter-spacing:.03em;transition:.2s ease;
}
.btn-primary{background:var(--gold);color:#111}
.btn-primary:hover{background:var(--gold2);transform:translateY(-2px)}
.btn-outline{border-color:rgba(255,255,255,.58);background:rgba(0,0,0,.16)}
.btn-outline:hover{border-color:var(--gold2);color:var(--gold2);transform:translateY(-2px)}
.site-header{
  position:fixed;inset:0 0 auto 0;z-index:1000;
  background:linear-gradient(to bottom,rgba(7,8,10,.94),rgba(7,8,10,.62),transparent);
  transition:.25s ease;
}
.site-header.scrolled{background:rgba(9,11,14,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08)}
.nav{height:106px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:15px}
.brand img{width:178px;height:86px;object-fit:contain;object-position:left center}
.brand-copy strong{display:none}
.brand-copy span{display:none}
.nav-links{display:flex;align-items:center;gap:26px}
.nav-links>a:not(.btn){font-size:.9rem;font-weight:800;color:#e5e8eb;white-space:nowrap}
.nav-links>a:hover,.nav-links a[aria-current="page"]{color:var(--gold2)}
.menu-btn{display:none;background:none;border:0;color:white;font-size:1.65rem}
.hero{
  min-height:100vh;display:flex;align-items:flex-end;position:relative;isolation:isolate;
  background-image:
    linear-gradient(90deg,rgba(5,6,8,.96) 0%,rgba(5,6,8,.8) 42%,rgba(5,6,8,.38) 72%,rgba(5,6,8,.26) 100%),
    linear-gradient(0deg,rgba(5,6,8,.92),transparent 43%),
    var(--hero);
  background-size:cover;background-position:center;
}
.hero:after{
  content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(120deg,transparent 0 62%,rgba(200,154,61,.16) 62% 63%,transparent 63%);
}
.hero-inner{padding:170px 0 92px}
.hero p{font-size:clamp(1.05rem,1.8vw,1.35rem);max-width:770px;color:#e3e7eb}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.hero-proof{display:flex;gap:26px;flex-wrap:wrap;margin-top:48px}
.hero-proof div{border-left:2px solid var(--gold);padding-left:13px}
.hero-proof strong{display:block;font-size:1.05rem}
.hero-proof span{font-size:.83rem;color:#bec5cc}
.section{padding:118px 0}
.section-dark{background:var(--coal)}
.section-black{background:var(--ink)}
.section-light{background:var(--cream);color:#14171b}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:48px}
.section-head>div:first-child{max-width:760px}
.section-head p{max-width:560px}
.split{display:grid;grid-template-columns:1.02fr .98fr;gap:58px;align-items:center}
.image-frame{position:relative;min-height:520px;border-radius:5px;overflow:hidden;box-shadow:var(--shadow)}
.image-frame img{position:absolute;inset:0;height:100%;object-fit:cover}
.image-frame:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.14);box-shadow:inset 0 0 0 10px rgba(0,0,0,.12)}
.image-badge{
  position:absolute;left:24px;bottom:24px;z-index:2;background:rgba(10,11,13,.9);
  padding:18px 20px;border-left:4px solid var(--gold);max-width:290px;
}
.image-badge strong{display:block;font-size:1.35rem}
.trust-strip{background:#0d1014;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.trust-grid{display:grid;grid-template-columns:repeat(6,1fr)}
.trust{padding:24px 14px;text-align:center;border-right:1px solid rgba(255,255,255,.08)}
.trust:last-child{border-right:0}
.trust strong{display:block;font-size:.88rem;color:#f3f5f7}
.trust span{color:var(--gold2);font-size:1.25rem}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.service-card{
  min-height:430px;position:relative;overflow:hidden;border-radius:4px;
  background-size:cover;background-position:center;box-shadow:var(--shadow);
}
.service-card:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,8,10,.96),rgba(7,8,10,.08) 68%)}
.service-card:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.12);transition:.25s}
.service-card:hover:after{border:3px solid var(--gold)}
.service-copy{position:absolute;left:24px;right:24px;bottom:22px;z-index:2}
.service-copy p{color:#ced4da;font-size:.93rem}
.service-num{color:var(--gold2);font-size:.78rem;font-weight:900;letter-spacing:.13em}
.audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.audience{background:var(--panel);padding:28px;border:1px solid rgba(255,255,255,.08);border-radius:4px}
.audience .icon{font-size:2rem;color:var(--gold2);margin-bottom:18px}
.promise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.1)}
.promise{background:var(--coal);padding:38px}
.promise span{display:inline-grid;place-items:center;width:42px;height:42px;background:var(--gold);color:#111;font-weight:900;margin-bottom:22px}
.process{display:grid;grid-template-columns:repeat(5,1fr);position:relative}
.process:before{content:"";position:absolute;top:29px;left:10%;right:10%;height:2px;background:linear-gradient(90deg,var(--gold),rgba(200,154,61,.25))}
.step{position:relative;z-index:2;text-align:center;padding:0 10px}
.step-num{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;margin:0 auto 20px;background:#0e1115;border:2px solid var(--gold);font-weight:900;color:var(--gold2)}
.step p{font-size:.9rem;color:var(--muted)}
.quote{
  background:
    linear-gradient(90deg,rgba(8,9,11,.92),rgba(8,9,11,.4)),
    url('https://images.pexels.com/photos/15439962/pexels-photo-15439962.jpeg?auto=compress&cs=tinysrgb&w=2200') center/cover;
}
.quote-inner{display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:center}
.quote-card{background:rgba(12,14,18,.92);padding:34px;border:1px solid rgba(255,255,255,.1);box-shadow:var(--shadow)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.field{display:flex;flex-direction:column;gap:7px}
.field.full{grid-column:1/-1}
label{font-size:.83rem;font-weight:800}
input,select,textarea{width:100%;border:1px solid #3b424b;background:#13171c;color:white;padding:14px;border-radius:3px}
textarea{min-height:120px;resize:vertical}
.page-hero{
  min-height:62vh;display:flex;align-items:flex-end;padding:170px 0 80px;
  background:
    linear-gradient(90deg,rgba(7,8,10,.94),rgba(7,8,10,.55)),
    var(--page-image) center/cover;
}
.page-hero p{max-width:780px;color:#d7dce1;font-size:1.1rem}
.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.detail-card{background:#fff;color:#171a1e;padding:32px;border-top:5px solid var(--gold);box-shadow:0 12px 35px rgba(0,0,0,.12)}
.detail-card p{color:#5d646b}
.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.project-card{min-height:330px;position:relative;background-size:cover;background-position:center;overflow:hidden;border-radius:4px}
.project-card:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,8,10,.95),rgba(7,8,10,.06))}
.project-card div{position:absolute;z-index:2;left:24px;right:24px;bottom:22px}
.project-card small{color:var(--gold2);font-weight:900;text-transform:uppercase;letter-spacing:.12em}
.project-note{background:#12161b;border:1px solid rgba(255,255,255,.1);padding:22px;border-left:4px solid var(--gold);margin-bottom:34px}
.cta{padding:78px 0;background:linear-gradient(110deg,#d5a84d,#a97822);color:#111}
.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.footer{padding:58px 0 24px;background:#060709;border-top:1px solid rgba(255,255,255,.08)}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:38px}
.footer-logo{width:140px;margin-bottom:18px}
.footer h3{font-size:1rem;letter-spacing:.07em}
.footer p,.footer a{color:#aeb5bd}
.footer-bottom{margin-top:38px;padding-top:20px;border-top:1px solid rgba(255,255,255,.08);color:#747d86;font-size:.8rem}
.reveal{opacity:0;transform:translateY(22px);transition:.6s ease}
.reveal.visible{opacity:1;transform:none}
@media(max-width:960px){
  .nav-links{display:none;position:absolute;top:88px;left:0;right:0;background:#0c0f13;padding:25px;flex-direction:column;align-items:stretch}
  .nav-links.open{display:flex}.menu-btn{display:block}
  .split,.quote-inner{grid-template-columns:1fr}
  .service-grid,.audience-grid,.project-grid{grid-template-columns:repeat(2,1fr)}
  .trust-grid{grid-template-columns:repeat(3,1fr)}
  .promise-grid{grid-template-columns:1fr}
  .process{grid-template-columns:1fr 1fr;gap:26px}.process:before{display:none}
}
@media(max-width:650px){
  .brand-copy{display:none}.nav{height:82px}.site-header{background:rgba(8,10,12,.94)}
  .hero-inner{padding-top:140px}.hero-proof{display:grid;grid-template-columns:1fr 1fr}
  .section{padding:72px 0}.section-head{display:block}
  .service-grid,.audience-grid,.project-grid,.detail-grid,.form-grid{grid-template-columns:1fr}
  .field.full{grid-column:auto}.trust-grid{grid-template-columns:1fr 1fr}
  .process{grid-template-columns:1fr}.cta-inner{display:block}.cta-inner .btn{margin-top:16px}
  .footer-grid{grid-template-columns:1fr}.image-frame{min-height:390px}
}

.equipment-feature{
  display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:stretch;
}
.equipment-photo{
  min-height:560px;border-radius:5px;overflow:hidden;position:relative;
  background-size:cover;background-position:center;box-shadow:var(--shadow);
}
.equipment-photo:after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(0deg,rgba(7,8,10,.88),rgba(7,8,10,.08) 62%);
}
.equipment-photo-copy{
  position:absolute;left:26px;right:26px;bottom:24px;z-index:2;
}
.equipment-list{display:grid;gap:14px}
.equipment-item{
  display:grid;grid-template-columns:58px 1fr;gap:18px;align-items:start;
  background:var(--panel);padding:22px;border:1px solid rgba(255,255,255,.08);
}
.equipment-item .equipment-icon{
  width:58px;height:58px;display:grid;place-items:center;
  border:1px solid var(--gold);color:var(--gold2);font-weight:900;
}
.equipment-note{
  margin-top:20px;padding:18px 20px;border-left:4px solid var(--gold);
  background:rgba(255,255,255,.04);color:var(--muted);font-size:.91rem;
}
@media(max-width:960px){
  .equipment-feature{grid-template-columns:1fr}
}
@media(max-width:650px){
  .brand img{width:92px;height:64px}
  .nav{height:86px}
  .section{padding:78px 0}
}

/* Version 4 refinements */
.site-header .brand{
  min-width:190px;
}
.hero-v4{
  min-height:100vh;
  display:flex;
  align-items:flex-end;
  position:relative;
  isolation:isolate;
  background-image:
    linear-gradient(90deg,rgba(4,5,7,.95) 0%,rgba(4,5,7,.79) 35%,rgba(4,5,7,.32) 68%,rgba(4,5,7,.12) 100%),
    linear-gradient(0deg,rgba(4,5,7,.92),rgba(4,5,7,.04) 62%),
    url('assets/hero-truck-cat-actual-logo.png');
  background-size:cover;
  background-position:center;
}
.hero-v4:after{
  content:"";
  position:absolute;inset:0;z-index:-1;
  background:linear-gradient(120deg,transparent 0 65%,rgba(200,154,61,.16) 65% 66%,transparent 66%);
}
.hero-v4 .hero-inner{padding:180px 0 82px}
.hero-v4 h1{max-width:780px;font-size:clamp(3.4rem,6.3vw,6.6rem)}
.hero-v4 .hero-copy{max-width:700px}
.hero-v4 .gold-line{display:inline-block;width:78px;height:3px;background:var(--gold);margin:17px 0 22px}
.fleet-disclaimer{
  margin-top:18px;
  color:#bdc4cb;
  font-size:.82rem;
  max-width:720px;
}
.header-phone{
  color:var(--gold2);
  font-size:.86rem;
  font-weight:800;
  white-space:nowrap;
}
@media(max-width:1100px){
  .header-phone{display:none}
}
@media(max-width:650px){
  .brand img{width:132px;height:66px}
  .site-header .brand{min-width:140px}
  .hero-v4{background-position:60% center}
  .hero-v4 .hero-inner{padding-top:150px}
}

/* ================= VERSION 5 ================= */
.site-header{
  background:rgba(7,8,10,.97);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.site-header.scrolled{background:rgba(7,8,10,.98)}
.nav{height:92px}
.brand img{
  width:170px;
  height:76px;
  object-fit:contain;
  object-position:left center;
}
.site-header .brand{min-width:180px}
.nav-links{gap:24px}
.header-phone{color:var(--gold2);font-weight:900}
.hero-v5{
  min-height:calc(100vh - 92px);
  margin-top:92px;
  position:relative;
  display:flex;
  align-items:center;
  isolation:isolate;
  overflow:hidden;
  background:
    linear-gradient(90deg,rgba(3,4,6,.96) 0%,rgba(3,4,6,.83) 30%,rgba(3,4,6,.46) 50%,rgba(3,4,6,.14) 72%,rgba(3,4,6,.08) 100%),
    linear-gradient(0deg,rgba(3,4,6,.88),rgba(3,4,6,.02) 55%),
    url('assets/hero-v5-truck-cat.png') center/cover no-repeat;
}
.hero-v5:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(115deg,transparent 0 72%,rgba(200,154,61,.12) 72% 73%,transparent 73%);
}
.hero-v5 .hero-inner{
  width:min(92%,1200px);
  margin:auto;
  padding:76px 0 64px;
}
.hero-v5 .hero-copy-block{max-width:650px}
.hero-v5 h1{
  max-width:640px;
  font-size:clamp(3.6rem,6.4vw,6.8rem);
  line-height:.98;
  margin-bottom:18px;
}
.hero-v5 .hero-sub{
  max-width:600px;
  font-size:1.06rem;
  color:#e3e7eb;
}
.hero-v5 .gold-line{
  width:70px;height:3px;background:var(--gold);
  display:block;margin:15px 0 22px;
}
.v5-proof{
  margin-top:38px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  max-width:650px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.10);
}
.v5-proof div{
  padding:17px 16px;
  background:rgba(7,8,10,.74);
}
.v5-proof strong{display:block;color:var(--gold2);font-size:.92rem}
.v5-proof span{display:block;color:#c7cdd3;font-size:.76rem}
.hero-disclaimer{
  max-width:650px;
  margin-top:12px;
  color:#aeb5bd;
  font-size:.76rem;
}
.section{padding:110px 0}
.service-card,.project-card,.image-frame,.equipment-photo{border-radius:2px}
.btn{border-radius:2px}
@media(max-width:900px){
  .hero-v5{background-position:62% center}
  .hero-v5 .hero-copy-block{max-width:560px}
  .v5-proof{grid-template-columns:1fr}
}
@media(max-width:650px){
  .nav{height:82px}
  .hero-v5{margin-top:82px;min-height:auto;background-position:62% center}
  .hero-v5 .hero-inner{padding:100px 0 56px}
  .hero-v5 h1{font-size:clamp(3rem,14vw,4.7rem)}
  .brand img{width:132px;height:62px}
  .site-header .brand{min-width:135px}
}

/* ================= VERSION 6 — WORKING WEBSITE ================= */
.hero-v6{
  min-height:calc(100vh - 92px);
  margin-top:92px;
  display:flex;
  align-items:center;
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background:
    linear-gradient(90deg,rgba(4,5,7,.98) 0%,rgba(4,5,7,.90) 28%,rgba(4,5,7,.58) 46%,rgba(4,5,7,.12) 71%),
    linear-gradient(0deg,rgba(4,5,7,.78),rgba(4,5,7,.02) 55%),
    url('assets/hero-v8-final.jpg') right center / auto 92% no-repeat;
  background-color:#050608;
}
.hero-v6 .hero-inner{
  width:min(92%,1200px);
  margin:auto;
  padding:72px 0 58px;
}
.hero-v6 .hero-copy-block{max-width:625px}
.hero-v6 h1{
  font-size:clamp(3.5rem,6.25vw,6.65rem);
  line-height:.98;
  max-width:620px;
}
.hero-v6 .hero-sub{font-size:1.05rem;max-width:570px;color:#e5e8eb}
.hero-v6 .gold-line{display:block;width:72px;height:3px;background:var(--gold);margin:15px 0 22px}
.hero-v6 .hero-actions{margin-top:26px}
.v6-proof{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  max-width:625px;
  margin-top:35px;
  border:1px solid rgba(255,255,255,.10);
}
.v6-proof div{padding:15px;background:rgba(8,10,12,.78);border-right:1px solid rgba(255,255,255,.10)}
.v6-proof div:last-child{border-right:0}
.v6-proof strong{display:block;color:var(--gold2);font-size:.9rem}
.v6-proof span{display:block;color:#c5cbd1;font-size:.75rem}
.hero-fleet-note{max-width:625px;margin-top:10px;color:#a8b0b8;font-size:.74rem}
.quote{
  background:
    linear-gradient(90deg,rgba(7,8,10,.92),rgba(7,8,10,.56)),
    url('assets/small-site-estimate-bg.jpg') center/cover no-repeat !important;
}
.quote .quote-card{background:rgba(12,14,18,.95)}
@media(max-width:900px){
  .hero-v6{background-position:right center;background-size:auto 88%}
  .hero-v6 .hero-copy-block{max-width:550px}
}
@media(max-width:650px){
  .hero-v6{margin-top:82px;min-height:auto;background-position:72% center;background-size:auto 82%}
  .hero-v6 .hero-inner{padding:92px 0 54px}
  .hero-v6 h1{font-size:clamp(3rem,14vw,4.6rem)}
  .v6-proof{grid-template-columns:1fr}
  .v6-proof div{border-right:0;border-bottom:1px solid rgba(255,255,255,.10)}
}

/* VERSION 7 targeted image updates */
.image-frame img[src*="cat-299d3xe-mulching"]{
  object-position:center center;
}


/* ================= VERSION 8 REFINEMENTS ================= */
/* Larger, cleaner header logo across the website */
.brand img{width:194px;height:82px}
.site-header .brand{min-width:202px}

/* Correct equipment image: CAT 299D3 XE forestry mulcher, not the small excavator */
.equipment-photo{background-position:center center}

@media(max-width:1100px){
  .brand img{width:174px;height:76px}
  .site-header .brand{min-width:180px}
}
@media(max-width:650px){
  .brand img{width:142px;height:68px}
  .site-header .brand{min-width:148px}
}

/* ===== APPROVED IMAGE ASSET UPDATE ===== */
.hero-v6{
  background:
    linear-gradient(90deg,rgba(4,5,7,.97) 0%,rgba(4,5,7,.86) 27%,rgba(4,5,7,.48) 47%,rgba(4,5,7,.08) 72%),
    linear-gradient(0deg,rgba(4,5,7,.56),rgba(4,5,7,.02) 58%),
    url('assets/hero-approved-truck-trailer-cat-bright.png') center center / cover no-repeat;
}
.home-services{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.home-services .service-card{min-height:390px}
.home-services .service-copy{left:18px;right:18px;bottom:18px}
.home-services .service-copy h3{font-size:1.3rem}
.home-services .service-copy p{font-size:.86rem}
.core-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.service-detail-card{padding:0;overflow:hidden}
.service-detail-card img{width:100%;height:250px;object-fit:cover;display:block}
.service-detail-card>div{padding:26px}
.project-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
@media(max-width:1180px){
  .home-services,.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
  .hero-v6{background-position:58% center;background-size:cover}
  .home-services,.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .core-detail-grid{grid-template-columns:1fr}
}
@media(max-width:650px){
  .hero-v6{background-position:62% center;background-size:cover}
  .home-services,.project-grid{grid-template-columns:1fr}
}


/* ===== HOMEPAGE POLISH — APPROVED ASSETS ===== */
/* Header logo increased approximately 18% from the previous approved size. */
.brand img{width:229px;height:97px}
.site-header .brand{min-width:237px}

/* Slightly brighter approved hero while preserving text readability. */
.hero-v6{
  background:
    linear-gradient(90deg,rgba(4,5,7,.94) 0%,rgba(4,5,7,.78) 27%,rgba(4,5,7,.37) 47%,rgba(4,5,7,.04) 72%),
    linear-gradient(0deg,rgba(4,5,7,.42),rgba(4,5,7,.00) 58%),
    url('assets/hero-approved-truck-trailer-cat-bright.png') center center / cover no-repeat;
}

/* Use the approved truck, trailer, and CAT image in the estimate CTA. */
.quote{
  background:
    linear-gradient(90deg,rgba(7,8,10,.91),rgba(7,8,10,.48)),
    url('assets/hero-approved-truck-trailer-cat-bright.png') center center / cover no-repeat !important;
}

@media(max-width:1100px){
  .brand img{width:205px;height:90px}
  .site-header .brand{min-width:212px}
}
@media(max-width:650px){
  .brand img{width:168px;height:80px}
  .site-header .brand{min-width:174px}
}

/* ===== PLANNED FLEET IMAGE + DISCLAIMER CLEANUP ===== */
.equipment-photo[style*="planned-fleet-site-grading"]{
  background-size:cover;
  background-position:center center;
}


/* ===== FINAL POLISH: HEADER, SERVICE READABILITY, PLANNED FLEET IMAGE ===== */
/* Slightly reduce the desktop logo so the top of the N remains fully visible. */
.brand img{width:194px;height:86px;object-fit:contain;object-position:left center}
.site-header .brand{min-width:202px}

/* Ensure all service-card wording remains readable over every approved photo. */
.service-card:before{
  background:linear-gradient(0deg,rgba(7,8,10,.98) 0%,rgba(7,8,10,.88) 42%,rgba(7,8,10,.28) 78%,rgba(7,8,10,.08) 100%);
}
.service-card .service-copy h3{color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.85)}
.service-card .service-copy p{color:#f0f2f4;text-shadow:0 2px 8px rgba(0,0,0,.85)}
.service-card .service-num{text-shadow:0 2px 8px rgba(0,0,0,.85)}

/* Use the higher-resolution grading image and show more of the scene. */
.equipment-photo[style*="service-site-grading"]{
  min-height:500px;
  background-size:cover;
  background-position:center 58%;
}

@media(max-width:1100px){
  .brand img{width:176px;height:78px}
  .site-header .brand{min-width:184px}
}
@media(max-width:650px){
  .brand img{width:138px;height:66px}
  .site-header .brand{min-width:144px}
}


/* ===== HOMEPAGE FINAL VISUAL REFINEMENTS ===== */
/* Keep the header logo fully inside the navigation bar. */
.brand img{
  width:176px;
  height:76px;
  object-fit:contain;
  object-position:left center;
}
.site-header .brand{min-width:184px}

/* Preserve the service photography and use only a transparent lower gradient. */
.service-card:before{
  background:linear-gradient(
    0deg,
    rgba(7,8,10,.80) 0%,
    rgba(7,8,10,.58) 28%,
    rgba(7,8,10,.18) 55%,
    rgba(7,8,10,0) 76%
  );
}
.service-card .service-copy h3,
.service-card .service-copy p,
.service-card .service-num{
  text-shadow:0 2px 8px rgba(0,0,0,.92);
}

/* Show the full, high-resolution grading scene instead of a tight crop. */
.equipment-photo[style*="planned-fleet-site-grading"]{
  min-height:430px;
  background-color:#11151a;
  background-size:contain;
  background-repeat:no-repeat;
  background-position:center center;
}

/* Close the homepage with the approved CAT 310 Florida sunset image. */
.quote{
  background:
    linear-gradient(90deg,rgba(7,8,10,.90) 0%,rgba(7,8,10,.68) 42%,rgba(7,8,10,.28) 72%,rgba(7,8,10,.18) 100%),
    url('assets/cat-310-florida-sunset.png') center center / cover no-repeat !important;
}

@media(max-width:1100px){
  .brand img{width:160px;height:72px}
  .site-header .brand{min-width:168px}
  .equipment-photo[style*="planned-fleet-site-grading"]{min-height:380px}
}
@media(max-width:650px){
  .brand img{width:128px;height:60px}
  .site-header .brand{min-width:134px}
  .equipment-photo[style*="planned-fleet-site-grading"]{
    min-height:300px;
    background-size:cover;
  }
}

/* Service-photo correction: zoom out once, without tiling or changing the cards. */
.home-services .service-card{
  background-repeat:no-repeat !important;
  background-color:#11151a;
  background-position:center top !important;
}
.home-services .service-card:nth-child(1){background-size:auto 58% !important;}
.home-services .service-card:nth-child(2){background-size:auto 72% !important;}
.home-services .service-card:nth-child(3){background-size:auto 58% !important;}
.home-services .service-card:nth-child(4){background-size:auto 66% !important;}
.home-services .service-card:nth-child(5){background-size:auto 58% !important;}


/* ===== VERIFIED SERVICE CARD PHOTO FILL FIX =====
   Keep the approved zoomed-out photo as the top layer while the same image
   fills the card underneath, eliminating the solid black lower panel. */
.home-services .service-card{
  background-repeat:no-repeat, no-repeat !important;
  background-position:center top, center center !important;
  background-color:transparent !important;
}
.home-services .service-card:nth-child(1){background-size:auto 58%, cover !important;}
.home-services .service-card:nth-child(2){background-size:auto 72%, cover !important;}
.home-services .service-card:nth-child(3){background-size:auto 58%, cover !important;}
.home-services .service-card:nth-child(4){background-size:auto 66%, cover !important;}
.home-services .service-card:nth-child(5){background-size:auto 58%, cover !important;}
.home-services .service-card:before{
  background:linear-gradient(0deg,rgba(7,8,10,.72) 0%,rgba(7,8,10,.42) 26%,rgba(7,8,10,.10) 52%,rgba(7,8,10,0) 72%) !important;
}


/* ===== SINGLE-IMAGE SERVICE CARD FIX =====
   Use one continuous photograph per card. This removes the duplicate image
   seam and the dark lower panel caused by the earlier two-layer approach. */
.home-services .service-card{
  background-repeat:no-repeat !important;
  background-size:cover !important;
  background-color:#11151a !important;
}
.home-services .service-card:nth-child(1){background-position:center 42% !important;}
.home-services .service-card:nth-child(2){background-position:center 50% !important;}
.home-services .service-card:nth-child(3){background-position:center 50% !important;}
.home-services .service-card:nth-child(4){background-position:center 50% !important;}
.home-services .service-card:nth-child(5){background-position:center 48% !important;}
.home-services .service-card:before{
  background:linear-gradient(0deg,rgba(7,8,10,.66) 0%,rgba(7,8,10,.38) 28%,rgba(7,8,10,.10) 52%,rgba(7,8,10,0) 72%) !important;
}


/* ===== OPTION 4: CLEAN SERVICE CARDS =====
   Photo-led cards with no description copy and a simple Explore Service link. */
.home-services .service-card{
  min-height:420px !important;
  display:block;
  color:#fff;
  text-decoration:none;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  background-color:#11151a !important;
  transform:translateZ(0);
  transition:transform .35s ease, box-shadow .35s ease;
}
.home-services .service-card:before{
  background:linear-gradient(
    0deg,
    rgba(6,7,9,.88) 0%,
    rgba(6,7,9,.62) 20%,
    rgba(6,7,9,.18) 43%,
    rgba(6,7,9,0) 62%
  ) !important;
  z-index:1;
}
.home-services .service-card:after{
  z-index:3;
  border:1px solid rgba(255,255,255,.18);
}
.home-services .service-card:hover{
  transform:translateY(-5px);
  box-shadow:0 20px 45px rgba(0,0,0,.34);
}
.home-services .service-card:hover:after{
  border:2px solid var(--gold);
}
.home-services .service-copy{
  left:22px;
  right:22px;
  bottom:24px;
  z-index:2;
}
.home-services .service-num{
  margin-bottom:9px;
  font-size:.76rem;
  line-height:1.35;
  text-shadow:0 2px 8px rgba(0,0,0,.9);
}
.home-services .service-copy h3{
  margin:0 0 18px;
  font-size:clamp(1.25rem,1.45vw,1.65rem);
  line-height:1.06;
  color:#fff;
  text-shadow:0 2px 10px rgba(0,0,0,.92);
}
.home-services .service-link{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:var(--gold2);
  font-size:.82rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-shadow:0 2px 8px rgba(0,0,0,.9);
}
.home-services .service-link b{
  font-size:1.05rem;
  transition:transform .25s ease;
}
.home-services .service-card:hover .service-link b{
  transform:translateX(5px);
}
@media(max-width:1180px){
  .home-services .service-card{min-height:400px !important;}
}
@media(max-width:650px){
  .home-services .service-card{min-height:360px !important;}
  .home-services .service-copy{left:20px;right:20px;bottom:22px;}
}


/* ===== EQUAL FULL-WIDTH SERVICE PHOTOS =====
   Each service uses the same fixed photo window with no blank space above.
   The text sits in a consistent panel below the image. */
.home-services .service-card{
  min-height:0 !important;
  height:500px !important;
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
  background:#090c10 !important;
  background-image:none !important;
  border-radius:4px !important;
}
.home-services .service-card:before{display:none !important;}
.home-services .service-photo{
  display:block;
  width:100%;
  height:315px;
  flex:0 0 315px;
  object-fit:cover;
  object-position:center;
  transition:transform .45s ease;
}
.home-services .service-card:nth-child(1) .service-photo{object-position:center 48%;}
.home-services .service-card:nth-child(2) .service-photo{object-position:center 50%;}
.home-services .service-card:nth-child(3) .service-photo{object-position:center 50%;}
.home-services .service-card:nth-child(4) .service-photo{object-position:center 52%;}
.home-services .service-card:nth-child(5) .service-photo{object-position:center 50%;}
.home-services .service-copy{
  position:relative !important;
  inset:auto !important;
  flex:1;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  padding:20px 22px 22px;
  background:linear-gradient(180deg,#101419 0%,#07090c 100%);
  z-index:2;
}
.home-services .service-num{margin:0 0 8px !important;}
.home-services .service-copy h3{margin:0 0 16px !important;}
.home-services .service-link{margin-top:auto;}
.home-services .service-card:hover .service-photo{transform:scale(1.035);}
@media(max-width:1180px){
  .home-services .service-card{height:480px !important;}
  .home-services .service-photo{height:295px;flex-basis:295px;}
}
@media(max-width:650px){
  .home-services .service-card{height:455px !important;}
  .home-services .service-photo{height:275px;flex-basis:275px;}
}

/* ===== FINAL SERVICE LINK ALIGNMENT =====
   Pin every Explore Service link to the same baseline so longer titles
   cannot push an individual link lower than the others. */
.home-services .service-copy{
  position:relative !important;
  padding-bottom:64px !important;
}
.home-services .service-link{
  position:absolute !important;
  left:22px !important;
  bottom:24px !important;
  margin:0 !important;
}
@media(max-width:650px){
  .home-services .service-link{
    left:20px !important;
    bottom:22px !important;
  }
}

/* ===== SITE PREP LINK MICRO-ALIGNMENT =====
   The three-line Site Preparation title needs its CTA slightly higher
   to visually match the neighboring service cards. */
.home-services .service-card:nth-child(3) .service-link{
  bottom:52px !important;
}
@media(max-width:650px){
  .home-services .service-card:nth-child(3) .service-link{
    bottom:42px !important;
  }
}

/* ===== OUR STORY PAGE ===== */
.story-hero{
  padding:176px 0 112px;
  min-height:100vh;
  display:flex;
  align-items:center;
  position:relative;
  overflow:hidden;
}
.story-hero:before{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-210px;
  top:110px;
  border:1px solid rgba(200,154,61,.16);
  transform:rotate(18deg);
}
.story-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);
  gap:72px;
  align-items:center;
  position:relative;
  z-index:1;
}
.story-copy h1{
  font-size:clamp(3rem,5.4vw,5.7rem);
  max-width:780px;
  margin:18px 0 30px;
}
.story-copy>p{
  max-width:690px;
  color:#c6cdd4;
  font-size:1.02rem;
}
.story-copy strong{color:#fff}
.story-purpose{
  margin-top:28px!important;
  padding-left:18px;
  border-left:3px solid var(--gold);
  color:#eceff2!important;
}
.story-tagline{
  color:var(--gold2)!important;
  font-weight:900;
  letter-spacing:.035em;
  margin-top:25px!important;
}
.story-photo-wrap{
  position:relative;
  border-radius:6px;
  overflow:visible;
}
.story-photo-wrap img{
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
  object-position:center center;
  border-radius:6px;
  box-shadow:0 34px 80px rgba(0,0,0,.42);
  position:relative;
  z-index:2;
}
.story-photo-wrap:before{
  content:"";
  position:absolute;
  inset:18px -18px -18px 18px;
  border:1px solid rgba(228,189,112,.55);
  border-radius:6px;
  z-index:1;
}
.story-photo-accent{
  position:absolute;
  left:-22px;
  bottom:48px;
  width:5px;
  height:126px;
  background:var(--gold);
  z-index:3;
}
.story-values{padding-top:106px;padding-bottom:118px}
.story-section-head{max-width:820px;margin-bottom:54px}
.story-section-head h2{margin-top:12px}
.story-section-head>p{max-width:720px;color:#59616a;font-size:1.04rem}
.story-value-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}
.story-value-card{
  background:#fff;
  padding:34px 28px 32px;
  border-top:4px solid var(--gold);
  box-shadow:0 16px 38px rgba(17,20,25,.1);
  min-height:285px;
}
.story-value-card span{
  display:block;
  color:var(--gold);
  font-size:.77rem;
  letter-spacing:.16em;
  font-weight:900;
  margin-bottom:25px;
}
.story-value-card h3{font-size:1.38rem;margin-bottom:15px}
.story-value-card p{color:#5d646b;margin:0;font-size:.94rem}
.story-cta{padding:88px 0}
.story-cta .cta-inner>div{max-width:820px}
.story-cta h2{font-size:clamp(2.35rem,4.2vw,4.2rem);margin:8px 0 15px}
.story-cta p{max-width:720px;margin:0;color:#2e2618}
.story-cta-label{color:#2e2618}
.story-cta-btn{background:#111;color:#fff;border-color:#111;white-space:nowrap}
.story-cta-btn:hover{background:#242424;transform:translateY(-2px)}
@media(max-width:1000px){
  .story-hero{min-height:auto;padding:150px 0 92px}
  .story-hero-grid{grid-template-columns:1fr;gap:55px}
  .story-photo-wrap{max-width:720px;width:100%;margin:0 auto}
  .story-photo-wrap img{aspect-ratio:5/4;object-position:center 43%}
  .story-value-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:650px){
  .story-hero{padding:122px 0 76px}
  .story-copy h1{font-size:clamp(2.65rem,13vw,4rem)}
  .story-copy>p{font-size:.97rem}
  .story-photo-wrap:before{inset:10px -9px -10px 9px}
  .story-photo-accent{display:none}
  .story-photo-wrap img{aspect-ratio:4/5;object-position:center center}
  .story-value-grid{grid-template-columns:1fr}
  .story-value-card{min-height:auto}
  .story-cta .cta-inner{display:block}
  .story-cta-btn{margin-top:24px}
}


/* ===== OUR STORY FINAL REFINEMENTS =====
   Tighter opening section, stronger family-photo emphasis,
   improved readability, and a slightly larger header logo. */
@media(min-width:1101px){
  .brand img{width:184px;height:80px}
  .site-header .brand{min-width:192px}
}
.story-hero{
  min-height:auto;
  padding:148px 0 84px;
}
.story-hero-grid{
  grid-template-columns:minmax(0,.92fr) minmax(460px,1.08fr);
  gap:58px;
}
.story-copy h1{
  margin:15px 0 24px;
}
.story-copy>p{
  max-width:650px;
  font-size:1.08rem;
  line-height:1.72;
  margin-bottom:16px;
}
.story-purpose{
  margin-top:22px!important;
}
.story-tagline{
  margin-top:20px!important;
}
.story-photo-wrap img{
  aspect-ratio:5/6;
}
.story-values{
  padding-top:94px;
  padding-bottom:106px;
}
.story-section-head{
  margin-bottom:46px;
}
.story-section-head h2{
  max-width:760px;
}
@media(max-width:1000px){
  .story-hero{padding:132px 0 80px}
  .story-hero-grid{gap:46px}
  .story-copy>p{max-width:760px;font-size:1.04rem}
  .story-photo-wrap{max-width:760px}
  .story-photo-wrap img{aspect-ratio:5/4}
}
@media(max-width:650px){
  .story-hero{padding:112px 0 66px}
  .story-copy>p{font-size:1rem;line-height:1.68}
  .story-values{padding-top:76px;padding-bottom:84px}
  .story-section-head{margin-bottom:36px}
  .story-photo-wrap img{aspect-ratio:4/5}
}

/* ===== OUR STORY PHOTO FRAME FINAL POLISH =====
   Keeps the approved family image fully contained inside an even gold frame. */
.story-photo-wrap{
  padding:20px;
  border:1px solid rgba(228,189,112,.58);
  border-radius:6px;
  background:rgba(15,18,22,.72);
  box-sizing:border-box;
  overflow:visible;
}
.story-photo-wrap:before{
  content:none;
  display:none;
}
.story-photo-wrap img{
  display:block;
  width:100%;
  height:auto;
  margin:0 auto;
  border-radius:6px;
  box-shadow:0 14px 34px rgba(0,0,0,.24);
  object-fit:cover;
  object-position:center center;
}
.story-photo-accent{
  left:-23px;
}
@media(max-width:650px){
  .story-photo-wrap{
    padding:16px;
  }
}

/* Services page upgrade — preserves the approved site styling while adding richer service content. */
.services-page-hero .services-hero-btn{margin-top:18px}
.services-intro{padding:92px 0}
.services-intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:start}
.services-intro h2{font-size:clamp(2.4rem,4.4vw,4.6rem);max-width:620px}
.services-intro-grid>div:last-child{padding-top:25px;font-size:1.06rem;color:#4f565d}
.services-intro-note{border-left:4px solid var(--gold);padding:15px 0 15px 20px;margin-top:24px;font-weight:700;color:#24292f}
.service-feature{padding:112px 0;border-top:1px solid rgba(255,255,255,.07)}
.service-feature-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:66px;align-items:center}
.service-feature-grid.reverse .service-visual{order:2}
.service-feature-grid.reverse .service-feature-copy{order:1}
.service-visual{margin:0;position:relative;background:#0b0d10;box-shadow:var(--shadow);overflow:hidden;border:1px solid rgba(255,255,255,.12)}
.service-visual:after{content:"";position:absolute;inset:0 0 45px 0;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.07)}
.service-visual img{height:590px;object-fit:cover;transition:transform .45s ease}
.service-visual:hover img{transform:scale(1.025)}
.service-visual figcaption{min-height:45px;padding:13px 17px;background:#0c0f13;color:#929aa3;font-size:.75rem;font-style:italic;line-height:1.35;border-top:1px solid rgba(255,255,255,.08)}
.service-feature-copy h2{font-size:clamp(2.35rem,4vw,4.35rem);max-width:700px;margin-top:10px}
.service-lead{font-size:1.04rem;color:#c5cbd2;max-width:720px;margin-bottom:30px}
.service-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:28px 0 18px}
.service-info{padding:24px 24px 20px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.09);border-top:3px solid rgba(200,154,61,.72)}
.service-info h3{font-size:.96rem;letter-spacing:.04em;text-transform:uppercase;margin-bottom:14px;color:#fff}
.service-info ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.service-info li{position:relative;padding-left:17px;color:#b9c0c8;font-size:.9rem;line-height:1.45}
.service-info li:before{content:"";position:absolute;left:0;top:.62em;width:6px;height:6px;background:var(--gold);transform:rotate(45deg)}
.service-info.result-box{background:rgba(200,154,61,.08)}
.service-info .check-list li{padding-left:22px}
.service-info .check-list li:before{content:"✓";top:0;width:auto;height:auto;background:none;transform:none;color:var(--gold2);font-weight:900}
.why-matters{margin:18px 0;padding:20px 22px;border-left:4px solid var(--gold);background:rgba(255,255,255,.04)}
.why-matters span{display:block;color:var(--gold2);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.15em;margin-bottom:6px}
.why-matters p{margin:0;color:#bfc6ce;font-size:.93rem}
.service-approach{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin:22px 0 25px}
.service-approach strong{font-size:.75rem;text-transform:uppercase;letter-spacing:.13em;color:#fff;margin-right:4px}
.service-approach span{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.035);padding:7px 10px;color:#adb5be;font-size:.76rem}
.service-cta{display:inline-flex;align-items:center;gap:11px;color:var(--gold2);font-weight:900;font-size:.9rem;letter-spacing:.02em;border-bottom:1px solid rgba(228,189,112,.45);padding-bottom:5px}
.service-cta b{transition:transform .2s ease}
.service-cta:hover b{transform:translateX(5px)}
.services-closing .cta-inner>div{max-width:820px}
.services-closing h2{font-size:clamp(2.25rem,4vw,4rem);margin-bottom:12px}
.services-closing p{max-width:790px;margin-bottom:0}
.closing-eyebrow{color:#34230a;margin-bottom:8px}
@media(max-width:1050px){
  .service-feature-grid{grid-template-columns:1fr;gap:38px}
  .service-feature-grid.reverse .service-visual,.service-feature-grid.reverse .service-feature-copy{order:initial}
  .service-visual img{height:520px}
  .services-intro-grid{gap:42px}
}
@media(max-width:700px){
  .services-intro{padding:72px 0}
  .services-intro-grid{grid-template-columns:1fr;gap:12px}
  .services-intro-grid>div:last-child{padding-top:0}
  .service-feature{padding:76px 0}
  .service-feature-grid{gap:30px}
  .service-visual img{height:340px}
  .service-info-grid{grid-template-columns:1fr}
  .service-feature-copy h2{font-size:2.35rem}
  .service-approach{align-items:flex-start}
  .service-approach strong{width:100%;margin-bottom:3px}
}

/* Keep longer navigation labels on one line while preserving the mobile menu. */
@media(max-width:1280px) and (min-width:961px){
  .nav{gap:14px}
  .nav-links{gap:15px}
  .nav-links>a:not(.btn){font-size:.8rem}
  .header-phone{display:none}
  .nav-links .btn{min-height:46px;padding:0 14px;font-size:.76rem;white-space:nowrap}
  .brand img{width:160px}
}

/* ===== THE NEW LEGACY DIFFERENCE ===== */
.difference-hero{
  min-height:78vh;margin-top:92px;display:flex;align-items:flex-end;position:relative;isolation:isolate;
  background:
    linear-gradient(90deg,rgba(5,6,8,.96) 0%,rgba(5,6,8,.80) 40%,rgba(5,6,8,.34) 72%,rgba(5,6,8,.16) 100%),
    linear-gradient(0deg,rgba(5,6,8,.86),rgba(5,6,8,.05) 58%),
    url('assets/new-legacy-difference-cat.jpg') center 55% / cover no-repeat;
}
.difference-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(120deg,transparent 0 69%,rgba(200,154,61,.14) 69% 70%,transparent 70%)}
.difference-hero-inner{padding:110px 0 78px}
.difference-hero h1{font-size:clamp(3.25rem,6.6vw,6.8rem);max-width:850px}
.difference-hero h1 span{color:var(--gold2)}
.difference-hero p{font-size:clamp(1.04rem,1.6vw,1.25rem);max-width:720px;color:#e1e5e9}
.difference-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.difference-card{background:#fff;padding:34px 28px;border-top:4px solid var(--gold);box-shadow:0 14px 36px rgba(0,0,0,.12);transition:.24s ease}
.difference-card:hover{transform:translateY(-6px);box-shadow:0 20px 45px rgba(0,0,0,.18)}
.difference-card span{display:inline-grid;place-items:center;width:42px;height:42px;background:#111;color:var(--gold2);font-weight:900;margin-bottom:22px}
.difference-card h3{font-size:1.35rem}
.difference-card p{color:#5d646b;margin-bottom:0}
.promise-section{position:relative;overflow:hidden}
.promise-section:after{content:"";position:absolute;right:-10%;top:-40%;width:55%;height:180%;border:1px solid rgba(200,154,61,.2);transform:rotate(16deg)}
.promise-feature{position:relative;z-index:1;max-width:920px;text-align:center}
.promise-label{display:inline-block;color:var(--gold2);text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:900;margin-bottom:18px}
.promise-feature h2{max-width:820px;margin-left:auto;margin-right:auto}
.promise-lead{font-size:1.18rem;color:#d6dbe0;max-width:850px;margin:0 auto 34px}
.promise-lines{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.12);margin:0 auto 30px}
.promise-lines p{background:#111419;padding:20px 12px;margin:0;color:#fff;font-weight:800}
.promise-feature>strong{font-size:1.25rem;color:var(--gold2)}
.difference-process .step h3{font-size:1.08rem}
.legacy-start-inner{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}
.legacy-start-inner p{font-size:1.08rem;color:#454b51}
.legacy-start-inner strong{color:#15181c}
.difference-cta .cta-inner>div{max-width:820px}
.dark-eyebrow{color:#292014}
.difference-cta-btn{background:#111;color:#fff;border:1px solid #111;white-space:nowrap}
.difference-cta-btn:hover{background:#fff;color:#111;transform:translateY(-2px)}
@media(max-width:1100px){
  .nav-links{gap:17px}.nav-links>a:not(.btn){font-size:.82rem}
  .difference-grid{grid-template-columns:repeat(2,1fr)}
  .promise-lines{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  .difference-hero{background-position:58% center}
  .legacy-start-inner{grid-template-columns:1fr;gap:25px}
}
@media(max-width:650px){
  .difference-hero{margin-top:82px;min-height:680px;background-position:63% center}
  .difference-hero-inner{padding:105px 0 58px}
  .difference-grid,.promise-lines{grid-template-columns:1fr}
  .difference-card{padding:28px 24px}
  .promise-feature{text-align:left}
  .difference-cta .cta-inner{display:block}
  .difference-cta-btn{margin-top:18px;white-space:normal}
}

/* ===== v1.2 HERO ZOOM-OUT ===== */
/* Keep the approved Ford/trailer/CAT image, but show more of the full composition like the earlier hero. */
.hero-v6{
  background-color:#07080a;
  background-image:
    linear-gradient(90deg,rgba(4,5,7,.94) 0%,rgba(4,5,7,.78) 27%,rgba(4,5,7,.37) 47%,rgba(4,5,7,.04) 72%),
    linear-gradient(0deg,rgba(4,5,7,.42),rgba(4,5,7,.00) 58%),
    url('assets/hero-approved-truck-trailer-cat-bright.png');
  background-repeat:no-repeat;
  background-position:center center;
  background-size:100% 100%,100% 100%,auto 78%;
}
@media(max-width:900px){
  .hero-v6{background-position:center center;background-size:100% 100%,100% 100%,auto 82%;}
}
@media(max-width:650px){
  .hero-v6{background-position:60% center;background-size:100% 100%,100% 100%,auto 86%;}
}

/* ===== v1.3 HERO FURTHER ZOOM-OUT ===== */
/* Pull the desktop hero farther back while retaining the same approved image and overlays. */
.hero-v6{
  background-size:100% 100%,100% 100%,auto 66%;
  background-position:center center;
}
@media(max-width:900px){
  .hero-v6{background-size:100% 100%,100% 100%,auto 72%;background-position:center center;}
}
@media(max-width:650px){
  .hero-v6{background-size:100% 100%,100% 100%,auto 80%;background-position:60% center;}
}


/* ===== v1.5 EXACT APPROVED HERO COMPOSITION ===== */
/* Uses the approved composed hero artwork directly below the live site header. */
.hero-v6{
  min-height:0;
  height:auto;
  aspect-ratio:1681 / 836;
  margin-top:92px;
  display:block;
  position:relative;
  background:url('assets/hero-v15-exact.png') center top / 100% 100% no-repeat !important;
}
.hero-v6 .hero-inner{visibility:hidden;pointer-events:none;padding:0;width:100%;height:100%;}
@media(max-width:900px){
  .hero-v6{margin-top:92px;aspect-ratio:1681 / 836;background-size:cover !important;background-position:center top !important;}
}
@media(max-width:650px){
  .hero-v6{margin-top:82px;min-height:560px;aspect-ratio:auto;background-size:cover !important;background-position:center top !important;}
}


/* ===== v1.6 FUNCTIONAL HERO + STORM RESPONSE ===== */
.hero-v6 .hero-hotspot{position:absolute;display:block;z-index:20;cursor:pointer;}
.hero-v6 .hero-hotspot-estimate{left:2.7%;top:81.4%;width:20.7%;height:7.2%;}
.hero-v6 .hero-hotspot-services{left:24.6%;top:81.4%;width:12.7%;height:7.2%;}
.hero-v6 .hero-storm-label{
  position:absolute;z-index:19;left:2.7%;top:75.0%;
  color:#e8bd62;font-weight:800;font-size:clamp(12px,1.05vw,18px);
  letter-spacing:.04em;text-transform:uppercase;
  text-shadow:0 2px 4px rgba(0,0,0,.9);
}
@media(max-width:650px){
  .hero-v6 .hero-storm-label{left:3%;top:74.5%;font-size:12px;}
}

/* ===== v2.7 MOBILE HERO FIX =====
   Desktop keeps the approved composed hero exactly as-is.
   Phones use the clean truck/equipment photo with live responsive text/buttons. */
@media(max-width:650px){
  .hero-v6{
    margin-top:82px;
    min-height:0;
    height:auto;
    aspect-ratio:auto;
    display:flex;
    align-items:flex-end;
    background-image:
      linear-gradient(180deg,rgba(5,6,8,.08) 0%,rgba(5,6,8,.22) 32%,rgba(5,6,8,.88) 67%,#050608 100%),
      url('assets/hero-approved-truck-trailer-cat-bright.png') !important;
    background-size:100% 100%,auto 48% !important;
    background-position:center center,47% 8% !important;
    background-repeat:no-repeat !important;
    background-color:#050608 !important;
    padding-top:270px;
  }
  .hero-v6 .hero-inner{
    visibility:visible;
    pointer-events:auto;
    width:100%;
    height:auto;
    padding:34px 22px 42px;
    margin:0;
  }
  .hero-v6 .hero-copy-block{max-width:none;width:100%}
  .hero-v6 .eyebrow{font-size:.72rem;line-height:1.35;letter-spacing:.13em}
  .hero-v6 .gold-line{margin:12px 0 16px;width:58px}
  .hero-v6 h1{
    font-size:clamp(2.55rem,12vw,3.65rem);
    line-height:.96;
    max-width:100%;
    margin-bottom:18px;
  }
  .hero-v6 .hero-sub{
    font-size:.98rem;
    line-height:1.55;
    max-width:100%;
  }
  .hero-v6 .hero-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:11px;
    margin-top:22px;
  }
  .hero-v6 .hero-actions .btn{width:100%;text-align:center;padding:15px 16px}
  .hero-v6 .v6-proof{
    grid-template-columns:repeat(3,1fr);
    width:100%;
    margin-top:25px;
  }
  .hero-v6 .v6-proof div{
    padding:11px 7px;
    border-right:1px solid rgba(255,255,255,.10);
    border-bottom:0;
  }
  .hero-v6 .v6-proof strong{font-size:.73rem}
  .hero-v6 .v6-proof span{font-size:.63rem;line-height:1.25}
  .hero-v6 .hero-hotspot{display:none !important}
}

/* ===== v2.9 MOBILE HERO — SHOW FULL APPROVED DESKTOP ARTWORK =====
   On phones, preserve the entire approved hero composition instead of cropping/zooming it. */
@media(max-width:650px){
  .hero-v6{
    margin-top:82px !important;
    min-height:0 !important;
    height:auto !important;
    aspect-ratio:1681 / 836 !important;
    display:block !important;
    padding-top:0 !important;
    background:url('assets/hero-v15-exact.png') center top / contain no-repeat !important;
    background-color:#050608 !important;
  }
  .hero-v6 .hero-inner{
    visibility:hidden !important;
    pointer-events:none !important;
    width:100% !important;
    height:100% !important;
    padding:0 !important;
    margin:0 !important;
  }
  .hero-v6 .hero-hotspot{display:block !important;}
  .hero-v6 .hero-hotspot-estimate{left:2.7% !important;top:81.4% !important;width:20.7% !important;height:7.2% !important;}
  .hero-v6 .hero-hotspot-services{left:24.6% !important;top:81.4% !important;width:12.7% !important;height:7.2% !important;}
}

/* ===== v3.0 MOBILE PAGE REPAIR — OUR STORY + CONTACT ===== */
@media(max-width:650px){
  html,body{overflow-x:hidden !important;max-width:100% !important;}
  .container{width:calc(100% - 40px) !important;max-width:none !important;margin-left:auto !important;margin-right:auto !important;}

  /* Our Story: true single-column mobile layout */
  .story-hero{padding:118px 0 64px !important;min-height:0 !important;display:block !important;overflow:hidden !important;}
  .story-hero-grid{display:flex !important;flex-direction:column !important;gap:34px !important;width:100% !important;max-width:100% !important;}
  .story-copy{width:100% !important;max-width:100% !important;min-width:0 !important;}
  .story-copy .eyebrow{font-size:.72rem !important;line-height:1.45 !important;letter-spacing:.16em !important;}
  .story-copy h1{font-size:clamp(2.65rem,12vw,3.45rem) !important;line-height:1.01 !important;max-width:100% !important;width:100% !important;margin:14px 0 24px !important;overflow-wrap:normal !important;word-break:normal !important;}
  .story-copy>p,.story-purpose,.story-tagline{width:100% !important;max-width:100% !important;font-size:1rem !important;line-height:1.65 !important;overflow-wrap:normal !important;word-break:normal !important;white-space:normal !important;}
  .story-purpose{padding-left:14px !important;margin-top:20px !important;}
  .story-photo-wrap{order:2 !important;width:100% !important;max-width:100% !important;padding:10px !important;margin:2px 0 0 !important;overflow:hidden !important;}
  .story-photo-wrap img{width:100% !important;height:auto !important;aspect-ratio:auto !important;object-fit:contain !important;object-position:center !important;}
  .story-values{padding:64px 0 72px !important;}
  .story-section-head h2{font-size:2.35rem !important;line-height:1.04 !important;}
  .story-value-grid{grid-template-columns:1fr !important;gap:16px !important;}
  .story-value-card{padding:28px 24px !important;}
  .story-cta{padding:60px 0 !important;}
  .story-cta h2{font-size:2.35rem !important;}

  /* Contact: compact, readable stacked layout */
  .quote{padding:126px 0 64px !important;background-position:center top !important;background-size:auto 620px !important;background-repeat:no-repeat !important;background-color:#080a0d !important;}
  .quote-inner{display:flex !important;flex-direction:column !important;gap:28px !important;width:100% !important;max-width:100% !important;align-items:stretch !important;}
  .quote-inner>div:first-child{width:100% !important;max-width:100% !important;}
  .quote .eyebrow{font-size:.72rem !important;}
  .quote h2{font-size:clamp(2.35rem,10.5vw,3.15rem) !important;line-height:1.03 !important;margin:10px 0 20px !important;max-width:100% !important;}
  .quote p{font-size:1rem !important;line-height:1.55 !important;overflow-wrap:anywhere !important;}
  .quote-card{width:100% !important;max-width:100% !important;padding:24px 18px !important;margin:0 !important;}
  .form-grid{display:grid !important;grid-template-columns:1fr !important;gap:16px !important;}
  .field,.field.full{grid-column:1 !important;width:100% !important;min-width:0 !important;}
  input,select,textarea{width:100% !important;min-width:0 !important;padding:13px !important;}
  textarea{min-height:130px !important;}
  .quote-card .btn{width:100% !important;}
}
