
:root{--black:#080808;--ink:#111111;--muted:#565656;--gold:#f5d300;--gold2:#ffec4d;--soft:#fffbea;--line:#e8e1d4;--white:#fff;--shadow:0 22px 55px rgba(0,0,0,.14);--radius:24px;--max:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(var(--max),calc(100% - 40px));margin-inline:auto}.site-header{background:#fff;position:sticky;top:0;z-index:50;box-shadow:0 1px 0 rgba(0,0,0,.06)}.site-header .wrap{height:152px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{width:176px;height:auto;object-fit:contain}.site-header nav{display:flex;align-items:center;gap:34px;font-size:.86rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.site-header nav a{transition:.18s;color:#0b130a}.site-header nav a:hover{color:#b98400}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:15px 26px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;border:0;cursor:pointer;box-shadow:none;line-height:1}.btn-orange{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#111;box-shadow:0 18px 35px rgba(245,180,0,.28)}.btn-green{background:#111;color:#fff}.btn-outline{border:2px solid rgba(255,255,255,.85);color:#fff;background:rgba(255,255,255,.08);backdrop-filter:blur(8px)}.btn-dark-outline{border:2px solid #111;color:#111;background:transparent}.call{min-width:160px}.menu-toggle{display:none;border:0;background:#111;color:#fff;border-radius:12px;padding:10px 12px;font-size:1.35rem}.mobile-nav{display:none;background:#fff;padding:0 20px 20px;border-top:1px solid #eee}.mobile-nav a{display:block;padding:13px 4px;font-weight:900;text-transform:uppercase}.mobile-nav .btn{display:inline-flex;margin-top:8px}.hero{min-height:650px;display:flex;align-items:center;background-size:cover;background-position:center;position:relative;overflow:hidden;color:#fff}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.86),rgba(0,0,0,.57) 43%,rgba(0,0,0,.18));z-index:0}.hero .wrap{position:relative;z-index:1;max-width:760px;margin-left:0;padding:90px 0}.eyebrow{font-size:.82rem;letter-spacing:.36em;text-transform:uppercase;color:#d8a60a;font-weight:900;margin:0 0 22px}.hero h1{font-size:clamp(3.4rem,8vw,6.4rem);line-height:.98;margin:0 0 26px;font-weight:950;letter-spacing:-.055em;text-transform:uppercase;color:#fff}.hero p{font-size:1.22rem;font-weight:700;max-width:600px;margin:0 0 28px;color:rgba(255,255,255,.92)}.ctas{display:flex;gap:14px;flex-wrap:wrap}.block{padding:88px 0}.block.alt{background:#fff8e6}.block.dark{background:#0c0c0c;color:#fff}.h2{font-size:clamp(2.1rem,4.5vw,4.2rem);line-height:1.03;margin:0 0 20px;font-weight:950;letter-spacing:-.045em;text-transform:uppercase;color:#111}.dark .h2{color:#fff}.lead{font-size:1.15rem;color:#4b4b4b;max-width:800px;font-weight:600}.dark .lead,.dark p{color:rgba(255,255,255,.85)}.split{display:grid;grid-template-columns:1.02fr .98fr;gap:52px;align-items:center}.section-img{width:100%;height:430px;object-fit:cover;border-radius:24px;box-shadow:var(--shadow)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px}.service-card{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 18px 45px rgba(0,0,0,.07);transition:.22s}.service-card:hover{transform:translateY(-4px);box-shadow:0 24px 60px rgba(0,0,0,.12)}.service-card img{height:215px;width:100%;object-fit:cover}.service-card .pad{padding:24px}.service-card h3{font-size:1.25rem;line-height:1.15;margin:0 0 10px;text-transform:uppercase;letter-spacing:-.02em}.service-card p{color:#555;margin:0 0 16px}.learn{font-weight:900;color:#9b7100;text-transform:uppercase;font-size:.85rem}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.benefit{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:0 12px 35px rgba(0,0,0,.05)}.benefit .dot{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#111;color:#f5b400;font-weight:900;flex:none}.benefit p{margin:0;font-weight:750;color:#232323}.related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.related-card{border-radius:20px;border:1px solid var(--line);background:#fff;padding:20px;display:flex;flex-direction:column;gap:6px;min-height:116px;box-shadow:0 12px 30px rgba(0,0,0,.05)}.related-card .label{font-size:.72rem;text-transform:uppercase;color:#9b7100;letter-spacing:.16em;font-weight:900}.related-card .title{font-size:1.05rem;font-weight:950;line-height:1.15}.areas{display:flex;flex-wrap:wrap;gap:12px}.area{padding:11px 16px;border-radius:999px;background:#fff;border:1px solid var(--line);font-weight:850;color:#222}.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.review{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:0 15px 38px rgba(0,0,0,.07)}.avatar-wrap{width:84px;height:84px;border-radius:50%;overflow:hidden;margin-bottom:16px;border:4px solid #f5b400}.avatar-wrap img{width:100%;height:100%;object-fit:cover}.stars{color:#f5b400;letter-spacing:.08em;font-size:1.1rem;font-weight:900}.review .q{font-size:1rem;color:#444;margin:10px 0 14px}.review .name{font-weight:900;margin:0;color:#111}.cta-band{text-align:center}.cta-band .h2{max-width:820px;margin-inline:auto}.site-footer{background:#090909;color:#fff;padding:70px 0 28px}.site-footer .grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px}.site-footer h4{margin:0 0 14px;font-size:1.05rem;text-transform:uppercase;letter-spacing:.04em}.site-footer p{color:rgba(255,255,255,.72);margin:0 0 14px}.site-footer ul{list-style:none;padding:0;margin:0;display:grid;gap:8px;color:rgba(255,255,255,.72)}.site-footer a:hover{color:#f5b400}.legal{margin-top:44px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.58);font-size:.9rem}.page-hero{min-height:500px}.content-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:0 16px 45px rgba(0,0,0,.07)}.content-card h3{margin:0 0 10px;font-size:1.25rem;text-transform:uppercase}.process{counter-reset:step;display:grid;gap:14px}.process li{list-style:none;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px 18px 18px 64px;position:relative;font-weight:700}.process li:before{counter-increment:step;content:counter(step);position:absolute;left:18px;top:18px;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#111;color:#f5b400;font-weight:950}.faq{display:grid;gap:14px}.faq details{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px}.faq summary{font-weight:900;cursor:pointer}.faq p{margin:10px 0 0;color:#555}.prevnext{display:flex;justify-content:center}.prevnext a{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px 22px;box-shadow:0 14px 30px rgba(0,0,0,.06);font-weight:900}.prevnext span{display:block;color:#9b7100;font-size:.75rem;text-transform:uppercase;letter-spacing:.16em}@media(max-width:920px){.site-header .wrap{height:96px}.site-header nav,.site-header .call{display:none}.logo{width:96px}.menu-toggle{display:block}.mobile-nav.open{display:block}.hero{min-height:610px}.hero .wrap{padding:70px 0}.hero h1{font-size:clamp(3rem,13vw,4.8rem)}.hero p{font-size:1.05rem}.split,.service-grid,.grid-2,.grid-3,.reviews,.site-footer .grid{grid-template-columns:1fr}.related-grid{grid-template-columns:repeat(2,1fr)}.block{padding:64px 0}.section-img{height:340px}}@media(max-width:560px){.container{width:min(100% - 26px,var(--max))}.hero{min-height:600px;background-position:68% center}.hero:before{background:linear-gradient(90deg,rgba(0,0,0,.86),rgba(0,0,0,.62) 60%,rgba(0,0,0,.32))}.btn{width:100%;padding:15px 18px}.ctas{width:100%}.related-grid{grid-template-columns:1fr}.service-card img{height:190px}.h2{font-size:2.05rem}.site-header .wrap{height:86px}.logo{width:88px}}

/* Mobile image safety fixes: keeps important parts of photos visible without redesigning the layout */
@media (max-width: 920px) {
  .section-img,
  .service-card img {
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center top !important;
  }

  .service-card img {
    width: 100%;
  }

  .avatar-wrap img {
    object-fit: cover !important;
    object-position: center 22% !important;
  }
}

@media (max-width: 560px) {
  .hero {
    min-height: 660px;
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-position: 74% center;
    background-color: #080808;
  }

  .page-hero {
    min-height: 560px;
  }

  .section-img,
  .service-card img {
    border-radius: 18px;
  }

  .review .avatar-wrap,
  .avatar-wrap {
    width: 92px;
    height: 92px;
  }
}


/* Hero mobile cleanup: show the full hero photo and give the text more breathing room */
@media (max-width: 560px) {
  .hero {
    min-height: auto !important;
    align-items: flex-start !important;
    background-size: 100% auto !important;
    background-repeat: no-repeat !important;
    background-position: center top !important;
    background-color: #080808 !important;
    overflow: visible !important;
  }

  .hero:before {
    background: linear-gradient(180deg,
      rgba(8,8,8,.03) 0%,
      rgba(8,8,8,.06) 34%,
      rgba(8,8,8,.80) 43%,
      #080808 52%,
      #080808 100%) !important;
  }

  .hero .wrap {
    max-width: 100% !important;
    padding-top: calc(56.25vw + 38px) !important;
    padding-bottom: 44px !important;
  }

  .hero .eyebrow {
    font-size: .68rem !important;
    letter-spacing: .22em !important;
    margin-bottom: 12px !important;
  }

  .hero h1 {
    font-size: clamp(2.35rem, 11vw, 3.05rem) !important;
    line-height: 1.04 !important;
    letter-spacing: -.04em !important;
    margin-bottom: 16px !important;
  }

  .hero p {
    font-size: .98rem !important;
    line-height: 1.48 !important;
    margin-bottom: 20px !important;
    max-width: 100% !important;
  }

  .hero .ctas {
    gap: 10px !important;
  }

  .hero .btn {
    padding: 14px 18px !important;
  }
}

@media (max-width: 390px) {
  .hero .wrap {
    padding-top: calc(56.25vw + 32px) !important;
  }

  .hero h1 {
    font-size: 2.28rem !important;
  }

  .hero p {
    font-size: .94rem !important;
  }
}




/* Before and after project photos */
.before-after-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:22px;
  margin-top:34px;
  align-items:stretch;
}
.before-after-card{
  display:flex;
  flex-direction:column;
}
.before-after-card img{
  width:100%;
  height:260px!important;
  object-fit:contain!important;
  object-position:center!important;
  background:#f6f2e8;
  border-bottom:1px solid var(--line);
}
.before-after-card .pad{
  flex:1;
}
.before-after-card h3{
  font-size:1.25rem;
  line-height:1.15;
  margin:0 0 10px;
  text-transform:uppercase;
  letter-spacing:-.02em;
}
.before-after-card p{color:#555;margin:0}
.finished-project-card{
  margin-top:0;
}
@media(max-width:920px){
  .before-after-grid{grid-template-columns:1fr;gap:20px}
  .before-after-card img{height:auto!important;object-fit:contain!important;object-position:center!important}
}


/* Split transformations into two cleaner sections */
.finished-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:22px;
  margin-top:34px;
  align-items:stretch;
}
.finished-grid .before-after-card img{
  width:100%;
  height:260px!important;
  object-fit:contain!important;
  object-position:center!important;
  background:#f6f2e8;
  border-bottom:1px solid var(--line);
}
@media(max-width:920px){
  .finished-grid{grid-template-columns:1fr;gap:20px}
  .finished-grid .before-after-card img{height:auto!important;object-fit:contain!important;object-position:center!important}
}


/* Hero text centered */
.hero{text-align:center!important}
.hero .wrap{margin-left:auto!important;margin-right:auto!important;max-width:860px!important;text-align:center!important}
.hero p{margin-left:auto!important;margin-right:auto!important}
.hero .ctas{justify-content:center!important}

/* Remove dead space in transformation and finished project sections */
.before-after-grid,
.finished-grid{
  grid-template-columns:repeat(auto-fit,minmax(280px,340px))!important;
  justify-content:center!important;
}
.finished-grid{margin-top:26px!important}
.before-after-card,
.finished-project-card{
  width:100%;
}
@media (max-width:920px){
  .before-after-grid,
  .finished-grid{
    grid-template-columns:1fr!important;
    justify-content:stretch!important;
  }
}

/* Real Google review cards */
.reviews-intro{
  margin:0 0 34px;
}

.review{
  display:flex;
  flex-direction:column;
  height:100%;
}

.review-top{
  display:flex;
  align-items:center;
  gap:18px;
  margin-bottom:16px;
}

.review-top .avatar-wrap{
  flex:0 0 84px;
  margin:0;
}

.review-source{
  margin:4px 0 0;
  color:#9b7100;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.review .q{
  flex:1 1 auto;
}

.review-footer{
  margin-top:auto;
  padding-top:15px;
  border-top:1px solid var(--line);
}

.reviews-link{
  margin-top:32px;
  text-align:center;
}

@media(max-width:560px){
  .review-top{
    gap:14px;
  }

  .review-top .avatar-wrap{
    flex-basis:76px;
    width:76px;
    height:76px;
  }
}


/* Owner / Meet the Team section */
.owner-wrap{align-items:center}
.owner-photo-card{
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 20px 50px rgba(0,0,0,.14);
  background:#fff8e6;
}
.owner-photo-card img{
  width:100%;
  height:520px;
  object-fit:cover;
  object-position:center top;
}
.owner-label{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 18px;
  border-radius:999px;
  background:#111;
  color:#fff;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.05em;
  margin:8px 0 0;
}
@media(max-width:920px){
  .owner-photo-card img{
    height:auto;
    object-fit:contain;
  }
}

.finished-grid .before-after-card img{object-fit:contain!important;object-position:center center!important;}


/* Before and after pairs: each project gets its own row */
.before-after-rows{
  display:flex !important;
  flex-direction:column !important;
  gap:28px !important;
  margin-top:34px !important;
}
.before-after-pair-row{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(280px,1fr)) !important;
  gap:22px !important;
  align-items:stretch !important;
}
.before-after-pair-row .before-after-card{
  height:100%;
}
@media(max-width:920px){
  .before-after-pair-row{
    grid-template-columns:1fr !important;
    gap:18px !important;
  }
}


