:root{--text: #6b6375;--text-h: #08060d;--bg: #fff;--border: #e5e4e7;--code-bg: #f4f3ec;--accent: #aa3bff;--accent-bg: rgba(170, 59, 255, .1);--accent-border: rgba(170, 59, 255, .5);--social-bg: rgba(244, 243, 236, .5);--shadow: rgba(0, 0, 0, .1) 0 10px 15px -3px, rgba(0, 0, 0, .05) 0 4px 6px -2px;--color-primary: #2c3e50;--color-primary-light: #34495e;--color-primary-dark: #1a252f;--color-accent: #e74c3c;--color-accent-light: #ec7063;--color-accent-dark: #c0392b;--color-text: #2c3e50;--color-text-light: #7f8c8d;--color-text-lighter: #95a5a6;--color-background: #ffffff;--color-background-light: #f8f9fa;--color-border: #e0e0e0;--color-success: #27ae60;--color-error: #e74c3c;--color-warning: #f39c12;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 2rem;--spacing-xl: 4rem;--spacing-2xl: 6rem;--spacing-3xl: 8rem;--sans: system-ui, "Segoe UI", Roboto, sans-serif;--heading: system-ui, "Segoe UI", Roboto, sans-serif;--mono: ui-monospace, Consolas, monospace;--font-size-xs: clamp(.75rem, .7rem + .25vw, .875rem);--font-size-sm: clamp(.875rem, .8rem + .375vw, 1rem);--font-size-base: clamp(1rem, .9rem + .5vw, 1.125rem);--font-size-lg: clamp(1.125rem, 1rem + .625vw, 1.25rem);--font-size-xl: clamp(1.25rem, 1.1rem + .75vw, 1.5rem);--font-size-2xl: clamp(1.5rem, 1.3rem + 1vw, 2rem);--font-size-3xl: clamp(2rem, 1.7rem + 1.5vw, 3rem);--font-size-4xl: clamp(2.5rem, 2rem + 2.5vw, 4rem);--line-height-tight: 1.2;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--duration-fast: .2s;--duration-normal: .3s;--duration-slow: .6s;--easing-ease-in: cubic-bezier(.4, 0, 1, 1);--easing-ease-out: cubic-bezier(0, 0, .2, 1);--easing-ease-in-out: cubic-bezier(.4, 0, .2, 1);--breakpoint-mobile: 768px;--breakpoint-tablet: 1024px;--breakpoint-desktop: 1440px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: 1rem;--radius-full: 9999px;--z-base: 0;--z-dropdown: 1000;--z-sticky: 1100;--z-fixed: 1200;--z-modal-backdrop: 1300;--z-modal: 1400;--z-popover: 1500;--z-tooltip: 1600;font:18px/145% var(--sans);letter-spacing:.18px;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media(max-width:1024px){:root{font-size:16px}}@media(prefers-color-scheme:dark){:root{--text: #9ca3af;--text-h: #f3f4f6;--bg: #16171d;--border: #2e303a;--code-bg: #1f2028;--accent: #c084fc;--accent-bg: rgba(192, 132, 252, .15);--accent-border: rgba(192, 132, 252, .5);--social-bg: rgba(47, 48, 58, .5);--shadow: rgba(0, 0, 0, .4) 0 10px 15px -3px, rgba(0, 0, 0, .25) 0 4px 6px -2px;--color-primary: #3498db;--color-primary-light: #5dade2;--color-primary-dark: #2980b9;--color-accent: #e74c3c;--color-accent-light: #ec7063;--color-accent-dark: #c0392b;--color-text: #ecf0f1;--color-text-light: #bdc3c7;--color-text-lighter: #95a5a6;--color-background: #1a1a1a;--color-background-light: #2c2c2c;--color-border: #3a3a3a;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4), 0 2px 4px -1px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .4), 0 4px 6px -2px rgba(0, 0, 0, .3);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .4), 0 10px 10px -5px rgba(0, 0, 0, .3)}#social .button-icon{filter:invert(1) brightness(2)}}#root{width:1126px;max-width:100%;margin:0 auto;text-align:center;border-inline:1px solid var(--border);min-height:100svh;display:flex;flex-direction:column;box-sizing:border-box}body{margin:0}h1,h2{font-family:var(--heading);font-weight:500;color:var(--text-h)}h1{font-size:56px;letter-spacing:-1.68px;margin:32px 0}@media(max-width:1024px){h1{font-size:36px;margin:20px 0}}h2{font-size:24px;line-height:118%;letter-spacing:-.24px;margin:0 0 8px}@media(max-width:1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);display:inline-flex;border-radius:4px;color:var(--text-h)}code{font-size:15px;line-height:135%;padding:4px 8px;background:var(--code-bg)}.footer-modern{background:linear-gradient(135deg,var(--primary-dark) 0%,#0f1419 100%);color:#fff;margin-top:0;width:100%;position:relative;overflow:hidden}.footer-modern:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(231,76,60,.5),transparent)}.footer-content-modern{max-width:none;margin:0 auto;padding:4rem max(2rem,calc((100vw - 1400px)/2));display:grid;grid-template-columns:repeat(4,1fr);gap:3rem}.footer-column{display:flex;flex-direction:column;gap:1rem}.footer-column h3{font-size:1.8rem;font-weight:700;margin-bottom:.5rem;color:#fff;letter-spacing:.05em}.footer-column h4{font-size:1.2rem;font-weight:600;margin-bottom:1rem;color:#fff;position:relative;padding-bottom:.5rem}.footer-column h4:after{content:"";position:absolute;bottom:0;left:0;width:40px;height:2px;background:var(--accent)}.footer-tagline{font-size:1rem;color:var(--accent-light);margin:0;font-weight:300;letter-spacing:.1em;text-transform:uppercase}.footer-description{color:#ffffffb3;line-height:1.6;font-size:.95rem;margin:.5rem 0 1rem}.footer-social{display:flex;gap:1rem;margin-top:.5rem}.social-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:#ffffff1a;border-radius:50%;color:#fff;transition:all .3s ease;text-decoration:none}.social-icon:hover{background:var(--accent);transform:translateY(-3px);box-shadow:0 4px 12px #e74c3c66}.social-icon svg{width:20px;height:20px}.footer-contact-item{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.75rem}.footer-icon{font-size:1.2rem;flex-shrink:0;margin-top:.1rem}.footer-contact-item p{margin:0;color:#fffc;font-size:.95rem;line-height:1.5}.footer-contact-item a{color:#fffc;text-decoration:none;transition:color .3s ease;font-size:.95rem}.footer-contact-item a:hover{color:var(--accent-light)}.footer-hours{display:flex;flex-direction:column;gap:.5rem}.footer-hour-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:.9rem}.footer-hour-row:last-child{border-bottom:none}.footer-hour-row .day{font-weight:500;color:#ffffffe6}.footer-hour-row .time{color:#ffffffb3}.footer-map{display:flex;flex-direction:column;gap:1rem}.map-link{text-decoration:none;color:inherit;display:block}.map-placeholder{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:2rem 1rem;text-align:center;transition:all .3s ease;cursor:pointer}.map-placeholder:hover{background:#ffffff1a;border-color:var(--accent);transform:translateY(-2px)}.map-icon{font-size:2rem;display:block;margin-bottom:.5rem}.map-placeholder p{margin:0;color:#fffc;font-size:.9rem;font-weight:500}.footer-transport{background:#ffffff0d;padding:1rem;border-radius:6px;border-left:3px solid var(--accent)}.footer-transport p{margin:.25rem 0;color:#ffffffb3;font-size:.85rem;line-height:1.5}.footer-transport strong{color:var(--accent-light);font-weight:600}.footer-bottom-modern{border-top:1px solid rgba(255,255,255,.1);padding:2rem max(2rem,calc((100vw - 1400px)/2));background:#0003}.footer-bottom-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.footer-bottom-content p{margin:0;color:#fff9;font-size:.85rem}.footer-legal{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.footer-link{color:#fff9;text-decoration:none;font-size:.85rem;transition:color .3s ease;background:none;border:none;cursor:pointer;padding:0;font-family:inherit}.footer-link:hover{color:var(--accent-light)}.separator{color:#ffffff4d;font-size:.85rem}@media(max-width:1024px){.footer-content-modern{grid-template-columns:repeat(2,1fr);gap:2.5rem;padding:3rem 2rem}}@media(max-width:768px){.footer-content-modern{grid-template-columns:1fr;gap:2rem;padding:2rem 1.5rem}.footer-column h3{font-size:1.5rem}.footer-column h4{font-size:1.1rem}.footer-bottom-content{flex-direction:column;text-align:center;gap:1rem}.footer-legal{justify-content:center}.footer-bottom-modern{padding:1.5rem}.social-icon{width:48px;height:48px}.social-icon svg{width:22px;height:22px}}@media(max-width:480px){.footer-content-modern{padding:1.5rem 1rem}.footer-column h3{font-size:1.3rem}.footer-description{font-size:.9rem}.footer-hour-row{font-size:.85rem}.map-placeholder{padding:1.5rem 1rem}}.responsive-container{width:100%;margin-left:auto;margin-right:auto;box-sizing:border-box}.responsive-container--sm{max-width:640px}.responsive-container--md{max-width:768px}.responsive-container--lg{max-width:1024px}.responsive-container--xl{max-width:1280px}.responsive-container--full{max-width:100%}.responsive-container--padded{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}@media(min-width:768px){.responsive-container--padded{padding-left:calc(var(--spacing-md) * 1.5);padding-right:calc(var(--spacing-md) * 1.5)}}@media(min-width:1024px){.responsive-container--padded{padding-left:var(--spacing-lg);padding-right:var(--spacing-lg)}}@media(min-width:1440px){.responsive-container--padded{padding-left:calc(var(--spacing-lg) * 1.5);padding-right:calc(var(--spacing-lg) * 1.5)}}.fade-in-on-scroll{opacity:0;transition-property:opacity,transform;transition-duration:var(--duration-slow);transition-timing-function:var(--easing-ease-out);will-change:opacity,transform}.fade-in-on-scroll--up{transform:translateY(30px)}.fade-in-on-scroll--down{transform:translateY(-30px)}.fade-in-on-scroll--left{transform:translate(30px)}.fade-in-on-scroll--right{transform:translate(-30px)}.fade-in-on-scroll--visible{opacity:1;transform:translate(0)}.fade-in-on-scroll--no-motion{opacity:1;transform:none;transition:none}.fade-in-on-scroll--no-motion.fade-in-on-scroll--visible{opacity:1;transform:none}.service-card-modern{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px #0000001a;transition:all .3s ease;cursor:pointer;display:flex;flex-direction:column;height:100%}.service-card-modern:hover{transform:translateY(-8px);box-shadow:0 12px 24px #00000026}.service-card-image{width:100%;height:200px;overflow:hidden;position:relative}.service-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.service-card-modern:hover .service-card-image img{transform:scale(1.1)}.service-card-icon{font-size:3rem;text-align:center;padding:2rem 0 1rem;color:var(--accent)}.service-card-icon span{display:inline-block;transition:transform .3s ease}.service-card-modern:hover .service-card-icon span{transform:scale(1.1)}.service-card-content{padding:1.5rem 2rem 2rem;flex:1;display:flex;flex-direction:column}.service-card-title{font-size:1.5rem;color:var(--primary);margin-bottom:1rem;font-weight:600}.service-card-description{color:var(--text-light);line-height:1.6;margin-bottom:1.5rem;flex:1}.service-card-details{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:auto;padding-top:1rem;border-top:1px solid var(--border)}.service-card-duration{display:inline-flex;align-items:center;gap:.5rem;background:var(--bg-light);padding:.5rem 1rem;border-radius:20px;font-size:.9rem;color:var(--text-light);font-weight:500}.service-card-price{background:var(--accent);color:#fff;padding:.5rem 1.25rem;border-radius:20px;font-weight:600;font-size:1.1rem}@media(max-width:768px){.service-card-image{height:180px}.service-card-icon{font-size:2.5rem;padding:1.5rem 0 .75rem}.service-card-content{padding:1rem 1.5rem 1.5rem}.service-card-title{font-size:1.3rem}.service-card-details{flex-direction:column;align-items:stretch}.service-card-duration,.service-card-price{text-align:center;justify-content:center}}.service-grid-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;width:100%}@media(max-width:768px){.service-grid-container{grid-template-columns:1fr;gap:1.5rem}}@media(min-width:769px)and (max-width:1024px){.service-grid-container{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.75rem}}@media(min-width:1025px){.service-grid-container{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem}}.gallery{width:100%;padding:var(--spacing-md, 1rem)}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md, 1rem)}@media(min-width:768px){.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-lg, 2rem)}}.gallery-masonry{column-count:1;column-gap:var(--spacing-md, 1rem)}@media(min-width:768px){.gallery-masonry{column-count:2}}@media(min-width:1024px){.gallery-masonry{column-count:3}}.gallery-item{position:relative;overflow:hidden;border-radius:8px;background-color:var(--background-light, #f5f5f5);cursor:pointer;opacity:0;transform:translateY(20px);transition:opacity .3s ease,transform .3s ease;break-inside:avoid;margin-bottom:var(--spacing-md, 1rem)}.gallery-item.loaded{opacity:1;transform:translateY(0)}.gallery-item.no-motion{transition:none;opacity:1;transform:none}.gallery-item:focus{outline:2px solid var(--color-primary, #2c3e50);outline-offset:2px}.gallery-item:focus:not(:focus-visible){outline:none}.gallery-image{width:100%;height:auto;display:block;transition:transform .3s ease}.gallery-item:hover .gallery-image{transform:scale(1.05)}.gallery-item.no-motion:hover .gallery-image{transform:none}.gallery-overlay{position:absolute;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;pointer-events:none}.gallery-item:hover .gallery-overlay{opacity:1}.gallery-item.no-motion .gallery-overlay{transition:none}.gallery-overlay-icon{font-size:3rem;color:#fff;transform:scale(.8);transition:transform .3s ease}.gallery-item:hover .gallery-overlay-icon{transform:scale(1)}.gallery-item.no-motion .gallery-overlay-icon{transform:none}.gallery-caption{position:absolute;bottom:0;left:0;right:0;padding:var(--spacing-sm, .5rem) var(--spacing-md, 1rem);background:linear-gradient(to top,rgba(0,0,0,.8),transparent);color:#fff;font-size:.875rem;opacity:0;transform:translateY(10px);transition:opacity .3s ease,transform .3s ease}.gallery-item:hover .gallery-caption{opacity:1;transform:translateY(0)}.gallery-item.no-motion .gallery-caption{opacity:1;transform:none;transition:none}.gallery-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-lg, 2rem);min-height:200px;background-color:var(--background-light, #f5f5f5);color:var(--text-light, #666)}.gallery-error-icon{font-size:2rem;margin-bottom:var(--spacing-sm, .5rem)}.gallery-error-text{font-size:.875rem}.lightbox{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;animation:lightboxFadeIn .3s ease;overflow:hidden}.lightbox.no-motion{animation:none}@keyframes lightboxFadeIn{0%{opacity:0}to{opacity:1}}.lightbox-backdrop{position:absolute;inset:0;background-color:#000000f2;z-index:-1}.lightbox-close{position:absolute;top:var(--spacing-md, 1rem);right:var(--spacing-md, 1rem);width:44px;height:44px;background-color:#ffffff1a;border:none;border-radius:50%;color:#fff;font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease,transform .2s ease;z-index:10}.lightbox-close:hover{background-color:#fff3;transform:scale(1.1)}.lightbox-close:focus{outline:2px solid white;outline-offset:2px}.lightbox.no-motion .lightbox-close:hover{transform:none}.lightbox-content{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl, 4rem) var(--spacing-md, 1rem)}@media(min-width:768px){.lightbox-content{padding:var(--spacing-xl, 4rem)}}.lightbox-image-container{position:relative;max-width:90%;max-height:90%;display:flex;flex-direction:column;align-items:center;animation:lightboxImageZoom .3s ease}.lightbox.no-motion .lightbox-image-container{animation:none}@keyframes lightboxImageZoom{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.lightbox-image{max-width:100%;max-height:80vh;width:auto;height:auto;object-fit:contain;border-radius:4px;box-shadow:0 10px 40px #00000080}.lightbox-caption{margin-top:var(--spacing-md, 1rem);padding:var(--spacing-sm, .5rem) var(--spacing-md, 1rem);background-color:#000000b3;color:#fff;border-radius:4px;font-size:.875rem;text-align:center;max-width:600px}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;background-color:#ffffff1a;border:none;border-radius:50%;color:#fff;font-size:2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease,transform .2s ease;z-index:10}.lightbox-nav:hover{background-color:#fff3;transform:translateY(-50%) scale(1.1)}.lightbox-nav:focus{outline:2px solid white;outline-offset:2px}.lightbox.no-motion .lightbox-nav:hover{transform:translateY(-50%)}.lightbox-nav-prev{left:var(--spacing-md, 1rem)}.lightbox-nav-next{right:var(--spacing-md, 1rem)}@media(min-width:768px){.lightbox-nav{width:60px;height:60px;font-size:3rem}.lightbox-nav-prev{left:var(--spacing-lg, 2rem)}.lightbox-nav-next{right:var(--spacing-lg, 2rem)}}.lightbox-counter{position:absolute;bottom:var(--spacing-md, 1rem);left:50%;transform:translate(-50%);padding:var(--spacing-sm, .5rem) var(--spacing-md, 1rem);background-color:#000000b3;color:#fff;border-radius:20px;font-size:.875rem;z-index:10}@media(max-width:767px){.lightbox-nav{width:40px;height:40px;font-size:1.5rem}.lightbox-close{width:40px;height:40px;font-size:1.25rem}.lightbox-image{max-height:70vh}}.testimonial-card{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:0 8px 32px #0000001a;transition:all var(--duration-normal) var(--easing-ease-out);display:flex;flex-direction:column;gap:var(--spacing-md);min-height:280px;box-sizing:border-box;max-width:100%;overflow:hidden;width:100%}.testimonial-card:hover{transform:translateY(-4px);box-shadow:0 12px 48px #0003;background:#ffffff26}.testimonial-card-header{display:flex;align-items:center;gap:var(--spacing-md)}.testimonial-card-avatar{width:60px;height:60px;border-radius:var(--radius-full);object-fit:cover;border:3px solid var(--color-accent)}.testimonial-card-avatar-placeholder{width:60px;height:60px;border-radius:var(--radius-full);background:var(--color-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-2xl);font-weight:600;border:3px solid var(--color-accent)}.testimonial-card-info{flex:1;text-align:left}.testimonial-card-name{font-size:var(--font-size-lg);font-weight:600;color:#fff;margin:0 0 var(--spacing-xs) 0}.testimonial-card-role{font-size:var(--font-size-sm);color:#fffc;margin:0}.testimonial-card-rating{display:flex;gap:var(--spacing-xs);font-size:var(--font-size-xl)}.testimonial-card-star{color:#ffffff4d;transition:color var(--duration-fast) var(--easing-ease-out)}.testimonial-card-star.filled{color:#fbbf24}.testimonial-card-text{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:#fffffff2;margin:0;text-align:left;font-style:italic;position:relative;padding-left:var(--spacing-md);word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;max-width:100%}.testimonial-card-text:before{content:'"';position:absolute;left:0;top:-8px;font-size:var(--font-size-3xl);color:#ffffff4d;font-style:normal;line-height:1}@media(max-width:768px){.testimonial-card{padding:var(--spacing-md)}.testimonial-card-avatar,.testimonial-card-avatar-placeholder{width:50px;height:50px;font-size:var(--font-size-xl)}.testimonial-card-name{font-size:var(--font-size-base)}.testimonial-card-role{font-size:var(--font-size-xs)}.testimonial-card-rating{font-size:var(--font-size-lg)}.testimonial-card-text{font-size:var(--font-size-sm)}}.testimonial-carousel{position:relative;width:100%;max-width:800px;margin:0 auto;padding:var(--spacing-lg) var(--spacing-xl);box-sizing:border-box}.testimonial-carousel-container{overflow:hidden;border-radius:var(--radius-lg);width:100%;position:relative;min-height:300px}.testimonial-carousel-track{display:flex;transition:transform var(--duration-slow) var(--easing-ease-in-out);width:100%;align-items:stretch}.testimonial-carousel-slide{min-width:100%;max-width:100%;flex-shrink:0;box-sizing:border-box;padding:0;display:flex}.testimonial-carousel-button{position:absolute;top:50%;transform:translateY(-50%);background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(255,255,255,.3);color:#fff;width:48px;height:48px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--duration-normal) var(--easing-ease-out);z-index:10;box-shadow:0 4px 12px #0003;padding:0}.testimonial-carousel-button svg{display:block;flex-shrink:0}.testimonial-carousel-button:hover{background:#ffffff4d;border-color:#fff;transform:translateY(-50%) scale(1.1);box-shadow:0 6px 20px #0000004d}.testimonial-carousel-button:active{transform:translateY(-50%) scale(.95)}.testimonial-carousel-button-prev{left:-24px}.testimonial-carousel-button-next{right:-24px}.testimonial-carousel-dots{display:flex;justify-content:center;gap:var(--spacing-sm);margin-top:var(--spacing-lg)}.testimonial-carousel-dot{width:12px;height:12px;border-radius:var(--radius-full);background:#ffffff4d;border:none;cursor:pointer;transition:all var(--duration-normal) var(--easing-ease-out);padding:0}.testimonial-carousel-dot:hover{background:#fff9;transform:scale(1.2)}.testimonial-carousel-dot.active{background:#fff;width:32px;border-radius:var(--radius-sm)}@media(max-width:1024px){.testimonial-carousel{max-width:600px;padding:var(--spacing-lg) var(--spacing-lg)}.testimonial-carousel-button{width:40px;height:40px;font-size:var(--font-size-2xl)}.testimonial-carousel-button-prev{left:-20px}.testimonial-carousel-button-next{right:-20px}}@media(max-width:768px){.testimonial-carousel{padding:var(--spacing-md) var(--spacing-md);max-width:100%}.testimonial-carousel-button{width:36px;height:36px;font-size:var(--font-size-xl)}.testimonial-carousel-button-prev{left:var(--spacing-xs)}.testimonial-carousel-button-next{right:var(--spacing-xs)}.testimonial-carousel-dot{width:10px;height:10px}.testimonial-carousel-dot.active{width:24px}}@media(prefers-reduced-motion:reduce){.testimonial-carousel-track,.testimonial-carousel-button,.testimonial-carousel-dot{transition:none}}.team-member{display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform var(--duration-normal) var(--easing-ease-out)}.team-member:hover{transform:translateY(-4px)}.team-member-image-container{position:relative;width:200px;height:200px;margin-bottom:var(--spacing-md);border-radius:var(--radius-full);overflow:hidden;box-shadow:0 8px 24px #00000026;transition:box-shadow var(--duration-normal) var(--easing-ease-out)}.team-member:hover .team-member-image-container{box-shadow:0 12px 32px #00000040}.team-member-image{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-full);border:4px solid var(--color-accent)}.team-member-image-placeholder{width:100%;height:100%;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-accent),var(--color-accent-dark));color:#fff;display:flex;align-items:center;justify-content:center;font-size:4rem;font-weight:700;border:4px solid var(--color-accent)}.team-member-overlay{position:absolute;inset:0;background:#000000e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-lg);opacity:0;transition:opacity var(--duration-normal) var(--easing-ease-out);border-radius:var(--radius-full)}.team-member-overlay.visible{opacity:1}.team-member-bio{color:#fff;font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);margin:0 0 var(--spacing-md) 0;text-align:center;max-height:120px;overflow-y:auto;padding:0 var(--spacing-xs)}.team-member-bio::-webkit-scrollbar{width:4px}.team-member-bio::-webkit-scrollbar-track{background:#ffffff1a;border-radius:2px}.team-member-bio::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:2px}.team-member-bio::-webkit-scrollbar-thumb:hover{background:#ffffff80}.team-member-social{display:flex;gap:var(--spacing-sm);margin-top:auto}.team-member-social-link{width:40px;height:40px;border-radius:var(--radius-full);background:#ffffff1a;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl);text-decoration:none;transition:all var(--duration-fast) var(--easing-ease-out);cursor:pointer}.team-member-social-link:hover{background:var(--color-accent);transform:scale(1.1)}.team-member-info{width:100%}.team-member-name{font-size:var(--font-size-xl);font-weight:600;color:#1a1a1a;margin:0 0 var(--spacing-xs) 0}.team-member-role{font-size:var(--font-size-base);color:var(--color-text-light);margin:0;font-weight:500}@media(max-width:768px){.team-member-image-container{width:160px;height:160px}.team-member-image-placeholder{font-size:3rem}.team-member-overlay{padding:var(--spacing-md)}.team-member-bio{font-size:var(--font-size-xs);max-height:80px}.team-member-social-link{width:36px;height:36px;font-size:var(--font-size-lg)}.team-member-name{font-size:var(--font-size-lg)}.team-member-role{font-size:var(--font-size-sm)}}@media(max-width:480px){.team-member-image-container{width:140px;height:140px}.team-member-image-placeholder{font-size:2.5rem}.team-member-name{font-size:var(--font-size-base)}.team-member-role{font-size:var(--font-size-xs)}}@media(prefers-reduced-motion:reduce){.team-member,.team-member-image-container,.team-member-overlay,.team-member-social-link{transition:none}.team-member:hover,.team-member-social-link:hover{transform:none}}:root{--primary: #2c3e50;--primary-light: #34495e;--primary-dark: #1a252f;--accent: #e74c3c;--accent-light: #ec7063;--accent-dark: #c0392b;--success: #27ae60;--warning: #f39c12;--text: #333333;--text-light: #666666;--text-lighter: #999999;--bg: #ffffff;--bg-light: #f8f9fa;--border: #e0e0e0;--shadow: 0 2px 8px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .15)}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;width:100%;overflow-x:hidden}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background-color:var(--bg);color:var(--text);line-height:1.6;margin:0;padding:0}#root{display:flex;flex-direction:column;min-height:100vh;width:100%;margin:0;padding:0}.header{background:var(--primary);color:#fff;padding:1rem 0;box-shadow:var(--shadow);position:sticky;top:0;z-index:10000;width:100%;margin:0;transition:all .3s ease}.header.scrolled{background:#2c3e50f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 12px #00000026;padding:.75rem 0}.header-container{max-width:none;margin:0 auto;padding:0 max(2rem,calc((100vw - 1400px)/2));display:flex;justify-content:space-between;align-items:center;width:100%}.logo{display:flex;flex-direction:column;gap:0}.logo h1{font-size:1.8rem;font-weight:700;letter-spacing:1px}.logo p{font-size:.85rem;opacity:.9;font-weight:300}.menu-toggle{display:none;background:none;border:none;color:#fff;cursor:pointer;flex-direction:column;gap:6px;padding:8px;z-index:101}.menu-toggle span{width:25px;height:3px;background:#fff;border-radius:2px;transition:all .3s ease;transform-origin:center}.menu-toggle.active span:nth-child(1){transform:translateY(9px) rotate(45deg)}.menu-toggle.active span:nth-child(2){opacity:0;transform:scaleX(0)}.menu-toggle.active span:nth-child(3){transform:translateY(-9px) rotate(-45deg)}.nav{display:flex;gap:2rem;align-items:center}.nav-link{background:none;border:none;color:#fff;cursor:pointer;font-size:1rem;transition:all .3s ease;padding:.5rem 0;border-bottom:2px solid transparent;position:relative}.nav-link:hover,.nav-link.active{color:var(--accent);border-bottom-color:var(--accent)}.nav-link.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:var(--accent);animation:slideIn .3s ease}@keyframes slideIn{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.nav-link-cta{background:var(--accent);color:#fff;padding:.5rem 1.5rem;border-radius:25px;border-bottom:none;margin-left:1rem;transition:all .3s ease}.nav-link-cta:hover{background:var(--accent-dark);transform:translateY(-2px);box-shadow:0 4px 12px #e74c3c4d;border-bottom:none;color:#fff}.nav-link-cta.active{background:var(--accent-dark);border-bottom:none;color:#fff}.nav-link-cta.active:after{display:none}.footer{background:var(--primary-dark);color:#fff;text-align:center;padding:2rem;margin-top:4rem;font-size:.9rem}.home-page{display:flex;flex-direction:column;gap:4rem}.hero{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-light) 100%);color:#fff;padding:4rem 2rem;border-radius:12px;text-align:center;box-shadow:var(--shadow-lg)}.hero-content h1{font-size:2.5rem;margin-bottom:1rem;font-weight:700}.hero-content p{font-size:1.2rem;margin-bottom:2rem;opacity:.95}.cta-button{background:var(--accent);color:#fff;border:none;padding:1rem 2.5rem;font-size:1.1rem;border-radius:6px;cursor:pointer;transition:all .3s ease;font-weight:600;box-shadow:0 4px 12px #e74c3c4d}.cta-button:hover{background:var(--accent-dark);box-shadow:0 6px 16px #e74c3c66;transform:translateY(-2px)}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.feature{background:var(--bg-light);padding:2rem;border-radius:8px;text-align:center;transition:transform .3s ease,box-shadow .3s ease;border:1px solid var(--border)}.feature:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.feature-icon{font-size:3rem;margin-bottom:1rem}.feature h3{font-size:1.3rem;margin-bottom:.8rem;color:var(--primary)}.feature p{color:var(--text-light);font-size:.95rem}.about{background:var(--bg-light);padding:3rem 2rem;border-radius:8px;border-left:4px solid var(--accent)}.about h2{font-size:2rem;margin-bottom:1.5rem;color:var(--primary)}.about p{font-size:1rem;color:var(--text-light);margin-bottom:1rem;line-height:1.8}.services-preview{text-align:center;padding:2rem;background:var(--primary-light);color:#fff;border-radius:8px}.services-preview h2{font-size:1.8rem;margin-bottom:1.5rem}.link-button{background:var(--accent);color:#fff;border:none;padding:.8rem 1.5rem;border-radius:6px;cursor:pointer;font-size:1rem;transition:all .3s ease}.link-button:hover{background:var(--accent-dark);transform:translate(4px)}.services-page{padding-bottom:4rem}.services-page h1,.booking-page h1,.admin-page h1{font-size:2rem;margin-bottom:2rem;color:var(--primary)}.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem}.service-card{background:#fff;border:1px solid var(--border);border-radius:8px;padding:2rem;box-shadow:var(--shadow);transition:all .3s ease;display:flex;flex-direction:column}.service-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px);border-color:var(--accent)}.service-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:1rem;gap:1rem}.service-header h2{font-size:1.4rem;color:var(--primary);flex:1}.price{background:var(--accent);color:#fff;padding:.5rem 1rem;border-radius:6px;font-weight:600;font-size:1.1rem;white-space:nowrap}.description{color:var(--text-light);margin-bottom:1rem;flex:1}.service-details{margin-bottom:1.5rem}.duration{display:inline-block;background:var(--bg-light);padding:.4rem .8rem;border-radius:4px;font-size:.9rem;color:var(--text-light)}.book-button{background:var(--accent);color:#fff;border:none;padding:.8rem 1.5rem;border-radius:6px;cursor:pointer;font-size:1rem;transition:all .3s ease;margin-top:auto}.book-button:hover{background:var(--accent-dark);box-shadow:0 4px 12px #e74c3c4d}.booking-form{background:var(--bg-light);padding:2rem;border-radius:8px;max-width:600px;margin:0 auto}.form-group{margin-bottom:1.5rem;display:flex;flex-direction:column}.form-group label{font-weight:600;margin-bottom:.5rem;color:var(--primary)}.form-group input,.form-group select,.form-group textarea{padding:.8rem;border:1px solid var(--border);border-radius:6px;font-size:1rem;font-family:inherit;transition:border-color .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #e74c3c1a}.submit-button{background:var(--accent);color:#fff;border:none;padding:1rem;border-radius:6px;font-size:1.1rem;cursor:pointer;font-weight:600;transition:all .3s ease;width:100%}.submit-button:hover:not(:disabled){background:var(--accent-dark);box-shadow:0 4px 12px #e74c3c4d}.submit-button:disabled{opacity:.6;cursor:not-allowed}.success-message{text-align:center;padding:3rem 2rem;background:linear-gradient(135deg,var(--success) 0%,#229954 100%);color:#fff;border-radius:8px}.success-message h2{font-size:1.8rem;margin-bottom:1rem}.admin-tabs{display:flex;gap:1rem;margin-bottom:2rem;border-bottom:2px solid var(--border);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--accent) var(--bg-light)}.admin-tabs::-webkit-scrollbar{height:4px}.admin-tabs::-webkit-scrollbar-track{background:var(--bg-light)}.admin-tabs::-webkit-scrollbar-thumb{background:var(--accent);border-radius:2px}.tab-button{background:none;border:none;padding:1rem 1.5rem;font-size:1rem;cursor:pointer;color:var(--text-light);border-bottom:3px solid transparent;transition:all .3s ease;font-weight:600;white-space:nowrap;flex-shrink:0}.tab-button.active{color:var(--accent);border-bottom-color:var(--accent)}.admin-section{background:var(--bg-light);padding:2rem;border-radius:8px}.admin-section h2{color:var(--primary);margin-bottom:1.5rem}.bookings-table,.services-table{overflow-x:auto;margin:0 1rem}table{width:calc(100% - 2rem);border-collapse:collapse;margin:0 auto}table th{background:var(--primary);color:#fff;padding:1rem;text-align:left;font-weight:600}table td{padding:1rem;border-bottom:1px solid var(--border);text-align:left}table tr:hover{background:var(--bg)}.past-booking{background-color:#e74c3c14!important}.past-booking:hover{background-color:#e74c3c1f!important}.status-badge{display:inline-block;padding:.4rem .8rem;border-radius:4px;font-size:.85rem;font-weight:600;color:#fff}.status-badge.status-confirmed{background:var(--success)}.status-badge.status-manual{background:#3498db}.delete-btn{background:#e74c3c;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .3s ease}.delete-btn:hover{background:#c0392b;box-shadow:var(--shadow)}@media(max-width:768px){.header-container{padding:0 1rem}.logo h1{font-size:1.4rem}.menu-toggle{display:flex;position:relative;z-index:10002}.nav-overlay{position:fixed;top:0;left:0;bottom:0;width:0;background:#00000080;z-index:9998;cursor:pointer;transition:width .5s ease}.nav-overlay.open{width:calc(100% - min(80vw,300px))}.nav{position:fixed;top:0;right:-100%;bottom:0;width:80vw;max-width:300px;background:var(--primary-dark);flex-direction:column;gap:0;padding-top:5rem;overflow-y:auto;transition:right .5s ease;z-index:9999}.nav.open{right:0}@media(min-width:769px){.nav-overlay{display:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.nav-link{width:100%;padding:1rem 1.5rem;text-align:left;border:none!important;border-bottom:1px solid rgba(255,255,255,.1)!important;border-radius:0;background:transparent!important}.nav-link:hover{background:transparent!important;color:var(--accent-light)!important;border:none!important;border-bottom:1px solid rgba(255,255,255,.1)!important}.nav-link.active{background:transparent!important;color:var(--accent)!important;border:none!important;border-bottom:1px solid rgba(255,255,255,.1)!important}.nav-link.active:after{display:none!important}.nav-link-cta{margin:1rem 1.5rem;width:calc(100% - 3rem);text-align:center;border-radius:25px;display:flex;align-items:center;justify-content:center;border:none!important;background:var(--accent)!important}.nav-link-cta:hover,.nav-link-cta.active{background:var(--accent-dark)!important;color:#fff!important;border:none!important}.main-content{padding:1rem}.hero-content h1{font-size:1.8rem}.hero-content p{font-size:1rem}.services-grid,.features{grid-template-columns:1fr}.services-page h1,.booking-page h1,.admin-page h1{font-size:1.5rem}.booking-form{max-width:100%}table{font-size:.9rem}table th,table td{padding:.75rem .5rem}}.login-container{max-width:400px;margin:4rem auto;padding:2rem;background:var(--bg-light);border-radius:8px;box-shadow:var(--shadow-lg)}.login-container h1{text-align:center;margin-bottom:2rem;color:var(--primary)}.login-form{display:flex;flex-direction:column;gap:1.5rem}.login-btn{background:var(--accent);color:#fff;border:none;padding:1rem;border-radius:6px;font-size:1.1rem;cursor:pointer;font-weight:600;transition:all .3s ease}.login-btn:hover{background:var(--accent-dark);box-shadow:0 4px 12px #e74c3c4d}.error-message{background:#f8d7da;color:#721c24;padding:.75rem;border-radius:4px;border:1px solid #f5c6cb;font-size:.9rem}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:0 1rem}.admin-header h1{margin-left:1rem}.logout-btn{background:var(--text-light);color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .3s ease}.logout-btn:hover{background:var(--text)}@media(max-width:768px){.login-container{margin:2rem auto;padding:1.5rem}.admin-header{flex-direction:column;gap:1rem;align-items:flex-start}}.calendar{background:#fff;border:1px solid var(--border);border-radius:8px;padding:1rem;box-shadow:var(--shadow);max-width:350px;margin:0 auto}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:0 .5rem}.calendar-title{font-size:1.1rem;font-weight:600;color:var(--primary);margin:0}.calendar-nav-btn{background:var(--primary);color:#fff;border:none;width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.calendar-nav-btn:hover{background:var(--primary-light);transform:scale(1.1)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:.5rem}.calendar-weekday{text-align:center;font-size:.85rem;font-weight:600;color:var(--text-light);padding:.5rem 0}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.calendar-day{aspect-ratio:1;border:none;background:var(--bg-light);color:var(--text);cursor:pointer;font-size:.9rem;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-height:36px}.calendar-day:hover:not(:disabled){background:var(--accent-light);color:#fff;transform:scale(1.05)}.calendar-day.other-month{color:var(--text-lighter);background:transparent}.calendar-day.unavailable{background:#f5f5f5;color:var(--text-lighter);cursor:not-allowed}.calendar-day.unavailable:hover{background:#f5f5f5;color:var(--text-lighter);transform:none}.calendar-day.available{background:var(--bg);border:1px solid var(--border);color:var(--primary);font-weight:500}.calendar-day.available:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.calendar-day.selected{background:var(--accent);color:#fff;border:2px solid var(--accent-dark);font-weight:600}.calendar-day.selected:hover{background:var(--accent-dark)}.date-input-display{width:100%;padding:.8rem;border:1px solid var(--border);border-radius:6px;font-size:1rem;background:#fff;color:var(--text);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:border-color .3s ease;text-align:left;font-family:inherit}.date-input-display:hover{border-color:var(--accent)}.date-input-display.active{border-color:var(--accent);box-shadow:0 0 0 3px #e74c3c1a}.date-input-display:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #e74c3c1a}.date-input-display span:first-child{color:var(--text);font-weight:500}.date-input-display .placeholder{color:var(--text-light);font-weight:400}.date-input-display .calendar-icon{color:var(--text-light);font-size:1.1rem}.calendar-dropdown{position:absolute;top:100%;left:0;right:0;z-index:1000;margin-top:4px;background:#fff;border-radius:8px;box-shadow:var(--shadow-lg);border:1px solid var(--border)}@media(max-width:768px){.calendar{max-width:100%;padding:.75rem}.calendar-day{min-height:32px;font-size:.85rem}.calendar-title{font-size:1rem}}.calendar-day.today{background:var(--primary-light);color:#fff;font-weight:600}.calendar-day.today.available{background:var(--primary);border-color:var(--primary)}.calendar-day.today.available:hover{background:var(--primary-dark)}.contact-info{margin:4rem 0}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:2rem}.contact-card{background:#fff;padding:2rem;border-radius:8px;text-align:center;box-shadow:var(--shadow);border:1px solid var(--border);transition:all .3s ease}.contact-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.contact-icon{font-size:2.5rem;margin-bottom:1rem}.contact-card h3{color:var(--primary);margin-bottom:1rem;font-size:1.2rem}.contact-card p{color:var(--text-light);line-height:1.6}.contact-card a{color:var(--accent);text-decoration:none;font-weight:600;transition:color .3s ease}.contact-card a:hover{color:var(--accent-dark);text-decoration:underline}.opening-hours{text-align:left}.hours-row{display:flex;justify-content:space-between;margin-bottom:.5rem;padding:.25rem 0;border-bottom:1px solid var(--border)}.hours-row:last-child{border-bottom:none}.hours-row span:first-child{font-weight:500;color:var(--text)}.hours-row span:last-child{color:var(--text-light)}.footer{background:var(--primary-dark);color:#fff;margin-top:0;width:100%}.footer-content{max-width:none;margin:0 auto;padding:2rem max(2rem,calc((100vw - 1400px)/2));display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.footer-section h4{color:#fff;margin-bottom:1rem;font-size:1.1rem}.footer-section p{margin-bottom:.5rem;opacity:.9;font-size:.9rem}.footer-section a{color:var(--accent-light);text-decoration:none;transition:color .3s ease}.footer-section a:hover{color:#fff;text-decoration:underline}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:1rem 2rem;text-align:center;font-size:.85rem;opacity:.8}@media(max-width:768px){.contact-grid{grid-template-columns:1fr;gap:1.5rem}.contact-card{padding:1.5rem}.footer-content{padding:1.5rem;grid-template-columns:1fr;text-align:center}.footer-bottom{padding:1rem}}.contact-page{max-width:1200px;margin:0 auto;padding:2rem 1rem}.contact-hero{text-align:center;margin-bottom:3rem}.contact-hero h1{font-size:2.5rem;color:var(--primary);margin-bottom:.5rem;font-weight:700}.contact-hero p{font-size:1.1rem;color:var(--text-light)}.contact-container{display:flex;flex-direction:column;gap:2rem}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:2rem}.contact-card{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.contact-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #0000001f}.card-header{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-light) 100%);color:#fff;padding:2rem;display:flex;align-items:center;gap:1rem}.card-icon{font-size:2.5rem;line-height:1}.card-header h2{font-size:1.5rem;margin:0;font-weight:600}.card-content{padding:2rem}.info-group{margin-bottom:1.5rem}.info-group:last-child{margin-bottom:0}.salon-name{font-size:1.2rem;font-weight:700;color:var(--primary);margin-bottom:.5rem}.address-line{color:var(--text);margin-bottom:.25rem;font-size:1rem}.contact-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--bg-light);border-radius:12px;transition:background .2s ease}.contact-item:hover{background:#e8f4f8}.item-icon{font-size:1.5rem;flex-shrink:0}.item-content{display:flex;flex-direction:column;gap:.25rem}.item-label{font-size:.85rem;color:var(--text-light);font-weight:500}.item-value{font-size:1.1rem;color:var(--primary);font-weight:600;text-decoration:none;transition:color .2s ease}.item-value:hover{color:var(--primary-dark)}.hours-list{display:flex;flex-direction:column;gap:.5rem}.hours-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--bg-light);border-radius:8px;transition:all .2s ease}.hours-item:hover{background:#e8f4f8;transform:translate(4px)}.hours-day{font-weight:600;color:var(--text);font-size:1rem}.hours-time{color:var(--primary);font-weight:500;font-size:.95rem}.hours-item.weekend .hours-day,.hours-item.weekend .hours-time{color:var(--accent)}.hours-item.closed .hours-day,.hours-item.closed .hours-time{color:var(--text-lighter);opacity:.6}.action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:2rem;margin-top:1rem}.action-card{border-radius:16px;padding:2.5rem;color:#fff;position:relative;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.action-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#ffffff1a,#fff0);pointer-events:none}.action-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0003}.action-card.primary{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-light) 100%)}.action-card.secondary{background:linear-gradient(135deg,var(--accent) 0%,#e74c3c 100%)}.action-icon{font-size:3rem;margin-bottom:1rem;line-height:1}.action-card h3{font-size:1.5rem;margin-bottom:1rem;font-weight:600}.action-card p{margin-bottom:1.5rem;opacity:.95;line-height:1.6;font-size:1rem}.action-card .cta-button{background:#fff;color:var(--primary);border:none;padding:1rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;width:100%}.action-card .cta-button:hover{transform:scale(1.05);box-shadow:0 4px 15px #0003}.transport-list{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.transport-item{background:#ffffff26;padding:.75rem 1rem;border-radius:8px;font-size:.95rem;line-height:1.5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.transport-item strong{color:#fff;font-weight:600;margin-right:.5rem}@media(max-width:768px){.contact-page{padding:1.5rem 1rem}.contact-hero h1{font-size:2rem}.contact-hero p{font-size:1rem}.contact-hero{margin-bottom:2rem}.contact-grid{gap:1.5rem}.card-header{padding:1.5rem}.card-icon{font-size:2rem}.card-header h2{font-size:1.3rem}.card-content{padding:1.5rem}.action-grid{gap:1.5rem}.action-card{padding:2rem}.action-icon{font-size:2.5rem}.action-card h3{font-size:1.3rem}}@media(max-width:480px){.contact-page{padding:1rem .75rem}.contact-hero h1{font-size:1.75rem}.card-header{padding:1.25rem;flex-direction:column;text-align:center}.card-content{padding:1.25rem}.action-card{padding:1.5rem}.hours-item{padding:.75rem;font-size:.9rem}.contact-item{padding:.75rem}.transport-item{padding:.6rem .75rem;font-size:.9rem}}.service-form{background:var(--bg-light);padding:1.5rem;border-radius:8px;margin-bottom:2rem;border:1px solid var(--border)}.service-form h3{margin-bottom:1rem;color:var(--primary)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.form-grid input{padding:.75rem;border:1px solid var(--border);border-radius:4px;font-size:.9rem}.form-grid input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #e74c3c1a}.add-btn,.edit-btn,.save-btn,.cancel-btn{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;margin-right:.5rem;transition:all .3s ease}.add-btn{background:var(--success);color:#fff}.add-btn:hover:not(:disabled){background:#229954}.add-btn:disabled{background:var(--text-lighter);cursor:not-allowed}.edit-btn{background:var(--warning);color:#fff}.edit-btn:hover{background:#e67e22}.save-btn{background:var(--success);color:#fff}.save-btn:hover{background:#229954}.cancel-btn{background:var(--text-light);color:#fff}.cancel-btn:hover{background:var(--text)}.hours-table table th,.hours-table table td{padding:1rem .75rem;text-align:left}.hours-table input[type=time]{padding:.5rem;border:1px solid var(--border);border-radius:4px;font-size:.9rem}.hours-table input[type=checkbox]{transform:scale(1.2)}.hours-table input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #e74c3c1a}.services-table input{width:100%;padding:.5rem;border:1px solid var(--border);border-radius:4px;font-size:.9rem}.services-table input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #e74c3c1a}@media(max-width:768px){.form-grid{grid-template-columns:1fr}.add-btn,.edit-btn,.save-btn,.cancel-btn{margin-bottom:.5rem;width:100%}.hours-table,.services-table{overflow-x:auto}.hours-table table,.services-table table{min-width:600px}}.settings-grid{display:grid;gap:2rem;max-width:800px}.setting-card{background:#fff;padding:2rem;border-radius:8px;border:1px solid var(--border);box-shadow:var(--shadow)}.setting-header h3{color:var(--primary);margin-bottom:.5rem;font-size:1.2rem}.setting-header p{color:var(--text-light);margin-bottom:1.5rem;font-size:.9rem}.setting-control{display:flex;align-items:center;gap:1rem}.toggle-switch{position:relative;display:inline-block;width:60px;height:34px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;transition:.4s;border-radius:34px}.toggle-slider:before{position:absolute;content:"";height:26px;width:26px;left:4px;bottom:4px;background-color:#fff;transition:.4s;border-radius:50%}.toggle-switch input:checked+.toggle-slider{background-color:var(--success)}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 1px var(--success)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(26px)}.toggle-label{font-weight:500;color:var(--text)}@media(max-width:768px){.setting-card{padding:1.5rem}.setting-control{flex-direction:column;align-items:flex-start;gap:.5rem}}.container{max-width:1200px;margin:0 auto;padding:0 1rem;width:100%}.container-full{width:100%;max-width:none;margin:0 auto;padding:0 max(2rem,calc((100vw - 1400px)/2))}.services-modern,.gallery-modern,.testimonial-modern,.team-modern,.about-modern,.contact-modern,.cta-modern{width:100vw;margin:0;padding-left:0;padding-right:0}.main-content{flex:1;width:100%;margin:0;padding:0}.hero-modern{position:relative;height:100vh;min-height:80vh;background:linear-gradient(135deg,#0f2027,#203a43,#2c5364);display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-modern:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 20% 30%,rgba(52,152,219,.15) 0%,transparent 50%),radial-gradient(circle at 80% 70%,rgba(231,76,60,.12) 0%,transparent 50%),radial-gradient(circle at 50% 50%,rgba(255,255,255,.03) 0%,transparent 70%);animation:backgroundShift 15s ease-in-out infinite alternate}.hero-modern:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent,transparent 2px,rgba(255,255,255,.01) 2px,rgba(255,255,255,.01) 4px),repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(255,255,255,.01) 2px,rgba(255,255,255,.01) 4px);opacity:.3}@keyframes backgroundShift{0%{transform:scale(1) rotate(0);opacity:1}to{transform:scale(1.1) rotate(2deg);opacity:.9}}.hero-overlay{position:absolute;inset:0;background:radial-gradient(ellipse at top,rgba(52,152,219,.1) 0%,transparent 50%),radial-gradient(ellipse at bottom,rgba(44,62,80,.2) 0%,transparent 50%),linear-gradient(180deg,#0000001a,#0000004d);-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}.hero-content-modern{position:relative;z-index:2;text-align:center;color:#fff;max-width:800px;padding:2rem}.hero-title{margin-bottom:2rem}.title-main{display:block;font-size:4rem;font-weight:900;letter-spacing:.2em;margin-bottom:.5rem;background:linear-gradient(45deg,#fff,#e0e0e0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 4px 8px rgba(0,0,0,.3);animation:fadeInUp 1s ease-out}.title-sub{display:block;font-size:1.5rem;font-weight:300;letter-spacing:.1em;color:#ccc;text-transform:uppercase;animation:fadeInUp 1s ease-out .2s both}.hero-description{font-size:1.2rem;line-height:1.6;margin-bottom:3rem;color:#e0e0e0;max-width:600px;margin-left:auto;margin-right:auto;animation:fadeInUp 1s ease-out .4s both}.hero-buttons{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap;animation:fadeInUp 1s ease-out .6s both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.cta-primary{background:linear-gradient(45deg,var(--accent),var(--accent-dark));color:#fff;border:none;padding:1.2rem 2.5rem;font-size:1.1rem;font-weight:600;border-radius:50px;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 8px 25px #e74c3c4d}.cta-primary:hover{transform:translateY(-3px);box-shadow:0 12px 35px #e74c3c66}.cta-secondary{background:transparent;color:#fff;border:2px solid white;padding:1.2rem 2.5rem;font-size:1.1rem;font-weight:600;border-radius:50px;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.05em}.cta-secondary:hover{background:#fff;color:var(--primary);transform:translateY(-3px)}.hero-scroll-indicator{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);text-align:center;color:#fff;opacity:.7;animation:bounce 2s infinite}.scroll-arrow{font-size:1.5rem;margin-top:.5rem}@keyframes bounce{0%,20%,50%,80%,to{transform:translate(-50%) translateY(0)}40%{transform:translate(-50%) translateY(-10px)}60%{transform:translate(-50%) translateY(-5px)}}.services-modern{padding:6rem 0;background:#f8f9fa}.section-header{text-align:center;margin-bottom:4rem}.section-header h2{font-size:2.5rem;color:var(--primary);margin-bottom:1rem;font-weight:700}.section-header p{font-size:1.1rem;color:var(--text-light);max-width:600px;margin:0 auto}.services-grid-modern{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:3rem}.service-modern{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 4px 20px #00000014;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative}.service-modern:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary),var(--accent));transform:scaleX(0);transform-origin:left;transition:transform .4s ease}.service-modern:hover:before{transform:scaleX(1)}.service-modern:hover{transform:translateY(-8px);box-shadow:0 12px 40px #00000026}.service-card-inner{display:flex;flex-direction:column;height:100%}.service-image-wrapper{width:100%;height:240px;overflow:hidden;position:relative;border-radius:16px 16px 0 0}.service-image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.service-modern:hover .service-image{transform:scale(1.1)}.service-image-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.1) 50%,rgba(0,0,0,.3) 100%);opacity:0;transition:opacity .4s ease}.service-modern:hover .service-image-overlay{opacity:1}.service-content{flex:1;display:flex;flex-direction:column;gap:1rem;padding:2rem}.service-content h3{font-size:1.5rem;color:var(--primary);font-weight:700;margin:0;transition:color .3s ease}.service-content p{color:var(--text-light);line-height:1.7;margin:0;font-size:.95rem}@media(max-width:768px){.service-image-wrapper{height:200px}.service-content{padding:1.5rem}.service-content h3{font-size:1.3rem}}.service-icon-modern{font-size:3rem;margin-bottom:1.5rem;display:block}.service-modern h3{font-size:1.4rem;color:var(--primary);margin-bottom:1rem;font-weight:600}.service-modern p{color:var(--text-light);line-height:1.6}.gallery-modern{padding:6rem 0;background:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.gallery-item{position:relative;overflow:hidden;border-radius:15px;box-shadow:0 10px 30px #0000001a;transition:all .3s ease}.gallery-item:hover{transform:translateY(-5px);box-shadow:0 15px 35px #0003}.gallery-image{position:relative;overflow:hidden}.image-placeholder-gallery{width:100%;height:250px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:3rem;color:var(--text-light);transition:all .3s ease}.gallery-item:hover .image-placeholder-gallery{transform:scale(1.1)}.image-placeholder-gallery p{font-size:1rem;margin-top:1rem;font-weight:600}.team-modern{padding:6rem 0;background:#f8f9fa}.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:3rem;justify-items:center;max-width:1200px;margin:0 auto}.testimonial-modern{padding:6rem 0;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;overflow-x:hidden}.testimonial-modern .section-header h2{color:#fff}.testimonial-modern .section-header p{color:#ffffffe6}.testimonials-wrapper{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:3rem}.testimonial-content{background:#ffffff1a;padding:3rem;border-radius:15px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.testimonial-text blockquote{font-size:1.1rem;line-height:1.8;margin-bottom:2rem;font-style:italic;position:relative}.testimonial-text blockquote:before{content:'"';font-size:4rem;position:absolute;top:-1rem;left:-2rem;color:#ffffff4d}.testimonial-author{display:flex;align-items:center;gap:1rem}.author-avatar{width:60px;height:60px;background:var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:600;color:#fff}.author-info{flex:1}.author-name{display:block;font-weight:600;font-size:1.1rem;margin-bottom:.25rem}.author-title{display:block;opacity:.8;font-size:.9rem;margin-bottom:.5rem}.rating{font-size:1rem}.about-modern{padding:6rem 0;background:#fff}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.about-text h2{font-size:2.5rem;color:var(--primary);margin-bottom:2rem;font-weight:700}.about-text p{font-size:1.1rem;line-height:1.8;color:var(--text-light);margin-bottom:1.5rem}.about-features{display:flex;flex-direction:column;gap:1rem;margin:2rem 0}.feature-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--bg-light);border-radius:8px;transition:all .3s ease}.feature-item:hover{background:var(--accent);color:#fff;transform:translate(10px)}.feature-icon{font-size:1.5rem}.about-stats{display:flex;gap:2rem;margin-top:3rem}.stat{text-align:center}.stat-number{display:block;font-size:2.5rem;font-weight:700;color:var(--accent);margin-bottom:.5rem}.stat-label{display:block;font-size:.9rem;color:var(--text-light);text-transform:uppercase;letter-spacing:.05em}.about-image{display:flex;flex-direction:column;gap:2rem}.image-placeholder-about{width:100%;height:300px;background:linear-gradient(135deg,var(--bg-light),#e0e0e0);border-radius:15px;display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:4rem;color:var(--text-light);transition:all .3s ease}.about-image:hover .image-placeholder-about{transform:scale(1.05)}.image-placeholder-about p{font-size:1rem;margin-top:1rem;color:var(--text-light)}.about-highlights{display:flex;flex-direction:column;gap:1rem}.highlight-item{padding:1.5rem;background:var(--primary);color:#fff;border-radius:10px;transition:all .3s ease}.highlight-item:hover{background:var(--primary-dark);transform:translate(10px)}.highlight-item h4{margin-bottom:.5rem;font-size:1.1rem}.highlight-item p{font-size:.9rem;opacity:.9}.contact-modern{padding:6rem 0;background:#f8f9fa}.contact-grid-modern{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:3rem}.contact-item-modern{background:#fff;padding:3rem 2.5rem;border-radius:15px;text-align:center;box-shadow:0 10px 30px #0000001a;transition:all .3s ease;position:relative;overflow:hidden}.contact-item-modern:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(45deg,var(--accent),var(--accent-dark))}.contact-item-modern:hover{transform:translateY(-5px);box-shadow:0 15px 35px #00000026}.contact-icon-modern{font-size:2.5rem;margin-bottom:1.5rem;display:block}.contact-item-modern h3{font-size:1.3rem;color:var(--primary);margin-bottom:1rem;font-weight:600}.contact-item-modern p{color:var(--text-light);line-height:1.6;margin-bottom:.5rem}.contact-item-modern a{color:var(--accent);text-decoration:none;font-weight:600;font-size:1.2rem;transition:color .3s ease}.contact-item-modern a:hover{color:var(--accent-dark)}.contact-extra{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border)}.contact-extra p{font-size:.9rem;color:var(--text-lighter)}.hours-compact{text-align:left;max-width:250px;margin:0 auto}.hour-row{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.9rem;padding:.25rem 0}.cta-modern{padding:6rem 0;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;text-align:center}.cta-content h2{font-size:2.5rem;margin-bottom:1rem;font-weight:700}.cta-content p{font-size:1.2rem;margin-bottom:3rem;opacity:.9;max-width:600px;margin-left:auto;margin-right:auto}.cta-buttons-final{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap}.cta-final{background:var(--accent);color:#fff;border:none;padding:1.5rem 3rem;font-size:1.2rem;font-weight:600;border-radius:50px;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 10px 30px #e74c3c4d}.cta-final:hover{background:var(--accent-dark);transform:translateY(-3px);box-shadow:0 15px 40px #e74c3c66}.cta-secondary-final{background:transparent;color:#fff;border:2px solid white;padding:1.5rem 3rem;font-size:1.2rem;font-weight:600;border-radius:50px;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.05em}.cta-secondary-final:hover{background:#fff;color:var(--primary);transform:translateY(-3px)}@media(max-width:768px){.title-main{font-size:2.5rem}.title-sub{font-size:1.2rem}.hero-description{font-size:1rem}.hero-buttons{flex-direction:column;align-items:center}.cta-primary,.cta-secondary{width:100%;max-width:300px}.about-grid{grid-template-columns:1fr;gap:2rem}.about-stats{justify-content:center}.section-header h2{font-size:2rem}.testimonials-wrapper{grid-template-columns:1fr}.testimonial-author{flex-direction:column;gap:1rem;text-align:center}.team-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.container-full{padding:0 1rem}.cta-buttons-final{flex-direction:column;align-items:center}.cta-final,.cta-secondary-final{width:100%;max-width:300px}.header-container{padding:0 1rem}.logo h1{font-size:1.4rem}.menu-toggle{display:flex;background:none;border:none;color:#fff;cursor:pointer;flex-direction:column;gap:4px;padding:8px;z-index:1001;position:relative}.menu-toggle span{width:25px;height:3px;background:#fff;border-radius:2px;transition:all .3s ease}.menu-toggle.active span:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.menu-toggle.active span:nth-child(2){opacity:0}.menu-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.nav{position:fixed;top:0;right:-100%;width:300px;height:100vh;background:var(--primary-dark);flex-direction:column;gap:0;padding:5rem 2rem 2rem;transition:right .3s ease;z-index:1000;box-shadow:-5px 0 15px #0000004d}.nav.open{right:0}.nav-link{width:100%;padding:1rem 0;text-align:left;border:none;border-bottom:1px solid rgba(255,255,255,.1);font-size:1.1rem;transition:all .3s ease}.nav-link:hover{background:#e74c3c33;padding-left:1rem}.nav-link.active{background:#e74c3c4d;border-left:4px solid var(--accent);padding-left:1rem}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes rotateIn{0%{opacity:0;transform:rotate(-10deg) scale(.8)}to{opacity:1;transform:rotate(0) scale(1)}}.service-modern{animation:scaleIn .6s ease-out}.service-modern:nth-child(1){animation-delay:.1s}.service-modern:nth-child(2){animation-delay:.2s}.service-modern:nth-child(3){animation-delay:.3s}.gallery-item{animation:fadeInUp .6s ease-out}.gallery-item:nth-child(1){animation-delay:.1s}.gallery-item:nth-child(2){animation-delay:.2s}.gallery-item:nth-child(3){animation-delay:.3s}.gallery-item:nth-child(4){animation-delay:.4s}.testimonial-content{animation:scaleIn .8s ease-out}.testimonial-content:nth-child(2){animation-delay:.2s}.contact-item-modern{animation:fadeInUp .6s ease-out}.contact-item-modern:nth-child(1){animation-delay:.1s}.contact-item-modern:nth-child(2){animation-delay:.2s}.contact-item-modern:nth-child(3){animation-delay:.3s}.image-placeholder-service,.image-placeholder-gallery,.image-placeholder-about{position:relative;overflow:hidden}.image-placeholder-service:after,.image-placeholder-gallery:after,.image-placeholder-about:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .6s ease}.service-modern:hover .image-placeholder-service:after,.gallery-item:hover .image-placeholder-gallery:after,.about-image:hover .image-placeholder-about:after{left:100%}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.cta-primary:hover,.cta-final:hover{animation:pulse .6s ease-in-out}@keyframes float{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-10px)}}.hero-scroll-indicator{animation:float 3s ease-in-out infinite}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.hero-modern{background:linear-gradient(-45deg,#1a1a1a,#2c2c2c,#1a1a1a,#2c3e50);background-size:400% 400%;animation:gradientShift 15s ease infinite}.services-grid-modern .service-modern,.gallery-grid .gallery-item,.contact-grid-modern .contact-item-modern{opacity:0;animation-fill-mode:forwards}@media(max-width:768px){.service-modern,.gallery-item,.team-member,.contact-item-modern{animation-duration:.4s}.testimonial-content{animation-duration:.5s}}.home-page{width:100%;margin:0;padding:0;overflow-x:hidden}.home-page section{margin:0;width:100%}.booking-page-modern{min-height:100vh;background:linear-gradient(135deg,#f8f9fa,#e9ecef);padding-bottom:4rem}.booking-hero{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;padding:4rem 0 3rem;text-align:center;box-shadow:0 4px 20px #0000001a;margin-bottom:3rem}.booking-title{font-size:2.5rem;font-weight:700;margin-bottom:1rem;animation:fadeInUp .6s ease-out}.booking-subtitle{font-size:1.2rem;opacity:.9;animation:fadeInUp .6s ease-out .2s both}.booking-container{display:grid;grid-template-columns:2fr 1fr;gap:3rem;max-width:1400px;margin:0 auto;padding:0 2rem}.booking-form-modern{background:#fff;border-radius:15px;padding:3rem;box-shadow:0 10px 40px #0000001a;animation:fadeInUp .8s ease-out}.form-section{margin-bottom:3rem;padding-bottom:2rem;border-bottom:2px solid var(--bg-light)}.form-section:last-of-type{border-bottom:none;margin-bottom:2rem}.section-title{display:flex;align-items:center;gap:1rem;font-size:1.5rem;color:var(--primary);margin-bottom:2rem;font-weight:600}.step-number{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:#fff;border-radius:50%;font-size:1.2rem;font-weight:700}.form-group-modern{margin-bottom:1.5rem}.form-group-modern label{display:block;font-weight:600;margin-bottom:.75rem;color:var(--primary);font-size:1rem}.modern-input,.modern-select,.modern-textarea{width:100%;padding:1rem;border:2px solid var(--border);border-radius:10px;font-size:1rem;font-family:inherit;transition:all .3s ease;background:#fff;color:var(--text)}.modern-select option{color:var(--text);background:#fff}.modern-input:focus,.modern-select:focus,.modern-textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px #e74c3c1a;transform:translateY(-2px)}.modern-input.error{border-color:#e74c3c;background:#fff5f5}.modern-textarea{resize:vertical;min-height:120px}.form-grid-modern{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.form-group-modern.full-width{grid-column:1 / -1}.time-selection{animation:slideInDown .4s ease-out}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.error-message-modern{display:block;color:#e74c3c;font-size:.875rem;margin-top:.5rem;animation:shake .3s ease}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.submit-button-modern{width:100%;background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:#fff;border:none;padding:1.25rem 2rem;font-size:1.2rem;font-weight:600;border-radius:50px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.75rem;box-shadow:0 8px 25px #e74c3c4d;text-transform:uppercase;letter-spacing:.05em}.submit-button-modern:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 12px 35px #e74c3c66}.submit-button-modern:disabled{opacity:.7;cursor:not-allowed;transform:none}.submit-button-modern span:first-child{font-size:1.5rem}.spinner{width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.booking-info{display:flex;flex-direction:column;gap:1.5rem}.info-card{background:#fff;padding:2rem;border-radius:15px;box-shadow:0 5px 20px #00000014;text-align:center;transition:all .3s ease;animation:fadeInRight .8s ease-out}.info-card:nth-child(2){animation-delay:.2s}.info-card:nth-child(3){animation-delay:.4s}@keyframes fadeInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.info-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #0000001f}.info-icon{font-size:3rem;margin-bottom:1rem}.info-card h3{font-size:1.2rem;color:var(--primary);margin-bottom:.75rem;font-weight:600}.info-card p{color:var(--text-light);line-height:1.6;font-size:.95rem}.success-container{max-width:600px;margin:6rem auto;padding:4rem 2rem;background:#fff;border-radius:20px;box-shadow:0 20px 60px #00000026;text-align:center;animation:scaleIn .6s ease-out}.success-animation{margin-bottom:2rem}.success-checkmark{width:100px;height:100px;margin:0 auto;background:linear-gradient(135deg,var(--success),#229954);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:3rem;color:#fff;animation:checkmarkPop .6s ease-out;box-shadow:0 10px 30px #27ae604d}@keyframes checkmarkPop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.success-title{font-size:2rem;color:var(--primary);margin-bottom:1rem;font-weight:700}.booking-details-box{background:linear-gradient(135deg,#3498db1a,#2980b90d);border:2px solid var(--primary-light);border-radius:15px;padding:2rem;margin:2rem 0;text-align:left}.booking-details-box h3{color:var(--primary);font-size:1.3rem;margin-bottom:1.5rem;text-align:center;font-weight:600}.booking-detail-item{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-bottom:1px solid rgba(52,152,219,.2)}.booking-detail-item:last-child{border-bottom:none}.detail-label{font-weight:600;color:var(--text);font-size:1rem}.detail-value{font-weight:700;color:var(--primary);font-size:1.1rem;text-align:right}.success-container .success-message{font-size:1.1rem;color:var(--text);line-height:1.6;margin-bottom:2rem}.success-button{background:linear-gradient(135deg,var(--primary),var(--primary-light));color:#fff;border:none;padding:1rem 3rem;font-size:1.1rem;font-weight:600;border-radius:50px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #3498db4d}.success-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #3498db66}.success-button:active{transform:translateY(0)}.redirect-message{font-size:.95rem;color:var(--text-lighter);font-style:italic}@media(max-width:1024px){.booking-container{grid-template-columns:1fr;gap:2rem}.booking-info{flex-direction:row;overflow-x:auto}.info-card{min-width:250px}}@media(max-width:768px){.booking-hero{padding:3rem 0 2rem}.booking-title{font-size:2rem}.booking-subtitle{font-size:1rem}.booking-container{padding:0 1rem;grid-template-columns:1fr;gap:2rem}.booking-form-modern{padding:2rem 1.5rem}.form-grid-modern{grid-template-columns:1fr}.section-title{font-size:1.3rem}.step-number{width:35px;height:35px;font-size:1rem}.booking-info{flex-direction:column}.info-card{min-width:auto}.success-container{margin:3rem auto;padding:3rem 1.5rem}.success-checkmark{width:80px;height:80px;font-size:2.5rem}.success-title{font-size:1.6rem}}.calendar-modern{background:#fff;border:none;border-radius:15px;padding:1.5rem;box-shadow:0 5px 20px #00000014;width:100%;margin:0;animation:fadeIn .4s ease-out}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.calendar-header-modern{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:0 .5rem}.calendar-title-modern{font-size:1.2rem;font-weight:700;color:var(--primary);margin:0;letter-spacing:.02em}.calendar-nav-btn-modern{background:linear-gradient(135deg,var(--primary),var(--primary-light));color:#fff;border:none;width:40px;height:40px;border-radius:50%;cursor:pointer;font-size:1.5rem;display:flex;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:0 4px 12px #2c3e5033}.calendar-nav-btn-modern:hover{background:linear-gradient(135deg,var(--primary-light),var(--primary-dark));transform:scale(1.1);box-shadow:0 6px 16px #2c3e504d}.calendar-nav-btn-modern:active{transform:scale(.95)}.calendar-weekdays-modern{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:1rem;padding-bottom:1rem;border-bottom:2px solid var(--bg-light)}.calendar-weekday-modern{text-align:center;font-size:.9rem;font-weight:700;color:var(--primary);padding:.5rem 0;text-transform:uppercase;letter-spacing:.05em}.calendar-grid-modern{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.calendar-day-modern{aspect-ratio:1;border:none;background:var(--bg-light);color:var(--text);cursor:pointer;font-size:1rem;font-weight:500;border-radius:10px;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:45px;position:relative;overflow:hidden}.calendar-day-modern:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent,rgba(255,255,255,.2));opacity:0;transition:opacity .3s ease}.calendar-day-modern:hover:before{opacity:1}.day-number{position:relative;z-index:1}.available-indicator{position:absolute;bottom:4px;width:4px;height:4px;background:var(--accent);border-radius:50%;z-index:1}.calendar-day-modern:hover:not(:disabled){background:linear-gradient(135deg,var(--accent-light),var(--accent));color:#fff;transform:scale(1.05);box-shadow:0 4px 12px #e74c3c4d}.calendar-day-modern:hover:not(:disabled) .available-indicator{background:#fff}.calendar-day-modern.other-month{color:var(--text-lighter);background:transparent;opacity:.4}.calendar-day-modern.other-month:hover{background:transparent;transform:none;box-shadow:none}.calendar-day-modern.unavailable{background:#f5f5f5;color:var(--text-lighter);cursor:not-allowed;opacity:.5}.calendar-day-modern.unavailable:hover{background:#f5f5f5;color:var(--text-lighter);transform:none;box-shadow:none}.calendar-day-modern.available{background:#fff;border:2px solid var(--border);color:var(--primary);font-weight:600}.calendar-day-modern.available:hover{background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:#fff;border-color:var(--accent)}.calendar-day-modern.selected{background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:#fff;border:2px solid var(--accent-dark);font-weight:700;box-shadow:0 6px 20px #e74c3c66;animation:selectPulse .4s ease-out}@keyframes selectPulse{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1)}}.calendar-day-modern.selected:hover{background:linear-gradient(135deg,var(--accent-dark),var(--accent));transform:scale(1.05)}.calendar-day-modern.selected .available-indicator{background:#fff}.calendar-day-modern.today{background:linear-gradient(135deg,var(--primary-light),var(--primary));color:#fff;font-weight:700;box-shadow:0 4px 12px #2c3e504d}.calendar-day-modern.today.available{background:linear-gradient(135deg,var(--primary),var(--primary-dark));border-color:var(--primary)}.calendar-day-modern.today.available:hover{background:linear-gradient(135deg,var(--primary-dark),var(--primary))}.calendar-day-modern.today .available-indicator{background:#fff}.date-picker-container{position:relative}.date-input-display{width:100%;padding:1rem;border:2px solid var(--border);border-radius:10px;font-size:1rem;background:#fff;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease}.date-input-display:hover{border-color:var(--accent);box-shadow:0 0 0 4px #e74c3c0d}.date-input-display.active{border-color:var(--accent);box-shadow:0 0 0 4px #e74c3c1a}.date-input-display .placeholder{color:var(--text-light)}.date-input-display .calendar-icon{color:var(--accent);font-size:1.2rem;transition:transform .3s ease}.date-input-display.active .calendar-icon{transform:rotate(180deg)}.calendar-dropdown{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:1001;background:#fff;border-radius:15px;box-shadow:0 15px 50px #0003;border:1px solid var(--border);animation:dropdownSlide .3s ease-out}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.calendar-modern{max-width:100%;padding:1rem .75rem}.calendar-grid-modern{gap:4px}.calendar-day-modern{min-height:42px;font-size:.85rem;border-radius:8px}.calendar-title-modern{font-size:1rem}.calendar-nav-btn-modern{width:34px;height:34px;font-size:1.2rem}.calendar-weekday-modern{font-size:.75rem;padding:.4rem 0}.calendar-weekdays-modern{gap:4px;margin-bottom:.75rem;padding-bottom:.75rem}.available-indicator{width:3px;height:3px;bottom:3px}}@media(max-width:480px){.calendar-modern{padding:.75rem .5rem}.calendar-header-modern{margin-bottom:1rem;padding:0 .25rem}.calendar-grid-modern{gap:3px}.calendar-day-modern{min-height:38px;font-size:.8rem;border-radius:6px}.calendar-title-modern{font-size:.95rem}.calendar-nav-btn-modern{width:32px;height:32px;font-size:1.1rem}.calendar-weekday-modern{font-size:.7rem;padding:.3rem 0}.calendar-weekdays-modern{gap:3px;margin-bottom:.5rem;padding-bottom:.5rem}.available-indicator{width:2px;height:2px;bottom:2px}.calendar-day-modern.available,.calendar-day-modern.selected{border-width:1px}}.calendar-modern.loading{opacity:.6;pointer-events:none}.calendar-modern.loading:after{content:"";position:absolute;top:50%;left:50%;width:40px;height:40px;margin:-20px 0 0 -20px;border:4px solid var(--bg-light);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.legal-page{min-height:100vh;background:linear-gradient(135deg,#f5f5f5,#e8e8e8);padding:6rem 0 3rem}.legal-container{max-width:900px;margin:0 auto;padding:3rem;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;text-align:left}.legal-container h1{font-size:2.5rem;color:#1a1a1a;margin-bottom:2rem;padding-bottom:1rem;border-bottom:3px solid var(--accent);text-align:left}.legal-section{margin-bottom:2.5rem;text-align:left}.legal-section h2{font-size:1.75rem;color:#2d2d2d;margin-bottom:1rem;margin-top:2rem;text-align:left}.legal-section h3{font-size:1.35rem;color:#3d3d3d;margin-bottom:.75rem;margin-top:1.5rem;text-align:left}.legal-section h4{font-size:1.1rem;color:#4d4d4d;margin-bottom:.5rem;margin-top:1rem;font-weight:600;text-align:left}.legal-section p{line-height:1.8;color:#4d4d4d;margin-bottom:1rem;text-align:left}.legal-section ul{margin-left:2rem;margin-bottom:1rem;text-align:left}.legal-section li{line-height:1.8;color:#4d4d4d;margin-bottom:.5rem;text-align:left}.legal-link{color:var(--accent);text-decoration:none;transition:color .3s ease;word-break:break-all}.legal-link:hover{color:var(--accent-dark);text-decoration:underline}.legal-footer{margin-top:3rem;padding-top:2rem;border-top:1px solid #e0e0e0;font-size:.9rem;color:#666;text-align:left}@media(max-width:768px){.legal-page{padding:5rem 0 2rem}.legal-container{padding:2rem 1.5rem;margin:0 1rem}.legal-container h1{font-size:2rem}.legal-section h2{font-size:1.5rem}.legal-section h3{font-size:1.2rem}.legal-section ul{margin-left:1.5rem}}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.booking-form-admin{background:var(--bg-light);padding:1.5rem;border-radius:8px;margin-bottom:2rem;border:1px solid var(--border)}.booking-form-admin h3{margin-bottom:1rem;color:var(--primary)}.form-grid-admin{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:1rem}.form-grid-admin .form-group{display:flex;flex-direction:column}.form-grid-admin .form-group.full-width{grid-column:1 / -1}.form-grid-admin label{font-weight:600;margin-bottom:.5rem;color:var(--text);font-size:.9rem}.form-grid-admin input,.form-grid-admin select,.form-grid-admin textarea{padding:.75rem;border:1px solid var(--border);border-radius:4px;font-size:.9rem;font-family:inherit}.form-grid-admin input:focus,.form-grid-admin select:focus,.form-grid-admin textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #e74c3c1a}.form-grid-admin input:disabled,.form-grid-admin select:disabled{background:#f5f5f5;cursor:not-allowed}.form-grid-admin textarea{resize:vertical;min-height:80px}
