/* ANT Group — Logo-first visual system
   Calm navy/white foundation; logo colors act as structured signals. */
:root{
  --ant-ink:#231f20;
  --ant-navy:#282260;
  --ant-blue:#2062af;
  --ant-cyan:#24abe2;
  --ant-green:#55b047;
  --ant-yellow:#ffd800;
  --ant-red:#ed2024;
  --ant-pink:#ec008c;
  --ant-paper:#fbfcfe;
  --ant-soft:#f3f6fb;
  --ant-muted:#626b75;
  --ant-line:#e1e6ee;
  --ant-shadow:0 18px 48px rgba(40,34,96,.11);
  --ant-radius:14px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:94px}
body{
  margin:0;
  background:var(--ant-paper)!important;
  color:var(--ant-ink)!important;
  font-family:Arial,Helvetica,"Segoe UI",sans-serif!important;
  font-size:16px;
  line-height:1.66;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body h1{font-size:clamp(36px,4.1vw,54px)!important;line-height:1.1!important;letter-spacing:-1.25px!important;font-weight:700!important}
body h2,.title{font-size:clamp(27px,3vw,37px)!important;line-height:1.2!important;letter-spacing:-.55px!important;font-weight:700!important}
body h3{font-weight:700!important;letter-spacing:-.16px!important}
body p,body li{line-height:1.7}
img{max-width:100%}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--ant-yellow)!important;outline-offset:3px}

