:root {
  --xped-blue: #245edb;
  --xped-blue-dark: #0c46c8;
  --xped-border: #0755d8;
  --xped-taskbar: #245edb;
  --xped-font: Tahoma, "Trebuchet MS", Arial, sans-serif;
}

.xped-site,
.xped-site * { box-sizing: border-box; }

.xped-site {
  position: fixed;
  inset: 0;
  z-index: 99999;
  overflow: hidden;
  font-family: var(--xped-font);
  font-size: 12px;
  color: #111;
}

.xped-desktop {
  position: absolute;
  inset: 0;
  overflow: hidden;
  background:
    radial-gradient(ellipse at 74% 18%, rgba(255,255,255,.58) 0%, rgba(255,255,255,.20) 18%, rgba(255,255,255,0) 42%),
    radial-gradient(ellipse at 18% 72%, rgba(155,245,255,.34) 0%, rgba(84,204,255,.18) 25%, rgba(255,255,255,0) 48%),
    linear-gradient(180deg, #0f7ee3 0%, #72c9f0 30%, #eafcff 54%, #55c4ef 72%, #0878cf 100%);
}

.xped-desktop button,
.xped-desktop input,
.xped-desktop textarea { font: inherit; }



.xped-brand-badge {
  position: absolute;
  top: 16px;
  right: 28px;
  width: clamp(240px, 28vw, 460px);
  max-width: calc(100vw - 40px);
  z-index: 1;
  pointer-events: none;
  filter: drop-shadow(0 10px 22px rgba(20, 78, 161, .30));
}
.xped-brand-badge img {
  display: block;
  width: 100%;
  height: auto;
}


.xped-desktop-icon {
  z-index: 3;
  position: absolute;
  width: 88px;
  padding: 3px;
  border: 1px solid transparent;
  background: transparent;
  color: #fff;
  text-align: center;
  text-shadow: 1px 1px 2px #000;
  cursor: default;
}
.xped-desktop-icon:hover { background: rgba(40, 80, 190, .22); border-color: rgba(255,255,255,.35); }
.xped-desktop-icon img { width: 42px; height: 42px; object-fit: contain; display: block; margin: 0 auto 4px; }
.xped-desktop-icon span { display: inline-block; max-width: 100%; line-height: 1.2; }
.xped-recycle { right: 8px; bottom: 42px; width: 92px; }

.xped-window {
  z-index: 2;
  position: absolute;
  display: flex;
  flex-direction: column;
  min-width: 340px;
  min-height: 230px;
  border: 3px solid var(--xped-border);
  border-radius: 8px 8px 3px 3px;
  background: #ece9d8;
  box-shadow: 2px 3px 8px rgba(0,0,0,.35);
  overflow: hidden;
}
.xped-window[hidden] { display: none !important; }
.xped-window.xped-maximized { inset: 0 0 30px 0 !important; width: auto !important; height: auto !important; border-radius: 0; }

.xped-titlebar {
  height: 29px;
  flex: 0 0 29px;
  padding: 3px 3px 3px 7px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #fff;
  font-weight: 700;
  background: linear-gradient(#3b92f6 0%, #0b5fe9 45%, #0644bf 100%);
  cursor: default;
  user-select: none;
}
.xped-title { display: flex; align-items: center; gap: 5px; text-shadow: 1px 1px #003b9a; }
.xped-controls { display: flex; gap: 2px; }
.xped-controls button {
  width: 23px;
  height: 21px;
  padding: 0;
  border: 1px solid #fff;
  border-radius: 3px;
  color: #fff;
  font-weight: 700;
  line-height: 17px;
  background: linear-gradient(#6bb0ff, #176be4 55%, #0d49bd);
  box-shadow: inset 0 0 0 1px rgba(0,55,160,.7);
}
.xped-controls .xped-close { background: linear-gradient(#ff9c7d, #e84c2b 55%, #bd2b16); }

.xped-menubar {
  height: 23px;
  flex: 0 0 23px;
  padding: 4px 9px;
  display: flex;
  gap: 17px;
  background: #ece9d8;
  border-bottom: 1px solid #c9c5b3;
}
.xped-toolbar {
  height: 38px;
  flex: 0 0 38px;
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 3px 7px;
  background: linear-gradient(#f8f6ee, #ece9d8);
  border-bottom: 1px solid #c9c5b3;
}
.xped-toolbar button { border: 0; background: transparent; padding: 4px 6px; }
.xped-toolbar .xped-sep { width: 1px; height: 26px; background: #c6c1af; margin: 0 4px; }

.xped-address {
  height: 28px;
  flex: 0 0 28px;
  display: grid;
  grid-template-columns: 55px 1fr 42px;
  align-items: center;
  gap: 4px;
  padding: 3px 6px;
  background: #ece9d8;
  border-bottom: 1px solid #bdb8a7;
}
.xped-address div { height: 21px; line-height: 19px; background: #fff; border: 1px solid #7f9db9; padding: 0 6px; overflow: hidden; }
.xped-address button { height: 22px; border: 0; color: #fff; background: #36a53a; border-radius: 2px; }

.xped-window-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  background: #fff;
}
.xped-placeholder { padding: 34px; }
.xped-placeholder h1 { margin: 0 0 18px; color: #153c94; font-family: "Courier New", monospace; font-size: 32px; }

.xped-taskbar {
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 30px;
  display: flex;
  align-items: stretch;
  background: linear-gradient(#2f78ef 0%, #245edb 10%, #1d54cf 90%, #1947b8 100%);
  border-top: 1px solid #0d47bc;
  z-index: 100000;
}
.xped-start-button {
  width: 96px;
  border: 0;
  border-radius: 0 12px 12px 0;
  color: #fff;
  font-size: 18px !important;
  font-style: italic;
  text-shadow: 1px 1px 1px #175114;
  background: linear-gradient(#63c75b 0%, #3aaa35 15%, #2d8f28 88%, #25741f 100%);
  box-shadow: inset -2px 0 3px rgba(0,0,0,.25), inset 0 1px 2px rgba(255,255,255,.7);
}
.xped-winmark { font-style: normal; margin-right: 4px; color: #ffea43; }
.xped-task-buttons { flex: 1; display: flex; gap: 3px; padding: 3px 6px; min-width: 0; }
.xped-task-button {
  min-width: 130px; max-width: 190px;
  border: 1px solid #0d45b8;
  color: #fff;
  background: linear-gradient(#3f83eb, #1e5ccb);
  text-align: left;
  padding: 2px 9px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.xped-task-button.active { background: linear-gradient(#1d4ba3, #2a61bd); box-shadow: inset 1px 1px 2px rgba(0,0,0,.3); }
.xped-tray {
  min-width: 116px;
  padding: 0 10px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
  color: #fff;
  background: linear-gradient(#19a8e9, #108bd3);
  border-left: 1px solid #0a78bc;
}

.xped-start-menu {
  position: absolute;
  left: 0;
  bottom: 30px;
  width: 390px;
  max-width: calc(100vw - 8px);
  border: 2px solid #0a4cc8;
  border-radius: 7px 7px 0 0;
  overflow: hidden;
  background: #fff;
  box-shadow: 2px 2px 9px rgba(0,0,0,.35);
  z-index: 100001;
}
.xped-start-menu[hidden] { display: none !important; }
.xped-start-head {
  height: 61px;
  padding: 7px 10px;
  display: flex;
  align-items: center;
  gap: 10px;
  color: #fff;
  font-size: 16px;
  background: linear-gradient(#1c78e9, #0757d0);
}
.xped-start-head img { width: 44px; height: 44px; padding: 2px; background: #fff; border-radius: 4px; }
.xped-start-body { display: grid; grid-template-columns: 1.1fr .9fr; min-height: 280px; }
.xped-start-left { position: relative; padding: 8px 6px 40px; background: #fff; }
.xped-start-right { padding: 11px 9px; background: #d7e7fb; border-left: 1px solid #95b9ec; color: #0b327e; font-weight: 700; }
.xped-start-right div { display: flex; align-items: center; gap: 8px; padding: 7px 4px; }
.xped-start-right img { width: 23px; height: 23px; object-fit: contain; }
.xped-start-right hr { border: 0; border-top: 1px solid #a6c2e8; margin: 4px 0; }
.xped-start-item { width: 100%; display: flex; align-items: center; gap: 11px; border: 0; background: transparent; padding: 7px 8px; text-align: left; color: #12337a; }
.xped-start-item:hover { background: #316ac5; color: #fff; }
.xped-start-item img { width: 31px; height: 31px; object-fit: contain; }
.xped-start-item span { font-size: 13px; }
.xped-start-spacer { border-top: 1px solid #d5d5d5; margin: 6px 8px; }
.xped-all-programs { position: absolute; left: 0; right: 0; bottom: 0; border-top: 1px solid #ddd; padding: 9px 18px; text-align: center; font-weight: 700; }
.xped-all-programs span { color: #22a33d; float: right; }
.xped-start-foot { height: 42px; display: flex; align-items: center; justify-content: flex-end; gap: 18px; padding: 0 12px; color: #fff; background: linear-gradient(#2b82e9, #0d5acb); }

/* Elementor content inside the window body */
.xped-window-body > .elementor,
.xped-window-body .elementor-section-wrap { min-height: 100%; }
.xped-window-body .e-con { --container-max-width: none; }

@media (max-width: 700px) {
  .xped-window { left: 2vw !important; top: 3vh !important; width: 96vw !important; height: calc(100vh - 72px) !important; min-width: 0; }
  .xped-start-menu { width: min(390px, 100vw); }
  .xped-brand-badge { width: min(72vw, 340px); top: 14px; right: 12px; }
  .xped-desktop::before { width: 68vw; height: 48vh; }
  .xped-menubar { gap: 10px; overflow: hidden; }
  .xped-toolbar small { display: none; }
  .xped-task-button { min-width: 90px; }
}

/* =========================================================
   Elementor content styling — bundled with the plugin
   No Customizer / Additional CSS paste required.
   ========================================================= */
.xp-content-title .elementor-heading-title {
  margin: 0 0 16px;
  font-family: "Courier New", monospace;
  font-size: clamp(28px, 4vw, 48px);
  line-height: 1;
  color: #163f9b;
  font-weight: 700;
}
.xped-window-body .elementor-widget-text-editor {
  font-family: Tahoma, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.45;
  color: #111;
}
.xp-content-button .elementor-button {
  border-radius: 2px;
  background: #ece9d8;
  color: #111;
  border: 1px solid #7f9db9;
  box-shadow: inset 1px 1px #fff;
  font-family: Tahoma, Arial, sans-serif;
  font-size: 12px;
}
.xp-contact-form .elementor-field {
  min-height: 28px;
  border-radius: 0 !important;
  border: 1px solid #7f9db9 !important;
  font-family: Tahoma, Arial, sans-serif;
}

/* v1.3.1 — Start control alignment fix */
.xped-taskbar {
  align-items: center;
}

.xped-start-button {
  align-self: stretch;
  height: 30px;
  margin: 0;
  padding: 0 12px 1px 9px;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 4px;
  line-height: 1;
  vertical-align: top;
}

.xped-start-button .xped-winmark,
.xped-winmark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  line-height: 1;
  transform: translateY(-1px);
}

.xped-start-menu {
  left: 0 !important;
  bottom: 30px !important;
  margin: 0 !important;
  transform: none !important;
}
\n\n/* v1.4.1 — Internet Explorer address/toolbar refinement */
.xped-menubar {
  padding: 3px 8px 4px;
  gap: 16px;
  font-size: 11px;
  line-height: 16px;
}
.xped-toolbar {
  height: 39px;
  flex: 0 0 39px;
  gap: 2px;
  padding: 3px 5px;
  background: linear-gradient(to bottom,#f8f7f0 0%,#ece9d8 100%);
}
.xped-toolbar .xped-tool {
  height: 30px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 1px 6px;
  border: 1px solid transparent;
  background: transparent;
  color: #222;
  border-radius: 2px;
  font-size: 11px;
}
.xped-toolbar .xped-tool:hover {
  border-color: #b7b39f;
  background: linear-gradient(#fff,#e7e3d3);
}
.xped-tool-icon { font-size: 15px; line-height: 1; color: #6c8cac; }
.xped-tool-back .xped-tool-icon { color: #6d7780; }
.xped-tool-forward .xped-tool-icon { color: #aaa; }
.xped-toolbar small { font-size: 11px; color: #333; }
.xped-toolbar-spacer { flex: 1 1 auto; }
.xped-view-tool { min-width: 45px; justify-content: center; }
.xped-view-grid { color:#1a62bd; font-size:17px; }
.xped-caret { font-size:7px; color:#333; }
.xped-address {
  height: 27px;
  flex: 0 0 27px;
  display: grid;
  grid-template-columns: 50px minmax(0,1fr) 48px;
  align-items: center;
  column-gap: 3px;
  padding: 2px 4px 3px 6px;
  background: #ece9d8;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #aaa795;
}
.xped-address-label {
  font-weight: 700;
  font-size: 11px;
  line-height: 21px;
  white-space: nowrap;
}
.xped-address .xped-address-field {
  height: 22px;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 0 3px 0 4px;
  border: 1px solid #7f9db9;
  background: #fff;
  overflow: hidden;
  line-height: normal;
}
.xped-address-icon { flex: 0 0 auto; font-size: 13px; line-height: 1; }
.xped-address-url {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font: 11px Tahoma,Arial,sans-serif;
  color: #111;
}
.xped-address-drop {
  width: 17px;
  height: 18px;
  flex: 0 0 17px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 2px;
  background: linear-gradient(#fff,#d7e5f7);
  border-left: 1px solid #9db4cf;
  color: #234f84;
  font-size: 7px;
}
.xped-address .xped-go {
  height: 22px;
  margin: 0;
  padding: 0 6px 0 4px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
  border: 1px solid #1e7b20;
  border-radius: 2px;
  color: #fff;
  background: linear-gradient(#57c653,#269b2d 52%,#14841d);
  box-shadow: inset 0 1px rgba(255,255,255,.55);
  font: 700 11px Tahoma,Arial,sans-serif;
  line-height: 1;
}
.xped-go-arrow { font-size: 13px; line-height: 1; }
@media (max-width:700px){
  .xped-toolbar small{display:none;}
  .xped-address{grid-template-columns:46px minmax(0,1fr) 44px;}
  .xped-address-url{font-size:10px;}
}

/* v1.4.3 — desktop cleanup + full-width Elementor content */
.xped-window-body,
.xped-window-body > .elementor,
.xped-window-body .elementor,
.xped-window-body .elementor-element,
.xped-window-body .elementor-widget-html,
.xped-window-body .elementor-widget-html > .elementor-widget-container,
.xped-window-body .webi-msn {
  width: 100% !important;
  max-width: none !important;
}

.xped-window-body .elementor-widget-html {
  align-self: stretch !important;
}

.xped-window-body .webi-msn {
  min-width: 100%;
}

/* About Us uses the WEBISTIX/favicon graphic as its desktop icon. */
.xped-desktop-icon[data-open="about"] img {
  width: 42px;
  height: 42px;
}

/* Recycle Bin: center icon + label cleanly in its desktop slot. */
.xped-recycle {
  right: 10px !important;
  bottom: 42px !important;
  width: 88px !important;
  padding: 3px 0 !important;
}
.xped-recycle img {
  margin-left: auto !important;
  margin-right: auto !important;
}
.xped-recycle span {
  width: 100%;
  text-align: center;
}

/* Keep the left icon area quiet and readable over the wallpaper. */


/* ==========================================================
   v1.5.0 — WEBISTIX 2005 micro-site homepage
   The homepage is intentionally a "website within the website".
   ========================================================== */
.xped-window[data-window="home"] {
  width: min(1120px, 88vw);
  height: min(700px, 82vh);
  left: 8%;
  top: 6%;
}

.xped-window[data-window="home"] .xped-window-body {
  overflow: auto;
  background: #fff;
}

.webi-home,
.webi-home * {
  box-sizing: border-box;
}

.webi-home {
  width: 100%;
  min-width: 880px;
  min-height: 100%;
  margin: 0;
  background: #fff;
  color: #333;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
}

.webi-home button,
.webi-home input {
  font-family: Arial, Helvetica, sans-serif;
}

.webi-home-head {
  min-height: 89px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 12px 14px 9px;
  background: linear-gradient(#ffffff 0%, #fbfbfb 70%, #eef2f7 100%);
  border-bottom: 1px solid #bec9d8;
}

.webi-home-brand {
  flex: 0 0 310px;
}

.webi-home-brand img {
  display: block;
  width: 285px;
  max-height: 74px;
  object-fit: contain;
  object-position: left center;
}

.webi-home-head-right {
  flex: 1 1 auto;
  min-width: 390px;
}

.webi-home-toplinks {
  display: flex;
  justify-content: flex-end;
  gap: 0;
  margin-bottom: 18px;
}

.webi-home-toplinks button {
  border: 0;
  border-right: 1px solid #9cacc0;
  background: transparent;
  color: #003a84;
  font-weight: 700;
  padding: 0 11px;
  cursor: pointer;
}

.webi-home-toplinks button:last-child { border-right: 0; }

.webi-home-search {
  display: flex;
  justify-content: flex-end;
  gap: 7px;
}

.webi-home-search input {
  width: min(280px, 60%);
  height: 29px;
  border: 1px solid #c0c0c0;
  padding: 5px 8px;
  color: #555;
  background: #fff;
}

.webi-home-search button {
  width: 48px;
  height: 29px;
  border: 1px solid #488c21;
  border-radius: 5px;
  background: linear-gradient(#7bc447,#3c8f20);
  color: #fff;
  font-weight: 700;
}

.webi-home-subnav {
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  color: #003a84;
  font-weight: 700;
  background: #fff;
  border-bottom: 1px solid #cbd4df;
}

.webi-home-subnav i {
  width: 1px;
  height: 13px;
  background: #8aa0ba;
}

.webi-home-layout {
  display: grid;
  grid-template-columns: 182px minmax(0, 1fr);
  gap: 9px;
  width: 100%;
  padding: 7px 8px 9px;
  background: #eef3f8;
}

.webi-home-left {
  min-width: 0;
}

.webi-module {
  overflow: hidden;
  margin-bottom: 9px;
  border: 1px solid #bbc6d3;
  border-radius: 8px 8px 4px 4px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0,0,0,.08);
}

.webi-module-title {
  padding: 7px 10px;
  color: #fff;
  font-weight: 700;
  font-size: 13px;
}

.webi-module-title.blue { background: linear-gradient(#398de5,#1b62b7); }
.webi-module-title.green { background: linear-gradient(#81ca4f,#42952a); }

.webi-module > button {
  width: 100%;
  display: block;
  border: 0;
  border-bottom: 1px solid #d8dee6;
  padding: 7px 10px;
  text-align: left;
  color: #123e79;
  background: linear-gradient(#fff,#eef3f9);
  cursor: pointer;
}

.webi-module > button:first-of-type {
  background: linear-gradient(#fff8d8,#f7ebaf);
  font-weight: 700;
}

.webi-contact-mini {
  display: grid;
  grid-template-columns: 39px 1fr;
  gap: 8px;
  padding: 11px 10px;
  color: #555;
  line-height: 1.35;
}

.webi-mail-icon {
  height: 31px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  color: #2c77c9;
}

.webi-text-link {
  border: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  color: #0045a7 !important;
  font-weight: 700;
  text-decoration: underline;
  cursor: pointer;
}

.webi-checks {
  list-style: none;
  margin: 0;
  padding: 10px 10px 9px;
}

.webi-checks li {
  position: relative;
  margin: 0 0 8px;
  padding-left: 20px;
  color: #555;
}

.webi-checks li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: -1px;
  width: 14px;
  height: 14px;
  line-height: 14px;
  text-align: center;
  border-radius: 50%;
  background: #2d7cdc;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
}

.webi-home-main {
  min-width: 0;
}

.webi-home-hero {
  min-height: 190px;
  display: grid;
  grid-template-columns: 34% 38% 28%;
  overflow: hidden;
  border-radius: 7px 7px 3px 3px;
  background:
    radial-gradient(circle at 80% 10%, rgba(255,220,64,.62), transparent 22%),
    linear-gradient(118deg,#ef6b00 0%,#ff7912 44%,#ffad14 100%);
  box-shadow: inset 0 0 0 1px rgba(178,82,0,.55);
}

.webi-home-hero-copy {
  padding: 24px 10px 18px 20px;
}

.webi-home-hero h1 {
  margin: 0;
  color: #fff7d8;
  font-size: clamp(38px, 4.4vw, 58px);
  line-height: .91;
  letter-spacing: -2px;
  text-shadow: 0 2px 0 rgba(140,58,0,.35);
}

.webi-home-hero-text {
  padding: 25px 10px 14px 4px;
  color: #fff;
}

.webi-home-hero-text h2 {
  margin: 0 0 9px;
  color: #fff;
  font-size: 19px;
  line-height: 1.05;
}

.webi-home-hero-text p {
  margin: 0;
  max-width: 300px;
  font-size: 13px;
  line-height: 1.35;
}

.webi-hero-actions {
  display: flex;
  gap: 8px;
  margin-top: 14px;
}

.webi-hero-actions button {
  height: 31px;
  border: 1px solid #1e59a6;
  border-radius: 8px;
  padding: 0 13px;
  color: #fff;
  background: linear-gradient(#3c98f1,#1765c5);
  box-shadow: inset 0 1px rgba(255,255,255,.45);
  font-weight: 700;
}

.webi-hero-actions button.green {
  border-color: #4b8d20;
  background: linear-gradient(#79cb45,#3b9223);
}

.webi-browser-stack {
  position: relative;
  min-height: 190px;
}

.webi-browser-card {
  position: absolute;
  right: 17px;
  bottom: 18px;
  width: 135px;
  height: 126px;
  border: 4px solid #2f3541;
  background: #20232b;
  box-shadow: 0 6px 10px rgba(83,42,0,.35);
}

.webi-browser-card.back {
  right: 3px;
  bottom: 24px;
  transform: rotate(7deg);
  background: linear-gradient(#eef4f7 0 16px,#18222d 16px);
}

.webi-browser-card.mid {
  right: 32px;
  bottom: 20px;
  transform: rotate(3deg);
  background: linear-gradient(#dce7ef 0 16px,#2a3038 16px);
}

.webi-browser-card.front {
  right: 58px;
  bottom: 14px;
  transform: rotate(-2deg);
  color: #fff;
  background: linear-gradient(#4c5b69 0 17px,#161c22 17px);
  text-align: center;
}

.webi-browser-card .dots {
  height: 17px;
  padding: 2px 5px;
  text-align: left;
  color: #a6c8e7;
  font-size: 7px;
}

.webi-browser-card .screen-title {
  margin-top: 30px;
  font-weight: 700;
  font-size: 13px;
  line-height: 1.1;
}

.webi-browser-card .screen-btn {
  display: inline-block;
  margin-top: 12px;
  padding: 4px 8px;
  border-radius: 3px;
  background: #54b52c;
  font-size: 8px;
  font-weight: 700;
}

.webi-service-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 7px;
  margin-top: 7px;
}

.webi-service-card {
  overflow: hidden;
  min-height: 145px;
  border: 1px solid #c6ccd4;
  border-radius: 6px;
  background: linear-gradient(#fff,#f3f3f3);
  box-shadow: 0 1px 2px rgba(0,0,0,.07);
}

.webi-service-head {
  height: 56px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 11px;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
}

.webi-service-card.blue .webi-service-head { background: linear-gradient(#2a83e5,#125cb8); }
.webi-service-card.green .webi-service-head { background: linear-gradient(#7ac84a,#459529); }

.webi-service-head .ico {
  min-width: 34px;
  font-size: 26px;
  text-align: center;
  color: #fff;
}

.webi-service-card p {
  min-height: 52px;
  margin: 0;
  padding: 10px 11px 3px;
  color: #666;
  line-height: 1.25;
}

.webi-service-card a {
  display: inline-block;
  padding: 0 11px 10px;
  color: #0045a7;
  font-weight: 700;
}

.webi-bottom-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 7px;
  margin-top: 7px;
}

.webi-bottom-grid article {
  min-height: 102px;
  padding: 8px 10px;
  border: 1px solid #c6ccd4;
  border-radius: 6px;
  background: linear-gradient(#fff,#f6f6f6);
}

.webi-bottom-grid h3 {
  margin: 0 0 9px;
  color: #0e3c83;
  font-size: 13px;
}

.webi-feature-row {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 9px;
  align-items: center;
  color: #666;
  line-height: 1.3;
}

.webi-thumb,
.webi-doc,
.webi-hand {
  width: 54px;
  height: 46px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #9fb5ca;
  color: #1767c4;
  background: #eaf4ff;
  font-weight: 700;
}

.webi-feature-row a {
  color: #0045a7;
  font-weight: 700;
}

@media (max-width: 1050px) {
  .xped-window[data-window="home"] {
    left: 3%;
    width: 94vw;
  }
  .webi-home { min-width: 800px; }
}


/* v1.5.1 — single-window navigation + reliable dragging */
.xped-titlebar { touch-action: none; }
body.xped-dragging { user-select: none !important; cursor: move !important; }


/* ==========================================================
   v1.5.2 — uniform 2005 portal layout + persistent site nav
   ========================================================== */

/* One consistent site-level nav inside every fake IE page. */
.webi-global-sitebar {
  width: 100%;
  min-height: 64px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 8px 12px 7px;
  border-bottom: 1px solid #9aaabd;
  background:
    linear-gradient(to bottom, #ffffff 0%, #f7f9fb 66%, #e6edf5 100%);
  box-shadow: inset 0 -1px #fff;
  font-family: Arial, Helvetica, sans-serif;
}

.webi-global-brand {
  flex: 0 0 240px;
  min-width: 0;
}

.webi-global-brand img {
  display: block;
  width: 220px;
  max-height: 52px;
  object-fit: contain;
  object-position: left center;
}

.webi-global-nav {
  display: flex;
  align-items: stretch;
  justify-content: flex-end;
  gap: 0;
  min-width: 0;
  border: 1px solid #9fb0c1;
  background: #fff;
}

.webi-global-nav button {
  min-width: 92px;
  height: 31px;
  margin: 0;
  padding: 0 13px;
  border: 0;
  border-right: 1px solid #c1ccd7;
  border-radius: 0;
  color: #073d7f;
  background: linear-gradient(#fff, #edf3f8);
  font: 700 11px Arial, Helvetica, sans-serif;
  cursor: pointer;
}

.webi-global-nav button:last-child {
  border-right: 0;
}

.webi-global-nav button:hover {
  background: linear-gradient(#fff7cf, #f5e6a4);
  color: #002f69;
}

.webi-global-nav button.is-active {
  color: #fff;
  background: linear-gradient(#398ee5, #135dad);
  box-shadow: inset 0 1px rgba(255,255,255,.38);
}

/* Remove the old empty/duplicated header gap on the homepage. */
.webi-home-head {
  min-height: 43px !important;
  padding: 6px 10px !important;
  justify-content: flex-end !important;
  background: linear-gradient(#f9fbfd, #e9eff5) !important;
}

.webi-home-brand {
  display: none !important;
}

.webi-home-head-right {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.webi-home-toplinks {
  display: none !important;
}

.webi-home-search {
  width: 100% !important;
  justify-content: flex-end !important;
}

.webi-home-search input {
  width: min(420px, 76%) !important;
}

/* Make the small service strip read like a real period navigation strip. */
.webi-home-subnav {
  height: 29px !important;
  padding: 0 10px;
  justify-content: flex-start !important;
  gap: 0 !important;
  background: linear-gradient(#ffffff, #eff4f8) !important;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #aab8c7 !important;
}

.webi-home-subnav span {
  padding: 0 13px;
  line-height: 28px;
  white-space: nowrap;
  color: #083b78;
}

.webi-home-subnav span:first-child {
  padding-left: 5px;
}

.webi-home-subnav i {
  height: 16px !important;
  background: #a7b5c4 !important;
}

/* Uniform portal grid. */
.webi-home-layout {
  grid-template-columns: 176px minmax(0, 1fr) !important;
  gap: 8px !important;
  padding: 8px !important;
  background: #e8eff6 !important;
}

.webi-module {
  margin-bottom: 8px !important;
  border-radius: 5px !important;
  border-color: #aebdcc !important;
  box-shadow: none !important;
}

.webi-module-title {
  min-height: 29px;
  display: flex;
  align-items: center;
  padding: 5px 9px !important;
  font-size: 12px !important;
}

.webi-module > button {
  min-height: 30px;
  padding: 6px 9px !important;
  font-size: 11px;
}

.webi-contact-mini {
  grid-template-columns: 32px 1fr !important;
  padding: 9px !important;
  font-size: 11px;
}

.webi-mail-icon {
  font-size: 23px !important;
}

.webi-checks {
  padding: 9px !important;
  font-size: 11px;
}

.webi-checks li {
  margin-bottom: 7px !important;
}

/* Hero: tighter, more realistic, less oversized. */
.webi-home-hero {
  min-height: 186px !important;
  grid-template-columns: 32% 40% 28% !important;
  border-radius: 5px !important;
  background:
    radial-gradient(circle at 82% 5%, rgba(255,227,95,.45), transparent 23%),
    linear-gradient(112deg, #ed6b00 0%, #ff7a0b 48%, #ffad1b 100%) !important;
}

.webi-home-hero-copy {
  padding: 19px 8px 15px 18px !important;
}

.webi-home-hero h1 {
  font-size: clamp(34px, 3.2vw, 49px) !important;
  line-height: .96 !important;
  letter-spacing: -1.4px !important;
}

.webi-home-hero-text {
  padding: 20px 8px 14px 2px !important;
}

.webi-home-hero-text h2 {
  font-size: 17px !important;
  line-height: 1.08 !important;
}

.webi-home-hero-text p {
  max-width: 330px !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

.webi-hero-actions button {
  height: 29px !important;
  border-radius: 5px !important;
  padding: 0 11px !important;
  font-size: 11px !important;
}

/* Give the fake browser artwork consistent scale. */
.webi-browser-card {
  width: 126px !important;
  height: 116px !important;
  border-width: 3px !important;
}

.webi-browser-card.front {
  right: 54px !important;
}

/* All four service boxes use the same geometry. */
.webi-service-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 7px !important;
}

.webi-service-card {
  min-height: 150px !important;
  display: flex;
  flex-direction: column;
  border-radius: 4px !important;
  border-color: #b7c3cf !important;
  box-shadow: none !important;
}

.webi-service-head {
  height: 49px !important;
  flex: 0 0 49px;
  gap: 6px !important;
  padding: 0 9px !important;
  font-size: 12px !important;
}

.webi-service-head .ico {
  min-width: 28px !important;
  font-size: 21px !important;
}

.webi-service-card p {
  flex: 1 1 auto;
  min-height: 0 !important;
  padding: 9px 9px 4px !important;
  font-size: 11px;
  line-height: 1.3 !important;
}

.webi-service-card a {
  flex: 0 0 auto;
  padding: 0 9px 9px !important;
  font-size: 11px;
}

/* Bottom boxes all line up exactly. */
.webi-bottom-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 7px !important;
}

.webi-bottom-grid article {
  min-height: 110px !important;
  padding: 8px 9px !important;
  border-radius: 4px !important;
  border-color: #b7c3cf !important;
  box-shadow: none !important;
}

.webi-bottom-grid h3 {
  min-height: 18px;
  margin-bottom: 7px !important;
  font-size: 12px !important;
}

.webi-feature-row {
  grid-template-columns: 50px minmax(0,1fr) !important;
  gap: 8px !important;
  font-size: 11px;
}

.webi-thumb,
.webi-doc,
.webi-hand {
  width: 46px !important;
  height: 42px !important;
}

/* Elementor templates used by About/Projects/Contact fill the page below the site bar. */
.xped-window-body > .webi-global-sitebar + .elementor,
.xped-window-body > .webi-global-sitebar + .elementor-template,
.xped-window-body > .webi-global-sitebar + div {
  width: 100%;
  max-width: none;
}

/* Smaller browser widths keep the old-school horizontal site rather than deforming boxes. */
@media (max-width: 940px) {
  .webi-global-sitebar {
    min-width: 800px;
  }
  .webi-global-nav button {
    min-width: 82px;
    padding: 0 9px;
  }
  .webi-home {
    min-width: 800px !important;
  }
}


/* ==========================================================
   v1.6.0 — polished 2005 portal pass + seamless wallpaper
   ========================================================== */

/* The new wallpaper is intentionally clean across the whole canvas,
   so remove all earlier left-side masking/patch overlays. */
.xped-desktop::before {
  display: none !important;
}

/* Desktop icon readability without a patch behind them. */
.xped-desktop-icon {
  text-shadow:
    1px 1px 1px rgba(0,45,92,.95),
    0 0 4px rgba(0,55,120,.35) !important;
}
.xped-desktop-icon:hover,
.xped-desktop-icon:focus {
  background: rgba(40,100,190,.22) !important;
  border-color: rgba(255,255,255,.42) !important;
}

/* Browser body feels more like a real 2005 IE-hosted portal. */
.xped-window-body {
  background: #f1f5f9 !important;
}

/* Top brand strip: tighter and more period-correct. */
.webi-global-sitebar {
  min-height: 58px !important;
  padding: 6px 10px !important;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #8ea4ba !important;
  background:
    linear-gradient(to bottom, #ffffff 0%, #f8fafc 58%, #e3eaf1 100%) !important;
}

.webi-global-brand {
  flex-basis: 225px !important;
}

.webi-global-brand img {
  width: 205px !important;
  max-height: 47px !important;
}

/* Nav now reads like a genuine portal tab strip. */
.webi-global-nav {
  border-color: #91a5b8 !important;
  background: #f7f9fb !important;
  box-shadow: inset 0 1px #fff;
}

.webi-global-nav button {
  min-width: 86px !important;
  height: 29px !important;
  padding: 0 11px !important;
  color: #073b7a !important;
  background: linear-gradient(#ffffff,#edf2f6) !important;
  border-right-color: #bdc9d5 !important;
  font-size: 11px !important;
}

.webi-global-nav button:hover {
  background: linear-gradient(#fff4bf,#f3df86) !important;
}

.webi-global-nav button.is-active {
  color: #fff !important;
  background: linear-gradient(#428fdd,#135aa5) !important;
  text-shadow: 0 1px rgba(0,0,0,.18);
}

/* Homepage header/search strip: remove empty-feeling whitespace. */
.webi-home-head {
  min-height: 38px !important;
  padding: 4px 8px !important;
  border-bottom-color: #a8b7c6 !important;
}

.webi-home-search input {
  height: 26px !important;
  width: min(360px, 70%) !important;
  font-size: 11px !important;
}

.webi-home-search button {
  width: 44px !important;
  height: 26px !important;
  border-radius: 4px !important;
  font-size: 11px !important;
}

.webi-home-subnav {
  height: 27px !important;
}

.webi-home-subnav span {
  line-height: 26px !important;
  font-size: 11px !important;
}

/* Main portal frame gets a stronger, cleaner structure. */
.webi-home-layout {
  grid-template-columns: 174px minmax(0, 1fr) !important;
  gap: 7px !important;
  padding: 7px !important;
  background: #e4edf5 !important;
}

/* Left modules: slightly denser and more authentic. */
.webi-module {
  border-radius: 4px !important;
  border-color: #9fb1c2 !important;
  background: #fff !important;
}

.webi-module-title {
  min-height: 27px !important;
  padding: 4px 8px !important;
  font-size: 11px !important;
}

.webi-module-title.blue {
  background: linear-gradient(#3d8bd8,#1760aa) !important;
}

.webi-module-title.green {
  background: linear-gradient(#7ec54d,#3e9029) !important;
}

.webi-module > button {
  min-height: 28px !important;
  padding: 5px 8px !important;
  background: linear-gradient(#fff,#eef3f7) !important;
}

.webi-module > button:first-of-type {
  background: linear-gradient(#fff8d5,#f4e6a4) !important;
}

/* Hero refinement. */
.webi-home-hero {
  min-height: 178px !important;
  grid-template-columns: 31% 41% 28% !important;
  border: 1px solid #d06a00;
  border-radius: 4px !important;
  box-shadow:
    inset 0 1px rgba(255,255,255,.26),
    0 1px 1px rgba(0,0,0,.06) !important;
}

.webi-home-hero h1 {
  font-size: clamp(33px, 3vw, 46px) !important;
  line-height: .94 !important;
}

.webi-home-hero-text h2 {
  font-size: 16px !important;
}

.webi-home-hero-text p {
  font-size: 11.5px !important;
}

.webi-browser-card {
  width: 118px !important;
  height: 109px !important;
}

/* Service boxes feel like one system, not four unrelated cards. */
.webi-service-grid {
  gap: 6px !important;
  margin-top: 6px !important;
}

.webi-service-card {
  min-height: 142px !important;
  border-radius: 3px !important;
  border-color: #aebac6 !important;
  background: #fff !important;
}

.webi-service-head {
  height: 45px !important;
  flex-basis: 45px !important;
  font-size: 11.5px !important;
}

.webi-service-card p,
.webi-service-card a {
  font-size: 10.8px !important;
}

.webi-service-card p {
  padding-top: 8px !important;
}

/* Bottom modules: same outer chrome and consistent inner rhythm. */
.webi-bottom-grid {
  gap: 6px !important;
  margin-top: 6px !important;
}

.webi-bottom-grid article {
  min-height: 104px !important;
  border-radius: 3px !important;
  border-color: #aebac6 !important;
  background: #fff !important;
}

.webi-bottom-grid h3 {
  margin: -8px -9px 8px !important;
  padding: 6px 8px;
  color: #fff !important;
  background: linear-gradient(#3e88d3,#1760aa);
  border-bottom: 1px solid #0d4d92;
  font-size: 11px !important;
}

.webi-feature-row {
  font-size: 10.8px !important;
}

.webi-thumb,
.webi-doc,
.webi-hand {
  width: 44px !important;
  height: 40px !important;
  border-color: #9fb2c5 !important;
  background: #edf6ff !important;
}

/* Make the fake webpage sit flush and fill the IE content area. */
.webi-home,
.webi-global-sitebar,
.xped-window-body > .elementor,
.xped-window-body .elementor-widget-html,
.xped-window-body .elementor-widget-html > .elementor-widget-container {
  margin: 0 !important;
}

/* Subtle old-portal inner edge. */
.webi-home-main {
  border: 1px solid #bdc9d5;
  border-top: 0;
  background: #fff;
}

/* Keep responsive behavior sane without turning it into a modern layout. */
@media (max-width: 980px) {
  .webi-global-sitebar,
  .webi-home {
    min-width: 780px !important;
  }
}

/* v1.6.3 — force the approved Vista-flow wallpaper; no patch overlays. */
.xped-desktop::before,
.xped-desktop::after {
  display: none !important;
  content: none !important;
}


/* ==========================================================
   v1.6.4 — CSS-only Vista/Aero wallpaper
   No image asset is used, so browser/CDN image caching cannot
   show an older wallpaper.
   ========================================================== */

.xped-desktop {
  background-image:
    radial-gradient(ellipse at 77% 16%, rgba(255,255,255,.72) 0 2%, rgba(255,255,255,.24) 12%, rgba(255,255,255,0) 34%),
    radial-gradient(ellipse at 13% 69%, rgba(187,252,255,.44) 0 7%, rgba(95,215,255,.20) 25%, rgba(255,255,255,0) 48%),
    linear-gradient(180deg, #0879de 0%, #4ab7ec 29%, #dff8ff 53%, #65caee 69%, #0879ce 100%) !important;
  background-color: #1187dc !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

/* Flow ribbons are generated with CSS rather than patched into an image. */
.xped-desktop::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  z-index: 0 !important;
  pointer-events: none !important;
  left: -9vw !important;
  bottom: 7vh !important;
  width: 122vw !important;
  height: 42vh !important;
  border-radius: 50% !important;
  transform: rotate(-4deg) skewX(-18deg) !important;
  background:
    linear-gradient(
      180deg,
      rgba(255,255,255,0) 0%,
      rgba(255,255,255,.72) 7%,
      rgba(192,245,255,.50) 11%,
      rgba(0,171,239,.66) 23%,
      rgba(0,112,214,.88) 43%,
      rgba(0,100,205,.95) 53%,
      rgba(138,226,29,.88) 62%,
      rgba(193,246,59,.94) 69%,
      rgba(255,255,255,.80) 74%,
      rgba(255,255,255,.25) 78%,
      rgba(255,255,255,0) 88%
    ) !important;
  filter: blur(1.2px) !important;
  opacity: .98 !important;
}

.xped-desktop::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  z-index: 0 !important;
  pointer-events: none !important;
  left: -4vw !important;
  top: -22vh !important;
  width: 108vw !important;
  height: 52vh !important;
  border-radius: 50% !important;
  border-bottom: 3px solid rgba(255,255,255,.62) !important;
  transform: rotate(5deg) !important;
  background: transparent !important;
  box-shadow:
    0 18px 0 -16px rgba(255,255,255,.32),
    0 36px 0 -34px rgba(255,255,255,.20) !important;
}

/* Make sure all interactive desktop content stays above generated wallpaper layers. */
.xped-brand-badge,
.xped-desktop-icon,
.xped-window,
.xped-start-menu,
.xped-taskbar {
  position: absolute;
}

.xped-brand-badge { z-index: 1 !important; }
.xped-window { z-index: 2; }
.xped-desktop-icon { z-index: 3 !important; }
.xped-start-menu { z-index: 100001 !important; }
.xped-taskbar { z-index: 100000 !important; }


/* ==========================================================
   v1.7.0 — cleaner XP/Vista flow wallpaper + unified site nav
   ========================================================== */

/* Remove obsolete homepage category strip completely. */
.webi-home-subnav {
  display: none !important;
}

/* Rebuild the desktop as a smoother XP/Vista-era flow:
   thinner ribbons, softer transitions, no giant horizontal band. */
.xped-desktop {
  background:
    radial-gradient(ellipse at 73% 22%, rgba(255,255,255,.52) 0%, rgba(255,255,255,.18) 18%, rgba(255,255,255,0) 42%),
    radial-gradient(ellipse at 18% 76%, rgba(170,245,255,.34) 0%, rgba(82,210,255,.14) 28%, rgba(255,255,255,0) 48%),
    linear-gradient(180deg,
      #0a78d8 0%,
      #42afe8 27%,
      #bcecff 48%,
      #e9fbff 57%,
      #74d0ef 70%,
      #0b81d4 100%
    ) !important;
  background-color: #188edc !important;
}

/* Main flowing ribbon */
.xped-desktop::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  z-index: 0 !important;
  pointer-events: none !important;
  left: -12vw !important;
  bottom: 2vh !important;
  width: 128vw !important;
  height: 43vh !important;
  border-radius: 50% !important;
  transform: rotate(-7deg) skewX(-22deg) !important;
  background:
    linear-gradient(
      180deg,
      rgba(255,255,255,0) 0%,
      rgba(255,255,255,.18) 10%,
      rgba(255,255,255,.68) 15%,
      rgba(146,235,255,.46) 20%,
      rgba(0,170,237,.62) 29%,
      rgba(0,113,213,.86) 43%,
      rgba(0,103,203,.94) 51%,
      rgba(110,210,18,.80) 58%,
      rgba(168,235,35,.94) 63%,
      rgba(220,255,100,.86) 67%,
      rgba(255,255,255,.80) 71%,
      rgba(255,255,255,.20) 75%,
      rgba(255,255,255,0) 81%
    ) !important;
  filter: blur(2.4px) !important;
  opacity: .93 !important;
}

/* Fine glassy light arcs across the upper half */
.xped-desktop::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  z-index: 0 !important;
  pointer-events: none !important;
  left: -8vw !important;
  top: -28vh !important;
  width: 118vw !important;
  height: 61vh !important;
  border-radius: 50% !important;
  transform: rotate(4deg) !important;
  border-bottom: 2px solid rgba(255,255,255,.62) !important;
  background: transparent !important;
  box-shadow:
    0 16px 0 -14px rgba(255,255,255,.34),
    0 34px 0 -32px rgba(255,255,255,.20) !important;
  opacity: .86 !important;
}

/* Keep content above the generated wallpaper. */
.xped-brand-badge { z-index: 2 !important; }
.xped-desktop-icon { z-index: 3 !important; }
.xped-window { z-index: 4; }
.xped-taskbar { z-index: 100000 !important; }
.xped-start-menu { z-index: 100001 !important; }

/* ----------------------------------------------------------
   One unified website nav treatment across ALL page windows.
   ---------------------------------------------------------- */
.webi-global-sitebar {
  min-height: 54px !important;
  height: 54px !important;
  padding: 5px 9px !important;
  display: grid !important;
  grid-template-columns: 220px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  background: linear-gradient(#ffffff 0%, #f7f9fb 56%, #e5edf5 100%) !important;
  border-top: 1px solid #fff !important;
  border-bottom: 1px solid #8fa6bc !important;
  box-shadow: inset 0 -1px #fff !important;
}

.webi-global-brand {
  flex: none !important;
  width: 220px !important;
}

.webi-global-brand img {
  width: 200px !important;
  max-height: 44px !important;
}

.webi-global-nav {
  justify-self: end !important;
  display: grid !important;
  grid-template-columns: repeat(4, 92px) !important;
  border: 1px solid #8ea5bb !important;
  background: #f8fafc !important;
  box-shadow:
    inset 0 1px #fff,
    0 1px 1px rgba(0,0,0,.08) !important;
}

.webi-global-nav button {
  width: 92px !important;
  min-width: 92px !important;
  height: 29px !important;
  padding: 0 8px !important;
  margin: 0 !important;
  border: 0 !important;
  border-right: 1px solid #bcc8d3 !important;
  border-radius: 0 !important;
  color: #073d7d !important;
  background: linear-gradient(#ffffff,#edf2f6) !important;
  font: 700 11px Arial, Helvetica, sans-serif !important;
  text-align: center !important;
  cursor: pointer !important;
}

.webi-global-nav button:last-child {
  border-right: 0 !important;
}

.webi-global-nav button:hover {
  background: linear-gradient(#fff7ca,#f1e29a) !important;
  color: #002f68 !important;
}

.webi-global-nav button.is-active {
  color: #fff !important;
  background: linear-gradient(#3d8cda,#155ba6) !important;
  box-shadow: inset 0 1px rgba(255,255,255,.36) !important;
  text-shadow: 0 1px rgba(0,0,0,.18) !important;
}

/* Home search sits in a compact portal utility strip directly below nav. */
.webi-home-head {
  min-height: 37px !important;
  height: 37px !important;
  padding: 4px 8px !important;
  margin: 0 !important;
  border-bottom: 1px solid #abb9c7 !important;
  background: linear-gradient(#f8fafc,#e9eff5) !important;
}

.webi-home-search {
  height: 28px !important;
  align-items: center !important;
}

.webi-home-search input {
  height: 25px !important;
  width: min(360px, 68%) !important;
  border: 1px solid #8ea4ba !important;
  font-size: 11px !important;
}

.webi-home-search button {
  height: 25px !important;
  width: 43px !important;
  border-radius: 3px !important;
  font-size: 11px !important;
}

/* Make Elementor page boxes start flush under exactly the same nav bar. */
.xped-window-body > .webi-global-sitebar + .elementor,
.xped-window-body > .webi-global-sitebar + .elementor-template,
.xped-window-body > .webi-global-sitebar + div {
  margin-top: 0 !important;
  width: 100% !important;
  max-width: none !important;
}

/* Slightly cleaner box language throughout. */
.webi-module,
.webi-service-card,
.webi-bottom-grid article {
  border-color: #a8b7c6 !important;
  box-shadow: 0 1px 1px rgba(0,0,0,.04) !important;
}

.webi-home-layout {
  padding-top: 7px !important;
}

/* Keep the old-school fixed portal proportions on smaller windows. */
@media (max-width: 900px) {
  .webi-global-sitebar {
    min-width: 780px !important;
  }
  .webi-global-nav {
    grid-template-columns: repeat(4, 84px) !important;
  }
  .webi-global-nav button {
    width: 84px !important;
    min-width: 84px !important;
  }
}


/* ==========================================================
   v1.8.0 — period-accurate logo animation + cursor coach
   ========================================================== */

/* 2004–2007 "glossy web" logo treatment:
   a brief startup pop, then a slow shine sweep every few seconds. */
.webi-global-brand {
  position: relative !important;
  overflow: hidden !important;
}

.webi-global-brand img {
  transform-origin: 38% 52%;
  animation:
    webi-logo-intro 620ms cubic-bezier(.18,.84,.26,1.2) 180ms both,
    webi-logo-breathe 4.8s ease-in-out 1.4s infinite;
}

.webi-global-brand::after {
  content: "";
  position: absolute;
  top: -22%;
  left: -42%;
  width: 34%;
  height: 145%;
  pointer-events: none;
  transform: skewX(-22deg);
  background: linear-gradient(
    90deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.05) 20%,
    rgba(255,255,255,.72) 50%,
    rgba(255,255,255,.05) 80%,
    rgba(255,255,255,0) 100%
  );
  filter: blur(1px);
  animation: webi-logo-shine 5.2s ease-in-out 1.05s infinite;
}

@keyframes webi-logo-intro {
  0%   { opacity: 0; transform: scale(.90) translateY(2px); filter: saturate(.7) brightness(.9); }
  58%  { opacity: 1; transform: scale(1.035) translateY(-1px); filter: saturate(1.16) brightness(1.08); }
  100% { opacity: 1; transform: scale(1) translateY(0); filter: saturate(1) brightness(1); }
}

@keyframes webi-logo-breathe {
  0%, 78%, 100% { filter: saturate(1) brightness(1); }
  84% { filter: saturate(1.12) brightness(1.08); }
  90% { filter: saturate(1) brightness(1); }
}

@keyframes webi-logo-shine {
  0%, 62% { left: -42%; opacity: 0; }
  66%     { opacity: .72; }
  79%     { left: 116%; opacity: .72; }
  83%,100%{ left: 116%; opacity: 0; }
}

/* Classic XP-style "you can click this" helper. */
.xped-cursor-coach {
  position: absolute;
  z-index: 100010;
  width: 32px;
  height: 32px;
  pointer-events: none;
  opacity: 0;
  transform: translate(-4px,-3px);
  transition:
    left .72s cubic-bezier(.2,.7,.2,1),
    top .72s cubic-bezier(.2,.7,.2,1),
    opacity .18s ease;
}

.xped-cursor-coach.is-visible {
  opacity: 1;
}

.xped-cursor-coach img {
  display: block;
  width: 32px;
  height: 32px;
  image-rendering: auto;
  filter: drop-shadow(1px 1px 0 rgba(255,255,255,.2));
}

.xped-cursor-tip {
  position: absolute;
  left: 25px;
  top: 21px;
  min-width: 108px;
  padding: 4px 7px 5px;
  border: 1px solid #111;
  background: #ffffe1;
  color: #111;
  box-shadow: 1px 1px 2px rgba(0,0,0,.28);
  font: 11px Tahoma, Arial, sans-serif;
  line-height: 1.15;
  white-space: nowrap;
}

.xped-cursor-tip::before {
  content: "";
  position: absolute;
  left: -6px;
  top: 6px;
  width: 6px;
  height: 8px;
  background: #ffffe1;
  border-left: 1px solid #111;
  border-bottom: 1px solid #111;
  transform: skewY(-35deg);
}

.xped-cursor-coach.is-pulsing {
  animation: xped-cursor-nudge 1.1s ease-in-out infinite;
}

@keyframes xped-cursor-nudge {
  0%,100% { transform: translate(-4px,-3px); }
  50%     { transform: translate(1px,1px); }
}

@media (prefers-reduced-motion: reduce) {
  .webi-global-brand img,
  .webi-global-brand::after,
  .xped-cursor-coach {
    animation: none !important;
    transition: none !important;
  }
}


/* ==========================================================
   v1.9.0 — search/Go alignment + period junk popup
   ========================================================== */

/* Exact search + Go alignment */
.webi-home-search {
  display: grid !important;
  grid-template-columns: minmax(220px, 360px) 44px !important;
  justify-content: end !important;
  align-items: stretch !important;
  column-gap: 5px !important;
  height: 26px !important;
}

.webi-home-search input {
  width: 100% !important;
  height: 26px !important;
  min-height: 26px !important;
  margin: 0 !important;
  padding: 3px 8px !important;
  border: 1px solid #7f9db9 !important;
  border-radius: 0 !important;
  line-height: 18px !important;
  box-sizing: border-box !important;
}

.webi-home-search button {
  width: 44px !important;
  height: 26px !important;
  min-height: 26px !important;
  margin: 0 !important;
  padding: 0 !important;
  align-self: stretch !important;
  border: 1px solid #3e7f1e !important;
  border-radius: 3px !important;
  line-height: 24px !important;
  box-sizing: border-box !important;
}

/* 2005-style promotional pop-up */
.xped-junk-popup {
  position: absolute;
  z-index: 100020;
  left: 58%;
  top: 27%;
  width: 345px;
  border: 3px solid #0755d8;
  border-radius: 7px 7px 2px 2px;
  overflow: hidden;
  background: #ece9d8;
  box-shadow: 4px 5px 12px rgba(0,0,0,.42);
  font-family: Tahoma, Arial, sans-serif;
}

.xped-junk-popup[hidden] {
  display: none !important;
}

.xped-junk-titlebar {
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 2px 3px 2px 7px;
  color: #fff;
  font-weight: 700;
  background: linear-gradient(#3b92f6 0%, #0b5fe9 47%, #0644bf 100%);
  text-shadow: 1px 1px #003b9a;
  cursor: default;
}

.xped-junk-title {
  display: flex;
  align-items: center;
  gap: 5px;
}

.xped-junk-miniicon {
  font-size: 14px;
}

.xped-junk-close {
  width: 22px;
  height: 20px;
  padding: 0;
  border: 1px solid #fff;
  border-radius: 3px;
  color: #fff;
  background: linear-gradient(#ff9c7d,#e84c2b 55%,#bd2b16);
  font-weight: 700;
  font-size: 16px;
  line-height: 16px;
  cursor: pointer;
}

.xped-junk-body {
  position: relative;
  min-height: 205px;
  padding: 15px 14px 13px 105px;
  border-top: 1px solid #fff;
  background:
    radial-gradient(circle at 22% 24%, rgba(255,255,255,.92) 0 5%, rgba(255,255,255,0) 22%),
    linear-gradient(135deg,#fff7c5 0%,#ffd940 44%,#ff9d00 100%);
}

.xped-junk-burst {
  position: absolute;
  left: 14px;
  top: 26px;
  width: 76px;
  height: 76px;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: rotate(-11deg);
  border: 3px solid #fff;
  border-radius: 50%;
  color: #fff;
  background: #e62518;
  box-shadow:
    0 0 0 3px #bf1109,
    2px 3px 5px rgba(0,0,0,.25);
  font: 900 21px Arial, sans-serif;
  text-shadow: 1px 1px #8d0000;
}

.xped-junk-kicker {
  color: #00428c;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .3px;
}

.xped-junk-copy h3 {
  margin: 3px 0 7px;
  color: #063b80;
  font: 900 25px/0.95 Arial, sans-serif;
  letter-spacing: -1px;
}

.xped-junk-copy p {
  margin: 0 0 9px;
  color: #3f3f3f;
  font-size: 11px;
  line-height: 1.3;
}

.xped-junk-points {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 8px;
  margin-bottom: 10px;
  color: #135716;
  font-size: 10px;
  font-weight: 700;
}

.xped-junk-cta {
  width: 100%;
  min-height: 31px;
  border: 1px solid #13559e;
  border-radius: 4px;
  color: #fff;
  background: linear-gradient(#42a0f2,#1762b9);
  box-shadow: inset 0 1px rgba(255,255,255,.45);
  font-weight: 700;
  font-size: 11px;
  cursor: pointer;
}

.xped-junk-cta:hover {
  background: linear-gradient(#5eb1fa,#1d72d3);
}

.xped-junk-smallprint {
  margin-top: 7px;
  color: #6b5216;
  font-size: 9px;
  text-align: center;
}

.xped-junk-popup.is-entering {
  animation: xped-junk-enter 260ms ease-out both;
}

@keyframes xped-junk-enter {
  0%   { opacity: 0; transform: translateY(12px) scale(.97); }
  65%  { opacity: 1; transform: translateY(-2px) scale(1.01); }
  100% { opacity: 1; transform: translateY(0) scale(1); }
}

@media (max-width: 760px) {
  .xped-junk-popup {
    left: 50% !important;
    top: 18% !important;
    width: min(345px, 88vw) !important;
    transform: translateX(-50%);
  }
}


/* ==========================================================
   v2.0.0 — redesigned Webistix one-page microsite
   ========================================================== */

.webi-home-v2 {
  width: 100%;
  min-width: 900px;
  padding: 0 8px 10px;
  background: #eef3f8;
  font-family: Tahoma, Arial, sans-serif;
  color: #1f1f1f;
}

.webi-home-v2 .webi-home-head {
  min-height: 40px !important;
  height: 40px !important;
  padding: 5px 8px !important;
  margin-bottom: 8px;
  border: 1px solid #9fb2c4;
  border-top: 0;
  background: linear-gradient(#f9fbfd,#e7eef6) !important;
}

.webi-home-v2 .webi-home-brand {
  display: none !important;
}

.webi-home-v2 .webi-home-head-right {
  width: 100%;
}

.webi-home-v2 .webi-home-search {
  display: grid !important;
  grid-template-columns: minmax(260px, 360px) 46px !important;
  justify-content: end !important;
  align-items: center !important;
  gap: 6px !important;
  height: 28px !important;
}

.webi-home-v2 .webi-home-search input {
  width: 100% !important;
  height: 26px !important;
  border: 1px solid #7f9db9 !important;
  border-radius: 0 !important;
  font: 11px Tahoma, Arial, sans-serif !important;
}

.webi-home-v2 .webi-home-search button {
  width: 46px !important;
  height: 26px !important;
  border: 1px solid #4a8d22 !important;
  border-radius: 3px !important;
  background: linear-gradient(#7eca42,#4f9e25) !important;
  color: #fff !important;
  font: 700 11px Tahoma, Arial, sans-serif !important;
}

.webi-panel {
  margin-bottom: 10px;
  border: 1px solid #7da2d4;
  border-radius: 5px;
  background: #fff;
  box-shadow: 0 1px 3px rgba(0,0,0,.08);
  overflow: hidden;
}

.webi-panel-title {
  height: 28px;
  display: flex;
  align-items: center;
  padding: 0 10px;
  color: #fff;
  font: 700 12px Tahoma, Arial, sans-serif;
  background: linear-gradient(#2d87ef 0%, #0d63df 50%, #0a4fb9 100%);
  border-bottom: 1px solid #4679c1;
  text-shadow: 1px 1px 0 rgba(0,0,0,.16);
}

.webi-hero-inner {
  position: relative;
  min-height: 228px;
  padding: 18px 20px;
  background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.05)), url("bliss-from-reference.png") center center / cover no-repeat;
}

.webi-hero-inner::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(4,65,176,.32) 0%, rgba(15,82,193,.08) 45%, rgba(255,255,255,0) 100%);
  pointer-events: none;
}

.webi-hero-copy {
  position: relative;
  z-index: 1;
  max-width: 670px;
  text-align: left;
}

.webi-hero-logo {
  display: block;
  width: min(620px, 72%);
  max-width: 620px;
  margin-bottom: 6px;
  image-rendering: auto;
}

.webi-home-v2 .webi-hero-copy h1 {
  margin: 0 0 6px;
  color: #fff;
  font: 700 31px/1.04 "Trebuchet MS", Tahoma, Arial, sans-serif;
  text-shadow: 2px 2px 0 rgba(0,0,0,.42);
}

.webi-home-v2 .webi-hero-copy p {
  margin: 0;
  max-width: 440px;
  color: #f5fbff;
  font-size: 15px;
  line-height: 1.35;
  text-shadow: 1px 1px 0 rgba(0,0,0,.36);
}

.webi-about-inner {
  display: grid;
  grid-template-columns: 292px minmax(0,1fr);
  gap: 18px;
  padding: 14px;
}

.webi-about-media {
  border: 1px solid #9eb4cd;
  background: #f6f8fa;
  padding: 3px;
}

.webi-about-media img {
  display: block;
  width: 100%;
  height: auto;
}

.webi-about-copy {
  font-size: 12px;
  line-height: 1.5;
}

.webi-about-copy p {
  margin: 0 0 12px;
}

.webi-social-links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 12px;
}

.webi-social-links a {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 12px;
  border: 1px solid #8aa5c5;
  background: linear-gradient(#ffffff,#eaf0f6);
  color: #094288;
  font-weight: 700;
  text-decoration: none;
}

.webi-section-intro {
  padding: 12px 14px 0;
  font-size: 12px;
}

.webi-section-intro p {
  margin: 0;
}

.webi-services-grid-v2 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 8px;
  padding: 12px 14px 14px;
}

.webi-service-box {
  min-height: 186px;
  border: 1px solid #b7c5d4;
  background: linear-gradient(#ffffff,#f4f6f8);
  padding: 12px 12px 10px;
  text-align: center;
}

.webi-service-icon {
  width: 58px;
  height: 58px;
  margin: 0 auto 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #7ea2ca;
  background: linear-gradient(#ffffff,#dfeefe 48%, #c1dfff 100%);
  color: #0d4ea6;
  font: 700 15px/1 Tahoma, Arial, sans-serif;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
  animation: webi-icon-blink 2.8s ease-in-out infinite;
}

.webi-service-icon.ppc { animation-delay: .2s; }
.webi-service-icon.cro { animation-delay: .4s; }
.webi-service-icon.web { animation-delay: .6s; }
.webi-service-icon.content { animation-delay: .8s; }
.webi-service-icon.email { animation-delay: 1s; }
.webi-service-icon.social { animation-delay: 1.2s; }
.webi-service-icon.support { animation-delay: 1.4s; }

@keyframes webi-icon-blink {
  0%, 82%, 100% { box-shadow: inset 0 1px 0 rgba(255,255,255,.8), 0 0 0 rgba(255,255,255,0); transform: translateY(0); }
  88% { box-shadow: inset 0 1px 0 rgba(255,255,255,.8), 0 0 12px rgba(255,222,74,.75); transform: translateY(-1px); }
}

.webi-service-box h3 {
  margin: 0 0 8px;
  color: #0f4690;
  font-size: 20px;
  line-height: 1.05;
}

.webi-service-box p {
  margin: 0;
  color: #444;
  font-size: 11px;
  line-height: 1.35;
}

.webi-blogs-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 10px;
  padding: 14px;
}

.webi-blog-card {
  border: 1px solid #b7c5d4;
  background: linear-gradient(#ffffff,#f5f7fa);
  padding: 10px;
  font-size: 11px;
}

.webi-blog-thumb {
  height: 88px;
  margin-bottom: 9px;
  border: 1px solid #8aa7c8;
  background-size: cover;
  background-position: center;
}

.webi-blog-thumb-a {
  background:
    linear-gradient(135deg, rgba(255,255,255,.12), rgba(255,255,255,0)),
    linear-gradient(180deg, #87b7ff, #1c5cc7);
}
.webi-blog-thumb-b {
  background:
    linear-gradient(135deg, rgba(255,255,255,.15), rgba(255,255,255,0)),
    linear-gradient(180deg, #98a2ad, #434a53);
}
.webi-blog-thumb-c {
  background:
    linear-gradient(135deg, rgba(255,255,255,.12), rgba(255,255,255,0)),
    linear-gradient(180deg, #b2d2ff, #4d76b1);
}

.webi-blog-card h3 {
  margin: 0 0 7px;
  color: #0d458e;
  font-size: 17px;
  line-height: 1.08;
}

.webi-blog-card p {
  margin: 0 0 10px;
  color: #444;
  line-height: 1.35;
}

.webi-blog-card a {
  color: #0e4aa3;
  font-weight: 700;
  text-decoration: none;
}

.webi-contact-inner {
  display: grid;
  grid-template-columns: 1fr 1.3fr;
  gap: 18px;
  padding: 14px;
}

.webi-contact-copy {
  font-size: 12px;
  line-height: 1.5;
}

.webi-contact-copy a {
  color: #0d489c;
  font-weight: 700;
  text-decoration: none;
}

.webi-contact-form {
  display: grid;
  gap: 10px;
}

.webi-contact-form label {
  display: grid;
  grid-template-columns: 100px minmax(0,1fr);
  align-items: center;
  gap: 10px;
  font-size: 12px;
}

.webi-contact-form input,
.webi-contact-form textarea {
  width: 100%;
  border: 1px solid #7f9db9;
  background: #fff;
  font: 12px Tahoma, Arial, sans-serif;
  box-sizing: border-box;
  padding: 6px 7px;
}

.webi-contact-form textarea {
  resize: vertical;
  min-height: 120px;
}

.webi-textarea-row {
  align-items: start !important;
}

.webi-textarea-row span {
  padding-top: 8px;
}

.webi-form-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 2px;
}

.webi-fake-captcha {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  padding: 0 12px;
  border: 1px solid #c5c9cf;
  background: #f7f7f7;
  font-size: 12px;
}

.webi-fake-captcha-box {
  width: 18px;
  height: 18px;
  border: 1px solid #888;
  background: #fff;
}

.webi-send-button {
  min-height: 32px;
  padding: 0 16px;
  border: 1px solid #15559f;
  background: linear-gradient(#4da3f3,#1b68c2);
  color: #fff;
  font: 700 12px Tahoma, Arial, sans-serif;
  cursor: pointer;
}

/* Re-theme the site nav for anchored single-page browsing */
.webi-global-sitebar {
  min-height: 54px !important;
  height: 54px !important;
  padding: 5px 10px !important;
  display: grid !important;
  grid-template-columns: 215px minmax(0,1fr) !important;
  align-items: center !important;
  gap: 12px !important;
}

.webi-global-brand img {
  width: 190px !important;
  max-height: 42px !important;
}

.webi-global-nav {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  justify-self: end !important;
  min-width: 520px;
  max-width: 620px;
}

.webi-global-nav button {
  width: auto !important;
  min-width: 0 !important;
  padding: 0 10px !important;
  font-size: 11px !important;
}

/* Make the idle cursor coach look at the new anchor buttons too */
.xped-cursor-tip {
  min-width: 118px;
}

/* Reasonable responsive fallback inside the fake browser */
@media (max-width: 1020px) {
  .webi-home-v2 {
    min-width: 840px;
  }
  .webi-services-grid-v2 {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
  .webi-blogs-grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
  .webi-contact-inner {
    grid-template-columns: 1fr;
  }
}


/* ==========================================================
   v2.1.0 — faithful one-row services + softer section chrome
   ========================================================== */

/* Lose the heavy royal-blue bars. Keep a lighter XP panel heading instead. */
.webi-panel {
  border-color: #a9b7c6 !important;
  border-radius: 3px !important;
  background: #fff !important;
  box-shadow: 0 1px 2px rgba(0,0,0,.07) !important;
}

.webi-panel-title {
  height: 29px !important;
  padding: 0 9px !important;
  gap: 7px !important;
  color: #163d76 !important;
  background: linear-gradient(#fbfcfd 0%, #e8edf2 48%, #dbe3eb 100%) !important;
  border-top: 1px solid #fff !important;
  border-bottom: 1px solid #9cabba !important;
  text-shadow: none !important;
  font: 700 12px Tahoma, Arial, sans-serif !important;
}

.webi-panel-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  color: #0b58ad;
  font-size: 14px;
}

.webi-hero-titlebar {
  color: #fff !important;
  background: linear-gradient(#438ddd,#1d67b6) !important;
  border-bottom-color: #15569a !important;
}

.webi-titlebar-controls {
  margin-left: auto;
  color: #fff;
  font-weight: 700;
  letter-spacing: 4px;
}

/* Make What I Do match the reference: EIGHT tiles in ONE horizontal row. */
.webi-services-grid-v2 {
  display: grid !important;
  grid-template-columns: repeat(8, minmax(0,1fr)) !important;
  gap: 0 !important;
  padding: 10px 10px 12px !important;
  overflow-x: auto !important;
  background: #fff !important;
}

.webi-service-box {
  min-width: 126px !important;
  min-height: 202px !important;
  padding: 11px 8px 9px !important;
  border: 1px solid #c1ccd7 !important;
  border-right: 0 !important;
  background: linear-gradient(#fff,#f1f3f5) !important;
  text-align: center !important;
}

.webi-service-box:last-child {
  border-right: 1px solid #c1ccd7 !important;
}

.webi-service-icon {
  width: 56px !important;
  height: 56px !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  margin: 2px auto 8px !important;
  color: #0752a9 !important;
  animation: webi-icon-blink 2.8s ease-in-out infinite;
  font-size: 30px !important;
  font-weight: 700 !important;
}

.webi-service-box h3 {
  min-height: 36px;
  margin: 0 0 8px !important;
  color: #0b3e88 !important;
  font-size: 15px !important;
  line-height: 1.05 !important;
}

.webi-service-box p {
  font-size: 10.5px !important;
  line-height: 1.28 !important;
}

.webi-bars-icon {
  width: 47px;
  height: 45px;
  display: flex;
  align-items: end;
  justify-content: center;
  gap: 4px;
}
.webi-bars-icon i {
  display: block;
  width: 10px;
  border: 1px solid #0b4fa7;
  background: linear-gradient(#8ee54e,#23a02f);
}
.webi-bars-icon i:nth-child(1){height:18px;}
.webi-bars-icon i:nth-child(2){height:30px;}
.webi-bars-icon i:nth-child(3){height:42px;}

.webi-pointer-icon {
  display: inline-block;
  transform: rotate(-24deg);
  font-size: 47px;
  line-height: 1;
  text-shadow: 1px 1px 0 #fff;
}
.webi-chart-icon,
.webi-globe-icon,
.webi-doc-icon,
.webi-mail2-icon,
.webi-tools-icon {
  font-size: 42px;
  line-height: 1;
}
.webi-people-icon {
  font-size: 27px;
  letter-spacing: -5px;
}

/* Blog section: 3 equal horizontal cards, image left / copy right. */
.webi-blogs-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0,1fr)) !important;
  gap: 8px !important;
  padding: 10px !important;
  background: #fff !important;
}

.webi-blog-card {
  display: grid !important;
  grid-template-columns: 104px minmax(0,1fr) !important;
  gap: 9px !important;
  min-height: 128px !important;
  padding: 8px !important;
  border: 1px solid #bdc8d3 !important;
  background: linear-gradient(#fff,#f4f6f8) !important;
}

.webi-blog-thumb-img {
  display: block;
  width: 104px;
  height: 88px;
  object-fit: cover;
  border: 1px solid #829dbb;
  background: #dbe7f4;
}

.webi-blog-card-copy {
  min-width: 0;
}

.webi-blog-card h3 {
  margin: 0 0 6px !important;
  font-size: 12px !important;
  line-height: 1.12 !important;
  color: #0648a5 !important;
  text-decoration: underline;
}

.webi-blog-card p {
  margin: 0 0 8px !important;
  font-size: 10.5px !important;
  line-height: 1.28 !important;
}

.webi-blog-card a {
  font-size: 10.5px !important;
  text-decoration: underline !important;
}

/* About/contact boxes get the same restrained chrome. */
.webi-about-inner,
.webi-contact-inner {
  background: #fff !important;
}

.webi-about-media {
  border-color: #9cacbc !important;
  box-shadow: inset 0 0 0 1px #fff;
}

/* Keep nav visible while browsing long one-page content. */
.webi-global-sitebar {
  position: sticky !important;
  top: 0 !important;
  z-index: 30 !important;
}

/* Services stay one row; browser scrollbar appears instead of stacking. */
@media (max-width: 1020px) {
  .webi-services-grid-v2 {
    grid-template-columns: repeat(8, 126px) !important;
  }
  .webi-blogs-grid {
    grid-template-columns: repeat(3, 290px) !important;
    overflow-x: auto !important;
  }
}


/* ==========================================================
   v2.2.0 — glossy service icons + SEO blog-in-browser system
   ========================================================== */

.webi-service-icon {
  width: 72px !important;
  height: 72px !important;
  margin: 0 auto 8px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.webi-service-icon img {
  display: block;
  width: 72px;
  height: 72px;
  object-fit: contain;
  filter: drop-shadow(0 1px 1px rgba(0,0,0,.18));
}

.webi-service-box {
  min-width: 126px !important;
  min-height: 220px !important;
  padding-top: 8px !important;
}

.webi-service-box h3 {
  min-height: 32px !important;
  font-size: 14px !important;
}

/* Blog cards remain compact, but titles are now real crawlable links. */
.webi-blog-card h3 a {
  color: #0648a5 !important;
  text-decoration: underline !important;
}

.webi-article-view {
  padding: 8px;
  background: #eef3f8;
  min-height: 100%;
}

.webi-article-view[hidden] {
  display: none !important;
}

.webi-article-panel {
  margin: 0 !important;
}

.webi-article-inner {
  padding: 18px 22px 28px;
  background: #fff;
  min-height: 440px;
}

.webi-article-back {
  display: inline-block;
  margin: 0 0 14px;
  padding: 5px 9px;
  border: 1px solid #7f9db9;
  background: linear-gradient(#fff,#e5ebf1);
  color: #0b438e;
  font: 700 11px Tahoma,Arial,sans-serif;
  cursor: pointer;
}

.webi-article-date {
  color: #6d7580;
  font-size: 10px;
  margin-bottom: 4px;
}

.webi-article-title {
  margin: 0 0 16px;
  color: #0b438e;
  font: 700 28px/1.08 "Trebuchet MS",Tahoma,Arial,sans-serif;
}

.webi-article-content {
  color: #242424;
  font: 13px/1.55 Tahoma,Arial,sans-serif;
}

.webi-article-content p {
  margin: 0 0 14px;
}

.webi-article-content h2,
.webi-article-content h3 {
  color: #0d4d9d;
  margin-top: 22px;
}

/* keep single-row service layout, with just enough width for glossy icons */
@media (max-width: 1020px) {
  .webi-services-grid-v2 {
    grid-template-columns: repeat(8, 132px) !important;
  }
}


/* ==========================================================
   v2.4.0 — simplified centered hero
   ========================================================== */

/* Search/utility strip removed completely. */
.webi-home-v2 .webi-home-head,
.webi-home-search {
  display: none !important;
}

/* Give the hero more visual width and presence. */
.webi-home-v2 {
  padding-top: 8px !important;
}

.webi-hero-panel {
  width: 100% !important;
  margin: 0 0 10px !important;
}

.webi-hero-inner {
  min-height: 300px !important;
  width: 100% !important;
  padding: 26px 32px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background-position: center 55% !important;
  background-size: cover !important;
}

/* Slightly soften the old left-biased overlay. */
.webi-hero-inner::after {
  background:
    linear-gradient(
      180deg,
      rgba(7,67,166,.10) 0%,
      rgba(7,67,166,.02) 44%,
      rgba(7,67,166,.22) 100%
    ) !important;
}

/* Center the full hero stack. */
.webi-hero-copy {
  width: min(820px, 92%) !important;
  max-width: 820px !important;
  margin: 0 auto !important;
  text-align: center !important;
}

.webi-hero-logo {
  width: min(610px, 82%) !important;
  max-width: 610px !important;
  margin: 0 auto 18px !important;
  display: block !important;
}

.webi-home-v2 .webi-hero-copy h1 {
  margin: 0 0 10px !important;
  color: #fff !important;
  text-align: center !important;
  font: 700 31px/1.04 "Trebuchet MS", Tahoma, Arial, sans-serif !important;
  letter-spacing: .2px !important;
  text-shadow:
    2px 2px 0 rgba(0,0,0,.42),
    0 0 5px rgba(0,55,140,.35) !important;
}

.webi-home-v2 .webi-hero-copy p {
  margin: 0 auto !important;
  max-width: 720px !important;
  color: #fff !important;
  text-align: center !important;
  font: 700 15px/1.35 Tahoma, Arial, sans-serif !important;
  text-shadow:
    1px 1px 0 rgba(0,0,0,.42),
    0 0 4px rgba(0,55,140,.28) !important;
}

/* Let the microsite consume the browser width cleanly. */
.webi-home-v2,
.webi-hero-panel,
.webi-hero-inner {
  box-sizing: border-box !important;
}



/* ==========================================================
   v2.5.0 — fix microsite wrapper + typography consistency
   ========================================================== */

/* The microsite is one continuous document. No phantom full-height
   empty wrapper before the hero. */
.webi-home-v2 {
  min-height: 0 !important;
  padding: 0 8px 10px !important;
  margin: 0 !important;
  background: #eef3f8 !important;
  font-family: Tahoma, Arial, sans-serif !important;
  font-size: 12px !important;
}

/* Kill any inherited spacing that could create an empty region. */
.webi-home-v2 > :first-child {
  margin-top: 0 !important;
}

.webi-hero-panel {
  margin-top: 0 !important;
}

/* Keep ALL of the microsite typography in one period-correct family. */
.webi-home-v2,
.webi-home-v2 button,
.webi-home-v2 input,
.webi-home-v2 textarea,
.webi-home-v2 h1,
.webi-home-v2 h2,
.webi-home-v2 h3,
.webi-home-v2 p,
.webi-home-v2 a,
.webi-home-v2 span,
.webi-home-v2 label {
  font-family: Tahoma, Arial, sans-serif !important;
}

/* Hero hierarchy: same type family, just size/weight changes. */
.webi-home-v2 .webi-hero-copy h1 {
  margin: 0 0 10px !important;
  color: #fff !important;
  text-align: center !important;
  font-family: Tahoma, Arial, sans-serif !important;
  font-size: 31px !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
  text-shadow:
    1px 1px 0 rgba(0,0,0,.60),
    0 0 4px rgba(0,55,140,.30) !important;
}

.webi-home-v2 .webi-hero-copy p {
  margin: 0 auto !important;
  max-width: 720px !important;
  color: #fff !important;
  text-align: center !important;
  font-family: Tahoma, Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  text-shadow: 1px 1px 0 rgba(0,0,0,.55) !important;
}

/* Slightly more compact hero now that the phantom gap is gone. */
.webi-hero-inner {
  min-height: 280px !important;
  padding: 24px 32px !important;
}

.webi-hero-logo {
  margin-bottom: 16px !important;
}

/* Keep the navigation directly connected to the microsite below it. */
.webi-global-sitebar + .webi-home-v2 {
  margin-top: 0 !important;
}


/* ==========================================================
   v2.6.0 — XP Blog Explorer + calmer promotional toast
   ========================================================== */

/* ---------------- XP BLOG FILE EXPLORER ---------------- */
.xped-blog-explorer-window .xped-window-body {
  background: #fff !important;
}

.webi-blog-explorer {
  min-width: 680px;
  min-height: 100%;
  display: grid;
  grid-template-columns: 182px minmax(0,1fr);
  background: #fff;
  font-family: Tahoma, Arial, sans-serif;
  font-size: 11px;
}

.webi-explorer-sidebar {
  padding: 10px 8px;
  background: linear-gradient(180deg,#6f9fea 0%,#5a85d5 100%);
  border-right: 1px solid #3f6daf;
}

.webi-explorer-task,
.webi-explorer-details {
  margin-bottom: 10px;
  overflow: hidden;
  border-radius: 4px;
  background: #dbe8fb;
  border: 1px solid #4d73b2;
}

.webi-explorer-task-title {
  padding: 5px 8px;
  color: #23477c;
  font-weight: 700;
  background: linear-gradient(#fff,#d8e6fb);
  border-bottom: 1px solid #95b2dc;
}

.webi-explorer-task button {
  width: 100%;
  display: block;
  padding: 6px 8px;
  border: 0;
  background: transparent;
  color: #174f9f;
  text-align: left;
  font: 11px Tahoma,Arial,sans-serif;
  cursor: pointer;
}

.webi-explorer-task button:hover {
  text-decoration: underline;
}

.webi-explorer-details {
  padding-bottom: 6px;
}

.webi-explorer-details p {
  margin: 6px 8px;
  color: #304767;
  line-height: 1.25;
}

.webi-explorer-main {
  min-width: 0;
  padding: 8px 10px 14px;
  background: #fff;
}

.webi-explorer-heading {
  min-height: 30px;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin-bottom: 8px;
  padding-bottom: 6px;
  border-bottom: 1px solid #d5d5d5;
  color: #355f9f;
  font-weight: 700;
  font-size: 13px;
}

.webi-explorer-heading small {
  color: #777;
  font-size: 10px;
  font-weight: 400;
}

.webi-explorer-files {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 6px 8px;
  align-content: start;
}

.webi-explorer-file {
  min-width: 0;
  min-height: 116px;
  display: grid;
  grid-template-rows: 66px auto auto;
  justify-items: center;
  align-items: start;
  padding: 7px 6px;
  border: 1px solid transparent;
  color: #111;
  text-decoration: none;
  cursor: default;
}

.webi-explorer-file:hover {
  background: #e7f0fd;
  border-color: #7da2ce;
}

.webi-explorer-file:focus {
  outline: 1px dotted #111;
  background: #316ac5;
  color: #fff;
}

.webi-explorer-file-icon {
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.webi-explorer-file-icon img {
  width: 58px;
  height: 58px;
  object-fit: cover;
  border: 1px solid #8aa1b9;
}

.webi-file-page {
  position: relative;
  width: 44px;
  height: 54px;
  display: block;
  background: linear-gradient(#fff,#e8eef5);
  border: 1px solid #6485a8;
  box-shadow: 1px 1px 1px rgba(0,0,0,.18);
}

.webi-file-fold {
  position: absolute;
  right: -1px;
  top: -1px;
  width: 13px;
  height: 13px;
  background: #cfe0f1;
  border-left: 1px solid #6485a8;
  border-bottom: 1px solid #6485a8;
}

.webi-file-lines {
  position: absolute;
  left: 8px;
  right: 8px;
  top: 20px;
  height: 18px;
  background:
    linear-gradient(#5d85b0,#5d85b0) 0 0/100% 2px no-repeat,
    linear-gradient(#5d85b0,#5d85b0) 0 8px/86% 2px no-repeat,
    linear-gradient(#5d85b0,#5d85b0) 0 16px/72% 2px no-repeat;
}

.webi-explorer-file-name {
  max-width: 100%;
  margin-top: 4px;
  text-align: center;
  line-height: 1.15;
  color: inherit;
  word-break: break-word;
}

.webi-explorer-file-meta {
  margin-top: 3px;
  color: #777;
  font-size: 9px;
}

.webi-explorer-file:focus .webi-explorer-file-meta {
  color: #eef5ff;
}

.webi-explorer-empty {
  padding: 30px;
  color: #777;
}

/* ---------------- CALMER SALES POPUP ----------------
   Think Windows Messenger notification rather than rogue ad. */
.xped-junk-popup {
  left: auto !important;
  top: auto !important;
  right: 18px !important;
  bottom: 43px !important;
  width: 292px !important;
  border: 1px solid #315c93 !important;
  border-radius: 4px !important;
  background: #ffffe7 !important;
  box-shadow: 2px 3px 7px rgba(0,0,0,.28) !important;
}

.xped-junk-titlebar {
  height: 25px !important;
  padding: 2px 3px 2px 7px !important;
  background: linear-gradient(#4e8dd3,#2a66aa) !important;
  cursor: default !important;
}

.xped-junk-miniicon {
  font-size: 12px !important;
}

.xped-junk-close {
  width: 19px !important;
  height: 18px !important;
  font-size: 13px !important;
  line-height: 13px !important;
}

.xped-junk-body {
  min-height: 0 !important;
  padding: 11px 12px 10px !important;
  background: linear-gradient(#fffff4,#fffbd7) !important;
}

.xped-junk-burst,
.xped-junk-points,
.xped-junk-smallprint {
  display: none !important;
}

.xped-junk-kicker {
  margin-bottom: 5px !important;
  color: #123e78 !important;
  font: 700 13px/1.2 Tahoma,Arial,sans-serif !important;
}

.xped-junk-copy h3 {
  display: none !important;
}

.xped-junk-copy p {
  margin: 0 0 9px !important;
  color: #333 !important;
  font: 11px/1.35 Tahoma,Arial,sans-serif !important;
}

.xped-junk-cta {
  width: auto !important;
  min-height: 27px !important;
  padding: 0 10px !important;
  border-radius: 3px !important;
  font-size: 11px !important;
}

/* Softer entrance; no scale-pop. */
.xped-junk-popup.is-entering {
  animation: xped-toast-enter 220ms ease-out both !important;
}

@keyframes xped-toast-enter {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}


/* ==========================================================
   v2.8.0 — dedicated blog reader window
   ========================================================== */

.xped-blog-reader-window .xped-window-body {
  background: #edf2f7 !important;
}

.webi-blog-reader {
  min-width: 720px;
  min-height: 100%;
  padding: 8px;
  background: #edf2f7;
  font-family: Tahoma, Arial, sans-serif;
  color: #1e1e1e;
}

.webi-blog-reader-mast {
  min-height: 68px;
  display: grid;
  grid-template-columns: 220px minmax(0,1fr);
  align-items: center;
  gap: 14px;
  padding: 8px 12px;
  border: 1px solid #9aaebe;
  background: linear-gradient(#fff,#e6edf4);
}

.webi-blog-reader-mast img {
  display: block;
  width: 205px;
  max-height: 48px;
  object-fit: contain;
  object-position: left center;
}

.webi-blog-reader-mast div {
  padding-left: 14px;
  border-left: 1px solid #b7c4d0;
}

.webi-blog-reader-mast strong {
  display: block;
  margin-bottom: 3px;
  color: #0c438e;
  font-size: 15px;
}

.webi-blog-reader-mast span {
  color: #586675;
  font-size: 10px;
}

.webi-blog-breadcrumb {
  min-height: 31px;
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 0 10px;
  border: 1px solid #a9b8c6;
  border-top: 0;
  background: #f8fafc;
  color: #6b7682;
  font-size: 10px;
}

.webi-blog-breadcrumb button {
  padding: 0;
  border: 0;
  background: transparent;
  color: #0750a7;
  font: 700 10px Tahoma,Arial,sans-serif;
  text-decoration: underline;
  cursor: pointer;
}

.webi-blog-reader-layout {
  display: grid;
  grid-template-columns: minmax(0,1fr) 210px;
  gap: 10px;
  margin-top: 8px;
}

.webi-blog-reader-main {
  min-width: 0;
  padding: 18px 20px 28px;
  border: 1px solid #abb9c7;
  background: #fff;
}

.webi-blog-reader-image-wrap {
  margin: -4px -6px 16px;
  padding: 4px;
  border: 1px solid #9db0c3;
  background: #eef3f8;
}

.webi-blog-reader-image-wrap[hidden] {
  display: none !important;
}

.webi-blog-reader-image {
  display: block;
  width: 100%;
  max-height: 270px;
  object-fit: cover;
}

.webi-blog-reader-date {
  margin-bottom: 4px;
  color: #6f7780;
  font-size: 10px;
}

.webi-blog-reader-title {
  margin: 0 0 16px;
  color: #0c438e;
  font: 700 29px/1.08 Tahoma,Arial,sans-serif;
}

.webi-blog-reader-content {
  color: #292929;
  font: 12px/1.6 Tahoma,Arial,sans-serif;
}

.webi-blog-reader-content p {
  margin: 0 0 15px;
}

.webi-blog-reader-content h2 {
  margin: 24px 0 8px;
  color: #0a4c9e;
  font-size: 19px;
}

.webi-blog-reader-content h3 {
  margin: 20px 0 7px;
  color: #214f86;
  font-size: 15px;
}

.webi-blog-reader-content a {
  color: #004db0;
  text-decoration: underline;
}

.webi-blog-reader-side {
  min-width: 0;
}

.webi-reader-box {
  margin-bottom: 9px;
  border: 1px solid #9cb1c8;
  background: #e8f0fa;
  font-size: 10px;
}

.webi-reader-box-title {
  padding: 5px 7px;
  color: #244c80;
  font-weight: 700;
  background: linear-gradient(#fff,#d9e7f8);
  border-bottom: 1px solid #9eb6d4;
}

.webi-reader-box p {
  margin: 8px;
  line-height: 1.35;
}

.webi-reader-box button {
  margin: 0 8px 8px;
  padding: 5px 7px;
  border: 1px solid #7f9db9;
  background: linear-gradient(#fff,#e5ebf2);
  color: #064aa5;
  font: 700 10px Tahoma,Arial,sans-serif;
  cursor: pointer;
}

@media (max-width: 900px) {
  .webi-blog-reader {
    min-width: 700px;
  }
}


/* v2.8.1 — blog-reader stability patch */
.xped-blog-reader-window[hidden],
.xped-blog-explorer-window[hidden] {
  display: none !important;
}

.xped-blog-reader-window .xped-window-body,
.xped-blog-explorer-window .xped-window-body {
  overflow: auto !important;
}



/* ==========================================================
   v2.9.0 — Explorer swaps into an article reader in-place
   ========================================================== */

.webi-explorer-list-view[hidden],
.webi-explorer-reader-view[hidden] {
  display: none !important;
}

.webi-explorer-reader-view {
  min-width: 0;
}

.webi-explorer-reader-toolbar {
  min-height: 31px;
  display: flex;
  align-items: center;
  padding: 4px 0 8px;
  border-bottom: 1px solid #d0d7df;
}

.webi-explorer-reader-toolbar button {
  padding: 4px 8px;
  border: 1px solid #7f9db9;
  background: linear-gradient(#fff,#e6edf4);
  color: #064aa5;
  font: 700 10px Tahoma,Arial,sans-serif;
  cursor: pointer;
}

.webi-explorer-article {
  max-width: 760px;
  margin: 10px auto 20px;
  padding: 18px 20px 28px;
  border: 1px solid #aebbc8;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0,0,0,.05);
}

.webi-explorer-article-image-wrap {
  margin: -4px -6px 16px;
  padding: 4px;
  border: 1px solid #9db0c3;
  background: #eef3f8;
}

.webi-explorer-article-image-wrap[hidden] {
  display: none !important;
}

.webi-explorer-article-image-wrap img {
  display: block;
  width: 100%;
  max-height: 290px;
  object-fit: cover;
}

.webi-explorer-article-date {
  margin-bottom: 5px;
  color: #707982;
  font-size: 10px;
}

.webi-explorer-article h1 {
  margin: 0 0 16px;
  color: #0b438e;
  font: 700 26px/1.1 Tahoma,Arial,sans-serif;
}

.webi-explorer-article-content {
  color: #292929;
  font: 12px/1.6 Tahoma,Arial,sans-serif;
}

.webi-explorer-article-content p {
  margin: 0 0 15px;
}

.webi-explorer-article-content h2 {
  margin: 23px 0 8px;
  color: #0a4c9e;
  font-size: 18px;
}

.webi-explorer-article-content h3 {
  margin: 20px 0 7px;
  color: #214f86;
  font-size: 15px;
}

.webi-explorer-article-content a {
  color: #004db0;
  text-decoration: underline;
}

/* Explorer file clicks should feel like opening a document, not a web link. */
.webi-blog-inline-link {
  cursor: default !important;
}


/* ==========================================================
   v3.0.0 — blog articles are pages INSIDE the Home web box
   ========================================================== */

.webi-home-article-view[hidden] {
  display: none !important;
}

.webi-home-article-view {
  min-width: 880px;
  min-height: 100%;
  padding: 8px;
  background: #eef3f8;
  font-family: Tahoma, Arial, sans-serif;
}

.webi-home-article-top {
  min-height: 34px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 5px 8px;
  border: 1px solid #a4b4c3;
  background: linear-gradient(#fff,#e5ecf3);
  color: #204b83;
  font-size: 11px;
  font-weight: 700;
}

.webi-home-article-top button {
  padding: 4px 8px;
  border: 1px solid #7f9db9;
  background: linear-gradient(#fff,#e5ebf2);
  color: #064aa5;
  font: 700 10px Tahoma,Arial,sans-serif;
  cursor: pointer;
}

.webi-home-article {
  max-width: 820px;
  margin: 8px auto 18px;
  padding: 18px 22px 30px;
  border: 1px solid #abb9c7;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
}

.webi-home-article-image-wrap {
  margin: -4px -6px 17px;
  padding: 4px;
  border: 1px solid #9db0c3;
  background: #eef3f8;
}

.webi-home-article-image-wrap[hidden] {
  display: none !important;
}

.webi-home-article-image-wrap img {
  display: block;
  width: 100%;
  max-height: 330px;
  object-fit: cover;
}

.webi-home-article-date {
  margin-bottom: 5px;
  color: #707982;
  font-size: 10px;
}

.webi-home-article h1 {
  margin: 0 0 17px;
  color: #0b438e;
  font: 700 28px/1.1 Tahoma,Arial,sans-serif;
}

.webi-home-article-content {
  color: #292929;
  font: 12px/1.62 Tahoma,Arial,sans-serif;
}

.webi-home-article-content p {
  margin: 0 0 15px;
}

.webi-home-article-content h2 {
  margin: 24px 0 8px;
  color: #0a4c9e;
  font-size: 19px;
}

.webi-home-article-content h3 {
  margin: 20px 0 7px;
  color: #214f86;
  font-size: 15px;
}

.webi-home-article-content a {
  color: #004db0;
  text-decoration: underline;
}


/* v3.6.0 — clean one-icon taskbar buttons */
.xped-task-button {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}



/* v3.6.1 — taskbar title truncation */
.xped-task-button {
  flex: 0 1 190px !important;
  width: auto !important;
  max-width: 190px !important;
  min-width: 105px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
}

.xped-task-button,
.xped-task-button * {
  min-width: 0 !important;
}

.xped-task-button {
  display: block !important;
  padding: 0 9px !important;
  line-height: 22px !important;
}

/* On narrower screens, shorten them sooner so more open windows fit. */
@media (max-width: 1200px) {
  .xped-task-button {
    flex-basis: 155px !important;
    max-width: 155px !important;
  }
}

@media (max-width: 900px) {
  .xped-task-button {
    flex-basis: 125px !important;
    max-width: 125px !important;
  }
}
