@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Serif+JP:wght@400;500;600;700&display=swap');
:root{--ink:#211e1a;--paper:#f3eee6;--copper:#b86942;--line:#c9b8a5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}a{color:inherit}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;z-index:10;background:#fff;padding:8px}.sample-notice{background:#211e1a;color:#fff;font-size:11px;line-height:1.7;padding:9px max(4vw,18px)}.site-header{min-height:83px;padding:17px max(4vw,18px);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{text-decoration:none;display:flex;flex-direction:column;gap:1px}.brand span{font-family:'Noto Serif JP',serif;font-weight:700;font-size:21px;letter-spacing:.08em}.brand small{font-size:10px;letter-spacing:.18em;color:#8e6e58}.site-header nav{display:flex;gap:32px}.site-header nav a{font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}.site-header nav a:hover,.about a:hover{text-decoration:underline}.hero{position:relative}.hero-image{height:min(58vw,650px);min-height:460px;position:relative;background:#4b3427;overflow:hidden}.hero-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 54%}.hero-tag{position:absolute;right:max(4vw,18px);top:24px;color:#fff;background:#211e1ad9;padding:11px 15px;font-size:10px;letter-spacing:.19em}.hero-copy{background:#e9ddd0;margin:-96px 0 0 max(4vw,18px);position:relative;z-index:1;padding:34px clamp(24px,5vw,68px) 46px;width:min(810px,calc(100% - 8vw));box-shadow:0 18px 45px #211e1a14}.category{display:inline-block;margin:0 0 16px;padding-bottom:8px;border-bottom:2px solid var(--copper);font-size:14px;font-weight:700;letter-spacing:.04em}.hero-line{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.hero h1,.details h2,.about h2{font-family:'Noto Serif JP',serif;font-weight:600;line-height:1.34;letter-spacing:-.035em}.hero h1{font-size:clamp(38px,5.4vw,78px);margin:0}.hero h1 em{color:var(--copper);font-style:normal}.number{font-size:20px;letter-spacing:.15em;color:#907b68}.lead{font-family:'Noto Serif JP',serif;line-height:2;font-size:15px;max-width:43em;margin:27px 0}.hero-link{display:inline-flex;gap:48px;align-items:center;text-decoration:none;border-bottom:1px solid var(--ink);padding:10px 0;font-size:13px;font-weight:700}.details{padding:125px max(4vw,18px) 130px}.details-head{max-width:850px;margin:0 auto 47px;text-align:center}.details-head>span,.about>span{font-size:11px;letter-spacing:.2em;color:var(--copper);font-weight:700}.details h2{font-size:clamp(34px,4vw,59px);margin:14px 0 16px}.details-head p{font-size:14px;line-height:1.9}.detail-controls{display:grid;grid-template-columns:1fr 1fr;max-width:940px;margin:0 auto 20px;gap:10px}.detail-controls button{border:1px solid var(--line);background:transparent;color:var(--ink);font:inherit;text-align:left;display:flex;align-items:center;gap:20px;padding:22px 24px;cursor:pointer;transition:background .2s,color .2s}.detail-controls button strong{font-family:'Noto Serif JP',serif;font-size:19px;font-weight:600}.detail-controls button>span:last-child{margin-left:auto}.detail-controls button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.control-no{font-size:11px;letter-spacing:.1em;color:var(--copper)}.detail-controls button:focus-visible{outline:3px solid var(--copper);outline-offset:2px}.detail-stage{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(270px,.6fr);max-width:1080px;margin:0 auto;background:#fff}.detail-image{height:500px;overflow:hidden;background:#422f25}.detail-image img{width:100%;height:100%;object-fit:cover;transition:object-position .35s}.detail-stage[data-item=shoe] .detail-image img{object-position:14% 57%}.detail-stage[data-item=bag] .detail-image img{object-position:88% 48%}.detail-caption{display:flex;flex-direction:column;justify-content:center;padding:clamp(24px,4vw,55px)}.detail-caption>span{font-size:11px;letter-spacing:.2em;color:var(--copper);font-weight:700}.detail-caption h3{font-family:'Noto Serif JP',serif;font-size:clamp(26px,3vw,42px);margin:25px 0 6px}.detail-caption p{font-size:15px;line-height:2}.detail-caption small{margin-top:30px;border-top:1px solid var(--line);padding-top:22px;line-height:1.8}.about{background:#2a2925;color:#f7f0e8;padding:100px max(4vw,18px);text-align:center}.about h2{font-size:clamp(32px,4.3vw,58px);margin:18px 0}.about p{max-width:46em;margin:0 auto 28px;line-height:2;font-size:14px}.about a{color:#fff;text-decoration:none;border-bottom:1px solid #fff;padding-bottom:8px;font-size:13px}footer{padding:25px max(4vw,18px);display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.1em}footer a{text-decoration:none}@media(max-width:800px){.site-header{align-items:flex-start;flex-direction:column}.site-header nav{gap:20px;flex-wrap:wrap}.hero-image{min-height:0;height:auto;aspect-ratio:1.55}.hero-image img{object-position:center}.hero-tag{right:14px;top:14px;font-size:8px}.hero-copy{margin:0;width:100%;padding:28px 22px 37px;box-shadow:none}.details{padding:74px 18px 85px}.detail-stage{grid-template-columns:1fr}.detail-image{height:auto;aspect-ratio:1.45}.detail-caption{padding:27px}.detail-controls button{padding:15px;gap:9px}.detail-controls button strong{font-size:15px}.detail-controls button>span:last-child{display:none}}@media(max-width:450px){.sample-notice{font-size:10px}.site-header nav{gap:12px}.site-header nav a{font-size:11px}.brand span{font-size:19px}.hero h1{font-size:clamp(31px,9vw,41px)}.number{font-size:15px}.lead{font-size:14px}.hero-tag{display:none}.detail-controls{grid-template-columns:1fr}.detail-controls button{padding:16px 18px}.detail-image{aspect-ratio:1.25}.about{padding:75px 20px}footer{flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* The trade name sits inside the workshop photograph, like a maker's sign. */
.trade-sign{position:absolute;right:max(4vw,18px);bottom:26px;width:min(490px,53vw);padding:20px 28px 23px;background:#211e1aee;color:#f9efe2;text-align:right;border-top:4px solid var(--copper)}
.trade-sign span{display:block;font-size:11px;letter-spacing:.14em;color:#deb89b;margin-bottom:5px}
.hero .trade-sign h1{margin:0;font-family:'Noto Serif JP',serif;font-size:clamp(48px,5.1vw,78px);font-weight:700;line-height:1.14;letter-spacing:.025em}
.hero .statement{font-family:'Noto Serif JP',serif;font-weight:600;font-size:clamp(36px,4.4vw,65px);line-height:1.35;letter-spacing:-.035em;margin:0}
.hero .statement em{color:var(--copper);font-style:normal}
@media(max-width:800px){.trade-sign{right:18px;bottom:16px;width:min(420px,64vw);padding:14px 19px 16px}.hero .trade-sign h1{font-size:clamp(38px,6.4vw,58px)}.hero .statement{font-size:clamp(32px,5.2vw,47px)}}
@media(max-width:450px){.trade-sign{right:12px;bottom:11px;width:61vw;min-width:207px;padding:10px 13px 12px;border-top-width:3px}.trade-sign span{font-size:8px;letter-spacing:.05em;white-space:nowrap}.hero .trade-sign h1{font-size:clamp(29px,8.2vw,37px)}.hero .statement{font-size:clamp(27px,8vw,35px)}}
