/*
 * MD & commerce v2 — /work/md-commerce/ only (loaded by inc/md-commerce.php, after the TOP header/footer CSS).
 * Values follow docs/md-commerce-v2/reference/md-commerce-manufacturing-mock.html and HANDOFF.md (approved v2 direction).
 * Every selector is under .capsor-mdc-main with an mc- prefix (variables --mc-*), so nothing leaks to
 * the shared header/footer, other pages or the TOP.
 */
.capsor-mdc-main { --mc-ink:#162832; --mc-muted:#65737a; --mc-paper:#fffefa; --mc-pale:#f6f3ed; --mc-sand:#efe6da; --mc-orange:#f16e45; --mc-line:#d8d9d3; --mc-g:clamp(22px,5.55vw,94px); --mc-max:1320px; }
.capsor-mdc-main { display:block; background:var(--mc-paper); color:var(--mc-ink); font-family:'Inter','Noto Sans JP','Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif; -webkit-font-smoothing:antialiased; font-feature-settings:'palt'; overflow-wrap:anywhere; }
.capsor-mdc-main :is(ul,ol) { list-style:none; margin:0; padding:0; }
.capsor-mdc-main :is(h1,h2,h3,p,figure) { margin:0; }
.capsor-mdc-main img { display:block; max-width:100%; }
.capsor-mdc-main a { color:inherit; text-decoration:none; }
.capsor-mdc-main ::selection { background:#f5ac91; color:#11252e; }
body.capsor-mdc .capsor-mdc-main a:focus-visible { outline:3px solid var(--mc-orange); outline-offset:4px; }
.capsor-mdc-main .mc-wrap { width:min(calc(100% - 2*var(--mc-g)),var(--mc-max)); margin-inline:auto; }
.capsor-mdc-main .mc-kicker { display:flex; align-items:center; gap:13px; font-size:11px; font-weight:900; letter-spacing:.18em; text-transform:uppercase; }
.capsor-mdc-main .mc-kicker:before { content:''; display:block; background:var(--mc-orange); width:29px; height:2px; flex:none; }
.capsor-mdc-main .mc-kicker.mc-light { color:#fff; }
.capsor-mdc-main .mc-heading { font-size:clamp(32px,4.4vw,61px); font-weight:900; letter-spacing:-.067em; line-height:1.31; margin:20px 0 0; }
.capsor-mdc-main .mc-lead { color:#53666f; line-height:2.08; font-size:15px; }
.capsor-mdc-main .mc-head { display:grid; grid-template-columns:1.2fr 1fr; align-items:end; gap:12%; margin-bottom:50px; }
.capsor-mdc-main .mc-head .mc-lead { padding-bottom:9px; }
.capsor-mdc-main .mc-btn { display:inline-flex; align-items:center; justify-content:space-between; gap:28px; min-height:56px; padding:16px 25px; border:1px solid var(--mc-ink); font-weight:800; font-size:12px; letter-spacing:.035em; transition:transform .2s,background .2s,color .2s,border-color .2s; }
.capsor-mdc-main .mc-btn:hover { transform:translateY(-3px); background:var(--mc-ink); color:#fff; }
.capsor-mdc-main .mc-arr { font-size:22px; font-weight:400; line-height:1; }

/* Breadcrumbs */
.capsor-mdc-main .mc-crumb { background:#fff; border-bottom:1px solid #edf0ec; }
.capsor-mdc-main .mc-crumb .mc-wrap { display:flex; align-items:center; flex-wrap:wrap; gap:12px; padding:16px 0; font-size:10px; letter-spacing:.07em; font-weight:750; color:#879196; }
.capsor-mdc-main .mc-crumb a { color:#56707c; }
.capsor-mdc-main .mc-crumb a:hover { color:var(--mc-orange); }
.capsor-mdc-main .mc-sep { color:#b8c4c6; }

/* 1. HERO */
.capsor-mdc-main .mc-hero { background:#f4f2ed; }
.capsor-mdc-main .mc-hero-grid { display:grid; grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr); min-height:710px; max-width:1780px; margin:0 auto; }
.capsor-mdc-main .mc-hero-copy { display:flex; flex-direction:column; justify-content:center; align-items:flex-start; padding:86px clamp(34px,6.4vw,116px) 77px var(--mc-g); }
.capsor-mdc-main .mc-hero-index { display:flex; align-items:center; flex-wrap:wrap; gap:6px 13px; color:#6d7b81; font-size:10px; letter-spacing:.2em; font-weight:900; margin-bottom:34px; }
.capsor-mdc-main .mc-hero-index:before { content:''; width:7px; height:7px; background:var(--mc-orange); border-radius:50%; }
.capsor-mdc-main .mc-hero-title { font-size:clamp(61px,6.1vw,102px); font-weight:900; letter-spacing:-.086em; line-height:1.07; margin:0 0 23px; }
.capsor-mdc-main .mc-hero-title > span { display:block; white-space:nowrap; }
.capsor-mdc-main .mc-hero-title .mc-hero-name { font-size:clamp(31px,3.5vw,54px); line-height:1.25; margin-bottom:18px; letter-spacing:-.06em; }
.capsor-mdc-main .mc-hero-title .mc-accent { color:var(--mc-orange); }
.capsor-mdc-main .mc-hero-caption { font-weight:900; line-height:1.6; letter-spacing:-.075em; font-size:clamp(24px,2.2vw,36px); margin:0 0 24px; }
.capsor-mdc-main .mc-hero-text { color:#64767b; max-width:470px; font-size:14px; line-height:2.05; margin:0 0 32px; }
.capsor-mdc-main .mc-hero-small { display:flex; align-items:center; gap:17px; margin-top:8px; font-size:10px; font-weight:900; letter-spacing:.12em; color:#789095; }
.capsor-mdc-main .mc-hero-small:before { content:''; width:54px; height:1px; background:#b1bfbb; }
.capsor-mdc-main .mc-hero-photo { position:relative; overflow:hidden; min-height:630px; background:radial-gradient(circle at 70% 44%,#d6ab7b 0%,#a77a53 50%,#715b4c 100%); }
.capsor-mdc-main .mc-hero-photo:before { content:''; position:absolute; inset:0; border:14px solid rgba(255,255,255,.11); pointer-events:none; z-index:4; }
.capsor-mdc-main .mc-photo-img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:1; }
.capsor-mdc-main .mc-hero-photo:after { content:''; position:absolute; inset:auto 0 0; height:42%; background:linear-gradient(transparent,rgba(26,18,12,.42)); z-index:2; pointer-events:none; }
.capsor-mdc-main .mc-hero-mark { position:absolute; z-index:3; top:28px; right:32px; writing-mode:vertical-rl; letter-spacing:.24em; font-size:10px; color:#fff; font-weight:900; text-shadow:0 2px 16px #223; }
.capsor-mdc-main .mc-photo-label { position:absolute; z-index:3; bottom:27px; left:31px; right:31px; color:#fff; font-size:11px; letter-spacing:.17em; text-shadow:0 2px 15px rgba(0,0,0,.4); }
.capsor-mdc-main .mc-hero-foot { background:var(--mc-ink); color:#fff; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; padding:28px var(--mc-g); }
.capsor-mdc-main .mc-hero-foot li { display:flex; align-items:center; gap:14px; border-right:1px solid #42535b; padding-right:20px; min-width:0; }
.capsor-mdc-main .mc-hero-foot li:last-child { border:0; }
.capsor-mdc-main .mc-hero-foot b { font-size:27px; line-height:1; color:var(--mc-orange); letter-spacing:-.07em; }
.capsor-mdc-main .mc-hero-foot span { font-size:12px; line-height:1.6; font-weight:850; letter-spacing:.05em; }
.capsor-mdc-main .mc-hero-foot small { display:block; font-size:10px; letter-spacing:.12em; color:#9fb2b8; }

/* 2. ORIGIN */
.capsor-mdc-main .mc-origin { padding:134px 0 129px; background:var(--mc-paper); }
.capsor-mdc-main .mc-origin-layout { display:grid; grid-template-columns:1fr 1fr; align-items:start; gap:9%; }
.capsor-mdc-main .mc-origin-heading { font-size:clamp(35px,4.3vw,63px); line-height:1.35; letter-spacing:-.075em; font-weight:900; margin-top:30px; }
.capsor-mdc-main .mc-origin-heading em { font-style:normal; color:var(--mc-orange); }
.capsor-mdc-main .mc-origin-copy { padding-top:54px; color:#546871; line-height:2.16; font-size:15px; }
.capsor-mdc-main .mc-origin-copy p { margin:0 0 21px; }
.capsor-mdc-main .mc-origin-copy strong { color:var(--mc-ink); font-weight:850; }
.capsor-mdc-main .mc-origin-copy .mc-origin-tagline { margin:32px 0 0; padding:21px 24px; background:#f3eee5; border-left:3px solid var(--mc-orange); font-size:13px; font-weight:850; line-height:1.8; color:#3b4a4d; }

/* 3. MANUFACTURING */
.capsor-mdc-main .mc-mfg { background:var(--mc-pale); padding:113px 0 120px; }
.capsor-mdc-main .mc-steps { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); border-top:1px solid var(--mc-line); border-bottom:1px solid var(--mc-line); counter-reset:none; }
.capsor-mdc-main .mc-step { position:relative; min-height:264px; padding:27px 24px 24px; border-right:1px solid var(--mc-line); display:flex; flex-direction:column; gap:16px; min-width:0; }
.capsor-mdc-main .mc-step:first-child { border-left:1px solid var(--mc-line); }
.capsor-mdc-main .mc-step:not(:last-child):after { content:'→'; position:absolute; right:-11px; top:50%; z-index:2; width:22px; height:22px; margin-top:-11px; display:grid; place-items:center; background:var(--mc-pale); color:var(--mc-orange); font-size:14px; font-weight:900; line-height:1; }
.capsor-mdc-main .mc-step-index { font-size:11px; font-weight:850; letter-spacing:.08em; color:var(--mc-orange); }
.capsor-mdc-main .mc-step-icon { width:46px; height:46px; border:1px solid #c9d0cb; border-radius:50%; display:grid; place-items:center; background:#fff; }
.capsor-mdc-main .mc-step-icon svg { width:22px; height:22px; stroke:#264450; fill:none; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.capsor-mdc-main .mc-step-photo { margin:-27px -24px 0; aspect-ratio:4/3; overflow:hidden; background:#e6ded3; }
.capsor-mdc-main .mc-step-img { width:100%; height:100%; object-fit:cover; }
.capsor-mdc-main .mc-step h3 { font-size:22px; line-height:1.4; letter-spacing:-.05em; font-weight:900; margin-top:auto; }
.capsor-mdc-main .mc-step p { font-size:12px; line-height:1.9; color:#6f7d84; min-height:3.8em; }
.capsor-mdc-main .mc-hand-note { display:flex; align-items:baseline; gap:18px; margin-top:22px; color:#5e6e75; font-size:13px; line-height:1.9; }
.capsor-mdc-main .mc-hand-note span { flex:none; font-size:10px; font-weight:900; letter-spacing:.16em; color:var(--mc-orange); }
.capsor-mdc-main .mc-factory { margin-top:56px; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); background:var(--mc-ink); color:#fff; position:relative; overflow:hidden; }
.capsor-mdc-main .mc-factory:before { content:'FACTORY'; position:absolute; left:-8px; bottom:-38px; white-space:nowrap; font-size:clamp(90px,13vw,190px); font-weight:900; letter-spacing:-.08em; line-height:1; opacity:.045; pointer-events:none; }
.capsor-mdc-main .mc-factory-copy { position:relative; padding:clamp(36px,5vw,68px) clamp(28px,4.4vw,64px); display:flex; flex-direction:column; justify-content:center; gap:20px; border-left:5px solid var(--mc-orange); }
.capsor-mdc-main .mc-factory-label { font-size:10px; font-weight:900; color:#f39b7c; letter-spacing:.16em; }
.capsor-mdc-main .mc-factory-heading { font-size:clamp(28px,3.4vw,48px); font-weight:900; letter-spacing:-.07em; line-height:1.32; }
.capsor-mdc-main .mc-factory-body { color:#b9c7cb; font-size:14px; line-height:1.95; max-width:440px; }
.capsor-mdc-main .mc-factory-photo { position:relative; min-height:340px; }
.capsor-mdc-main .mc-factory-img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.capsor-mdc-main .mc-floor { position:relative; padding:clamp(28px,4vw,52px); background:#1d3541; display:flex; flex-direction:column; justify-content:center; gap:12px; }
.capsor-mdc-main .mc-floor-plan { display:grid; grid-template-columns:1fr 1fr; border:2px solid #7fa3ad; min-height:220px; }
.capsor-mdc-main .mc-floor-plan > div { padding:20px 18px; display:flex; flex-direction:column; gap:8px; justify-content:flex-end; min-width:0; }
.capsor-mdc-main .mc-floor-office { background:repeating-linear-gradient(0deg,transparent 0 27px,rgba(127,163,173,.18) 27px 28px); border-right:2px dashed #7fa3ad; }
.capsor-mdc-main .mc-floor-factory { background:var(--mc-orange); }
.capsor-mdc-main .mc-floor small { font-size:10px; font-weight:900; letter-spacing:.16em; color:#9fc0c8; }
.capsor-mdc-main .mc-floor-factory small { color:#fff3ec; }
.capsor-mdc-main .mc-floor-plan .mc-floor-factory span { color:#fff; }
.capsor-mdc-main .mc-floor strong { font-size:clamp(20px,2.2vw,28px); font-weight:900; letter-spacing:-.05em; }
.capsor-mdc-main .mc-floor-plan span { font-size:12px; line-height:1.7; color:#c4d3d6; }
.capsor-mdc-main .mc-floor-scale { display:grid; grid-template-columns:1fr 1fr; font-family:'IBM Plex Mono',Consolas,monospace; font-size:11px; color:#9fc0c8; text-align:center; }
.capsor-mdc-main .mc-floor-scale span { border-top:1px solid #4f6f79; padding-top:6px; }

/* 4. SUPPLY CHAIN */
.capsor-mdc-main .mc-chain { background:#fff; padding:110px 0 118px; }
.capsor-mdc-main .mc-flow { display:grid; grid-template-columns:2fr 4fr 1fr; gap:10px; }
.capsor-mdc-main .mc-flow-phase { min-width:0; display:flex; flex-direction:column; gap:10px; }
.capsor-mdc-main .mc-flow-phase-label { font-size:10px; font-weight:900; letter-spacing:.18em; color:#7f8d92; border-bottom:1px solid var(--mc-line); padding-bottom:8px; }
.capsor-mdc-main .mc-phase-make .mc-flow-phase-label { color:var(--mc-orange); border-color:var(--mc-orange); }
.capsor-mdc-main .mc-flow-phase > ol { display:grid; grid-auto-flow:column; grid-auto-columns:minmax(0,1fr); gap:10px; flex:1; }
.capsor-mdc-main .mc-flow-phase li { position:relative; min-width:0; min-height:118px; background:var(--mc-pale); padding:22px 8px; text-align:center; display:flex; flex-direction:column; gap:12px; justify-content:center; }
.capsor-mdc-main .mc-phase-make li { background:#f3e3d6; }
.capsor-mdc-main .mc-phase-deliver li { background:var(--mc-ink); color:#fff; }
.capsor-mdc-main .mc-flow-phase li span { color:var(--mc-orange); font-size:11px; font-weight:900; }
.capsor-mdc-main .mc-flow-phase li strong { font-size:clamp(13px,1.3vw,17px); letter-spacing:-.04em; line-height:1.4; }
.capsor-mdc-main .mc-flow-phase li:after { content:''; position:absolute; right:-8px; top:50%; margin-top:-5px; border:5px solid transparent; border-left:6px solid var(--mc-orange); z-index:1; }
.capsor-mdc-main .mc-phase-deliver li:after { display:none; }
.capsor-mdc-main .mc-branch-head { position:relative; display:flex; justify-content:flex-end; margin-top:0; }
.capsor-mdc-main .mc-branch-head:before { content:''; position:absolute; right:calc((100% - 20px) / 14); top:0; width:2px; height:56px; background:var(--mc-orange); transform:translateX(50%); }
.capsor-mdc-main .mc-branch-head span { position:relative; margin:16px calc((100% - 20px) / 14 + 18px) 0 0; font-size:12px; font-weight:900; color:#bf663d; letter-spacing:.04em; }
.capsor-mdc-main .mc-branch { position:relative; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-top:24px; padding-top:30px; }
.capsor-mdc-main .mc-branch:before { content:''; position:absolute; top:0; left:12.5%; right:calc((100% - 20px) / 14 - 1px); height:2px; background:var(--mc-orange); }
.capsor-mdc-main .mc-branch li { position:relative; min-width:0; border:1px solid #d9dbd7; background:#fff; padding:22px 12px 20px; text-align:center; display:flex; flex-direction:column; gap:6px; }
.capsor-mdc-main .mc-branch li:before { content:''; position:absolute; left:50%; top:-31px; width:2px; height:30px; background:var(--mc-orange); transform:translateX(-50%); }
.capsor-mdc-main .mc-branch small { font-size:10px; font-weight:900; color:var(--mc-orange); letter-spacing:.1em; }
.capsor-mdc-main .mc-branch strong { font-size:clamp(15px,1.5vw,19px); font-weight:900; letter-spacing:-.04em; }
.capsor-mdc-main .mc-branch span { font-size:11px; color:#6f7d84; }
.capsor-mdc-main .mc-chain-figure figcaption { margin-top:20px; font-size:11px; color:#6d7673; line-height:1.8; }

/* 5. TWO BRANDS */
.capsor-mdc-main .mc-brands { background:var(--mc-ink); color:#fff; padding:122px 0 130px; position:relative; overflow:hidden; }
.capsor-mdc-main .mc-brands:before { content:'BRANDS'; position:absolute; top:0; right:-4%; font-weight:900; letter-spacing:-.08em; font-size:clamp(170px,25vw,420px); line-height:1; white-space:nowrap; width:max-content; color:#fff; opacity:.027; pointer-events:none; }
.capsor-mdc-main .mc-brands-head { position:relative; display:flex; align-items:end; justify-content:space-between; gap:36px; margin-bottom:58px; }
.capsor-mdc-main .mc-brands .mc-lead { max-width:430px; color:#b8c6c8; }
.capsor-mdc-main .mc-brand-grid { position:relative; display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.capsor-mdc-main .mc-brand { background:#fcfaf5; color:var(--mc-ink); min-width:0; display:flex; flex-direction:column; }
.capsor-mdc-main .mc-brand-image { position:relative; height:365px; overflow:hidden; background:linear-gradient(135deg,#d4bd9e,#907157 70%,#6c5144); }
.capsor-mdc-main .mc-badge { position:absolute; top:22px; left:23px; z-index:2; color:#fff; background:var(--mc-ink); font-size:10px; letter-spacing:.14em; padding:9px 12px; font-weight:850; }
.capsor-mdc-main .mc-brand-body { padding:38px clamp(28px,3.3vw,51px) 44px; display:flex; flex-direction:column; flex:1; }
.capsor-mdc-main .mc-brand-num { font-size:11px; letter-spacing:.15em; color:var(--mc-orange); font-weight:850; }
.capsor-mdc-main .mc-brand-logo { align-self:flex-start; width:auto; height:44px; margin:18px 0 0; mix-blend-mode:multiply; }
.capsor-mdc-main .mc-brand h3 { font-size:clamp(24px,2.6vw,34px); letter-spacing:-.06em; line-height:1.25; margin:16px 0; font-weight:900; }
.capsor-mdc-main .mc-brand h3 span { display:block; font-size:13px; color:#7f8a8e; font-weight:700; letter-spacing:.03em; margin-top:10px; }
.capsor-mdc-main .mc-brand p { font-size:13px; line-height:2; color:#52656b; margin-bottom:29px; }
.capsor-mdc-main .mc-brand a { margin-top:auto; border-top:1px solid #dce2dd; display:flex; align-items:center; justify-content:space-between; padding-top:20px; gap:20px; font-weight:850; font-size:12px; }
.capsor-mdc-main .mc-brand a:hover { color:var(--mc-orange); }
.capsor-mdc-main .mc-brand a .mc-arr { color:var(--mc-orange); }

/* 6. CHANNELS */
.capsor-mdc-main .mc-channels { background:var(--mc-sand); padding:113px 0 124px; }
.capsor-mdc-main .mc-channel-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.capsor-mdc-main .mc-channel { position:relative; overflow:hidden; min-height:277px; background:#fdfbf7; padding:30px 28px; display:flex; flex-direction:column; justify-content:space-between; gap:24px; min-width:0; }
.capsor-mdc-main .mc-channel:nth-child(2) { background:#decdb9; }
.capsor-mdc-main .mc-channel:nth-child(3) { background:#19323d; color:#fff; }
.capsor-mdc-main .mc-channel:nth-child(4) { background:#f8efe5; box-shadow:inset 0 0 0 2px var(--mc-orange); }
.capsor-mdc-main .mc-channel:after { content:attr(data-number); position:absolute; right:4px; top:0; font-size:125px; font-weight:900; letter-spacing:-.07em; line-height:1; color:currentColor; opacity:.06; pointer-events:none; }
.capsor-mdc-main .mc-channel-en { position:relative; z-index:1; font-size:10px; letter-spacing:.15em; font-weight:850; }
.capsor-mdc-main .mc-channel > div { position:relative; z-index:1; }
.capsor-mdc-main .mc-channel h3 { font-size:clamp(24px,2.2vw,33px); letter-spacing:-.05em; line-height:1.25; margin-bottom:13px; font-weight:900; }
.capsor-mdc-main .mc-channel p { font-size:12px; line-height:1.9; opacity:.8; }
.capsor-mdc-main .mc-channels-note { font-size:11px; color:#6d7673; margin-top:22px; line-height:1.8; }

/* 7. DIGITAL CRAFT + loop back to development */
.capsor-mdc-main .mc-craft { padding:130px 0 120px; background:#fefdfa; }
.capsor-mdc-main .mc-craft-layout { display:grid; grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr); gap:10%; align-items:center; }
.capsor-mdc-main .mc-craft-copy .mc-heading { margin:29px 0; font-size:clamp(30px,3.3vw,47px); }
.capsor-mdc-main .mc-craft-body { margin-top:19px; }
.capsor-mdc-main .mc-craft-body strong { color:#263d43; }
.capsor-mdc-main .mc-craft-mini { display:flex; align-items:center; gap:13px; font-size:11px; font-weight:850; letter-spacing:.07em; color:var(--mc-orange); margin-top:42px; }
.capsor-mdc-main .mc-craft-mini:before { content:''; height:1px; width:36px; background:var(--mc-orange); }
.capsor-mdc-main .mc-tech { position:relative; background:#17313d; color:#fff; padding:38px; overflow:hidden; min-width:0; }
.capsor-mdc-main .mc-tech:before { content:''; position:absolute; inset:0; opacity:.12; background-image:linear-gradient(#74a4b344 1px,transparent 1px),linear-gradient(90deg,#74a4b344 1px,transparent 1px); background-size:34px 34px; pointer-events:none; }
.capsor-mdc-main .mc-tech > * { position:relative; }
.capsor-mdc-main .mc-tech-head { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; color:#8eb5b9; font-size:10px; font-weight:900; letter-spacing:.15em; }
.capsor-mdc-main .mc-tech-head b { color:#f0a787; font-size:15px; }
.capsor-mdc-main .mc-tech-art { margin:18px 0 14px; display:grid; place-items:center; }
.capsor-mdc-main .mc-tech-art svg { width:min(100%,440px); height:auto; }
.capsor-mdc-main .mc-tech-photo { margin:18px 0 14px; aspect-ratio:16/9; overflow:hidden; }
.capsor-mdc-main .mc-craft-img { width:100%; height:100%; object-fit:cover; }
.capsor-mdc-main .mc-tech-list { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.capsor-mdc-main .mc-tech-list li { border:1px solid #45606a; padding:19px 18px; min-height:92px; min-width:0; }
.capsor-mdc-main .mc-tech-list b { display:block; font-size:15px; letter-spacing:-.02em; margin-bottom:8px; }
.capsor-mdc-main .mc-tech-list span { font-size:11px; font-weight:700; color:#a7bbbf; }
.capsor-mdc-main .mc-tech-list .mc-tech-hand { grid-column:1 / -1; min-height:0; border-color:#f0a787; display:flex; align-items:baseline; flex-wrap:wrap; gap:6px 16px; }
.capsor-mdc-main .mc-tech-list .mc-tech-hand b { color:#f0a787; margin:0; }
.capsor-mdc-main .mc-tech-list .mc-tech-hand span { color:#e2eaec; }
.capsor-mdc-main .mc-tech-foot { display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px 16px; margin-top:24px; font-size:9px; color:#78969c; letter-spacing:.12em; }
.capsor-mdc-main .mc-loop { margin-top:96px; padding-top:56px; border-top:1px solid var(--mc-ink); display:grid; grid-template-columns:1fr 1fr; gap:10%; align-items:center; }
.capsor-mdc-main .mc-loop-heading { font-size:clamp(24px,2.6vw,36px); font-weight:900; letter-spacing:-.06em; line-height:1.35; margin:18px 0 16px; }
.capsor-mdc-main .mc-loop-copy p { color:#53666f; font-size:14px; line-height:2; }
.capsor-mdc-main .mc-loop-rows li { display:grid; grid-template-columns:56px minmax(0,1fr); align-items:center; gap:16px; padding:18px 6px; border-bottom:1px solid #e0e7e2; }
.capsor-mdc-main .mc-loop-rows li:last-child { border:0; }
.capsor-mdc-main .mc-loop-rows b { font-weight:900; font-size:28px; color:var(--mc-orange); letter-spacing:-.06em; }
.capsor-mdc-main .mc-loop-rows strong { display:block; font-size:18px; letter-spacing:-.045em; }
.capsor-mdc-main .mc-loop-rows small { display:block; font-size:12px; color:#75868e; margin-top:6px; }
.capsor-mdc-main .mc-loop-rows small a { color:var(--mc-ink); font-weight:800; border-bottom:1px solid currentColor; }
.capsor-mdc-main .mc-loop-rows small a:hover { color:var(--mc-orange); }

/* 8. CTA */
.capsor-mdc-main .mc-cta { background:var(--mc-ink); color:#fff; padding:107px 0 115px; position:relative; overflow:hidden; }
.capsor-mdc-main .mc-cta:before { content:'CAPSOR'; position:absolute; right:-35px; bottom:-128px; font-size:clamp(150px,25vw,400px); font-weight:900; letter-spacing:-.09em; line-height:1; white-space:nowrap; width:max-content; opacity:.045; pointer-events:none; }
.capsor-mdc-main .mc-cta-grid { position:relative; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:40px; align-items:end; }
.capsor-mdc-main .mc-cta h2 { font-size:clamp(33px,4.4vw,60px); line-height:1.3; letter-spacing:-.065em; font-weight:900; margin:21px 0 18px; }
.capsor-mdc-main .mc-cta p { color:#afbec2; line-height:1.9; font-size:14px; max-width:560px; }
.capsor-mdc-main .mc-cta-buttons { display:flex; flex-direction:column; gap:11px; width:min(100%,360px); }
.capsor-mdc-main .mc-cta .mc-btn { border-color:#78909a; color:#fff; text-align:left; }
.capsor-mdc-main .mc-cta .mc-btn small { display:block; font-size:10px; font-weight:700; letter-spacing:.06em; opacity:.85; margin-bottom:4px; }
.capsor-mdc-main .mc-cta .mc-btn > span:first-child { font-size:15px; }
.capsor-mdc-main .mc-cta .mc-orange { background:var(--mc-orange); border-color:var(--mc-orange); }
.capsor-mdc-main .mc-cta .mc-orange:hover { background:#fff; color:var(--mc-ink); border-color:#fff; }
.capsor-mdc-main .mc-cta .mc-light-btn { background:#fff; color:var(--mc-ink); border-color:#fff; }
.capsor-mdc-main .mc-cta .mc-light-btn:hover { background:var(--mc-orange); color:#fff; border-color:var(--mc-orange); }
.capsor-mdc-main .mc-cta .mc-ghost:hover { background:#fff; color:var(--mc-ink); }
.capsor-mdc-main .mc-cta .mc-ghost > span:first-child { font-size:12px; }
.capsor-mdc-main .mc-also { padding:34px 0; background:#eff0ec; }
.capsor-mdc-main .mc-also-inner { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px 20px; }
.capsor-mdc-main .mc-also h2 { font-size:10px; font-weight:850; letter-spacing:.12em; color:#778a92; }
.capsor-mdc-main .mc-also ul { display:flex; flex-wrap:wrap; gap:12px 29px; }
.capsor-mdc-main .mc-also a { font-size:12px; font-weight:800; }
.capsor-mdc-main .mc-also a:hover { color:var(--mc-orange); }

/* Responsive (reference breakpoints: 1160 / 1024 / 900 / 680 / 410) */
@media (max-width:1160px) {
	.capsor-mdc-main .mc-hero-copy { padding-left:var(--mc-g); padding-right:37px; }
	.capsor-mdc-main .mc-hero-title { font-size:clamp(54px,6.2vw,82px); }
	.capsor-mdc-main .mc-step { padding:24px 17px; }
	.capsor-mdc-main .mc-step-photo { margin:-24px -17px 0; }
	.capsor-mdc-main .mc-brand-image { height:325px; }
}
@media (max-width:1024px) {
	.capsor-mdc-main .mc-flow-phase li { min-height:96px; padding:16px 6px; gap:8px; }
	.capsor-mdc-main .mc-channel-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:900px) {
	.capsor-mdc-main .mc-hero-grid { min-height:600px; }
	.capsor-mdc-main .mc-hero-copy { padding-top:70px; padding-bottom:70px; }
	.capsor-mdc-main .mc-hero-photo { min-height:570px; }
	.capsor-mdc-main .mc-hero-title { font-size:clamp(48px,6.3vw,64px); }
	.capsor-mdc-main .mc-hero-caption { font-size:clamp(21px,2.9vw,27px); }
	.capsor-mdc-main .mc-hero-text { font-size:13px; }
	.capsor-mdc-main .mc-origin, .capsor-mdc-main .mc-craft { padding:99px 0; }
	.capsor-mdc-main .mc-mfg, .capsor-mdc-main .mc-chain, .capsor-mdc-main .mc-brands, .capsor-mdc-main .mc-channels { padding:94px 0; }
	.capsor-mdc-main .mc-steps { grid-template-columns:repeat(3,minmax(0,1fr)); }
	.capsor-mdc-main .mc-step:nth-child(4) { border-left:1px solid var(--mc-line); }
	.capsor-mdc-main .mc-step:nth-child(-n+3) { border-bottom:1px solid var(--mc-line); }
	.capsor-mdc-main .mc-step:nth-child(3):after { display:none; }
	.capsor-mdc-main .mc-factory { grid-template-columns:1fr; }
	.capsor-mdc-main .mc-brands-head { align-items:start; }
	.capsor-mdc-main .mc-brand-image { height:295px; }
	.capsor-mdc-main .mc-brand-body { padding:30px; }
	.capsor-mdc-main .mc-tech { padding:25px; }
	.capsor-mdc-main .mc-craft-layout { gap:5%; }
}
@media (max-width:680px) {
	.capsor-mdc-main { --mc-g:24px; }
	.capsor-mdc-main .mc-hero-grid { grid-template-columns:minmax(0,1fr); min-height:0; }
	.capsor-mdc-main .mc-hero-copy { padding:58px var(--mc-g) 52px; }
	.capsor-mdc-main .mc-hero-index { margin-bottom:26px; }
	.capsor-mdc-main .mc-hero-title { font-size:clamp(52px,13vw,76px); margin-bottom:21px; }
	.capsor-mdc-main .mc-hero-title .mc-hero-name { font-size:clamp(29px,8vw,43px); }
	.capsor-mdc-main .mc-hero-caption { font-size:clamp(22px,6.4vw,29px); margin-bottom:18px; }
	.capsor-mdc-main .mc-hero-photo { min-height:420px; }
	.capsor-mdc-main .mc-photo-label { left:24px; right:24px; bottom:22px; }
	.capsor-mdc-main .mc-hero-foot { gap:12px; padding:22px var(--mc-g); }
	.capsor-mdc-main .mc-hero-foot li { gap:9px; padding-right:8px; flex-direction:column; align-items:flex-start; }
	.capsor-mdc-main .mc-hero-foot b { font-size:22px; }
	.capsor-mdc-main .mc-hero-foot span { font-size:11px; }
	.capsor-mdc-main .mc-hero-foot small { font-size:9px; letter-spacing:.08em; }
	.capsor-mdc-main .mc-head, .capsor-mdc-main .mc-origin-layout, .capsor-mdc-main .mc-craft-layout, .capsor-mdc-main .mc-loop { grid-template-columns:1fr; gap:25px; }
	.capsor-mdc-main .mc-head { margin-bottom:32px; }
	.capsor-mdc-main .mc-origin, .capsor-mdc-main .mc-craft { padding:82px 0; }
	.capsor-mdc-main .mc-origin-heading { margin-top:22px; font-size:clamp(32px,8vw,49px); }
	.capsor-mdc-main .mc-origin-copy { padding-top:0; }
	.capsor-mdc-main .mc-heading { font-size:clamp(31px,7.6vw,46px); }
	.capsor-mdc-main .mc-mfg, .capsor-mdc-main .mc-chain, .capsor-mdc-main .mc-brands, .capsor-mdc-main .mc-channels { padding:83px 0; }
	.capsor-mdc-main .mc-steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.capsor-mdc-main .mc-step { min-height:230px; padding:22px 16px; }
	.capsor-mdc-main .mc-step-photo { margin:-22px -16px 0; }
	.capsor-mdc-main .mc-step:nth-child(odd) { border-left:1px solid var(--mc-line); }
	.capsor-mdc-main .mc-step:nth-child(4) { border-left:none; }
	.capsor-mdc-main .mc-step:nth-child(-n+4) { border-bottom:1px solid var(--mc-line); }
	.capsor-mdc-main .mc-step:nth-child(3):after { display:grid; }
	.capsor-mdc-main .mc-step:nth-child(even):after { display:none; }
	.capsor-mdc-main .mc-step:nth-child(5) { grid-column:1 / -1; min-height:0; }
	.capsor-mdc-main .mc-hand-note { flex-direction:column; gap:6px; }
	.capsor-mdc-main .mc-factory { margin-top:40px; }
	.capsor-mdc-main .mc-factory-copy { padding:34px 24px; }
	.capsor-mdc-main .mc-floor { padding:24px; }
	.capsor-mdc-main .mc-floor-plan { min-height:190px; }
	.capsor-mdc-main .mc-floor-plan > div { padding:16px 12px; }
	.capsor-mdc-main .mc-flow { grid-template-columns:1fr; gap:26px; }
	.capsor-mdc-main .mc-flow > .mc-flow-phase:not(:last-child):after { content:'↓'; position:absolute; left:50%; bottom:-23px; transform:translateX(-50%); color:var(--mc-orange); font-size:15px; font-weight:900; line-height:1; }
	.capsor-mdc-main .mc-flow > .mc-flow-phase { position:relative; }
	.capsor-mdc-main .mc-flow-phase > ol { grid-auto-flow:row; grid-template-columns:repeat(2,minmax(0,1fr)); }
	.capsor-mdc-main .mc-phase-deliver > ol { grid-template-columns:1fr; }
	.capsor-mdc-main .mc-flow-phase li { min-height:72px; }
	.capsor-mdc-main .mc-flow-phase li:after { display:none; }
	.capsor-mdc-main .mc-branch-head { justify-content:flex-start; }
	.capsor-mdc-main .mc-branch-head:before { right:auto; left:14px; transform:none; height:46px; }
	.capsor-mdc-main .mc-branch-head span { margin:14px 0 0 32px; }
	.capsor-mdc-main .mc-branch { grid-template-columns:1fr; gap:10px; margin-top:0; padding:10px 0 0 32px; }
	.capsor-mdc-main .mc-branch:before { left:14px; right:auto; top:0; bottom:28px; width:2px; height:auto; }
	.capsor-mdc-main .mc-branch li { flex-direction:row; flex-wrap:wrap; align-items:baseline; gap:4px 12px; text-align:left; padding:16px 16px; }
	.capsor-mdc-main .mc-branch li:before { left:-18px; top:50%; bottom:auto; width:18px; height:2px; transform:none; }
	.capsor-mdc-main .mc-branch strong { font-size:17px; }
	.capsor-mdc-main .mc-brands-head { flex-direction:column; gap:24px; margin-bottom:40px; }
	.capsor-mdc-main .mc-brand-grid { grid-template-columns:1fr; gap:21px; }
	.capsor-mdc-main .mc-brand-image { height:clamp(220px,62vw,345px); }
	.capsor-mdc-main .mc-channel-grid { grid-template-columns:1fr; gap:11px; }
	.capsor-mdc-main .mc-channel { min-height:200px; }
	.capsor-mdc-main .mc-channel h3 { font-size:30px; }
	.capsor-mdc-main .mc-loop { margin-top:72px; padding-top:44px; }
	.capsor-mdc-main .mc-cta { padding:76px 0 89px; }
	.capsor-mdc-main .mc-cta-grid { grid-template-columns:1fr; }
	.capsor-mdc-main .mc-cta-buttons { width:100%; max-width:420px; }
	.capsor-mdc-main .mc-also-inner { flex-direction:column; align-items:flex-start; }
}
@media (max-width:410px) {
	.capsor-mdc-main { --mc-g:20px; }
	.capsor-mdc-main .mc-hero-copy { padding-top:48px; padding-bottom:44px; }
	.capsor-mdc-main .mc-hero-title { font-size:clamp(46px,14vw,58px); }
	.capsor-mdc-main .mc-hero-title .mc-accent { font-size:.86em; }
	.capsor-mdc-main .mc-hero-photo { min-height:340px; }
	.capsor-mdc-main .mc-hero-foot { gap:8px; }
	.capsor-mdc-main .mc-hero-foot span { font-size:10px; }
	.capsor-mdc-main .mc-step { padding:19px 13px; }
	.capsor-mdc-main .mc-step-photo { margin:-19px -13px 0; }
	.capsor-mdc-main .mc-step h3 { font-size:19px; }
	.capsor-mdc-main .mc-step p { font-size:11px; }
	.capsor-mdc-main .mc-floor-plan span { font-size:11px; }
	.capsor-mdc-main .mc-brand-body { padding:28px 22px; }
	.capsor-mdc-main .mc-tech { padding:18px; }
	.capsor-mdc-main .mc-tech-list li { padding:15px 12px; }
	.capsor-mdc-main .mc-tech-list b { font-size:13px; }
	.capsor-mdc-main .mc-tech-list span { font-size:10px; }
	.capsor-mdc-main .mc-channel { padding:26px 22px; }
	.capsor-mdc-main .mc-loop-rows li { grid-template-columns:42px minmax(0,1fr); gap:11px; }
	.capsor-mdc-main .mc-loop-rows strong { font-size:16px; }
}
@media (prefers-reduced-motion:reduce) {
	.capsor-mdc-main .mc-btn { transition:none; }
	.capsor-mdc-main .mc-btn:hover { transform:none; }
}
@media print {
	.capsor-mdc-main :is(.mc-hero-foot,.mc-factory,.mc-brands,.mc-tech,.mc-cta,.mc-channel) { -webkit-print-color-adjust:exact; print-color-adjust:exact; }
	.capsor-mdc-main .mc-hero-grid { min-height:0; }
	.capsor-mdc-main .mc-hero-photo { min-height:400px; }
}
.capsor-mdc-main :is(.mc-channel h3,.mc-branch strong) { word-break:keep-all; overflow-wrap:break-word; }
