.ws-field-card .ws-domain-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:15px;
}
.ws-field-card .ws-domain-tags span{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:4px 10px;
  border:1px solid rgba(116,211,247,.92);
  border-radius:999px;
  background:rgba(3,37,56,.28);
  color:#fff;
  font-size:9px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:.01em;
  white-space:nowrap;
}
.top-page .ws-domain-grid-v2 .ws-field-card{
  min-height:460px;
}
.page-solution .business-domain-map-section{
  width:calc(100% - var(--side-w));
  margin-left:var(--side-w);
  overflow:hidden;
  border-top:1px solid #dbeaf1;
  border-bottom:1px solid #dbeaf1;
  background:#fff;
}
.page-solution .business-domain-map-section img{
  display:block;
  width:100%;
  height:auto;
}
@media(max-width:1000px){
  .top-page .ws-domain-grid-v2 .ws-field-card{min-height:410px}
}
@media(max-width:900px){
  .page-solution .business-domain-map-section{
    width:100%;
    margin-left:0;
    overflow-x:auto;
  }
  .page-solution .business-domain-map-section img{
    width:900px;
    max-width:none;
  }
}
@media(max-width:600px){
  .ws-field-card .ws-domain-tags{gap:5px;margin-top:12px}
  .ws-field-card .ws-domain-tags span{min-height:24px;padding:4px 9px;font-size:8.5px}
}