/* Homepage booking form restored */
.booking-wrap{
  display:grid;
  grid-template-columns:0.85fr 1.15fr;
  gap:34px;
  align-items:start;
}
.booking-copy .lead{
  color:#3f3f3f;
  font-size:1.05rem;
  line-height:1.75;
  margin:0 0 20px;
}
.booking-points{
  margin:22px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:12px;
}
.booking-points li{
  position:relative;
  padding-left:30px;
  font-weight:850;
  color:#222;
}
.booking-points li:before{
  content:"";
  position:absolute;
  left:0;
  top:.45em;
  width:13px;
  height:13px;
  border-radius:50%;
  background:#f5b400;
  box-shadow:0 0 0 5px rgba(245,180,0,.18);
}
.booking-form{
  background:#fff;
  border:1px solid var(--line);
  border-radius:26px;
  padding:26px;
  box-shadow:0 18px 45px rgba(0,0,0,.08);
  display:grid;
  gap:16px;
}
.booking-form label{
  display:grid;
  gap:8px;
  font-weight:900;
  color:#111;
}
.booking-form input,
.booking-form select,
.booking-form textarea{
  width:100%;
  border:1px solid #d9d9d9;
  border-radius:14px;
  padding:14px 14px;
  font:inherit;
  color:#111;
  background:#fff;
  outline:none;
}
.booking-form input:focus,
.booking-form select:focus,
.booking-form textarea:focus{
  border-color:#f5b400;
  box-shadow:0 0 0 4px rgba(245,180,0,.18);
}
.form-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.hidden-field{
  display:none;
}
.btn.full{
  width:100%;
  border:0;
  cursor:pointer;
  justify-content:center;
}
.form-note{
  margin:0;
  font-size:.95rem;
  color:#555;
  text-align:center;
}
.form-note a{
  font-weight:950;
  color:#111;
  text-decoration:underline;
  text-decoration-color:#f5b400;
  text-decoration-thickness:3px;
}
@media (max-width: 860px){
  .booking-wrap{
    grid-template-columns:1fr;
  }
  .form-row{
    grid-template-columns:1fr;
  }
  .booking-form{
    padding:20px;
  }
}


