:root{--rdmustard:#fad378;--burntOrange:#e29e31;--rdSkyBlue:#ccfffe;--myForestGreen:#0d3911;--rdLightboxBlue:#0f0f71;--rdPurpleThree:#8712c6;--rdButtonColor:#f07;--headerFont:"Avenir ",sans-serif;--bodyFont:"Avenir",sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{scroll-behavior:smooth;width:100%;overflow-x:hidden}body{font-family:var(--bodyFont);color:var(--myForestGreen);background:#fff;line-height:1.7;transition:background 1s}.video-header{width:100vw;max-width:100vw;height:100vh;margin-left:-50vw;margin-right:-50vw;padding-left:0;padding-right:0;position:relative;left:50%;right:50%;overflow:hidden}.video-background{object-fit:cover;z-index:-1;width:100%;height:100%;position:absolute;inset:0}.video-overlay{z-index:0;text-align:center;color:#fff;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tagline{color:var(--burntOrange);letter-spacing:5px;white-space:normal;max-width:90vw;padding:0 1rem;font-size:3rem;line-height:1.3;display:inline-block}.header{z-index:10;background:#fff;width:100%;transition:background .4s,transform .4s;position:fixed;top:0}.header.scroll-down{transform:translateY(-100%)}.header.scroll-up{transform:translateY(0)}.header:after{content:"";background:var(--rdLightboxBlue);z-index:12;width:100vw;height:6px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.header-inner{flex-direction:row;justify-content:space-between;align-items:center;width:100%;max-width:1400px;margin:0 auto;padding:1rem 4rem;transition:transform .4s,padding .4s;display:flex}.header-logo{aspect-ratio:3/2;width:220px;margin:0;transition:width .4s;position:relative}.header.shrink .header-logo{width:180px}.header-nav{gap:3rem;margin:0;display:flex}.header-nav a{color:#000;letter-spacing:1px;font-family:Avenir,sans-serif;font-size:1.6rem;text-decoration:none;transition:color .3s}.header-nav a:hover{color:var(--rdmustard)}.header.shrink .header-inner{padding:.5rem 3rem;transform:scale(.9)}.page-section{text-align:left;z-index:3;background:#fff;border-top:none;padding:1.9rem 0;position:relative}.page-section:before{content:"";background:var(--rdLightboxBlue);pointer-events:none;z-index:5;width:100vw;height:6px;position:absolute;top:0;left:50%;transform:translate(-50%)}.page-section:last-of-type{border-bottom:none}.page-section:last-of-type:after{content:"";background:var(--rdLightboxBlue);pointer-events:none;z-index:5;width:100vw;height:6px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.section-text{background:0 0;flex-direction:column;flex:1;justify-content:center;width:100%;padding:0;display:flex}.section-text p{margin-bottom:1.5rem;font-size:1.1rem;font-weight:300}h2{text-align:left;letter-spacing:2px;color:#0006;margin-bottom:.5rem;font-size:2.8rem;position:relative}h2:after{content:"";background:var(--rdmustard);width:80px;height:6px;margin-top:.8rem;display:block}p{font-family:var(--bodyFont);color:#000;font-size:1.1rem;line-height:1.8}.about.page-section{background:#fff;padding-top:0;padding-bottom:0}.about-content{background:0 0;justify-content:space-between;align-items:stretch;display:flex}.about .about-content{width:100vw;max-width:none;margin:0;padding:0}.about .section-text{max-width:1050px;padding:4rem 3rem 4rem 5rem}.about-image{background:0 0;flex:0 0 30%;justify-content:flex-end;align-items:stretch;display:flex}.about-image img{object-fit:cover;width:100%;height:100%;display:block}.photo-break{background-image:url(/photos/batteries1.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;border-bottom:none;width:100vw;max-width:100vw;height:70vh;margin-left:-50vw;margin-right:-50vw;padding-left:0;padding-right:0;position:relative;left:50%;right:50%;overflow:hidden}.photo-break:before{content:"";background:var(--rdLightboxBlue);pointer-events:none;z-index:5;width:100vw;height:6px;position:absolute;top:0;left:50%;transform:translate(-50%)}.photo-break:after{content:"";background:var(--rdLightboxBlue);pointer-events:none;z-index:5;width:100vw;height:6px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.page-section+.photo-break:after{content:none}.photo-break__overlay{z-index:2;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .6s,transform .6s,visibility 0s linear .6s;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)scale(.96)}.photo-break__overlay.visible{opacity:1;visibility:visible;transition:opacity .6s,transform .6s,visibility;transform:translate(-50%,-50%)scale(1)}.photo-break__button{pointer-events:auto;background:var(--burntOrange);color:#fff;font-family:var(--headerFont);cursor:pointer;text-align:center;border:none;border-radius:40px;flex-direction:column;align-items:center;gap:.4rem;max-width:400px;padding:.6rem 1.1rem;transition:transform .25s,background .25s,box-shadow .25s;display:flex;box-shadow:0 6px 20px #00000040}.photo-break__button:hover{background:var(--rdLightboxBlue);transform:scale(1.05);box-shadow:0 8px 25px #0000004d}.photo-break__button-header{letter-spacing:.5px;text-transform:uppercase;color:#fff;font-size:.95rem;font-weight:550}.photo-break__button-sub{color:#f9f9f9;max-width:80%;font-size:.9rem;font-weight:300;line-height:1.4}.services-grid{grid-template-columns:repeat(5,1fr);gap:2rem;margin-top:2rem;display:grid}.service-card{text-align:left;background:#fff;border-radius:10px;transition:transform .3s,box-shadow .3s;overflow:hidden;box-shadow:0 4px 12px #0000001a}.service-card:hover{transform:translateY(-6px);box-shadow:0 8px 18px #00000026}.service-card img{object-fit:cover;width:100%;height:160px}.service-card h3{font-family:var(--headerFont);color:var(--rdLightboxBlue);text-align:center;margin:1rem;font-size:1.2rem}.service-card p{color:var(--myForestGreen);margin:0 1rem 1.5rem;font-size:.95rem;line-height:1.6}.project-list{flex-direction:column;gap:2rem;display:flex}.project-block{align-items:center;gap:2rem;display:flex}.project-block:nth-child(2n){flex-direction:row-reverse}.project-block img{object-fit:cover;border-radius:10px;width:30%}.project-details{width:50%}.project-details h3{margin-bottom:1rem;font-size:1.3rem;font-weight:600}.project-details ul{padding-left:1.5rem;font-size:1rem;font-weight:300;line-height:1.6;list-style-type:disc}.project-details li{margin-bottom:.8rem}.contact,.projects{background:#fff}.services .services-content,.projects .projects-content,.contact .contact-content{max-width:1600px;margin:0 auto;padding:0 2rem}.contact-content{min-height:400px;display:flex}.contact-map{background:#fff;flex-direction:column;flex:1;align-items:center;padding:3rem 1rem 1rem;display:flex}.contact-map .map-title{margin:0;font-size:1.2rem}.contact-map .map-address{color:#444;margin:0 0 2rem;font-size:1rem}.contact-map iframe{border:1px solid #ccc;border-radius:8px;width:85%;height:400px}.contact-form{background:#f7f7f7;flex-direction:column;flex:1;justify-content:center;padding:3rem;display:flex}.contact-form h2{margin-bottom:1rem}.contact-form label{margin-top:1rem;font-weight:500;display:block}.contact-form input,.contact-form textarea{border:1px solid #ccc;border-radius:5px;width:100%;margin-top:.4rem;padding:.8rem}.contact-form button{background:var(--rdmustard);color:#fff;cursor:pointer;border:none;border-radius:5px;margin-top:1.5rem;padding:1rem;font-size:1rem;transition:background .3s}.contact-form button:hover{background:var(--burntOrange)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-box{background:#fff;border-radius:18px;width:90%;max-width:950px;max-height:90vh;padding:2rem;position:relative;overflow-y:auto;box-shadow:0 10px 30px #00000040}.modal-close{cursor:pointer;color:#444;background:0 0;border:none;font-size:1.6rem;position:absolute;top:12px;right:16px}.modal-form label{margin-top:1rem;font-weight:500;display:block}.modal-form input,.modal-form textarea{border:1px solid #ccc;border-radius:8px;width:100%;margin-top:.35rem;padding:.7rem}.modal-submit{background:var(--rdmustard);color:#fff;cursor:pointer;border:none;border-radius:8px;width:100%;margin-top:1.6rem;padding:.9rem;font-size:1rem;transition:background .25s}.modal-submit:hover{background:var(--burntOrange)}footer{text-align:center;background:#fff;margin-top:0;padding:2em}@media (max-width:1200px){.header-inner{padding:1rem 2rem}}@media (max-width:1100px){.services-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:900px){.about.page-section{padding-top:0;padding-bottom:0}.about-content{flex-direction:column}.about .section-text{text-align:left;max-width:100%;padding:2.5rem 1.5rem 2rem}.about-image{flex:none;width:100%;height:260px;margin-top:0}.about-image img{object-fit:cover;width:100%;height:100%}.contact-content{flex-direction:column}.contact-map iframe{width:100%;height:300px}}@media (max-width:768px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.header-inner{flex-direction:row!important;justify-content:space-between!important;align-items:center!important;column-gap:1.25rem!important;padding:.75rem 1rem!important}.header-logo{align-self:center;width:150px!important;margin-bottom:0!important}.header-nav{align-items:center;display:flex;gap:1rem!important;margin-top:0!important}.header-nav a{letter-spacing:.3px!important;font-size:.95rem!important}.header.shrink .header-inner{padding:.6rem .9rem!important;transform:none!important}.header.shrink .header-logo{width:135px!important}.video-header{height:75vh}.tagline{letter-spacing:2px;white-space:normal;max-width:90%;margin:0 auto;padding:0 1.5rem;font-size:1.7rem;line-height:1.35}.page-section{padding:1.5rem 0}h2{text-align:center;font-size:1.9rem}h2:after{margin-left:auto;margin-right:auto}.about-content{flex-direction:column}.about .section-text{text-align:left!important;padding:2.5rem 1.5rem 2rem!important}.about-image{flex:none;height:220px;margin-top:.5rem}.about-image img{height:100%}.services .services-content,.projects .projects-content,.contact .contact-content{padding:0 1.25rem}.services-grid{grid-template-columns:1fr;gap:1.5rem;margin-top:1.5rem}.service-card img{height:140px}.project-block,.project-block:nth-child(2n){flex-direction:column;align-items:flex-start}.project-block img,.project-details{width:100%}.photo-break{background-attachment:scroll;height:40vh}.contact-content{flex-direction:column}.contact-map{padding-top:2rem}.contact-map iframe{width:100%;height:260px}.contact-form{padding:2rem 1.5rem}footer{padding:1.5rem 1rem;font-size:.9rem}}
