@import url("https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=Inter:wght@400;500;600;700;800&display=swap");
:root{--ink:#0a0d11;--char:#151a20;--blue:#c5cbd1;--blue2:#9fa4aa;--paper:#f6f6f4;--muted:#6e747b;--wrap:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}.wrap{width:min(var(--wrap),calc(100% - 44px));margin:auto}.top{background:#050607;color:#fff;font-size:13px;letter-spacing:.08em;text-transform:uppercase}.top .wrap{height:38px;display:flex;justify-content:space-between;align-items:center}.header{background:#fff;position:sticky;top:0;z-index:30;border-bottom:1px solid #e6e6e6}.head{height:94px;display:flex;align-items:center;gap:34px}.logo img{width:170px;height:78px;object-fit:contain}.nav{margin-left:auto;display:flex;align-items:center;gap:28px;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.nav a:hover{color:var(--blue2)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:16px 24px;background:var(--blue);color:#08101c;font-weight:900;text-transform:uppercase;letter-spacing:.035em;border:0}.btn.dark{background:#0b0e12;color:#fff}.mobile-toggle{display:none;margin-left:auto;background:none;border:0;width:44px}.mobile-toggle span{display:block;height:2px;background:#111;margin:7px}.hero{min-height:690px;position:relative;color:#fff;display:flex;align-items:flex-end;background:#111;overflow:hidden}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,7,9,.86),rgba(5,7,9,.35) 60%,rgba(5,7,9,.08)),linear-gradient(0deg,rgba(0,0,0,.5),transparent 55%)}.hero-copy{position:relative;z-index:2;padding:90px 0;width:min(700px,100%)}.eyebrow{text-transform:uppercase;font-weight:900;letter-spacing:.16em;color:#c5cbd1;font-size:13px}.hero h1,.title{font-family:Arial Black,Arial,sans-serif;text-transform:uppercase;letter-spacing:-.055em}.hero h1{font-size:clamp(52px,7vw,96px);line-height:.88;margin:14px 0 24px}.hero p{font-size:19px;line-height:1.6;max-width:650px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.trust{background:#0c1015;color:#fff}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-grid div{padding:27px 25px;border-right:1px solid #2b3138}.trust strong{display:block;text-transform:uppercase;font-size:14px}.trust span{display:block;color:#aeb5bd;margin-top:7px;font-size:13px}.section{padding:90px 0}.section.gray{background:#f1f1ef}.section.dark{background:#11161c;color:#fff}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:38px}.section h2{font-size:clamp(38px,5vw,68px);line-height:.95;margin:8px 0 0;text-transform:uppercase;letter-spacing:-.05em}.lead{font-size:18px;line-height:1.7;color:#555;max-width:650px}.dark .lead{color:#bac0c6}.services{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.service{position:relative;height:430px;overflow:hidden;background:#222}.service img{width:100%;height:100%;object-fit:cover;transition:.5s}.service:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.88),transparent 65%)}.service:hover img{transform:scale(1.035)}.service div{position:absolute;z-index:2;left:22px;right:22px;bottom:24px;color:#fff}.service h3{font-size:25px;margin:0 0 8px}.service span{font-size:13px;text-transform:uppercase;letter-spacing:.09em;color:#b9c9e2}.split{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.split img{width:100%;height:580px;object-fit:cover}.numbers{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}.numbers div{padding:20px;border-left:4px solid var(--blue);background:#f2f2f0}.numbers strong{display:block;font-size:24px}.gallery{display:grid;grid-template-columns:1.35fr .65fr .65fr;grid-template-rows:280px 280px;gap:12px}.gallery img{width:100%;height:100%;object-fit:cover}.gallery img:first-child{grid-row:1/3}.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.review{background:#fff;color:#111;padding:30px;min-height:230px;border-top:5px solid var(--blue)}.stars{color:#d7dade;letter-spacing:4px;font-size:20px}.review p{line-height:1.65}.review strong{display:block;margin-top:24px}.areas{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.area-list{display:flex;flex-wrap:wrap;gap:10px}.area-list span{border:1px solid #d6d8da;padding:12px 15px;background:#fff}.cta{background:var(--blue);padding:55px 0}.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}.cta h2{font-size:45px;margin:0;text-transform:uppercase;letter-spacing:-.04em}.contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form input,.form select,.form textarea{width:100%;padding:16px;border:1px solid #ccd0d4;font:inherit;background:#fff}.form textarea{grid-column:1/-1;min-height:140px}.form button{grid-column:1/-1}.footer{background:#080a0d;color:#fff;padding:58px 0 30px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:60px}.footer img{width:180px}.footer h4{text-transform:uppercase}.footer a,.footer p{color:#b9bec5;line-height:1.8}.copyright{border-top:1px solid #272b30;margin-top:40px;padding-top:22px;color:#777;font-size:13px}.page-hero{background:#10151b;color:#fff;padding:85px 0}.page-hero h1{font-size:clamp(48px,7vw,82px);margin:8px 0;text-transform:uppercase;letter-spacing:-.055em}.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.service-detail img{width:100%;height:560px;object-fit:cover}.copy p,.copy li{font-size:18px;line-height:1.75;color:#555}.faq details{border-top:1px solid #ccd0d4;padding:20px 0}.faq summary{font-size:19px;font-weight:800;cursor:pointer}.faq p{color:#5e646b;line-height:1.7}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.project-grid img{width:100%;height:360px;object-fit:cover}.mobile-menu{display:none}
@media(max-width:850px){.top{display:none}.head{height:78px}.logo img{width:130px;height:64px}.nav,.head>.btn{display:none}.mobile-toggle{display:block}.mobile-menu.open{display:flex;position:fixed;z-index:29;top:78px;left:0;right:0;background:#0b0e12;color:#fff;flex-direction:column;padding:25px 22px 35px;gap:0}.mobile-menu a{padding:16px 4px;border-bottom:1px solid #292e34;font-weight:800;text-transform:uppercase}.hero{min-height:620px}.hero-copy{padding:70px 0}.hero h1{font-size:53px}.trust-grid{grid-template-columns:1fr 1fr}.services{grid-template-columns:1fr 1fr}.service{height:350px}.split,.areas,.contact,.service-detail{grid-template-columns:1fr;gap:35px}.split img,.service-detail img{height:440px}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:300px 230px}.gallery img:first-child{grid-column:1/3;grid-row:auto}.reviews{grid-template-columns:1fr}.cta .wrap{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr}.project-grid{grid-template-columns:1fr 1fr}}
@media(max-width:540px){.wrap{width:min(100% - 30px,var(--wrap))}.hero{min-height:590px}.hero>img{object-position:55% center}.hero h1{font-size:44px}.hero p{font-size:17px}.section{padding:68px 0}.section-head{display:block}.trust-grid{grid-template-columns:1fr 1fr}.trust-grid div{padding:20px 14px}.services{display:flex;overflow:auto;scroll-snap-type:x mandatory}.service{min-width:82%;scroll-snap-align:start}.split img,.service-detail img{height:390px}.gallery{display:flex;overflow:auto}.gallery img,.gallery img:first-child{min-width:85%;height:390px}.form{grid-template-columns:1fr}.form textarea,.form button{grid-column:auto}.footer-grid{grid-template-columns:1fr}.project-grid{grid-template-columns:1fr}.project-grid img{height:390px}.page-hero{padding:60px 0}.page-hero h1{font-size:48px}}
.before-after-section{background:#fff}.ba-grid{display:grid;grid-template-columns:1fr;gap:28px}.ba-slider{--pos:50%;position:relative;width:100%;height:620px;overflow:hidden;background:#111;touch-action:pan-y}.ba-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;user-select:none;pointer-events:none}.ba-after-wrap{position:absolute;inset:0;width:var(--pos);overflow:hidden}.ba-after{width:100vw;max-width:none}.ba-label{position:absolute;top:18px;z-index:5;padding:9px 12px;background:rgba(8,10,13,.78);color:#fff;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.ba-label.before{left:18px}.ba-label.after{right:18px}.ba-slider input{position:absolute;inset:0;z-index:8;width:100%;height:100%;opacity:0;cursor:ew-resize}.ba-line{position:absolute;z-index:6;top:0;bottom:0;left:var(--pos);width:3px;background:#fff;transform:translateX(-50%);pointer-events:none}.ba-handle{position:absolute;z-index:7;left:var(--pos);top:50%;width:52px;height:52px;border-radius:50%;background:#fff;color:#111;display:grid;place-items:center;font-size:24px;font-weight:900;transform:translate(-50%,-50%);box-shadow:0 4px 18px rgba(0,0,0,.3);pointer-events:none}
@media(max-width:850px){.ba-slider{height:520px}}
@media(max-width:540px){.ba-grid{gap:18px}.ba-slider{height:430px}.ba-label{top:12px}.ba-label.before{left:12px}.ba-label.after{right:12px}.ba-handle{width:46px;height:46px}}

/* Capital Region service area map */
.service-area-head{margin-bottom:32px}.service-area-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:24px;align-items:stretch}.map-wrap{min-height:470px;background:#dfe3e7;border:1px solid #d6d8da;overflow:hidden}.map-wrap iframe{display:block;width:100%;height:100%;min-height:470px;border:0}.area-panel{background:#fff;padding:34px;border-top:5px solid var(--blue)}.area-panel h3{font-size:26px;text-transform:uppercase;margin:0 0 22px}.area-panel .area-list{margin-bottom:24px}.area-note{color:#666;line-height:1.6;margin:0 0 24px}@media(max-width:850px){.service-area-grid{grid-template-columns:1fr}.map-wrap,.map-wrap iframe{min-height:360px}.area-panel{padding:26px}.service-area-head{margin-bottom:24px}}

/* Image-focused What We Do cards */
.services-heading{margin-bottom:42px}.services-heading h2{text-transform:none;font-size:clamp(46px,6vw,76px);letter-spacing:-.06em}.services{grid-template-columns:repeat(2,1fr);gap:22px}.service{height:570px;border-radius:34px}.service:after{background:linear-gradient(0deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.28) 42%,transparent 72%)}.service div{left:34px;right:34px;bottom:34px}.service h3{font-size:34px;line-height:1.05;margin:0 0 20px;letter-spacing:-.035em}.service span{font-size:17px;text-transform:none;letter-spacing:0;color:#fff;font-weight:800}.service:hover img{transform:scale(1.025)}
@media(max-width:850px){.services{grid-template-columns:1fr}.service{height:540px}}
@media(max-width:540px){.services-heading{margin-bottom:34px}.services-heading h2{font-size:50px}.services{display:grid;overflow:visible;grid-template-columns:1fr;gap:28px}.service{min-width:0;width:100%;height:500px;border-radius:30px}.service div{left:25px;right:25px;bottom:28px}.service h3{font-size:30px;margin-bottom:16px}.service span{font-size:16px}}

/* D&D-inspired centered footer */
.footer-dd{padding:64px 0 28px;background:#080a0d}.footer-dd .footer-brand{text-align:center;max-width:720px;margin:0 auto}.footer-dd .footer-brand img{width:220px;height:190px;object-fit:contain;margin:0 auto 20px;background:#fff;border-radius:14px}.footer-dd .footer-brand h3{font-size:32px;line-height:1;margin:0 0 15px;font-family:Arial Black,Arial,sans-serif;letter-spacing:-.025em}.footer-dd .footer-brand p{max-width:650px;margin:0 auto 22px;color:#d0d4d9;line-height:1.5}.footer-call{display:inline-flex!important;align-items:center;justify-content:center;background:linear-gradient(90deg,#1268ed,#10a8f4);color:#fff!important;font-weight:900;border-radius:999px;padding:14px 24px;box-shadow:0 8px 26px rgba(16,126,238,.25)}.footer-divider{height:1px;background:#2a2f35;margin:36px 0 28px}.footer-info{display:grid;grid-template-columns:repeat(3,1fr);gap:55px}.footer-info h4{font-family:Arial Black,Arial,sans-serif;margin:0 0 10px;font-size:15px}.footer-info p,.footer-info a{margin:0;color:#d0d4d9;line-height:1.55}.footer-social{display:inline-flex!important;border:1px solid #8c9299;border-radius:999px;padding:9px 17px;color:#fff!important}.footer-dd .copyright{text-align:center;margin-top:34px}.footer-dd img{max-width:none}
@media(max-width:700px){.footer-dd{padding-top:50px}.footer-dd .footer-brand img{width:190px;height:165px}.footer-dd .footer-brand h3{font-size:27px}.footer-info{grid-template-columns:1fr;gap:26px;text-align:center}.footer-divider{margin-top:30px}.footer-dd .copyright{margin-top:28px}}

/* Homepage free estimate form */
.estimate-section{background:#f1f1ef}.estimate-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:70px;align-items:start}.estimate-copy{padding-top:12px}.estimate-copy h2{text-transform:none;max-width:520px}.estimate-phone{margin-top:28px;line-height:1.7}.estimate-phone a{font-size:24px;font-weight:900}.estimate-form{background:#fff;padding:34px;border-top:5px solid var(--blue);box-shadow:0 12px 35px rgba(10,13,17,.08)}.estimate-form input,.estimate-form select,.estimate-form textarea{border:1px solid #d7dade;background:#fafafa}.estimate-form input:focus,.estimate-form select:focus,.estimate-form textarea:focus{outline:2px solid var(--blue);outline-offset:-1px;background:#fff}@media(max-width:850px){.estimate-grid{grid-template-columns:1fr;gap:34px}}@media(max-width:540px){.estimate-form{padding:22px}.estimate-copy h2{font-size:44px}}

.review-scroller{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px 2px 24px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.review-scroller::-webkit-scrollbar{display:none}.review-slide{flex:0 0 min(390px,88vw);scroll-snap-align:start;display:flex;flex-direction:column;min-height:270px}.review-slide p{flex:1}.review-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.review-source{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:18px;background:#f4f4f4}.review-source.google{font-family:Arial,sans-serif;color:#4285f4}.review-source.facebook{font-family:Arial,sans-serif;color:#1877f2}.review small{display:block;margin-top:5px;opacity:.58;font-weight:600}.swipe-hint{font-size:.9rem;font-weight:700;opacity:.55;margin-top:-10px}.reviews-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.review-full{height:auto;min-height:230px}.review-full p{font-size:1.05rem;line-height:1.7}.rating-only{opacity:.65;font-style:italic}.page-hero.compact{padding:72px 0 40px}@media(max-width:760px){.reviews-list{grid-template-columns:1fr}.review-slide{flex-basis:88vw}.review-full{min-height:0}}

.top-ticker{height:38px;overflow:hidden;display:flex;align-items:center;white-space:nowrap}
.ticker-track{display:flex;width:max-content;min-width:max-content;animation:elevatedTicker 18s linear infinite;will-change:transform}
.ticker-track span{display:block;padding-right:52px;font-weight:800;letter-spacing:.11em}
@keyframes elevatedTicker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.ticker-track{animation:none}}
.hero-logo-copy{width:min(660px,100%)}
.hero-logo{width:min(520px,82vw);max-height:300px;object-fit:contain;object-position:left center;margin:0 0 22px;mix-blend-mode:screen}
.hero-logo-copy p{margin-top:0}
@media(max-width:700px){.ticker-track{animation-duration:15s}.hero-logo{width:min(430px,88vw);max-height:235px;margin-bottom:18px}.hero-logo-copy{padding:64px 0}}

/* Single pass top ticker: fully enters from right, fully exits left, then restarts */
.top-ticker{
  position:relative;
  height:38px;
  overflow:hidden;
  display:block;
  white-space:nowrap;
}
.ticker-track{display:none !important;}
.ticker-single{
  position:absolute;
  top:50%;
  left:0;
  width:max-content;
  font-weight:800;
  letter-spacing:.11em;
  transform:translate(100vw,-50%);
  animation:singleTickerPass 17s linear infinite;
  will-change:transform;
}
@keyframes singleTickerPass{
  from{transform:translate(100vw,-50%);}
  to{transform:translate(-100%,-50%);}
}
@media(max-width:700px){
  .ticker-single{animation-duration:15s;font-size:11px;}
}
@media(prefers-reduced-motion:reduce){
  .ticker-single{animation:none;transform:translate(12px,-50%);}
}

/* Header estimate + call actions */
.header-actions{display:flex;align-items:center;gap:10px}
.header-call{background:#111;color:#fff;border-color:#111}
.header-call:hover{background:#2a2a2a;border-color:#2a2a2a}
@media(max-width:900px){
  .header-actions{display:none}
}

/* Why Choose Us */
.why-choose{background:#fff;color:#111;padding:96px 0}
.why-choose-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:80px}
.why-logo-panel{display:flex;align-items:center;justify-content:center;min-height:470px}
.why-logo-panel img{display:block;width:min(540px,100%);max-height:470px;object-fit:contain}
.why-copy h2{font-size:clamp(42px,5vw,72px);line-height:.95;margin:10px 0 26px;text-transform:uppercase}
.why-copy p{font-size:17px;line-height:1.75;color:#555;max-width:650px}
.why-points{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0}
.why-points span{border:1px solid #ddd;padding:10px 14px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.why-copy .actions{display:flex;align-items:center;gap:22px;margin-top:28px}
.why-copy .text-link{font-weight:800;text-decoration:none;color:#111}
@media(max-width:820px){
 .why-choose{padding:64px 0}
 .why-choose-grid{grid-template-columns:1fr;gap:36px}
 .why-logo-panel{min-height:0}
 .why-logo-panel img{width:min(390px,88vw);max-height:330px}
 .why-copy h2{font-size:44px}
}

/* Elevated Asphalt: more distinct, industrial visual language */
h1,h2{font-weight:900;letter-spacing:-.045em}
.eyebrow{letter-spacing:.18em;font-weight:900}
.btn,.service-card,.review-card,.why-points span,input,textarea,select{border-radius:2px!important}
.service-card{box-shadow:none!important;border:1px solid rgba(0,0,0,.12);transition:transform .22s ease,border-color .22s ease}
.service-card:hover{transform:translateY(-4px);border-color:#111}
.service-card img{filter:saturate(.82) contrast(1.06)}
.service-card h3{text-transform:uppercase;letter-spacing:-.02em}
.why-choose{border-top:1px solid #ddd;border-bottom:1px solid #ddd}
.why-choose-grid{grid-template-columns:.85fr 1.15fr!important;gap:96px!important}
.why-logo-panel{border-right:1px solid #ddd;padding-right:64px}
.why-points span{background:#111;color:#fff;border-color:#111!important}
footer{border-top:1px solid rgba(255,255,255,.18)}
footer h3,footer h4{text-transform:uppercase;letter-spacing:.08em}
@media(min-width:901px){.nav a{font-size:12px;letter-spacing:.055em;text-transform:uppercase}}
@media(max-width:820px){
 .why-choose-grid{grid-template-columns:1fr!important;gap:36px!important}
 .why-logo-panel{border-right:0;border-bottom:1px solid #ddd;padding:0 0 32px}
}

/* Premium homepage re-layout: intentionally different from Everything Landscaping */
@media(min-width:821px){
  /* Services become large editorial bands rather than a conventional card grid */
  .service-editorial{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    border-top:1px solid #d8d8d8;
  }
  .service-editorial .service-card{
    display:grid!important;
    grid-template-columns:minmax(320px,46%) 1fr;
    min-height:310px;
    border:0!important;
    border-bottom:1px solid #d8d8d8!important;
    background:transparent!important;
    overflow:hidden;
    align-items:stretch;
  }
  .service-editorial .service-card:nth-child(even){
    grid-template-columns:1fr minmax(320px,46%);
  }
  .service-editorial .service-card:nth-child(even) img{
    grid-column:2;
    grid-row:1;
  }
  .service-editorial .service-card:nth-child(even) > div,
  .service-editorial .service-card:nth-child(even) .service-card-content{
    grid-column:1;
    grid-row:1;
  }
  .service-editorial .service-card img{
    width:100%!important;
    height:310px!important;
    object-fit:cover!important;
  }
  .service-editorial .service-card > div,
  .service-editorial .service-card .service-card-content{
    padding:52px 58px!important;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }
  .service-editorial .service-card h3{
    font-size:clamp(28px,3vw,46px)!important;
    margin-bottom:16px!important;
  }

  /* More editorial Why section with logo as restrained brand stamp */
  .why-editorial{
    grid-template-columns:34% 1fr!important;
    gap:9vw!important;
    align-items:start!important;
  }
  .why-editorial .why-logo-panel{
    position:sticky;
    top:130px;
    min-height:0!important;
    padding:20px 60px 50px 0!important;
  }
  .why-editorial .why-logo-panel img{
    max-width:330px!important;
  }
  .why-editorial .why-copy{
    padding-top:10px;
  }
}

/* Broader premium section rhythm */
.home section{padding-top:110px;padding-bottom:110px}
.home .hero{padding-top:0;padding-bottom:0}

/* Reviews feel like a horizontal editorial strip rather than repeated cards */
.review-scroller .review-card{
  min-width:min(520px,82vw)!important;
  padding:34px!important;
  box-shadow:none!important;
  border-top:3px solid #111!important;
  border-left:0!important;
  border-right:0!important;
  border-bottom:1px solid #ddd!important;
}

/* Mobile retains strong hierarchy without alternating cramped rows */
@media(max-width:820px){
  .service-editorial{display:block!important}
  .service-editorial .service-card{margin-bottom:24px}
  .service-editorial .service-card img{height:230px!important}
}

/* Regional contractor / multi-location corporate feel */
:root{--corp-black:#0a0a0a;--corp-gray:#f2f2f0;--corp-line:#d4d4d1}
body{background:#fff}
.container{max-width:1320px}

/* Larger, more architectural hero */
.hero h1{max-width:980px;font-size:clamp(58px,8vw,118px)!important;line-height:.84!important;letter-spacing:-.065em!important}
.hero p{max-width:650px;font-size:18px;line-height:1.6}
.hero .actions{margin-top:34px}

/* Corporate section rhythm */
.home section:not(.hero){padding-top:120px;padding-bottom:120px}
.home section h2{max-width:900px}

/* Capabilities read as divisions, not small-business cards */
.service-editorial{border-top:1px solid var(--corp-line)!important}
.service-editorial .service-card{
  min-height:380px!important;
  border-bottom:1px solid var(--corp-line)!important;
}
.service-editorial .service-card img{height:380px!important}
.service-editorial .service-card h3{
  font-size:clamp(34px,4vw,58px)!important;
  line-height:.95!important;
}
.service-editorial .service-card p{font-size:16px;line-height:1.75;max-width:560px}

/* Markets band */
.markets-band{background:var(--corp-gray);border-top:1px solid var(--corp-line);border-bottom:1px solid var(--corp-line)}
.markets-inner{display:grid;grid-template-columns:1.25fr .75fr;gap:90px;align-items:end}
.markets-inner h2{font-size:clamp(44px,5vw,78px);line-height:.95;margin:14px 0 0;text-transform:uppercase}
.markets-list{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #aaa}
.markets-list span{padding:22px 8px;border-bottom:1px solid #aaa;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}

/* Why section feels like a corporate brand statement */
.why-choose{background:#fff!important}
.why-editorial .why-copy h2{font-size:clamp(50px,6vw,86px)!important}
.why-editorial .why-copy p{font-size:18px;line-height:1.8}

/* Strong corporate closing statement */
.corporate-cta{background:var(--corp-black);color:#fff!important;padding:105px 0!important}
.corporate-cta::before{display:none!important}
.corporate-cta-inner{display:flex;align-items:flex-end;justify-content:space-between;gap:60px}
.corporate-cta h2{font-size:clamp(48px,6vw,88px);line-height:.9;margin:14px 0 0;text-transform:uppercase;letter-spacing:-.055em}
.corporate-cta .eyebrow{color:#aaa}
.corporate-cta-btn{background:#fff!important;color:#111!important;border-color:#fff!important;white-space:nowrap}

/* Footer becomes compact and institutional */
footer{padding-top:70px!important}
footer p,footer a{font-size:14px}

@media(max-width:820px){
  .home section:not(.hero){padding-top:76px;padding-bottom:76px}
  .hero h1{font-size:clamp(48px,15vw,72px)!important}
  .markets-inner{grid-template-columns:1fr;gap:42px}
  .markets-list{grid-template-columns:1fr}
  .corporate-cta-inner{display:block}
  .corporate-cta-btn{display:inline-block;margin-top:36px}
  .service-editorial .service-card{min-height:0!important}
}

/* ===== Elevated Asphalt full homepage redesign ===== */
.ea-home{overflow:hidden;background:#fff}.ea-hero{position:relative;height:min(820px,82vh);min-height:680px;background:#0b0d10;color:#fff;display:flex;align-items:flex-end}.ea-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.ea-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,6,8,.83),rgba(4,6,8,.38) 58%,rgba(4,6,8,.1)),linear-gradient(0deg,rgba(0,0,0,.58),transparent 60%)}.ea-hero-inner{position:relative;z-index:2;padding-bottom:78px}.ea-hero h1{font-size:clamp(64px,8.6vw,132px);line-height:.82;letter-spacing:-.07em;text-transform:uppercase;margin:15px 0 30px;max-width:1080px}.ea-hero p{font-size:19px;line-height:1.65;max-width:620px;color:#e8e8e8}.ea-light-btn{background:#fff!important;color:#0b0d10!important}.ea-text-call{color:#fff;font-weight:900;text-transform:uppercase;letter-spacing:.05em;display:inline-flex;align-items:center;padding:16px 5px}
.ea-intro{padding:115px 0 125px}.ea-intro-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:110px;align-items:end}.ea-intro h2{font-size:clamp(50px,6vw,86px);line-height:.94;letter-spacing:-.055em;text-transform:uppercase;margin:14px 0 0;max-width:850px}.ea-intro-copy p{font-size:18px;line-height:1.75;color:#555;margin:0 0 28px}.ea-intro-copy a{font-weight:900;text-transform:uppercase;font-size:13px;letter-spacing:.08em;border-bottom:1px solid #111;padding-bottom:5px}
.ea-feature-image{height:72vh;min-height:560px;background:#111}.ea-feature-image img{width:100%;height:100%;object-fit:cover}
.ea-capabilities{background:#0b0d10;color:#fff;padding:120px 0}.ea-cap-head{display:grid;grid-template-columns:.7fr 1.4fr .7fr;gap:50px;align-items:end;margin-bottom:70px}.ea-cap-head h2{font-size:clamp(48px,6vw,82px);line-height:.92;text-transform:uppercase;letter-spacing:-.055em;margin:0}.ea-cap-head p{color:#9fa4aa;line-height:1.7;margin:0}.ea-cap-list{border-top:1px solid #33383e}.ea-cap-row{position:relative;display:grid;grid-template-columns:90px 1fr 60px;align-items:center;min-height:150px;border-bottom:1px solid #33383e;color:#fff;isolation:isolate}.ea-cap-row .ea-num{font-size:12px;color:#858b92;font-weight:900}.ea-cap-row h3{font-size:clamp(30px,4vw,58px);text-transform:uppercase;letter-spacing:-.04em;margin:0;position:relative;z-index:2;transition:.2s}.ea-arrow{font-size:30px;text-align:right;position:relative;z-index:2}.ea-cap-row img{position:absolute;right:95px;top:50%;transform:translateY(-50%) scale(.94);width:260px;height:130px;object-fit:cover;opacity:0;transition:.25s;z-index:1}.ea-cap-row:hover img{opacity:1;transform:translateY(-50%) scale(1)}.ea-cap-row:hover h3{transform:translateX(10px)}
.ea-project{display:grid;grid-template-columns:1.2fr .8fr;min-height:720px;background:#c5cbd1}.ea-project-photo img{width:100%;height:100%;object-fit:cover}.ea-project-copy{padding:90px 7vw;display:flex;flex-direction:column;justify-content:center}.ea-project-copy .eyebrow{color:#0a0b0c}.ea-project-copy h2{font-size:clamp(50px,6vw,86px);line-height:.91;text-transform:uppercase;letter-spacing:-.055em;margin:16px 0 30px}.ea-project-copy p{font-size:18px;line-height:1.75;max-width:520px;margin-bottom:30px}
.ea-markets{padding:125px 0;background:#f3f3f1}.ea-markets-title{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:1px solid #c8c8c5;padding-bottom:55px}.ea-markets-title h2{font-size:clamp(56px,7vw,98px);line-height:.86;text-transform:uppercase;letter-spacing:-.06em;margin:0}.ea-market-grid{display:grid;grid-template-columns:1fr 1fr}.ea-market-grid article{padding:58px 55px 30px 0;border-bottom:1px solid #c8c8c5}.ea-market-grid article+article{border-left:1px solid #c8c8c5;padding-left:55px}.ea-market-grid span{font-size:12px;font-weight:900;color:#777}.ea-market-grid h3{font-size:38px;text-transform:uppercase;margin:18px 0}.ea-market-grid p{color:#555;line-height:1.75;max-width:500px}
.ea-standard{background:#fff;padding:125px 0}.ea-standard-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:110px}.ea-standard-logo{display:flex;align-items:flex-start;justify-content:center;border-right:1px solid #ddd;padding-right:70px}.ea-standard-logo img{width:100%;max-width:400px;position:sticky;top:130px}.ea-standard h2{font-size:clamp(54px,6vw,88px);line-height:.9;text-transform:uppercase;letter-spacing:-.055em;margin:15px 0 55px}.ea-standard-list>div{display:grid;grid-template-columns:55px 1fr 1fr;gap:25px;padding:28px 0;border-top:1px solid #ddd;align-items:start}.ea-standard-list span{font-size:12px;font-weight:900;color:#777}.ea-standard-list h3{font-size:23px;text-transform:uppercase;margin:0}.ea-standard-list p{margin:0;color:#5a5a5a;line-height:1.65}
.ea-before-after{background:#0b0d10;color:#fff;padding:120px 0}.ea-ba-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:45px}.ea-ba-head h2{font-size:clamp(54px,6vw,88px);line-height:.9;text-transform:uppercase;margin:12px 0 0}.ea-ba-head>a{font-weight:900;text-transform:uppercase;font-size:13px}.ea-before-after .ba-grid{grid-template-columns:1fr 1fr;gap:16px}.ea-before-after .ba-slider{height:560px}
.ea-home #reviews{background:#fff;padding:120px 0}.ea-home #reviews .section-head h2{font-size:clamp(50px,6vw,80px)}.ea-home #reviews .review{border-top:1px solid #111;min-height:310px;box-shadow:none}.ea-home #areas{padding:120px 0}.ea-home .estimate-section{padding:120px 0;background:#0b0d10;color:#fff}.ea-home .estimate-section .lead{color:#aeb5bd}.ea-home .estimate-section .estimate-phone a{color:#fff}.ea-home .estimate-form{border-top:0;box-shadow:none}
.ea-final-cta{background:#c5cbd1;padding:110px 0}.ea-final-cta .wrap{display:grid;grid-template-columns:1.3fr .7fr;gap:80px;align-items:end}.ea-final-cta .eyebrow{grid-column:1/-1;color:#0a0b0c}.ea-final-cta h2{font-size:clamp(62px,8vw,112px);line-height:.82;text-transform:uppercase;letter-spacing:-.065em;margin:0}.ea-final-cta p{font-size:18px;line-height:1.65;margin:0 0 28px}
@media(max-width:850px){.ea-hero{min-height:680px;height:78vh}.ea-hero-inner{padding-bottom:55px}.ea-hero h1{font-size:clamp(52px,14vw,78px)}.ea-intro{padding:78px 0}.ea-intro-grid,.ea-cap-head,.ea-project,.ea-standard-grid,.ea-final-cta .wrap{grid-template-columns:1fr;gap:42px}.ea-feature-image{height:58vh;min-height:430px}.ea-capabilities,.ea-markets,.ea-standard,.ea-before-after,.ea-home #reviews,.ea-home #areas,.ea-home .estimate-section{padding:80px 0}.ea-cap-head{margin-bottom:45px}.ea-cap-row{grid-template-columns:45px 1fr 35px;min-height:112px}.ea-cap-row h3{font-size:30px}.ea-cap-row img{display:none}.ea-project{min-height:0}.ea-project-photo{height:500px}.ea-project-copy{padding:70px 30px}.ea-markets-title{display:block}.ea-markets-title .eyebrow{margin-bottom:20px}.ea-market-grid{grid-template-columns:1fr}.ea-market-grid article,.ea-market-grid article+article{border-left:0;padding:42px 0}.ea-standard-logo{border-right:0;border-bottom:1px solid #ddd;padding:0 0 40px;justify-content:flex-start}.ea-standard-logo img{position:static;max-width:320px}.ea-standard-list>div{grid-template-columns:38px 1fr;gap:18px}.ea-standard-list p{grid-column:2}.ea-before-after .ba-grid{grid-template-columns:1fr}.ea-before-after .ba-slider{height:480px}.ea-final-cta{padding:80px 0}}
@media(max-width:540px){.ea-hero{min-height:620px}.ea-hero h1{font-size:50px}.ea-hero p{font-size:16px}.ea-intro h2,.ea-cap-head h2,.ea-project-copy h2,.ea-markets-title h2,.ea-standard h2,.ea-ba-head h2{font-size:44px}.ea-intro-grid{gap:32px}.ea-feature-image{min-height:390px}.ea-cap-row h3{font-size:25px}.ea-project-photo{height:390px}.ea-project-copy{padding:58px 22px}.ea-market-grid h3{font-size:31px}.ea-standard-list>div{grid-template-columns:32px 1fr}.ea-before-after .ba-slider{height:390px}.ea-ba-head{display:block}.ea-ba-head>a{display:inline-block;margin-top:20px}.ea-final-cta h2{font-size:52px}}

/* Asphalt road visual direction */
.ea-home{--road-yellow:#c5cbd1;--road-black:#0a0b0c}
.ea-hero .eyebrow,.ea-capabilities .eyebrow,.ea-before-after .eyebrow{color:var(--road-yellow)}
.ea-hero-inner:before{content:"";display:block;width:88px;height:6px;background:var(--road-yellow);margin-bottom:20px}
.ea-feature-image{position:relative}.ea-feature-image:after{content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);height:115px;width:8px;background:repeating-linear-gradient(to bottom,var(--road-yellow) 0 28px,transparent 28px 48px)}
.ea-capabilities{position:relative}.ea-capabilities:before,.ea-before-after:before{content:"";position:absolute;left:0;top:0;width:100%;height:7px;background:var(--road-yellow)}
.ea-cap-row .ea-num,.ea-cap-row:hover .ea-arrow{color:var(--road-yellow)}.ea-cap-row:hover{background:#121416}
.ea-project{background:var(--road-yellow);grid-template-columns:.92fr 1.08fr}.ea-project-photo{order:2;clip-path:polygon(7% 0,100% 0,100% 100%,0 100%)}.ea-project-copy{order:1;padding-left:max(30px,calc((100vw - 1180px)/2));padding-right:6vw}.ea-project-copy .eyebrow{color:#0a0b0c}
.ea-markets{background:#ecebe6}.ea-market-grid article{position:relative;overflow:hidden}.ea-market-grid article:after{content:"";position:absolute;bottom:0;left:0;height:6px;width:86px;background:var(--road-yellow)}
.ea-standard-list>div{transition:.2s}.ea-standard-list>div:hover{padding-left:14px;border-top-color:var(--road-yellow)}.ea-standard-list span{color:#9fa4aa}
.ea-before-after{position:relative}.ea-final-cta{background:var(--road-yellow);position:relative}.ea-final-cta:after{content:"";position:absolute;right:6vw;top:0;height:100%;width:8px;background:repeating-linear-gradient(to bottom,#111 0 32px,transparent 32px 56px);opacity:.18}.ea-final-cta .eyebrow{color:#0a0b0c}
@media(max-width:850px){.ea-project{grid-template-columns:1fr}.ea-project-photo{order:1;clip-path:none}.ea-project-copy{order:2;padding-left:30px}.ea-feature-image:after{height:80px}}
@media(max-width:540px){.ea-project-copy{padding-left:22px}.ea-final-cta:after{right:18px}}

/* Road stripe identity — restrained, architectural */
.ea-home{--stripe:#c5cbd1}
/* dashed centerline between major image/content transitions */
.ea-intro,.ea-markets{position:relative}
.ea-intro:after{content:"";position:absolute;left:50%;bottom:-44px;width:8px;height:88px;transform:translateX(-50%);z-index:5;background:repeating-linear-gradient(to bottom,var(--stripe) 0 24px,transparent 24px 42px)}
/* roadway divider running beside capability list */
.ea-cap-list{position:relative;padding-left:34px}
.ea-cap-list:before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:5px;background:repeating-linear-gradient(to bottom,var(--stripe) 0 26px,transparent 26px 46px)}
/* double yellow line motif at project transition */
.ea-project{position:relative}
.ea-project:before,.ea-project:after{content:"";position:absolute;z-index:4;top:0;bottom:0;width:4px;background:#c5cbd1;pointer-events:none}
.ea-project:before{left:calc(46% - 7px)}.ea-project:after{left:calc(46% + 7px)}
/* horizontal road marking above before/after */
.ea-before-after .wrap{position:relative}
.ea-before-after .wrap:before{content:"";display:block;width:150px;height:5px;margin:0 0 30px;background:repeating-linear-gradient(to right,var(--stripe) 0 34px,transparent 34px 52px)}
/* final CTA gets a centered dashed lane marker */
.ea-final-cta .wrap{position:relative;z-index:2}
.ea-final-cta:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:7px;transform:translateX(-50%);background:repeating-linear-gradient(to bottom,rgba(17,17,17,.22) 0 34px,transparent 34px 58px)}
@media(max-width:850px){
 .ea-cap-list{padding-left:20px}.ea-cap-list:before{width:4px}
 .ea-project:before,.ea-project:after{top:auto;bottom:auto;height:4px;width:auto;left:0;right:0}
 .ea-project:before{top:calc(500px - 7px)}.ea-project:after{top:calc(500px + 7px)}
 .ea-final-cta:before{left:auto;right:24px;transform:none}
}
@media(max-width:540px){.ea-project:before{top:calc(390px - 7px)}.ea-project:after{top:calc(390px + 7px)}}

/* Swipeable timed homepage hero */
.ea-hero-carousel{position:relative;overflow:hidden;height:min(780px,82vh);min-height:620px;background:#090a0b}.ea-hero-slides,.ea-hero-slide{position:absolute;inset:0}.ea-hero-slide{opacity:0;visibility:hidden;transition:opacity .65s ease;pointer-events:none}.ea-hero-slide.active{opacity:1;visibility:visible;pointer-events:auto;z-index:2}.ea-hero-slide>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.035);transition:transform 6.5s ease}.ea-hero-slide.active>img{transform:scale(1)}.ea-hero-slide .ea-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,5,6,.88),rgba(4,5,6,.52) 50%,rgba(4,5,6,.18))}.ea-hero-slide .ea-hero-inner{position:relative;z-index:3;height:100%;display:flex;flex-direction:column;justify-content:center}.ea-hero-arrow{position:absolute;z-index:5;top:50%;transform:translateY(-50%);width:54px;height:70px;border:1px solid #ffffff55;background:#05060770;color:#fff;font-size:42px;cursor:pointer}.ea-hero-arrow.prev{left:22px}.ea-hero-arrow.next{right:22px}.ea-hero-arrow:hover{background:#c5cbd1;color:#111}.ea-hero-dots{position:absolute;z-index:5;left:50%;bottom:34px;transform:translateX(-50%);display:flex;gap:10px}.ea-hero-dots button{width:42px;height:4px;border:0;padding:0;background:#ffffff60}.ea-hero-dots button.active{background:#c5cbd1}.ea-hero-progress{position:absolute;z-index:5;left:0;right:0;bottom:0;height:5px;background:#ffffff20}.ea-hero-progress span{display:block;height:100%;width:0;background:#c5cbd1}.ea-hero-progress span.run{animation:heroTimer 6.5s linear forwards}@keyframes heroTimer{to{width:100%}}@media(max-width:850px){.ea-hero-carousel{height:72vh;min-height:590px}.ea-hero-arrow{width:42px;height:58px}.ea-hero-arrow.prev{left:8px}.ea-hero-arrow.next{right:8px}.ea-hero-dots{bottom:24px}.ea-hero-slide .ea-hero-shade{background:linear-gradient(0deg,rgba(4,5,6,.9),rgba(4,5,6,.45) 75%,rgba(4,5,6,.2))}}


/* 2026-09 homepage visual refinement */
.ea-work-band{
  position:relative;display:grid;grid-template-columns:1.45fr .55fr;
  min-height:560px;background:#0b0d0f;overflow:hidden
}
.ea-work-band-main,.ea-work-band-side{min-height:560px;overflow:hidden}
.ea-work-band img{width:100%;height:100%;display:block;object-fit:cover}
.ea-work-band-main img{object-position:center}
.ea-work-band-side{border-left:6px solid #c5cbd1}
.ea-work-band-side img{object-position:center}
.ea-work-band-label{
  position:absolute;left:max(5vw,40px);bottom:38px;background:#0b0d0fe8;
  color:#fff;padding:20px 26px;border-left:5px solid #c5cbd1
}
.ea-work-band-label span{display:block;color:#c5cbd1;font-size:11px;font-weight:900;letter-spacing:.16em;margin-bottom:7px}
.ea-work-band-label strong{font-size:clamp(24px,3vw,42px);letter-spacing:-.02em}

.ea-services-new{background:#0b0d0f;color:#fff;padding:105px 0}
.ea-services-new-head{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:end;margin-bottom:44px}
.ea-services-new-head h2{font-size:clamp(46px,6vw,78px);line-height:.94;text-transform:uppercase;margin:10px 0 0;letter-spacing:-.045em}
.ea-services-new-head p{color:#b7bcc2;line-height:1.7;max-width:520px;margin:0}
.ea-service-card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:#292d31}
.ea-service-card{position:relative;min-height:440px;overflow:hidden;color:#fff;text-decoration:none;background:#111}
.ea-service-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.ea-service-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,6,7,.15),rgba(5,6,7,.88))}
.ea-service-card:hover img{transform:scale(1.035)}
.ea-service-num{position:absolute;top:24px;left:26px;color:#c5cbd1;font-size:12px;font-weight:900;letter-spacing:.14em}
.ea-service-card-copy{position:absolute;left:28px;right:28px;bottom:28px}
.ea-service-card-copy h3{font-size:clamp(27px,3vw,42px);line-height:1;text-transform:uppercase;margin:0 0 12px}
.ea-service-card-copy p{max-width:460px;color:#d8dadd;line-height:1.55;margin:0 0 20px}
.ea-service-card-copy>span{display:inline-block;color:#c5cbd1;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}

.ea-final-cta-new{display:grid;grid-template-columns:1.08fr .92fr;min-height:610px;background:#111;color:#fff}
.ea-final-photo{min-height:610px;overflow:hidden}
.ea-final-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.ea-final-panel{display:flex;flex-direction:column;justify-content:center;padding:70px clamp(42px,7vw,110px);border-left:7px solid #c5cbd1}
.ea-final-panel h2{font-size:clamp(48px,6vw,82px);line-height:.92;text-transform:uppercase;letter-spacing:-.05em;margin:12px 0 26px}
.ea-final-panel p{color:#c9cdd0;line-height:1.7;max-width:520px;font-size:17px}
.ea-final-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:28px}
.ea-final-actions a:last-child{color:#fff;text-decoration:none;font-weight:800}
.ea-dark-btn{background:#c5cbd1!important;color:#111!important}

@media(max-width:850px){
  .ea-work-band{grid-template-columns:1fr;min-height:0}
  .ea-work-band-main{min-height:420px}.ea-work-band-side{display:none}
  .ea-work-band-label{left:20px;right:20px;bottom:20px}
  .ea-services-new{padding:70px 0}
  .ea-services-new-head{grid-template-columns:1fr;gap:20px}
  .ea-service-card-grid{grid-template-columns:1fr}
  .ea-service-card{min-height:390px}
  .ea-final-cta-new{grid-template-columns:1fr}
  .ea-final-photo{min-height:390px}
  .ea-final-panel{padding:58px 24px;border-left:0;border-top:6px solid #c5cbd1}
}

/* Elevated Asphalt typography system */
html,body,button,input,textarea,select{
  font-family:"Inter",Arial,sans-serif;
}
h1,h2,h3,
.ea-hero-inner h1,
.ea-services-new-head h2,
.ea-service-card-copy h3,
.ea-final-panel h2,
.why-copy h2{
  font-family:"Barlow Condensed","Arial Narrow",Arial,sans-serif !important;
  font-weight:800;
  letter-spacing:-.015em;
}
.ea-hero-inner h1{
  font-weight:900;
  letter-spacing:-.02em;
}
.eyebrow,
.btn,
nav a,
.ea-service-num,
.ea-service-card-copy>span,
.ea-work-band-label span{
  font-family:"Inter",Arial,sans-serif !important;
  letter-spacing:.1em;
}

.crack-before-after-photo{margin-top:28px;max-width:1100px}
.crack-before-after-photo img{display:block;width:100%;height:auto;object-fit:contain}
@media(max-width:760px){.crack-before-after-photo{margin-top:20px}}

/* 2026 polish pass */
.ea-trust-strip{background:#0a0b0c;color:#fff;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}
.ea-trust-strip-inner{min-height:62px;display:flex;align-items:center;justify-content:center;gap:24px;font-size:12px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.ea-trust-strip-inner i{width:4px;height:4px;border-radius:50%;background:#c5cbd1;display:block}.ea-trust-strip a{color:#fff;text-decoration:none}.ea-trust-strip a:hover{color:#d7dade}
.ea-intro-points{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.ea-intro-points span{border:1px solid #d7dade;padding:10px 13px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.ea-service-card{transition:transform .28s ease,box-shadow .28s ease}.ea-service-card:hover{transform:translateY(-5px);box-shadow:0 20px 44px rgba(0,0,0,.18)}.ea-service-card img{transition:transform .55s ease}.ea-service-card:hover img{transform:scale(1.025)}
.ea-review-featured{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;overflow:visible!important}.ea-review-featured .review{min-width:0!important;height:100%;border-top:3px solid #c5cbd1}.swipe-hint a{color:inherit;text-decoration:none;font-weight:800}
.estimate-section{background:#f2f3f3}.estimate-grid{align-items:start}.estimate-benefits{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.estimate-benefits span{background:#0a0b0c;color:#fff;padding:9px 12px;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.ea-premium-form{background:#fff;padding:30px;border:1px solid #d7dade;box-shadow:0 18px 50px rgba(10,11,12,.08)}
.ea-premium-form label,.service-checks legend{display:block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#333}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ea-premium-form input,.ea-premium-form textarea{margin-top:7px;text-transform:none;letter-spacing:normal}.service-checks{border:1px solid #d7dade;padding:16px;margin:4px 0 16px}.service-checks legend{padding:0 7px}.service-checks label{display:inline-flex;align-items:center;gap:7px;margin:7px 16px 7px 0;font-size:12px;text-transform:none;letter-spacing:0;font-weight:600}.service-checks input{margin:0;width:auto}.form-note{display:block;color:#6e747b;line-height:1.45;margin-top:12px}
.ea-final-cta-new{border-top:1px solid #d7dade}.footer-dd{border-top:1px solid rgba(255,255,255,.12)}
.reveal-ready{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.reveal-ready.reveal-in{opacity:1;transform:none}
@media(max-width:900px){.ea-review-featured{grid-template-columns:1fr}.ea-trust-strip-inner{flex-wrap:wrap;gap:10px 14px;padding:14px 20px}.ea-trust-strip-inner i{display:none}}
@media(max-width:760px){.form-row{grid-template-columns:1fr}.ea-premium-form{padding:20px}.ea-service-card:hover{transform:none}.ea-service-card:hover img{transform:none}}
@media(prefers-reduced-motion:reduce){.reveal-ready,.ea-service-card,.ea-service-card img{transition:none!important;transform:none!important;opacity:1!important}}
/* Five-service layout: remove the visual empty sixth grid cell by letting the final card span the row. */
@media (min-width:761px){
  .ea-service-card-grid > .ea-service-card:last-child{
    grid-column:1 / -1 !important;
  }
}

/* Reviews: horizontal swipe carousel */
#reviews .review-scroller.ea-review-featured{
  display:flex !important;
  grid-template-columns:none !important;
  gap:18px;
  overflow-x:auto !important;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-inline:contain;
  scrollbar-width:none;
  padding:6px 2px 18px;
  touch-action:pan-x pan-y;
}
#reviews .review-scroller.ea-review-featured::-webkit-scrollbar{display:none}
#reviews .review-scroller.ea-review-featured .review{
  flex:0 0 min(420px, 86vw) !important;
  width:min(420px, 86vw);
  scroll-snap-align:start;
  scroll-snap-stop:always;
}
#reviews .swipe-hint{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
}
#reviews .swipe-hint::before{
  content:"Swipe to see more reviews →";
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-weight:700;
  color:#6f7479;
}
@media (max-width:760px){
  #reviews .review-scroller.ea-review-featured .review{
    flex-basis:88vw !important;
    width:88vw;
  }
  #reviews .swipe-hint{align-items:flex-start;flex-direction:column}
}

/* Six-service grid: every card is exactly the same size */
.ea-service-card-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  align-items:stretch !important;
}
.ea-service-card-grid > .ea-service-card{
  grid-column:auto !important;
  width:100% !important;
  height:430px !important;
  min-height:430px !important;
}
.ea-service-card-grid > .ea-service-card:nth-child(5),
.ea-service-card-grid > .ea-service-card:last-child{
  grid-column:auto !important;
}
.ea-service-card-grid > .ea-service-card > img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}
@media(max-width:760px){
  .ea-service-card-grid{grid-template-columns:1fr !important}
  .ea-service-card-grid > .ea-service-card{
    height:390px !important;
    min-height:390px !important;
  }
}

/* Five-service layout: equal card dimensions, no sixth placeholder */
.ea-service-card-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  align-items:stretch !important;
}
.ea-service-card-grid > .ea-service-card{
  width:100% !important;
  height:430px !important;
  min-height:430px !important;
  grid-column:auto !important;
}
.ea-service-card-grid > .ea-service-card:nth-child(5):last-child{
  grid-column:1 / -1 !important;
  width:calc(50% - 0px) !important;
  justify-self:center !important;
}
.ea-service-card-grid > .ea-service-card > img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}
@media(max-width:760px){
  .ea-service-card-grid{grid-template-columns:1fr !important}
  .ea-service-card-grid > .ea-service-card,
  .ea-service-card-grid > .ea-service-card:nth-child(5):last-child{
    grid-column:auto !important;
    width:100% !important;
    height:390px !important;
    min-height:390px !important;
  }
}

.footer-social{display:block;margin:6px 0}

/* Six equal service cards */
.ea-service-card-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  align-items:stretch !important;
}
.ea-service-card-grid > .ea-service-card,
.ea-service-card-grid > .ea-service-card:nth-child(5):last-child{
  grid-column:auto !important;
  justify-self:stretch !important;
  width:100% !important;
  height:430px !important;
  min-height:430px !important;
}
.ea-service-card-grid > .ea-service-card > img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}
@media(max-width:760px){
  .ea-service-card-grid{grid-template-columns:1fr !important}
  .ea-service-card-grid > .ea-service-card{
    width:100% !important;
    height:390px !important;
    min-height:390px !important;
  }
}

/* Top Google + Facebook links */
.top.top-ticker{
  position:relative;
}
.top-social-links{
  position:absolute;
  right:18px;
  top:50%;
  transform:translateY(-50%);
  display:flex;
  gap:8px;
  z-index:3;
}
.top-social-links a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:5px 10px;
  border:1px solid rgba(255,255,255,.5);
  color:#fff;
  text-decoration:none;
  font-size:11px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
  background:rgba(0,0,0,.2);
}
.top-social-links a:hover{
  background:#fff;
  color:#0a0b0c;
}
@media(max-width:760px){
  .top.top-ticker{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:6px;
    padding-bottom:7px;
  }
  .top-social-links{
    position:static;
    transform:none;
  }
  .top-social-links a{
    min-height:26px;
    padding:4px 9px;
    font-size:10px;
  }
}

/* Icon-only top social buttons */
.top-social-links a{
  width:32px !important;
  height:32px !important;
  min-height:32px !important;
  padding:0 !important;
  border-radius:50%;
}
.top-social-links a svg{
  width:17px;
  height:17px;
  display:block;
}
@media(max-width:760px){
  .top-social-links a{
    width:30px !important;
    height:30px !important;
    min-height:30px !important;
    padding:0 !important;
  }
  .top-social-links a svg{width:16px;height:16px}
}

/* Separate stationary social bar above the moving ticker */
.top-social-bar{
  width:100%;
  min-height:42px;
  background:#050505;
  display:flex;
  align-items:center;
  justify-content:center;
  border-bottom:1px solid rgba(255,255,255,.14);
}
.top-social-bar .top-social-links{
  position:static !important;
  transform:none !important;
  display:flex !important;
  align-items:center;
  justify-content:center;
  gap:10px;
  z-index:auto;
}
.top-social-bar .top-social-links a{
  width:32px !important;
  height:32px !important;
  min-height:32px !important;
  padding:0 !important;
  border:1px solid rgba(255,255,255,.5);
  border-radius:50%;
  color:#fff;
  background:transparent;
}
.top-social-bar .top-social-links a svg{
  width:17px;
  height:17px;
}
.top.top-ticker{
  position:relative;
}
.top.top-ticker .ticker-single{
  /* preserve the site's existing ticker animation/format */
}
@media(max-width:760px){
  .top-social-bar{
    min-height:40px;
  }
  .top-social-bar .top-social-links{
    position:static !important;
    transform:none !important;
  }
  .top-social-bar .top-social-links a{
    width:30px !important;
    height:30px !important;
    min-height:30px !important;
  }
  .top.top-ticker{
    display:block !important;
    padding-bottom:0 !important;
  }
}

.patch-before-after{background:#f4f4f2}.patch-before-after h2{margin-bottom:14px}.patch-ba-grid{margin-top:34px;grid-template-columns:1fr}.patch-ba-grid .ba-slider{height:620px}@media(max-width:850px){.patch-ba-grid .ba-slider{height:520px}}@media(max-width:540px){.patch-ba-grid .ba-slider{height:430px}}

/* Asphalt patch before/after: full uncropped photos, no slider */
.patch-photo-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:28px;align-items:start}.patch-photo-card{margin:0;background:#0a0b0c;border:1px solid rgba(255,255,255,.12);overflow:hidden}.patch-photo-card img{display:block;width:100%;height:auto;object-fit:contain;background:#0a0b0c}.patch-photo-card figcaption{padding:12px 16px;color:#fff;font-weight:700;text-transform:uppercase;letter-spacing:.08em;text-align:center}.patch-before-after .lead{max-width:760px}@media(max-width:760px){.patch-photo-pair{grid-template-columns:1fr;gap:18px}}


/* Recent asphalt paving projects */
.paving-preview-section{padding:86px 0;background:#f5f5f2}.paving-preview-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:32px}.paving-preview-head h2{margin:8px 0 0}.paving-preview-link{color:#111;text-decoration:none;font-weight:800}.paving-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.paving-preview-card{display:block;background:#fff;color:#111;text-decoration:none;border:1px solid #deded8;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.paving-preview-card:hover{transform:translateY(-3px);box-shadow:0 14px 35px rgba(0,0,0,.09)}.paving-preview-card img{width:100%;height:340px;object-fit:cover;display:block}.paving-preview-copy{padding:22px 24px 26px}.paving-preview-copy>span{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:#6a6d70}.paving-preview-copy h3{margin:8px 0 8px;font-size:25px}.paving-preview-copy p{margin:0;color:#606469;line-height:1.65}.paving-projects-section{padding:90px 0;background:#f5f5f2}.paving-projects-head{max-width:760px;margin-bottom:44px}.paving-projects-head h2{margin:9px 0 12px}.paving-projects-head p{margin:0;color:#65696d;font-size:18px;line-height:1.65}.paving-project-block{padding:34px 0 46px;border-top:1px solid #d6d6d0}.paving-project-title{display:grid;grid-template-columns:120px 1fr;gap:28px;margin-bottom:24px;align-items:start}.paving-project-title>span{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:#73777b;padding-top:7px}.paving-project-title h3{font-size:30px;margin:0 0 8px}.paving-project-title p{margin:0;max-width:700px;color:#65696d;line-height:1.65}.paving-project-gallery{display:grid;gap:18px}.paving-project-gallery-three{grid-template-columns:repeat(3,minmax(0,1fr))}.paving-project-gallery-two{grid-template-columns:repeat(2,minmax(0,1fr))}.paving-project-gallery figure{margin:0;background:#0a0b0c;overflow:hidden}.paving-project-gallery img{display:block;width:100%;height:480px;object-fit:cover}.paving-project-gallery figure:first-child img{object-position:center center}.paving-project-gallery figcaption{padding:12px 16px;color:#fff;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.paving-project-cta{margin-top:14px;padding:30px 32px;background:#0a0b0c;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:24px}.paving-project-cta h3{margin:7px 0 0;color:#fff;font-size:28px}.paving-project-cta .eyebrow{color:#bfc3c7}@media(max-width:850px){.paving-preview-section,.paving-projects-section{padding:66px 0}.paving-project-gallery-three{grid-template-columns:1fr}.paving-project-gallery-two{grid-template-columns:1fr}.paving-project-gallery img{height:auto;max-height:none;object-fit:contain;background:#111}.paving-project-title{grid-template-columns:1fr;gap:8px}.paving-project-title>span{padding-top:0}.paving-project-cta{align-items:flex-start;flex-direction:column}}@media(max-width:680px){.paving-preview-head{align-items:flex-start;flex-direction:column}.paving-preview-grid{grid-template-columns:1fr}.paving-preview-card img{height:300px}.paving-projects-head p{font-size:16px}.paving-project-title h3{font-size:26px}.paving-project-cta{padding:24px}.paving-project-cta h3{font-size:24px}}
