@font-face{font-family:Nunito;src:url('assets/rounded-latin.ttf') format('truetype');font-weight:200 1000;font-style:normal;font-display:swap}
@font-face{font-family:ZenMaru;src:url('assets/rounded-ja-500.ttf') format('truetype');font-weight:400 500;font-style:normal;font-display:swap}
@font-face{font-family:ZenMaru;src:url('assets/rounded-ja-700.ttf') format('truetype');font-weight:600 900;font-style:normal;font-display:swap}
:root{--pink:#d33273;--pink-light:#fff0f4;--ink:#563d4a;--cream:#fffdf6;--line:#e6cdd7;--mint:#d9eee5;--yellow:#fbefbc;--lavender:#e9e0f3;--ja:ZenMaru,'Hiragino Maru Gothic ProN',sans-serif;--en:Nunito,sans-serif;--ease:cubic-bezier(.2,1,.3,1);--dock-height:88px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--ja);font-size:14px;line-height:1.9;font-weight:500;letter-spacing:.035em;padding-bottom:var(--dock-height);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select{font:inherit;color:inherit}button,a,select,label{-webkit-tap-highlight-color:transparent}button,select,summary{touch-action:manipulation}button{cursor:pointer;border:0;background:none}img{display:block;width:100%;height:auto}svg{width:26px;height:26px;flex-shrink:0}figure,p,h1,h2,h3{margin:0}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #8154b1;outline-offset:5px}::selection{background:var(--pink);color:white}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:16px;padding:14px 24px;background:var(--pink);color:white;z-index:100}.skip-link:focus{top:10px}.mobile-only{display:none}
.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:0 4%;background:#fffdf6f5;border-bottom:1px solid #f0dfe6;position:sticky;top:0;z-index:30;backdrop-filter:blur(12px)}.brand{display:block;line-height:1;flex-shrink:0}.brand>span{font-family:var(--en);font-size:30px;letter-spacing:-.06em;font-weight:950;color:var(--pink)}.brand sup{font-size:12px;vertical-align:super;margin-left:3px}.brand small{display:block;font-family:var(--en);font-size:8px;letter-spacing:1.9px;margin-top:8px}.desktop-nav{display:flex;align-items:center;gap:28px;font-size:12px;font-weight:700;margin-left:auto}.desktop-nav a{padding:12px 0;transition:color .2s}.desktop-nav a:hover{color:var(--pink)}.header-actions{display:flex;align-items:center;gap:20px}.header-book{display:flex;align-items:center;gap:15px;background:var(--pink);color:white;padding:12px 24px;border-radius:50px;font-size:12px;font-weight:700;white-space:nowrap;box-shadow:0 3px 0 #ab275f;transition:background .2s,translate .2s}.header-book svg{width:21px;height:21px}.header-book:hover{background:#b82460;translate:0 -2px}.menu-toggle{display:none}.mobile-menu{display:none}
.hero{background:var(--pink-light);position:relative;isolation:isolate;overflow:hidden;padding:0 0 12px}.hero:before,.hero:after{content:'';position:absolute;width:460px;height:460px;pointer-events:none;z-index:-1;border-radius:50%;filter:blur(40px);opacity:.48}.hero:before{background:radial-gradient(ellipse,#f5bed6 0%,#f5bed600 69%);left:-190px;top:80px}.hero:after{background:radial-gradient(ellipse,#e7dfb5 0%,#e7dfb500 69%);right:-130px;top:120px}.hero-world{height:555px;max-width:1210px;margin:auto;position:relative}.world-halo{position:absolute;width:470px;height:470px;left:50%;top:34px;translate:-50% 0;border-radius:48% 52% 50% 50%;background:radial-gradient(ellipse at 25% 80%,#fae7b077,transparent 55%),radial-gradient(ellipse at 80% 10%,#f7c3d6aa,transparent 60%),#fff8f9;box-shadow:0 0 75px 45px #fff8f94d;animation:halo-breathe 9s ease-in-out infinite}.hero-copy{position:absolute;left:50%;top:67px;translate:-50% 0;width:500px;text-align:center;z-index:4}.hero-location{font-size:11px;letter-spacing:.16em;font-weight:700}.hero-wordmark{font-family:var(--en);font-size:57px;font-weight:950;color:var(--pink);line-height:1.25;letter-spacing:-.055em;margin-top:9px}.hero-catch{display:block;font-size:57px;font-weight:700;line-height:1.6;letter-spacing:.06em;color:var(--pink);margin-top:14px;animation:copy-in 1s var(--ease) both}.hero-service{display:block;font-size:12px;letter-spacing:.09em;margin-top:16px;font-weight:700}.hero-description{font-size:13px;line-height:2.1;letter-spacing:.08em;margin-top:17px}.hero-facts{display:flex;justify-content:center;gap:9px;margin:18px 0 0;padding:0;list-style:none;font-size:11px;font-weight:700}.hero-facts li{background:#fffefa;padding:5px 15px;border:1px solid #e9d6dc;border-radius:24px}.world-orbit{position:absolute;width:740px;height:740px;left:calc(50% - 370px);top:-100px;border-radius:50%;animation:orbit 65s linear infinite;pointer-events:none;z-index:1}.orbit-part{position:absolute;width:70px;height:70px;left:var(--x);top:var(--y);margin:-35px;animation:counter-orbit 65s linear infinite;color:var(--color)}.orbit-part svg{width:100%;height:100%;filter:drop-shadow(1px 3px 0 #bf6d8f10)}.world-photo{position:absolute;z-index:3;animation:float 6s ease-in-out infinite;transform:rotate(var(--tilt,0deg));background:white;padding:8px;border-radius:8px;box-shadow:0 7px 0 #dc9eb41a}.world-photo img{height:100%;object-fit:cover}.world-photo figcaption{font-family:var(--en);font-size:10px;font-weight:900;letter-spacing:.06em;text-align:center;padding:8px 0 2px;color:var(--pink)}.photo-frame{width:235px;left:30px;top:88px;--tilt:-11deg;padding-bottom:4px}.photo-frame img{aspect-ratio:1;border-radius:3px}.photo-shisa{width:219px;right:32px;top:228px;--tilt:10deg;border-radius:45% 48% 44% 50%;padding:9px 9px 20px;animation-delay:-2.5s}.photo-shisa img{aspect-ratio:1;border-radius:50%;object-position:50% 50%}.photo-shisa figcaption{font-family:var(--ja);font-size:11px;rotate:-8deg}.photo-friends{width:152px;height:152px;right:81px;top:27px;border-radius:50%;padding:6px;animation-delay:-1s}.photo-friends img{border-radius:50%}.photo-parts{width:139px;height:139px;left:129px;top:378px;border-radius:50%;padding:6px;--tilt:7deg;animation-delay:-3.4s}.photo-parts img{border-radius:50%;object-position:45% 50%}.floating-label{position:absolute;left:18px;top:366px;color:var(--pink);font-size:12px;font-weight:700;letter-spacing:.1em;rotate:-12deg}.booking-panel{position:relative;z-index:6;max-width:1120px;width:calc(100% - 80px);margin:0 auto;background:var(--cream);border:1px solid #e9c8d5;border-radius:22px;padding:23px 28px 16px;box-shadow:0 9px 0 #d78cab19;scroll-margin-top:100px}.booking-top{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.booking-top h2{font-size:17px;font-weight:700;color:var(--pink);line-height:1.7;white-space:nowrap}.booking-top h2>span{font-size:13px;color:var(--ink);margin-left:6px}.booking-top>p{font-size:10px;display:flex;align-items:center;gap:6px;white-space:nowrap}.booking-top b{font-family:var(--en);background:#f6e3eb;display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;color:var(--pink);font-weight:900}.booking-top i{font-style:normal;margin-inline:4px}.quick-booking{display:grid;grid-template-columns:1fr 230px;gap:19px;align-items:center}.quick-options{border:0;padding:0;margin:0;min-width:0;display:none;grid-template-columns:repeat(3,1fr);gap:8px}.js .quick-options{display:grid}.quick-option{position:relative;cursor:pointer;display:block;min-width:0}.quick-option>input{position:absolute;opacity:0;width:1px;height:1px}.quick-option-content{display:flex;gap:9px;align-items:center;min-height:90px;border:1.5px solid #e5d8dc;border-radius:13px;padding:12px 9px;position:relative;background:white;transition:border-color .2s,background .2s,box-shadow .2s}.quick-option-content img{width:49px;height:54px;object-fit:cover;border-radius:7px}.quick-option-copy{min-width:0;display:flex;flex-direction:column;line-height:1.5}.quick-option-copy>strong{font-size:11px;font-weight:700;white-space:nowrap}.quick-option-copy>span{font-family:var(--en);font-weight:900;font-size:23px;line-height:1.6;white-space:nowrap;letter-spacing:-.04em}.quick-option-copy>span>small{font-family:var(--ja);font-size:10px;letter-spacing:0}.quick-option-copy>small{font-size:9px;white-space:nowrap}.quick-option-content:after{content:'';position:absolute;right:7px;top:7px;width:12px;height:12px;border-radius:50%;border:1px solid #d7b8c4;background:white}.quick-option>input:checked+.quick-option-content{border-color:var(--pink);background:#fff2f6;box-shadow:0 0 0 1px var(--pink)}.quick-option>input:checked+.quick-option-content:after{background:var(--pink);box-shadow:inset 0 0 0 3px white;border-color:var(--pink)}.quick-option>input:focus-visible+.quick-option-content{outline:3px solid #8154b1;outline-offset:3px}.quick-option:hover .quick-option-content{border-color:var(--pink)}.reserve-button{display:flex;justify-content:center;align-items:center;gap:22px;border-radius:99px;background:var(--pink);color:white;font-size:15px;line-height:1.6;font-weight:700;padding:17px 25px;box-shadow:0 4px 0 #a9235b;transition:background .2s,translate .2s,box-shadow .2s;min-height:60px;position:relative}.reserve-button:hover{background:#b92561;translate:0 -2px;box-shadow:0 6px 0 #a9235b}.reserve-button svg{width:25px;height:25px}.reserve-button:active{translate:0 2px;box-shadow:0 1px 0 #a9235b}.quick-reserve{min-height:78px;gap:20px;padding:10px 20px}.quick-reserve small{display:block;font-size:10px;letter-spacing:.07em;margin-bottom:3px}.external-note{display:block;text-align:center;font-size:9px;color:#886873;margin-top:8px}.booking-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:16px;padding-top:12px;border-top:1px dashed #e4cfd7;font-size:10px}.booking-bottom>a{white-space:nowrap}.booking-bottom a span{font-family:var(--en);font-weight:800;font-size:12px;margin-left:8px}.hero-foot{display:flex;align-items:center;justify-content:space-between;max-width:1120px;width:calc(100% - 80px);margin:19px auto 0;font-family:var(--en);font-size:9px;letter-spacing:.12em}.motion-control{font-family:var(--ja);font-size:10px;letter-spacing:.02em;padding:7px 13px;min-height:35px;border:1px solid #dbc3ce;border-radius:30px}.noscript-plans{font-size:13px}.noscript-plans a{text-decoration:underline;margin:8px;display:inline-block}
.section{padding:100px max(6%,calc((100vw - 1180px)/2))}.eyebrow{font-family:var(--en);font-size:11px;letter-spacing:.13em;font-weight:800}.section-heading{font-size:clamp(30px,3.15vw,47px);font-weight:700;letter-spacing:.065em;line-height:1.65}.section-heading span{color:var(--pink)}.section-description{font-size:14px;line-height:2.2;margin-top:23px}.section-top{text-align:center;margin-bottom:50px}.section-top .eyebrow{color:var(--pink);margin-bottom:18px}.intro{text-align:center;position:relative;overflow:hidden;padding-top:100px;padding-bottom:0}.intro .section-heading{margin-top:22px}.intro-story{font-size:16px;line-height:2.6;letter-spacing:.08em;margin-top:36px}.store-introduction{font-size:12px;line-height:2.25;max-width:650px;margin:31px auto 0;color:#7e6571}.intro-flower{position:absolute;width:100px;height:100px;left:12%;top:200px;color:#ed9abc;animation:turn 36s linear infinite}.intro-cloud{position:absolute;width:120px;height:100px;right:10%;top:344px;color:#d8ece4;animation:float 6.5s ease-in-out infinite}.intro-gallery{display:grid;grid-template-columns:1fr .72fr 1fr;gap:27px;align-items:center;margin-top:72px}.intro-gallery>img{aspect-ratio:1.24;object-fit:cover;border-radius:10px;rotate:-5deg}.intro-gallery>img:last-child{rotate:5deg}.intro-gallery>div{display:flex;flex-direction:column;align-items:center;gap:25px}.intro-gallery>div>span{font-family:var(--en);font-size:clamp(21px,3.15vw,46px);font-weight:900;color:var(--pink);line-height:1.15;letter-spacing:-.035em;rotate:-6deg}.intro-gallery>div>svg{width:62px;height:62px;color:#e89dbc;rotate:10deg;animation:float 5s ease-in-out infinite}
.workshops{margin-top:50px;background:#f9eef3;position:relative;border-radius:60px 60px 0 0;padding-top:84px;padding-bottom:75px}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.plan-card{background:var(--cream);border-radius:26px;overflow:hidden;border:1px solid #e8d5dd;position:relative;align-self:start}.plan-photo{display:block;position:relative;padding:22px 22px 0;background:var(--plan-color);overflow:hidden}.plan-photo>img{aspect-ratio:1.1;object-fit:cover;border-radius:16px 16px 5px 5px;transition:scale .8s var(--ease)}.plan-photo:hover>img{scale:1.04}.plan-photo>span{position:absolute;top:8px;left:12px;font-family:var(--en);font-size:44px;line-height:1.2;color:var(--pink);font-weight:900;rotate:-9deg;-webkit-text-stroke:2px var(--cream);paint-order:stroke fill}.plan-body{padding:24px}.plan-english{font-family:var(--en);font-size:9px;font-weight:800;letter-spacing:.08em;color:var(--pink);margin-bottom:8px}.plan-card h3{font-size:19px;letter-spacing:.015em;font-weight:700;line-height:1.65;min-height:62px}.plan-card h3>small{display:block;font-size:12px;margin-top:4px;color:#826570;font-weight:500}.plan-catch{font-size:13px;font-weight:700;margin-top:10px}.plan-description{font-size:12px;line-height:2.1;margin-top:10px;min-height:77px}.plan-price-row{display:flex;align-items:end;justify-content:space-between;gap:8px;margin:23px 0 20px}.plan-price{font-family:var(--en);font-size:38px;font-weight:900;letter-spacing:-.045em;white-space:nowrap;line-height:1}.plan-price>span{font-size:22px}.plan-price>small{font-size:10px;font-family:var(--ja);letter-spacing:0;margin-left:3px}.plan-time{font-size:11px;white-space:nowrap;line-height:1.9;text-align:right}.plan-card .reserve-button{font-size:13px;padding:14px 15px;min-height:52px;justify-content:space-between;gap:10px}.plan-card .external-note{font-size:9px;margin-top:9px}.plan-specs{margin:21px 0 0;font-size:11px;line-height:1.9}.plan-specs>div{display:grid;grid-template-columns:69px 1fr;gap:8px;border-bottom:1px solid #ebdce2;padding:11px 0}.plan-specs dt{font-weight:700}.plan-specs dd{margin:0}.plan-conditions{font-size:11px;margin-top:8px}.plan-conditions summary{cursor:pointer;list-style:none;font-weight:700;display:flex;justify-content:space-between;align-items:center;padding:13px 0;min-height:44px}.plan-conditions summary:after{content:'＋';color:var(--pink);font-size:17px}.plan-conditions[open] summary:after{content:'−'}.plan-conditions p{line-height:2.1;padding:0 0 12px;color:#7b626d}.price-note{text-align:center;font-size:10px;margin-top:25px;line-height:2}.more-menu{display:flex;align-items:center;gap:20px;border-top:1px dashed #d4b7c4;padding-top:30px;margin-top:32px}.more-menu>svg{width:47px;height:47px;color:var(--pink)}.more-menu h3{font-size:15px;font-weight:700}.more-menu p{font-size:11px;margin-top:4px}.more-menu>a{font-size:12px;font-weight:700;margin-left:auto;border-bottom:1px solid;padding:8px 0}.happy-ribbon{overflow:hidden;background:var(--mint);border-block:1px solid #b7d5c8;padding:14px 0;rotate:-2deg;width:100%;position:relative;z-index:3}.happy-ribbon>div{display:flex;width:max-content;align-items:center;gap:40px;animation:ribbon 32s linear infinite}.happy-ribbon span{font-family:var(--en);font-size:30px;font-weight:900;letter-spacing:-.015em;white-space:nowrap}.happy-ribbon svg{width:38px;height:38px;color:var(--pink)}
.howto{padding-top:95px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.step-image{position:relative}.step-image img{aspect-ratio:1.23;object-fit:cover;border-radius:50% 50% 8px 8px}.step-image span{position:absolute;left:12px;bottom:-23px;font-family:var(--en);font-size:68px;font-weight:900;line-height:1;color:var(--pink-light);-webkit-text-stroke:1px var(--pink)}.step:nth-child(2) .step-image{rotate:3deg}.step:nth-child(3) .step-image{rotate:-3deg}.step h3{font-size:18px;letter-spacing:.015em;margin-top:37px;font-weight:700}.step p{font-size:12px;line-height:2.1;margin-top:13px}.visit-note{border-block:1px solid var(--line);display:flex;align-items:center;gap:32px;margin-top:48px;padding:25px 0}.visit-note>span{font-size:12px;font-weight:700;color:var(--pink);white-space:nowrap}.visit-note p{font-size:12px;line-height:2}.visit-note>a{display:flex;align-items:center;gap:17px;font-size:12px;font-weight:700;margin-left:auto;white-space:nowrap}.visit-note svg{width:24px;height:24px}
.gallery-section{background:var(--lavender);padding:65px 0 35px;position:relative;border-radius:65px 65px 0 0;overflow:hidden}.gallery-heading{position:relative;text-align:center;margin:0 6% 44px}.gallery-heading .eyebrow{font-size:10px}.gallery-heading h2{margin-top:18px;color:#77518b}.gallery-heading h2 br{display:none}.gallery-flower{position:absolute;right:11%;top:0;width:80px;height:80px;color:var(--pink);animation:turn 38s linear infinite}.photo-gallery{display:flex;gap:27px;overflow:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:12px 6% 26px;scroll-behavior:smooth}.photo-gallery::-webkit-scrollbar{display:none}.photo-gallery figure{flex:0 0 27%;scroll-snap-align:center;rotate:-3deg;min-width:220px;transition:rotate .6s var(--ease)}.photo-gallery figure:nth-child(even){rotate:3deg;margin-top:25px}.photo-gallery figure:hover{rotate:0deg}.photo-gallery img{aspect-ratio:1;object-fit:cover;border:8px solid var(--cream);border-radius:3px}.photo-gallery figcaption{font-size:11px;text-align:center;margin-top:15px}.gallery-bottom{display:flex;justify-content:space-between;align-items:center;padding:5px 6%}.gallery-bottom>span{font-family:var(--en);font-size:9px;font-weight:800;letter-spacing:.1em}.gallery-bottom>div{display:flex;gap:12px}.gallery-bottom button{width:42px;height:42px;border:1px solid #9d80af;border-radius:50%;display:grid;place-items:center;font-size:20px;transition:background .2s}.gallery-bottom button:hover{background:#fff7}
.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:9%;padding-block:100px}.faq-heading .eyebrow{color:var(--pink)}.faq-heading h2{font-size:35px;margin-top:22px}.faq-heading>p:not(.eyebrow){font-size:13px;line-height:2.1;margin-top:25px}.phone-link{display:inline-block;font-family:var(--en);font-size:25px;font-weight:900;color:var(--pink);border-bottom:1px solid;margin-top:24px}.phone-caption{display:block;font-size:10px;margin-top:8px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{list-style:none;display:flex;align-items:center;gap:13px;font-size:13px;font-weight:700;cursor:pointer;padding:22px 0;line-height:1.8}.faq-list summary::-webkit-details-marker,.plan-conditions summary::-webkit-details-marker{display:none}.faq-list summary>span{font-family:var(--en);font-size:21px;font-weight:900;color:var(--pink);flex-shrink:0}.faq-list summary:after{content:'＋';margin-left:auto;font-size:19px;flex-shrink:0;color:var(--pink)}.faq-list details[open] summary:after{content:'−'}.faq-answer{font-size:12px;line-height:2.2;padding:0 18px 26px 35px;color:#7d6570}.access{display:grid;grid-template-columns:1fr 1.1fr;gap:9%;background:#f4f5e9;border-radius:60px 60px 0 0;padding-block:80px}.access .eyebrow{color:#748c6c}.access h2{font-size:35px;margin-top:20px}.access h3{font-size:17px;margin-top:35px}.access address{font-style:normal;font-size:13px;line-height:2;margin-top:12px}.access dl{font-size:12px;line-height:2;margin:24px 0}.access dl>div{display:grid;grid-template-columns:82px 1fr;gap:15px;padding:12px 0;border-bottom:1px solid #d9dccd}.access dt{font-weight:700}.access dd{margin:0}.outline-button{display:flex;justify-content:space-between;align-items:center;gap:18px;font-size:12px;font-weight:700;border:1px solid;border-radius:40px;padding:15px 22px;min-height:55px;transition:background .2s}.outline-button:hover{background:#e0e6d3}.access-visual{align-self:center}.map-wrap{position:relative;background:#e4e7dc;height:375px;border-radius:45% 45% 12px 12px;overflow:hidden;border:7px solid var(--cream)}.map-wrap iframe{width:100%;height:100%;border:0;filter:saturate(.7)}.map-sticker{position:absolute;bottom:26px;left:25px;background:var(--yellow);display:flex;align-items:center;gap:8px;padding:9px 16px;rotate:-7deg;box-shadow:2px 3px 0 #56462922;font-family:var(--en);font-size:12px;font-weight:900;pointer-events:none}.map-sticker svg{height:19px;width:19px}.instagram-link{display:flex;align-items:center;gap:27px;margin-top:35px}.instagram-link>img{width:100px;height:100px;object-fit:cover;border:5px solid var(--cream);rotate:7deg;border-radius:8px}.instagram-link>span{font-family:var(--en);font-size:26px;font-weight:900}.instagram-link small{display:block;font-family:var(--ja);font-size:11px;font-weight:500;margin:5px 0}.instagram-link b{margin-left:30px;font-weight:500}
.finale{text-align:center;background:var(--pink-light);position:relative;overflow:hidden;isolation:isolate;padding-block:86px 80px}.finale h2{font-size:44px;line-height:1.7;letter-spacing:.09em;color:var(--pink);margin-top:20px;position:relative;z-index:1}.finale>p:not(.eyebrow){font-size:14px;line-height:2.1;margin-top:22px;position:relative;z-index:1}.finale-reserve{max-width:370px;margin:30px auto 0;min-height:66px;font-size:16px;z-index:1}.finale-phone{display:inline-block;font-size:11px;margin-top:25px;border-bottom:1px solid;position:relative;z-index:1}.finale-heart{position:absolute;width:110px;height:110px;left:17%;top:170px;color:#e995b7;rotate:-15deg;animation:float 5.8s ease-in-out infinite}.finale-flower{position:absolute;width:130px;height:130px;right:15%;top:84px;color:#e4bb5e;animation:turn 35s linear infinite}.deco-confetti{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}.confetti-piece{position:absolute;width:15px;height:15px;opacity:0;will-change:transform,opacity}.confetti-piece svg{width:100%;height:100%}.site-footer{background:var(--pink);color:white;padding:42px 6% 26px}.footer-wordmark{display:flex;align-items:center;gap:30px;font-family:var(--en);font-size:clamp(50px,11.7vw,182px);font-weight:950;line-height:1;letter-spacing:-.055em}.footer-wordmark>span{writing-mode:vertical-rl;font-size:12px;letter-spacing:.12em;margin-left:auto}.footer-links{display:flex;gap:28px;align-items:center;font-size:11px;padding:27px 0;border-bottom:1px solid #ffffff50}.footer-links button{font-size:11px;padding:0}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:22px;font-size:9px}.booking-dock{position:fixed;inset:auto 0 0;z-index:40;display:flex;justify-content:center;align-items:center;gap:27px;min-height:var(--dock-height);padding:12px 4%;background:#fffdf9f7;border-top:1px solid #e6c4d2;box-shadow:0 -6px 25px #8d37630c;backdrop-filter:blur(12px)}.dock-intro{display:flex;flex-direction:column;line-height:1.6}.dock-intro>span{font-family:var(--en);font-size:9px;letter-spacing:.1em;font-weight:800;color:var(--pink)}.dock-intro>strong{font-size:14px;font-weight:700;margin-top:4px}.dock-select-wrap{display:flex;flex-direction:column;gap:3px;min-width:260px}.dock-select-wrap>label{display:flex;align-items:baseline;justify-content:space-between;gap:5px;font-size:9px;padding-inline:3px;color:#80636f}.dock-select-wrap>label strong{font-family:var(--en);font-size:12px;color:var(--pink);white-space:nowrap}main{overflow-x:clip}.dock-select-wrap select{display:none;width:100%;border:1px solid #d9c0cb;border-radius:8px;font-size:13px;line-height:1.5;background:var(--cream);padding:10px 26px 10px 12px;min-height:43px;cursor:pointer;font-weight:700}.js .dock-select-wrap select{display:block}.js .nojs-selection{display:none}.nojs-selection{font-size:13px}.dock-reserve{min-height:58px;min-width:255px;gap:27px;padding:9px 24px;font-size:16px}.dock-reserve small{display:block;font-size:9px;font-weight:500;text-align:center;letter-spacing:.04em}.dock-phone{font-size:11px;font-weight:700;text-decoration:underline;white-space:nowrap}.booking-dock select:focus{outline-offset:2px}
dialog{width:calc(100% - 32px);max-width:570px;max-height:85svh;overflow:auto;border:0;border-radius:22px;padding:43px;color:var(--ink);background:var(--cream);overscroll-behavior:contain}dialog::backdrop{background:#44303cbc;backdrop-filter:blur(7px)}.dialog-close{position:absolute;top:8px;right:16px;font-size:31px;width:38px;height:38px}dialog h2{font-size:23px;margin:20px 0}dialog p:not(.eyebrow){font-size:13px;line-height:2.1;margin:18px 0}dialog a{font-size:12px;text-decoration:underline}.modal-open{overflow:hidden}.reveal{opacity:1;transform:none}.js .reveal{opacity:0;transform:translateY(26px);transition:opacity .85s var(--ease),transform 1.1s var(--ease)}.js .reveal.is-visible{opacity:1;transform:none}.plan-card:nth-child(2),.step:nth-child(2){transition-delay:100ms}.plan-card:nth-child(3),.step:nth-child(3){transition-delay:200ms}.motion-paused *, .motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important}
@keyframes orbit{to{transform:rotate(360deg)}}@keyframes counter-orbit{to{transform:rotate(-360deg)}}@keyframes turn{to{rotate:360deg}}@keyframes float{0%,100%{translate:0 0}50%{translate:0 -13px}}@keyframes halo-breathe{0%,100%{scale:1;rotate:-3deg}50%{scale:1.04;rotate:4deg}}@keyframes copy-in{from{opacity:0;translate:0 20px}to{opacity:1;translate:0 0}}@keyframes ribbon{to{transform:translateX(-50%)}}
@media(min-width:1700px){.hero-world{height:580px;max-width:1380px}.hero-copy{top:72px}.photo-frame{left:70px;width:253px}.photo-shisa{right:65px;width:232px}.photo-friends{right:125px;width:163px;height:163px}.photo-parts{left:175px;top:402px}.floating-label{left:76px;top:381px}.booking-panel,.hero-foot{max-width:1200px}}
@media(max-width:1180px){.desktop-nav{gap:18px;font-size:11px}.site-header{gap:20px}.header-book{padding-inline:18px}.hero-world{height:535px}.photo-frame{width:190px;left:13px;top:108px}.photo-shisa{width:185px;right:10px;top:235px}.photo-friends{width:122px;height:122px;right:65px;top:36px}.photo-parts{width:119px;height:119px;left:87px;top:353px}.floating-label{left:8px;top:331px;font-size:10px}.hero-copy{top:59px;width:450px}.hero-catch{font-size:52px}.hero-wordmark{font-size:53px}.world-orbit{width:670px;height:670px;left:calc(50% - 335px);top:-70px}.orbit-part{width:58px;height:58px;margin:-29px}.booking-panel{width:calc(100% - 48px);padding:20px}.quick-booking{grid-template-columns:1fr 207px;gap:13px}.quick-option-content{padding:10px 8px;gap:7px}.quick-option-content img{width:36px;height:46px}.quick-option-copy>strong{font-size:10px}.quick-option-copy>span{font-size:21px}.quick-option-copy>small{font-size:8px}.booking-top>p{font-size:9px}.booking-top h2{font-size:16px}.booking-top h2>span{font-size:11px}.section{padding-inline:5%}.plan-grid{gap:18px}.plan-body{padding:20px}.plan-card h3{font-size:17px}.plan-price{font-size:34px}.plan-price-row{gap:5px}.plan-price>small{font-size:9px}.plan-time{font-size:10px}.plan-description{min-height:100px}.plan-photo{padding:18px 18px 0}.steps{gap:23px}.step h3{font-size:16px}.intro-flower{left:6%;width:83px;height:83px}.intro-cloud{right:5%;width:99px}.booking-dock{gap:20px}.dock-select-wrap{min-width:235px}.dock-reserve{min-width:224px}.dock-intro>strong{font-size:12px}.dock-phone{display:none}.faq{gap:7%}.faq-heading h2,.access h2{font-size:31px}.access{gap:6%}}
@media(max-width:900px){.desktop-nav{display:none}.site-header{height:74px}.header-actions{margin-left:auto}.menu-toggle{display:block;width:25px;height:38px;padding:5px 0}.menu-toggle span{display:block;width:24px;height:1px;background:var(--ink);margin:7px 0;transition:transform .25s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-menu{display:flex;flex-direction:column;position:fixed;top:74px;left:0;right:0;z-index:29;background:var(--cream);padding:22px 6%;border-bottom:1px solid var(--line);visibility:hidden;opacity:0;translate:0 -12px;transition:opacity .25s,translate .25s,visibility .25s}.mobile-menu.is-open{visibility:visible;opacity:1;translate:0 0}.mobile-menu a{padding:13px 0;border-bottom:1px solid var(--line);font-weight:700;font-size:13px}.mobile-menu a:first-child{color:var(--pink)}.mobile-menu a>span{font-family:var(--en);font-size:10px;float:right}.mobile-menu a:last-child{border:0;font-size:12px}.hero-copy{width:400px;top:54px}.hero-catch{font-size:45px}.hero-wordmark{font-size:47px}.hero-service{font-size:11px}.hero-location{font-size:10px}.hero-description{font-size:12px}.photo-frame{width:156px;left:-22px;top:116px}.photo-shisa{width:148px;right:-12px;top:245px}.photo-friends{width:102px;height:102px;right:40px;top:26px}.photo-parts{width:99px;height:99px;left:39px;top:356px}.floating-label{top:303px;left:4px;font-size:9px}.world-orbit{width:595px;height:595px;left:calc(50% - 297.5px);top:-26px}.world-halo{width:440px;height:440px;top:25px}.hero-world{height:505px}.booking-top>p{display:none}.booking-top{margin-bottom:13px}.quick-option-content img{display:none}.quick-option-content{padding:12px;justify-content:center}.quick-option-copy>strong{font-size:10px}.quick-option-copy>span{font-size:23px}.quick-option-copy>small{font-size:9px}.booking-bottom{display:block;font-size:10px}.booking-bottom>a{display:block;margin-top:6px}.quick-booking{grid-template-columns:1fr 210px}.plan-grid{gap:14px}.plan-body{padding:17px}.plan-card h3{font-size:16px}.plan-photo{padding:14px 14px 0}.plan-price{font-size:28px}.plan-price>span{font-size:17px}.plan-price-row{display:block;margin-top:20px}.plan-time{text-align:left;margin-top:10px}.plan-time br{display:none}.plan-time span{margin-left:12px}.plan-card .reserve-button{font-size:11px;padding:12px}.plan-card .reserve-button svg{width:19px;height:19px}.plan-card h3{min-height:77px}.plan-description{font-size:11px;min-height:100px}.plan-catch{font-size:12px;min-height:44px}.plan-specs{font-size:10px}.plan-specs>div{grid-template-columns:55px 1fr;gap:5px}.plan-english{font-size:8px}.faq-heading h2{font-size:28px}.faq{gap:6%;grid-template-columns:.8fr 1.2fr}.faq-list summary{font-size:12px}.access h2{font-size:27px}.access dl{font-size:11px}.access dl>div{grid-template-columns:60px 1fr;gap:8px}.map-wrap{height:315px}.dock-intro{display:none}.dock-select-wrap{min-width:270px}.dock-reserve{min-width:260px}.finale-heart{left:9%;width:80px;height:80px}.finale-flower{right:8%;width:100px;height:100px}.visit-note{gap:20px}.visit-note p{font-size:11px}.visit-note>a{font-size:10px;gap:7px}}
@media(max-width:620px){:root{--dock-height:83px}html{scroll-padding-top:86px}body{font-size:13px}.site-header{height:68px;padding-inline:5%;gap:12px}.brand>span{font-size:24px}.brand small{font-size:5.7px;letter-spacing:1.1px;margin-top:6px}.brand sup{font-size:9px}.header-actions{gap:14px}.header-book{font-size:10px;padding:10px 15px;gap:8px;box-shadow:0 2px 0 #ab275f}.header-book .header-prefix{display:none}.header-book svg{width:17px;height:17px}.menu-toggle{width:22px}.menu-toggle span{width:22px}.mobile-menu{top:68px}.hero-world{height:433px;max-width:480px}.hero-copy{width:295px;top:77px}.hero-location{font-size:9px;letter-spacing:.09em}.hero-wordmark{font-size:38px;margin-top:7px}.hero-catch{font-size:34px;line-height:1.62;letter-spacing:.04em;margin-top:10px}.hero-service{font-size:10px;letter-spacing:.01em;margin-top:12px}.hero-description{font-size:12px;line-height:1.9;margin-top:12px}.hero-facts{margin-top:14px;gap:6px;font-size:10px}.hero-facts li{padding:4px 10px}.world-halo{height:315px;width:315px;top:80px;box-shadow:0 0 35px 16px #fff8f975}.world-orbit{height:418px;width:418px;left:calc(50% - 209px);top:4px}.orbit-part{width:40px;height:40px;margin:-20px}.photo-frame{width:110px;left:-17px;top:3px;padding:5px 5px 2px;--tilt:-12deg}.photo-frame figcaption{font-size:5px;padding:4px 0}.photo-shisa{width:114px;right:-20px;top:0;padding:5px 5px 11px;--tilt:13deg}.photo-shisa figcaption{font-size:7px;padding-top:4px}.photo-friends{width:82px;height:82px;left:-20px;right:auto;top:308px;padding:4px}.photo-parts{width:84px;height:84px;left:auto;right:-24px;top:319px;padding:4px}.floating-label{top:37px;left:50%;translate:-50% 0;rotate:-5deg;font-size:9px;white-space:nowrap;letter-spacing:.08em}.booking-panel{width:calc(100% - 30px);padding:18px 16px 15px;border-radius:19px;scroll-margin-top:87px}.booking-top{display:block;margin-bottom:15px}.booking-top h2{font-size:16px;white-space:normal;text-align:center}.booking-top h2>span{display:block;font-size:11px;margin-left:0;margin-top:1px}.quick-booking{display:flex;flex-direction:column;gap:13px}.quick-options{width:100%;gap:7px}.quick-option-content{padding:14px 5px 8px;border-radius:10px;min-height:100px;text-align:center}.quick-option-copy>strong{font-size:10px;white-space:normal;line-height:1.5;min-height:30px;display:flex;align-items:center;justify-content:center;letter-spacing:0}.quick-option-copy>span{font-size:23px;line-height:1.5}.quick-option-copy>span>small{font-size:9px}.quick-option-copy>small{font-size:8px;letter-spacing:0}.quick-option-content:after{top:5px;right:5px;width:10px;height:10px}.quick-action{width:100%}.quick-reserve{min-height:53px;padding:9px 20px;justify-content:space-between;gap:10px;font-size:14px}.quick-reserve>span{display:flex;align-items:center;justify-content:center;gap:12px;flex:1}.quick-reserve small{font-size:9px;margin-bottom:0;max-width:95px;letter-spacing:0}.quick-reserve svg{width:22px;height:22px}.external-note{font-size:8px;margin-top:8px}.booking-bottom{margin-top:12px;padding-top:10px;font-size:9px;letter-spacing:0;line-height:1.9}.booking-bottom>a{font-size:10px;margin-top:8px;text-align:center}.booking-bottom a span{font-size:13px;letter-spacing:.02em}.selected-status{text-align:center;min-height:17px}.hero-foot{width:calc(100% - 35px);margin-top:15px;font-size:7px}.motion-control{font-size:9px;padding:6px 10px}.hero:before,.hero:after{width:300px;height:300px;filter:blur(35px)}.hero:before{left:-180px;top:100px}.hero:after{right:-170px;top:90px}.section{padding:65px 6%}.eyebrow{font-size:9px;letter-spacing:.1em}.section-heading{font-size:28px;line-height:1.7;letter-spacing:.045em}.section-top{margin-bottom:32px}.section-top .eyebrow{margin-bottom:15px}.section-description{font-size:12px;line-height:2.1;margin-top:17px}.intro{padding-top:60px;padding-bottom:0}.intro .section-heading{font-size:6.1vw;white-space:nowrap;margin-top:19px}.intro-story{font-size:12px;line-height:2.5;letter-spacing:.04em;margin-top:26px}.store-introduction{font-size:11px;text-align:left;line-height:2.2;margin-top:28px;padding-inline:3%}.intro-flower{width:37px;height:37px;left:2%;top:158px}.intro-cloud{width:49px;height:49px;right:1%;top:286px}.intro-gallery{grid-template-columns:1fr .3fr 1fr;gap:12px;margin-top:40px}.intro-gallery>img{aspect-ratio:.94;border-radius:7px;rotate:-6deg}.intro-gallery>img:last-child{rotate:6deg}.intro-gallery>div{gap:10px}.intro-gallery>div>span{display:none}.intro-gallery>div>svg{width:34px;height:34px}.workshops{margin-top:38px;padding-top:57px;padding-bottom:44px;border-radius:34px 34px 0 0}.mobile-only{display:block}.plan-grid{display:flex;flex-direction:column;gap:28px}.plan-card{width:100%;border-radius:21px}.plan-photo{padding:19px 19px 0}.plan-photo>img{aspect-ratio:1.33;border-radius:13px 13px 4px 4px}.plan-photo>span{font-size:43px;left:13px}.plan-body{padding:22px}.plan-english{font-size:9px;margin-bottom:8px}.plan-card h3{font-size:21px;min-height:0}.plan-card h3>small{font-size:12px}.plan-catch{font-size:13px;min-height:0;margin-top:13px}.plan-description{font-size:12px;min-height:0;line-height:2.1;margin-top:9px}.plan-price-row{display:flex;align-items:end;justify-content:space-between;margin:23px 0 20px;gap:10px}.plan-price{font-size:39px}.plan-price>span{font-size:22px}.plan-price>small{font-size:10px}.plan-time{text-align:right;font-size:11px;margin:0;line-height:1.9}.plan-time br{display:block}.plan-time span{margin:0}.plan-card .reserve-button{font-size:14px;min-height:55px;padding:14px 20px}.plan-card .reserve-button svg{width:24px;height:24px}.plan-card .external-note{font-size:9px}.plan-specs{font-size:11px;margin-top:17px}.plan-specs>div{grid-template-columns:65px 1fr;gap:13px;padding:10px 0}.plan-conditions{font-size:11px}.price-note{text-align:left;font-size:10px;margin-top:22px}.more-menu{gap:15px;flex-wrap:wrap;padding-top:25px;margin-top:27px}.more-menu>svg{width:35px;height:35px}.more-menu>div{flex:1}.more-menu h3{font-size:13px;line-height:1.7}.more-menu p{font-size:10px;line-height:1.9}.more-menu>a{font-size:11px;margin:0 0 0 50px}.happy-ribbon{padding:10px 0}.happy-ribbon>div{gap:24px}.happy-ribbon span{font-size:20px}.happy-ribbon svg{width:28px;height:28px}.howto{padding-top:60px}.steps{display:flex;flex-direction:column;gap:39px}.step-image img{aspect-ratio:1.4;border-radius:40% 40% 7px 7px}.step-image span{font-size:65px;left:14px;bottom:-22px}.step h3{font-size:18px;margin-top:34px}.step p{font-size:12px;margin-top:12px}.visit-note{display:block;padding:22px 0;margin-top:32px}.visit-note>span{font-size:11px}.visit-note p{font-size:11px;margin-top:10px;line-height:2}.visit-note>a{font-size:12px;display:inline-flex;gap:30px;margin-top:17px;border-bottom:1px solid;padding-bottom:5px}.gallery-section{padding:51px 0 23px;border-radius:35px 35px 0 0}.gallery-heading{margin-bottom:28px}.gallery-heading .eyebrow{font-size:8px}.gallery-heading h2{margin-top:16px}.gallery-heading h2 br{display:block}.gallery-flower{width:45px;height:45px;right:1%;top:60px}.photo-gallery{gap:17px;padding:10px 8% 22px}.photo-gallery figure{flex:0 0 69%;min-width:0}.photo-gallery img{border-width:6px}.photo-gallery figcaption{font-size:11px;margin-top:13px}.gallery-bottom>span{font-size:7px}.gallery-bottom button{height:38px;width:38px}.faq{display:block;padding-block:62px}.faq-heading h2{font-size:29px;margin-top:18px}.faq-heading>p:not(.eyebrow){font-size:12px;margin-top:20px}.phone-link{font-size:24px;margin-top:21px}.faq-list{margin-top:30px}.faq-list summary{font-size:12px;gap:10px;padding:20px 0}.faq-list summary>span{font-size:20px}.faq-answer{font-size:12px;line-height:2.15;padding:0 8px 22px 29px}.access{display:block;border-radius:35px 35px 0 0;padding-block:57px}.access h2{font-size:28px;margin-top:18px}.access h3{font-size:17px;margin-top:26px}.access address{font-size:12px}.access dl{font-size:12px}.access dl>div{grid-template-columns:68px 1fr;gap:10px}.outline-button{font-size:12px;padding:14px 20px}.access-visual{margin-top:28px}.map-wrap{height:315px}.instagram-link{gap:24px;margin-top:30px}.instagram-link>img{width:90px;height:90px}.instagram-link>span{font-size:27px}.instagram-link small{font-size:10px}.finale{padding-top:58px;padding-bottom:54px}.finale h2{font-size:31px;line-height:1.75;margin-top:18px;letter-spacing:.055em}.finale>p:not(.eyebrow){font-size:12px;margin-top:20px}.finale-reserve{font-size:14px;min-height:59px;margin-top:25px;gap:16px}.finale-phone{font-size:10px;margin-top:24px}.finale-heart{width:40px;height:40px;left:3%;top:162px}.finale-flower{width:48px;height:48px;right:4%;top:78px}.site-footer{padding:32px 6% 25px}.footer-wordmark{font-size:11.4vw;gap:12px}.footer-wordmark>span{font-size:6px;letter-spacing:.1em}.footer-links{font-size:10px;gap:14px 21px;flex-wrap:wrap;padding:25px 0 20px}.footer-links button{font-size:10px}.footer-bottom{font-size:8px;flex-wrap:wrap;gap:9px 20px;margin-top:18px}.footer-bottom>a{font-size:8px}.booking-dock{min-height:var(--dock-height);padding:8px 4% max(9px,env(safe-area-inset-bottom));gap:10px;align-items:center}.dock-select-wrap{min-width:0;flex:1}.dock-select-wrap>label{font-size:8px}.dock-select-wrap select{font-size:11px;min-height:41px;padding:8px 15px 8px 7px;letter-spacing:0}.dock-reserve{min-width:0;flex:1.12;min-height:56px;padding:9px 12px;gap:9px;font-size:14px;white-space:nowrap}.dock-reserve svg{width:19px;height:19px}.dock-reserve small{font-size:8px}.dock-intro{display:none}dialog{padding:37px 25px;border-radius:18px}dialog h2{font-size:20px}.plan-card:nth-child(n),.step:nth-child(n){transition-delay:0ms}}
@media(max-width:360px){.brand>span{font-size:21px}.brand small{font-size:5px;letter-spacing:1px}.site-header{gap:10px;padding-inline:4%}.header-actions{gap:11px}.header-book{font-size:10px;padding:9px 12px}.hero-world{height:410px}.hero-copy{width:264px;top:68px}.hero-wordmark{font-size:34px}.hero-catch{font-size:31px}.hero-service{font-size:9px}.hero-description{font-size:11px}.hero-location{font-size:8px}.hero-facts{font-size:9px;gap:5px}.hero-facts li{padding:4px 9px}.world-halo{width:280px;height:280px;top:85px}.world-orbit{width:362px;height:362px;left:calc(50% - 181px);top:20px}.orbit-part{width:33px;height:33px;margin:-16.5px}.photo-frame{width:91px;left:-14px;top:7px}.photo-shisa{width:94px;right:-18px;top:5px}.photo-friends{width:65px;height:65px;left:-20px;top:307px}.photo-parts{width:65px;height:65px;right:-20px;top:306px}.floating-label{font-size:8px;top:26px}.booking-panel{padding:16px 13px 13px;width:calc(100% - 26px)}.booking-top h2{font-size:15px}.quick-option-copy>strong{font-size:9px}.quick-option-copy>span{font-size:21px}.quick-option-copy>small{font-size:7px}.quick-reserve{font-size:13px;padding-inline:16px}.quick-reserve>span{gap:9px}.quick-reserve small{font-size:8px}.booking-bottom{font-size:8px}.plan-body{padding:19px}.plan-card h3{font-size:19px}.plan-price{font-size:35px}.plan-time{font-size:10px}.plan-card .reserve-button{font-size:13px}.dock-reserve{font-size:12px;gap:6px;padding-inline:10px}.dock-select-wrap select{font-size:10px;padding-left:5px}.finale h2{font-size:28px}.finale-reserve{font-size:13px}.intro-story{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js .reveal{opacity:1;transform:none}.hero-catch{opacity:1;translate:0 0}.motion-control,.deco-confetti{display:none}}

html:not(.js) .motion-control,html:not(.js) .menu-toggle,html:not(.js) .gallery-bottom>div{display:none}

/* Version 4 — Okinawa, in our own colors. Extends the preserved V3 layout. */
:root{--sea:#238e92;--sea-light:#dff5ef;--mint:#c9ece3;--island-sand:#fff4d6}
.hero{background:radial-gradient(ellipse at 4% 35%,#e1f7ef 0,transparent 48%),radial-gradient(ellipse at 94% 25%,#cbeee8 0,transparent 50%),linear-gradient(180deg,#eef9f3,#fff2f5 69%,#fcecf2)}
.hero:before{background:radial-gradient(ellipse,#82d8ce55,transparent 70%);opacity:.7}
.hero:after{background:radial-gradient(ellipse,#f7b6d255,transparent 70%);opacity:.8}
.world-halo{background:radial-gradient(ellipse at 20% 80%,#fff2c4bb,transparent 58%),radial-gradient(ellipse at 85% 10%,#f8d8e6bb,transparent 60%),#fffdf3;box-shadow:0 0 50px 35px #fffbf57a;width:495px;height:495px;top:23px}
.hero-world{isolation:isolate}
.hero-location{color:#357e7d}
.hero-facts li{border-color:#d4e0d8;background:#fffcf4}
.hero-copy{top:64px}
.photo-frame{width:208px;left:45px;top:100px;--tilt:-10deg;z-index:4}
.photo-friends{width:127px;height:127px;right:108px;top:13px}
.photo-parts{width:115px;height:115px;left:187px;top:390px;z-index:4}
.floating-label{display:none;left:57px;top:341px;font-size:11px;color:#508b86}
.shisa-friends{position:absolute;right:-38px;top:133px;width:355px;z-index:3;pointer-events:none;animation:island-bob 6s ease-in-out infinite;transform-origin:50% 85%}
.shisa-friends img{width:100%;height:auto;filter:drop-shadow(0 12px 9px #519f9620)}
.shisa-friends figcaption{font-size:12px;text-align:center;color:#2c8586;font-weight:700;rotate:7deg;margin-top:-47px;margin-right:5px;letter-spacing:.11em}
.hero-treasures{position:absolute;left:-43px;top:333px;width:250px;height:auto;z-index:2;pointer-events:none;rotate:-13deg;animation:island-bob 8s ease-in-out infinite;animation-delay:-3s}
.island-hello{position:absolute;left:37px;top:24px;font-family:var(--en);font-size:11px;font-weight:900;letter-spacing:.15em;color:#368d8b;display:flex;gap:12px;align-items:center;rotate:-8deg}
.island-hello svg{width:35px;height:35px}
.world-orbit{opacity:.9;width:775px;height:775px;left:calc(50% - 387.5px);top:-113px}
.orbit-part{width:65px;height:65px;margin:-32.5px}
.island-water{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.island-water span{position:absolute;width:280px;height:160px;border:1px solid #9ad9cd77;border-radius:50%;rotate:-19deg;left:-100px;top:55px}
.island-water span:nth-child(2){width:355px;height:215px;left:-143px;top:35px}
.island-water span:nth-child(3){width:480px;height:285px;left:-224px;top:5px}
.island-sparkles{position:absolute;inset:0;z-index:2;pointer-events:none}
.island-sparkles svg{position:absolute;width:21px;height:21px;color:#e2be6e;animation:island-twinkle 4s ease-in-out infinite}
.island-sparkles svg:nth-child(1){left:23%;top:16%;width:18px;height:18px}
.island-sparkles svg:nth-child(2){right:4%;top:19%;color:#51b5b7;animation-delay:-1.2s}
.island-sparkles svg:nth-child(3){right:10%;top:85%;width:31px;height:31px;animation-delay:-2s}
.island-sparkles svg:nth-child(4){left:27%;top:85%;color:#e79bbb;animation-delay:-.6s}
.island-sparkles svg:nth-child(5){left:7%;top:56%;width:16px;height:16px;animation-delay:-3s}
.intro{padding-top:155px;background:radial-gradient(ellipse at 5% 38%,#d8f1e94d,transparent 38%),var(--cream)}
.island-shore{position:absolute;top:0;left:0;width:100%;height:83px;pointer-events:none;background:#fcecf2}
.intro>.eyebrow{color:#3c8c87}
.intro-flower{width:124px;height:124px;left:8%;top:235px}
.intro-cloud{width:113px;height:113px;right:7%;top:394px;rotate:17deg}
.island-postcard{position:relative;max-width:725px;margin:40px auto 0;display:flex;align-items:center;justify-content:center;gap:34px;padding:17px 30px;border-block:1px solid #d9e6d9;background:linear-gradient(105deg,#eff8ed66,#fff7e488);border-radius:50% 10% 45% 10% / 8% 16% 8% 16%;text-align:left}
.island-postcard>img{width:255px;height:170px;object-fit:contain;rotate:-7deg;flex-shrink:0}
.island-postcard .eyebrow{font-size:9px;color:#388e8d;letter-spacing:.13em}
.island-postcard p{font-size:18px;font-weight:700;line-height:1.9;letter-spacing:.055em;margin-top:11px}
.island-postcard>svg{position:absolute;width:35px;height:35px;right:7px;top:-15px;rotate:15deg}
.island-swatches{display:flex;gap:9px;margin-top:14px}
.island-swatches i{display:block;width:14px;height:14px;border-radius:50%;background:#8acfc6}
.island-swatches i:nth-child(2){background:#ef9dbe}.island-swatches i:nth-child(3){background:#eec768}.island-swatches i:nth-child(4){background:#beb0dc}.island-swatches i:nth-child(5){background:#f3d9bd}
.intro-gallery{margin-top:65px;grid-template-columns:1fr .76fr 1fr}
.intro-gallery>div{gap:0}
.intro-gallery>div>span{font-size:30px}
.intro-gallery .gallery-mascot{width:260px;max-width:125%;height:auto;margin-top:-10px;rotate:5deg;animation:island-bob 7s ease-in-out infinite}
.workshops{background:linear-gradient(150deg,#eef7e9,#f8eef4 63%,#f0ecfa);padding-top:91px}
.section-charms{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.section-charms svg{position:absolute;top:47px;left:8%;width:100px;height:100px;rotate:-17deg;animation:island-bob 8s ease-in-out infinite}
.section-charms svg:nth-child(2){left:auto;right:10%;top:65px;width:70px;height:70px;rotate:15deg;animation-delay:-3s}
.section-charms svg:nth-child(3){left:auto;right:6%;top:153px;width:29px;height:29px;rotate:-9deg;animation-delay:-1s}
.happy-ribbon{background:#c8eae1;border-color:#b5d8cf;color:#397c78}
.gallery-section{background:linear-gradient(155deg,#ede4f4,#dbf2e9)}
.gallery-heading h2{color:#548580}
.gallery-flower{width:112px;height:112px;right:8%;top:-3px}
.access{background:linear-gradient(130deg,#e4f3e9,#fff5dc)}
.access .eyebrow{color:#3f8d85}
.map-wrap{border-color:#fffaf0;box-shadow:9px 12px 0 #b6dcd233}
.finale{background:radial-gradient(ellipse at 95% 90%,#b7e3dc99,transparent 54%),radial-gradient(ellipse at 0 90%,#f6ccdf77,transparent 55%),#f9f4e7;padding-block:91px 95px}
.finale>.eyebrow{color:#398d88}
.finale-treasures,.finale-friends{position:absolute;pointer-events:none;z-index:0;animation:island-bob 7s ease-in-out infinite}
.finale-treasures{width:300px;left:2%;bottom:18px;rotate:-15deg;animation-delay:-2s}
.finale-friends{width:290px;right:2%;bottom:14px;rotate:7deg}
.finale-heart{width:45px;height:45px;left:18%;top:95px;rotate:-13deg}
.finale-flower{width:65px;height:65px;right:15%;top:67px}
.site-footer{background:#cb3674}
@keyframes island-bob{0%,100%{transform:translateY(0) rotate(-1.3deg)}50%{transform:translateY(-9px) rotate(1.3deg)}}
@keyframes island-twinkle{0%,100%{opacity:.5;scale:.8}50%{opacity:1;scale:1.08}}
@media(min-width:1600px){.hero-treasures{width:270px;left:-54px}.shisa-friends{right:-53px;width:370px}}
@media(max-width:1180px){.world-halo{width:465px;height:465px;top:24px}.hero-copy{top:59px}.photo-frame{width:183px;left:20px;top:110px}.photo-parts{width:105px;height:105px;left:130px;top:390px}.photo-friends{width:103px;height:103px;right:65px;top:20px}.shisa-friends{width:295px;right:-27px;top:179px}.shisa-friends figcaption{font-size:10px;margin-top:-42px}.hero-treasures{width:212px;left:-48px;top:344px}.floating-label{left:14px;top:330px;font-size:9px}.world-orbit{width:715px;height:715px;left:calc(50% - 357.5px);top:-90px}.island-hello{left:23px;top:38px;font-size:9px}.finale-treasures{width:225px;left:-3%}.finale-friends{width:225px;right:-3%}.section-charms svg{left:4%;width:76px;height:76px}.section-charms svg:nth-child(2){right:5%;width:63px;height:63px}.section-charms svg:nth-child(3){right:3%}.intro-flower{left:4%;width:90px;height:90px}.intro-cloud{right:3%;width:95px;height:95px}}
@media(max-width:900px){.world-halo{width:415px;height:415px;top:26px}.hero-copy{top:54px}.photo-frame{width:153px;left:-17px;top:106px}.photo-parts{width:88px;height:88px;left:88px;top:358px}.photo-friends{right:28px;top:13px;width:90px;height:90px}.shisa-friends{width:251px;right:-40px;top:211px}.shisa-friends figcaption{font-size:9px;margin-top:-35px;margin-left:25px}.hero-treasures{left:-49px;width:181px;top:328px}.floating-label{left:5px;top:286px;font-size:8px}.island-hello{left:15px;top:37px;font-size:8px;gap:5px}.island-hello svg{width:26px;height:26px}.world-orbit{width:632px;height:632px;left:calc(50% - 316px);top:-52px}.orbit-part{width:49px;height:49px;margin:-24.5px}.intro{padding-top:130px}.intro-flower{left:1%;width:66px;height:66px}.intro-cloud{right:1%;width:65px;height:65px}.island-postcard{gap:22px;padding:17px 20px}.island-postcard>img{width:210px;height:140px}.island-postcard p{font-size:16px}.intro-gallery>div>span{font-size:23px}.finale-treasures{width:180px;left:-4%;bottom:2px}.finale-friends{width:175px;right:-4%;bottom:4px}.finale-heart{left:9%;width:34px;height:34px}.finale-flower{right:8%;width:50px;height:50px}}
@media(max-width:620px){
 .hero-world{height:443px}.hero-copy{top:125px;width:310px}.hero-wordmark{font-size:40px;margin-top:8px}.hero-catch{font-size:35px;line-height:1.55;margin-top:9px}.hero-service{font-size:9px;letter-spacing:.025em;margin-top:10px}.hero-description{font-size:11px;margin-top:9px;line-height:1.9}.hero-facts{margin-top:10px;font-size:9px;gap:7px}.hero-facts li{padding:4px 11px}.hero-location{font-size:9px;letter-spacing:.07em}
 .world-halo{width:337px;height:337px;top:110px}.photo-frame{width:115px;left:-10px;top:5px;padding:5px 5px 3px;--tilt:-12deg}.photo-frame figcaption{font-size:6px;padding:5px 0 2px}.shisa-friends{width:165px;right:4px;top:-12px;z-index:3}.shisa-friends figcaption{display:none}.photo-friends{width:55px;height:55px;right:auto;left:-16px;top:379px;padding:3px}.photo-parts{width:56px;height:56px;left:auto;right:-16px;top:379px;padding:3px}.hero-treasures{width:100px;left:-35px;top:275px;z-index:2;rotate:-21deg}.floating-label{display:none}.island-hello{left:119px;top:40px;display:block;font-size:6px;letter-spacing:.08em;rotate:-12deg;max-width:100px}.island-hello svg{display:block;width:24px;height:24px;margin:2px 0 0 19px}.world-orbit{width:446px;height:446px;left:calc(50% - 223px);top:58px}.orbit-part{width:36px;height:36px;margin:-18px}.island-water span{left:-198px;top:24px}.island-water span:nth-child(2){left:-227px;top:0}.island-water span:nth-child(3){left:-292px;top:-28px}.island-sparkles svg:nth-child(1){left:30%;top:24%;width:11px;height:11px}.island-sparkles svg:nth-child(2){right:3%;top:49%;width:13px;height:13px}.island-sparkles svg:nth-child(3){right:22%;top:96%;width:20px;height:20px}.island-sparkles svg:nth-child(4){left:21%;top:94%;width:11px;height:11px}.island-sparkles svg:nth-child(5){left:5%;top:48%;width:9px;height:9px}
 .intro{padding-top:104px}.island-shore{height:54px}.intro-flower{left:0;top:183px;width:40px;height:40px}.intro-cloud{right:0;top:297px;width:46px;height:46px}.island-postcard{margin-top:25px;padding:22px 15px 21px;gap:11px;max-width:400px;border-radius:28px 7px 28px 7px}.island-postcard>img{width:43%;height:auto;rotate:-8deg;align-self:center}.island-postcard>div{flex:1;min-width:0}.island-postcard .eyebrow{font-size:7px;letter-spacing:.04em;white-space:nowrap}.island-postcard p{font-size:12px;letter-spacing:0;line-height:1.95;margin-top:7px}.island-postcard>svg{width:25px;height:25px;right:-5px;top:-10px}.island-swatches{gap:7px;margin-top:10px}.island-swatches i{width:10px;height:10px}.intro-gallery{grid-template-columns:1fr .54fr 1fr;gap:10px;margin-top:34px}.intro-gallery .gallery-mascot{width:135%;max-width:150%;margin-top:0}.intro-gallery>div>span{display:none}.workshops{padding-top:61px}.section-charms svg{width:45px;height:45px;left:-9px;top:114px}.section-charms svg:nth-child(2){width:37px;height:37px;right:0;top:28px}.section-charms svg:nth-child(3){width:15px;height:15px;right:10px;top:139px}.gallery-flower{width:54px;height:54px;right:-3px;top:63px}.finale{padding-block:63px 72px}.finale-treasures{width:105px;left:-25px;bottom:4px}.finale-friends{width:108px;right:-25px;bottom:-8px}.finale-heart{width:22px;height:22px;left:5%;top:141px}.finale-flower{width:35px;height:35px;right:4%;top:66px}.finale-reserve,.finale-phone{z-index:2}.intro-gallery .gallery-mascot{animation-duration:8s}
}
@media(max-width:360px){.hero-world{height:421px}.hero-copy{top:115px;width:279px}.hero-wordmark{font-size:35px}.hero-catch{font-size:31px}.hero-location{font-size:8px}.hero-service{font-size:8px;letter-spacing:.015em}.hero-description{font-size:10px}.hero-facts{font-size:8px}.world-halo{width:301px;height:301px;top:112px}.world-orbit{width:388px;height:388px;left:calc(50% - 194px);top:62px}.orbit-part{width:31px;height:31px;margin:-15.5px}.photo-frame{width:97px;left:-10px;top:6px}.shisa-friends{width:143px;right:1px;top:-7px}.shisa-friends figcaption{font-size:6px;margin-top:-22px}.island-hello{left:102px;top:38px;font-size:5px}.island-hello svg{width:21px;height:21px;margin-left:12px}.hero-treasures{width:75px;left:-29px;top:296px}.photo-friends,.photo-parts{width:43px;height:43px;top:369px}.island-postcard{padding:19px 10px;gap:7px}.island-postcard p{font-size:10px}.island-postcard .eyebrow{font-size:6px}.island-swatches i{width:9px;height:9px}.island-postcard>img{width:42%}}
@media(prefers-reduced-motion:reduce){.shisa-friends,.hero-treasures,.island-sparkles svg,.intro-gallery .gallery-mascot,.section-charms svg,.finale-treasures,.finale-friends{animation:none!important;transform:none}.world-orbit{animation:none!important}}

/* V5 — real hands, personal colors, and a little Okinawa. */
.edition-five{--pink:#cf3472;--ink:#503c45;--cream:#fffcf3;--sea:#307d74}
.edition-five .hero{background:#fff7ee;padding-bottom:26px}
.edition-five .hero:before,.edition-five .hero:after{display:none}
.edition-five .studio-stage{max-width:1280px;width:calc(100% - 112px);height:558px;isolation:isolate}
.studio-backdrop{position:absolute;right:-17%;top:-20%;width:69%;height:123%;background:#f7dae2;border-radius:48% 0 38% 49%;z-index:-1;rotate:-9deg}
.edition-five .hero-copy{width:49%;left:0;top:57px;translate:0;text-align:left;z-index:4}
.edition-five .hero-location{color:var(--sea);font-size:10px;letter-spacing:.05em}
.hero-location>span{font-family:var(--en);font-weight:900;display:inline-block;margin-right:12px;letter-spacing:.05em;border-bottom:1px solid #91b3a1;padding-bottom:3px}
.edition-five .hero-catch{font-size:clamp(47px,5.15vw,74px);line-height:1.47;letter-spacing:-.035em;margin-top:25px;white-space:nowrap}
.catch-last{position:relative;isolation:isolate}
.catch-last:after{content:'';position:absolute;left:1%;right:1%;bottom:4%;height:17%;background:#f4db98;border-radius:50%;z-index:-1;rotate:-2deg}
.edition-five .hero-service{font-size:12px;letter-spacing:.025em;margin-top:22px}
.edition-five .hero-description{font-size:14px;line-height:2;margin-top:16px;letter-spacing:.065em}
.edition-five .hero-facts{justify-content:flex-start;margin-top:20px;gap:7px;font-size:11px}
.edition-five .hero-facts li{background:#fffdf7;border-color:#d8d2b9;padding:5px 13px}
.studio-discover{display:inline-flex;align-items:center;gap:20px;font-size:11px;font-weight:700;margin-top:22px;color:var(--sea);border-bottom:1px solid #90b8a0;padding-bottom:3px}
.studio-discover svg{width:20px;height:20px;rotate:90deg}
.studio-visual{position:absolute;width:52%;height:100%;right:0;top:0;z-index:3}
.studio-memory{position:absolute;top:35px;right:13px;width:89%;height:408px;rotate:5deg;animation:studio-float 8s ease-in-out infinite;translate:calc(var(--pointer-x,0px)*.45) calc(var(--pointer-y,0px)*.45);transition:translate .65s ease-out}
.studio-memory>img{width:100%;height:100%;object-fit:cover;border:8px solid #fffdf6;border-radius:43% 42% 35% 13%;box-shadow:9px 13px 0 #dd8ca72a}
.studio-memory figcaption{position:absolute;bottom:-15px;left:24%;background:#fffdf6;border:1px solid #dac7bf;padding:8px 20px;font-size:11px;font-weight:700;rotate:-8deg;white-space:nowrap;border-radius:3px}
.studio-seal{position:absolute;right:-8px;top:8px;background:#dbeea2;color:#366b54;width:114px;height:114px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #98b67e;outline:5px solid #dbeea2;rotate:12deg;z-index:3}
.studio-seal span{font-family:var(--en);font-size:12px;font-weight:950;line-height:1.4;letter-spacing:.1em}
.studio-seal svg{width:44px;height:44px;animation:turn 35s linear infinite}
.studio-product{position:absolute;right:0;bottom:25px;width:183px;padding:8px 8px 10px;background:#fffdf8;rotate:10deg;box-shadow:4px 7px 0 #e0b7a532;animation:studio-float 7s ease-in-out infinite;animation-delay:-2s;z-index:5}
.studio-product>img{width:100%;height:130px;object-fit:cover}
.studio-product figcaption{font-size:12px;text-align:center;color:var(--pink);font-weight:700;padding-top:7px}
.studio-product small{font-family:var(--en);display:block;font-size:7px;color:var(--sea);letter-spacing:.13em;margin-bottom:1px}
.paper-tape{position:absolute;left:30%;right:30%;top:-9px;height:20px;background:#b7dcd6d9;rotate:-5deg;clip-path:polygon(0 0,100% 0,96% 17%,100% 35%,96% 53%,100% 75%,96% 100%,0 100%,4% 80%,0 60%,4% 36%)}
.edition-five .studio-guide{right:auto;left:-34px;top:auto;bottom:14px;width:224px;animation:studio-guide-bob 6s ease-in-out infinite;z-index:4}
.edition-five .studio-guide figcaption{display:block;font-size:10px;color:var(--sea);rotate:-6deg;margin:-5px -30px 0 0;letter-spacing:.06em}
.edition-five .studio-guide img{filter:drop-shadow(0 8px 5px #c3879120)}
.studio-charm{position:absolute;pointer-events:none;z-index:5;animation:studio-float 6s ease-in-out infinite}
.charm-flower{width:78px;height:78px;left:1%;top:15px;rotate:-19deg}
.charm-shell{width:65px;height:65px;left:48%;bottom:7px;rotate:-20deg;animation-delay:-3s}
.charm-star{width:43px;height:43px;left:25%;top:16px;rotate:15deg;animation-delay:-1s}
.edition-five .hero-treasures{left:auto;top:170px;right:-62px;width:122px;rotate:25deg;z-index:2;animation:studio-float 9s ease-in-out infinite}
.pearl{position:absolute;display:block;background:radial-gradient(circle at 32% 28%,#fffefc 0 13%,#f9eada 40%,#e2b9c1 77%,#c297bc);border-radius:50%;box-shadow:2px 5px 3px #d5b3b033;z-index:4;animation:studio-float 5s ease-in-out infinite}
.pearl-one{width:22px;height:22px;left:7%;top:145px}.pearl-two{width:13px;height:13px;right:3%;bottom:280px;animation-delay:-2s}
.edition-five .world-orbit{width:620px;height:620px;left:calc(74% - 310px);top:-39px;z-index:1;opacity:.65}
.edition-five .orbit-part{width:38px;height:38px;margin:-19px}
.edition-five .booking-panel{max-width:1220px;background:#fffefa;border:1px solid #e3b6c6;border-radius:18px;box-shadow:0 7px 0 #e6bec62b;padding:20px 25px 14px;width:calc(100% - 112px)}
.edition-five .booking-top h2{font-size:18px}.edition-five .quick-option-content{border-radius:9px;min-height:84px}
.edition-five .quick-reserve{min-height:76px}
.edition-five .hero-foot{max-width:1220px;width:calc(100% - 112px);margin-top:17px;color:#658578}
.edition-five .reserve-button{box-shadow:0 3px 0 #a1295b}
.edition-five .reserve-button:hover{translate:0;box-shadow:0 3px 0 #a1295b;background:#b72964}
.studio-ticker{background:#c8e7d5;color:#337869;border-block:1px solid #a2c9b6;padding:14px 0;overflow:hidden}
.studio-ticker>div{display:flex;align-items:center;gap:28px;width:max-content;animation:ribbon 46s linear infinite}
.studio-ticker span{font-family:var(--en);font-size:22px;font-weight:950;letter-spacing:.045em;white-space:nowrap}
.studio-ticker svg{width:32px;height:32px}
.edition-five .studio-intro{display:grid;grid-template-columns:1fr 1fr;gap:35px 8%;padding-top:108px;padding-bottom:76px;background:var(--cream);overflow:hidden}
.studio-intro-visual{position:relative;min-height:575px;padding-top:38px}
.making-photo{position:relative;rotate:-5deg;width:91%;z-index:1}
.making-photo img{aspect-ratio:1.15;object-fit:cover;border-radius:46% 41% 5% 5%;border:7px solid #eadfc7}
.making-photo figcaption{text-align:left;font-size:13px;margin:13px 0 0 25px;color:var(--sea);font-weight:700}
.parts-photo{position:absolute;right:-26px;bottom:5px;width:47%;background:#f8d9e3;rotate:9deg;padding:9px 9px 11px;z-index:2}
.parts-photo img{aspect-ratio:1.27;object-fit:cover}
.parts-photo figcaption{font-size:12px;text-align:center;font-weight:700;color:var(--pink);padding-top:5px}
.intro-shell-friend{position:absolute;left:-13%;bottom:50px;width:132px;height:137px;rotate:-12deg;animation:studio-float 7s ease-in-out infinite;z-index:2}
.handwritten-note{font-family:var(--en);font-size:15px;font-weight:900;letter-spacing:.05em;line-height:1.4;color:var(--sea);display:block;margin:42px 0 0 10%;rotate:-5deg;text-align:left}
.studio-intro-copy{position:relative;text-align:left}
.edition-five .studio-intro-copy .eyebrow{font-size:9px;color:var(--sea)}
.edition-five .intro .section-heading{font-size:46px;line-height:1.6;text-align:left;white-space:normal;margin-top:18px;letter-spacing:.01em}
.edition-five .intro-story{text-align:left;font-size:14px;line-height:2.25;margin-top:24px;letter-spacing:.04em}
.intro-island-palette{display:flex;gap:15px;margin-top:27px;align-items:center}
.intro-island-palette>svg{width:68px;height:68px;rotate:15deg}
.intro-island-palette p{font-size:12px;line-height:1.9;color:var(--sea);font-weight:700}
.intro-island-palette .island-swatches{gap:7px;margin-top:9px}.intro-island-palette .island-swatches i{width:11px;height:11px}
.edition-five .store-introduction{grid-column:1/-1;font-size:12px;line-height:2.1;text-align:left;max-width:none;padding:24px 0 0;border-top:1px solid #d8ddc9;margin:20px 0 0;color:#7d7067}
.edition-five .workshops{margin-top:0;background:#f9e6eb;border-radius:60px 60px 0 0;padding-top:82px}
.edition-five .workshops .section-top{position:relative;z-index:1}.edition-five .workshops .section-heading{font-size:44px;letter-spacing:.02em}
.edition-five .section-charms svg{top:90px;left:9%;width:89px;height:89px}.edition-five .section-charms svg:nth-child(2){right:8%;left:auto;top:52px}.edition-five .section-charms svg:nth-child(3){right:6%;left:auto;top:195px;width:26px;height:26px}
.edition-five .plan-card{background:#fffdf7;border-radius:22px;box-shadow:0 6px 0 #ddb2c025;border:1px solid #e5c6ce;transition:border-color .25s,transform .6s var(--ease),opacity .6s var(--ease)}
.edition-five .plan-card.is-selected{border-color:#ce7193}
.edition-five .plan-photo{padding:18px 18px 0;overflow:visible}
.edition-five .plan-photo>img{border-radius:45% 45% 10px 10px;aspect-ratio:1.12;object-fit:cover;transition:scale .8s var(--ease)}
.edition-five .plan-photo>span{font-size:58px;left:20px;bottom:-21px;color:var(--cream);-webkit-text-stroke:1px var(--pink);line-height:1}
.plan-sticker{position:absolute;right:9px;bottom:12px;font-style:normal;background:#fff0b7;border:1px solid #dec98e;padding:6px 11px;font-size:10px;font-weight:700;color:#766140;rotate:-8deg;box-shadow:2px 3px 0 #d4be8a20}
.edition-five .plan-body{padding-top:33px}.edition-five .plan-english{color:var(--sea)}
.edition-five .happy-ribbon{background:#fff6da;color:#8c784d;border-color:#efdfb9;rotate:0;margin:0;padding:11px 0}
.edition-five .happy-ribbon span{font-size:26px}
.edition-five .studio-howto{display:grid;grid-template-columns:32% 1fr;gap:20px 5%;position:relative;background:var(--cream);padding-top:97px;padding-bottom:55px;align-items:start}
.howto-guide{position:sticky;top:112px;text-align:left}
.edition-five .howto-guide .section-top{text-align:left;margin:0}
.edition-five .howto-guide .section-heading{font-size:39px;letter-spacing:.01em;line-height:1.7}
.edition-five .howto-guide .section-description{font-size:12px;line-height:2.1}
.process-guide{width:205px;margin:30px 0 0 25px;animation:studio-guide-bob 7s ease-in-out infinite}
.process-speech{display:block;font-size:11px;color:var(--sea);font-weight:700;rotate:-7deg;margin:7px 0 0 10px}
.edition-five .steps{display:flex;flex-direction:column;gap:42px}
.edition-five .step{position:relative;display:grid;grid-template-columns:49% 1fr;gap:24px;align-items:center;padding:0 0 30px;border-bottom:1px dashed #dbcfb8}
.edition-five .step:nth-child(2){padding-top:5px}
.edition-five .step-image{rotate:-4deg}
.edition-five .step:nth-child(2) .step-image{rotate:4deg}
.edition-five .step-image img{aspect-ratio:1;border-radius:46% 46% 7px 7px;border:6px solid #f0e6d0}
.edition-five .step-image span{font-size:58px;left:14px;bottom:-19px;color:var(--cream);line-height:1}
.edition-five .step h3{font-size:20px;line-height:1.7;letter-spacing:.025em;margin:8px 0 0}
.edition-five .step-copy>p{font-size:12px;line-height:2.05;margin-top:14px}
.edition-five .step-copy>.step-english{font-family:var(--en);font-size:9px;letter-spacing:.03em;font-weight:900;color:var(--sea);margin:0}
.step-charm{position:absolute;width:53px;height:53px;left:-18px;top:-18px;rotate:-10deg;animation:studio-float 6s ease-in-out infinite}
.step:nth-child(2) .step-charm{left:35%;top:auto;bottom:16px;rotate:15deg}.step:nth-child(3) .step-charm{width:43px;height:43px}
.edition-five .visit-note{grid-column:1/-1;margin-top:28px;border-color:#dadbc3}
.edition-five .gallery-section{background:#dcecdf;border-radius:50px 50px 0 0;padding-top:65px}
.edition-five .gallery-heading{text-align:left;max-width:1180px;margin:0 auto 30px;padding:0 4%}
.edition-five .gallery-heading h2{color:var(--sea);font-size:49px;letter-spacing:.025em;line-height:1.55;margin-top:15px}
.edition-five .gallery-heading h2 br{display:block}
.gallery-treasures{position:absolute;width:260px;right:8%;top:-13px;rotate:-9deg;animation:studio-float 9s ease-in-out infinite}
.edition-five .gallery-flower{width:50px;height:50px;right:4%;top:115px}
.edition-five .photo-gallery figure{flex-basis:25%;rotate:-4deg}.edition-five .photo-gallery figure:nth-child(even){rotate:4deg}
.edition-five .photo-gallery img{border-width:8px;box-shadow:0 5px 0 #8aad8f22}
.edition-five .photo-gallery figcaption{color:var(--sea);font-weight:700}
.edition-five .faq{background:#fffaf2}.edition-five .faq-heading .eyebrow{color:var(--sea)}
.edition-five .access{background:#f7e8ef;border-radius:50px 50px 0 0}.edition-five .map-wrap{box-shadow:7px 9px 0 #d4a2b126}
.edition-five .finale{background:#e1efe2;padding-block:92px}
.edition-five .finale h2{color:var(--pink);font-size:50px;line-height:1.55;letter-spacing:.02em}
.edition-five .finale-treasures{width:270px;left:3%;bottom:8px}.edition-five .finale-friends{width:270px;right:2%;bottom:15px}
.edition-five .booking-dock{background:#fffdf8f7;border-top:1px solid #daaabf;box-shadow:0 -5px 22px #97644509;backdrop-filter:blur(14px)}
.edition-five .dock-intro>span{color:var(--sea)}
@keyframes studio-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes studio-guide-bob{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-10px) rotate(2deg)}}
@media(min-width:1600px){.edition-five .studio-stage{height:580px}.edition-five .hero-copy{top:67px}.studio-memory{height:430px}.edition-five .studio-guide{bottom:18px}}
@media(max-width:1180px){.edition-five .studio-stage{width:calc(100% - 76px);height:527px}.edition-five .hero-copy{top:52px;width:50%}.edition-five .hero-catch{font-size:5.1vw}.edition-five .hero-location{font-size:9px}.hero-location>span{margin-right:5px}.edition-five .hero-description{font-size:13px}.studio-memory{height:351px;top:45px;width:92%;right:0}.edition-five .studio-guide{width:195px;left:-25px;bottom:34px}.studio-product{width:155px;bottom:25px;right:-5px}.studio-product>img{height:107px}.studio-seal{width:87px;height:87px;right:-9px;top:22px}.studio-seal span{font-size:9px}.studio-seal svg{width:34px;height:34px}.charm-flower{width:65px;height:65px;top:25px}.charm-star{top:14px}.charm-shell{width:51px;height:51px;bottom:32px}.edition-five .hero-treasures{width:100px;right:-48px;top:155px}.edition-five .booking-panel,.edition-five .hero-foot{width:calc(100% - 76px)}.edition-five .booking-top h2{font-size:16px}.edition-five .intro .section-heading{font-size:38px}.studio-intro-visual{min-height:515px}.edition-five .studio-intro{column-gap:7%}.parts-photo{bottom:22px;right:-15px}.edition-five .intro-story{font-size:12px}.edition-five .workshops .section-heading{font-size:38px}.edition-five .howto-guide .section-heading{font-size:33px}.edition-five .step{gap:17px}.edition-five .step h3{font-size:18px}.edition-five .step-copy>p{font-size:11px}.process-guide{width:180px}.edition-five .gallery-heading{padding-inline:6%}.edition-five .finale-friends,.edition-five .finale-treasures{width:205px}}
@media(max-width:900px){.edition-five .studio-stage{width:calc(100% - 56px);height:505px}.edition-five .hero-copy{top:58px}.hero-location>span{display:block;width:max-content;margin-bottom:6px}.edition-five .hero-catch{font-size:5.3vw;margin-top:18px}.edition-five .hero-service{font-size:10px;margin-top:17px}.edition-five .hero-description{font-size:12px}.edition-five .hero-facts{font-size:9px;gap:5px}.edition-five .hero-facts li{padding:4px 8px}.studio-discover{font-size:10px;margin-top:20px}.studio-memory{top:57px;height:307px;width:95%;right:-4px}.studio-memory figcaption{font-size:8px;left:12%;padding:6px 10px;bottom:-10px}.edition-five .studio-guide{width:165px;left:-25px;bottom:35px}.edition-five .studio-guide figcaption{font-size:8px;margin-right:-30px}.studio-product{width:122px;bottom:30px;right:-5px;padding:6px}.studio-product>img{height:86px}.studio-product figcaption{font-size:9px}.studio-product small{font-size:5px}.studio-seal{width:72px;height:72px;top:37px}.studio-seal svg{width:27px;height:27px}.studio-seal span{font-size:7px}.charm-flower{width:52px;height:52px;top:34px;left:0}.charm-star{width:32px;height:32px;top:28px;left:30%}.charm-shell{width:40px;height:40px;bottom:16px}.edition-five .hero-treasures{width:89px;top:163px;right:-42px}.edition-five .world-orbit{width:480px;height:480px;left:calc(74% - 240px);top:0}.edition-five .orbit-part{width:29px;height:29px;margin:-14.5px}.edition-five .booking-panel,.edition-five .hero-foot{width:calc(100% - 48px)}.edition-five .booking-panel{padding:19px}.edition-five .studio-intro{padding-top:75px;column-gap:6%;row-gap:15px}.edition-five .intro .section-heading{font-size:31px}.studio-intro-visual{min-height:500px;padding-top:26px}.making-photo{width:100%}.parts-photo{width:62%;right:-12px;bottom:54px}.handwritten-note{font-size:10px;margin-top:55px;margin-left:0}.intro-shell-friend{width:85px;height:90px;left:-9%;bottom:121px}.intro-island-palette>svg{width:47px;height:47px}.intro-island-palette p{font-size:11px}.edition-five .intro-story{font-size:11px}.edition-five .workshops .section-heading{font-size:34px}.edition-five .section-charms svg{width:62px;height:62px;left:4%}.edition-five .section-charms svg:nth-child(2){right:3%;width:59px;height:59px}.plan-sticker{font-size:8px;right:5px;padding:5px 7px;bottom:8px}.edition-five .plan-photo{padding:13px 13px 0}.edition-five .plan-photo>span{font-size:44px;left:16px}.edition-five .studio-howto{grid-template-columns:30% 1fr;gap:15px 5%;padding-top:72px}.edition-five .howto-guide .section-heading{font-size:27px}.edition-five .howto-guide .section-description{font-size:10px}.process-guide{width:145px;margin-left:0}.process-speech{font-size:9px;margin-left:0}.edition-five .step{grid-template-columns:46% 1fr;gap:14px}.edition-five .step h3{font-size:16px}.edition-five .step-copy>p{font-size:10px}.edition-five .step-copy>.step-english{font-size:7px}.edition-five .step-image span{font-size:44px}.step-charm{width:38px;height:38px;left:-12px;top:-13px}.edition-five .gallery-heading h2{font-size:41px}.gallery-treasures{width:230px;right:8%}.edition-five .finale h2{font-size:41px}.edition-five .finale-friends,.edition-five .finale-treasures{width:165px}.edition-five .finale-treasures{left:-3%}.edition-five .finale-friends{right:-3%}}
@media(max-width:620px){
 .edition-five .hero{padding-bottom:18px}.edition-five .studio-stage{width:calc(100% - 40px);height:607px;max-width:440px}.studio-backdrop{width:122%;height:55%;right:-22%;top:44%;border-radius:45% 45% 0 40%;rotate:-8deg}
 .edition-five .hero-copy{top:22px;left:0;width:100%;text-align:left}.edition-five .hero-location{font-size:8px;letter-spacing:.01em}.hero-location>span{display:inline-block;margin:0 6px 0 0;font-size:8px;padding-bottom:1px}.edition-five .hero-catch{font-size:clamp(33px,9.6vw,49px);line-height:1.48;margin-top:17px;letter-spacing:-.03em}.edition-five .hero-service{font-size:10px;margin-top:13px;letter-spacing:.01em}.edition-five .hero-description{font-size:11px;line-height:1.85;margin-top:11px}.edition-five .hero-facts{margin-top:12px;font-size:9px;gap:6px}.edition-five .hero-facts li{padding:4px 10px}.studio-discover{display:none}
 .studio-visual{width:100%;height:294px;right:0;top:auto;bottom:10px}.studio-memory{right:11px;top:4px;width:79%;height:236px;rotate:5deg}.studio-memory>img{border-width:5px;box-shadow:6px 8px 0 #dd8ca728;border-radius:42% 42% 22% 14%}.studio-memory figcaption{font-size:7px;left:17%;bottom:-8px;padding:4px 8px;rotate:-7deg}.studio-product{right:-3px;bottom:0;width:110px;padding:5px;rotate:10deg}.studio-product>img{height:79px}.studio-product figcaption{font-size:8px;padding-top:4px}.studio-product small{font-size:4.5px}.paper-tape{height:14px;top:-6px}.edition-five .studio-guide{width:142px;left:-20px;bottom:5px}.edition-five .studio-guide figcaption{display:none}.studio-seal{width:64px;height:64px;right:0;top:-5px;outline-width:3px}.studio-seal span{font-size:6.5px}.studio-seal svg{width:23px;height:23px}.charm-flower{left:15px;top:0;width:50px;height:50px}.charm-star{width:26px;height:26px;top:-10px;left:34%}.charm-shell{width:34px;height:34px;left:46%;bottom:3px}.edition-five .hero-treasures{width:71px;right:-35px;top:97px}.pearl-one{width:14px;height:14px;left:5%;top:107px}.pearl-two{width:9px;height:9px;right:1%;bottom:115px}.edition-five .world-orbit{width:350px;height:350px;left:calc(50% - 175px);top:auto;bottom:-1px;opacity:.6}.edition-five .orbit-part{width:23px;height:23px;margin:-11.5px}
 .edition-five .booking-panel{width:calc(100% - 30px);padding:18px 15px 14px;border-radius:17px}.edition-five .booking-top h2{font-size:17px}.edition-five .booking-top h2>span{font-size:10px}.edition-five .quick-option-content{min-height:100px;padding:12px 5px 8px}.edition-five .quick-reserve{min-height:56px}.edition-five .hero-foot{width:calc(100% - 35px)}.studio-ticker{padding:10px 0}.studio-ticker span{font-size:16px}.studio-ticker>div{gap:18px}.studio-ticker svg{width:25px;height:25px}
 .edition-five .studio-intro{display:flex;flex-direction:column;gap:0;padding:55px 7% 40px}.studio-intro-visual{min-height:0;height:350px;order:2;margin:33px 0 0;padding:0}.making-photo{width:83%;rotate:-5deg}.making-photo img{aspect-ratio:1.1;border-width:5px}.making-photo figcaption{font-size:10px;margin-top:7px}.parts-photo{right:-5px;bottom:1px;width:42%;padding:6px 6px 7px}.parts-photo figcaption{font-size:9px}.handwritten-note{margin:27px 0 0 6%;font-size:10px}.intro-shell-friend{width:80px;height:83px;left:-13%;bottom:87px}.studio-intro-copy{order:1}.edition-five .studio-intro-copy .eyebrow{font-size:8px}.edition-five .intro .section-heading{font-size:34px;line-height:1.6;margin-top:16px}.edition-five .intro-story{font-size:12px;line-height:2.1;margin-top:22px}.intro-island-palette{position:absolute;right:-4px;top:91px;width:94px;display:block;text-align:center;rotate:7deg;margin:0}.intro-island-palette>svg{width:70px;height:70px}.intro-island-palette p{display:none}.intro-island-palette .island-swatches{justify-content:center;margin:3px 0 0}.intro-island-palette .island-swatches i{width:9px;height:9px}.edition-five .store-introduction{order:3;margin-top:21px;padding:20px 0 0;font-size:10px;line-height:2.1}
 .edition-five .workshops{border-radius:33px 33px 0 0;padding-top:57px}.edition-five .workshops .section-heading{font-size:30px;line-height:1.65}.edition-five .section-charms svg{width:46px;height:46px;top:113px;left:-9px}.edition-five .section-charms svg:nth-child(2){width:41px;height:41px;top:29px;right:1%}.edition-five .section-charms svg:nth-child(3){top:142px;right:2%;width:18px;height:18px}.edition-five .plan-photo{padding:17px 17px 0}.edition-five .plan-photo>img{aspect-ratio:1.22;border-radius:40% 40% 6px 6px}.edition-five .plan-photo>span{font-size:58px;left:22px;bottom:-17px}.plan-sticker{font-size:10px;padding:6px 10px;right:12px;bottom:14px}.edition-five .plan-body{padding-top:31px}.edition-five .happy-ribbon span{font-size:20px}
 .edition-five .studio-howto{display:block;padding-top:58px;padding-bottom:38px}.howto-guide{position:relative;top:auto;min-height:198px}.edition-five .howto-guide .section-heading{font-size:31px;line-height:1.65}.edition-five .howto-guide .section-top{text-align:left}.edition-five .howto-guide .section-description{font-size:11px;max-width:235px;margin-top:16px}.process-guide{position:absolute;width:133px;right:-26px;bottom:30px;margin:0}.process-speech{position:absolute;right:-4px;bottom:4px;font-size:8px;rotate:-9deg}.edition-five .steps{gap:34px;margin-top:45px}.edition-five .step{display:block;padding-bottom:25px}.edition-five .step-image{width:92%;margin:auto;rotate:-3deg}.edition-five .step-image img{aspect-ratio:1.22;border-width:5px;border-radius:42% 42% 7px 7px}.edition-five .step-image span{font-size:62px;bottom:-21px;left:12px}.edition-five .step-copy{padding:29px 4px 0}.edition-five .step-copy>.step-english{font-size:8px}.edition-five .step h3{font-size:20px;margin-top:6px;line-height:1.7}.edition-five .step h3 br{display:none}.edition-five .step-copy>p{font-size:12px;line-height:2.1;margin-top:9px}.step-charm{width:56px;height:56px;left:-8px;top:5px}.step:nth-child(2) .step-charm{width:60px;height:60px;left:auto;right:-9px;bottom:auto;top:182px}.step:nth-child(3) .step-charm{width:46px;height:46px;left:0}.edition-five .visit-note{margin-top:28px}
 .edition-five .gallery-section{border-radius:35px 35px 0 0;padding-top:50px}.edition-five .gallery-heading{padding:0 7%;margin-bottom:31px}.edition-five .gallery-heading .eyebrow{font-size:7px;letter-spacing:.065em}.edition-five .gallery-heading h2{font-size:35px;margin-top:17px}.gallery-treasures{width:137px;right:0;top:43px;rotate:7deg}.edition-five .gallery-flower{width:29px;height:29px;right:8%;top:18px}.edition-five .photo-gallery figure{flex-basis:71%}.edition-five .photo-gallery img{border-width:6px}.edition-five .photo-gallery figcaption{font-size:10px}.edition-five .access{border-radius:35px 35px 0 0}.edition-five .finale{padding-block:62px 99px}.edition-five .finale h2{font-size:35px;line-height:1.65}.edition-five .finale-treasures{width:129px;left:-23px;bottom:-4px}.edition-five .finale-friends{width:125px;right:-17px;bottom:-5px}.edition-five .finale-heart{left:1%;top:144px;width:25px;height:25px}.edition-five .finale-flower{right:1%;top:66px;width:34px;height:34px}.edition-five .booking-dock{backdrop-filter:none;background:#fffdf8}
}
@media(max-width:360px){.edition-five .studio-stage{width:calc(100% - 32px);height:580px}.edition-five .hero-location{font-size:7px}.hero-location>span{font-size:7px;margin-right:4px}.edition-five .hero-catch{font-size:32px;margin-top:19px}.edition-five .hero-service{font-size:9px}.edition-five .hero-description{font-size:10px}.edition-five .hero-facts{font-size:8px;gap:5px}.edition-five .hero-facts li{padding-inline:9px}.studio-visual{height:275px;bottom:7px}.studio-memory{height:215px;right:8px;width:81%}.edition-five .studio-guide{width:123px;left:-16px;bottom:11px}.studio-product{width:94px;bottom:3px;right:-2px}.studio-product>img{height:65px}.studio-product figcaption{font-size:7px}.studio-seal{width:54px;height:54px}.studio-seal span{font-size:5px}.studio-seal svg{width:22px;height:22px}.charm-flower{left:2px;top:0;width:45px;height:45px}.charm-star{width:24px;height:24px}.edition-five .hero-treasures{width:62px;right:-29px}.edition-five .booking-panel{padding-inline:13px}.edition-five .booking-top h2{font-size:16px}.edition-five .intro .section-heading{font-size:29px}.intro-island-palette{width:78px;right:-8px;top:87px}.intro-island-palette>svg{width:60px;height:60px}.studio-intro-visual{height:292px}.handwritten-note{font-size:8px;margin-top:22px}.parts-photo{bottom:0;width:45%}.intro-shell-friend{width:64px;height:68px;bottom:67px}.edition-five .intro-story{font-size:11px}.edition-five .workshops .section-heading{font-size:27px}.edition-five .howto-guide .section-heading{font-size:27px}.process-guide{width:105px;right:-21px;bottom:46px}.process-speech{font-size:7px;right:-5px;bottom:24px}.edition-five .howto-guide .section-description{font-size:10px;max-width:214px}.edition-five .step h3{font-size:18px}.edition-five .step-copy>p{font-size:11px}.edition-five .gallery-heading h2{font-size:31px}.gallery-treasures{width:119px}.edition-five .finale h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){.edition-five .studio-memory{translate:0 0}.edition-five .studio-stage *{animation:none!important}.edition-five .process-guide,.edition-five .studio-ticker>div,.edition-five .step-charm{animation:none!important}}
.motion-paused .studio-memory{translate:0 0}
@media(max-width:360px){.intro-island-palette .island-swatches{justify-content:flex-end;gap:4px;padding-right:2px}.intro-island-palette .island-swatches i{width:7px;height:7px}}

/* V5.1 — tell visitors what they can make before the emotional copy. */
.edition-five .hero-experience{font-size:clamp(36px,4.05vw,58px);line-height:1.47;letter-spacing:-.025em;margin-top:22px}
.hero-place{display:block;font-size:.51em;line-height:1.45;letter-spacing:.06em;margin-bottom:8px;color:var(--ink)}
.experience-line{display:block;white-space:nowrap}
.experience-join{display:inline-block;font-family:var(--en);font-size:.51em;margin-left:.3em;color:var(--sea);vertical-align:.08em}
.hero-tagline{font-size:17px;font-weight:700;color:var(--pink);margin-top:23px;letter-spacing:.04em}
@media(max-width:900px){.edition-five .hero-experience{font-size:4.35vw;margin-top:17px}.hero-tagline{font-size:13px;margin-top:19px}}
@media(max-width:620px){.edition-five .hero-experience{font-size:clamp(29px,8.1vw,39px);line-height:1.45;margin-top:15px}.hero-place{font-size:.58em;margin-bottom:5px}.hero-tagline{font-size:12px;margin-top:14px}.edition-five .hero-description{margin-top:9px}}
@media(max-width:360px){.edition-five .hero-experience{font-size:28px}.hero-tagline{font-size:11px;margin-top:13px}}

/* V6 — a shared rhythm for photography, typography, and booking. */
.edition-six {
  --pink: #c92f69;
  --ink: #473b40;
  --cream: #fffcf5;
  --sea: #286e62;
  --body-font: -apple-system, BlinkMacSystemFont, 'Hiragino Kaku Gothic ProN', 'Yu Gothic', Meiryo, sans-serif;
  font-family: var(--body-font);
  font-weight: 400;
  letter-spacing: .025em;
  padding-bottom: 120px;
}
.edition-six h1, .edition-six h2, .edition-six h3,
.edition-six .hero-tagline, .edition-six figcaption { font-family: var(--ja); }
.edition-six .section { padding-inline: max(6%, calc((100vw - 1200px) / 2)); }
.edition-six .section-heading { letter-spacing: .025em; line-height: 1.55; }
.edition-six .eyebrow { font-size: 11px; letter-spacing: .13em; }
.edition-six .section-description { font-size: 14px; line-height: 2; }
.edition-six .site-header { height: 88px; padding-inline: 4.5%; background: #fffcf5f7; border-color: #e9dfd9; }
.edition-six .brand > span { font-size: 32px; }
.edition-six .brand small { font-size: 8px; letter-spacing: 1.7px; color: var(--sea); }
.edition-six .desktop-nav { font-size: 12px; gap: 30px; }
.edition-six .header-book { border-radius: 12px; min-height: 48px; box-shadow: none; padding-inline: 22px; }
.edition-six .reserve-button { border-radius: 12px; box-shadow: none; letter-spacing: .04em; }
.edition-six .reserve-button:hover { box-shadow: none; background: #af2559; }
.edition-six .reserve-button svg { transition: transform .3s var(--ease); }
.edition-six .reserve-button:hover svg { transform: translate(2px, -2px); }
.edition-six .external-note { font-size: 10px; color: #765d68; }

/* A large real photograph, with the smaller objects gathered around its edges. */
.edition-six .hero { background: var(--cream); padding-bottom: 24px; }
.edition-six .studio-stage { width: calc(100% - 128px); max-width: 1280px; height: 576px; }
.edition-six .hero-copy { top: 49px; width: 49%; }
.edition-six .hero-location { font-size: 11px; letter-spacing: .02em; }
.edition-six .hero-location > span { font-size: 10px; margin-right: 10px; padding-bottom: 5px; }
.edition-six .hero-experience { font-size: clamp(37px, 4.05vw, 58px); margin-top: 23px; line-height: 1.5; }
.edition-six .hero-place { font-size: .49em; margin-bottom: 7px; }
.edition-six .catch-last:after { height: 10%; bottom: 8%; background: #efcc74; opacity: .75; }
.edition-six .hero-tagline { margin-top: 24px; font-size: 17px; }
.edition-six .hero-description { font-size: 14px; line-height: 2; letter-spacing: .055em; margin-top: 15px; }
.edition-six .hero-facts { font-size: 11px; margin-top: 22px; gap: 0; }
.edition-six .hero-facts li { background: none; border: 0; border-radius: 0; padding: 0 14px; }
.edition-six .hero-facts li:first-child { padding-left: 0; }
.edition-six .hero-facts li + li { border-left: 1px solid #cdbcaa; }
.edition-six .studio-discover { font-size: 12px; padding-block: 8px; margin-top: 17px; gap: 28px; }
.edition-six .studio-backdrop { display: none; }
.edition-six .studio-memory { top: 42px; right: 0; width: 91%; height: 405px; rotate: 0deg; }
.edition-six .studio-memory > img { border: 6px solid #fff; border-radius: 24px; box-shadow: 0 8px 24px #39332c0d; }
.edition-six .studio-memory figcaption { left: 23%; bottom: -34px; font-size: 12px; padding: 0; rotate: 0deg; border: 0; background: transparent; box-shadow: none; color: var(--sea); }
.edition-six .studio-seal { width: 94px; height: 94px; right: -11px; top: 22px; background: #deedb4; outline-color: #deedb4; }
.edition-six .studio-seal span { font-size: 10px; }
.edition-six .studio-seal svg { width: 33px; height: 33px; }
.edition-six .studio-product { width: 167px; right: -6px; bottom: 12px; rotate: 3deg; border-radius: 5px; box-shadow: 0 8px 24px #39332c12; }
.edition-six .studio-product > img { height: 118px; border-radius: 3px; }
.edition-six .studio-product small { font-size: 8px; letter-spacing: .04em; }
.edition-six .studio-product figcaption { font-size: 11px; }
.edition-six .studio-guide { left: -38px; width: 207px; bottom: 27px; }
.edition-six .studio-guide figcaption { font-size: 11px; }
.edition-six .charm-flower { top: 32px; left: 3%; width: 67px; height: 67px; }
.edition-six .charm-star { top: 25px; left: 28%; width: 30px; height: 30px; }
.edition-six .charm-shell { width: 54px; height: 54px; bottom: 22px; left: 49%; }
.edition-six .hero-treasures { width: 108px; right: -51px; top: 194px; }
.edition-six .world-orbit { opacity: .38; }

/* The same solid pink action and clear price hierarchy in every booking entry. */
.edition-six .booking-panel { width: calc(100% - 128px); max-width: 1280px; padding: 24px 26px 17px; border-color: #e2c5ce; border-radius: 20px; box-shadow: 0 10px 30px #8a4e6110; }
.edition-six .booking-top { margin-bottom: 19px; }
.edition-six .booking-top h2 { font-size: 21px; }
.edition-six .booking-top h2 > span { font-family: var(--body-font); font-size: 12px; font-weight: 400; margin-left: 12px; }
.edition-six .booking-top > p { font-size: 10px; }
.edition-six .quick-booking { grid-template-columns: minmax(0, 1fr) 230px; gap: 20px; }
.edition-six .quick-options { gap: 10px; }
.edition-six .quick-option-content { padding: 13px 11px; min-height: 98px; border-radius: 12px; border-width: 1px; gap: 11px; }
.edition-six .quick-option-content img { width: 48px; height: 58px; }
.edition-six .quick-option-copy > strong { font-size: 12px; letter-spacing: 0; }
.edition-six .quick-option-copy > span { font-size: 27px; line-height: 1.5; }
.edition-six .quick-option-copy > small { font-size: 10px; }
.edition-six .quick-option-content:after { width: 13px; height: 13px; right: 8px; top: 8px; }
.edition-six .quick-option > input:checked + .quick-option-content { background: #fff1f5; }
.edition-six .quick-reserve { min-height: 80px; font-size: 17px; }
.edition-six .quick-reserve small { font-size: 11px; font-weight: 400; }
.edition-six .booking-bottom { font-size: 11px; border-top-style: solid; border-color: #eee2e5; padding-top: 14px; margin-top: 18px; }
.edition-six .booking-bottom a span { font-size: 14px; }
.edition-six .hero-foot { width: calc(100% - 128px); max-width: 1280px; font-size: 9px; }
.edition-six .motion-control { font-family: var(--body-font); font-size: 11px; min-height: 40px; padding-inline: 16px; }
.edition-six .studio-ticker { padding-block: 13px; background: #c9e2d0; border-color: #b3d0bc; }
.edition-six .studio-ticker span { font-size: 25px; letter-spacing: .025em; }

/* Photography uses one paper edge; curves and small accents provide the play. */
.edition-six .studio-intro { column-gap: 9%; padding-top: 112px; padding-bottom: 80px; }
.edition-six .studio-intro-visual { min-height: 558px; padding-top: 10px; }
.edition-six .making-photo { width: 94%; rotate: -2deg; }
.edition-six .making-photo img { aspect-ratio: 1.05; border: 7px solid #fff; border-radius: 22px; box-shadow: 0 10px 30px #4f44310d; }
.edition-six .making-photo figcaption { font-size: 13px; margin: 13px 0 0 14px; }
.edition-six .parts-photo { right: -13px; bottom: 12px; width: 44%; rotate: 5deg; padding: 7px 7px 10px; border-radius: 7px; box-shadow: 0 6px 15px #6d505315; }
.edition-six .parts-photo img { border-radius: 3px; }
.edition-six .intro-shell-friend { width: 103px; height: 110px; left: -10%; bottom: 95px; }
.edition-six .handwritten-note { font-size: 13px; margin-top: 30px; margin-left: 8%; }
.edition-six .studio-intro-copy .eyebrow { font-size: 11px; }
.edition-six .intro .section-heading { font-size: clamp(34px, 3.2vw, 46px); line-height: 1.6; margin-top: 22px; }
.edition-six .intro-story { font-size: 14px; line-height: 2.15; letter-spacing: .02em; margin-top: 28px; }
.edition-six .intro-island-palette { margin-top: 29px; gap: 18px; }
.edition-six .intro-island-palette > svg { width: 56px; height: 56px; }
.edition-six .intro-island-palette p { font-size: 12px; font-weight: 400; }
.edition-six .store-introduction { font-size: 13px; line-height: 2.15; color: #695e57; border-color: #dedbd0; margin-top: 19px; padding-top: 26px; }

/* Price and booking precede the longer details, at equal heights across cards. */
.edition-six .workshops { border-radius: 48px 48px 0 0; background: #f6e4e9; padding-top: 92px; padding-bottom: 74px; }
.edition-six .workshops .section-heading { font-size: 42px; line-height: 1.55; }
.edition-six .workshops .section-top { margin-bottom: 42px; }
.edition-six .section-charms svg { top: 74px; width: 64px; height: 64px; }
.edition-six .section-charms svg:nth-child(2) { top: 53px; }
.edition-six .plan-grid { gap: 24px; align-items: stretch; }
.edition-six .plan-card { border-radius: 20px; border: 1px solid #e0c5cd; box-shadow: none; align-self: stretch; display: flex; flex-direction: column; }
.edition-six .plan-card.is-selected { border-color: #c5819a; }
.edition-six .plan-photo { padding: 17px; background: var(--plan-color); overflow: hidden; }
.edition-six .plan-photo > img { aspect-ratio: 1.2; object-fit: contain; background: #fffcf5; border-radius: 12px; }
.edition-six .plan-photo:hover > img { scale: 1.025; }
.edition-six .plan-photo > span { top: 27px; left: 27px; bottom: auto; width: 36px; height: 36px; display: grid; place-items: center; background: #fffcf5; color: var(--sea); font-size: 17px; border-radius: 50%; rotate: 0deg; -webkit-text-stroke: 0; }
.edition-six .plan-sticker { right: 24px; bottom: 23px; padding: 5px 10px; font-size: 10px; rotate: -3deg; background: #fffcf5; border: 0; border-radius: 4px; color: var(--pink); box-shadow: 0 2px 6px #44213710; }
.edition-six .plan-body { padding: 25px 24px 15px; display: flex; flex-direction: column; flex: 1; }
.edition-six .plan-english { font-size: 10px; letter-spacing: .09em; margin-bottom: 8px; }
.edition-six .plan-card h3 { font-size: 22px; min-height: 64px; line-height: 1.5; letter-spacing: .005em; }
.edition-six .plan-card h3 > small { font-family: var(--body-font); font-size: 11px; line-height: 1.7; color: #74636b; font-weight: 400; margin-top: 7px; }
.edition-six .plan-catch { font-size: 13px; margin-top: 13px; min-height: 26px; font-weight: 400; }
.edition-six .plan-price-row { display: flex; align-items: center; justify-content: space-between; margin: 21px 0 19px; gap: 8px; min-height: 46px; }
.edition-six .plan-price { font-size: 39px; color: var(--ink); }
.edition-six .plan-price > span { font-size: 22px; margin-right: 2px; }
.edition-six .plan-price > small { font-family: var(--body-font); font-size: 10px; font-weight: 400; }
.edition-six .plan-time { font-size: 11px; text-align: right; line-height: 1.8; margin: 0; }
.edition-six .plan-time br { display: block; }
.edition-six .plan-time span { margin: 0; }
.edition-six .plan-card .reserve-button { min-height: 54px; padding: 14px 15px; font-size: 13px; letter-spacing: .01em; }
.edition-six .plan-card .reserve-button svg { width: 21px; height: 21px; }
.edition-six .plan-card .external-note { font-size: 10px; margin-top: 8px; }
.edition-six .plan-description { font-size: 13px; line-height: 2; margin-top: 24px; min-height: 104px; }
.edition-six .plan-specs { font-size: 12px; line-height: 1.9; margin: 16px 0 0; flex: 1; }
.edition-six .plan-specs > div { grid-template-columns: 62px minmax(0, 1fr); gap: 10px; padding: 13px 0; border-color: #e8dfdf; }
.edition-six .plan-specs dt { font-weight: 500; color: #7c636d; }
.edition-six .plan-conditions { font-size: 12px; margin-top: 5px; }
.edition-six .plan-conditions summary { min-height: 51px; font-weight: 500; }
.edition-six .price-note { font-size: 11px; line-height: 1.9; margin-top: 24px; }
.edition-six .more-menu { border-color: #dfc7cc; margin-top: 30px; padding-top: 29px; }
.edition-six .more-menu h3 { font-size: 17px; }
.edition-six .more-menu p, .edition-six .more-menu > a { font-size: 12px; }
.edition-six .happy-ribbon { background: #f3e5c3; color: #78623f; border: 0; padding-block: 12px; rotate: 0deg; }
.edition-six .happy-ribbon span { font-size: 23px; }
.edition-six .marquee { --marquee-gap: 32px; --marquee-duration: 48s; }
.edition-six .studio-ticker.marquee { --marquee-duration: 52s; }
.edition-six .marquee > .marquee-track { display: flex; width: max-content; gap: 0; animation: ribbon var(--marquee-duration) linear infinite; }
.edition-six .marquee-group { display: flex; flex: 0 0 auto; min-width: 100vw; align-items: center; justify-content: space-around; gap: var(--marquee-gap); padding-inline: calc(var(--marquee-gap) / 2); }
.edition-six .marquee-unit { display: flex; flex: 0 0 auto; align-items: center; gap: var(--marquee-gap); }

.edition-six .studio-howto { display: block; padding-top: 100px; padding-bottom: 66px; }
.edition-six .howto-layout { display: grid; grid-template-columns: 31% minmax(0, 1fr); column-gap: 7%; align-items: stretch; }
.edition-six .howto-guide-boundary { position: relative; min-width: 0; }
.edition-six .howto-guide { top: 115px; padding-bottom: 24px; }
.edition-six .howto-guide .section-heading { font-size: 39px; line-height: 1.6; }
.edition-six .howto-guide .section-description { font-size: 13px; }
.edition-six .process-guide { width: 182px; margin-top: 32px; }
.edition-six .process-speech { font-size: 12px; }
.edition-six .steps { gap: 31px; }
.edition-six .step { grid-template-columns: 48% 1fr; gap: 27px; padding-bottom: 31px; border-bottom: 1px solid #ddd8ca; }
.edition-six .step-image, .edition-six .step:nth-child(2) .step-image { rotate: 0deg; }
.edition-six .step-image img { aspect-ratio: 1.05; border: 0; border-radius: 16px; }
.edition-six .step-image span { width: 43px; height: 43px; display: grid; place-items: center; top: 12px; left: 12px; bottom: auto; border-radius: 50%; font-size: 21px; background: var(--cream); color: var(--sea); -webkit-text-stroke: 0; rotate: 0deg; }
.edition-six .step h3 { font-size: 22px; line-height: 1.65; margin-top: 10px; }
.edition-six .step-copy > p { font-size: 13px; line-height: 2; margin-top: 16px; }
.edition-six .step-copy > .step-english { font-size: 10px; letter-spacing: .05em; }
.edition-six .step-charm { top: auto; bottom: 12px; left: 38%; width: 45px; height: 45px; }
.edition-six .step:nth-child(2) .step-charm { left: 38%; bottom: 15px; }
.edition-six .step:nth-child(3) .step-charm { width: 39px; height: 39px; }
.edition-six .visit-note { padding-block: 26px; margin-top: 40px; border-color: #dad5c8; gap: 28px; }
.edition-six .visit-note p, .edition-six .visit-note > a { font-size: 13px; }

.edition-six .gallery-section { background: #d7e7da; border-radius: 48px 48px 0 0; padding-block: 72px 30px; }
.edition-six .gallery-heading { max-width: 1200px; padding-inline: 0; margin-bottom: 42px; }
.edition-six .gallery-heading h2 { font-size: 46px; line-height: 1.5; }
.edition-six .gallery-treasures { right: 7%; width: 240px; top: -5px; }
.edition-six .gallery-flower { top: 116px; }
.edition-six .photo-gallery { gap: 22px; padding: 8px max(6%, calc((100vw - 1200px) / 2)) 22px; }
.edition-six .photo-gallery figure, .edition-six .photo-gallery figure:nth-child(even) { flex-basis: 29%; min-width: 245px; rotate: 0deg; margin-top: 0; background: #fffcf5; padding: 8px 8px 17px; border-radius: 12px; }
.edition-six .photo-gallery img { border: 0; border-radius: 7px; aspect-ratio: 1.2; box-shadow: none; }
.edition-six .photo-gallery figcaption { font-size: 13px; margin-top: 14px; }
.edition-six .gallery-bottom { max-width: 1200px; margin: 12px auto 0; padding: 0; }
.edition-six .gallery-bottom > span { font-size: 10px; }
.edition-six .gallery-bottom button { width: 46px; height: 46px; border-color: #709582; }
.edition-six .faq { background: var(--cream); padding-block: 104px; }
.edition-six .faq-heading h2 { font-size: 36px; }
.edition-six .faq-heading > p:not(.eyebrow) { font-size: 14px; line-height: 2; }
.edition-six .faq-list summary { font-size: 14px; line-height: 1.8; padding-block: 23px; gap: 17px; }
.edition-six .faq-list summary > span { font-family: var(--en); font-size: 20px; }
.edition-six .faq-answer { font-size: 13px; line-height: 2.1; padding-left: 37px; }
.edition-six .phone-caption { font-size: 11px; }
.edition-six .access { background: #f1e4e9; border-radius: 48px 48px 0 0; padding-block: 94px; }
.edition-six .access h2 { font-size: 36px; }
.edition-six .access h3 { font-size: 20px; margin-top: 31px; }
.edition-six .access address, .edition-six .access dl { font-size: 13px; line-height: 2; }
.edition-six .access dl > div { grid-template-columns: 74px 1fr; gap: 16px; padding-block: 13px; }
.edition-six .outline-button { font-size: 13px; min-height: 53px; border-radius: 12px; }
.edition-six .map-wrap { height: 405px; border: 6px solid var(--cream); border-radius: 18px; box-shadow: 0 9px 24px #7454680d; rotate: 0deg; }
.edition-six .instagram-link { gap: 22px; }
.edition-six .instagram-link small { font-size: 12px; }
.edition-six .instagram-link > img { border-radius: 12px; rotate: 0deg; }
.edition-six .finale { background: #dcebdc; padding-block: 90px 98px; }
.edition-six .finale h2 { font-size: 51px; line-height: 1.6; }
.edition-six .finale > p:not(.eyebrow) { font-size: 14px; line-height: 2; }
.edition-six .finale-phone { font-size: 12px; }
.edition-six .site-footer { padding-bottom: 45px; }
.edition-six .footer-links, .edition-six .footer-links button { font-size: 12px; }
.edition-six .footer-bottom, .edition-six .footer-bottom > a { font-size: 10px; }

/* The desktop dock is a focused floating control; mobile uses the full width. */
.edition-six .booking-dock { width: min(930px, calc(100% - 48px)); left: 50%; right: auto; translate: -50% 0; bottom: 18px; border: 1px solid #dcc1cb; border-radius: 18px; background: #fffdf9fa; box-shadow: 0 8px 35px #5227351c; padding: 12px 20px; gap: 24px; min-height: 88px; }
.edition-six .dock-intro { flex-shrink: 0; }
.edition-six .dock-intro > span { font-size: 9px; }
.edition-six .dock-intro > strong { font-family: var(--ja); font-size: 14px; }
.edition-six .dock-select-wrap { flex: 1; min-width: 0; }
.edition-six .dock-select-wrap > label { font-size: 10px; line-height: 1.5; margin-bottom: 4px; }
.edition-six .dock-select-wrap > label strong { font-size: 12px; }
.edition-six .dock-select-wrap select { border-color: #d8c2ca; border-radius: 8px; font-size: 13px; min-height: 40px; }
.edition-six .dock-reserve { min-width: 237px; min-height: 60px; font-size: 16px; }
.edition-six .dock-reserve small { font-size: 10px; font-weight: 400; }
.edition-six .dock-phone { font-size: 11px; }

@media (min-width: 621px) and (max-width: 1180px) {
  .edition-six .studio-stage { width: calc(100% - 80px); height: 565px; }
  .edition-six .hero-copy { top: 56px; }
  .edition-six .hero-location > span { display: block; width: max-content; margin-bottom: 6px; }
  .edition-six .hero-experience { font-size: 4.1vw; }
  .edition-six .studio-memory { height: 345px; top: 68px; }
  .edition-six .studio-seal { width: 76px; height: 76px; top: 45px; }
  .edition-six .studio-seal span { font-size: 8px; }
  .edition-six .studio-seal svg { width: 27px; height: 27px; }
  .edition-six .studio-guide { width: 175px; left: -27px; bottom: 41px; }
  .edition-six .studio-product { width: 142px; bottom: 32px; }
  .edition-six .studio-product > img { height: 96px; }
  .edition-six .studio-product small { font-size: 7px; }
  .edition-six .studio-product figcaption { font-size: 10px; }
  .edition-six .charm-flower { top: 49px; width: 54px; height: 54px; }
  .edition-six .charm-star { top: 45px; }
  .edition-six .hero-treasures { width: 90px; right: -38px; }
  .edition-six .booking-panel, .edition-six .hero-foot { width: calc(100% - 80px); }
  .edition-six .booking-top > p { display: none; }
  .edition-six .quick-option-content img { display: none; }
  .edition-six .quick-option-content { justify-content: center; padding: 14px 8px; }
  .edition-six .quick-option-copy > strong { font-size: 11px; }
  .edition-six .quick-option-copy > small { font-size: 10px; }
  .edition-six .quick-booking { grid-template-columns: minmax(0, 1fr) 205px; gap: 14px; }
  .edition-six .quick-reserve { gap: 12px; padding-inline: 14px; font-size: 15px; }
  .edition-six .booking-bottom { display: block; }
  .edition-six .booking-bottom > a { display: block; margin-top: 5px; }
  .edition-six .studio-intro { column-gap: 7%; }
  .edition-six .studio-intro-visual { min-height: 528px; padding-top: 25px; }
  .edition-six .parts-photo { bottom: 57px; width: 49%; }
  .edition-six .intro-story { font-size: 13px; }
  .edition-six .plan-grid { gap: 17px; }
  .edition-six .plan-body { padding-inline: 18px; }
  .edition-six .plan-card h3 { font-size: 19px; }
  .edition-six .plan-catch { font-size: 12px; }
  .edition-six .plan-price { font-size: 33px; }
  .edition-six .plan-price > small { font-size: 9px; }
  .edition-six .plan-time { font-size: 10px; }
  .edition-six .plan-card .reserve-button { font-size: 12px; padding-inline: 12px; }
  .edition-six .plan-description { min-height: 130px; }
  .edition-six .howto-guide .section-heading { font-size: 32px; }
  .edition-six .howto-guide .section-description { font-size: 12px; }
  .edition-six .step { gap: 20px; }
  .edition-six .step h3 { font-size: 19px; }
  .edition-six .step-copy > p { font-size: 12px; }
  .edition-six .step-copy > .step-english { font-size: 9px; }
  .edition-six .gallery-heading, .edition-six .gallery-bottom { margin-inline: 6%; }
}

@media (min-width: 621px) and (max-width: 900px) {
  .edition-six .site-header { height: 78px; }
  .edition-six .mobile-menu { top: 78px; }
  .edition-six .studio-stage { width: calc(100% - 56px); height: 535px; }
  .edition-six .hero-copy { width: 51%; top: 41px; }
  .edition-six .hero-location { font-size: 10px; }
  .edition-six .hero-experience { font-size: 4.2vw; margin-top: 21px; }
  .edition-six .hero-tagline { font-size: 14px; }
  .edition-six .hero-description { font-size: 12px; }
  .edition-six .hero-facts { font-size: 10px; }
  .edition-six .hero-facts li { padding-inline: 9px; }
  .edition-six .studio-visual { width: 49%; }
  .edition-six .studio-memory { height: 295px; width: 100%; top: 81px; right: -7px; }
  .edition-six .studio-memory figcaption { display: none; }
  .edition-six .studio-product { width: 124px; bottom: 30px; }
  .edition-six .studio-product > img { height: 85px; }
  .edition-six .studio-guide { width: 160px; bottom: 39px; left: -30px; }
  .edition-six .studio-guide figcaption { font-size: 9px; }
  .edition-six .studio-seal { top: 64px; right: -7px; }
  .edition-six .charm-flower { top: 70px; }
  .edition-six .charm-star { top: 66px; left: 34%; width: 24px; height: 24px; }
  .edition-six .charm-shell { width: 37px; height: 37px; bottom: 24px; }
  .edition-six .booking-panel, .edition-six .hero-foot { width: calc(100% - 48px); }
  .edition-six .booking-panel { padding: 23px 20px 16px; }
  .edition-six .quick-booking { grid-template-columns: minmax(0, 1fr) 185px; }
  .edition-six .quick-option-copy > strong { white-space: normal; line-height: 1.5; min-height: 34px; display: flex; align-items: center; }
  .edition-six .quick-option-copy > span { font-size: 25px; }
  .edition-six .quick-option-content:after { width: 10px; height: 10px; top: 6px; right: 6px; }
  .edition-six .quick-reserve { font-size: 15px; }
  .edition-six .studio-intro { padding-block: 80px 64px; gap: 22px 6%; }
  .edition-six .studio-intro-visual { min-height: 535px; padding-top: 24px; }
  .edition-six .making-photo { width: 100%; }
  .edition-six .parts-photo { width: 62%; bottom: 56px; }
  .edition-six .intro-shell-friend { width: 79px; height: 84px; bottom: 157px; }
  .edition-six .handwritten-note { margin-top: 42px; font-size: 11px; margin-left: 0; }
  .edition-six .intro .section-heading { font-size: 30px; }
  .edition-six .intro-story { font-size: 12px; }
  .edition-six .intro-story br:first-child { display: none; }
  .edition-six .intro-island-palette { gap: 10px; }
  .edition-six .intro-island-palette > svg { width: 42px; height: 42px; }
  .edition-six .intro-island-palette p { font-size: 11px; }
  .edition-six .workshops .section-heading { font-size: 34px; }
  .edition-six .plan-grid { grid-template-columns: 1fr; gap: 26px; }
  .edition-six .plan-card { display: grid; grid-template-columns: 36% minmax(0, 1fr); }
  .edition-six .plan-photo { padding: 26px 0 0 20px; align-self: start; background: transparent; overflow: visible; }
  .edition-six .plan-photo > img { aspect-ratio: .94; margin: 0; border: 8px solid var(--plan-color); background: var(--plan-color); }
  .edition-six .plan-photo > span { top: 40px; left: 32px; width: 30px; height: 30px; font-size: 14px; }
  .edition-six .plan-sticker { right: 8px; bottom: 11px; top: auto; font-size: 9px; }
  .edition-six .plan-body { padding: 26px 24px 13px; }
  .edition-six .plan-card h3 { font-size: 23px; min-height: 0; }
  .edition-six .plan-catch { min-height: 0; font-size: 13px; }
  .edition-six .plan-description { min-height: 0; }
  .edition-six .plan-price { font-size: 38px; }
  .edition-six .plan-time { font-size: 11px; }
  .edition-six .plan-card .reserve-button { font-size: 13px; }
  .edition-six .howto-layout { grid-template-columns: 30% minmax(0, 1fr); column-gap: 6%; }
  .edition-six .howto-guide .section-heading { font-size: 26px; }
  .edition-six .process-guide { width: 145px; margin-left: 0; }
  .edition-six .process-speech { font-size: 10px; }
  .edition-six .step { display: block; }
  .edition-six .step-image { width: 100%; }
  .edition-six .step-image img { aspect-ratio: 1.5; }
  .edition-six .step-copy { padding-top: 20px; }
  .edition-six .step-copy h3 br { display: none; }
  .edition-six .step-charm, .edition-six .step:nth-child(2) .step-charm { top: 0; bottom: auto; left: auto; right: -10px; }
  .edition-six .visit-note { gap: 20px; flex-wrap: wrap; }
  .edition-six .visit-note p, .edition-six .visit-note > a { font-size: 12px; }
  .edition-six .faq-heading h2, .edition-six .access h2 { font-size: 29px; }
  .edition-six .faq-heading > p:not(.eyebrow) { font-size: 13px; }
  .edition-six .faq-list summary { font-size: 13px; gap: 11px; }
  .edition-six .access { grid-template-columns: 1fr 1fr; gap: 6%; }
  .edition-six .access dl > div { grid-template-columns: 64px 1fr; gap: 10px; }
  .edition-six .access dl { font-size: 12px; }
  .edition-six .instagram-link { gap: 12px; }
  .edition-six .instagram-link > img { width: 66px; height: 66px; }
  .edition-six .instagram-link small { font-size: 10px; }
  .edition-six .booking-dock { max-width: 680px; }
  .edition-six .dock-reserve { min-width: 237px; }
}

@media (max-width: 620px) {
  .edition-six { padding-bottom: calc(90px + env(safe-area-inset-bottom)); }
  .edition-six .section { padding-inline: 6%; }
  .edition-six .site-header { height: 70px; padding-inline: 5%; gap: 12px; }
  .edition-six .brand > span { font-size: 25px; }
  .edition-six .brand small { font-size: 6px; letter-spacing: 1px; margin-top: 6px; }
  .edition-six .header-actions { gap: 15px; }
  .edition-six .header-book { min-height: 40px; padding: 9px 14px; border-radius: 10px; font-size: 11px; }
  .edition-six .mobile-menu { top: 70px; }
  .edition-six .hero { padding-bottom: 17px; }
  .edition-six .studio-stage { width: calc(100% - 40px); max-width: 440px; height: 663px; }
  .edition-six .hero-copy { top: 24px; width: 100%; }
  .edition-six .hero-location { font-size: 10px; letter-spacing: 0; }
  .edition-six .hero-location > span { display: inline-block; font-size: 9px; margin: 0 7px 0 0; padding-bottom: 3px; }
  .edition-six .hero-experience { font-size: clamp(28px, 8.3vw, 40px); line-height: 1.5; margin-top: 20px; }
  .edition-six .hero-place { font-size: .56em; margin-bottom: 6px; }
  .edition-six .hero-tagline { font-size: 14px; margin-top: 19px; }
  .edition-six .hero-description { font-size: 12px; line-height: 1.9; margin-top: 10px; letter-spacing: .04em; }
  .edition-six .hero-facts { font-size: 10px; margin-top: 17px; }
  .edition-six .hero-facts li { padding-inline: 12px; }
  .edition-six .studio-discover { display: none; }
  .edition-six .studio-visual { width: 100%; height: 302px; bottom: 9px; }
  .edition-six .studio-memory { top: 11px; right: 7px; width: 84%; height: 240px; rotate: 0deg; }
  .edition-six .studio-memory > img { border-width: 4px; border-radius: 17px; }
  .edition-six .studio-memory figcaption { display: none; }
  .edition-six .studio-seal { width: 60px; height: 60px; top: 0; right: -3px; }
  .edition-six .studio-seal span { font-size: 6px; }
  .edition-six .studio-seal svg { width: 23px; height: 23px; }
  .edition-six .studio-product { width: 110px; right: -4px; bottom: -2px; padding: 5px; }
  .edition-six .studio-product > img { height: 72px; }
  .edition-six .studio-product small { display: none; }
  .edition-six .studio-product figcaption { font-size: 9px; padding-top: 6px; }
  .edition-six .studio-guide { width: 141px; left: -17px; bottom: 4px; }
  .edition-six .charm-flower { width: 49px; height: 49px; left: 9px; top: 7px; }
  .edition-six .charm-star { width: 25px; height: 25px; left: 32%; top: 0; }
  .edition-six .charm-shell { width: 32px; height: 32px; bottom: -2px; left: 45%; }
  .edition-six .hero-treasures { width: 69px; right: -29px; top: 102px; }
  .edition-six .world-orbit { opacity: .36; bottom: 7px; }
  .edition-six .booking-panel { width: calc(100% - 30px); padding: 22px 15px 17px; border-radius: 18px; scroll-margin-top: 87px; }
  .edition-six .booking-top { margin-bottom: 18px; }
  .edition-six .booking-top h2 { font-size: 22px; }
  .edition-six .booking-top h2 > span { margin: 4px 0 0; font-size: 12px; }
  .edition-six .quick-options { gap: 7px; }
  .edition-six .quick-option-content { padding: 15px 5px 9px; min-height: 110px; border-radius: 10px; }
  .edition-six .quick-option-content img { display: none; }
  .edition-six .quick-option-copy > strong { font-size: 11px; white-space: normal; min-height: 34px; }
  .edition-six .quick-option-copy > span { font-size: 25px; }
  .edition-six .quick-option-copy > small { font-size: 9px; }
  .edition-six .quick-option-content:after { width: 11px; height: 11px; right: 5px; top: 5px; }
  .edition-six .quick-booking { gap: 16px; }
  .edition-six .quick-reserve { min-height: 60px; font-size: 16px; padding-inline: 15px; }
  .edition-six .quick-reserve small { font-size: 10px; }
  .edition-six .external-note { font-size: 10px; }
  .edition-six .booking-bottom { font-size: 10px; margin-top: 15px; padding-top: 12px; }
  .edition-six .booking-bottom > a { font-size: 10px; margin-top: 10px; }
  .edition-six .booking-bottom a span { font-size: 14px; margin-left: 4px; }
  .edition-six .hero-foot { width: calc(100% - 36px); font-size: 8px; }
  .edition-six .motion-control { font-size: 10px; padding-inline: 11px; }
  .edition-six .studio-ticker { padding-block: 12px; }
  .edition-six .studio-ticker span { font-size: 20px; }
  .edition-six .studio-ticker svg { width: 25px; height: 25px; }
  .edition-six .eyebrow, .edition-six .studio-intro-copy .eyebrow { font-size: 10px; letter-spacing: .1em; }
  .edition-six .section-description { font-size: 13px; line-height: 2; }
  .edition-six .studio-intro { padding-block: 66px 53px; }
  .edition-six .intro .section-heading { font-size: 35px; line-height: 1.6; margin-top: 20px; }
  .edition-six .intro-story { font-size: 13px; line-height: 2.1; margin-top: 25px; letter-spacing: .015em; }
  .edition-six .intro-story br:first-child { display: none; }
  .edition-six .intro-island-palette { position: static; width: auto; display: flex; text-align: left; margin-top: 23px; gap: 13px; rotate: 0deg; }
  .edition-six .intro-island-palette > svg { width: 43px; height: 43px; }
  .edition-six .intro-island-palette p { display: block; font-size: 11px; line-height: 1.8; }
  .edition-six .intro-island-palette .island-swatches { justify-content: flex-start; margin-top: 7px; gap: 7px; }
  .edition-six .intro-island-palette .island-swatches i { width: 8px; height: 8px; }
  .edition-six .studio-intro-visual { height: 368px; min-height: 0; margin-top: 37px; padding: 0; }
  .edition-six .making-photo { width: 88%; rotate: -2deg; }
  .edition-six .making-photo img { aspect-ratio: 1.1; border-width: 5px; border-radius: 15px; }
  .edition-six .making-photo figcaption { font-size: 11px; margin: 10px 0 0 10px; }
  .edition-six .parts-photo { width: 42%; right: 0; bottom: 8px; padding: 6px 6px 8px; }
  .edition-six .parts-photo figcaption { font-size: 10px; }
  .edition-six .intro-shell-friend { width: 66px; height: 70px; left: -9%; bottom: 115px; }
  .edition-six .handwritten-note { font-size: 10px; margin: 28px 0 0 4%; }
  .edition-six .store-introduction { font-size: 12px; line-height: 2; margin-top: 18px; padding-top: 24px; }
  .edition-six .workshops { padding-top: 65px; padding-bottom: 51px; border-radius: 30px 30px 0 0; }
  .edition-six .workshops .section-heading { font-size: 31px; line-height: 1.6; }
  .edition-six .workshops .section-top { margin-bottom: 34px; }
  .edition-six .workshops .section-description { font-size: 12px; }
  .edition-six .section-charms svg { width: 39px; height: 39px; top: 104px; left: -8px; }
  .edition-six .section-charms svg:nth-child(2) { width: 39px; height: 39px; top: 30px; right: 3%; }
  .edition-six .section-charms svg:nth-child(3) { width: 17px; height: 17px; top: 171px; }
  .edition-six .plan-grid { gap: 28px; }
  .edition-six .plan-card { border-radius: 18px; }
  .edition-six .plan-photo { padding: 16px; }
  .edition-six .plan-photo > img { aspect-ratio: 1.23; }
  .edition-six .plan-photo > span { top: 26px; left: 26px; }
  .edition-six .plan-body { padding: 23px 21px 12px; }
  .edition-six .plan-card h3 { font-size: 23px; min-height: 0; }
  .edition-six .plan-card h3 > small { font-size: 12px; margin-top: 6px; }
  .edition-six .plan-english { font-size: 10px; }
  .edition-six .plan-catch { font-size: 13px; min-height: 0; margin-top: 13px; }
  .edition-six .plan-price-row { margin: 22px 0 18px; }
  .edition-six .plan-price { font-size: 40px; }
  .edition-six .plan-price > small { font-size: 10px; }
  .edition-six .plan-card .reserve-button { font-size: 14px; padding-inline: 14px; min-height: 56px; }
  .edition-six .plan-description { min-height: 0; font-size: 13px; margin-top: 23px; }
  .edition-six .plan-specs { font-size: 12px; margin-top: 13px; }
  .edition-six .plan-specs > div { grid-template-columns: 62px minmax(0, 1fr); }
  .edition-six .plan-conditions { font-size: 12px; }
  .edition-six .price-note { font-size: 11px; }
  .edition-six .more-menu h3 { font-size: 15px; }
  .edition-six .more-menu p { font-size: 11px; }
  .edition-six .more-menu > a { font-size: 12px; }
  .edition-six .happy-ribbon span { font-size: 19px; }
  .edition-six .marquee { --marquee-gap: 24px; }
  .edition-six .studio-howto { display: block; padding-top: 67px; padding-bottom: 44px; }
  .edition-six .howto-layout { display: block; }
  .edition-six .howto-guide { top: auto; min-height: 242px; padding-bottom: 0; }
  .edition-six .howto-guide .section-heading { font-size: 33px; line-height: 1.6; }
  .edition-six .howto-guide .section-description { font-size: 12px; max-width: 235px; }
  .edition-six .process-guide { width: 126px; margin: 0; right: -20px; bottom: 46px; }
  .edition-six .process-speech { font-size: 9px; bottom: 20px; right: -2px; }
  .edition-six .steps { gap: 27px; margin-top: 31px; }
  .edition-six .step { display: block; padding-bottom: 27px; }
  .edition-six .step-image { width: 100%; }
  .edition-six .step-image img { aspect-ratio: 1.35; border: 0; border-radius: 14px; }
  .edition-six .step-image span { width: 40px; height: 40px; font-size: 20px; top: 12px; left: 12px; bottom: auto; }
  .edition-six .step-copy { padding: 23px 2px 0; }
  .edition-six .step-copy > .step-english { font-size: 10px; }
  .edition-six .step h3 { font-size: 22px; margin-top: 7px; }
  .edition-six .step-copy > p { font-size: 13px; line-height: 2; margin-top: 10px; }
  .edition-six .step-charm, .edition-six .step:nth-child(2) .step-charm { left: auto; right: -12px; top: -10px; bottom: auto; width: 47px; height: 47px; }
  .edition-six .step:nth-child(3) .step-charm { left: auto; width: 39px; height: 39px; }
  .edition-six .visit-note { margin-top: 27px; padding-block: 23px; }
  .edition-six .visit-note p { font-size: 12px; }
  .edition-six .visit-note > a { font-size: 13px; }
  .edition-six .gallery-section { border-radius: 30px 30px 0 0; padding-top: 59px; }
  .edition-six .gallery-heading { padding-inline: 6%; margin-bottom: 31px; }
  .edition-six .gallery-heading .eyebrow { font-size: 9px; }
  .edition-six .gallery-heading h2 { font-size: 36px; line-height: 1.5; margin-top: 18px; }
  .edition-six .gallery-treasures { width: 129px; right: 0; top: 56px; }
  .edition-six .gallery-flower { width: 28px; height: 28px; top: 29px; right: 8%; }
  .edition-six .photo-gallery { gap: 15px; padding: 6px 6% 20px; }
  .edition-six .photo-gallery figure, .edition-six .photo-gallery figure:nth-child(even) { flex-basis: 78%; min-width: 0; padding: 7px 7px 15px; }
  .edition-six .photo-gallery figcaption { font-size: 12px; margin-top: 12px; }
  .edition-six .gallery-bottom { padding-inline: 6%; margin-top: 6px; }
  .edition-six .gallery-bottom > span { font-size: 9px; }
  .edition-six .faq { padding-block: 70px; }
  .edition-six .faq-heading h2 { font-size: 32px; }
  .edition-six .faq-heading > p:not(.eyebrow) { font-size: 13px; }
  .edition-six .faq-list { margin-top: 34px; }
  .edition-six .faq-list summary { font-size: 13px; gap: 12px; padding-block: 22px; }
  .edition-six .faq-answer { font-size: 13px; padding-left: 31px; }
  .edition-six .access { padding-block: 65px; border-radius: 30px 30px 0 0; }
  .edition-six .access h2 { font-size: 31px; }
  .edition-six .access h3 { font-size: 19px; }
  .edition-six .access address, .edition-six .access dl { font-size: 13px; }
  .edition-six .access dl > div { grid-template-columns: 68px 1fr; gap: 10px; }
  .edition-six .map-wrap { height: 315px; border-width: 5px; border-radius: 14px; }
  .edition-six .instagram-link > span { font-size: 29px; }
  .edition-six .instagram-link small { font-size: 11px; }
  .edition-six .finale { padding-block: 66px 112px; }
  .edition-six .finale h2 { font-size: 36px; }
  .edition-six .finale > p:not(.eyebrow) { font-size: 13px; }
  .edition-six .finale-reserve { font-size: 14px; }
  .edition-six .finale-phone { font-size: 11px; }
  .edition-six .footer-links, .edition-six .footer-links button { font-size: 11px; }
  .edition-six .footer-bottom, .edition-six .footer-bottom > a { font-size: 9px; }
  .edition-six .booking-dock { width: 100%; left: 0; translate: 0 0; bottom: 0; border: 0; border-top: 1px solid #d9bcc7; border-radius: 0; padding: 9px 4% max(10px, env(safe-area-inset-bottom)); gap: 12px; min-height: 87px; background: #fffdf8; box-shadow: 0 -4px 24px #5227350d; }
  .edition-six .dock-select-wrap { flex: 1; min-width: 0; }
  .edition-six .dock-select-wrap > label { font-size: 9px; margin-bottom: 4px; letter-spacing: 0; }
  .edition-six .dock-select-wrap > label strong { font-size: 11px; }
  .edition-six .dock-select-wrap select { font-size: 12px; padding: 8px 18px 8px 8px; min-height: 41px; border-radius: 7px; }
  .edition-six .dock-reserve { flex: 1.08; min-width: 0; font-size: 14px; min-height: 60px; padding: 9px 11px; border-radius: 10px; gap: 8px; }
  .edition-six .dock-reserve small { font-size: 9px; }
}

@media (min-width: 480px) and (max-width: 620px) {
  .edition-six .studio-stage { height: 710px; }
}

@media (max-width: 360px) {
  .edition-six .brand > span { font-size: 22px; }
  .edition-six .brand small { font-size: 5.3px; }
  .edition-six .site-header { padding-inline: 4%; gap: 9px; }
  .edition-six .header-actions { gap: 11px; }
  .edition-six .header-book { padding-inline: 12px; }
  .edition-six .studio-stage { width: calc(100% - 32px); height: 638px; }
  .edition-six .hero-location { font-size: 9px; }
  .edition-six .hero-location > span { font-size: 8px; margin-right: 5px; }
  .edition-six .hero-experience { font-size: 28px; }
  .edition-six .hero-tagline { font-size: 13px; }
  .edition-six .hero-description { font-size: 12px; }
  .edition-six .hero-facts { font-size: 10px; }
  .edition-six .hero-facts li { padding-inline: 10px; }
  .edition-six .studio-visual { height: 277px; bottom: 10px; }
  .edition-six .studio-memory { width: 84%; height: 212px; }
  .edition-six .studio-guide { width: 124px; bottom: 8px; }
  .edition-six .studio-product { width: 96px; bottom: 2px; }
  .edition-six .studio-product > img { height: 62px; }
  .edition-six .studio-product figcaption { font-size: 8px; }
  .edition-six .studio-seal { width: 52px; height: 52px; }
  .edition-six .studio-seal span { font-size: 5px; }
  .edition-six .studio-seal svg { width: 21px; height: 21px; }
  .edition-six .charm-flower { width: 41px; height: 41px; }
  .edition-six .hero-treasures { width: 60px; right: -25px; }
  .edition-six .booking-panel { padding-inline: 12px; }
  .edition-six .quick-option-copy > strong { font-size: 10px; }
  .edition-six .quick-option-copy > span { font-size: 23px; }
  .edition-six .quick-option-copy > small { font-size: 8px; }
  .edition-six .quick-reserve { font-size: 14px; }
  .edition-six .booking-bottom a span { font-size: 13px; }
  .edition-six .intro .section-heading { font-size: 30px; }
  .edition-six .intro-story { font-size: 12px; }
  .edition-six .studio-intro-visual { height: 316px; }
  .edition-six .intro-shell-friend { width: 58px; height: 62px; bottom: 100px; }
  .edition-six .parts-photo { bottom: 6px; }
  .edition-six .handwritten-note { font-size: 9px; margin-top: 25px; }
  .edition-six .workshops .section-heading { font-size: 27px; }
  .edition-six .workshops .section-description { font-size: 12px; }
  .edition-six .plan-body { padding-inline: 17px; }
  .edition-six .plan-card h3 { font-size: 21px; }
  .edition-six .plan-price { font-size: 34px; }
  .edition-six .plan-time { font-size: 10px; }
  .edition-six .plan-card .reserve-button { font-size: 13px; }
  .edition-six .plan-specs { font-size: 11px; }
  .edition-six .plan-specs > div { grid-template-columns: 56px minmax(0, 1fr); }
  .edition-six .more-menu h3 { font-size: 14px; }
  .edition-six .howto-guide .section-heading { font-size: 28px; }
  .edition-six .howto-guide .section-description { max-width: 223px; font-size: 11px; }
  .edition-six .process-guide { width: 100px; right: -17px; bottom: 60px; }
  .edition-six .process-speech { font-size: 8px; bottom: 36px; }
  .edition-six .step h3 { font-size: 20px; }
  .edition-six .gallery-heading h2 { font-size: 32px; }
  .edition-six .gallery-heading .eyebrow { font-size: 8px; }
  .edition-six .gallery-treasures { width: 108px; }
  .edition-six .access h2 { font-size: 28px; }
  .edition-six .instagram-link { gap: 16px; }
  .edition-six .instagram-link > img { width: 73px; height: 73px; }
  .edition-six .instagram-link small { font-size: 10px; }
  .edition-six .finale h2 { font-size: 32px; }
  .edition-six .dock-select-wrap > label { font-size: 8px; }
  .edition-six .dock-select-wrap select { font-size: 11px; padding-left: 5px; }
  .edition-six .dock-reserve { font-size: 12px; gap: 5px; padding-inline: 9px; }
  .edition-six .dock-reserve svg { width: 17px; height: 17px; }
}

@media (prefers-reduced-motion: reduce) {
  .edition-six .reserve-button svg { transition: none; }
}

/* V6.3 — a mobile composition with readable choices and room for real photos. */
.edition-six .intro-story > p + p { margin-top: 2.15em; }

@media (max-width: 900px) {
  .edition-six .mobile-menu { max-height: calc(100dvh - 210px); overflow-y: auto; overscroll-behavior: contain; }
}

@media (max-width: 620px) {
  .edition-six .desktop-break { display: none; }
  .edition-six .header-actions { gap: 6px; }
  .edition-six .header-book { min-height: 44px; }
  .edition-six .menu-toggle { width: 44px; height: 44px; flex-shrink: 0; }
  .edition-six .menu-toggle span { margin-inline: auto; }
  .edition-six .motion-control { min-height: 44px; }

  /* Content determines height, so larger text cannot collide with the photo. */
  .edition-six .studio-stage {
    display: flex;
    flex-direction: column;
    gap: 27px;
    height: auto;
    width: calc(100% - 40px);
    padding-block: 24px 20px;
  }
  .edition-six .hero-copy { position: relative; inset: auto; translate: 0 0; }
  .edition-six .hero-experience { font-size: clamp(27px, 8.4vw, 38px); margin-top: 18px; line-height: 1.48; }
  .edition-six .hero-tagline { margin-top: 17px; }
  .edition-six .hero-description { font-size: 13px; line-height: 1.9; letter-spacing: .02em; }
  .edition-six .hero-facts { font-size: 11px; margin-top: 16px; }
  .edition-six .hero-facts li { padding-inline: 10px; }
  .edition-six .world-orbit { display: none; }
  .edition-six .studio-visual { position: relative; inset: auto; height: auto; padding-bottom: 43px; }
  .edition-six .studio-memory { position: relative; inset: auto; width: 100%; height: auto; }
  .edition-six .studio-memory > img { height: auto; aspect-ratio: 4 / 3; border-width: 3px; border-radius: 15px; }
  .edition-six .studio-seal { width: 55px; height: 55px; top: -12px; right: 5px; }
  .edition-six .studio-guide { width: 116px; left: -15px; bottom: 5px; }
  .edition-six .studio-product { width: 108px; right: 0; bottom: 0; }
  .edition-six .studio-product > img { height: 70px; }
  .edition-six .studio-product figcaption { font-size: 9px; }
  .edition-six .charm-flower { width: 40px; height: 40px; left: -10px; top: -10px; }
  .edition-six .charm-star { width: 23px; height: 23px; top: -12px; left: 34%; }
  .edition-six .charm-shell { width: 28px; height: 28px; left: 47%; bottom: 5px; }
  .edition-six .hero-treasures { width: 63px; right: -17px; top: 44%; }

  /* Each full-width row is one touch target: photo, name, price, duration. */
  .edition-six .booking-panel { padding: 24px 16px 18px; scroll-margin-top: 0; }
  .edition-six .booking-top { text-align: left; margin-bottom: 20px; }
  .edition-six .booking-top h2 { font-size: 24px; line-height: 1.5; }
  .edition-six .booking-top h2 > span { font-size: 13px; margin-top: 5px; }
  .edition-six .quick-options { grid-template-columns: minmax(0, 1fr); gap: 9px; }
  .edition-six .quick-option-content { min-height: 80px; padding: 11px 32px 11px 11px; gap: 12px; text-align: left; justify-content: flex-start; }
  .edition-six .quick-option-content img { display: block; width: 48px; height: 52px; flex-shrink: 0; object-fit: cover; }
  .edition-six .quick-option-copy { display: grid; grid-template-columns: auto 1fr; column-gap: 9px; align-items: baseline; width: 100%; }
  .edition-six .quick-option-copy > strong { display: block; grid-column: 1 / -1; min-height: 0; font-size: 13px; line-height: 1.6; }
  .edition-six .quick-option-copy > span { font-size: 25px; line-height: 1.35; }
  .edition-six .quick-option-copy > small { font-size: 11px; text-align: right; }
  .edition-six .quick-option-content:after { width: 16px; height: 16px; right: 10px; top: 50%; translate: 0 -50%; }
  .edition-six .quick-booking { gap: 16px; }
  .edition-six .quick-reserve { min-height: 67px; font-size: 17px; padding-inline: 20px; }
  .edition-six .quick-reserve > span { display: block; text-align: left; }
  .edition-six .quick-reserve small { max-width: none; font-size: 11px; line-height: 1.5; margin-bottom: 3px; }
  .edition-six .external-note, .edition-six .plan-card .external-note { font-size: 11px; }
  .edition-six .booking-bottom { font-size: 11px; line-height: 1.9; text-align: left; }
  .edition-six .booking-bottom > a { font-size: 11px; margin-top: 10px; }
  .edition-six .booking-bottom a span { font-size: 14px; white-space: nowrap; }

  /* Readable prose and a consistent mobile heading scale. */
  .edition-six .intro .section-heading { font-size: clamp(28px, 8vw, 33px); line-height: 1.5; margin-top: 18px; }
  .edition-six .intro-story { font-size: 14px; line-height: 2; margin-top: 22px; letter-spacing: .01em; }
  .edition-six .intro-story > p + p { margin-top: 16px; }
  .edition-six .intro-island-palette { margin-top: 20px; }
  .edition-six .intro-island-palette p { font-size: 12px; }
  .edition-six .studio-intro-visual { margin-top: 28px; }
  .edition-six .store-introduction { font-size: 14px; line-height: 2; }
  .edition-six .workshops .section-heading { font-size: clamp(27px, 8vw, 33px); line-height: 1.5; }
  .edition-six .workshops .section-description { font-size: 13px; }
  .edition-six .plan-card { display: flex; }
  .edition-six .plan-photo { padding: 14px; }
  .edition-six .plan-photo > img { aspect-ratio: 1.45; }
  .edition-six .plan-body { padding: 18px 20px 12px; }
  .edition-six .plan-english { margin-bottom: 6px; }
  .edition-six .plan-card h3 { font-size: 23px; }
  .edition-six .plan-card h3 > small { font-size: 12px; margin-top: 4px; }
  .edition-six .plan-catch { margin-top: 10px; font-size: 14px; line-height: 1.8; }
  .edition-six .plan-price-row { margin: 15px 0; flex-wrap: wrap; }
  .edition-six .plan-price { font-size: 36px; }
  .edition-six .plan-price > small { font-size: 11px; }
  .edition-six .plan-time { font-size: 12px; margin-left: auto; }
  .edition-six .plan-card .reserve-button { font-size: 14px; }
  .edition-six .plan-description { font-size: 14px; line-height: 2; margin-top: 20px; }
  .edition-six .plan-specs, .edition-six .plan-conditions { font-size: 13px; }
  .edition-six .plan-specs > div { grid-template-columns: 58px minmax(0, 1fr); }
  .edition-six .price-note, .edition-six .more-menu p { font-size: 12px; }

  /* The character has its own grid cell, outside the text and visit notice. */
  .edition-six .howto-guide { display: grid; grid-template-columns: minmax(0, 1fr) 92px; gap: 18px 12px; min-height: 0; }
  .edition-six .howto-guide .section-top { display: contents; }
  .edition-six .howto-guide .eyebrow { grid-column: 1 / -1; }
  .edition-six .howto-guide .section-heading { grid-column: 1 / -1; font-size: clamp(27px, 7.7vw, 32px); line-height: 1.55; margin: 0; }
  .edition-six .howto-guide .section-description { grid-column: 1; grid-row: 3; align-self: center; font-size: 13px; line-height: 2; max-width: none; margin: 0; }
  .edition-six .howto-guide .section-description br { display: none; }
  .edition-six .process-character { grid-column: 2; grid-row: 3; align-self: center; text-align: center; }
  .edition-six .process-guide { position: static; width: 92px; margin: 0; }
  .edition-six .process-speech { position: static; font-size: 10px; line-height: 1.6; margin: 0; rotate: 0deg; }
  .edition-six .steps { margin-top: 24px; }
  .edition-six .step-copy { padding-top: 18px; }
  .edition-six .step-copy > p { font-size: 14px; line-height: 2; }
  .edition-six .visit-note p { font-size: 13px; }
  .edition-six .visit-note { gap: 14px; }
  .edition-six .gallery-heading h2 { font-size: clamp(30px, 8.4vw, 35px); }
  .edition-six .faq-heading > p:not(.eyebrow), .edition-six .faq-list summary, .edition-six .faq-answer { font-size: 14px; }
  .edition-six .access address, .edition-six .access dl { font-size: 14px; }
  .edition-six .finale > p:not(.eyebrow) { font-size: 14px; }
  .edition-six .finale-phone { font-size: 12px; }

  /* Larger native selector, with the booking action visible on every screen. */
  .edition-six .booking-dock { gap: 9px; }
  .edition-six .dock-select-wrap { flex: 1.18; }
  .edition-six .dock-select-wrap > label { font-size: 10px; }
  .edition-six .dock-select-wrap select { font-size: 16px; font-weight: 500; letter-spacing: 0; padding: 8px 22px 8px 8px; min-height: 44px; }
  .edition-six .dock-reserve { flex: 1; font-size: 14px; padding-inline: 9px; gap: 6px; }
  .edition-six .dock-reserve small { font-size: 10px; }

  @media (max-width: 360px) {
    .edition-six .studio-stage { width: calc(100% - 32px); }
    .edition-six .hero-facts { font-size: 10px; }
    .edition-six .studio-guide { width: 103px; }
    .edition-six .studio-product { width: 100px; }
    .edition-six .studio-product > img { height: 64px; }
    .edition-six .booking-panel { padding-inline: 12px; }
    .edition-six .quick-option-content { gap: 10px; padding-left: 9px; }
    .edition-six .quick-option-content img { width: 43px; height: 48px; }
    .edition-six .quick-option-copy { column-gap: 5px; }
    .edition-six .quick-option-copy > span { font-size: 23px; }
    .edition-six .quick-option-copy > small { font-size: 10px; }
    .edition-six .plan-body { padding-inline: 16px; }
    .edition-six .plan-card h3 { font-size: 21px; }
    .edition-six .plan-price { font-size: 34px; }
    .edition-six .plan-time { font-size: 11px; }
    .edition-six .plan-card .reserve-button { font-size: 13px; }
    .edition-six .dock-select-wrap > label { font-size: 9px; }
    .edition-six .dock-reserve { font-size: 13px; gap: 5px; }
  }
}