/* Instant Ballpark pricing slider */
.ballpark-section{
  background:#fff;
}
.ballpark-wrap{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:36px;
  align-items:center;
}
.ballpark-intro .lead{
  color:#444;
  font-size:1.05rem;
  line-height:1.75;
  margin:0 0 22px;
}
.ballpark-card{
  background:#121316;
  color:#fff;
  border-radius:28px;
  padding:34px;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 24px 60px rgba(0,0,0,.22);
  position:relative;
  overflow:hidden;
}
.ballpark-card:before{
  content:"";
  position:absolute;
  inset:-120px -80px auto auto;
  width:280px;
  height:280px;
  border-radius:50%;
  background:rgba(245,180,0,.14);
  filter:blur(10px);
}
.ballpark-card-top{
  display:flex;
  justify-content:space-between;
  gap:24px;
  align-items:flex-start;
  position:relative;
  z-index:1;
}
.ballpark-label{
  margin:0 0 8px;
  color:rgba(255,255,255,.62);
  font-size:.86rem;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-weight:950;
}
.ballpark-card h3{
  margin:0;
  font-size:2.15rem;
  line-height:1.05;
  color:#f5b400;
  text-transform:none;
}
.trailer-icon{
  width:270px;
  height:138px;
  position:relative;
  flex:0 0 270px;
  margin-top:6px;
}
.trailer-box{
  position:absolute;
  left:0;
  top:24px;
  width:220px;
  height:86px;
  border:5px solid rgba(255,255,255,.7);
  border-radius:14px;
  overflow:hidden;
  background:#1d1f24;
}
.trailer-fill{
  height:100%;
  width:88%;
  background:linear-gradient(105deg,#f05a17,#ff7a16,#f5b400);
  transition:width .2s ease;
}
.trailer-hitch{
  position:absolute;
  right:0;
  top:70px;
  width:46px;
  height:6px;
  background:rgba(255,255,255,.7);
  border-radius:99px;
}
.wheel{
  position:absolute;
  width:34px;
  height:34px;
  border-radius:50%;
  background:#121316;
  border:6px solid rgba(255,255,255,.7);
  bottom:0;
}
.wheel-one{left:70px;}
.wheel-two{left:158px;}
.ballpark-price{
  margin:34px 0 26px;
  position:relative;
  z-index:1;
  display:grid;
  justify-items:end;
}
.ballpark-price span{
  font-size:4rem;
  line-height:1;
  font-weight:950;
  letter-spacing:-.06em;
}
.ballpark-price small{
  color:rgba(255,255,255,.55);
  font-size:1rem;
  font-weight:900;
  margin-top:8px;
}
.ballpark-slider-wrap{
  position:relative;
  z-index:1;
  margin:8px 0 28px;
}
.ballpark-slider{
  -webkit-appearance:none;
  appearance:none;
  width:100%;
  height:18px;
  border-radius:999px;
  outline:none;
  background:linear-gradient(90deg,#f05a17 0%,#ff7a16 var(--range-progress,100%),#25272d var(--range-progress,100%),#25272d 100%);
}
.ballpark-slider::-webkit-slider-thumb{
  -webkit-appearance:none;
  appearance:none;
  width:54px;
  height:54px;
  border-radius:50%;
  background:#fff;
  border:9px solid #f75d15;
  box-shadow:0 8px 25px rgba(0,0,0,.35);
  cursor:pointer;
}
.ballpark-slider::-moz-range-thumb{
  width:40px;
  height:40px;
  border-radius:50%;
  background:#fff;
  border:9px solid #f75d15;
  box-shadow:0 8px 25px rgba(0,0,0,.35);
  cursor:pointer;
}
.slider-labels{
  display:flex;
  justify-content:space-between;
  color:rgba(255,255,255,.55);
  text-transform:uppercase;
  font-weight:950;
  letter-spacing:.12em;
  font-size:.86rem;
  margin-top:18px;
}
.ballpark-note{
  border-top:1px solid rgba(255,255,255,.08);
  padding-top:24px;
  margin:0 0 26px;
  color:rgba(255,255,255,.68);
  line-height:1.75;
}
.ballpark-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.btn.orange{
  background:#f75d15;
  color:#fff;
  box-shadow:0 12px 28px rgba(247,93,21,.25);
}
.btn.orange:hover{
  background:#ff7329;
  color:#fff;
}
.desktop-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}
@media (max-width: 960px){
  .ballpark-wrap{
    grid-template-columns:1fr;
  }
  .ballpark-card{
    padding:26px 20px;
  }
  .ballpark-card-top{
    display:grid;
  }
  .trailer-icon{
    width:100%;
    max-width:310px;
  }
  .ballpark-price{
    justify-items:start;
  }
  .ballpark-price span{
    font-size:3.05rem;
  }
}
@media (max-width: 560px){
  .ballpark-buttons{
    grid-template-columns:1fr;
  }
  .desktop-actions{
    display:none;
  }
  .ballpark-card h3{
    font-size:1.8rem;
  }
  .ballpark-price span{
    font-size:2.55rem;
  }
}


/* We Haul It branding inside Instant Ballpark */
.ballpark-brand{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:24px;
  padding:12px 14px;
  border-radius:18px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
}
.ballpark-brand img{
  width:82px;
  height:58px;
  object-fit:contain;
  background:#fff;
  border-radius:12px;
  padding:6px;
}
.ballpark-brand strong{
  display:block;
  color:#fff;
  font-size:1.05rem;
  line-height:1.1;
  font-weight:950;
}
.ballpark-brand span{
  display:block;
  margin-top:4px;
  color:#f5b400;
  font-size:.86rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.ballpark-brand-line{
  display:inline-flex;
  margin:0 0 18px;
  padding:9px 14px;
  border-radius:999px;
  background:#111;
  color:#f5b400;
  font-weight:950;
  font-size:.9rem;
}
@media (max-width: 560px){
  .ballpark-brand{
    align-items:flex-start;
  }
  .ballpark-brand img{
    width:72px;
    height:52px;
  }
}


/* Pickup truck + trailer load meter */
.truck-meter{
  width:100%;
  max-width:720px;
  margin-top:10px;
}
.truck-meter-svg{
  width:100%;
  height:auto;
  display:block;
}
.truck-fill-rect{
  fill:url(#truckGradient);
  transition:width .22s ease;
}
.truck-outline{
  fill:none;
  stroke:rgba(255,255,255,.78);
  stroke-width:4;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.truck-outline.thin{
  stroke-width:3;
  opacity:.92;
}
@media (max-width: 960px){
  .truck-meter{max-width:560px;}
}
@media (max-width: 560px){
  .truck-meter{max-width:100%;}
}


/* Static approved Instant Ballpark image on homepage */
.ballpark-card-hidden{
  display:none !important;
}
.ballpark-static-visual{
  display:flex;
  justify-content:center;
  align-items:center;
}
.ballpark-static-visual img{
  width:min(100%, 520px);
  height:auto;
  display:block;
  border-radius:28px;
  box-shadow:0 24px 60px rgba(0,0,0,.22);
}
@media (max-width: 960px){
  .ballpark-static-visual img{
    width:min(100%, 460px);
  }
}


/* Same approved Instant Ballpark image with interactive fill overlay */
.ballpark-card-hidden,
.ballpark-card{
  display:none !important;
}
.same-image-interactive-ballpark{
  display:flex;
  justify-content:center;
  align-items:center;
}
.same-image-shell{
  position:relative;
  width:min(100%, 520px);
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 24px 60px rgba(0,0,0,.22);
  background:#101115;
}
.same-image-shell img{
  width:100%;
  height:auto;
  display:block;
}
.same-image-fill-overlay{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  pointer-events:none;
  mix-blend-mode:normal;
}
#same-image-truck-fill{
  transition:width .22s ease;
  opacity:.88;
}
.same-image-live-text{
  position:absolute;
  inset:0;
  pointer-events:none;
}
#same-load-title{
  position:absolute;
  left:8.6%;
  top:41.2%;
  color:#f5c41a;
  font-weight:950;
  font-size:clamp(1.1rem, 4.5vw, 2.6rem);
  line-height:1.08;
  text-shadow:0 2px 8px rgba(0,0,0,.45);
}
#same-price-range{
  position:absolute;
  right:9%;
  top:40.9%;
  color:#fff;
  font-weight:950;
  font-size:clamp(1.2rem, 5vw, 2.8rem);
  line-height:1.05;
  text-align:right;
  text-shadow:0 2px 8px rgba(0,0,0,.55);
}
.same-ballpark-slider{
  position:absolute;
  left:8.5%;
  top:53.7%;
  width:83%;
  height:34px;
  opacity:.02;
  cursor:pointer;
  z-index:5;
}
.same-ballpark-slider:focus{
  outline:none;
}
@media (max-width: 960px){
  .same-image-shell{
    width:min(100%, 460px);
  }
}


/* Same approved Instant Ballpark image with orange truck fill as slider moves */
.same-image-interactive-ballpark{
  display:flex;
  justify-content:center;
  align-items:center;
}
.same-image-shell{
  position:relative;
  width:min(100%, 520px);
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 24px 60px rgba(0,0,0,.22);
  background:#101115;
}
.same-image-shell img{
  width:100%;
  height:auto;
  display:block;
}

.truck-fill-shape{
  position:absolute;
  left:8.5%;
  top:17.9%;
  width:83.4%;
  height:18.8%;
  overflow:hidden;
  clip-path:polygon(
    0.5% 59%, 0.5% 17%, 11% 17%, 11% 44%, 34% 44%, 34% 55%,
    39% 55%, 39% 50%, 43% 50%, 43% 55%, 47% 55%,
    47% 36%, 50% 24%, 61% 24%, 67% 24%, 75% 24%, 81% 28%,
    87% 34%, 92% 37%, 96% 44%, 100% 44%, 100% 64%,
    95% 64%, 95% 70%, 80% 70%, 80% 64%, 59% 64%, 59% 70%,
    48% 70%, 48% 63%, 35% 63%, 35% 70%, 20% 70%, 20% 64%,
    0.5% 64%
  );
  pointer-events:none;
}
.truck-fill-bar{
  position:absolute;
  left:0;
  top:0;
  height:100%;
  width:12%;
  background:linear-gradient(90deg, #f05a17 0%, #ff7a16 55%, #f5c41a 100%);
  opacity:.88;
  transition:width .22s ease;
  filter:saturate(1.1) brightness(1.02);
}

.same-image-live-text{
  position:absolute;
  inset:0;
  pointer-events:none;
}
#same-load-title{
  position:absolute;
  left:8.6%;
  top:41.2%;
  color:#f5c41a;
  font-weight:950;
  font-size:clamp(1.1rem, 4.5vw, 2.6rem);
  line-height:1.08;
  text-shadow:0 2px 8px rgba(0,0,0,.45);
}
#same-price-range{
  position:absolute;
  right:9%;
  top:40.9%;
  color:#fff;
  font-weight:950;
  font-size:clamp(1.2rem, 5vw, 2.8rem);
  line-height:1.05;
  text-align:right;
  text-shadow:0 2px 8px rgba(0,0,0,.55);
}

