:root{--color-primary: #1e293b;--color-accent: #d1fae5;--color-accent-dark: #065f46;--color-white: #ffffff;--color-gray-50: #f9fafb;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-600: #4b5563;--color-border: #e2e8f0;--font-heading: "Playfair Display", serif;--font-body: "Inter", sans-serif;--spacing-section: 6rem;--spacing-container: 2rem;--max-width: 1200px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--color-white);color:var(--color-primary);line-height:1.6;font-weight:300;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;line-height:1.2;margin-bottom:1rem}h1{font-size:3.5rem;letter-spacing:-.02em}h2{font-size:2.5rem;margin-bottom:2rem;text-align:center}h3{font-size:1.5rem;margin-bottom:.75rem}p{margin-bottom:1.5rem;color:var(--color-gray-600)}a{text-decoration:none;color:inherit;transition:opacity .3s ease}ul{list-style:none}button,.btn{font-family:var(--font-body);font-weight:500;padding:1rem 2rem;border:none;cursor:pointer;transition:all .3s ease;font-size:1rem;letter-spacing:.5px;background-color:var(--color-primary);color:var(--color-white);display:inline-block;text-transform:uppercase;font-size:.875rem}button:hover,.btn:hover{background-color:#334155;transform:translateY(-2px)}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--spacing-container)}section{padding:var(--spacing-section) 0}.section-divider{border-top:1px solid var(--color-gray-200);margin:0 auto;width:100%}.hero{position:relative;height:90vh;display:flex;align-items:center;justify-content:center;text-align:center;background-color:var(--color-gray-50);overflow:hidden}.hero-image-placeholder{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#f0f0f0;z-index:1;display:flex;align-items:center;justify-content:center;color:#ccc;font-size:2rem;font-family:var(--font-heading);opacity:.5}.hero-content{position:relative;z-index:2;max-width:800px;padding:0 2rem}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.about-image{background-color:var(--color-gray-100);height:500px;width:100%;display:flex;align-items:center;justify-content:center;color:var(--color-gray-600)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.service-card{padding:2rem;border:1px solid var(--color-gray-200);background-color:var(--color-white);transition:border-color .3s ease,box-shadow .3s ease;display:flex;flex-direction:column;justify-content:space-between;height:100%}.service-card:hover{border-color:var(--color-primary);box-shadow:0 10px 30px #0000000d}.service-card h3{font-family:var(--font-heading);font-size:1.25rem;margin-top:1rem}.service-image{width:100%;height:200px;background-color:var(--color-gray-50);margin-bottom:1.5rem}.service-link{color:var(--color-primary);font-weight:500;margin-top:auto;text-decoration:underline;text-underline-offset:4px}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem}.project-card{position:relative;overflow:hidden}.project-image{width:100%;height:400px;background-color:var(--color-gray-100);display:flex;align-items:center;justify-content:center;color:var(--color-gray-400);transition:transform .5s ease}.project-card:hover .project-image{transform:scale(1.02)}.project-info{margin-top:1rem}.clients-strip{display:flex;justify-content:center;flex-wrap:wrap;gap:3rem;align-items:center;opacity:.6}.client-logo{height:50px;background-color:var(--color-gray-200);width:150px}.contact-form{max-width:600px;margin:0 auto}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;font-size:.875rem;color:var(--color-primary)}.form-control{width:100%;padding:1rem;border:1px solid var(--color-gray-200);font-family:var(--font-body);font-size:1rem;background-color:var(--color-gray-50);transition:border-color .3s ease}.form-control:focus{outline:none;border-color:var(--color-primary);background-color:var(--color-white)}textarea.form-control{min-height:150px;resize:vertical}footer{background-color:var(--color-gray-50);padding:4rem 0;font-size:.875rem}.footer-content{display:flex;justify-content:space-between;flex-wrap:wrap;gap:2rem}.footer-column h4{font-family:var(--font-body);text-transform:uppercase;letter-spacing:1px;font-size:.75rem;color:var(--color-gray-600);margin-bottom:1.5rem}@media(max-width:768px){h1{font-size:2.5rem}.about-grid,.services-grid{grid-template-columns:1fr}.hero{height:auto;padding:6rem 1rem}.footer-content{flex-direction:column}}
