*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:auto}body{font-family:Lato,sans-serif;color:#050505;background-color:#f8f8f6;line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:Shippori Mincho,serif;font-weight:400;line-height:1.2}a{text-decoration:none;color:inherit;transition:opacity .3s ease}img{max-width:100%;display:block}ul{list-style:none}.container{max-width:1200px;margin:0 auto;padding:0 2rem}@media (max-width: 768px){.container{padding:0 1rem}}.text-center{text-align:center}.flex{display:flex}html{scroll-behavior:smooth;scroll-padding-top:80px;overflow-x:hidden;width:100%}body{overflow-x:hidden;width:100%}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.glass,.header.is-scrolled{background:#ffffffb3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.2)}section{padding:5rem 0;position:relative}.grain{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9998;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E")}@keyframes grain{0%,to{transform:translate(0)}10%{transform:translate(-5%,-10%)}20%{transform:translate(-15%,5%)}30%{transform:translate(7%,-25%)}40%{transform:translate(-5%,25%)}50%{transform:translate(-15%,10%)}60%{transform:translate(15%)}70%{transform:translateY(15%)}80%{transform:translate(3%,35%)}90%{transform:translate(-10%,10%)}}.header{position:fixed;top:0;left:0;width:100%;z-index:9000;transition:all .4s ease;padding:1.5rem 0}.header.is-scrolled{padding:1rem 0;background:#fffffff2}.header.is-scrolled .logo{color:#050505}.header.is-scrolled .logo span{color:#d4c5a3;opacity:1}.header.is-scrolled .btn-book{border-color:#050505;color:#050505}.header.is-scrolled .btn-book:before{background:#050505}.header.is-scrolled .btn-book:hover{color:#fff}.header.is-scrolled .btn-menu span{background-color:#050505}.header .container{display:flex;justify-content:space-between;align-items:center}.header .logo{font-family:Shippori Mincho,serif;font-size:1.7rem;font-weight:600;letter-spacing:.1em;color:#fff;text-transform:uppercase;transition:color .4s ease}@media (max-width: 768px){.header .logo{font-size:1.6rem}}.header .logo span{color:#fff;opacity:.8;transition:color .4s ease,opacity .4s ease}.header .nav{display:none}.header__actions{display:flex;align-items:center;gap:2rem}@media (max-width: 768px){.header__actions{gap:1rem}}.header .btn-book{padding:.8rem 2rem;border:1px solid #FFFFFF;background:transparent;color:#fff;font-family:Shippori Mincho,serif;letter-spacing:.1em;cursor:pointer;transition:all .5s cubic-bezier(.19,1,.22,1);position:relative;overflow:hidden}@media (max-width: 768px){.header .btn-book{padding:.6rem 1.2rem;font-size:.9rem}}.header .btn-book:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:#fff;opacity:0;transition:opacity .5s cubic-bezier(.19,1,.22,1);z-index:-1}.header .btn-book:active{transform:scale(.96)}.header .btn-book:hover{color:#050505;transform:translateY(-2px);box-shadow:0 10px 25px #ffffff26}.header .btn-book:hover:before{opacity:1}.header .btn-menu{display:flex;flex-direction:column;justify-content:space-between;width:30px;height:20px;background:transparent;border:none;cursor:pointer;z-index:9501}.header .btn-menu span{display:block;width:100%;height:2px;background-color:#fff;transition:all .5s cubic-bezier(.19,1,.22,1)}.header .btn-menu span:nth-child(2){width:70%;margin-left:auto}.header .btn-menu:active span{transform:scaleX(.9)}.header .btn-menu:hover span:nth-child(2){width:100%}.header .btn-menu.is-active span:nth-child(1){transform:translateY(9px) rotate(45deg);background-color:#050505}.header .btn-menu.is-active span:nth-child(2){opacity:0}.header .btn-menu.is-active span:nth-child(3){transform:translateY(-9px) rotate(-45deg);background-color:#050505}.mobile-menu{position:fixed;top:0;left:0;width:100%;height:100vh;background-color:#f8f8f6f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:9500;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .6s cubic-bezier(.4,0,.2,1)}.mobile-menu.is-active{opacity:1;pointer-events:auto}.mobile-menu nav ul{list-style:none;text-align:center;padding:0}.mobile-menu nav ul li{margin:2rem 0;opacity:0;transform:translateY(30px);transition:all .6s cubic-bezier(.19,1,.22,1)}.mobile-menu nav ul li:nth-child(1){transition-delay:.2s}.mobile-menu nav ul li:nth-child(2){transition-delay:.3s}.mobile-menu nav ul li:nth-child(3){transition-delay:.4s}.mobile-menu nav ul li:nth-child(4){transition-delay:.5s}.mobile-menu nav ul li:nth-child(5){transition-delay:.6s}.mobile-menu nav ul a{font-family:Shippori Mincho,serif;font-size:1.5rem;color:#050505;text-decoration:none;display:inline-block;position:relative}.mobile-menu nav ul a:after{content:"";position:absolute;bottom:-5px;left:50%;width:0;height:1px;background:#d4c5a3;transition:all .3s ease;transform:translate(-50%)}.mobile-menu nav ul a:hover:after{width:100%}.mobile-menu.is-active li{opacity:1;transform:translateY(0)}.hero{position:relative;height:100vh;width:100%;overflow:hidden;display:flex;align-items:center;color:#050505}.hero:after{content:"";position:absolute;top:0;left:0;width:100%;height:180px;background:linear-gradient(to bottom,rgba(0,0,0,.4) 0%,transparent 100%);pointer-events:none;z-index:5}.hero__bg{position:absolute;top:0;right:0;width:60%;height:100%;z-index:-1;overflow:hidden}@media (max-width: 768px){.hero__bg{width:100%;height:100vh}}.hero__bg img{width:100%;height:100%;object-fit:cover;filter:grayscale(20%);transform:scale(1.1)}.hero__content{position:relative;z-index:10;padding-left:10vw;max-width:800px;color:#050505}@media (max-width: 768px){.hero__content{padding-left:1.5rem;padding-right:1.5rem;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.3);width:100%}}.hero__subtitle{font-family:Lato,sans-serif;font-size:.8rem;letter-spacing:.5em;text-transform:uppercase;margin-bottom:2rem;display:block}@media (max-width: 768px){.hero__subtitle{font-size:.7rem;letter-spacing:.3em}}.hero__subtitle:before{content:"";display:inline-block;width:40px;height:1px;background:currentColor;margin-right:1rem;vertical-align:middle}.hero__title{font-size:8rem;font-family:Shippori Mincho,serif;font-weight:400;line-height:.9;margin-bottom:3rem;letter-spacing:-.02em}@media (max-width: 768px){.hero__title{font-size:clamp(2.5rem,13vw,4rem);margin-bottom:2rem;word-wrap:break-word;line-height:1.1}}.hero__title span{display:block;margin-left:2rem;font-style:italic;font-weight:300}@media (max-width: 768px){.hero__title span{margin-left:1rem}}.hero__cta{margin-top:3rem}.hero__cta .btn-hero{display:inline-block;padding:1.2rem 4rem;border:1px solid currentColor;color:currentColor;font-family:Lato,sans-serif;text-transform:uppercase;letter-spacing:.2em;font-size:.8rem;text-decoration:none;transition:all .6s cubic-bezier(.19,1,.22,1)}.hero__cta .btn-hero:active{transform:scale(.96)}.hero__cta .btn-hero:hover{background:#050505;color:#fff;border-color:#050505;letter-spacing:.3em;padding:1.2rem 4.5rem;transform:translateY(-2px);box-shadow:0 15px 30px #00000026}@media (max-width: 768px){.hero__cta .btn-hero{border-color:#fff;color:#fff;width:100%;text-align:center;padding:1.2rem 0}.hero__cta .btn-hero:hover{background:#fff;color:#050505}}.collection{background-color:#f8f8f6;padding:8rem 0}.collection__header{text-align:center;margin-bottom:5rem}.collection__header h2{font-size:3rem;margin-bottom:1rem;color:#050505}.collection__header p{color:#555;font-family:Shippori Mincho,serif;font-style:italic}.collection .collection-swiper{margin:0 -1rem;padding-bottom:3rem;overflow:hidden}.collection .collection-swiper .swiper-slide{position:relative;overflow:hidden;border-radius:4px;cursor:pointer;aspect-ratio:3/4;height:auto}.collection .collection-swiper .swiper-slide img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.19,1,.22,1),filter .8s cubic-bezier(.19,1,.22,1);box-shadow:0 4px 15px #0000000d;filter:brightness(1) contrast(1)}@media (min-width: 1024px){.collection .collection-swiper .swiper-slide:hover img{transform:scale(1.05);filter:brightness(.95) contrast(1.05)}}@media (max-width: 768px){.collection .collection-swiper .swiper-slide:active img{transform:scale(.98);opacity:.9}}.collection .collection-swiper .swiper-pagination{bottom:0}.collection .collection-swiper .swiper-pagination .swiper-pagination-bullet{background:#050505;opacity:.5;transition:opacity .3s ease}.collection .collection-swiper .swiper-pagination .swiper-pagination-bullet-active{opacity:1}.lightbox{position:fixed;top:0;left:0;width:100%;height:100vh;background:#000000f2;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:9510;display:flex;justify-content:center;align-items:center;opacity:0;pointer-events:none;transition:all .4s cubic-bezier(.4,0,.2,1)}.lightbox.is-active{opacity:1;pointer-events:auto}.lightbox.is-active .lightbox__content{transform:scale(1)}.lightbox__content{max-width:95%;max-height:90%;position:relative;transform:scale(.95);transition:transform .4s cubic-bezier(.19,1,.22,1);display:flex;flex-direction:column;align-items:center}.lightbox__content img{max-width:100%;max-height:80vh;object-fit:contain;border-radius:4px;box-shadow:0 20px 50px #00000080}.lightbox__caption{color:#fff;text-align:center;margin-top:1rem;font-family:Shippori Mincho,serif;font-size:1.2rem;letter-spacing:.1em}.lightbox__close{position:absolute;top:1rem;right:1rem;width:44px;height:44px;background:#ffffff1a;border-radius:50%;border:1px solid rgba(255,255,255,.3);color:#fff;font-size:1.5rem;cursor:pointer;display:flex;justify-content:center;align-items:center;transition:all .3s ease;z-index:20}.lightbox__close:active{transform:scale(.9);background:#ffffff4d}@media (min-width: 1024px){.lightbox__close{top:2rem;right:3rem;width:50px;height:50px;font-size:2rem}.lightbox__close:hover{background:#fff;color:#050505;transform:rotate(90deg)}}.process{padding:8rem 0;background-color:#fff}.process__title{text-align:center;font-size:2.5rem;margin-bottom:4rem;color:#050505}.process__steps{display:flex;justify-content:space-between;gap:2rem}@media (max-width: 768px){.process__steps{flex-direction:column}}.process__step{flex:1;text-align:center;padding:2rem;border:1px solid transparent;transition:all .3s ease}.process__step:hover{border-color:#d4c5a3;background:#f8f8f6}.process__step .number{font-family:Shippori Mincho,serif;font-size:3rem;color:#d4c5a3;opacity:.5;margin-bottom:1rem;display:block}.process__step h3{font-size:1.2rem;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.1em}.process__step p{color:#555;font-size:.9rem}.footer{background-color:#050505;color:#fff;padding:4rem 0 2rem}.footer .container{display:flex;flex-wrap:wrap;justify-content:space-between;gap:3rem}.footer__brand{flex:1;min-width:200px}.footer__brand h2{font-size:1.5rem;margin-bottom:1rem;color:#d4c5a3}.footer__brand p{font-size:.9rem;color:#ffffffb3;line-height:1.8}.footer__links{flex:2;display:flex;gap:4rem}@media (max-width: 768px){.footer__links{flex-direction:column;gap:2rem}}.footer__links h4{font-size:1rem;margin-bottom:1.5rem;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:.5rem;display:inline-block}.footer__links ul li{margin-bottom:.8rem}.footer__links ul li a{color:#ffffffb3;font-size:.9rem}.footer__links ul li a:hover{color:#d4c5a3}.footer__bottom{margin-top:4rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.1);text-align:center;width:100%}.footer__bottom p{font-size:.8rem;color:#fff6}.booking-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9500;display:flex;align-items:center;justify-content:center;background-color:#0009;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);opacity:0;pointer-events:none;transition:opacity .3s ease}.booking-modal.is-open{opacity:1;pointer-events:auto}.booking-modal.is-open .booking-modal__content{transform:translateY(0)}.booking-modal__content{background:#fffffff2;padding:3rem;max-width:500px;width:90%;max-height:85vh;overflow-y:auto;border-radius:4px;box-shadow:0 10px 30px #0003;position:relative;transform:translateY(20px);transition:transform .4s ease}@media (max-width: 768px){.booking-modal__content{padding:3rem 1.5rem 1.5rem;width:95%}}.booking-modal__content::-webkit-scrollbar{width:6px}.booking-modal__content::-webkit-scrollbar-thumb{background-color:#0003;border-radius:4px}.booking-modal__content{border:1px solid rgba(255,255,255,.5)}.booking-modal__content h2{text-align:center;margin-bottom:2rem;font-size:1.8rem;color:#050505}.booking-modal__close{position:absolute;top:1rem;right:1.5rem;background:#ffffffe6;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:none;font-size:2rem;cursor:pointer;color:#050505;transition:all .3s;z-index:10;box-shadow:0 2px 10px #0000000d}@media (max-width: 768px){.booking-modal__close{top:.5rem;right:.5rem}}.booking-modal__close:hover{color:#d4c5a3;transform:scale(1.05)}.booking-modal__header{text-align:center;margin-bottom:2.5rem}.booking-modal__header h2{font-size:2rem;color:#050505;margin-bottom:.5rem}.booking-modal__header p{font-size:.9rem;letter-spacing:.1em;color:#555}.booking-options{display:flex;flex-direction:column;gap:1.5rem}.booking-options .booking-card{display:block;text-decoration:none;padding:2rem}@media (max-width: 768px){.booking-options .booking-card{padding:3rem 1rem 1.5rem}}.booking-options .booking-card{border:1px solid rgba(5,5,5,.1);background:#ffffff80;border-radius:4px;text-align:center;transition:all .5s cubic-bezier(.19,1,.22,1);position:relative;overflow:hidden}.booking-options .booking-card:hover{transform:translateY(-5px);background:#fffffff2;box-shadow:0 15px 35px #0000001a;border-color:#d4c5a3}.booking-options .booking-card--line{border-left:4px solid #06C755}.booking-options .booking-card--insta{border-left:4px solid #E1306C}.booking-options .booking-card h3{font-size:1.4rem;font-family:Shippori Mincho,serif;color:#050505;margin-bottom:.5rem}.booking-options .booking-card p{font-weight:700;color:#050505;margin-bottom:.8rem;font-size:1rem}.booking-options .booking-card small{display:block;color:#555;font-size:.85rem;line-height:1.5}.faq-section{color:#050505}.faq-grid{display:grid;gap:2rem;max-width:800px;margin:0 auto}.faq-item{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 6px #0000000d;transition:transform .3s ease}.faq-item:hover{transform:translateY(-5px)}.faq-item h3{font-size:1.1rem;margin-bottom:1rem;font-weight:700;color:#050505;border-bottom:1px solid #D4C5A3;padding-bottom:.5rem;display:inline-block}.faq-item p{line-height:1.6;color:#050505}.intro-seal{position:fixed;top:0;left:0;width:100%;height:100vh;background:#f8f8f6;z-index:99999;display:flex;justify-content:center;align-items:center;transition:opacity .8s cubic-bezier(.4,0,.2,1),visibility .8s}.intro-seal.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.intro-seal img{width:180px;opacity:0;animation:sealFadeIn 2.5s cubic-bezier(.19,1,.22,1) forwards}@keyframes sealFadeIn{0%{opacity:0;transform:scale(.8) rotate(-10deg)}40%{opacity:1;transform:scale(1) rotate(0)}80%{opacity:1;transform:scale(1) rotate(0)}to{opacity:0;transform:scale(1.1) rotate(5deg)}}.hero-seal{position:absolute;bottom:-40px;right:10%;width:120px;height:120px;z-index:20;mix-blend-mode:multiply;opacity:.8;animation:rotateSlow 20s linear infinite}@media (max-width: 768px){.hero-seal{width:80px;height:80px;bottom:-30px;right:1rem}}.hero-seal img{width:100%;height:100%;object-fit:contain}@keyframes rotateSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.bg-watermark{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:80vw;height:80vw;z-index:-2;pointer-events:none;opacity:.03}.bg-watermark img{width:100%;height:100%;object-fit:contain;animation:rotateExSlow 120s linear infinite}@keyframes rotateExSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
