*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--primary: #2C5570;--primary-light: #3E6B89;--primary-dark: #1B3A4F;--accent: #4A8DB7;--navy: #1a2332;--charcoal: #222222;--white: #ffffff;--off-white: #f5f5f5;--light-gray: #e8e8e8;--medium-gray: #999999;--text-dark: #222222;--text-light: #666666;--gold: #C4A35A}html{scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;color:var(--text-dark);background:var(--white);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4{font-family:Playfair Display,Georgia,serif;line-height:1.2}a{text-decoration:none;color:inherit;transition:color .3s ease}img{max-width:100%;display:block}button{cursor:pointer;border:none;font-family:Inter,sans-serif}.top-bar{background:var(--charcoal);color:var(--white);padding:8px 0;font-size:.8rem;letter-spacing:.5px}.top-bar-inner{max-width:1200px;margin:0 auto;padding:0 24px;display:flex;justify-content:space-between;align-items:center}.top-bar-contact{display:flex;gap:24px;align-items:center}.top-bar-contact span{display:flex;align-items:center;gap:6px;opacity:.9}.top-bar-social{display:flex;gap:12px}.top-bar-social a{width:28px;height:28px;border-radius:50%;border:1px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;font-size:.75rem;transition:all .3s ease}.top-bar-social a:hover{background:var(--primary);border-color:var(--primary);transform:translateY(-2px)}.navbar{background:var(--white);padding:16px 0;position:sticky;top:0;z-index:100;box-shadow:0 2px 20px #0000000f;transition:all .3s ease}.navbar.scrolled{padding:10px 0;box-shadow:0 4px 30px #0000001a}.navbar-inner{max-width:1200px;margin:0 auto;padding:0 24px;display:flex;justify-content:space-between;align-items:center}.navbar-logo{display:flex;align-items:center}.nav-logo-img{height:65px;width:auto;object-fit:contain;transition:all .3s ease}.navbar.scrolled .nav-logo-img{height:50px}.nav-links{display:flex;gap:32px;align-items:center}.nav-links a{font-size:.85rem;font-weight:500;text-transform:uppercase;letter-spacing:1.5px;color:var(--text-dark);position:relative;padding:4px 0}.nav-links a:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:var(--primary);transition:width .3s ease}.nav-links a:hover:after{width:100%}.nav-cta{background:var(--primary);color:var(--white);padding:10px 24px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;transition:all .3s ease}.nav-cta:hover{background:var(--primary-dark);transform:translateY(-1px);box-shadow:0 4px 15px #2c557066}.hero{position:relative;height:85vh;min-height:550px;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:center/cover no-repeat;transform:scale(1.05);transition:transform 8s ease}.hero:hover .hero-bg{transform:scale(1)}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#1b3a4fd9,#2c5570b3,#1a2332cc)}.hero-content{position:relative;z-index:2;text-align:center;color:var(--white);padding:0 24px;max-width:800px}.hero-subtitle-top{font-size:.9rem;text-transform:uppercase;letter-spacing:4px;opacity:.8;margin-bottom:16px;font-weight:400;animation:fadeInUp .8s ease .2s both}.hero-title{font-family:Playfair Display,serif;font-size:3.5rem;font-weight:600;font-style:italic;letter-spacing:3px;margin-bottom:20px;animation:fadeInUp .8s ease .4s both}.hero-line{width:60px;height:2px;background:var(--gold);margin:0 auto 24px;animation:fadeInUp .8s ease .6s both}.hero-description{font-size:1rem;line-height:1.8;opacity:.9;max-width:600px;margin:0 auto;font-weight:300;animation:fadeInUp .8s ease .8s both}.section-title{text-align:center;font-size:.9rem;text-transform:uppercase;letter-spacing:4px;color:var(--text-dark);margin-bottom:48px;font-family:Inter,sans-serif;font-weight:600}.section-title:after{content:"";display:block;width:40px;height:2px;background:var(--gold);margin:12px auto 0}.inspire-section{padding:80px 0;background:var(--white)}.carousel-container{max-width:1000px;margin:0 auto;position:relative;overflow:hidden}.carousel-track{display:flex;transition:transform .4s ease-in-out}.carousel-slide{flex:0 0 100%;width:100%;position:relative;overflow:hidden;padding-top:56.25%}.carousel-slide img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.carousel-slide:hover img{transform:scale(1.05)}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:var(--white);border:1px solid var(--light-gray);display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:var(--text-dark);transition:all .3s ease;z-index:2}.carousel-btn:hover{background:var(--primary);color:var(--white);border-color:var(--primary);box-shadow:0 4px 15px #2c55704d}.carousel-btn.prev{left:0}.carousel-btn.next{right:0}.services-section{padding:80px 0;background:var(--off-white)}.services-grid{max-width:1200px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card{position:relative;cursor:pointer;background:var(--white);overflow:hidden;box-shadow:0 4px 15px #0000000d;transition:box-shadow .4s ease,transform .4s ease}.service-card:hover{box-shadow:0 12px 30px #0000001a;transform:translateY(-4px)}.service-card-inner{position:relative;width:100%;height:100%}.service-card-front{position:relative;width:100%;background:var(--white)}.service-card-back{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#1b3a4ff2,#2c5570e6);color:var(--white);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:30px;opacity:0;transform:translateY(100%);transition:transform .6s cubic-bezier(.4,0,.2,1),opacity .5s ease}.service-card.flipped .service-card-back{transform:translateY(0);opacity:1}.service-card-back h3{font-family:Inter,sans-serif;font-size:1.2rem;margin-bottom:16px;color:var(--white);text-transform:uppercase;letter-spacing:1px;transform:translateY(20px);opacity:0;transition:transform .5s ease .2s,opacity .5s ease .2s}.service-card-back p{font-size:.95rem;line-height:1.6;opacity:0;transform:translateY(20px);transition:transform .5s ease .3s,opacity .5s ease .3s}.service-card.flipped .service-card-back h3,.service-card.flipped .service-card-back p{transform:translateY(0);opacity:1}.service-card-image{width:100%;aspect-ratio:3/4;overflow:hidden}.service-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.4,0,.2,1),filter .7s ease}.service-card:hover .service-card-image img{transform:scale(1.08)}.service-card.flipped .service-card-image img{transform:scale(1.15);filter:blur(4px) brightness(.7)}.service-card-label{text-align:center;padding:20px 16px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:2px;color:var(--text-dark);font-family:Inter,sans-serif}.view-more{text-align:center;margin-top:48px}.view-more a{font-size:.8rem;text-transform:uppercase;letter-spacing:3px;font-weight:600;color:var(--text-dark);position:relative;padding-bottom:4px}.view-more a:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:1px;background:var(--text-dark);transition:width .3s ease}.view-more a:hover{color:var(--primary)}.view-more a:hover:after{background:var(--primary)}.about-section{padding:100px 0;background:var(--white)}.about-inner{max-width:1100px;margin:0 auto;padding:0 24px}.about-block{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;margin-bottom:80px}.about-block.reverse{direction:rtl}.about-block.reverse>*{direction:ltr}.about-text h2{font-size:2rem;margin-bottom:24px;color:var(--primary-dark)}.about-text p{font-size:.95rem;line-height:1.9;color:var(--text-light);margin-bottom:16px}.about-text .highlight-word{color:var(--primary);font-weight:600;border-bottom:1px solid var(--primary)}.about-image{position:relative;overflow:hidden}.about-image img{width:100%;height:400px;object-fit:cover;transition:transform .6s ease}.about-image:hover img{transform:scale(1.03)}.about-image:after{content:"";position:absolute;bottom:0;left:0;right:0;height:4px;background:var(--gold)}.cta-section{padding:100px 0;background:linear-gradient(135deg,var(--primary-dark) 0%,var(--primary) 50%,var(--primary-light) 100%);color:var(--white);text-align:center;position:relative;overflow:hidden}.cta-section:before{content:"";position:absolute;top:-50%;right:-20%;width:500px;height:500px;border-radius:50%;background:#ffffff08}.cta-inner{max-width:700px;margin:0 auto;padding:0 24px;position:relative;z-index:1}.cta-inner.form-container{max-width:900px}.cta-inner h2{font-size:2.2rem;font-style:italic;margin-bottom:20px}.cta-inner p{font-size:.95rem;line-height:1.8;opacity:.9;margin-bottom:36px;font-weight:300}.cta-btn{display:inline-block;padding:14px 40px;border:2px solid var(--white);color:var(--white);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:2px;background:transparent;transition:all .3s ease}.cta-btn:hover{background:var(--white);color:var(--primary-dark);transform:translateY(-2px);box-shadow:0 8px 25px #0003}.contact-form{margin-top:40px;text-align:left}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:30px}.form-col{display:flex;flex-direction:column;gap:20px}.input-group{display:flex;flex-direction:column;gap:8px}.input-group.h-100{height:100%}.input-group label{font-size:.85rem;font-weight:500;letter-spacing:1px;color:#ffffffe6}.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:14px 16px;background:#ffffff14;border:1px solid rgba(255,255,255,.2);color:var(--white);font-family:Inter,sans-serif;font-size:.95rem;border-radius:4px;transition:all .3s ease}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#ffffff80}.contact-form textarea{resize:vertical;min-height:120px;flex-grow:1}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:none;border-color:var(--gold);background:#ffffff26;box-shadow:0 0 0 3px #c4a35a33}.contact-form select option{background:var(--primary-dark);color:var(--white)}.submit-btn{width:100%;max-width:300px;margin:0 auto;display:block}@media (max-width: 768px){.form-grid{grid-template-columns:1fr;gap:20px}}.footer{background:var(--charcoal);color:var(--white);padding:60px 0 0}.footer-inner{max-width:1200px;margin:0 auto;padding:0 24px 40px;display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:40px;border-bottom:1px solid rgba(255,255,255,.1)}.footer-col h4{font-family:Inter,sans-serif;font-size:.8rem;text-transform:uppercase;letter-spacing:2px;margin-bottom:20px;font-weight:600}.footer-col p,.footer-col a{font-size:.85rem;color:#fff9;line-height:2;display:block}.footer-col a:hover{color:var(--white)}.footer-bottom{max-width:1200px;margin:0 auto;padding:20px 24px;display:flex;justify-content:space-between;align-items:center}.footer-bottom p{font-size:.75rem;opacity:.5}.footer-bottom-social{display:flex;gap:12px}.footer-bottom-social a{width:32px;height:32px;border-radius:50%;border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font-size:.8rem;transition:all .3s ease}.footer-bottom-social a:hover{background:var(--primary);border-color:var(--primary)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.fade-in{opacity:0;transform:translateY(30px);transition:opacity .7s ease,transform .7s ease}.fade-in.visible{opacity:1;transform:translateY(0)}.mobile-toggle{display:none;flex-direction:column;gap:5px;background:none;padding:4px}.mobile-toggle span{width:24px;height:2px;background:var(--text-dark);transition:all .3s ease}@media (max-width: 900px){.hero-title{font-size:2.5rem}.services-grid{grid-template-columns:1fr 1fr}.about-block{grid-template-columns:1fr;gap:30px}.about-block.reverse{direction:ltr}.footer-inner{grid-template-columns:1fr 1fr}}@media (max-width: 650px){.top-bar-contact{display:none}.top-bar-inner{justify-content:flex-end}.mobile-toggle{display:flex}.nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:var(--white);flex-direction:column;padding:24px;gap:16px;box-shadow:0 8px 30px #0000001a}.nav-links.open{display:flex}.nav-cta{display:none}.hero{height:70vh;min-height:400px}.hero-title{font-size:2rem;letter-spacing:1px}.hero-subtitle-top{font-size:.75rem}.services-grid{grid-template-columns:1fr}.carousel-slide{min-width:100%}.carousel-container{padding:0 50px}.footer-inner{grid-template-columns:1fr}.cta-inner h2{font-size:1.6rem}}
