/* Deployment: 2026-10-16. Existing visual identity is intentionally retained. */
[hidden]{display:none!important}
.jmb-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.jmb-detail-card{background:var(--white);border:1px solid var(--line);padding:28px}
.jmb-detail-card h3{color:var(--ink);font-size:1.1rem;margin:0 0 14px;line-height:1.4}
.jmb-detail-card p{color:var(--muted);line-height:1.75;margin:0}
.jmb-detail-card a,.jmb-area-links a,.jmb-related-inline a,.jmb-form-guidance a,.jmb-form-fallback a{color:var(--cyan-dark);text-decoration:underline;text-underline-offset:3px}
.jmb-related-inline{padding-block:24px}
.jmb-related-inline p{max-width:880px;margin:0;color:var(--muted);line-height:1.8}
.jmb-area-links{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;padding-block:28px;margin-bottom:24px;border-top:1px solid var(--line)}
.jmb-area-links strong{color:var(--ink);width:100%}
.jmb-privacy-control{padding:3px 0;background:none;border:0;color:inherit;font:inherit;text-decoration:underline;cursor:pointer;text-underline-offset:3px}
.jmb-privacy-control:focus-visible{outline:2px solid var(--cyan);outline-offset:5px}
.jmb-honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.jmb-form-guidance{font-size:.82rem!important;line-height:1.6!important;margin-top:18px!important}
.jmb-optional{font-weight:400;color:var(--muted)}
.jmb-form-status{margin-top:20px;padding:16px 18px;border-left:4px solid var(--cyan-dark);background:#edf9fc;color:var(--ink);font-size:.93rem;line-height:1.65;overflow-wrap:anywhere}
.jmb-form-status[data-status=error],.jmb-form-status[data-status=warning]{background:#fff5e6;border-color:#9a4b00;color:#703800}
.jmb-form-status:focus{outline:2px solid var(--cyan-dark);outline-offset:3px}
.inquiry-form button[disabled]{opacity:.7;cursor:wait}
.inquiry-form[data-complete] button[disabled]{cursor:default}
.inquiry-form input[readonly],.inquiry-form textarea[readonly]{background:var(--paper);color:var(--muted)}
.jmb-form-fallback{padding:16px;background:var(--paper);color:var(--ink)}
@media(max-width:850px){.jmb-detail-grid{grid-template-columns:1fr}.jmb-detail-card{padding:24px}.jmb-area-links{gap:14px 22px}}
@media(max-width:480px){.form-grid{grid-template-columns:1fr}.form-grid .form-full{grid-column:1}.form-submit-row{align-items:stretch;flex-direction:column;gap:12px}.inquiry-form .button{width:100%}.jmb-area-links a{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* The inquiry cards have a dark surface: field labels must not inherit dark ink. */
.contact-form-card .form-grid label{color:#eef4f8}
.contact-form-card .jmb-optional,.contact-form-card .form-submit-row p,.contact-form-card .jmb-form-guidance{color:#c9d7df}
.contact-form-card .jmb-form-guidance a,.contact-form-card .jmb-form-fallback a{color:var(--cyan)}
.contact-form-card .jmb-form-fallback{background:var(--ink-3);color:#eef4f8}
@media(max-width:360px){.page-hero h1{font-size:2.35rem;overflow-wrap:anywhere}.page-hero-grid>*{min-width:0}}
@media(max-width:600px){.industry-check-list{grid-template-columns:minmax(0,1fr)}.industry-check-list li{min-width:0}}
@media(max-width:360px){.case-study-hero-grid>*{min-width:0}.case-study-hero h1{font-size:2.35rem;overflow-wrap:anywhere}}

/* Release layout refinements. Shared visual language remains unchanged. */
.detail-card { min-height: 0; display:flex; flex-direction:column; gap:0; }
.detail-card .text-link { margin-top:auto; padding-top:18px; }
.jmb-related { display:flex; flex-wrap:wrap; gap:18px 32px; }
.jmb-work-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.jmb-work-photo { margin:0; min-width:0; }
.jmb-work-photo img { width:100%; height:360px; object-fit:cover; display:block; border:1px solid var(--line); }
.jmb-work-photo figcaption { font-size:14px; line-height:1.6; color:var(--muted); padding-top:12px; }
.jmb-reading { max-width:780px; }
.jmb-reading h2 { margin:36px 0 16px; font-size:clamp(24px,3.5vw,36px); line-height:1.2; }
.jmb-reading h3 { margin:28px 0 12px; }
.jmb-reading p { margin-bottom:20px; line-height:1.8; }
.jmb-related .text-link { font-size:17px; }
.jmb-platform-list { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.jmb-platform-list a { padding:20px; background:var(--white); border:1px solid var(--line); font-weight:650; color:var(--text); text-decoration:none; }
.jmb-platform-list a:hover { border-color:var(--cyan-dark); }
.jmb-platform-list a span { display:block; font-size:13px; color:var(--muted); font-weight:400; margin-top:6px; }
.jmb-steps { counter-reset:project; display:grid; gap:0; }
.jmb-step { display:grid; grid-template-columns:64px 1fr; gap:24px; border-top:1px solid var(--line); padding:28px 0; }
.jmb-step::before { counter-increment:project; content:counter(project,decimal-leading-zero); font-size:26px; font-weight:700; color:var(--cyan-dark); }
.jmb-step h3 { margin-bottom:12px; }
.jmb-step p { margin:0; max-width:850px; }
.jmb-founder-lead { font-size:clamp(20px,2.2vw,25px); }
.jmb-author { color:var(--muted); font-size:15px; padding-top:18px; }
.jmb-fact-strip { display:flex; flex-wrap:wrap; justify-content:space-between; gap:22px; padding:26px 0; }
.jmb-fact-strip p { margin:0; font-size:16px; }
.jmb-fact-strip strong { color:var(--text); }
.hero h1 { font-size:clamp(40px,4.5vw,64px); line-height:1.06; }
.hero-grid { min-height:650px; }
.hero-lede { max-width:630px; }
.hero-media .hero-stamp { bottom:35px; }
.hero-note { line-height:1.6; }
.section-dark .detail-card { background:var(--ink-2); border-color:#294057; }
.section-dark .detail-card h3 { color:var(--white); }
.section-dark .text-link { color:var(--cyan); }
.button-dark { background:var(--ink); color:var(--white); }
.button-dark:hover { background:var(--ink-3); color:var(--white); }
.footer-grid { gap:32px; }
.footer-contact address { font-style:normal; }
.footer-contact .text-link { word-break:normal; }
.experience-disclosure { max-width:880px; font-size:14px; line-height:1.7; color:var(--muted); margin-top:28px; }
.jmb-notice { padding:20px 24px; border-left:3px solid var(--cyan-dark); background:var(--paper); margin:24px 0; }
.page-hero h1 { font-size:clamp(34px,4.9vw,62px); }
.page-hero-grid { align-items:center; }
.site-footer a { overflow-wrap:anywhere; }
:target { scroll-margin-top:120px; }
@media(max-width:1000px) { .jmb-platform-list { grid-template-columns:repeat(2,minmax(0,1fr)); } .jmb-work-grid { grid-template-columns:1fr 1fr; } }
@media(max-width:700px) { .jmb-work-grid { grid-template-columns:1fr; } .jmb-work-photo img { height:auto; max-height:450px; object-fit:cover; } .jmb-step { grid-template-columns:40px 1fr; gap:16px; } .hero-grid { min-height:auto; } .jmb-platform-list a { padding:16px; } }
@media(max-width:380px) { .jmb-platform-list { grid-template-columns:1fr; } }

.jmb-two-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; } @media(max-width:700px){.jmb-two-grid {grid-template-columns:1fr;}}