/* Header: white space and the exact color rhythm of the logo */
header{
  position:sticky!important;
  top:0!important;
  z-index:1000!important;
  min-height:90px!important;
  background:rgba(255,255,255,.97)!important;
  border:0!important;
  border-bottom:1px solid rgba(40,34,96,.10)!important;
  box-shadow:0 8px 30px rgba(40,34,96,.07)!important;
  backdrop-filter:blur(14px);
}
header:after{content:none!important;display:none!important}
header .container.nav{position:relative;min-height:90px!important;height:auto!important}
.logo{
  width:104px!important;
  min-width:104px!important;
  height:74px!important;
  display:flex!important;
  align-items:center!important;
  overflow:visible!important;
  padding:3px 0!important;
  font-size:0!important;
  background:none!important;
}
.logo .logo-mark,.logo>span:not(.logo-mark){display:none!important}
.logo:before{content:"";display:block;width:100%;height:100%;background:url("../brand-logo-vector-dark.svg") center/contain no-repeat}
.logo:has(.brand-logo):before{display:none}
.logo .brand-logo,.brand-logo{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important}
.menu{gap:7px!important}
.menu>li>a,.menu a{font-family:Arial,Helvetica,"Segoe UI",sans-serif!important;font-weight:650!important}
.menu>li>a{position:relative;border-radius:7px!important;color:var(--ant-ink)!important}
.menu>li>a:after{content:"";position:absolute;left:14px;right:14px;bottom:5px;height:3px;background:var(--ant-yellow);transform:scaleX(0);transform-origin:center;transition:transform .22s ease}
.menu>li>a:hover,.menu>li.active>a{background:#eef4fb!important;color:var(--ant-blue)!important;box-shadow:none!important}
.menu>li>a:hover:after,.menu>li.active>a:after{transform:scaleX(1)}
.language-switch{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:none;order:3;margin-left:8px;padding:6px 9px;border:1px solid rgba(32,98,175,.18);border-radius:999px;background:#fff;box-shadow:0 5px 14px rgba(40,34,96,.06);font-size:12px;font-weight:650;line-height:1;color:#8a8f99}
.language-switch a{display:inline-flex;align-items:center;justify-content:center;min-width:20px;color:#707987!important;transition:.2s}
.language-switch a:hover{color:var(--ant-blue)!important}
.language-switch a.active{color:var(--ant-navy)!important;font-weight:800}
.nav>.logo{order:1}.nav>.menu{order:2}.nav>.mobile-btn{order:4}
.dropdown{border:1px solid rgba(32,98,175,.14)!important;border-radius:12px!important;box-shadow:0 18px 48px rgba(40,34,96,.13)!important}
.dropdown a:hover{background:#f2f7fd!important;color:var(--ant-blue)!important}
.mobile-btn{color:var(--ant-navy)!important;border:0!important;background:transparent!important;cursor:pointer}

/* Hero: luminous like the logo on white, with technology imagery retained */
.hero{
  position:relative!important;
  isolation:isolate;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 88% 18%,rgba(36,171,226,.16),transparent 29%),
    radial-gradient(circle at 75% 86%,rgba(255,216,0,.14),transparent 26%),
    linear-gradient(120deg,#fbfdff 0%,#edf5fc 62%,#eaf3fb 100%)!important;
  color:var(--ant-navy)!important;
}
.hero:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  opacity:.19!important;
  background-image:
    radial-gradient(circle at 12% 24%,var(--ant-green) 0 3px,transparent 4px),
    radial-gradient(circle at 18% 31%,var(--ant-yellow) 0 3px,transparent 4px),
    radial-gradient(circle at 25% 20%,var(--ant-cyan) 0 3px,transparent 4px),
    radial-gradient(circle at 82% 26%,var(--ant-pink) 0 3px,transparent 4px),
    radial-gradient(circle at 90% 37%,var(--ant-blue) 0 3px,transparent 4px)!important;
  background-size:420px 320px!important;
  pointer-events:none;
}
.hero:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2!important;
  background:linear-gradient(90deg,rgba(251,253,255,.98) 0%,rgba(244,249,253,.94) 47%,rgba(234,244,251,.70) 70%,rgba(40,34,96,.08) 100%)!important;
  pointer-events:none;
}
.hero>.container,.hero .container,.hero-content,.hero-grid,.hero-inner{position:relative;z-index:3}
.hero h1,.hero h2{color:var(--ant-navy)!important}
.hero p{color:#445466!important}
.hero .eyebrow,.hero .hero-label,.eyebrow,.hero-label{color:var(--ant-blue)!important;font-weight:750!important;letter-spacing:1.05px!important}
.hero .eyebrow:before,.eyebrow:before{background:var(--ant-yellow)!important}
.breadcrumb,.breadcrumb a{color:#718090!important}
.breadcrumb span{color:var(--ant-blue)!important}
.hero-points span,.hero-pills span,.capability-chip{border:1px solid rgba(32,98,175,.18)!important;background:rgba(255,255,255,.78)!important;color:var(--ant-navy)!important;box-shadow:0 5px 16px rgba(40,34,96,.05)!important}
.hero-offer,.system-map{background:rgba(255,255,255,.82)!important;border:1px solid rgba(32,98,175,.14)!important;box-shadow:0 22px 60px rgba(40,34,96,.12)!important;backdrop-filter:blur(8px)}
.hero-offer-label{color:var(--ant-blue)!important}
.offer-item,.layer{border-color:rgba(40,34,96,.10)!important}
.offer-item b,.layer b{color:var(--ant-blue)!important}
.offer-item:nth-child(3) b,.layer:nth-child(3) b{color:var(--ant-green)!important}
.offer-item:nth-child(4) b,.layer:nth-child(4) b{color:#c59f00!important}
.offer-item:nth-child(5) b{color:var(--ant-pink)!important}
.offer-item:nth-child(6) b{color:var(--ant-cyan)!important}

/* Actions */
.btn,.primary,.btn-primary,.btn-red,.cta .btn,.hero-actions .primary,.note .btn{
  background:linear-gradient(135deg,var(--ant-blue),#187bb8)!important;
  color:#fff!important;
  border-color:transparent!important;
  border-radius:8px!important;
  box-shadow:0 10px 25px rgba(32,98,175,.22)!important;
  font-weight:700!important;
}
.btn:hover,.primary:hover,.btn-primary:hover,.btn-red:hover,.cta .btn:hover,.hero-actions .primary:hover,.note .btn:hover{filter:brightness(1.07);transform:translateY(-2px)}
.secondary,.btn-white,.btn-outline,.hero .btn-outline{
  background:rgba(255,255,255,.72)!important;
  color:var(--ant-navy)!important;
  border:1px solid rgba(40,34,96,.28)!important;
  box-shadow:none!important;
}
.secondary:hover,.btn-white:hover,.btn-outline:hover,.hero .btn-outline:hover{background:var(--ant-yellow)!important;color:var(--ant-ink)!important;border-color:var(--ant-yellow)!important}
.solution a,.solution-card a,.card-link,.product-link,.text-link,.item a,.back,.tech-card>a{color:var(--ant-blue)!important;font-weight:700!important}
.solution a:hover,.solution-card a:hover,.card-link:hover,.product-link:hover,.text-link:hover,.item a:hover,.back:hover,.tech-card>a:hover{color:var(--ant-navy)!important;text-decoration:underline;text-decoration-color:var(--ant-yellow);text-decoration-thickness:3px;text-underline-offset:4px}

/* Section rhythm and the logo's node language */
section{position:relative}
.section-head:before{content:none!important;display:none!important}
.featured,.news,.intro,.summary,.portfolio,.tech,.usecase{background:var(--ant-paper)!important}
.section-title,.title,.intro h2,.summary h2,.card h3,.solution h3,.solution-card h2,.tech-card h3,.item h2,.use h3,.chain-item strong{color:var(--ant-navy)!important}
.section-desc,body p{color:var(--ant-muted)}
.hero p{color:#445466!important}
.tag{display:inline-flex!important;align-items:center;gap:9px;color:var(--ant-blue)!important;font-weight:750!important;letter-spacing:.85px!important}
.tag:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--ant-yellow);box-shadow:15px 0 0 var(--ant-cyan),30px 0 0 var(--ant-pink);margin-right:28px}
.card,.solution,.solution-card,.tech-card,.item,.use,.stat,.chain-item,.partner,.news-card{
  border-color:var(--ant-line)!important;
  border-radius:var(--ant-radius)!important;
  box-shadow:0 8px 26px rgba(40,34,96,.055)!important;
}
.card,.solution,.solution-card,.tech-card,.item,.use,.chain-item{position:relative;overflow:hidden;background:#fff!important}
.card:before,.solution:before,.solution-card:before,.tech-card:before,.item:before,.use:before,.chain-item:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--ant-blue)!important}
.card:nth-child(5n+2):before,.solution:nth-child(5n+2):before,.solution-card:nth-child(5n+2):before,.tech-card:nth-child(5n+2):before,.item:nth-child(5n+2):before,.use:nth-child(5n+2):before{background:var(--ant-cyan)!important}
.card:nth-child(5n+3):before,.solution:nth-child(5n+3):before,.solution-card:nth-child(5n+3):before,.tech-card:nth-child(5n+3):before,.item:nth-child(5n+3):before,.use:nth-child(5n+3):before{background:var(--ant-pink)!important}
.card:nth-child(5n+4):before,.solution:nth-child(5n+4):before,.solution-card:nth-child(5n+4):before,.tech-card:nth-child(5n+4):before,.item:nth-child(5n+4):before,.use:nth-child(5n+4):before{background:var(--ant-yellow)!important}
.card:nth-child(5n):before,.solution:nth-child(5n):before,.solution-card:nth-child(5n):before,.tech-card:nth-child(5n):before,.item:nth-child(5n):before,.use:nth-child(5n):before{background:var(--ant-green)!important}
.card:hover,.solution:hover,.solution-card:hover,.tech-card:hover,.item:hover,.use:hover,.partner:hover,.news-card:hover{transform:translateY(-4px);box-shadow:var(--ant-shadow)!important}
.icon,.solution-icon,.contact-icon{color:var(--ant-blue)!important;background:#edf5fc!important;border-color:rgba(32,98,175,.10)!important}
.solution-card:nth-child(6n+2) .solution-icon,.tech-card:nth-child(6n+2) .icon{color:var(--ant-cyan)!important;background:#eaf9fe!important}
.solution-card:nth-child(6n+3) .solution-icon,.tech-card:nth-child(6n+3) .icon{color:var(--ant-pink)!important;background:#fff0f8!important}
.solution-card:nth-child(6n+4) .solution-icon{color:#b79200!important;background:#fff9d8!important}
.solution-card:nth-child(6n+5) .solution-icon{color:var(--ant-green)!important;background:#eff9ed!important}
.solution-card:nth-child(6n) .solution-icon{color:var(--ant-red)!important;background:#fff0ef!important}
.step-num,.use-number,.cap-title,.capability-title,.stat strong{color:var(--ant-blue)!important}
.process,.partners{background:linear-gradient(135deg,#f3f6fb 0%,#eef8fc 54%,#fffbea 100%)!important;border-top:1px solid rgba(32,98,175,.06);border-bottom:1px solid rgba(40,34,96,.06)}
.partner{background:rgba(255,255,255,.90)!important;padding:0!important}
.partner-link{display:flex!important;align-items:center!important;justify-content:center!important;width:100%;height:100%;padding:18px}
.partner:hover{border-color:rgba(36,171,226,.38)!important}
.partner img{filter:none!important;opacity:1!important}

/* Dark areas echo the navy logo node; other colors remain accents */
.cta,.contact,.note{
  background:
    radial-gradient(circle at 86% 18%,rgba(36,171,226,.18),transparent 27%),
    radial-gradient(circle at 12% 90%,rgba(236,0,140,.10),transparent 25%),
    linear-gradient(120deg,#211c52 0%,#282260 58%,#174e8d 100%)!important;
  color:#fff!important;
}
.cta:before,.contact:before,.note:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.22;background-image:radial-gradient(circle,var(--ant-yellow) 0 2px,transparent 3px);background-size:56px 56px}
.cta>.container,.contact>.container,.note>.container{position:relative;z-index:1}
.cta h2,.contact h2,.note h2{color:#fff!important}
.cta p,.contact p,.note p{color:rgba(255,255,255,.80)!important}
.contact-form{background:#fff!important;color:var(--ant-ink)!important}
.contact-form p,.contact-form label{color:var(--ant-muted)!important}
input:focus,textarea:focus{border-color:var(--ant-cyan)!important;box-shadow:0 0 0 3px rgba(255,216,0,.25)!important}
footer,.site-footer{
  position:relative;
  background:linear-gradient(125deg,#17143d 0%,#282260 55%,#124f78 100%)!important;
  color:#c7d0dc!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
  font-family:"Segoe UI",Arial,sans-serif!important;
  font-size:13px!important;
  font-weight:400!important;
  line-height:1.5!important;
  letter-spacing:.04px!important;
}
footer:before,.site-footer:before{content:none!important;display:none!important}
footer a,.site-footer a{color:#dce3ec!important}
footer a:hover,.site-footer a:hover{color:var(--ant-yellow)!important}
footer strong,.footer-col h3,.footer-contact-line b,.footer-consult-btn{color:var(--ant-yellow)!important}
.footer-consult-btn:after{background:var(--ant-cyan)!important}
.site-footer .footer-col h3{font-size:15px!important;font-weight:500!important;line-height:1.35!important;margin-bottom:17px!important;letter-spacing:.12px!important}
.site-footer .footer-col a,.site-footer .footer-col span{font-size:14px!important;font-weight:400!important;line-height:1.5!important;margin-bottom:9px!important}
.site-footer .footer-contact-line b{font-weight:500!important}
.site-footer .footer-consult-copy,.site-footer .footer-consult-btn{font-size:14px!important;font-weight:400!important}
.site-footer .footer-bottom-inner{font-size:13px!important;font-weight:400!important}

/* Draft legal pages */
.legal-main{min-height:62vh;padding:72px 0 88px;background:linear-gradient(145deg,#fbfcfe,#f2f7fb)}
.legal-main .legal-card{max-width:860px;margin:auto;background:#fff;border:1px solid var(--ant-line);border-top:5px solid var(--ant-blue);border-radius:16px;padding:clamp(26px,5vw,54px);box-shadow:var(--ant-shadow)}
.legal-main h1{color:var(--ant-navy)!important;margin-bottom:18px}
.legal-main h2{font-size:23px!important;margin:28px 0 8px;color:var(--ant-navy)!important}
.legal-kicker{color:var(--ant-blue);font-weight:750;text-transform:uppercase;letter-spacing:1px;margin-bottom:10px}
.legal-note{margin-top:30px;padding:16px 18px;background:#fff9d8;border-left:4px solid var(--ant-yellow);border-radius:8px;color:#534b33}

@media(max-width:950px){
  .menu{gap:1px!important}
  .menu>li>a{padding:12px 9px!important;font-size:14px!important}
  .hero-grid{gap:30px!important}
}
@media(max-width:700px){
  html{scroll-padding-top:82px}
  header .container.nav{min-height:82px!important}
  .logo{width:88px!important;min-width:88px!important;height:66px!important}
  .mobile-btn{display:block!important;font-size:27px!important;padding:8px!important}
  .language-switch{margin-left:auto;margin-right:4px;padding:6px 8px;font-size:11px}
  .menu{display:none!important;position:absolute!important;top:82px!important;left:-4%!important;right:-4%!important;padding:12px 4% 16px!important;background:#fff!important;border-bottom:1px solid var(--ant-line)!important;box-shadow:0 18px 30px rgba(40,34,96,.12)!important;flex-direction:column!important;align-items:stretch!important;max-height:calc(100vh - 82px);overflow:auto}
  .menu.open{display:flex!important}
  .menu>li>a{display:block!important;padding:13px 15px!important}
  .menu>li>a:after{left:15px;right:auto;width:34px;bottom:6px}
  .dropdown{position:static!important;display:block!important;opacity:1!important;visibility:visible!important;transform:none!important;width:auto!important;box-shadow:none!important;border:0!important;border-left:3px solid var(--ant-yellow)!important;border-radius:0!important;margin:3px 0 8px 16px!important;padding:3px 0 3px 9px!important}
  .dropdown a{padding:10px 12px!important}
  body h1{font-size:clamp(32px,9vw,42px)!important}
  body h2,.title{font-size:clamp(25px,7vw,32px)!important}
  .hero,.hero-content{min-height:auto!important}
  .hero>.container,.hero .container{padding-top:48px;padding-bottom:50px}
  .hero-grid,.hero-content{grid-template-columns:1fr!important}
  .hero-offer,.system-map{margin-top:12px}
  .cta-inner,.note-inner{align-items:flex-start!important}
  .cta .btn,.note .btn{margin-top:18px!important}
  .footer{gap:12px!important}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
