/* dmg_matrisl.css - dedicated stylesheet for robo_col_dmg_matrisl.html only */
:root{
  --dmg-bg:#f5f7fb;
  --dmg-bg2:#ffffff;
  --dmg-ink:#111318;
  --dmg-muted:#687184;
  --dmg-line:rgba(15,23,42,.10);
  --dmg-line2:rgba(15,23,42,.16);
  --dmg-dark:#07131f;
  --dmg-dark2:#102033;
  --dmg-card:rgba(255,255,255,.90);
  --dmg-blue:#0a84ff;
  --dmg-cyan:#27d7ff;
  --dmg-green:#21c997;
  --dmg-orange:#f6b85f;
  --dmg-shadow:0 18px 52px rgba(15,23,42,.11);
  --dmg-shadow2:0 24px 76px rgba(15,23,42,.16);
  --navH:72px;
  --navH-small:56px;
  --navAlpha:.72;
  --navAlphaSolid:.94;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:150px;}
html,body{min-height:100%;overflow-x:hidden;}
body.dmg-page{
  margin:0;
  color:var(--dmg-ink);
  background:
    radial-gradient(1100px 520px at 16% -8%, rgba(10,132,255,.12), transparent 60%),
    radial-gradient(900px 440px at 86% 2%, rgba(33,201,151,.10), transparent 58%),
    linear-gradient(180deg,var(--dmg-bg),var(--dmg-bg2));
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
body.dmg-page a{color:inherit;text-decoration:none;}
body.dmg-page img{max-width:100%;height:auto;display:block;}

/* ===== Global Nav - dedicated copy for this page ===== */
.g-nav{
  position:fixed;inset-inline:0;top:0;z-index:300;
  height:var(--navH);
  display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,var(--navAlpha));
  border-bottom:1px solid var(--dmg-line);
  backdrop-filter:saturate(160%) blur(14px);
  -webkit-backdrop-filter:saturate(160%) blur(14px);
  transition:height .28s ease,background-color .28s ease,box-shadow .28s ease;
}
.g-nav.shrink{
  height:var(--navH-small);
  background:rgba(255,255,255,var(--navAlphaSolid));
  box-shadow:0 10px 26px rgba(15,23,42,.09);
}
.g-wrap{width:100%;max-width:min(1380px,96vw);display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 10px;min-width:0;}
.brand{display:flex;align-items:center;gap:10px;white-space:nowrap;min-width:0;font-weight:900;}
.brand img{height:28px;width:auto;}
.brand .name{font-size:clamp(12px,1.9vw,16px);font-weight:900;max-width:52vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.nav-right{display:flex;align-items:center;gap:14px;min-width:0;}
.nav-links{display:flex;align-items:center;gap:clamp(14px,2.4vw,26px);}
.nav-links > a,.nav-links > .dd > a{display:inline-flex;align-items:center;padding:7px 10px;border:1px solid transparent;border-radius:10px;font-size:13px;font-weight:900;color:var(--dmg-ink);}
.nav-links > a:hover,.nav-links > .dd:hover > a{border-color:var(--dmg-line);background:rgba(0,0,0,.04);}
.dd{position:relative;}
.dd-menu{position:absolute;top:calc(100% + 10px);left:0;min-width:240px;max-width:80vw;max-height:min(64vh,520px);overflow:auto;padding:8px;border-radius:14px;border:1px solid var(--dmg-line2);background:rgba(255,255,255,.96);box-shadow:var(--dmg-shadow);display:none;}
.dd.open .dd-menu{display:block;}
.dd-menu a{display:block;padding:10px 12px;border-radius:12px;font-weight:900;color:var(--dmg-ink);}
.dd-menu a:hover{background:rgba(0,0,0,.045);}
.lang-switch{display:flex;gap:8px;}
.lang-switch a{padding:6px 10px;border:1px solid var(--dmg-line2);border-radius:10px;font-weight:900;background:rgba(255,255,255,.65);}
.nav-cta{display:inline-flex;align-items:center;justify-content:center;gap:.55em;padding:10px 12px;border-radius:13px;font-weight:950;color:#fff !important;background:linear-gradient(135deg,var(--dmg-blue),#0057d9);box-shadow:0 12px 28px rgba(10,132,255,.24);white-space:nowrap;}
.tel-cta,.sp-toggle{display:none;}
.sp-toggle button{border:1px solid var(--dmg-line2);background:rgba(255,255,255,.7);color:var(--dmg-ink);padding:8px 10px;border-radius:12px;font-weight:950;line-height:1;white-space:nowrap;}
.drawer{display:none;}
@media (max-width:1100px){
  .nav-links,.lang-switch,.nav-cta{display:none;}
  .tel-cta{display:inline-flex;}
  .sp-toggle{display:inline-flex;align-items:center;}
  .drawer{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:260;display:none;}
  .drawer.show{display:block;}
  .drawer-panel{position:fixed;top:calc(var(--navH-small) + 8px);right:0;height:calc(100% - (var(--navH-small) + 8px));width:min(86vw,340px);background:rgba(255,255,255,.97);border-left:1px solid var(--dmg-line);padding:12px 14px;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;transform:translateX(100%);transition:transform .28s ease;box-shadow:-20px 0 44px rgba(15,23,42,.22);border-top-left-radius:18px;border-bottom-left-radius:18px;}
  .drawer.show .drawer-panel{transform:translateX(0);}
  .drawer .close{position:sticky;top:0;z-index:2;text-align:right;margin-bottom:10px;padding:6px 0 10px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,255,255,.84));}
  .drawer .close button{padding:8px 10px;border:1px solid var(--dmg-line2);border-radius:12px;background:rgba(0,0,0,.03);font-weight:950;color:var(--dmg-ink);}
  .drawer a{display:block;padding:14px 12px;border-bottom:1px solid rgba(0,0,0,.08);font-weight:900;}
  .drawer .group-title{margin:10px 6px 4px;color:var(--dmg-muted);font-weight:950;font-size:12px;letter-spacing:.04em;}
  .acc-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 0 2px;}
  .acc-link{display:inline-flex;align-items:center;flex:1 1 auto;padding:12px 10px;border:1px solid var(--dmg-line);border-radius:13px;background:rgba(0,0,0,.03);font-weight:950;}
  .acc-btn{width:42px;height:42px;border:1px solid var(--dmg-line);border-radius:13px;background:rgba(0,0,0,.03);font-weight:950;color:var(--dmg-ink);}
  .acc-btn .chev{display:inline-block;transition:transform .2s ease;}
  .acc-btn[aria-expanded="true"] .chev{transform:rotate(90deg);}
  .acc-panel{display:none;}
  .acc-panel.open{display:block;}
  .acc-panel a{padding-left:18px;}
}
@media (max-width:520px){.brand .name{display:none}.g-wrap{gap:10px}.nav-right{gap:8px}}

