.skip-link:not(:focus) { visibility:hidden; }
.skip-link:focus { visibility:visible; }
.consult-opening { padding-bottom:clamp(72px,10vw,130px); }
.consult-breadcrumb { display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 clamp(30px,5vw,62px);color:var(--muted);font-size:var(--type-support);line-height:var(--leading-support); }
.consult-breadcrumb a { text-underline-offset:3px; }.consult-breadcrumb [aria-current="page"] { color:var(--ink); }
.consult-kicker { margin:0;color:var(--muted);font:var(--type-micro)/1.5 var(--mono);letter-spacing:.07em; }
.consult-kicker .signal-dot { margin-right:11px; }
.opening-layout { display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.7fr);gap:clamp(40px,8vw,120px);align-items:end;margin-top:18px; }
.opening-main { max-width:800px; }
.opening-main h1 { margin:0;font-family:var(--display);font-size:clamp(2.6rem,6vw,3.5rem);font-weight:660;line-height:1.24;letter-spacing:-.025em; }
.opening-thesis { margin:18px 0 0;color:var(--orange-text);font-size:clamp(1.2rem,2vw,1.55rem);font-weight:640;line-height:1.5; }
.opening-lead { max-width:740px;margin:10px 0 0;font-size:var(--type-body);line-height:var(--leading-body); }
.opening-actions { display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:23px; }
.consult-cta { min-height:48px;display:inline-flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 17px;background:var(--orange);color:#171914;font-size:var(--type-control);line-height:var(--leading-control);font-weight:650;text-decoration:none;transition:background-color .2s,color .2s,transform .2s; }
.consult-cta:hover { transform:translateY(-2px);background:var(--ink);color:var(--paper); }
.opening-email,.closing-actions > a:last-child { color:var(--muted);font-size:var(--type-support);text-underline-offset:4px; }
.issue-sheet { padding:18px 20px 15px;border-top:2px solid var(--orange);background:color-mix(in srgb,var(--yellow) 14%,var(--panel)); }
.issue-sheet-label { display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin:0 0 8px;color:var(--muted);font:var(--type-micro)/1.5 var(--mono);letter-spacing:.045em; }
.issue-sheet-label span { font-family:var(--sans);font-size:var(--type-support);letter-spacing:0; }
.issue-line { display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:start;padding:12px 0;border-top:1px solid var(--line); }
.issue-line b { color:var(--orange-text);font:var(--type-micro)/1.7 var(--mono); }
.issue-line p { margin:0;font-size:var(--type-compact);line-height:var(--leading-compact); }
.issue-footnote { margin:10px 0 0;padding-top:10px;border-top:1px solid var(--line);color:var(--muted);font-size:var(--type-support);line-height:var(--leading-support); }

.cooperation-section { padding:clamp(30px,5vw,62px) 0 clamp(78px,10vw,132px);border-top:1px solid var(--line); }
.section-heading { display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);gap:14px clamp(36px,8vw,116px);align-items:end;margin-bottom:35px; }
.section-heading .consult-kicker { grid-column:1/-1; }
.section-heading h2,.starting-heading h2,.memo-heading h2 { margin:0;font-family:var(--display);font-size:clamp(1.85rem,3.8vw,2.25rem);font-weight:630;line-height:1.36;letter-spacing:-.015em; }
.section-heading > p:last-child { max-width:470px;margin:0 0 4px;color:var(--muted);font-size:var(--type-body);line-height:var(--leading-body); }
.cooperation-columns { display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line); }
.cooperation-column { min-width:0;padding:26px clamp(22px,4vw,54px) 24px 0; }
.cooperation-column + .cooperation-column { padding-left:clamp(22px,4vw,54px);border-left:1px solid var(--line); }
.column-heading { display:flex;align-items:center;gap:15px; }
.column-mark { width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--orange);border-radius:50%;color:var(--orange-text);font:var(--type-control)/1 var(--mono); }
.delivery-column .column-mark { border-color:var(--blue);color:var(--brand); }
.column-kicker { margin:0 0 2px;color:var(--muted);font:var(--type-micro)/1.45 var(--mono);letter-spacing:.04em; }
.column-heading h3 { margin:0;font-size:1.4rem;line-height:1.4; }
.column-summary { max-width:560px;min-height:3.4em;margin:16px 0 17px;font-size:var(--type-compact);line-height:var(--leading-compact); }
.cooperation-column dl { margin:0;border-top:1px solid var(--line); }
.cooperation-column dl > div { display:grid;grid-template-columns:98px minmax(0,1fr);gap:15px;padding:13px 0;border-bottom:1px solid var(--line); }
.cooperation-column dt { color:var(--orange-text);font-size:var(--type-control);line-height:var(--leading-control);font-weight:600; }
.delivery-column dt { color:var(--brand); }
.cooperation-column dd { margin:0;color:var(--muted);font-size:var(--type-compact);line-height:var(--leading-compact); }
.column-note { margin:13px 0 0;color:var(--muted);font-size:var(--type-support);line-height:var(--leading-support); }

