@keyframes scroll{0%{opacity:1;top:8px}to{opacity:0;top:30px}}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1}}@keyframes copyPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes fab-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}:root{--color-primary:#6B7F5C;--color-primary-dark:#4A5A3F;--color-primary-light:#A8B89D;--color-secondary:#D4C5A9;--color-accent:#B8956A;--color-dark:#2C2C2C;--color-text:#333333;--color-text-light:#666666;--color-bg-light:#F9F7F4;--color-white:#FFFFFF;--color-success:#7FA87F;--color-luxury:#C9A961;--font-heading:'Playfair Display', Georgia, serif;--font-body:'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;--spacing-xs:0.5rem;--spacing-sm:1rem;--spacing-md:2rem;--spacing-lg:3rem;--spacing-xl:4rem;--spacing-xxl:6rem;--container-width:1200px;--border-radius:8px;--transition:all 0.3s ease}*,::after,::before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);font-size:1rem;line-height:1.7;color:var(--color-text);background-color:var(--color-white);overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;line-height:1.3;margin-bottom:1rem;color:var(--color-dark)}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}p{margin-bottom:1rem}.lead,a{color:var(--color-primary)}.lead{font-size:1.25rem;font-weight:500;margin-bottom:1.5rem}a{text-decoration:none;transition:var(--transition);-webkit-tap-highlight-color:transparent}a:hover{color:var(--color-primary-dark)}a:active,a:focus{color:var(--color-primary-dark);outline:0}.container{width:100%;max-width:var(--container-width);margin:0 auto;padding:0 1.5rem}.section{padding:var(--spacing-xl)0;position:relative}.section-dark{background-color:var(--color-bg-light)}.section-header{text-align:center;margin-bottom:var(--spacing-lg)}.section-title{font-size:2.5rem;font-weight:700;color:var(--color-dark);margin-bottom:1rem;text-transform:uppercase;letter-spacing:2px}.section-divider{width:80px;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));margin:1rem auto 1.5rem}.section-subtitle{font-size:1.1rem;color:var(--color-text-light);max-width:600px;margin:0 auto}.navbar{position:fixed;top:0;left:0;right:0;background-color:rgba(255,255,255,.98);box-shadow:0 2px 20px rgba(0,0,0,.1);z-index:1000;transition:var(--transition)}.nav-brand,.navbar .container{display:flex;align-items:center}.navbar .container{justify-content:space-between;padding:1rem 1.5rem}.nav-brand{text-decoration:none}.nav-logo{height:40px;width:auto;transition:var(--transition);aspect-ratio:3/1}.nav-logo:hover{opacity:.8}.nav-menu{display:none;list-style:none;gap:2rem;align-items:center}.nav-menu.active{display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;background-color:var(--color-white);padding:2rem;box-shadow:0 4px 20px rgba(0,0,0,.1);gap:1rem}.nav-link{font-size:.95rem;font-weight:500;color:var(--color-dark);text-transform:uppercase;letter-spacing:1px;transition:var(--transition);padding:.5rem 0}.nav-link:hover{color:var(--color-primary)}.nav-cta{background-color:var(--color-primary);color:var(--color-white)!important;padding:.75rem 1.5rem!important;border-radius:var(--border-radius);-webkit-tap-highlight-color:transparent}.nav-cta:hover{background-color:var(--color-primary-dark)}.nav-cta:active,.nav-cta:focus{background-color:var(--color-primary-dark);color:var(--color-white)!important;outline:0}.nav-toggle{display:flex;flex-direction:column;gap:5px;background:0 0;border:0;cursor:pointer;padding:.5rem;-webkit-tap-highlight-color:transparent;outline:0}.nav-toggle:active,.nav-toggle:focus{outline:0}.nav-toggle span{width:25px;height:3px;background-color:var(--color-primary);border-radius:2px;transition:var(--transition)}.hero{position:relative;height:100vh;min-height:600px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-accent) 100%);overflow:hidden;margin-top:70px}.hero-bg,.hero-overlay{position:absolute;top:0;left:0}.hero-overlay{right:0;bottom:0;opacity:.4;filter:brightness(.8);will-change:transform;overflow:hidden}.hero-bg{width:100%;height:100%;aspect-ratio:16/9;object-fit:cover;object-position:center}.hero-content{position:relative;z-index:2;text-align:center;color:var(--color-white);padding:2rem}.hero-title{font-size:3.5rem;font-weight:700;letter-spacing:8px;margin-bottom:1rem;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.hero-title-svg{width:100%;max-width:400px;height:auto;margin-bottom:1rem;filter:drop-shadow(2px 2px 4px rgba(0,0,0,.3))}.hero-subtitle{font-size:1.5rem;font-weight:300;letter-spacing:3px;margin-bottom:1.5rem;opacity:.95}.hero-text{font-size:1.1rem;max-width:700px;margin:0 auto 2.5rem;opacity:.9;line-height:1.8}.hero-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.scroll-indicator,.scroll-indicator span::before{position:absolute;left:50%;transform:translateX(-50%)}.scroll-indicator{bottom:2rem;z-index:3}.scroll-indicator span{display:block;width:30px;height:50px;border:2px solid var(--color-white);border-radius:15px;position:relative}.scroll-indicator span::before{content:"";top:8px;width:6px;height:6px;background-color:var(--color-white);border-radius:50%;animation:scroll 2s infinite}.btn{display:inline-block;padding:1rem 2rem;font-family:var(--font-body);font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;border:0;border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);text-align:center;-webkit-tap-highlight-color:transparent;outline:0}.btn-primary,.btn-primary:hover{background-color:var(--color-primary);color:var(--color-white)!important}.btn-primary:hover{background-color:var(--color-primary-dark);transform:translateY(-2px);box-shadow:0 4px 15px rgba(0,0,0,.2)}.btn-primary:active,.btn-primary:focus{background-color:var(--color-primary-dark);color:var(--color-white)!important;outline:0}.btn-secondary{background-color:transparent;color:var(--color-white)!important;border:2px solid var(--color-white)}.btn-secondary:hover{background-color:var(--color-white);color:var(--color-primary)!important}.btn-secondary:active,.btn-secondary:focus{background-color:var(--color-white);color:var(--color-primary)!important;outline:0}.btn-block{display:block;width:100%}.about-content{max-width:1000px;margin:0 auto}.about-intro,.about-owner{margin-bottom:var(--spacing-lg)}.about-intro{text-align:center}.about-owner{background-color:var(--color-bg-light);padding:3rem 2rem;border-radius:var(--border-radius)}.owner-info h3{color:var(--color-primary);font-size:2rem;margin-bottom:.5rem}.owner-title{font-size:1.1rem;color:var(--color-text-light);font-style:italic;margin-bottom:1.5rem}.owner-certifications{margin-top:2rem;padding:1.5rem;background-color:var(--color-white);border-radius:var(--border-radius);border-left:4px solid var(--color-primary)}.about-team h3,.owner-certifications h4,.team-member h4{color:var(--color-primary);margin-bottom:1rem;font-size:1.2rem}.owner-certifications ul{list-style:none;padding:0;margin:0}.owner-certifications li{padding:.5rem 0;color:var(--color-text);font-size:1.05rem;line-height:1.6}.owner-certifications li::before{content:"";display:inline-block;width:6px;height:6px;background-color:var(--color-primary);border-radius:50%;margin-right:.75rem;vertical-align:middle}.about-team{margin-bottom:var(--spacing-lg);padding:2rem;background-color:var(--color-bg-light);border-radius:var(--border-radius)}.about-team h3{font-size:1.8rem;margin-bottom:2rem;text-align:center}.team-grid{display:grid;grid-template-columns:1fr;gap:2rem}@media (min-width:768px){.team-grid{grid-template-columns:repeat(2,1fr)}}.team-member{background-color:var(--color-white);padding:2rem;border-radius:var(--border-radius);box-shadow:0 4px 15px rgba(0,0,0,.08);transition:var(--transition)}.benefit-card:hover,.team-member:hover{transform:translateY(-5px);box-shadow:0 6px 25px rgba(0,0,0,.12)}.team-member h4{font-size:1.5rem;margin-bottom:.5rem}.team-member-title{font-size:1rem;color:var(--color-text-light);font-style:italic;margin-bottom:1rem;font-weight:500}.team-member-quote{font-size:.95rem;color:var(--color-text);line-height:1.6;font-style:italic;padding-left:1rem;border-left:3px solid var(--color-primary-light);margin-bottom:0}.about-mission{text-align:center;background-color:var(--color-white);padding:2rem;border-radius:var(--border-radius);box-shadow:0 4px 20px rgba(0,0,0,.05);margin-bottom:var(--spacing-lg)}.about-mission h3,.benefit-card h3{color:var(--color-primary);font-size:1.8rem;margin-bottom:1rem}.about-mission p{font-size:1.1rem;line-height:1.8;color:var(--color-text);max-width:800px;margin:0 auto}.benefits-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-top:var(--spacing-md)}.benefit-card{background-color:var(--color-white);padding:2rem;border-radius:var(--border-radius);text-align:center;box-shadow:0 4px 20px rgba(0,0,0,.08);transition:var(--transition)}.benefit-card:hover{box-shadow:0 8px 30px rgba(0,0,0,.12)}.benefit-icon{font-size:3rem;margin-bottom:1rem}.benefit-card h3{margin-bottom:.5rem;font-size:1.3rem}.benefit-card p{color:var(--color-text-light);margin-bottom:0}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.gallery-item{position:relative;overflow:hidden;border-radius:var(--border-radius);aspect-ratio:4/3;cursor:pointer;transition:var(--transition)}.gallery-item:hover{transform:scale(1.03)}.gallery-placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--color-primary-light) 0%,var(--color-primary) 100%);display:flex;align-items:center;justify-content:center;color:var(--color-white);font-family:var(--font-heading);font-size:1.1rem;font-weight:600;text-align:center;padding:1rem}.gallery-note{text-align:center;margin-top:2rem;padding:1rem;background-color:var(--color-bg-light);border-radius:var(--border-radius)}.gallery-note p{margin:0;color:var(--color-text-light);font-style:italic}.service-tabs{display:flex;justify-content:center;gap:1rem;margin-bottom:var(--spacing-lg);flex-wrap:wrap}.tab-btn{background-color:transparent;border:2px solid var(--color-primary);color:var(--color-primary)!important;padding:.75rem 2rem;font-family:var(--font-body);font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);-webkit-tap-highlight-color:transparent;outline:0}.tab-btn.active,.tab-btn:hover{background-color:var(--color-primary);color:var(--color-white)!important}.tab-btn:active,.tab-btn:focus{background-color:var(--color-primary);color:var(--color-white)!important;outline:0}.service-category{display:none}.service-category.active{display:block}.mobile-category-nav{display:none;position:fixed;right:1rem;top:50%;transform:translateY(-50%);z-index:900;flex-direction:column;gap:10px;opacity:0;pointer-events:none;transition:opacity .3s ease}.mobile-category-nav.visible{opacity:1;pointer-events:auto}.mobile-nav-btn{width:45px;height:45px;padding:0;background:rgba(92,140,111,.95);border:0;border-radius:50%;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,.15);-webkit-tap-highlight-color:transparent;outline:0}.mobile-nav-btn svg{width:20px;height:20px;color:rgba(255,255,255,.85);transition:all .3s ease}.mobile-nav-btn:active,.mobile-nav-btn:hover,.mobile-pricing-nav .mobile-nav-btn:active,.mobile-pricing-nav .mobile-nav-btn:hover{background:#5c8c6f;transform:translateY(-2px) scale(1.08);box-shadow:0 6px 16px rgba(0,0,0,.2)}.mobile-nav-btn:active svg,.mobile-nav-btn:hover svg,.mobile-pricing-nav .mobile-nav-btn:active svg,.mobile-pricing-nav .mobile-nav-btn:hover svg{color:#fff}.mobile-nav-btn.active,.mobile-pricing-nav .mobile-nav-btn.active{background:var(--color-white);box-shadow:0 4px 16px rgba(92,140,111,.4)}.mobile-nav-btn.active svg,.mobile-pricing-nav .mobile-nav-btn.active svg{color:var(--color-primary)}@media (max-width:1024px){.mobile-category-nav{display:flex}}.mobile-pricing-nav{display:none;position:fixed;right:1rem;top:50%;transform:translateY(-50%);z-index:900;flex-direction:column;gap:10px;opacity:0;pointer-events:none;transition:opacity .3s ease}.mobile-pricing-nav.visible{opacity:1;pointer-events:auto}.mobile-pricing-nav .mobile-nav-btn{width:45px;height:45px;padding:0;background:rgba(92,140,111,.95);border:0;border-radius:50%;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,.15);-webkit-tap-highlight-color:transparent;outline:0}.mobile-pricing-nav .mobile-nav-btn svg{width:20px;height:20px;color:rgba(255,255,255,.85);transition:all .3s ease}@media (max-width:1024px){.mobile-pricing-nav{display:flex}}.services-grid{display:grid;grid-template-columns:1fr;gap:2rem}.service-card{background-color:var(--color-white);border-radius:var(--border-radius);overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.08);transition:var(--transition)}.service-card:hover{transform:translateY(-5px);box-shadow:0 8px 30px rgba(0,0,0,.15)}.service-image{position:relative;width:100%;aspect-ratio:4/3;background:linear-gradient(135deg,var(--color-primary-light) 0%,var(--color-secondary) 100%);overflow:hidden}.service-image img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;aspect-ratio:4/3}.service-badge{position:absolute;top:1rem;right:1rem;background-color:var(--color-primary);color:var(--color-white);padding:.5rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:1px}.service-badge.new{background-color:var(--color-accent)}.service-badge.luxury{background-color:var(--color-luxury)}.service-content{padding:2rem}.service-content h3{color:var(--color-dark);margin-bottom:1rem;font-size:1.4rem}.service-content p{color:var(--color-text-light);margin-bottom:1.5rem;line-height:1.7}.service-price{display:flex;align-items:baseline;gap:.5rem;margin-bottom:1rem}.price-from,.pricing-variants span{font-size:.9rem;color:var(--color-text-light)}.price-amount{font-size:1.8rem;font-weight:700;color:var(--color-primary)}.service-link{display:inline-block;color:var(--color-primary);font-weight:600;transition:var(--transition)}.service-link:hover{color:var(--color-primary-dark);transform:translateX(5px)}.pricing-tables{display:grid;grid-template-columns:1fr;gap:2rem;margin-bottom:var(--spacing-lg)}.pricing-table{background-color:var(--color-white);border-radius:var(--border-radius);padding:2rem;box-shadow:0 4px 20px rgba(0,0,0,.08)}.pricing-table-title{color:var(--color-primary);font-size:1.8rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:3px solid var(--color-primary-light)}.pricing-rows{display:flex;flex-direction:column;gap:1.5rem}.pricing-row{padding:1rem 0;border-bottom:1px solid #e0e0e0}.pricing-row:last-child{border-bottom:none}.pricing-row.highlight{background-color:var(--color-bg-light);padding:1.5rem;border-radius:var(--border-radius);border:2px solid var(--color-accent)}.pricing-service{margin-bottom:1rem}.pricing-service strong{display:block;color:var(--color-dark);font-size:1.1rem;margin-bottom:.5rem}.pricing-desc{font-size:.85rem;color:var(--color-text-light);margin:.25rem 0 .75rem;font-style:italic}.pricing-package,.pricing-prices span{font-weight:600;color:var(--color-primary)}.pricing-package{margin-top:.5rem;padding:.5rem .75rem;background-color:rgba(107,127,92,.08);border-left:3px solid var(--color-primary);font-size:.85rem;border-radius:4px}.pricing-variants{display:grid;grid-template-columns:1fr auto;gap:.75rem 1rem;align-items:center}.pricing-prices{display:contents}.pricing-prices span{font-size:1.1rem;text-align:right}.pricing-prices .package{font-size:.95rem;color:var(--color-accent)}.pricing-badge{display:inline-block;background-color:var(--color-accent);color:var(--color-white);padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;margin-left:.5rem}.pricing-cta,.pricing-note{background-color:var(--color-bg-light);border-radius:var(--border-radius)}.pricing-note{margin-top:1.5rem;padding:1rem;border-left:4px solid var(--color-primary);font-size:.95rem}.pricing-cta{text-align:center;padding:2rem}.pricing-cta p{font-size:1.1rem;margin-bottom:1.5rem}.voucher-content{display:grid;grid-template-columns:1fr;gap:3rem}.voucher-image{width:100%;max-width:500px;margin:0 auto}.voucher-img{width:100%;height:auto;border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.15);transition:transform .3s ease;aspect-ratio:4/3}.voucher-img:hover{transform:scale(1.02)}.voucher-info{color:var(--color-dark)}.voucher-features{display:flex;flex-direction:column;gap:1.5rem;margin:2rem 0}.voucher-feature{display:flex;align-items:flex-start;gap:1rem}.feature-icon{font-size:2.5rem;flex-shrink:0}.voucher-feature h4,.voucher-rules h3{color:var(--color-primary);margin-bottom:.25rem}.voucher-feature p{color:var(--color-text-light);margin-bottom:0}.voucher-cta{margin-top:2rem}.voucher-rules{background-color:var(--color-white);padding:2rem;border-radius:var(--border-radius);box-shadow:0 4px 20px rgba(0,0,0,.08)}.voucher-rules h3{margin-bottom:1.5rem}.voucher-rules ol{padding-left:1.5rem}.voucher-rules li{margin-bottom:.75rem;color:var(--color-text);line-height:1.6}.testimonials-grid{display:grid;grid-template-columns:1fr;gap:2rem;margin-bottom:var(--spacing-lg)}.testimonial-card{background-color:var(--color-white);padding:2rem;border-radius:var(--border-radius);box-shadow:0 4px 20px rgba(0,0,0,.08);transition:var(--transition);position:relative}.testimonial-card:hover{transform:translateY(-5px);box-shadow:0 8px 30px rgba(0,0,0,.12)}.testimonial-card::before{content:'"';position:absolute;top:-10px;left:20px;font-size:4rem;font-family:var(--font-heading);color:var(--color-primary-light);opacity:.3;line-height:1}.testimonial-rating{margin-bottom:1rem}.testimonial-rating .star{color:var(--color-accent);font-size:1.2rem;margin-right:2px}.testimonial-text,.testimonials-cta p{margin-bottom:1.5rem;color:var(--color-text)}.testimonial-text{font-size:1.05rem;line-height:1.7;font-style:italic}.testimonial-author{display:flex;flex-direction:column;gap:.25rem}.testimonial-author strong{color:var(--color-primary);font-size:1.1rem;font-family:var(--font-heading)}.google-review::after,.testimonial-date{font-size:.9rem;color:var(--color-text-light)}.testimonials-cta{text-align:center;padding:2rem;background-color:var(--color-bg-light);border-radius:var(--border-radius)}.testimonials-cta p{font-size:1.1rem}.reviews-loading{text-align:center;padding:3rem;color:var(--color-text-light);font-size:1.1rem;animation:pulse 1.5s ease-in-out infinite}.google-review{position:relative}.google-review::after{content:"Google";position:absolute;top:10px;right:15px;font-size:.7rem;opacity:.5;text-transform:uppercase;letter-spacing:1px}.google-rating-summary{text-align:center;padding:2rem;background:linear-gradient(135deg,var(--color-primary-light),var(--color-secondary));border-radius:var(--border-radius);margin-bottom:2rem}.rating-score{font-size:3rem;font-weight:700;color:var(--color-white);font-family:var(--font-heading)}.rating-stars{margin:.5rem 0}.rating-stars .star{color:var(--color-accent);font-size:1.5rem;margin:0 2px}.rating-count{font-size:1rem;color:var(--color-white);opacity:.9}.faq-container{max-width:800px;margin:0 auto}.faq-item,.faq-question{transition:var(--transition)}.faq-item{background-color:var(--color-white);border-radius:var(--border-radius);margin-bottom:1rem;overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.05)}.faq-item:hover{box-shadow:0 4px 15px rgba(0,0,0,.1)}.faq-question{width:100%;background-color:transparent;border:0;padding:1.5rem;display:flex;justify-content:space-between;align-items:center;cursor:pointer;text-align:left;font-family:var(--font-heading);font-size:1.1rem;font-weight:600;color:var(--color-dark);-webkit-tap-highlight-color:transparent;outline:0}.contact-info-text strong,.faq-question:hover{color:var(--color-primary)}.faq-question:active,.faq-question:focus{color:var(--color-primary);outline:0}.faq-question span{flex:1;padding-right:1rem}.faq-icon{flex-shrink:0;color:var(--color-primary);transition:transform .3s ease}.faq-question[aria-expanded=true] .faq-icon{transform:rotate(180deg)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease}.faq-answer.active{max-height:500px}.faq-answer p{padding:0 1.5rem 1.5rem;margin:0;color:var(--color-text);line-height:1.7}.faq-link{color:var(--color-primary);font-weight:600;text-decoration:underline;transition:var(--transition)}.faq-link:hover{color:var(--color-primary-dark)}.contact-grid{display:grid;grid-template-columns:1fr;gap:3rem;margin-bottom:var(--spacing-lg)}.contact-info{display:flex;flex-direction:column;gap:1.5rem}.contact-card{background-color:var(--color-white);padding:1.5rem;border-radius:var(--border-radius);box-shadow:0 2px 15px rgba(0,0,0,.08)}.contact-card h3,.contact-card h4,.contact-cta-box h3{color:var(--color-primary);font-size:1.5rem;margin-bottom:.5rem}.contact-card h4{font-size:1.1rem;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.contact-card .icon{font-size:1.3rem}.contact-owner{font-size:1.1rem;color:var(--color-text);margin-bottom:0}.contact-link{color:var(--color-primary);font-size:1.3rem;font-weight:600}.contact-cta-wrapper,.social-link{background-color:var(--color-bg-light);border-radius:var(--border-radius)}.social-link{display:flex;align-items:center;gap:.75rem;color:var(--color-primary);font-weight:500;padding:.75rem 1rem;transition:var(--transition)}.btn-outline:hover,.social-link:hover{background-color:var(--color-primary);color:var(--color-white)}.contact-cta-wrapper{padding:2rem}.contact-cta-box{text-align:center}.contact-cta-box h3{margin-bottom:1rem;font-size:1.8rem}.contact-cta-box>p{color:var(--color-text-light);margin-bottom:2rem;font-size:1.05rem}.contact-cta-buttons{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.btn-large{padding:1.25rem 2rem;font-size:1.1rem;font-weight:600}.btn-outline{background-color:transparent;border:2px solid var(--color-primary);color:var(--color-primary)!important}.btn-outline:hover{color:var(--color-white)!important}.btn-outline:active,.btn-outline:focus{background-color:var(--color-primary);color:var(--color-white)!important;outline:0}.contact-info-text{margin-top:2rem;padding:1.5rem;background-color:var(--color-white);border-radius:var(--border-radius)}.contact-info-text p,.footer-brand h3{margin-bottom:.5rem}.map-container{margin-top:3rem;border-radius:var(--border-radius);overflow:hidden}.map-placeholder{background:linear-gradient(135deg,var(--color-primary-light) 0%,var(--color-primary) 100%);color:var(--color-white);padding:4rem 2rem;text-align:center}.map-placeholder p{font-size:1.2rem;margin-bottom:1.5rem}.footer{background-color:var(--color-dark);color:var(--color-white);padding:var(--spacing-lg)0 var(--spacing-md)}.footer-content{display:grid;grid-template-columns:1fr;gap:2rem;margin-bottom:2rem;text-align:center}.footer-brand h3{color:var(--color-white);font-size:2rem;letter-spacing:3px}.footer-brand p{color:var(--color-primary-light);margin-bottom:0}.footer-links{display:flex;flex-direction:column;gap:.75rem}.footer-links a{color:var(--color-white);opacity:.8;transition:var(--transition)}.footer-links a:hover{opacity:1;color:var(--color-primary-light)}.footer-contact p{margin-bottom:.5rem;opacity:.9}.footer-contact a{color:var(--color-white);font-weight:600}.footer-bottom{text-align:center;padding-top:2rem;border-top:1px solid rgba(255,255,255,.1)}.footer-bottom p{font-size:.9rem;opacity:.7;margin-bottom:0}.back-to-top{position:fixed;bottom:2rem;right:2rem;width:45px;height:45px;background-color:var(--color-primary);border:0;border-radius:50%;font-size:1.5rem;cursor:pointer;opacity:0;visibility:hidden;transition:var(--transition);z-index:999;-webkit-tap-highlight-color:transparent;outline:0}.back-to-top.visible{opacity:1;visibility:visible}.back-to-top,.back-to-top:hover{color:var(--color-white)!important}.back-to-top:hover{background-color:var(--color-primary-dark);transform:translateY(-3px)}.back-to-top:active,.back-to-top:focus{background-color:var(--color-primary-dark);color:var(--color-white)!important;outline:0}.contact-fab{position:fixed;bottom:5.5rem;right:2rem;width:45px;height:45px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer;opacity:0;visibility:hidden;transition:all .3s ease;z-index:998;box-shadow:0 4px 12px rgba(0,0,0,.15);-webkit-tap-highlight-color:transparent;outline:0}.contact-fab.visible{opacity:1;visibility:visible}.contact-fab.phone-mode{background-color:var(--color-success);color:var(--color-white)}.contact-fab.phone-mode:hover{background-color:#6a8e6a;transform:translateY(-3px) scale(1.05);box-shadow:0 6px 16px rgba(0,0,0,.2)}.contact-fab.phone-mode:active,.contact-fab.phone-mode:focus{background-color:var(--color-success);color:var(--color-white);outline:0}.contact-fab.messenger-mode{background:linear-gradient(135deg,#00b2ff 0,#006aff 100%);color:var(--color-white)}.contact-fab.messenger-mode:hover{background:linear-gradient(135deg,#0099e6 0,#0057cc 100%);transform:translateY(-3px) scale(1.05);box-shadow:0 6px 16px rgba(0,0,0,.2)}.contact-fab.messenger-mode:active,.contact-fab.messenger-mode:focus{background:linear-gradient(135deg,#00b2ff 0,#006aff 100%)}.copied-feedback{animation:copyPulse .3s ease-out;background-color:var(--color-success)!important;color:var(--color-white)!important}.contact-fab svg{width:22px;height:22px}.contact-fab.visible{animation:fab-pulse 2s ease-in-out infinite}.contact-fab:hover{animation:none}@media (max-width:768px){.back-to-top,.contact-fab{right:1rem;bottom:4.5rem;width:45px;height:45px}.contact-fab svg{width:20px;height:20px}.back-to-top{bottom:1.5rem;font-size:1.25rem}}.reveal{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.reveal.active{opacity:1;transform:translateY(0)}.fade-in{animation:fadeIn 1s ease forwards}.fade-in-delay{animation:fadeIn 1s ease .3s forwards;opacity:0}.fade-in-delay-2{animation:fadeIn 1s ease .6s forwards;opacity:0}.fade-in-delay-3{animation:fadeIn 1s ease .9s forwards;opacity:0}@media (min-width:768px){h2{font-size:2.5rem}.section{padding:var(--spacing-xxl)0}.section-title,h1{font-size:3rem}.hero-title-svg{max-width:500px}.nav-toggle{display:none}.nav-logo{height:50px}.nav-menu{display:flex;flex-direction:row;position:static;background-color:transparent;padding:0;box-shadow:none}.hero-title{font-size:4.5rem}.hero-subtitle{font-size:2rem}.benefits-grid,.services-grid{gap:2rem}.benefits-grid,.services-grid,.testimonials-grid{grid-template-columns:repeat(2,1fr)}.pricing-tables,.voucher-content{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr 1fr}.footer-content{grid-template-columns:repeat(2,1fr);text-align:left}.footer-links{align-items:flex-start}}@media (min-width:1024px){.nav-logo{height:60px}.hero-title{font-size:5rem}.hero-title-svg{max-width:600px}.benefits-grid{grid-template-columns:repeat(4,1fr)}.gallery-grid,.services-grid,.testimonials-grid{grid-template-columns:repeat(3,1fr)}.pricing-tables{grid-template-columns:repeat(2,1fr)}.voucher-content{grid-template-columns:1fr 1.5fr;align-items:start}.voucher-image{max-width:400px}.voucher-rules{grid-column:1/-1}}@media (min-width:1400px){.container{max-width:1400px}.footer-content,.services-grid{grid-template-columns:repeat(4,1fr)}}.promo-banner{background:linear-gradient(135deg,#f5e6e0 0,#ebdcd6 100%);padding:2rem 0;text-align:center}.promo-banner-content{display:flex;flex-direction:column;align-items:center;gap:1rem}.promo-banner-badge{display:inline-block;background:#c25a5a;color:var(--color-white);padding:.35rem 1rem;border-radius:50px;font-weight:700;font-size:.75rem;text-transform:uppercase;letter-spacing:2px}.promo-banner-title{font-family:var(--font-heading);font-size:1.8rem;color:#8b3a3a;margin:0}.promo-banner-text{font-size:1.1rem;color:#5c4a4a;margin:0}.promo-banner-text strong{color:#8b3a3a}.promo-banner .btn{margin-top:.5rem;background:#c25a5a}.promo-banner .btn:hover{background:#a34848}@media (min-width:768px){.promo-banner{padding:2.5rem 0}.promo-banner-content{flex-direction:row;justify-content:center;flex-wrap:wrap;gap:1.5rem}.promo-banner-title{font-size:2rem}}@media print{.back-to-top,.contact-form-wrapper,.hero-buttons,.navbar,.scroll-indicator{display:none}.section{page-break-inside:avoid}}