:root{--bg0: #07080b;--bg1: #0e1118;--text: #ffffff;--muted: rgba(255, 255, 255, .72);--subtle: rgba(255, 255, 255, .16);--gold: #d39a2c;--gold2: #f0b13a;--glass: rgba(255, 255, 255, .06);--glassBorder: rgba(255, 255, 255, .12)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Montserrat,sans-serif;background-color:var(--bg0);color:var(--text);min-height:100vh;overflow-x:hidden;position:relative}#webgl-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0}.overlay-gradient{position:fixed;top:0;left:0;width:100%;height:100%;z-index:1;background:radial-gradient(ellipse at center,#07080b4d,#07080bb3,#07080bd9);pointer-events:none}.header{position:relative;z-index:10;display:flex;justify-content:center;align-items:center;padding:2rem 3rem}.logo{display:flex;align-items:center;justify-content:center}.logo-image{height:60px;width:auto;opacity:.95;transition:opacity .3s ease}.logo-image:hover{opacity:1}.hero{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:8rem 2rem 4rem;min-height:calc(100vh - 200px)}.hero-title{font-family:Playfair Display,serif;font-size:clamp(2.5rem,6vw,5rem);font-weight:700;line-height:1.2;margin-bottom:1.5rem;background:linear-gradient(135deg,var(--text) 0%,var(--muted) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:fadeInUp 1s ease-out}.hero-subtitle{font-size:clamp(1rem,2vw,1.25rem);font-weight:300;color:var(--muted);max-width:600px;line-height:1.6;margin-bottom:1rem;animation:fadeInUp 1s ease-out .2s both}.hero-services{font-size:.875rem;font-weight:500;color:var(--gold);letter-spacing:.1em;margin-bottom:3rem;animation:fadeInUp 1s ease-out .4s both}.hero-buttons{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;animation:fadeInUp 1s ease-out .6s both}.btn{padding:1rem 2.5rem;border-radius:8px;font-size:.9375rem;font-weight:600;text-decoration:none;transition:all .3s ease;letter-spacing:.02em;display:inline-block}.btn-primary{background:linear-gradient(135deg,var(--gold) 0%,var(--gold2) 100%);color:var(--bg0);box-shadow:0 4px 20px #d39a2c4d}.btn-primary:hover{box-shadow:0 8px 30px #d39a2c80;transform:translateY(-2px)}.btn-secondary{background:var(--glass);border:1px solid var(--glassBorder);color:var(--text);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.btn-secondary:hover{background:var(--glassBorder);border-color:var(--subtle);transform:translateY(-2px)}.contact-card{position:relative;z-index:10;margin:0 auto 3rem;max-width:1200px;padding:2rem;background:var(--glass);border:1px solid var(--glassBorder);border-radius:16px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 8px 32px #0000004d}.contact-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem}.contact-item{display:flex;flex-direction:column;gap:.5rem}.contact-label{font-size:.75rem;font-weight:600;color:var(--gold);text-transform:uppercase;letter-spacing:.1em}.contact-value{font-size:.9375rem;font-weight:400;color:var(--text);line-height:1.5}.contact-value a{color:var(--text);text-decoration:none;transition:color .3s ease}.contact-value a:hover{color:var(--gold)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (max-width: 1024px){.header{padding:1.5rem 2rem}}@media (max-width: 768px){.header{padding:1.5rem 1rem}.hero{padding:4rem 1.5rem 3rem;min-height:calc(100vh - 150px)}.contact-card{margin:0 1rem 2rem}.contact-info{grid-template-columns:1fr;gap:1.5rem}}