.starting-section { padding:0 0 clamp(80px,10vw,135px); }
.starting-heading { display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);gap:14px clamp(36px,8vw,116px);align-items:end;margin-bottom:28px; }
.starting-heading .consult-kicker { grid-column:1/-1; }
.starting-heading > p:last-child { max-width:510px;margin:0 0 4px;color:var(--muted);font-size:var(--type-body);line-height:var(--leading-body); }
.scenario-paper { display:grid;grid-template-columns:minmax(245px,.7fr) minmax(0,1.3fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--blue) 5%,var(--panel)); }
.scenario-choices { display:flex;flex-direction:column;padding:14px 0;border-right:1px solid var(--line); }
.scenario-button { position:relative;display:grid;grid-template-columns:38px minmax(0,1fr);gap:0 11px;align-items:start;width:100%;padding:17px 20px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);text-align:left;cursor:pointer; }
.scenario-button:last-child { border-bottom:0; }
.scenario-button > span { grid-row:1/3;color:var(--muted);font:var(--type-micro)/1.7 var(--mono); }
.scenario-button b { font-size:var(--type-control);line-height:var(--leading-control);font-weight:620; }
.scenario-button i { margin-top:4px;color:var(--muted);font-size:var(--type-support);line-height:var(--leading-support);font-style:normal; }
.scenario-button::before { position:absolute;inset:0 auto 0 0;width:3px;background:transparent;content:""; }
.scenario-button:hover { background:color-mix(in srgb,var(--orange) 6%,transparent); }
.scenario-button.is-active { background:color-mix(in srgb,var(--orange) 9%,transparent); }
.scenario-button.is-active::before { background:var(--orange); }
.scenario-button.is-active > span { color:var(--orange-text); }
.scenario-results { min-width:0;padding:clamp(22px,4vw,48px) clamp(22px,5vw,64px) 18px; }
.scenario-result[hidden] { display:none; }
.result-index { margin:0;color:var(--orange-text);font:var(--type-micro)/1.5 var(--mono);letter-spacing:.06em; }
.scenario-result h3 { max-width:640px;margin:12px 0 22px;font-family:var(--display);font-size:clamp(1.35rem,2.6vw,2rem);font-weight:620;line-height:1.35; }
.result-fields { display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,4vw,48px); }
.result-fields > div { min-width:0;padding-top:12px;border-top:1px solid var(--line); }
.result-fields b { color:var(--orange-text);font-size:var(--type-control);line-height:var(--leading-control);font-weight:620; }
.result-fields p { margin:7px 0 0;color:var(--muted);font-size:var(--type-compact);line-height:var(--leading-compact); }
.scenario-disclaimer { margin:22px 0 0;padding-top:12px;border-top:1px solid var(--line);color:var(--muted);font-size:var(--type-support);line-height:var(--leading-support); }

.memo-section { padding:clamp(26px,5vw,62px) 0 clamp(72px,9vw,120px);border-top:1px solid var(--line); }
.memo-heading { display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);gap:14px clamp(36px,8vw,116px);align-items:end;margin-bottom:35px; }
.memo-heading .consult-kicker { grid-column:1/-1; }
.memo-heading > p:last-child { max-width:470px;margin:0 0 4px;color:var(--muted);font-size:var(--type-body);line-height:var(--leading-body); }
.memo-layout { display:grid;grid-template-columns:minmax(0,1.3fr) minmax(235px,.56fr);gap:clamp(35px,7vw,100px);align-items:start; }
.memo-copy { border-top:1px solid var(--line); }
.memo-entry { display:grid;grid-template-columns:42px minmax(0,1fr) 122px;gap:17px;align-items:start;padding:22px 0;border-bottom:1px solid var(--line); }
.memo-no { color:var(--orange-text);font:var(--type-compact)/1.55 var(--mono); }
.memo-entry h3 { margin:0;font-size:1.2rem;line-height:1.45; }
.memo-entry p { margin:7px 0 0;color:var(--muted);font-size:var(--type-compact);line-height:var(--leading-compact); }
.memo-entry aside { padding-left:13px;border-left:1px solid var(--orange);color:var(--muted);font-size:var(--type-support);line-height:var(--leading-support); }
.memo-margin { padding:18px 20px 14px;border-top:2px solid var(--blue);background:color-mix(in srgb,var(--blue) 6%,var(--panel)); }
.margin-label { margin:0 0 7px;color:var(--muted);font:var(--type-micro)/1.5 var(--mono);letter-spacing:.05em; }
.memo-margin > div { padding:12px 0;border-top:1px solid var(--line); }
.memo-margin b { font-size:var(--type-control);line-height:var(--leading-control);font-weight:620; }
.memo-margin p { margin:5px 0 0;color:var(--muted);font-size:var(--type-support);line-height:var(--leading-support); }