/* ===== Progress / local navigation ===== */
.dmg-progress{position:fixed;left:0;right:0;top:var(--navH);height:3px;z-index:250;background:rgba(15,23,42,.08);pointer-events:none;transition:top .28s ease;}
.g-nav.shrink ~ .dmg-progress{top:var(--navH-small);}
.dmg-progress__bar{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--dmg-blue),var(--dmg-cyan),var(--dmg-green));box-shadow:0 0 16px rgba(39,215,255,.55);}
.dmg-lnav{position:sticky;top:calc(var(--navH-small) + 10px);z-index:180;margin:-22px auto 0;padding:0 12px;}
.dmg-lnav__inner{max-width:min(1120px,94vw);margin:0 auto;display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(7,19,31,.78);box-shadow:0 18px 54px rgba(7,19,31,.22);backdrop-filter:blur(14px) saturate(150%);-webkit-backdrop-filter:blur(14px) saturate(150%);}
.dmg-lnav a{padding:8px 12px;border-radius:999px;color:rgba(255,255,255,.88);font-weight:950;font-size:13px;}
.dmg-lnav a:hover,.dmg-lnav a.active{background:rgba(255,255,255,.12);color:#fff;}
.dmg-lnav .dmg-lnav__cta{margin-left:auto;background:linear-gradient(135deg,var(--dmg-blue),var(--dmg-green));color:#fff;box-shadow:0 12px 24px rgba(10,132,255,.22);}
@media (max-width:760px){.dmg-lnav{margin-top:-16px}.dmg-lnav__inner{border-radius:20px}.dmg-lnav .dmg-lnav__cta{margin-left:0}}

/* ===== Hero ===== */
.dmg-hero{position:relative;min-height:clamp(520px,72svh,760px);display:grid;align-items:center;padding:calc(var(--navH) + 60px) 0 70px;overflow:hidden;background:var(--dmg-dark);border-bottom:1px solid rgba(255,255,255,.12);}
.dmg-hero__bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,11,23,.90) 0%,rgba(4,11,23,.62) 46%,rgba(4,11,23,.28) 100%),var(--hero-bg, url("https://www.nikko-kikai.co.jp/img/mecha_a.png")) center/cover no-repeat;filter:saturate(1.04) contrast(1.03);}
.dmg-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(800px 420px at 16% 18%,rgba(39,215,255,.23),transparent 62%),radial-gradient(900px 520px at 84% 18%,rgba(33,201,151,.18),transparent 58%);pointer-events:none;}
.dmg-hero::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.055) 0,rgba(255,255,255,.055) 1px,transparent 2px,transparent 5px);opacity:.12;mix-blend-mode:overlay;pointer-events:none;}
.dmg-hero__inner{position:relative;z-index:1;max-width:min(1120px,92vw);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:clamp(24px,4vw,54px);align-items:center;}
.dmg-kicker{display:inline-flex;align-items:center;gap:8px;margin:0 0 16px;padding:7px 11px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.84);font-weight:950;font-size:12px;letter-spacing:.08em;text-transform:uppercase;}
.dmg-hero h1{margin:0;color:#fff;font-size:clamp(40px,6.2vw,82px);line-height:.96;letter-spacing:-.06em;font-weight:950;text-shadow:0 0 28px rgba(255,255,255,.18),0 18px 44px rgba(0,0,0,.4);}
.dmg-hero__lead{margin:20px 0 0;max-width:760px;color:rgba(255,255,255,.84);font-size:clamp(16px,2.1vw,22px);line-height:1.75;font-weight:740;}
.dmg-hero__actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px;}
.dmg-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border-radius:15px;border:1px solid rgba(255,255,255,.16);font-weight:950;letter-spacing:.01em;}
.dmg-btn--primary{background:linear-gradient(135deg,var(--dmg-blue),var(--dmg-cyan));color:#fff !important;box-shadow:0 18px 44px rgba(10,132,255,.25);}
.dmg-btn--ghost{background:rgba(255,255,255,.08);color:#fff !important;}
.dmg-btn--plain{background:rgba(15,23,42,.05);border-color:var(--dmg-line);color:var(--dmg-ink);}
.dmg-hero__panel{position:relative;border:1px solid rgba(255,255,255,.14);border-radius:28px;padding:18px;background:rgba(255,255,255,.10);box-shadow:0 26px 90px rgba(0,0,0,.34);backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%);}
.dmg-hero__panel img{width:100%;height:clamp(260px,32vw,420px);object-fit:contain;object-position:center;filter:drop-shadow(0 24px 34px rgba(0,0,0,.35));}
.dmg-hero__stat{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px;}
.dmg-stat{padding:12px;border-radius:18px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.12);color:#fff;text-align:center;}
.dmg-stat strong{display:block;font-size:clamp(18px,2.4vw,28px);line-height:1;font-weight:950;}
.dmg-stat span{display:block;margin-top:6px;font-size:12px;color:rgba(255,255,255,.72);font-weight:850;}
@media (max-width:960px){.dmg-hero{padding-top:calc(var(--navH-small) + 46px)}.dmg-hero__inner{grid-template-columns:1fr}.dmg-hero__panel{max-width:560px}.dmg-hero__panel img{height:260px}.dmg-progress{top:var(--navH-small)}}
@media (max-width:560px){.dmg-hero{min-height:auto}.dmg-hero__stat{grid-template-columns:1fr}.dmg-btn{width:100%}}

/* ===== Sections ===== */
.dmg-section{max-width:min(1120px,92vw);margin:clamp(42px,7vw,86px) auto;scroll-margin-top:150px;}
.dmg-section--wide{max-width:min(1220px,94vw);}
.dmg-section__head{margin-bottom:18px;}
.dmg-section__eyebrow{margin:0 0 8px;color:var(--dmg-blue);font-size:12px;font-weight:950;letter-spacing:.12em;text-transform:uppercase;}
.dmg-section h2,.dmg-flow h2,.dmg-models h2{margin:0;color:var(--dmg-ink);font-size:clamp(24px,4vw,44px);line-height:1.13;letter-spacing:-.04em;font-weight:950;}
.dmg-section__lead{margin:12px 0 0;max-width:78ch;color:var(--dmg-muted);line-height:1.9;font-weight:760;}
.dmg-grid{display:grid;gap:16px;}
.dmg-grid--3{grid-template-columns:repeat(3,1fr);}
.dmg-grid--2{grid-template-columns:repeat(2,1fr);}
@media (max-width:900px){.dmg-grid--3,.dmg-grid--2{grid-template-columns:1fr}}
.dmg-card{position:relative;border:1px solid var(--dmg-line);border-radius:22px;padding:22px;background:var(--dmg-card);box-shadow:var(--dmg-shadow);overflow:hidden;}
.dmg-card::before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--dmg-blue),var(--dmg-cyan),var(--dmg-green));opacity:.75;}
.dmg-card__num{display:inline-flex;margin-bottom:14px;color:var(--dmg-blue);font-size:12px;font-weight:950;letter-spacing:.12em;}
.dmg-card h3{margin:0 0 10px;font-size:clamp(18px,2vw,22px);font-weight:950;letter-spacing:-.02em;}
.dmg-card p{margin:0;color:var(--dmg-muted);line-height:1.85;font-weight:730;}
.dmg-ticks{margin:14px 0 0;padding:0;list-style:none;display:grid;gap:9px;}
.dmg-ticks li{position:relative;padding-left:26px;color:#1f2937;line-height:1.65;font-weight:780;}
.dmg-ticks li::before{content:"✓";position:absolute;left:0;top:0;color:var(--dmg-blue);font-weight:950;}
.dmg-note{margin:14px 0 0;color:var(--dmg-muted);font-size:13px;line-height:1.7;font-weight:740;}

/* split */
.dmg-section--split{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(22px,4vw,54px);align-items:center;}
.dmg-section--reverse{grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);}
.dmg-product-frame{margin:0;border-radius:28px;background:rgba(255,255,255,.90);border:1px solid var(--dmg-line);box-shadow:var(--dmg-shadow2);padding:18px;overflow:hidden;}
.dmg-product-frame img{width:100%;height:clamp(260px,32vw,420px);object-fit:contain;object-position:center;}
.dmg-product-frame figcaption{margin-top:12px;color:var(--dmg-muted);font-size:13px;font-weight:850;text-align:center;}
@media (max-width:920px){.dmg-section--split,.dmg-section--reverse{grid-template-columns:1fr}.dmg-product-frame img{height:260px}}

