body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.navbar-wrapper{background-color:var(--background-grey);position:sticky;top:0;z-index:1000}.navbar{animation:navbarFadeIn .8s ease forwards;background-color:var(--background);border-bottom:1px solid #e5e7eb;box-shadow:0 2px 8px var(--shadow);height:64px;opacity:0}.navbar-container{justify-content:space-between;margin:0 auto;max-width:1350px}.navbar-container,.navbar-logo,.navbar-logo a{align-items:center;display:flex;height:100%}.navbar-logo a{animation:fadeSlideIn .6s ease forwards;animation-delay:.3s;color:var(--primary);opacity:0;text-decoration:none}.navbar-logo-image{height:60px;max-width:150px;object-fit:contain;transition:all .2s ease;width:auto}.navbar-logo-image:hover{transform:scale(1.05)}.navbar-menu{flex:1 1;height:100%;justify-content:center}.navbar-center,.navbar-menu{align-items:center;display:flex}.navbar-center{gap:32px}.navbar-item{animation:fadeSlideIn .6s ease forwards;color:var(--text-dark);cursor:pointer;font-family:Montserrat,sans-serif;font-size:.95rem;font-weight:500;opacity:0;padding:6px 12px;position:relative;text-decoration:none;transition:color .2s ease}.navbar-center .navbar-item:first-child{animation-delay:.4s}.navbar-center .navbar-item:nth-child(2){animation-delay:.5s}.navbar-center .navbar-item:nth-child(3){animation-delay:.6s}.navbar-item:hover{color:var(--primary)}.navbar-mobile-actions{display:none}.navbar .dropdown{position:relative}.navbar .dropdown-button{align-items:center;animation:fadeSlideIn .6s ease forwards;background:none;border:none;color:var(--text-dark);cursor:pointer;display:flex;font-family:Montserrat,sans-serif;font-size:.95rem;font-weight:500;gap:4px;opacity:0;padding:6px 12px;transition:color .2s ease}.navbar .dropdown-button:hover{color:var(--primary)}.navbar .dropdown-arrow{transition:transform .2s ease}.navbar .dropdown-arrow.rotate{transform:rotate(180deg)}.navbar .dropdown-content{background-color:var(--background);border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 6px -1px var(--shadow),0 2px 4px -1px var(--shadow);left:0;margin-top:4px;min-width:200px;opacity:0;overflow:hidden;padding:4px 0;position:absolute;top:100%;transition:opacity .15s ease,visibility .15s ease;visibility:hidden;z-index:1}.navbar .dropdown-content.show{opacity:1;visibility:visible}.navbar .dropdown-item{color:var(--text-dark);display:block;font-size:.95rem;opacity:0;padding:8px 16px;text-decoration:none;transform:translateY(-10px);transition:all .2s ease}.navbar .dropdown-content.show .dropdown-item{opacity:1;transform:translateY(0)}.navbar .dropdown-content.show .dropdown-item:first-child{transition-delay:.05s}.navbar .dropdown-content.show .dropdown-item:nth-child(2){transition-delay:.1s}.navbar .dropdown-content.show .dropdown-item:nth-child(3){transition-delay:.15s}.navbar .dropdown-item:hover{background-color:#f3f4f6}.navbar-actions{align-items:center;display:flex;gap:12px}.navbar-actions .contact-button{animation:fadeSlideIn .6s ease forwards;background-color:var(--primary);border-radius:4px;color:var(--background)!important;display:inline-block;flex:0 0 auto;font-weight:500;opacity:0;overflow:hidden;padding:8px 16px;text-align:center;text-overflow:ellipsis;transition:all .3s ease;white-space:nowrap;width:180px}.navbar-actions a:first-child{animation-delay:.7s}.navbar-actions a:last-child,.navbar-actions button:last-child{animation-delay:.8s}.contact-button:hover{background-color:var(--primary-dark);color:var(--background)}.hamburger{cursor:pointer;display:none}.bar{background-color:var(--text-dark);display:block;height:2px;margin:5px auto;transition:all .3s ease;width:25px}@media screen and (max-width:768px){.navbar-wrapper .navbar .navbar-container{padding:0 16px}.navbar-wrapper .navbar .navbar-logo-image{height:40px;max-width:220px}.navbar-wrapper .navbar .navbar-menu{align-items:stretch!important;background-color:var(--background)!important;border-top:1px solid #e5e7eb!important;box-shadow:0 10px 27px var(--shadow)!important;flex-direction:column!important;height:auto!important;justify-content:flex-start!important;left:-100vw!important;margin:0!important;max-height:calc(100vh - 64px)!important;overflow-x:hidden!important;overflow-y:auto!important;padding:20px 0!important;position:fixed!important;text-align:center!important;top:64px!important;transform:none!important;transition:left .3s ease!important;width:100vw!important;z-index:1000!important}.navbar-wrapper .navbar .navbar-menu.active{left:0!important}.navbar-wrapper .navbar .navbar-center{flex-direction:column!important;gap:0!important;margin:0!important;padding:0!important;width:100%!important}.navbar-wrapper .navbar .dropdown-button,.navbar-wrapper .navbar .navbar-item{border-bottom:1px solid #f3f4f6!important;box-sizing:border-box!important;margin:0!important;padding:16px 20px!important;text-align:left!important;width:100%!important}.navbar-wrapper .navbar .dropdown{margin:0!important;width:100%!important}.navbar-wrapper .navbar .dropdown-button{box-sizing:border-box!important;justify-content:space-between!important;padding:16px 20px!important;width:100%!important}.navbar-wrapper .navbar .dropdown-content{background-color:#f9fafb!important;border:none!important;border-radius:0!important;border-top:1px solid #e5e7eb!important;box-shadow:none!important;box-sizing:border-box!important;margin-top:0!important;position:static!important;width:100%!important}.navbar-wrapper .navbar .dropdown-item{border-bottom:1px solid #e5e7eb!important;box-sizing:border-box!important;margin:0!important;opacity:1!important;padding:12px 40px!important;transform:none!important;width:100%!important}.navbar-wrapper .navbar .dropdown-item:hover{background-color:#f3f4f6!important}.navbar-wrapper .navbar .navbar-actions{display:none!important}.navbar-wrapper .navbar .hamburger{display:block!important}.bar.active:first-child{transform:translateY(7px) rotate(45deg)}.bar.active:nth-child(2){opacity:0}.bar.active:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.navbar-wrapper .navbar .navbar-mobile-actions{border-top:1px solid #f3f4f6!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important;margin-top:15px!important;padding-top:15px!important;width:100%!important}.navbar-wrapper .navbar .mobile-action-button{background-color:var(--primary)!important;border-radius:8px!important;box-sizing:border-box!important;color:var(--background)!important;font-weight:600!important;margin:8px 20px!important;padding:12px 16px!important;text-align:center!important;width:calc(100% - 40px)!important}.navbar-wrapper .navbar .mobile-action-button.logout-button{background-color:initial!important;border:1px solid var(--border)!important;color:var(--text-dark)!important}}@media (prefers-reduced-motion:no-preference){.navbar .dropdown-item{transition:opacity .2s ease,transform .2s ease,background-color .15s ease}}@media screen and (max-width:480px){body{overflow-x:hidden!important}.navbar-wrapper .navbar .navbar-menu{left:-100vw!important;width:100vw!important}.navbar-wrapper .navbar .navbar-menu.active{left:0!important}.dropdown-button,.navbar-actions a,.navbar-actions button,.navbar-item,.navbar-logo a{animation-delay:.3s}.navbar-logo-image{height:36px!important;max-width:200px!important}}@keyframes navbarFadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.navbar,.navbar .dropdown-button,.navbar-actions a,.navbar-actions button,.navbar-item,.navbar-logo a{animation:none!important;opacity:1!important;transform:none!important}}.dialog-overlay{align-items:center;animation:fadeIn .2s ease-out;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.dialog-content{animation:scaleIn .2s ease-out;background-color:var(--background);border-radius:16px;box-shadow:0 8px 24px var(--shadow);max-width:450px;padding:24px;width:90%}.dialog-content h3{color:var(--primary);font-size:1.5rem;margin-bottom:16px;margin-top:0}.dialog-content p{color:var(--text);font-size:1rem;line-height:1.5;margin-bottom:24px}.dialog-buttons{display:flex;gap:12px;justify-content:flex-end}.dialog-button{border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:600;padding:10px 20px;transition:all .2s ease}.dialog-button-primary{background-color:var(--primary);color:var(--background)}.dialog-button-primary:hover{background-color:var(--primary-dark)}.dialog-button-secondary{background-color:#f1f1f1;color:var(--text-dark)}.dialog-button-secondary:hover{background-color:var(--border)}.hero{background-color:var(--background);height:90vh;justify-content:center;min-height:650px;overflow:hidden;padding:0 20px}.hero,.hero .hero-container{align-items:center;display:flex;width:100%}.hero .hero-container{gap:60px;margin:0 auto;max-width:1200px}.hero .hero-content{flex:1 1;padding-right:20px}.hero .hero-content h1{animation:contentSlideUp .8s ease forwards;animation-delay:.9s;color:#0077b6;font-size:4rem;font-weight:700;line-height:1.1;margin-bottom:24px;opacity:0}.hero .hero-subtitle{animation:contentSlideUp .8s ease forwards;animation-delay:1.1s;color:#555;font-size:1.4rem;line-height:1.5;margin-bottom:40px;max-width:550px;opacity:0}.hero .hero-cta{animation:contentSlideUp .8s ease forwards;animation-delay:1.3s;margin-bottom:30px;opacity:0}.hero .cta-button{background-color:#0077b6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.2rem;font-weight:600;padding:16px 36px;transition:all .3s ease}.hero .cta-button:hover{background-color:#005b8a;box-shadow:0 6px 15px #0077b640;transform:translateY(-3px)}.hero .hero-illustration{align-items:center;animation:illustrationFadeIn 1s ease forwards;animation-delay:1.4s;display:flex;flex:1 1;justify-content:center;opacity:0}.hero .hero-testimonial-rotator{background-color:#fff;border-radius:24px;box-shadow:0 20px 50px #0000001f;display:flex;flex-direction:column;justify-content:center;max-width:500px;min-height:420px;overflow:hidden;padding:50px;position:relative;transition:transform .3s ease,box-shadow .3s ease;width:100%}.hero .hero-testimonial-rotator:hover{box-shadow:0 25px 60px #00000026;transform:translateY(-5px)}.hero .testimonial-slide{bottom:30px;display:flex;flex-direction:column;justify-content:space-between;left:50px;opacity:0;position:absolute;right:50px;top:50px;transform:translateX(30px);transition:all .6s ease}.hero .testimonial-slide.active{opacity:1;transform:translateX(0)}.hero .testimonial-stars{display:flex;gap:4px;margin-bottom:20px}.hero .star-icon{color:gold;height:20px;width:20px}.hero .testimonial-text{align-items:center;color:#333;display:flex;flex-grow:1;font-size:1.25rem;font-style:italic;line-height:1.6;margin-bottom:30px;min-height:120px}.hero .testimonial-author{border-top:2px solid var(--border-light);margin-top:auto;padding-top:20px}.hero .testimonial-author h4{color:#0077b6;font-size:1.2rem;font-weight:600;margin-bottom:4px}.hero .testimonial-author p{color:#666;font-size:1rem;margin:0}@keyframes contentSlideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes illustrationFadeIn{0%{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}@media (max-width:1200px){.hero .hero-content h1{font-size:3.5rem}}@media (max-width:992px){.hero{height:auto!important;min-height:auto!important;padding:60px 15px!important}.hero .hero-container{flex-direction:column!important;gap:40px!important;max-width:100%!important}.hero .hero-content{padding-right:0!important;text-align:center!important}.hero .hero-subtitle{margin:0 auto 40px!important}.hero .hero-testimonial-rotator{margin-left:auto!important;margin-right:auto!important;margin-top:0!important;max-width:100%!important;min-height:350px!important;padding:40px!important;width:calc(100vw - 30px)!important}.hero .testimonial-slide{bottom:30px!important;left:40px!important;right:40px!important;top:40px!important}.hero .testimonial-text{font-size:1.15rem!important;margin-bottom:25px!important;min-height:100px!important}}@media (max-width:768px){.hero{padding:40px 10px!important}.hero .hero-content h1{font-size:2.8rem!important}.hero .hero-subtitle{font-size:1.2rem!important}.hero .cta-button{font-size:1.1rem!important;padding:14px 30px!important}.hero .hero-testimonial-rotator{margin-left:auto!important;margin-right:auto!important;min-height:320px!important;padding:35px!important;width:calc(100vw - 20px)!important}.hero .testimonial-slide{bottom:25px!important;left:35px!important;right:35px!important;top:35px!important}.hero .testimonial-text{margin-bottom:20px!important;min-height:90px!important}.hero .testimonial-author h4,.hero .testimonial-text{font-size:1.1rem!important}.hero .testimonial-author p{font-size:.9rem!important}}@media (max-width:576px){.hero .hero-content h1{font-size:2.2rem!important}.hero .hero-subtitle{font-size:1.1rem!important}.hero .hero-testimonial-rotator{min-height:300px!important;padding:30px!important;width:calc(100vw - 15px)!important}.hero .testimonial-slide{bottom:20px!important;left:30px!important;right:30px!important;top:30px!important}.hero .testimonial-text{font-size:1rem!important;min-height:80px!important}.hero .star-icon{height:16px!important;width:16px!important}}@media (max-width:480px){.hero .hero-content h1,.hero .hero-cta,.hero .hero-subtitle{animation-delay:.5s}.hero .hero-illustration{animation-delay:.7s}}@media (prefers-reduced-motion:reduce){.hero .hero-content h1,.hero .hero-cta,.hero .hero-illustration,.hero .hero-subtitle{animation:none!important;opacity:1!important;transform:none!important}}.equipment{background-color:var(--primary-dark);padding:60px 20px}.equipment:before{background:radial-gradient(circle,#0077b608 0,#0000 75%);content:"";height:180%;pointer-events:none;position:absolute;right:-10%;top:-30%;transform:rotate(30deg);width:60%;z-index:0}.equipment-container{margin:0 auto;max-width:1300px}.equipment h2{color:var(--primary-light);font-size:3rem;margin-bottom:40px;text-align:left}.equipment-content{align-items:flex-start;display:flex;gap:40px;position:relative}.equipment .equipment-image-container{height:600px;margin-left:0;overflow:hidden;position:sticky;top:calc(50vh - 275px);width:70%;z-index:1}.equipment .equipment-image{border-radius:24px;box-shadow:0 20px 50px var(--shadow);display:block;height:100%;object-fit:cover;width:100%}.equipment-cards-column{display:flex;flex-direction:column;gap:20px;width:30%}.equipment-card{background-color:var(--background-light);border-radius:24px;box-shadow:0 20px 50px var(--shadow);box-sizing:border-box;display:flex;flex-direction:column;height:275px;justify-content:center;transition:border .3s ease-in-out}.equipment-card.is-active{border:3px solid var(--primary);box-shadow:0 25px 60px #0077b640}.equipment-card-content{padding:25px}.equipment-card-content h3{color:var(--primary);font-size:1.7rem;font-weight:700;line-height:1.3;margin-bottom:12px;margin-top:0}.equipment-card-content p{color:var(--text);font-size:.95rem;line-height:1.6;margin-bottom:0}.equipment-image-placeholder{align-items:center;background-color:var(--background-light);border-radius:24px;display:flex;height:100%;justify-content:center;width:100%}.equipment-image-placeholder .loading-spinner{animation:equipmentSpin 1s ease-in-out infinite;border:4px solid #0077b633;border-radius:50%;border-top:4px solid var(--primary);height:40px;width:40px}@keyframes equipmentSpin{to{transform:rotate(1turn)}}.equipment-image{transition:opacity .3s ease}@media screen and (max-width:968px){.equipment{display:none}}.transparency{background-color:var(--primary-dark);overflow:hidden;padding:60px 15px;position:relative}.transparency:before{background:radial-gradient(circle,#ffffff0d 0,#0000 70%);content:"";height:200%;left:-10%;pointer-events:none;position:absolute;top:-30%;transform:rotate(-15deg);width:70%;z-index:0}.transparency-container{margin:0 auto;max-width:1300px;position:relative;z-index:1}.transparency h2{color:#fff;font-size:3rem;margin-bottom:40px;opacity:0;text-align:left;transform:translateY(20px);transition:opacity .8s ease,transform .8s ease}.transparency h2.animate{opacity:1;transform:translateY(0)}.transparency-content{align-items:flex-start;display:flex;gap:30px}.transparency-text{flex:0.7 1;padding-right:10px}.transparency-image{margin-top:40px}.transparency-text h3{color:#fff;font-size:2rem;font-weight:700;line-height:1.3;margin-bottom:20px;opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s ease;transition-delay:.2s}.transparency-text h3.animate{opacity:1;transform:translateY(0)}.transparency-text p{color:#e6e6e6;font-size:1.1rem;line-height:1.6;margin-bottom:24px;opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s ease;transition-delay:.4s}.transparency-text p.animate{opacity:1;transform:translateY(0)}.transparency-features{display:flex;flex-direction:column;gap:24px;list-style:none;margin:0 0 30px;padding:0}.transparency-features li{align-items:flex-start;display:flex;gap:16px;opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s ease}.transparency-features li:first-child{transition-delay:.6s}.transparency-features li:nth-child(2){transition-delay:.8s}.transparency-features li:nth-child(3){transition-delay:1s}.transparency-features li.animate{opacity:1;transform:translateY(0)}.feature-icon{align-items:center;background-color:#ffffff26;border-radius:12px;color:#fff;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.feature-icon svg{stroke:#fff;height:24px;width:24px}.feature-text h4{color:#fff;font-size:1.2rem;font-weight:600;margin:0 0 8px}.feature-text p{color:#e6e6e6;font-size:1rem;line-height:1.5;margin:0;opacity:1;transform:translateY(0);transition-delay:0s}.transparency-cta{border-left:4px solid #fff6;color:#fff;font-size:1.15rem;font-weight:600;margin-top:30px;opacity:0;padding-left:16px;transform:translateY(20px);transition:opacity .8s ease,transform .8s ease;transition-delay:1.2s}.transparency-cta.animate{opacity:1;transform:translateY(0)}.transparency-image{align-items:center;border-radius:24px;box-shadow:0 20px 50px #0006;display:flex;flex:1.3 1;justify-content:center;opacity:0;overflow:hidden;position:relative;transform:translateX(20px);transition:opacity .8s ease,transform .8s ease;transition-delay:.4s}.transparency-image.animate{opacity:1;transform:translateX(0)}.transparency-image:before{display:none}.transparency-dashboard-image{border-radius:24px;display:block;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3));height:auto;object-fit:cover;position:relative;width:100%;z-index:1}@media screen and (max-width:968px){.transparency{padding:40px 20px}.transparency h2{font-size:2rem;text-align:center}.transparency-content{flex-direction:column}.transparency-text{padding-right:0}.transparency-text h3{font-size:1.8rem;text-align:center}.transparency-cta{border-left:none;border-top:2px solid #fff3;padding-left:0;padding-top:16px;text-align:center}.transparency-image{margin-top:20px}.transparency-dashboard-image{border-radius:16px}.transparency-text h3{transition-delay:.1s}.transparency-text p{transition-delay:.2s}.transparency-features li:first-child{transition-delay:.3s}.transparency-features li:nth-child(2){transition-delay:.4s}.transparency-features li:nth-child(3){transition-delay:.5s}.transparency-cta{transition-delay:.6s}}@media screen and (max-width:480px){.transparency-text h3{font-size:1.5rem}.feature-icon{height:40px;width:40px}.feature-icon svg{height:20px;width:20px}.feature-text h4{font-size:1.1rem}.feature-text p{font-size:.95rem}.transparency-dashboard-image{border-radius:12px}}.equipment-mobile{background-color:var(--background);display:none;padding:40px 20px}.equipment-mobile h2{color:var(--primary);font-size:2rem;margin-bottom:30px;text-align:center}.equipment-mobile .equipment-tabs{display:none}.equipment-mobile .equipment-display{display:flex;flex-direction:column;gap:20px;margin-bottom:20px;transition:transform .3s ease-out,opacity .3s ease}.equipment-mobile .equipment-image-container{border-radius:16px;box-shadow:0 10px 30px var(--shadow);height:250px;overflow:hidden;transition:transform .3s ease,opacity .3s ease;width:100%}.equipment-mobile .equipment-image{height:100%;object-fit:cover;transition:transform .3s ease,opacity .3s ease;width:100%}.equipment-mobile .equipment-details{background-color:var(--background-light);border-radius:16px;box-shadow:0 10px 30px var(--shadow);display:flex;flex-direction:column;height:220px;justify-content:flex-start;min-height:220px;padding:20px;transition:opacity .3s ease,transform .3s ease}.equipment-mobile .equipment-details h3{color:var(--primary);font-size:1.5rem;margin-bottom:12px;transition:opacity .3s ease}.equipment-mobile .equipment-details p{color:var(--text);flex:1 1;font-size:1rem;line-height:1.5;margin:0;transition:opacity .3s ease}.equipment-mobile .equipment-indicators{display:flex;gap:10px;justify-content:center;margin-top:20px}.equipment-mobile .indicator{background-color:var(--border);border:none;border-radius:50%;cursor:pointer;height:10px;padding:0;transition:all .3s ease;width:10px}.equipment-mobile .indicator.active{background-color:var(--primary);transform:scale(1.2)}.equipment-mobile .equipment-display{touch-action:pan-y;transform-origin:center;-webkit-user-select:none;user-select:none}.equipment-mobile .equipment-display:active{transform:scale(.98)}@media screen and (max-width:968px){.equipment-mobile{display:block}}.process{background-color:var(--primary-dark);color:#fff;overflow-x:hidden;padding:60px 20px}.process:before{background:radial-gradient(circle,#ffffff0d 0,#0000 80%);bottom:-20%;content:"";height:200%;left:-30%;pointer-events:none;position:absolute;transform:rotate(10deg);width:80%;z-index:0}.process h2{color:#fff;font-size:3rem;margin-bottom:40px;text-align:center}.process-card-container{display:flex;height:500px;justify-content:center;margin-bottom:40px}.process-card-container:last-child{margin-bottom:0}.process-card{background:var(--background);border:none;border-radius:24px;box-shadow:0 20px 50px var(--shadow);max-width:1300px;position:relative;transition:transform .05s ease-out,opacity .05s ease-out;width:95%;will-change:transform,opacity}.process-card-content{align-items:center;display:flex;height:500px;padding:0;position:relative}.process-card-text{padding:60px 80px;position:relative;width:50%}.process-step-number{align-items:center;background-color:var(--primary);border-radius:50%;box-shadow:0 4px 12px #0077b64d;color:#fff;display:flex;font-size:2.5rem;font-weight:700;height:80px;justify-content:center;left:40px;position:absolute;top:40px;width:80px;z-index:2}.process-card-content.reversed .process-step-number{left:auto;right:40px}.process-card-text h3{color:var(--primary);font-size:2.5rem;font-weight:700;line-height:1.2;margin-bottom:24px;margin-top:0}.process-card-text p{color:var(--text);font-size:1.2rem;line-height:1.6}.process-card-icon{align-items:center;background:linear-gradient(135deg,var(--primary) 0,#0077b6cc 100%);border-bottom-right-radius:24px;border-top-right-radius:24px;display:flex;height:100%;justify-content:center;overflow:hidden;position:relative;width:50%}.process-card-icon:before{background:radial-gradient(circle at 30% 30%,#ffffff1a 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.process-card-icon svg{stroke:#fff;stroke-width:1.5;color:#fff;filter:drop-shadow(0 4px 8px rgba(0,0,0,.2));height:120px;position:relative;width:120px;z-index:1}.process-card-content.reversed{flex-direction:row-reverse}.process-card-content.reversed .process-card-icon{border-radius:24px 0 0 24px}.process-card-content.reversed .process-card-text{padding:60px 80px}@media screen and (max-width:1200px){.process-card{width:90%}.process-card-container,.process-card-content{height:400px}.process-card-content.reversed .process-card-text,.process-card-text{padding:50px 60px}.process-step-number{font-size:2.2rem;height:70px;width:70px}.process-card-text h3{font-size:2.2rem}.process-card-text p{font-size:1.1rem}.process-card-icon svg{height:100px;width:100px}}@media screen and (max-width:968px){.process{padding:40px 20px}.process h2{font-size:2rem;margin-bottom:30px}.process-card-content{flex-direction:column;height:auto}.process-card-content.reversed{flex-direction:column}.process-card-container{height:auto;min-height:350px}.process-card-text{width:100%}.process-card-content.reversed .process-card-text,.process-card-text{padding:60px 30px 40px}.process-step-number{font-size:2rem;height:70px;left:50%;top:20px;transform:translateX(-50%);width:70px}.process-card-content.reversed .process-step-number{left:50%;right:auto;transform:translateX(-50%)}.process-card-text h3{color:var(--primary);font-size:2rem;margin-top:40px;text-align:center}.process-card-text p{color:var(--text);font-size:1.1rem;text-align:center}.process-card-icon{height:200px;width:100%}.process-card-content.reversed .process-card-icon,.process-card-icon{border-radius:0 0 24px 24px}.process-card-icon svg{height:80px;width:80px}}.guarantee{background-color:var(--background);border-radius:24px;box-shadow:0 20px 50px var(--shadow);margin:0 auto -80px;max-width:1200px;overflow:hidden;padding:15px 20px;position:relative;transform:translateY(-80px)}.guarantee-wrapper{background:var(--primary-dark);margin:0;padding:80px;position:relative;z-index:1}.guarantee:before{background:radial-gradient(circle,#0077b60d 0,#0000 70%);content:"";height:200%;pointer-events:none;position:absolute;right:-20%;top:-50%;transform:rotate(30deg);width:80%;z-index:0}.guarantee-container{position:relative;z-index:1}.guarantee-content{align-items:center;display:flex;flex-direction:column;position:relative;text-align:center}.guarantee-seal{height:120px;margin:0 auto 15px;position:relative;width:120px;z-index:2}.seal-outer{animation:pulse 2.5s infinite;background:#fff;box-shadow:0 5px 15px #00000026;height:100%;position:relative;width:100%}.seal-inner,.seal-outer{align-items:center;border-radius:50%;display:flex;justify-content:center}.seal-inner{background:var(--primary);border:2px solid #fff;flex-direction:column;height:90%;width:90%}.guarantee-days{color:#fff;font-size:2.5rem;font-weight:800;line-height:1}.guarantee-text{color:#fff;font-size:1.2rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.guarantee h2{color:var(--primary);font-size:2.8rem;font-weight:700;margin-bottom:15px;text-align:center}.guarantee-description{margin:0 auto 15px;max-width:700px}.guarantee-description p{color:var(--text);font-size:1.2rem;line-height:1.5;margin:0}.divider{background-color:var(--primary);border-radius:2px;height:3px;margin:20px auto;opacity:.7;width:80px}.guarantee-tagline{margin-top:15px}.guarantee-tagline p{color:var(--primary);font-size:1.6rem;font-style:italic;font-weight:700;margin:0}@keyframes pulse{0%{box-shadow:0 5px 15px #0077b64d;transform:scale(1)}50%{box-shadow:0 5px 20px #0077b666;transform:scale(1.05)}to{box-shadow:0 5px 15px #0077b64d;transform:scale(1)}}@media screen and (max-width:1100px){.guarantee{margin-left:auto;margin-right:auto;max-width:90%}}@media screen and (max-width:768px){.guarantee{margin-bottom:-40px;max-width:95%;padding:30px 15px;transform:translateY(-40px)}.guarantee h2{font-size:2.2rem}.guarantee-description p{font-size:1.1rem}.guarantee-tagline p{font-size:1.3rem}.guarantee-seal{height:100px;width:100px}.guarantee-days{font-size:2rem}.guarantee-text{font-size:1rem}}@media screen and (max-width:480px){.guarantee{margin-bottom:-30px;max-width:98%;padding:25px 10px;transform:translateY(-30px)}.guarantee h2{font-size:1.8rem}.guarantee-description p{font-size:1rem}.guarantee-tagline p{font-size:1.1rem}.guarantee-seal{height:80px;width:80px}.guarantee-days{font-size:1.8rem}.guarantee-text{font-size:.9rem}}.testimonials{background-color:var(--background);overflow:hidden;padding:60px 20px;position:relative}.testimonials:before{background:radial-gradient(circle,#0077b60d 0,#0000 70%);content:"";height:200%;pointer-events:none;position:absolute;right:-20%;top:-50%;transform:rotate(45deg);width:60%}.testimonials .testimonials-container{margin:0 auto;max-width:1300px;position:relative;z-index:1}.testimonials h2{color:var(--primary);font-size:3rem;font-weight:700;margin-bottom:12px;text-align:center}.testimonials .testimonials-subtitle{color:var(--text-light);font-size:1.2rem;margin-bottom:60px;margin-left:auto;margin-right:auto;max-width:600px;text-align:center}.testimonials .testimonials-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(3,1fr);margin-bottom:60px}.testimonials .testimonial-card{background:var(--background);border-radius:24px;box-shadow:0 20px 50px var(--shadow);display:flex;flex-direction:column;overflow:hidden;position:relative;transition:all .3s ease}.testimonials .testimonial-card:hover{box-shadow:0 30px 60px var(--shadow);transform:translateY(-8px)}.testimonials .testimonial-content{display:flex;flex:1 1;flex-direction:column;padding:40px;position:relative}.testimonials .testimonial-content:before{color:#0077b61a;content:'"';font-family:Georgia,serif;font-size:80px;left:20px;line-height:1;position:absolute;top:20px}.testimonials .testimonial-stars{display:flex;gap:4px;margin-bottom:20px;position:relative;z-index:1}.testimonials .star-icon{color:gold;height:20px;width:20px}.testimonials .testimonial-text{align-items:flex-start;color:var(--text-dark);display:flex;flex-grow:1;font-size:1.1rem;font-style:italic;line-height:1.7;margin-bottom:24px;min-height:140px;position:relative;z-index:1}.testimonials .testimonial-author{align-items:center;border-top:2px solid var(--border-light);display:flex;margin-top:auto;padding-top:20px;position:relative;z-index:1}.testimonials .author-info h4{color:var(--primary);font-size:1.1rem;font-weight:600;margin-bottom:4px}.testimonials .author-info p{color:var(--text-light);font-size:.9rem;margin:0}.testimonials .testimonials-footer{border-bottom:1px solid var(--border);border-top:1px solid var(--border);display:flex;gap:60px;justify-content:center;margin-bottom:40px;padding:40px 0}.testimonials .review-stats{text-align:center}.testimonials .stat-number{color:var(--primary);display:block;font-size:2.5rem;font-weight:700;margin-bottom:8px}.testimonials .stat-text{color:var(--text-light);display:block;font-size:1rem;letter-spacing:.5px;text-transform:uppercase}.testimonials .more-reviews-button{background-color:var(--primary);border-radius:8px;color:var(--background);display:inline-block;display:block;font-size:1.1rem;font-weight:600;margin:0 auto;padding:16px 40px;text-align:center;text-decoration:none;transition:all .3s ease;width:fit-content}.testimonials .more-reviews-button:hover{background-color:var(--primary-dark);box-shadow:0 4px 12px #0077b64d;transform:translateY(-2px)}@media screen and (max-width:968px){.testimonials{padding:40px 20px}.testimonials h2{font-size:2rem}.testimonials .testimonials-subtitle{font-size:1.1rem;margin-bottom:40px}.testimonials .testimonials-grid{gap:24px;grid-template-columns:1fr}.testimonials .testimonial-content{padding:30px}.testimonials .testimonial-content:before{font-size:60px;left:15px;top:15px}.testimonials .testimonial-text{min-height:80px}.testimonials .testimonials-footer{gap:30px;padding:30px 0}.testimonials .stat-number{font-size:2rem}.testimonials .more-reviews-button{font-size:1rem;padding:14px 32px}}@media screen and (max-width:480px){.testimonials .testimonial-content{padding:24px}.testimonials .testimonials-footer{flex-direction:column;gap:24px}.testimonials .testimonial-text{font-size:1rem;min-height:60px}}.service-areas{background-color:var(--background);padding:60px 20px}.service-areas:before{background:radial-gradient(circle,#0077b605 0,#0000 80%);content:"";height:150%;pointer-events:none;position:absolute;right:-30%;top:-40%;transform:rotate(-25deg);width:90%;z-index:0}.service-areas-container{margin:0 auto;max-width:1300px}.service-areas h2{color:var(--primary);font-size:3rem;margin-bottom:40px;text-align:left}.service-areas-content{align-items:stretch;display:flex;gap:40px}.map-container{flex:1.5 1;height:600px}.service-map{border-radius:24px;box-shadow:0 20px 50px var(--shadow)}.service-checker{flex:1 1}.checker-card,.service-checker{display:flex;flex-direction:column}.checker-card{background:var(--background);border-radius:24px;box-shadow:0 20px 50px var(--shadow);height:100%;padding:32px}.checker-card h3{color:var(--primary);font-size:1.8rem;margin-bottom:12px}.checker-card p{color:var(--text-light);font-size:1.1rem}.address-input-container,.checker-card p{margin-bottom:24px}.check-button:hover:not(:disabled){transform:translateY(-1px)}.result-message{margin-bottom:20px;padding:16px}.schedule-button{background-color:#00a86b;border:none;border-radius:8px;color:var(--background);cursor:pointer;font-size:1.1rem;font-weight:600;margin-top:0;padding:16px;transition:all .3s ease;width:100%}.schedule-button:hover{background-color:#008f5a;transform:translateY(-1px)}.back-button{background-color:initial;border:1px solid var(--border);border-radius:8px;display:flex;font-size:1rem;font-weight:500;justify-content:center;margin-top:20px;padding:12px;transition:all .3s ease;width:100%}.back-button:hover{background-color:#f5f5f5;border-color:#ccc;color:var(--text-dark)}.back-icon{flex-shrink:0;height:20px;width:20px}@media screen and (max-width:968px){.service-areas{display:none}}.mobile-service-areas{background-color:var(--background);display:none;max-width:100vw;padding:40px 20px}.mobile-service-areas,.mobile-service-container{box-sizing:border-box;overflow-x:hidden;width:100%}.mobile-service-container{margin:0 auto;max-width:100%}.mobile-service-areas h2{color:var(--primary);font-size:2rem;margin-bottom:20px;text-align:center}.service-info{margin-bottom:25px;text-align:center}.service-info p{color:var(--text-light);font-size:1.1rem;line-height:1.5;margin:0}.mobile-map-container{box-sizing:border-box;height:280px;margin-bottom:25px;max-width:100%;overflow:hidden;position:relative;width:100%}.mobile-service-map{display:block;height:100%;min-width:0;overflow:hidden}.mobile-address-checker,.mobile-service-map{border-radius:16px;box-shadow:0 10px 30px var(--shadow);width:100%}.mobile-address-checker{background-color:var(--background);box-sizing:border-box;max-width:100%;overflow-x:hidden;padding:20px}.mobile-address-input-container{box-sizing:border-box;display:flex;flex-direction:column;gap:12px;margin-bottom:20px;max-width:100%;width:100%}.mobile-address-input{border:2px solid var(--border);border-radius:8px;box-sizing:border-box;font-size:16px;max-width:100%;min-width:0;padding:14px 16px;transition:border-color .3s ease;width:100%}.mobile-address-input:focus{border-color:var(--primary);outline:none}.mobile-check-button{background-color:var(--primary);border:none;border-radius:8px;box-sizing:border-box;color:var(--background);cursor:pointer;font-size:1rem;font-weight:600;padding:14px 20px;transition:all .3s ease;width:100%}.mobile-check-button:hover:not(:disabled){background-color:var(--primary-dark)}.mobile-check-button:disabled{cursor:not-allowed;opacity:.7}.mobile-result-container{box-sizing:border-box;display:flex;flex-direction:column;gap:15px;max-width:100%;width:100%}.mobile-result-message{word-wrap:break-word;align-items:center;border-radius:8px;box-sizing:border-box;display:flex;font-weight:500;gap:12px;overflow-wrap:break-word;padding:16px;width:100%}.mobile-result-message.success{background-color:var(--success-light);color:var(--success)}.mobile-result-message.error{background-color:var(--error-light);color:var(--error)}.mobile-result-icon{flex-shrink:0;height:24px;width:24px}.mobile-schedule-button{background-color:#00a86b;border:none;border-radius:8px;box-sizing:border-box;color:var(--background);cursor:pointer;font-size:1.1rem;font-weight:600;padding:16px;transition:all .3s ease;width:100%}.mobile-schedule-button:hover{background-color:#008f5a;transform:translateY(-1px)}.mobile-back-button{background-color:initial;border:1px solid var(--border);border-radius:8px;box-sizing:border-box;color:var(--text-light);cursor:pointer;font-size:1rem;font-weight:500;padding:12px;transition:all .3s ease;width:100%}.mobile-back-button:hover{background-color:var(--background-light);border-color:var(--text-light)}@media screen and (max-width:968px){.mobile-service-areas{display:block}}@media screen and (max-width:480px){.mobile-service-areas{padding:20px 10px}.mobile-service-container{max-width:calc(100vw - 20px);width:calc(100vw - 20px)}.mobile-map-container{height:250px;margin-bottom:20px}.mobile-address-checker{padding:15px}.mobile-service-areas h2{font-size:1.8rem}.service-info p{font-size:1rem}}.mobile-service-areas *{box-sizing:border-box;max-width:100%}.mobile-service-map *{max-width:none!important}.section-transition{background-color:var(--background);height:150px;margin-bottom:-1px;margin-top:-1px;overflow:hidden;position:relative;width:100%;z-index:5}.section-transition-svg{bottom:0;display:block;height:100%;left:0;position:absolute;width:150%;z-index:6}.wave-path{animation:wave-animation 18s linear infinite}.wave-path-accent{animation:wave-animation 13s linear infinite;animation-delay:-3s}.wave-path-accent-2{animation:wave-animation 15s linear infinite;animation-delay:-5s}@keyframes wave-animation{0%{transform:translateX(0)}50%{transform:translateX(-25%)}to{transform:translateX(0)}}@media screen and (max-width:768px){.section-transition{height:100px}}@media screen and (max-width:480px){.section-transition{height:80px}}@media (prefers-reduced-motion:reduce){.wave-path,.wave-path-accent,.wave-path-accent-2{animation:none!important}}.contact{background-color:var(--primary-dark);color:#fff;overflow:hidden;padding:60px 20px;position:relative}.contact:before{background:radial-gradient(circle,#ffffff12 0,#0000 70%);content:"";height:180%;pointer-events:none;position:absolute;right:-10%;top:-30%;transform:rotate(30deg);width:70%;z-index:0}.contact-container{margin:0 auto;max-width:1300px;position:relative;z-index:1}.contact h2{color:#fff;font-size:3rem;margin-bottom:40px;text-align:left}.contact-content{grid-gap:40px;align-items:stretch;display:grid;gap:40px;grid-template-columns:1fr 1.5fr}.contact-form-card,.contact-info-card{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:24px;box-shadow:0 20px 50px #0000004d;padding:30px}.contact-info-section h3{color:#fff;font-size:2rem;font-weight:700;margin-bottom:16px}.contact-description{color:#fffc;font-size:1.1rem;line-height:1.6;margin-bottom:24px}.contact-details{display:flex;flex-direction:column;gap:20px;margin-bottom:24px}.contact-item{align-items:flex-start;display:flex;gap:16px}.contact-icon{height:24px;margin-top:4px;width:24px}.contact-item h4{color:#fff;font-size:1.1rem;font-weight:600;margin-bottom:4px}.contact-item p{color:#ffffffb3;font-size:1rem;line-height:1.5;margin:0}.contact-emergency-notice{align-items:center;background-color:#f59e0b1a;border:1px solid #f59e0b4d;border-radius:12px;display:flex;gap:12px;padding:16px}.contact-emergency-icon{color:#f59e0b;flex-shrink:0;height:24px;width:24px}.contact-emergency-notice p{color:#fcd34d;font-size:1rem;font-weight:600;margin:0}.contact-form-card h3{color:#fff;font-size:2rem;font-weight:700;margin-bottom:12px}.contact .form-description{color:#fffc;font-size:1.1rem;margin-bottom:24px}.contact-status-message{align-items:center;animation:slideIn .3s ease-out;border-radius:8px;display:flex;gap:12px;margin-bottom:20px;padding:16px}.contact-status-message p{font-size:1rem;font-weight:600;margin:0}.contact-status-icon{flex-shrink:0;height:24px;width:24px}.contact-success{background-color:#48bb781a;border:1px solid #48bb784d;color:#2f855a}.contact-success .contact-status-icon{color:#38a169}.contact-error{background-color:#f565651a;border:1px solid #f565654d;color:#c53030}.contact-error .contact-status-icon{color:#e53e3e}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.contact .contact-form{display:flex;flex-direction:column;gap:20px}.contact .contact-form-group{display:flex;flex-direction:column;margin-bottom:20px}.contact .contact-form-row{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr}.contact .contact-form-group label{color:#fff;display:block;font-size:1rem;font-weight:600;margin-bottom:8px}.contact .contact-form-group input,.contact .contact-form-group textarea{background-color:#ffffff12;border:1px solid #fff3;border-radius:8px;color:#fff;font-family:inherit;font-size:1rem;padding:14px 16px;transition:all .3s ease;width:100%}.contact .contact-form-group input:focus,.contact .contact-form-group textarea:focus{border-color:var(--primary-light);box-shadow:0 0 0 3px #d0e8f533;outline:none}.contact .contact-form-group input::placeholder,.contact .contact-form-group textarea::placeholder{color:#fff6}.contact .contact-form-group textarea{height:100px;resize:vertical}.contact .contact-submit-button{background-color:var(--primary-light);border:none;border-radius:8px;color:var(--primary-dark);cursor:pointer;font-size:1.2rem;font-weight:600;padding:16px 32px;transition:all .3s ease;width:100%}.contact .contact-submit-button:hover{background-color:#fff;box-shadow:0 4px 12px #fff3;transform:translateY(-1px)}.contact .contact-submit-button:disabled{background-color:#d0e8f599;color:#006da899;cursor:not-allowed;transform:none}.contact .contact-submit-button:disabled:hover{background-color:#d0e8f599;box-shadow:none;transform:none}@media screen and (max-width:968px){.contact{padding:40px 20px}.contact h2{font-size:2rem;text-align:center}.contact-content{gap:30px;grid-template-columns:1fr}.contact-form-card,.contact-info-card{padding:24px}.contact-form-card h3,.contact-info-section h3{font-size:1.6rem;text-align:center}.contact .contact-description,.contact .form-description{text-align:center}.contact .contact-form-row{gap:20px;grid-template-columns:1fr}}@media screen and (max-width:480px){.contact-form-card,.contact-info-card{padding:20px}.contact-item{gap:12px}.contact-icon{height:20px;width:20px}}.footer{background-color:var(--primary-dark);border-top:1px solid #ffffff1a;color:#fff;margin-top:0;padding:60px 20px 0}.footer-container{margin:0 auto;max-width:1300px;padding:40px 0}.footer-content{grid-gap:60px;display:grid;gap:60px;grid-template-columns:1.5fr 2fr 1fr}.footer-brand h3{color:#fff;font-family:Montserrat,sans-serif;font-size:1.8rem;font-weight:700;margin-bottom:16px}.footer-brand p{color:#ffffffb3;font-size:1rem;line-height:1.6;margin-bottom:24px}.footer-stats{display:flex;gap:32px;margin-top:32px}.stat-item{display:flex;flex-direction:column}.stat-number{color:var(--primary-light);font-size:1.8rem;font-weight:700;margin-bottom:4px}.stat-label{color:#fff9;font-size:.85rem;letter-spacing:.5px;text-transform:uppercase}.footer-links{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(3,1fr)}.footer-column h4{color:#fff;font-family:Montserrat,sans-serif;font-size:1.1rem;font-weight:600;margin-bottom:20px}.footer-column ul{list-style:none;margin:0;padding:0}.footer-column li{margin-bottom:12px}.footer-column a{color:#ffffffb3;display:inline-block;font-size:.95rem;position:relative;text-decoration:none;transition:color .3s ease}.footer-column a:hover{color:var(--primary-light)}.footer-column a:after{background-color:var(--primary-light);bottom:-2px;content:"";height:1px;left:0;position:absolute;transition:width .3s ease;width:0}.footer-column a:hover:after{width:100%}.footer-contact h4{color:#fff;font-family:Montserrat,sans-serif;font-size:1.1rem;font-weight:600;margin-bottom:20px}.contact-info{display:flex;flex-direction:column;gap:16px;margin-bottom:32px}.contact-method{align-items:center;color:#ffffffb3;display:flex;gap:12px}.contact-icon{color:var(--primary-light);flex-shrink:0;height:18px;width:18px}.social-section h5{color:#fff;font-family:Montserrat,sans-serif;font-size:1rem;font-weight:600;margin-bottom:16px}.social-icons{display:flex;gap:12px}.social-icon{align-items:center;background-color:#ffffff14;border:1px solid #ffffff26;border-radius:8px;display:flex;height:40px;justify-content:center;transition:all .3s ease;width:40px}.social-icon:hover{background-color:var(--primary-light);border-color:var(--primary-light);box-shadow:0 4px 12px #0077b64d;transform:translateY(-2px)}.social-icon svg{fill:#ffffffb3;height:20px;transition:fill .3s ease;width:20px}.social-icon:hover svg{fill:var(--primary-dark)}.footer-bottom{background-color:#0003;border-top:1px solid #ffffff1a;margin-top:60px}.footer-bottom-content{align-items:center;display:flex;flex-wrap:wrap;justify-content:space-between;margin:0 auto;max-width:1300px;padding:24px 20px}.footer-bottom p{color:#fff9;font-size:.9rem;margin:0}.footer-policies{align-items:center;display:flex;gap:8px}.footer-policies a{color:#fff9;font-size:.9rem;text-decoration:none;transition:color .3s ease}.footer-policies a:hover{color:var(--primary-light)}.separator{color:#ffffff4d;font-size:.8rem}@media screen and (max-width:1200px){.footer-content{gap:40px;grid-template-columns:1fr 1.5fr 1fr}.footer-links{gap:24px;grid-template-columns:repeat(2,1fr)}}@media screen and (max-width:968px){.footer-content{gap:48px;grid-template-columns:1fr}.footer-links{gap:32px;grid-template-columns:repeat(3,1fr)}.footer-stats{flex-wrap:wrap}.footer-bottom-content{flex-direction:column;gap:16px;text-align:center}.footer-policies{flex-wrap:wrap;justify-content:center}.footer-brand,.footer-contact{text-align:center}.contact-info{align-items:center}.social-icons{justify-content:center}}@media screen and (max-width:640px){.footer{padding:32px 20px 0}.footer-container{padding:32px 0}.footer-links{gap:32px;grid-template-columns:1fr}.stat-item{flex:1 1;text-align:center}.footer-stats{gap:16px}.stat-number{font-size:1.5rem}}.address-content{grid-gap:35px;align-items:stretch;display:grid;gap:35px;grid-template-columns:1.1fr 1fr}.map-container{height:380px;position:relative}.service-map{border-radius:16px;box-shadow:0 10px 30px var(--shadow);height:100%;overflow:hidden;width:100%}.address-form{display:flex;flex-direction:column;justify-content:center}.address-input-container{display:flex;gap:12px;margin-bottom:18px}.address-input{border:2px solid var(--border);border-radius:8px;flex:1 1;font-size:1rem;padding:14px 20px;transition:border-color .3s ease}.address-input:focus{border-color:var(--primary);outline:none}.check-button{background-color:var(--primary);border:none;border-radius:8px;color:var(--background);cursor:pointer;font-weight:600;padding:14px 28px;transition:all .3s ease}.check-button:hover:not(:disabled){background-color:var(--primary-dark)}.check-button:disabled{cursor:not-allowed;opacity:.7}.result-message{align-items:center;border-radius:8px;display:flex;font-weight:500;gap:12px;margin-bottom:18px;padding:15px}.result-message.success{background-color:var(--success-light);color:var(--success)}.result-message.error{background-color:var(--error-light);color:var(--error)}.result-icon{flex-shrink:0;height:24px;width:24px}@media screen and (max-width:768px){.address-content{gap:25px;grid-template-columns:1fr}.map-container{height:280px}.address-input-container{flex-direction:column}.check-button{width:100%}}.service-time-layout{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1.2fr;margin-bottom:30px}.rescheduling-notice{background-color:var(--primary-light);border-left:4px solid var(--primary);border-radius:10px;margin-bottom:25px;padding:15px 20px}.rescheduling-notice p{color:var(--text-dark);font-size:1rem;line-height:1.5;margin:0}.service-time-left-panel{display:flex;flex-direction:column;gap:30px}.service-card-section{background-color:var(--background-light);border-radius:12px;padding:20px}.service-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.service-card-header h4{color:var(--text-dark);font-size:1.2rem;font-weight:600;margin:0}.service-time-step .service-selector-container{position:relative}.service-time-step .service-selector-button{align-items:center;background-color:var(--primary);border:none;border-radius:6px;color:var(--background);cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:8px;padding:8px 16px;transition:all .2s ease}.service-time-step .service-selector-button:hover{background-color:var(--primary-dark)}.service-time-step .service-dropdown-arrow{height:16px;transition:transform .2s ease;width:16px}.service-time-step .service-dropdown-arrow.rotated{transform:rotate(180deg)}.service-time-step .service-time-dropdown{background-color:var(--background);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 24px var(--shadow);max-height:300px;min-width:280px;overflow-y:auto;padding:8px 0;position:absolute;right:0;top:calc(100% + 8px);z-index:1000}.service-time-step .service-time-dropdown-item{background:none;border:none;cursor:pointer;display:block;padding:12px 16px;text-align:left;transition:all .2s ease;width:100%}.service-time-step .service-time-dropdown-item:hover{background-color:var(--background-light)}.service-time-step .service-time-dropdown-item.active{background-color:var(--primary-light)}.service-time-step .service-dropdown-content{display:flex;flex-direction:column;gap:4px}.service-time-step .service-dropdown-name{color:var(--text-dark);font-size:1rem;font-weight:600}.service-time-step .service-dropdown-details{align-items:center;display:flex;gap:12px}.service-time-step .service-dropdown-duration{color:var(--primary);font-size:.85rem;font-weight:500}.service-time-step .service-dropdown-price{color:var(--success);font-size:.85rem;font-weight:500}.service-time-step .service-card{background-color:var(--background);border:2px solid var(--primary);border-radius:12px;box-shadow:0 4px 12px #0077b61a;display:flex;gap:16px;padding:20px}.service-time-step .service-card-icon{align-items:center;background-color:var(--primary-light);border-radius:12px;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.service-time-step .service-card-icon svg{color:var(--primary);height:24px;width:24px}.service-time-step .service-card-content{flex:1 1}.service-time-step .service-card-content h3{color:var(--primary);font-size:1.3rem;font-weight:600;margin:0 0 8px}.service-time-step .service-description{color:var(--text-light);font-size:.95rem;line-height:1.4;margin:0 0 12px}.service-time-step .service-card-details{display:flex;flex-direction:column;gap:4px}.service-time-step .service-card-duration{color:var(--text-light);font-size:.9rem;font-weight:500}.service-time-step .service-card-price{color:var(--success);font-size:.9rem;font-weight:600}.time-selection-panel{background-color:var(--background-light);border-radius:12px;padding:20px}.time-selection-panel h4{color:var(--text-dark);font-size:1.2rem;margin-bottom:15px}.time-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}.time-button{background:var(--background);border:2px solid var(--border);border-radius:8px;color:var(--text-dark);cursor:pointer;font-size:1rem;font-weight:500;padding:12px 16px;position:relative;transition:all .3s ease}.time-button:hover{background-color:var(--primary-light);border-color:var(--primary)}.time-button.selected{background-color:var(--primary);border-color:var(--primary);color:var(--background)}.time-button.original-time{background-color:#0077b61a;border-color:var(--primary);position:relative}.time-button .current-indicator{background-color:var(--primary);border-radius:3px;bottom:2px;color:var(--background);font-size:.6rem;line-height:1;padding:2px 4px;position:absolute;right:2px}.no-times-message{color:var(--text-light);font-style:italic}.service-time-right-panel{background-color:var(--background-light);border-radius:12px;padding:20px}.calendar-container{width:100%}.calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.month-title{color:var(--text-dark);font-size:1.4rem;font-weight:600}.month-nav{align-items:center;background-color:var(--background);border:1px solid var(--border);border-radius:50%;color:var(--text);cursor:pointer;display:flex;font-size:1.2rem;font-weight:700;height:36px;justify-content:center;transition:background-color .3s ease;width:36px}.month-nav:hover{background-color:var(--primary-light);color:var(--primary)}.weekdays-header{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:10px}.weekday{color:var(--text-light);font-size:.9rem;font-weight:600;padding:5px 0;text-align:center}.calendar-grid{display:flex;flex-direction:column;gap:2px}.calendar-row{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(7,1fr)}.calendar-day{align-items:center;aspect-ratio:1;background-color:var(--background);border:1px solid #0000;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;font-size:.95rem;font-weight:500;justify-content:center;position:relative;transition:all .2s ease}.calendar-day.current-month{color:var(--text-dark)}.calendar-day.other-month{background-color:var(--background-grey);color:var(--text-light);opacity:.6}.calendar-day.today{border:1px solid var(--primary);font-weight:600}.calendar-day.selected{background-color:var(--primary);color:var(--background);font-weight:700}.calendar-day.has-slots:hover:not(.selected){background-color:var(--primary-light);border-color:var(--primary)}.calendar-day.no-slots{background-color:var(--background-light);color:var(--text-light);cursor:default;opacity:.6}.calendar-day.original-date{outline:2px solid var(--primary);position:relative}.original-date-indicator{background-color:var(--primary);border-radius:50%;height:6px;position:absolute;right:2px;top:2px;width:6px}.day-number{z-index:1}.slot-indicator{background-color:var(--primary);border-radius:50%;bottom:5px;height:6px;position:absolute;width:6px}@media screen and (max-width:768px){.service-time-layout{grid-template-columns:1fr}.service-time-right-panel{order:1}.service-time-left-panel{order:2}.rescheduling-notice{margin-bottom:20px;padding:12px 15px}.rescheduling-notice p{font-size:.9rem}.time-button .current-indicator{font-size:.55rem;padding:1px 3px}.service-time-step .service-card{flex-direction:column;gap:12px;padding:16px}.service-time-step .service-card-icon{align-self:flex-start;height:40px;width:40px}.service-time-step .service-card-icon svg{height:20px;width:20px}.service-time-step .service-card-content h3{font-size:1.2rem}.service-time-step .service-description{font-size:.9rem}.service-time-step .service-time-dropdown{left:auto;min-width:260px;right:0}.service-card-header{align-items:flex-start;flex-direction:column;gap:12px}.service-time-step .service-selector-container{align-self:flex-end}}.loading-spinner-container{display:flex;justify-content:center;margin:40px 0}.loading-spinner{border:5px solid #0077b633;border-top:5px solid var(--primary);height:50px;width:50px}.error-message{border-radius:8px;margin:20px 0;padding:20px}.error-message p{margin-bottom:15px}.retry-button{background-color:var(--error);border:none;border-radius:4px;color:var(--background);cursor:pointer;font-weight:600;padding:10px 15px;transition:background-color .3s ease}.retry-button:hover{background-color:#b71c1c}.contact-info-step .contact-form{margin:0 auto;max-width:650px}.contact-info-step .logged-in-info{background-color:var(--background-light);border-left:4px solid var(--primary);border-radius:12px;margin-bottom:25px;padding:20px}.contact-info-step .info-display{display:flex;flex-direction:column;gap:15px}.contact-info-step .info-item{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:8px 0}.contact-info-step .info-item:last-child{border-bottom:none}.contact-info-step .info-item label{color:var(--text-light);font-weight:600;margin:0}.contact-info-step .info-item span{color:var(--text-dark);font-weight:500}.contact-info-step .sms-preference-note{background-color:var(--primary-light);border-left:4px solid var(--primary);border-radius:8px;margin-top:20px;padding:16px}.contact-info-step .sms-preference-note p{align-items:center;color:var(--text-dark);display:flex;font-size:.95rem;gap:8px;margin:0}.contact-info-step .sms-preference-note svg{color:var(--primary);flex-shrink:0;height:16px;width:16px}.contact-info-step .checkbox-group{margin-top:28px}.contact-info-step .checkbox-group label{align-items:center;cursor:pointer;display:flex;font-weight:400;gap:12px}.contact-info-step .checkbox-group input[type=checkbox]{cursor:pointer;margin-right:12px;transform:scale(1.2);width:auto!important}.contact-info-step .checkbox-group span{color:var(--text);font-size:1rem}.contact-info-step .rescheduling-notice{background-color:var(--primary-light);border-left:4px solid var(--primary);border-radius:10px;margin-bottom:25px;padding:15px 20px}.contact-info-step .rescheduling-notice p{color:var(--text-dark);font-size:1rem;line-height:1.5;margin:0}.contact-info-step input:disabled,.contact-info-step input:read-only,.contact-info-step select:disabled,.contact-info-step textarea:disabled,.contact-info-step textarea:read-only{background-color:var(--background-light);border-color:var(--border);color:var(--text);cursor:not-allowed}.contact-info-step .readonly-notice{background-color:var(--background-light);border-left:4px solid var(--primary);border-radius:8px;color:var(--text);margin-top:20px;padding:15px}.contact-info-step .readonly-notice p{font-size:.95rem;margin:0}@media screen and (max-width:768px){.contact-info-step .rescheduling-notice{padding:12px 15px}.contact-info-step .readonly-notice{padding:12px}.contact-info-step .info-item{align-items:flex-start;flex-direction:column;gap:5px}.contact-info-step .logged-in-info{padding:15px}.contact-info-step .sms-preference-note{padding:12px}.contact-info-step .sms-preference-note p{font-size:.9rem}}.appointment-summary{background-color:var(--background-light);border-radius:12px;margin-bottom:25px;padding:28px}.summary-section{margin-bottom:28px}.summary-section:last-child{margin-bottom:0}.summary-section h3{border-bottom:2px solid var(--border);color:var(--primary);font-size:1.2rem;margin-bottom:14px;padding-bottom:9px}.summary-item{align-items:flex-start;gap:20px;margin-bottom:9px}.summary-item .label{color:var(--text-light);flex-shrink:0;font-weight:600}.summary-item .value{color:var(--text-dark);flex:1 1;text-align:right}.confirmation-notice{background-color:var(--success-light);border-radius:12px;margin-bottom:25px;padding:22px}.confirmation-notice h4{color:var(--success);font-size:1.1rem;margin-bottom:14px}.confirmation-notice ul{list-style:none;margin:0;padding:0}.confirmation-notice li{color:var(--success);margin-bottom:9px;padding-left:30px;position:relative}.confirmation-notice li:last-child{margin-bottom:0}.confirmation-notice li:before{content:"✓";font-weight:700;left:5px;position:absolute}.terms-agreement{margin-bottom:25px}.terms-agreement label{align-items:flex-start;cursor:pointer;display:flex;gap:12px}.terms-agreement input[type=checkbox]{cursor:pointer;margin-top:5px;transform:scale(1.2)}.terms-agreement span{color:var(--text);font-size:1rem;line-height:1.5}.terms-agreement a{color:var(--primary);text-decoration:underline}.terms-agreement a:hover{text-decoration:none}.existing-account-notice{margin-bottom:25px}.account-notice-content{align-items:flex-start;background-color:var(--primary-light);border-left:4px solid var(--primary);border-radius:12px;display:flex;gap:15px;padding:18px}.notice-icon{color:var(--primary);flex-shrink:0;height:24px;margin-top:2px;width:24px}.account-notice-content h4{color:var(--primary);font-size:1.1rem;font-weight:600;margin:0 0 8px}.account-notice-content p{color:var(--text-dark);font-size:.95rem;line-height:1.5;margin:0}.error-container{margin-bottom:25px}.error-message{align-items:flex-start;background-color:var(--error-light);border-radius:12px;display:flex;gap:15px;padding:18px}.error-icon{flex-shrink:0;height:24px;width:24px}.error-message h4{color:var(--error);font-size:1.1rem;margin:0 0 8px}.error-message p{color:var(--error);font-size:.95rem;margin:0 0 12px}.try-different-time-btn{background-color:var(--error);border:none;border-radius:4px;color:var(--background);cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 16px;transition:all .2s ease}.try-different-time-btn:hover{background-color:#b71c1c}.spinner{animation:spin 1s ease-in-out infinite;border:3px solid #ffffff4d;border-radius:50%;border-top:3px solid var(--background);display:inline-block;height:18px;margin-right:8px;vertical-align:middle;width:18px}.btn.submitting{background-color:#5c9cbf;cursor:not-allowed;padding-left:24px;padding-right:24px}.btn.submitting:hover{transform:none}@media screen and (max-width:768px){.appointment-summary{padding:18px}.summary-item{align-items:flex-start;flex-direction:column;gap:5px}.summary-item .value{text-align:left}.account-notice-content{padding:15px}.account-notice-content h4{font-size:1rem}.account-notice-content p{font-size:.9rem}}.schedule-page{background-color:var(--background-light);min-height:100vh;padding:20px 10px}.schedule-container{background:var(--background);border-radius:24px;box-shadow:0 20px 50px var(--shadow);margin:0 auto;max-width:1000px;padding:20px 35px}.schedule-page h1{color:var(--primary);font-size:2.5rem;margin-bottom:10px;text-align:center}.progress-indicator{display:flex;justify-content:space-between;margin-bottom:40px;position:relative}.progress-indicator:before{background-color:var(--border);content:"";height:2px;left:10%;position:absolute;right:10%;top:20px;z-index:0}.progress-step{align-items:center;cursor:pointer;display:flex;flex-direction:column;gap:10px;position:relative;z-index:1}.progress-step.completed .step-number{background-color:#00a86b;border-color:#00a86b;color:var(--background)}.progress-step.active .step-number{background-color:var(--primary);border-color:var(--primary);color:var(--background)}.step-number{align-items:center;background-color:var(--background);border:2px solid var(--border);border-radius:50%;color:var(--text-light);display:flex;font-weight:700;height:40px;justify-content:center;transition:all .3s ease;width:40px}.step-title{color:var(--text-light);font-size:.9rem;font-weight:500;text-align:center}.progress-step.active .step-title{color:var(--primary);font-weight:600}.progress-step.completed .step-title{color:#00a86b}.step-content{margin-top:30px}.step-content h2{color:var(--primary);font-size:1.8rem;margin-bottom:10px}.step-content p{color:var(--text-light);font-size:1.1rem;margin-bottom:25px}.form-group{margin-bottom:22px}.form-group label{color:var(--text-dark);display:block;font-size:1rem;font-weight:600;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{border:2px solid var(--border);border-radius:8px;font-family:inherit;font-size:1rem;padding:12px 16px;transition:all .3s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0077b61a;outline:none}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:var(--error)}.error-message{color:var(--error);display:block;font-size:.9rem;margin-top:5px}.form-row{grid-gap:22px;display:grid;gap:22px;grid-template-columns:1fr 1fr}.card-container{background-color:var(--background-light);border-radius:12px;margin-bottom:25px;padding:25px}.step-buttons{display:flex;gap:20px;justify-content:space-between;margin-top:30px}.step-buttons.single{justify-content:flex-end}.btn{font-size:1.1rem;min-width:140px;padding:12px 28px}.btn-primary{background-color:var(--primary);color:var(--background)}.btn-primary:hover{background-color:var(--primary-dark);transform:translateY(-1px)}.btn-secondary{background-color:initial;border:2px solid var(--border);color:var(--text-light)}.btn-secondary:hover{background-color:#f5f5f5;border-color:#ccc}.btn:disabled{cursor:not-allowed;opacity:.7;transform:none}@media screen and (max-width:768px){.schedule-container{padding:25px 20px;width:95%}.schedule-page h1{font-size:2rem}.progress-indicator{margin-bottom:40px}.step-title{font-size:.8rem}.form-row{grid-template-columns:1fr}}.success-page{background-color:var(--background-light);min-height:100vh;padding:40px 20px}.success-container{background:var(--background);border-radius:24px;box-shadow:0 20px 50px var(--shadow);margin:0 auto;max-width:600px;padding:40px;text-align:center}.success-icon{color:#00a86b;height:80px;width:80px}.success-icon svg{stroke-width:1.5}.success-page h1{color:#00a86b;font-size:2.5rem;margin-bottom:15px}.success-message{color:var(--text-light);font-size:1.1rem;line-height:1.6}.existing-account-info,.success-message{margin-bottom:30px}.account-info-content{align-items:flex-start;background-color:var(--primary-light);border-left:4px solid var(--primary);border-radius:12px;display:flex;gap:15px;padding:18px;text-align:left}.account-info-content .info-icon{color:var(--primary);flex-shrink:0;height:24px!important;margin-top:2px;width:24px!important}.account-info-content h4{color:var(--primary);font-size:1.1rem;font-weight:600;margin:0 0 8px}.account-info-content p{color:var(--text-dark);font-size:.95rem;line-height:1.5;margin:0}.appointment-details,.next-steps{background-color:var(--background-light);border-radius:12px;margin-bottom:30px;padding:25px;text-align:left}.appointment-details h3,.next-steps h3{color:var(--primary);font-size:1.3rem;margin-bottom:20px;text-align:center}.detail-item{border-bottom:1px solid var(--border);margin-bottom:12px;padding:8px 0}.detail-item:last-child{border-bottom:none;margin-bottom:0}.detail-label{color:var(--text-light);font-weight:600}.detail-value{color:var(--text-dark);text-align:right}.next-steps ol{margin:0;padding-left:20px}.next-steps li{color:var(--text);line-height:1.5;margin-bottom:12px}.next-steps li:last-child{margin-bottom:0}.success-page .schedule-action-buttons{display:flex;gap:20px;justify-content:center;margin-bottom:30px}.contact-support{border-top:1px solid var(--border);margin-top:30px;padding-top:30px}.contact-support p{color:var(--text-light);font-size:.95rem;margin:0}.contact-support a{color:var(--primary);text-decoration:none}.contact-support a:hover{text-decoration:underline}@media screen and (max-width:768px){.success-container{padding:30px 20px}.success-page h1{font-size:2rem}.success-page .schedule-action-buttons{flex-direction:column}.btn{width:100%}.account-info-content{padding:15px}}.password-input-container{position:relative;width:100%}.password-input-container input{padding-right:40px;width:100%}.password-toggle-button{align-items:center;background:none;border:none;color:var(--text-light);cursor:pointer;display:flex;justify-content:center;padding:6px;position:absolute;right:8px;top:50%;transform:translateY(-50%);transition:color .2s ease}.password-toggle-button:hover{color:var(--primary)}.password-toggle-button svg{height:18px;width:18px}.password-toggle-button:disabled{cursor:not-allowed;opacity:.5}.auth-container{align-items:center;background-color:var(--background-light);display:flex;justify-content:center;min-height:100vh;padding:20px}.auth-card{background:var(--background);border-radius:12px;box-shadow:0 10px 30px var(--shadow);max-width:450px;padding:30px;width:100%}.auth-tabs{border-bottom:1px solid #e5e7eb;display:flex;margin-bottom:30px}.auth-tab{color:var(--text-light);cursor:pointer;flex:1 1;font-weight:600;padding:10px;text-align:center;text-decoration:none}.auth-tab.active{border-bottom:2px solid var(--primary);color:var(--primary)}.auth-error{background-color:var(--error-light);border-radius:6px;color:var(--error);margin-bottom:20px;padding:10px 15px}.auth-form{gap:20px}.auth-form,.auth-form-group{display:flex;flex-direction:column}.auth-form-group label{color:var(--text-dark);font-weight:600;margin-bottom:8px}.auth-form-group input{border:2px solid var(--border);border-radius:6px;font-size:1rem;padding:12px}.auth-form-group input:focus{border-color:var(--primary);outline:none}.auth-form-group.checkbox{align-items:center;flex-direction:row}.auth-form-group.checkbox label{align-items:center;cursor:pointer;display:flex;gap:8px}.auth-remember-me-group{margin:0!important}.auth-remember-me-label{align-items:center;color:var(--text-dark)!important;cursor:pointer;display:flex!important;font-size:.95rem;font-weight:500!important;gap:12px;margin:0!important}.auth-remember-me-checkbox{display:none}.auth-custom-checkbox{background-color:var(--background);border:2px solid var(--border);border-radius:4px;flex-shrink:0;height:20px;position:relative;transition:all .2s ease;width:20px}.auth-remember-me-checkbox:checked+.auth-custom-checkbox{background-color:var(--primary);border-color:var(--primary)}.auth-remember-me-checkbox:checked+.auth-custom-checkbox:after{border:solid #fff;border-width:0 2px 2px 0;content:"";height:10px;left:6px;position:absolute;top:2px;transform:rotate(45deg);width:6px}.auth-custom-checkbox:hover{border-color:var(--primary)}.auth-remember-me-text{color:var(--text-dark);-webkit-user-select:none;user-select:none}.auth-form-note{color:var(--text-light);font-size:.85rem;margin:5px 0 0}.auth-password-requirements{color:var(--text-light);font-size:.85rem;margin:8px 0 0}.auth-password-requirements p{font-weight:600;margin:0 0 5px}.auth-password-requirements ul{list-style:none;margin:0;padding-left:20px}.auth-password-requirements li{color:var(--text-light);margin-bottom:3px;position:relative}.auth-password-requirements li:before{color:var(--error);content:"✗";font-weight:700;left:-20px;position:absolute}.auth-password-requirements li.valid:before{color:var(--success);content:"✓"}.auth-password-requirements li.valid{color:var(--success)}.auth-btn{background-color:var(--primary);border:none;border-radius:6px;color:var(--background);cursor:pointer;font-size:1rem;font-weight:600;padding:12px 15px;transition:background-color .2s ease}.auth-btn:hover:not(:disabled){background-color:var(--primary-dark)}.auth-btn:disabled{background-color:#b0c4de;cursor:not-allowed}.auth-links{align-items:center;display:flex;flex-wrap:wrap;font-size:.9rem;gap:10px;justify-content:space-between;margin-top:25px}.auth-links a{color:var(--primary);text-decoration:none}.auth-links a:hover{text-decoration:underline}.auth-links a.highlight{font-weight:600}.auth-link-button{background:none;border:none;color:var(--primary);cursor:pointer;font-size:.9rem;text-decoration:underline}.auth-link-button:hover{text-decoration:none}.auth-verified-email{align-items:center;background-color:var(--success-light);border:1px solid #bef3c0;border-radius:6px;display:flex;justify-content:space-between;padding:12px}.auth-verified-badge{color:#00a86b;font-weight:600}.auth-description{color:var(--text-light);line-height:1.5;margin-bottom:20px;text-align:center}.auth-customer-info{background-color:var(--primary-light);border-radius:6px;margin-bottom:20px;padding:12px;text-align:center}.auth-customer-info p{color:var(--text-dark);margin:0}.auth-success-message{padding:20px 0;text-align:center}.auth-success-message h3{color:var(--success);font-size:1.5rem;margin-bottom:15px}.auth-success-message p{color:var(--text);line-height:1.5;margin-bottom:15px}.auth-success-icon{color:var(--success);height:60px;margin:0 auto 20px;width:60px}.auth-success-icon svg{height:100%;width:100%}.auth-existing-account-message{padding:20px 0;text-align:center}.auth-existing-account-message h3{color:var(--primary);font-size:1.5rem;margin-bottom:15px}.auth-existing-account-message p{color:var(--text);line-height:1.5;margin-bottom:15px}.auth-existing-account-icon{color:var(--primary);height:60px;margin:0 auto 20px;width:60px}.auth-existing-account-icon svg{height:100%;width:100%}.auth-existing-account-actions{align-items:center;display:flex;flex-direction:column;gap:15px;margin-top:20px}.auth-existing-account-actions .auth-btn{min-width:200px;width:auto}.auth-email-tips{background-color:var(--background-light);border-radius:8px;margin-top:20px;padding:15px;text-align:left}.auth-email-tips p{color:var(--text-dark);font-weight:600;margin:0 0 10px}.auth-email-tips ul{color:var(--text);margin:0;padding-left:20px}.auth-email-tips li{margin-bottom:5px}.auth-error-state{padding:20px 0;text-align:center}.auth-error-state h3{color:var(--error);font-size:1.5rem;margin-bottom:15px}.auth-error-state p{color:var(--text);line-height:1.5;margin-bottom:20px}.auth-error-icon{color:var(--error);height:60px;margin:0 auto 20px;width:60px}.auth-error-icon svg{height:100%;width:100%}.auth-error-actions{align-items:center;display:flex;flex-direction:column;gap:15px}.auth-verification-loading{padding:40px 20px;text-align:center}.auth-verification-loading h3{color:var(--primary);margin-bottom:15px}.auth-verification-loading p{color:var(--text-light);margin-bottom:0}.auth-loading-spinner{animation:authSpin 1s ease-in-out infinite;border:4px solid #0077b633;border-radius:50%;border-top:4px solid var(--primary);height:40px;margin:0 auto 20px;width:40px}@keyframes authSpin{to{transform:rotate(1turn)}}@media (max-width:576px){.auth-card{padding:20px}.auth-links{flex-direction:column;text-align:center}.auth-error-actions,.auth-error-actions .auth-btn,.auth-existing-account-actions .auth-btn{width:100%}}.modal-overlay{align-items:center;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content{animation:modalFadeIn .2s ease-out;background-color:var(--background);border-radius:12px;box-shadow:0 10px 40px var(--shadow-dark);max-width:500px;overflow:hidden;width:100%}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-header{align-items:center;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;padding:20px 25px}.modal-header h3{color:var(--primary);font-size:1.3rem;margin:0}.close-button{align-items:center;background:none;border:none;border-radius:50%;color:var(--text-light);cursor:pointer;display:flex;justify-content:center;padding:5px;transition:all .2s ease}.close-button:hover{background-color:#f5f5f5;color:var(--text-dark)}.close-button svg{height:18px;width:18px}.modal-body{padding:25px}.modal-body p{color:var(--text-dark);line-height:1.5;margin:0 0 15px}.modal-body p:last-child{margin-bottom:0}.warning-text{color:var(--error);font-weight:600}.modal-footer{border-top:1px solid var(--border-light);display:flex;gap:15px;justify-content:flex-end;padding:20px 25px}.cancel-button,.confirm-button{border:none;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;padding:12px 18px;transition:all .2s ease}.cancel-button{background-color:#f5f5f5;color:var(--text-dark)}.cancel-button:hover{background-color:var(--border)}.confirm-button{color:var(--background)}.confirm-button.primary{background-color:var(--primary)}.confirm-button.primary:hover{background-color:var(--primary-dark)}.confirm-button.danger{background-color:var(--error)}.confirm-button.danger:hover{background-color:#b71c1c}.confirm-button.success{background-color:var(--success)}.confirm-button.success:hover{background-color:#1b5e20}.cancel-button:disabled,.confirm-button:disabled{cursor:not-allowed;opacity:.6}@media (max-width:576px){.modal-content{max-width:100%}.modal-body,.modal-footer,.modal-header{padding:15px}.modal-footer{flex-direction:column}.cancel-button,.confirm-button{width:100%}}.customer-invoices{margin:0 auto;max-width:1200px;padding:20px}.customer-invoices .invoices-header{margin-bottom:30px}.customer-invoices .invoices-header h2{color:var(--text-dark);font-size:1.8rem;font-weight:600;margin-bottom:8px}.customer-invoices .invoices-header p{color:var(--text-light);font-size:1rem;margin:0}.customer-invoices .invoices-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px}.customer-invoices .invoices-loading .loading-spinner{animation:invoicesSpinCustomer 1s ease-in-out infinite;border:4px solid #0077b633;border-radius:50%;border-top:4px solid var(--primary);height:40px;margin-bottom:20px;width:40px}@keyframes invoicesSpinCustomer{to{transform:rotate(1turn)}}.customer-invoices .alert{border-radius:8px;font-weight:500;margin-bottom:24px;padding:16px}.customer-invoices .alert-error{background-color:var(--error-light);border:1px solid var(--error);color:var(--error)}.customer-invoices .empty-invoices{align-items:center;background-color:var(--background);border-radius:12px;box-shadow:0 4px 20px var(--shadow);display:flex;flex-direction:column;justify-content:center;padding:80px 30px;text-align:center}.customer-invoices .empty-icon{color:var(--text-light);height:64px;margin-bottom:20px;width:64px}.customer-invoices .empty-icon svg{height:100%;width:100%}.customer-invoices .empty-invoices h3{color:var(--text-dark);font-size:1.3rem;font-weight:600;margin-bottom:8px}.customer-invoices .empty-invoices p{color:var(--text-light);font-size:1rem;margin:0;max-width:400px}.customer-invoices .invoices-table{background-color:var(--background);border-radius:12px;box-shadow:0 4px 20px var(--shadow);overflow:hidden}.customer-invoices .invoice-table-header{background-color:var(--background-light);color:var(--text-light);font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:16px 30px;text-transform:uppercase}.customer-invoices .invoice-row,.customer-invoices .invoice-table-header{grid-gap:20px;border-bottom:1px solid var(--border);display:grid;gap:20px;grid-template-columns:2fr 1fr 1.5fr 1fr 1fr}.customer-invoices .invoice-row{align-items:center;cursor:pointer;padding:20px 30px;transition:all .2s ease}.customer-invoices .invoice-row:hover{background-color:var(--background-light)}.customer-invoices .invoice-row:last-child{border-bottom:none}.customer-invoices .invoice-col-invoice .invoice-info{display:flex;flex-direction:column;gap:4px}.customer-invoices .invoice-number{color:var(--text-dark);font-size:1rem;font-weight:600}.customer-invoices .invoice-date{color:var(--text-light);font-size:.85rem}.customer-invoices .invoice-col-date{color:var(--text-dark);font-weight:500}.customer-invoices .invoice-col-amount .amount-info{display:flex;flex-direction:column;gap:4px}.customer-invoices .total-amount{color:var(--text-dark);font-size:1rem;font-weight:600}.customer-invoices .balance-due{color:var(--primary);font-size:.85rem;font-weight:500}.customer-invoices .invoice-status-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:.8rem;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.customer-invoices .invoice-status-draft{background-color:#f3f4f6;color:#6b7280}.customer-invoices .invoice-status-sent{background-color:var(--primary-light);color:var(--primary)}.customer-invoices .invoice-status-paid{background-color:var(--success-light);color:var(--success)}.customer-invoices .invoice-status-partial{background-color:var(--warning-light);color:var(--warning)}.customer-invoices .invoice-status-overdue{background-color:var(--error-light);color:var(--error)}.customer-invoices .invoice-status-cancelled{background-color:#f3f4f6;color:#6b7280}.customer-invoices .invoice-col-actions{align-items:center;display:flex;justify-content:space-between}.customer-invoices .invoice-pay-button{background-color:var(--primary);border:none;border-radius:6px;color:var(--background);cursor:pointer;font-size:.85rem;font-weight:600;padding:8px 16px;transition:all .2s ease}.customer-invoices .invoice-pay-button:hover{background-color:var(--primary-dark);transform:translateY(-1px)}.customer-invoices .invoice-view-details{color:var(--text-light);opacity:0;transition:opacity .2s ease}.customer-invoices .invoice-row:hover .invoice-view-details{opacity:1}.customer-invoices .invoice-view-details svg{height:16px;width:16px}@media (max-width:1200px){.customer-invoices{padding:16px}}@media (max-width:968px){.customer-invoices .invoice-table-header{display:none}.customer-invoices .invoice-row{align-items:stretch;display:flex;flex-direction:column;gap:12px;padding:20px}.customer-invoices .invoice-col-actions{gap:12px;justify-content:flex-start}.customer-invoices .invoice-view-details{opacity:1}.customer-invoices .invoice-pay-button{flex:1 1;text-align:center}}@media (max-width:640px){.customer-invoices{padding:12px}.customer-invoices .invoices-header{margin-bottom:20px}.customer-invoices .invoices-header h2{font-size:1.5rem}.customer-invoices .invoice-row{padding:16px}.customer-invoices .empty-invoices{padding:60px 20px}}.customer-profile{max-width:800px;padding:0}.customer-profile .profile-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px}.customer-profile .profile-loading .loading-spinner{animation:profileSpin 1s ease-in-out infinite;border:4px solid #0077b633;border-radius:50%;border-top:4px solid var(--primary);height:40px;margin-bottom:20px;width:40px}@keyframes profileSpin{to{transform:rotate(1turn)}}.customer-profile .profile-header{margin-bottom:30px}.customer-profile .profile-header h2{color:var(--text-dark);font-size:2rem;font-weight:600;margin:0 0 8px}.customer-profile .profile-header p{color:var(--text-light);font-size:1.1rem;margin:0}.customer-profile .profile-alert{border-radius:8px;font-weight:500;margin-bottom:24px;padding:12px 16px}.customer-profile .profile-alert-error{background-color:var(--error-light);border:1px solid var(--error);color:var(--error)}.customer-profile .profile-alert-success{background-color:var(--success-light);border:1px solid var(--success);color:var(--success)}.customer-profile .profile-content{display:flex;flex-direction:column;gap:30px}.customer-profile .profile-section{background-color:var(--background);border-radius:12px;box-shadow:0 4px 20px var(--shadow);overflow:hidden}.customer-profile .profile-section-header{align-items:center;background-color:var(--background);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:24px 30px}.customer-profile .profile-section-header h3{color:var(--text-dark);font-size:1.4rem;font-weight:600;margin:0}.customer-profile .profile-edit-btn{align-items:center;background-color:var(--primary);border:none;border-radius:6px;color:var(--background);cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:8px;padding:8px 16px;transition:all .2s ease}.customer-profile .profile-edit-btn:hover{background-color:var(--primary-dark)}.customer-profile .profile-edit-btn svg{height:16px;width:16px}.customer-profile .profile-form{padding:30px}.customer-profile .profile-form-group{margin-bottom:24px}.customer-profile .profile-form-group:last-of-type{margin-bottom:0}.customer-profile .profile-form-group label{color:var(--text-dark);display:block;font-size:1rem;font-weight:600;margin-bottom:8px}.customer-profile .profile-form-group input{background-color:var(--background);border:2px solid var(--border);border-radius:8px;color:var(--text-dark);font-family:inherit;font-size:1rem;padding:12px 16px;transition:all .3s ease;width:100%}.customer-profile .profile-form-group input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0077b61a;outline:none}.customer-profile .profile-input-readonly{background-color:var(--background-light)!important;cursor:not-allowed!important;opacity:.7}.customer-profile .profile-field-note{color:var(--text-light);display:block;font-size:.85rem;font-style:italic;margin-top:6px}.customer-profile .profile-checkbox-group{background-color:var(--background-light);border:1px solid var(--border);border-radius:8px;padding:16px}.customer-profile .profile-checkbox-label{align-items:flex-start;cursor:pointer;display:flex!important;gap:12px;margin:0!important}.customer-profile .profile-checkbox-label input[type=checkbox]{display:none}.customer-profile .profile-custom-checkbox{background-color:var(--background);border:2px solid var(--border);border-radius:4px;flex-shrink:0;height:20px;margin-top:2px;position:relative;transition:all .2s ease;width:20px}.customer-profile .profile-checkbox-label input[type=checkbox]:checked+.profile-custom-checkbox{background-color:var(--primary);border-color:var(--primary)}.customer-profile .profile-checkbox-label input[type=checkbox]:checked+.profile-custom-checkbox:after{border:solid #fff;border-width:0 2px 2px 0;content:"";height:10px;left:6px;position:absolute;top:2px;transform:rotate(45deg);width:6px}.customer-profile .profile-checkbox-label input[type=checkbox]:disabled+.profile-custom-checkbox{cursor:not-allowed;opacity:.5}.customer-profile .profile-checkbox-text{display:flex;flex-direction:column;gap:4px}.customer-profile .profile-checkbox-title{color:var(--text-dark);font-size:1rem;font-weight:600}.customer-profile .profile-checkbox-description{color:var(--text-light);font-size:.9rem;line-height:1.4}.customer-profile .profile-form-actions{border-top:1px solid var(--border);display:flex;gap:12px;justify-content:flex-end;margin-top:30px;padding-top:20px}.customer-profile .profile-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;padding:12px 20px;transition:all .2s ease}.customer-profile .profile-btn:disabled{cursor:not-allowed;opacity:.6}.customer-profile .profile-btn-primary{background-color:var(--primary);color:var(--background)}.customer-profile .profile-btn-primary:hover:not(:disabled){background-color:var(--primary-dark)}.customer-profile .profile-btn-secondary{background-color:#f1f1f1;color:var(--text-dark)}.customer-profile .profile-btn-secondary:hover:not(:disabled){background-color:var(--border)}.customer-profile .profile-btn-outline{background-color:initial;border:2px solid var(--primary);color:var(--primary)}.customer-profile .profile-btn-outline:hover{background-color:var(--primary-light)}.customer-profile .profile-btn svg{height:16px;width:16px}.customer-profile .profile-security-actions{padding:30px}.customer-profile .profile-password-form{display:flex;flex-direction:column;gap:20px;width:100%}.customer-profile .profile-password-error{background-color:var(--error-light);border:1px solid var(--error);border-radius:6px;color:var(--error);font-size:.9rem;padding:12px}.customer-profile .profile-password-group{display:flex;flex-direction:column}.customer-profile .profile-password-group label{color:var(--text-dark);font-size:.95rem;font-weight:600;margin-bottom:8px}.customer-profile .profile-password-group .password-input-container{width:100%}.customer-profile .profile-password-group .password-input-container input{border:2px solid var(--border);border-radius:6px;font-size:1rem;padding:12px 16px;transition:all .3s ease;width:100%}.customer-profile .profile-password-group .password-input-container input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0077b61a;outline:none}@media (max-width:768px){.customer-profile{padding:0}.customer-profile .profile-section-header{align-items:flex-start;flex-direction:column;gap:15px;padding:20px}.customer-profile .profile-form,.customer-profile .profile-security-actions{padding:20px}.customer-profile .profile-form-actions{flex-direction:column}.customer-profile .profile-btn{justify-content:center;width:100%}.customer-profile .profile-checkbox-label{align-items:flex-start!important}}@media (max-width:480px){.customer-profile .profile-header h2{font-size:1.6rem}.customer-profile .profile-section-header h3{font-size:1.2rem}.customer-profile .profile-checkbox-text{gap:6px}.customer-profile .profile-checkbox-title{font-size:.95rem}.customer-profile .profile-checkbox-description{font-size:.85rem}}.dashboard-layout{background-color:var(--background-light);display:flex;min-height:100vh}.dashboard-sidebar{background-color:var(--background);border-right:1px solid var(--border);display:flex;flex-direction:column;height:calc(100vh - 64px);left:0;overflow-y:auto;position:fixed;top:64px;width:280px;z-index:100}.dashboard-sidebar .sidebar-nav{flex:1 1;min-height:0;overflow-y:auto;padding:24px 0}.dashboard-sidebar .nav-item{align-items:center;background:none;border:none;color:var(--text);cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:12px;padding:12px 24px;text-align:left;transition:all .2s ease;width:100%}.dashboard-sidebar .nav-item:hover{background-color:var(--background-light);color:var(--primary)}.dashboard-sidebar .nav-item.active{background-color:var(--primary-light);border-right:3px solid var(--primary);color:var(--primary)}.dashboard-sidebar .nav-item svg{fill:none;stroke:currentColor;stroke-width:2;flex-shrink:0;height:20px;width:20px}.dashboard-sidebar .appointment-dropdown{background-color:initial;border-left:none;border-radius:0;margin-bottom:0;margin-left:0;margin-right:0;max-height:0;opacity:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1)}.dashboard-sidebar .appointment-dropdown.show{max-height:200px;opacity:1;transition:max-height .4s cubic-bezier(.4,0,.2,1),opacity .3s ease .1s}.dashboard-sidebar .dropdown-item{align-items:center;background:none;border:none;color:var(--text);cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:10px;opacity:0;padding:12px 44px;text-align:left;transform:translateY(-10px);transition:all .2s ease;width:100%}.dashboard-sidebar .appointment-dropdown.show .dropdown-item:first-child{animation:slideDown .3s ease forwards;animation-delay:.1s}.dashboard-sidebar .appointment-dropdown.show .dropdown-item:nth-child(2){animation:slideDown .3s ease forwards;animation-delay:.2s}.dashboard-sidebar .appointment-dropdown.show .dropdown-item:nth-child(3){animation:slideDown .3s ease forwards;animation-delay:.3s}.dashboard-sidebar .appointment-dropdown:not(.show) .dropdown-item{animation:slideUp .2s ease forwards}@keyframes slideUp{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.dashboard-sidebar .dropdown-item:hover{background-color:var(--background-light);color:var(--primary);padding-left:48px}.dashboard-sidebar .dropdown-item.active{background-color:var(--primary-light);border-left:3px solid var(--primary);color:var(--primary);font-weight:600;padding-left:41px}.dashboard-sidebar .dropdown-item svg{fill:none;stroke:currentColor;stroke-width:2;flex-shrink:0;height:16px;width:16px}.dashboard-sidebar .sidebar-actions{background-color:var(--background);border-top:1px solid var(--border);flex-shrink:0;padding:24px}.dashboard-sidebar .primary-action-btn{align-items:center;background-color:var(--primary);border:none;border-radius:8px;color:var(--background);cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;justify-content:center;padding:14px 16px;transition:all .2s ease;width:100%}.dashboard-sidebar .primary-action-btn:hover{background-color:var(--primary-dark);transform:translateY(-1px)}.dashboard-sidebar .primary-action-btn svg{fill:none;stroke:currentColor;stroke-width:2;height:18px;width:18px}.dashboard-sidebar .sidebar-footer{border-top:1px solid var(--border);padding:24px}.dashboard-main{flex:1 1;margin-left:280px;padding:30px 40px}.dashboard-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:60vh}.dashboard-loading .loading-spinner{animation:dashboard-spin 1s ease-in-out infinite;border:4px solid #0077b633;border-radius:50%;border-top:4px solid var(--primary);height:40px;margin-bottom:20px;width:40px}@keyframes dashboard-spin{to{transform:rotate(1turn)}}.dashboard-main .alert{border-radius:8px;font-weight:500;margin-bottom:24px;padding:16px}.dashboard-main .alert-error{background-color:var(--error-light);border:1px solid var(--error);color:var(--error)}.dashboard-main .alert-success{background-color:var(--success-light);border:1px solid var(--success);color:var(--success)}.dashboard-main .appointments-section{background-color:var(--background);border-radius:12px;box-shadow:0 4px 20px var(--shadow);overflow:hidden}.dashboard-main .section-header{align-items:center;background-color:var(--background);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:24px 30px}.dashboard-main .section-header h3{color:var(--text-dark);font-size:1.4rem;font-weight:600;margin:0}.dashboard-main .appointment-count{background-color:var(--background-light);border-radius:20px;color:var(--text-light);font-size:.9rem;padding:4px 12px}.dashboard-main .empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 30px;text-align:center}.dashboard-main .empty-state svg{fill:currentColor;stroke:currentColor;color:var(--text-light);height:64px;margin-bottom:20px;width:64px}.dashboard-main .empty-state h4{color:var(--text-dark);font-size:1.3rem;font-weight:600;margin-bottom:8px}.dashboard-main .empty-state p{color:var(--text-light);font-size:1rem;margin-bottom:24px;max-width:400px}.dashboard-main .empty-state-btn{background-color:var(--primary);border:none;border-radius:8px;color:var(--background);cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .2s ease}.dashboard-main .empty-state-btn:hover{background-color:var(--primary-dark);transform:translateY(-1px)}.dashboard-main .appointments-table{display:flex;flex-direction:column}.dashboard-main .appointment-table-header{background-color:var(--background-light);color:var(--text-light);font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:16px 30px;text-transform:uppercase}.dashboard-main .appointment-row,.dashboard-main .appointment-table-header{grid-gap:20px;border-bottom:1px solid var(--border);display:grid;gap:20px;grid-template-columns:2fr 3fr 1fr 1fr}.dashboard-main .appointment-row{align-items:center;cursor:pointer;padding:20px 30px;transition:all .2s ease}.dashboard-main .appointment-row:hover{background-color:var(--background-light)}.dashboard-main .appointment-row:last-child{border-bottom:none}.dashboard-main .appointment-col-date .date-info{display:flex;flex-direction:column;gap:4px}.dashboard-main .date-info .date{color:var(--text-dark);font-size:1rem;font-weight:600}.dashboard-main .date-info .time{color:var(--primary);font-size:.9rem;font-weight:500}.dashboard-main .appointment-col-service .service-info{display:flex;flex-direction:column;gap:4px}.dashboard-main .service-info .service-type{color:var(--text-dark);font-size:1rem;font-weight:600}.dashboard-main .service-info .service-address{color:var(--text-light);font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-main .status-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:.8rem;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.dashboard-main .status-confirmed{background-color:var(--primary-light);color:var(--primary)}.dashboard-main .status-pending{background-color:var(--warning-light);color:var(--warning)}.dashboard-main .status-completed{background-color:var(--success-light);color:var(--success)}.dashboard-main .status-cancelled{background-color:var(--error-light);color:var(--error)}.dashboard-main .appointment-col-actions{align-items:center;display:flex;justify-content:space-between}.dashboard-main .action-buttons{display:flex;gap:8px}.dashboard-main .action-btn{align-items:center;background:#0000;border:none;border-radius:10px;cursor:pointer;display:inline-flex;height:48px;justify-content:center;margin:0;padding:0;transition:all .2s ease;width:48px}.dashboard-main .action-btn svg{fill:currentColor;stroke:currentColor;display:block;flex-shrink:0;height:22px;pointer-events:none;width:22px}.dashboard-main .action-btn.reschedule{background-color:var(--background-light);border:1px solid var(--border);color:var(--primary)}.dashboard-main .action-btn.reschedule:hover{background-color:var(--primary-light);border-color:var(--primary);color:var(--primary)}.dashboard-main .action-btn.reschedule svg{fill:none;stroke:currentColor;color:var(--primary)}.dashboard-main .action-btn.reschedule:hover svg{color:var(--primary)}.dashboard-main .action-btn.cancel{background-color:var(--background-light);border:1px solid var(--border);color:var(--error)}.dashboard-main .action-btn.cancel:hover{background-color:var(--error-light);border-color:var(--error);color:var(--error)}.dashboard-main .action-btn.cancel svg{fill:none;stroke:currentColor;color:var(--error)}.dashboard-main .action-btn.cancel:hover svg{color:var(--error)}.dashboard-main .view-details{color:var(--text-light);opacity:0;transition:opacity .2s ease}.dashboard-main .appointment-row:hover .view-details{opacity:1}.dashboard-main .view-details svg{fill:currentColor;stroke:currentColor;height:16px;width:16px}@media (max-width:1200px){.dashboard-sidebar{width:240px}.dashboard-main{margin-left:240px;padding:24px 30px}}@media (max-width:968px){.dashboard-sidebar{height:auto;position:relative;width:100%}.dashboard-main{margin-left:0;padding:20px}.dashboard-sidebar .sidebar-actions,.dashboard-sidebar .sidebar-footer,.dashboard-sidebar .sidebar-header{padding:20px}.dashboard-sidebar .appointment-dropdown{margin-left:0;margin-right:0}.dashboard-main .appointment-table-header{display:none}.dashboard-main .appointment-row{display:flex;flex-direction:column;gap:12px;padding:20px}.dashboard-main .appointment-col-actions{justify-content:flex-start}.dashboard-main .view-details{opacity:1}}@media (max-width:640px){.dashboard-main{padding:16px}.dashboard-main .section-header{align-items:flex-start;flex-direction:column;gap:8px;padding:20px}.dashboard-main .appointment-row{padding:16px}.dashboard-main .service-info .service-address{white-space:normal}}.photo-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;background-color:#000000e6;bottom:0;cursor:pointer;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:2000}.photo-modal-content{animation:scaleIn .2s ease-out;background-color:var(--background);border-radius:12px;box-shadow:0 20px 60px #000c;cursor:default;height:auto;max-height:95vh;max-width:95vw;overflow:hidden;position:relative;width:auto}.photo-modal-close{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#000000b3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:24px;font-weight:300;height:40px;justify-content:center;line-height:1;position:absolute;right:16px;top:16px;transition:all .2s ease;width:40px;z-index:10}.photo-modal-close:hover{background-color:#000000e6;transform:scale(1.1)}.photo-modal-image-container{align-items:center;background-color:var(--background-light);display:flex;justify-content:center;padding:20px}.photo-modal-image{border-radius:8px;box-shadow:0 8px 32px #0003;height:auto;max-height:calc(95vh - 40px);max-width:100%;object-fit:contain;width:auto}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media (max-width:768px){.photo-modal-overlay{padding:10px}.photo-modal-content{border-radius:8px;max-height:100%;max-width:100%}.photo-modal-close{font-size:20px;height:36px;right:12px;top:12px;width:36px}.photo-modal-image-container{padding:16px}.photo-modal-image{max-height:calc(100vh - 32px)}}@media (max-width:480px){.photo-modal-image-container{padding:12px}.photo-modal-image{max-height:calc(100vh - 24px)}}@media (prefers-reduced-motion:reduce){.photo-modal-content,.photo-modal-overlay{animation:none!important}}.appointment-detail-layout{background-color:var(--background-light);min-height:100vh}.appointment-detail-error,.appointment-detail-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:60vh;padding:40px;text-align:center}.appt-loading-spinner{animation:spin 1s ease-in-out infinite;border:4px solid #0077b633;border-radius:50%;border-top:4px solid var(--primary);height:40px;margin-bottom:20px;width:40px}.appt-back-btn{background-color:var(--primary);border:none;border-radius:8px;color:var(--background);cursor:pointer;font-weight:600;padding:12px 24px;transition:all .2s ease}.back-button{height:auto;line-height:1.6rem;margin:0;max-width:fit-content;padding:0;width:auto}.back-button:hover{margin:-8px -12px;padding:8px 12px}.appointment-title,.appointment-title h1{align-items:baseline;display:flex;gap:12px}.appointment-title h1{color:var(--text-dark);font-size:1.6rem;font-weight:700;line-height:1.6rem;margin:0;padding:0}.status-confirmed{background-color:var(--primary-light);color:var(--primary)}.status-pending{background-color:var(--warning-light);color:var(--warning)}.status-completed{background-color:var(--success-light);color:var(--success)}.status-cancelled{background-color:var(--error-light);color:var(--error)}.detail-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr}.detail-card{background-color:var(--background);border-radius:12px;box-shadow:0 4px 20px var(--shadow);display:flex;flex-direction:column;height:calc(100vh - 200px);max-height:calc(100vh - 200px);padding:20px}.detail-card h3{border-bottom:1px solid var(--border);color:var(--text-dark);flex-shrink:0;font-size:1.2rem;font-weight:600;margin:0 0 16px;padding-bottom:10px}.detail-card>:not(h3){flex:1 1;margin-right:-8px;min-height:0;overflow-x:hidden;overflow-y:auto;padding-right:8px}.detail-items{display:flex;flex-direction:column;gap:14px}.detail-item{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.detail-item .label{color:var(--text-light);flex-shrink:0;font-size:.9rem;font-weight:600;min-width:120px}.detail-item .value{color:var(--text-dark);flex:1 1;text-align:right;word-break:break-word}.detail-actions{display:flex;gap:12px;margin-top:10px}.action-link{align-items:center;background-color:var(--background-light);border:1px solid var(--border);border-radius:6px;color:var(--text-dark);cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:8px;padding:10px 12px;transition:all .2s ease}.action-link:hover{background-color:var(--primary-light);border-color:var(--primary);color:var(--primary)}.action-link.cancel{background-color:var(--error-light);border-color:var(--error);color:var(--error)}.action-link.cancel:hover{background-color:var(--error);color:var(--background)}.action-link svg{height:14px;width:14px}.empty-notes{align-items:center;color:var(--text-light);display:flex;flex-direction:column;justify-content:center;padding:40px 20px;text-align:center}.empty-notes svg{flex-shrink:0;height:48px;margin-bottom:16px;opacity:.6;width:48px}.empty-notes p{color:var(--text);font-size:1.1rem;font-weight:600;margin:0 0 8px}.empty-notes span{font-size:.9rem;max-width:300px;opacity:.8;word-break:break-word}.notes-timeline{display:flex;flex-direction:column;gap:20px;max-width:100%}.note-item{border-left:3px solid var(--primary-light);max-width:100%;padding-left:16px;position:relative}.note-item:before{background-color:var(--primary);border-radius:50%;content:"";height:10px;left:-6px;position:absolute;top:8px;width:10px}.note-header{flex-shrink:0;margin-bottom:6px}.note-date{color:var(--text-light);font-size:.8rem;font-weight:600;white-space:nowrap}.note-content{word-wrap:break-word;max-width:100%;overflow-wrap:break-word}.note-content p{color:var(--text-dark);line-height:1.5;margin:0;overflow-wrap:break-word;word-break:break-word}.note-photos{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));margin-top:14px;max-width:100%;overflow:hidden}.photo-item{display:flex;flex-direction:column;gap:6px;min-width:0}.service-photo{border-radius:6px;box-shadow:0 2px 8px var(--shadow);cursor:pointer;height:100px;object-fit:cover;transition:transform .2s ease;width:100%}.service-photo:hover{transform:scale(1.02)}.photo-caption{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;color:var(--text-light);display:-webkit-box;font-size:.8rem;margin:0;overflow:hidden;overflow-wrap:break-word;text-align:center;word-break:break-word}.detail-card>:not(h3)::-webkit-scrollbar{width:6px}.detail-card>:not(h3)::-webkit-scrollbar-track{background:var(--background-light);border-radius:3px}.detail-card>:not(h3)::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.detail-card>:not(h3)::-webkit-scrollbar-thumb:hover{background:var(--text-light)}@media (max-width:1200px){.detail-content{padding:16px 24px}.detail-grid{gap:20px}.detail-card{height:calc(100vh - 180px);max-height:calc(100vh - 180px)}}@media (max-width:968px){.detail-header{padding:14px 20px}.detail-content{padding:16px 20px}.detail-grid{gap:16px;grid-template-columns:1fr}.detail-card{height:auto;max-height:none;min-height:300px}.header-content{gap:12px}.appointment-title h1,.header-content{align-items:flex-start;flex-direction:column}.appointment-title h1{font-size:1.4rem;gap:8px}.detail-item{align-items:flex-start;flex-direction:column;gap:4px}.detail-item .label{min-width:auto}.detail-item .value{text-align:left}.detail-actions{flex-direction:column;width:100%}.action-link{justify-content:center;width:100%}.note-photos{gap:8px;grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.service-photo{height:80px}}@media (max-width:640px){.detail-content,.detail-header{padding:12px 16px}.detail-card{padding:16px}.appointment-title h1{font-size:1.3rem}.note-photos{grid-template-columns:1fr 1fr}.service-photo{height:70px}}.invoice-detail-layout{background-color:var(--background-light);min-height:100vh}.invoice-detail-error,.invoice-detail-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:60vh;padding:40px;text-align:center}.invoice-detail-loading .loading-spinner{animation:spin 1s ease-in-out infinite;border:4px solid #0077b633;border-radius:50%;border-top:4px solid var(--primary);height:40px;margin-bottom:20px;width:40px}.detail-header{background-color:var(--background);border-bottom:1px solid var(--border);padding:16px 30px}.invoice-title,.invoice-title h1{align-items:baseline;display:flex;gap:12px}.invoice-title h1{color:var(--text-dark);font-size:1.6rem;font-weight:700;margin:0}.status-badge{align-items:center;border-radius:16px;display:inline-flex;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.status-draft{background-color:#f3f4f6;color:#6b7280}.status-sent{background-color:var(--primary-light);color:var(--primary)}.status-paid{background-color:var(--success-light);color:var(--success)}.status-partial{background-color:var(--warning-light);color:var(--warning)}.status-overdue{background-color:var(--error-light);color:var(--error)}.status-cancelled{background-color:#f3f4f6;color:#6b7280}.alert{border-radius:8px;font-size:.9rem;font-weight:500;margin:12px 30px;padding:12px 16px}.alert-error{background-color:var(--error-light);border:1px solid var(--error);color:var(--error)}.alert-success{background-color:var(--success-light);border:1px solid var(--success);color:var(--success)}.detail-content{padding:20px 30px}.invoice-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:2fr 1fr;margin-bottom:30px}.amount-summary-card,.appointments-card,.invoice-info-card,.line-items-card{background-color:var(--background);border-radius:12px;box-shadow:0 4px 20px var(--shadow);padding:25px}.amount-summary-card h3,.appointments-card h3,.invoice-info-card h3,.line-items-card h3{border-bottom:1px solid var(--border);color:var(--text-dark);font-size:1.2rem;font-weight:600;margin:0 0 20px;padding-bottom:10px}.info-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.info-item{display:flex;flex-direction:column;gap:4px}.info-item.full-width{grid-column:1/-1}.info-item .label{color:var(--text-light);font-size:.9rem;font-weight:600}.info-item .value{color:var(--text-dark);font-weight:500}.amount-details{display:flex;flex-direction:column;gap:12px}.amount-row{align-items:center;display:flex;justify-content:space-between;padding:8px 0}.amount-row.total{border-top:2px solid var(--border);font-size:1.1rem;font-weight:700;margin-top:8px;padding-top:16px}.amount-row.paid{color:var(--success);font-weight:600}.amount-row.balance{border-top:1px solid var(--border);color:var(--primary);font-size:1.1rem;font-weight:700;margin-top:8px;padding-top:12px}.amount-row .label{color:var(--text-light)}.amount-row .value{font-weight:600}.amount-row .value,.amount-row.total .label,.amount-row.total .value{color:var(--text-dark)}.amount-row.balance .label,.amount-row.balance .value{color:var(--primary)}.payment-section{border-top:1px solid var(--border);margin-top:24px;padding-top:20px}.pay-invoice-btn{background-color:var(--primary);border:none;border-radius:8px;color:var(--background);cursor:pointer;font-size:1.1rem;font-weight:700;padding:16px 24px;transition:all .2s ease;width:100%}.pay-invoice-btn:hover{background-color:var(--primary-dark);box-shadow:0 4px 12px #0077b64d;transform:translateY(-1px)}.inline-payment-form{animation:slideDown .3s ease-out;background-color:var(--background-light);border:2px solid var(--primary);border-radius:12px;overflow:hidden;padding:0}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.payment-form-header{align-items:center;background-color:var(--primary);color:var(--background);display:flex;justify-content:space-between;padding:16px 20px}.payment-form-header h4{font-size:1.1rem;font-weight:600;margin:0}.cancel-payment-btn{background:none;border:none;border-radius:4px;color:var(--background);cursor:pointer;padding:4px;transition:background-color .2s ease}.cancel-payment-btn:hover{background-color:#fff3}.cancel-payment-btn svg{height:18px;width:18px}.payment-amount-display{align-items:center;background-color:var(--primary-light);color:var(--primary);display:flex;font-weight:600;justify-content:space-between;padding:16px 20px}.payment-amount-display .amount{font-size:1.2rem;font-weight:700}.inline-payment-form-body{display:flex;flex-direction:column;gap:20px;padding:20px}.card-element-container label{font-size:.95rem}.card-element-wrapper{background-color:var(--background);border:2px solid var(--border);border-radius:8px;padding:16px 12px;transition:border-color .2s ease}.card-element-wrapper:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #0077b61a}.payment-form-actions{display:flex;gap:12px;margin-top:8px}.cancel-btn{background-color:initial;border:2px solid var(--border);border-radius:8px;color:var(--text-light);cursor:pointer;flex:1 1;font-weight:600;padding:12px 20px;transition:all .2s ease}.cancel-btn:hover:not(:disabled){background-color:var(--background-light);border-color:var(--text-light)}.pay-now-btn{align-items:center;background-color:var(--primary);border:none;border-radius:8px;color:var(--background);cursor:pointer;display:flex;flex:2 1;font-weight:700;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s ease}.pay-now-btn:hover:not(:disabled){background-color:var(--primary-dark);transform:translateY(-1px)}.pay-now-btn:disabled{background-color:#b0c4de;cursor:not-allowed;transform:none}.pay-now-btn .spinner{animation:spin 1s ease-in-out infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.stripe-security{border-top:1px solid var(--border);margin-top:20px;padding-top:16px}.security-badges{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.powered-by-stripe{align-items:center;color:var(--text-light);display:flex;font-size:.85rem;gap:8px}.powered-by-stripe span{font-weight:500}.security-icons{align-items:center;color:var(--success);display:flex;font-size:.85rem;font-weight:600;gap:6px}.security-icons svg{height:16px;width:16px}.security-text{color:var(--text-light);font-size:.8rem;line-height:1.4;margin:0;text-align:center}.line-items-card{grid-column:1/-1}.line-items-table{display:flex;flex-direction:column}.invoice-detail-layout .invoice-table-header{grid-gap:20px;background-color:var(--background-light);border-radius:8px;color:var(--text-light);display:grid;font-size:.85rem;font-weight:600;gap:20px;grid-template-columns:3fr 1fr 1fr 1fr;letter-spacing:.5px;margin-bottom:8px;padding:12px 16px;text-transform:uppercase}.invoice-detail-layout .invoice-line-item-row{grid-gap:20px;align-items:center;border-bottom:1px solid var(--border);display:grid;gap:20px;grid-template-columns:3fr 1fr 1fr 1fr;padding:16px}.invoice-detail-layout .invoice-line-item-row:last-child{border-bottom:none}.invoice-detail-layout .invoice-col-description{color:var(--text-dark);font-weight:500}.invoice-detail-layout .invoice-col-price,.invoice-detail-layout .invoice-col-quantity,.invoice-detail-layout .invoice-col-total{color:var(--text-dark);font-weight:500;text-align:right}.appointments-card{grid-column:1/-1}.appointments-list{display:flex;flex-direction:column;gap:16px}.appointment-item{align-items:center;background-color:var(--background-light);border:1px solid var(--border);border-radius:8px;display:flex;justify-content:space-between;padding:16px}.appointment-info{display:flex;flex-direction:column;gap:4px}.appointment-info .service-type{color:var(--text-dark);font-size:1rem;font-weight:600}.appointment-info .appointment-date{color:var(--primary);font-size:.9rem;font-weight:500}.appointment-info .service-address{color:var(--text-light);font-size:.85rem}.view-appointment-btn{background-color:var(--primary);border:none;border-radius:6px;color:var(--background);cursor:pointer;flex-shrink:0;font-size:.85rem;font-weight:600;padding:8px 16px;transition:all .2s ease}.view-appointment-btn:hover{background-color:var(--primary-dark);transform:translateY(-1px)}@media (max-width:1200px){.detail-content{padding:16px 24px}.invoice-grid{gap:20px}}@media (max-width:968px){.detail-header{padding:14px 20px}.detail-content{padding:16px 20px}.invoice-grid{gap:16px;grid-template-columns:1fr}.header-content{gap:12px}.header-content,.invoice-title h1{align-items:flex-start;flex-direction:column}.invoice-title h1{font-size:1.4rem;gap:8px}.info-grid{grid-template-columns:1fr}.invoice-detail-layout .invoice-table-header{display:none}.invoice-detail-layout .invoice-line-item-row{align-items:flex-start;background-color:var(--background-light);border:1px solid var(--border);border-radius:8px;display:flex;flex-direction:column;gap:8px;margin-bottom:8px;padding:16px}.invoice-detail-layout .invoice-col-price,.invoice-detail-layout .invoice-col-quantity,.invoice-detail-layout .invoice-col-total{text-align:left}.appointment-item{align-items:flex-start;flex-direction:column;gap:12px}.view-appointment-btn{text-align:center;width:100%}.payment-form-actions{flex-direction:column}.cancel-btn,.pay-now-btn{flex:none}.security-badges{align-items:flex-start;flex-direction:column;gap:8px}}@media (max-width:640px){.detail-content,.detail-header{padding:12px 16px}.amount-summary-card,.appointments-card,.invoice-info-card,.line-items-card{padding:20px}.invoice-title h1{font-size:1.3rem}.inline-payment-form-body{padding:16px}.payment-amount-display,.payment-form-header{padding:12px 16px}}.invoice-payment-layout{background-color:var(--background-light);min-height:100vh}.payment-error-page,.payment-loading,.payment-success-page{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:60vh;padding:40px;text-align:center}.payment-loading .loading-spinner{animation:spin 1s ease-in-out infinite;border:4px solid #0077b633;border-radius:50%;border-top:4px solid var(--primary);height:40px;margin-bottom:20px;width:40px}.error-content,.success-content{background-color:var(--background);border-radius:12px;box-shadow:0 4px 20px var(--shadow);max-width:500px;padding:40px}.error-content h3{color:var(--error);margin-bottom:16px}.success-content h3{color:var(--success);margin-bottom:16px}.success-icon{color:var(--success);height:60px;margin:0 auto 20px;width:60px}.success-icon svg{height:100%;width:100%}.back-btn{background-color:var(--primary);border:none;border-radius:8px;color:var(--background);cursor:pointer;font-weight:600;margin-top:20px;padding:12px 24px;transition:all .2s ease}.back-btn:hover{background-color:var(--primary-dark);transform:translateY(-1px)}.payment-header{background-color:var(--background);border-bottom:1px solid var(--border);padding:16px 30px}.header-content{align-items:baseline;display:flex;gap:24px;justify-content:flex-start;margin:0 auto;max-width:800px}.back-button{align-items:center;background:none;border:none;border-radius:6px;color:var(--text-light);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:.95rem;gap:8px;padding:8px 12px;transition:all .2s ease;white-space:nowrap}.back-button:hover{background-color:var(--background-light);color:var(--primary)}.back-button svg{flex-shrink:0;height:18px;width:18px}.payment-title h1{color:var(--text-dark);font-size:1.6rem;font-weight:700;margin:0}.payment-content{display:flex;justify-content:center;padding:40px 20px}.payment-form-container{background-color:var(--background);border-radius:12px;box-shadow:0 4px 20px var(--shadow);max-width:500px;padding:40px;width:100%}.payment-summary{border-bottom:1px solid var(--border);margin-bottom:30px;padding-bottom:20px}.payment-summary h3{color:var(--text-dark);font-size:1.2rem;font-weight:600;margin:0 0 16px}.summary-item{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.summary-item:last-child{color:var(--primary);font-size:1.1rem;font-weight:700;margin-bottom:0}.summary-item span:first-child{color:var(--text-light)}.summary-item span:last-child{color:var(--text-dark);font-weight:600}.summary-item .amount{color:var(--primary);font-size:1.2rem;font-weight:700}.payment-form{display:flex;flex-direction:column;gap:24px}.card-element-container{display:flex;flex-direction:column;gap:8px}.card-element-container label{color:var(--text-dark);font-size:1rem;font-weight:600}.card-element-container .StripeElement{background-color:var(--background);border:2px solid var(--border);border-radius:8px;padding:16px 12px;transition:border-color .2s ease}.card-element-container .StripeElement:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #0077b61a}.card-element-container .StripeElement--invalid{border-color:var(--error)}.payment-error{background-color:var(--error-light);border:1px solid var(--error);border-radius:8px;color:var(--error);font-size:.9rem;font-weight:500;padding:12px 16px}.pay-button{align-items:center;background-color:var(--primary);border:none;border-radius:8px;color:var(--background);cursor:pointer;display:flex;font-size:1.1rem;font-weight:700;gap:8px;justify-content:center;padding:16px 24px;transition:all .2s ease}.pay-button:hover:not(:disabled){background-color:var(--primary-dark);box-shadow:0 4px 12px #0077b64d;transform:translateY(-1px)}.pay-button:disabled{background-color:#b0c4de;box-shadow:none;cursor:not-allowed;transform:none}.pay-button .spinner{animation:spin 1s ease-in-out infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:18px;width:18px}.security-notice{align-items:center;color:var(--text-light);display:flex;font-size:.85rem;gap:8px;justify-content:center;text-align:center}.security-notice svg{flex-shrink:0;height:16px;width:16px}@media (max-width:968px){.payment-header{padding:14px 20px}.header-content{align-items:flex-start;flex-direction:column;gap:12px}.payment-title h1{font-size:1.4rem}.payment-content{padding:20px 16px}.payment-form-container{padding:30px 20px}}@media (max-width:640px){.payment-header{padding:12px 16px}.payment-content{padding:16px 12px}.payment-form-container{padding:24px 16px}.payment-title h1{font-size:1.3rem}.summary-item{font-size:.95rem}.summary-item .amount{font-size:1.1rem}}.legal-page{background-color:var(--background-light);min-height:100vh;padding:40px 20px}.legal-page .legal-container{background:var(--background);border-radius:12px;box-shadow:0 10px 30px var(--shadow);margin:0 auto;max-width:800px;overflow:hidden}.legal-page .legal-header{background-color:var(--primary);color:var(--background);padding:40px 30px;text-align:center}.legal-page .legal-header h1{font-size:2.5rem;font-weight:700;margin:0 0 8px}.legal-page .legal-subtitle{font-size:1.2rem;font-weight:500;margin:0 0 16px;opacity:.9}.legal-page .last-updated{font-size:.9rem;font-style:italic;margin:0;opacity:.8}.legal-page .legal-content{color:var(--text-dark);line-height:1.7;padding:40px 30px}.legal-page .legal-section{margin-bottom:32px}.legal-page .legal-section:last-child{margin-bottom:0}.legal-page .legal-section h2{border-bottom:2px solid var(--border-light);color:var(--primary);font-size:1.5rem;font-weight:700;margin:0 0 16px;padding-bottom:8px}.legal-page .legal-section h3{color:var(--text-dark);font-size:1.2rem;font-weight:600;margin:24px 0 12px}.legal-page .legal-section p{font-size:1rem;margin:0 0 16px}.legal-page .legal-section ul{margin:0 0 16px;padding-left:24px}.legal-page .legal-section li{font-size:1rem;margin-bottom:8px}.legal-page .legal-section li:last-child{margin-bottom:0}.legal-page .contact-info{background-color:var(--background-light);border-left:4px solid var(--primary);border-radius:8px;padding:20px}.legal-page .contact-info p{margin:0 0 8px}.legal-page .contact-info p:last-child{margin-bottom:0}.legal-page .legal-acknowledgment{background-color:var(--primary-light);border:1px solid var(--primary);border-radius:8px;margin-top:32px;padding:20px;text-align:center}.legal-page .legal-acknowledgment p{color:var(--primary);font-size:1.1rem;font-weight:500;margin:0}.legal-page .legal-content a{color:var(--primary);font-weight:500;text-decoration:none}.legal-page .legal-content a:hover{text-decoration:underline}.legal-page .contact-info a{color:var(--primary);font-weight:500;text-decoration:none}.legal-page .contact-info a:hover{text-decoration:underline}@media (max-width:968px){.legal-page{padding:20px 10px}.legal-page .legal-container{max-width:100%}.legal-page .legal-header{padding:30px 20px}.legal-page .legal-header h1{font-size:2rem}.legal-page .legal-content{padding:30px 20px}.legal-page .legal-section h2{font-size:1.3rem}.legal-page .legal-section h3{font-size:1.1rem}}@media (max-width:640px){.legal-page .legal-header{padding:24px 16px}.legal-page .legal-header h1{font-size:1.8rem}.legal-page .legal-content{padding:24px 16px}.legal-page .legal-section ul{padding-left:20px}.legal-page .contact-info,.legal-page .legal-acknowledgment{padding:16px}}.blog-page{background-color:#f8f9fa;min-height:calc(100vh - 64px);padding:60px 0}.blog-container{margin:0 auto;max-width:1200px;padding:0 20px}.blog-header{animation:fadeInUp .8s ease forwards;margin-bottom:60px;opacity:0}.blog-header h1{color:var(--text-dark);font-size:2.5rem;font-weight:700;margin-bottom:20px;text-align:left}.header-divider{background-color:var(--primary);border:none;height:4px;margin:0;width:200px}.blog-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:60px}.blog-card{animation:fadeInUp .8s ease forwards;animation-delay:calc(var(--index)*.1s);background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;opacity:0;overflow:hidden;transition:all .3s ease}.blog-card:hover{box-shadow:0 12px 40px #00000026;transform:translateY(-8px)}.blog-card-link{color:inherit;display:block;text-decoration:none}.blog-card-image{height:200px;overflow:hidden}.blog-card-image img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.blog-card:hover .blog-card-image img{transform:scale(1.05)}.blog-card-content{padding:24px}.blog-card-title{color:var(--text-dark);font-size:1.3rem;font-weight:600;line-height:1.4;margin:0;transition:color .3s ease}.blog-card:hover .blog-card-title{color:var(--primary)}.empty-state{color:var(--text-muted);padding:80px 20px;text-align:center}.empty-state h3{color:var(--text-dark);font-size:1.5rem;margin-bottom:8px}@media screen and (max-width:768px){.blog-page{padding:40px 0}.blog-container{padding:0 16px}.blog-header{margin-bottom:40px}.blog-header h1{font-size:2rem}.header-divider{height:3px;width:150px}.blog-grid{gap:20px;grid-template-columns:1fr;margin-bottom:40px}}@media screen and (max-width:480px){.blog-header h1{font-size:1.8rem}.header-divider{width:120px}.blog-card-content{padding:20px}.blog-card-title{font-size:1.2rem}}.blog-post-page{background-color:#fff;min-height:calc(100vh - 64px)}.blog-post-container{margin:0 auto;max-width:800px;padding:40px 20px 60px}.breadcrumbs{align-items:center;animation:fadeInUp .6s ease forwards;display:flex;font-size:.9rem;gap:8px;margin-bottom:40px;opacity:0}.breadcrumbs a{color:var(--primary);text-decoration:none;transition:color .3s ease}.breadcrumbs a:hover{color:var(--primary-dark)}.breadcrumbs span:not(.current){color:var(--text-muted)}.breadcrumbs .current{color:var(--text-dark);font-weight:500}.blog-post-header{animation:fadeInUp .8s ease forwards;animation-delay:.2s;margin-bottom:40px;opacity:0}.post-category{background:var(--primary);border-radius:20px;color:#fff;display:inline-block;font-size:.85rem;font-weight:600;margin-bottom:20px;padding:8px 16px}.post-title{color:var(--text-dark);font-size:2.5rem;font-weight:700;line-height:1.2;margin-bottom:24px}.post-meta{align-items:center;border-bottom:1px solid #e5e7eb;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-start;padding:20px 0}.post-details{color:var(--text-muted);font-size:.9rem}.post-date{display:inline;margin-right:16px}.post-read-time{display:inline;font-weight:500}.post-image{animation:fadeInUp .8s ease forwards;animation-delay:.4s;border-radius:12px;margin-bottom:40px;opacity:0;overflow:hidden}.post-image img{height:400px;object-fit:cover;width:100%}.post-content{animation:fadeInUp .8s ease forwards;animation-delay:.6s;opacity:0}.post-body{color:var(--text-dark);line-height:1.8}.post-body h2{font-size:1.8rem;margin:40px 0 20px}.post-body h2,.post-body h3{color:var(--text-dark);font-weight:600}.post-body h3{font-size:1.4rem;margin:32px 0 16px}.post-body p{font-size:1.1rem;margin-bottom:20px}.post-body ol,.post-body ul{margin:20px 0;padding-left:24px}.post-body li{font-size:1.1rem;margin-bottom:8px}.post-body blockquote{background:#f8f9fa;border-left:4px solid var(--primary);color:var(--text-muted);font-style:italic;margin:30px 0;padding:20px 24px}.post-body img{border-radius:8px;height:auto;margin:20px 0;max-width:100%}.back-to-blog{margin-top:50px;text-align:center}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-weight:600;gap:8px;padding:12px 24px;text-decoration:none;transition:all .3s ease}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark);transform:translateY(-2px)}.btn-secondary{background:#0000;border:2px solid var(--primary);color:var(--primary)}.btn-secondary:hover{background:var(--primary);color:#fff}.btn svg{height:16px;width:16px}.not-found{padding:80px 20px;text-align:center}.not-found h1{color:var(--text-dark);font-size:2rem;margin-bottom:16px}.not-found p{color:var(--text-muted);font-size:1.1rem;margin-bottom:30px}.loading-container{padding:80px 20px}.loading-spinner{border-top-color:#0077b6}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media screen and (max-width:768px){.blog-post-container{padding:30px 16px 50px}.post-title{font-size:2rem}.post-meta{align-items:flex-start;flex-direction:column;gap:16px}.post-details{text-align:left}.post-image img{height:250px}.post-body h2{font-size:1.5rem}.post-body h3{font-size:1.3rem}}@media screen and (max-width:480px){.breadcrumbs{font-size:.8rem}.post-title{font-size:1.7rem}.post-body li,.post-body p{font-size:1rem}}:root{--primary:#006da8;--primary-dark:#00537e;--primary-light:#d0e8f5;--secondary:#d8dce3;--success:#24692a;--success-light:#c9ddcc;--error:#a62121;--error-light:#e6c9c9;--warning:#d66a00;--warning-light:#e6d2bc;--text-dark:#1a1a1a;--text:#333;--text-light:#4d4d4d;--border:#b3b3b3;--border-light:#ccc;--background:#eee;--background-light:#d0d4db;--background-grey:#b8bdc7;--shadow:#0003;--shadow-dark:#00000059;overflow-x:hidden}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:#b8bdc7;background-color:var(--background-grey);color:#1a1a1a;color:var(--text-dark);font-family:Arial,sans-serif;line-height:1.6}h1,h2,h3,h4,h5,h6,p{margin-bottom:1rem}a{color:inherit;text-decoration:none}button{border:none;border-radius:4px;cursor:pointer;font-size:1rem;padding:10px 20px;transition:background-color .3s ease,color .3s ease,transform .2s ease}section{padding:60px 20px;width:100%}.site-wrapper{background-color:#b8bdc7;background-color:var(--background-grey);min-height:100vh}.App{background-color:#eee;background-color:var(--background);min-height:100vh}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:60vh}.loading-spinner{animation:spin 1s ease-in-out infinite;border:4px solid #0077b633;border-radius:50%;border-top:4px solid var(--primary);height:40px;margin-bottom:20px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.94d485e3.css.map*/