/* Interactive business-domain map */
.page-solution .business-domain-map-section{
  padding:clamp(54px,5vw,88px) clamp(28px,4vw,72px);
  background:
    radial-gradient(circle at 76% 8%,rgba(84,194,239,.12),transparent 30%),
    linear-gradient(180deg,#fff 0%,#f7fbfd 100%);
}
.page-solution .domain-map-shell{
  width:min(1500px,100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(230px,300px) minmax(0,1fr);
  gap:clamp(34px,4vw,72px);
  align-items:center;
}
.page-solution .domain-map-copy{position:relative;z-index:2}
.page-solution .domain-map-kicker{
  margin:0 0 20px;
  color:#119bd5;
  font-family:Lato,sans-serif;
  font-size:12px;
  font-weight:900;
  line-height:1;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.page-solution .domain-map-copy h2{
  margin:0;
  color:#06283b;
  font-size:clamp(34px,3vw,50px);
  font-weight:700;
  line-height:1.32;
  letter-spacing:.01em;
}
.page-solution .domain-map-copy h2 span{display:block}
.page-solution .domain-map-lead{
  margin:26px 0 0;
  color:#47697c;
  font-size:15px;
  font-weight:500;
  line-height:2;
}
.page-solution .domain-map-note{
  margin-top:30px;
  padding:18px;
  border:1px solid #d8e8ef;
  border-radius:16px;
  background:rgba(255,255,255,.78);
  box-shadow:0 14px 34px rgba(9,55,77,.06);
}
.page-solution .domain-map-note span{
  color:#119bd5;
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
}
.page-solution .domain-map-note p{
  margin:7px 0 0;
  color:#47697c;
  font-size:12px;
  line-height:1.75;
}
.page-solution .domain-map-detail-link{
  display:inline-flex;
  align-items:center;
  gap:20px;
  margin-top:28px;
  color:#078ecb;
  font-size:14px;
  font-weight:700;
  text-decoration:none;
}
.page-solution .domain-map-detail-link b{
  font-size:20px;
  transition:transform .25s ease;
}
.page-solution .domain-map-detail-link:hover b{transform:translateX(5px)}
.page-solution .domain-map-board{
  position:relative;
  min-width:0;
  padding:30px;
  border:1px solid rgba(162,205,223,.7);
  border-radius:30px;
  background:rgba(255,255,255,.84);
  box-shadow:0 28px 70px rgba(8,57,81,.12);
  backdrop-filter:blur(12px);
}
.page-solution .domain-map-stage{
  position:relative;
  min-height:420px;
  overflow:hidden;
  border-radius:22px;
  background:
    radial-gradient(circle at 50% 50%,rgba(109,202,243,.22) 0 12%,transparent 32%),
    linear-gradient(135deg,rgba(235,247,252,.9),rgba(250,253,255,.55));
}
.page-solution .domain-map-stage::before,
.page-solution .domain-map-stage::after{
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  width:2px;
  height:72%;
  background:linear-gradient(180deg,transparent,#8ed2ef 18%,#8ed2ef 82%,transparent);
  transform:translate(-50%,-50%) rotate(45deg);
  transform-origin:center;
}
.page-solution .domain-map-stage::after{transform:translate(-50%,-50%) rotate(-45deg)}
.page-solution .domain-map-orbit{
  position:absolute;
  inset:54px 20%;
  border:1px dashed rgba(40,158,210,.45);
  border-radius:50%;
}
.page-solution .domain-map-major{
  position:absolute;
  z-index:2;
  width:min(220px,28%);
  min-height:92px;
  display:flex;
  align-items:center;
  gap:13px;
  padding:17px 18px;
  border:1px solid rgba(129,195,223,.66);
  border-radius:20px;
  background:rgba(255,255,255,.95);
  color:#123c51;
  text-decoration:none;
  box-shadow:0 15px 34px rgba(13,71,96,.09);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.page-solution .domain-map-major:hover{
  z-index:5;
  border-color:#54bce8;
  box-shadow:0 22px 42px rgba(13,71,96,.16);
}
.page-solution .domain-map-major.is-current-domain{
  border-color:#159dd7;
  box-shadow:0 18px 42px rgba(13,126,176,.18),inset 0 0 0 1px rgba(21,157,215,.18);
}
.page-solution .domain-map-major.is-current-domain .domain-map-number{
  background:#119bd5;
  color:#fff;
}
.page-solution .domain-map-number{
  flex:0 0 42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:#e5f6fd;
  color:#078fce;
  font-family:Lato,sans-serif;
  font-size:12px;
  font-weight:900;
}
.page-solution .domain-map-major div{min-width:0;display:flex;flex-direction:column}
.page-solution .domain-map-major small{
  color:#159dd7;
  font-family:Lato,sans-serif;
  font-size:9px;
  font-weight:900;
  line-height:1;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.page-solution .domain-map-major strong{
  margin-top:7px;
  color:#07364d;
  font-size:16px;
  line-height:1.25;
  white-space:nowrap;
}
.page-solution .domain-map-major em{
  margin-top:5px;
  color:#6b8796;
  font-size:10px;
  font-style:normal;
  line-height:1.25;
  white-space:nowrap;
}
.page-solution .domain-map-major.is-transport{top:24px;left:50%;transform:translateX(-50%)}
.page-solution .domain-map-major.is-transport:hover{transform:translate(-50%,-4px)}
.page-solution .domain-map-major.is-municipality{top:50%;right:22px;transform:translateY(-50%)}
.page-solution .domain-map-major.is-municipality:hover{transform:translateY(calc(-50% - 4px))}
.page-solution .domain-map-major.is-logistics{bottom:24px;left:50%;transform:translateX(-50%)}
.page-solution .domain-map-major.is-logistics:hover{transform:translate(-50%,-4px)}
.page-solution .domain-map-major.is-developer{top:50%;left:22px;transform:translateY(-50%)}
.page-solution .domain-map-major.is-developer:hover{transform:translateY(calc(-50% - 4px))}
.page-solution .domain-map-major.is-municipality .domain-map-number{background:#eaf4ff;color:#347fc6}
.page-solution .domain-map-major.is-logistics .domain-map-number{background:#e8f8f7;color:#118d89}
.page-solution .domain-map-major.is-developer .domain-map-number{background:#f0f3ff;color:#617fd1}
.page-solution .domain-map-core{
  position:absolute;
  z-index:3;
  top:50%;
  left:50%;
  width:132px;
  height:132px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border:8px solid rgba(255,255,255,.88);
  border-radius:50%;
  background:linear-gradient(145deg,#fff,#edf8fc);
  box-shadow:0 16px 45px rgba(13,88,120,.18),0 0 0 1px #cfe8f2;
  transform:translate(-50%,-50%);
}
.page-solution .domain-map-core img{width:32px;height:32px;object-fit:contain}
.page-solution .domain-map-core strong{margin-top:6px;color:#062c40;font-family:Lato,sans-serif;font-size:15px}
.page-solution .domain-map-core span{margin-top:4px;color:#3d91b7;font-family:Lato,sans-serif;font-size:8px;font-weight:700;line-height:1.25;letter-spacing:.08em;text-align:center;text-transform:uppercase}
.page-solution .domain-map-fields{
  margin-top:24px;
  padding-top:22px;
  border-top:1px solid #dcebf1;
}
.page-solution .domain-map-fields>p{
  margin:0 0 12px;
  color:#71909f;
  font-size:10px;
  font-weight:700;
  letter-spacing:.1em;
}
.page-solution .domain-map-fields>div{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}
.page-solution .domain-map-fields a{
  min-width:0;
  display:flex;
  align-items:center;
  gap:8px;
  padding:9px 10px;
  border:1px solid #d8e8ef;
  border-radius:11px;
  background:#fff;
  color:#466777;
  text-decoration:none;
  transition:border-color .2s ease,background .2s ease;
}
.page-solution .domain-map-fields a:hover{border-color:#79c7e8;background:#f1faff}
.page-solution .domain-map-fields b{
  flex:0 0 auto;
  color:#159bd4;
  font-family:Lato,sans-serif;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
}
.page-solution .domain-map-fields span{
  color:#34586a;
  font-size:10px;
  font-weight:600;
  overflow-wrap:anywhere;
}
@media(max-width:1180px){
  .page-solution .domain-map-shell{grid-template-columns:1fr}
  .page-solution .domain-map-copy{max-width:660px}
  .page-solution .domain-map-lead{margin-top:18px}
  .page-solution .domain-map-note{display:none}
}
@media(max-width:900px){
  .page-solution .business-domain-map-section{padding:52px 24px}
}
@media(max-width:700px){
  .page-solution .business-domain-map-section{padding:46px 18px}
  .page-solution .domain-map-board{padding:16px;border-radius:22px}
  .page-solution .domain-map-stage{
    min-height:auto;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    padding:124px 12px 16px;
  }
  .page-solution .domain-map-stage::before,
  .page-solution .domain-map-stage::after,
  .page-solution .domain-map-orbit{display:none}
  .page-solution .domain-map-core{
    top:16px;
    width:96px;
    height:96px;
    border-width:6px;
    transform:translateX(-50%);
  }
  .page-solution .domain-map-core img{width:24px;height:24px}
  .page-solution .domain-map-core strong{font-size:12px}
  .page-solution .domain-map-major,
  .page-solution .domain-map-major.is-transport,
  .page-solution .domain-map-major.is-municipality,
  .page-solution .domain-map-major.is-logistics,
  .page-solution .domain-map-major.is-developer{
    position:relative;
    inset:auto;
    width:auto;
    min-height:110px;
    align-items:flex-start;
    padding:15px;
    transform:none;
  }
  .page-solution .domain-map-major:hover,
  .page-solution .domain-map-major.is-transport:hover,
  .page-solution .domain-map-major.is-municipality:hover,
  .page-solution .domain-map-major.is-logistics:hover,
  .page-solution .domain-map-major.is-developer:hover{transform:translateY(-3px)}
  .page-solution .domain-map-number{flex-basis:34px;height:34px;border-radius:11px}
  .page-solution .domain-map-major strong{font-size:13px;white-space:normal}
  .page-solution .domain-map-major em{font-size:9px;white-space:normal}
  .page-solution .domain-map-fields>div{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:430px){
  .page-solution .domain-map-copy h2{font-size:34px}
  .page-solution .domain-map-lead{font-size:14px;line-height:1.85}
  .page-solution .domain-map-stage{grid-template-columns:1fr;padding-top:122px}
  .page-solution .domain-map-major,
  .page-solution .domain-map-major.is-transport,
  .page-solution .domain-map-major.is-municipality,
  .page-solution .domain-map-major.is-logistics,
  .page-solution .domain-map-major.is-developer{min-height:86px;align-items:center}
}

/* solution page has four domains: keep a balanced 2x2 grid instead of 3+1 */
.page-solution .ws-field-grid.ws-domain-grid-v2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ws-field-card h3{text-wrap:balance}
@media(max-width:680px){.page-solution .ws-field-grid.ws-domain-grid-v2{grid-template-columns:1fr}}