/* flow */
.dmg-flow{padding:clamp(40px,6vw,74px) 0;background:linear-gradient(180deg,#f6f9ff,#ffffff);border-block:1px solid var(--dmg-line);}
.dmg-flowcard{border:1px solid var(--dmg-line);border-radius:22px;background:#fff;padding:20px;box-shadow:var(--dmg-shadow);}
.dmg-flowcard__icon{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;margin-bottom:14px;color:#fff;background:linear-gradient(135deg,var(--dmg-blue),var(--dmg-green));font-weight:950;box-shadow:0 14px 34px rgba(10,132,255,.20);}
.dmg-flowcard h3{margin:0 0 10px;font-size:20px;font-weight:950;}
.dmg-flowcard p{margin:0;color:var(--dmg-muted);line-height:1.85;font-weight:730;}

/* dark models */
.dmg-models{padding:clamp(42px,6vw,72px) 0;background:linear-gradient(180deg,#07131f,#102033);border-block:1px solid rgba(255,255,255,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.06);scroll-margin-top:150px;}
.dmg-models .dmg-section__eyebrow{color:var(--dmg-cyan);}
.dmg-models h2,.dmg-models .dmg-section__lead{color:#fff;}
.dmg-models .dmg-section__lead{color:rgba(255,255,255,.72);}
.dmg-model-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px;}
.dmg-model-group{border:1px solid rgba(255,255,255,.12);border-radius:22px;background:rgba(255,255,255,.08);box-shadow:0 20px 58px rgba(0,0,0,.22);padding:20px;}
.dmg-model-group h3{margin:0 0 12px;color:#fff;font-size:20px;font-weight:950;letter-spacing:-.02em;}
.dmg-pills{display:flex;flex-wrap:wrap;gap:8px;}
.dmg-pills span{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.88);font-size:13px;font-weight:900;}
@media (max-width:820px){.dmg-model-grid{grid-template-columns:1fr}}

/* check */
.dmg-check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
.dmg-check__item{display:grid;gap:6px;border:1px solid var(--dmg-line);border-radius:18px;background:#fff;padding:16px 18px;box-shadow:0 12px 32px rgba(15,23,42,.06);}
.dmg-check__item strong{font-size:16px;font-weight:950;}
.dmg-check__item span{color:var(--dmg-muted);line-height:1.75;font-weight:730;}
@media (max-width:760px){.dmg-check-grid{grid-template-columns:1fr}}

/* CTA */
.dmg-contact-card{border-radius:26px;background:linear-gradient(180deg,#fff,#f7fbff);border:1px solid var(--dmg-line);box-shadow:var(--dmg-shadow2);padding:22px;}
.dmg-contact-card h3{margin:0 0 12px;font-size:22px;font-weight:950;letter-spacing:-.02em;}
.dmg-cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px;}
footer{color:var(--dmg-muted);text-align:center;padding:44px 12px 64px;}
footer .copyright{font-size:10px;margin:10px 0;}

/* reveal */
.dmg-reveal,.dmg-card,.dmg-flowcard,.dmg-model-group,.dmg-check__item{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease;}
.dmg-reveal.is-visible,.dmg-card.is-visible,.dmg-flowcard.is-visible,.dmg-model-group.is-visible,.dmg-check__item.is-visible{opacity:1;transform:translateY(0);}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.g-nav,.drawer-panel,.dmg-reveal,.dmg-card,.dmg-flowcard,.dmg-model-group,.dmg-check__item{transition:none}.dmg-reveal,.dmg-card,.dmg-flowcard,.dmg-model-group,.dmg-check__item{opacity:1;transform:none}}
