
/* ===== DW layer (2026-10-09, phase 1): Dewesoft-style layout in INDEX colours.
   Brief: research\design-dw-brief.md · DOM contract: research\dw-contract.md (dw-layout.js sets html.dw and the new header/footer nodes).
   Every rule is scoped to html.dw, so a page without dw-layout.js keeps the AUTO look. Style only: no 01–06 content is hidden or moved.
   Phase 1 = dark top bar + mega menu, crumb bar (sticky, dark when collapsed), footer columns, home (split hero, product cards,
   centred section titles, white / grey section rhythm). Delete this file to switch the layer off. ===== */

html.dw{
  --dw-font:"Barlow","Noto Sans JP","Noto Sans SC","Hiragino Sans","Microsoft YaHei","Segoe UI",system-ui,sans-serif;
  --dw-cond:"Barlow Condensed","Barlow","Noto Sans JP","Noto Sans SC",system-ui,sans-serif;
  --dw-blue:#0B5CD5; --dw-blue-h:#0949AB; --dw-blue-l:#4C8DFF; --dw-red:#D7132A;
  --dw-bar:#131A24; --dw-bar-ink:#D5DCE6; --dw-bar-line:rgba(255,255,255,.2);
  --dw-bg:#FFFFFF; --dw-grey:#F4F4F4; --dw-line:#DFE3E8; --dw-card:#FFFFFF; --dw-crumb:#F4F4F4;
  --dw-barh:64px;
  --dw-rule:linear-gradient(90deg,var(--dw-blue) 0 28px,var(--dw-red) 28px 40px)}
