/* Identidade visual 2Desk: marinho e azul profundo com acentos ciano/violeta. */
:root {
  --blue: #173c70;
  --ink: #060b1e;
  --brand-blue-hover: #214b84;
  --brand-blue-soft: #edf1f6;
  --brand-blue-border: #d6dfeb;
  --brand-cyan: #15b9e7;
  --brand-violet: #7654d7;
}
.header { background: rgba(6,11,30,.98); border-bottom-color: #243454; }
.header-inner { height: 122px; }
.brand { width: 250px; background: #060b1e; border-radius: 10px; overflow: hidden; }
.header nav > a:not(.nav-app) { color: #eaf4ff; }
.header nav>a:not(.nav-app):hover { color: var(--brand-cyan); }
.header .nav-contact:not(.nav-app) { color: #eaf4ff; background: #ffffff08; border-color: #60779f; }
.header .nav-contact:not(.nav-app):hover { color: #55d4ff; background: #111d39; }
.header .nav-app,
.nav-app { background: var(--blue); border-color: var(--blue); color: #fff; box-shadow: 0 8px 24px #173c7033; }
.header .nav-app:hover,
nav .nav-app:hover { background: var(--brand-blue-hover); color: #fff; }
h1>span { background: linear-gradient(100deg,#13b9e8 0%,#3e70bd 56%,#7654d7 100%); background-clip: text; -webkit-background-clip: text; color: transparent; -webkit-text-fill-color: transparent; }
.contact { background: linear-gradient(135deg,#060b1e 0%,#10284c 58%,#173c70 100%); }
.hero-art,
.product-preview,
.product-overview { background: linear-gradient(145deg,#071329 0%,#153d70 100%); }
.system-feature { border-left-color: var(--blue); }
.module-icon,
.service .service-symbol { background: linear-gradient(145deg,#f1f4f8,#e6ebf2); color: var(--blue); }
.service .service-symbol { border-color: var(--brand-blue-border); box-shadow: 0 3px 8px #102d5608; }
.form-field input:focus-visible,
.form-field textarea:focus-visible,
.form-field select:focus-visible,
.form-consent input:focus-visible { outline-color: #173c7044; border-color: var(--blue); }
.module[open] { border-color: #91a1b8; box-shadow: 0 6px 20px #102d560a; }
@media(max-width:1000px){
  .header-inner{height:88px}
  .brand{width:180px}
  .menu-toggle{display:flex;gap:12px;align-items:center;border:1px solid #40547b;border-radius:6px;background:#0d1730;color:#fff;padding:8px 12px;font-size:13px}
  nav{position:absolute;left:0;right:0;top:88px;padding:20px;flex-direction:column;align-items:stretch;background:#060b1e;border-bottom:1px solid #243454;display:none}
  nav.is-open{display:flex}
  nav a{padding:10px}
  .nav-contact{text-align:center}
}
@media(max-width:760px){
  .header-inner{height:80px}
  .brand{width:155px}
  nav{top:80px}
}
