/* Connected work: restrained node accents, generous space, quiet surfaces. */
:root{--quiet:#f7f7f3;--line:#e3e4dc;--muted:#696d64}body,header{background:#fff}html{scroll-padding-top:28px}.section-motif{display:none}.section,#cases{padding-top:110px;padding-bottom:110px}.section h2,#cases .use-cases-heading h2{font-size:58px;letter-spacing:-2.6px}.overline{color:#71776a;font-size:11px}.overline:before{width:10px;height:10px;border-radius:50%;background:#e8ff32;box-shadow:0 0 0 5px #f7fadf}.section h2{margin-top:27px;margin-bottom:48px}
#focus{background:linear-gradient(#fff,#fafaf7)}#focus .focuslist{gap:24px;position:relative}#focus .focusrow{background:#fff;border:1px solid var(--line);padding:20px 20px 28px;border-radius:22px;box-shadow:0 12px 34px #35392304}#focus .focusrow>.mono{font-size:11px;color:#737a65;margin-bottom:19px}#focus .focusrow>.mono:before{content:"";width:8px;height:8px;background:#e8ff32;border-radius:50%;box-shadow:0 0 0 4px #f7fadf}#focus .focusrow>.mono:after{background:#e5e8da}#focus .focusrow .focus-photo{border-radius:13px;aspect-ratio:1.48;margin-bottom:25px}#focus .focusrow h3{font-size:26px;margin-bottom:15px;color:#202322}#focus .focusrow small{color:#818775}#focus .focusrow p{color:var(--muted);font-size:15px;line-height:1.85}#focus .focusrow:hover img{transform:none}
#approach{background:#f5f6f0;border-top:1px solid #eef0e7;border-bottom:1px solid #eef0e7}#approach .steps{gap:40px;position:relative}#approach .steps:before{content:"";position:absolute;left:29px;right:29px;top:28px;height:1px;background:linear-gradient(90deg,#cbd29f,#e2e5d7)}#approach .step>span,#approach .step:nth-child(2)>span,#approach .step:nth-child(3)>span{position:relative;width:58px;height:58px;border:6px solid #f5f6f0;border-radius:50%;background:#e8ff32;box-shadow:0 0 0 1px #d8dfb6;font-size:16px;margin-bottom:26px}#approach .step-photo{height:auto;aspect-ratio:1.7;border-radius:14px;margin-bottom:25px}#approach .step h3{font-size:25px;margin-bottom:16px}#approach .step p{color:var(--muted);line-height:1.85}
#cases{background:#fff;--line:#e1e4d8;--orange:#697650;--soft:#fff;--cream:#fff}#cases .section-kicker{border-bottom:1px solid #e6e8de;padding-bottom:19px;color:#737c64}#cases .use-cases-heading{margin:35px 0 46px}#cases .use-case-grid{gap:24px}#cases .use-case-card{background:#fafbf7;border:1px solid #e0e4d5;border-radius:20px;padding:28px;box-shadow:0 10px 28px #30392303}#cases .use-case-meta>svg{background:#f1f5df;color:#52603d;box-shadow:0 0 0 1px #dde5c7;border-radius:12px;width:38px;height:38px}#cases .use-case-card h3{font-size:23px;letter-spacing:-.8px;line-height:1.4}#cases .use-case-card>p{color:var(--muted)}#cases .use-case-card:hover{border-color:#bcc98e}#cases .transform-panel{border-radius:10px}#cases .transform-arrow{color:#687552}
.footer.inquiry-footer{background:radial-gradient(ellipse at 90% 10%,#f3f9d5 0%,#f8f9f2 45%,#f6f7f0 75%);padding-top:95px;border-top:1px solid #e7eadb}.inquiry-heading h2{font-size:52px;letter-spacing:-2.2px;line-height:1.3}.inquiry-action{border-radius:14px;background:#202322;color:#e8ff32;padding:23px 32px}.inquiry-footer .footerbottom{border-color:#dce1ce;margin-top:80px;color:#7c836d}.inquiry-footer:before,.inquiry-footer:after{display:none}
@media(max-width:1000px) and (min-width:761px){#focus .focusrow{padding:16px}.section h2,#cases .use-cases-heading h2{font-size:50px}#approach .steps{gap:24px}.inquiry-heading h2{font-size:43px}}
@media(max-width:760px){.section,#cases{padding:70px 24px}.section h2,#cases .use-cases-heading h2{font-size:38px;letter-spacing:-1.6px;margin-bottom:33px}#focus .focuslist{gap:22px}#focus .focusrow{padding:18px 18px 25px;border-radius:18px}#focus .focusrow h3{font-size:25px}#focus .focusrow p,#approach .step p{font-size:14px}#approach .steps{gap:35px;padding-left:18px}#approach .steps:before{top:25px;bottom:30px;left:0;right:auto;width:1px;height:auto;background:#dce3c7}#approach .step:before{content:"";position:absolute;left:-22px;top:24px;width:9px;height:9px;border-radius:50%;background:#c6d481;box-shadow:0 0 0 4px #f5f6f0}#approach .step>span,#approach .step:nth-child(2)>span,#approach .step:nth-child(3)>span{width:50px;height:50px;margin-bottom:20px}#cases .use-case-card{padding:22px;border-radius:18px}#cases .use-case-card h3{font-size:22px}.footer.inquiry-footer{padding:65px 24px 25px}.inquiry-heading h2{font-size:35px;letter-spacing:-1.6px}.inquiry-footer .footerbottom{margin-top:60px}.inquiry-footer:before,.inquiry-footer:after{display:none}}
#focus .focusrow:nth-child(2) .focus-photo,#focus .focusrow:nth-child(3) .focus-photo{border-radius:13px}
/* One shared button silhouette, matching the approved header. */
:root{--button-shape:6px 24px 6px 24px}
header .contact,.hero .cta,.inquiry-footer .inquiry-action{border-radius:var(--button-shape)}

.inquiry-footer .footerbottom .logo-lab{width:190px;height:auto}
@media(max-width:760px){.inquiry-footer .footerbottom .logo-lab{width:165px}}

header .logo-lab{width:170px;height:auto}
@media(max-width:760px){header .logo-lab{width:140px}}

header .logo-lab{width:142px}
.wave-hero .stamp{font-family:inherit;letter-spacing:.5px;font-size:12px;color:#737a65}
.wave-hero .hero-copy p{max-width:570px;word-break:keep-all;line-height:1.85}
@media(max-width:760px){header .logo-lab{width:112px}.wave-hero .stamp{max-width:none;font-size:11px}.hero-description-break{display:none}.wave-hero .hero-copy p{font-size:15px;max-width:340px}.hero.wave-hero{min-height:820px}}

#focus .focuslist{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){#focus .focuslist{grid-template-columns:1fr}}

.company-info{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px 22px;line-height:1.7;font-size:12px;color:#707765}.company-info a:hover{text-decoration:underline}
@media(max-width:760px){.inquiry-footer .footerbottom{align-items:flex-start;flex-direction:column;gap:24px}.company-info{justify-content:flex-start;gap:8px 18px}.inquiry-footer .footerbottom .company-info span{max-width:none}}

/* Wide education banner between focus and approach. */
.education-banner{padding:0 max(60px,calc((100vw - 1480px)/2)) 72px;background:#fafaf7;scroll-margin-top:40px}
.education-banner-inner{display:flex;align-items:center;justify-content:space-between;gap:36px;min-height:140px;padding:30px 42px;background:#e8ff32;border-radius:6px 36px 6px 36px}
.education-banner-brand{display:flex;align-items:center;gap:30px;min-width:0}
.education-banner-brand img{display:block;width:172px;height:auto;flex-shrink:0}
.education-banner-name{border-left:1px solid #20232235;padding-left:30px;font-size:25px;line-height:1.4;font-weight:600;letter-spacing:-.8px;word-break:keep-all}
.education-banner .education-banner-action{border-radius:var(--button-shape);padding:19px 27px;font-size:16px;gap:24px;white-space:nowrap}
.education-banner-action:focus-visible{outline:2px solid #202322;outline-offset:5px}
@media(max-width:1000px){.education-banner-inner{padding:28px;gap:24px}.education-banner-brand{gap:20px}.education-banner-brand img{width:138px}.education-banner-name{font-size:21px;padding-left:20px}}
@media(max-width:760px){.education-banner{padding:0 24px 48px}.education-banner-inner{flex-wrap:wrap;padding:26px 24px;gap:24px;border-radius:6px 28px 6px 28px;min-height:0}.education-banner-brand{gap:16px;width:100%}.education-banner-brand img{width:104px}.education-banner-name{font-size:17px;letter-spacing:-.5px;padding-left:16px}.education-banner .education-banner-action{width:100%;padding:15px 20px;font-size:15px;justify-content:space-between}}
@media(max-width:380px){.education-banner-inner{padding:24px 18px}.education-banner-brand{gap:12px}.education-banner-brand img{width:88px}.education-banner-name{padding-left:12px;font-size:15px}}
