/* Suited Tokyo v2 mockup additions — same palette and type */
html[lang=ja] h1,html[lang=ja] h2,html[lang=ja] h3,html[lang=ja] nav,html[lang=ja] .strip div,html[lang=ja] .claim p,html[lang=ja] .fs p,html[lang=ja] .hero p,html[lang=ja] .grid-h p,html[lang=ja] .shopband p{word-break:auto-phrase}
.nw{display:inline-block}
/* nav: one line, scrollable on phones */
@media(max-width:700px){
 nav{padding:10px 16px;flex-wrap:nowrap;gap:10px}
 nav .logo{font-size:17px}nav .logo .mark{width:24px;height:24px}
 .navlinks{letter-spacing:.03em;order:3;flex-basis:100%;white-space:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;font-size:12px;padding:6px 0 2px;scrollbar-width:none}
 nav{flex-wrap:wrap}.navr .hanko{width:34px;height:34px;font-size:12px;border-width:2px}
 .hero .copy{padding:26px 18px 20px}.hero h1{font-size:44px}html[lang=ja] .hero h1{font-size:34px}.hero p{font-size:16px}
 .strip{grid-template-columns:1fr 1fr}.strip div{padding:10px 14px;font-size:11px}.strip div:last-child{grid-column:1/-1}
 .strip div:nth-child(1){border-right:3px solid var(--ink)}
 main{padding:18px 16px}
}
.owner-link{display:inline-block;margin-top:16px;font-size:13px;font-weight:800;letter-spacing:.04em;color:var(--ink);text-decoration:none;border-bottom:2px solid var(--red)}
.owner-link:hover{color:var(--red)}
/* grid section headings */
.grid-h{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;border-top:3px solid var(--ink);padding-top:12px;margin-top:6px}
.grid-h h2{font-size:20px}.grid-h p{margin:0;font-size:13px;color:var(--grey);max-width:70ch}.grid-h a{font-weight:800;font-size:13px;color:var(--ink)}
.grid-h:first-child{border-top:0;padding-top:0;margin-top:0}
/* compact cards: no empty image box */
.card.compact{padding-top:12px}.card.compact .card-pref{position:static;align-self:flex-start;margin:0 14px 8px}
/* mobile filter toggle */
.ftoggle{display:none}
@media(max-width:700px){
 .controls{grid-template-columns:1fr auto}.controls select{display:none}.controls.open select{display:block}.controls.open{grid-template-columns:1fr 1fr}.controls.open #q{grid-column:1/-1}
 .ftoggle{display:block;background:var(--ink);color:#fff;padding:10px 14px;font:800 12px Inter,sans-serif;letter-spacing:.08em}
 .controls.open .ftoggle{grid-column:1/-1;order:99}
 .grid{grid-template-columns:1fr;gap:14px}
}
/* homepage shop band */
.shopband{border:3px solid var(--ink);background:#fff;padding:18px 20px}
.shopband ul{margin:10px 0 14px;padding-left:18px;line-height:1.6;font-size:14px}
.cbtn{display:inline-block;background:var(--red);color:#fff!important;padding:12px 18px;font:800 13px Inter,sans-serif;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}
.cbtn.ghost{background:none;color:var(--ink)!important;border:2px solid var(--ink);padding:10px 16px}
.cbtn:hover{filter:brightness(1.08)}
/* shop page claim box */
.shop .claim{border:3px solid var(--ink);border-left:12px solid var(--red);background:#fff;padding:18px 20px;margin:28px 0 8px}
.shop .claim h2{border:0;padding:0;margin:10px 0 8px;font-size:22px}
.claim p{margin:0 0 10px;font-size:15px;line-height:1.6;max-width:70ch}
.claim .todo{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 14px}.claim .todo span{background:var(--paper);border:1px dashed var(--grey);font-size:12px;font-weight:700;padding:3px 8px}
.claim .acts{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.facts dd.unk{color:var(--grey)}
/* for-shops & about */
main.fs{max-width:1040px;margin:auto;padding:28px 28px 56px}
.fs h1{font-size:clamp(34px,5vw,58px);line-height:1;margin:12px 0 14px}html[lang=ja] .fs h1{line-height:1.25}
.fs .dek{font-size:18px;font-weight:600;line-height:1.6;max-width:62ch;margin:0}
.fs h2{font-size:24px;margin:44px 0 14px;padding-top:14px;border-top:3px solid var(--ink)}
.fs p,.fs li{font-size:16px;line-height:1.7}
.terms{display:grid;grid-template-columns:repeat(4,1fr);border:3px solid var(--ink);margin:26px 0 0;background:#fff}
.terms div{padding:14px 16px;border-right:3px solid var(--ink)}.terms div:last-child{border-right:0}
.terms b{display:block;font-family:'Archivo Black',Inter,sans-serif;font-size:24px;line-height:1.1}.terms span{font-size:13px;font-weight:600;color:var(--grey)}
html[lang=ja] .terms b{font-family:Inter,"Hiragino Sans","Noto Sans JP",sans-serif;font-weight:800}
.gets{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;list-style:none;padding:0;margin:0}
.gets li{background:#fff;border:2px solid var(--ink);padding:14px 16px}.gets li b{display:block;font-size:16px;margin-bottom:4px}
.gets li{font-size:14px;line-height:1.6}
.examples{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}
.examples .cap{font-weight:800;font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px}
.steps{counter-reset:s;list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0}
.steps li{counter-increment:s;background:#fff;border:2px solid var(--ink);padding:14px 16px;font-size:14px;line-height:1.6}
.steps li::before{content:counter(s);display:inline-grid;place-items:center;width:30px;height:30px;background:var(--red);color:#fff;font-family:'Archivo Black';margin-bottom:8px}
.steps li b{display:block;font-size:16px}
.cta{border:3px solid var(--ink);border-left:12px solid var(--red);background:#fff;padding:20px 22px;margin-top:22px}
.cta h3{font-size:20px;margin-bottom:8px}.cta pre{white-space:pre-wrap;font:13px/1.7 Inter,"Hiragino Sans","Noto Sans JP",sans-serif;background:var(--paper);padding:12px 14px;margin:10px 0 14px;border:1px solid #ddd}
.faq details{border-bottom:2px solid var(--ink);padding:12px 0}.faq summary{font-weight:800;font-size:16px;cursor:pointer}.faq details p{margin:8px 0 0}
.about dl{display:grid;grid-template-columns:minmax(140px,220px) 1fr;border:2px solid var(--ink);background:#fff;margin:0}
.about dt,.about dd{margin:0;padding:12px 14px;border-bottom:1px solid #ddd;font-size:15px;line-height:1.6}.about dt{font-weight:800;background:#faf9f6}
@media(max-width:800px){.terms{grid-template-columns:1fr 1fr}.terms div:nth-child(2){border-right:0}.terms div:nth-child(-n+2){border-bottom:3px solid var(--ink)}
 .gets,.examples,.steps{grid-template-columns:1fr}main.fs{padding:20px 16px 44px}.about dl{grid-template-columns:1fr}.about dt{border-bottom:0;padding-bottom:2px}}
section.band{grid-template-columns:1fr}
