/* Japan Fruits Carving — quiet luxury, monochrome interface.
   All artwork is local. No frameworks, web fonts or tracking requests. */
:root{--black:#000;--white:#fff;--muted:rgba(255,255,255,.64);--line:rgba(255,255,255,.22);--line-soft:rgba(255,255,255,.13);--serif:'Noto Serif CJK JP','Yu Mincho','Hiragino Mincho ProN',Georgia,serif;--latin:Georgia,'Times New Roman',serif;--sans:Arial,'Noto Sans CJK JP','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;--gutter:clamp(24px,5.3vw,92px);--max:1600px;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--black);color:var(--white);font-family:var(--sans);font-size:14px;-webkit-font-smoothing:antialiased;line-height:1.8}body.dialog-open{overflow:hidden}::selection{background:#fff;color:#000}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{color:inherit;background:none;border:0;cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}button,a{touch-action:manipulation}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #fff;outline-offset:6px}button[disabled],a[aria-disabled=true]{cursor:not-allowed;opacity:.35}button[disabled]:hover,a[aria-disabled=true]:hover{transform:none;background:none;color:#fff}[hidden]{display:none!important}.skip-link{position:fixed;top:-80px;left:20px;z-index:100;background:#fff;color:#000;padding:12px 24px}.skip-link:focus{top:10px}.section-shell{padding-left:var(--gutter);padding-right:var(--gutter);max-width:var(--max);margin-inline:auto}.eyebrow,.section-overline,.small-label{font-size:10px;letter-spacing:.2em;line-height:1.6}.eyebrow{font-family:var(--sans)}.section-overline{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:21px;margin-bottom:74px}.section-overline span:last-child{letter-spacing:.15em;color:var(--muted)}.short-rule{display:block;width:44px;height:1px;background:#fff;margin:32px 0}.plain-button{font-size:11px;text-underline-offset:7px;padding:8px 0}.plain-button:hover{text-decoration:underline}.fine-print{font-size:11px!important;color:var(--muted);line-height:1.9!important}.tiny-rule{display:inline-block;height:1px;width:30px;background:#fff;vertical-align:middle;margin-right:18px}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;padding:10px 0 13px;min-height:44px;border-bottom:1px solid rgba(255,255,255,.65);font-size:12px;letter-spacing:.06em;line-height:1.6}.text-link>span:last-child{font-size:22px;transition:transform .45s var(--ease)}.text-link:hover>span:last-child{transform:translate(4px,-4px)}.button-white,.button-outline{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;padding:15px 22px;min-height:50px;line-height:1.6;font-size:12px;transition:background .3s,color .3s}.button-white{background:#fff;color:#000;border:1px solid #fff}.button-white:hover{background:#dcdcdc}.button-outline{border:1px solid var(--line);color:#fff}.button-outline:hover{background:#fff;color:#000}
/* Masthead */
.site-header{height:102px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;position:absolute;top:0;left:0;right:0;z-index:20;background:#000;border-bottom:1px solid transparent;transition:height .4s,background .4s,border .4s}.site-header.is-scrolled{position:fixed;height:80px;border-color:var(--line-soft);animation:headerIn .4s var(--ease)}.wordmark{display:inline-flex;flex-direction:column;gap:7px;line-height:1.3}.wordmark>span:first-child{font-family:var(--latin);font-size:17px;letter-spacing:.16em}.wordmark-jp{font-family:var(--serif);font-size:10px;letter-spacing:.2em}.desktop-nav{display:flex;align-items:center;gap:30px;margin-left:auto;margin-right:46px}.desktop-nav a{font-size:9px;letter-spacing:.17em;position:relative;padding:14px 0}.desktop-nav a:after{content:'';position:absolute;left:0;bottom:5px;width:0;height:1px;background:#fff;transition:width .35s var(--ease)}.desktop-nav a:hover:after,.desktop-nav a.is-current:after{width:100%}.header-actions{display:flex;align-items:center;gap:29px}.header-contact{font-size:11px;letter-spacing:.1em;display:flex;align-items:center;gap:20px;border-left:1px solid var(--line);padding:6px 0 6px 32px}.header-contact span{font-size:19px}.menu-toggle{width:44px;height:44px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px}.menu-toggle span{display:block;width:23px;height:1px;background:#fff}.menu-toggle span:last-child{width:16px;margin-left:7px;transition:width .3s,margin .3s}.menu-toggle:hover span:last-child{width:23px;margin-left:0}@keyframes headerIn{from{transform:translateY(-100%)}to{transform:translateY(0)}}
/* First frame */
.hero{height:min(900px,100svh);min-height:770px;max-width:1800px;margin:auto;position:relative;isolation:isolate;overflow:hidden;border-bottom:1px solid var(--line-soft)}.hero-content{position:absolute;z-index:2;left:var(--gutter);top:29%;pointer-events:none}.hero-content a{pointer-events:auto}.hero-eyebrow{font-size:9px;letter-spacing:.21em;margin-bottom:39px}.hero h1{font-family:var(--serif);font-size:clamp(40px,4.6vw,76px);letter-spacing:.04em;line-height:1.6;font-weight:400}.hero-caption{font-family:var(--serif);font-size:13px;letter-spacing:.12em;margin-top:28px}.hero-link{margin-top:37px;min-width:159px;font-size:11px}.hero-visual{position:absolute;z-index:1;right:-1.5%;top:15%;width:66%;max-width:1060px;pointer-events:none}.hero-visual img{width:100%;height:auto;transition:opacity .28s;mix-blend-mode:screen}.hero-visual.is-switching img{opacity:0}.hero-art-label{position:absolute;right:calc(var(--gutter) + 18px);bottom:23%;text-align:right;display:flex;flex-direction:column;gap:6px;font-size:8px;letter-spacing:.16em;color:var(--muted)}.hero-art-label span:first-child{color:#fff;font-size:9px}.hero-visual.is-single{width:51%;right:6%;top:15%}.hero-visual.is-single img{max-height:655px;object-fit:contain}.hero-visual.is-single .hero-art-label{bottom:0;right:0}.vertical-note{position:absolute;right:24px;top:27%;writing-mode:vertical-rl;letter-spacing:.24em;font-size:8px;color:var(--muted)}.hero-bottom{position:absolute;left:var(--gutter);right:var(--gutter);bottom:30px;z-index:4;display:flex;align-items:center;justify-content:space-between}.scroll-cue{display:flex;align-items:center;gap:18px;font-size:8px;letter-spacing:.2em;min-height:44px}.scroll-line{width:1px;height:39px;background:rgba(255,255,255,.3);position:relative;overflow:hidden}.scroll-line:after{content:'';position:absolute;top:-100%;left:0;width:1px;height:100%;background:#fff;animation:scrollTick 3s ease-in-out infinite}.hero-controls{display:flex;align-items:center;gap:0}.hero-counter{display:flex;align-items:center;gap:14px;font-size:10px;margin-right:26px;color:var(--muted)}.hero-counter>span:first-child{color:#fff}.counter-rule{width:56px;height:1px;background:var(--line)}.slide-dot{width:35px;height:44px;display:grid;place-items:center;position:relative}.slide-dot:after{content:'';width:4px;height:4px;border:1px solid #fff;border-radius:50%;opacity:.5;transition:transform .25s}.slide-dot.is-active:after{background:#fff;opacity:1;transform:scale(1.4)}.slide-dot span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@keyframes scrollTick{0%{transform:translateY(0)}75%,100%{transform:translateY(200%)}}
/* The editorial narrative */
.concept{padding-top:124px;padding-bottom:145px}.concept-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:14%}.editorial-en{font-family:var(--latin);font-size:clamp(29px,2.8vw,43px);line-height:1.35;letter-spacing:-.025em;margin-bottom:43px}.editorial-en em{font-weight:400}.concept h2{font-family:var(--serif);font-size:29px;line-height:1.95;letter-spacing:.06em}.concept-copy{padding-top:8px}.concept-copy p{font-size:13px;line-height:2.45;letter-spacing:.065em;margin-bottom:29px}.concept-copy p:last-child{margin-bottom:0}.micro-signature{display:flex;align-items:center;gap:19px;font-size:8px;letter-spacing:.17em;margin-top:42px;color:var(--muted)}.micro-signature span{height:1px;width:38px;background:var(--line)}.collection{padding-bottom:112px}.section-heading-row{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:53px}.display-en{font-family:var(--latin);font-size:clamp(48px,5.3vw,84px);line-height:1.14;letter-spacing:-.045em}.section-heading-row>p{font-size:12px;letter-spacing:.1em;margin-bottom:9px}.collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}.work-image{display:block;width:100%;aspect-ratio:1/1.08;position:relative;overflow:hidden;padding:25px 0 8px}.work-image img{width:100%;height:100%;object-fit:contain;transition:transform 1s var(--ease),filter 1s}.work-image:hover img{transform:scale(1.045)}.work-number{position:absolute;left:0;top:0;font-size:10px;letter-spacing:.12em;color:var(--muted);z-index:2}.image-view{position:absolute;right:18px;bottom:26px;display:flex;align-items:center;gap:9px;justify-content:center;width:75px;height:75px;border:1px solid rgba(255,255,255,.8);border-radius:50%;background:rgba(0,0,0,.65);font-size:8px;letter-spacing:.12em;opacity:0;transform:translateY(10px);transition:opacity .4s,transform .4s;z-index:2}.work-image:hover .image-view,.work-image:focus-visible .image-view,.gallery-card:hover .image-view,.gallery-card:focus-visible .image-view{opacity:1;transform:translateY(0)}.work-title{border-top:1px solid var(--line);margin-top:20px;padding-top:22px;display:flex;align-items:center;gap:21px}.work-title h3{font-family:var(--serif);font-size:25px;letter-spacing:.1em}.work-title>span{font-size:9px;letter-spacing:.15em;color:var(--muted)}.round-arrow{border:1px solid var(--line);width:35px;height:35px;border-radius:50%;display:grid;place-items:center;margin-left:auto;font-size:19px;transition:color .25s,background .25s}.round-arrow:hover{background:#fff;color:#000}.work-description{font-size:11px;line-height:2.1;letter-spacing:.02em;margin-top:21px}.work-scene{font-size:9px;letter-spacing:.06em;color:var(--muted);margin-top:15px}.collection-foot{margin-top:42px;display:flex;justify-content:space-between;align-items:center;gap:22px}.collection-foot>p{font-size:10px;color:var(--muted)}.collection-foot .text-link{font-size:10px;flex-shrink:0}.detail-interlude{height:620px;position:relative;overflow:hidden;background:#000;margin-bottom:140px}.interlude-picture{position:absolute;right:0;width:72%;top:-8%;height:130%;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 32%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 32%)}.interlude-picture img{width:100%;height:100%;object-fit:cover;object-position:50% 46%;filter:brightness(.73)}.detail-interlude:after{position:absolute;inset:0;content:'';pointer-events:none;background:linear-gradient(0deg,#000,transparent 16%,transparent 80%,#000)}.interlude-copy{position:relative;z-index:2;left:var(--gutter);top:24%;width:44%;max-width:650px}.interlude-copy>p{font-family:var(--serif);font-size:clamp(37px,4.3vw,64px);line-height:1.9;letter-spacing:.08em;margin:28px 0 25px}.small-label{font-size:9px;color:var(--muted)}.artist{padding-bottom:135px}.artist-grid{display:grid;grid-template-columns:1fr 1fr;gap:13%;align-items:center;padding-inline:4%}.artist-visual{position:relative;width:100%;max-width:480px}.artist-visual:before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#000,transparent 15%,transparent 90%,#000);z-index:1}.artist-visual img{width:100%;max-height:620px;object-fit:cover;object-position:center}.artist-visual figcaption{margin-top:14px;font-size:8px;letter-spacing:.12em;color:var(--muted)}.artist-content>.eyebrow{margin-bottom:36px}.artist-role{font-size:11px;letter-spacing:.18em;margin-bottom:8px}.artist-content h2{font-family:var(--serif);font-size:41px;letter-spacing:.12em;line-height:1.8}.artist-en{font-family:var(--latin);font-style:italic;font-size:21px;letter-spacing:.02em;margin-top:1px}.artist-content h3{font-family:var(--serif);font-size:24px;line-height:1.95;letter-spacing:.07em;margin-bottom:26px}.artist-content>p:not(.artist-en):not(.artist-role):not(.eyebrow){font-size:12px;line-height:2.3;letter-spacing:.04em;margin-bottom:19px}.artist-content .text-link{margin-top:9px}.gallery{padding-bottom:138px}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}.gallery-card{padding:0;text-align:left;display:block;min-width:0}.gallery-image{display:block;position:relative;overflow:hidden;background:#000;height:390px}.gallery-image img{width:100%;height:100%;object-fit:cover;object-position:50% 56%;transition:transform 1.2s var(--ease)}.gallery-card:hover img{transform:scale(1.035)}.gallery-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:19px;line-height:1.8}.gallery-meta>span:first-child{font-family:var(--serif);font-size:16px;letter-spacing:.04em}.gallery-meta>span:last-child{font-size:8px;letter-spacing:.1em;color:var(--muted);white-space:nowrap}.gallery-credit{font-size:9px;letter-spacing:.06em;color:var(--muted);margin-top:27px}.experiences{padding-bottom:140px}.premium-row{border-top:1px solid var(--line-soft);padding:43px 0 47px;display:grid;grid-template-columns:1fr 1.15fr;gap:30px 65px;margin-bottom:64px}.premium-title h3{font-family:var(--serif);font-size:24px;line-height:1.95;letter-spacing:.05em;margin-top:20px}.premium-row>p{font-size:12px;line-height:2.3;align-self:center;letter-spacing:.03em}.premium-row small{display:block;font-size:9px;color:var(--muted);margin-top:20px}.premium-row>.text-link{grid-column:2;justify-self:start;margin-top:-15px}.live-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:7%;align-items:center}.live-image{margin-left:calc(-1 * var(--gutter));position:relative}.live-image img{width:100%;min-height:470px;object-fit:cover;object-position:center}.live-image figcaption{font-size:9px;color:var(--muted);margin-top:14px;margin-left:var(--gutter);letter-spacing:.08em}.live-copy h3{font-family:var(--serif);font-size:35px;letter-spacing:.05em;line-height:1.85;margin-top:27px;margin-bottom:25px}.live-copy p{font-size:12px;line-height:2.3;margin-bottom:21px}.live-copy .text-link{margin-top:10px}.order{padding-bottom:129px}.order-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:61px;gap:30px}.order-heading h2{font-family:var(--serif);font-size:40px;line-height:1.9;letter-spacing:.065em}.order-heading>p{font-size:19.44px;line-height:2.25;margin-right:8%}.order-steps{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;border-top:1px solid var(--line)}.order-steps li{position:relative;padding:29px 23px 28px;border-right:1px solid var(--line-soft)}.order-steps li:first-child{padding-left:0}.order-steps li:last-child{border-right:0}.step-num{font-family:var(--latin);font-style:italic;font-size:31px;line-height:1;color:var(--muted)}.order-steps h3{font-family:var(--serif);font-size:19px;letter-spacing:.05em;margin:27px 0 15px}.order-steps p{font-size:14px;line-height:2.1}.order-note{margin-top:44px;padding:22px 0;border-top:1px solid var(--line-soft);display:flex;gap:20px;align-items:flex-start}.note-icon{border:1px solid var(--line);border-radius:50%;width:21px;height:21px;display:grid;place-items:center;flex-shrink:0;font-family:var(--latin);font-style:italic;font-size:12px;margin-top:4px}.order-note p{font-size:12px;line-height:2;letter-spacing:.04em}.order-note p>span{font-size:10px;color:var(--muted);line-height:2.1}.faq{display:grid;grid-template-columns:1fr 1.8fr;gap:8%;padding-bottom:136px}.faq-heading h2{font-family:var(--serif);font-size:27px;letter-spacing:.07em;margin-top:24px}.faq-items{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{padding:25px 4px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;letter-spacing:.03em}summary::-webkit-details-marker{display:none}summary>span{position:relative;width:12px;height:12px;flex-shrink:0}summary>span:before,summary>span:after{content:'';position:absolute;top:5px;left:0;width:12px;height:1px;background:#fff}summary>span:after{transform:rotate(90deg);transition:transform .3s}details[open] summary>span:after{transform:rotate(0)}details>p{font-size:11px;letter-spacing:.03em;line-height:2.3;padding:0 34px 26px 4px;color:rgba(255,255,255,.82)}.contact{position:relative;padding-top:110px;padding-bottom:128px;border-top:1px solid var(--line);overflow:hidden}.contact-inner{position:relative;z-index:2;width:58%}.contact h2{font-family:var(--serif);font-size:48px;line-height:1.8;letter-spacing:.07em;margin:27px 0 23px}.contact-inner>p:not(.eyebrow){font-size:12px;line-height:2.2;letter-spacing:.08em}.contact-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:60px;min-width:275px;border:1px solid rgba(255,255,255,.6);padding:19px 23px;font-size:12px;letter-spacing:.06em;line-height:1.7;margin-top:37px;transition:background .4s,color .4s}.contact-cta>span:last-child{font-size:21px}.contact-cta:hover{background:#fff;color:#000}.contact-methods{display:block;margin-top:16px;font-size:8px;letter-spacing:.18em;color:var(--muted)}.contact-ghost{position:absolute;right:-18px;top:34%;font-family:var(--latin);font-size:clamp(72px,9vw,153px);line-height:1.05;letter-spacing:-.05em;color:rgba(255,255,255,.15);pointer-events:none}.contact-ghost em{font-weight:400}.site-footer{padding-top:45px;padding-bottom:28px;border-top:1px solid var(--line)}.footer-main{display:flex;align-items:center;gap:30px}.footer-wordmark>span:first-child{font-size:19px}.footer-wordmark .wordmark-jp{font-size:11px}.footer-main nav{display:flex;gap:23px;margin-left:auto;font-size:10px}.footer-main nav a{padding-block:10px}.back-top{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;font-size:21px;margin-left:20px}.footer-bottom{display:flex;gap:24px;align-items:center;margin-top:49px;font-size:8px;letter-spacing:.08em;color:var(--muted)}.footer-bottom .plain-button{font-size:9px;margin-left:auto}.preview-tag{border:1px solid var(--line-soft);padding:3px 8px;font-size:7px;letter-spacing:.1em}.footer-disclosure{font-size:9px;line-height:1.9;color:var(--muted);margin-top:14px}
/* Overlays */
dialog{background:#000;color:#fff;border:1px solid var(--line);padding:0;max-height:calc(100dvh - 48px);width:min(1000px,calc(100vw - 48px));overscroll-behavior:contain}dialog::backdrop{background:rgba(0,0,0,.88);backdrop-filter:blur(8px)}dialog[open]{animation:dialogEnter .3s var(--ease)}@keyframes dialogEnter{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.dialog-top{display:flex;align-items:center;justify-content:space-between;padding:23px 30px;border-bottom:1px solid var(--line-soft);position:sticky;top:0;background:#000;z-index:5}.close-button{width:44px;height:44px;font-size:32px;line-height:1;font-family:Arial,sans-serif;font-weight:200}.menu-dialog{width:100vw;height:100dvh;max-width:none;max-height:none;border:0;inset:0;margin:0;padding:0 var(--gutter)}.menu-dialog .dialog-top{padding:30px 0}.menu-content{display:grid;grid-template-columns:1.8fr 1fr;gap:12%;padding:55px 0 65px;max-width:1250px;margin:auto}.menu-content nav{display:flex;flex-direction:column}.menu-content nav a{display:flex;gap:27px;align-items:center;padding:13px 0;line-height:1.3;border-bottom:1px solid var(--line-soft)}.menu-index{font-size:10px;color:var(--muted);align-self:center}.menu-content nav a>span:first-child{font-family:var(--latin);font-size:49px;letter-spacing:-.025em;transition:padding .35s}.menu-content nav a:hover>span:first-child{padding-left:10px}.menu-jp{margin-left:auto;font-size:10px;letter-spacing:.04em;color:var(--muted)}.menu-aside{align-self:center}.menu-aside>p{font-family:var(--serif);font-size:32px;line-height:2;letter-spacing:.08em;margin-bottom:35px}.work-dialog{width:min(1080px,calc(100vw - 48px))}.work-dialog-grid{display:grid;grid-template-columns:1fr 1fr;gap:6%;padding:42px 40px 50px}.work-dialog-image{display:flex;flex-direction:column;align-items:center;justify-content:center}.work-dialog-image img{width:100%;max-height:510px;object-fit:contain}.work-dialog-image>span{font-size:9px;color:var(--muted);margin-top:20px;letter-spacing:.1em}.work-dialog-copy h2{font-family:var(--serif);font-size:56px;margin:20px 0 15px}.work-dialog-lead{font-family:var(--serif);font-size:23px;line-height:1.8;white-space:pre-line;margin-bottom:20px}.work-dialog-copy>p:not(.eyebrow):not(.work-dialog-lead):not(.fine-print){font-size:12px;line-height:2.1}.work-dialog-copy dl{font-size:11px;display:grid;grid-template-columns:72px 1fr;gap:15px;margin:27px 0;padding-top:22px;border-top:1px solid var(--line)}.work-dialog-copy dt{color:var(--muted)}.work-dialog-copy dd{margin:0}.work-dialog-copy .contact-cta{width:100%;min-width:0;font-size:11px;margin-top:8px;gap:20px}.work-dialog-copy .fine-print{margin-top:19px}.gallery-dialog{width:min(1030px,calc(100vw - 40px));text-align:center}.gallery-dialog-stage{display:flex;align-items:center;justify-content:center;gap:20px;padding:20px}.gallery-dialog-stage img{width:auto;max-width:calc(100% - 140px);max-height:70dvh;object-fit:contain}.gallery-nav{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;flex-shrink:0;font-size:18px}.gallery-dialog>p{font-size:10px;letter-spacing:.08em;color:var(--muted);padding:0 20px 23px}.consult-dialog{width:min(900px,calc(100vw - 40px))}.consult-head{padding:28px 38px 26px;display:flex;justify-content:space-between;align-items:center;gap:35px}.consult-head h2{font-family:var(--serif);font-size:27px;line-height:1.8;letter-spacing:.04em}.consult-head>p{font-size:12px;line-height:2.2;color:var(--muted)}.consult-progress{display:flex;padding:0;margin:0 38px 24px;list-style:none;border-bottom:1px solid var(--line);font-size:13.2px}.consult-progress li{width:33.333%;padding:12px 0;letter-spacing:.08em;color:var(--muted);border-bottom:1px solid transparent;margin-bottom:-1px}.consult-progress .current{color:#fff;border-color:#fff}#consult-form{padding:0 38px 30px}.consult-step>h3{font-size:16.8px;letter-spacing:.05em;line-height:1.8;margin:22px 0 20px}.consult-step>h3:focus{outline:none}.consult-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.consult-choices label{position:relative;cursor:pointer;min-width:0}.consult-choices input{position:absolute;left:14px;bottom:17px;opacity:0;width:1px;height:1px}.choice-body{display:flex;align-items:center;position:relative;padding:7px 9px 12px;gap:10px;border:1px solid var(--line);transition:border .3s}.choice-body img{width:52%;height:112px;object-fit:contain}.choice-body>span:not(.choice-check){font-family:var(--serif);font-size:21.6px}.choice-body small{display:block;font-family:var(--sans);font-size:9.6px;color:var(--muted);letter-spacing:.08em;margin-top:2px}.choice-check{position:absolute;bottom:9px;right:10px;font-size:12px;opacity:0}.consult-choices input:checked+.choice-body{border-color:#fff}.consult-choices input:checked+.choice-body .choice-check{opacity:1}.consult-choices input:focus-visible+.choice-body{outline:2px solid #fff;outline-offset:4px}.undecided{display:flex;align-items:center;gap:10px;font-size:13.2px;margin:17px 0 28px;cursor:pointer}.option-checks{border:0;border-top:1px solid var(--line-soft);padding:20px 0 0;margin:0;display:flex;flex-wrap:wrap;gap:14px 26px}.option-checks legend{font-size:14.4px;padding-top:12px;margin-bottom:3px}.option-checks small{font-size:10.8px;color:var(--muted);margin-left:9px}.option-checks label{font-size:13.2px;display:flex;gap:9px;align-items:center;cursor:pointer}input[type=checkbox],input[type=radio]{accent-color:#fff;width:16px;height:16px;flex-shrink:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px 22px;margin-top:22px}.form-grid label,.message-field{font-size:11px;letter-spacing:.03em;display:flex;flex-direction:column;gap:7px}.form-grid input,.form-grid select,.message-field textarea,#consult-summary{width:100%;border:1px solid var(--line);background:#000;color:#fff;border-radius:0;padding:11px 12px;min-height:45px;font-size:12px;line-height:1.8}input::placeholder,textarea::placeholder{color:rgba(255,255,255,.45)}select{color-scheme:dark}input[type=date]{color-scheme:dark}.message-field{margin-top:21px}textarea{resize:vertical}.field-note{font-size:10px;line-height:1.9;color:var(--muted);margin:12px 0}.char-count{display:block;text-align:right;font-size:9px;color:var(--muted);margin-top:4px}.consult-footer{display:flex;align-items:center;gap:20px;padding-top:25px;margin-top:28px;border-top:1px solid var(--line)}#consult-page-count{font-size:12px;letter-spacing:.1em;color:var(--muted);margin-right:auto}.consult-footer .button-white,.consult-footer .button-outline{font-size:13.2px;padding:13px 20px}#consult-summary{font-size:11px;line-height:1.9;min-height:200px;max-height:380px}.summary-label{display:block;font-size:10px;margin-bottom:8px;color:var(--muted)}.handoff-notice{font-size:11px;line-height:1.9;margin:16px 0;padding-left:13px;border-left:1px solid #fff}.handoff-actions{display:flex;flex-wrap:wrap;gap:10px}.handoff-actions>*{font-size:11px;flex:1;white-space:nowrap;justify-content:center;gap:12px;padding:12px}.info-dialog{width:min(720px,calc(100vw - 40px))}.info-dialog>h2{font-family:var(--serif);font-size:27px;margin:30px 35px 20px}.info-content{padding:0 35px 38px}.info-content h3{font-size:14px;margin:26px 0 13px}.info-content p{font-size:12px;line-height:2.2;color:rgba(255,255,255,.78);margin:12px 0}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);z-index:200;max-width:calc(100vw - 35px);width:max-content;background:#fff;color:#000;padding:13px 24px;font-size:12px;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s}.toast.visible{opacity:1;transform:translate(-50%,0)}.noscript-note{padding:14px var(--gutter);border-top:1px solid var(--line);font-size:12px}.motion-ready .reveal{opacity:0;transform:translateY(24px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.motion-ready .reveal.is-visible{opacity:1;transform:none}
/* Smaller desktop and tablets */
@media(min-width:1800px){.hero-content{left:max(var(--gutter),calc((100% - 1450px)/2))}.hero h1{font-size:76px}}
@media(max-width:1150px){.desktop-nav{gap:19px;margin-right:25px}.desktop-nav a{font-size:8px}.header-actions{gap:12px}.header-contact{padding-left:18px}.wordmark>span:first-child{font-size:14px}.hero{min-height:700px;max-height:810px}.hero-content{top:29%}.hero h1{font-size:clamp(40px,4.75vw,56px)}.hero-eyebrow{font-size:8px;margin-bottom:28px}.hero-visual{top:21%;width:64%;right:-2%}.hero-caption{font-size:11px}.hero-link{margin-top:30px}.vertical-note{right:13px;font-size:7px}.concept-grid{gap:8%}.collection-grid{gap:23px}.work-description{font-size:10px}.artist-grid{padding-inline:0;gap:8%}.artist-content h2{font-size:36px}.gallery-image{height:330px}.gallery-meta{align-items:start;flex-direction:column;gap:7px}.live-copy h3{font-size:29px}.live-copy p{font-size:11px}.order-steps li{padding-inline:18px}.order-steps p{font-size:13px}.order-heading h2{font-size:34px}.order-heading>p{margin-right:0}.footer-main nav{gap:15px}.footer-wordmark>span:first-child{font-size:16px}.contact h2{font-size:43px}.contact-ghost{font-size:100px}}
@media(max-width:900px){.desktop-nav{display:none}.site-header{height:88px}.hero{height:850px;min-height:0;max-height:none}.hero-content{top:20%;left:var(--gutter)}.hero-visual{top:39%;width:71%;right:-2%}.hero h1{font-size:clamp(43px,5.8vw,56px);line-height:1.65}.hero-visual.is-single{width:54%;top:35%;right:5%}.hero-art-label{bottom:4%}.hero-caption{font-size:12px}.hero-link{margin-top:26px}.concept{padding-top:90px;padding-bottom:100px}.section-overline{margin-bottom:55px}.concept-grid{gap:6%}.concept h2{font-size:24px}.concept-copy p{font-size:11px}.editorial-en{font-size:29px}.collection{padding-bottom:88px}.section-heading-row{align-items:start;flex-direction:column;gap:20px}.section-heading-row>p{font-size:11px}.display-en{font-size:58px}.collection-grid{gap:22px}.work-title{gap:10px}.work-title h3{font-size:22px}.work-title>span{font-size:7px}.round-arrow{width:30px;height:30px;font-size:17px}.work-image{aspect-ratio:1/1.25}.work-scene{font-size:8px}.collection-foot>p{font-size:9px}.detail-interlude{height:480px;margin-bottom:95px}.interlude-copy{top:24%;width:60%}.interlude-copy>p{font-size:42px}.artist{padding-bottom:95px}.artist-grid{gap:7%}.artist-content h2{font-size:30px}.artist-content h3{font-size:22px}.artist-content>.eyebrow{margin-bottom:22px}.artist-content>p:not(.artist-en):not(.artist-role):not(.eyebrow){font-size:10px}.artist-en{font-size:19px}.artist-visual img{height:550px}.gallery{padding-bottom:100px}.gallery-image{height:300px}.experiences{padding-bottom:100px}.premium-row{gap:30px}.premium-title h3{font-size:22px}.premium-row>p{font-size:11px}.live-grid{gap:6%;grid-template-columns:1.1fr 1fr}.live-image img{height:460px;object-position:65% center}.live-copy h3{font-size:26px}.order{padding-bottom:90px}.order-heading h2{font-size:31px}.order-steps{grid-template-columns:repeat(2,1fr)}.order-steps li{border-bottom:1px solid var(--line-soft);padding:27px!important}.order-steps li:nth-child(odd){padding-left:0!important}.order-steps li:nth-child(even){border-right:0}.order-steps p{font-size:15px}.faq{grid-template-columns:1fr;gap:37px;padding-bottom:95px}.contact{padding-top:80px;padding-bottom:90px}.contact-ghost{top:40%;font-size:80px}.contact-inner{width:70%}.contact h2{font-size:39px}.footer-main{flex-wrap:wrap}.footer-main nav{order:3;flex-basis:100%;margin-left:0;gap:25px}.back-top{margin-left:auto}.menu-content{grid-template-columns:1fr;gap:30px}.menu-aside{display:none}.work-dialog-grid{padding:30px;gap:30px}.work-dialog-copy h2{font-size:42px}.work-dialog-lead{font-size:20px}.work-dialog-copy>p:not(.eyebrow):not(.work-dialog-lead):not(.fine-print){font-size:11px}.consult-head{align-items:start;gap:20px}.consult-head h2{font-size:24px}.consult-head>p{font-size:10.8px}.choice-body{gap:5px}.choice-body img{height:95px}.choice-body>span:not(.choice-check){font-size:19.2px}}
/* Mobile is composed, not simply scaled down. */
@media(max-width:600px){:root{--gutter:24px}html{scroll-padding-top:87px}.site-header{height:83px;padding:0 21px}.site-header.is-scrolled{height:72px}.wordmark>span:first-child{font-size:11px;letter-spacing:.13em}.wordmark-jp{font-size:8px;letter-spacing:.14em}.wordmark{gap:6px}.header-contact{font-size:9px;padding-left:12px;gap:11px}.header-contact span{font-size:16px}.header-actions{gap:10px}.menu-toggle{width:36px;height:44px}.menu-toggle span{width:20px}.menu-toggle span:last-child{width:14px}.hero{height:max(800px,100svh);min-height:800px;max-height:950px}.hero-content{top:137px;left:24px;right:24px}.hero-eyebrow{font-size:7px;letter-spacing:.19em;margin-bottom:23px}.tiny-rule{width:22px;margin-right:11px}.hero h1{font-size:clamp(34px,8.9vw,45px);line-height:1.65;letter-spacing:.02em}.hero-caption{font-size:11px;letter-spacing:.08em;margin-top:21px}.hero-link{font-size:10px;min-width:135px;gap:40px;margin-top:22px;padding-bottom:8px}.hero-visual{width:104%;max-width:none;right:-3%;top:402px}.hero-visual img{width:100%}.hero-art-label{bottom:2%;right:38px;font-size:7px;gap:4px}.hero-art-label span:first-child{font-size:8px}.hero-visual.is-single{width:80%;right:8%;top:397px}.hero-visual.is-single img{max-height:325px}.hero-visual.is-single .hero-art-label{right:4%;bottom:0}.vertical-note{right:15px;top:145px;font-size:6px;letter-spacing:.17em;display:none}.hero-bottom{bottom:17px;left:24px;right:21px}.scroll-cue{font-size:6px;letter-spacing:.17em;gap:12px}.scroll-line{height:28px}.hero-counter{font-size:8px;gap:8px;margin-right:10px}.counter-rule{width:32px}.slide-dot{width:27px}.concept{padding-top:75px;padding-bottom:85px}.section-overline{font-size:8px;padding-top:17px;margin-bottom:40px;letter-spacing:.17em}.concept-grid{grid-template-columns:1fr;gap:38px}.editorial-en{font-size:32px;margin-bottom:28px}.concept h2{font-size:26px;line-height:1.9}.micro-signature{font-size:7px;margin-top:27px}.concept-copy{padding:0}.concept-copy p{font-size:12px;line-height:2.3;margin-bottom:25px}.desktop-break{display:none}.collection{padding-bottom:78px}.section-heading-row{margin-bottom:35px;gap:18px}.display-en{font-size:clamp(41px,10.5vw,60px);letter-spacing:-.04em}.section-heading-row>p{font-size:11px;letter-spacing:.07em}.collection-grid{grid-template-columns:1fr;gap:51px}.work-image{aspect-ratio:1.06/1;padding:24px 23px 0}.work-image img{max-height:380px}.work-number{font-size:9px}.work-title{margin-top:21px;padding-top:21px;gap:22px}.work-title h3{font-size:26px}.work-title>span{font-size:9px}.round-arrow{width:38px;height:38px;font-size:20px}.work-description{font-size:12px;line-height:2.1;margin-top:19px}.work-scene{font-size:9px;margin-top:13px}.collection-foot{flex-direction:column;align-items:start;margin-top:36px;gap:16px}.collection-foot>p{font-size:9px;line-height:2.1}.image-view{display:none}.detail-interlude{height:470px;margin-bottom:77px}.interlude-picture{width:105%;right:-20%;top:0;height:100%;mask-image:linear-gradient(90deg,transparent,#000 45%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 45%)}.interlude-picture img{object-position:43% 50%;filter:brightness(.6)}.interlude-copy{top:20%;width:83%}.interlude-copy .eyebrow{font-size:7px}.interlude-copy>p{font-size:39px;margin:25px 0;line-height:1.95}.small-label{font-size:8px}.artist{padding-bottom:83px}.artist-grid{grid-template-columns:1fr;padding:0;gap:36px}.artist-visual{max-width:none;width:85%;margin-left:auto;margin-right:auto}.artist-visual img{height:450px;object-position:center 54%}.artist-visual figcaption{font-size:8px}.artist-content>.eyebrow{font-size:9px;margin-bottom:25px}.artist-role{font-size:10px}.artist-content h2{font-size:36px}.artist-en{font-size:23px}.artist-content h3{font-size:26px}.artist-content>p:not(.artist-en):not(.artist-role):not(.eyebrow){font-size:12px}.gallery{padding-bottom:88px}.gallery-grid{grid-template-columns:1fr;gap:35px}.gallery-image{height:410px}.gallery-image img{object-position:50% 48%}.gallery-meta{flex-direction:row;align-items:center;margin-top:17px}.gallery-meta>span:first-child{font-size:13px}.gallery-meta>span:last-child{font-size:7px}.gallery-credit{font-size:8px;line-height:2}.experiences{padding-bottom:86px}.premium-row{grid-template-columns:1fr;gap:21px;padding:29px 0 15px;margin-bottom:41px}.premium-title .eyebrow{font-size:8px}.premium-title h3{font-size:25px}.premium-row>p{font-size:11px;line-height:2.3}.premium-row small{font-size:8px}.premium-row>.text-link{grid-column:auto;justify-self:start;margin-top:0;font-size:11px}.live-grid{grid-template-columns:1fr;gap:35px}.live-image{margin-left:-24px;margin-right:-24px}.live-image img{min-height:0;height:auto;aspect-ratio:1.25;object-fit:cover;object-position:62% center}.live-image figcaption{font-size:8px;margin-left:24px}.live-copy .eyebrow{font-size:8px}.live-copy h3{font-size:32px;line-height:1.85;margin-top:23px}.live-copy p{font-size:12px;line-height:2.25}.live-copy .text-link{font-size:11px}.order{padding-bottom:65px}.order-heading{display:block;margin-bottom:39px}.order-heading h2{font-size:29px;line-height:1.9;letter-spacing:.04em}.order-heading>p{font-size:17.82px;margin-top:23px;line-height:2.2}.order-steps{grid-template-columns:1fr}.order-steps li{padding:24px 0 24px 54px!important;border-right:none;display:grid;grid-template-columns:1fr;position:relative}.order-steps li:nth-child(odd){padding-left:54px!important}.step-num{position:absolute;top:33px;left:0;font-size:25px}.order-steps h3{margin:3px 0 10px;font-size:20px}.order-steps p{font-size:15px}.order-note{margin-top:28px;gap:14px;padding:22px 0}.order-note p{font-size:12px}.order-note p>span{font-size:10px;line-height:2.15;display:inline-block;margin-top:8px}.faq{gap:29px;padding-bottom:72px}.faq-heading>.eyebrow{font-size:8px}.faq-heading h2{font-size:25px;margin-top:19px}summary{font-size:11px;line-height:1.9;padding:22px 0;gap:19px}details>p{padding:0 14px 25px 0;font-size:11px}.contact{padding-top:67px;padding-bottom:70px}.contact-inner{width:100%}.contact-inner>.eyebrow{font-size:8px}.contact h2{font-size:35px;line-height:1.85;margin:24px 0 20px}.contact-inner>p:not(.eyebrow){font-size:11px;line-height:2.2}.contact-cta{font-size:12px;margin-top:29px;min-width:0;width:100%;max-width:340px;padding:17px 20px}.contact-methods{font-size:7px}.contact-ghost{font-size:69px;top:35%;right:-40px;opacity:.52}.site-footer{padding-top:34px;padding-bottom:23px}.footer-wordmark>span:first-child{font-size:12px}.footer-wordmark .wordmark-jp{font-size:9px}.footer-main{gap:25px 10px}.back-top{width:36px;height:36px;font-size:18px}.footer-main nav{gap:19px;font-size:9px}.footer-bottom{margin-top:29px;flex-wrap:wrap;gap:11px;font-size:7px}.footer-bottom .plain-button{margin-left:0;flex-basis:100%;order:3;text-align:left;font-size:8px}.preview-tag{margin-left:auto;font-size:6px}.footer-disclosure{font-size:8px;line-height:2}.menu-dialog{padding:0 23px}.menu-dialog .dialog-top{padding:17px 0}.menu-dialog .dialog-top .eyebrow{font-size:8px}.menu-content{padding:31px 0}.menu-content nav a{gap:17px;padding:20px 0}.menu-index{font-size:8px}.menu-content nav a>span:first-child{font-size:36px}.menu-jp{font-size:8px}.dialog-top{padding:13px 18px}.dialog-top>.eyebrow{font-size:8px}.close-button{width:42px;height:42px;font-size:29px}dialog,.work-dialog,.gallery-dialog,.consult-dialog,.info-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.menu-dialog{width:100vw;max-height:100dvh}.work-dialog-grid{grid-template-columns:1fr;padding:16px 23px 30px;gap:31px}.work-dialog-image img{height:300px;width:100%;object-fit:contain}.work-dialog-image>span{font-size:8px;margin-top:6px}.work-dialog-copy h2{font-size:38px;margin:12px 0}.work-dialog-lead{font-size:22px}.work-dialog-copy>.eyebrow{font-size:8px}.work-dialog-copy>p:not(.eyebrow):not(.work-dialog-lead):not(.fine-print){font-size:11px}.work-dialog-copy .contact-cta{max-width:none}.gallery-dialog-stage{padding:15px 6px;gap:5px;position:relative}.gallery-dialog-stage img{max-width:100%;max-height:75dvh}.gallery-nav{position:absolute;z-index:2;bottom:26px;background:rgba(0,0,0,.78);width:40px;height:40px}#gallery-prev{left:16px}#gallery-next{right:16px}.gallery-dialog>p{font-size:8px;padding:1px 10px 20px}.consult-head{padding:22px 22px 13px;display:block}.consult-head h2{font-size:24px;line-height:1.75}.consult-head>p{font-size:10.8px;line-height:1.9;margin-top:13px}.consult-progress{margin:0 22px 17px;font-size:10.8px}.consult-progress li{letter-spacing:.035em;padding:13px 0}#consult-form{padding:0 22px 23px}.consult-step>h3{font-size:14.4px;margin:19px 0 17px}.consult-choices{gap:9px}.choice-body{flex-direction:column;gap:2px;padding:6px 3px 12px;min-height:137px;text-align:center}.choice-body img{width:100%;height:80px}.choice-body>span:not(.choice-check){font-size:19.2px}.choice-body small{font-size:7.2px;letter-spacing:.05em}.choice-check{bottom:7px;right:6px;font-size:9px}.undecided{font-size:12px;align-items:start;margin:20px 0 24px;gap:8px;line-height:1.8}.undecided input{margin-top:2px}.option-checks{gap:13px;flex-direction:column;padding-top:15px}.option-checks legend{font-size:13.2px}.option-checks label{font-size:12px}.consult-footer{padding-top:20px;gap:12px;margin-top:24px}.consult-footer .button-white,.consult-footer .button-outline{padding:11px 14px;font-size:12px;gap:13px}#consult-page-count{font-size:9.6px}.consult-footer .plain-button{font-size:12px}.form-grid{gap:17px 12px}.form-grid label,.message-field{font-size:10px}.form-grid input,.form-grid select{font-size:11px;min-width:0;padding:10px 8px}.message-field textarea{font-size:11px}.field-note{font-size:9px}.handoff-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.handoff-actions>*{font-size:10px;min-height:43px;padding:12px 8px}.handoff-actions .button-white{grid-column:1/-1}.handoff-notice{font-size:10px}.summary-label{font-size:9px}#consult-summary{font-size:10px;min-height:230px}.info-dialog>h2{font-size:22px;margin:24px 23px 20px}.info-content{padding:0 23px 28px}.info-content p{font-size:11px}.info-content h3{font-size:13px}.toast{font-size:10px;padding:13px 16px;max-width:calc(100vw - 30px);white-space:normal;text-align:center;bottom:18px}}
@media(max-width:360px){.header-contact{display:none}.hero h1{font-size:32px}.hero{min-height:760px;height:780px}.hero-visual{top:409px}.hero-controls{gap:0}.hero-counter{margin-right:0}.gallery-image{height:350px}.consult-choices{gap:7px}.choice-body img{height:69px}.choice-body{min-height:125px}.wordmark>span:first-child{font-size:10px}.menu-jp{font-size:7px}}
@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-visual img{opacity:1}.work-image:hover img,.gallery-card:hover img{transform:none}}
@media print{body{background:#fff;color:#000}.site-header,.hero-bottom,.header-actions,dialog,.image-view,.contact-cta,.round-arrow,.footer-bottom,.footer-disclosure{display:none!important}.hero{height:auto;min-height:700px}.hero-content{top:20px}.hero-visual{top:200px}.section-shell{padding:30px 0;break-inside:avoid}.motion-ready .reveal{opacity:1;transform:none}.section-overline,.work-title,.order-steps{border-color:#ccc}.detail-interlude{margin:30px 0}.contact-ghost{display:none}}

.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}button:disabled{opacity:.6;cursor:wait}#email-handoff:disabled{cursor:default}

/* Spacing after the remaining premium fruit option. */
.experiences .premium-row{margin-bottom:0}

/* Supplied photographs: preserve full subjects and their original colors. */
.hero-visual{right:var(--gutter);top:130px;width:44%;max-width:570px;height:calc(100% - 230px)}
#hero-picture{display:block;height:100%}
.hero-visual img{width:100%;height:100%;object-fit:contain;mix-blend-mode:normal}
.hero-art-label{position:static;margin-top:14px;text-align:right;flex-direction:row;justify-content:flex-end;gap:18px}
.work-image{aspect-ratio:3/4}
.artist-visual:before{display:none}
.artist-visual img{height:auto;max-height:none;object-fit:contain}
.gallery-image{height:clamp(350px,45vw,540px)}
.gallery-image img{object-fit:contain}
@media(max-width:900px){
 .hero{display:flex;flex-direction:column;gap:34px;height:auto;min-height:0;max-height:none;padding:137px var(--gutter) 95px}
 .hero-content{position:relative;left:auto;right:auto;top:auto}
 .hero-visual{position:relative;right:auto;top:auto;width:100%;height:auto;max-width:480px;margin:0 auto}
 #hero-picture{height:auto;aspect-ratio:3/4}
 .hero-art-label{margin-top:12px;gap:14px}
 .vertical-note{display:none}
 .artist-visual img{height:auto}
}
@media(max-width:600px){.hero{padding-top:124px}.hero-visual{max-width:360px}.hero-art-label{font-size:7px}.gallery-image{height:auto;aspect-ratio:3/4}}

/* Use the wordmark's classic serif for Latin characters everywhere,
   including English inside otherwise Japanese labels. */
@font-face{font-family:'JFC Latin';src:local('Times New Roman');font-weight:400;font-style:normal;unicode-range:U+0000-024F}
@font-face{font-family:'JFC Latin';src:local('Times New Roman Bold');font-weight:700;font-style:normal;unicode-range:U+0000-024F}
:root{--latin:'JFC Latin','Times New Roman',Times,serif;--sans:'JFC Latin',Arial,'Noto Sans CJK JP','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;--serif:'JFC Latin','Noto Serif CJK JP','Yu Mincho','Hiragino Mincho ProN',Georgia,serif}
.eyebrow,.section-overline,.small-label,.desktop-nav,.hero-art-label,.work-title>span,.gallery-meta>span:last-child,.choice-body small,.consult-progress,.footer-bottom{font-family:var(--sans)}
.editorial-en em,.artist-en,.contact-ghost em,.step-num{font-style:normal}
.display-en,.editorial-en,.artist-en,.menu-content nav a>span:first-child{font-family:var(--latin);letter-spacing:.035em}
/* Cutouts have no photographic rectangle and need a compact, square frame. */
.work-image{aspect-ratio:1/1.08}
.gallery-image{height:clamp(320px,36vw,470px)}
@media(max-width:900px){#hero-picture{aspect-ratio:1/1}.hero-visual{max-width:500px}}
@media(max-width:600px){.gallery-image{height:auto;aspect-ratio:1/1}.hero-visual{max-width:380px}}

/* Supplied JFC logo on every site view. */
.wordmark{position:relative;padding-left:62px;min-height:48px;justify-content:center;flex-shrink:0}
.brand-logo{position:absolute;left:0;top:50%;transform:translateY(-50%);width:48px;height:48px;object-fit:contain}
.dialog-brand{display:flex;align-items:center;gap:14px;min-width:0}
.dialog-brand img{width:40px;height:40px;object-fit:contain;flex-shrink:0}
.dialog-brand .eyebrow{margin:0}
@media(max-width:1200px){.desktop-nav{display:none}}
@media(max-width:600px){.wordmark{padding-left:43px;min-height:34px}.brand-logo{width:34px;height:34px}.site-header .wordmark>span:first-child{font-size:10px;letter-spacing:.08em}.site-header .wordmark-jp{font-size:7px}.dialog-brand{gap:10px}.dialog-brand img{width:32px;height:32px}.dialog-brand .eyebrow{font-size:8px}.footer-wordmark>span:first-child{font-size:10px}}

/* Japanese-first identity and larger, clean navigation typography. */
.wordmark>span.wordmark-jp{font-family:var(--serif);font-size:20px;letter-spacing:.12em;line-height:1.4}
.wordmark>span.wordmark-en{font-family:var(--latin);font-size:11px;letter-spacing:.16em;line-height:1.3}
.desktop-nav a{font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:400;letter-spacing:.14em}
.desktop-nav{gap:27px;margin-right:32px}
.header-contact{font-size:13px}
.artist-rank{display:block;margin-bottom:5px;font-size:12px;letter-spacing:.2em}
@media(max-width:600px){.site-header .wordmark>span.wordmark-jp,.footer-wordmark>span.wordmark-jp{font-size:14px;letter-spacing:.06em}.wordmark>span.wordmark-en{font-size:8px;letter-spacing:.07em}.header-contact{font-size:10px;padding-left:9px;gap:8px}.header-actions{gap:7px}}
@media(max-width:360px){.site-header .wordmark>span.wordmark-jp{font-size:13px}.wordmark>span.wordmark-en{font-size:7px}}

/* Larger hero composition with a gentle five-second artwork cycle. */
@media(min-width:901px){.hero-visual{right:calc(var(--gutter) + 3vw);top:100px;width:48%;max-width:660px;height:calc(100% - 210px)}}
#hero-picture{position:relative;isolation:isolate}
#hero-picture .hero-previous{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;pointer-events:none;z-index:2}
#hero-artwork.hero-incoming{animation:heroCrossfade 1000ms ease-in-out}
@keyframes heroCrossfade{from{opacity:0}to{opacity:1}}
#hero-pause{width:38px;height:38px;font-family:Arial,sans-serif;font-size:13px;opacity:.8;margin-right:12px}
#hero-pause:hover{opacity:1}
@media(max-width:600px){#hero-pause{width:30px;margin-right:4px}.hero-controls{gap:0}}

/* Minimal hero and a consistent Times New Roman Latin typeface. */
.desktop-nav a,#hero-pause{font-family:var(--latin)}
.hero h1{font-size:clamp(26px,2.8vw,46px);line-height:1.5;letter-spacing:.035em;white-space:nowrap}
@media(min-width:901px){.hero-content{top:45%}}
@media(max-width:900px){.hero h1{font-size:clamp(22px,4.3vw,38px)}}
@media(max-width:600px){.hero h1{font-size:clamp(20px,5.1vw,30px);letter-spacing:.015em}.header-contact{font-size:10px}}

/* Independent pages with a viewport-sized cover. */
.header-contact{font-family:var(--serif)}
.desktop-nav a{font-size:16px;letter-spacing:.10em}
.desktop-nav{gap:42px;margin-right:28px}
@media(max-width:1390px){.desktop-nav a{font-size:13.6px}.desktop-nav{gap:30px}}
.content-page main{padding-top:150px;min-height:75vh}
.content-page main>.section-shell{padding-top:35px}
.content-page .site-header{position:fixed}
.home-page{height:100dvh;overflow:hidden}
.home-page main{height:100%}
.home-page .hero{height:100dvh;min-height:0;max-height:none;padding:0;overflow:hidden}
.home-page .hero-content{top:46%}
.hero-submessage{font-family:var(--latin);font-size:clamp(15px,1.45vw,23px);letter-spacing:.04em;margin-top:23px;line-height:1.5}
.home-page .hero-visual{top:110px;height:calc(100dvh - 155px)}
@media(max-width:900px){
 .home-page .hero{display:grid;grid-template-rows:auto minmax(0,1fr);gap:22px;padding:120px 24px 32px}
 .home-page .hero-content{top:auto;text-align:center}
 .home-page .hero-visual{position:relative;top:auto;right:auto;height:100%;width:100%;max-width:520px;min-height:0;margin:0 auto}
 .home-page #hero-picture{height:100%;aspect-ratio:auto}
 .hero-submessage{font-size:16px;margin-top:13px}
 .content-page main{padding-top:110px}
}
@media(max-width:600px){.home-page .hero{padding-top:108px;gap:18px}.hero-submessage{font-size:13px;letter-spacing:.02em}.content-page main>.section-shell{padding-top:24px}}
@media(max-height:500px) and (min-width:601px){.home-page .hero{display:block;padding:0}.home-page .hero-content{position:absolute;left:5%;top:45%;text-align:left}.home-page .hero h1{font-size:25px}.home-page .hero-visual{position:absolute;right:3%;top:85px;width:43%;height:calc(100dvh - 105px)}.hero-submessage{font-size:14px}}

/* Company information and the full-width cover header rule. */
.site-header,.site-header.is-scrolled{border-bottom:1px solid var(--line)}
.company{padding-bottom:100px}.company>.display-en{margin-bottom:55px}
.company-grid{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:start}
.company-grid h2{font-family:var(--serif);font-size:23px;font-weight:400;letter-spacing:.06em;margin-bottom:28px}
.company-details>div{display:grid;grid-template-columns:80px 1fr;gap:24px;padding:25px 0;border-top:1px solid var(--line)}
.company-details dt{font-size:14px;color:var(--muted)}.company-details dd{font-size:16px;margin:0;overflow-wrap:anywhere}
.company-details a:hover,.social-link:hover{text-decoration:underline}
.company-socials{display:grid;grid-template-columns:1fr 1fr;gap:30px;text-align:center}
.company-socials h2{font-size:21px;margin-bottom:22px}
.company-qr{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1.15;background:#000;border-radius:6px;overflow:hidden;max-width:235px;margin:0 auto 18px;padding:10px}
.company-qr img{width:100%;height:auto;max-height:100%;object-fit:contain;filter:grayscale(1) contrast(20) invert(1)}
.social-link{font-size:14px;display:inline-block;line-height:1.8}
@media(min-width:1201px) and (max-width:1490px){.site-header{padding-inline:32px}.desktop-nav{margin-right:22px;gap:30px}.desktop-nav a{font-size:13.6px}.header-actions{gap:16px}.header-contact{padding-left:20px}}
@media(max-width:900px){.company-grid{grid-template-columns:1fr;gap:48px}.company-socials{max-width:540px}.company>.display-en{margin-bottom:38px}}
@media(max-width:600px){.company{padding-bottom:60px}.company-grid h2{font-size:19px}.company-details>div{grid-template-columns:55px 1fr;gap:15px;padding:21px 0}.company-details dd{font-size:14px}.company-socials{gap:20px}.company-socials h2{font-size:18px}.social-link{font-size:13px}}

/* Match all Japanese body and interface text to the company wordmark. */
:root{--sans:var(--serif)}
body,button,input,select,textarea{font-family:var(--serif)}

/* Artist photographs: stable frame and gentle five-second crossfade. */
.artist-slideshow:before{display:none}
.artist-slides{position:relative;width:100%;aspect-ratio:4/5;background:#000}
.artist-slides .artist-slide{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:contain;object-position:center bottom;opacity:0;transition:opacity 1s ease-in-out}
.artist-slides .artist-slide.is-active{opacity:1}

@media(prefers-reduced-motion:reduce){.artist-slides .artist-slide{transition:none}}
.artist-content>p.artist-company-message{margin-top:4.6em}

/* Keep the artist profile within the viewport, just below the header. */
body.artist-page{height:100dvh;overflow:hidden}
.artist-page main{height:100dvh;min-height:0;padding-top:112px;box-sizing:border-box}
.artist-page main>.artist{height:100%;padding-top:12px;padding-bottom:16px;overflow:hidden}
.artist-page .artist-grid{transform-origin:top center;gap:7%;align-items:center}
.artist-page .artist-visual{max-width:440px;justify-self:center}
.artist-page .artist-content>.eyebrow{margin-bottom:14px}
.artist-page .artist-content h2{font-size:36px;line-height:1.5}
.artist-page .artist-content .short-rule{margin-top:18px;margin-bottom:18px}
.artist-page .artist-content h3{font-size:22px;line-height:1.7;margin-bottom:18px}
.artist-page .artist-content>p:not(.artist-en):not(.artist-role):not(.eyebrow){line-height:2;margin-bottom:14px}
.artist-page .artist-content>p.artist-company-message{margin-top:4em}
@media(max-width:600px){
.artist-page main{padding-top:82px}
.artist-page main>.artist{padding-top:8px;padding-bottom:8px}
.artist-page .artist-grid{gap:12px}
.artist-page .artist-visual{width:100%;height:150px}
.artist-page .artist-slides{height:150px;aspect-ratio:auto}
.artist-page .artist-content>.eyebrow{margin-bottom:6px}
.artist-page .artist-content h2{font-size:27px}
.artist-page .artist-en{font-size:16px}
.artist-page .artist-content h3{font-size:18px;margin-bottom:10px}
.artist-page .artist-content .short-rule{margin-top:10px;margin-bottom:10px}
.artist-page .artist-content>p:not(.artist-en):not(.artist-role):not(.eyebrow){font-size:12px;line-height:1.8;margin-bottom:10px}
.artist-page .artist-content>p.artist-company-message{margin-top:3.6em}
}

/* Slightly lower profile with larger, more continuous biography text. */
.artist-page main>.artist{padding-top:28px}
.artist-page .artist-visual{transform:translateY(12px)}
.artist-page .artist-content>p:not(.artist-en):not(.artist-role):not(.eyebrow){font-size:13.2px;line-height:1.85;margin-bottom:0}
.artist-page .artist-content>p.artist-company-message{margin-top:0}
.artist-page .artist-content .text-link{font-size:12.1px;margin-top:14px}
@media(min-width:601px) and (max-width:900px){
.artist-page .artist-content>p:not(.artist-en):not(.artist-role):not(.eyebrow){font-size:11px}
}
@media(max-width:600px){
.artist-page main>.artist{padding-top:18px}
.artist-page .artist-visual{transform:translateY(4px)}
.artist-page .artist-content>p:not(.artist-en):not(.artist-role):not(.eyebrow){font-size:13.2px;line-height:1.65}
}
/* Match the requested blank lines: one between biography blocks, three before company. */
.artist-page .artist-content>p.artist-bio-paragraph{margin-top:1.85em}
.artist-page .artist-content>p.artist-company-message{margin-top:5.55em}
@media(max-width:600px){
.artist-page .artist-content>p.artist-bio-paragraph{margin-top:1.65em}
.artist-page .artist-content>p.artist-company-message{margin-top:4.95em}
}
.concept-heading .philosophy-subtitle{font-family:"Times New Roman",serif;font-size:clamp(19px,1.8vw,27px);line-height:1.5;letter-spacing:.01em;margin:18px 0 0}
.concept-copy.philosophy-copy p{margin:0;line-height:2.45}
.concept-copy.philosophy-copy p+p{margin-top:2.45em}

/* Philosophy: give the statement and narrative equal visual presence. */
.philosophy-page .concept-grid{grid-template-columns:1fr 1.15fr;gap:7%;align-items:center}
.philosophy-page .concept-heading{justify-self:center;align-self:center}
.philosophy-page .concept h2{font-size:43.5px;line-height:1.65}
.philosophy-page .philosophy-subtitle{font-size:clamp(28.5px,2.7vw,40.5px);margin-top:24px}
.philosophy-page .philosophy-copy p{font-size:26px}
@media(min-width:601px) and (max-width:900px){
.philosophy-page .concept h2{font-size:36px}
.philosophy-page .philosophy-copy p{font-size:22px}
}
@media(max-width:600px){
.philosophy-page .concept-grid{grid-template-columns:1fr;gap:48px}
.philosophy-page .concept-heading{text-align:center}
.philosophy-page .concept h2{font-size:39px}
.philosophy-page .philosophy-copy p{font-size:24px}
}

.philosophy-page .concept-grid{grid-template-columns:.9fr 1.2fr;gap:4%}
.philosophy-page .concept-heading{align-self:start;margin-top:clamp(90px,14vh,150px)}
.philosophy-page .concept-copy.philosophy-copy p{line-height:1.7;letter-spacing:.025em}
.philosophy-page .concept-copy.philosophy-copy p+p{margin-top:1.7em}
@media(min-width:901px){.philosophy-page .concept{padding-inline:40px}}
@media(max-width:600px){.philosophy-page .concept-grid{grid-template-columns:1fr}.philosophy-page .concept-heading{margin-top:0}}
/* Refine the subtitle and move the smaller narrative toward the right edge. */
.philosophy-page .philosophy-subtitle{font-size:clamp(19.95px,1.89vw,28.35px)}
.philosophy-page .concept-grid{grid-template-columns:1.1fr 1fr;gap:7%}
.philosophy-page .philosophy-copy p{font-size:18.2px}
@media(min-width:601px) and (max-width:900px){.philosophy-page .philosophy-copy p{font-size:15.4px}}
@media(max-width:600px){
.philosophy-page .concept-grid{grid-template-columns:1fr;gap:48px}
.philosophy-page .philosophy-copy{padding-left:18px}
.philosophy-page .philosophy-copy p{font-size:16.8px}
}
/* Align the two columns at their first text line. */
.philosophy-page .concept-grid{align-items:start}
.philosophy-page .concept-heading{margin-top:0}
.philosophy-page .concept-copy{padding-top:0}
.philosophy-page .concept-heading{position:relative;top:-.6em}
.philosophy-page .philosophy-copy p{font-size:16.38px}
@media(min-width:601px) and (max-width:900px){.philosophy-page .philosophy-copy p{font-size:13.86px}}
@media(max-width:600px){.philosophy-page .philosophy-copy p{font-size:15.12px}}

#consult-dialog .dialog-brand .eyebrow{font-size:9.6px}
/* Center the complete philosophy composition below the header. */
.philosophy-page main{min-height:100dvh;box-sizing:border-box;padding-top:112px;display:flex;align-items:center}
.philosophy-page main>.concept{width:100%;padding-top:42px;padding-bottom:42px}
.philosophy-page .concept-grid{max-width:1200px;margin-inline:auto}
.philosophy-page .philosophy-subtitle{font-weight:400;display:flex;align-items:center;gap:14px}
.philosophy-page .philosophy-subtitle:before{content:"";display:block;flex:0 0 28px;height:1px;background:currentColor;opacity:.75}
@media(max-width:600px){
.philosophy-page main{padding-top:82px}
.philosophy-page main>.concept{padding-top:38px;padding-bottom:38px}
.philosophy-page .philosophy-subtitle{justify-content:center;gap:10px}
.philosophy-page .philosophy-subtitle:before{flex-basis:20px}
}

#consult-dialog .dialog-brand .eyebrow{font-size:19.2px}
#consult-dialog .dialog-brand img{width:48px;height:48px;flex-shrink:0}
#consult-dialog .option-checks{display:flex;flex-direction:column;gap:16px}
#consult-dialog .option-checks label{align-items:flex-start;line-height:1.8}
#consult-dialog .option-checks input{flex-shrink:0;margin-top:.3em}
@media(max-width:600px){#consult-dialog .dialog-brand{min-width:0}#consult-dialog .dialog-brand .eyebrow{overflow-wrap:anywhere;line-height:1.5}}

/* Variety reference stays separate from the option checkbox and the form. */
#consult-dialog .watermelon-guide-link{display:inline-flex;flex-wrap:wrap;align-items:center;gap:9px;min-height:44px;margin:2px 0 0 30px;font-size:12px;text-decoration:underline;text-underline-offset:5px}
#consult-dialog .watermelon-guide-link small{font-size:10px;color:var(--muted);text-decoration:none}
#consult-dialog .watermelon-guide-link:hover{color:rgba(255,255,255,.75)}
.watermelon-page .watermelon-guide{max-width:1280px;padding-bottom:85px}
.watermelon-intro{margin-bottom:62px}
.watermelon-intro .eyebrow{font-size:11px;letter-spacing:.2em;color:var(--muted)}
.watermelon-intro h1{font-size:clamp(28px,3vw,42px);line-height:1.6;letter-spacing:.06em;margin:18px 0 24px}
.watermelon-intro>p:last-child{font-size:16px;line-height:2.1}
.watermelon-varieties{display:grid;grid-template-columns:1fr 1fr;gap:68px}
.watermelon-variety{min-width:0;border-top:1px solid var(--line);padding-top:26px}
.watermelon-en{font-family:"Times New Roman",serif;font-size:15px;letter-spacing:.06em;color:var(--muted)}
.watermelon-variety h2{font-size:30px;line-height:1.8;min-height:78px;margin:8px 0 24px}
.watermelon-variety h2 small{display:block;font-size:11px;letter-spacing:.12em;color:var(--muted)}
.watermelon-variety .watermelon-lead{font-size:18px;margin-bottom:17px}
.watermelon-variety>p:not(.watermelon-en):not(.watermelon-lead){font-size:14px;line-height:2.15;color:rgba(255,255,255,.82)}
.watermelon-variety dl{margin:26px 0 0;font-size:13px}
.watermelon-variety dl>div{display:grid;grid-template-columns:100px 1fr;gap:14px;border-top:1px solid var(--line-soft);padding:14px 0}
.watermelon-variety dt{color:var(--muted)}
.watermelon-variety dd{margin:0}
.watermelon-guidance{border-top:1px solid var(--line);padding-top:35px}
.watermelon-guidance h2{font-size:22px;margin-bottom:20px}
.watermelon-guidance>p{font-size:14px;line-height:2}
.watermelon-guidance .watermelon-note{font-size:12px;color:var(--muted);margin-top:22px}
@media(max-width:760px){
 .watermelon-intro{margin-bottom:42px}
 .watermelon-varieties{grid-template-columns:1fr;gap:40px}
 .watermelon-variety h2{font-size:27px;min-height:0;margin-bottom:20px}
 .watermelon-variety .watermelon-lead{font-size:17px}
 .watermelon-variety dl>div{grid-template-columns:88px 1fr;gap:12px}
  .watermelon-guidance h2{font-size:20px}
 .watermelon-page .watermelon-guide{padding-bottom:50px}
}

/* Each real variety is presented as a clean cutout on the black page. */
html:has(body.order-page),body.order-page{height:100dvh;overflow:hidden}
.order-page main{height:100dvh;min-height:0;padding-top:112px}
.order-page main>.order{height:100%;padding-top:24px;padding-bottom:20px;overflow:hidden}
.order-page .order-fit{transform-origin:top center}
.order-page .order-heading{margin-bottom:38px}
.order-page .order-heading>p{margin-right:0}
.order-page .order-note{margin-top:26px;padding-bottom:0}
.order-page .order-note>p{min-width:0;flex:1}
.order-page .order-note p>span{display:block;white-space:nowrap}
@media(max-width:600px){
 .order-page main{padding-top:82px}
 .order-page main>.order{padding-top:16px;padding-bottom:14px}
 .order-page .order-heading{margin-bottom:20px}
 .order-page .order-heading h2{font-size:24px;line-height:1.65}
 .order-page .order-heading>p{font-size:14px;line-height:1.9;margin-top:14px}
 .order-page .order-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
 .order-page .order-steps li,.order-page .order-steps li:nth-child(odd){display:block;padding:14px 10px!important}
 .order-page .order-steps li:nth-child(odd){padding-left:0!important;border-right:1px solid var(--line-soft)}
 .order-page .order-steps .step-num{position:static;font-size:22px}
 .order-page .order-steps h3{font-size:14px;letter-spacing:0;margin:8px 0}
 .order-page .order-steps p{font-size:11px;line-height:1.8}
 .order-page .order-note{margin-top:18px;padding-top:12px;gap:10px}
}
.watermelon-variety .watermelon-photo{margin:0 0 28px;aspect-ratio:4 / 3;display:flex;align-items:center;justify-content:center;background:#000}
.watermelon-photo img{width:100%;height:100%;object-fit:contain}
.watermelon-guidance{margin-top:62px}
@media(max-width:760px){.watermelon-variety .watermelon-photo{margin-bottom:22px}.watermelon-guidance{margin-top:42px}}

/* Experience: an editorial presentation of the three bespoke options. */
.experience-page main{padding-top:150px;padding-bottom:80px}
.experience-page .section-shell{max-width:1440px}
.experience-intro{padding-bottom:78px;position:relative}
.experience-intro>.eyebrow,.experience-block-heading>.eyebrow{font-size:12px;letter-spacing:.22em;color:var(--muted);margin-bottom:22px}
.experience-intro h1{font-size:clamp(34px,4vw,58px);line-height:1.7;letter-spacing:.09em}
.experience-intro-copy{font-size:16px;line-height:2.1;margin-top:30px;color:rgba(255,255,255,.8)}
.experience-index{display:flex;gap:48px;margin-top:42px;flex-wrap:wrap}
.experience-index a{font-size:24px;line-height:2;padding:8px 0 12px;letter-spacing:.06em;border-bottom:1px solid rgba(255,255,255,.6)}
.experience-index a:hover,.experience-link:hover{border-color:#fff}
.experience-block{padding-top:64px;padding-bottom:78px;scroll-margin-top:120px}
.experience-block:before{content:"";display:block;border-top:1px solid var(--line);margin-bottom:60px}
.experience-block-heading h2{font-size:clamp(28px,2.8vw,40px);line-height:1.7;letter-spacing:.05em}
.experience-block-heading>p:last-child:not(.eyebrow){font-size:16px;line-height:2.15;margin-top:24px;color:rgba(255,255,255,.8)}
.experience-inside-copy{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;margin-top:48px}
.experience-inside-photo{margin:0;width:100%}.experience-inside-photo img{display:block;width:100%;max-height:620px;object-fit:contain}.experience-inside-copy h3+p{margin-top:28px}
.experience-inside-copy h3{font-size:clamp(26px,2.5vw,36px);line-height:1.9;letter-spacing:.07em}
.experience-inside-copy p{font-size:16px;line-height:2.25}
.experience-inside-copy p+p{margin-top:24px;color:var(--muted)}
.experience-link{display:inline-block;font-size:14px;line-height:1.9;min-height:44px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.55);text-align:left;transition:border-color .2s}
.experience-inside-copy .experience-link{margin-top:30px}
.experience-fruit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;margin-top:48px}
.experience-fruit{min-width:0}
.experience-fruit-photo{aspect-ratio:4/3;margin-bottom:28px}
.experience-fruit-photo img{width:100%;height:100%;object-fit:contain}
.experience-origin{font-size:12px;color:var(--muted);letter-spacing:.04em;margin-bottom:14px}
.experience-fruit h3{font-size:29px;line-height:1.65;min-height:105px;letter-spacing:.05em}
.experience-fruit h3.experience-long-name{font-size:23px}
.experience-fruit h3 small,.experience-watermelon h3 small{display:block;font-family:"Times New Roman",serif;font-size:14px;letter-spacing:.04em;color:var(--muted);margin-top:8px}
.experience-fruit>p:last-child{font-size:16px;line-height:2.1;margin-top:20px;color:rgba(255,255,255,.82)}
.experience-section-end{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-top:48px}
.experience-section-end>p{font-size:13px;line-height:2;color:var(--muted)}
.experience-watermelon-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:44px}
.experience-watermelon img{width:100%;aspect-ratio:4/3;object-fit:contain;margin-bottom:28px}
.experience-watermelon h3{font-size:28px;line-height:1.6;letter-spacing:.05em}
.experience-watermelon p{font-size:16px;line-height:2.1;margin-top:22px;color:rgba(255,255,255,.82)}
.experience-availability{border-top:1px solid var(--line-soft);padding-top:30px;margin-top:60px;font-size:13px;line-height:2;color:var(--muted)}
@media(max-width:900px){.experience-fruit-grid{gap:25px}.experience-fruit h3{font-size:25px}.experience-fruit h3.experience-long-name{font-size:19px}.experience-watermelon-grid{gap:36px}.experience-inside-copy{gap:5%}}
@media(max-width:600px){
 .experience-page main{padding-top:104px;padding-bottom:25px}
 .experience-intro{padding-bottom:25px}
 .experience-intro h1{font-size:31px;letter-spacing:.045em}
 .experience-intro-copy{font-size:15px;margin-top:24px}
 .experience-index{gap:18px;margin-top:28px}
 .experience-index a{font-size:19px;padding:6px 0 10px}
 .experience-block{padding-top:24px;padding-bottom:35px;scroll-margin-top:88px}
 .experience-block:before{margin-bottom:34px}
 .experience-block-heading h2{font-size:27px}
 .experience-block-heading>p:last-child:not(.eyebrow){font-size:15px}
 .experience-inside-copy{grid-template-columns:1fr;gap:28px;margin-top:28px}
 .experience-inside-copy h3{font-size:26px}
 .experience-inside-copy p{font-size:15px}
 .experience-fruit-grid,.experience-watermelon-grid{grid-template-columns:1fr;gap:48px;margin-top:28px}
 .experience-fruit-photo{max-width:350px;margin-inline:auto;margin-bottom:20px}
 .experience-fruit h3,.experience-fruit h3.experience-long-name{font-size:26px;min-height:0}
 .experience-fruit>p:last-child{font-size:15px;margin-top:18px}
 .experience-section-end{display:flex;flex-direction:column;align-items:flex-start;gap:20px;margin-top:32px}
 .experience-watermelon img{max-width:430px;margin-inline:auto}
 .experience-watermelon h3{font-size:26px}
 .experience-availability{margin-top:40px}
}

/* Six primary links with the existing type sizes. */
.desktop-nav{gap:42px;margin-right:24px}
@media(max-width:1490px){.desktop-nav{gap:30px;margin-right:20px}}

@font-face{font-family:'JFC Collection';src:url('/assets/cormorant-garamond-light.ttf') format('truetype');font-weight:300;font-style:normal;font-display:swap}
#collection-title,#collection-title .serif-period{font-family:'JFC Collection',Georgia,serif;font-weight:300;font-synthesis:none;letter-spacing:.025em}

/* Three finished works sit in the space between the order introduction texts. */
.order-page .order-heading{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:24px}
.order-heading-art{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:12px;min-width:0;height:200px}
.order-heading-art img{display:block;width:100%;height:100%;object-fit:contain}
@media(max-width:1150px) and (min-width:901px){.order-page .order-heading{gap:16px}.order-heading-art{height:165px;gap:6px}}
@media(max-width:900px){.order-page .order-heading{grid-template-columns:1fr;gap:12px}.order-heading-art{height:140px;max-width:360px;width:100%;justify-self:center}.order-page .order-heading>p{margin-top:0}}
@media(max-width:600px){.order-heading-art{height:110px;max-width:280px}}
.order-page .order-heading>p{font-size:17.496px}
@media(max-width:600px){.order-page .order-heading>p{font-size:12.6px}}

/* Quiet price typography beneath each collection description. */
.collection .work-description{min-height:4.2em}
.collection .work-price{font-family:'JFC Collection',Georgia,serif;font-size:36px;font-weight:300;line-height:1.25;letter-spacing:.035em;margin-top:18px;font-variant-numeric:lining-nums tabular-nums}
.work-price .work-currency{font-size:.65em;margin-right:.2em}
@media(max-width:600px){.collection .work-description{min-height:0}.collection .work-price{font-size:32px;margin-top:18px}}
/* Mobile artist profile: biography first, photographs below. */
@media(max-width:600px){
 .artist-page .artist-content{order:1}
 .artist-page .artist-visual{order:2;transform:none}
 .artist-page .artist-content>.text-link{display:none}
}
/* Make exploring the site the primary mobile header action. */
.menu-label{display:none}
@media(max-width:600px){
 .site-header .header-contact{display:none}
 .site-header .header-actions{gap:0;flex-shrink:0}
 .site-header .menu-toggle{display:grid;grid-template-columns:auto 23px;grid-template-rows:1px 1px;column-gap:12px;row-gap:7px;align-content:center;width:auto;min-width:92px;min-height:48px;padding:8px 0 8px 15px;border-left:1px solid var(--line)}
 .menu-toggle .menu-label{display:block;grid-column:1;grid-row:1 / 3;align-self:center;font-family:var(--latin);font-size:14px;font-weight:400;letter-spacing:.12em;line-height:1}
 .site-header .menu-toggle span{grid-column:2;margin:0;width:23px}
 .site-header .menu-toggle span:last-child{width:23px;margin-left:0}
}
@media(max-width:360px){.site-header .menu-toggle{min-width:78px;padding-left:10px;column-gap:8px}.menu-toggle .menu-label{font-size:12px}}
/* Clear buying information, with the same quiet black-and-white presentation. */
.work-shipping{font-size:12px;letter-spacing:.12em;color:var(--muted);margin-top:7px}
.faq-heading h1{font-family:var(--serif);font-size:36px;line-height:1.6;margin-top:24px}
.faq-intro{font-size:14px;line-height:2.1;margin:24px 0}
.faq-items summary{font-size:16px;line-height:1.9}
.faq-items details>p{font-size:14px;line-height:2.1}
.faq-items details>p a{text-decoration:underline;text-underline-offset:4px}
.faq-contact-link{margin-top:26px}
@media(max-width:900px){
 html:has(body.order-page),body.order-page,body.artist-page{height:auto;min-height:100dvh;overflow:visible}
 body.order-page.dialog-open,body.artist-page.dialog-open{overflow:hidden}
 .artist-page main,.order-page main{height:auto;min-height:100dvh}
 .artist-page main>.artist,.order-page main>.order{height:auto;overflow:visible;padding-top:32px;padding-bottom:64px}
 .artist-page .artist-grid{grid-template-columns:1fr;gap:40px;padding-inline:0;transform:none}
 .artist-page .artist-content{order:1;min-width:0}
 .artist-page .artist-visual{order:2;transform:none;width:100%;max-width:520px;height:auto;margin-top:12px}
 .artist-page .artist-slides{height:auto;aspect-ratio:4/5}
 .artist-page .artist-content>p:not(.artist-en):not(.artist-role):not(.eyebrow){font-size:16px;line-height:2}
 .artist-page .artist-content h2{font-size:34px}
 .artist-page .artist-content h3{font-size:23px}
 .artist-page .artist-content>p.artist-company-message{margin-top:3em}
 .artist-page .artist-content>.text-link{display:none}
 .order-page .order-heading>p{font-size:16px;line-height:2}
 .order-page .order-steps{grid-template-columns:1fr}
 .order-page .order-steps li,.order-page .order-steps li:nth-child(odd){padding:24px 0!important;border-right:0}
 .order-page .order-steps h3{font-size:20px}
 .order-page .order-steps p{font-size:16px;line-height:2}
 .order-page .order-note p>span{font-size:14px;white-space:normal;line-height:2}
 .faq-heading h1{font-size:30px}
 .faq-items summary{font-size:16px}
 .faq-items details>p{font-size:15px}
}

/* Company: bring contact codes into the desktop viewport. */
@media(min-width:901px){
 html:has(body.company-page),body.company-page{height:100dvh;overflow:hidden}
 .company-page main{height:100dvh;min-height:0;padding-top:112px}
 .company-page main>.company{height:100%;padding-top:18px;padding-bottom:20px}
 .company-page .company>.display-en{font-size:clamp(46px,8dvh,76px);margin-bottom:clamp(18px,3dvh,32px)}
 .company-page .company-grid h2{margin-bottom:16px}
 .company-page .company-details{margin-block:0}
 .company-page .company-details>div{padding:clamp(12px,2.3dvh,22px) 0}
 .company-page .company-qr{width:min(100%,29dvh);margin-bottom:8px;padding:4px}
 .company-page .company-socials h2{margin-bottom:8px}
}
@media(min-width:901px) and (max-height:600px){
 .company-page .company>.display-en{font-size:40px;margin-bottom:12px}
 .company-page .company-grid h2{font-size:19px;margin-bottom:10px}
 .company-page .company-details>div{padding:8px 0}
 .company-page .company-details dd{font-size:14px}
}
.company-details>div:last-child{border-bottom:1px solid var(--line)}

/* Pair each carving with its fruit-filled bowl, tucked behind the upper right. */
.collection .work-image{isolation:isolate;aspect-ratio:1/1.08;padding:0}
.collection .work-image .collection-fruit{position:absolute;right:-1%;top:0;width:76%;height:61%;object-fit:contain;z-index:0}
.collection .work-image .collection-carving{position:absolute;left:0;bottom:0;width:76%;height:76%;object-fit:contain;z-index:1}
.collection .work-image .work-number{z-index:3}
.collection .work-image .image-view{z-index:3}

/* Starting prices and fruit-in supplement, aligned with the shipping note. */
.work-price .price-from{font-family:var(--serif);font-size:.5em;vertical-align:.1em;margin-left:.15em}
.collection .collection-foot{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.collection .collection-foot>p{font-size:12px;line-height:1.9;letter-spacing:.05em}
.collection .collection-foot>.fruit-supplement{color:var(--white)}

/* Home cover uses the same two-layer composition as the collection. */
.home-page #hero-picture{display:grid;place-items:center;container-type:size}
.hero-pair{position:relative;width:min(100cqw,92.59cqh);height:min(100cqh,108cqw);isolation:isolate}
.hero-pair img{position:absolute;object-fit:contain}
.hero-pair img.hero-fruit{right:-1%;top:0;width:76%;height:61%;z-index:0}
.hero-pair img:not(.hero-fruit){left:0;bottom:0;width:76%;height:76%;z-index:1}
#hero-picture .hero-pair.hero-previous{inset:auto;width:min(100cqw,92.59cqh);height:min(100cqh,108cqw)}
.hero-pair.hero-incoming{animation:heroCrossfade 1000ms ease-in-out}
@media(prefers-reduced-motion:reduce){.hero-pair.hero-incoming{animation:none}}

.hero-pair.hero-composite img.hero-fruit{display:none}
.hero-pair.hero-composite img:not(.hero-fruit){inset:0;width:100%;height:100%;object-fit:contain}

/* Discreet company footer and readable sales terms. */
.company-legal{margin-top:20px;font-size:13px;letter-spacing:.06em;text-align:left}.company-legal a,.legal a{text-decoration:underline;text-underline-offset:5px}.company-legal a:hover,.legal a:hover{color:#fff}.company-legal a:focus-visible,.legal a:focus-visible{outline:1px solid currentColor;outline-offset:6px}.legal{max-width:1120px;margin-inline:auto;padding-bottom:70px}.legal h1{font-family:var(--serif);font-weight:400;font-size:clamp(24px,3vw,38px);letter-spacing:.08em;margin:18px 0 45px}.legal-details{margin:0}.legal-details>div{display:grid;grid-template-columns:190px 1fr;gap:32px;padding:24px 0;border-top:1px solid var(--line)}.legal-details>div:last-child{border-bottom:1px solid var(--line)}.legal-details dt{font-size:14px;color:var(--muted)}.legal-details dd{margin:0;font-size:15px;line-height:2;overflow-wrap:anywhere}.legal-back{display:inline-block;margin-top:32px;font-size:14px}@media(max-width:600px){.legal-details>div{grid-template-columns:1fr;gap:8px;padding:20px 0}.legal h1{letter-spacing:.025em;margin-bottom:28px}.legal-details dd{font-size:14px}.company-legal{margin-top:20px;text-align:left}}

/* Clearer navigation, editorial imagery, and one place to place an order. */
.philosophy-flower{margin:34px 0 0;max-width:360px;width:100%}.philosophy-flower img{display:block;width:100%;height:auto}.philosophy-page .concept-heading{top:0}.experience-inside-copy>div>p:first-child{font-size:23px;line-height:1.9;margin-bottom:24px}.order-unified,.order-unified main,html:has(body.order-unified){height:auto;min-height:100dvh;overflow:visible}.order-unified.dialog-open{overflow:hidden}.order-unified main>.order{height:auto;overflow:visible;padding-top:44px;padding-bottom:60px}.order-unified .order-fit{transform:none!important}.order-unified .order-heading{margin-bottom:42px}.order-contact{border-block:1px solid var(--line);padding:32px 0;display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;scroll-margin-top:125px}.order-contact .eyebrow{font-size:11px;color:var(--muted);letter-spacing:.18em}.order-contact h2{font-size:30px;font-weight:400;margin:12px 0 18px}.order-contact p{font-size:15px;line-height:2}.order-contact-actions{display:grid;gap:12px}.order-contact-actions .contact-cta{margin:0;width:100%;min-width:0;max-width:none;justify-content:space-between}.order-line-link{display:flex;justify-content:space-between;border:1px solid var(--line);padding:17px 23px;min-height:52px;font-size:15px}.order-email-link{font-size:13px;text-decoration:underline;text-underline-offset:5px;padding:5px 0}.order-contact-actions>p{font-size:12px;color:var(--muted);line-height:1.8}.order-flow-title{font-size:24px;font-weight:400;margin:44px 0 25px}.order-unified .order-steps p{font-size:14px;line-height:2}.order-unified .order-note p>span{white-space:normal;font-size:13px;line-height:2}.order-support-links{display:flex;flex-wrap:wrap;gap:24px;margin-top:28px;font-size:13px}.order-support-links a{text-decoration:underline;text-underline-offset:5px}@media(max-width:600px){.philosophy-flower{max-width:290px;margin:28px auto 0}.order-unified main>.order{padding-top:30px}.order-contact{grid-template-columns:1fr;gap:25px;padding-block:28px;scroll-margin-top:95px}.order-contact h2{font-size:25px}.order-unified .order-steps p{font-size:15px}.order-flow-title{font-size:23px}.experience-inside-copy>div>p:first-child{font-size:21px}.order-contact-actions .contact-cta{font-size:15px}.order-unified .order-heading h2{font-size:28px}}

.order-contact-actions .contact-cta{font-size:16px}

/* Match the flower-and-fruit composition used in Collection. */
.philosophy-flower-pair{position:relative;isolation:isolate;aspect-ratio:1/1.08;width:100%}.philosophy-flower-pair .philosophy-fruit{position:absolute;right:0;top:0;width:76%;height:61%;object-fit:contain;z-index:0}.philosophy-flower-pair .philosophy-carving{position:absolute;left:0;bottom:0;width:76%;height:76%;object-fit:contain;z-index:1}

.order-unified .order-flow-title{font-size:18px;line-height:1.9}.order-contact-actions button.order-line-link{width:100%;text-align:left;align-items:center;gap:16px}@media(max-width:600px){.order-unified .order-flow-title{font-size:16px}}

/* Keep the order introduction and both consultation actions in one view. */
html:has(body.order-summary),body.order-summary{height:100dvh;min-height:0;overflow:hidden}.order-summary main{height:100dvh;min-height:0;padding-top:var(--order-header-height,112px);overflow:hidden}.order-summary main>.order{height:100%;padding-top:clamp(14px,3dvh,32px);padding-bottom:16px;overflow:hidden}.order-summary .order-fit{width:100%;transform:scale(var(--order-summary-scale,1))!important;transform-origin:top center}.order-summary .order-heading{margin-bottom:clamp(20px,4dvh,40px)}.order-summary .order-contact{margin:0;padding-block:clamp(16px,3dvh,30px)}
@media(max-width:900px){.order-summary .order-heading{gap:10px;grid-template-columns:1fr;margin-bottom:16px;text-align:center}.order-summary .order-heading h2{font-size:26px;line-height:1.5}.order-summary .order-heading-art{height:clamp(70px,12dvh,120px);max-width:330px}.order-summary .order-heading>p{font-size:13px;line-height:1.7;margin:0}.order-summary .order-contact{grid-template-columns:1fr;gap:14px;padding-block:16px}.order-summary .order-contact h2{font-size:22px;margin:4px 0 7px}.order-summary .order-contact>div>p:not(.eyebrow){font-size:13px;line-height:1.7}.order-summary .order-contact-actions{gap:9px}.order-summary .order-contact-actions .contact-cta,.order-summary .order-line-link{min-height:46px;padding:11px 17px;font-size:14px}.order-summary .order-contact-actions>p{font-size:11px;line-height:1.7}}
