*,:before,:after{box-sizing:border-box}:root{--primary-color:#0a192f;--secondary-color:#112240;--accent-color:#d4af37;--accent-hover:#f3c645;--text-color:#333;--text-light:#e6f1ff;--bg-color:#fff;--bg-alt:#f4f4f4;--bg-premium:#f0f2f5;--font-heading:"Playfair Display",serif;--font-body:"Lato",sans-serif;--transition-speed:.3s;--box-shadow:0 15px 35px #00000026;--box-shadow-light:0 5px 15px #00000014}body{font-family:var(--font-body);background-color:var(--bg-color);color:var(--text-color);margin:0;padding:0;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--primary-color);letter-spacing:.5px;margin-bottom:1rem;font-weight:700}a{color:inherit;transition:all var(--transition-speed);text-decoration:none}ul{padding:0;list-style:none}img{max-width:100%;display:block}.container{max-width:1200px;margin:0 auto;padding:0 20px}.btn{background:linear-gradient(135deg,var(--accent-color),#bfa030);color:var(--primary-color);cursor:pointer;text-transform:uppercase;letter-spacing:1px;border:none;border-radius:4px;padding:14px 28px;font-weight:700;transition:all .3s cubic-bezier(.645,.045,.355,1);display:inline-block;box-shadow:0 4px 14px #00000026}.btn:hover{background:linear-gradient(135deg,#e5c145,#d4af37);transform:translateY(-3px);box-shadow:0 6px 20px #0003}.btn-outline{border:2px solid var(--accent-color);color:var(--accent-color);background:0 0;padding:12px 26px}.btn-outline:hover{background:var(--accent-color);color:var(--primary-color);transform:translateY(-3px)}.glass{-webkit-backdrop-filter:blur(10px);background:#fffffff2;border-bottom:1px solid #0000001a}.card-hover{transition:all .3s}.card-hover:hover{box-shadow:var(--box-shadow);transform:translateY(-10px)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.page-animate{animation:.8s ease-out fadeIn}.reveal-on-scroll{opacity:0;transition:opacity .6s cubic-bezier(.5,0,0,1),transform .6s cubic-bezier(.5,0,0,1);transform:translateY(20px)}.reveal-on-scroll.is-visible{opacity:1;transform:translateY(0)}.nav-link{color:#fffc;cursor:pointer;font-size:.95rem;font-weight:500;font-family:var(--font-body);text-transform:uppercase;letter-spacing:1px;background:0 0;border:none;padding:.5rem 0;transition:color .3s;position:relative}.nav-link:hover,.nav-link.active{color:var(--accent-color)}.nav-menu{align-items:center;gap:2.5rem;margin:0;display:flex}.testimonials-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;display:grid}.testimonial-card{box-shadow:var(--box-shadow-light);background:#fff;border-radius:12px;flex-direction:column;height:100%;padding:2rem;display:flex}.service-card{background:#fff;padding:0;transition:all .3s}.mobile-toggle{display:none}@media (max-width:768px){.mobile-toggle{display:block}html{font-size:90%}h1{font-size:2.5rem!important}.logo h1{font-size:1.5rem!important}h2{font-size:2rem!important}.nav-menu{z-index:999;background-color:#0a192f;border-top:1px solid #ffffff1a;flex-direction:column;width:100%;height:auto;max-height:80vh;padding:2rem 0;display:none;position:fixed;top:80px;left:0;overflow-y:auto;box-shadow:0 10px 20px #0000004d}.nav-menu.open{animation:.3s ease-out forwards slideDown;display:flex}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.nav-menu li{width:100%;margin:0}.nav-menu li a.nav-link{text-align:center;border-bottom:1px solid #ffffff0d;width:100%;padding:1.5rem;display:block;color:#fff!important}.nav-menu li:last-child a.btn{text-align:center;border-bottom:none;border-radius:4px;width:calc(100% - 40px);margin:1.5rem 20px;display:block;background:var(--accent-color)!important;color:var(--primary-color)!important;padding:1rem!important}}.hero-gradient{background:linear-gradient(135deg,#0a192ff2,#112240e6)}input,textarea,select{font-family:var(--font-body);border:1px solid #ddd;transition:border-color .3s,box-shadow .3s}input:focus,textarea:focus,select:focus{border-color:var(--accent-color);outline:none;box-shadow:0 0 0 3px #d4af3733}.app{flex-direction:column;min-height:100vh;display:flex}
