*{margin:0;padding:0;box-sizing:border-box}:root{--primary-blue: #0066CC;--deep-blue: #003D7A;--light-blue: #E6F2FF;--accent-blue: #00A3E0;--text-dark: #1A1A1A;--text-light: #666666;--white: #FFFFFF;--pure-white: #FFFFFF;--bg-light: #F8FBFF;--heading-color: #003D7A;--shadow-tint: 0, 102, 204;color-scheme:light}body.dark-mode{--primary-blue: #3B9EFF;--deep-blue: #0A2A4A;--light-blue: #16324D;--accent-blue: #00C2FF;--text-dark: #EAF2FB;--text-light: #9FB3C8;--white: #16212E;--bg-light: #0D1620;--heading-color: #9CCBFF;--shadow-tint: 0, 0, 0;color-scheme:dark}body{font-family:Outfit,sans-serif;color:var(--text-dark);line-height:1.6;overflow-x:hidden;background:var(--white);transition:background-color .25s ease,color .25s ease}header{background:linear-gradient(135deg,var(--deep-blue) 0%,var(--primary-blue) 100%);color:var(--pure-white);padding:1rem 0;position:sticky;top:0;z-index:1000;box-shadow:0 4px 20px rgba(var(--shadow-tint),.2)}.header-content{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;position:relative}.logo{font-family:Syne,sans-serif;font-size:1.5rem;font-weight:800;letter-spacing:-.5px}nav{display:flex;gap:2rem;flex-wrap:wrap}nav a{color:var(--pure-white);text-decoration:none;font-weight:500;transition:all .3s ease;position:relative}nav a:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--accent-blue);transition:width .3s ease}nav a:hover:after{width:100%}.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:32px;height:32px;background:transparent;border:none;cursor:pointer;padding:0}.nav-toggle span{display:block;width:100%;height:2px;background:var(--pure-white);border-radius:2px;transition:all .3s ease}.nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle.open span:nth-child(2){opacity:0}.nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.header-right{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;justify-content:flex-end}.theme-toggle{background:#ffffff26;border:none;color:var(--pure-white);width:38px;height:38px;min-width:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem;cursor:pointer;transition:background .3s ease}.theme-toggle:hover{background:#ffffff47}.hero{background:linear-gradient(135deg,var(--deep-blue) 0%,var(--primary-blue) 50%,var(--accent-blue) 100%);color:var(--pure-white);padding:6rem 2rem;text-align:center;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,255,255,.08) 0%,transparent 50%);pointer-events:none}.hero-content{max-width:800px;margin:0 auto;position:relative;z-index:1;animation:fadeInUp 1s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero h1{font-family:Syne,sans-serif;font-size:3.5rem;font-weight:800;margin-bottom:1rem;line-height:1.1;letter-spacing:-1px}.hero p{font-size:1.25rem;margin-bottom:2rem;opacity:.95}.cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.btn{padding:1rem 2.5rem;border:none;border-radius:50px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block;font-family:Outfit,sans-serif}.btn-primary{background:var(--pure-white);color:var(--primary-blue);box-shadow:0 4px 15px #0003}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 25px #0000004d}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{background:transparent;color:var(--pure-white);border:2px solid var(--pure-white)}.btn-secondary:hover{background:var(--pure-white);color:var(--primary-blue)}section{padding:5rem 2rem}.section-alt{background:var(--bg-light)}.container{max-width:1200px;margin:0 auto}.section-title{font-family:Syne,sans-serif;font-size:2.5rem;font-weight:700;text-align:center;margin-bottom:3rem;color:var(--heading-color)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:3rem}.service-card{background:var(--white);padding:2.5rem;border-radius:20px;box-shadow:0 8px 30px rgba(var(--shadow-tint),.08);transition:all .3s ease;border:2px solid transparent}.service-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px rgba(var(--shadow-tint),.15);border-color:var(--accent-blue)}.service-icon{width:60px;height:60px;background:linear-gradient(135deg,var(--primary-blue),var(--accent-blue));border-radius:15px;display:flex;align-items:center;justify-content:center;font-size:2rem;margin-bottom:1.5rem}.service-card h3{font-size:1.5rem;margin-bottom:1rem;color:var(--heading-color)}.service-card p{color:var(--text-light);margin-bottom:1rem}.price{font-size:1.75rem;font-weight:700;color:var(--primary-blue);margin-top:1rem}.price-detail{font-size:.9rem;color:var(--text-light)}.booking-container{background:var(--white);padding:3rem;border-radius:20px;box-shadow:0 10px 40px rgba(var(--shadow-tint),.1);max-width:800px;margin:0 auto}.calendar-wrapper{margin-bottom:2rem}.calendar{background:var(--bg-light);padding:1.5rem;border-radius:15px}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.calendar-header h3{font-size:1.25rem;color:var(--heading-color)}.calendar-nav{display:flex;gap:1rem}.calendar-nav button{background:var(--primary-blue);color:var(--pure-white);border:none;padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s ease}.calendar-nav button:hover{background:var(--deep-blue)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem}.calendar-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s ease}.calendar-day.header{font-weight:700;color:var(--heading-color);cursor:default}.calendar-day.selectable{background:var(--white)}.calendar-day.selectable:hover{background:var(--light-blue);transform:scale(1.1)}.calendar-day.selected{background:var(--primary-blue);color:var(--pure-white)}.calendar-day.disabled{color:#ccc;cursor:not-allowed}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--heading-color)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:1rem;border:2px solid var(--light-blue);border-radius:10px;font-family:Outfit,sans-serif;font-size:1rem;transition:all .3s ease;background:var(--white);color:var(--text-dark);resize:none}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px rgba(var(--shadow-tint),.1)}.form-group .field-hint{font-size:.85rem;color:var(--text-light);margin-top:.4rem}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.gallery-item{aspect-ratio:1;background:linear-gradient(135deg,var(--light-blue),var(--bg-light));border-radius:15px;overflow:hidden;position:relative;cursor:pointer;transition:all .3s ease}.gallery-item:hover{transform:scale(1.05);box-shadow:0 10px 30px rgba(var(--shadow-tint),.2)}.gallery-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:3rem;color:var(--primary-blue);opacity:.5}.before-after-container{max-width:800px;margin:0 auto}.before-after-slider{position:relative;background:var(--bg-light);border-radius:20px;overflow:hidden;aspect-ratio:16/9}.before-after-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-light);font-size:1.25rem;text-align:center;padding:2rem}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.testimonial-card{background:var(--white);padding:2rem;border-radius:20px;box-shadow:0 8px 30px rgba(var(--shadow-tint),.08);position:relative}.testimonial-card:before{content:'"';position:absolute;top:1rem;left:1.5rem;font-size:4rem;font-family:Georgia,serif;color:var(--light-blue);line-height:1}.testimonial-text{margin-bottom:1.5rem;font-style:italic;color:var(--text-light);position:relative;z-index:1}.testimonial-author{font-weight:700;color:var(--heading-color)}.testimonial-rating{color:#ffb800;margin-top:.5rem}.contact-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:3rem}.contact-card{text-align:center;padding:2rem;background:var(--white);border-radius:15px;box-shadow:0 5px 20px rgba(var(--shadow-tint),.08)}.contact-icon{font-size:2.5rem;margin-bottom:1rem}.contact-card h3{color:var(--heading-color);margin-bottom:.5rem}.contact-card a{color:var(--primary-blue);text-decoration:none;font-weight:600}.contact-card a:hover{text-decoration:underline}footer{background:var(--deep-blue);color:var(--pure-white);padding:3rem 2rem;text-align:center}.footer-content{max-width:1200px;margin:0 auto}.success-message{display:none;background:linear-gradient(135deg,#00c853,#00e676);color:#fff;padding:1.5rem;border-radius:10px;text-align:center;margin-top:1rem;animation:slideIn .5s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.success-message.show{display:block}@media (max-width: 1024px){.container{max-width:100%}section{padding:4rem 1.5rem}.hero{padding:5rem 1.5rem}.hero h1{font-size:2.75rem}.services-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.testimonials-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:repeat(3,1fr)}.contact-info{grid-template-columns:repeat(2,1fr)}.booking-container{max-width:100%;padding:2rem}}@media (max-width: 640px){.header-content{padding:0 1.25rem}.nav-toggle{display:flex}.header-right{width:100%;justify-content:flex-end}nav{display:none;flex-direction:column;gap:0;width:100%;order:3}nav.open{display:flex;padding-top:1rem;margin-top:1rem;border-top:1px solid rgba(255,255,255,.15)}nav a{padding:.75rem 0;width:100%}nav a:after{display:none}.hero{padding:3.5rem 1.25rem}.hero h1{font-size:2.1rem;letter-spacing:-.5px}.hero p{font-size:1.05rem;margin-bottom:1.5rem}.cta-buttons{flex-direction:column;width:100%}.cta-buttons .btn{width:100%;text-align:center;padding:.9rem 1.5rem}section{padding:3rem 1.25rem}.section-title{font-size:1.75rem;margin-bottom:2rem}.services-grid{grid-template-columns:1fr;gap:1.25rem}.service-card{padding:1.75rem}.testimonials-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.contact-info{grid-template-columns:1fr;gap:1.25rem}.booking-container{padding:1.5rem 1.25rem;border-radius:15px}.calendar{padding:1rem}.calendar-header h3{font-size:1.05rem}.calendar-nav button{padding:.4rem .75rem;font-size:.9rem}.calendar-grid{gap:.3rem}.calendar-day{font-size:.85rem;border-radius:6px}.form-group input,.form-group select,.form-group textarea{padding:.85rem;font-size:.95rem}.cost-summary{padding:1.25rem!important}}@media (max-width: 380px){.hero h1{font-size:1.75rem}.hero p{font-size:.95rem}.section-title{font-size:1.5rem}.gallery-grid{grid-template-columns:1fr}.calendar-day{font-size:.75rem}.logo{font-size:1.25rem}}@media (max-width: 360px){.cost-summary-row{grid-template-columns:1fr!important;gap:.75rem!important}}
