:root{--color-navy: #0B1F33;--color-gold: #D4AF37;--color-background: #F7F8FA;--color-text: #111827;--color-text-light: #6B7280;--color-white: #FFFFFF;--color-border: #E5E7EB;--max-width: 1200px;--spacing-section: 72px;--spacing-large: 48px;--spacing-medium: 32px;--spacing-small: 16px;--font-system: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-system);color:var(--color-text);background-color:var(--color-background);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{max-width:var(--max-width);margin:0 auto;padding:0 24px}h1,h2,h3,h4,h5,h6{line-height:1.2;font-weight:600;color:var(--color-navy)}h1{font-size:2.5rem}h2{font-size:2rem;margin-bottom:1rem}h3{font-size:1.25rem;margin-bottom:.5rem}a{color:var(--color-navy);text-decoration:none;transition:color .2s ease}a:hover{color:var(--color-gold)}img{max-width:100%;height:auto;display:block}.header{position:sticky;top:0;background-color:var(--color-white);border-bottom:1px solid var(--color-border);z-index:100;box-shadow:0 1px 3px #0000000d}.header-content{display:flex;justify-content:space-between;align-items:center;padding-top:20px;padding-bottom:20px}.logo{font-size:1.25rem;font-weight:700;color:var(--color-navy)}.nav{display:flex;gap:32px}.nav a{font-weight:500;font-size:.95rem}.hero{position:relative;height:600px;overflow:hidden}.hero-image{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.hero-image img{width:100%;height:100%;object-fit:cover}.hero-overlay{position:relative;z-index:2;height:100%;background:linear-gradient(to right,#0b1f33f2,#0b1f33b3);display:flex;align-items:center}.hero-content{max-width:650px}.hero-subtitle{color:var(--color-gold);font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:16px}.hero-title{color:var(--color-white);margin-bottom:24px}.hero-description{font-size:1.125rem;color:#ffffffe6;margin-bottom:32px;line-height:1.7}.hero-buttons{display:flex;gap:16px;margin-bottom:24px;flex-wrap:wrap}.btn{display:inline-block;padding:14px 28px;font-size:1rem;font-weight:600;border-radius:6px;transition:all .2s ease;border:2px solid transparent;cursor:pointer;text-align:center}.btn-primary{background-color:var(--color-gold);color:var(--color-navy);border-color:var(--color-gold)}.btn-primary:hover{background-color:#c49d2e;border-color:#c49d2e;color:var(--color-navy)}.btn-secondary{background-color:transparent;color:var(--color-white);border-color:var(--color-white)}.btn-secondary:hover{background-color:var(--color-white);color:var(--color-navy)}.about{padding:var(--spacing-section) 0;background-color:var(--color-white)}.about-grid{max-width:900px;margin:0 auto}.about-main,.about-main h2{text-align:center}.about-main p{font-size:1.0625rem;color:var(--color-text-light);line-height:1.7;margin-bottom:1rem}.about-main p:last-child{margin-bottom:0}.about-intro-centered{text-align:center}.about-info{display:flex;flex-direction:column;gap:24px}.info-block{background-color:var(--color-background);padding:24px;border-radius:8px;border-left:4px solid var(--color-gold)}.info-block h3{font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-navy);margin-bottom:8px;font-weight:700}.info-block p{color:var(--color-text-light);font-size:1rem}.services{padding:var(--spacing-section) 0;background-color:var(--color-background)}.services-intro{font-size:1.0625rem;color:var(--color-text-light);margin-bottom:var(--spacing-large);max-width:800px}.services-grid{display:grid;grid-template-columns:1fr;gap:24px}.service-card{background-color:var(--color-white);padding:32px;border-radius:8px;border-top:3px solid var(--color-navy);transition:transform .2s ease,box-shadow .2s ease}.service-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0b1f331a}.service-card h3{color:var(--color-navy);margin-bottom:12px}.service-card p{color:var(--color-text-light);font-size:.9375rem;line-height:1.6}.projects{padding:var(--spacing-section) 0;background-color:var(--color-white)}.projects-intro{font-size:1.0625rem;color:var(--color-text-light);margin-bottom:var(--spacing-large);max-width:800px}.projects-grid{display:grid;grid-template-columns:1fr;gap:32px}.project-card{background-color:var(--color-background);border-radius:8px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.project-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0b1f331f}.project-card img{width:100%;height:250px;object-fit:cover}.project-info{padding:24px}.project-info h3{color:var(--color-navy);margin-bottom:8px;font-size:1.125rem}.project-info p{color:var(--color-text-light);font-size:.9375rem}.contracting{padding:var(--spacing-section) 0;background-color:var(--color-background)}.contracting-intro{font-size:1.0625rem;color:var(--color-text-light);margin-bottom:var(--spacing-large);max-width:900px}.contracting-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-large);margin-bottom:32px}.contracting-list{background-color:var(--color-white);padding:32px;border-radius:8px}.contracting-list dt{font-weight:700;color:var(--color-navy);margin-top:16px;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.contracting-list dt:first-child{margin-top:0}.contracting-list dd{color:var(--color-text-light);margin-top:4px;margin-left:0;font-size:1rem}.contact{padding:var(--spacing-section) 0;background-color:var(--color-white)}.contact-content{max-width:800px;margin:0 auto}.contact h2{text-align:center}.contact-intro{text-align:center;font-size:1.0625rem;color:var(--color-text-light);margin-bottom:var(--spacing-large)}.contact-info{background-color:var(--color-background);padding:32px;border-radius:8px;margin-bottom:var(--spacing-large)}.contact-details{text-align:center}.contact-details p{margin-bottom:8px;color:var(--color-text-light)}.contact-details strong{color:var(--color-navy)}.contact-details a{color:var(--color-gold);font-weight:500}.contact-details a:hover{color:var(--color-navy)}.contact-form{display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:1fr;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:var(--color-navy);font-size:.9375rem}.required{color:var(--color-gold)}.form-group input,.form-group textarea{padding:12px 16px;border:1px solid var(--color-border);border-radius:6px;font-family:var(--font-system);font-size:1rem;color:var(--color-text);background-color:var(--color-white);transition:border-color .2s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-navy)}.form-group textarea{resize:vertical;min-height:120px}.contact-form .btn{align-self:flex-start}.form-message{padding:16px;border-radius:6px;font-size:.9375rem;margin-bottom:20px;font-weight:500}.form-message-success{background-color:#d1fae5;color:#065f46;border:1px solid #10b981}.form-message-error{background-color:#fee2e2;color:#991b1b;border:1px solid #ef4444}.footer{background-color:var(--color-navy);color:var(--color-white);padding:32px 0}.footer-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.footer-copyright{color:#fffc;font-size:.9375rem}.footer-links{display:flex;gap:24px}.footer-links a{color:#fffc;font-size:.9375rem;font-weight:500;transition:color .2s ease}.footer-links a:hover{color:var(--color-gold)}@media (min-width: 640px){h1{font-size:3rem}.form-row{grid-template-columns:1fr 1fr}.projects-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 768px){h1{font-size:3.5rem}h2{font-size:2.25rem}.nav{gap:40px}.services-grid{grid-template-columns:repeat(2,1fr);gap:32px}.contracting-grid{grid-template-columns:1fr 1fr}}@media (min-width: 1024px){.services-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 640px){.container{padding:0 20px}.nav{display:none}.logo{font-size:1.125rem}h1{font-size:2rem}h2{font-size:1.75rem}.hero{height:500px}.hero-overlay{background:#0b1f33d9}.about,.services,.projects,.contracting,.contact{padding:56px 0}.hero-buttons{flex-direction:column}.btn{width:100%}.footer-content{flex-direction:column;text-align:center}.footer-links{flex-direction:column;gap:12px}}
