/* A boutique editorial: warm paper, lace-like rules, brass tags. */
:root{--rose:#e9cabe;--brass:#a5884f}
.couture-hero .hero-canvas{grid-template-columns:1.28fr .72fr .62fr}
.couture-hero .hero-panel-one img{object-position:50% 35%}
.couture-hero .hero-panel-one{animation-duration:1.35s}
.couture-hero .hero-panel-two{animation-delay:.18s}
.couture-hero .hero-panel-three{animation-delay:.32s}
.couture-hero .hero-panel-four{animation-delay:.46s}
.couture-hero h1.hero-enter{animation:none}
.couture-hero h1 .hero-line{overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.couture-hero .hero-line>span{display:block;animation:line-unveil 1.1s cubic-bezier(.16,.7,.14,1) both;animation-delay:.48s}
.couture-hero .hero-line:nth-child(2)>span{animation-delay:.66s}
.couture-hero .hero-line:nth-child(3)>span{animation-delay:.84s}
.couture-hero .hero-line>span:after{display:none}
.couture-hero .hero-copy>.eyebrow{font-family:var(--serif);font-size:12px;letter-spacing:.17em;animation-delay:.24s;margin-bottom:24px}
.couture-hero .hero-description{animation-delay:1.02s;font-size:14px}
.couture-hero .hero-copy>.button{animation-delay:1.17s}
.couture-hero .hero-style-link{animation-delay:1.3s}
.couture-hero .hero-signature{animation-delay:.9s}
.couture-hero .hero-signature>span{font-size:10px;letter-spacing:.15em}
.couture-hero .hero-counter>span:last-child{font-size:9px;letter-spacing:.09em}
.hero-style-link{font-size:12px}
.button{border-radius:2px 2px 14px 2px;letter-spacing:.045em}
.button::before{content:'';position:absolute;top:5px;left:5px;right:5px;bottom:5px;border:1px solid currentColor;opacity:.14;pointer-events:none;border-radius:0 0 9px 0}
.button-dark:not(.couture-hero .button){box-shadow:inset 0 1px 0 #ffffff25,0 4px 0 #211b16,0 8px 18px #362c2315}
.shopping-path{display:grid;grid-template-columns:.8fr repeat(3,1fr);gap:24px;padding-block:30px;border-bottom:1px solid var(--line);align-items:center}
.shopping-path>p{font:500 17px/1.75 var(--serif);letter-spacing:.1em}
.shopping-path>a{position:relative;display:grid;grid-template-columns:50px 1fr 12px;align-items:center;gap:12px;min-height:72px;padding:6px 0;border-bottom:1px solid #b09b793b}
.shopping-path img{width:50px;height:62px;object-fit:cover;border:3px solid #fffcf6;box-shadow:0 3px 6px #37261c12;transition:transform .5s}
.shopping-path>a:hover img{transform:rotate(-5deg)}
.shopping-path strong{font-size:13px;font-weight:500;white-space:nowrap;display:block}
.shopping-path small{font-size:10px;line-height:1.7;color:var(--muted);display:block;margin-top:5px}
.shopping-path i{font-style:normal;font-size:17px;color:#827049}
.about{padding-top:75px;padding-bottom:78px;align-items:center}
.brand-label{display:flex;align-items:center;gap:20px;margin-bottom:20px}
.brand-label>img{width:62px;height:80px;object-fit:contain}
.brand-label .eyebrow{font-family:var(--serif);font-size:12px;line-height:2;letter-spacing:.12em}
.about-copy h2{line-height:1.7}.about-copy>p:not(.eyebrow){font-size:14px;line-height:2.1;margin-top:24px}
.about-copy .story-small{font-size:12px!important;line-height:1.8!important;margin-top:15px!important}
.story-caption{display:flex;flex-wrap:wrap;gap:7px 18px;margin-top:25px;border-top:1px solid var(--line);padding-top:17px}
.story-caption span{font-family:var(--serif);font-size:14px}
.image-note{font:500 13px/1.8 var(--serif);letter-spacing:.14em;transform:rotate(-7deg)}
.collection{background-image:radial-gradient(ellipse at 90% 5%,#f5e9df,transparent 45%),repeating-linear-gradient(90deg,#b2957310 0 1px,transparent 1px 90px);padding-block:82px}
.section-heading>.reveal{min-width:0}
.section-heading>p,.gallery-intro{font-size:13px;line-height:2}
.category-caption h3{font-family:var(--serif);font-size:28px;letter-spacing:.08em}
.category-caption h3 small{font-size:12px}
.category-caption p{font-size:13px;line-height:1.9}
.category-index{clip-path:polygon(0 0,92% 0,100% 50%,92% 100%,0 100%);padding-right:17px;font-size:9px}
.category-image{border:6px solid #fffcf4;box-shadow:0 10px 20px #3526170b}
.gallery{padding-block:80px}
.gallery-item p{font-size:13px}.gallery-item p span{font-size:10px}
.gallery-item>div{background:#e6ddd0;border-radius:1px}
.gallery-item>div:after{content:'';position:absolute;inset:8px;border:1px solid #fff7;pointer-events:none;opacity:0;transition:opacity .3s}
.gallery-item:hover>div:after{opacity:1}
.gallery-footnote{font-size:12px;line-height:1.8}
.voice{background:radial-gradient(ellipse at 0 50%,#efdbcb66,transparent 65%),#ece7de;position:relative;border-block:1px solid #d0c2aa}
.voice:before{content:'';position:absolute;inset:6px 0;border-block:1px dashed #a68e6235;pointer-events:none}
.voice-heading>p:last-child{font-size:13px}.voice-list blockquote p{font-size:15px}.voice-list blockquote footer,.voice-note{font-size:11px}
.popup-copy>.eyebrow{font-size:11px}.popup-copy>p:not(.eyebrow){font-size:14px}.popup-photo-caption{font-size:11px}.history-note{font-size:12px}#venue-list{font-size:12px}
.owner-copy>p:not(.eyebrow){font-size:14px;line-height:2.1}.owner-portrait>span{font-size:10px}.qualifications summary{font-size:13px}.qualifications ul{font-size:12px}
.contact-intro>p:last-child{font-size:14px}.contact-row small{font-size:12px}.contact-row .eyebrow{font-size:10px}.contact-row strong{font-size:21px}
.faq summary{font-size:14px;line-height:1.8}.faq details p{font-size:13px;line-height:2}
.lightbox{width:920px;padding:30px 34px 24px;border:6px solid #e2d7c4;box-shadow:0 20px 80px #0f0b084d}
.lightbox-img{height:min(55dvh,620px)}
.lightbox-bottom{display:block;padding:20px 15px 0}
#lightbox-title{font-family:var(--serif);font-size:21px;line-height:1.6}
.lightbox-note{font-size:13px;line-height:1.85;margin-top:10px;color:var(--muted)}
.photo-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:16px}
.photo-actions .photo-copy{background:linear-gradient(130deg,#51432f,#786546);color:#fffdf5;border:1px solid #a78a5b;box-shadow:0 3px 0 #372d22,inset 0 1px 0 #dfcea955;padding:13px 17px;font-size:12px;border-radius:2px 2px 12px 2px;min-height:44px}
.photo-actions>a{display:inline-flex;align-items:center;min-height:44px;font-size:12px;white-space:normal}
.photo-status{font-size:12px;color:#5e684e;margin-top:10px;line-height:1.8}
.photo-copy-fallback{margin-top:10px;width:100%;min-height:115px;border:1px solid #b7a588;background:#fffdf8;color:var(--ink);padding:12px;font:13px/1.7 var(--sans)}
.footer-top p{font-size:12px}.footer-links{font-size:11px}.footer-bottom{font-size:10px}
.mobile-actions a:first-child{background:linear-gradient(120deg,#f6f3ed,#e9e2d2)}
.mobile-actions a:last-child{background:linear-gradient(115deg,#2e2822,#514635);box-shadow:inset 0 2px 0 #a48e6455}
@keyframes line-unveil{from{opacity:0;transform:translateY(110%) rotate(2deg)}to{opacity:1;transform:translateY(0) rotate(0)}}
@media(max-width:1100px){.shopping-path{gap:14px;grid-template-columns:.65fr repeat(3,1fr)}.shopping-path>a{grid-template-columns:40px 1fr;gap:8px}.shopping-path img{width:40px;height:54px}.shopping-path i{display:none}.shopping-path strong{font-size:12px}.shopping-path small{font-size:10px}.shopping-path>p{font-size:14px}.about-copy>p:not(.eyebrow){font-size:13px}}
@media(max-width:800px){.couture-hero .hero-copy>.eyebrow{font-size:11px}.shopping-path{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding-block:23px}.shopping-path>p{grid-column:1/-1;font-size:16px}.shopping-path>p br{display:none}.shopping-path>a{display:block;padding-bottom:12px}.shopping-path img{width:100%;height:100px;margin-bottom:11px;border-width:4px}.shopping-path strong{font-size:13px;white-space:normal}.shopping-path small{font-size:11px}.about{padding-block:58px}.brand-label>img{width:49px;height:63px}.brand-label{gap:14px;margin-bottom:16px}.brand-label .eyebrow{font-size:11px}.category-caption h3{font-size:24px}.category-caption p{font-size:12px}.voice-list blockquote p{font-size:14px}.lightbox{padding:40px 20px 20px}.lightbox-bottom{padding-inline:0}.footer-bottom>span:nth-child(2){display:none}}
@media(max-width:560px){.couture-hero .hero-canvas{grid-template-columns:1.12fr .88fr;grid-template-rows:67% 33%}.couture-hero .hero-copy{top:198px}.couture-hero .hero-copy>.eyebrow{font-size:10px;letter-spacing:.08em;line-height:1.7;margin-bottom:17px}.couture-hero .hero-description{font-size:12px;margin-block:18px 23px;line-height:1.95}.couture-hero .hero-copy>.button{font-size:12px;min-height:54px;padding-inline:20px;gap:24px}.couture-hero .hero-style-link{font-size:11px;margin-top:18px}.couture-hero .hero-counter>span:last-child{font-size:8px}.couture-hero .hero-signature{font-size:36px;bottom:21px}.couture-hero .hero-signature>span{font-size:8px;letter-spacing:.1em}.couture-hero .scroll-cue{font-size:8px;bottom:21px}.shopping-path{gap:11px;width:88%;padding-top:24px;padding-bottom:24px}.shopping-path img{height:96px;object-position:center 36%}.shopping-path>a:nth-child(3) img{object-position:center 45%}.shopping-path strong{font-size:12px;letter-spacing:.01em}.shopping-path small{font-size:11px;line-height:1.6;letter-spacing:0}.about{padding-top:46px;padding-bottom:49px;gap:28px}.about-copy h2{font-size:29px}.about-copy>p:not(.eyebrow){font-size:13px;line-height:2.05;margin-top:20px}.about-copy .text-link{font-size:12px;margin-top:18px}.brand-label .eyebrow br{display:none}.brand-label .eyebrow{font-size:12px;letter-spacing:.06em}.brand-label>img{height:61px;width:47px}.story-caption{gap:5px 14px;margin-top:20px}.story-caption span{font-size:13px}.image-note{font-size:12px}.section{padding-block:50px}.section-heading .eyebrow{font-size:10px;letter-spacing:.1em}.section-heading>p{font-size:12px}.collection{padding-block:49px}.category-caption h3{font-size:26px;line-height:1.4;letter-spacing:.03em}.category-caption h3 small{font-size:12px}.category-caption h3:after{content:'写真を見比べる ↗';font-size:11px;letter-spacing:0;padding-top:9px}.category-caption p{font-size:12px;margin-top:10px;line-height:1.8}.category-image{border-width:4px}.category-index{font-size:7px;padding:3px 10px 3px 5px;left:6px;top:6px}.gallery{padding-block:50px}.gallery-intro{font-size:12px;max-width:none;line-height:1.9}.gallery-item p{font-size:12px;line-height:1.7}.gallery-item p span{font-size:9px;margin-bottom:5px}.gallery-footnote{font-size:11px}.filter{font-size:12px;min-height:44px}.voice-heading>p:last-child{font-size:12px}.voice-list blockquote p{font-size:15px}.voice-list blockquote footer{font-size:10px}.voice-note{font-size:11px}.voice-number{font-size:32px}.popup-copy>.eyebrow{font-size:10px;letter-spacing:.08em}.popup-copy .english-heading{font-size:64px}.popup-japanese{font-size:22px}.popup-copy>p:not(.eyebrow){font-size:13px}.popup-photo-caption{font-size:10px;flex-direction:column;gap:4px}.popup-history .eyebrow{font-size:10px}.history-note{font-size:11px}#venue-list{font-size:11px}.owner-copy h2{font-size:28px}.owner-copy>p:not(.eyebrow){font-size:13px}.owner-portrait>span{font-size:10px}.qualifications summary{font-size:13px}.qualifications li{font-size:12px}.shop-invitation-copy .eyebrow{font-size:11px}.contact-intro h2{font-size:28px}.contact-intro>p:last-child{font-size:13px}.contact-row strong{font-size:19px}.contact-row small{font-size:12px}.contact-row .eyebrow{font-size:10px}.faq{padding-bottom:45px;gap:22px}.faq h2{font-size:25px;line-height:1.7}.faq summary{font-size:13px}.faq details p{font-size:12px;line-height:1.95}.lightbox{padding:41px 10px 18px;border-width:3px;max-height:94dvh}.lightbox-img{height:auto;max-height:46dvh}.lightbox-bottom{padding-inline:5px;padding-top:14px;text-align:left}#lightbox-title{font-size:19px}.lightbox-note{font-size:12px}.photo-actions{gap:10px 18px;margin-top:12px}.photo-actions .photo-copy{width:100%;font-size:13px;min-height:46px}.photo-actions>a{font-size:12px;margin-top:0}.photo-status{font-size:12px}.footer-top p{font-size:11px}.footer-links{font-size:9px}.footer-bottom{font-size:9px}.mobile-actions a{font-size:12px;padding-inline:18px}}
@media(max-width:375px){.couture-hero .hero-copy{top:181px}.couture-hero .hero-copy>.eyebrow{font-size:9px}.couture-hero .hero-description{font-size:11px}.couture-hero .hero-style-link{font-size:10px}.couture-hero .hero-signature{font-size:32px}.couture-hero .hero-copy>.button{font-size:11px;gap:17px}.shopping-path strong{font-size:11px}.shopping-path small{font-size:10px}.shopping-path img{height:86px}.category-caption h3{font-size:23px}.about-copy h2{font-size:27px}.contact-intro h2{font-size:26px}}
@media(max-width:340px){.couture-hero h1{font-size:31px}.couture-hero .hero-description{font-size:10px}.couture-hero .hero-copy>.eyebrow{font-size:8px}.couture-hero .hero-signature{font-size:29px}.couture-hero .scroll-cue{font-size:7px}.shopping-path{gap:8px}.shopping-path small{font-size:10px}.shopping-path img{height:75px}}
@media(prefers-reduced-motion:reduce){.couture-hero .hero-line>span{animation:none;transform:none;opacity:1}.shopping-path img{transition:none}}

/* Keep actions above the signature across short and narrow viewports. */
.couture-hero{height:clamp(740px,calc(100svh - 120px),900px);min-height:740px}
.couture-hero .hero-copy{top:13%;width:86%;max-width:1100px}
.couture-hero h1{font-size:clamp(43px,4.3vw,64px);line-height:1.44;letter-spacing:.06em}
.hero-actions{display:flex;align-items:center;gap:28px}
.hero-actions .hero-style-link{margin:0;padding-bottom:5px;display:inline-flex;width:auto}
.couture-hero .hero-actions>.button{margin:0;animation-delay:1.17s}
.couture-hero .hero-actions>.hero-style-link{animation-delay:1.3s}
@media(max-width:1100px){.couture-hero h1{font-size:50px;line-height:1.46}.couture-hero .hero-copy{top:12%}}
@media(max-width:800px){.couture-hero{height:740px;max-height:none}.couture-hero .hero-copy{top:11%;left:6%;width:88%}.hero-actions{flex-direction:column;align-items:flex-start;gap:18px}}
@media(max-width:560px){.couture-hero{height:690px;min-height:690px}.couture-hero .hero-copy{top:156px}.couture-hero h1{font-size:38px;line-height:1.45}.hero-actions{gap:15px}.couture-hero .hero-actions>.button{font-size:12px;min-height:54px;padding:13px 20px;gap:24px}.couture-hero .hero-actions>.hero-style-link{font-size:11px;padding-bottom:4px}.couture-hero .hero-description{max-width:none}.sb-tabs .sb-step-done{position:absolute;right:5px;top:3px;font-size:11px}.sb-tabs button>span:nth-child(2){white-space:nowrap}.sb-tabs button{padding-inline:8px;gap:6px}}
@media(max-width:375px){.couture-hero{height:665px;min-height:665px}.couture-hero .hero-copy{top:151px}.couture-hero h1{font-size:34px}.couture-hero .hero-actions>.button{font-size:11px;gap:17px}.couture-hero .hero-actions>.hero-style-link{font-size:10px}}
@media(max-width:340px){.couture-hero h1{font-size:31px}.couture-hero .hero-copy{top:151px}}
