:root{--primary-color:#1e3a5f;--secondary-color:#f0f4f8;--accent-color:#2c5282;--text-color:#1a202c;--light-blue:#ebf8ff;--medium-blue:#bee3f8;--white:#fff;--dark-blue:#1a365d;--vh:1vh;--header-h:80px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Montserrat,sans-serif;line-height:1.7;color:var(--text-color);background-color:var(--secondary-color);font-weight:300;letter-spacing:.3px;word-wrap:break-word;overflow-wrap:break-word}body.menu-open{overflow:hidden}.container{max-width:1200px;margin:0 auto;padding:0 20px}.header-right{display:flex;align-items:center;gap:30px}.language-switcher{display:flex;background-color:rgba(30,58,95,.08);padding:4px;border-radius:20px;border:1px solid var(--medium-blue)}.lang-btn{background:none;border:none;color:var(--primary-color);padding:6px 12px;margin:0;cursor:pointer;font-weight:400;border-radius:16px;transition:all .3s cubic-bezier(.4,0,.2,1);font-size:12px;letter-spacing:.5px;min-width:32px}.lang-btn.active{background-color:var(--primary-color);color:var(--white)}.lang-btn:hover:not(.active){background-color:var(--light-blue)}.hidden{display:none!important}header{display:flex;align-items:center;padding:30px 60px;background-color:transparent;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid hsla(0,0%,100%,.25);box-shadow:0 6px 20px rgba(0,0,0,.1);position:fixed;top:0;left:0;right:0;width:100%;z-index:10;transition:all .3s ease}.mobile-menu-toggle,header{justify-content:space-between}.mobile-menu-toggle{display:none;flex-direction:column;width:30px;height:21px;cursor:pointer;z-index:1010}.mobile-menu-toggle span{display:block;height:3px;width:100%;background-color:var(--primary-color);border-radius:3px;transition:all .3s ease}.mobile-menu-toggle.active span:first-child{transform:translateY(9px) rotate(45deg)}.mobile-menu-toggle.active span:nth-child(2){opacity:0}.mobile-menu-toggle.active span:nth-child(3){transform:translateY(-9px) rotate(-45deg)}.logo-container{display:flex;align-items:center;gap:15px}.logo-link{transition:all .3s ease}.logo-link,.logo-link:hover{text-decoration:none;color:inherit}.logo-link:hover{opacity:.8}.logo-text{display:flex;flex-direction:column}.logo-text h1{font-size:24px;font-weight:400;margin:0;line-height:1;letter-spacing:2px}.logo-text h1,.logo-text p{font-family:Times New Roman,Times,serif;color:var(--primary-color)}.logo-text p{font-size:10px;margin:2px 0 0;letter-spacing:1px}.logo{height:50px;width:50px;transition:all .3s ease;display:block;color:var(--primary-color)}.logo:hover{transform:scale(1.02)}.nav-links{display:flex;list-style:none}.nav-links li{margin-left:40px}.nav-links a.nav-link{text-decoration:none;color:var(--primary-color);font-weight:400;font-size:15px;letter-spacing:.5px;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1);padding:5px 0}.nav-links a.nav-link:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background-color:var(--primary-color);transition:width .4s cubic-bezier(.4,0,.2,1)}.nav-links a.nav-link:hover:after{width:100%}.nav-links a.nav-link:hover{color:var(--primary-color);transform:translateY(-1px)}header.on-hero .logo-text h1,header.on-hero .logo-text p,header.on-hero .nav-links a.nav-link{color:var(--white);text-shadow:0 1px 2px rgba(0,0,0,.25)}header.on-hero .mobile-menu-toggle span,header.on-hero .nav-links a.nav-link:after{background-color:var(--white)}header.on-hero .language-switcher{border-color:hsla(0,0%,100%,.4);background-color:hsla(0,0%,100%,.06)}header.on-hero .lang-btn{color:var(--white)}header.on-hero .lang-btn.active{background-color:hsla(0,0%,100%,.9);color:var(--primary-color)}header.on-hero nav#mainNav.active .nav-links a.nav-link{color:var(--primary-color)!important;text-shadow:none}header.on-hero nav#mainNav.active .nav-links a.nav-link:after{background-color:var(--primary-color)!important}header.on-hero .logo{filter:drop-shadow(0 1px 2px rgba(0,0,0,.3));color:var(--white)}.hero{min-height:calc((var(--vh) * 100) - env(safe-area-inset-bottom, 0px));background-color:var(--dark-blue);color:var(--white);position:relative;overflow:hidden;display:flex;align-items:center;padding:calc(var(--header-h) + 40px + env(safe-area-inset-top, 0px)) 0 120px}@media (max-width:768px){.hero{padding:calc(var(--header-h) + 24px) 0;min-height:calc((var(--vh) * 100) - env(safe-area-inset-bottom, 0px))}}@media (max-width:480px){.hero{padding:80px 0}}.hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="0.5" fill="rgba(255,255,255,0.02)"/><circle cx="75" cy="75" r="0.5" fill="rgba(255,255,255,0.02)"/></pattern></defs><rect width="100%" height="100%" fill="url(%23grain)"/></svg>');opacity:.3}.hero{background-position:50%;background-size:cover}.hero:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.45)}.hero-container{display:flex;width:100%;max-width:1200px;margin:0 auto;padding:0 40px;align-items:center;justify-content:space-between;gap:clamp(20px,4vh,40px);position:relative;z-index:1}.hero-content{max-width:55%;text-align:left;animation:fadeInLeft 1s cubic-bezier(.4,0,.2,1) both}.hero-image{max-width:45%;animation:fadeInRight 1s cubic-bezier(.4,0,.2,1) .3s both;display:flex;justify-content:center;align-items:center}.big-house-logo{width:100%;height:auto;max-height:clamp(180px,25vh,350px);max-width:clamp(180px,25vh,350px)}.hero h1{font-size:clamp(1.6rem,4.5vw,3.5rem);margin-bottom:25px;font-weight:500;letter-spacing:-1px;line-height:1.1}.hero p{font-size:clamp(.95rem,2.5vw,1.2rem);margin-bottom:40px;font-weight:500;opacity:.9;letter-spacing:.3px;line-height:1.7}.hero-buttons{display:flex;gap:16px;flex-wrap:wrap;justify-content:center}.hero-buttons span{width:100%;display:none}.hero-buttons span.en:not(.hidden),.hero-buttons span.fi:not(.hidden){display:inline-block}.cta-button span{width:100%;text-align:center;display:none}.cta-button,.cta-button span.en:not(.hidden),.cta-button span.fi:not(.hidden){display:inline-block}.cta-button{padding:16px 30px;border-radius:4px;text-decoration:none;font-weight:400;letter-spacing:.5px;transition:all .3s ease;text-align:center;text-transform:uppercase}.cta-button.primary-btn{background-color:var(--white);color:var(--primary-color);border:none}.cta-button.secondary-btn{background-color:transparent;color:var(--white);border:1px solid var(--white)}.cta-button.primary-btn:hover{background-color:hsla(0,0%,100%,.9);transform:translateY(-2px)}.cta-button.secondary-btn:hover{background-color:hsla(0,0%,100%,.1);transform:translateY(-2px)}@keyframes fadeInLeft{0%{opacity:0;transform:translateX(-50px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translateX(50px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.about{padding:120px 0;background-color:var(--white);position:relative}.about:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--medium-blue),transparent)}.about h2{text-align:center;margin-bottom:60px;color:var(--primary-color);font-size:2.8rem;font-weight:200;letter-spacing:-.5px}.about-content{display:grid;grid-template-columns:minmax(300px,1fr) minmax(520px,640px) minmax(300px,1fr);align-items:center;justify-content:center;justify-items:center;grid-gap:40px;gap:40px;position:relative}.about-text{max-width:680px;text-align:center;margin:0 auto;position:relative;z-index:1}.about-text p{font-size:1.2rem;line-height:1.9;font-weight:300;color:var(--accent-color);letter-spacing:.3px}.about-side{display:flex;align-items:center;justify-content:center}.about-side img{width:100%;max-width:100%;aspect-ratio:4/5;object-fit:cover;display:block;border-radius:12px;box-shadow:0 10px 30px rgba(30,58,95,.18);background:var(--white);padding:8px;border:1px solid rgba(30,58,95,.12);transition:transform .35s cubic-bezier(.4,0,.2,1),box-shadow .35s cubic-bezier(.4,0,.2,1);position:relative;z-index:1}.about-left img{transform:translateY(8px)}.about-right img{transform:translateY(-8px)}.about-side img:hover{transform:translateY(-2px) scale(1.01);box-shadow:0 18px 45px rgba(30,58,95,.25)}.about-content:before{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(90%,760px);height:75%;background:radial-gradient(ellipse at center,rgba(190,227,248,.35),rgba(235,248,255,.25) 40%,transparent 70%);filter:blur(10px);z-index:0;pointer-events:none;border-radius:40px}@media (max-width:992px){.about-content{grid-template-columns:1fr}.about-side{margin:10px 0}.about-side img{max-width:100%;transform:none}}.services{padding:120px 0;background-color:var(--light-blue)}.services h2{text-align:center;margin-bottom:20px;color:var(--primary-color);font-size:2.8rem;font-weight:200;letter-spacing:-.5px}.section-intro{text-align:center;max-width:700px;margin:0 auto 60px;color:var(--accent-color);font-size:1.1rem;font-weight:300;line-height:1.6}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:30px;gap:30px}@media (max-width:1200px){.services-grid{grid-template-columns:none}}@media (max-width:600px){.services-grid{grid-template-columns:none}}.service-card{background-color:var(--white);padding:24px 20px;border-radius:16px;box-shadow:0 8px 25px rgba(30,58,95,.08);transition:all .4s cubic-bezier(.4,0,.2,1);border:1px solid rgba(30,58,95,.1);position:relative;overflow:hidden;text-align:center}.service-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--primary-color),var(--dark-blue));transform:scaleX(0);transition:transform .4s cubic-bezier(.4,0,.2,1)}.service-card:hover:before{transform:scaleX(1)}.service-card:hover{transform:translateY(-8px);box-shadow:0 15px 40px rgba(30,58,95,.15)}.service-icon{width:70px;height:70px;background-color:var(--primary-color);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;color:var(--white);font-size:28px;box-shadow:0 6px 15px rgba(30,58,95,.15)}.service-card h3{color:var(--primary-color);margin-bottom:14px;font-size:clamp(18px,1.6vw,22px);font-weight:400;letter-spacing:.1px;text-transform:uppercase;line-height:1.25;overflow-wrap:anywhere;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.service-card p{color:var(--accent-color);font-weight:300;line-height:1.6;letter-spacing:.2px;font-size:clamp(14px,1.1vw,15px)}.projects{padding:120px 0;background-color:var(--white)}.projects h2{text-align:center;margin-bottom:20px;color:var(--primary-color);font-size:2.8rem;font-weight:200;letter-spacing:-.5px}.projects-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:30px;gap:30px;margin-bottom:50px}@media (max-width:1200px){.projects-grid{grid-template-columns:repeat(2,1fr);gap:25px}}@media (max-width:600px){.projects-grid{grid-template-columns:1fr;gap:20px}}.project-card{border-radius:16px;overflow:hidden;box-shadow:0 8px 25px rgba(30,58,95,.15);transition:all .4s cubic-bezier(.4,0,.2,1);border:1px solid var(--medium-blue);position:relative}.project-card:hover{transform:translateY(-8px);box-shadow:0 15px 40px rgba(30,58,95,.25)}.project-image{position:relative;height:280px;overflow:hidden;background-color:var(--primary-color);border-radius:12px}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;opacity:.9}.project-caption{position:absolute;left:12px;bottom:12px;z-index:2;background:rgba(0,0,0,.45);color:#fff;padding:6px 10px;border-radius:8px;font-size:.95rem;line-height:1;text-transform:uppercase;letter-spacing:.5px}.project-caption .en.hidden,.project-caption .fi.hidden{display:none}.project-card:hover .project-image img{transform:scale(1.1);opacity:1}.placeholder-image.project-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:space-between;background:linear-gradient(135deg,var(--primary-color),var(--dark-blue));color:var(--white);padding:40px 20px}.project-placeholder i{font-size:4rem;opacity:.8;margin-top:20px}.project-placeholder span{font-size:1.4rem;font-weight:500;letter-spacing:1px;display:none;margin-bottom:20px;text-align:center;text-transform:uppercase}.project-placeholder span.en:not(.hidden),.project-placeholder span.fi:not(.hidden){display:block}.project-overlay{display:none}.projects-scroller{position:relative}.projects-scroller .projects-grid{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:10px}.projects-scroller .project-card{flex:0 0 80%;max-width:520px;scroll-snap-align:start}@media (min-width:900px){.projects-scroller .project-card{flex-basis:40%}}.projects-scroller .project-image{height:auto;aspect-ratio:4/3}.projects-nav{position:absolute;top:50%;transform:translateY(-50%);background:hsla(0,0%,100%,.9);border:1px solid var(--medium-blue);color:var(--primary-color);width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 25px rgba(30,58,95,.15);cursor:pointer;z-index:2;transition:all .3s ease}.projects-nav:hover{transform:translateY(-50%) scale(1.05)}.projects-prev{left:-10px}.projects-next{right:-10px}@media (max-width:768px){.projects-prev{left:0}.projects-next{right:0}}.testimonials{padding:120px 0;background-color:var(--light-blue);position:relative}.testimonials h2{text-align:center;margin-bottom:20px;color:var(--primary-color);font-size:2.8rem;font-weight:200;letter-spacing:-.5px}.testimonials-slider{max-width:900px;margin:0 auto;display:flex;overflow:hidden;position:relative;transition:transform .5s ease;height:auto}@media (max-width:768px){.testimonials{padding:80px 0}}@media (max-width:480px){.testimonials{padding:60px 0}}.testimonial{flex:0 0 100%;padding:20px;opacity:0;position:absolute;top:0;left:0;width:100%;transition:opacity .5s ease;will-change:opacity}.testimonial.active{opacity:1;position:relative}.testimonial-content{background-color:var(--white);padding:40px;border-radius:16px;box-shadow:0 8px 25px rgba(30,58,95,.08);margin-bottom:30px;position:relative}@media (max-width:768px){.testimonial-content{padding:30px}}@media (max-width:480px){.testimonial-content{padding:25px 20px}}.quote-icon{color:var(--primary-color);font-size:24px;margin-bottom:20px;opacity:.3}.testimonial-text{font-size:1.1rem;line-height:1.8;color:var(--accent-color);font-style:italic}.testimonial-author{display:flex;align-items:center;padding-left:20px}.author-image{width:60px;height:60px;border-radius:50%;overflow:hidden;margin-right:15px;border:3px solid var(--white);box-shadow:0 5px 15px rgba(30,58,95,.1)}.author-image img{width:100%;height:100%;object-fit:cover}.client-placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--accent-color),var(--primary-color));display:flex;align-items:center;justify-content:center;color:var(--white)}.client-placeholder i{font-size:24px}.author-info h4{color:var(--primary-color);font-weight:500;margin-bottom:5px}.author-info p{color:var(--accent-color);font-size:.9rem}.testimonial-dots{display:flex;justify-content:center;margin-top:30px}.dot{width:10px;height:10px;border-radius:50%;background-color:var(--medium-blue);margin:0 5px;cursor:pointer;transition:all .3s ease}.dot.active{background-color:var(--primary-color);transform:scale(1.3)}.dot:hover{background-color:var(--accent-color)}.contact{padding:100px 0;background-color:var(--secondary-color)}#jobs.contact{padding-top:130px}@media (max-width:768px){.contact{padding:80px 0}#jobs.contact{padding-top:100px}}@media (max-width:480px){.contact{padding:60px 0}}.contact h2{text-align:center;margin-bottom:50px;color:var(--primary-color);font-size:2.5rem}.contact-content{display:grid;grid-template-columns:1fr 1fr;grid-gap:50px;gap:50px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:5px;color:var(--primary-color);font-weight:500}.form-group input,.form-group textarea{width:100%;padding:12px 15px;border:1px solid var(--medium-blue);border-radius:8px;font-family:Montserrat,sans-serif;font-size:16px}@media (max-width:480px){.form-group input,.form-group textarea{padding:10px;font-size:14px}}.submit-btn{background-color:var(--primary-color);color:var(--white);border:none;padding:14px 30px;border-radius:8px;cursor:pointer;font-weight:500;transition:all .3s ease;font-size:16px;width:100%;margin-top:10px}@media (max-width:480px){.submit-btn{padding:12px 20px;font-size:14px}}.submit-btn:hover{background-color:var(--accent-color)}.contact-info{display:flex;flex-direction:column;gap:30px}.contact-details{padding:30px;background-color:var(--light-blue);border-radius:12px;border:1px solid var(--medium-blue)}.info-item{margin-bottom:20px}.info-item h4{color:var(--primary-color);margin-bottom:5px;font-weight:500}.info-item p{color:var(--accent-color);font-weight:300}.contact-link{color:var(--primary-color);text-decoration:none;font-weight:500}.contact-link i{margin-right:8px}.contact-link:hover{text-decoration:underline}.map-container{border-radius:12px;overflow:hidden;box-shadow:0 8px 25px rgba(30,58,95,.08);border:1px solid var(--medium-blue)}footer{background-color:var(--primary-color);color:var(--secondary-color);padding:50px 0}.footer-content{display:flex;flex-direction:column;align-items:center;text-align:center}.footer-logo-container{display:flex;align-items:center;gap:15px;margin-bottom:25px;text-decoration:none;color:inherit;transition:all .3s ease}.footer-logo-container:hover{text-decoration:none;color:inherit;opacity:.8}.footer-logo-img{height:40px;width:40px;color:var(--white);filter:brightness(0) invert(1)}.footer-logo-text{display:flex;flex-direction:column}.footer-logo-text h1{font-size:24px;font-weight:400;margin:0;line-height:1;letter-spacing:2px}.footer-logo-text h1,.footer-logo-text p{font-family:Times New Roman,Times,serif;color:var(--white)}.footer-logo-text p{font-size:10px;margin:2px 0 0;letter-spacing:1px}.footer-links ul{display:flex;list-style:none;margin-bottom:20px}.footer-links li{margin:0 15px}.footer-links a{color:var(--secondary-color);text-decoration:none;transition:all .3s ease}.footer-links a:hover{color:var(--medium-gray)}.footer-socials{margin:10px 0 20px;display:flex;gap:12px}.social-btn{width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.25);color:var(--secondary-color);text-decoration:none;transition:all .3s ease}.social-btn:hover{background:hsla(0,0%,100%,.2);transform:translateY(-2px)}.social-btn.tiktok i{font-size:18px}@media (max-width:1024px){.services-grid{gap:30px}.projects-grid,.services-grid{grid-template-columns:repeat(2,1fr)}.hero-container{flex-direction:column;padding:40px 20px;gap:30px}.hero-content{max-width:100%;text-align:center;order:0}.hero-buttons{justify-content:center}.hero-image{max-width:280px;order:-1;margin-bottom:10px}}@media (max-width:768px){header{flex-direction:row;padding:20px}.header-right{flex-direction:row;align-items:center;gap:20px}.mobile-menu-toggle{display:flex;margin-right:15px}.header-right{display:flex}.language-switcher{order:1}.mobile-menu-toggle{order:2}nav#mainNav{position:fixed;top:0;right:-100%;width:80%;max-width:320px;height:100vh;background-color:var(--white);z-index:1010;transition:right .4s cubic-bezier(.4,0,.2,1),transform .4s cubic-bezier(.4,0,.2,1),opacity .4s cubic-bezier(.4,0,.2,1);box-shadow:-5px 0 15px rgba(0,0,0,.1);padding:80px 30px 30px;overflow-y:auto;transform:translateX(30px);opacity:0;pointer-events:none}@media (max-width:480px){nav#mainNav{max-width:280px}}nav#mainNav.active{right:0;transform:translateX(0);opacity:1;pointer-events:auto}.nav-links{flex-direction:column;align-items:flex-start;margin-top:20px}.nav-links li{margin:15px 0}.nav-links a,.nav-links li{width:100%;position:relative}.nav-links a{font-size:18px;display:block;padding:10px 0;z-index:5}header .logo-container{justify-content:flex-start;flex-direction:column;align-items:center;gap:10px}header .logo-text{align-items:center;text-align:center}.footer-logo-container{justify-content:center}.services-grid{gap:30px}.projects-grid,.services-grid{grid-template-columns:1fr}.hero h1{font-size:2.8rem}.hero p{font-size:1.1rem}.contact-content{grid-template-columns:1fr}.contact-info{gap:20px}.footer-links ul{flex-direction:column}.footer-links li{margin:10px 0}.menu-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);z-index:1005;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:none}.menu-overlay.active{opacity:1;visibility:visible;pointer-events:auto;right:320px;width:calc(100% - 320px)}@media (max-width:480px){.menu-overlay.active{right:280px;width:calc(100% - 280px)}}}@media (max-width:480px){.hero-container{flex-direction:column;gap:10px}.hero-image{order:-1;margin-bottom:10px}.hero-content{order:0}.logo-container{gap:6px;flex-direction:column;align-items:center}.logo-text{align-items:center;text-align:center}.logo{height:40px;width:40px}.logo-text h1{font-size:18px}.logo-text p{font-size:8px}.language-switcher{position:static;top:auto;right:auto;margin:0;align-self:center;order:1}.mobile-menu-toggle{order:2}.hero{padding:calc(var(--header-h) + 28px + env(safe-area-inset-top, 0px)) 0 72px}.hero h1{font-size:clamp(1.5rem,6.2vw,1.8rem);margin-bottom:14px}.hero p{font-size:clamp(.9rem,3.4vw,1rem);margin-bottom:24px}.hero-buttons{flex-direction:column;width:100%;gap:14px;align-items:center}.hero-buttons .cta-button{width:min(480px,100%);margin-bottom:0;text-align:center}.cta-button{padding:10px 16px;font-size:inherit}.big-house-logo{max-height:clamp(130px,20vh,170px)}.service-card,.testimonial-content{padding:20px}.testimonial-author{flex-direction:column;align-items:center;text-align:center}.author-info{margin-top:10px}.form-group input,.form-group textarea{padding:12px}}.services .services-grid{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:278px;grid-gap:30px;gap:30px;overflow-x:auto;padding-bottom:10px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scroll-padding-left:20px}.services-scroller{position:relative}.services-nav{position:absolute;top:50%;transform:translateY(-50%);background:hsla(0,0%,100%,.85);border:1px solid var(--medium-blue);color:var(--primary-color);width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 25px rgba(30,58,95,.15);cursor:pointer;z-index:2;transition:all .3s ease;opacity:.6}.services-nav:hover{opacity:1;transform:translateY(-50%) scale(1.05)}.services-prev{left:-10px}.services-next{right:-10px}@media (max-width:768px){.services-prev{left:0}.services-next{right:0}}.services .service-card{scroll-snap-align:start;min-height:100%;width:100%}.products-hero{background-image:url(/images/products-hero.jpg);background-size:cover;background-position:50%;background-repeat:no-repeat;min-height:70vh;display:flex;align-items:center;justify-content:center;position:relative;margin-top:80px}.products-hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(30,58,95,.7),rgba(44,82,130,.5));z-index:1}.products-hero-container{position:relative;z-index:2;text-align:center;max-width:800px;padding:0 20px}.products-hero-content h1{font-size:3.5rem;font-weight:700;color:#fff;margin-bottom:1rem;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.products-hero-content p{font-size:1.2rem;color:#fff;font-weight:400;text-shadow:1px 1px 2px rgba(0,0,0,.3);max-width:600px;margin:0 auto}.products-content{padding:80px 0;background-color:var(--white)}.products-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));grid-gap:40px;gap:40px;max-width:1200px;margin:0 auto}.product-card{background:#fff;border-radius:16px;padding:40px 30px;box-shadow:0 8px 32px rgba(0,0,0,.1);transition:all .3s ease;border:1px solid rgba(30,58,95,.1);text-align:center;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.product-card:hover{transform:translateY(-8px);box-shadow:0 16px 48px rgba(0,0,0,.15)}.product-icon{margin-bottom:24px;display:flex;justify-content:center;align-items:center;height:80px}.product-icon img{height:60px;width:auto;filter:drop-shadow(0 4px 8px rgba(30,58,95,.2))}.product-card h2{font-size:1.8rem;font-weight:600;color:var(--primary-color);margin-bottom:16px;line-height:1.3}.product-card h2,.product-card p{word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.product-card p{font-size:1rem;color:#666;margin-bottom:24px;line-height:1.6}.product-features{list-style:none;margin-bottom:32px;text-align:left}.product-features li{color:#555;font-size:.95rem;position:relative;padding:8px 0 8px 24px;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;line-height:1.4}.product-features li:before{content:"✓";position:absolute;left:0;color:var(--accent-color);font-weight:700;font-size:1rem}.product-link{display:inline-block;color:var(--accent-color);text-decoration:none;font-weight:500;font-size:1rem;transition:all .3s ease;border-bottom:2px solid transparent}.product-link:hover{color:var(--primary-color);border-bottom-color:var(--accent-color)}@media (max-width:768px){.products-hero-content h1{font-size:2.5rem}.products-hero-content p{font-size:1rem}.products-grid{grid-template-columns:1fr;gap:30px}.product-card{padding:30px 20px}}@media (max-width:480px){.products-hero{min-height:60vh}.products-hero-content h1{font-size:2rem}.products-hero-content p{font-size:.9rem}.products-content{padding:60px 0}.product-card{padding:25px 15px}.product-card h2{font-size:1.5rem;line-height:1.2}.product-card p{font-size:.9rem;line-height:1.5}.product-features li{font-size:.85rem;line-height:1.3}}.form-success{text-align:center;padding:40px 20px;background:linear-gradient(135deg,var(--light-blue) 0,var(--medium-blue) 100%);border-radius:16px;border:1px solid var(--medium-blue)}.success-message{font-size:1.2rem;color:var(--primary-color);font-weight:500;margin:0}.validation-error{color:#e53e3e;font-size:.875rem;margin-top:4px;display:block}.products-contact{padding:80px 0;background:linear-gradient(135deg,var(--secondary-color) 0,var(--light-blue) 100%)}.contact-form-container{max-width:600px;margin:0 auto;background:#fff;padding:40px;border-radius:16px;box-shadow:0 8px 32px rgba(0,0,0,.1)}@media (max-width:768px){.contact-form-container{padding:30px 20px;margin:0 20px}.products-contact{padding:60px 0}}.hero{background-image:url(/images/hero.jpg)}