@import"https://fonts.googleapis.com/css2?family=Oswald:wght@400;600;700&family=Source+Sans+3:wght@400;600;700&display=swap";*{box-sizing:border-box;margin:0;padding:0}:root{--usa-red: #B22234;--usa-white: #FFFFFF;--usa-blue: #3C3B6E;--black: #000000;font-family:"Source Sans 3",Segoe UI,sans-serif;line-height:1.6;color:var(--black)}body{min-height:100vh;background-color:var(--usa-white)}h1,h2,h3{font-family:Oswald,Segoe UI,sans-serif;letter-spacing:.04em}.header{background-color:var(--usa-white);border-bottom:2px solid var(--black);box-shadow:0 6px 14px #00000014;position:sticky;top:0;z-index:10}.header:before{content:"";display:block;height:6px;background:linear-gradient(90deg,var(--usa-blue),var(--usa-blue) 33%,var(--usa-red) 33%,var(--usa-red) 66%,var(--usa-white) 66%);border-bottom:1px solid var(--black)}.header-container{max-width:1200px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}.logo{display:flex;align-items:center;gap:1rem}.logo-icon{width:48px;height:48px;border:2px solid var(--black);border-radius:4px;background-color:var(--usa-white)}.logo-link{text-decoration:none;border-radius:8px;padding:.35rem .4rem;transition:transform .2s ease,box-shadow .2s ease}.logo-link:focus-visible{outline:2px solid var(--usa-blue);outline-offset:4px}.logo-link:hover{transform:translateY(-1px);box-shadow:0 8px 16px #0000001f}.logo-image{display:block;height:52px;width:auto}.logo-text{font-size:1.1rem;font-weight:700;color:var(--black);text-shadow:1px 1px 2px rgba(255,255,255,.8);display:flex;flex-direction:column;letter-spacing:.08em;text-transform:uppercase;line-height:1.1;font-family:Oswald,Segoe UI,sans-serif}.nav-menu{background-color:transparent;border:none;padding:0}.nav-list{display:flex;list-style:none;gap:1.5rem;align-items:center}.nav-link{text-decoration:none;color:var(--black);font-weight:600;padding:.5rem .8rem;border:2px solid transparent;border-radius:999px;transition:all .3s ease}.nav-link:hover{color:var(--usa-red);border-color:var(--usa-red)}.nav-link:active{background-color:var(--usa-blue);color:var(--usa-white)}.main-content{min-height:calc(100vh - 100px)}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.hero{padding:4.5rem 0 5rem;background-color:var(--usa-white)}.hero-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem;align-items:start}.hero-panel{display:flex;flex-direction:column;gap:2rem}.hero-title{font-family:Oswald,Segoe UI,sans-serif;font-size:clamp(2.2rem,2vw + 1.8rem,3.6rem);font-weight:700;text-transform:uppercase;letter-spacing:.08em;line-height:1.05;display:flex;flex-direction:column;gap:.5rem;text-shadow:0 6px 12px rgba(0,0,0,.15)}.hero-title--construction{color:var(--black)}.hero-title--software{color:var(--usa-red)}.hero-media{border:3px solid var(--black);border-radius:14px;overflow:hidden;box-shadow:0 18px 30px #00000026;background:var(--usa-white)}.hero-media img{display:block;width:100%;height:260px;object-fit:cover}.cta-button{display:inline-block;padding:1rem 2rem;background-color:var(--usa-red);color:var(--usa-white);text-decoration:none;font-weight:700;border:2px solid var(--black);border-radius:8px;transition:all .3s ease;font-size:1.1rem}.cta-button:hover{background-color:var(--usa-blue);transform:translateY(-2px);box-shadow:0 4px 8px #0003}.services{padding:4rem 0;background-color:var(--usa-white);border-bottom:2px solid var(--black)}.services h2{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:var(--black);border-bottom:3px solid var(--usa-red);padding-bottom:1rem;display:inline-block;width:100%}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.service-card{background-color:var(--usa-white);border:2px solid var(--black);border-radius:8px;padding:2rem;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.service-card:hover{transform:translateY(-5px);box-shadow:0 8px 16px #0000001a;border-color:var(--usa-red)}.service-icon{font-size:3rem;margin-bottom:1rem}.service-card h3{font-size:1.5rem;margin-bottom:1rem;color:var(--usa-blue)}.service-card p{color:var(--black);line-height:1.6}.about{padding:4rem 0;background-color:#f8f8f8;border-bottom:2px solid var(--black)}.about h2{font-size:2.5rem;margin-bottom:2rem;color:var(--black);border-bottom:3px solid var(--usa-blue);padding-bottom:1rem}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.about-text p{font-size:1.1rem;line-height:1.8;margin-bottom:2rem;color:var(--black)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.stat{text-align:center;padding:1rem;background-color:var(--usa-white);border:2px solid var(--black);border-radius:8px}.stat strong{display:block;font-size:2rem;color:var(--usa-red);margin-bottom:.5rem}.stat span{font-size:.9rem;color:var(--black)}.about-image{border:3px solid var(--black);border-radius:8px;overflow:hidden}.image-placeholder{background-color:var(--usa-blue);color:var(--usa-white);padding:4rem 2rem;text-align:center;font-size:1.2rem;font-weight:600}.projects{padding:4rem 0;background-color:var(--usa-white);border-bottom:2px solid var(--black)}.projects h2{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:var(--black);border-bottom:3px solid var(--usa-red);padding-bottom:1rem}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem}.category-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:2rem;margin-top:2.5rem}.category-card{text-decoration:none;color:var(--black);border:3px solid var(--black);border-radius:14px;overflow:hidden;background-color:var(--usa-white);box-shadow:0 14px 22px #0000001f;transition:transform .3s ease,box-shadow .3s ease}.category-card:hover{transform:translateY(-4px);box-shadow:0 18px 28px #00000029}.category-media img{display:block;width:100%;height:220px;object-fit:cover}.category-card h3{margin:0;padding:1.2rem 1.4rem 1.4rem;font-size:1.4rem;text-transform:uppercase;letter-spacing:.08em;color:var(--usa-blue)}.project-card{background-color:var(--usa-white);border:2px solid var(--black);border-radius:8px;overflow:hidden;transition:transform .3s ease}.project-card:hover{transform:translateY(-5px);box-shadow:0 8px 16px #0000001a}.project-image{background-color:var(--usa-blue);color:var(--usa-white);padding:3rem 1rem;text-align:center;font-weight:600;border-bottom:2px solid var(--black)}.project-card h3{padding:1rem;color:var(--usa-blue);margin-bottom:.5rem}.project-card p{padding:0 1rem 1rem;color:var(--black)}.contact{padding:4rem 0;background-color:#f8f8f8;border-bottom:2px solid var(--black)}.contact h2{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:var(--black);border-bottom:3px solid var(--usa-red);padding-bottom:1rem}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem}.contact-info{background-color:var(--usa-white);border:2px solid var(--black);border-radius:8px;padding:2rem}.contact-item{margin-bottom:1.5rem}.contact-item strong{display:block;color:var(--usa-blue);margin-bottom:.5rem;font-size:1.1rem}.contact-item p{color:var(--black);margin:0}.contact-form{background-color:var(--usa-white);border:2px solid var(--black);border-radius:8px;padding:2rem}.contact-form form{display:flex;flex-direction:column;gap:1rem}.contact-form input,.contact-form select,.contact-form textarea{padding:1rem;border:2px solid var(--black);border-radius:4px;font-size:1rem;font-family:inherit}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:none;border-color:var(--usa-blue)}.submit-btn{background-color:var(--usa-red);color:var(--usa-white);border:2px solid var(--black);padding:1rem 2rem;font-size:1.1rem;font-weight:700;border-radius:8px;cursor:pointer;transition:all .3s ease}.submit-btn:hover{background-color:var(--usa-blue)}@media(max-width:768px){.header-container{flex-direction:column;gap:1rem}.nav-list{gap:.75rem;flex-wrap:wrap;justify-content:center}.logo-text{font-size:1rem}.hero{padding:3.5rem 0 4rem}.hero-grid{grid-template-columns:1fr}.hero-title{align-items:center;text-align:center}.hero-media img{height:220px}.about-content,.contact-content{grid-template-columns:1fr;gap:2rem}.stats{grid-template-columns:1fr;gap:1rem}.services-grid,.projects-grid{grid-template-columns:1fr}.category-media img{height:200px}}
