*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}html,body{overflow-x:clip}[hidden]{display:none!important}#lb-cookie-notice[hidden]{display:none}:root{--primary:#294659;--primary-light:#3a5e73;--accent:#54a8c3;--accent-deep:#2e7c96;--accent-deeper:#24647b;--accent-glow:rgba(84,168,195,.35);--bg:#e4eff7;--surface:#d5e5ec;--text:#070c10;--muted:#455661;--white:#fcfdfe;--font-display:'Cormorant Garamond',Georgia,serif;--font-body:'Jost',-apple-system,sans-serif;--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--shadow-sm:0 1px 3px rgba(7,12,16,.06);--shadow-md:0 4px 16px rgba(7,12,16,.09);--shadow-lg:0 8px 32px rgba(7,12,16,.12)}body{font-family:var(--font-body);color:var(--text);background:var(--bg);line-height:1.65;font-size:1rem;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}address{font-style:normal}button{cursor:pointer;font-family:inherit}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;line-height:1.15}h2{font-size:clamp(1.75rem,4vw,2.3rem);margin-bottom:1.5rem;color:var(--primary)}h3{font-size:1.25rem}.section-inner{width:min(1200px,100% - 3rem);margin-inline:auto}.nav{position:sticky;top:0;z-index:1000;background:rgba(7,12,16,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--white)}.nav-inner{width:min(1200px,100% - 2rem);margin-inline:auto;display:flex;align-items:center;justify-content:space-between;height:64px;gap:1rem}.nav-brand{display:flex;align-items:center;gap:.5rem;flex-shrink:1;min-width:0;text-decoration:none;color:inherit}.biz-logo{height:40px;width:auto;max-width:120px;object-fit:contain}.biz-logo[data-shape="square"]{height:44px}.biz-logo[data-shape="tall"]{height:48px}.nav-wordmark{font-family:var(--font-display);font-size:1.3rem;font-weight:600;letter-spacing:-.01em;overflow-wrap:anywhere;hyphens:none;white-space:normal;line-height:1.2}.nav-links{display:flex;align-items:center;gap:1.75rem;font-size:.9rem;font-weight:400}.nav-links a{transition:color .2s;position:relative}.nav-links a:hover,.nav-links a:focus-visible{color:var(--accent)}.nav-login{background:var(--accent);color:var(--white);padding:.35rem .9rem;border-radius:var(--radius-sm);font-weight:500}.nav-login:hover{background:var(--primary-light)}.nav-actions{display:flex;align-items:center;gap:1rem;flex-shrink:0}.nav-cta{background:var(--primary);color:var(--white);padding:.45rem 1rem;border-radius:var(--radius-sm);font-weight:500;font-size:.85rem;overflow-wrap:anywhere;hyphens:none;white-space:nowrap}.nav-cta:hover{background:var(--primary-light)}.nav-social-header{display:flex;align-items:center;gap:.5rem}.nav-social-header a{opacity:.7;transition:opacity .2s}.nav-social-header a:hover{opacity:1}.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:0;padding:6px}.nav-toggle span{display:block;width:24px;height:2px;background:var(--white);border-radius:1px;transition:transform .3s,opacity .3s}.nav-toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.nav-toggle.active span:nth-child(2){opacity:0}.nav-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;position:relative;background:var(--text);overflow:hidden}.hero-panel{display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,6vw,5rem);color:var(--white);position:relative;z-index:2;min-width:0}.hero-panel h1{font-size:clamp(2.2rem,5vw,3.4rem);font-weight:700;line-height:1.1;margin-bottom:1rem;overflow-wrap:anywhere;hyphens:none;color:var(--white)}.hero-sub{font-size:clamp(1rem,1.5vw,1.15rem);opacity:.85;line-height:1.5;margin-bottom:2rem;max-width:42ch}.hero-ctas{display:flex;flex-wrap:wrap;gap:.85rem}.btn{display:inline-flex;align-items:center;gap:.4rem;padding:.75rem 1.6rem;border-radius:var(--radius-sm);font-weight:500;font-size:.95rem;border:0;transition:transform .2s,box-shadow .2s,background .2s}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--accent-deep);color:var(--white);box-shadow:0 4px 20px var(--accent-glow)}.btn-primary:hover{background:var(--accent-deeper);box-shadow:0 6px 28px var(--accent-glow)}.btn-wa{background:rgba(255,255,255,.12);color:var(--white);border:1px solid rgba(255,255,255,.2)}.btn-wa:hover{background:rgba(255,255,255,.2)}.hero-visual{position:relative;overflow:hidden;min-width:0}.hero-img-wrap{width:100%;height:100%;overflow:hidden}.hero-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.2,.6,.3,1)}.hero-scrim{position:absolute;inset:0;background:linear-gradient(135deg,rgba(7,12,16,.65) 0%,rgba(7,12,16,.25) 55%,rgba(7,12,16,.1) 100%);z-index:1;pointer-events:none}.divider{line-height:0;overflow:hidden}.divider-tilt{background:var(--surface)}.divider-hero-svc{background:#070c10}.divider svg{display:block;width:100%;height:80px}.divider-tilt svg path{fill:var(--bg)}.divider-tilt-rev{background:var(--bg)}.divider-tilt-rev svg path{fill:var(--surface)}.divider-about-contact{background:var(--bg)}.services{background:var(--bg);padding:5rem 0}.services h2{text-align:center;margin-bottom:1rem}.services-banner{margin-bottom:2rem;border-radius:var(--radius-lg);overflow:hidden;max-height:200px}.services-banner-img{width:100%;height:100%;max-height:200px;object-fit:cover;filter:grayscale(.4) brightness(1.02);transition:filter .3s}.services-banner:hover .services-banner-img{filter:grayscale(0) brightness(1)}.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.75rem}.service-card{background:var(--white);border-radius:var(--radius-md);padding:1.75rem;box-shadow:var(--shadow-sm);transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column;gap:.65rem;border:1px solid var(--surface);min-width:0}.service-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.service-icon{color:var(--accent);margin-bottom:.25rem}.service-card h3{font-size:1.15rem;font-weight:600;overflow-wrap:anywhere;hyphens:none}.service-card p{font-size:.9rem;color:var(--muted);line-height:1.55;flex:1}.service-card-foot{display:flex;align-items:center;justify-content:space-between;margin-top:.5rem;gap:.5rem}.service-price{font-weight:600;font-size:1.05rem;color:var(--primary)}.service-book{background:var(--accent);color:var(--white);padding:.35rem .85rem;border-radius:var(--radius-sm);font-size:.8rem;font-weight:500;transition:background .2s}.service-book:hover{background:var(--primary-light)}.trust{background:var(--surface);padding:2.25rem 0}.trust-items{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem}.trust-item{display:flex;align-items:center;gap:.55rem;font-size:.9rem;color:var(--muted);font-weight:500}.trust-item svg{color:var(--accent);flex-shrink:0}.about{background:var(--bg);padding:5rem 0;position:relative}.about::before{content:'';position:absolute;inset:0;opacity:.04;pointer-events:none;background-image:repeating-linear-gradient(45deg,transparent,transparent 8px,var(--primary) 8px,var(--primary) 9px),repeating-linear-gradient(-45deg,transparent,transparent 8px,var(--primary) 8px,var(--primary) 9px)}.about-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:center}.about-text{min-width:0}.about-text p{font-size:1.05rem;line-height:1.7;color:var(--muted)}.about-visual{min-width:0}.about-img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:var(--radius-md);filter:grayscale(.5) brightness(1.05);transition:filter .3s}.about-img:hover{filter:grayscale(0) brightness(1)}.promo{background:var(--white);padding:3rem 0}.promo-banner{max-width:800px;margin:0 auto}.promo-svg{width:100%;height:auto}.experience{background:var(--primary);color:var(--white);padding:5rem 0}.experience h2{color:var(--white)}.exp-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:center}.exp-visual{min-width:0}.exp-img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:var(--radius-md);filter:grayscale(.4) brightness(.95);transition:filter .3s}.exp-img:hover{filter:grayscale(0) brightness(1.05)}.exp-text{min-width:0}.exp-text p{font-size:1.05rem;line-height:1.7;opacity:.9}.amenities{background:var(--surface);padding:5rem 0}.amenities h2{text-align:center}.amenities-radial{display:flex;flex-direction:column;align-items:center;gap:2.5rem;position:relative}.amenities-core{display:flex;align-items:center;justify-content:center;width:140px;height:140px;border-radius:50%;background:var(--primary);color:var(--white);font-family:var(--font-display);font-size:1.1rem;font-weight:600;text-align:center;padding:1.5rem;line-height:1.2;box-shadow:0 0 0 6px var(--bg),0 0 0 10px var(--surface),0 4px 20px var(--shadow-md);z-index:2}.amenities-orbits{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;max-width:800px}.amenity-chip{display:flex;align-items:center;gap:.5rem;background:var(--white);padding:.55rem 1rem;border-radius:2rem;box-shadow:var(--shadow-sm);font-size:.88rem;font-weight:500;color:var(--text);border:1px solid var(--surface);transition:transform .2s,box-shadow .2s}.amenity-chip:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.amenity-chip-icon{width:18px;height:18px;color:var(--accent);flex-shrink:0}.story{background:var(--bg);padding:5rem 0;text-align:center}.story-body{max-width:62ch;margin:0 auto;font-size:1.1rem;line-height:1.75;color:var(--muted)}.gallery{background:var(--surface);padding:5rem 0}.gallery h2{text-align:center}.gallery-carousel-wrap{position:relative;overflow:hidden}.gallery-carousel{display:none}.gallery-carousel.swiper-initialized{display:block}.gallery-carousel .swiper-slide{text-align:center}.gallery-slide{min-width:0}.gallery-img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:var(--radius-md);cursor:pointer;filter:grayscale(.45) brightness(1.02);transition:filter .3s}.gallery-img:hover{filter:grayscale(0) brightness(1)}.gallery-caption{margin-top:.6rem;font-size:.9rem;color:var(--muted)}.gallery-fallback{display:flex;gap:1.5rem;overflow-x:auto;padding-bottom:.5rem;scroll-snap-type:x mandatory}.gallery-fallback-item{flex:0 0 min(280px,75vw);scroll-snap-align:start;min-width:0}.gallery-carousel.swiper-initialized~.gallery-fallback{display:none}.gallery .swiper-button-prev,.gallery .swiper-button-next{color:var(--primary);background:var(--white);width:40px;height:40px;border-radius:50%;box-shadow:var(--shadow-md)}.gallery .swiper-button-prev::after,.gallery .swiper-button-next::after{font-size:1rem;font-weight:700}.gallery .swiper-pagination-bullet-active{background:var(--accent)}.reviews{background:var(--bg);padding:5rem 0}.reviews h2{text-align:center}.reviews-carousel-wrap{position:relative;overflow:hidden}.reviews-carousel{display:none}.reviews-carousel.swiper-initialized{display:block}.review-slide,.review-fallback-item{text-align:center;padding:2rem 1.5rem;max-width:600px;margin:0 auto}.review-stars{color:#e8b830;font-size:1.1rem;margin-bottom:.75rem}.review-text{font-family:var(--font-display);font-size:1.2rem;font-style:italic;line-height:1.6;color:var(--text);margin-bottom:.75rem}.review-author{font-size:.9rem;color:var(--muted);font-style:normal}.reviews-fallback{display:flex;gap:1.5rem;overflow-x:auto;padding-bottom:.5rem;scroll-snap-type:x mandatory}.reviews-fallback-item{flex:0 0 min(400px,85vw);scroll-snap-align:center;min-width:0}.reviews-carousel.swiper-initialized~.reviews-fallback{display:none}.contact{background:var(--white);padding:5rem 0}.contact-layout{width:min(1200px,100% - 3rem);margin-inline:auto;display:grid;grid-template-columns:380px 1fr;gap:2rem;min-height:500px}.contact-card{background:var(--primary);color:var(--white);padding:2.5rem;border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:1.25rem;box-shadow:var(--shadow-lg)}.contact-card h2{color:var(--white);margin-bottom:.25rem}.contact-item{display:flex;align-items:center;gap:.65rem;font-size:.92rem}.contact-item svg{flex-shrink:0;opacity:.8}.contact-item a{font-weight:500}.contact-item a:hover{text-decoration:underline}.contact-payment,.contact-coverage,.contact-hours{font-size:.88rem;border-top:1px solid rgba(255,255,255,.15);padding-top:1rem}.contact-label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;opacity:.65;margin-bottom:.35rem}.contact-payment-value{font-weight:500}.hours-table{display:flex;flex-direction:column;gap:.3rem}.hours-row{display:flex;justify-content:space-between;font-size:.85rem}.hours-day{opacity:.8}.hours-time{font-weight:500}.contact-map-col{min-width:0;position:relative}.contact-map{width:100%;height:100%;min-height:400px;border-radius:var(--radius-lg);overflow:hidden}.map-embed{width:100%;height:100%;border:0;filter:grayscale(.3) saturate(.9) contrast(1.02)}.contact-form{display:none;height:100%}[data-contact="form"] .contact-map{display:none}[data-contact="form"] .contact-form{display:block}.contact-form-inner{display:flex;flex-direction:column;gap:1rem;padding:2rem;background:var(--surface);border-radius:var(--radius-lg);height:100%}.contact-form-inner h3{font-size:1.3rem;color:var(--primary)}.contact-form-inner input,.contact-form-inner textarea{width:100%;padding:.75rem 1rem;border:1px solid var(--surface);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.9rem;background:var(--white)}.contact-form-inner input:focus,.contact-form-inner textarea:focus{outline:2px solid var(--accent);outline-offset:0}.contact-form-inner .btn{align-self:flex-start}.faqs{background:var(--surface);padding:5rem 0}.faqs h2{text-align:center}.faqs-list{max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:.75rem}.faq-item{background:var(--white);border-radius:var(--radius-md);border:1px solid var(--surface);overflow:hidden}.faq-question{padding:1.1rem 1.5rem;font-weight:600;font-size:1rem;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center}.faq-question::-webkit-details-marker{display:none}.faq-question::after{content:'+';font-size:1.3rem;font-weight:300;transition:transform .25s}.faq-item[open] .faq-question::after{transform:rotate(45deg)}.faq-answer{padding:0 1.5rem 1.2rem;font-size:.92rem;color:var(--muted);line-height:1.6}.branches{background:var(--bg);padding:5rem 0}.branches h2{text-align:center}.branches-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.branch-card{background:var(--white);border-radius:var(--radius-md);padding:1.75rem;box-shadow:var(--shadow-sm);border:1px solid var(--surface)}.branch-card h3{font-size:1.1rem;margin-bottom:.5rem;overflow-wrap:anywhere;hyphens:none}.branch-card address,.branch-card a{font-size:.9rem;color:var(--muted);display:block;margin-bottom:.3rem}.footer{background:var(--text);color:var(--white);padding:3.5rem 0 2rem}.footer-inner{width:min(1200px,100% - 3rem);margin-inline:auto}.footer-brand{display:flex;align-items:center;gap:.6rem;margin-bottom:2rem}.footer-brand .biz-logo{height:48px;width:auto;max-width:160px;object-fit:contain}.footer-brand .biz-logo[data-shape="square"]{height:52px}.footer-wordmark{font-family:var(--font-display);font-size:1.5rem;font-weight:600;overflow-wrap:anywhere;hyphens:none}.footer-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:2.5rem;margin-bottom:2.5rem}.footer-col{min-width:0}.footer-col h4{font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.85rem;opacity:.7;color:var(--white)}.footer-col a,.footer-col span{display:block;font-size:.9rem;opacity:.8;margin-bottom:.45rem}.footer-col a:hover{opacity:1;text-decoration:underline}.footer-socials{display:flex;gap:.75rem}.footer-socials a{opacity:.55;transition:opacity .2s}.footer-socials a:hover{opacity:1}.footer-wa{color:var(--accent)!important}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:1.5rem;text-align:center;font-size:.8rem;opacity:.6}.lightbox{position:fixed;inset:0;z-index:9999;background:rgba(7,12,16,.94);display:flex;align-items:center;justify-content:center;flex-direction:column;padding:2rem}.lightbox-close{position:absolute;top:1.5rem;right:1.5rem;background:none;border:0;color:var(--white);font-size:2.2rem;line-height:1;z-index:3;padding:.5rem}.lightbox-img{max-width:90vw;max-height:75vh;object-fit:contain;border-radius:var(--radius-sm)}.lightbox-caption{color:var(--white);margin-top:1rem;font-size:.95rem;opacity:.8}#lb-cookie-notice{position:fixed;left:12px;right:12px;bottom:12px;z-index:9990;display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:rgba(7,12,16,.96);color:var(--white);padding:14px 18px;border-radius:10px;box-shadow:0 4px 18px rgba(0,0,0,.25);font-size:.85rem;line-height:1.45}#lb-cookie-notice p{margin:0;flex:1 1 260px}#lb-cookie-notice a{color:var(--accent);text-decoration:underline}#lb-cookie-btn{flex:0 0 auto;min-height:44px;padding:10px 22px;border:0;border-radius:8px;background:var(--accent);color:var(--white);font-weight:600}.reveal-hidden{opacity:0;transform:translateY(24px)}.revealed{opacity:1;transform:translateY(0);transition:opacity .7s ease-out,transform .7s ease-out}.service-card,.about-text,.amenity-chip,.story-body,.faq-item,.branch-card{opacity:1}@media(max-width:900px){.hero{grid-template-columns:1fr;min-height:auto}.hero-panel{order:1;padding:3rem 1.5rem 2rem}.hero-visual{order:2;height:50vh}.hero-scrim{background:linear-gradient(0deg,rgba(7,12,16,.65),rgba(7,12,16,.2))}.about-split,.exp-split{grid-template-columns:1fr}.about-visual{order:-1}.about-img{aspect-ratio:16/9}.exp-img{aspect-ratio:16/9}.contact-layout{grid-template-columns:1fr}.contact-map{min-height:350px}}@media(max-width:768px){.nav-links{display:none;flex-direction:column;position:fixed;top:64px;left:0;right:0;background:rgba(7,12,16,.97);padding:1.5rem;gap:1.25rem;font-size:1rem}.nav-links.open{display:flex}.nav-toggle{display:flex}.services-grid{grid-template-columns:1fr 1fr}}@media(max-width:480px){.services-grid{grid-template-columns:1fr}.hero-panel h1{font-size:1.8rem}.nav-wordmark{font-size:1.1rem}.hero-ctas{flex-direction:column}.hero-ctas .btn{width:100%;justify-content:center}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.hero-img{transition:none}.reveal-hidden{opacity:1;transform:none}.revealed{transition:none}}.service-icon .svc-ico{width:28px;height:28px;stroke:currentColor;fill:none;display:block}