.same-ballpark-track-fill{
  position:absolute;
  left:8.9%;
  top:53.95%;
  height:1.05%;
  width:12%;
  border-radius:999px;
  background:linear-gradient(90deg, #f05a17 0%, #ff7a16 55%, #f5c41a 100%);
  pointer-events:none;
}
.same-ballpark-knob{
  position:absolute;
  top:53.25%;
  left:12%;
  width:6.6%;
  aspect-ratio:1 / 1;
  transform:translateX(-50%);
  border-radius:50%;
  background:#fff;
  border:.55vw solid #f97316;
  box-shadow:0 2px 12px rgba(0,0,0,.25);
  pointer-events:none;
}
.same-ballpark-slider{
  position:absolute;
  left:8.5%;
  top:52.5%;
  width:83%;
  height:7%;
  opacity:0;
  cursor:pointer;
  z-index:5;
}

@media (max-width: 960px){
  .same-image-shell{
    width:min(100%, 460px);
  }
  .same-ballpark-knob{
    border:3px solid #f97316;
  }
}


/* Restored exact target Instant Ballpark with working slider */
.restored-ballpark-section{
  background:#fff;
  padding:0 18px 52px;
}

.restored-ballpark-wrap{
  position:relative;
  width:min(100%, 880px);
  margin:0 auto;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 22px 70px rgba(0,0,0,.18);
  background:#0b0e12;
}

.restored-ballpark-wrap img{
  display:block;
  width:100%;
  height:auto;
}

.restored-ballpark-slider{
  position:absolute;
  left:6.3%;
  top:61.5%;
  width:87%;
  height:6%;
  opacity:0;
  cursor:pointer;
  z-index:8;
}

.restored-main-link,
.restored-call-link,
.restored-text-link{
  position:absolute;
  display:block;
  z-index:7;
  text-indent:-9999px;
  overflow:hidden;
}

.restored-main-link{
  left:6.3%;
  top:82.1%;
  width:87%;
  height:6.4%;
}

.restored-call-link{
  left:6.3%;
  top:90.2%;
  width:42.5%;
  height:6.5%;
}

.restored-text-link{
  left:51.0%;
  top:90.2%;
  width:42.5%;
  height:6.5%;
}

@media (max-width:640px){
  .restored-ballpark-section{
    padding:0 12px 38px;
  }

  .restored-ballpark-wrap{
    border-radius:16px;
  }
}


/* Current-site live Instant Ballpark fix: exact reference look, working live slider */
.live-ballpark-section-current{
  background:#fff;
  padding:0 18px 52px;
}

.live-ballpark-card-current{
  position:relative;
  width:min(100%, 1095px);
  margin:0 auto;
  border-radius:18px;
  overflow:hidden;
  background:#080c10;
  box-shadow:0 22px 70px rgba(0,0,0,.18);
}

.live-card-base-current,
.live-vehicle-outline-current{
  display:block;
  width:100%;
  height:auto;
}

.live-card-base-current{
  position:relative;
  z-index:1;
}

.live-vehicle-fill-clip-current{
  position:absolute;
  inset:0 auto auto 0;
  z-index:2;
  width:var(--p);
  height:100%;
  overflow:hidden;
  pointer-events:none;
  transition:width .12s linear;
}

.live-vehicle-fill-current{
  display:block;
  width:1095px;
  max-width:none;
  height:auto;
}

.live-vehicle-fill-clip-current::after{
  content:"";
  position:absolute;
  inset:0;
  background:var(--vehicle-color);
  mix-blend-mode:source-in;
  pointer-events:none;
}

.live-vehicle-outline-current{
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
}

.live-copy-current{
  position:absolute;
  inset:0;
  z-index:4;
  pointer-events:none;
}

#live-load-label-current{
  position:absolute;
  left:6.6%;
  top:42.8%;
  color:#f5c41a;
  font-weight:950;
  font-size:clamp(2.05rem, 5.2vw, 4.15rem);
  line-height:1.04;
  letter-spacing:-.045em;
  text-shadow:0 2px 8px rgba(0,0,0,.35);
}

