/* RexGroup v0.5.4 — visual hierarchy, compact laptop hero, balanced 4+4 globe badges,
   and readable 8-column solution strip. Isolated presentation layer only. */
:root{
  --rex-font:"Inter","Segoe UI Variable","Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --rex-ink:#202124;
  --rex-body:#514d4a;
  --rex-muted:#77716d;
  --rex-burg:#7d1730;
}

/* One disciplined type family; hierarchy comes from weight, size, rhythm and contrast. */
html,body,button,input,select,textarea{font-family:var(--rex-font)!important}
body{font-weight:400;line-height:1.58;color:var(--rex-body);font-feature-settings:"kern" 1,"liga" 1}
h1,h2,h3,h4,h5,h6{color:var(--rex-ink);font-weight:700;letter-spacing:-.025em}
p{color:var(--rex-body)}

/* Header: distinct navigation without looking heavy. */
.nav a,.side-menu-panel a{font-size:13.5px!important;font-weight:600!important;letter-spacing:-.006em!important}
.language-filter-toggle{font-size:12px!important;font-weight:650!important;letter-spacing:.025em!important}
.side-menu-title{font-size:9.5px!important;font-weight:700!important;letter-spacing:.19em!important}

/* Hero: premium presence, but restrained enough for laptop-height screens. */
.eyebrow,.hero-kicker,.hero .kicker{
  font-size:11.5px!important;font-weight:650!important;line-height:1.25!important;
  letter-spacing:.175em!important;color:#4d4947!important
}
.hero h1{
  font-size:clamp(50px,5.35vw,78px)!important;line-height:.97!important;
  font-weight:760!important;letter-spacing:-.047em!important;color:var(--rex-ink)!important
}
.hero h1 strong,.hero h1 .accent{font-weight:760!important;color:var(--rex-burg)!important}
.hero .lead,.hero-copy>p.lead{
  max-width:610px;font-size:clamp(15px,1.12vw,17.5px)!important;line-height:1.62!important;
  font-weight:400!important;letter-spacing:-.004em!important;color:#56514e!important
}
.hero-actions .btn,.cta .btn{
  font-size:12px!important;font-weight:700!important;letter-spacing:.025em!important
}

/* Balanced globe: 4 badges on the left and 4 on the right. */
.tech-badge{font-family:var(--rex-font)!important;font-size:8.8px!important;font-weight:650!important;letter-spacing:.035em!important}
.tech-badge b{font-weight:650!important;line-height:1.15!important}
.tech-badge span{font-weight:650!important}
.tech-badge .web-mark{font-size:20px!important;font-weight:600!important}
.b-software{left:5%;top:8%}
.b-web{left:0;top:31%}
.b-cloud{left:2%;top:53%}
.b-network{left:7%;bottom:4%}
.b-mobile{right:5%;top:8%}
.b-android{right:0;top:31%}
.b-ios{right:2%;top:54%}
.b-ai{right:7%;bottom:4%}

/* Solution strip: prevent text collisions on 13–15 inch laptops. */
.service-strip{align-items:stretch!important}
.service-item{
  min-width:0!important;overflow:hidden;gap:8px!important;padding:5px 8px!important;
  align-items:center!important
}
.service-item svg{width:28px!important;height:28px!important;flex:0 0 28px!important}
.service-item>span{min-width:0!important;display:block!important}
.service-item b{
  display:block!important;font-size:10.3px!important;font-weight:700!important;line-height:1.15!important;
  letter-spacing:.012em!important;white-space:normal!important;overflow-wrap:normal!important
}
.service-item small{
  display:block!important;margin-top:3px!important;font-size:8.8px!important;font-weight:400!important;
  line-height:1.2!important;letter-spacing:0!important;white-space:normal!important;color:#79736f!important
}

