/* WONDERSHIFT visitor-first presentation. */
.ws-home{--paper:#fafaf7;--ink:#202b2b;--muted:#64706c;--line:#d8dfd8;--accent:#d1edba;--dark:#172526;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:15px;line-height:1.9;margin:0;-webkit-font-smoothing:antialiased}
.ws-home *{box-sizing:border-box}.ws-home h1,.ws-home h2,.ws-home h3,.ws-home h4,.ws-home p,.ws-home ol,.ws-home ul,.ws-home figure,.ws-home dl,.ws-home dd{margin:0;padding:0}.ws-home h1,.ws-home h2,.ws-home h3,.ws-home h4{font-weight:600;line-height:1.55;letter-spacing:.025em}.ws-home h1:before,.ws-home h2:before,.ws-home h3:before{display:none}.ws-home a{color:inherit;text-decoration:none}.ws-home button,.ws-home input,.ws-home select,.ws-home textarea{font:inherit}.ws-home button{cursor:pointer}.ws-home a:focus-visible,.ws-home button:focus-visible,.ws-home input:focus-visible,.ws-home select:focus-visible,.ws-home textarea:focus-visible,.ws-home summary:focus-visible{outline:3px solid #8cac73;outline-offset:5px}.ws-home [hidden]{display:none!important}.ws-home img{display:block;max-width:100%;height:auto}.ws-home ::selection{background:var(--accent);color:var(--ink)}
.ws-container{width:min(1240px,calc(100% - 96px));margin-inline:auto}.ws-section{padding:120px 0;scroll-margin-top:125px}.ws-home [id]{scroll-margin-top:130px}.ws-section-heading{margin-bottom:28px}.ws-section-heading h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(30px,3.3vw,46px);font-weight:600;line-height:1.5}.ws-section-heading h2 span{display:block}.ws-eyebrow{display:flex;gap:18px;align-items:center;font-size:11px;font-weight:600;letter-spacing:.15em;line-height:1.6;margin-bottom:24px!important}.ws-eyebrow>span{color:#78956a}.ws-section-intro{max-width:660px;color:var(--muted);margin-bottom:48px!important;font-size:16px}.ws-copy p+p{margin-top:1.2em}.ws-note{font-size:12px;color:var(--muted);line-height:1.9}.ws-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.ws-button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:17px 24px;border:1px solid var(--ink);background:var(--ink);color:#fff!important;font-size:13px;font-weight:600;line-height:1.8;transition:background .2s,transform .2s}.ws-button:hover{background:#3d5047;transform:translateY(-2px)}.ws-button-outline{background:transparent;color:var(--ink)!important}.ws-button-outline:hover{background:#e9eee4}.ws-text-link{font-size:13px;font-weight:600;border-bottom:1px solid var(--line);padding:12px 0}.ws-text-link span{margin-left:14px}.ws-skip{position:fixed;left:16px;top:-100px;background:#fff;padding:12px;z-index:200}.ws-skip:focus{top:12px}
.ws-header{position:sticky;top:0;z-index:80;background:rgba(250,250,247,.97);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;min-height:82px;padding:0 42px;gap:20px;backdrop-filter:blur(12px)}.ws-header-inner{display:flex;align-items:center;gap:16px}.ws-wordmark{display:inline-flex;align-items:center;font-family:Arial,sans-serif;font-size:20px;font-weight:400;letter-spacing:-1px;line-height:1;white-space:nowrap}.ws-wordmark span{font-weight:800}.ws-wordmark i{font-size:24px;font-style:normal;color:#7b9c67;margin-left:8px}.ws-stage-note{font-size:10px;color:var(--muted);white-space:nowrap}.ws-header-contact{display:none}.ws-top-nav{display:flex;align-items:center;gap:26px}.ws-top-nav a{font-size:12px;white-space:nowrap;position:relative;padding:30px 0}.ws-top-nav a:after{content:"";position:absolute;bottom:18px;left:0;width:100%;height:2px;background:#89a879;transform:scaleX(0);transform-origin:left;transition:transform .2s}.ws-top-nav a:hover:after,.ws-top-nav a[aria-current="location"]:after{transform:scaleX(1)}.ws-top-nav a:last-child{padding:12px 19px;background:var(--ink);color:#fff}.ws-top-nav a:last-child:after{display:none}
.ws-entry{background:#f3f4ef;overflow:hidden;padding:62px 0 0}.ws-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;position:relative;column-gap:30px;align-items:center}.ws-entry-copy{position:relative;z-index:2;padding:24px 0 48px}.ws-entry-copy .ws-eyebrow{font-size:11px;letter-spacing:.1em}.ws-entry h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(34px,3.85vw,55px);line-height:1.55;font-weight:600;letter-spacing:-.025em;margin-bottom:29px}.ws-entry h1 span{display:block;white-space:nowrap}.ws-entry-lead{font-size:23px;font-weight:600;margin-bottom:16px!important}.ws-entry-body{max-width:560px;color:var(--ink);margin-bottom:29px!important;font-size:18px;line-height:2.1}.ws-hero-portrait{height:565px;align-self:stretch;position:relative;background:#e7e9e5;overflow:hidden;border-radius:160px 0 0 0}.ws-hero-portrait img{width:100%;height:100%;object-fit:cover;object-position:72% 46%;mix-blend-mode:multiply}.ws-hero-portrait:after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,rgba(240,244,241,.88))}.ws-hero-portrait figcaption{position:absolute;bottom:24px;left:30px;z-index:2;display:grid;gap:2px}.ws-hero-portrait figcaption span{font-size:10px;letter-spacing:.1em}.ws-hero-portrait figcaption strong{font-size:23px;font-weight:500;letter-spacing:.16em}.ws-hero-portrait figcaption small{font-size:9px;letter-spacing:.12em}.ws-proof-strip{grid-column:1/-1;border-top:1px solid #cbd3c8;display:grid;grid-template-columns:repeat(3,1fr);padding:32px 0;margin-top:22px}.ws-proof-strip>div{padding:0 35px;border-left:1px solid #cbd3c8;display:flex;flex-direction:column;gap:3px}.ws-proof-strip>div:first-child{padding-left:0;border:0}.ws-proof-strip strong{font-size:34px;color:var(--ink);font-weight:600;letter-spacing:.03em;text-wrap:balance}.ws-proof-strip span{font-size:16px;color:#46534d;line-height:1.85;white-space:pre-line}.ws-hero-foot{border-top:1px solid #d7ded3;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.16em;padding:18px 0;color:var(--muted)}
.ws-problems{background:#fff}.ws-problem-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-top:54px}.ws-problem{border-top:1px solid #b8c8af;padding-top:24px;display:flex;flex-direction:column}.ws-index{font-family:Georgia,serif;font-size:24px;color:#81946e;margin-bottom:20px}.ws-problem h3{font-size:18px;line-height:1.75;margin-bottom:20px}.ws-problem>p{font-size:13px;color:var(--muted);line-height:1.95;flex:1}.ws-benefit{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.ws-benefit>span{font-size:10px;letter-spacing:.1em;color:#70845e;display:block;margin-bottom:7px}.ws-benefit p{font-size:13px;font-weight:500}
.ws-service-list{margin-top:62px;border-top:1px solid var(--line)}.ws-service{display:grid;grid-template-columns:1fr 2fr;gap:65px;padding:46px 0;border-bottom:1px solid var(--line)}.ws-service-title h3{font-size:24px;margin-bottom:12px}.ws-service-title>p:not(.ws-eyebrow){font-size:13px;color:var(--muted)}.ws-service-title .ws-button{margin-top:25px;font-size:12px;padding:12px 17px}.ws-service-title .ws-eyebrow{margin-bottom:14px!important;color:#7c906d}.ws-service-problem{margin-bottom:24px}.ws-service-problem>span,.ws-experience-note>span{display:block;font-size:10px;letter-spacing:.07em;color:#718563;margin-bottom:7px}.ws-service-problem p{font-size:15px}.ws-service-columns{display:grid;grid-template-columns:1fr 1fr;gap:30px}.ws-service-columns h4{font-size:13px;margin-bottom:14px}.ws-service-columns ul{list-style:none;font-size:13px;line-height:1.95;color:var(--muted)}.ws-service-columns li{padding-left:17px;position:relative;margin-bottom:8px}.ws-service-columns li:before{content:"";position:absolute;left:0;top:11px;width:5px;height:5px;border:1px solid #8ca079}.ws-experience-note{background:#eef1e9;font-size:12px;color:#586751;padding:17px 21px;margin-top:23px!important}
.ws-results{background:var(--dark);color:#eaf0e8}.ws-results-heading{display:grid;grid-template-columns:1.35fr .65fr;gap:60px;align-items:end;margin-bottom:54px}.ws-results-heading>.ws-section-heading{margin:0}.ws-results-heading>div>p{font-size:14px;line-height:2}.ws-results .ws-note{color:#a8b9b0;margin-top:17px}.ws-case-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.ws-engineering-case{border:1px solid #40534e;background:#1c2c2c}.ws-technical-visual{position:relative;border-bottom:1px solid #40534e;padding:24px 14px 32px}.ws-technical-visual svg{display:block;width:100%;height:auto}.ws-diagram-caption{position:absolute;left:24px;bottom:14px;font-size:9px;letter-spacing:.08em;color:#9eb5a7}.ws-case-copy{padding:30px}.ws-case-copy h3{font-size:23px;margin-bottom:15px}.ws-case-copy .ws-eyebrow{color:#b3c89f;margin-bottom:12px!important;font-size:9px}.ws-case-role{font-size:11px;color:#d4dfc9;margin-bottom:16px!important}.ws-case-copy>p:not(.ws-eyebrow):not(.ws-case-role):not(.ws-source){font-size:13px;color:#b9c8bf}.ws-source{display:block;font-size:10px;color:#adbbac!important;margin-top:24px!important;line-height:1.8}.ws-source[href]{text-decoration:underline;text-underline-offset:4px}.ws-engineering-path{margin-top:45px;display:flex;justify-content:space-between;align-items:center;gap:25px;border-top:1px solid #40534e;border-bottom:1px solid #40534e;padding:28px 18px;font-size:15px}.ws-engineering-path i{font-style:normal;color:#aac894}.ws-motion-toggle{margin-top:20px;border:1px solid #698476;background:transparent;color:#d7e4d6;padding:8px 14px;font-size:11px}.ws-flow-line{animation:ws-flow 3s linear infinite}.ws-coil-light{animation:ws-coil 5s ease-in-out infinite;animation-delay:calc(var(--coil)*.12s)}@keyframes ws-flow{to{stroke-dashoffset:-96}}@keyframes ws-coil{0%,100%{opacity:.4}40%,65%{opacity:1}}.ws-motion-paused .ws-flow-line,.ws-motion-paused .ws-coil-light{animation-play-state:paused}
.ws-feature{background:#fff}.ws-feature-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:48px}.ws-feature-heading .ws-section-heading{margin:0}.ws-feature-heading>p{font-size:14px;color:var(--muted);line-height:2}.ws-feature-heading strong{font-weight:500;color:var(--ink)}.ws-product-photo{position:relative;background:#d6e0e8;overflow:hidden}.ws-product-photo img{width:100%;height:auto;aspect-ratio:1.9;object-fit:cover;object-position:center}.ws-product-photo figcaption{position:absolute;left:24px;bottom:18px;font-size:10px;color:#304a58;background:rgba(240,246,248,.85);padding:6px 12px}.ws-own-case-intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin:56px 0 44px;align-items:center}.ws-own-case-intro h3{font-size:25px;line-height:1.8}.ws-own-case-intro>p{color:var(--muted);font-size:14px}.ws-own-case-intro .ws-eyebrow{font-size:10px;color:#788d65;margin-bottom:16px!important}.ws-case-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;list-style:none;border-top:1px solid var(--line);padding-top:25px!important;margin-bottom:28px!important}.ws-case-steps li>span{font-family:Georgia,serif;font-size:25px;color:#7e946d;display:block;margin-bottom:15px}.ws-case-steps h4{font-size:16px;margin-bottom:13px}.ws-case-steps p{font-size:12px;color:var(--muted)}
.ws-detail{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:32px}.ws-detail+.ws-detail{margin-top:0;border-top:0}.ws-detail summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none;padding:22px 0;font-size:14px;font-weight:600}.ws-detail summary::-webkit-details-marker{display:none}.ws-detail[open] summary>span{transform:rotate(45deg)}.ws-detail .ws-copy{padding-bottom:28px;font-size:14px;max-width:780px;color:var(--muted)}
.ws-process{background:#f0f2ec}.ws-process-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px}.ws-process-list{list-style:none}.ws-process-list li{display:flex;gap:25px;padding:20px 0;border-bottom:1px solid #d3dbcf}.ws-process-list li:first-child{padding-top:0}.ws-process-list li>span{font-family:Georgia,serif;font-size:24px;line-height:1.4;color:#829573}.ws-process-list h3{font-size:16px;margin-bottom:6px}.ws-process-list p{font-size:13px;color:var(--muted)}
.ws-pricing{background:#fff}.ws-pricing-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:50px}.ws-pricing-primary{background:#f1f4ec;padding:42px}.ws-pricing-status{display:inline-block;background:#e0e9d8;color:#52694c;font-size:11px;letter-spacing:.04em;padding:4px 10px;margin-bottom:23px!important}.ws-pricing-primary h3{font-size:28px;margin-bottom:15px}.ws-pricing-primary>p:not(.ws-pricing-status){font-size:13px;color:var(--muted)}.ws-pricing-primary .ws-button{margin-top:27px}.ws-price-item{margin-top:22px;border-top:1px solid var(--line);padding-top:18px}.ws-price-item strong{font-size:25px;margin-right:10px}.ws-price-item p{font-size:12px;color:var(--muted)}.ws-pricing-factors{padding-top:20px}.ws-pricing-factors h3{font-size:20px;margin-bottom:22px}.ws-pricing-factors ol{list-style:none}.ws-pricing-factors li{display:flex;gap:25px;padding:18px 0;border-bottom:1px solid var(--line);font-size:14px}.ws-pricing-factors li>span{font-family:Georgia,serif;color:#80986f;font-size:18px}.ws-pricing-factors>p{margin-top:22px;font-size:13px;color:var(--muted)}
.ws-profile{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;margin-top:50px;align-items:start}.ws-profile-photo{overflow:hidden;background:#e6e9e4}.ws-profile-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:73% center}.ws-profile-photo figcaption{font-size:10px;letter-spacing:.08em;padding:13px 20px}.ws-profile-copy h3{font-size:32px;font-weight:500;letter-spacing:.1em}.ws-profile-copy .ws-eyebrow{font-size:9px;margin-bottom:13px!important}.ws-name-en{font-size:10px;letter-spacing:.15em;margin-top:6px!important;color:var(--muted);margin-bottom:25px!important}.ws-profile-copy .ws-copy{font-size:13px;line-height:2.1;color:var(--muted)}.ws-career-columns{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:10px 0 35px}.ws-career-columns h3{font-size:17px;margin-bottom:24px}.ws-career{list-style:none}.ws-career li{border-left:1px solid var(--line);padding:0 0 25px 22px}.ws-career span{font-size:10px;color:#73865f}.ws-career h4{font-size:14px;margin:7px 0}.ws-career p,.ws-technical dd,.ws-small-experience p{font-size:12px;color:var(--muted)}.ws-technical{margin-bottom:34px!important}.ws-technical>div{margin-bottom:20px}.ws-technical dt{font-size:14px;font-weight:600;margin-bottom:7px}.ws-small-experience{margin-bottom:20px}.ws-small-experience h4{font-size:14px;margin-bottom:7px}
.ws-contact{background:#eaf0e3}.ws-contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:50px;align-items:start}.ws-contact-layout>.ws-section-intro{font-size:15px}.ws-contact-card{background:#fff;padding:35px}.ws-contact-notice{font-size:12px;color:#665d3a;background:#f5f2e8;padding:13px 16px;margin-bottom:25px!important}.ws-field{margin-bottom:19px}.ws-field label{display:flex;gap:12px;align-items:center;font-size:12px;font-weight:600;margin-bottom:7px}.ws-field label span{font-size:9px;color:#6a7e58;background:#edf2e7;padding:1px 5px;font-weight:400}.ws-field input,.ws-field textarea,.ws-field select{border:1px solid #cfd9c9;background:#fafbf8;border-radius:0;width:100%;padding:11px 13px;color:var(--ink);font-size:16px;min-height:46px}.ws-field textarea{resize:vertical}.ws-field [aria-invalid="true"]{border-color:#a74435}.ws-contact-card .ws-button{margin-top:22px;width:100%}.ws-faq h3{font-size:18px;margin-bottom:24px}.ws-faq details{border-bottom:1px solid #cdd8c4}.ws-faq summary{display:flex;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;padding:20px 0;font-size:13px;font-weight:500}.ws-faq summary::-webkit-details-marker{display:none}.ws-faq summary>span{color:#718564}.ws-faq details>p{padding:0 0 20px;font-size:13px;color:var(--muted)}.ws-faq details[open] summary>span{transform:rotate(45deg)}#ws-review-values{margin-top:22px}#ws-review-values dt{font-size:11px;color:var(--muted);padding-top:13px}#ws-review-values dd{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;border-bottom:1px solid var(--line);padding-bottom:13px}.ws-review-unsent{background:#f5f2e8;padding:16px;font-size:13px;margin-top:22px!important}#ws-form-error{color:#974338;font-size:12px;margin-top:14px}
.ws-footer{background:#172526;color:#e6eee2;padding:55px 0 30px}.ws-footer-top{display:flex;gap:35px;align-items:center;flex-wrap:wrap}.ws-footer-top p{font-size:12px;color:#afc0b1}.ws-back-top{margin-left:auto;font-size:11px}.ws-footer-bottom{border-top:1px solid #3b4c44;margin-top:34px;padding-top:23px;display:flex;gap:35px;justify-content:space-between;color:#a2b2a5}.ws-footer-bottom small{font-size:9px}
@media(min-width:1600px){.ws-entry{padding-top:80px}.ws-hero-portrait{height:625px}.ws-entry h1{font-size:56px}}
@media(max-width:1150px){.ws-header{padding:0 25px;gap:10px}.ws-stage-note{display:none}.ws-top-nav{gap:18px}.ws-top-nav a{font-size:11px}.ws-container{width:calc(100% - 64px)}.ws-hero-grid{column-gap:15px}.ws-entry h1{font-size:3.8vw}.ws-hero-portrait{height:530px}.ws-entry-lead{font-size:21px}.ws-entry-body{font-size:17px}.ws-problem-grid{grid-template-columns:1fr 1fr;gap:36px}.ws-service{gap:35px;grid-template-columns:.9fr 1.7fr}.ws-service-columns{gap:22px}.ws-results-heading{gap:35px}.ws-profile,.ws-contact-layout,.ws-pricing-layout,.ws-process-layout{gap:45px}.ws-case-steps{gap:20px}.ws-case-steps h4{font-size:15px}}
@media(max-width:800px){.ws-header{display:block;padding:0 24px;min-height:auto}.ws-header-inner{height:62px;justify-content:space-between}.ws-header-contact{display:block;background:var(--ink);color:#fff!important;padding:7px 13px;font-size:11px}.ws-top-nav{overflow-x:auto;gap:25px;scrollbar-width:none;padding-bottom:1px}.ws-top-nav::-webkit-scrollbar{display:none}.ws-top-nav a{padding:10px 0 13px;font-size:11px}.ws-top-nav a:after{bottom:6px}.ws-top-nav a:last-child{padding:10px 0 13px;background:none;color:var(--ink)}.ws-home [id],.ws-section{scroll-margin-top:122px}.ws-container{width:calc(100% - 48px)}.ws-section{padding:85px 0}.ws-entry{padding-top:32px}.ws-hero-grid{grid-template-columns:1.07fr .93fr;gap:12px}.ws-hero-portrait{height:460px;border-radius:100px 0 0 0}.ws-entry-copy{padding:12px 0 20px}.ws-entry h1{font-size:3.9vw}.ws-entry-lead{font-size:20px}.ws-entry-body{font-size:16px}.ws-entry-copy .ws-eyebrow{font-size:9px}.ws-entry .ws-actions{gap:12px}.ws-entry .ws-button{font-size:11px;padding:13px 14px;gap:12px}.ws-entry .ws-text-link{font-size:11px}.ws-hero-portrait figcaption{left:18px}.ws-proof-strip{padding:24px 0}.ws-proof-strip>div{padding:0 18px}.ws-proof-strip strong{font-size:28px}.ws-proof-strip span{font-size:14px}.ws-service{grid-template-columns:1fr;gap:30px}.ws-service-title>p:not(.ws-eyebrow){max-width:440px}.ws-service-title .ws-button{margin-top:16px}.ws-results-heading{grid-template-columns:1fr}.ws-case-grid{gap:18px}.ws-case-copy{padding:22px}.ws-case-copy h3{font-size:20px}.ws-engineering-path{font-size:13px;gap:10px;padding:20px 0}.ws-feature-heading{display:block}.ws-feature-heading>p{margin-top:20px}.ws-own-case-intro{gap:35px}.ws-case-steps{grid-template-columns:1fr 1fr;gap:30px}.ws-process-layout,.ws-pricing-layout,.ws-profile,.ws-contact-layout{grid-template-columns:1fr;gap:36px}.ws-process-list{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.ws-process-list li:first-child{padding-top:20px}.ws-profile{grid-template-columns:.7fr 1fr;gap:32px}.ws-profile-photo img{aspect-ratio:3/4}.ws-profile-copy h3{font-size:26px}.ws-pricing-layout{grid-template-columns:1fr 1fr;gap:30px}.ws-pricing-primary{padding:26px}.ws-pricing-primary h3{font-size:23px}.ws-pricing-factors h3{font-size:17px}.ws-pricing-factors li{font-size:12px;gap:14px}.ws-career-columns{gap:35px}.ws-contact-layout{grid-template-columns:1fr 1fr;gap:30px}.ws-contact-card{padding:25px}.ws-footer-bottom{display:block}.ws-footer-bottom small{display:block;margin-bottom:10px}}
@media(max-width:600px){.ws-container{width:calc(100% - 40px)}.ws-section{padding:68px 0}.ws-header{padding:0 20px}.ws-wordmark{font-size:18px}.ws-top-nav{gap:25px}.ws-entry{padding-top:0}.ws-hero-grid{display:flex;flex-direction:column;gap:0}.ws-hero-portrait{order:0;width:calc(100% + 40px);height:330px;align-self:center;border-radius:0}.ws-hero-portrait img{object-position:73% 39%;mix-blend-mode:normal}.ws-hero-portrait:after{inset:75% 0 0;background:linear-gradient(transparent,#f3f4ef)}.ws-hero-portrait figcaption{left:25px;bottom:18px}.ws-hero-portrait figcaption strong{font-size:18px}.ws-hero-portrait figcaption small{font-size:8px}.ws-entry-copy{order:1;width:100%;padding:26px 0 28px}.ws-entry h1{font-size:clamp(27px,7vw,40px);line-height:1.55;margin-bottom:20px}.ws-entry-copy .ws-eyebrow{font-size:9px;letter-spacing:.08em;margin-bottom:16px!important}.ws-entry-lead{font-size:20px;margin-bottom:15px!important}.ws-entry-body{font-size:17px;margin-bottom:23px!important}.ws-entry .ws-actions{gap:18px}.ws-entry .ws-button{font-size:12px;padding:15px 18px}.ws-proof-strip{order:2;width:100%;margin:0;padding:24px 0;gap:22px;grid-template-columns:1fr}.ws-proof-strip>div{padding:22px 0 0;border-left:0;border-top:1px solid #cbd3c8;gap:8px}.ws-proof-strip strong{font-size:30px;line-height:1.5}.ws-proof-strip span{font-size:16px;line-height:1.7}.ws-hero-foot{font-size:8px;padding:15px 0;letter-spacing:.07em}.ws-section-heading h2{font-size:29px}.ws-eyebrow{font-size:9px;margin-bottom:18px!important}.ws-section-intro{font-size:14px;margin-bottom:33px!important}.ws-problem-grid{grid-template-columns:1fr;gap:30px;margin-top:35px}.ws-problem{display:grid;grid-template-columns:32px 1fr;gap:0 16px;padding-top:20px}.ws-index{grid-row:1/4;font-size:23px}.ws-problem h3{font-size:17px;margin-bottom:14px}.ws-problem>p{font-size:13px}.ws-benefit{grid-column:2;margin-top:17px;padding-top:15px}.ws-service-list{margin-top:35px}.ws-service{padding:32px 0;gap:25px}.ws-service-title h3{font-size:23px}.ws-service-columns{grid-template-columns:1fr;gap:16px}.ws-service-columns h4{margin-bottom:10px}.ws-service-columns li{margin-bottom:5px}.ws-service-problem p{font-size:14px}.ws-experience-note{padding:16px}.ws-results-heading{gap:18px;margin-bottom:35px}.ws-case-grid{grid-template-columns:1fr;gap:25px}.ws-technical-visual{padding:10px 8px 32px}.ws-case-copy{padding:24px}.ws-case-copy h3{font-size:21px}.ws-engineering-path{font-size:11px;gap:8px;align-items:center}.ws-engineering-path span{max-width:82px}.ws-engineering-path i{font-size:17px}.ws-feature-heading{margin-bottom:28px}.ws-product-photo img{aspect-ratio:1.35;object-fit:cover}.ws-product-photo figcaption{font-size:8px;left:12px;bottom:12px;padding:4px 8px}.ws-own-case-intro{grid-template-columns:1fr;gap:22px;margin:34px 0 28px}.ws-own-case-intro h3{font-size:22px}.ws-case-steps{gap:28px 22px}.ws-case-steps h4{font-size:15px}.ws-case-steps p{font-size:12px}.ws-note{font-size:11px}.ws-detail summary{font-size:13px;padding:20px 0}.ws-process-list{grid-template-columns:1fr}.ws-process-list li{gap:22px;padding:18px 0}.ws-process-list h3{font-size:16px}.ws-pricing-layout{grid-template-columns:1fr;gap:22px;margin-top:30px}.ws-pricing-primary{padding:28px 25px}.ws-pricing-factors h3{font-size:19px}.ws-pricing-factors li{font-size:13px}.ws-profile{grid-template-columns:1fr;gap:27px;margin-top:30px}.ws-profile-photo{max-width:300px}.ws-profile-photo img{aspect-ratio:1/1.1}.ws-profile-copy h3{font-size:30px}.ws-profile-copy .ws-copy{font-size:13px}.ws-career-columns{grid-template-columns:1fr;gap:25px}.ws-contact-layout{grid-template-columns:1fr;gap:35px;margin-top:32px}.ws-contact-card{padding:24px 20px}.ws-footer{padding:40px 0 25px}.ws-footer-top{display:grid;gap:20px}.ws-back-top{margin:0}.ws-footer-top p{font-size:11px}.ws-footer-bottom{margin-top:25px;padding-top:20px}}
@media(prefers-reduced-motion:reduce){.ws-home:not(.ws-motion-opt-in) *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.ws-header,.ws-motion-toggle,.ws-contact-card{display:none}.ws-section{padding:25px 0}.ws-container{width:100%}.ws-case-grid{break-inside:avoid}.ws-results{color:#000;background:#fff}.ws-results .ws-note,.ws-case-copy p{color:#000}.ws-detail>div{display:block}}
/* Confirmed commercial terms and direct contact. */
.ws-commitment{max-width:720px;font-size:16px;line-height:2;color:var(--muted);margin-bottom:45px!important}.ws-price-cards{display:grid;grid-template-columns:.9fr 1.05fr 1.05fr;gap:24px}.ws-price-card{border:1px solid #cdd7c6;display:flex;flex-direction:column}.ws-price-card-head{background:#ebf0e5;padding:27px 25px;min-height:133px}.ws-price-card-head>p{font-size:9px;letter-spacing:.12em;color:#718365;margin-bottom:14px!important}.ws-price-card-head h3{font-size:20px;line-height:1.6}.ws-price-featured .ws-price-card-head{background:var(--dark);color:#fff}.ws-price-featured .ws-price-card-head>p{color:#b5d19b}.ws-price-card-body{padding:30px 25px;display:flex;flex-direction:column;align-items:flex-start;flex:1}.ws-price-amount{font-family:Georgia,"Yu Mincho",serif;font-size:38px;line-height:1.4;margin-bottom:8px!important}.ws-price-unit{font-size:11px;color:var(--muted);padding-bottom:24px;margin-bottom:24px!important;border-bottom:1px solid var(--line);width:100%}.ws-price-card-body>p:not(.ws-price-amount):not(.ws-price-unit){font-size:13px;color:var(--muted);flex:1}.ws-price-card .ws-button{margin-top:25px;width:100%;padding:13px 15px;font-size:11px}.ws-price-note{margin-top:23px!important}.ws-price-factors{padding:0 0 25px 20px!important;font-size:13px;color:var(--muted)}.ws-direct-contact{border-bottom:1px solid #cbd6c4;padding-bottom:25px;margin-bottom:25px}.ws-direct-contact>a{font-family:Arial,sans-serif;font-size:clamp(18px,2vw,25px);display:block;overflow-wrap:anywhere;line-height:1.6;margin-bottom:18px}.ws-direct-contact>p:not(.ws-eyebrow){font-size:13px;display:flex;gap:25px;flex-wrap:wrap}.ws-direct-contact>p>span{color:var(--muted)}
@media(max-width:800px){.ws-price-cards{gap:15px;grid-template-columns:1fr 1fr}.ws-price-card:first-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.5fr}.ws-price-card:first-child .ws-price-card-head{height:100%}.ws-price-card:first-child .ws-price-card-body{padding:25px}.ws-price-card-head h3{font-size:19px}.ws-price-card-body{padding:25px}.ws-price-amount{font-size:35px}}
@media(max-width:600px){.ws-commitment{font-size:14px;margin-bottom:28px!important}.ws-price-cards{grid-template-columns:1fr;gap:22px}.ws-price-card:first-child{display:flex}.ws-price-card-head{min-height:0;padding:22px 25px}.ws-price-card-head h3{font-size:20px}.ws-price-card-head>p{margin-bottom:9px!important}.ws-price-card-body{padding:25px}.ws-price-card .ws-button{font-size:12px}.ws-price-amount{font-size:37px}.ws-direct-contact>a{font-size:22px}}

/* Public patent evidence and narrow-screen headline containment. */
.ws-patent{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-top:30px;padding:28px 30px;border:1px solid #40534e}.ws-patent .ws-eyebrow{font-size:9px;color:#b3c89f;margin-bottom:10px!important}.ws-patent h3{font-size:21px;margin-bottom:12px}.ws-patent p:not(.ws-eyebrow){font-size:12px;color:#b9c8bf;max-width:650px}.ws-patent .ws-source{flex-shrink:0;margin-top:0!important}
@media(max-width:600px){.ws-entry h1{font-size:clamp(26px,7.2vw,40px)}.ws-entry h1 span{white-space:normal;text-wrap:balance}.ws-hero-portrait{height:285px}.ws-patent{display:block;padding:24px}.ws-patent .ws-source{margin-top:20px!important}}

/* V5: visible examples, cumulative plans, and progressive motion. */
.ws-picture{display:block;width:100%;height:100%}
.ws-hero-portrait .ws-picture img{height:100%}
.ws-product-photo{aspect-ratio:1.9}
.ws-product-photo .ws-picture img{height:100%;aspect-ratio:auto;object-fit:cover}
.ws-profile-photo .ws-picture{height:auto;aspect-ratio:4/5}
.ws-profile-photo .ws-picture img{height:100%;aspect-ratio:auto}
.ws-problem-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 38px}
.ws-problem h3{min-height:3.5em}
.ws-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;border:0;margin-top:42px;align-items:start}
.ws-service-grid .ws-service{display:flex;flex-direction:column;gap:24px;min-width:0;padding:32px 34px;border:1px solid var(--line);background:#fff;height:100%}
.ws-service-grid .ws-service-title h3{font-size:23px;letter-spacing:0}
.ws-service-grid .ws-service-title>p:not(.ws-eyebrow){font-size:13px;line-height:1.8}
.ws-service-grid .ws-service-detail{flex:1}
.ws-service-detail h4{font-size:11px;font-weight:600;color:#63775a;margin-bottom:13px}
.ws-service-examples{list-style:none;font-size:14px;line-height:1.85}
.ws-service-examples li{padding-left:20px;position:relative;margin:0 0 12px}
.ws-service-examples li:before{content:"↗";position:absolute;left:0;color:#80966e;font-size:13px}
.ws-service-more{margin-top:22px;border-bottom:0}
.ws-service-more summary{font-size:12px;font-weight:500;padding:16px 0 0}
.ws-service-more[open] summary{padding-bottom:20px}
.ws-service-more>div{padding-bottom:4px}
.ws-service-more .ws-service-examples{font-size:13px;color:var(--muted);margin-bottom:20px}
.ws-deliverables{display:flex;gap:7px;flex-wrap:wrap;list-style:none}
.ws-deliverables li{font-size:11px;line-height:1.7;padding:5px 9px;background:#eff2e9;color:#526249}
.ws-service-grid .ws-button{align-self:flex-start;font-size:12px;padding:12px 17px;margin-top:0}
.ws-engineering-path{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;list-style:none;padding:0;border:1px solid #40534e}
.ws-path-stage{position:relative;padding:28px 26px;overflow:hidden;min-width:0}
.ws-path-stage+.ws-path-stage{border-left:1px solid #40534e}
.ws-path-stage:before{content:"";position:absolute;inset:0;background:#b4d299;opacity:0;pointer-events:none}
.ws-path-stage:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:#bbdca7;transform:scaleX(0);transform-origin:left}
.ws-path-stage>span{display:block;font-size:9px;color:#a8bea0;letter-spacing:.12em;margin-bottom:14px;position:relative}
.ws-path-stage strong{font-size:17px;letter-spacing:.025em;font-weight:500;display:block;position:relative}
.ws-path-stage small{font-size:11px;color:#a5b9ad;display:block;margin-top:10px;position:relative}
.ws-ai-experience{margin-top:55px;padding:32px;background:#f0f3ec;border-left:2px solid #96ad82}
.ws-ai-heading .ws-eyebrow{font-size:9px;color:#738768;margin-bottom:14px!important}
.ws-ai-heading h3{font-size:22px;margin-bottom:10px}
.ws-ai-heading>p:not(.ws-eyebrow){font-size:12px;color:var(--muted)}
.ws-ai-grid{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;margin-top:27px!important}
.ws-ai-grid li{border-top:1px solid #c9d5bf;padding-top:18px;min-width:0}
.ws-ai-index{font-family:Georgia,serif;font-size:20px;color:#80946c;display:block;margin-bottom:14px}
.ws-ai-grid h4{font-size:14px;margin-bottom:9px}
.ws-ai-grid p{font-size:12px;color:var(--muted);line-height:1.85}
.ws-process-layout{row-gap:20px}
.ws-process-detail{grid-column:1/-1;margin-top:24px}
.ws-process-full{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px;padding-bottom:24px!important}
.ws-process-full li:first-child{padding-top:20px}
.ws-process-summary li{padding:25px 0}
.ws-process-summary h3{font-size:19px}
.ws-consultation-band{display:flex;align-items:center;justify-content:space-between;gap:35px;background:#edf2e5;padding:30px 34px;margin:0 0 28px}
.ws-consultation-band .ws-eyebrow{font-size:9px;color:#748961;margin-bottom:10px!important}
.ws-consultation-band h3{font-size:23px;margin-bottom:9px}
.ws-consultation-band p:not(.ws-eyebrow){font-size:13px;color:var(--muted)}
.ws-consultation-band .ws-button{font-size:12px;flex-shrink:0}
.ws-plan-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.ws-plan-cards .ws-plan-card{display:flex;grid-column:auto}
.ws-plan-cards .ws-price-card-head{padding:27px 25px;min-height:192px;background:#f1f3ee}
.ws-plan-cards .ws-price-card-head h3{font-size:26px}
.ws-plan-cards .ws-plan-standard .ws-price-card-head{background:#263632;color:#f1f6ed}
.ws-plan-cards .ws-plan-standard .ws-price-card-head>p{color:#c2d2b9}
.ws-plan-cards .ws-price-card-head .ws-plan-tagline{font-size:12px;line-height:1.85;letter-spacing:0;color:var(--muted);margin:14px 0 0!important}
.ws-plan-cards .ws-price-card-body{padding:28px 25px}
.ws-plan-cards .ws-plan-amount{font-family:inherit;font-size:22px;letter-spacing:0;font-weight:500;white-space:nowrap}
.ws-plan-cards .ws-price-unit{font-size:10px;padding-bottom:21px;margin-bottom:20px!important}
.ws-plan-cards .ws-price-card-body .ws-plan-includes{flex:0;font-size:11px;color:#506d42;margin-bottom:18px!important;font-weight:600}
.ws-plan-services{list-style:none;flex:1;width:100%}
.ws-plan-services li{font-size:12px;line-height:1.85;margin-bottom:14px;padding-left:19px;position:relative}
.ws-plan-services li:before{content:"＋";position:absolute;left:0;font-size:12px;color:#86a16e}
.ws-plan-light .ws-plan-services li:before{content:"✓"}
.ws-plan-cards .ws-plan-card .ws-price-card-body .ws-plan-meetings{flex:0 0 auto;width:100%;border-top:1px solid var(--line);padding-top:18px;margin:8px 0 22px!important;font-size:14px;line-height:1.8;font-weight:600;color:var(--ink)}
.ws-plan-cards .ws-button{font-size:11px;gap:9px}
.ws-hero-foot .ws-motion-toggle{margin:0 0 0 auto;border-color:#b6c2ac;color:#5b6c52;font-size:10px;padding:5px 10px;letter-spacing:0;background:transparent;line-height:1.6}
.ws-hero-foot>a{margin-left:24px}

/* Motion starts only after JavaScript opts in. Text and images are visible by default. */
.ws-flow-line,.ws-coil-light{animation:none}
.ws-coil-light{opacity:.75}
.ws-motion-ready [data-ws-reveal]{transition:opacity .65s ease var(--ws-delay,0ms),transform .65s cubic-bezier(.2,.7,.2,1) var(--ws-delay,0ms)}
.ws-motion-ready .is-reveal-pending{opacity:0;transform:translate3d(0,22px,0)}
.ws-motion-ready .ws-focus-revealed,.ws-motion-ready [data-ws-reveal]:focus-within{opacity:1;transform:none;transition:none}
.ws-hero-entering .ws-entry-copy>*{animation:ws-hero-copy .75s cubic-bezier(.2,.7,.2,1) both;animation-delay:.08s}
.ws-hero-entering .ws-entry-copy h1{animation-delay:.14s}
.ws-hero-entering .ws-entry-copy .ws-entry-lead{animation-delay:.21s}
.ws-hero-entering .ws-entry-copy .ws-entry-body{animation-delay:.26s}
.ws-hero-entering .ws-entry-copy .ws-actions{animation-delay:.3s}
.ws-hero-entering .ws-hero-portrait .ws-picture{animation:ws-hero-photo 1.1s cubic-bezier(.2,.7,.2,1) both}
.ws-motion-ready [data-ws-depth] .ws-picture img{transform:translate3d(0,var(--ws-photo-y,0px),0) scale(1.18);will-change:transform}
.ws-motion-ready [data-ws-loop="cooling"] .ws-flow-line{animation:ws-coolant-fall 1.7s linear infinite paused}
.ws-motion-ready [data-ws-loop="cooling"].is-motion-active .ws-flow-line{animation-play-state:running}
.ws-motion-ready [data-ws-loop="engineering"] .ws-path-stage:before{animation:ws-stage-glow 7.5s ease-in-out infinite paused;animation-delay:calc(var(--ws-stage)*2.5s)}
.ws-motion-ready [data-ws-loop="engineering"] .ws-path-stage:after{animation:ws-stage-line 7.5s ease-in-out infinite paused;animation-delay:calc(var(--ws-stage)*2.5s)}
.ws-motion-ready [data-ws-loop="engineering"].is-motion-active .ws-path-stage:before,.ws-motion-ready [data-ws-loop="engineering"].is-motion-active .ws-path-stage:after{animation-play-state:running}
.ws-top-nav a:focus-visible:after{transform:scaleX(1)}
.ws-button>span{transition:transform .2s ease}
.ws-button:hover>span,.ws-button:focus-visible>span{transform:translate(2px,-2px)}
.ws-detail summary>span{transition:transform .2s ease}
@keyframes ws-hero-copy{from{opacity:.15;transform:translate3d(0,16px,0)}to{opacity:1;transform:none}}
@keyframes ws-hero-photo{from{opacity:.3;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}
@keyframes ws-stage-glow{0%,33.34%,100%{opacity:0}10%,25%{opacity:.075}}
@keyframes ws-stage-line{0%{transform:scaleX(0);opacity:1}29%{transform:scaleX(1);opacity:1}33.34%,100%{transform:scaleX(1);opacity:0}}
.ws-motion-paused *, .ws-motion-paused *:before, .ws-motion-paused *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.ws-motion-paused [data-ws-reveal],.ws-motion-paused [data-ws-depth] .ws-picture img{opacity:1;transform:none!important;will-change:auto}
.ws-motion-paused .ws-button:hover,.ws-motion-paused .ws-button>span{transform:none}
.ws-page-hidden *, .ws-page-hidden *:before, .ws-page-hidden *:after{animation-play-state:paused!important}
@media(max-width:1150px){
 .ws-service-grid .ws-service{padding:28px}
 .ws-service-grid .ws-service-title h3{font-size:21px}
 .ws-ai-grid{gap:18px}
 .ws-plan-cards{gap:16px}
 .ws-plan-cards .ws-price-card-head,.ws-plan-cards .ws-price-card-body{padding:24px 20px}
 .ws-plan-cards .ws-plan-amount{font-size:19px}
 .ws-plan-cards .ws-button{font-size:10px;padding:13px 10px}
}
@media(max-width:800px){
 .ws-problem-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
 .ws-service-grid{gap:18px}
 .ws-service-grid .ws-service{padding:25px 23px}
 .ws-service-grid .ws-service-title h3{font-size:19px}
 .ws-service-examples{font-size:13px}
 .ws-path-stage{padding:23px 18px}
 .ws-path-stage strong{font-size:14px}
 .ws-path-stage small{font-size:10px}
 .ws-ai-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}
 .ws-process-full{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ws-consultation-band{padding:27px;gap:24px}
 .ws-consultation-band h3{font-size:20px}
 .ws-consultation-band .ws-button{padding:14px 18px;font-size:11px}
 .ws-plan-cards{grid-template-columns:1fr;gap:20px}
 .ws-plan-cards .ws-plan-card{display:grid;grid-template-columns:.8fr 1.2fr}
 .ws-plan-cards .ws-price-card-head{height:auto;min-height:0;padding:27px}
 .ws-plan-cards .ws-price-card-body{padding:27px}
 .ws-plan-cards .ws-plan-amount{font-size:23px}
 .ws-plan-cards .ws-button{font-size:12px;padding:13px 16px}
 .ws-profile-photo .ws-picture{aspect-ratio:3/4}
}
@media(max-width:600px){
 .ws-problem-grid{grid-template-columns:1fr;gap:28px}
 .ws-problem h3{min-height:0}
 .ws-service-grid{grid-template-columns:1fr;margin-top:30px;gap:20px}
 .ws-service-grid .ws-service{padding:27px 24px;gap:22px}
 .ws-service-grid .ws-service-title h3{font-size:22px}
 .ws-service-grid .ws-service-title>p:not(.ws-eyebrow){font-size:13px}
 .ws-service-examples{font-size:14px}
 .ws-service-grid .ws-button{font-size:12px}
 .ws-engineering-path{grid-template-columns:1fr;margin-top:30px}
 .ws-path-stage{padding:21px 24px}
 .ws-path-stage+.ws-path-stage{border-left:0;border-top:1px solid #40534e}
 .ws-path-stage>span{font-size:9px;max-width:none;margin-bottom:10px}
 .ws-path-stage strong{font-size:17px}
 .ws-path-stage small{font-size:11px;margin-top:7px}
 .ws-product-photo{aspect-ratio:1.35}
 .ws-ai-experience{padding:25px 23px;margin-top:36px}
 .ws-ai-heading h3{font-size:21px}
 .ws-ai-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px}
 .ws-ai-grid li:last-child{grid-column:1/-1}
 .ws-ai-grid h4{font-size:14px}
 .ws-process-full{grid-template-columns:1fr}
 .ws-process-summary h3{font-size:18px}
 .ws-consultation-band{display:block;padding:25px}
 .ws-consultation-band h3{font-size:20px}
 .ws-consultation-band .ws-button{margin-top:22px;font-size:12px}
 .ws-plan-cards .ws-plan-card{display:flex}
 .ws-plan-cards .ws-price-card-head{padding:24px 25px}
 .ws-plan-cards .ws-price-card-head h3{font-size:27px}
 .ws-plan-cards .ws-price-card-head .ws-plan-tagline{font-size:13px}
 .ws-plan-cards .ws-price-card-body{padding:25px}
 .ws-plan-cards .ws-plan-amount{font-size:25px}
 .ws-plan-services li{font-size:13px}
 .ws-plan-cards .ws-price-card-body .ws-plan-includes{font-size:12px}
 .ws-profile-photo .ws-picture{aspect-ratio:1/1.1}
 .ws-hero-foot{flex-wrap:wrap;gap:14px 10px}
 .ws-hero-foot .ws-motion-toggle{font-size:9px}
 .ws-hero-foot>a{margin-left:0;font-size:8px}
}
@media(prefers-reduced-motion:reduce){
 .ws-home:not(.ws-motion-opt-in) *, .ws-home:not(.ws-motion-opt-in) *:before, .ws-home:not(.ws-motion-opt-in) *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 .ws-home:not(.ws-motion-opt-in) [data-ws-reveal],.ws-home:not(.ws-motion-opt-in) [data-ws-depth] .ws-picture img{opacity:1!important;transform:none!important;will-change:auto}
 .ws-home:not(.ws-motion-opt-in) .ws-button:hover,.ws-home:not(.ws-motion-opt-in) .ws-button>span{transform:none}
}
@media print{
 .ws-home [data-ws-reveal]{opacity:1!important;transform:none!important}
 .ws-home [data-ws-depth] .ws-picture img{transform:none!important}
 .ws-service-grid,.ws-plan-cards{display:block}
 .ws-service-grid .ws-service,.ws-plan-cards .ws-plan-card{break-inside:avoid;margin-bottom:20px}
}

/* Contact consent and server feedback. */
.ws-consent{margin:1.5rem 0;line-height:1.8}.ws-consent label{display:flex;align-items:flex-start;gap:.65rem}.ws-consent input{flex:none;margin-top:.45rem;width:18px;height:18px;accent-color:var(--ws-accent,#c4552a)}.ws-consent a{display:inline-block;margin-top:.65rem;text-decoration:underline}.ws-form-actions{display:flex;flex-wrap:wrap;gap:12px}.ws-form-actions .ws-button{white-space:normal}#ws-send-status:focus{outline:2px solid currentColor;outline-offset:4px}

/* Compact problem-to-service flow and numeric proof accents. */
.ws-proof-number{color:#89652f;font-weight:inherit}
.ws-problems-compact .ws-section-heading,.ws-services-compact .ws-section-heading{text-align:center}
.ws-problems-compact .ws-section-heading .ws-eyebrow,.ws-services-compact .ws-section-heading .ws-eyebrow{justify-content:center}
.ws-problems-compact .ws-problem-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:50px}
.ws-problems-compact .ws-problem{display:block;border-top:0;border-left:1px solid var(--line);padding:0 32px}
.ws-problems-compact .ws-problem:first-child{border-left:0}
.ws-problems-compact .ws-index{font-family:inherit;font-size:14px;font-weight:600;color:#64725c;display:block;margin-bottom:22px}
.ws-problems-compact .ws-problem h3{font-size:23px;min-height:0;margin-bottom:18px}
.ws-problems-compact .ws-problem>p{font-size:16px;line-height:1.95;color:#46534d}
.ws-solution-bridge{background:#fff;padding:64px 0 0;text-align:center}
.ws-solution-bridge h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:32px;font-weight:600;line-height:1.8;text-wrap:balance}
.ws-solution-bridge h2 span{display:block}
.ws-solution-bridge h2 span:nth-child(n+2){display:inline}
.ws-problems-compact h2 span,.ws-services-compact h2 span{text-wrap:balance}
.ws-solution-bridge .ws-container>span{display:block;font-size:24px;color:#718564;margin-top:20px}
.ws-services-compact{padding-top:62px}
.ws-service-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:44px;padding:34px 0}
.ws-service-overview .ws-service{display:block;min-width:0;padding:0 32px;border:0;border-left:1px solid var(--line)}
.ws-service-overview .ws-service:first-child{border-left:0}
.ws-overview-index{display:block;font-family:Georgia,serif;font-size:24px;color:#718564;margin-bottom:20px}
.ws-service-overview h3{font-size:23px;line-height:1.6;margin-bottom:20px;text-wrap:balance}
.ws-service-overview p{font-size:16px;line-height:1.95;color:#46534d;white-space:pre-line}
@media(max-width:1000px){
 .ws-problems-compact .ws-problem,.ws-service-overview .ws-service{padding-inline:20px}
 .ws-problems-compact .ws-problem h3,.ws-service-overview h3{font-size:21px}
}
@media(max-width:900px){
 .ws-problems-compact .ws-problem-grid,.ws-service-overview{grid-template-columns:1fr;gap:26px}
 .ws-problems-compact .ws-problem,.ws-service-overview .ws-service{padding:26px 0 0;border-left:0;border-top:1px solid var(--line)}
 .ws-problems-compact .ws-problem:first-child,.ws-service-overview .ws-service:first-child{border-top:0;padding-top:0}
 .ws-problems-compact .ws-index,.ws-overview-index{margin-bottom:14px}
 .ws-problems-compact .ws-problem h3,.ws-service-overview h3{font-size:23px;margin-bottom:14px}
 .ws-problems-compact .ws-section-heading h2,.ws-services-compact .ws-section-heading h2{font-size:clamp(23px,6vw,29px)}
 .ws-solution-bridge{padding-top:48px}
 .ws-solution-bridge h2{font-size:clamp(23px,6vw,28px)}
 .ws-solution-bridge h2 span:nth-child(n+2){display:block}
 .ws-services-compact{padding-top:44px}
 .ws-service-overview{margin-top:30px;padding:28px 0}
}

/* Short homepage evidence, with full records on native detail pages. */
.ws-results-summary,.ws-feature-summary{padding-block:76px}
.ws-results-summary .ws-section-heading,.ws-feature-summary .ws-section-heading{margin-bottom:24px}
.ws-home .ws-summary-lead{max-width:720px;color:#c6d2cb;font-size:15px;line-height:1.9;margin:20px 0 30px}
.ws-results-summary .ws-case-grid{gap:28px;margin-top:0}
.ws-results-summary .ws-technical-visual{height:170px;aspect-ratio:auto;padding:8px 14px}
.ws-results-summary .ws-technical-visual svg{height:100%;width:100%}
.ws-results-summary .ws-case-copy{padding:22px 26px}
.ws-results-summary .ws-case-copy h3{font-size:22px;line-height:1.5;margin-bottom:12px}
.ws-results-summary .ws-case-copy>p{font-size:14px;line-height:1.85}
.ws-summary-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:26px}
.ws-summary-bottom .ws-note{margin:0}
.ws-summary-bottom .ws-button{color:#eef3e9!important;border-color:#7e9385;font-size:13px}
.ws-own-summary{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;margin-top:30px}
.ws-own-summary .ws-product-photo{margin:0;aspect-ratio:1.6}
.ws-own-summary-copy>p{font-size:15px;line-height:1.9;margin-bottom:22px}
.ws-own-summary-copy>.ws-eyebrow{font-size:12px}
.ws-own-summary-copy>.ws-own-summary-result{font-size:21px;font-weight:500;line-height:1.8}
.ws-own-summary-copy .ws-button{font-size:13px}
.ws-plan-cards .ws-plan-amount{font-size:38px;line-height:1.4;font-weight:500}
.ws-plan-cards .ws-price-unit{font-size:13px}
.ws-plan-services li{font-size:15px}
.ws-plan-cards .ws-price-card-body .ws-plan-includes{font-size:14px}
.ws-pricing .ws-consultation-band{margin:32px 0}
.ws-detail-intro{padding:150px 0 48px;background:#f3f5ef}
.ws-breadcrumb{font-size:13px;color:#526052;margin-bottom:36px}
.ws-breadcrumb a{text-decoration:underline;text-underline-offset:4px}
.ws-detail-intro-row{display:flex;justify-content:space-between;align-items:center;gap:25px}
.ws-detail-intro h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:48px;line-height:1.5;margin-top:12px}
.ws-detail-intro .ws-motion-toggle{margin-top:22px;background:transparent;border:1px solid #97a08e;padding:7px 12px;font-size:11px;color:#475b40}
.ws-detail-page .ws-section{padding-block:72px}
.ws-case-patent{border-top:1px solid #51665c;padding-top:22px;margin-top:26px}
.ws-case-patent h3{font-size:18px}
.ws-case-patent p{font-size:13px;line-height:1.85;color:#c6d2cb}
.ws-case-patent .ws-eyebrow{font-size:10px;margin-bottom:12px}
.ws-home .ws-detail-sales{font-size:22px;line-height:1.8;margin:32px 0}
.ws-detail-exit{padding:56px 0;background:#e8eddf}
.ws-home .ws-detail-exit p{font-size:22px;line-height:1.6;margin-bottom:26px}
@media(max-width:1000px){
 .ws-own-summary{gap:30px}
 .ws-own-summary-copy>.ws-own-summary-result{font-size:19px}
 .ws-plan-cards .ws-plan-amount{font-size:32px}
}
@media(max-width:800px){
 .ws-own-summary{grid-template-columns:1fr;gap:28px}
 .ws-own-summary .ws-product-photo{max-height:360px}
 .ws-summary-bottom{align-items:flex-start;flex-direction:column;gap:16px}
 .ws-detail-intro-row{align-items:flex-start;flex-direction:column}
 .ws-results-summary .ws-case-copy h3{font-size:19px}
}
@media(max-width:600px){
 .ws-results-summary,.ws-feature-summary{padding-block:52px}
 .ws-results-summary .ws-case-grid{gap:22px}
 .ws-results-summary .ws-technical-visual{height:140px}
 .ws-results-summary .ws-case-copy{padding:20px}
 .ws-results-summary .ws-case-copy h3{font-size:21px}
 .ws-home .ws-summary-lead{font-size:14px;margin:20px 0 24px}
 .ws-own-summary-copy>.ws-own-summary-result{font-size:20px}
 .ws-own-summary .ws-product-photo{aspect-ratio:1.4}
 .ws-detail-intro{padding-top:138px}
 .ws-detail-intro h1{font-size:34px}
 .ws-detail-page .ws-section{padding-block:52px}
 .ws-detail-exit .ws-actions{align-items:stretch;flex-direction:column}
 .ws-home .ws-detail-sales{font-size:19px}
}

.ws-summary-bottom .ws-button:hover{background:#31453d}

.ws-top-nav a[aria-current="page"]:after{transform:scaleX(1)}

/* Alternate profile portrait keeps the face centered in responsive crops. */
.ws-profile-photo .ws-picture img{object-position:50% 30%}

/* Scroll storytelling stays inside the existing section and image dimensions. */
.ws-solution-bridge{position:relative;isolation:isolate;overflow:hidden}
.ws-connection-scene{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;color:#819772}
.ws-connection-grid{stroke:currentColor;stroke-width:1;opacity:.12}
.ws-connection-traces{stroke:currentColor;stroke-width:1.5;opacity:.3}
.ws-connection-left,.ws-connection-right{fill:#fbfcf9;stroke:currentColor;stroke-width:1.4;opacity:.42}
.ws-solution-bridge h2{position:relative;background:radial-gradient(ellipse at center,#fff 52%,rgba(255,255,255,0) 75%)}
.ws-motion-ready:not(.ws-motion-paused) .ws-connection-traces path{stroke-dasharray:100;stroke-dashoffset:calc((1 - var(--ws-scene-progress,1)) * 100)}
.ws-motion-ready:not(.ws-motion-paused) .ws-connection-left{transform:translateX(calc((1 - var(--ws-scene-progress,1)) * -90px))}
.ws-motion-ready:not(.ws-motion-paused) .ws-connection-right{transform:translateX(calc((1 - var(--ws-scene-progress,1)) * 90px))}
.ws-technical-visual{overflow:hidden}
.ws-motion-ready:not(.ws-motion-paused) .ws-assembly-ring{transform-box:fill-box;transform-origin:center;transform:scale(calc(.85 + var(--ws-scene-progress,1) * .15))}
.ws-motion-ready:not(.ws-motion-paused) .ws-assembly-tooth{transform:translateY(calc((1 - var(--ws-scene-progress,1)) * -28px))}
.ws-process-summary [data-ws-step]{position:relative}
.ws-process-summary [data-ws-step]:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:#879f72;transform-origin:left;transform:scaleX(1)}
.ws-motion-ready:not(.ws-motion-paused) .ws-process-summary [data-ws-step]:after{transform:scaleX(var(--ws-step-progress,1))}
.ws-motion-ready .ws-profile-photo.is-reveal-pending{transform:translate3d(0,32px,0)}
@media(max-width:600px){
 .ws-motion-ready [data-ws-depth] .ws-picture img{transform:translate3d(0,var(--ws-photo-y,0px),0) scale(1.12)}
 .ws-connection-scene{width:160%;max-width:none;left:-30%;opacity:.65}
}
@media print{
 .ws-connection-scene{display:none}
 .ws-home .ws-assembly-ring,.ws-home .ws-assembly-tooth{transform:none!important}
 .ws-home .ws-flow-line{opacity:1!important;animation:none!important}
 .ws-home .ws-process-summary [data-ws-step]:after{transform:none!important}
}

/* Compact illustrated signposts for the three problems and three services. */
.ws-card-symbol{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px;min-height:76px}
.ws-line-icon{display:block;flex:none;width:76px;height:76px;color:#394f48}
.ws-line-icon .ws-icon-accent{stroke:#8a9e70;stroke-width:2}
.ws-problems-compact .ws-card-symbol .ws-index,.ws-card-symbol .ws-overview-index{margin:0;color:#718564}
.ws-motion-ready:not(.ws-motion-paused) .is-revealed:not(.is-reveal-pending) .ws-line-icon > *{stroke-dasharray:100;animation:ws-icon-draw 1.05s cubic-bezier(.2,.7,.2,1) both;animation-delay:var(--ws-delay,0ms)}
.ws-motion-ready:not(.ws-motion-paused) .is-revealed:not(.is-reveal-pending) .ws-line-icon .ws-icon-accent{animation-delay:calc(var(--ws-delay,0ms) + .12s)}
@keyframes ws-icon-draw{from{stroke-dashoffset:100;opacity:.3}to{stroke-dashoffset:0;opacity:1}}
@media(max-width:900px){
 .ws-card-symbol{min-height:64px;margin-bottom:18px}
 .ws-line-icon{width:64px;height:64px}
}
@media print{.ws-line-icon > *{stroke-dasharray:none!important;animation:none!important}}

/* Cooling: the stator is fixed; only liquid travels down from above. */
@keyframes ws-coolant-fall{to{stroke-dashoffset:-54}}

/* Appointment booking stays separate from the inquiry submission flow. */
.ws-booking{margin-top:42px;background:#fff;border:1px solid #cbd7c6;padding:32px}
.ws-booking-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.ws-booking-heading .ws-eyebrow{margin-bottom:10px!important;color:#526d46}
.ws-booking-heading h3{font-size:28px;line-height:1.5}
.ws-booking-heading .ws-booking-meta{margin-top:12px;font-size:15px;color:var(--muted)}
.ws-booking-intro{font-size:15px;line-height:1.9;margin:24px 0 14px!important}
.ws-booking-frame{display:block;width:100%;height:720px;border:0;background:#fff}
.ws-booking-widget{width:100%;min-width:0}
#ws-message,#ws-booking{scroll-margin-top:110px}
.ws-booking-fallback{font-size:13px;line-height:1.9;margin-top:18px!important;color:var(--muted)}
.ws-booking-fallback a{text-decoration:underline;text-underline-offset:4px;color:var(--ink)}
.ws-booking-pending{padding:40px 24px;margin-top:24px;background:#f5f7f2;text-align:center;font-size:15px}
.ws-booking-pending p+p{margin-top:8px;font-size:13px;color:var(--muted)}
.ws-contact-card .ws-message-title{font-size:22px;margin-bottom:24px;line-height:1.6}
@media(max-width:600px){.ws-booking{padding:22px 12px;margin-top:28px}.ws-booking-heading{gap:16px;padding:0 8px}.ws-booking-heading h3{font-size:24px}.ws-booking-intro,.ws-booking-fallback{padding-inline:8px}.ws-booking-frame{height:820px}.ws-booking-heading .ws-text-link{font-size:12px}.ws-booking-heading .ws-booking-meta{font-size:13px}}
@media print{.ws-booking-frame{display:none}.ws-booking{padding:16px}.ws-booking-fallback a:after{content:" (" attr(href) ")";overflow-wrap:anywhere}}

/* Readable FAQ directly after pricing and before the booking section. */
.ws-faq-pricing{margin-top:56px;padding-top:40px;border-top:2px solid #bac6b2;color:#17231f}
.ws-faq-pricing h3{margin-bottom:24px;font-size:28px;line-height:1.5;color:#17231f;font-weight:600}
.ws-faq-pricing details{border-bottom:1px solid #bac6b2}
.ws-faq-pricing summary{padding:24px 0;font-size:18px;line-height:1.7;font-weight:600;color:#17231f;align-items:center}
.ws-faq-pricing summary>span{flex:none;color:#344d3c;font-size:24px;line-height:1;font-weight:400}
.ws-faq-pricing summary:focus-visible{outline:2px solid #344d3c;outline-offset:5px}
.ws-faq-pricing details>p{max-width:82ch;padding:0 0 24px;font-size:16px;line-height:1.9;color:#28332e}
@media(max-width:600px){.ws-faq-pricing{margin-top:40px;padding-top:28px}.ws-faq-pricing h3{font-size:24px;margin-bottom:16px}.ws-faq-pricing summary{font-size:16px;padding:20px 0;gap:16px}.ws-faq-pricing details>p{font-size:16px;padding-bottom:20px}}

/* Keep each face in frame after swapping the hero and profile portraits. */
.ws-hero-portrait .ws-picture img{object-position:50% 18%}
.ws-profile-photo .ws-picture img{object-position:80% 50%}
@media(max-width:600px){.ws-hero-portrait .ws-picture img{object-position:50% 12%}}
