/* Mobile refinement: semantic phrase boundaries, full-width diagrams,
   readable comparison groups. Loaded after the existing design layers. */
.v5-phrase{display:inline-block;max-width:100%;line-break:strict;overflow-wrap:normal}
.v4-hero h1 .v5-phrase,.v4-hero-copy>p:not(.v3-kicker) .v5-phrase{display:block}
.v4-heading h2{letter-spacing:.015em;text-wrap:balance}
.v4-heading h2 .v5-phrase+.v5-phrase{margin-left:.12em}
.v5-mobile-comparison{display:none}
.v3-button>span:first-child{min-width:0}
.v3-button>span[aria-hidden]{flex:none}
.v4-choice:focus-visible,.v3-button:focus-visible,.v4-cost-toggle button:focus-visible{outline:3px solid #b58632;outline-offset:4px}
@media(max-width:720px){
  .v4-flow,.v3-article .v4-flow{grid-template-columns:minmax(0,1fr);gap:26px;margin:22px 0 26px!important}
  .v4-flow li,.v3-article .v4-flow li{grid-template-columns:52px minmax(0,1fr);grid-template-rows:auto auto auto;column-gap:14px;row-gap:1px;padding:16px;justify-items:start;text-align:left;align-items:center;line-height:1.6!important}
  .v4-flow .v4-stepicon{grid-column:1;grid-row:1/4;width:48px;height:48px;margin:0;align-self:center}
  .v4-flow .v4-stepno{grid-column:2;grid-row:1;font-size:.75rem;letter-spacing:.1em;margin:0;line-height:1.4}
  .v4-flow strong,.v3-article .v4-flow strong{grid-column:2;grid-row:2;font-size:1.0625rem;line-height:1.6;overflow-wrap:normal;word-break:normal}
  .v4-flow small,.v3-article .v4-flow small{grid-column:2;grid-row:3;font-size:.875rem;line-height:1.7;margin:0;overflow-wrap:normal;word-break:normal;line-break:strict}
  .v4-flow li:not(:last-child):after,.v3-article .v4-flow li:not(:last-child):after{content:'↓';left:30px;right:auto;top:auto;bottom:-26px;transform:none;font-size:20px;line-height:24px}
  .v4-matrix{display:none}
  .v5-mobile-comparison{display:grid;gap:14px}
  .v5-option{background:#fff;border:1px solid #ced9cd;border-radius:8px;overflow:hidden}
  .v5-option h3,.v3-article .v5-option h3{display:flex;align-items:center;gap:12px;background:#edf3e9;margin:0;padding:15px 18px;font-size:1.125rem;border:0;line-height:1.5;color:#235441}
  .v5-option:nth-child(2) h3{background:#f8f1e4;color:#785b24}
  .v5-option:nth-child(3) h3{background:#eaf1f2;color:#3d6672}
  .v5-option h3 .v4-icon{width:28px;height:28px;flex:none}
  .v5-option dl{margin:0;padding:2px 18px 8px}
  .v5-option dl>div{display:grid;grid-template-columns:3em minmax(0,1fr);gap:14px;padding:12px 0;border-bottom:1px solid #e4e8df;font-size:1rem;line-height:1.7}
  .v5-option dl>div:last-child{border:0}
  .v5-option dt{color:#60705f}
  .v5-option dd{margin:0;font-weight:600;line-break:strict;overflow-wrap:normal}
  .v4-family-bubbles{grid-template-columns:minmax(0,1fr);gap:14px}
  .v4-family-bubbles>div{padding-left:42px}
  .v4-family-bubbles b{position:absolute;left:0;top:7px;margin:0}
  .v4-family-bubbles p,.v3-article .v4-sheet-demo .v4-family-bubbles p{font-size:.9375rem;line-height:1.8;padding:12px 14px;text-wrap:pretty}
  .v4-sheet-top{flex-direction:column;align-items:flex-start;gap:10px;font-size:1rem}
  .v4-sheet-top b{font-size:.75rem}
  .v4-sheet-action,.v3-article .v4-sheet-demo .v4-sheet-action{display:block;padding:14px 16px}
  .v4-sheet-action strong,.v3-article .v4-sheet-demo .v4-sheet-action strong{display:block;font-size:1rem;margin-top:6px;line-height:1.9}
}
@media(max-width:600px){
  .v3-wrap{width:calc(100% - 32px)}
  .v4-section{padding-block:48px}
  .v4-hero{padding-top:28px;row-gap:16px}
  .v4-hero h1{font-size:clamp(1.75rem,7.6vw,2.35rem);line-height:1.55;letter-spacing:0}
  .v4-hero-copy>p:not(.v3-kicker){font-size:1rem;line-height:1.9}
  .v4-hero-copy>small{font-size:.8125rem;line-height:1.8}
  .v4-hero-art{margin-block:2px 6px}
  .v4-heading{display:block;position:relative;padding-top:0;margin-bottom:24px}
  .v4-heading .v4-number{display:inline-block;font-size:.875rem;line-height:1.5;letter-spacing:.1em;color:#66816b;margin:0 0 8px;border-bottom:2px solid #c3d0ba;padding:0 0 4px}
  .v4-heading .v3-kicker{font-size:.8125rem;margin-bottom:7px}
  .v4-heading h2{font-size:1.5rem;line-height:1.6;letter-spacing:0}
  .v4-heading h2 .v5-phrase{display:block;margin:0}
  .v4-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .v4-choice.v3-choice{grid-template-columns:minmax(0,1fr);padding:15px 12px;gap:10px;min-height:112px;align-content:start;min-width:0}
  .v4-choice>.v4-icon{grid-column:1;width:30px;height:30px}
  .v4-choice>span:not(.v4-choice-arrow){grid-column:1;font-size:.9375rem;letter-spacing:0;line-height:1.65;overflow-wrap:normal;word-break:normal}
  .v4-choice .v4-choice-arrow{position:absolute;right:12px;top:16px;font-size:1.125rem}
  .v4-choice[aria-pressed=true]:after{display:none}
  .v4-route-result{padding:20px 12px;text-align:left;margin-top:16px}
  .v4-route-result h3{font-size:1.125rem;line-height:1.7;text-wrap:balance}
  .v4-route-desc{font-size:.9375rem;line-height:1.8;text-wrap:pretty}
  .v4-home .v3-button,.v4-route-result>.v3-button,.v4-hero .v3-button{font-size:1rem;line-height:1.7;min-height:54px;padding:14px 16px;gap:12px;max-width:100%;text-align:left}
  .v4-deadline{gap:10px;padding:18px 12px;align-items:flex-start}
  .v4-deadline>svg{width:26px;min-width:26px;height:26px}
  .v4-deadline>span{min-width:0}
  .v4-deadline strong{font-size:.9375rem;line-height:1.8;text-wrap:pretty}
  .v4-deadline small{font-size:.8125rem;line-height:1.7}
  .v4-deadline>b{display:none}
  .v4-cost-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .v4-cost-toggle button{padding:12px 8px;font-size:.875rem;min-height:48px;line-height:1.6}
  .v4-bars{padding:22px 18px}
  .v4-bar-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 12px;align-items:center;margin-bottom:19px}
  .v4-bar-row>span{grid-column:1;grid-row:1;font-size:.9375rem;white-space:normal}
  .v4-bar-row>strong{grid-column:2;grid-row:1;font-size:1.25rem;white-space:nowrap}
  .v4-bar-track{grid-column:1/-1;grid-row:2;width:100%;height:13px}
  .v4-bar-caption{font-size:.8125rem;line-height:1.8;margin-top:6px;text-wrap:pretty}
  .v4-sheet-demo{padding:18px 14px;box-shadow:3px 4px 0 #e4eadf}
  .v4-sheet-row,.v3-article .v4-sheet-demo .v4-sheet-row{grid-template-columns:4.5em minmax(0,1fr);gap:10px;font-size:.9375rem;line-height:1.8}
  .v4-sheet-explainer{padding:0}
  .v4-mini-step strong{font-size:1rem}
  .v4-mini-step p{font-size:.9375rem;line-height:1.8}
  .v4-compare-actions{gap:16px}
  .v4-compare-actions .v3-textlink{font-size:.9375rem}
  .v3-header nav a{font-size:.875rem;line-height:1.6;padding:10px 8px;min-height:44px}
  .v3-footer nav a[href='/seiri-sheet']{grid-column:1/-1}
  .v3-article h1,.v3-article h2,.v3-guide h1{text-wrap:balance;line-break:strict;word-break:normal}
}
@media(max-width:360px){
  .v4-flow li,.v3-article .v4-flow li{grid-template-columns:40px minmax(0,1fr);column-gap:10px;padding:14px 10px}
  .v4-flow .v4-stepicon{width:38px;height:38px}
  .v4-flow li:not(:last-child):after,.v3-article .v4-flow li:not(:last-child):after{left:20px}
  .v4-heading h2{font-size:1.375rem}
  .v4-choice>span:not(.v4-choice-arrow){font-size:.9375rem}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
@media print{.v5-mobile-comparison{display:none!important}.v4-matrix{display:block!important}}