/* Company / section hierarchy: title, supporting copy and facts are clearly distinct. */
.company-kicker,.ecosystem-heading .company-kicker{
  font-size:10.5px!important;font-weight:700!important;letter-spacing:.18em!important;color:var(--rex-burg)!important
}
.company-story h2,.ecosystem-heading h2{
  font-size:clamp(30px,2.75vw,42px)!important;line-height:1.08!important;
  font-weight:720!important;letter-spacing:-.035em!important
}
.company-story-copy p,.ecosystem-heading p{
  font-size:15px!important;line-height:1.68!important;font-weight:400!important;color:#5e5956!important
}
.company-highlight strong{font-size:21px!important;font-weight:750!important;letter-spacing:-.025em!important}
.company-highlight span{font-size:12px!important;font-weight:450!important;line-height:1.38!important;color:#625d59!important}

/* Product and ecosystem cards: name > category > description > action. */
.product-card h2{font-size:19px!important;font-weight:700!important;letter-spacing:-.022em!important}
.product-card em{font-size:11px!important;font-weight:550!important;letter-spacing:.002em!important}
.product-card p{font-size:13px!important;font-weight:400!important;line-height:1.58!important;color:#5e5956!important}
.product-card>a{font-size:10.5px!important;font-weight:700!important;letter-spacing:.04em!important}
.ecosystem-card h3{font-size:16.5px!important;font-weight:700!important;letter-spacing:-.018em!important}
.ecosystem-card b{font-size:9.2px!important;font-weight:700!important;letter-spacing:.09em!important}
.ecosystem-card p{font-size:12.2px!important;line-height:1.56!important;color:#66605d!important}

/* KPIs and footer: information layers remain distinct without visual noise. */
.stat b{font-size:17px!important;font-weight:750!important}
.stat>span,.stat span{font-size:10px!important;font-weight:650!important;letter-spacing:.02em!important}
.stat small{font-size:8.7px!important;font-weight:400!important;color:#807a76!important}
.contact h2{font-size:22px!important;font-weight:700!important}
.contact p{font-size:13.5px!important;line-height:1.58!important}
.site-footer,.footer-inner{font-size:11px!important;font-weight:400!important;letter-spacing:.002em!important}
.footer-since{font-weight:550!important}

/* Desktop/laptop vertical compaction: keep the complete hero, including AI Solutions, visible. */
@media (min-width:901px) and (max-height:900px){
  .hero{padding:6px 0 2px!important}
  .hero-grid{min-height:414px!important;align-items:center!important}
  .hero-copy{padding:14px 0 16px!important}
  .eyebrow{margin-bottom:13px!important}
  .hero h1{font-size:clamp(48px,5vw,70px)!important}
  .lead,.hero .lead{margin-top:16px!important;margin-bottom:18px!important}
  .btn{min-height:48px!important;padding-inline:22px!important}
  .globe-v042{height:425px!important}
  .global-canvas{min-height:405px!important}
  .digital-globe{transform:scale(.89)!important}
  .tech-badge span{width:46px!important;height:46px!important;font-size:18px!important}
  .tech-badge .web-mark{font-size:18px!important}
  .b-software{top:7%}.b-web{top:30%}.b-cloud{top:53%}.b-network{bottom:2%}
  .b-mobile{top:7%}.b-android{top:30%}.b-ios{top:53%}.b-ai{bottom:2%}
  .service-strip{margin-bottom:13px!important;padding-top:10px!important;padding-bottom:10px!important}
}

/* 1366–1500px class screens: keep eight services in one clean row. */
@media (min-width:1251px) and (max-width:1500px){
  .service-strip{padding-left:7px!important;padding-right:7px!important}
  .service-item{gap:6px!important;padding-left:6px!important;padding-right:6px!important}
  .service-item svg{width:25px!important;height:25px!important;flex-basis:25px!important}
  .service-item b{font-size:9.7px!important}
  .service-item small{font-size:8.1px!important}
}

@media (max-width:1250px){
  .service-item{overflow:visible}
  .service-item b{font-size:10.5px!important}
  .service-item small{font-size:9px!important}
}

@media (max-width:900px){
  .hero h1{font-size:clamp(43px,8.5vw,64px)!important}
  .hero .lead,.hero-copy>p.lead{font-size:15.5px!important}
  .b-software{left:8%;top:4%}.b-web{left:2%;top:27%}.b-cloud{left:4%;top:51%}.b-network{left:9%;bottom:3%}
  .b-mobile{right:9%;top:4%}.b-android{right:3%;top:27%}.b-ios{right:4%;top:51%}.b-ai{right:10%;bottom:3%}
}

@media (max-width:620px){
  .hero h1{font-size:clamp(38px,11vw,52px)!important;letter-spacing:-.04em!important}
  .eyebrow,.hero-kicker,.hero .kicker{font-size:10px!important;letter-spacing:.15em!important}
  .company-story h2,.ecosystem-heading h2{font-size:28px!important}
  .company-story-copy p,.ecosystem-heading p{font-size:14.5px!important}
  .tech-badge{font-size:6.8px!important}
  .tech-badge span{width:34px!important;height:34px!important;font-size:13px!important}
  .tech-badge .web-mark{font-size:14px!important}
  .b-software{left:1%;top:3%}.b-web{left:0;top:27%}.b-cloud{left:0;top:52%}.b-network{left:2%;bottom:2%}
  .b-mobile{right:2%;top:3%}.b-android{right:0;top:27%}.b-ios{right:0;top:52%}.b-ai{right:4%;bottom:2%}
}
