@font-face{font-family:'Craft Serif';src:url('assets/serif.ttf') format('truetype');font-weight:400;font-display:swap}
:root{--paper:#f5f2eb;--white:#fffdfa;--ink:#252d27;--green:#203e33;--muted:#65695e;--gold:#8c7751;--line:#d7d5ca;--serif:'Craft Serif','Noto Serif JP','Yu Mincho','Hiragino Mincho ProN',serif;--sans:-apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.8 var(--sans);-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img{display:block;width:100%;height:auto}figure,h1,h2,h3,p{margin:0}button,a{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:2px solid #8d6031;outline-offset:5px}h1,h2,h3{font-weight:400;font-family:var(--serif)}[hidden]{display:none!important}.skip{position:fixed;z-index:40;top:-90px;left:20px;padding:10px 20px;background:white}.skip:focus{top:10px}.header{height:100px;padding:0 4.7%;display:flex;align-items:center;gap:32px;background:var(--paper);border-bottom:1px solid var(--line);position:relative;z-index:20}.brand{display:flex;flex-direction:column;align-items:flex-start;line-height:1.1;flex:none}.brand>span{font-size:25px;font-weight:600;letter-spacing:.02em}.brand-wa{font-family:var(--serif);font-weight:400;margin-left:3px;font-size:29px}.brand small{font-size:9px;letter-spacing:.27em;margin-top:9px}.desktop-nav{margin-left:auto;display:flex;gap:32px;font-size:12px}.desktop-nav a{padding:15px 0;position:relative}.desktop-nav a:after{content:'';position:absolute;bottom:9px;left:0;width:0;height:1px;background:var(--ink);transition:width .25s}.desktop-nav a:hover:after{width:100%}.header-actions{display:flex;align-items:center;gap:27px}.languages{display:flex;gap:10px;align-items:center;font-size:11px;letter-spacing:.06em}.languages a{padding:12px 0;color:var(--muted)}.language-divider{color:#a1a397}.header-shop{background:var(--green);color:white;padding:14px 23px;font-size:11px;letter-spacing:.06em;display:flex;gap:23px;align-items:center}.header-shop span{font-size:19px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:45% 55%;max-width:1600px;margin:0 auto}.hero-copy{padding:62px 10% 24px 15%;display:flex;align-items:flex-start;flex-direction:column}.eyebrow{font-family:var(--sans);font-size:10px;letter-spacing:.18em;font-weight:500;line-height:1.6;color:var(--gold)}.hero .eyebrow{font-size:9px;display:flex;gap:12px;align-items:center;white-space:nowrap}.small-line{display:block;width:22px;height:1px;background:var(--gold)}.hero h1{font-size:clamp(44px,4.45vw,68px);line-height:1.52;letter-spacing:.075em;margin:33px 0 22px}.hero-description{font-size:13px;line-height:2.15;letter-spacing:.05em;color:#4f584c}.button{display:flex;align-items:center;justify-content:space-between;gap:44px;background:var(--green);color:white;padding:15px 24px;min-height:56px;font-size:13px;letter-spacing:.06em;transition:background .25s}.button:hover,.header-shop:hover{background:#365447}.button span{font-size:20px;line-height:1}.hero .button{margin-top:28px;min-width:236px}.text-link{display:inline-flex;justify-content:space-between;align-items:center;gap:35px;border-bottom:1px solid #a7ab9c;padding:10px 0;font-size:12px;line-height:1.8;transition:color .25s,border-color .25s}.text-link:hover{color:var(--gold);border-color:var(--gold)}.text-link span{font-size:18px}.hero-story{margin-top:12px;border-bottom:0;font-size:11px;gap:24px}.hero-footnote{width:100%;display:flex;justify-content:space-between;margin-top:auto;padding-top:35px;font-size:9px;color:var(--muted);letter-spacing:.14em}.hero-visual{position:relative;min-width:0;background:#e5e0d5;overflow:hidden;align-self:stretch}.hero-visual>img{height:100%;min-height:700px;max-height:860px;object-fit:cover;object-position:center}.hero-visual figcaption{position:absolute;bottom:25px;left:28px;right:28px;background:rgba(250,248,242,.95);padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;font-family:var(--serif);font-size:20px}.hero-visual figcaption small{font:8px/1.5 var(--sans);letter-spacing:.22em;display:block;color:var(--gold);margin-bottom:5px}.hero-visual figcaption a{font:11px/1.5 var(--sans);border-bottom:1px solid #969d8d;white-space:nowrap;padding:10px 0}.hero-visual figcaption a span{margin-left:18px}.section{max-width:1380px;margin:0 auto;padding:100px 5.3%}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:42px}.section-heading h2{font-size:34px;line-height:1.55;letter-spacing:.05em;margin-top:13px}.section-intro{color:var(--muted);font-size:12px;line-height:2}.occasion-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.occasion-grid>a{padding:29px 20px 31px 0;display:grid;grid-template-columns:1fr 34px;position:relative;gap:14px;transition:background .2s}.occasion-grid>a+a{border-left:1px solid var(--line);padding-left:24px}.occasion-number{font:11px/1.4 Georgia,serif;color:var(--gold);grid-column:1/-1}.occasion-grid h3{font-size:19px;line-height:1.7}.occasion-grid p{font-size:10px;color:var(--muted);margin-top:8px}.circle-arrow{align-self:center;display:flex;align-items:center;justify-content:center;height:34px;width:34px;border:1px solid #c8cbbe;border-radius:50%;font-size:18px;transition:transform .2s,background .2s,color .2s}.occasion-grid a:hover .circle-arrow{background:var(--green);color:white;transform:translate(2px,-2px)}.additional-occasions{display:flex;justify-content:space-between;gap:20px;padding-top:23px;font-size:11px;color:#535e50}.additional-occasions a{padding:3px 0}.additional-occasions span{padding-left:18px}.collection-section{padding-top:0}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.product-image{position:relative;aspect-ratio:1/1;overflow:hidden;background:#ece9e1}.product-image img{height:100%;object-fit:contain;transition:transform .6s cubic-bezier(.2,.6,.3,1)}.product a:hover img{transform:scale(1.025)}.product-index{position:absolute;left:11px;top:11px;font-size:7px;letter-spacing:.15em;background:var(--paper);padding:5px 7px;color:#515d4e}.image-arrow{display:flex;align-items:center;justify-content:center;position:absolute;bottom:11px;right:11px;width:32px;height:32px;background:var(--paper);font-size:18px}.product-meta{color:var(--muted);font-size:10px;letter-spacing:.08em;margin:20px 0 8px}.product h3{font-size:20px;line-height:1.65;letter-spacing:.01em}.product-name{font-size:11px;color:var(--muted);margin-top:8px}.product-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:18px;padding-top:13px}.product-bottom>span:first-child{font-size:14px;letter-spacing:.06em}.product-bottom>span:last-child{font-size:10px}.product-bottom>span:last-child span{margin-left:8px;font-size:14px}.price-note{font-size:10px;color:var(--muted);line-height:1.8;margin-top:23px}.budget{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:42px;padding:25px 0;display:flex;align-items:center;justify-content:space-between;gap:28px}.budget>.eyebrow{color:var(--ink)}.budget>.eyebrow>span{display:block;letter-spacing:.05em;font-size:10px;color:var(--muted);margin-top:2px}.budget>div{display:grid;grid-template-columns:repeat(3,1fr);flex:1;max-width:765px}.budget a{display:flex;justify-content:space-between;padding:9px 27px;font-size:13px;letter-spacing:.04em;border-left:1px solid var(--line);gap:15px}.budget a:hover{color:var(--gold)}.story-section{display:grid;grid-template-columns:1fr 1fr;background:var(--green);color:#f4f3e9;max-width:1600px;margin:auto}.story-photo{position:relative;overflow:hidden}.story-photo img{height:100%;object-fit:cover;min-height:650px}.story-photo>span{position:absolute;left:30px;top:30px;writing-mode:vertical-rl;font-family:var(--serif);font-size:13px;letter-spacing:.18em;background:rgba(245,242,235,.93);padding:20px 12px;color:var(--ink)}.story-copy{padding:70px 13% 45px}.story-copy .eyebrow{color:#c6bc96}.story-copy h2{font-size:37px;line-height:1.7;letter-spacing:.045em;margin:25px 0 30px}.story-copy p:not(.eyebrow){font-size:12px;line-height:2.2;margin-bottom:22px;color:#e0e5d9;letter-spacing:.02em}.text-link.light{color:#f5f2eb;border-color:#9da78c;margin-top:4px}.story-signature{display:block;text-align:right;font-family:Georgia,serif;font-style:italic;font-size:26px;opacity:.52;margin-top:40px}.journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.journal-image{aspect-ratio:1.5/1;overflow:hidden}.journal-image img{height:100%;object-fit:cover;transition:transform .6s}.journal-grid a:hover img{transform:scale(1.025)}.journal-meta{display:flex;justify-content:space-between;gap:15px;font-size:9px;color:var(--muted);margin:20px 0 12px}.journal-meta time{letter-spacing:.07em}.journal-grid h3{font-size:18px;line-height:1.9;letter-spacing:.02em}.journal-more{display:block;font-size:11px;margin-top:18px;color:#455341}.journal-more span{margin-left:22px;font-size:16px}.journal-categories{display:flex;flex-wrap:wrap;gap:25px;align-items:center;border-top:1px solid var(--line);padding-top:27px;margin-top:40px;font-size:11px}.journal-categories>span{color:var(--muted);margin-right:auto}.journal-categories a{padding:5px 0;border-bottom:1px solid var(--line)}.closing{padding:90px 24px 82px;text-align:center;background:#ebe8dc;position:relative}.closing:before{content:'';display:block;width:1px;height:40px;background:var(--gold);margin:0 auto 35px}.closing h2{font-size:34px;line-height:1.8;letter-spacing:.07em;margin:25px 0 32px}.closing .button{width:290px;margin:auto;text-align:left}.closing>p{font-size:11px;color:var(--muted);margin-top:20px}.footer{background:var(--paper);padding:58px 5.3% 24px}.footer-main{display:flex;justify-content:space-between;gap:40px;max-width:1240px;margin:auto}.footer-brand>span{font-size:26px}.footer-main>div>p{font-size:10px;color:var(--muted);margin-top:24px;letter-spacing:.05em}.footer-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:18px 35px;align-content:center;font-size:11px}.footer-nav a{padding:5px 0}.footer-bottom{max-width:1240px;margin:50px auto 0;display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding-top:25px;font-size:9px;letter-spacing:.07em;color:var(--muted)}.footer-bottom small{font-size:9px}.footer-bottom a{padding:8px}.mobile-shop{display:none}
@media(min-width:1600px){.hero h1{font-size:68px}.hero-copy{padding-top:80px}}
@media(max-width:1100px){.header{gap:24px;padding:0 4%;height:85px}.desktop-nav{gap:18px;font-size:11px}.header-actions{gap:16px}.header-shop{padding:12px 16px;font-size:10px;gap:16px}.brand>span{font-size:21px}.brand-wa{font-size:25px}.hero-copy{padding:45px 10% 25px 12%}.hero h1{font-size:49px;margin-top:27px}.hero-description{font-size:12px}.hero-visual>img{min-height:680px}.hero-visual figcaption{left:20px;right:20px;padding:18px;font-size:18px}.hero-visual figcaption a{font-size:10px}.section{padding-top:75px;padding-bottom:75px}.collection-section{padding-top:0}.section-heading h2{font-size:30px}.product-grid{gap:17px}.product h3{font-size:17px}.occasion-grid h3{font-size:16px}.occasion-grid>a+a{padding-left:18px}.occasion-grid p{font-size:9px}.story-copy{padding:55px 10% 35px}.story-copy h2{font-size:30px}.story-photo img{min-height:640px}.journal-grid{gap:23px}.journal-grid h3{font-size:16px}.budget a{padding:9px 18px;font-size:12px}}
@media(max-width:850px){.header{height:78px}.desktop-nav{display:none}.header-actions{margin-left:auto}.header-shop{display:none}.menu-toggle{display:flex;flex-direction:column;gap:6px;justify-content:center;width:44px;height:44px;border:0;padding:10px;background:none}.menu-toggle span{width:22px;height:1px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-nav{position:absolute;top:78px;left:0;right:0;background:var(--paper);padding:25px 6% 40px;max-height:calc(100dvh - 78px);overflow:auto;border-bottom:1px solid var(--line)}.mobile-nav>a{display:flex;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--line);font-size:16px}.mobile-nav>a>span{font:11px/2 var(--sans);color:var(--gold)}.mobile-nav>a.menu-shop{margin-top:25px;padding:15px 20px;background:var(--green);color:white;font-size:14px}.mobile-nav>a:last-child{font-size:12px}.hero-copy{padding:35px 8% 20px 12%}.hero h1{font-size:39px}.hero .eyebrow{font-size:7px;letter-spacing:.1em;gap:7px}.small-line{width:14px}.hero-description{font-size:11px}.hero .button{min-width:205px;font-size:12px;padding:15px 18px}.hero-visual>img{min-height:610px}.hero-visual figcaption{display:block;font-size:18px;padding:15px;left:15px;right:15px;bottom:15px}.hero-visual figcaption a{display:inline-block;margin-top:8px;padding:6px 0}.hero-footnote span:last-child{display:none}.occasion-grid{grid-template-columns:repeat(2,1fr)}.occasion-grid>a{padding:22px 18px 25px 0;gap:8px}.occasion-grid>a:nth-child(3){border-left:0;padding-left:0}.occasion-grid>a:nth-child(n+3){border-top:1px solid var(--line)}.occasion-grid h3{font-size:20px}.occasion-grid p{font-size:11px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 23px}.product h3{font-size:21px}.product-name{font-size:12px}.product-bottom>span:last-child{font-size:11px}.budget{align-items:flex-start;flex-direction:column;gap:20px}.budget>.eyebrow>span{display:inline-block;margin-left:20px}.budget>div{width:100%;max-width:none}.budget a:first-child{padding-left:0;border-left:0}.story-copy{padding:42px 9% 30px}.story-copy h2{font-size:25px}.story-copy p:not(.eyebrow){font-size:11px}.story-photo img{min-height:640px}.story-signature{font-size:24px}.journal-grid{gap:18px}.journal-grid h3{font-size:15px}.journal-meta{flex-wrap:wrap;gap:4px}.journal-meta span{width:100%}.footer-nav{grid-template-columns:repeat(2,1fr);gap:14px 25px}.section-heading h2{font-size:28px}.section-intro{font-size:11px}.closing h2{font-size:28px}}
@media(max-width:700px){html{scroll-padding-top:30px}.header{height:74px;padding:0 22px}.brand>span{font-size:21px}.brand small{font-size:8px;margin-top:6px}.brand-wa{font-size:25px}.header-actions{gap:19px}.languages{font-size:10px;gap:8px}.mobile-nav{top:74px}.hero{display:flex;flex-direction:column;position:relative}.hero-copy{padding:34px 24px 32px}.hero .eyebrow{font-size:8px;letter-spacing:.16em;gap:9px}.small-line{width:18px}.hero h1{font-size:clamp(25px,8vw,34px);line-height:1.7;letter-spacing:.04em;margin:22px 0 16px}.hero h1 br:nth-of-type(2){display:none}.hero-description{font-size:12px;line-height:1.95}.hero .button{margin-top:22px;min-width:235px;min-height:52px;padding:13px 20px}.hero-story{position:absolute;bottom:17px;left:24px;margin:0;font-size:10px;display:none}.hero-footnote{display:none}.hero-visual{margin:0 0 0 24px;min-height:0;max-height:none}.hero-visual>img{height:auto;width:100%;min-height:0;max-height:none;aspect-ratio:1.15/1;object-fit:cover;object-position:center 62%}.hero-visual figcaption{left:15px;right:15px;bottom:15px;padding:14px 16px;display:flex;align-items:center;font-size:16px;gap:15px}.hero-visual figcaption small{font-size:7px;margin-bottom:3px}.hero-visual figcaption a{margin:0;padding:7px 0;font-size:9px}.hero-visual figcaption a span{margin-left:9px}.section{padding:62px 24px}.section-heading{display:block;margin-bottom:28px}.section-heading h2{font-size:27px;letter-spacing:.03em;margin-top:12px}.section-intro{margin-top:20px;font-size:12px}.section-heading>.text-link{margin-top:15px;font-size:11px;padding:7px 0;gap:25px}.occasion-grid>a{grid-template-columns:1fr 28px;padding:20px 12px 22px 0;gap:10px}.occasion-grid>a+a{padding-left:15px}.occasion-grid>a:nth-child(3){padding-left:0}.occasion-number{font-size:10px}.occasion-grid h3{font-size:17px;line-height:1.65}.occasion-grid p{font-size:9px;line-height:1.8}.circle-arrow{width:28px;height:28px;font-size:15px}.additional-occasions{flex-direction:column;gap:10px;font-size:11px;padding-top:21px}.additional-occasions a{display:flex;justify-content:space-between;padding:7px 0}.collection-section{padding-top:0}.product-grid{gap:32px 16px}.product-index{font-size:6px;left:7px;top:7px;padding:4px 5px;letter-spacing:.04em}.image-arrow{bottom:7px;right:7px;width:25px;height:25px;font-size:15px}.product-meta{font-size:9px;margin:14px 0 7px;letter-spacing:0}.product h3{font-size:17px;line-height:1.65;min-height:2.9em}.product-name{font-size:10px;line-height:1.8;min-height:3.6em;margin-top:5px}.product-bottom{align-items:flex-start;flex-direction:column;gap:8px;margin-top:13px;padding-top:10px}.product-bottom>span:first-child{font-size:13px}.product-bottom>span:last-child{font-size:10px}.price-note{font-size:10px;margin-top:25px}.budget{padding:22px 0;margin-top:30px;gap:15px}.budget>div{display:block}.budget a{border-left:0;border-top:1px solid var(--line);padding:13px 0;font-size:13px}.budget a:first-child{border-top:0}.story-section{grid-template-columns:1fr}.story-photo img{min-height:0;aspect-ratio:1.17/1;object-fit:cover;object-position:center 55%}.story-photo>span{left:22px;top:22px;font-size:11px;padding:16px 9px}.story-copy{padding:43px 30px 38px}.story-copy h2{font-size:29px;line-height:1.75;margin:21px 0 25px}.story-copy p:not(.eyebrow){font-size:12px;line-height:2.2;margin-bottom:21px}.story-signature{margin-top:29px;font-size:25px}.journal-grid{display:block}.journal-grid article+article{margin-top:32px;padding-top:30px;border-top:1px solid var(--line)}.journal-image{aspect-ratio:1.6/1}.journal-meta{flex-wrap:nowrap;font-size:10px;margin-top:16px}.journal-meta span{width:auto}.journal-grid h3{font-size:19px;line-height:1.85;margin-top:11px}.journal-grid h3 br{display:none}.journal-more{margin-top:12px;font-size:11px}.journal-categories{gap:12px 20px;padding-top:23px;margin-top:30px}.journal-categories>span{width:100%;font-size:10px}.journal-categories a{font-size:11px}.closing{padding:60px 24px}.closing:before{height:30px;margin-bottom:27px}.closing h2{font-size:23px;letter-spacing:.015em;margin:23px 0 28px}.closing .button{width:100%;max-width:300px}.closing>p{font-size:10px}.footer{padding:42px 24px 90px}.footer-main{display:block}.footer-nav{margin-top:34px;font-size:11px;gap:15px}.footer-main>div>p{margin-top:20px}.footer-bottom{display:flex;flex-wrap:wrap;font-size:8px;margin-top:35px;gap:10px}.footer-bottom>span{display:none}.footer-bottom a{margin-left:auto}.mobile-shop{position:fixed;bottom:0;left:0;right:0;z-index:15;background:rgba(245,242,235,.98);border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:9px 18px calc(9px + env(safe-area-inset-bottom));gap:14px;transition:transform .25s}.mobile-shop>span{font-size:10px}.mobile-shop>a{display:flex;justify-content:space-between;gap:21px;background:var(--green);color:white;padding:11px 16px;font-size:11px;min-height:44px;align-items:center}.mobile-shop>a span{font-size:16px}.menu-open .mobile-shop{visibility:hidden}}
@media(max-width:370px){.hero h1{font-size:clamp(25px,8vw,34px)}.section{padding-left:20px;padding-right:20px}.product h3{font-size:16px}.occasion-grid h3{font-size:15px}.occasion-grid p{font-size:8px}.hero-visual figcaption{padding:12px;font-size:14px}.hero-visual figcaption a{font-size:8px}.section-heading h2{font-size:25px}.closing h2{font-size:21px}.mobile-shop>span{font-size:9px}.mobile-shop>a{padding:11px 12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
