*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Lato,sans-serif;background-color:#fff;color:#555;line-height:1.6;margin:0;padding-top:70px;overflow-x:hidden}header{position:fixed;top:0;left:0;width:100%;padding:0 10px;display:flex;align-items:center;justify-content:space-between;z-index:999;background-color:#000000e3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.nav-left{display:flex;align-items:center;gap:12px}#header-logo{max-height:80px;width:auto}.header-contact{color:#fff;font-size:.85rem;line-height:1.2;text-align:left}.header-contact a{color:#fff;text-decoration:none}.header-contact a:hover{text-decoration:underline}.nav-right ul{list-style:none;display:flex;gap:20px}.nav-right a{text-decoration:none;color:#fff;font-weight:600;transition:color .3s ease}.nav-right a:hover{color:#ddd}#hero,#about,#services{scroll-margin-top:70px}.hero{position:relative;width:100%;height:80vh;background:url(/images/heavy_duty/big_truck_front.png) center center / cover no-repeat;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,filter .2s ease}.hero-overlay{position:absolute;inset:0;background-color:#0006}.hero-content{position:relative;text-align:center;color:#fff;z-index:1}.hero-content h1{font-size:2.5rem;margin-bottom:10px;text-transform:uppercase}.hero-content p{font-size:1.2rem}.sub-slogan{margin-top:10px;font-style:italic}.quote-banner{background-color:#d81f26;color:#fff;display:flex;align-items:center;justify-content:center;min-height:150px;padding:0}.quote-banner .quote-content{text-align:center;padding:0}.quote-banner h2{font-size:1.9rem;margin-bottom:20px}.quote-button{background-color:#fff;color:#d81f26;padding:10px 20px;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:background-color .3s ease;font-size:1.15rem}.quote-button:hover{background-color:#f5f5f5}.service-button{display:block;margin:20px auto 0;background-color:#d81f26;color:#fff;padding:20px;border:none;border-radius:4px;cursor:pointer;font-weight:1200;text-decoration:none;text-align:center;transition:background-color .3s ease}.service-button:hover{background-color:#b5161f}.centered-about{width:100%;background-color:#f1f1f1;text-align:center;padding:60px 20px}.centered-about h3{font-size:2rem;color:#333;margin-bottom:15px;text-transform:uppercase}.centered-about p{font-size:1.3rem;color:#555;line-height:1.8;max-width:1000px;margin:0 auto}#services{padding:20px 0;max-width:1200px;margin:0 auto;text-align:center}#services h2{margin-bottom:10px;color:#333;text-transform:uppercase;font-size:2rem}.service-slogan{margin-bottom:10px;color:#777;font-style:italic}.service-slogan .areas-served{font-size:1.25rem;font-style:normal;font-weight:800}.services-page-link{display:inline-block;margin:10px auto 20px;width:fit-content}.services-container{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:stretch}.service-column{display:flex;flex-direction:column;background:#f9f9f9;padding:20px;border-radius:5px;text-align:left;box-shadow:0 2px 6px #0000001a;margin-bottom:20px}.service-column h3{margin-bottom:10px;color:#333}.service-column p{margin-bottom:15px;color:#555}.service-desc{min-height:3.6em}.service-list{list-style:disc;padding-left:20px;margin:0 0 15px;color:#555}.service-note{font-weight:600;margin-bottom:10px;color:#555;min-height:1.6em}.service-column .service-list{margin-top:12px}.service-column .service-button{margin-top:auto}@media(max-width:900px){.services-container{grid-template-columns:1fr}.service-desc,.service-note{min-height:0}}.page-heading{text-align:center;padding:40px 20px;background-color:#f1f1f1}.page-heading h1{font-size:2.5rem;margin-bottom:10px;text-transform:uppercase}.page-heading p{font-size:1.2rem;color:#555}.services-page{max-width:1100px;margin:30px auto 10px;padding:0 20px}.services-showcase{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.services-showcase-card{background:#f4f4f4;border-radius:10px;padding:22px;color:#333;box-shadow:0 6px 16px #0000002e;border:1px solid #e1e1e1}.services-showcase-header{display:flex;align-items:center;justify-content:center;margin-bottom:14px}.services-showcase-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.services-showcase-title{font-size:1.25rem;text-transform:uppercase;letter-spacing:.08em;color:#333;font-weight:700}.services-showcase-list{list-style:none;margin:0;padding:0}.services-showcase-list li{break-inside:avoid;margin-bottom:8px;padding-left:18px;position:relative;font-size:1rem;line-height:1.5;text-transform:uppercase;letter-spacing:.02em}.services-showcase-list li:before{content:"★";position:absolute;left:0;top:0;color:#d81f26;font-size:.8rem}.service-detail{max-width:1100px;margin:40px auto;padding:20px;width:100%;box-sizing:border-box}.service-detail h2{font-size:2rem;color:#333;margin-bottom:15px;text-transform:uppercase}.service-detail p{font-size:1.15rem;color:#555;margin-bottom:20px;line-height:1.8}.service-detail ul{list-style:disc;padding-left:20px;font-size:1.15rem;color:#555;margin-bottom:20px}.service-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;width:100%}.service-card{background:#f9f9f9;border-radius:5px;padding:20px;box-shadow:0 2px 6px #0000001a;display:flex;flex-direction:column;gap:12px;min-width:0}.service-card .service-button{margin-top:auto}.service-card-title{font-size:1.5rem;text-transform:uppercase;color:#333}.service-card-desc{color:#555;line-height:1.6;margin:0}.service-tech-list{list-style:disc;padding-left:20px;color:#555;margin:0 0 10px}.portrait-slideshow{height:500px}@media(max-width:900px){.services-showcase{grid-template-columns:1fr}.services-showcase-columns{grid-template-columns:1fr;gap:10px}.service-card-grid{grid-template-columns:1fr!important;gap:16px}.portrait-slideshow{height:380px}}@media(max-width:640px){body{padding-top:90px}header{flex-direction:column;align-items:flex-start;gap:8px;padding:8px 12px}.nav-left{width:100%;justify-content:space-between}.header-contact{font-size:.75rem;line-height:1.15}.nav-right{width:100%}.nav-right ul{flex-wrap:wrap;gap:12px;justify-content:flex-start}.hero{height:60vh}.hero-content h1{font-size:1.6rem}.hero-content p{font-size:1rem}.quote-banner{padding:20px 12px}.quote-banner h2{font-size:1.4rem;margin-bottom:12px}.centered-about p{font-size:1.05rem}#services{padding:10px 0}.services-container{gap:16px}.service-column{padding:16px}.service-button{padding:14px 16px;font-size:1rem}.services-showcase-card{padding:18px}.services-showcase-title{font-size:1.1rem}.service-card-grid{grid-template-columns:1fr}.service-card{width:100%}.service-detail{margin:24px auto;padding:16px}.service-card-title{font-size:1.2rem}.slideshow-container{border-radius:6px}#lightDutySlideshow{aspect-ratio:auto;height:440px}.clients-section{padding:30px 12px}.clients-section h2{font-size:1.5rem}.contact-page{margin:20px auto 60px;padding:16px}.contact-form{gap:10px}}.slideshow-container{position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden;border-radius:5px;background-color:#ccc;margin-top:10px}.slideshow-container:before,.slideshow-container:after{content:"";position:absolute;top:0;bottom:0;width:15%;pointer-events:none;z-index:1}.slideshow-container:before{left:0;background:linear-gradient(to right,rgba(0,0,0,.5),transparent)}.slideshow-container:after{right:0;background:linear-gradient(to left,rgba(0,0,0,.5),transparent)}.slide{display:none;position:absolute;width:100%;height:100%}.slide.active{display:block}.slide-image{width:100%;height:100%;object-fit:cover;cursor:zoom-in;transition:transform .3s ease}#heavyDutySlideshowServices{height:auto}.slide-image:hover{transform:scale(1.05)}.arrow{cursor:pointer;position:absolute;top:50%;padding:16px;margin-top:-22px;color:#fff;font-weight:700;font-size:24px;transition:opacity .3s;-webkit-user-select:none;user-select:none;opacity:0;z-index:2;background:#0006;border-radius:50%}.prev{left:10px}.next{right:10px}.slideshow-container:hover .arrow{opacity:.7}.arrow:hover{opacity:1}.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;overflow:hidden;background-color:#000c}.modal-content{background-color:#fff;margin:10% auto;padding:20px;border:1px solid #ccc;width:80%;max-width:500px;border-radius:5px;position:relative;color:#333;box-shadow:0 2px 6px #0003}.close{color:#999;float:right;font-size:28px;font-weight:700;cursor:pointer;margin-left:10px}.close:hover,.close:focus{color:#333;text-decoration:none}#lightboxModal .modal-content,#lightboxModalServices .modal-content{background:transparent;box-shadow:none;text-align:center;border:none;max-width:none;margin:0;padding:0;display:block;max-width:100%;max-height:90vh;width:auto;height:auto;box-sizing:border-box}#lightboxModal,#lightboxModalServices{display:none;align-items:center;justify-content:center;padding:0;margin:0}.lightbox-frame{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:inline-flex;align-items:center;justify-content:center;width:auto;max-width:92vw;max-height:90vh}#lightboxImg,#lightboxImgServices{max-width:92vw;max-height:90vh;object-fit:contain;border-radius:0;cursor:zoom-out;margin:0}#caption{display:none}.lb-arrow{position:absolute;top:50%;font-size:2rem;color:#fff;text-decoration:none;padding:8px;transform:translateY(-50%);background:#0006;border-radius:50%;cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity .3s;z-index:1001}.lightbox-close{position:absolute;top:0;right:0;color:#fff;font-size:32px;font-weight:700;z-index:1002;padding:4px 10px;border-radius:20px;background:#00000059}#lightboxModal .lb-arrow,#lightboxModalServices .lb-arrow{opacity:1}.lb-arrow:hover{opacity:.8}.lb-prev{left:8px}.lb-next{right:8px}.clients-section{padding:40px 20px;background-color:#fff;text-align:center;width:100%}.clients-section h2{font-size:2rem;margin-bottom:20px;text-transform:uppercase;color:#333}.clients-marquee{overflow:hidden;width:100%;position:relative;padding:0 16px}.clients-marquee-track{display:flex;gap:18px;align-items:center;white-space:nowrap;width:max-content;animation:scrollClients 28s linear infinite}.clients-marquee-group{display:flex;gap:18px;align-items:center}.client-logo{display:inline-block;padding:0 8px;flex-shrink:0;text-align:center}.client-name{font-weight:700;color:#333;white-space:nowrap}.client-location{font-weight:400;color:#777;white-space:nowrap}@keyframes scrollClients{0%{transform:translate(0)}to{transform:translate(-50%)}}footer{background-color:#333;color:#fff;text-align:center;padding:10px 0;font-size:.85rem}footer p{margin:0}.contact-page{max-width:600px;margin:30px auto 80px;padding:20px;text-align:center}.contact-page h1{font-size:2rem;margin-bottom:10px}.contact-page p{margin-bottom:20px;color:#666}.contact-form{display:flex;flex-direction:column;gap:15px;text-align:left}.contact-form label{font-weight:600;margin-bottom:0}.note-field{position:relative}.note-field textarea{padding-bottom:28px}.note-counter{position:absolute;right:10px;bottom:8px;color:#000;font-size:.85rem}.note-counter span{color:#000}.contact-form input[type=text],.contact-form input[type=email],.contact-form input[type=tel],.contact-form textarea{width:100%;padding:10px;border:1px solid #ccc;border-radius:4px}.contact-form span{color:red}.note-counter,.note-counter span{color:#000!important}.contact-form button{align-self:flex-start;padding:10px 20px;background-color:#007bff;color:#fff;font-weight:600;border:none;border-radius:4px;cursor:pointer}.contact-form button:hover{background-color:#0056b3}#root{width:100%;margin:0;padding:0}.app-container{width:100%}
