:root{--color-teal:#2ec4b6;--color-mint:#b7f3d0;--color-yellow:#ffe066;--color-peach:#ffadad;--color-lavender:#cdb4db;--color-primary:#2ec4b6;--color-primary-dark:#28afa3;--color-secondary:#ffe066;--color-accent:#ffadad;--color-bg:#fdfcfa;--color-surface:#fff;--color-text:#1f2937;--color-text-light:#6b7280;--color-text-muted:#9ca3af;--shadow-sm:0 1px 3px rgba(46,196,182,.1),0 1px 2px rgba(0,0,0,.06);--shadow-md:0 4px 6px -1px rgba(46,196,182,.1),0 2px 4px -1px rgba(0,0,0,.06);--shadow-lg:0 10px 15px -3px rgba(46,196,182,.15),0 4px 6px -2px rgba(0,0,0,.05);--shadow-xl:0 20px 25px -5px rgba(46,196,182,.15),0 10px 10px -5px rgba(0,0,0,.04);--shadow-2xl:0 25px 50px -12px rgba(46,196,182,.25);--font-display:"Luckiest Guy",cursive;--font-body:"Poppins",sans-serif;--radius:24px;--radius-sm:16px;--radius-lg:32px;--radius-xl:40px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{max-width:1200px;margin:0 auto;padding:0 24px}.nav{position:fixed;top:0;left:0;right:0;background:hsla(40,43%,99%,.85);backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);z-index:1000;border-bottom:1px solid rgba(46,196,182,.1);transition:all .3s ease}.nav-container{max-width:1280px;margin:0 auto;padding:24px 32px;display:flex;align-items:center;justify-content:space-between}.logo{font-family:var(--font-display);font-size:32px;color:var(--color-teal);text-decoration:none;letter-spacing:.02em;text-transform:uppercase;transition:transform .3s ease}.logo:hover{transform:scale(1.05)}.logo span{color:var(--color-yellow);margin:0 4px}.nav-links{display:flex;list-style:none;gap:48px;align-items:center}.nav-links a{font-weight:500;font-size:15px;color:var(--color-text);text-decoration:none;transition:all .3s ease;position:relative;letter-spacing:.02em}.nav-links a:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background:linear-gradient(90deg,var(--color-teal),var(--color-mint));transition:width .3s ease}.nav-links a:hover{color:var(--color-teal)}.nav-links a:hover:after{width:100%}.nav-cta{background:linear-gradient(135deg,var(--color-teal) 0,var(--color-primary-dark) 100%);color:#fff;padding:14px 28px;border-radius:var(--radius-sm);text-decoration:none;font-weight:600;font-size:15px;letter-spacing:.02em;box-shadow:var(--shadow-md);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.nav-cta:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.2),transparent);transition:left .5s ease}.nav-cta:hover:before{left:100%}.nav-cta:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.hero{margin-top:90px;padding:100px 32px 140px;position:relative;overflow:hidden;background:linear-gradient(165deg,rgba(183,243,208,.15),rgba(46,196,182,.08) 35%,rgba(255,224,102,.1) 65%,hsla(0,100%,84%,.12))}.hero-background{position:absolute;top:0;left:0;right:0;bottom:0;z-index:0;overflow:hidden;opacity:.6}.confetti-piece{position:absolute;width:16px;height:16px;border-radius:4px;animation:confetti-fall 10s ease-in-out infinite;opacity:.5}.confetti-piece:first-child{left:5%;background:var(--color-peach);animation-delay:0s;animation-duration:9s}.confetti-piece:nth-child(2){left:15%;background:var(--color-yellow);animation-delay:1.5s;animation-duration:11s}.confetti-piece:nth-child(3){left:30%;background:var(--color-mint);animation-delay:3s;animation-duration:8s}.confetti-piece:nth-child(4){left:45%;background:var(--color-lavender);animation-delay:2s;animation-duration:10s}.confetti-piece:nth-child(5){left:60%;background:var(--color-teal);animation-delay:.8s;animation-duration:9.5s}.confetti-piece:nth-child(6){left:75%;background:var(--color-peach);animation-delay:3.5s;animation-duration:8.5s}.confetti-piece:nth-child(7){left:85%;background:var(--color-yellow);animation-delay:4s;animation-duration:11.5s}.confetti-piece:nth-child(8){left:95%;background:var(--color-mint);animation-delay:2.3s;animation-duration:9.8s}@keyframes confetti-fall{0%{transform:translateY(-120px) rotate(0deg) scale(.8);opacity:0}10%{opacity:.5}85%{opacity:.5}to{transform:translateY(calc(100vh + 120px)) rotate(2turn) scale(1.2);opacity:0}}.hero-content{max-width:1280px;margin:0 auto;position:relative;z-index:1;display:grid;grid-template-columns:1.1fr 1fr;grid-gap:80px;gap:80px;align-items:center}.hero-badge{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,rgba(46,196,182,.12),rgba(183,243,208,.12));border:2px solid rgba(46,196,182,.25);color:var(--color-primary-dark);padding:12px 24px;border-radius:100px;font-weight:600;font-size:14px;margin-bottom:32px;animation:badge-float 4s ease-in-out infinite;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);letter-spacing:.03em}@keyframes badge-float{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-10px) scale(1.02)}}.hero-title{font-family:var(--font-display);font-size:72px;font-weight:400;line-height:1.1;margin-bottom:28px;letter-spacing:.01em;color:var(--color-text);text-transform:uppercase}.hero-title-highlight{display:block;background:linear-gradient(120deg,var(--color-teal) 0,var(--color-mint) 50%,var(--color-teal) 100%);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradient-shift 4s ease infinite}@keyframes gradient-shift{0%,to{background-position:0}50%{background-position:100%}}.hero-description{font-size:19px;font-weight:400;color:var(--color-text-light);margin-bottom:44px;line-height:1.8;max-width:560px}.hero-cta-group{display:flex;gap:20px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;gap:10px;padding:18px 36px;border-radius:var(--radius-sm);font-weight:600;font-size:16px;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;border:none;font-family:var(--font-body);letter-spacing:.02em;position:relative;overflow:hidden}.button-primary{background:linear-gradient(135deg,var(--color-teal) 0,var(--color-primary-dark) 100%);color:#fff;box-shadow:var(--shadow-lg)}.button-primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.25),transparent);transition:left .6s ease}.button-primary:hover:before{left:100%}.button-primary:hover{transform:translateY(-3px);box-shadow:var(--shadow-xl)}.button-secondary{background:var(--color-surface);color:var(--color-text);border:2px solid rgba(46,196,182,.25);box-shadow:var(--shadow-sm)}.button-secondary:hover{border-color:var(--color-teal);background:rgba(46,196,182,.05);transform:translateY(-2px);box-shadow:var(--shadow-md)}.hero-image{position:relative;height:480px}.hero-image-card{position:absolute;width:180px;height:240px;background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-2xl);display:flex;align-items:center;justify-content:center;animation:card-float 7s ease-in-out infinite;border:3px solid rgba(46,196,182,.1)}.card-inner{font-size:96px;filter:drop-shadow(0 4px 8px rgba(0,0,0,.08))}.card-1{top:40px;left:0;background:linear-gradient(135deg,#fff,hsla(0,100%,84%,.3));transform:rotate(-8deg);animation-delay:0s;z-index:3}.card-2{top:100px;right:40px;background:linear-gradient(135deg,#fff,rgba(255,224,102,.3));transform:rotate(6deg);animation-delay:1.5s;z-index:2}.card-3{bottom:60px;left:80px;background:linear-gradient(135deg,#fff,rgba(183,243,208,.3));transform:rotate(-4deg);animation-delay:3s;z-index:1}@keyframes card-float{0%,to{transform:translateY(0) rotate(var(--rotation,0deg))}50%{transform:translateY(-24px) rotate(var(--rotation,0deg))}}.card-1{--rotation:-8deg}.card-2{--rotation:6deg}.card-3{--rotation:-4deg}.stats{background:linear-gradient(135deg,var(--color-teal) 0,var(--color-mint) 50%,var(--color-lavender) 100%);padding:80px 32px;margin-bottom:120px;position:relative;overflow:hidden}.stats:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.08'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");opacity:.4}.stats .container{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:60px;gap:60px;position:relative;z-index:1;max-width:1100px}.stat-item{text-align:center;color:#fff}.stat-number{font-family:var(--font-display);font-size:68px;font-weight:400;margin-bottom:12px;letter-spacing:.02em;text-shadow:0 2px 8px rgba(0,0,0,.1);text-transform:uppercase}.stat-label{font-size:18px;font-weight:500;opacity:.97;letter-spacing:.03em}.section-header{text-align:center;margin-bottom:72px}.section-title{font-family:var(--font-display);font-size:56px;color:var(--color-text);margin-bottom:20px;text-transform:uppercase}.section-description,.section-title{font-weight:400;letter-spacing:.01em}.section-description{font-size:20px;color:var(--color-text-light)}.gallery{padding:120px 32px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:36px;gap:36px;max-width:1280px;margin:0 auto}.gallery-item{animation:fade-in-up .7s cubic-bezier(.4,0,.2,1);animation-fill-mode:both}.gallery-item:first-child{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}.gallery-item:nth-child(5){animation-delay:.5s}.gallery-item:nth-child(6){animation-delay:.6s}@keyframes fade-in-up{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.gallery-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:48px 36px;box-shadow:var(--shadow-md);text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1);border:2px solid rgba(46,196,182,.08);position:relative;overflow:hidden}.gallery-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-teal),var(--color-mint));transform:scaleX(0);transition:transform .4s cubic-bezier(.4,0,.2,1)}.gallery-card:hover:before{transform:scaleX(1)}.gallery-card:hover{transform:translateY(-12px);box-shadow:var(--shadow-xl);border-color:rgba(46,196,182,.2)}.gallery-icon{font-size:72px;margin-bottom:24px;filter:drop-shadow(0 4px 12px rgba(0,0,0,.06));transition:transform .4s cubic-bezier(.4,0,.2,1)}.gallery-card:hover .gallery-icon{transform:scale(1.1) rotate(-5deg)}.gallery-card h3{font-family:var(--font-display);font-size:26px;font-weight:400;margin-bottom:16px;color:var(--color-text);text-transform:uppercase;letter-spacing:.02em}.gallery-card p{color:var(--color-text-light);line-height:1.7;font-weight:400}.how-it-works{background:linear-gradient(180deg,rgba(183,243,208,.12),rgba(205,180,219,.12));padding:120px 32px}.steps{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:56px;gap:56px;max-width:1200px;margin:0 auto}.step{text-align:center;position:relative}.step-number{font-family:var(--font-display);width:100px;height:100px;background:linear-gradient(135deg,var(--color-teal) 0,var(--color-mint) 100%);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:44px;font-weight:400;margin:0 auto 28px;box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.step-number:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:hsla(0,0%,100%,.3);transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease}.step:hover .step-number:before{width:120%;height:120%}.step-content h3{font-family:var(--font-display);font-size:28px;font-weight:400;margin-bottom:16px;color:var(--color-text);text-transform:uppercase;letter-spacing:.02em}.step-content p{color:var(--color-text-light);line-height:1.8;font-weight:400}.pricing{padding:120px 32px}.pricing-cards{display:flex;justify-content:center;max-width:1200px;margin:0 auto}.pricing-card{background:var(--color-surface);border-radius:var(--radius-xl);padding:52px 44px;box-shadow:var(--shadow-md);border:2px solid rgba(46,196,182,.1);transition:all .4s cubic-bezier(.4,0,.2,1);position:relative}.pricing-card:hover{transform:translateY(-12px);box-shadow:var(--shadow-2xl);border-color:rgba(46,196,182,.25)}.pricing-card-featured{background:linear-gradient(135deg,var(--color-teal) 0,var(--color-mint) 60%,var(--color-lavender) 100%);color:#fff;border:none;transform:scale(1.05)}.pricing-card-featured:hover{transform:scale(1.05) translateY(-12px)}.pricing-badge{position:absolute;top:20px;right:24px;background:hsla(0,0%,100%,.3);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;padding:8px 20px;border-radius:100px;font-size:13px;font-weight:600;letter-spacing:.03em}.pricing-header{padding-top:16px}.pricing-header h3{font-family:var(--font-display);font-size:28px;font-weight:400;margin-bottom:20px;text-transform:uppercase;letter-spacing:.02em}.pricing-card-featured .pricing-header h3{color:#fff}.price{display:flex;align-items:baseline;margin-bottom:36px}.price-currency{font-size:32px;font-weight:600;margin-right:6px}.price-amount{font-family:var(--font-display);font-size:64px;font-weight:400;letter-spacing:.01em}.pricing-features{list-style:none;margin-bottom:40px}.pricing-features li{padding:14px 0;border-bottom:1px solid rgba(0,0,0,.06);font-weight:400}.pricing-card-featured .pricing-features li{border-bottom-color:hsla(0,0%,100%,.2)}.pricing-button{display:block;width:100%;padding:18px;background:var(--color-surface);color:var(--color-teal);border:none;border-radius:var(--radius-sm);font-weight:600;font-size:16px;text-align:center;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;letter-spacing:.02em}.pricing-card-featured .pricing-button{background:#fff;color:var(--color-teal)}.pricing-button:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}.contact{padding:120px 32px;background:linear-gradient(180deg,rgba(255,224,102,.08),rgba(183,243,208,.12))}.contact-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:100px;gap:100px;max-width:1280px;margin:0 auto}.contact-info h2{font-family:var(--font-display);font-size:56px;font-weight:400;margin-bottom:24px;color:var(--color-text);text-transform:uppercase;letter-spacing:.01em}.contact-info>p{font-size:18px;font-weight:400;color:var(--color-text-light);margin-bottom:48px;line-height:1.8}.contact-methods{display:flex;flex-direction:column;gap:24px}.contact-method{display:flex;align-items:center;gap:24px;padding:28px;background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-decoration:none;color:var(--color-text);transition:all .3s cubic-bezier(.4,0,.2,1);border:2px solid rgba(46,196,182,.08)}.contact-method:hover{transform:translateX(12px);box-shadow:var(--shadow-lg);border-color:rgba(46,196,182,.2)}.contact-method-icon{font-size:36px;width:68px;height:68px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(46,196,182,.12),rgba(183,243,208,.12));border-radius:var(--radius-sm);flex-shrink:0}.contact-method-label{font-size:14px;font-weight:500;color:var(--color-text-muted);margin-bottom:6px;letter-spacing:.02em}.contact-method-value{font-weight:600;font-size:18px}.contact-form-container{background:var(--color-surface);padding:56px;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);border:2px solid rgba(46,196,182,.1)}.contact-form h3{font-family:var(--font-display);font-size:32px;font-weight:400;margin-bottom:16px;text-transform:uppercase;letter-spacing:.02em}.form-description{color:var(--color-text-light);margin-bottom:36px;line-height:1.7}.form-group{margin-bottom:28px}.form-group label{display:block;font-weight:600;margin-bottom:10px;color:var(--color-text);font-size:15px;letter-spacing:.01em}.form-group input,.form-group textarea{width:100%;padding:16px 18px;border:2px solid rgba(46,196,182,.15);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:16px;transition:all .3s ease;background:hsla(40,43%,99%,.5)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-teal);background:#fff;box-shadow:0 0 0 4px rgba(46,196,182,.08)}.form-submit{width:100%;padding:18px;background:linear-gradient(135deg,var(--color-teal) 0,var(--color-mint) 100%);color:#fff;border:none;border-radius:var(--radius-sm);font-weight:600;font-size:16px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-md);letter-spacing:.02em}.form-submit:hover{transform:translateY(-3px);box-shadow:var(--shadow-xl)}.footer{background:linear-gradient(135deg,#1f2937,#374151);color:#fff;padding:80px 32px 48px}.footer-content{display:grid;grid-template-columns:2fr 1fr;grid-gap:80px;gap:80px;margin-bottom:48px;max-width:1280px;margin-left:auto;margin-right:auto}.footer-logo{font-family:var(--font-display);font-size:36px;font-weight:400;margin-bottom:20px;text-transform:uppercase;letter-spacing:.02em}.footer-logo span{color:var(--color-yellow)}.footer-brand p{color:hsla(0,0%,100%,.75);line-height:1.8;font-weight:400}.footer-links{display:flex;gap:80px}.footer-column h4{font-family:var(--font-display);font-size:20px;font-weight:400;margin-bottom:20px;text-transform:uppercase;letter-spacing:.02em}.footer-column ul{list-style:none}.footer-column ul li{margin-bottom:14px}.footer-column a{color:hsla(0,0%,100%,.7);text-decoration:none;transition:color .3s ease;font-weight:400}.footer-column a:hover{color:var(--color-mint)}.footer-bottom{text-align:center;padding-top:48px;border-top:1px solid hsla(0,0%,100%,.15);color:hsla(0,0%,100%,.6);max-width:1280px;margin-left:auto;margin-right:auto}@media (max-width:968px){.hero-content{grid-template-columns:1fr}.hero-image{display:none}.hero-title{font-size:56px}.nav-links{display:none}.stats .container{grid-template-columns:1fr;gap:40px}.gallery-grid{grid-template-columns:repeat(2,1fr)}.steps{gap:48px}.pricing-cards,.steps{grid-template-columns:1fr}.pricing-card-featured{transform:scale(1)}.contact-grid{grid-template-columns:1fr;gap:56px}.footer-content{grid-template-columns:1fr;gap:48px}.section-title{font-size:44px}}@media (max-width:640px){.hero{padding:80px 24px 100px}.hero-title{font-size:44px}.section-title{font-size:36px}.gallery-grid{grid-template-columns:1fr}.hero-cta-group{flex-direction:column}.button{width:100%;justify-content:center}.nav-container{padding:20px 24px}.logo{font-size:28px}.contact-form-container{padding:36px 28px}.contact-info h2{font-size:44px}.stat-number{font-size:52px}}.service-areas{padding:100px 32px;background:var(--color-bg)}.service-areas-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:40px;gap:40px;max-width:1000px;margin:0 auto}.service-area{background:var(--color-surface);padding:36px;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:2px solid rgba(46,196,182,.08);transition:all .3s ease}.service-area:hover{box-shadow:var(--shadow-md);border-color:rgba(46,196,182,.2);transform:translateY(-4px)}.service-area h3{font-family:var(--font-display),"Luckiest Guy",cursive;font-size:24px;font-weight:400;color:var(--color-teal);margin-bottom:12px;text-transform:uppercase}.service-area p{color:var(--color-text-light);line-height:1.7;font-size:15px}@media (max-width:768px){.service-areas-grid{grid-template-columns:1fr;gap:24px}}.booking-benefits{margin-bottom:40px}.benefit-item{display:flex;align-items:flex-start;gap:16px;padding:20px;background:rgba(46,196,182,.05);border-radius:var(--radius-sm);margin-bottom:16px}.benefit-icon{font-size:28px;flex-shrink:0}.benefit-item strong{display:block;font-size:16px;font-weight:600;color:var(--color-text);margin-bottom:4px}.benefit-item p{margin:0}.benefit-item p,.form-note{font-size:14px;color:var(--color-text-light)}.form-note{text-align:center;margin-top:16px;font-weight:500}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236B7280' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}input[type=date]{cursor:pointer}