@import"https://fonts.googleapis.com/css2?family=Lato:wght@300;400&display=swap";@import"https://fonts.googleapis.com/css2?family=Montserrat:wght@700;800;900&family=Poppins:wght@600;700;800&display=swap";*{margin:0;padding:0;box-sizing:border-box}:root{--primary-blue: #0066cc;--dark-blue: #004499;--light-blue: #e6f2ff;--accent-coral: #ff6b47;--dark-charcoal: #2c2c2c;--deep-slate: #1a1a1a;--medium-gray: #4a4a4a;--light-gray: #e0e0e0;--text-light: #f5f5f5;--black: #000000;--white: #ffffff}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text-light);line-height:1.6;background-color:var(--dark-charcoal)}#root{min-height:100vh;display:flex;flex-direction:column}h1{font-size:2.5rem;font-weight:700;color:var(--accent-coral);margin-bottom:1rem}h2{font-size:2rem;font-weight:700;color:var(--accent-coral);margin-bottom:.75rem}h3{color:var(--primary-blue)}p{margin-bottom:1rem;color:var(--text-light)}.container{max-width:1200px;margin:0 auto;padding:0 1rem;width:100%}.site-header{background-color:var(--deep-slate);padding:0;border-bottom:none;box-shadow:0 2px 8px #0000004d;margin-bottom:0}.header-content{width:100%;margin:0;padding:0;display:flex;align-items:stretch;justify-content:center}.logo{height:60px;width:auto;object-fit:contain}.logo-full{width:100%;height:100px;object-fit:fill;display:block}.company-name{font-family:Montserrat,Poppins,sans-serif;font-weight:800;font-size:2rem;color:var(--primary-blue);margin:0;letter-spacing:1px;text-shadow:0 2px 4px rgba(0,102,204,.3);background:linear-gradient(135deg,var(--primary-blue) 0%,var(--accent-coral) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@media (min-width: 768px){.header-content{justify-content:center}.logo{height:70px}.logo-full{height:200px;object-fit:fill}.company-name{font-size:2.5rem}}@media (max-width: 767px){.header-content{flex-direction:column}.logo{height:50px}.logo-full{min-height:50px}.company-name{font-size:1.5rem;text-align:center}}nav{background-color:#002d66;padding:.5rem 0;box-shadow:0 2px 4px #0003;display:flex;justify-content:center;align-items:center;flex-direction:row;gap:.5rem;flex-wrap:wrap;position:relative;overflow:visible;margin-top:0}nav a{color:var(--white);text-decoration:none;font-weight:600;padding:.5rem 1.2rem;border-radius:4px;transition:color .3s ease,text-shadow .3s ease;position:relative;z-index:10;background-color:transparent;font-size:1.3rem}nav a:hover:not(.active){color:#66b3ff;text-shadow:0 0 10px rgba(102,179,255,.8),0 0 20px rgba(102,179,255,.5)}nav a:active:not(.active){color:#66b3ff;text-shadow:0 0 15px rgba(102,179,255,1),0 0 30px rgba(102,179,255,.6)}nav a.active{color:var(--accent-coral);text-shadow:0 0 10px rgba(255,107,71,.8),0 0 20px rgba(255,107,71,.5)}button{background-color:var(--accent-coral);color:var(--white);border:none;padding:.75rem 2rem;font-size:1.1rem;font-weight:600;border-radius:6px;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 4px #ff6b474d}button:hover{background-color:#ff8c69;transform:translateY(-2px);box-shadow:0 4px 8px #ff6b4780}button:active{transform:translateY(0)}footer{background:linear-gradient(135deg,var(--deep-slate) 0%,var(--black) 100%);color:var(--text-light);padding:3rem 0;text-align:center;margin-top:auto;box-shadow:0 -4px 6px #0000004d;border-top:2px solid var(--primary-blue)}footer p{color:var(--text-light);margin:0;font-size:1rem;letter-spacing:.5px}section{max-width:1200px;margin:0 auto;padding:2rem 1rem;background-color:var(--dark-charcoal)}section:not(.hero){background-color:var(--dark-charcoal);padding-top:3rem;position:relative}section.hero{max-width:100%;width:100%;margin:0}.hero{background:linear-gradient(180deg,var(--primary-blue) 0%,var(--primary-blue) 2%,var(--primary-blue) 40%,var(--dark-blue) 70%,#2a3a4a 90%,var(--dark-charcoal) 100%);color:var(--white);padding:2rem 1rem 3rem;text-align:center;position:relative;overflow:hidden;min-height:auto;display:flex;flex-direction:column;justify-content:center;align-items:center;max-width:100%;width:100%;margin:0;margin-bottom:-1rem;margin-top:0}.hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml,%3Csvg width='100' height='100' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='50' cy='50' r='2' fill='rgba(255,255,255,0.1)'/%3E%3C/svg%3E");opacity:.3;animation:float 20s ease-in-out infinite}.hero h1{color:var(--white);font-size:3.5rem;margin-bottom:1.5rem;text-shadow:2px 2px 4px rgba(0,0,0,.2);animation:fadeInUp .8s ease-out}.hero p{color:#fffffff2;font-size:1.3rem;margin-bottom:2rem;max-width:600px;animation:fadeInUp .8s ease-out .2s both}.hero button{animation:fadeInUp .8s ease-out .4s both;margin-top:1rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.service-card{background:linear-gradient(135deg,var(--deep-slate) 0%,var(--dark-charcoal) 100%);border-radius:12px;padding:2rem;margin:1.5rem 0;box-shadow:0 4px 6px #0000004d;transition:all .3s ease;border-left:4px solid var(--primary-blue);animation:fadeInUp .6s ease-out both;color:var(--text-light)}.service-card:nth-child(1){animation-delay:.1s}.service-card:nth-child(2){animation-delay:.2s}.service-card:nth-child(3){animation-delay:.3s}.service-card:nth-child(4){animation-delay:.4s}.service-card:hover{transform:translateY(-8px);box-shadow:0 8px 16px #06c6;border-left-color:var(--accent-coral)}.service-card p{color:var(--text-light)}.service-card h3{color:var(--primary-blue);font-size:1.5rem;margin-bottom:1rem}.service-list{list-style:none;padding:0;margin:0}.service-list li{border-bottom:1px solid var(--light-gray);color:var(--dark-gray);position:relative;padding:.75rem 0 .75rem 1.5rem}.service-list li:before{content:"✓";position:absolute;left:0;color:var(--primary-blue);font-weight:700;font-size:1.2rem}.service-list li:last-child{border-bottom:none}.contact-card{background:linear-gradient(135deg,var(--deep-slate) 0%,var(--dark-charcoal) 100%);border-radius:12px;padding:2rem;margin:1.5rem 0;box-shadow:0 4px 6px #0000004d;transition:all .3s ease;animation:fadeInUp .6s ease-out both;color:var(--text-light);border-left:4px solid var(--primary-blue)}.contact-card:nth-child(1){animation-delay:.1s}.contact-card:nth-child(2){animation-delay:.2s}.contact-card:hover{transform:translateY(-5px);box-shadow:0 8px 16px #06c6;border-left-color:var(--accent-coral)}.contact-card p{color:var(--text-light)}.contact-card h3{color:var(--primary-blue);font-size:1.3rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.contact-card a{color:var(--primary-blue);text-decoration:none;font-weight:600;transition:color .3s ease}.contact-card a:hover{color:var(--accent-coral);text-decoration:underline}.about-content{animation:fadeIn 1s ease-out}.about-grid{display:grid;grid-template-columns:1fr;gap:2rem;margin-top:2rem}@media (min-width: 768px){.about-grid{grid-template-columns:repeat(2,1fr)}}.about-card{background:linear-gradient(135deg,var(--deep-slate) 0%,var(--dark-charcoal) 100%);padding:2rem;border-radius:12px;box-shadow:0 4px 6px #0000004d;border-left:4px solid var(--primary-blue);animation:fadeInUp .6s ease-out both;color:var(--text-light)}.about-card:hover{border-left-color:var(--accent-coral)}.about-card p{color:var(--text-light)}.about-card:nth-child(1){animation-delay:.1s}.about-card:nth-child(2){animation-delay:.2s}.about-card h3{color:var(--primary-blue);margin-bottom:1rem}.services-grid{display:grid;grid-template-columns:1fr;gap:2rem;margin-top:2rem}.before-after-grid{display:grid;grid-template-columns:1fr;gap:3rem;margin-top:2rem}.before-after-item{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem}.image-column{display:flex;flex-direction:column;align-items:center}.image-label{text-align:center;margin-bottom:1rem;font-size:2rem;font-weight:700;color:#66b3ff}.image-container{position:relative;width:100%;aspect-ratio:4 / 3;overflow:hidden;transition:transform .3s ease;display:flex;align-items:center;justify-content:center;background-color:transparent;cursor:pointer}.image-container:has(.no-rotate){aspect-ratio:1 / 1;width:75%;margin:0 auto}.image-container:hover{transform:translateY(-4px)}.before-after-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease;transform:rotate(90deg)}.before-after-image.rotate-left{transform:rotate(-90deg)}.before-after-image.no-rotate{transform:none;width:100%;height:100%;object-fit:cover}.image-container:hover .before-after-image{transform:rotate(90deg) scale(1.05)}.image-container:hover .before-after-image.rotate-left{transform:rotate(-90deg) scale(1.05)}.image-container:hover .before-after-image.no-rotate{transform:scale(1.05)}.image-modal{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000e6;display:flex;align-items:center;justify-content:center;z-index:1000;cursor:pointer}.modal-content{position:relative;max-width:90%;max-height:90%;display:flex;align-items:center;justify-content:center;cursor:default}.modal-close{position:absolute;top:-40px;right:0;color:var(--white);font-size:3rem;font-weight:700;cursor:pointer;z-index:1001;line-height:1;transition:color .3s ease}.modal-close:hover{color:var(--accent-coral)}.modal-image{max-width:100%;max-height:90vh;object-fit:contain;transform:rotate(90deg)}.modal-image.rotate-left{transform:rotate(-90deg)}.modal-image.no-rotate{transform:none}.placeholder-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:600;color:var(--white);text-shadow:2px 2px 4px rgba(0,0,0,.5);background:linear-gradient(135deg,var(--medium-gray) 0%,var(--dark-charcoal) 100%);border:2px dashed var(--medium-gray);transition:transform .3s ease}.placeholder-image.before{background:linear-gradient(135deg,var(--deep-slate) 0%,var(--dark-charcoal) 100%);border-color:var(--medium-gray)}.placeholder-image.after{background:linear-gradient(135deg,var(--primary-blue) 0%,var(--dark-blue) 100%);border-color:var(--primary-blue)}.placeholder-image:hover{transform:scale(1.02)}.slideshow-section{padding:3rem 1rem;background-color:transparent}.slideshow-container{position:relative;max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:1rem}.slideshow-image-wrapper{position:relative;width:100%;max-width:800px;aspect-ratio:4 / 3;overflow:hidden;border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer}.slideshow-image-wrapper:has(.no-rotate){aspect-ratio:4 / 3}.slideshow-image-container{position:relative;width:100%;height:100%;overflow:hidden;backface-visibility:hidden;perspective:1000px}.slideshow-image{width:100%;height:100%;object-fit:cover;display:block;transform:rotate(90deg)}.slideshow-image.no-rotate{transform:none;width:100%;height:100%;object-fit:cover;display:block}.slideshow-image.slide-out-left{animation:slideOutLeft .3s ease-in-out forwards;will-change:transform,opacity}.slideshow-image.slide-in-right{animation:slideInRight .3s ease-in-out forwards;will-change:transform,opacity}.slideshow-image.no-rotate.slide-out-left{animation:slideOutLeftNoRotate .3s ease-in-out forwards;will-change:transform,opacity}.slideshow-image.no-rotate.slide-in-right{animation:slideInRightNoRotate .3s ease-in-out forwards;will-change:transform,opacity}@keyframes slideOutLeft{0%{opacity:1;transform:translate(0) rotate(90deg)}to{opacity:0;transform:translate(-100%) rotate(90deg)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%) rotate(90deg)}to{opacity:1;transform:translate(0) rotate(90deg)}}@keyframes slideOutLeftNoRotate{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-100%)}}@keyframes slideInRightNoRotate{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.slideshow-label{position:absolute;bottom:20px;left:50%;transform:translate(-50%);background-color:#000000b3;color:var(--white);padding:.5rem 1.5rem;border-radius:20px;font-size:1.2rem;font-weight:600;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.slideshow-arrow{background-color:#00000080;color:var(--white);border:none;width:50px;height:50px;border-radius:50%;font-size:2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .3s ease,transform .3s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:10}.slideshow-arrow:hover{background-color:#000c;transform:scale(1.1)}.slideshow-arrow:active{transform:scale(.95)}.slideshow-dots{display:flex;justify-content:center;gap:.5rem;margin-top:2rem}.slideshow-dot{width:12px;height:12px;border-radius:50%;background-color:#fff6;cursor:pointer;transition:background-color .3s ease,transform .3s ease}.slideshow-dot:hover{background-color:#fff9;transform:scale(1.2)}.slideshow-dot.active{background-color:var(--accent-coral);transform:scale(1.3)}.more-results-grid{display:grid;grid-template-columns:1fr;gap:2rem;margin-top:2rem}.video-container{position:relative}.video-container video{background-color:#1a1a1a}.video-play-overlay{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a1ab3,#282828b3);pointer-events:auto;transition:opacity .3s ease,visibility .3s ease;z-index:1;cursor:pointer}.video-container video.playing~.video-play-overlay{opacity:0;visibility:hidden;pointer-events:none}.play-button{width:80px;height:80px;border-radius:50%;background:#66b3ffe6;display:flex;align-items:center;justify-content:center;color:#fff;font-size:2.5rem;box-shadow:0 4px 15px #0000004d;transition:transform .2s ease,background .2s ease;padding-left:8px}.video-container:hover .play-button{transform:scale(1.1);background:#66b3ff}.video-container video{position:relative;z-index:0}@media (min-width: 768px){.before-after-grid{grid-template-columns:1fr;gap:4rem}.before-after-item{gap:2rem}.more-results-grid{grid-template-columns:repeat(3,1fr);gap:2rem}.image-label{font-size:2.5rem}}@media (min-width: 768px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.services-grid{grid-template-columns:repeat(2,1fr)}}html{scroll-behavior:smooth}.page-content{animation:fadeIn .8s ease-out}.feature-icon{font-size:3rem;margin-bottom:1rem;display:block}.cta-button{background:linear-gradient(135deg,var(--accent-coral) 0%,#ff8c69 100%);color:var(--white);border:none;padding:1rem 2.5rem;font-size:1.2rem;font-weight:600;border-radius:50px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ff6b4766;position:relative;overflow:hidden}.cta-button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.cta-button:hover:before{width:300px;height:300px}.cta-button:hover{transform:translateY(-3px);box-shadow:0 6px 20px #ff6b4799;background:linear-gradient(135deg,#ff8c69 0%,var(--accent-coral) 100%)}.cta-button:active{transform:translateY(-1px)}ul{list-style-position:inside;margin-left:1rem;margin-bottom:1rem}li{margin-bottom:.5rem;color:var(--text-light)}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}section:not(.hero){padding:3rem 1rem 4rem;background-color:var(--dark-charcoal)}@media (min-width: 768px){section:not(.hero){padding:4rem 2rem 5rem;background-color:var(--dark-charcoal)}}::selection{background-color:var(--primary-blue);color:var(--white)}::-moz-selection{background-color:var(--primary-blue);color:var(--white)}@media (min-width: 768px){h1{font-size:3rem}h2{font-size:2.5rem}section{padding:3rem 1rem}nav{gap:2.5rem;flex-direction:row;padding:.3rem 0}nav a{padding:.5rem 1.2rem;font-size:1.3rem}.hero{padding:2.5rem 1rem}.hero h1{font-size:3.5rem}.hero p{font-size:1.3rem}}@media (min-width: 1024px){h1{font-size:3.5rem}section{padding:4rem 2rem}nav a{padding:.5rem 1.2rem;font-size:1.4rem}.hero{padding:3rem 1rem}.hero h1{font-size:4rem}.hero p{font-size:1.4rem}}@media (max-width: 767px){h1{font-size:2rem}h2{font-size:1.5rem}nav{gap:.2rem;padding:.25rem 0 .1rem}nav a{padding:.3rem .5rem;font-size:.85rem}.slideshow-section{padding:2rem .5rem}.slideshow-arrow{width:40px;height:40px;font-size:1.5rem}.slideshow-label{font-size:1rem;padding:.4rem 1rem}button{padding:.6rem 1.5rem;font-size:1rem;width:100%;max-width:300px}section{padding:1.5rem 1rem}.hero{padding:2rem 1rem}.hero h1{font-size:2.5rem}.hero p{font-size:1.1rem}.service-card,.contact-card,.about-card{padding:1.5rem}.play-button{width:60px;height:60px;font-size:2rem}}