.live-price-box-current{
  position:absolute;
  right:6.7%;
  top:44.4%;
  text-align:right;
}

#live-price-range-current{
  color:#fff;
  font-weight:950;
  font-size:clamp(2.25rem, 5.2vw, 4rem);
  line-height:1;
  letter-spacing:-.045em;
  white-space:nowrap;
  text-shadow:0 2px 8px rgba(0,0,0,.45);
}

.live-price-note-current{
  color:rgba(255,255,255,.72);
  font-weight:700;
  font-size:clamp(1rem, 2.2vw, 2rem);
  margin-top:.55em;
}

.live-slider-visual-current{
  position:absolute;
  left:6.6%;
  top:61.2%;
  width:87%;
  height:48px;
  z-index:5;
  pointer-events:none;
}

.live-track-current{
  position:absolute;
  left:0;
  right:0;
  top:50%;
  height:10px;
  transform:translateY(-50%);
  border-radius:999px;
  background:linear-gradient(90deg,#f05a17 0%,#ff7a16 28%,#f5c41a 100%);
}

.live-knob-current{
  position:absolute;
  top:50%;
  left:var(--p);
  width:54px;
  height:54px;
  transform:translate(-50%, -50%);
  border-radius:50%;
  background:#f05a17;
  box-shadow:0 4px 14px rgba(0,0,0,.28);
  transition:left .12s linear;
}

.live-knob-current::after{
  content:"";
  position:absolute;
  inset:13px;
  border-radius:50%;
  background:#fff;
}

.live-ballpark-slider-current{
  position:absolute;
  left:6.6%;
  top:59.8%;
  width:87%;
  height:6%;
  opacity:0;
  cursor:pointer;
  z-index:20;
}

.live-main-link-current,
.live-call-link-current,
.live-text-link-current{
  position:absolute;
  display:block;
  z-index:18;
  text-indent:-9999px;
  overflow:hidden;
}

.live-main-link-current{
  left:6.6%;
  top:82.1%;
  width:87%;
  height:6.3%;
}

.live-call-link-current{
  left:6.6%;
  top:90.1%;
  width:42.8%;
  height:6.5%;
}

.live-text-link-current{
  left:51.3%;
  top:90.1%;
  width:42.1%;
  height:6.5%;
}

@media (max-width:640px){
  .live-ballpark-section-current{
    padding:0 12px 38px;
  }

  .live-ballpark-card-current{
    border-radius:16px;
  }

  .live-knob-current{
    width:38px;
    height:38px;
  }

  .live-knob-current::after{
    inset:9px;
  }

  .live-track-current{
    height:8px;
  }
}


/* Final override: clean flat vehicle fill, no spotty extracted color */
.live-vehicle-fill-clip-current{
  background:var(--vehicle-color);
  -webkit-mask-image:url('instant-ballpark-live-fill-current.png');
  mask-image:url('instant-ballpark-live-fill-current.png');
  -webkit-mask-size:1095px auto;
  mask-size:1095px auto;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-position:top left;
  mask-position:top left;
}

.live-vehicle-fill-current{
  visibility:hidden;
}

.live-vehicle-fill-clip-current::after{
  display:none;
}


/* Final fill behavior: bottom-up vehicle fill so the whole truck/cargo fills cleanly */
.live-vehicle-fill-clip-current{
  left:6.21%;
  top:18.45%;
  width:89.04%;
  height:18.52%;
  background:var(--vehicle-color);
  overflow:hidden;
  -webkit-mask-image:url('instant-ballpark-live-fill-current-crop.png');
  mask-image:url('instant-ballpark-live-fill-current-crop.png');
  -webkit-mask-size:100% 100%;
  mask-size:100% 100%;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-position:center;
  mask-position:center;
  clip-path:inset(calc(100% - var(--vehicle-level)) 0 0 0);
  transition:clip-path .12s linear, background-color .12s linear;
}

.live-vehicle-fill-current{
  display:none;
}


/* Exact uploaded Instant Ballpark reference, with working slider */
.exact-ref-ballpark-section{
  background:#fff;
  padding:0 18px 52px;
}

.exact-ref-ballpark-wrap{
  position:relative;
  width:min(100%, 1199px);
  margin:0 auto;
  border-radius:18px;
  overflow:hidden;
  background:#080c10;
  box-shadow:0 22px 70px rgba(0,0,0,.18);
}

.exact-ref-ballpark-wrap img{
  display:block;
  width:100%;
  height:auto;
}

.exact-ref-ballpark-slider{
  position:absolute;
  left:6.0%;
  top:58.7%;
  width:89.3%;
  height:6.2%;
  opacity:0;
  cursor:pointer;
  z-index:20;
}

.exact-ref-main-link,
.exact-ref-call-link,
.exact-ref-text-link{
  position:absolute;
  display:block;
  z-index:18;
  text-indent:-9999px;
  overflow:hidden;
}

.exact-ref-main-link{
  left:6.2%;
  top:81.5%;
  width:87.8%;
  height:6.5%;
}

.exact-ref-call-link{
  left:6.2%;
  top:89.3%;
  width:42.5%;
  height:6.8%;
}

.exact-ref-text-link{
  left:51.0%;
  top:89.3%;
  width:43.0%;
  height:6.8%;
}

@media (max-width:640px){
  .exact-ref-ballpark-section{
    padding:0 12px 38px;
  }
  .exact-ref-ballpark-wrap{
    border-radius:16px;
  }
}


/* Exact Instant Ballpark image with clean live scroll bar matching reference */
.exact-scroll-match-section{
  background:#fff;
  padding:0 18px 52px;
}

.exact-scroll-match-wrap{
  position:relative;
  width:min(100%, 1199px);
  margin:0 auto;
  border-radius:18px;
  overflow:hidden;
  background:#080c10;
  box-shadow:0 22px 70px rgba(0,0,0,.18);
}

.exact-scroll-match-base{
  display:block;
  width:100%;
  height:auto;
}

.exact-scrollbar-live{
  position:absolute;
  left:6.0%;
  top:60.25%;
  width:88.6%;
  height:60px;
  z-index:4;
  pointer-events:none;
}

.exact-scrollbar-track{
  position:absolute;
  left:0;
  right:0;
  top:50%;
  height:10px;
  transform:translateY(-50%);
  border-radius:999px;
  background:linear-gradient(90deg,#f05a17 0%,#ff7517 28%,#f5c41a 100%);
}

.exact-scrollbar-knob{
  position:absolute;
  top:50%;
  left:var(--scroll-p);
  width:60px;
  height:60px;
  transform:translate(-50%, -50%);
  border-radius:50%;
  background:#f05a17;
  box-shadow:0 4px 14px rgba(0,0,0,.28);
}

.exact-scrollbar-knob::after{
  content:"";
  position:absolute;
  inset:15px;
  border-radius:50%;
  background:#fff;
}

.exact-scrollbar-slider{
  position:absolute;
  left:6.0%;
  top:58.7%;
  width:88.6%;
  height:6.5%;
  opacity:0;
  cursor:pointer;
  z-index:20;
}

.exact-scroll-main-link,
.exact-scroll-call-link,
.exact-scroll-text-link{
  position:absolute;
  display:block;
  z-index:18;
  text-indent:-9999px;
  overflow:hidden;
}

.exact-scroll-main-link{
  left:6.2%;
  top:81.5%;
  width:87.8%;
  height:6.5%;
}

.exact-scroll-call-link{
  left:6.2%;
  top:89.3%;
  width:42.5%;
  height:6.8%;
}

.exact-scroll-text-link{
  left:51.0%;
  top:89.3%;
  width:43.0%;
  height:6.8%;
}

@media (max-width:640px){
  .exact-scroll-match-section{
    padding:0 12px 38px;
  }

  .exact-scroll-match-wrap{
    border-radius:16px;
  }

  .exact-scrollbar-live{
    height:42px;
  }

  .exact-scrollbar-track{
    height:8px;
  }

  .exact-scrollbar-knob{
    width:42px;
    height:42px;
  }

  .exact-scrollbar-knob::after{
    inset:10px;
  }
}


/* Instant Ballpark: clean scrollbar plus smooth truck/trailer fill inside lines */
.truck-fill-ballpark-section{
  background:#fff;
  padding:0 18px 52px;
}

.truck-fill-ballpark-card{
  position:relative;
  width:min(100%, 1199px);
  margin:0 auto;
  border-radius:18px;
  overflow:hidden;
  background:#080c10;
  box-shadow:0 22px 70px rgba(0,0,0,.18);
}

.truck-fill-base{
  display:block;
  width:100%;
  height:auto;
  position:relative;
  z-index:1;
}

.truck-fill-layer-wrap{
  position:absolute;
  left:6.005%;
  top:18.134%;
  width:88.991%;
  height:14.692%;
  z-index:2;
  overflow:hidden;
  pointer-events:none;
  clip-path:inset(0 calc(100% - var(--truck-fill-p)) 0 0);
  transition:clip-path .08s linear;
}

.truck-fill-layer{
  width:100%;
  height:100%;
  background:linear-gradient(90deg,#f5c41a 0%,#ff8a16 45%,var(--truck-color) 100%);
  -webkit-mask-image:url('instant-ballpark-fill-mask.png');
  mask-image:url('instant-ballpark-fill-mask.png');
  -webkit-mask-size:100% 100%;
  mask-size:100% 100%;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-position:center;
  mask-position:center;
}

.truck-fill-outline{
  display:block;
  position:absolute;
  inset:0;
  width:100%;
  height:auto;
  z-index:3;
  pointer-events:none;
}

.truck-scrollbar-live{
  position:absolute;
  left:6.0%;
  top:60.25%;
  width:88.6%;
  height:60px;
  z-index:4;
  pointer-events:none;
}

.truck-scrollbar-track{
  position:absolute;
  left:0;
  right:0;
  top:50%;
  height:10px;
  transform:translateY(-50%);
  border-radius:999px;
  background:linear-gradient(90deg,#f05a17 0%,#ff7517 28%,#f5c41a 100%);
}

.truck-scrollbar-knob{
  position:absolute;
  top:50%;
  left:var(--scroll-p);
  width:60px;
  height:60px;
  transform:translate(-50%, -50%);
  border-radius:50%;
  background:#f05a17;
  box-shadow:0 4px 14px rgba(0,0,0,.28);
  transition:left .08s linear;
}

.truck-scrollbar-knob::after{
  content:"";
  position:absolute;
  inset:15px;
  border-radius:50%;
  background:#fff;
}

.truck-fill-slider{
  position:absolute;
  left:6.0%;
  top:58.7%;
  width:88.6%;
  height:6.5%;
  opacity:0;
  cursor:pointer;
  z-index:20;
}

.truck-fill-main-link,
.truck-fill-call-link,
.truck-fill-text-link{
  position:absolute;
  display:block;
  z-index:18;
  text-indent:-9999px;
  overflow:hidden;
}

.truck-fill-main-link{
  left:6.2%;
  top:81.5%;
  width:87.8%;
  height:6.5%;
}

.truck-fill-call-link{
  left:6.2%;
  top:89.3%;
  width:42.5%;
  height:6.8%;
}

.truck-fill-text-link{
  left:51.0%;
  top:89.3%;
  width:43.0%;
  height:6.8%;
}

@media (max-width:640px){
  .truck-fill-ballpark-section{
    padding:0 12px 38px;
  }

  .truck-fill-ballpark-card{
    border-radius:16px;
  }

  .truck-scrollbar-live{
    height:42px;
  }

  .truck-scrollbar-track{
    height:8px;
  }

  .truck-scrollbar-knob{
    width:42px;
    height:42px;
  }

  .truck-scrollbar-knob::after{
    inset:10px;
  }
}


/* Canvas-powered Instant Ballpark: local desktop safe, smooth fill and price changes */
.canvas-ballpark-section{
  background:#fff;
  padding:0 18px 52px;
}

.canvas-ballpark-wrap{
  position:relative;
  width:min(100%, 1199px);
  margin:0 auto;
  border-radius:18px;
  overflow:hidden;
  background:#080c10;
  box-shadow:0 22px 70px rgba(0,0,0,.18);
}

.canvas-ballpark{
  display:block;
  width:100%;
  height:auto;
}

.canvas-ballpark-slider{
  position:absolute;
  left:6.0%;
  top:58.7%;
  width:88.6%;
  height:6.5%;
  opacity:0;
  cursor:pointer;
  z-index:20;
}

.canvas-ballpark-main-link,
.canvas-ballpark-call-link,
.canvas-ballpark-text-link{
  position:absolute;
  display:block;
  z-index:18;
  text-indent:-9999px;
  overflow:hidden;
}

.canvas-ballpark-main-link{
  left:6.2%;
  top:81.5%;
  width:87.8%;
  height:6.5%;
}

.canvas-ballpark-call-link{
  left:6.2%;
  top:89.3%;
  width:42.5%;
  height:6.8%;
}

.canvas-ballpark-text-link{
  left:51.0%;
  top:89.3%;
  width:43.0%;
  height:6.8%;
}

@media (max-width:640px){
  .canvas-ballpark-section{
    padding:0 12px 38px;
  }

  .canvas-ballpark-wrap{
    border-radius:16px;
  }
}


/* Progressive Instant Ballpark: smooth rear-cargo-to-truck gradient fill plus live price changes */
.progressive-ballpark-section{
  background:#fff;
  padding:0 18px 52px;
}

.progressive-ballpark-wrap{
  position:relative;
  width:min(100%, 1199px);
  margin:0 auto;
  border-radius:18px;
  overflow:hidden;
  background:#080c10;
  box-shadow:0 22px 70px rgba(0,0,0,.18);
}

.progressive-ballpark-canvas{
  display:block;
  width:100%;
  height:auto;
}

.progressive-ballpark-slider{
  position:absolute;
  left:6.0%;
  top:58.7%;
  width:88.6%;
  height:6.5%;
  opacity:0;
  cursor:pointer;
  z-index:20;
}

.progressive-ballpark-main-link,
.progressive-ballpark-call-link,
.progressive-ballpark-text-link{
  position:absolute;
  display:block;
  z-index:18;
  text-indent:-9999px;
  overflow:hidden;
}

.progressive-ballpark-main-link{
  left:6.2%;
  top:81.5%;
  width:87.8%;
  height:6.5%;
}

.progressive-ballpark-call-link{
  left:6.2%;
  top:89.3%;
  width:42.5%;
  height:6.8%;
}

.progressive-ballpark-text-link{
  left:51.0%;
  top:89.3%;
  width:43.0%;
  height:6.8%;
}

@media (max-width:640px){
  .progressive-ballpark-section{
    padding:0 12px 38px;
  }

  .progressive-ballpark-wrap{
    border-radius:16px;
  }
}


/* Before and after cleanup section */
.before-after-cleanups-section{
  background:#fff;
}

.section-head-row{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:28px;
  margin-bottom:34px;
}

.section-head-row .lead{
  max-width:760px;
}

.ba-cleanup-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:28px;
}

.ba-cleanup-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:26px;
  overflow:hidden;
  box-shadow:0 18px 45px rgba(0,0,0,.08);
  transition:.22s;
}

.ba-cleanup-card:hover{
  transform:translateY(-4px);
  box-shadow:0 24px 60px rgba(0,0,0,.13);
}

.ba-cleanup-card img{
  display:block;
  width:100%;
  aspect-ratio: 16 / 10;
  height:auto;
  object-fit:contain;
  background:#0a0d12;
}

.ba-cleanup-pad{
  padding:22px 24px 24px;
}

.ba-cleanup-pad h3{
  margin:0 0 8px;
  font-size:1.22rem;
  line-height:1.15;
  text-transform:uppercase;
  letter-spacing:-.02em;
}

.ba-cleanup-pad p{
  margin:0;
  color:#555;
}

@media(max-width:920px){
  .section-head-row{
    display:block;
  }

  .section-head-row .btn{
    margin-top:18px;
  }

  .ba-cleanup-grid{
    grid-template-columns:1fr;
  }

  .ba-cleanup-card img{
    aspect-ratio:auto;
  }
}