html.dw[data-theme="dark"]{
  --dw-bar:#060B14; --dw-bg:#0A1322; --dw-grey:#101C2F; --dw-line:#34496A; --dw-card:#0F1B2E; --dw-crumb:#111D31;
  --dw-rule:linear-gradient(90deg,#5C9BFF 0 28px,#FF4D61 28px 40px)}
html.dw:lang(zh){
  --dw-font:"Barlow","Noto Sans SC","Noto Sans JP","Microsoft YaHei","PingFang SC",system-ui,sans-serif;
  --dw-cond:"Barlow Condensed","Barlow","Noto Sans SC","Noto Sans JP",system-ui,sans-serif}

html.dw body,html.dw:lang(ja) body{font-family:var(--dw-font);font-size:16px;line-height:1.8;background:var(--dw-bg)!important}

/* =================================== header =================================== */
html.dw header.top{background:var(--dw-bar)!important;box-shadow:none!important;border-bottom:none!important;
  transition:transform .3s cubic-bezier(.2,.8,.2,1)}
html.dw header.top .util{display:none!important}
html.dw header.top .top-in{position:relative;min-height:var(--dw-barh);padding-block:0;align-items:stretch;gap:20px}
html.dw header.top .brand{align-self:center}
html.dw header.top .brand svg rect{fill:var(--dw-blue)!important}
html.dw header.top .brand svg path{stroke:#fff!important}
html.dw header.top .brand .wm{color:#fff}
html.dw header.top .brand .wm2{color:#8FA2C0}

/* menu: "Solutions" mega button + the site links, full bar height so hover can reach the panel */
html.dw .dw-menu{flex:1;min-width:0;display:flex;align-items:stretch;justify-content:center}
html.dw .dw-mi{display:flex;align-items:stretch}
html.dw .dw-mbtn,html.dw .top-in .sitenav a{appearance:none;display:flex;align-items:center;gap:8px;height:100%;padding:0 15px;border:0;border-radius:0;
  background:none;color:var(--dw-bar-ink);font-family:var(--dw-font);font-size:15.5px;font-weight:600;letter-spacing:.01em;white-space:nowrap;cursor:pointer;
  text-decoration:none;transition:color .2s,background .2s,box-shadow .2s,transform .22s cubic-bezier(.2,.8,.2,1)}
html.dw .dw-mbtn:hover,html.dw .dw-has:hover .dw-mbtn,html.dw .dw-has.open .dw-mbtn,html.dw .top-in .sitenav a:hover{
  color:#fff;background:rgba(255,255,255,.06);box-shadow:inset 0 -3px 0 var(--dw-blue-l);transform:none}
html.dw .top-in .sitenav a[aria-current="page"]{color:#fff;background:none;box-shadow:inset 0 -3px 0 var(--dw-blue-l);font-weight:700}
html.dw .top-in .sitenav{display:flex;gap:0;margin:0;flex:none;overflow:visible;-webkit-mask-image:none;mask-image:none;padding:0}
html.dw .dw-caret{display:inline-block;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;
  transform:translateY(-2px) rotate(45deg);transition:transform .2s}
html.dw .dw-has:hover .dw-caret,html.dw .dw-has.open .dw-caret{transform:translateY(2px) rotate(-135deg)}

/* mega panel (holds the 01–06 section tabs) */
html.dw .dw-mega{display:none;position:absolute;left:0;right:0;top:100%;z-index:60;padding:22px clamp(16px,3.6vw,44px) 26px;
  background:var(--dw-card);border-top:3px solid var(--dw-blue);border-bottom:1px solid var(--dw-line);border-radius:0 0 8px 8px;
  box-shadow:0 24px 48px -20px rgba(6,11,20,.45)}
html.dw .dw-has:hover .dw-mega,html.dw .dw-has.open .dw-mega{display:block}
html.dw .dw-mega-k{margin:0 0 12px;font-family:var(--dw-cond);font-size:14px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--own)}
html.dw .dw-mega nav.tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 12px;overflow:visible;padding:0;margin:0;
  justify-content:stretch;-webkit-mask-image:none!important;mask-image:none!important}
html.dw .dw-mega .tab{display:flex;align-items:baseline;gap:12px;padding:11px 14px!important;border-radius:6px;color:var(--ink)!important;
  font-size:16px!important;font-weight:600;white-space:normal;line-height:1.4;background:none}
html.dw .dw-mega .tab .mono{flex:none;min-width:1.7em;font-family:var(--dw-cond)!important;font-size:22px!important;font-weight:800;color:var(--own)!important}
html.dw .dw-mega .tab.au-x .mono{color:var(--dw-red)!important}
html.dw .dw-mega .tab::after{display:none!important}
html.dw .dw-mega .tab:hover{background:var(--own-fill);color:var(--own)!important;transform:scale(1.03)}
html.dw .dw-mega .tab[aria-current="true"]{background:var(--own-fill);color:var(--own)!important;box-shadow:inset 3px 0 0 var(--own)}

/* right side: search, language, theme, burger on the dark bar */
html.dw header.top .topright{align-self:center;gap:10px}
html.dw .top-in .cmdbtn,html.dw .top-in .editbtn,html.dw .top-in .iconbtn{background:rgba(255,255,255,.06)!important;border:1px solid var(--dw-bar-line)!important;
  color:var(--dw-bar-ink)!important;border-radius:4px!important}
html.dw .top-in .cmdbtn{height:34px}
html.dw .top-in .cmdbtn kbd{background:transparent!important;color:var(--dw-bar-ink)!important;border-color:var(--dw-bar-line)!important}
html.dw .top-in .cmdbtn:hover,html.dw .top-in .editbtn:hover,html.dw .top-in .iconbtn:hover{color:#fff!important;border-color:rgba(255,255,255,.55)!important}
html.dw .top-in .langsw{background:rgba(255,255,255,.06)!important;border:1px solid var(--dw-bar-line)!important;border-radius:4px!important}
html.dw .top-in .langsw button{color:var(--dw-bar-ink);font-weight:500}
html.dw .top-in .langsw button:hover{color:#fff}
html.dw .top-in .langsw button[aria-pressed="true"]{background:var(--dw-blue)!important;color:#fff!important;box-shadow:none!important;font-weight:700}
html.dw .dw-burger{display:none;appearance:none;width:40px;height:40px;flex:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:0;
  border:1px solid var(--dw-bar-line);border-radius:4px;background:transparent;cursor:pointer;transition:transform .22s cubic-bezier(.2,.8,.2,1)}
html.dw .dw-burger:hover{transform:scale(1.08)}
html.dw .dw-burger span{display:block;width:18px;height:2px;border-radius:1px;background:#fff;transition:transform .25s,opacity .2s}
html.dw header.top.dw-open .dw-burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
html.dw header.top.dw-open .dw-burger span:nth-child(2){opacity:0}
html.dw header.top.dw-open .dw-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ---------- crumb bar ---------- */
html.dw .dw-crumb{background:var(--dw-crumb);border-bottom:1px solid var(--dw-line);transition:background .25s,border-color .25s}
html.dw .dw-crumb-in{max-width:1280px;margin:0 auto;padding:0 clamp(16px,3.6vw,44px);min-height:50px;display:flex;align-items:center;justify-content:space-between;gap:16px}
html.dw .dw-path{display:flex;align-items:center;gap:8px;min-width:0;font-size:14.5px;font-weight:500;color:var(--ink-2);white-space:nowrap;overflow:hidden}
html.dw .dw-path a{color:var(--ink-2);text-decoration:none;display:inline-flex;align-items:center;transition:color .2s,transform .22s cubic-bezier(.2,.8,.2,1)}
html.dw .dw-path a:hover{color:var(--own);transform:scale(1.06)}
html.dw .dw-path .dw-home svg{width:16px;height:16px;display:block}
html.dw .dw-path .dw-pg{overflow:hidden;text-overflow:ellipsis}
html.dw .dw-path .dw-sec{font-weight:700;color:var(--ink);overflow:hidden;text-overflow:ellipsis}
html.dw .dw-sep{color:var(--ink-3);font-size:15px}
html.dw .dw-sec:empty,html.dw .dw-sep:has(+ .dw-sec:empty){display:none}
html.dw .dw-acts{display:flex;gap:8px;flex:none}
html.dw .dw-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 18px;border-radius:999px;border:1.5px solid var(--dw-blue);background:var(--dw-blue);
  color:#fff;font-size:14.5px;font-weight:700;text-decoration:none;white-space:nowrap;
  transition:transform .22s cubic-bezier(.2,.8,.2,1),background .2s,border-color .2s,color .2s}
html.dw .dw-btn:hover{background:var(--dw-blue-h);border-color:var(--dw-blue-h);transform:scale(1.06)}
html.dw .dw-btn.dw-btn-2{background:transparent;color:var(--own);border-color:color-mix(in srgb,var(--own) 70%,transparent)}
html.dw .dw-btn.dw-btn-2:hover{background:var(--own-fill);border-color:var(--own)}

/* scrolled down: the dark bar slides away, the crumb bar turns dark and stays */
html.dw header.top.dw-min{transform:translateY(calc(-1 * var(--dw-barh)))}
html.dw header.top.dw-min .dw-mega{display:none}
html.dw header.top.dw-min .dw-crumb{background:var(--dw-bar);border-bottom-color:var(--dw-bar-line)}
html.dw header.top.dw-min .dw-path,html.dw header.top.dw-min .dw-path a{color:var(--dw-bar-ink)}
html.dw header.top.dw-min .dw-path a:hover,html.dw header.top.dw-min .dw-path .dw-sec{color:#fff}
html.dw header.top.dw-min .dw-sep{color:#8FA2C0}
html.dw header.top.dw-min .dw-btn.dw-btn-2{color:#fff;border-color:rgba(255,255,255,.55)}
html.dw header.top.dw-min .dw-btn.dw-btn-2:hover{background:rgba(255,255,255,.1)}
html.dw header.top.dw-open{transform:none}

/* =================================== section rhythm =================================== */
/* white / #F4F4F4 alternate down the home page; #industry stays the one dark band; the hero's lower half (product cards) is grey */
html.dw main>section{background:var(--dw-bg)}
html.dw main>section:is(#news,#maker,#p1,#p3,#p5,#standards){background:var(--dw-grey)}
html.dw main>section.au-dark{background:linear-gradient(180deg,var(--navy),var(--navy-2))}
html.dw main>section:not(.hero):not(.spage):not(#facts):not(#maker){padding-block:clamp(64px,7vw,104px)}
html.dw main>section.geo-about{padding-block:clamp(48px,5vw,72px)}
html.dw footer.foot{margin-top:0}

/* ---------- section titles (modules v1, 2026-10-09): centred, plain, medium weight; number badge + small kicker kept ---------- */
html.dw .au-sec .wrap>header,html.dw .page .sec-head,html.dw .gf-head{display:flex;flex-direction:column;align-items:center;text-align:center;gap:0;
  padding-top:0;margin:0 auto clamp(28px,3.4vw,44px);max-width:960px;background:none}
html.dw .page .sec-head::before,html.dw .gf-head::before,html.dw .news-head::before{display:none}
html.dw .au-sec .wrap>header>div,html.dw .page .sec-head>div,html.dw .gf-head>div{display:flex;flex-direction:column;align-items:center}
/* section number (01–06, M, A, C …): small pill above the kicker */
html.dw .au-no,html.dw .sec-head .sec-no,html.dw .gf-no{display:inline-block;margin:0 0 12px;padding:2px 12px;border:1.5px solid var(--own);border-radius:999px;
  font-family:var(--dw-cond)!important;font-size:15px!important;font-weight:700!important;line-height:1.35!important;letter-spacing:.06em!important}
html.dw .au-k,html.dw .sec-eyebrow,html.dw .ga-k{font-family:var(--dw-font);font-size:13.5px!important;font-weight:600;letter-spacing:.16em!important;margin:0 0 8px}
html.dw .au-h,html.dw .sec-head h2,html.dw .gf-head h2,html.dw .news-head #newsH{font-family:var(--dw-font);font-weight:600;font-size:clamp(28px,3vw,36px);line-height:1.3;
  letter-spacing:.01em;color:var(--ink);margin:0;text-wrap:balance}
html.dw .au-dark .au-h{color:#fff}
html.dw .au-dark .au-no{border-color:#7FB6FF}
html.dw .au-lead,html.dw .sec-head .lead,html.dw .gf-head .lead{margin:14px auto 0;max-width:58em;font-size:16.5px;line-height:1.8;text-align:center}
/* NEWS head: tag as kicker, title centred, buttons under it */
html.dw .news-head{flex-direction:column;align-items:center;justify-content:center;text-align:center;padding-top:0;margin-bottom:28px;gap:12px}
html.dw .news-head .news-h{flex-direction:column;gap:8px;font-size:inherit}
html.dw .news-head .news-tag{background:none!important;box-shadow:none!important;color:var(--own)!important;padding:0;font-family:var(--dw-font);font-size:13.5px;font-weight:600;letter-spacing:.16em}
html.dw .gf-list{margin-inline:auto}
/* company fact strip kicker */
html.dw #auFacts>.au-k{display:block;text-align:center;margin:0 0 24px}
/* =================================== hero =================================== */
/* v4 (2026-10-09): copy + buttons directly on a white → blue wash (left); right = .dw-stage, three tilted, stacked glass screens
   (built by dw-layout.js). The main screen holds the original scope node (same drawing, colours, CH labels and readouts).
   Backups: dw-layer.css.backup-hero1.* (split), .backup-hero2.* (glass panel), .backup-hero3.* (scope as background). */
html.dw .hero{position:relative;background:var(--dw-bg)!important;color:var(--ink);padding:0 0 clamp(48px,5vw,72px)!important;isolation:isolate;overflow:clip}
html.dw .hero::before,html.dw .hero::after{display:none!important}
html.dw .dw-hbg{position:absolute;left:0;right:0;width:100%;z-index:0;pointer-events:none;overflow:hidden;
  background:linear-gradient(100deg,#FFFFFF 0%,#EAF2FD 35%,#BFD6F6 70%,#8DB4EC 100%);
  -webkit-mask-image:linear-gradient(180deg,#000 calc(100% - 120px),transparent);mask-image:linear-gradient(180deg,#000 calc(100% - 120px),transparent)}
html.dw[data-theme="dark"] .dw-hbg{background:linear-gradient(100deg,#0A1A33 0%,#0E2850 38%,#123A6E 68%,#1D5BB0 100%)}

/* ---------- 3D glass stage ---------- */
html.dw .dw-stage{--dw-tilt:rotateX(14deg) rotateY(-22deg) rotateZ(3deg);position:relative;height:clamp(420px,40vw,540px);perspective:1600px;perspective-origin:30% 40%}
html.dw .dw-glass{position:absolute;box-sizing:border-box;padding:10px 12px 12px;border-radius:14px;transform-origin:50% 50%;
  background:linear-gradient(135deg,rgba(255,255,255,.55),rgba(190,214,246,.35));
  -webkit-backdrop-filter:blur(16px) saturate(1.3);backdrop-filter:blur(16px) saturate(1.3);
  border:1px solid rgba(255,255,255,.75);
  box-shadow:inset 1px 1px 0 rgba(255,255,255,.9),inset 0 2px 10px -6px rgba(255,255,255,.9),0 30px 60px -20px rgba(11,92,213,.35);
  animation:dw-float 8s ease-in-out infinite}
html.dw .dw-g1{z-index:2;left:4%;top:15%;width:88%;transform:var(--dw-tilt)}
html.dw .dw-g2{z-index:1;right:-1%;top:0;width:44%;opacity:.9;transform:var(--dw-tilt) translateZ(-140px);animation-duration:9s;animation-delay:-3s}
html.dw .dw-g3{z-index:3;left:-6%;bottom:2%;width:36%;transform:var(--dw-tilt) translateZ(90px);animation-duration:7s;animation-delay:-5s}
@keyframes dw-float{0%,100%{translate:0 0}50%{translate:0 -8px}}
html.dw[data-theme="dark"] .dw-glass{background:linear-gradient(135deg,rgba(40,80,150,.45),rgba(12,30,62,.55));border-color:rgba(160,195,240,.38);
  box-shadow:inset 1px 1px 0 rgba(255,255,255,.18),0 30px 60px -20px rgba(0,0,0,.65)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  html.dw .dw-glass{background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(214,229,250,.88))}
  html.dw[data-theme="dark"] .dw-glass{background:linear-gradient(135deg,rgba(28,58,110,.94),rgba(12,30,62,.94))}}
/* title bar: three dots + small condensed label */
html.dw .dw-gbar{display:flex;align-items:center;gap:10px;height:22px;margin:0 2px 8px}
html.dw .dw-gdots{display:inline-flex;gap:5px}
html.dw .dw-gdots i{width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px rgba(11,92,213,.18)}
html.dw .dw-gdots i:nth-child(2){background:#BFD6F6}
html.dw .dw-gdots i:nth-child(3){background:#6EA8FF}
html.dw .dw-gt{font-family:var(--dw-cond);font-size:14px;font-weight:700;letter-spacing:.16em;color:#123A78}
html.dw[data-theme="dark"] .dw-gt{color:#CFE0FF}
/* main screen: the original scope on a deep-blue translucent plate */
html.dw .dw-gscope{border-radius:10px;overflow:hidden;background:rgba(10,30,70,.78);box-shadow:inset 0 0 0 1px rgba(127,182,255,.25)}
html.dw .dw-gscope figure.dw-scope{display:block;position:static;margin:0;padding:0;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important}
html.dw .dw-gscope figure.dw-scope::after{display:none!important}
html.dw .dw-gscope .dw-scope .scope-bar,html.dw .dw-gscope .dw-scope .scope-ctl,html.dw .dw-gscope .dw-scope figcaption{display:none!important}
html.dw .dw-gscope .dw-scope canvas#scope{display:block;width:100%!important;height:clamp(220px,24vw,320px)!important;aspect-ratio:auto!important;max-width:none}
/* back card: bar chart */
html.dw .dw-bars{display:flex;align-items:flex-end;gap:8px;height:clamp(96px,9vw,130px);padding:6px 4px 2px;border-bottom:1px solid rgba(11,92,213,.25)}
html.dw .dw-bars i{flex:1;height:var(--h,40%);border-radius:3px 3px 0 0;background:linear-gradient(180deg,#6EA8FF,#0B5CD5)}
html.dw[data-theme="dark"] .dw-bars{border-bottom-color:rgba(160,195,240,.3)}
html.dw[data-theme="dark"] .dw-bars i{background:linear-gradient(180deg,#9CC4FF,#3B7BE0)}
/* front card: key values */
html.dw .dw-kv{display:grid;gap:10px;padding:2px 4px 4px}
html.dw .dw-kv p{margin:0;display:flex;flex-direction:column;gap:2px}
html.dw .dw-kv b{font-family:var(--dw-cond);font-size:clamp(24px,2.3vw,32px);font-weight:800;line-height:1;color:#0A1A33;white-space:nowrap}
html.dw .dw-kv span{font-size:13.5px;font-weight:500;line-height:1.35;color:#2E3A4F}
html.dw .dw-kv b small{margin-left:4px;font-size:.5em;font-weight:700;color:var(--dw-blue);letter-spacing:.02em}
html.dw[data-theme="dark"] .dw-kv b{color:#fff}
html.dw[data-theme="dark"] .dw-kv b small{color:#7FB6FF}
html.dw[data-theme="dark"] .dw-kv span{color:#C4D1E4}
@media (prefers-reduced-motion:reduce){html.dw .dw-glass{animation:none}}

html.dw .hero-in{position:relative;z-index:1;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);min-height:clamp(460px,40vw,600px);padding-block:clamp(48px,6vw,88px)}
html.dw .hero-in>*{position:relative;z-index:1}
html.dw .hero-copy{padding:0;background:none;border:0;border-radius:0;box-shadow:none;text-align:left}
html.dw .hero .cta.ghost{background:rgba(255,255,255,.6)!important}
html.dw .hero .cta.ghost:hover{background:rgba(255,255,255,.9)!important}
html.dw[data-theme="dark"] .hero .cta.ghost{background:rgba(92,155,255,.12)!important;color:#BFD8FF!important;border-color:#7FB6FF!important}
html.dw[data-theme="dark"] .hero .cta.ghost:hover{background:rgba(92,155,255,.22)!important}
/* text; title solid navy (dark: white), clearer than a gradient on the wash */
html.dw .hero .eyebrow,html.dw .hero .eyebrow *{color:var(--own)!important}
html.dw .hero .eyebrow{font-family:var(--dw-cond);font-size:14.5px;font-weight:700;letter-spacing:.2em}
html.dw .hero .eyebrow .dot{background:var(--dw-red)!important;box-shadow:0 0 0 3px rgba(215,19,42,.18)}
html.dw .hero .eyebrow .rev{color:var(--ink-3)!important;font-weight:500;letter-spacing:.06em}
html.dw h1#doctitle{font-family:var(--dw-cond)!important;font-weight:800!important;font-size:clamp(44px,5.6vw,80px);line-height:1.02;letter-spacing:0;
  background:none!important;color:#0A1A33!important;-webkit-text-fill-color:#0A1A33;padding-bottom:.04em}
html.dw[data-theme="dark"] h1#doctitle{color:#fff!important;-webkit-text-fill-color:#fff}
html.dw h1#doctitle .ver{color:var(--own)!important;-webkit-text-fill-color:var(--own);background:var(--own-fill)!important;border-color:var(--own)!important;
  font-family:var(--dw-cond);font-size:max(14px,.22em);font-weight:700}
html.dw .hero .hero-tag{color:var(--ink-2)!important;font-size:clamp(17px,1.5vw,19px);line-height:1.75;margin:24px 0 14px}
html.dw .hero .vsub{color:var(--ink-3)!important}
html.dw .hero-cta{gap:12px;margin-top:32px}

/* ---------- buttons: compact blue pills (solid = primary, outline = secondary) ---------- */
html.dw .cta:not(.ghost){background:var(--dw-blue)!important;color:#fff!important;border:1.5px solid var(--dw-blue)!important;border-radius:999px!important;
  box-shadow:0 8px 18px -10px rgba(11,92,213,.7)!important;font-weight:700;font-size:15px;padding:10px 22px}
html.dw .cta:not(.ghost):hover{background:var(--dw-blue-h)!important;border-color:var(--dw-blue-h)!important}
html.dw .cta.ghost{background:transparent!important;color:var(--own)!important;border:1.5px solid var(--own)!important;border-radius:999px!important;box-shadow:none!important;
  font-weight:700;font-size:15px;padding:10px 22px}
html.dw .cta.ghost:hover{background:var(--own-fill)!important}
html.dw .cta:hover{transform:scale(1.05)}
html.dw .dw-pill{display:inline-flex;align-items:center;gap:8px;padding:9px 22px;border-radius:999px;background:var(--dw-blue);color:#fff;font-size:14.5px;font-weight:700;
  text-decoration:none;box-shadow:0 8px 18px -10px rgba(11,92,213,.7);transition:transform .22s cubic-bezier(.2,.8,.2,1),background .2s}
html.dw .dw-pill:hover{background:var(--dw-blue-h);transform:scale(1.06)}
html.dw .golink{border-radius:999px}

/* ---------- hero lower half: grey band with product cards + gauge strip ---------- */
html.dw .hero>.wrap:not(.hero-in){position:relative;padding-top:clamp(40px,5vw,64px)}
html.dw .hero>.wrap:not(.hero-in)::before{content:"";position:absolute;z-index:-1;top:0;bottom:calc(-1 * clamp(48px,5vw,72px));left:calc(50% - 50vw);width:100vw;
  background:linear-gradient(180deg,transparent 0,var(--dw-grey) 72px)}
/* ---------- service cards (modules v1): #brands (3 cards + .dw-sol text block) and #maker .co-card share one look:
   blue-grey square-ish card, white text, blue quarter-circle corner (.dw-qc + ::before) that grows into a big circle on hover ---------- */
html.dw{--dw-svc:#1E2A3A;--dw-svc-line:#1E2A3A;--dw-qcb:#1450F0}
html.dw[data-theme="dark"]{--dw-svc:#22324A;--dw-svc-line:#3A5175}
html.dw #brands{margin-top:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}
html.dw #brands .brandtile,html.dw #maker .co-card{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;gap:0;
  min-height:clamp(260px,21vw,300px);padding:24px 24px 88px;text-align:left;color:#fff;
  background:var(--dw-svc)!important;background-image:none!important;border:1px solid var(--dw-svc-line)!important;border-radius:6px!important;
  box-shadow:0 18px 36px -24px rgba(10,26,51,.55)!important}
/* the corner block: a 128 px circle centred on the bottom-right corner = a 64 × 64 quarter circle */
html.dw #brands .brandtile::before,html.dw #maker .co-card::before{content:"";position:absolute;z-index:-1;right:-64px;bottom:-64px;width:128px;height:128px;border-radius:50%;
  background:var(--dw-qcb);transform:scale(1);transition:transform .6s cubic-bezier(.2,.8,.2,1)}
html.dw #brands .brandtile:hover::before,html.dw #brands .brandtile:focus-visible::before,
html.dw #maker .co-card:hover::before{transform:scale(5.6)}
html.dw #brands .brandtile:hover,html.dw #maker .co-card:hover{transform:scale(1.02);border-color:var(--dw-qcb)!important;box-shadow:0 24px 44px -24px rgba(20,80,240,.6)!important}
html.dw .dw-qc{position:absolute;right:0;bottom:0;z-index:1;width:64px;height:64px;display:grid;place-items:end;padding:0 13px 13px 0;box-sizing:border-box;color:#fff;pointer-events:none}
html.dw .dw-qc svg{width:26px;height:26px;display:block}
/* #brands content: brand badge, title, text, underlined link */
html.dw #brands .brandtile .bn{order:1;width:auto;height:auto;margin:0 0 14px;padding:2px 10px;border-radius:4px;display:inline-block;
  font-family:var(--dw-cond);font-stretch:normal;font-size:15px;font-weight:800;letter-spacing:.12em;line-height:1.5;color:#fff!important;
  background:rgba(255,255,255,.08)!important;border:1px solid var(--c,#6EA8FF);box-shadow:none!important}
html.dw #brands .brandtile.agency .bn{--c:#2FC6E6}
html.dw #brands .brandtile.partner .bn{--c:#F5B23A}
html.dw #brands .brandtile b{order:2;margin:0 0 10px;font-family:var(--dw-font);font-size:18.5px;font-weight:700;line-height:1.35;letter-spacing:.03em;text-transform:uppercase;color:#fff!important}
html.dw #brands .brandtile:hover b{color:#fff!important}
html.dw #brands .brandtile .ds{order:3;margin:0;font-family:var(--dw-font);font-size:15px;font-weight:500;line-height:1.65;color:rgba(255,255,255,.8)!important}
html.dw #brands .brandtile .arr{display:none}
html.dw #brands .brandtile::after{order:4;content:"Learn more";margin-top:16px;padding:0;border:0;font-size:14px;font-weight:600;color:#fff;
  text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1.5px;opacity:.9}
html.dw:lang(ja) #brands .brandtile::after{content:"詳しく"}
html.dw:lang(zh) #brands .brandtile::after{content:"了解更多"}
/* 4th cell: plain text block with a pill button */
html.dw #brands .dw-sol{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:12px 8px}
html.dw #brands .dw-sol h3{margin:0 0 10px;font-family:var(--dw-font);font-size:clamp(20px,1.8vw,24px);font-weight:700;line-height:1.35;letter-spacing:.03em;text-transform:uppercase;color:var(--ink)}
html.dw #brands .dw-sol p{margin:0 0 18px;font-size:15.5px;font-weight:500;line-height:1.7;color:var(--ink-2)}
/* gauge strip on the grey band */
html.dw .hero .stats{margin-top:clamp(32px,4vw,48px);border-top:1px solid var(--dw-line)!important;border-bottom:none;padding-top:8px!important}
html.dw .hero .stat dd{color:var(--ink)!important;-webkit-text-fill-color:var(--ink)}
html.dw .hero .stat dd small{color:var(--own)!important;-webkit-text-fill-color:var(--own)!important}
html.dw .hero .stat dt{color:var(--ink-2)!important;font-size:14px;font-weight:500}
html.dw .hero .stat::before{background:var(--dw-rule)!important;width:40px!important}
html.dw .hero .stat [class*="idx"],html.dw .hero .stat::after{color:var(--ink-3)!important}

/* ---------- #maker: six own-product cards in the service-card look, 3 columns ---------- */
html.dw #maker .co-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
html.dw #maker .co-card h4{margin:0 0 10px;font-family:var(--dw-font);font-size:18px;font-weight:700;line-height:1.4;letter-spacing:.03em;text-transform:uppercase;color:#fff}
html.dw #maker .co-card p{color:rgba(255,255,255,.8);font-size:15px;line-height:1.7}
html.dw #maker .co-card .co-note{margin-top:12px;padding-top:10px;border-top:1px dashed rgba(255,255,255,.22);font-size:14px;color:rgba(255,255,255,.68)}
html.dw #maker .co-lt{border-radius:999px;border-color:var(--dw-line)}
html.dw .au-facts>div,html.dw .au-app,html.dw .au-s,html.dw .au-ev,html.dw .ga-grid{border-radius:8px!important}
html.dw .au-facts>div,html.dw .au-app,html.dw .ga-grid{border-color:var(--dw-line)!important}

/* ---------- NEWS cards (modules v1): inset image with a big top-right radius, blue tag on it, date / title / excerpt,
   4 px blue bottom line; the whole card turns bright blue on hover / focus ---------- */
html.dw .news .ncard{position:relative;background:var(--dw-card)!important;border:1px solid var(--dw-line)!important;border-radius:6px!important;
  box-shadow:inset 0 -4px 0 var(--dw-qcb),0 1px 2px rgba(11,22,38,.05)!important;transition:transform .25s cubic-bezier(.2,.8,.2,1),background .25s,border-color .25s,color .25s}
html.dw .news .ncard .nimg{position:relative;margin:14px 14px 0;border-radius:6px 48px 6px 6px;overflow:hidden;aspect-ratio:16/10}
html.dw .news .ncard .nimg.dw-nph{display:grid;background:linear-gradient(135deg,#0B3FB8 0%,#1450F0 50%,#6EA8FF 100%)}
html.dw .news .ncard .dw-nwave{width:100%;height:100%;display:block;color:rgba(255,255,255,.55)}
html.dw .news .ncard .dw-ntag{position:absolute;left:0;bottom:0;padding:5px 14px;border-radius:0 14px 0 0;background:var(--dw-qcb);color:#fff;font-size:13.5px;font-weight:700;letter-spacing:.04em}
html.dw .news .ncard .dw-nph .dw-ntag{background:#fff;color:var(--dw-qcb)}
html.dw .news .ncard .ntxt{padding:14px 18px 24px;gap:6px}
html.dw .news .ncard .nmeta{font-family:var(--dw-font);font-size:13.5px;font-weight:500;color:var(--ink-3)}
html.dw .news .ncard .nmeta .ncat{display:none}
html.dw .news .ncard b{font-family:var(--dw-font);font-size:17.5px;font-weight:700;line-height:1.45;color:var(--ink)}
html.dw .news .ncard .nex{color:var(--ink-2);font-size:14.5px}
html.dw .news .ncard:hover,html.dw .news .ncard:focus-visible{background:var(--dw-qcb)!important;border-color:var(--dw-qcb)!important;transform:translateY(-4px);
  box-shadow:inset 0 -4px 0 #0A35B0,0 24px 44px -24px rgba(20,80,240,.6)!important}
html.dw .news .ncard:hover b,html.dw .news .ncard:focus-visible b,html.dw .news .ncard:hover .nmeta,html.dw .news .ncard:focus-visible .nmeta,
html.dw .news .ncard:hover .nex,html.dw .news .ncard:focus-visible .nex{color:#fff}
html.dw .news .ncard:hover .dw-ntag,html.dw .news .ncard:focus-visible .dw-ntag{background:#fff;color:var(--dw-qcb)}
html.dw .news .news-grid.as-list .ncard .nimg{margin:10px 0 10px 10px;border-radius:6px 28px 6px 6px}
/* NEWS modal: the full-screen blur re-composited the whole page (header blur, canvas, cards) on every frame = stutter / flicker. Plain dim instead. */
html.dw .nmodal{-webkit-backdrop-filter:none;backdrop-filter:none;background:rgba(10,22,40,.66);contain:layout paint}
html.dw .nmodal .nm-card{overscroll-behavior:contain;transform:translateZ(0)}
html.dw body:has(.nmodal:not([hidden])) .dw-float{display:none}
@media (prefers-reduced-motion:reduce){
  html.dw #brands .brandtile::before,html.dw #maker .co-card::before{transition:none}
  html.dw .news .ncard{transition:none}
}

/* =================================== phase 2 (2026-10-09): site pages in the home-page module style ===================================
   business / company / contact / privacy. The in-page .crumb is navigation only (the crumb bar in the header replaces it). */
html.dw .spage .crumb{display:none}
html.dw .spage .sec-head{display:flex;flex-direction:column;align-items:center;text-align:center;gap:0;padding-top:0;margin:0 auto clamp(28px,3.4vw,44px);max-width:960px;background:none}
html.dw .spage .sec-head::before{display:none}
html.dw .spage .sec-head>div{display:flex;flex-direction:column;align-items:center}
html.dw .spage .sp-ico{width:60px;height:60px;margin:0 0 14px;border-radius:999px;border:1.5px solid var(--own);background:var(--own-fill);box-shadow:none}
html.dw .spage .sec-head h2{font-family:var(--dw-font);font-weight:600;font-size:clamp(28px,3vw,36px);line-height:1.3;color:var(--ink);margin:0}
html.dw .spage .sec-head .lead{margin:14px auto 0;max-width:58em;font-size:16.5px;line-height:1.8;text-align:center}
html.dw .spage .sub-h{font-family:var(--dw-font);font-size:clamp(20px,2vw,24px);font-weight:600;margin:56px 0 18px}
html.dw .spage .sub-h::before{width:22px;height:3px;border-radius:2px;background:var(--dw-blue)!important}
html.dw .spage .note{font-size:14px;color:var(--ink-3)}

/* ---------- service-card look for the business page (.biz-a, .co-card .own / .trk) ---------- */
html.dw #businessBody .biz{gap:18px}
html.dw #businessBody .biz-a,html.dw #businessBody .co-card{position:relative;isolation:isolate;overflow:hidden;color:#fff;
  background:var(--dw-svc)!important;background-image:none!important;border:1px solid var(--dw-svc-line)!important;border-radius:6px!important;
  box-shadow:0 18px 36px -24px rgba(10,26,51,.55)!important;-webkit-backdrop-filter:none;backdrop-filter:none;transition:transform .25s cubic-bezier(.2,.8,.2,1),border-color .25s}
html.dw #businessBody .biz-a{padding:26px 28px 60px;border-left:4px solid var(--c,var(--dw-qcb))!important}
html.dw #businessBody .co-card{padding:24px 24px 88px;min-height:clamp(240px,20vw,280px)}
html.dw #businessBody .biz-a::before,html.dw #businessBody .co-card::before{content:"";position:absolute;z-index:-1;right:-64px;bottom:-64px;width:128px;height:128px;border-radius:50%;
  background:var(--dw-qcb);transition:transform .6s cubic-bezier(.2,.8,.2,1)}
html.dw #businessBody .co-card:hover::before{transform:scale(5.6)}
html.dw #businessBody .biz-a:hover::before{transform:scale(7)}
html.dw #businessBody .biz-a:hover,html.dw #businessBody .co-card:hover{transform:scale(1.015);border-color:var(--dw-qcb)!important;box-shadow:0 24px 44px -24px rgba(20,80,240,.6)!important}
html.dw #businessBody .biz-a .k{color:#9CC4FF;font-family:var(--dw-cond);font-size:14px;letter-spacing:.14em}
html.dw #businessBody .biz-a h3{font-family:var(--dw-font);font-size:clamp(19px,1.8vw,22px);font-weight:700;color:#fff;margin:6px 0 8px}
html.dw #businessBody .biz-a p{color:rgba(255,255,255,.82)}
html.dw #businessBody .biz-a li{color:#fff;font-size:14.5px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.24);border-radius:999px}
html.dw #businessBody .biz-a .golink{color:#fff;border-color:rgba(255,255,255,.6);border-radius:999px}
html.dw #businessBody .biz-a .golink:hover{background:rgba(255,255,255,.14)}
html.dw #businessBody .co-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
html.dw #businessBody .co-card h4{margin:0 0 10px;font-family:var(--dw-font);font-size:18px;font-weight:700;line-height:1.4;letter-spacing:.03em;text-transform:uppercase;color:#fff}
html.dw #businessBody .co-card p{color:rgba(255,255,255,.8);font-size:15px;line-height:1.7}
html.dw #businessBody .co-card .co-note{margin-top:12px;padding-top:10px;border-top:1px dashed rgba(255,255,255,.22);font-size:14px;color:rgba(255,255,255,.68)}
html.dw #businessBody .co-card.trk{--dw-qcb:#2F6BE8}
html.dw .co-lt{border-radius:999px!important;border-color:var(--dw-line)!important;padding:8px 18px}
/* 4-step flow: numbered white cards */
html.dw .spage ol.flow{gap:16px}
html.dw .spage .flow li{background:var(--dw-card)!important;border:1px solid var(--dw-line)!important;border-radius:10px!important;box-shadow:0 1px 2px rgba(11,22,38,.05)!important;
  -webkit-backdrop-filter:none;backdrop-filter:none;padding:20px 20px 18px;transition:transform .22s cubic-bezier(.2,.8,.2,1),border-color .2s}
html.dw .spage .flow li:hover{transform:scale(1.03);border-color:var(--own)!important}
html.dw .spage .flow li::before{display:inline-block;margin:0 0 10px;padding:2px 12px;border-radius:999px;background:var(--dw-blue);color:#fff;
  font-family:var(--dw-cond);font-size:14px;font-weight:700;letter-spacing:.1em}
html.dw .spage .flow b{font-size:17.5px;font-weight:700}
/* lead times */
html.dw .co-lead>div{background:var(--dw-card)!important;border:1px solid var(--dw-line)!important;border-left:4px solid var(--dw-blue)!important;border-radius:10px!important;padding:14px 18px}

/* ---------- company page ---------- */
html.dw .co-tag{border-radius:0 10px 10px 0;border-left-color:var(--dw-blue)}
/* team row (ref "Our team"): bright-blue representative card + four fact cards */
html.dw .dw-team{display:grid;grid-template-columns:1.25fr repeat(4,minmax(0,1fr));gap:16px;margin:32px 0 8px}
html.dw .dw-tc{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;gap:6px;min-height:clamp(220px,19vw,260px);margin:0;padding:24px 20px;
  border-radius:6px;background:var(--dw-svc);color:#fff;box-shadow:0 18px 36px -24px rgba(10,26,51,.55);transition:transform .25s cubic-bezier(.2,.8,.2,1)}
html.dw .dw-tc:hover{transform:scale(1.03)}
html.dw .dw-tc-rep{justify-content:space-between;background:linear-gradient(160deg,#2F6BF5,#1450F0 55%,#0B3FB8);box-shadow:0 24px 44px -24px rgba(20,80,240,.65)}
html.dw .dw-tc p{margin:0}
html.dw .dw-tk{font-family:var(--dw-cond);font-size:14px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.82)}
html.dw .dw-tc-rep h3{margin:auto 0 6px;font-size:clamp(19px,1.7vw,22px);font-weight:700;line-height:1.45;color:#fff}
html.dw .dw-tco{font-size:14px;font-weight:600;color:rgba(255,255,255,.9)}
html.dw .dw-tsub{font-size:13.5px;font-weight:500;color:rgba(255,255,255,.8)}
html.dw .dw-tc-fact b{font-family:var(--dw-cond);font-size:clamp(40px,3.6vw,52px);font-weight:800;line-height:1;color:#fff;white-space:nowrap}
html.dw .dw-tc-fact b small{margin-left:4px;font-family:var(--dw-font);font-size:.34em;font-weight:700;color:#7FB6FF}
html.dw .dw-tc-fact span{font-size:14.5px;font-weight:500;line-height:1.5;color:rgba(255,255,255,.82)}
html.dw .dw-tc-fact::before{content:"";position:absolute;left:20px;top:22px;width:28px;height:3px;border-radius:2px;background:var(--dw-rule)}
/* profile table: clean white card, thin row lines, light-grey label column */
html.dw .spage table.prof{background:var(--dw-card)!important;border:1px solid var(--dw-line)!important;border-radius:10px!important;overflow:hidden;
  box-shadow:0 1px 2px rgba(11,22,38,.05)!important;-webkit-backdrop-filter:none;backdrop-filter:none}
html.dw .spage table.prof th,html.dw .spage table.prof td{border-bottom:1px solid var(--dw-line);padding:15px 22px}
html.dw .spage table.prof th{background:var(--dw-grey);color:var(--ink-2);font-size:15px;font-weight:600}
html.dw[data-theme="dark"] .spage table.prof th{background:#13213A}
/* ETAS distributor card: bright blue, echoes the representative card */
html.dw .co-etas{background:linear-gradient(150deg,#2F6BF5,#1450F0 50%,#0B3FB8)!important;border:0!important;border-radius:10px!important;color:#fff;
  box-shadow:0 24px 48px -26px rgba(20,80,240,.65)!important}
html.dw .co-etas h3,html.dw .co-etas .co-line b{color:#fff}
html.dw .co-etas .co-k{color:#CFE0FF}
html.dw .co-etas p,html.dw .co-etas .co-small{color:rgba(255,255,255,.86)}
html.dw .co-etas .co-reg li{color:#fff;background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.4);border-radius:999px}
html.dw .co-etas .co-line{border-top-color:rgba(255,255,255,.28)}
html.dw .co-etas .co-line li{border-bottom-color:rgba(255,255,255,.22);color:rgba(255,255,255,.88)}
/* history: simple vertical timeline; group-era entries hollow + grey */
html.dw .co-hist::before{background:var(--dw-line)}
html.dw .co-hist li{padding:12px 0}
html.dw .co-hist li::before{background:var(--dw-blue);box-shadow:0 0 0 4px var(--own-fill)}
html.dw .co-hist time{color:var(--own)}
html.dw .co-hist li.grp::before{background:var(--dw-bg);border:2px solid var(--steel);box-shadow:none}
html.dw .co-hist li.grp time{color:var(--steel)}
html.dw .co-grp{border-radius:999px;font-size:13.5px}

/* ---------- contact page ---------- */
html.dw .spage .ct-grid{gap:18px}
html.dw .spage .ct{background:var(--dw-card)!important;border:1px solid var(--dw-line)!important;border-top:4px solid var(--c,var(--dw-blue))!important;border-radius:10px!important;
  box-shadow:0 1px 2px rgba(11,22,38,.05)!important;-webkit-backdrop-filter:none;backdrop-filter:none;padding:24px 26px}
html.dw .spage .ct .k{display:inline-block;padding:2px 12px;border-radius:999px;background:var(--own-fill);color:var(--c,var(--own));font-family:var(--dw-cond);font-size:14px;letter-spacing:.12em}
html.dw .spage .ct h3{font-family:var(--dw-font);font-weight:700;margin:10px 0 8px}
html.dw .dw-tel{margin:6px 0 18px;padding:16px 0 18px;border-top:1px solid var(--dw-line);border-bottom:1px solid var(--dw-line)}
html.dw .dw-telk{margin:0 0 2px;font-size:13.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
html.dw .dw-telno{display:inline-block;margin:0 0 12px;font-family:"Barlow",var(--dw-font);font-size:clamp(34px,4vw,44px);font-weight:700;line-height:1.15;letter-spacing:.02em;
  color:var(--own);text-decoration:none;transform-origin:left center;transition:transform .22s cubic-bezier(.2,.8,.2,1)}
html.dw .dw-telno:hover{transform:scale(1.04)}
html.dw .dw-tel .dw-pill{display:flex;width:max-content}
/* checklist: white rows with a round blue tick */
html.dw .spage .chk li{background:var(--dw-card)!important;border:1px solid var(--dw-line)!important;border-radius:10px!important;box-shadow:none!important;
  -webkit-backdrop-filter:none;backdrop-filter:none;align-items:center;padding:12px 16px}
html.dw .spage .chk li::before{content:"✓";width:22px;height:22px;margin:0;border:0;border-radius:50%;background:var(--dw-blue);color:#fff;
  display:grid;place-items:center;font-size:13.5px;font-weight:700;line-height:1}
/* enquiry form */
html.dw .cform{background:var(--dw-card)!important;border:1px solid var(--dw-line)!important;border-radius:12px!important;box-shadow:0 1px 2px rgba(11,22,38,.05)!important;
  -webkit-backdrop-filter:none;backdrop-filter:none;padding:26px 28px}
html.dw .cf-f span{font-size:14px;font-weight:600;color:var(--ink-2)}
html.dw .cf-f input,html.dw .cf-f select,html.dw .cf-f textarea{border-radius:10px;border:1px solid var(--dw-line);background:var(--dw-bg);font-size:15.5px;padding:10px 14px;
  transition:border-color .2s,box-shadow .2s}
html.dw .cf-f input:focus,html.dw .cf-f select:focus,html.dw .cf-f textarea:focus,
html.dw .cf-f input:focus-visible,html.dw .cf-f select:focus-visible,html.dw .cf-f textarea:focus-visible{outline:none!important;border-color:var(--own);box-shadow:0 0 0 3px rgba(11,92,213,.22)}
html.dw .cf-f .bad{border-color:var(--tbd);box-shadow:0 0 0 3px rgba(215,19,42,.15)}
html.dw .cf-bar button,html.dw .cf-call{border-radius:999px!important;padding:10px 22px;font-weight:700;background:transparent!important;color:var(--own)!important;
  border:1.5px solid var(--own)!important;box-shadow:none!important}
html.dw .cf-bar .cf-go{background:var(--dw-blue)!important;border-color:var(--dw-blue)!important;color:#fff!important;box-shadow:0 8px 18px -10px rgba(11,92,213,.7)!important}
html.dw .cf-bar .cf-go:hover{background:var(--dw-blue-h)!important}

/* ---------- privacy page: reading layout ---------- */
html.dw #privacyBody{max-width:760px;margin-inline:auto}
html.dw .spage .pp{max-width:none;gap:14px}
html.dw .spage .pp>li{background:var(--dw-card)!important;border:1px solid var(--dw-line)!important;border-radius:10px!important;box-shadow:none!important;
  -webkit-backdrop-filter:none;backdrop-filter:none;padding:22px 26px}
html.dw .spage .pp>li::before{position:absolute;left:26px;top:22px;padding:2px 10px;border-radius:999px;background:var(--dw-blue);color:#fff;
  font-family:var(--dw-cond);font-size:14px;font-weight:700;line-height:1.5;letter-spacing:.06em}
html.dw .spage .pp h3{padding-left:52px;min-height:25px;font-size:18px;font-weight:700;line-height:1.45}
html.dw .spage .pp p,html.dw .spage .pp ul{color:var(--ink-2);line-height:1.85}
html.dw .spage .pp dl{gap:6px 18px;padding:12px 16px;border-radius:8px;background:var(--dw-grey)}
html.dw .spage .sp-sign{max-width:none;margin:26px 0 0;padding-top:16px;border-top:1px dashed var(--dw-line);text-align:right;font-size:14.5px}

html.dw[data-theme="dark"] .spage .flow li,html.dw[data-theme="dark"] .spage .ct,html.dw[data-theme="dark"] .cform,html.dw[data-theme="dark"] .spage .pp>li,
html.dw[data-theme="dark"] .spage .chk li,html.dw[data-theme="dark"] .co-lead>div,html.dw[data-theme="dark"] .spage table.prof{border-color:#3A5175!important}
html.dw[data-theme="dark"] .dw-tc{border:1px solid #3A5175}
html.dw[data-theme="dark"] .dw-tc-rep{border-color:transparent}

@media (max-width:1100px){
  html.dw #businessBody .co-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  html.dw .dw-team{grid-template-columns:repeat(2,minmax(0,1fr))}
  html.dw .dw-tc-rep{grid-column:1/-1;min-height:0;gap:10px}
}
@media (max-width:640px){
  html.dw #businessBody .co-grid{grid-template-columns:1fr}
  html.dw #businessBody .biz-a{padding:22px 20px 84px}
  html.dw #businessBody .co-card{min-height:0;padding:22px 20px 84px}
  html.dw .dw-team{gap:12px}
  html.dw .dw-tc{min-height:150px;padding:20px 16px}
  html.dw .cform{padding:20px 16px}
  html.dw .spage .pp>li{padding:20px 18px}
  html.dw .spage .pp>li::before{left:18px;top:20px}
  html.dw .spage table.prof th,html.dw .spage table.prof td{padding:12px 16px}
}
@media (prefers-reduced-motion:reduce){
  html.dw #businessBody .biz-a::before,html.dw #businessBody .co-card::before,html.dw .dw-tc,html.dw .spage .flow li{transition:none}
}

/* ---------- home 01–06 / S (phase 2): already in the white-card look; only radius and sub-headings aligned with the new modules ---------- */
html.dw .page :is(.chips,.detail,.tsys,.plist,.prop,.spec,.fam,.win,.tblwrap,.veh,.canvas){border-radius:8px!important}
html.dw .page .spec .spec{border-radius:0!important}
html.dw .page .sub-h,html.dw #standards .au-sub{font-family:var(--dw-font);font-size:clamp(20px,2vw,24px);font-weight:600}
html.dw .page .sub-h::before,html.dw #standards .au-sub::before{width:22px;height:3px;border-radius:2px;background:var(--dw-blue)!important}
html.dw #standards .au-s,html.dw #standards .au-ev{border-color:var(--dw-line)}

/* =================================== products page (2026-10-13) ===================================
   DOM by dw-layout.js / products renderer (cc3): .pr-cats (category list, HIOKI-style two columns) → .pr-panel → .pr-grid → .pr-card.
   Existing look only (design freeze): white cards, brand pills, blue pill buttons. */
html.dw .pr-cats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin:8px 0 12px;border-top:1px solid var(--dw-line)}
html.dw .pr-cat{appearance:none;display:grid;grid-template-columns:56px minmax(0,1fr) auto auto;align-items:center;gap:14px;width:100%;margin:0;padding:16px 12px;
  border:0;border-bottom:1px solid var(--dw-line);border-radius:0;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer;
  transition:background .2s,box-shadow .2s,transform .22s cubic-bezier(.2,.8,.2,1)}
html.dw .pr-ico{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:var(--own-fill);color:var(--own)}
html.dw .pr-ico svg{width:30px;height:30px;display:block}
html.dw .pr-cn{font-size:16.5px;font-weight:700;line-height:1.45}
html.dw .pr-cnt{padding:1px 10px;border-radius:999px;background:var(--dw-grey);color:var(--ink-2);font-family:var(--dw-cond);font-size:14px;font-weight:700}
html.dw .pr-arr{color:var(--own);font-size:22px;line-height:1;transition:transform .25s}
html.dw .pr-cat:hover{background:var(--own-fill);transform:translateX(4px)}
html.dw .pr-cat:hover .pr-cn{color:var(--own)}
html.dw .pr-cat[aria-expanded="true"]{background:var(--own-fill);box-shadow:inset 4px 0 0 var(--dw-blue)}
html.dw .pr-cat[aria-expanded="true"] .pr-cn{color:var(--own)}
html.dw .pr-cat[aria-expanded="true"] .pr-ico{background:var(--dw-blue);color:#fff}
html.dw .pr-cat[aria-expanded="true"] .pr-cnt{background:var(--dw-blue);color:#fff}
html.dw .pr-cat[aria-expanded="true"] .pr-arr{transform:rotate(90deg)}
html.dw .pr-panel{margin-top:8px}
html.dw .pr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:18px}
html.dw .pr-card{position:relative;display:flex;flex-direction:column;gap:8px;min-width:0;padding:22px 22px 18px;
  background:var(--dw-card);border:1px solid var(--dw-line);border-radius:10px;box-shadow:0 1px 2px rgba(11,22,38,.05);
  scroll-margin-top:calc(var(--hdrh,64px) + 60px);transition:transform .22s cubic-bezier(.2,.8,.2,1),border-color .2s,box-shadow .2s}
html.dw .pr-card:hover{transform:scale(1.02);border-color:var(--own);box-shadow:0 18px 36px -24px rgba(11,22,38,.45)}
html.dw .pr-card:target{border-color:var(--own);box-shadow:0 0 0 3px rgba(11,92,213,.22)}
html.dw .pr-top{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
html.dw .pr-b{display:inline-block;padding:1px 10px;border-radius:999px;border:1.5px solid currentColor;font-family:var(--dw-cond);font-size:14px;font-weight:800;letter-spacing:.12em;line-height:1.5}
html.dw .pr-b.index{color:var(--own);background:var(--own-fill)}
html.dw .pr-b.etas{color:var(--agency);background:var(--agency-fill)}
html.dw .pr-b.hioki{color:var(--partner);background:var(--partner-fill)}
html.dw .pr-st{display:inline-block;padding:1px 10px;border-radius:999px;border:1px dashed var(--ink-3);color:var(--ink-2);font-size:13.5px;font-weight:600;line-height:1.5}
html.dw .pr-card h4{margin:4px 0 0;font-family:var(--dw-font);font-size:18.5px;font-weight:700;line-height:1.4;color:var(--ink)}
html.dw .pr-m{margin:0;font-family:"Barlow",var(--dw-font);font-size:14px;font-weight:600;line-height:1.55;color:var(--ink-3);overflow-wrap:anywhere}
html.dw .pr-d{margin:0;font-size:15px;font-weight:500;line-height:1.7;color:var(--ink-2)}
html.dw .pr-f{display:grid;gap:6px;margin:4px 0 0;padding-top:10px;border-top:1px dashed var(--dw-line)}
html.dw .pr-f>div{display:grid;grid-template-columns:1fr;gap:0}
html.dw .pr-f dt{font-size:13.5px;font-weight:600;color:var(--ink-3)}
html.dw .pr-f dd{margin:0;font-size:14.5px;font-weight:600;line-height:1.55;color:var(--ink)}
html.dw .pr-links{display:flex;flex-wrap:wrap;gap:8px;margin:auto 0 0;padding-top:12px}
html.dw .pr-more,html.dw .pr-off{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;border-radius:999px;font-size:14px;font-weight:700;text-decoration:none;
  transition:transform .22s cubic-bezier(.2,.8,.2,1),background .2s}
html.dw .pr-more{color:var(--own);border:1.5px solid var(--own)}
html.dw .pr-more:hover{background:var(--own-fill);transform:scale(1.06)}
html.dw .pr-off{color:var(--ink-2);border:1.5px solid var(--dw-line);background:var(--dw-grey)}
html.dw .pr-off:hover{color:var(--own);border-color:var(--own);transform:scale(1.06)}
html.dw .pr-note{margin-top:28px}
html.dw[data-theme="dark"] .pr-card{border-color:#3A5175}
html.dw[data-theme="dark"] .pr-st{border-color:#8E9BB1}
/* 2026-10-19 (cc2, benchmark round): brand filter chips, per-panel phone line, empty state, mobile category chips */
html.dw .pr-card[hidden],html.dw .pr-none[hidden]{display:none}
html.dw .pr-brands{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 4px}
html.dw .pr-bf{appearance:none;padding:7px 18px;border:1.5px solid var(--dw-line);border-radius:999px;background:var(--dw-card);color:var(--ink-2);font:inherit;font-size:15px;font-weight:700;cursor:pointer;
  transition:transform .22s cubic-bezier(.2,.8,.2,1),background .2s,color .2s,border-color .2s}
html.dw .pr-bf:hover{border-color:var(--own);color:var(--own);transform:scale(1.06)}
html.dw .pr-bf[aria-pressed="true"]{background:var(--dw-blue);border-color:var(--dw-blue);color:#fff}
html.dw .pr-cat.pr-empty{opacity:.45}
html.dw .pr-none{margin:8px 0;color:var(--ink-2);font-size:15px}
html.dw .pr-help{margin:22px 0 0;padding:14px 18px;border-left:4px solid var(--dw-blue);background:var(--own-fill);border-radius:0 8px 8px 0;font-size:16px;font-weight:600;line-height:1.7;color:var(--ink)}
html.dw .pr-tel{display:inline-block;margin-left:4px;font-family:var(--dw-cond);font-size:20px;font-weight:800;letter-spacing:.04em;color:var(--own);text-decoration:none;white-space:nowrap}
html.dw .pr-tel:hover{text-decoration:underline}
@media (max-width:760px){
  html.dw .pr-cats{display:flex;gap:8px;margin:8px -16px 12px;padding:2px 16px 8px;border-top:0;overflow-x:auto;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
  html.dw .pr-cat{flex:0 0 auto;width:auto;grid-template-columns:36px auto auto;gap:8px;padding:6px 14px 6px 8px;border:1.5px solid var(--dw-line);border-radius:999px;scroll-snap-align:start;white-space:nowrap}
  html.dw .pr-cat:hover{transform:none}
  html.dw .pr-cat[aria-expanded="true"]{box-shadow:none;border-color:var(--dw-blue)}
  html.dw .pr-arr{display:none}
  html.dw .pr-cn{font-size:15px}
  html.dw .pr-ico{width:34px;height:34px}
  html.dw .pr-ico svg{width:20px;height:20px}
  html.dw .pr-card{padding:20px 18px 16px}
}

/* ---------- floating phone / contact (public edition; base positioning is style#dw-float-base from dw-layout.js) ---------- */
html.dw .dw-float{gap:4px;filter:drop-shadow(0 10px 18px rgba(11,22,38,.25))}
html.dw .dw-float a{background:var(--dw-blue);font-family:var(--dw-font);font-size:13.5px;font-weight:700;letter-spacing:.04em;
  transition:transform .22s cubic-bezier(.2,.8,.2,1),background .2s;transform-origin:right center}
html.dw .dw-float a.dw-fl-ct{background:#1450F0}
html.dw .dw-float a:hover{background:var(--dw-blue-h);transform:scale(1.06)}
html.dw .dw-float a:focus-visible{outline:2px solid #fff!important;outline-offset:-4px}
@media (min-width:1400px){html.dw .dw-float a{writing-mode:vertical-rl;text-orientation:upright;padding:14px 10px;min-width:0;letter-spacing:.12em}
  html.dw:lang(en) .dw-float a,html.dw:lang(th) .dw-float a,html.dw:lang(vi) .dw-float a{writing-mode:horizontal-tb;padding:12px 10px}}
/* 821–1399 px (13–14" laptops): the vertical tab would cover the right card column, so two 48 px round icon buttons
   stacked above "back to top" in the bottom-right corner. The text stays in the link, visually hidden (read by screen readers). */
@media (min-width:821px) and (max-width:1399px){
  html.dw .dw-float{top:auto;bottom:calc(48px + 44px + 14px + env(safe-area-inset-bottom,0px));right:max(16px,env(safe-area-inset-right,0px));transform:none;
    flex-direction:column;gap:10px}
  html.dw .dw-float a{position:relative;width:48px;height:48px;min-width:0;padding:0;border-radius:50%;display:grid;place-items:center;transform-origin:center;font-size:0;line-height:0;color:transparent}
  html.dw .dw-float a>span,html.dw .dw-float a>b{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
  html.dw .dw-float a::before{content:"";width:22px;height:22px;background:#fff;-webkit-mask:var(--dw-ic) center/contain no-repeat;mask:var(--dw-ic) center/contain no-repeat}
  html.dw .dw-float a.dw-fl-tel{--dw-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1.9.4 1.8.7 2.7a2 2 0 0 1-.5 2.1L8 9.8a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.7.7a2 2 0 0 1 1.7 2z'/%3E%3C/svg%3E")}
  html.dw .dw-float a.dw-fl-ct{--dw-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 7 9 6 9-6'/%3E%3C/svg%3E")}
  html.dw .dw-float a:hover{transform:scale(1.1)}
}
@media (max-width:820px){
  html.dw .dw-float{filter:none;box-shadow:0 -6px 18px -8px rgba(11,22,38,.35);padding-bottom:env(safe-area-inset-bottom,0px);background:var(--dw-blue)}
  html.dw .dw-float a{transform-origin:center;font-size:14.5px}
  html.dw .dw-float a:hover{transform:none}
  html.dw .dw-float a b{font-family:"Barlow",var(--dw-font);font-size:16px;letter-spacing:.02em}
  /* keep "back to top" above the bar */
  html.dw.dw-pub .totop{bottom:calc(48px + 14px + env(safe-area-inset-bottom,0px))}
}
@media (prefers-reduced-motion:reduce){html.dw .pr-cat,html.dw .pr-card,html.dw .dw-float a{transition:none}}

/* =================================== chat helper (public edition, 2026-10-13) ===================================
   DOM + base positioning: auto\chat.js (style#dw-chat-base). Bottom-left so it never meets the phone / mail buttons
   and "back to top" on the right. Existing look only: blue pills, white cards, .pr-card for suggested products. */
html.dw .dw-chat-btn{left:max(16px,env(safe-area-inset-left,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));padding:11px 18px 11px 14px;
  background:var(--dw-blue);font-family:var(--dw-font);font-size:14.5px;letter-spacing:.02em;box-shadow:0 10px 24px -10px rgba(11,92,213,.7);
  transition:transform .22s cubic-bezier(.2,.8,.2,1),background .2s}
html.dw .dw-chat-btn::before{content:"";width:20px;height:20px;flex:none;background:#fff;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a8 8 0 0 1-11.6 7.1L4 20.5l1.4-4.6A8 8 0 1 1 21 12z'/%3E%3Cpath d='M8.5 11h.01M12 11h.01M15.5 11h.01'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a8 8 0 0 1-11.6 7.1L4 20.5l1.4-4.6A8 8 0 1 1 21 12z'/%3E%3Cpath d='M8.5 11h.01M12 11h.01M15.5 11h.01'/%3E%3C/svg%3E") center/contain no-repeat}
html.dw .dw-chat-btn:hover{background:var(--dw-blue-h);transform:scale(1.06)}
html.dw.dw-chat-open .dw-chat-btn{background:var(--dw-blue-h)}
html.dw .dw-chat{bottom:calc(76px + env(safe-area-inset-bottom,0px));left:max(16px,env(safe-area-inset-left,0px));width:min(420px,calc(100vw - 32px));
  background:var(--dw-card);color:var(--ink);border:1px solid var(--dw-line);border-radius:14px;overflow:hidden;
  box-shadow:0 30px 60px -24px rgba(11,22,38,.45);font-family:var(--dw-font);font-size:15px;line-height:1.65}
html.dw[data-theme="dark"] .dw-chat{border-color:#3A5175;box-shadow:0 30px 60px -20px rgba(0,0,0,.8)}
html.dw .dw-chat-head{padding:12px 12px 12px 18px;background:var(--dw-bar);color:#fff}
html.dw .dw-chat-head b{font-size:15.5px;font-weight:700;letter-spacing:.04em;display:flex;align-items:center;gap:8px}
html.dw .dw-chat-head b::before{content:"";width:8px;height:8px;border-radius:50%;background:#4ADE80;box-shadow:0 0 0 3px rgba(74,222,128,.2)}
html.dw .dw-chat-x{appearance:none;width:34px;height:34px;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:transparent;color:#fff;font-size:20px;line-height:1;cursor:pointer;
  transition:transform .22s cubic-bezier(.2,.8,.2,1),background .2s}
html.dw .dw-chat-x:hover{background:rgba(255,255,255,.12);transform:scale(1.1)}
html.dw .dw-chat-note{margin:0;padding:8px 18px;font-size:13.5px;font-weight:500;line-height:1.55;color:var(--ink-3);background:var(--dw-grey);border-bottom:1px solid var(--dw-line)}
html.dw .dw-chat-log .dw-chat-note{margin:6px 0 0;padding:6px 10px;border:0;border-radius:8px}
html.dw .dw-chat-log{display:flex;flex-direction:column;gap:10px;padding:14px 14px 10px;background:var(--dw-bg)}
html.dw .dw-msg{max-width:92%;padding:10px 14px;border-radius:14px;font-size:15px;line-height:1.65;overflow-wrap:anywhere}
html.dw .dw-msg.bot{align-self:flex-start;background:var(--dw-card);border:1px solid var(--dw-line);border-top-left-radius:4px;color:var(--ink)}
html.dw .dw-msg.user{align-self:flex-end;background:var(--dw-blue);color:#fff;border-top-right-radius:4px}
html.dw .dw-msg p{margin:0 0 6px}html.dw .dw-msg p:last-child{margin-bottom:0}
html.dw .dw-ans{margin:8px 0 0;padding:10px 12px;border-radius:10px;background:var(--own-fill);border-left:3px solid var(--dw-blue)}
html.dw .dw-ans h4{margin:0 0 4px;font-size:15px;font-weight:700;color:var(--ink)}
html.dw .dw-ans p{margin:0 0 6px;font-size:14.5px;color:var(--ink-2)}
html.dw .dw-ans-more{font-size:14px;font-weight:700;color:var(--own);text-decoration:none}
html.dw .dw-ans-more:hover{text-decoration:underline}
html.dw .dw-opts{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
html.dw .dw-opt{appearance:none;padding:6px 14px;border-radius:999px;border:1.5px solid var(--own);background:var(--dw-card);color:var(--own);font:inherit;font-size:14px;font-weight:600;
  cursor:pointer;transition:transform .2s cubic-bezier(.2,.8,.2,1),background .2s,color .2s}
html.dw .dw-opt:hover:not(:disabled){background:var(--own-fill);transform:scale(1.05)}
html.dw .dw-opt.on{background:var(--dw-blue);border-color:var(--dw-blue);color:#fff}
html.dw .dw-opt:disabled{cursor:default;opacity:.55}
html.dw .dw-opt.on:disabled{opacity:1}
html.dw .dw-recs{display:grid;gap:8px;margin-top:8px}
html.dw .dw-recs .pr-card{padding:12px 14px 10px;gap:4px;border-radius:10px;box-shadow:none}
html.dw .dw-recs .pr-card:hover{transform:none}
html.dw .dw-recs .pr-card h4{margin:2px 0 0;font-size:15.5px}
html.dw .dw-recs .pr-d{font-size:14px}
html.dw .dw-recs .pr-links{padding-top:4px}
html.dw .dw-recs .pr-more{padding:4px 12px;font-size:13.5px}
html.dw .dw-chat-tools{gap:6px;padding:10px 12px 0;border-top:1px solid var(--dw-line);background:var(--dw-card)}
html.dw .dw-tool{appearance:none;padding:6px 12px;border-radius:999px;border:1px solid var(--dw-line);background:var(--dw-grey);color:var(--ink-2);font:inherit;font-size:13.5px;font-weight:600;
  cursor:pointer;transition:transform .2s cubic-bezier(.2,.8,.2,1),color .2s,border-color .2s}
html.dw .dw-tool:hover{color:var(--own);border-color:var(--own);transform:scale(1.05)}
html.dw .dw-chat-in{gap:8px;padding:10px 12px 12px;background:var(--dw-card)}
html.dw .dw-chat-in input{padding:9px 14px;border:1px solid var(--dw-line);border-radius:999px;background:var(--dw-bg);color:var(--ink);font:inherit;font-size:15px;
  transition:border-color .2s,box-shadow .2s}
html.dw .dw-chat-in input:focus,html.dw .dw-chat-in input:focus-visible{outline:none!important;border-color:var(--own);box-shadow:0 0 0 3px rgba(11,92,213,.22)}
html.dw .dw-chat-in button{appearance:none;padding:9px 18px;border:0;border-radius:999px;background:var(--dw-blue);color:#fff;font:inherit;font-size:14.5px;font-weight:700;cursor:pointer;
  transition:background .2s,transform .2s cubic-bezier(.2,.8,.2,1)}
html.dw .dw-chat-in button:hover{background:var(--dw-blue-h);transform:scale(1.05)}
html.dw .dw-draft{margin-top:6px}
html.dw .dw-draft textarea{padding:10px 12px;border:1px solid var(--dw-line);border-radius:10px;background:var(--dw-bg);color:var(--ink);font:inherit;font-size:14px;line-height:1.6;resize:vertical}
html.dw .dw-draft textarea:focus{outline:none;border-color:var(--own);box-shadow:0 0 0 3px rgba(11,92,213,.22)}
html.dw .dw-draft .dw-copy,html.dw .dw-draft .dw-toform{background:var(--dw-blue);border-color:var(--dw-blue);color:#fff}
html.dw .dw-draft .dw-copy{background:var(--dw-card);color:var(--own)}
@media (max-width:820px){
  html.dw .dw-chat-btn{bottom:calc(60px + env(safe-area-inset-bottom,0px))}
  html.dw .dw-chat{inset:0;width:auto;height:auto;border:0;border-radius:0}
  html.dw .dw-chat-head{padding-top:calc(12px + env(safe-area-inset-top,0px))}
  html.dw .dw-chat-in{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}
  html.dw.dw-chat-open .dw-chat-btn,html.dw.dw-chat-open .dw-float,html.dw.dw-chat-open .totop{visibility:hidden}
  html.dw.dw-chat-open,html.dw.dw-chat-open body{overflow:hidden}
}
@media (prefers-reduced-motion:reduce){html.dw .dw-chat-btn,html.dw .dw-opt,html.dw .dw-tool,html.dw .dw-chat-in button{transition:none}}

/* =================================== footer =================================== */
html.dw .foot{background:var(--dw-grey)!important;color:var(--ink-2);border-top:1px solid var(--dw-line)!important}
html.dw .foot *{color:inherit}
html.dw .foot .foot-in{display:block;padding-block:clamp(48px,6vw,72px) 44px}
html.dw .foot .dw-fcols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}
html.dw .foot .dw-fh{margin:0 0 16px;font-family:var(--dw-cond);font-size:18px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
html.dw .foot .dw-fh::after{content:"";display:block;width:28px;height:3px;margin-top:10px;background:var(--dw-rule)}
html.dw .foot .dw-fcol ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
html.dw .foot .dw-fl{display:inline-block;font-size:15.5px;font-weight:500;line-height:1.45;color:var(--ink-2);text-decoration:none;transform-origin:left center;
  transition:color .2s,transform .22s cubic-bezier(.2,.8,.2,1)}
html.dw .foot .dw-fl:hover{color:var(--own);transform:scale(1.05)}
html.dw .foot .dw-fbase{display:grid;gap:6px;margin-top:clamp(36px,4vw,52px);padding:24px 0 0;border:none!important;border-top:1px solid var(--dw-line)!important;
  border-radius:0;background:none!important;box-shadow:none!important;font-size:14px;color:var(--ink-3)}
html.dw .foot .dw-fbase .wm{display:block;margin:0 0 6px;font-family:var(--dw-cond);font-size:30px;font-weight:800;letter-spacing:.08em;color:var(--ink)}
html.dw .foot .dw-fbase #footLinks{display:none}
html.dw .foot .dw-fbase #foot3{font-size:13.5px}
html.dw .foot .dw-fbase .foot-keys{margin-top:8px;color:var(--ink-3)}

/* status bar + back to top */
html.dw .sbar{background:var(--dw-card)!important;border-top:1px solid var(--dw-line)!important}
html.dw .totop{border-radius:4px!important;background:var(--dw-card);color:var(--own);border:1.5px solid var(--own)}
html.dw .totop:hover{background:var(--dw-blue)!important;color:#fff!important;border-color:var(--dw-blue)!important;box-shadow:none!important}

/* =================================== dark mode extras =================================== */
html.dw[data-theme="dark"] #brands .brandtile:hover,html.dw[data-theme="dark"] #maker .co-card:hover{box-shadow:0 18px 36px -20px rgba(0,0,0,.85)!important}
html.dw[data-theme="dark"] .dw-mega{box-shadow:0 24px 48px -16px rgba(0,0,0,.8)}
html.dw[data-theme="dark"] .dw-btn.dw-btn-2{color:#9CC4FF;border-color:#5C9BFF}

/* =================================== tablet / phone =================================== */
@media (max-width:1180px){
  html.dw .dw-mbtn,html.dw .top-in .sitenav a{padding:0 10px;font-size:15px}
  html.dw .foot .dw-fcols{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px}
}
/* header with five language buttons: nav must not run into the switcher (checked at 1240 / 1100 / 960 px) */
@media (min-width:901px) and (max-width:1240px){
  html.dw .dw-mbtn,html.dw .top-in .sitenav a{padding:0 8px;font-size:14.5px;gap:5px}
  html.dw .top-in{gap:8px}
}
@media (max-width:940px){
  html.dw .hero-in{min-height:0;grid-template-columns:1fr;padding-block:clamp(28px,5vw,48px)}
  /* phones / tablets: copy on top, a smaller and flatter stage under it */
  /* stacked flow instead of overlap: bar card peeks out behind the top right, main screen full width, values card under it on the right */
  html.dw .dw-stage{--dw-tilt:rotateX(6deg) rotateY(-8deg) rotateZ(1deg);height:auto;width:min(100%,560px);margin:16px auto 0;padding:50px 0 8px;
    display:flex;flex-direction:column}
  html.dw .dw-g1{position:relative;left:auto;top:auto;width:96%;margin:0 auto}
  html.dw .dw-g2{right:5%;top:0;width:40%;transform:var(--dw-tilt) translateZ(-100px)}
  html.dw .dw-g2 .dw-bars{height:64px;gap:6px}
  html.dw .dw-g3{position:relative;left:auto;bottom:auto;width:66%;margin:12px 3% 0 auto;transform:var(--dw-tilt) translateZ(30px)}
  html.dw .dw-g3 .dw-kv{grid-template-columns:1fr 1fr;gap:10px 14px}
  html.dw .dw-gscope .dw-scope canvas#scope{height:clamp(150px,42vw,240px)!important}
}
@media (max-width:1080px){
  html.dw{--dw-barh:56px}
  html.dw header.top .top-in{flex-wrap:nowrap;gap:10px;padding-block:0}
  html.dw .dw-menu{display:none}
  html.dw .dw-burger{display:flex}
  html.dw header.top .topright{margin-left:auto;gap:6px}
  html.dw .top-in .cmdbtn{width:34px;padding:0;justify-content:center}
  html.dw .top-in .cmdbtn span,html.dw .top-in .cmdbtn kbd{display:none!important}
  /* burger open: full-width panel under the bar, site links first, then the section grid */
  html.dw header.top.dw-open .dw-menu{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;position:absolute;z-index:60;top:100%;
    left:calc(50% - 50vw);width:100vw;max-height:calc(100dvh - var(--dw-barh) - 32px);overflow:auto;padding:12px 16px 20px;
    background:var(--dw-card);border-top:3px solid var(--dw-blue);box-shadow:0 24px 48px -20px rgba(6,11,20,.55)}
  html.dw header.top.dw-open .dw-menu>.sitenav{order:-1;flex-direction:column;margin:0 0 14px}
  html.dw header.top.dw-open .top-in .sitenav a{height:auto;padding:13px 4px;font-size:17px;color:var(--ink);border-bottom:1px solid var(--dw-line);box-shadow:none;background:none}
  html.dw header.top.dw-open .top-in .sitenav a[aria-current="page"]{color:var(--own);box-shadow:inset 3px 0 0 var(--own);padding-left:12px}
  html.dw header.top.dw-open .dw-mi{display:block}
  html.dw header.top.dw-open .dw-mbtn{display:none}
  html.dw header.top.dw-open .dw-mega{display:block;position:static;padding:4px 0 0;border:0;border-radius:0;box-shadow:none;background:none}
  html.dw .dw-mega nav.tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
  html.dw .dw-crumb-in{min-height:46px;gap:10px}
  html.dw .dw-btn.dw-btn-2{display:none}
  html.dw .dw-btn{padding:6px 13px;font-size:14px}
}
@media (max-width:760px){
  html.dw #brands{gap:16px}
  html.dw .au-h,html.dw .sec-head h2,html.dw .gf-head h2,html.dw .news-head #newsH{font-size:clamp(30px,8.4vw,40px)}
  html.dw .au-lead,html.dw .sec-head .lead,html.dw .gf-head .lead{font-size:16px}
  html.dw h1#doctitle{font-size:clamp(40px,11vw,56px)}
}
@media (max-width:560px){
  html.dw .foot .dw-fcols{grid-template-columns:1fr;gap:28px}
  html.dw .dw-mega nav.tabs{grid-template-columns:1fr}
}
@media (max-width:420px){
  html.dw header.top .top-in{gap:8px}
  html.dw header.top .brand svg{width:30px;height:30px}
  html.dw .top-in .langsw button{padding:4px 7px}
  html.dw .top-in .iconbtn,html.dw .top-in .cmdbtn{width:32px;height:32px}
  html.dw .dw-burger{width:36px;height:36px}
  html.dw .dw-path{font-size:14px}
}
/* modules v1: service / news grids */
@media (max-width:1100px){
  html.dw #brands{grid-template-columns:repeat(2,minmax(0,1fr))}
  html.dw #maker .co-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  html.dw #brands,html.dw #maker .co-grid{grid-template-columns:1fr}
  html.dw #brands .brandtile,html.dw #maker .co-card{min-height:0;padding:22px 20px 84px}
  html.dw #brands .dw-sol{padding:8px 4px}
}
@media (prefers-reduced-motion:reduce){
  html.dw header.top,html.dw .dw-crumb,html.dw .dw-caret,html.dw .dw-burger span{transition:none}
}

/* ---- round 2 (cc3, 2026-10-15): phones / narrow screens. Desktop look is unchanged. The background gradients are already soft, so the 40px blur on the fixed full-screen layer
   and the backdrop-filter on every glass panel (53 rules) are dropped; panels keep their translucent fill. ---- */
@media (max-width:820px){
  body::before{filter:none}
  *,*::before,*::after{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
  header.top{background:color-mix(in srgb,var(--paper) 94%,transparent)}
}