.closing-section { padding:clamp(26px,4vw,48px) 0 clamp(54px,7vw,88px);border-top:1px solid var(--line); }
.closing-section > .consult-kicker { margin-bottom:16px; }
.closing-layout { display:flex;align-items:center;justify-content:space-between;gap:24px; }
.closing-layout h2 { margin:0;font-family:var(--display);font-size:clamp(1.8rem,4vw,2.25rem);font-weight:630;line-height:1.36;letter-spacing:-.015em; }
.closing-actions { display:flex;flex-wrap:wrap;align-items:center;gap:18px; }
.closing-note { max-width:690px;margin:12px 0 0;color:var(--muted);font-size:var(--type-support);line-height:var(--leading-support); }
footer { font-size:var(--type-support);line-height:var(--leading-support); }

@media(max-width:900px) {
  .opening-layout { grid-template-columns:minmax(0,1.15fr) minmax(270px,.8fr);gap:36px; }
  .scenario-paper { grid-template-columns:minmax(220px,.75fr) minmax(0,1.25fr); }
  .memo-layout { grid-template-columns:minmax(0,1.2fr) minmax(215px,.7fr);gap:32px; }
  .memo-entry { grid-template-columns:34px minmax(0,1fr) 100px;gap:12px; }
}
@media(max-width:700px) {
  .consult-opening { padding-bottom:74px; }.consult-breadcrumb { margin-bottom:24px;gap:8px; }
  .opening-layout { grid-template-columns:1fr;gap:28px;margin-top:14px; }.opening-main h1 { font-size:clamp(2rem,8.5vw,2.25rem);line-height:1.3; }.desktop-break { display:none; }.opening-thesis { margin-top:13px;font-size:1.2rem; }.opening-lead { margin-top:8px;font-size:var(--type-body); }.opening-actions { gap:14px;margin-top:18px; }
  .issue-sheet { padding:15px 16px 14px; }.issue-line { grid-template-columns:30px minmax(0,1fr);padding:10px 0; }
  .cooperation-section { padding:27px 0 76px; }.section-heading,.starting-heading,.memo-heading { display:block;margin-bottom:24px; }.section-heading .consult-kicker,.starting-heading .consult-kicker,.memo-heading .consult-kicker { margin-bottom:12px; }.section-heading h2,.starting-heading h2,.memo-heading h2 { font-size:clamp(1.75rem,8vw,2.25rem); }.section-heading > p:last-child,.starting-heading > p:last-child,.memo-heading > p:last-child { margin:11px 0 0;font-size:var(--type-compact); }
  .cooperation-columns { grid-template-columns:1fr; }.cooperation-column { padding:20px 0 22px; }.cooperation-column + .cooperation-column { padding:22px 0 22px;border-left:0;border-top:1px solid var(--line); }.column-summary { min-height:0;margin:12px 0 14px; }.cooperation-column dl > div { grid-template-columns:85px minmax(0,1fr);gap:10px;padding:11px 0; }
  .starting-section { padding-bottom:76px; }.scenario-paper { grid-template-columns:1fr; }.scenario-choices { display:grid;grid-template-columns:1fr;border-right:0;border-bottom:1px solid var(--line);padding:0; }.scenario-button { grid-template-columns:31px minmax(0,1fr);padding:13px 15px;border-bottom:1px solid var(--line); }.scenario-button:last-child { border-bottom:0; }.scenario-button i { margin-top:3px; }.scenario-results { padding:20px 17px 16px; }.scenario-result h3 { margin:9px 0 17px;font-size:1.4rem; }.result-fields { grid-template-columns:1fr;gap:14px; }.result-fields > div { padding-top:10px; }.scenario-disclaimer { margin-top:17px; }
  .memo-section { padding:27px 0 67px; }.memo-layout { grid-template-columns:1fr;gap:26px; }.memo-entry { grid-template-columns:30px minmax(0,1fr);gap:9px 12px;padding:17px 0; }.memo-entry aside { grid-column:2;padding:0 0 0 10px;border-left:1px solid var(--orange); }.memo-entry h3 { font-size:1.15rem; }.memo-margin { padding:16px 17px 12px; }
  .closing-section { padding:25px 0 54px; }.closing-layout { display:block; }.closing-layout h2 { font-size:clamp(1.75rem,8vw,2.25rem); }.closing-actions { margin-top:18px;gap:14px; }.closing-actions .consult-cta { width:100%; }.closing-note { margin-top:13px; }
}
@media(max-width:360px) { .consult-kicker { overflow-wrap:anywhere; }.cooperation-column dl > div { grid-template-columns:76px minmax(0,1fr);gap:8px; }.scenario-button { padding-inline:12px; }.memo-entry { grid-template-columns:26px minmax(0,1fr); }.issue-sheet { padding-inline:13px; } }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important; } }
