
:root{--ink:#152b40;--blue:#145bb3;--muted:#536879;--pale:#eef4f8;--line:#d6e1e8;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.85;background:#fff}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #ed9f38;outline-offset:5px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.5;letter-spacing:.02em}h1{font-size:clamp(34px,3.55vw,51px);font-weight:750;letter-spacing:-.035em}h2{font-size:32px}h3{font-size:21px}p{color:var(--muted)}.wrap{width:min(1160px,calc(100% - 80px));margin:auto}.header{background:rgba(255,255,255,.98);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.header .wrap{height:86px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{font-size:21px;font-weight:750;letter-spacing:-.04em;white-space:nowrap}.brand small{display:block;font-size:10px;font-weight:500;letter-spacing:.16em;line-height:1.4;color:var(--muted)}nav{display:flex;align-items:center;gap:24px;font-size:13px;font-weight:600}.nav-button{padding:11px 20px;background:var(--blue);color:white}.menu{display:none}.eyebrow{color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.15em;display:block;margin-bottom:20px}.hero{background:linear-gradient(110deg,#f5f8fb 0%,#fff 63%);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:52px;align-items:center;padding:70px 0 66px}.hero h1 span{color:var(--blue)}.lead{margin-top:27px;font-size:16px;line-height:2;max-width:550px}.actions{display:flex;align-items:center;gap:24px;margin-top:32px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;background:var(--blue);color:white;padding:15px 23px;font-size:14px;font-weight:650;border:1px solid var(--blue);cursor:pointer}.btn:hover{background:#0e4589}.text-link{font-size:14px;font-weight:600;border-bottom:1px solid #9bb1c2;padding:7px 0}.arrow{font-size:20px;font-weight:400}.note{font-size:12px;margin-top:16px;color:#5a6e7f}.hero-art{position:relative;padding:24px 20px 0;background:#eaf2f9;border:1px solid #dce7f0;min-width:0}.art-label{display:flex;justify-content:space-between;gap:8px;font-size:10px;font-weight:650;letter-spacing:.1em;color:#506a80}.hero-art .sphere{width:350px;margin:10px auto 0;mix-blend-mode:multiply}.art-caption{border-top:1px solid #cbdbe8;padding:18px 0 21px;font-size:13px;line-height:1.7}.art-caption b{display:block;font-size:15px;margin-bottom:4px}.art-caption span{color:var(--muted);font-size:11px}.art-num{font-size:11px;color:var(--blue)}.proof{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:white}.proof .wrap{display:grid;grid-template-columns:repeat(3,1fr);padding:22px 0;gap:28px}.proof strong{font-size:15px;display:block}.proof span{display:block;font-size:12px;color:var(--muted)}section.section{padding:85px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:36px}.section-head .eyebrow{margin-bottom:10px}.section-head p{font-size:14px;max-width:440px}.needs{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.need{border-top:2px solid var(--blue);padding-top:21px}.need .n{font-size:12px;color:var(--blue);display:block;margin-bottom:14px}.need p{font-size:14px;margin:16px 0}.need a{font-size:13px;font-weight:600}.case-section{background:#f3f6f8}.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.case{background:white;display:flex;flex-direction:column;border-bottom:2px solid #c9d8e3}.case-visual{height:200px;background:#e6edf3;display:flex;align-items:center;justify-content:center;padding:14px;overflow:hidden}.case-visual img{width:100%;max-height:172px;object-fit:contain}.case-body{padding:23px 24px 27px;flex:1}.tag{font-size:10px;color:var(--blue);font-weight:700;letter-spacing:.08em;margin-bottom:11px;display:block}.case h3{font-size:19px}.case p{font-size:13px;margin-top:15px;line-height:1.9}.case .outcome{color:var(--ink);padding-top:15px;border-top:1px solid var(--line);margin-top:17px}.case .text-link{display:inline-block;margin-top:18px;font-size:12px}.metric{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#153951;color:white;width:100%;height:100%;font-variant-numeric:tabular-nums}.metric small{font-size:11px;letter-spacing:.12em;color:#b6d2e4}.metric strong{font-size:40px;font-weight:550;letter-spacing:-.035em}.metric em{font-size:12px;font-style:normal;color:#c6deec}.delivery{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.delivery p{margin-top:22px;font-size:15px}.deliver-list{border-top:1px solid var(--line)}.deliver-item{display:flex;gap:22px;padding:22px 0;border-bottom:1px solid var(--line)}.deliver-item .n{font-size:13px;color:var(--blue)}.deliver-item b{font-size:17px}.deliver-item p{font-size:13px;margin-top:4px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:0 30px}.service{padding:22px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:15px}.service b{font-size:15px}.service small{display:block;color:var(--muted);font-size:12px;margin-top:6px}.soft{background:#f6f8fa}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.step{border-top:1px solid #aec1d1;padding-top:17px}.step span{font-size:11px;letter-spacing:.12em;color:var(--blue)}.step h3{font-size:17px;margin:12px 0}.step p{font-size:13px}.contact{background:#153951;color:white;padding:62px 0}.contact .wrap{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:64px}.contact .eyebrow{color:#b8d3ed;margin-bottom:12px}.contact h2{font-size:30px}.contact p{color:#d1dfe8;margin-top:17px;font-size:14px}.contact .btn{background:white;color:#153951;border-color:white;justify-content:center;width:100%}.contact .note{color:#c8d8e4;line-height:1.8}.footer{padding:30px 0}.footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px}.footer .brand{font-size:16px}.footer p{font-size:11px}.footer-links{display:flex;gap:22px;font-size:12px}.prototype{background:#edf2f6;padding:9px 15px;font-size:11px;text-align:center;color:#51687a}.breadcrumb{font-size:11px;color:var(--muted);padding:17px 0;border-bottom:1px solid var(--line)}.matlab-hero .hero-grid{padding-top:47px;gap:40px}.matlab-hero h1{font-size:clamp(32px,3.3vw,47px)}.matlab-art{background:#173e59;padding:25px;color:#fff}.matlab-art .art-label{color:#c0d4e4}.gui-frame{background:#f8fafc;margin:30px 0 25px;padding:12px;border:1px solid #7390a5}.gui-frame img{width:100%}.matlab-art .art-caption{border-color:#506d82}.matlab-art .art-caption span{color:#c0d4e4}.mini-output{display:flex;gap:8px;margin-bottom:25px}.mini-output span{border:1px solid #6b879a;font-size:11px;padding:4px 9px}.scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 50px}.scope{padding:26px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:40px 1fr;gap:15px}.scope .n{font-size:13px;color:var(--blue)}.scope h3{font-size:20px}.scope p{font-size:14px;margin-top:13px}.cost{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.cost p{font-size:14px;margin:14px 0}.cost .text-link{display:inline-block;margin-top:12px}details{border-top:1px solid var(--line);padding:20px 0}details:last-child{border-bottom:1px solid var(--line)}summary{font-size:16px;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:24px}summary::-webkit-details-marker{display:none}summary:after{content:'+';color:var(--blue);font-size:20px}details[open] summary:after{content:'−'}details p{font-size:14px;margin-top:15px;max-width:850px}dialog{width:min(560px,calc(100% - 32px));border:0;padding:35px;color:var(--ink);box-shadow:0 20px 100px #1235}dialog::backdrop{background:#102b40a8}dialog h2{font-size:24px}dialog p{font-size:14px;margin:20px 0}.dialog-close{display:block;margin:20px 0 0 auto;border:0;background:transparent;cursor:pointer;color:var(--blue)}.skip{position:absolute;left:10px;top:-100px;background:white;padding:10px;z-index:99}.skip:focus{top:10px}
@media(max-width:1000px){.wrap{width:calc(100% - 48px)}nav{gap:15px;font-size:12px}.brand{font-size:18px}.hero-grid{gap:28px}h1{font-size:38px}.delivery,.cost{gap:40px}.case-grid{gap:16px}.case-body{padding:20px}.contact .wrap{gap:30px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header .wrap{height:72px}.brand{font-size:17px}.brand small{font-size:8px}.menu{display:block;border:1px solid var(--line);background:white;font-size:12px;padding:9px 12px;cursor:pointer}nav{display:none;position:absolute;top:72px;left:0;right:0;background:white;padding:20px;box-shadow:0 8px 15px #1231;flex-direction:column;align-items:stretch}nav.open{display:flex}nav a{padding:10px}.hero-grid{grid-template-columns:1fr;gap:32px;padding:38px 0 36px}.eyebrow{font-size:10px;margin-bottom:16px}h1{font-size:35px;line-height:1.5}.lead{font-size:14px;margin-top:21px}.actions{gap:20px;margin-top:24px}.btn{font-size:13px;padding:14px 18px}.hero-art{padding:19px 18px 0}.hero-art .sphere{width:270px;margin-top:0}.art-caption{padding:14px 0}.proof .wrap{grid-template-columns:1fr;gap:15px;padding:22px 0}.proof .wrap>div{display:flex;justify-content:space-between;gap:15px;align-items:center}.proof strong{font-size:13px}.proof span{font-size:10px;text-align:right}.section-head{display:block;margin-bottom:28px}.section-head p{margin-top:15px}.section-head>.text-link{display:inline-block;margin-top:15px}h2{font-size:26px}section.section{padding:52px 0}.needs,.case-grid,.delivery,.services,.steps,.contact .wrap,.scope-grid,.cost{grid-template-columns:1fr;gap:25px}.need p{margin:12px 0}.need h3{font-size:20px}.case-visual{height:210px}.case-visual img{max-height:180px}.delivery{gap:30px}.services{gap:0}.steps{grid-template-columns:1fr 1fr;gap:24px}.contact{padding:42px 0}.contact h2{font-size:25px}.footer .wrap{align-items:start;flex-direction:column}.footer-links{flex-wrap:wrap}.matlab-hero .hero-grid{padding-top:32px}.matlab-hero h1{font-size:32px}.matlab-art{padding:22px}.scope-grid{gap:0}.scope{grid-template-columns:25px 1fr;gap:12px}.cost{gap:25px}summary{font-size:14px}.prototype{font-size:10px}.text-link{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

@media(min-width:1001px){.hero h1{font-size:clamp(34px,3.05vw,44px)}}

.mobile-break{display:none}@media(max-width:760px){.mobile-break{display:block}}
/* v2: public project showcase */
.hero-grid{grid-template-columns:.86fr 1.14fr;gap:40px;padding:40px 0}.hero-grid>div:first-child{min-width:0}.hero h1{font-size:clamp(30px,2.8vw,40px)}
.project-showcase{min-width:0;padding:16px;background:#eaf1f7;border:1px solid #d2dfe9;border-radius:4px}.showcase-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px;font-size:12px;font-weight:650}.showcase-top b{font-size:9px;letter-spacing:.12em;color:#587187;margin-left:8px}.showcase-controls{display:flex;align-items:center;gap:5px}.showcase-controls button{border:1px solid #bacbd9;background:#fff;color:#173c59;cursor:pointer;min-width:32px;min-height:32px;font-size:12px;padding:3px 8px}.slide-count{font-size:11px;font-variant-numeric:tabular-nums;margin-right:5px}.project-stage{background:#fff}.project-slide[hidden]{display:none}.project-slide:not([hidden]){animation:projectReveal .6s ease-out}.project-image{display:flex;align-items:center;justify-content:center;height:244px;padding:12px;background:#fff;overflow:hidden}.project-image img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.project-caption{padding:13px 16px 16px;border-top:1px solid #e1e9ef;min-height:142px}.project-tag{display:block;color:var(--blue);font-size:10px;letter-spacing:.08em}.project-caption h2{font-size:22px;margin:2px 0 3px}.project-caption h2 span{float:right;font-size:19px}.project-caption p{font-size:12px;line-height:1.75}.project-caption small{display:block;font-size:10px;color:#63788b;margin-top:5px}.project-thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:12px}.project-thumb{display:block;min-width:0;padding:4px;border:2px solid transparent;background:#fff;cursor:pointer;color:#40576a;text-align:center}.project-thumb img{height:42px;width:100%;object-fit:contain}.project-thumb span{display:block;font-size:9px;white-space:nowrap;margin-top:3px;line-height:1.6}.project-thumb[aria-pressed=true]{border-color:var(--blue);color:var(--blue);background:#f8fbff}.project-thumb:hover{border-color:#87afd1}@keyframes projectReveal{from{opacity:.25}to{opacity:1}}
@media(min-width:1001px){.hero .wrap{width:min(1240px,calc(100% - 80px))}.hero h1{font-size:clamp(30px,2.65vw,38px)}}
@media(max-width:1000px){.hero-grid{grid-template-columns:1fr;gap:32px}.project-showcase{width:100%;max-width:700px;margin:auto}.project-image{height:280px}}
@media(max-width:760px){.hero-grid{padding:34px 0}.hero h1{font-size:32px}.project-showcase{padding:10px}.showcase-top b{display:none}.project-image{height:210px}.project-caption{padding:12px;min-height:151px}.project-caption h2{font-size:21px}.project-thumbs{gap:5px}.project-thumb{padding:3px 1px}.project-thumb img{height:35px}.project-thumb span{font-size:8px;white-space:normal}.showcase-controls button{min-height:36px}.project-caption p{font-size:12px}}
@media(prefers-reduced-motion:reduce){.project-slide:not([hidden]){animation:none}}
@media(max-width:380px){.header .wrap{gap:8px}.brand{font-size:clamp(12px,4vw,15px)}.brand small{font-size:7px;letter-spacing:.08em}.menu{white-space:nowrap;flex-shrink:0;padding:8px}.hero h1{font-size:29px}.showcase-top{font-size:10px}.showcase-controls{gap:3px}.slide-count{font-size:10px;margin-right:0}.showcase-controls button{font-size:10px;padding:3px 6px}}
.decision{display:grid;grid-template-columns:1fr 1fr;gap:60px}.decision p{margin:20px 0}.case-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:32px}.case-cta p{font-size:14px}.secondary-service{padding:25px 0 50px}.inquiry{padding-top:50px;padding-bottom:70px}.inquiry-intro{max-width:800px}.preview-notice{padding:12px 16px;background:#fff4d9;border:1px solid #e6cf8d;font-size:12px;margin:24px 0;color:#6c521d}.inquiry-layout{display:grid;grid-template-columns:1.65fr 1fr;gap:60px;margin-top:36px}.inquiry label{display:block;font-size:15px;font-weight:650;margin:22px 0 8px}.inquiry label span{font-size:10px;color:#9e3c24;margin-left:8px}.inquiry label .optional{color:#617587}.inquiry input,.inquiry textarea{display:block;width:100%;border:1px solid #a7b9c9;background:#fff;padding:12px;font:inherit;font-size:14px;border-radius:2px;color:var(--ink)}.inquiry textarea{resize:vertical}.inquiry input:focus,.inquiry textarea:focus{outline:2px solid var(--blue);outline-offset:2px}.field-help{font-size:12px;margin:7px 0 12px}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.inquiry form>.btn{margin-top:30px}.inquiry-aside{padding:25px;background:#f0f5f9;align-self:start}.inquiry-aside h2{font-size:22px}.inquiry-aside h3{font-size:17px}.inquiry-aside ol{padding-left:22px}.inquiry-aside li{margin:24px 0}.inquiry-aside p{font-size:13px}.inquiry-aside hr{border:0;border-top:1px solid var(--line);margin:25px 0}#inquiry-confirm{margin-top:24px;padding:24px;background:#edf5fc}#inquiry-confirm h2{font-size:23px}#inquiry-confirm dd{white-space:pre-wrap;margin:0 0 14px;font-size:14px;overflow-wrap:anywhere}#inquiry-confirm dt{font-weight:650;font-size:12px}#edit-inquiry{background:none;border:0;cursor:pointer} @media(max-width:760px){.decision,.inquiry-layout,.field-pair{grid-template-columns:1fr;gap:22px}.case-cta{align-items:start;flex-direction:column}.inquiry{padding-top:30px}.inquiry h1{font-size:30px}}

.project-caption p.visitor-question { margin: 6px 0 4px; font-size: 15px; line-height: 1.5; font-weight: 600; color: #173149; }

.needs { grid-template-columns: repeat(2,minmax(0,1fr)); }
.hero-demo { margin: 10px 0; }
.profile { display:flex; align-items:center; gap:2rem; }
.portrait { background:#e5edf2; padding:2rem; color:#496375; text-align:center; }
.scheme-note { display:block; padding:2px 14px; font-size:10px; }
@media (max-width:700px) { .needs { grid-template-columns:1fr; } .profile {flex-wrap:wrap;} }


.clients {margin:48px 0 30px;padding-top:26px;border-top:1px solid #c3d4de;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 32px;}
.clients header {grid-column:1/-1;display:flex;align-items:baseline;}
.clients header>div {display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;}
.clients h3 {margin:0;font-size:24px;}
.clients header p {margin:0;color:#586c79;font-size:13px;}
.client-row h4 {margin:0 0 12px;color:#386882;font-size:13px;}
.client-row ul {margin:0;padding:0;list-style:none;display:grid;gap:9px;}
.client-row li {font-size:16px;line-height:1.6;color:#213848;}
.client-row li span {display:inline-block;margin-right:.35em;}
.clients>.text-link {grid-column:1/-1;justify-self:end;}
.customer-voice {margin:24px 0 0;padding:12px 20px;border-left:3px solid #26719e;}
.customer-voice blockquote {margin:0;font-size:clamp(16px,1.5vw,20px);line-height:1.8;}
.customer-voice figcaption {margin-top:8px;font-size:13px;}
.customer-voice a {margin-left:12px;}
.case[id],.clients {scroll-margin-top:95px;}
.need .text-link {display:inline-block;margin-top:10px;}

@media(max-width:700px){
 .clients {grid-template-columns:1fr;gap:20px;}
 .clients header>div {display:block;}
 .client-row {display:grid;grid-template-columns:4.2em minmax(0,1fr);align-items:baseline;}
 .client-row h4 {margin:0;}
 .client-row ul {gap:7px;}
 .client-row li {font-size:15px;}
}

.client-logos {margin:42px 0 28px;scroll-margin-top:100px;}
.client-logos header {display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.client-logos h3 {margin:0;font-size:24px;}
.client-logos header p {margin:3px 0;color:#506576;font-size:13px;}
.logo-toggle {font:inherit;font-size:13px;color:#26465f;border:1px solid #b9cad4;border-radius:4px;background:white;padding:6px 12px;cursor:pointer;}
.logo-window {overflow:hidden;background:white;}
.logo-track {display:flex;width:max-content;animation:clients-scroll 42s linear infinite;}
.logo-track ul {display:flex;align-items:center;list-style:none;margin:0;padding:0;}
.logo-track li {width:clamp(165px,19vw,250px);height:108px;display:grid;place-items:center;}
.logo-track img {display:block;width:auto;height:auto;max-width:76%;max-height:54px;}
.client-logos>.text-link {display:table;margin:10px 0 0 auto;}
.client-logos[data-paused] .logo-track {animation-play-state:paused;}
@keyframes clients-scroll {to {transform:translateX(-50%);}}
@media(prefers-reduced-motion:reduce){.client-logos:not([data-playing]) .logo-track {animation-play-state:paused;}}

.logo-lane {background:#fff;}
.client-logos header {margin-bottom:10px;}
.logo-lane .logo-track li {width:clamp(86px,8.4vw,115px);height:49px;}
.logo-lane img {width:auto;height:auto;max-width:83%;max-height:27px;}
@media(max-width:700px){
 .logo-lane .logo-track li {width:84px;height:39px;}
 .logo-lane img {max-height:22px;}
}

#mathworks-partner {scroll-margin-top:100px;}
.proof .mw-badge {display:block;width:136px;height:auto;margin:0 auto 6px;}
.proof .wrap>#mathworks-partner {display:grid;grid-template-columns:minmax(0,1fr);gap:1px;align-content:center;}
.proof #mathworks-partner .mw-badge {margin:0 0 5px;width:148px;}
.proof #mathworks-partner span {text-align:left;}

.home-intro h1 {font-size:clamp(42px,4.55vw,68px);line-height:1.15;letter-spacing:-.045em;margin-bottom:22px;}
.home-intro h1 .headline-unit {display:inline-block;color:inherit;}
.home-intro .headline-result {white-space:nowrap;}
.proof .wrap>#mathworks-partner {grid-template-columns:minmax(76px,32%) minmax(0,1fr);gap:12px;align-items:center;}
.proof #mathworks-partner .mw-badge {width:100%;margin:0;}
@media(max-width:700px){.home-intro h1 {font-size:clamp(34px,10.6vw,55px);}}

.project-stage {display:grid;grid-template-columns:minmax(0,1fr);}
.project-stage>.project-slide {grid-area:1 / 1;}
.project-stage>.project-slide[hidden] {display:block;visibility:hidden;pointer-events:none;}
.project-image video {width:100%;height:100%;object-fit:contain;}
.report-sample {margin:12px 0 0;}
.report-sample a {display:block;font-size:13px;color:#245574;}
.report-tiles {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-bottom:6px;}
.report-tiles img {display:block;width:100%;height:auto;border:1px solid #d0dce5;}

.report-sample .report-tiles {width:min(164px,100%);gap:3px;margin-bottom:4px;}
.free-consult {font-size:14px;font-weight:600;margin:10px 0;color:#214f67;}
.matlab-page .matlab-hero {background:#112e45;color:white;border-top:4px solid #dc742d;}
.matlab-page .matlab-hero .hero-grid {padding-block:42px;}
.matlab-page .matlab-hero .project-showcase {background:white;color:#173149;border-radius:4px;}
.matlab-page .matlab-hero .matlab-name {display:block;color:white;font-family:Arial,sans-serif;font-size:clamp(56px,6.2vw,88px);line-height:1.05;letter-spacing:-.045em;}
.matlab-page .matlab-hero .matlab-service {color:white;display:block;font-size:clamp(23px,2.6vw,38px);line-height:1.5;letter-spacing:.01em;}
.matlab-page .matlab-hero .lead {color:#e3edf3;line-height:1.9;margin:20px 0;}
.matlab-page .matlab-hero .actions .text-link,.matlab-page .free-consult {color:white;}
.matlab-page .matlab-hero .btn {background:#fff;color:#153855;}
.matlab-page #mathworks-partner {display:flex;align-items:center;gap:14px;margin-top:22px;}
.matlab-page .mw-badge {width:122px;height:auto;display:block;background:white;padding:6px;}
.matlab-page #mathworks-partner strong,.matlab-page #mathworks-partner span {display:block;font-size:12px;line-height:1.5;}

.contact .final-consult {color:inherit;margin:12px 0 0;font-size:14px;font-weight:600;line-height:1.65;}

#referral-source {display:block;width:100%;max-width:100%;font:inherit;color:inherit;background:white;border:1px solid #aebfca;border-radius:4px;padding:10px 12px;margin:0 0 18px;}

/* --- 公開用追加 (2026-11-09): 確認→送信→完了 --- */
.confirm-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;margin-top:8px}
#inquiry-confirm .btn{width:auto}
.form-status{font-size:13px;margin:12px 0 0;min-height:1.2em}
.form-status[data-state="error"]{color:#9b2c1d;background:#fff1ee;border:1px solid #e3b3aa;padding:10px 12px}
.form-status[data-state="busy"]{color:#51687a}
.inquiry-done{padding:28px;background:#edf5fc}
.inquiry-done h2{font-size:23px;margin-top:0}
.inquiry-done h3{font-size:15px;margin:22px 0 8px}
.inquiry-done ol,.inquiry-done ul{padding-left:1.3em;margin:0}
.inquiry-done li{margin-bottom:8px;font-size:14px}
.inquiry-done li p{margin:4px 0 0;font-size:13px}
.inquiry-done hr{border:0;border-top:1px solid #c8d6e2;margin:24px 0}
.done-cases a{text-decoration:underline}
.grecaptcha-badge{visibility:hidden}
