/* Tokyo edition. Common identity and controls sit on a warm paper/evergreen palette. */
:root {
  --pine:#103c34; --forest:#175647; --ink:#173c35; --navy:var(--pine);
  --deep:#0b322b; --blue:#1b6151; --muted:#516961; --paper:#f6f4ec;
  --gold:#f0ce76; --line:#c8d1c4; --max:1180px;
  --font-number:Arial,"Noto Sans",sans-serif;
}
* {box-sizing:border-box}
html {scroll-behavior:smooth;scroll-padding-top:83px}
body {margin:0;background:var(--paper);color:var(--ink);font:16px/1.75 "Hiragino Kaku Gothic ProN","Yu Gothic","Noto Sans CJK JP",Meiryo,sans-serif;-webkit-text-size-adjust:100%}
a {color:inherit;text-decoration:none} button,input,select,textarea {font:inherit}
a,button,summary {touch-action:manipulation}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible {outline:3px solid #b57e23;outline-offset:3px}
img {display:block;max-width:100%;height:auto} figure,dl,dd,p,h1,h2,h3,h4,h5,ol,ul {margin:0}
[hidden] {display:none!important}
.wrap {width:min(var(--max),calc(100% - 88px));margin-inline:auto}
.site-header {position:sticky;top:0;z-index:9;background:#fdfcf7;border-bottom:1px solid #ccd3c8}
.header-inner {display:flex;align-items:center;min-height:70px;justify-content:space-between}
.tk-brand {display:inline-flex;align-items:center;gap:17px}
.site-header .brand-img {width:136px;height:45px;object-fit:contain}
.edition {border-left:1px solid var(--line);padding-left:16px;letter-spacing:.1em;font-size:12px;font-weight:700}
.header-icon,.chapter-menu>summary,.chapter-menu-panel a {color:var(--pine)}
.header-actions {gap:7px}
.header-icon:hover,.chapter-menu-panel a:hover {background:#eef2e9}
.tk-cover {isolation:isolate;position:relative;overflow:hidden;background:var(--pine);color:white}
.tk-cover::before {content:"";position:absolute;inset:0 0 0 54%;background:#204c43;z-index:-1}
.tk-broadsheet {position:relative;display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1.28fr);align-items:center;max-width:1580px;margin:auto;padding:40px clamp(24px,4vw,72px) 40px max(44px,calc((100% - 1180px)/2));gap:clamp(30px,4vw,72px)}
.tk-copy {position:relative;padding:8px 0}
.tk-locale {display:flex;align-items:center;gap:13px;font-size:clamp(12px,1.05vw,15px);font-weight:650;color:#eef1e7}
.tk-locale span {font:600 12px/1 Arial,sans-serif;letter-spacing:.2em;color:var(--gold)}
.tk-locale b {width:28px;height:1px;background:#d8bb72}
.tk-copy h1 {font-size:clamp(51px,5.5vw,87px);font-weight:800;line-height:1.17;letter-spacing:-.06em;margin:22px 0;color:#fffaf0}
.tk-copy h1 em {color:var(--gold);font-style:normal}
.tk-lede {font-size:clamp(13px,1.13vw,17px);line-height:1.9;font-weight:500;color:#edf1e9;letter-spacing:.015em}
.mobile-break {display:none}
.tk-primary,.tk-secondary {display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:49px;padding:10px 19px;color:#183c34;background:var(--gold);font-size:14px;font-weight:750;border:1px solid transparent}
.tk-primary {margin-top:23px}
.tk-primary span,.tk-secondary b {font:600 21px/1 Arial}
.tk-primary:hover,.tk-secondary:hover {background:#ffe099}
.tk-image {position:relative;align-self:stretch;min-height:clamp(335px,29vw,450px);max-height:560px;overflow:hidden;background:#2f4c43;clip-path:polygon(0 0,100% 0,100% 100%,29px 100%,0 calc(100% - 29px))}
.tk-image .field-media,.tk-image .field-frame,.tk-image .field-frame img {position:absolute;inset:0;width:100%;height:100%}
.tk-image .field-frame img {object-fit:cover;object-position:52% 42%}
.tk-image .field-frame:nth-child(2) img {object-position:78% 28%}
.tk-image .field-frame {opacity:0}
.tk-image .field-frame.is-shown {opacity:1;z-index:2;transition:opacity 1.15s ease}
.tk-image .field-frame.is-previous {opacity:1;z-index:1}
.tk-image::after {content:"";position:absolute;pointer-events:none;inset:50% 0 0;background:linear-gradient(transparent,#102720ae);z-index:2}
.tk-image figcaption {position:absolute;z-index:3;bottom:17px;left:29px;right:56px;font-size:13px;letter-spacing:.05em;font-weight:650;color:#fff}
.tk-image figcaption small {display:block;color:#edf1e9;font-size:10px;font-weight:500}
.field-playback {position:absolute;z-index:4;right:16px;bottom:16px;border:1px solid #ffffff80;background:#163a32ae;color:white;border-radius:50%;width:40px;height:40px;cursor:pointer;font:700 17px/1 Arial}
.field-playback .play-mark,.field-playback[data-paused="true"] .pause-mark {display:none}
.field-playback[data-paused="true"] .play-mark {display:inline}
.tk-cover::after {content:"";display:block;background:var(--gold);width:clamp(70px,10vw,155px);height:4px;position:absolute;bottom:0;left:max(44px,calc((100% - 1180px)/2))}
.hero-shortcuts {background:#fffdf6;border-bottom:1px solid var(--line)}
.shortcut-inner {width:min(var(--max),calc(100% - 88px));margin:auto}
.hero-shortcuts a {color:var(--pine);font-size:15px;min-height:65px}
.hero-shortcuts a:hover {background:#ecefe5}
.hero-shortcuts a::after {content:"↓";font-size:16px;font-weight:400;margin-left:8px}
.hero-shortcuts a+a {border-left-color:var(--line)}
.chapter-section {padding-bottom:clamp(48px,5vw,80px);scroll-margin-top:0}
.chapter-section>.chapter-bar {background:transparent;color:var(--pine);padding-top:clamp(40px,4.5vw,65px)}
.chapter-bar .chapter-title {padding:0 0 14px;border-bottom:1px solid var(--line);color:var(--pine);font-size:clamp(18px,1.6vw,25px);letter-spacing:.03em;line-height:1.4}
.chapter-number {font:600 13px/1 var(--font-number);letter-spacing:.08em;color:var(--forest)}
.chapter-slash {font-size:16px;color:var(--forest)}
.chapter-bar+.wrap,#subsidy .chapter-bar+.wrap {padding-top:clamp(24px,3vw,40px)}
.chapter-section .chapter-lead,.tk-section-intro h3 {font-size:clamp(27px,2.8vw,44px);font-weight:750;line-height:1.42;letter-spacing:-.03em}
.section-head,.tk-section-intro {display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:28px}
.section-head>p,.tk-section-intro>p {max-width:460px;font-size:15px;line-height:1.8}
#strengths {background:#f6f4ec}
#strengths .chapter-lead,.scope-comparison h3 {color:var(--pine)}
#strengths .strength-intro {grid-template-columns:minmax(0,1fr) auto;align-items:center}
.strength-review {color:var(--pine);border-color:var(--line)}
.strength-review-count,.strength-review-count small {color:var(--muted)}
.strength-review-stars {fill:#b67a16}
.strength-review-source img {max-height:40px}
#strengths .strength-facts {display:grid;grid-template-columns:1.05fr 1.1fr 1.1fr;border-block:1px solid var(--line);margin-top:27px}
.strength-facts>div {padding:20px clamp(12px,2vw,27px);align-self:center}
.strength-facts>div+div {border-left:1px solid var(--line)}
.strength-facts>div:first-child {padding-left:0}
.strength-facts p,.strength-intro-copy p {font-size:14px;color:var(--muted)}
.strength-record>span {display:block;font-size:12px}
.strength-record strong {font:650 clamp(36px,4vw,58px)/1.2 var(--font-number);color:var(--forest)}
.strength-record small {font:650 15px/1.3 sans-serif;margin-left:5px}
.scope-comparison {margin-top:34px}
.scope-key,.scope-key-icon,.scope-comparison tbody th,.scope-comparison table,.scope-comparison>p {color:var(--ink)}
.scope-comparison thead th {background:#e4e8dc;color:var(--ink)}
.scope-comparison thead th:nth-child(2) {background:var(--forest);color:white}
.scope-comparison tbody td:nth-child(2) {background:#e2ecdd;color:var(--pine);border-color:#bbcbbb}
.scope-comparison td:nth-child(2) .scope-symbol {color:var(--forest)}
.scope-comparison td,.scope-comparison th {border-bottom-color:var(--line)}
.maker-line {display:flex;align-items:center;flex-wrap:wrap;gap:16px 28px;border-top:1px solid var(--line);padding-top:20px}
.maker-line>span,.maker-line p {font-size:13px}
.maker-logos {display:flex;gap:18px;flex-wrap:wrap;align-items:center}
.maker-logos img {width:90px;height:28px;object-fit:contain}
#trust,#simulation {background:#fffefa}
.works-featured {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.works-featured article,.works-grid article {min-width:0}
.work-cover {min-height:150px;aspect-ratio:2.05;border-radius:0!important;margin-bottom:13px;box-shadow:none}
.work-cover>span {font-size:11px}
.work-cover>b {font:650 44px/1.2 var(--font-number);letter-spacing:-.05em}
.case-photo.work-cover {background:#dce7d9;color:#234a3c}
.case-photo.work-cover-welfare {background:#e9dfc7;color:#5a4730}
.case-photo.work-cover-factory,.case-photo.work-cover-office {background:#d5e2df;color:#294c46}
.work-cover figcaption {background:#214a3e!important}
.works-featured>article>span,.works-grid>article>span {font-size:11px;color:var(--muted)}
.clinic-examples h3 {font-size:21px;line-height:1.4;margin:6px 0 11px;color:var(--pine)}
.clinic-count {display:flex;align-items:center;gap:15px;border-block:1px solid var(--line);padding:10px 0}
.clinic-count>span,.clinic-subsidy {font-size:12px}
.clinic-count strong {font:700 37px/1.1 var(--font-number);color:var(--forest)}
.clinic-count small {font-size:14px;margin-left:3px}
.clinic-subsidy {display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:5px 0}
.works-controls {display:none}
.works-more {margin-top:25px;text-align:right}
.works-open,.works-filters button[aria-pressed=true] {background:var(--forest);border-color:var(--forest);color:#fff}
.works-open {font:650 14px/1.6 inherit;border:0;border-radius:0;padding:12px 18px;cursor:pointer}
.works-dialog {margin:auto;background:#fffefa}
.works-dialog::backdrop,dialog::backdrop {background:#102e26ab}
.works-dialog-header {background:var(--pine)}
.works-dialog-header h2 {color:white}
.works-dialog .eyebrow {color:var(--gold)}
#subsidy {background:#e8ebdf}
.tk-section-intro small {display:inline-block;margin-top:7px;font-size:12px;color:var(--muted)}
.metro-programme {display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:0 40px;background:var(--pine);color:#f8f7eb;padding:clamp(23px,3.2vw,45px);margin-top:25px}
.area-label {margin-bottom:12px;color:var(--gold);font-size:13px;font-weight:700;letter-spacing:.06em}
.metro-summary h4 {font-size:clamp(22px,2.2vw,32px);line-height:1.5;letter-spacing:-.03em;margin-bottom:16px}
.metro-summary>p:not(.area-label) {max-width:40em;font-size:14px;color:#e2e9de}
.source-pair {display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:9px 16px;font-size:13px;font-weight:650}
.source-pair a {padding:6px 0;text-underline-offset:4px;text-decoration:underline;text-decoration-color:#8ca391}
.source-pair a:hover {text-decoration-thickness:2px}
.metro-summary .source-pair {margin-top:18px}
.metro-options {padding-left:32px;border-left:1px solid #94ab935c}
.metro-options>div+div {border-top:1px solid #92ab954d;margin-top:11px;padding-top:11px}
.metro-options>div>span {font-size:13px;color:#e7eade}
.metro-options strong {display:flex;align-items:baseline;gap:15px;color:var(--gold);font:650 clamp(31px,3.3vw,48px)/1.15 var(--font-number);letter-spacing:-.055em}
.metro-options small {font:650 clamp(14px,1.35vw,19px)/1.5 sans-serif;letter-spacing:.02em;color:#f5f4e9}
.metro-options p {font-size:12px;color:#d6e0d3}
.metro-dates {grid-column:1/-1;display:grid;grid-template-columns:auto minmax(0,.92fr) minmax(0,1fr);gap:14px 26px;border-top:1px solid #9ab59e60;margin-top:24px;padding-top:19px;align-items:start;font-size:13px}
.metro-dates b {color:var(--gold)}
.metro-details {grid-column:1/-1;border-top:1px solid #9ab59e50;margin-top:15px;padding-top:9px;font-size:13px}
summary {cursor:pointer}
.metro-details summary,.ward details summary,.tax-note summary {font-weight:650;padding-block:7px}
.metro-details p,.ward details p,.tax-note p {margin:4px 0 9px}
.ward-title {display:flex;align-items:baseline;justify-content:space-between;margin:33px 0 14px;gap:12px}
.ward-title h4,.cashflow h4 {font-size:clamp(20px,2vw,28px);line-height:1.4}
.ward-title span,.tk-elig-note {font-size:12px;color:var(--muted)}
.ward-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ward {background:#fffef8;border-top:3px solid #46765c;padding:21px 20px 12px;display:flex;flex-direction:column;min-width:0}
.ward-head {display:flex;gap:10px;flex-wrap:wrap;justify-content:space-between;align-items:center}
.ward-head h5 {font-size:25px;line-height:1.25}
.ward-head span {font-weight:650;font-size:11px;color:#355a48;border:1px solid #b9c6b3;padding:2px 6px}
.ward-program {font-size:12px;margin-top:11px;color:#506358}
.ward-rate {display:flex;align-items:baseline;gap:12px;border-bottom:1px solid var(--line);padding-bottom:9px;margin:1px 0 13px}
.ward-rate>b {font:650 38px/1.12 var(--font-number);letter-spacing:-.06em;color:var(--forest)}
.ward-rate>span {font-size:12px}.ward-rate strong {font:700 21px/1 var(--font-number)}
.ward-desc,.ward-deadline,.ward details,.cashflow p,.tax-note {font-size:14px}
.ward-deadline {color:var(--muted);margin:7px 0 9px}
.ward details {margin-top:auto;border-block:1px solid var(--line)}
.ward .source-pair {font-size:12px;margin-top:6px}
.tk-elig-note {margin-top:12px}
.cashflow {display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:25px;border-top:1px solid var(--line);padding-top:20px}
.cashflow p {max-width:630px;margin-top:6px}
.tk-secondary {background:transparent;border-color:#8ca38e;white-space:nowrap}
.tax-note {margin-top:13px;border-top:1px solid var(--line)}
.sim-shell {display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:18px}
.sim-standard-column {align-content:start}
.sim-form,.sim-result {padding:clamp(19px,2.1vw,29px);border:1px solid var(--line);background:#f8f7ef}
.sim-series {font-size:16px;font-weight:700;margin-bottom:16px}
.sim-series small,.hint {font-size:12px;line-height:1.6;color:var(--muted)}
.select-grid,.contact-fields {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 13px}
.field,.contact-fields>div {min-width:0}
label {display:block;font-size:13px;font-weight:700;margin-bottom:4px}
input,select,textarea {color:var(--ink);border:1px solid #adbcae;border-radius:3px;background:white;width:100%;max-width:100%;min-height:44px;padding:8px 10px;font-size:15px}
input[type=file] {font-size:13px;padding:7px}
select {text-overflow:ellipsis}
.hint {margin-top:4px}
.btn {display:inline-flex;align-items:center;gap:24px;min-height:46px;margin-top:17px;background:var(--forest);color:white;border:0;padding:10px 19px;font-weight:700;font-size:14px;cursor:pointer}
.error {font-size:12px;margin-top:5px;color:#325345}
.sim-standard-result {background:#e7ecdf;color:var(--pine)}
.sim-shell .sim-standard-result .sim-panel-title {color:var(--pine)}
.result-label,.sim-extra-label,.result-note {font-size:13px}
.result-total {font:680 clamp(30px,3vw,44px)/1.2 var(--font-number);letter-spacing:-.035em;margin:5px 0}
.sim-extra-label {margin-bottom:13px}
.result-line {display:flex;align-items:baseline;justify-content:space-between;gap:9px;border-top:1px solid #bbc8b7;padding:5px 0;font-size:13px}
.result-note {margin-top:8px;color:var(--muted)}
.sim-result.grant-estimate {background:var(--pine);color:white}
.grant-scenario {border-radius:1px;background:#fafaf3;color:var(--ink)}
.grant-scenario dl>div:last-child dd {color:var(--forest)}
.grant-scenario dt,.grant-scenario p {color:var(--muted);font-size:12px}
.grant-assumptions,.grant-basis,.sim-grant-note,.grant-sources,.grant-basis small {color:#dce8d9;font-size:12px}
.sim-shell .sim-consult-link {border-color:var(--forest);color:var(--pine);font-weight:700}
.sim-conditions .sim-cost-details {border-color:var(--line)}
.sim-cost-details>summary {color:var(--pine)}
.sim-cost-content ul {padding-left:21px}
.sim-note {margin-top:12px;font-size:12px;color:var(--muted)}
#flow {background:#f2f1e7}
#flow .flow-grid {--flow-accent:#6a896e;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 32px}
#flow .flow-step {display:grid;grid-template-columns:64px 1fr;gap:18px;align-items:start;border-top:1px solid var(--line);padding-top:14px}
#flow .flow-step::after {display:none}
#flow .flow-pictogram {width:58px;height:58px;color:var(--pine)}
#flow .flow-step-number,.flow-guide button,.flow-faq summary::after {color:var(--forest)}
#flow .flow-copy p,.flow-faq details p {font-size:14px}
.flow-faq details {border-color:var(--line)}
#company {background:#fffefa}
.company-panel {display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,6vw,80px)}
.company-facts {grid-column:1;grid-row:1;align-self:start}
.company-panel>div {grid-column:2;grid-row:1;min-width:0}
.company-official-logo {width:110px;height:66px;object-fit:contain;margin-bottom:8px}
.company-panel .team-photo {margin-top:16px}
.draft-photo img {width:100%;height:clamp(180px,20vw,265px);object-fit:cover;object-position:50% 42%}
.draft-photo figcaption {font-size:10px;color:var(--muted);margin-top:5px}
.company-facts>div {display:grid;grid-template-columns:84px minmax(0,1fr);gap:12px;border-top:1px solid var(--line);padding:10px 0;font-size:14px}
.company-facts dt {font-size:12px;color:var(--muted)}
.company-facts a,.flow-guide button {text-decoration:underline;text-underline-offset:3px}
.company-credentials {margin-top:17px}
.company-credentials h3 {font-size:18px}
.company-credentials ul {padding-left:20px;margin:8px 0;font-size:14px}
.company-credentials details {font-size:13px}
#contact {background:var(--pine);color:#f9f8f0}
#contact .chapter-title,#contact .chapter-number,#contact .chapter-slash {color:#f7f4e6;border-color:#6f8c75}
.contact-layout {display:grid;grid-template-columns:minmax(0,1.11fr) minmax(0,.89fr);gap:clamp(24px,4vw,62px);align-items:start}
.contact-intro {grid-column:2;grid-row:1}
.contact-free-note,.contact-lead,.response-caveat,.contact-intro figcaption {font-size:14px;color:#e4e9db}
.contact-lead {margin:10px 0}
.contact-free-note {font-size:13px}
.contact-call {display:flex;align-items:center;gap:12px;margin:17px 0;padding:12px 0;border-block:1px solid #68856e}
.contact-call svg {width:26px;height:26px}
.contact-call>span {display:grid}
.contact-call strong {font:650 27px/1.35 var(--font-number)}
.contact-call small,.call-label {font-size:12px}
.response-guide {display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}
.response-guide dt {font-size:12px;color:#dce5d5}
.response-guide dd {font-size:18px;font-weight:700}
.response-caveat {font-size:12px;margin:9px 0}
.contact-photo {margin-top:16px}
.contact-photo figcaption {font-size:10px}
.inquiry-form {grid-column:1;grid-row:1;background:#fffefa;color:var(--ink);padding:clamp(18px,2vw,32px);min-width:0}
.inquiry-form label span,.inquiry-form label small {font-size:10px;font-weight:500;color:var(--muted);margin-left:3px}
.message-field,.optional-contact {margin-top:14px}
.optional-contact {border-block:1px solid var(--line);font-size:13px}
.optional-contact summary {padding:10px 0;font-weight:650}
.optional-contact[open] {padding-bottom:14px}
.optional-contact .contact-fields {margin:10px 0}
.privacy-note,.local-note {font-size:12px;color:var(--muted);margin-top:10px}
dialog:not([open]) {display:none}
#preview-dialog {width:min(550px,calc(100% - 32px));border:0;margin:auto;padding:25px;color:var(--pine)}
#dialog-title {font-size:20px}
#dialog-body {white-space:pre-line;font-size:14px;margin-top:15px;overflow-wrap:anywhere}
.footer {padding:25px 0;background:#0d322b;color:#fff}
.footer .wrap {display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.wordmark {font:800 21px/1.1 var(--font-number);letter-spacing:-.05em}
.wordmark small {display:block;font:500 10px/1.5 sans-serif;letter-spacing:.02em}
.footer small,.footer a,.draft-bar {font-size:11px}
.draft-bar {text-align:center;padding:8px 16px;color:var(--muted)}
.mobile-cta {display:none}
@media(min-width:761px) and (max-width:1000px) {
  .tk-broadsheet {padding-left:36px;gap:24px;grid-template-columns:1fr 1.05fr}
  .ward-grid {gap:9px}
  .ward {padding:18px 13px 10px}
  .ward-rate {gap:6px}
  .ward-rate>b {font-size:31px}
}
@media(max-width:760px) {
  html {scroll-padding-top:70px}
  body {font-size:15px}
  .wrap,.shortcut-inner {width:calc(100% - 36px)}
  .header-inner {min-height:58px}
  .site-header .brand-img {width:103px;height:37px}
  .tk-brand {gap:8px}
  .edition {padding-left:9px;font-size:11px}
  .header-actions {gap:0}
  .header-icon {width:37px}
  .tk-broadsheet {display:flex;flex-direction:column;align-items:stretch;padding:23px 0 0;gap:19px}
  .tk-copy {padding:0 20px}
  .tk-copy h1 {font-size:clamp(45px,10.6vw,65px);line-height:1.12;letter-spacing:-.065em;margin:13px 0}
  .tk-locale {font-size:12px;gap:9px}
  .tk-locale span {font-size:10px}
  .tk-lede {font-size:13px;line-height:1.75}
  .mobile-break {display:block}
  .tk-primary {min-height:43px;font-size:13px;margin-top:14px;padding:8px 14px}
  .tk-cover::before {inset:46% 0 0 67%}
  .tk-cover::after {height:3px;left:20px}
  .tk-image {height:clamp(168px,40vw,255px);min-height:0;margin-left:20px;clip-path:polygon(14px 0,100% 0,100% 100%,0 100%,0 14px)}
  .tk-image figcaption {left:13px;bottom:9px;font-size:11px}
  .tk-image figcaption small {font-size:9px}
  .tk-image .field-frame img {object-position:50% 43%}
  .field-playback {bottom:9px;right:10px;width:35px;height:35px}
  .shortcut-inner {width:100%}
  .hero-shortcuts a {min-height:56px;flex-direction:row;font-size:12px;gap:6px}
  .hero-shortcuts a::after {margin-left:0;font-size:13px}
  .hero-shortcuts svg {width:16px;height:16px}
  .chapter-section {padding-bottom:37px}
  .chapter-section>.chapter-bar {padding-top:32px}
  .chapter-bar .chapter-title {padding-bottom:9px;font-size:17px;gap:9px}
  .chapter-number {font-size:12px}
  .chapter-bar+.wrap,#subsidy .chapter-bar+.wrap {padding-top:20px}
  .chapter-section .chapter-lead,.tk-section-intro h3 {font-size:clamp(23px,5.8vw,31px)}
  .section-head,.tk-section-intro {display:block;margin-bottom:18px}
  .section-head>p,.tk-section-intro>p {font-size:14px;margin-top:9px}
  #strengths .strength-intro {grid-template-columns:1fr;gap:16px}
  .strength-review {padding:0;border:0}
  #strengths .strength-facts {grid-template-columns:minmax(82px,.72fr) minmax(0,1.28fr);margin-top:20px}
  .strength-facts>div {padding:10px 0 10px 12px}
  .strength-record strong {font-size:32px}.strength-record small {font-size:12px;display:block}
  .strength-facts p {font-size:12px}
  .strength-facts b {font-size:13px}
  .scope-comparison h3 {font-size:21px}
  .scope-caption {font-size:11px}
  .maker-line {gap:10px 14px}
  .maker-logos {gap:8px 14px}
  .maker-logos img {width:59px;height:22px}
  .works-controls {display:flex}
  .works-featured .work-cover {min-height:120px}
  .clinic-examples.works-featured h3 {min-height:0;margin:6px 0 10px}
  .clinic-examples.works-grid .case-photo {min-height:0}
  .metro-programme {display:block;margin-top:16px;padding:18px}
  .metro-summary h4 {font-size:22px}
  .metro-options {padding:14px 0 0;margin-top:16px;border:0;border-top:1px solid #8eaa8e66}
  .metro-options>div+div {margin-top:9px;padding-top:9px}
  .metro-options strong {font-size:29px}
  .metro-dates {grid-template-columns:1fr;gap:6px;margin-top:15px}
  .ward-grid {grid-template-columns:1fr}
  .ward {padding:17px 16px 8px}
  .ward-program {min-height:0;margin-top:5px}
  .ward-rate {margin-top:9px}
  .cashflow {display:block}
  .cashflow a {margin-top:12px}
  .sim-shell,.sim-shell:has(> .grant-estimate[hidden]) {grid-template-columns:minmax(0,1fr);gap:13px}
  .sim-form,.sim-result {padding:16px}
  .select-grid {gap:10px}
  .field:nth-last-child(-n+2) {grid-column:1/-1}
  input,select,textarea {font-size:16px}
  #flow .flow-grid {grid-template-columns:1fr;gap:12px}
  #flow .flow-step {grid-template-columns:49px minmax(0,1fr);gap:12px;padding-top:11px}
  #flow .flow-pictogram {width:44px;height:44px}
  .company-panel,.contact-layout {display:flex;flex-direction:column;gap:16px}
  .company-panel>div,.company-panel>dl,.contact-layout>div,.contact-layout>form {width:100%}
  .company-panel .team-photo img,.contact-photo img {height:175px}
  .inquiry-form {padding:16px}
  .contact-fields {grid-template-columns:1fr}
  .footer .wrap {gap:12px}
  .draft-bar {padding-bottom:62px}
  .mobile-cta {position:fixed;bottom:0;left:0;right:0;z-index:6;display:flex;justify-content:center;background:var(--pine);color:#fff;box-shadow:0 -1px 5px #0002}
  .mobile-cta a {width:100%;text-align:center;font-size:14px;font-weight:700;padding:9px 0 calc(9px + env(safe-area-inset-bottom))}
}
@media(max-width:360px) {
  .wrap {width:calc(100% - 28px)}
  .select-grid {grid-template-columns:1fr}
  .scope-caption,.scope-comparison thead th {font-size:10px}
  .header-icon {width:34px}
}
@media(prefers-reduced-motion:reduce) {
  html {scroll-behavior:auto}
  .tk-image .field-frame {transition:none!important}
}
.edition {white-space:nowrap}
.maker-logos {padding:0;list-style:none}
@media(max-width:760px) {
  .clinic-examples.works-featured {margin-right:0;padding-right:9px}
  .tk-cover::before {inset:64% 0 0 67%}
}
