:root{--ink:#101116;--muted:#646a74;--line:#e4e5e9;--paper:#f8f9fa;--panel:#fff;--navy:#102840;--soft:#f3f4f6;--r:18px;--max:1370px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font:16px/1.5 Arial,'Malgun Gothic',system-ui,sans-serif;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a{ -webkit-tap-highlight-color:transparent }a{color:inherit;text-decoration:none}button{cursor:pointer}img{max-width:100%}::selection{background:#d5d9df}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #4b74bb;outline-offset:3px}.wide{width:min(var(--max),calc(100% - 8.1vw));margin-inline:auto}
.localized .hero-mobile{background:linear-gradient(#fbfbfc,#f6f7f9);min-height:800px;padding:100px 0 70px;display:flex;flex-direction:column}.localized .hero-mobile .wide{display:flex;flex-direction:column}.localized .hero-mobile h1{font-size:clamp(48px,6.5vw,92px);letter-spacing:-.07em;line-height:1.1;margin:0 0 25px}.localized .hero-mobile p{font-size:clamp(20px,2vw,29px);color:#656b75;max-width:540px;margin:0 0 38px}.localized .hero-mobile .hero-m-robot{width:min(640px,75vw);align-self:flex-end;margin:-10px 5vw -20px 0}.localized .hero-mobile .inline-cta{margin-top:0}/* desktop landing hero uses the exact approved image and invisible live hotspots */
.localized .hero-shot{display:none}.localized .hero-mobile{display:flex}.hero-shot{position:relative;width:min(100%,1591px);margin:0 auto;background:#f7f8fb}.hero-shot>img{display:block;width:100%;height:auto}.hotspot{position:absolute;display:block;z-index:3;border-radius:8px;outline-offset:-2px}.hotspot:hover{background:rgba(28,28,28,.07)}.hotspot--systems{left:12%;top:80.2%;width:16.5%;height:7.8%}.hotspot--tech{left:29.5%;top:80.2%;width:18%;height:7.8%}.hotspot--menu-s{left:66%;top:3.8%;width:8.1%;height:6%}.hotspot--menu-t{left:75%;top:3.8%;width:10%;height:6%}.hotspot--menu-c{left:85%;top:3.8%;width:8%;height:6%}.hotspot--brand{left:3%;top:3.4%;width:23%;height:7%}.hotspot--hamb{left:93%;top:3.8%;width:4%;height:6%}
.mnav{display:none}.localized .mnav{display:block;position:sticky;top:0;z-index:17;background:#fff;border-bottom:1px solid #e8e9ec}.localized .hero-mobile{display:flex}.hero-mobile{display:none}.lang-panel{display:flex;align-items:center;gap:8px;justify-content:flex-end;padding:12px max(30px,4.1vw);border-bottom:1px solid #f0f0f0;color:#6f737a;font-size:13px}.lang-panel span{margin-right:auto;font-size:12px}.lang-panel button{border:0;background:transparent;padding:4px 7px;border-radius:4px;color:#6a6a6a}.lang-panel button.on{background:#111;color:#fff}
.section{padding:120px 0}.eyebrow{font-size:12px;letter-spacing:.16em;font-weight:700;color:#646b76;text-transform:uppercase;display:flex;align-items:center;gap:15px}.eyebrow:before{content:'';display:inline-block;width:23px;height:1px;background:#171717}.headline{font-size:clamp(35px,3.15vw,53px);line-height:1.15;letter-spacing:-.052em;font-weight:690;margin:25px 0 0}.lead{color:#626875;font-size:clamp(17px,1.22vw,21px);line-height:1.58}.section-intro{display:grid;grid-template-columns:1.2fr .8fr;gap:5%;align-items:end;margin-bottom:54px}.section-intro .lead{max-width:470px;justify-self:end;margin:0 0 4px}
.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.p-card{border:1px solid #e1e2e4;background:#fff;border-radius:15px;overflow:hidden;text-align:left;padding:0;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;flex-direction:column}.p-card:hover{transform:translateY(-5px);box-shadow:0 16px 35px rgba(15,20,30,.07);border-color:#bbc0c8}.p-card img{width:100%;aspect-ratio:1.45;object-fit:cover;background:#f5f6f8}.p-card-body{padding:19px 21px 24px;flex:1;position:relative;min-height:142px}.p-card h3{font-size:23px;line-height:1.15;margin:0 0 3px;letter-spacing:-.04em}.p-card .sub{font-size:13px;font-weight:600;margin:0 0 11px}.p-card p{color:#626875;font-size:14px;line-height:1.45;margin:0 0 15px}.round-arrow{position:absolute;right:17px;bottom:18px;display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#f2f3f4;font-size:20px}
.value-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:82px}.value-grid>div{padding:5px 24px;border-right:1px solid #e3e4e7}.value-grid>div:first-child{padding-left:0}.value-grid>div:last-child{border:0}.value-grid h4{font-size:19px;letter-spacing:-.025em;margin:0 0 9px}.value-grid p{color:#696f79;font-size:14px;line-height:1.58;margin:0}
.consult-banner{height:350px;background:#eff1f3;border-radius:22px;margin:104px auto 30px;position:relative;overflow:hidden}.consult-banner img{position:absolute;right:0;width:64%;height:100%;object-fit:cover;object-position:center}.consult-copy{position:absolute;inset:0;width:57%;padding:52px 55px;background:linear-gradient(90deg,rgba(246,247,248,.97),rgba(248,249,250,.86) 75%,transparent);display:flex;flex-direction:column;align-items:flex-start}.consult-copy .eyebrow:before{display:none}.consult-copy h2{font-size:clamp(27px,2.55vw,39px);letter-spacing:-.04em;line-height:1.2;margin:17px 0 14px}.consult-copy p{color:#676c74;font-size:16px;margin:0 0 auto}.btn{display:inline-flex;gap:15px;align-items:center;justify-content:center;border-radius:10px;border:1px solid #1c1e23;padding:13px 20px;font-size:15px;font-weight:550;white-space:nowrap;transition:transform .2s,opacity .2s}.btn:hover{transform:translateY(-2px)}.btn.dark{background:#101114;color:#fff}.btn.light{background:transparent;color:#16181d;border-color:#a5a9b1}.btn:disabled{opacity:.35;cursor:not-allowed}
.subnav{position:sticky;top:0;z-index:15;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-bottom:1px solid #eeeff1}.subnav-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}.subnav .subnav-inner .mnav-menu{display:none}.brand{letter-spacing:-.055em;font-size:29px;font-weight:750;white-space:nowrap}.brand span{font-weight:400;color:#777b83;font-size:.83em;letter-spacing:-.035em}.sub-links{display:flex;align-items:center;gap:38px}.sub-links a{color:#5d626c;font-size:16px;transition:color .2s}.sub-links a:hover,.sub-links a.active{color:#111}.language-inline{border-left:1px solid #dcdfe2;padding-left:18px;display:flex;gap:6px}.language-inline button{border:0;background:none;color:#777;font-size:12px;padding:6px}.language-inline button.on{color:#111;font-weight:800}
.page-title{padding:84px 0 62px}.crumb{display:flex;align-items:center;gap:10px;color:#7a7f87;font-size:13px;margin:0 0 40px}.crumb a:hover{color:#111}.page-title h1{font-size:clamp(48px,5vw,80px);letter-spacing:-.06em;line-height:1.05;margin:10px 0 21px;font-weight:680}.page-title .lead{max-width:800px}.large-label{font-weight:600;font-size:12px;letter-spacing:.16em;color:#8a8d95;text-transform:uppercase}.split-panel{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;padding:70px 0 130px}.media-panel{background:linear-gradient(150deg,#f4f5f7,#fff);min-height:380px;border-radius:20px;display:grid;place-items:center;overflow:hidden}.media-panel img{width:100%;height:100%;object-fit:cover}.split-panel h2{font-size:clamp(32px,3.2vw,51px);line-height:1.17;letter-spacing:-.045em;margin:16px 0}.split-panel p{font-size:18px;color:#626975;max-width:530px;line-height:1.7}.inline-cta{margin-top:32px;display:flex;flex-wrap:wrap;gap:12px}
.list-row{display:flex;align-items:center;gap:42px;border-top:1px solid #e5e7e9;padding:33px 0}.list-row:last-child{border-bottom:1px solid #e5e7e9}.list-row .num{font-size:13px;color:#848a93;width:34px}.list-row img{width:164px;height:111px;border-radius:10px;object-fit:cover}.list-row .txt{flex:1}.list-row h3{font-size:28px;margin:0 0 5px;letter-spacing:-.035em}.list-row p{margin:0;color:#717680;font-size:15px}.list-row .arr{border:1px solid #b5b9bd;border-radius:50%;width:40px;height:40px;display:grid;place-items:center;font-size:24px}.list-row:hover .arr{background:#111;color:#fff}
.meta-row{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin:44px 0 70px}.meta-row>div{border-top:1px solid #dcdfe3;padding-top:17px}.meta-row span{display:block;font-size:12px;font-weight:650;letter-spacing:.12em;color:#81858d;margin-bottom:8px}.meta-row strong{font-size:16px;font-weight:500}.detail-layout{display:grid;grid-template-columns:1.07fr .93fr;gap:7%;margin:40px 0 100px;align-items:start}.detail-media{background:linear-gradient(145deg,#f4f5f7,#fafafa);border-radius:19px;overflow:hidden}.detail-media img{width:100%;display:block;aspect-ratio:1.14;object-fit:contain}.thumb-row{display:flex;gap:12px;margin-top:12px}.thumb-row button{width:90px;height:69px;border:1px solid #d8dade;border-radius:8px;background:#f7f7f8;padding:0;overflow:hidden}.thumb-row button.selected{border:2px solid #171a21}.thumb-row img{width:100%;height:100%;object-fit:cover}.detail-right h2{font-size:clamp(45px,4.1vw,65px);letter-spacing:-.06em;line-height:1.1;margin:6px 0 3px}.detail-right .descriptor{font-size:19px;color:#4b505a}.detail-right .lead{margin:30px 0}.spec-box{border-top:1px solid #cfd2d6;margin:35px 0 25px}.spec{display:grid;grid-template-columns:39% 1fr;border-bottom:1px solid #e7e7e8;padding:15px 0;font-size:15px;gap:15px}.spec b{font-weight:550}.spec span{color:#777d86}.tag{display:inline-flex;font-size:12px;font-weight:650;letter-spacing:.04em;background:#f1f2f4;padding:7px 11px;border-radius:30px;color:#69717a}
.form-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:8%;padding:42px 0 100px}.form-area{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.field.full{grid-column:1/-1}.field label{display:block;font-size:13px;font-weight:600;color:#555b65;margin:0 0 9px}.field input,.field textarea,.field select{width:100%;background:#fff;border:1px solid #d8dbe0;border-radius:8px;padding:15px 14px;color:#191a20;min-height:54px;font-size:16px}.field textarea{min-height:152px;resize:vertical}.required{color:#a53b48}.form-side{border-radius:18px;background:#f3f4f6;padding:44px;align-self:start}.form-side h2{font-size:30px;letter-spacing:-.035em;line-height:1.25;margin:0 0 30px}.step{display:flex;gap:19px;align-items:flex-start;border-top:1px solid #d8dade;padding:24px 0}.step span{font-size:25px;color:#9a9ea6;font-weight:350}.step b{font-size:16px;display:block}.step p{font-size:14px;color:#717680;margin:5px 0 0}.demo-flag{padding:18px 20px;background:#f7f7f8;border:1px solid #e2e4e7;font-size:13px;color:#69707a;border-radius:10px;margin:28px 0 0}
.footer{margin-top:100px;border-top:1px solid #e6e8e9;padding:48px 0 32px;color:#797e87;font-size:13px}.footer .wide{display:flex;align-items:center;justify-content:space-between;gap:30px}.footbrand{font-size:22px;color:#17181e;font-weight:750;letter-spacing:-.05em}.footbrand span{font-weight:400;color:#797e87}.disclaimer{font-size:12px;color:#7b828c;text-align:center;padding:16px 25px;background:#f3f4f6;line-height:1.6}.toast{opacity:0;pointer-events:none;position:fixed;z-index:40;right:24px;bottom:24px;max-width:430px;padding:17px 22px;background:#15191f;color:#fff;box-shadow:0 16px 40px #0003;border-radius:11px;font-size:15px;transform:translateY(120px);transition:transform .25s}.toast.show{opacity:1;transform:translateY(0)}.float-home{position:fixed;bottom:18px;left:20px;z-index:12;display:none;border:1px solid #d4d7db;background:rgba(255,255,255,.9);border-radius:22px;padding:9px 16px;font-size:13px;color:#464a52;box-shadow:0 4px 20px #0001}
/* --- implementation additions (no visual change to approved design) --- */
.drawerlinks{display:flex;flex-direction:column;gap:14px;padding:14px 0 22px;border-top:1px solid #e7e9ec}
.drawerlinks a{font-size:15px}
.hotspot:focus-visible{outline:3px solid #4b74bb;outline-offset:2px;background:rgba(28,28,28,.05)}
.p-card:focus-visible,.list-row:focus-visible,.btn:focus-visible{outline:3px solid #4b74bb;outline-offset:3px}
.hero-shot>img{aspect-ratio:1591/988}
.mnav-menu{display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;padding:0;line-height:1;border:0;background:none;color:#101116;border-radius:8px}
.mnav-in{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:70px}
.localized .hero-m-robot{mix-blend-mode:multiply}
.mnav-menu:hover{background:#f2f3f5}
.menu-glyph{display:block;flex:none}
@media(max-width:670px){.mnav-menu{width:40px;height:40px}.mnav-in{gap:10px}}
@media(max-width:520px){
  .subnav-inner{gap:10px}
  .subnav .brand,.mnav .brand{font-size:21px}
  .language-inline{padding-left:0;border-left:0;gap:0}
  .language-inline button{font-size:11px;padding:5px 4px;letter-spacing:0}
}
@media(max-width:980px){.hero-shot{display:none}.mnav{display:block;position:sticky;top:0;z-index:17;background:#fff;border-bottom:1px solid #e8e9ec}.mnav-in{min-height:70px;display:flex;justify-content:space-between;align-items:center;gap:15px}.mnav .brand{font-size:23px}.mnav-menu{border:0;background:none;font-size:24px;padding:10px}.hero-mobile{display:flex;flex-direction:column;padding:80px 0 60px;background:linear-gradient(#fbfbfc,#f6f7f9);min-height:690px}.hero-mobile h1{font-size:clamp(47px,8vw,80px);letter-spacing:-.065em;line-height:1.06;margin:0 0 25px}.hero-mobile p{font-size:23px;color:#656b75;max-width:480px;margin:0 0 34px}.hero-mobile .hero-m-robot{width:min(720px,90vw);align-self:flex-end;mix-blend-mode:multiply;margin:-15px 0 -10px}.hero-mobile .wide{display:flex;flex-direction:column}.hero-mobile .inline-cta{margin:0}.subnav-inner{min-height:72px}.sub-links{gap:18px}.sub-links>a{font-size:13px}.cards{grid-template-columns:repeat(2,1fr)}.value-grid{grid-template-columns:repeat(2,1fr);row-gap:35px}.value-grid>div:nth-child(2){border:0}.consult-copy{width:60%}.detail-layout{grid-template-columns:1fr 1fr;gap:5%}.form-grid{grid-template-columns:1fr}.form-side{order:-1}.section{padding:95px 0}.float-home{display:inline-flex}}
@media(max-width:670px){.wide{width:calc(100% - 42px)}.lang-panel{padding:9px 21px;gap:0}.lang-panel span{font-size:10px}.brand{font-size:25px}.mnav .brand{font-size:22px}.sub-links>a{display:none}.subnav .subnav-inner .mnav-menu{display:inline-flex!important}.drawerlinks{display:flex;flex-direction:column;gap:15px;padding:14px 20px 25px;border-top:1px solid #e7e9ec}.drawerlinks a{font-size:17px}.language-inline{padding-left:0;border:0}.language-inline button{font-size:11px}.hero-mobile{min-height:650px;padding:65px 0 38px}.hero-mobile h1{font-size:clamp(43px,11vw,61px)}.hero-mobile p{font-size:19px;max-width:340px}.hero-mobile .hero-m-robot{width:96vw;margin:0 -20px 0 0}.hero-mobile .inline-cta{gap:8px}.btn{font-size:13px;padding:12px 15px}.section{padding:78px 0}.section-intro{grid-template-columns:1fr;gap:24px;margin-bottom:35px}.section-intro .lead{justify-self:start}.headline{font-size:clamp(31px,8vw,43px)}.cards{gap:12px}.p-card img{aspect-ratio:1.05}.p-card-body{padding:13px 14px 43px;min-height:165px}.p-card h3{font-size:20px}.p-card .sub{font-size:11px}.p-card p{font-size:12px}.round-arrow{right:11px;bottom:11px}.value-grid{margin-top:55px;gap:22px 0}.value-grid>div{padding:4px 10px}.value-grid>div:first-child,.value-grid>div:nth-child(3){padding-left:0}.value-grid h4{font-size:16px}.value-grid p{font-size:12px}.consult-banner{margin:80px auto 15px;height:400px}.consult-banner img{object-position:65% center}.consult-copy{width:100%;padding:35px 30px;background:linear-gradient(90deg,rgba(249,249,249,.93),rgba(249,249,249,.42))}.consult-copy h2{font-size:31px}.consult-copy p{max-width:250px;font-size:14px}.footer .wide{display:block}.footer .footbrand{margin-bottom:16px}.page-title{padding:55px 0 35px}.page-title h1{font-size:clamp(43px,10vw,59px)}.crumb{flex-wrap:wrap;font-size:12px;margin-bottom:25px}.split-panel{grid-template-columns:1fr;padding:25px 0 80px;gap:35px}.media-panel{min-height:230px}.list-row{gap:13px;padding:23px 0}.list-row .num{display:none}.list-row img{width:91px;height:75px}.list-row h3{font-size:19px}.list-row p{font-size:12px}.list-row .arr{width:30px;height:30px;font-size:16px;flex:none}.meta-row{grid-template-columns:1fr;gap:14px;margin:20px 0 35px}.detail-layout{grid-template-columns:1fr;gap:35px;margin:15px 0 70px}.detail-media img{aspect-ratio:1.2}.detail-right h2{font-size:48px}.form-area{grid-template-columns:1fr;gap:15px}.field.full{grid-column:auto}.form-side{padding:28px}.form-side h2{font-size:26px}.footbrand{font-size:20px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
