@charset "UTF-8";
:root{--cream:#f3f0e7;--ink:#372d24;--wine:#742d24;--green:#465731;--sage:#d6dcbc;--line:rgba(55,45,36,.19);--serif:'Instrument Serif',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--side:clamp(24px,5.2vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:15px;-webkit-font-smoothing:antialiased}body:has(dialog[open]),body.menu-open{overflow:hidden}::selection{background:#c7d198;color:var(--wine)}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.35}button{border:0;background:none}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}h2{font-family:var(--serif);font-size:clamp(52px,6.1vw,94px);line-height:1.02;letter-spacing:-.035em}em{font-weight:400;font-family:var(--serif)}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--wine);outline-offset:6px}a,button{touch-action:manipulation}.skip-link{position:fixed;z-index:2000;left:20px;top:-90px;background:var(--wine);color:white;padding:15px}.skip-link:focus{top:20px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.scroll-progress{position:fixed;top:0;left:0;width:100%;height:3px;z-index:600;background:var(--wine);transform:scaleX(0);transform-origin:left}.cursor{position:fixed;z-index:500;top:0;left:0;width:92px;height:92px;border-radius:50%;background:var(--wine);color:var(--cream);pointer-events:none;display:grid;place-items:center;opacity:0;transform:translate(-50%,-50%) scale(.5);transition:opacity .2s,transform .3s;mix-blend-mode:normal}.cursor span{font-size:9px;letter-spacing:.12em}.cursor.visible{opacity:1;transform:translate(-50%,-50%) scale(1)}.site-header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--side);position:sticky;top:0;background:rgba(243,240,231,.94);backdrop-filter:blur(18px);z-index:100;border-bottom:1px solid var(--line);transition:height .3s}.site-header.scrolled{height:78px}.brand{width:130px;flex-shrink:0}.brand img{mix-blend-mode:multiply}.desktop-nav{display:flex;gap:36px;align-items:center;font-size:12px;font-weight:500}.desktop-nav a{position:relative;padding:8px 0}.desktop-nav a:after{content:'';height:1px;background:var(--wine);position:absolute;bottom:1px;left:0;width:100%;transform:scaleX(0);transform-origin:right;transition:transform .3s}.desktop-nav a:hover:after{transform:scaleX(1);transform-origin:left}.header-actions{display:flex;gap:20px;align-items:center}.visit-button{background:var(--wine);color:var(--cream);padding:14px 21px;border-radius:2px;font-size:12px;display:flex;align-items:center;gap:25px;transition:background .25s,transform .25s}.visit-button:hover{background:var(--green);transform:translateY(-2px)}.visit-button span{font-size:19px}.menu-toggle{display:none;position:relative;width:34px;height:38px;padding:5px}.menu-toggle span{display:block;position:absolute;left:5px;width:24px;height:1px;background:var(--ink);transition:transform .3s;top:15px}.menu-toggle span+span{top:23px}.menu-open .menu-toggle span{transform:translateY(4px) rotate(45deg)}.menu-open .menu-toggle span+span{transform:translateY(-4px) rotate(-45deg)}.mobile-menu{display:none}
.hero{min-height:750px;height:calc(100svh - 100px);max-height:1040px;position:relative;padding:28px var(--side) 0;overflow:hidden;isolation:isolate}.hero-topline{display:flex;align-items:center;justify-content:space-between;letter-spacing:.15em;font-size:9px}.hero-topline i{font-size:17px;font-style:normal;margin-left:12px}.hero-copy{position:relative;z-index:3;padding-top:clamp(60px,8vh,100px);width:53%;pointer-events:none}.hero-copy a{pointer-events:auto}.eyebrow{font-size:10px;letter-spacing:.14em;line-height:1.6;font-weight:500}.hero-copy .eyebrow{display:flex;align-items:center;gap:10px}.flower{font-size:22px;line-height:1;color:var(--wine)}h1{font-family:var(--serif);font-size:clamp(94px,10.5vw,168px);line-height:.92;letter-spacing:-.045em;margin:28px 0 29px}.line{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}.line>span{display:block;animation:heading-in 1.25s cubic-bezier(.16,1,.3,1) both}.line.italic{font-style:italic;color:var(--green);font-size:1.18em;padding-right:20px}.line.italic>span{animation-delay:.13s}.hero-description{font-size:14px;line-height:1.7;max-width:310px;margin-bottom:26px}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;font-size:12px;font-weight:500;line-height:1.6}.round-arrow{display:grid;place-items:center;font-size:23px;width:45px;height:45px;border:1px solid currentColor;border-radius:50%;flex-shrink:0;transition:background .3s,color .3s,transform .4s}.text-link:hover .round-arrow{background:var(--wine);color:var(--cream);border-color:var(--wine);transform:rotate(45deg)}.hero-enter{animation:fade-in 1s .5s both}.hero-art{position:absolute;z-index:2;right:0;top:3%;height:93%;width:55%;animation:art-in 1.5s .2s cubic-bezier(.16,1,.3,1) both}.hero-halo{width:min(40vw,620px);height:min(40vw,620px);position:absolute;left:12%;top:13%;border-radius:50%;background:#d7ddbd}.hero-halo:after{content:'';position:absolute;inset:-20px;border:1px solid rgba(70,87,49,.17);border-radius:50%}.halo-orbit{position:absolute;inset:-21px;border:1px solid transparent;border-radius:50%;animation:spin 28s linear infinite}.halo-orbit:before{content:'';width:9px;height:9px;background:var(--green);position:absolute;left:15%;top:13%;border-radius:50%}.hero-cake-tilt{position:absolute;inset:0;will-change:transform;transition:transform .7s cubic-bezier(.2,.8,.2,1)}.hero-cake-float{position:absolute;left:2%;top:14%;width:100%;transform:rotate(-11deg);animation:cake-float 7s ease-in-out infinite}.hero-cake{width:100%;mix-blend-mode:multiply;user-select:none;pointer-events:none}.cake-shadow{position:absolute;left:30%;top:68%;width:46%;height:20px;border-radius:50%;filter:blur(16px);background:rgba(55,45,36,.13);z-index:-1;animation:shadow-float 7s ease-in-out infinite}.rotating-seal{position:absolute;top:5%;right:8%;width:132px;height:132px;z-index:5;color:var(--wine)}.rotating-seal svg{width:100%;height:100%;animation:spin 32s linear infinite;overflow:visible}.rotating-seal text{fill:currentColor;font:9.4px var(--sans);letter-spacing:2px}.rotating-seal>span{position:absolute;inset:0;display:grid;place-items:center;font-size:46px}.hero-japanese{position:absolute;right:4.5%;top:43%;font-family:serif;color:var(--green);font-size:19px;letter-spacing:.3em;line-height:1.8;writing-mode:vertical-rl;opacity:.75}.art-spark{position:absolute;font-size:40px;font-weight:400;animation:spark-float 8s ease-in-out infinite;line-height:1;color:var(--wine)}.spark-one{left:17%;top:12%;font-size:29px}.spark-two{right:12%;top:70%;animation-delay:-3s;font-size:47px}.cake-label{position:absolute;left:29%;top:78%;transform:rotate(-5deg);display:flex;flex-direction:column;gap:7px}.cake-label>span:first-child{font-size:11px;letter-spacing:.15em}.cake-label>span:nth-child(2){font-family:var(--serif);font-size:25px;font-style:italic;color:var(--green)}.cake-label svg{position:absolute;width:85px;height:45px;left:100%;top:-22px;transform:rotate(-10deg)}.cake-label path{stroke:var(--green);fill:none;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}.hero-bottom{position:absolute;left:var(--side);right:var(--side);bottom:25px;display:flex;align-items:center;justify-content:space-between;font-size:8px;letter-spacing:.12em}.scroll-note{display:flex;align-items:center;gap:12px}.scroll-note>span{font-size:23px;animation:scroll-down 2s ease-in-out infinite}.hero-location{padding-left:8%}.hero-count{font-size:11px}.hero-count>span{margin:0 10px;opacity:.35}.marquee{overflow:hidden;color:var(--cream);background:var(--wine);padding:22px 0}.marquee-track{display:flex;width:max-content;animation:marquee 36s linear infinite}.marquee-track>span{display:block;white-space:nowrap;font-family:var(--serif);font-size:38px;line-height:1;font-weight:400;letter-spacing:.01em}.marquee b{font-family:var(--sans);font-size:27px;font-weight:400;margin:0 30px;vertical-align:3px}.marquee:hover .marquee-track{animation-play-state:paused}
.section-pad{padding:80px var(--side) 120px}.section-index{display:flex;justify-content:space-between;padding:0 0 24px;border-bottom:1px solid var(--line);font-size:9px;letter-spacing:.13em;line-height:1.5}.section-index i{font-size:18px;font-style:normal;margin-left:16px}.house{padding-bottom:160px}.house-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:12%;padding-top:80px;align-items:center}.house-visual{position:relative;padding-bottom:100px}.house-image-wrap{overflow:hidden;aspect-ratio:.98;clip-path:inset(0 0 0 0 round 46% 46% 0 0);background:#b6b09e}.house-image-wrap>img{width:100%;height:115%;object-fit:cover;object-position:52% center;position:relative;top:-5%;will-change:transform}.image-caption{font-size:8px;letter-spacing:.08em;display:flex;justify-content:space-between;gap:15px;padding-top:15px}.house-inset{width:53%;position:absolute;right:-16%;bottom:0;transform:rotate(6deg);background:#ede3d0;padding:9px 9px 15px;box-shadow:0 15px 30px rgba(50,39,30,.09)}.house-inset img{aspect-ratio:1.3;object-fit:cover}.house-inset>span{font-family:var(--serif);display:block;font-style:italic;font-size:20px;padding:10px 0 0;text-align:center}.house-copy{padding-top:25px}.house-copy h2{margin:25px 0 28px}.house-copy h2 em{color:var(--green)}.body-copy{font-size:13px;line-height:1.9;max-width:370px;margin-bottom:19px}.house-copy .text-link{margin-top:12px}.house-signature{font-family:var(--serif);font-style:italic;font-size:34px;display:block;transform:rotate(-8deg);color:var(--wine);margin:43px 0 0 80px}
.collection{background:#eae7db;padding-bottom:65px;overflow:hidden}.collection-head{display:flex;justify-content:space-between;align-items:flex-end;padding:55px 0 43px}.collection-head h2 em{color:var(--wine)}.collection-intro{width:29%;font-size:13px;line-height:1.8;padding-bottom:6px}.small-link{display:inline-flex;gap:18px;align-items:center;font-size:11px;font-weight:500;line-height:1.7;padding:0 0 4px;border-bottom:1px solid currentColor;text-align:left}.small-link span{font-size:20px;line-height:1}.small-link:hover{color:var(--wine)}.collection-intro .small-link{margin-top:26px}.collection-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.filter-list{display:flex;gap:7px;flex-wrap:wrap}.filter{font-size:10px;padding:10px 15px;border:1px solid var(--line);border-radius:30px;white-space:nowrap;transition:background .25s,color .25s,border .25s}.filter:hover{border-color:var(--wine)}.filter.active{background:var(--ink);color:var(--cream);border-color:var(--ink)}.filter sup{margin-left:4px;font-size:7px}.rail-controls{display:flex;gap:7px}.arrow-control{border:1px solid var(--line);border-radius:50%;width:38px;height:38px;font-size:20px;transition:background .25s,color .25s}.arrow-control:hover{background:var(--wine);color:var(--cream)}.product-rail{display:flex;gap:20px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;scroll-behavior:smooth;cursor:grab;margin-right:calc(-1*var(--side));padding-right:var(--side);padding-bottom:5px;overscroll-behavior-x:contain}.product-rail::-webkit-scrollbar{display:none}.product-rail.dragging{scroll-snap-type:none;scroll-behavior:auto;cursor:grabbing}.product{display:block;flex:0 0 32%;min-width:290px;text-align:left;background:var(--card);padding:20px;scroll-snap-align:start;position:relative;overflow:hidden;transition:opacity .3s,box-shadow .3s;isolation:isolate;cursor:pointer}.product[hidden]{display:none}.product:hover{box-shadow:inset 0 0 0 1px rgba(55,45,36,.3)}.product-top{display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.08em}.product-tag{font-size:7px}.product-plus{font-size:22px;transition:transform .3s}.product:hover .product-plus{transform:rotate(45deg)}.product-art{margin:15px -20px 0;aspect-ratio:1.25;display:grid;place-items:center;position:relative}.product-art img{width:100%;mix-blend-mode:multiply;transition:transform .6s cubic-bezier(.2,.8,.2,1);user-select:none;pointer-events:none}.product:hover .product-art img{transform:translateY(-10px) rotate(-5deg) scale(1.05)}.product-info{padding:15px 0 9px;border-top:1px solid rgba(55,45,36,.2)}.product-info h3{font-family:var(--serif);font-size:30px;letter-spacing:-.02em;line-height:1.1}.product-info p{font-size:10px;margin-top:9px;opacity:.75}.rail-bottom{display:flex;align-items:center;gap:25px;margin-top:25px;font-size:8px;letter-spacing:.1em}.rail-progress{height:1px;background:var(--line);flex:1;overflow:hidden}.rail-progress>span{display:block;height:1px;background:var(--wine);width:100%;transform:scaleX(.33);transform-origin:left}.rail-hint{display:flex;align-items:center;gap:15px}.rail-hint span{font-size:22px}
.pause-scene{height:800px;min-height:600px;max-height:100svh;position:relative;overflow:hidden;background:var(--wine);color:var(--cream);padding:50px var(--side);display:flex;flex-direction:column;justify-content:space-between}.pause-photo{position:absolute;inset:0;z-index:0;overflow:hidden}.pause-photo img{width:100%;height:130%;max-width:none;object-fit:cover;object-position:50% 55%;position:relative;top:-12%;will-change:transform}.pause-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(30,26,21,.5),rgba(30,26,21,.07)),linear-gradient(0deg,rgba(30,26,21,.5),transparent 40%);z-index:1}.pause-top,.pause-bottom{position:relative;z-index:2;display:flex;justify-content:space-between;gap:20px}.pause-top{font-size:9px;letter-spacing:.15em}.pause-scene h2{position:relative;z-index:2;font-size:clamp(78px,9.2vw,147px);line-height:.95;letter-spacing:-.04em;padding-top:25px;text-shadow:0 2px 40px rgba(0,0,0,.1)}.pause-scene h2 em{color:#e0e6c9}.pause-bottom{align-items:flex-end}.pause-bottom p{font-size:12px;line-height:1.8}.scene-circle{display:flex;flex-direction:column;align-items:center;justify-content:center;width:125px;height:125px;gap:9px;border:1px solid rgba(243,240,231,.7);border-radius:50%;font-size:9px;line-height:1.5;letter-spacing:.1em;text-align:center;transition:background .3s,color .3s,transform .4s}.scene-circle>span+span{font-size:27px;line-height:1}.scene-circle:hover{background:var(--cream);color:var(--wine);transform:rotate(-10deg)}
.moments{padding-bottom:130px}.moments-heading{display:flex;justify-content:space-between;align-items:flex-end;padding:55px 0 65px;gap:25px}.moments-heading h2{font-size:clamp(52px,5.7vw,87px)}.moments-heading h2 em{color:var(--green)}.moments-heading>p{font-size:12px;line-height:1.8;flex:0 0 28%;padding-bottom:5px}.experience-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}.experience-photo{position:relative;height:430px;overflow:hidden;background:#cbb79b}.experience-photo>img{width:100%;height:100%;object-fit:cover;transition:opacity .25s,transform 1s}.experience-photo>img.changing{opacity:.2;transform:scale(1.04)}.experience-image-tag{position:absolute;bottom:15px;left:15px;right:15px;display:flex;justify-content:space-between;padding:15px 19px;background:var(--cream);font-size:9px;letter-spacing:.1em;align-items:center}.experience-image-tag>span+span{font-size:19px}.experience-item{border-top:1px solid var(--line)}.experience-item:last-child{border-bottom:1px solid var(--line)}.experience-trigger{display:flex;align-items:center;gap:20px;width:100%;text-align:left;padding:25px 0;font-family:var(--serif);font-size:35px;line-height:1}.experience-number{font:9px var(--sans);align-self:center;opacity:.7}.experience-toggle{margin-left:auto;font-family:var(--sans);font-size:24px;font-weight:400}.experience-item.selected .experience-trigger{color:var(--wine)}.experience-panel{padding:0 32px 27px}.experience-panel[hidden]{display:none}.experience-panel .eyebrow{font-size:8px;letter-spacing:.1em}.experience-panel>p:not(.experience-note){font-size:12px;line-height:1.85;margin:15px 0 18px;max-width:360px}.experience-note{font-size:9px;margin-top:10px;line-height:1.6;opacity:.65}.course-link{display:flex;width:max-content;margin-top:13px}.gift-section{display:grid;grid-template-columns:1fr 1.05fr;background:#d6dcbc;overflow:hidden;min-height:590px}.gift-copy{padding:85px 0 80px var(--side);position:relative;z-index:2}.gift-copy h2{margin:26px 0;font-size:clamp(66px,7vw,105px);color:var(--green)}.gift-copy h2 em{color:var(--wine)}.gift-copy>p:not(.eyebrow){font-size:13px;line-height:1.9;margin-bottom:28px}.gift-art{position:relative;min-height:590px}.gift-photo{position:absolute;inset:0 0 0 8%;clip-path:ellipse(73% 75% at 75% 50%);overflow:hidden}.gift-photo>img{width:100%;height:115%;object-fit:cover;object-position:43% center;position:relative;top:-5%;filter:saturate(.85)}.gift-note{position:absolute;z-index:2;left:-5%;top:48%;padding:30px 28px;background:var(--cream);transform:rotate(-9deg);width:220px;box-shadow:4px 8px 20px rgba(0,0,0,.07);display:flex;flex-direction:column;gap:18px}.gift-note>span:first-child{font-family:var(--serif);font-style:italic;font-size:48px;color:var(--wine)}.gift-note>span:nth-child(2){font-size:7px;letter-spacing:.1em}.gift-note-flower{position:absolute;right:15px;top:10px;font-size:30px;color:var(--green)}
.visit{padding-bottom:110px}.visit-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:9%;padding-top:65px;align-items:center}.status-dot{display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%;margin-right:8px;box-shadow:0 0 0 4px rgba(70,87,49,.08)}.visit-copy h2{margin:24px 0 35px}.visit-copy h2 em{color:var(--green)}.visit-details{display:grid;grid-template-columns:1fr 1fr;gap:22px}.detail-label{display:block;letter-spacing:.14em;font-size:8px;margin-bottom:12px;opacity:.7}.visit-details address,.visit-details p{font-size:12px;line-height:1.8;font-style:normal}.visit-links{display:flex;flex-direction:column;align-items:flex-start;gap:22px;margin:30px 0}.visit-links .small-link{font-size:10px}.visit-contact{border-top:1px solid var(--line);padding-top:20px;display:flex;gap:25px;flex-wrap:wrap}.visit-contact a{font-size:10px;display:flex;gap:12px;align-items:center}.visit-contact a span{font-size:15px}.visit-visual{position:relative;padding:0 0 20px}.visit-visual>img{width:100%;aspect-ratio:.95;object-fit:cover;object-position:40% center;clip-path:inset(0 0 0 0 round 46% 46% 0 0)}.visit-stamp{position:absolute;top:7%;left:-40px;transform:rotate(-12deg);width:105px;height:105px;border:1px solid var(--wine);border-radius:50%;background:var(--cream);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--wine)}.visit-stamp>span{font-size:8px;letter-spacing:.1em}.visit-stamp>span:nth-child(2){font-family:var(--serif);font-size:31px;line-height:1}.site-footer{padding:35px var(--side) 22px;background:var(--wine);color:var(--cream);position:relative;overflow:hidden}.footer-top{display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.08em}.footer-top a{display:flex;gap:20px;align-items:center}.footer-top a span{font-size:20px}.footer-message{display:flex;align-items:center;justify-content:space-between;padding:70px 0 60px}.footer-message p{font-family:var(--serif);font-size:clamp(90px,11.6vw,178px);line-height:.87;letter-spacing:-.04em}.footer-message p em{color:#cfd6ae}.footer-top-button{border:1px solid rgba(243,240,231,.5);width:76px;height:76px;border-radius:50%;display:grid;place-items:center;font-size:32px;transition:background .3s,color .3s}.footer-top-button:hover{background:var(--cream);color:var(--wine)}.footer-brand-row{border-top:1px solid rgba(243,240,231,.25);border-bottom:1px solid rgba(243,240,231,.25);padding:33px 0;display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-brand-row>a{width:180px;padding:14px;background:var(--cream)}.footer-brand-row img{mix-blend-mode:multiply}.footer-brand-row p{font-size:9px;line-height:1.8;letter-spacing:.1em;margin-left:auto}.footer-flower{font-size:72px;margin-left:6%;color:#cfd6ae;animation:spin 45s linear infinite}.footer-bottom{display:flex;align-items:center;justify-content:space-between;font-size:8px;gap:20px;padding-top:22px;line-height:1.7}.footer-bottom>div{display:flex;gap:24px}.footer-bottom a:hover{text-decoration:underline}
dialog{padding:0;border:1px solid rgba(55,45,36,.1);color:var(--ink);background:var(--cream);max-height:90svh;overflow:auto;box-shadow:0 25px 100px rgba(20,15,10,.25)}dialog[open]{animation:dialog-in .4s cubic-bezier(.2,.8,.2,1)}dialog::backdrop{background:rgba(35,29,24,.58);backdrop-filter:blur(8px)}.dialog-close{position:absolute;right:18px;top:14px;font-size:30px;font-weight:400;line-height:1;width:38px;height:38px;z-index:5;display:grid;place-items:center;border-radius:50%;background:var(--cream)}.dialog-close:hover{background:var(--wine);color:var(--cream)}.visit-dialog{width:640px;padding:52px}.visit-dialog h2{font-size:65px;margin:20px 0 28px}.visit-dialog h2 em{color:var(--green)}.visit-dialog>.eyebrow{font-size:8px}.visit-kind-list{display:flex;gap:6px;border-bottom:1px solid var(--line);padding-bottom:18px;flex-wrap:wrap}.visit-kind{font-size:9px;border:1px solid var(--line);border-radius:30px;padding:10px 12px}.visit-kind.active{background:var(--wine);color:var(--cream);border-color:var(--wine)}.visit-kind-content{padding:25px 0 26px;min-height:155px}.visit-kind-content h3{font-family:var(--serif);font-size:29px;margin-bottom:13px}.visit-kind-content p{font-size:12px;line-height:1.8;max-width:460px}.button-primary{display:flex;align-items:center;justify-content:space-between;gap:25px;background:var(--wine);color:var(--cream);font-size:12px;padding:17px 20px;transition:background .25s}.button-primary:hover{background:var(--green)}.button-primary>span{font-size:24px;line-height:1}.dialog-more{margin-top:20px}.dialog-address{font-size:8px;line-height:1.7;margin-top:28px;opacity:.7}.product-dialog{width:800px;display:none}.product-dialog[open]{display:grid;grid-template-columns:1fr 1fr;align-items:center}.product-dialog-art{height:100%;min-height:420px;background:#d6dcbc;display:flex;align-items:center;overflow:hidden}.product-dialog-art img{width:100%;mix-blend-mode:multiply;transform:rotate(-6deg)}.product-dialog-copy{padding:45px 30px}.product-dialog-copy h2{font-size:47px;margin:20px 0}.product-dialog-copy>p:not(.eyebrow):not(.product-order-note){font-size:12px;line-height:1.8;margin-bottom:28px}.product-order-note{font-size:9px;line-height:1.8;margin-top:18px;opacity:.7}.product-dialog-copy .eyebrow{font-size:8px}.product-dialog-copy .button-primary{font-size:10px;padding:14px}
.hero-cake,.product-art img,.product-dialog-art img{mix-blend-mode:normal}
.marquee-gap{display:inline-block;width:65px}
@media(max-width:760px){.marquee-gap{width:38px}}
.motion-ready .reveal{opacity:0;transform:translateY(35px);transition:opacity .85s cubic-bezier(.2,.8,.2,1),transform 1s cubic-bezier(.2,.8,.2,1)}.motion-ready .reveal.in-view{opacity:1;transform:translateY(0)}.house-visual.reveal{transition-duration:1.2s}.house-inset{transition:transform 1s}.house-visual:hover .house-inset{transform:rotate(1deg) translateY(-8px)}
@keyframes heading-in{from{transform:translateY(110%) rotate(3deg)}to{transform:translateY(0) rotate(0)}}@keyframes fade-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes art-in{from{opacity:0;transform:translateY(50px) rotate(8deg)}to{opacity:1;transform:translateY(0) rotate(0)}}@keyframes cake-float{0%,100%{transform:translateY(0) rotate(-11deg)}50%{transform:translateY(-19px) rotate(-7deg)}}@keyframes shadow-float{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.85);opacity:.65}}@keyframes spark-float{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(25deg)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes scroll-down{0%,100%{transform:translateY(-3px)}50%{transform:translateY(4px)}}@keyframes dialog-in{from{opacity:0;transform:translateY(25px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(min-width:1600px){.hero-art{right:3%;width:50%}.hero-copy{padding-top:9vh}.hero-cake-float{top:14%;left:0;width:100%}.cake-label{top:79%}.house-layout{gap:15%}.collection .product{flex-basis:28%}}
@media(min-width:1000px) and (max-height:810px){.hero{min-height:680px}.hero-copy{padding-top:48px}h1{font-size:clamp(95px,9.5vw,150px);margin-top:20px;margin-bottom:20px}.hero-description{font-size:12px;line-height:1.65;margin-bottom:18px}.hero-art{top:0}.hero-halo{top:12%;width:37vw;height:37vw}.hero-cake-float{top:9%}.cake-label{top:78%}.rotating-seal{top:4%}.spark-two{top:75%}}
@media(max-width:1100px){.desktop-nav{gap:22px}.hero-copy{width:54%}.hero-halo{width:43vw;height:43vw;left:7%;top:20%}.hero-cake-float{top:24%;left:-3%;width:105%}.hero-art{top:0;width:54%}.rotating-seal{top:9%;right:7%;width:110px;height:110px}.spark-one{top:23%;left:7%}.spark-two{top:72%}.hero-japanese{top:44%;right:4%}.cake-label{top:75%;left:16%}.hero-copy{padding-top:95px}h1{font-size:clamp(95px,11vw,145px)}.house-layout{gap:10%}.body-copy{font-size:12px}.house-inset{right:-8%}.product{flex-basis:38%;min-width:280px}.product-info h3{font-size:28px}.experience-grid{gap:5%}.experience-trigger{font-size:31px;gap:14px}.experience-photo{height:420px}.gift-note{width:180px;left:-5%}.gift-note>span:first-child{font-size:42px}.visit-layout{gap:7%}.visit-contact{gap:15px}.footer-bottom>span:last-child{display:none}.footer-bottom>div{gap:18px}}
@media(max-width:760px){:root{--side:23px}.site-header,.site-header.scrolled{height:78px}.brand{width:111px}.desktop-nav{display:none}.visit-button{font-size:10px;padding:10px 13px;gap:16px}.visit-button span{font-size:18px}.menu-toggle{display:block}.header-actions{gap:16px}.mobile-menu{display:flex;position:fixed;inset:78px 0 0;background:var(--cream);z-index:90;flex-direction:column;padding:45px var(--side) 30px;transform:translateY(-120%);visibility:hidden;transition:transform .6s cubic-bezier(.2,.8,.2,1),visibility .6s;gap:0}.menu-open .mobile-menu{transform:translateY(0);visibility:visible}.mobile-menu a{font-family:var(--serif);font-size:47px;padding:19px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:20px}.mobile-menu a span{font:9px var(--sans)}.mobile-menu p{font-size:11px;margin-top:auto;padding-top:35px}.hero{height:auto;min-height:1040px;max-height:none;padding-top:20px}.hero-topline{font-size:6.5px;letter-spacing:.09em;align-items:center;gap:20px}.hero-topline>span+span{white-space:nowrap}.hero-topline i{display:none}.hero-copy{width:100%;padding-top:45px}.hero-copy .eyebrow{font-size:8px;gap:8px}.flower{font-size:18px}h1{font-size:clamp(83px,20vw,145px);margin:23px 0 20px;line-height:.9}.line.italic{font-size:1.2em}.hero-description{font-size:12px;line-height:1.8;margin:0 0 21px}.hero-copy .text-link{font-size:10px;gap:18px}.round-arrow{width:39px;height:39px;font-size:21px}.hero-art{top:475px;right:0;width:100%;height:510px}.hero-halo{top:10%;width:79vw;height:79vw;max-width:395px;max-height:395px;left:13%}.hero-halo:after{inset:-15px}.halo-orbit{inset:-16px}.hero-cake-float{left:-2%;top:15%;width:104%}.hero-japanese{font-size:14px;right:3%;top:36%;letter-spacing:.25em}.rotating-seal{width:96px;height:96px;top:0;right:7%}.rotating-seal>span{font-size:34px}.spark-one{font-size:25px;left:11%;top:13%}.spark-two{right:9%;top:73%;font-size:32px}.cake-shadow{top:65%;left:23%;width:55%}.cake-label{left:15%;top:77%}.cake-label>span:first-child{font-size:9px}.cake-label>span:nth-child(2){font-size:22px}.cake-label svg{width:60px;left:95%;top:-20px}.hero-bottom{bottom:22px;font-size:6px;gap:12px}.hero-location{display:none}.hero-count{font-size:9px}.hero-count>span{margin:0 7px}.scroll-note>span{font-size:18px}.marquee{padding:18px 0}.marquee-track>span{font-size:30px}.marquee b{font-size:20px;margin:0 18px;vertical-align:2px}.section-pad{padding:47px var(--side) 65px}.section-index{font-size:7px;padding-bottom:18px;letter-spacing:.08em}.section-index i{font-size:14px;margin-left:7px}.house{padding-bottom:80px}.house-layout{display:flex;flex-direction:column;gap:45px;padding-top:40px}.house-visual{width:87%;align-self:flex-start;padding-bottom:65px}.house-image-wrap{aspect-ratio:1}.house-inset{width:53%;right:-15%;padding:7px 7px 11px}.house-inset>span{font-size:17px;padding-top:7px}.image-caption{font-size:6px;padding-top:12px}.house-copy{padding:0;align-self:flex-start}.house-copy h2{font-size:64px;margin:19px 0 25px}.house-copy .eyebrow{font-size:8px}.body-copy{font-size:12px;max-width:100%;line-height:1.9}.house-copy .text-link{font-size:11px}.house-signature{margin:30px 0 0 45%;font-size:29px}.collection{padding-bottom:36px}.collection-head{display:block;padding:33px 0 28px}.collection-head h2{font-size:64px}.collection-intro{width:100%;font-size:11px;margin-top:22px;display:flex;gap:15px;align-items:flex-end;justify-content:space-between}.collection-intro .small-link{margin:0 0 4px;max-width:145px;font-size:9px;gap:10px}.collection-intro>p{flex-shrink:0}.collection-toolbar{align-items:center;gap:10px;margin-bottom:20px}.filter-list{gap:5px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;max-width:100%;padding:2px 0 4px}.filter{font-size:8px;padding:9px 10px}.filter sup{font-size:6px}.rail-controls{display:none}.product-rail{gap:12px}.product{flex-basis:82%;min-width:0;padding:16px}.product-top{font-size:8px}.product-tag{font-size:6px}.product-art{margin:14px -16px 0;aspect-ratio:1.2}.product-info{padding:15px 0 7px}.product-info h3{font-size:29px}.product-info p{font-size:10px}.rail-bottom{margin-top:20px;font-size:6px;gap:16px}.rail-bottom>span:first-child{max-width:115px;line-height:1.7}.rail-hint{font-size:0;gap:0}.rail-hint>span{font-size:24px}.pause-scene{height:670px;max-height:90svh;min-height:550px;padding:30px var(--side)}.pause-top{font-size:7px;letter-spacing:.08em;gap:15px}.pause-photo img{object-position:52% center;width:100%;height:125%;top:-10%}.pause-shade{background:linear-gradient(0deg,rgba(30,26,21,.55),rgba(30,26,21,.12) 80%)}.pause-scene h2{font-size:82px;line-height:.98;letter-spacing:-.045em;padding:0}.pause-bottom{gap:15px;align-items:flex-end}.pause-bottom p{font-size:10px;max-width:195px}.scene-circle{width:90px;height:90px;flex-shrink:0;font-size:7px;gap:5px}.scene-circle>span+span{font-size:23px}.moments{padding-bottom:65px}.moments-heading{display:block;padding:34px 0 30px}.moments-heading h2{font-size:54px}.moments-heading>p{font-size:11px;margin-top:23px}.experience-grid{display:flex;flex-direction:column;gap:28px}.experience-photo{height:290px;width:100%}.experience-image-tag{padding:12px;bottom:12px;left:12px;right:12px;font-size:7px}.experience-list{width:100%}.experience-trigger{padding:23px 0;font-size:32px;gap:17px}.experience-number{font-size:8px}.experience-panel{padding:0 27px 25px}.experience-panel>p:not(.experience-note){font-size:12px;max-width:100%}.gift-section{display:flex;flex-direction:column;min-height:0}.gift-copy{padding:55px var(--side) 35px}.gift-copy .eyebrow{font-size:8px}.gift-copy h2{font-size:78px;margin:20px 0 23px}.gift-copy>p:not(.eyebrow){font-size:12px;margin-bottom:24px}.gift-copy .text-link{font-size:11px}.gift-art{min-height:340px;height:340px;position:relative;margin-left:var(--side)}.gift-photo{inset:0 -1px 0 10%;clip-path:ellipse(78% 85% at 78% 65%)}.gift-photo>img{object-position:45% center}.gift-note{left:0;top:26%;width:170px;padding:22px;gap:14px}.gift-note>span:first-child{font-size:41px}.gift-note>span:nth-child(2){font-size:6px}.gift-note-flower{font-size:22px}.visit-layout{display:flex;flex-direction:column;gap:45px;padding-top:35px}.visit-copy{width:100%}.visit-copy .eyebrow{font-size:8px}.visit-copy h2{font-size:68px;margin:22px 0 30px}.visit-details{gap:12px}.detail-label{font-size:7px}.visit-details address,.visit-details p{font-size:11px}.visit-links{gap:20px;margin:28px 0}.visit-links .text-link{font-size:11px}.visit-contact{gap:22px}.visit-contact a{font-size:9px;gap:8px}.visit-visual{width:90%;align-self:flex-end}.visit-visual>img{aspect-ratio:1.03}.visit-stamp{width:85px;height:85px;left:-28px;top:9%;gap:4px}.visit-stamp>span{font-size:6px}.visit-stamp>span:nth-child(2){font-size:28px}.visit{padding-bottom:55px}.site-footer{padding:27px var(--side) 23px}.footer-top{font-size:7px;letter-spacing:.05em;align-items:flex-start;gap:30px}.footer-top>a{font-size:7px;max-width:165px;gap:10px;line-height:1.7}.footer-top a span{font-size:17px}.footer-message{padding:55px 0 43px}.footer-message p{font-size:100px}.footer-top-button{width:48px;height:48px;font-size:24px}.footer-brand-row{padding:25px 0;gap:15px}.footer-brand-row>a{width:127px;padding:11px;flex-shrink:0}.footer-brand-row p{font-size:6px;letter-spacing:.06em;line-height:1.8}.footer-flower{font-size:36px;margin-left:3%}.footer-bottom{align-items:flex-start;flex-direction:column;gap:13px;font-size:7px;padding-top:18px}.footer-bottom>div{gap:20px;flex-wrap:wrap}.visit-dialog{width:calc(100% - 28px);padding:40px 26px 26px}.visit-dialog h2{font-size:54px;line-height:1.03;margin:19px 0 25px}.visit-dialog>.eyebrow{font-size:7px;max-width:230px}.dialog-close{right:12px;top:10px;font-size:28px;width:32px;height:32px}.visit-kind{font-size:8px;padding:10px}.visit-kind-list{gap:5px}.visit-kind-content{min-height:170px;padding-top:22px}.visit-kind-content h3{font-size:27px}.visit-kind-content p{font-size:11px}.dialog-address{font-size:7px;margin-top:23px}.product-dialog{width:calc(100% - 28px)}.product-dialog[open]{display:block}.product-dialog-art{min-height:0;height:235px}.product-dialog-art img{height:100%;object-fit:contain}.product-dialog-copy{padding:28px}.product-dialog-copy h2{font-size:42px;margin:16px 0}.product-dialog-copy>p:not(.eyebrow):not(.product-order-note){font-size:11px;margin-bottom:23px}.product-order-note{font-size:8px}.cursor{display:none}.motion-ready .reveal{transform:translateY(20px)}}
@media(max-width:370px){:root{--side:19px}.header-actions{gap:10px}.visit-button{padding:9px 11px;gap:10px}.hero{min-height:960px}.hero-topline{font-size:5.8px;gap:10px}.hero-copy{padding-top:38px}.hero-art{top:450px;height:450px}.cake-label{top:76%;left:12%}.hero-description{font-size:11px}.hero-bottom{font-size:5.5px}.house-copy h2{font-size:59px}.collection-head h2{font-size:59px}.filter{font-size:7px;padding:8px}.collection-intro{font-size:10px}.moments-heading h2{font-size:48px}.experience-trigger{font-size:29px}.visit-copy h2{font-size:61px}.footer-message p{font-size:90px}.visit-kind{font-size:7px;padding:9px}.visit-dialog h2{font-size:47px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}.hero-art,.hero-enter{opacity:1}.cursor{display:none!important}.product-rail{scroll-behavior:auto}.hero-cake-tilt,.pause-photo img,.house-image-wrap img,.gift-photo img{transform:none!important}}
