.site-logo .logo img {
    width: 100%;

}

/* Brand scale: prominent in the main header, compact after it becomes sticky. */
@media (min-width:992px) {
  .tj-header-area:not(.sticky) .site-logo .logo {
    width:210px !important;
    max-width:210px !important;
  }
  .tj-header-area:not(.sticky) .site-logo .logo img {
    width:210px !important;
    max-width:100% !important;
    height:auto;
  }
  .tj-header-area.sticky .site-logo .logo {
    width:176px !important;
    max-width:176px !important;
  }
  .tj-header-area.sticky .site-logo .logo img {
    width:176px !important;
    max-width:100% !important;
    height:auto;
  }
}

/* Services mega menu */
.mainmenu > ul > li:has(.ps-services-menu) > .mega-menu-pages { display: none !important; }

.ps-services-menu {
  position: absolute;
  z-index: 30;
  top: calc(100% + 1px);
  left: 50%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 290px;
  width: min(1280px, calc(100vw - 64px));
  padding: 12px;
  border: 1px solid rgba(16, 47, 92, .13);
  border-radius: 0 0 18px 18px;
  background: #fff;
  box-shadow: 0 28px 70px rgba(2, 13, 34, .2);
  opacity: 0;
  visibility: hidden;
  transform: translate(-50%, 14px);
  transition: opacity .22s ease, transform .22s ease, visibility .22s ease;
}

.mainmenu > ul > li:hover > .ps-services-menu {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0);
}

.ps-services-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-content: start;
  padding: 0;
}

.ps-service-link {
  position: relative;
  display: grid !important;
  grid-template-columns: 46px 1fr 20px;
  gap: 12px;
  align-items: center;
  min-height: 98px;
  padding: 14px !important;
  border-right: 1px solid #e8edf4;
  border-bottom: 1px solid #e8edf4;
  color: #0a1930 !important;
}

.ps-service-link:nth-child(3n) { border-right: 0; }
.ps-service-link:nth-last-child(-n + 3) { border-bottom: 0; }
.ps-service-link:hover { background: #f4f8ff; }

.ps-service-icon {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 14px;
  background: #eaf3ff;
  color: #1677e8;
  font-size: 18px;
  transition: background .25s ease, color .25s ease, transform .25s ease;
}

.ps-service-link:hover .ps-service-icon { background: #1677e8; color: #fff; transform: translateY(-2px); }
.ps-service-link strong { display: block; color: #0a1930; font-size: 14px; font-weight: 700; line-height: 1.25; }
.ps-service-link small { display: block; margin-top: 4px; color: #77869a; font-size: 11px; font-weight: 400; line-height: 1.3; }
.ps-service-arrow { color: #a6b0bd; font-size: 12px; transition: color .25s ease, transform .25s ease; }
.ps-service-link:hover .ps-service-arrow { color: #1677e8; transform: translate(2px, -2px); }

.ps-menu-cta {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 284px;
  padding: 28px;
  overflow: hidden;
  border-radius: 13px;
  background:
    radial-gradient(circle at 100% 0, rgba(50,154,255,.4), transparent 45%),
    linear-gradient(145deg, #091a36, #0b438b);
  color: #fff;
}

.ps-menu-kicker { margin-bottom: auto; color: #89c7ff; font-size: 10px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.ps-menu-cta h3 { margin: 0 0 10px; color: #fff; font-size: 24px; line-height: 1.15; letter-spacing: -.03em; }
.ps-menu-cta p { margin: 0 0 20px; color: #b9c9dd; font-size: 12px; line-height: 1.5; }
.ps-menu-cta a { display: flex !important; align-items: center; justify-content: space-between; padding: 13px 15px !important; border-radius: 999px; background: #fff; color: #071831 !important; font-size: 11px; font-weight: 700; }

.ps-menu-cta-icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  margin: 24px 0 18px;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 14px;
  background: rgba(255,255,255,.1);
  color: white;
  font-size: 18px;
}

@media (max-width: 1250px) {
  .ps-services-menu { width: min(1040px, calc(100vw - 40px)); }
  .ps-services-menu { grid-template-columns: minmax(0, 1fr) 260px; }
  .ps-service-link { min-height: 94px; }
}

/* Premium Polestar hero */
.ps-hero {
  --ps-blue: #1687ff;
  --ps-cyan: #61d8ff;
  position: relative;
  min-height: 730px;
  display: flex;
  align-items: center;
  overflow: hidden;
  padding: 182px 0 66px;
  background:
    linear-gradient(115deg, #020a1b 0%, #04142f 49%, #061a3f 100%);
}

.ps-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .28;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 74px 74px;
  -webkit-mask-image: linear-gradient(90deg, black, transparent 75%);
  mask-image: linear-gradient(90deg, black, transparent 75%);
}

.ps-hero::after {
  content: "";
  position: absolute;
  width: 640px;
  height: 640px;
  right: -330px;
  top: 110px;
  border: 1px solid rgba(97,216,255,.13);
  border-radius: 50%;
  box-shadow: 0 0 0 90px rgba(97,216,255,.025), 0 0 0 180px rgba(97,216,255,.018);
}

.ps-hero-glow {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  filter: blur(4px);
}

.ps-hero-glow-one {
  width: 650px;
  height: 650px;
  right: 6%;
  top: 10%;
  background: radial-gradient(circle, rgba(0,108,255,.23), transparent 66%);
}

.ps-hero-glow-two {
  width: 420px;
  height: 420px;
  left: -210px;
  bottom: -220px;
  background: radial-gradient(circle, rgba(30,150,255,.14), transparent 70%);
}

.ps-hero-container { position: relative; z-index: 2; max-width: 1320px; }

.ps-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(350px, .72fr);
  gap: clamp(55px, 6vw, 90px);
  align-items: center;
}

.ps-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 19px;
  padding: 7px 12px;
  border: 1px solid rgba(73,177,255,.23);
  border-radius: 999px;
  background: rgba(10,87,175,.11);
  color: #b8dcff;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.ps-eyebrow-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--ps-cyan);
  box-shadow: 0 0 12px var(--ps-cyan);
}

.ps-hero h1 {
  max-width: 670px;
  margin: 0;
  color: #fff;
  font-size: clamp(48px, 4vw, 68px);
  font-weight: 500;
  line-height: .99;
  letter-spacing: -.055em;
}

.ps-hero h1 span {
  display: block;
  margin-top: 8px;
  color: transparent;
  background: linear-gradient(100deg, #50b9ff 0%, #1484ff 50%, #94e6ff 100%);
  -webkit-background-clip: text;
  background-clip: text;
}

.ps-hero-lead {
  max-width: 660px;
  margin: 22px 0 0;
  color: #aebbd0;
  font-size: 16px;
  line-height: 1.6;
}

.ps-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 27px; }

.ps-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  min-height: 51px;
  padding: 0 21px;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 600;
  transition: transform .3s ease, box-shadow .3s ease, background .3s ease;
}

.ps-btn:hover { transform: translateY(-2px); }
.ps-btn-primary { background: #fff; color: #071229; box-shadow: 0 14px 34px rgba(0,0,0,.22); }
.ps-btn-primary:hover { color: #071229; box-shadow: 0 18px 42px rgba(17,132,255,.28); }
.ps-btn-ghost { border-color: rgba(255,255,255,.16); background: rgba(255,255,255,.045); color: #eaf4ff; }
.ps-btn-ghost:hover { background: rgba(255,255,255,.1); color: #fff; }

.ps-btn-whatsapp {
  border-color: rgba(84,230,154,.3);
  background: rgba(27,168,103,.14);
  color: #c9f8df;
  backdrop-filter: blur(14px);
}

.ps-btn-whatsapp:hover { background: #1fad6e; color: white; box-shadow: 0 15px 35px rgba(19,150,91,.25); }

.ps-trust-row {
  display: flex;
  gap: 0;
  margin-top: 34px;
  padding-top: 22px;
  border-top: 1px solid rgba(255,255,255,.09);
}

.ps-trust-item { display: flex; align-items: center; gap: 10px; padding: 0 20px; border-right: 1px solid rgba(255,255,255,.1); }
.ps-trust-item:first-child { padding-left: 0; }
.ps-trust-item:last-child { border-right: 0; }
.ps-trust-item strong { color: #fff; font-size: 21px; font-weight: 600; letter-spacing: -.03em; }
.ps-trust-item span { color: #8291a9; font-size: 11px; line-height: 1.4; }

.ps-hero-visual { position: relative; width: 100%; max-width: 405px; margin-left: auto; }

.ps-image-frame {
  position: relative;
  overflow: hidden;
  aspect-ratio: .88;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 175px 175px 25px 25px;
  background: #0c2a50;
  box-shadow: 0 40px 80px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.2);
}

.ps-image-frame > img { width: 100%; height: 100%; object-fit: cover; object-position: center; transform: scale(1.08); }

.ps-image-shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(4,21,49,.02) 45%, rgba(2,10,27,.72) 100%);
}

.ps-setup-card {
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 24px;
  display: grid;
  grid-template-columns: 46px 1fr auto;
  gap: 13px;
  align-items: center;
  padding: 15px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 17px;
  background: rgba(3,16,38,.76);
  color: white;
  backdrop-filter: blur(18px);
}

.ps-setup-icon { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 13px; background: linear-gradient(145deg, #1687ff, #0755cf); color: #fff; }
.ps-setup-card span { display: block; color: #91a4bf; font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }
.ps-setup-card strong { display: block; margin-top: 3px; font-size: 14px; font-weight: 600; }
.ps-setup-card .ps-live-dot { width: 8px; height: 8px; border-radius: 50%; background: #53e29b; box-shadow: 0 0 12px #53e29b; }

.ps-location-pill {
  position: absolute;
  top: 49%;
  right: -28px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 11px 15px;
  border: 1px solid rgba(255,255,255,.19);
  border-radius: 999px;
  background: rgba(4,18,42,.74);
  color: white;
  font-size: 11px;
  backdrop-filter: blur(14px);
  transform: rotate(-90deg) translateX(50%);
  transform-origin: right bottom;
}

.ps-expert-badge {
  position: absolute;
  top: 24px;
  left: -38px;
  display: grid;
  place-items: center;
  width: 94px;
  height: 94px;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 50%;
  background: linear-gradient(145deg, rgba(19,139,255,.94), rgba(6,65,169,.94));
  color: white;
  box-shadow: 0 18px 45px rgba(0,88,224,.35);
  text-transform: uppercase;
}

.ps-expert-badge strong { font-size: 21px; line-height: 1; }
.ps-expert-badge span { font-size: 8px; letter-spacing: .15em; }

@media (max-width: 1199px) {
  .ps-hero { padding-top: 172px; }
  .ps-hero-grid { grid-template-columns: minmax(0, 1fr) 350px; gap: 48px; }
  .ps-trust-item { padding: 0 16px; }
  .ps-location-pill { display: none; }
}

@media (max-width: 991px) {
  .ps-hero { padding: 180px 0 80px; }
  .ps-hero-grid { grid-template-columns: 1fr; }
  .ps-hero-copy { text-align: center; }
  .ps-eyebrow, .ps-hero-actions { justify-content: center; }
  .ps-hero h1, .ps-hero-lead { margin-left: auto; margin-right: auto; }
  .ps-trust-row { justify-content: center; }
  .ps-hero-visual { width: min(520px, 88%); margin: 15px auto 0; }
}

@media (max-width: 575px) {
  .ps-hero { min-height: auto; padding: 145px 0 64px; }
  .ps-hero h1 { font-size: clamp(44px, 13.5vw, 62px); }
  .ps-hero-lead { font-size: 16px; line-height: 1.55; }
  .ps-hero-actions { flex-direction: column; }
  .ps-btn { width: 100%; }
  .ps-trust-row { flex-wrap: wrap; row-gap: 20px; }
  .ps-trust-item { width: 50%; justify-content: center; }
  .ps-trust-item:nth-child(2) { border-right: 0; }
  .ps-trust-item:last-child { width: 100%; }
  .ps-image-frame { border-radius: 150px 150px 24px 24px; }
  .ps-expert-badge { width: 88px; height: 88px; left: -20px; }
  .ps-expert-badge strong { font-size: 19px; }
  .ps-setup-card { left: 14px; right: 14px; bottom: 14px; }
}

/* Polestar final refinement pass */
.h8-price-section,
.h8-team-section { display: none !important; }

/* Keep the primary navigation refined and visually consistent. */
.tj-header-area.header-8 .mainmenu > ul > li > a {
  font-size: 13px !important;
  font-weight: 650 !important;
  letter-spacing: .015em;
}
.tj-header-area.header-8 .header-button .tj-primary-btn,
.tj-header-area.header-8 .header-button .btn_inner {
  min-height: 46px;
}
.tj-header-area.header-8 .header-button .btn_icon {
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
}
.tj-header-area.header-8 .header-button .btn_text { padding: 0 20px 0 13px; }
.tj-header-area.header-8 .header-button .btn_text span { font-size: 12px; white-space: nowrap; }

/* Compact partner strip: standard title, then logo tiles. */
.ps-authorities { padding: 64px 0 68px; background: #f5f8fc; }
.ps-authorities-heading {
  display: block;
  max-width: 780px;
  margin: 0 auto 28px;
  text-align: center;
}
.ps-authorities-heading .sub-title { margin-bottom: 10px; }
.ps-authorities-heading .sec-title {
  font-size: clamp(30px, 3vw, 44px) !important;
  line-height: 1.08;
}
.ps-authorities-heading > p { display: none; }
.ps-logo-panels { gap: 14px; }
.ps-logo-panel + .ps-logo-panel { margin-top: 8px; }
.ps-logo-panel-title { margin-bottom: 12px; }
.ps-logo-grid li { min-height: 82px; padding: 8px 12px; }
.ps-logo-grid img { height: 62px; max-width: 220px; }

/* Setup cards: remove ranking treatment and keep equal hierarchy. */
.ps-setup-option-card.is-featured { border-color: #dfe7f1; background: linear-gradient(145deg,#fff,#f8fbff); }
.ps-setup-option-card { min-height: 320px; }

/* A connected, brand-blue interactive timeline. */
.ps-journey .ps-section-kicker,
.ps-journey-detail > small { color: #55cfff; }
.ps-journey .ps-section-kicker::before { background: #2d9eff; }
.ps-journey-tabs { position: relative; padding-left: 17px; }
.ps-journey-tabs::before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 40px;
  top: 40px;
  bottom: 40px;
  width: 2px;
  background: linear-gradient(#1e90ff, rgba(30,144,255,.12));
}
.ps-journey-tabs button { z-index: 1; }
.ps-journey-tabs button.active {
  border-color: rgba(45,158,255,.55);
  background: linear-gradient(90deg,rgba(22,135,255,.22),rgba(255,255,255,.045));
  box-shadow: inset 2px 0 0 #2d9eff;
}
.ps-journey-tabs button.active .ps-journey-number {
  background: linear-gradient(145deg,#56d4ff,#147de8);
  color: white;
  box-shadow: 0 8px 22px rgba(20,125,232,.3);
}
.ps-journey-tabs button.active > i,
.ps-journey-time i { color: #58d3ff; }
.ps-journey-detail > a:hover { color: #62d7ff; }

/* Polestar about and growth sections. */
.h8-about .h8-about-banner > img { border-radius: 22px; }
.h8-about .h8-about-float-area {
  background: linear-gradient(145deg,#1687ff,#075fc9);
  border-radius: 0 18px 0 0;
}
.h8-about .check-list-one { gap: 26px; }
.tj-growth-section { position: relative; min-height: 610px; background: #06172d; }
.tj-growth-section::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(90deg,rgba(2,13,30,.22),rgba(2,13,30,.5) 46%,rgba(2,13,30,.88));
  pointer-events: none;
}
.tj-growth-section .tj-growth-bg {
  background-image: url("../images/dubai-skyline-luxury.png") !important;
  background-size: cover !important;
  background-position: center 58% !important;
  opacity: 1 !important;
}
.tj-growth-section .container { position: relative; z-index: 2; }
.tj-growth-section .growth-content {
  max-width: 540px;
  padding: 48px;
  border: 1px solid rgba(255,255,255,.17);
  border-radius: 24px;
  background: rgba(4,18,40,.72);
  box-shadow: 0 30px 80px rgba(0,0,0,.25);
  backdrop-filter: blur(16px);
}
.ps-growth-copy { margin: 18px 0 26px; color: #c3d0e2; line-height: 1.7; }

/* Case study image treatment and cleaner index. */
.ps-case-step::before,
.ps-case-story::before { display: none !important; }
.ps-case-image img { object-fit: cover; object-position: center; }
.ps-case-index { overflow: hidden; box-shadow: 0 14px 36px rgba(15,54,101,.07); }

/* FAQ conversion panel fills the left column without adding noise. */
.ps-faq .sec-heading { padding-right: 22px; }
.ps-faq-assist {
  display: grid;
  grid-template-columns: 48px 1fr 42px;
  gap: 14px;
  align-items: center;
  margin-top: 38px;
  padding: 18px;
  border: 1px solid #d5e4f5;
  border-radius: 18px;
  background: rgba(255,255,255,.88);
  box-shadow: 0 18px 48px rgba(18,65,122,.09);
}
.ps-faq-assist > span,
.ps-faq-assist > a { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; }
.ps-faq-assist > span { background: linear-gradient(145deg,#56d4ff,#147de8); color: white; }
.ps-faq-assist > a { width: 42px; height: 42px; background: #081b37; color: white; }
.ps-faq-assist small { display: block; color: #788aa2; font-size: 10px; text-transform: uppercase; letter-spacing: .09em; }
.ps-faq-assist strong { display: block; margin-top: 3px; color: #0a1b34; font-size: 13px; line-height: 1.35; }

/* Testimonials and editorial content feel native to Polestar. */
.h8-testimonial { background: linear-gradient(145deg,#eef4fb,#e5edf7); }
.h8-testimonial-item .author-images { display: grid; place-items: center; background: linear-gradient(145deg,#4dcbff,#1478e8); }
.h8-testimonial-item .author-images::before { content: "“"; color: white; font-size: 34px; line-height: 1; }
.h8-testimonial-item .desc p { font-size: 14px; line-height: 1.65; }
.h8-blog-section .blog-images img { width: 100%; height: 100%; object-fit: cover; }
.h8-blog-item { border-radius: 18px; overflow: hidden; }

@media (max-width: 991px) {
  .tj-header-area.header-8 .mainmenu > ul > li > a { font-size: inherit !important; }
  .ps-authorities { padding: 54px 0; }
  .ps-government-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .tj-growth-section .growth-content { margin: 60px 0; }
}
@media (max-width: 767px) {
  .ps-government-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ps-logo-grid li { min-height: 76px; }
  .ps-logo-grid img { height: 54px; }
  .ps-journey-tabs { padding-left: 0; }
  .ps-journey-tabs::before { left: 24px; }
  .tj-growth-section { min-height: 520px; }
  .tj-growth-section .growth-content { padding: 30px 24px; }
}

/* Premium case studies */
.ps-old-case-section { display: none !important; }

.ps-cases {
  position: relative;
  overflow: hidden;
  padding: 115px 0;
  background: #f4f7fb;
}

.ps-cases::before {
  content: "";
  position: absolute;
  width: 520px;
  height: 520px;
  top: -300px;
  right: -190px;
  border: 1px solid rgba(20,116,232,.1);
  border-radius: 50%;
  box-shadow: 0 0 0 70px rgba(20,116,232,.025), 0 0 0 140px rgba(20,116,232,.018);
}

.ps-cases-container { position: relative; z-index: 1; max-width: 1320px; }

.ps-cases-heading {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(300px, .55fr);
  gap: 60px;
  align-items: end;
  margin-bottom: 46px;
}

.ps-cases-kicker {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
  color: #1677e8;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.ps-cases-kicker::before { content: ""; width: 32px; height: 1px; background: #1677e8; }

.ps-cases-heading h2 {
  margin: 0;
  color: #08162b;
  font-size: clamp(42px, 4.2vw, 68px);
  font-weight: 500;
  line-height: 1.03;
  letter-spacing: -.05em;
}

.ps-cases-heading h2 span { color: #71829c; }
.ps-cases-heading > p { max-width: 420px; margin: 0 0 5px; color: #66768e; font-size: 15px; line-height: 1.65; }

.ps-featured-case {
  display: grid;
  grid-template-columns: minmax(520px, 1.08fr) minmax(380px, .92fr);
  overflow: hidden;
  min-height: 660px;
  border-radius: 26px;
  background: #071327;
  box-shadow: 0 28px 70px rgba(15,35,66,.16);
  transition: opacity .18s ease, transform .18s ease;
}

.ps-featured-case.is-changing { opacity: .42; transform: translateY(4px); }

.ps-case-content {
  position: relative;
  overflow: hidden;
  padding: 54px 58px;
  background:
    radial-gradient(circle at 0 0, rgba(37,116,255,.19), transparent 34%),
    linear-gradient(145deg, #0b1d38, #071327 65%);
}

.ps-case-content::after {
  content: "";
  position: absolute;
  width: 320px;
  height: 320px;
  right: -210px;
  bottom: -210px;
  border: 1px solid rgba(77,193,255,.14);
  border-radius: 50%;
  box-shadow: 0 0 0 55px rgba(77,193,255,.025), 0 0 0 110px rgba(77,193,255,.018);
}

.ps-case-topline { display: flex; justify-content: space-between; align-items: center; color: #8ea3c0; font-size: 10px; font-weight: 600; letter-spacing: .13em; text-transform: uppercase; }
.ps-case-sector { padding: 7px 10px; border: 1px solid rgba(255,255,255,.1); border-radius: 999px; background: rgba(255,255,255,.04); color: #b8c9df; }

.ps-case-content h3 {
  max-width: 620px;
  margin: 28px 0 22px;
  color: white;
  font-size: clamp(30px, 2.6vw, 45px);
  font-weight: 500;
  line-height: 1.09;
  letter-spacing: -.04em;
}

.ps-client-pill { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 28px; padding: 7px 13px 7px 7px; border: 1px solid rgba(255,255,255,.09); border-radius: 999px; background: rgba(255,255,255,.045); }
.ps-client-pill > span { display: grid; place-items: center; width: 31px; height: 31px; border-radius: 50%; background: linear-gradient(145deg, #418fff, #2155c9); color: white; font-size: 10px; font-weight: 700; }
.ps-client-pill div { display: flex; align-items: center; gap: 7px; }
.ps-client-pill small { color: #7587a2; font-size: 9px; text-transform: uppercase; letter-spacing: .08em; }
.ps-client-pill strong { color: #eaf1fa; font-size: 12px; font-weight: 600; }

.ps-case-story { position: relative; display: grid; gap: 9px; }
.ps-case-story::before { content: ""; position: absolute; top: 27px; bottom: 27px; left: 21px; width: 1px; background: linear-gradient(#e4b45f, #3786ff, #58c994); opacity: .42; }

.ps-case-step {
  --step-color: #3786ff;
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 43px 1fr;
  gap: 15px;
  align-items: center;
  padding: 14px 17px 14px 13px;
  border: 1px solid rgba(255,255,255,.075);
  border-radius: 14px;
  background: linear-gradient(105deg, rgba(255,255,255,.058), rgba(255,255,255,.022));
}

.ps-case-challenge { --step-color: #e4b45f; }
.ps-case-solution { --step-color: #3786ff; }
.ps-case-outcome { --step-color: #58c994; }
.ps-case-number { display: grid; place-items: center; width: 43px; height: 43px; border: 1px solid color-mix(in srgb, var(--step-color), transparent 48%); border-radius: 12px; background: color-mix(in srgb, var(--step-color), transparent 87%); color: var(--step-color); font-size: 10px; font-weight: 700; }
.ps-case-step small { display: block; margin-bottom: 4px; color: var(--step-color); font-size: 9px; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.ps-case-step p { margin: 0; color: #c7d2e1; font-size: 13px; line-height: 1.43; }

.ps-case-link { position: relative; z-index: 2; display: inline-flex; align-items: center; gap: 10px; margin-top: 25px; color: white; font-size: 12px; font-weight: 600; }
.ps-case-link:hover { color: #62b8ff; }

.ps-case-image { position: relative; min-height: 100%; overflow: hidden; background: #173250; }
.ps-case-image > img { width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform .7s ease; }
.ps-featured-case:hover .ps-case-image > img { transform: scale(1.025); }
.ps-case-image-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(7,19,39,.3), transparent 20%), linear-gradient(0deg, rgba(5,16,34,.72), transparent 46%); }

.ps-case-result { position: absolute; left: 28px; bottom: 28px; min-width: 220px; padding: 18px 19px; border: 1px solid rgba(255,255,255,.19); border-radius: 16px; background: rgba(5,18,40,.73); color: white; backdrop-filter: blur(16px); }
.ps-case-result span { display: block; margin-bottom: 6px; color: #7fd8b0; font-size: 9px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.ps-case-result strong { display: block; font-size: 20px; font-weight: 600; letter-spacing: -.02em; }
.ps-case-result small { color: #aebed2; font-size: 11px; }
.ps-case-location { position: absolute; top: 25px; right: 25px; padding: 9px 12px; border: 1px solid rgba(255,255,255,.18); border-radius: 999px; background: rgba(5,18,40,.55); color: white; font-size: 10px; backdrop-filter: blur(12px); }
.ps-case-location i { margin-right: 5px; color: #62b8ff; }

.ps-case-index { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 17px; border: 1px solid #dce4ef; border-radius: 16px; background: white; }
.ps-case-index button { position: relative; display: grid; grid-template-columns: 30px 1fr; column-gap: 11px; padding: 20px 23px; border: 0; border-right: 1px solid #e5eaf1; background: transparent; color: #14233a; text-align: left; cursor: pointer; }
.ps-case-index button:last-child { border-right: 0; }
.ps-case-index button.active::before { content: ""; position: absolute; top: -1px; left: 20px; right: 20px; height: 2px; background: #1677e8; }
.ps-case-index button:hover { background: #f7faff; }
.ps-case-index button:focus-visible { z-index: 2; outline: 2px solid #1677e8; outline-offset: -2px; }
.ps-case-index button > span { grid-row: span 2; color: #1677e8; font-size: 11px; font-weight: 700; }
.ps-case-index strong { font-size: 13px; font-weight: 700; }
.ps-case-index small { margin-top: 3px; color: #8794a6; font-size: 10px; }

@media (max-width: 991px) {
  .ps-cases { padding: 85px 0; }
  .ps-cases-heading { grid-template-columns: 1fr; gap: 18px; }
  .ps-featured-case { grid-template-columns: 1fr; }
  .ps-case-image { min-height: 520px; }
}

@media (max-width: 767px) {
  .ps-cases { padding: 70px 0; }
  .ps-case-content { padding: 38px 24px; }
  .ps-case-image { min-height: 430px; }
  .ps-case-index { grid-template-columns: 1fr; }
  .ps-case-index button { border-right: 0; border-bottom: 1px solid #e5eaf1; }
  .ps-case-index button:last-child { border-bottom: 0; }
}

@media (max-width: 480px) {
  .ps-cases-heading h2 { font-size: 40px; }
  .ps-case-topline { align-items: flex-start; gap: 12px; }
  .ps-case-content h3 { font-size: 29px; }
  .ps-case-step { grid-template-columns: 38px 1fr; padding: 12px; }
  .ps-case-number { width: 38px; height: 38px; }
  .ps-case-story::before { left: 18px; }
  .ps-case-image { min-height: 380px; }
  .ps-case-result { left: 15px; right: 15px; bottom: 15px; }
}

/* Luxury skyline hero enhancement */
.ps-hero {
  min-height: 800px;
  padding: 190px 0 78px;
  background-image:
    linear-gradient(90deg, rgba(1,8,22,.98) 0%, rgba(2,13,32,.91) 38%, rgba(3,16,38,.42) 67%, rgba(2,10,26,.12) 100%),
    linear-gradient(0deg, rgba(2,10,25,.82) 0%, transparent 42%),
    url("../images/dubai-skyline-luxury.png");
  background-size: cover;
  background-position: center;
}

.ps-hero::before {
  opacity: .36;
  animation: psGridDrift 18s linear infinite;
}

.ps-hero::after {
  width: 1px;
  height: 210%;
  right: 28%;
  top: -55%;
  border: 0;
  border-radius: 0;
  background: linear-gradient(transparent, rgba(108,206,255,.5), transparent);
  box-shadow: 0 0 34px rgba(51,158,255,.3);
  transform: rotate(24deg);
  animation: psLightSweep 7s ease-in-out infinite;
}

.ps-hero-grid { grid-template-columns: minmax(0, 1.05fr) minmax(350px, .62fr); }
.ps-hero-copy { animation: psHeroReveal .9s cubic-bezier(.2,.7,.2,1) both; }
.ps-eyebrow { border-color: rgba(64,168,255,.36); background: rgba(22,119,232,.12); color: #b9ddff; backdrop-filter: blur(12px); }
.ps-eyebrow-dot { background: #61d8ff; box-shadow: 0 0 14px #61d8ff; }
.ps-hero h1 { max-width: 720px; font-size: clamp(51px, 4.35vw, 76px); text-shadow: 0 10px 38px rgba(0,0,0,.28); }
.ps-hero h1 span { background: linear-gradient(100deg,#70dfff 0%,#1687ff 48%,#a6ecff 100%); -webkit-background-clip: text; background-clip: text; }
.ps-hero-lead { color: #c1cad9; text-shadow: 0 2px 14px rgba(0,0,0,.5); }
.ps-hero-services { display: flex; flex-wrap: wrap; gap: 8px 16px; max-width: 690px; margin-top: 17px; color: #e4ebf5; font-size: 11px; font-weight: 600; letter-spacing: .035em; }
.ps-hero-services span { position: relative; padding-left: 12px; }
.ps-hero-services span::before { content: ""; position: absolute; top: 50%; left: 0; width: 4px; height: 4px; border-radius: 50%; background: #61d8ff; box-shadow: 0 0 8px rgba(97,216,255,.62); transform: translateY(-50%); }
.ps-btn-primary { background: linear-gradient(110deg,#6bdcff,#1687ff); color: white; box-shadow: 0 16px 38px rgba(20,123,237,.28); }
.ps-btn-primary:hover { color: white; box-shadow: 0 20px 46px rgba(34,151,255,.4); }
.ps-btn-ghost { border-color: rgba(255,255,255,.25); background: rgba(4,15,35,.34); backdrop-filter: blur(14px); }
.ps-trust-row { border-top-color: rgba(255,255,255,.15); }
.ps-trust-item span { color: #aeb9ca; }

.ps-hero-visual { max-width: 410px; perspective: 1100px; }

.ps-luxury-card {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 24px;
  background: linear-gradient(145deg, rgba(7,24,53,.8), rgba(3,13,31,.58));
  color: white;
  box-shadow: 0 35px 90px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.12);
  backdrop-filter: blur(22px) saturate(140%);
  transform: rotateY(-4deg) rotateX(2deg);
  transition: transform .5s cubic-bezier(.2,.75,.2,1), border-color .4s ease;
  animation: psCardFloat 5s ease-in-out infinite;
}

.ps-luxury-card:hover { transform: rotateY(0) rotateX(0) translateY(-8px); border-color: rgba(97,216,255,.48); }
.ps-luxury-card::before { content: ""; position: absolute; inset: -100% 50% auto -30%; height: 220%; background: linear-gradient(110deg, transparent 40%, rgba(255,255,255,.1) 50%, transparent 60%); transform: rotate(12deg); animation: psCardShine 6s ease-in-out infinite; pointer-events: none; }
.ps-luxury-card-head { position: relative; display: flex; justify-content: space-between; color: #aebbd0; font-size: 9px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.ps-card-status { display: inline-block; width: 7px; height: 7px; margin-right: 8px; border-radius: 50%; background: #66e2a3; box-shadow: 0 0 12px #66e2a3; }
.ps-luxury-card h2 { position: relative; margin: 27px 0 25px; color: #fff; font-size: 30px; font-weight: 500; line-height: 1.12; letter-spacing: -.035em; text-transform: none; }
.ps-launch-steps { position: relative; display: grid; gap: 8px; }
.ps-launch-steps > div { display: grid; grid-template-columns: 40px 1fr; gap: 12px; align-items: center; padding: 11px; border: 1px solid rgba(255,255,255,.075); border-radius: 13px; background: rgba(255,255,255,.035); transition: background .25s ease, transform .25s ease; }
.ps-launch-steps > div:hover { background: rgba(255,255,255,.08); transform: translateX(4px); }
.ps-launch-steps > div > span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 11px; background: rgba(255,255,255,.07); color: #8da0ba; }
.ps-launch-steps .is-complete > span { background: rgba(92,210,151,.15); color: #65dda2; }
.ps-launch-steps .is-active { border-color: rgba(66,174,255,.38); background: linear-gradient(90deg,rgba(22,135,255,.2),rgba(255,255,255,.035)); }
.ps-launch-steps .is-active > span { background: linear-gradient(145deg,#65dcff,#147de8); color: white; box-shadow: 0 8px 22px rgba(20,125,232,.28); }
.ps-launch-steps small { display: block; color: #70829d; font-size: 8px; letter-spacing: .12em; }
.ps-launch-steps strong { display: block; margin-top: 2px; color: #dfe7f1; font-size: 12px; font-weight: 600; }
.ps-luxury-card-foot { position: relative; display: flex; justify-content: space-between; align-items: center; margin-top: 19px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.1); }
.ps-luxury-card-foot small { display: block; color: #7f91ab; font-size: 8px; letter-spacing: .1em; text-transform: uppercase; }
.ps-luxury-card-foot strong { display: block; margin-top: 3px; font-size: 13px; }
.ps-luxury-card-foot a { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; background: linear-gradient(145deg,#63dcff,#157ee9); color: white; }

@keyframes psHeroReveal { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: none; } }
@keyframes psCardFloat { 0%,100% { translate: 0 0; } 50% { translate: 0 -8px; } }
@keyframes psCardShine { 0%,58% { left: -80%; } 82%,100% { left: 95%; } }
@keyframes psGridDrift { from { background-position: 0 0; } to { background-position: 74px 74px; } }
@keyframes psLightSweep { 0%,100% { opacity: .15; transform: rotate(24deg) translateX(-90px); } 50% { opacity: .7; transform: rotate(24deg) translateX(120px); } }

@media (prefers-reduced-motion: reduce) {
  .ps-hero::before, .ps-hero::after, .ps-hero-copy, .ps-luxury-card, .ps-luxury-card::before { animation: none !important; }
  .ps-featured-case { transition: none; }
}

@media (max-width: 991px) {
  .ps-hero { background-position: 62% center; }
  .ps-hero-grid { grid-template-columns: 1fr; }
  .ps-hero-visual { width: min(410px, 88%); margin: 35px auto 0; }
}

@media (max-width: 575px) {
  .ps-hero { padding-top: 155px; background-position: 67% center; }
  .ps-hero h1 { font-size: clamp(44px, 13vw, 60px); }
  .ps-luxury-card { padding: 22px; transform: none; }
}

/* Hero visibility and stat-card refinements */
.ps-hero {
  background-image:
    linear-gradient(90deg, rgba(1,8,22,.97) 0%, rgba(2,13,32,.86) 35%, rgba(3,16,38,.25) 62%, rgba(2,10,26,.03) 100%),
    linear-gradient(0deg, rgba(2,10,25,.64) 0%, transparent 38%),
    url("../images/dubai-skyline-luxury.png");
  background-position: center 42%;
}

.ps-hero-grid { grid-template-columns: minmax(0, 1.2fr) minmax(300px, .48fr); gap: clamp(70px, 8vw, 130px); }
.ps-hero-visual { max-width: 350px; margin-right: 0; }
.ps-luxury-card { padding: 24px; background: linear-gradient(145deg, rgba(7,24,53,.7), rgba(3,13,31,.44)); }
.ps-luxury-card h2 { margin: 23px 0 21px; font-size: 27px; }
.ps-launch-steps > div { grid-template-columns: 36px 1fr; padding: 9px; }
.ps-launch-steps > div > span { width: 36px; height: 36px; }

.ps-trust-row {
  gap: 11px;
  max-width: 660px;
  margin-top: 30px;
  padding-top: 0;
  border-top: 0;
}

.ps-trust-item {
  position: relative;
  flex: 1;
  min-height: 86px;
  gap: 12px;
  padding: 15px 17px !important;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.15) !important;
  border-radius: 15px;
  background: linear-gradient(130deg, rgba(255,255,255,.105), rgba(255,255,255,.035));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.09), 0 12px 28px rgba(0,0,0,.15);
  backdrop-filter: blur(14px);
  transition: transform .3s ease, border-color .3s ease, background .3s ease;
}

.ps-trust-item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 18px;
  width: 38px;
  height: 2px;
  background: linear-gradient(90deg,#61d8ff,#1687ff);
  box-shadow: 0 0 12px rgba(61,195,255,.5);
}

.ps-trust-item:hover { transform: translateY(-4px); border-color: rgba(239,204,120,.35) !important; background: linear-gradient(130deg, rgba(255,255,255,.14), rgba(255,255,255,.05)); }
.ps-trust-item strong { flex: 0 0 auto; color: #c7efff; font-size: 31px; font-weight: 600; line-height: 1; }
.ps-trust-item span { color: #c1ccdb; font-size: 11px; line-height: 1.35; }

@media (max-width: 1199px) {
  .ps-hero-grid { grid-template-columns: minmax(0, 1fr) 320px; gap: 48px; }
  .ps-hero-visual { max-width: 320px; }
  .ps-trust-item { min-height: 80px; padding: 13px !important; }
  .ps-trust-item strong { font-size: 24px; }
}

@media (max-width: 991px) {
  .ps-hero { background-position: 64% center; }
  .ps-hero-grid { grid-template-columns: 1fr; }
  .ps-hero-visual { max-width: 370px; margin: 35px auto 0; }
  .ps-trust-row { margin-left: auto; margin-right: auto; }
}

@media (max-width: 575px) {
  .ps-hero-services { justify-content: center; }
  .ps-trust-row { gap: 8px; }
  .ps-trust-item { min-width: calc(50% - 4px); }
  .ps-trust-item:last-child { min-width: 100%; }
  .ps-trust-item strong { font-size: 25px; }
}

/* Authorities and institutions */
.ps-authorities { position: relative; overflow: hidden; padding: 105px 0; background: #f7f9fc; }
.ps-authorities::before { content: ""; position: absolute; width: 460px; height: 460px; right: -270px; top: -250px; border: 1px solid rgba(20,119,232,.1); border-radius: 50%; box-shadow: 0 0 0 65px rgba(20,119,232,.025), 0 0 0 130px rgba(20,119,232,.018); }
.ps-authorities-container { position: relative; z-index: 1; max-width: 1320px; }
.ps-authorities-heading { display: grid; grid-template-columns: 1fr minmax(320px,.65fr); gap: 80px; align-items: end; margin-bottom: 48px; }
.ps-section-kicker { display: flex; align-items: center; gap: 10px; margin-bottom: 15px; color: #1477e8; font-size: 10px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.ps-section-kicker::before { content: ""; width: 30px; height: 1px; background: #1477e8; }
.ps-authorities-heading h2, .ps-journey-heading h2 { margin: 0; color: #07152b; font-size: clamp(40px,4vw,64px); font-weight: 500; line-height: 1.04; letter-spacing: -.045em; }
.ps-authorities-heading h2 span, .ps-journey-heading h2 span { color: #74859e; }
.ps-authorities-heading p { margin: 0 0 4px; color: #607087; font-size: 15px; line-height: 1.7; }
.ps-logo-panels { display: grid; gap: 16px; }
.ps-logo-panel { padding: 25px 30px 30px; border: 1px solid #d9e4f2; border-radius: 22px; background: rgba(255,255,255,.86); box-shadow: 0 16px 50px rgba(27,57,98,.07), inset 0 1px 0 white; transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease; }
.ps-logo-panel:hover { transform: translateY(-4px); border-color: #b8d4f5; box-shadow: 0 22px 60px rgba(27,57,98,.11); }
.ps-logo-panel-title { display: flex; align-items: center; justify-content: center; gap: 18px; margin-bottom: 19px; color: #10275d; }
.ps-logo-panel-title span { width: 85px; height: 1px; background: linear-gradient(90deg,transparent,#1d71e8); }
.ps-logo-panel-title span:last-child { background: linear-gradient(90deg,#1d71e8,transparent); }
.ps-logo-panel-title strong { font-size: 11px; font-weight: 700; letter-spacing: .17em; text-transform: uppercase; }
.ps-logo-grid { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.ps-partner-grid { grid-template-columns: repeat(3,minmax(0,1fr)); max-width: 900px; margin: 0 auto; }
.ps-government-grid { grid-template-columns: repeat(5,minmax(0,1fr)); }
.ps-logo-grid li { display: grid; place-items: center; min-height: 116px; padding: 10px; border: 1px solid #e7edf5; border-radius: 13px; background: white; transition: transform .28s ease,border-color .28s ease,box-shadow .28s ease; }
.ps-logo-grid li:hover { transform: translateY(-4px); border-color: #bcd8f8; box-shadow: 0 12px 30px rgba(26,83,154,.1); }
.ps-logo-grid img { display: block; width: 100%; max-width: 260px; height: 90px; object-fit: contain; mix-blend-mode: multiply; filter: saturate(.9); transition: filter .28s ease,transform .28s ease; }
.ps-logo-grid li:hover img { filter: saturate(1.08); transform: scale(1.025); }

/* Interactive setup journey */
.ps-journey { position: relative; overflow: hidden; padding: 110px 0; background: linear-gradient(145deg,#071327,#0a1c38); }
.ps-journey::before { content: ""; position: absolute; inset: 0; opacity: .22; background-image: linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(90deg,black,transparent); }
.ps-journey-container { position: relative; z-index: 1; max-width: 1320px; }
.ps-journey-heading { max-width: 780px; margin-bottom: 46px; }
.ps-journey .ps-section-kicker { color: #e7c16b; }
.ps-journey .ps-section-kicker::before { background: #e7c16b; }
.ps-journey-heading h2 { color: white; }
.ps-journey-heading h2 span { color: #8da2c0; }
.ps-journey-heading > p { max-width: 650px; margin: 20px 0 0; color: #9dadc3; font-size: 15px; line-height: 1.65; }
.ps-journey-layout { display: grid; grid-template-columns: minmax(390px,.85fr) minmax(460px,1.15fr); gap: 18px; }
.ps-journey-tabs { display: grid; gap: 8px; }
.ps-journey-tabs button { display: grid; grid-template-columns: 48px 1fr 30px; gap: 14px; align-items: center; min-height: 80px; padding: 13px 17px; border: 1px solid rgba(255,255,255,.085); border-radius: 15px; background: rgba(255,255,255,.035); color: white; text-align: left; cursor: pointer; transition: background .28s ease,border-color .28s ease,transform .28s ease; }
.ps-journey-tabs button:hover { background: rgba(255,255,255,.075); transform: translateX(4px); }
.ps-journey-tabs button.active { border-color: rgba(226,185,91,.42); background: linear-gradient(90deg,rgba(207,158,59,.18),rgba(255,255,255,.045)); box-shadow: inset 2px 0 0 #e3bb63; }
.ps-journey-number { display: grid; place-items: center; width: 48px; height: 48px; border: 1px solid rgba(255,255,255,.1); border-radius: 13px; background: rgba(255,255,255,.055); color: #7790b1; font-size: 11px; font-weight: 700; }
.ps-journey-tabs button.active .ps-journey-number { background: linear-gradient(145deg,#ebca7a,#bc8b31); color: #10192b; }
.ps-journey-tab-copy small { display: block; color: #667b99; font-size: 8px; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.ps-journey-tab-copy strong { display: block; margin-top: 4px; color: #e5edf7; font-size: 14px; font-weight: 600; }
.ps-journey-tabs button > i { justify-self: end; color: #617592; transition: transform .25s ease,color .25s ease; }
.ps-journey-tabs button.active > i { color: #e6c36f; transform: translateX(3px); }
.ps-journey-detail { position: relative; overflow: hidden; min-height: 432px; padding: 38px 42px; border: 1px solid rgba(255,255,255,.13); border-radius: 23px; background: radial-gradient(circle at 100% 0,rgba(33,126,255,.2),transparent 42%),linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.025)); color: white; box-shadow: inset 0 1px 0 rgba(255,255,255,.08),0 28px 70px rgba(0,0,0,.2); transition: opacity .15s ease,transform .15s ease; }
.ps-journey-detail.is-changing { opacity: .4; transform: translateY(4px); }
.ps-journey-detail-top { display: flex; justify-content: space-between; color: #788daa; font-size: 9px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.ps-journey-time { padding: 7px 10px; border: 1px solid rgba(255,255,255,.1); border-radius: 999px; background: rgba(255,255,255,.04); color: #a9bad1; }
.ps-journey-time i { margin-right: 5px; color: #e7c16b; }
.ps-journey-icon { display: grid; place-items: center; width: 58px; height: 58px; margin: 31px 0 22px; border-radius: 16px; background: linear-gradient(145deg,#278dff,#0754c4); color: white; font-size: 21px; box-shadow: 0 14px 30px rgba(12,98,216,.28); }
.ps-journey-detail > small { color: #e5bf67; font-size: 9px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.ps-journey-detail h3 { max-width: 620px; margin: 8px 0 13px; color: white; font-size: clamp(27px,2.4vw,39px); font-weight: 500; line-height: 1.1; letter-spacing: -.035em; }
.ps-journey-detail > p { max-width: 650px; margin: 0; color: #aab8cc; font-size: 14px; line-height: 1.58; }
.ps-journey-detail ul { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; margin: 25px 0; padding: 0; list-style: none; }
.ps-journey-detail li { padding: 10px; border: 1px solid rgba(255,255,255,.075); border-radius: 10px; background: rgba(255,255,255,.035); color: #c2cede; font-size: 10px; line-height: 1.4; }
.ps-journey-detail li i { margin-right: 5px; color: #59d395; }
.ps-journey-detail > a { display: inline-flex; align-items: center; gap: 9px; color: white; font-size: 12px; font-weight: 600; }
.ps-journey-detail > a:hover { color: #e7c16b; }

@media (max-width: 991px) {
  .ps-authorities,.ps-journey { padding: 80px 0; }
  .ps-authorities-heading { grid-template-columns: 1fr; gap: 20px; }
  .ps-journey-layout { grid-template-columns: 1fr; }
  .ps-government-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

@media (max-width: 767px) {
  .ps-authorities-heading h2,.ps-journey-heading h2 { font-size: 42px; }
  .ps-logo-panel { padding: 20px 15px; }
  .ps-logo-panel-title span { width: 45px; }
  .ps-journey-detail { padding: 30px 24px; }
  .ps-journey-detail ul { grid-template-columns: 1fr; }
  .ps-government-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 480px) {
  .ps-authorities,.ps-journey { padding: 65px 0; }
  .ps-authorities-heading h2,.ps-journey-heading h2 { font-size: 37px; }
  .ps-logo-panel-title { gap: 10px; }
  .ps-logo-panel-title strong { font-size: 9px; }
  .ps-logo-panel-title span { width: 28px; }
  .ps-journey-tabs button { grid-template-columns: 42px 1fr 20px; min-height: 72px; padding: 11px; }
  .ps-journey-number { width: 42px; height: 42px; }
  .ps-partner-grid { grid-template-columns: 1fr; }
  .ps-logo-grid li { min-height: 104px; }
}

/* Hero brand palette: Polestar blue and cyan */
.ps-eyebrow { border-color: rgba(64,168,255,.36); background: rgba(22,119,232,.12); color: #b9ddff; }
.ps-eyebrow-dot { background: #61d8ff; box-shadow: 0 0 14px #61d8ff; }
.ps-hero h1 span { background: linear-gradient(100deg,#70dfff 0%,#1687ff 48%,#a6ecff 100%); -webkit-background-clip: text; background-clip: text; }
.ps-btn-primary { background: linear-gradient(110deg,#6bdcff,#1687ff); color: white; box-shadow: 0 16px 38px rgba(20,123,237,.28); }
.ps-btn-primary:hover { color: white; box-shadow: 0 20px 46px rgba(34,151,255,.4); }
.ps-hero-services span::before { background: #61d8ff; box-shadow: 0 0 8px rgba(97,216,255,.62); }
.ps-launch-steps .is-active { border-color: rgba(66,174,255,.38); background: linear-gradient(90deg,rgba(22,135,255,.2),rgba(255,255,255,.035)); }
.ps-launch-steps .is-active > span { background: linear-gradient(145deg,#65dcff,#147de8); color: white; box-shadow: 0 8px 22px rgba(20,125,232,.28); }
.ps-luxury-card:hover { border-color: rgba(97,216,255,.48); }
.ps-luxury-card-foot a { background: linear-gradient(145deg,#63dcff,#157ee9); color: white; }
.ps-trust-item::before { background: linear-gradient(90deg,#61d8ff,#1687ff); box-shadow: 0 0 12px rgba(61,195,255,.5); }
.ps-trust-item:hover { border-color: rgba(77,181,255,.42) !important; }
.ps-trust-item strong { color: #c7efff; }

/* Logo section: transparent canvas with individual white logo tiles */
.ps-authorities { background: #f5f8fc; }
.ps-authorities-heading.sec-heading { max-width: none; }
.ps-authorities-heading .sub-title { margin-bottom: 14px; }
.ps-authorities-heading .sec-title { color: #07152b; }
.ps-authorities-heading .sec-title span { color: #74859e; }
.ps-logo-panel { padding: 8px 0 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.ps-logo-panel:hover { transform: none; border-color: transparent; box-shadow: none; }
.ps-logo-panel + .ps-logo-panel { margin-top: 26px; }
.ps-logo-panel-title { margin-bottom: 16px; }

/* Setup options */
.ps-setup-options { position: relative; overflow: hidden; padding: 110px 0; background: white; }
.ps-setup-options::before { content: ""; position: absolute; width: 420px; height: 420px; left: -260px; bottom: -270px; border: 1px solid rgba(22,135,255,.1); border-radius: 50%; box-shadow: 0 0 0 65px rgba(22,135,255,.025),0 0 0 130px rgba(22,135,255,.018); }
.ps-setup-options-container { position: relative; z-index: 1; max-width: 1320px; }
.ps-setup-options-heading { max-width: 750px; margin: 0 auto 44px; }
.ps-setup-options-heading .sub-title { margin-bottom: 13px; }
.ps-setup-options-heading > p { max-width: 650px; margin: 18px auto 0; color: #6c7c92; font-size: 14px; line-height: 1.65; }
.ps-setup-options-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.ps-setup-option-card { position: relative; overflow: hidden; min-height: 350px; padding: 35px; border: 1px solid #dfe7f1; border-radius: 20px; background: linear-gradient(145deg,#fff,#f8fbff); box-shadow: 0 18px 50px rgba(18,52,94,.07); transition: transform .35s ease,border-color .35s ease,box-shadow .35s ease; }
.ps-setup-option-card::after { content: ""; position: absolute; right: -80px; bottom: -85px; width: 170px; height: 170px; border: 1px solid rgba(22,135,255,.09); border-radius: 50%; box-shadow: 0 0 0 35px rgba(22,135,255,.022); }
.ps-setup-option-card:hover { transform: translateY(-7px); border-color: #b9d8fb; box-shadow: 0 26px 65px rgba(18,70,137,.13); }
.ps-setup-option-card.is-featured { border-color: rgba(22,135,255,.32); background: radial-gradient(circle at 100% 0,rgba(54,165,255,.12),transparent 42%),linear-gradient(145deg,#fff,#f3f9ff); }
.ps-setup-option-number { position: absolute; top: 25px; right: 27px; color: #d4dfed; font-size: 34px; font-weight: 500; line-height: 1; }
.ps-setup-option-badge { position: absolute; top: 0; left: 32px; padding: 7px 12px; border-radius: 0 0 9px 9px; background: #1687ff; color: white; font-size: 8px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.ps-setup-option-icon { display: grid; place-items: center; width: 62px; height: 62px; margin-bottom: 30px; border-radius: 17px; background: linear-gradient(145deg,#64dcff,#167fe9); color: white; font-size: 23px; box-shadow: 0 14px 30px rgba(22,126,232,.2); }
.ps-setup-option-card h3 { margin: 0 0 13px; color: #0a1930; font-size: 23px; font-weight: 600; letter-spacing: -.03em; }
.ps-setup-option-card p { max-width: 330px; margin: 0; color: #708096; font-size: 13px; line-height: 1.6; }

/* Unified premium button language */
.ps-btn:not(.ps-btn-whatsapp),.ps-premium-link,.ps-case-link,.ps-journey-detail > a { position: relative; min-height: 50px; padding: 5px 19px 5px 5px; border-radius: 999px; }
.ps-btn:not(.ps-btn-whatsapp)::before,.ps-premium-link::before,.ps-case-link::before,.ps-journey-detail > a::before { content: "↗"; display: grid; place-items: center; flex: 0 0 auto; width: 40px; height: 40px; margin-right: 10px; border-radius: 50%; background: #1687ff; color: white; font-size: 15px; transition: transform .28s ease,background .28s ease; }
.ps-btn:not(.ps-btn-whatsapp):hover::before,.ps-premium-link:hover::before,.ps-case-link:hover::before,.ps-journey-detail > a:hover::before { transform: rotate(45deg); background: #0a5fc6; }
.ps-btn > .fa-arrow-up-right { display: none; }
.ps-premium-link { position: absolute; z-index: 2; left: 30px; bottom: 27px; display: inline-flex; align-items: center; border: 1px solid #dce6f2; background: white; color: #0a1930; font-size: 12px; font-weight: 700; box-shadow: 0 9px 24px rgba(15,54,101,.08); }
.ps-premium-link:hover { color: #0a1930; border-color: #b8d6f8; }
.ps-case-link,.ps-journey-detail > a { display: inline-flex; align-items: center; width: fit-content; border: 1px solid rgba(255,255,255,.14); background: rgba(255,255,255,.055); }
.ps-case-link > i,.ps-journey-detail > a > i { display: none; }
.tj-primary-btn { filter: drop-shadow(0 9px 18px rgba(12,76,151,.1)); }
.tj-primary-btn .btn_inner { border-radius: 999px; }
.tj-primary-btn .btn_inner .btn_icon { background: linear-gradient(145deg,#60d8ff,#167fe9); }

/* Premium transparent topbar */
.tj-header-area.header-8 .header-topbar { position: relative; border-bottom: 1px solid rgba(255,255,255,.1); background: rgba(3,14,34,.54) !important; box-shadow: inset 0 -1px 0 rgba(66,169,255,.06); backdrop-filter: blur(18px) saturate(135%); }
.tj-header-area.header-8 .header-topbar::after { content: ""; position: absolute; left: 8%; right: 8%; bottom: -1px; height: 1px; background: linear-gradient(90deg,transparent,rgba(75,184,255,.45),transparent); }
.tj-header-area.header-8 .topbar_note,.tj-header-area.header-8 .topbar_infos { color: #c7d4e6; }
.tj-header-area.header-8 .topbar_note > i,.tj-header-area.header-8 .topbar_infos i { color: #66d8ff; }
.tj-header-area.header-8 .topbar_note a { color: white; }
.tj-header-area.header-8 .topbar_infos .info_item + .info_item { border-left-color: rgba(255,255,255,.13); }

/* Premium FAQ */
.ps-faq { position: relative; overflow: hidden; background: linear-gradient(145deg,#f7faff,#eef4fb); }
.ps-faq::before { content: "FAQ"; position: absolute; left: -18px; bottom: -50px; color: rgba(17,104,205,.035); font-size: 240px; font-weight: 700; line-height: 1; letter-spacing: -.08em; }
.ps-faq .container { position: relative; z-index: 1; }
.ps-faq .sec-heading .sub-title { margin-bottom: 15px; }
.ps-faq .sec-heading .sec-title { max-width: 520px; color: #09182e; font-size: clamp(39px,3.4vw,56px); line-height: 1.06; letter-spacing: -.04em; }
.ps-faq .tj-faq-style .accordion-item { overflow: hidden; margin-bottom: 11px; border: 1px solid #dce6f2; border-radius: 15px; background: rgba(255,255,255,.85); box-shadow: 0 10px 30px rgba(18,54,99,.055); transition: border-color .28s ease,box-shadow .28s ease,transform .28s ease; }
.ps-faq .tj-faq-style .accordion-item:hover { transform: translateY(-2px); border-color: #bdd8f7; box-shadow: 0 15px 38px rgba(18,67,128,.09); }
.ps-faq .tj-faq-style .accordion-button { padding: 22px 24px; color: #102039; font-size: 15px; font-weight: 650; background: transparent; }
.ps-faq .tj-faq-style .accordion-button:not(.collapsed) { color: #0874e5; background: linear-gradient(90deg,rgba(31,138,255,.07),transparent); }
.ps-faq .tj-faq-style .accordion-body { padding: 0 24px 22px; }
.ps-faq .tj-faq-style .accordion-body p { margin: 0; color: #66768d; font-size: 13px; line-height: 1.65; }

/* Floating contact controls */
.ps-floating-actions { position: fixed; z-index: 999; right: 22px; bottom: 22px; display: flex; flex-direction: column; align-items: flex-end; gap: 10px; }
.ps-float-btn { display: flex; align-items: center; justify-content: center; width: 54px; height: 54px; overflow: hidden; border: 1px solid rgba(255,255,255,.2); border-radius: 17px; color: white; box-shadow: 0 15px 38px rgba(4,25,53,.25); cursor: pointer; transition: width .32s ease,transform .25s ease,box-shadow .25s ease; }
.ps-float-btn i { flex: 0 0 52px; text-align: center; font-size: 21px; }
.ps-float-btn span { max-width: 0; overflow: hidden; white-space: nowrap; font-size: 11px; font-weight: 700; transition: max-width .3s ease,padding .3s ease; }
.ps-float-btn:hover { width: 130px; transform: translateY(-3px); color: white; }
.ps-float-btn:hover span { max-width: 80px; padding-right: 15px; }
.ps-float-whatsapp { background: linear-gradient(145deg,#31cb77,#129650); }
.ps-float-chat { background: linear-gradient(145deg,#51cfff,#0c6fe0); }

@media (max-width: 991px) {
  .ps-setup-options { padding: 80px 0; }
  .ps-setup-options-grid { grid-template-columns: 1fr; max-width: 620px; margin: 0 auto; }
  .ps-setup-option-card { min-height: 320px; }
}

@media (max-width: 767px) {
  .ps-faq .sec-heading .sec-title { font-size: 40px; }
  .ps-floating-actions { right: 14px; bottom: 14px; }
  .ps-float-btn,.ps-float-btn i { width: 50px; height: 50px; flex-basis: 50px; }
}

/* Final cascade overrides */
.h8-price-section,.h8-team-section,.h8-testimonial { display:none !important; }
.tj-header-area.header-8 .mainmenu > ul > li > a { font-size:13px !important; font-weight:650 !important; letter-spacing:.015em; }
.tj-header-area.header-8 .header_right_info .header_btn { min-height:46px !important; padding:0 !important; }
.tj-header-area.header-8 .header_right_info .header_btn .btn_inner { min-height:46px !important; }
.tj-header-area.header-8 .header_right_info .header_btn .btn_icon { width:42px !important; height:42px !important; flex:0 0 42px !important; }
.tj-header-area.header-8 .header_right_info .header_btn .btn_text { padding:0 19px 0 13px !important; }
.tj-header-area.header-8 .header_right_info .header_btn .btn_text span { font-size:12px !important; white-space:nowrap; }
.ps-authorities { padding:64px 0 68px !important; }
.ps-authorities-heading { display:block !important; max-width:780px; margin:0 auto 28px !important; text-align:center; }
.ps-authorities-heading .sec-title { font-size:clamp(30px,3vw,44px) !important; }
.ps-authorities-heading > p { display:none !important; }
.ps-logo-panel + .ps-logo-panel { margin-top:8px !important; }
.ps-logo-grid li { min-height:82px !important; padding:8px 12px !important; }
.ps-logo-grid img { height:62px !important; max-width:220px !important; }
.ps-setup-option-card.is-featured { border-color:#dfe7f1 !important; background:linear-gradient(145deg,#fff,#f8fbff) !important; }
.ps-journey .ps-section-kicker,.ps-journey-detail > small { color:#55cfff !important; }
.ps-journey .ps-section-kicker::before { background:#2d9eff !important; }
.ps-journey-tabs { position:relative; padding-left:17px; }
.ps-journey-tabs::before { content:""; position:absolute; left:40px; top:40px; bottom:40px; width:2px; background:linear-gradient(#1e90ff,rgba(30,144,255,.12)); }
.ps-journey-tabs button { position:relative; z-index:1; }
.ps-journey-tabs button.active { border-color:rgba(45,158,255,.55) !important; background:linear-gradient(90deg,rgba(22,135,255,.22),rgba(255,255,255,.045)) !important; box-shadow:inset 2px 0 0 #2d9eff !important; }
.ps-journey-tabs button.active .ps-journey-number { background:linear-gradient(145deg,#56d4ff,#147de8) !important; color:#fff !important; }
.ps-journey-tabs button.active > i,.ps-journey-time i { color:#58d3ff !important; }
.ps-case-step::before,.ps-case-story::before { display:none !important; }
.tj-growth-section .tj-growth-bg { background-image:url("../images/dubai-skyline-luxury.png") !important; background-size:cover !important; background-position:center 58% !important; opacity:1 !important; }
@media(max-width:991px){.tj-header-area.header-8 .mainmenu > ul > li > a{font-size:inherit !important}}

.ps-reviews { position:relative; overflow:hidden; background:linear-gradient(145deg,#eaf2fb,#f7faff); }
.ps-reviews::before { content:""; position:absolute; right:-180px; top:-250px; width:520px; height:520px; border:1px solid rgba(22,135,255,.1); border-radius:50%; box-shadow:0 0 0 70px rgba(22,135,255,.025),0 0 0 140px rgba(22,135,255,.015); }
.ps-reviews .container { position:relative; z-index:1; }
.ps-reviews-head { display:flex; align-items:end; justify-content:space-between; gap:40px; margin-bottom:38px; }
.ps-reviews-head .sub-title { margin-bottom:12px; }
.ps-reviews-head h2 { margin:0; color:#08182f; font-size:clamp(38px,4vw,62px); font-weight:550; line-height:1.04; letter-spacing:-.045em; }
.ps-review-proof { display:flex; align-items:center; gap:16px; padding:18px 22px; border:1px solid #d4e3f4; border-radius:17px; background:rgba(255,255,255,.72); }
.ps-review-proof strong { color:#117dec; font-size:30px; line-height:1; }
.ps-review-proof span { color:#718198; font-size:11px; line-height:1.4; }
.ps-reviews-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.ps-review-card { display:flex; flex-direction:column; min-height:330px; padding:30px; border:1px solid #dce6f2; border-radius:20px; background:rgba(255,255,255,.9); box-shadow:0 18px 50px rgba(20,62,113,.07); transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease; }
.ps-review-card:hover { transform:translateY(-7px); border-color:#b9d8fb; box-shadow:0 26px 65px rgba(18,70,137,.13); }
.ps-review-stars { color:#1687ff; font-size:14px; letter-spacing:3px; }
.ps-review-card blockquote { flex:1; margin:24px 0 28px; color:#33445c; font-size:15px; line-height:1.7; }
.ps-review-card footer { display:flex; align-items:center; gap:12px; padding-top:20px; border-top:1px solid #e4ebf4; }
.ps-review-card footer > span { display:grid; place-items:center; width:44px; height:44px; border-radius:13px; background:linear-gradient(145deg,#55d1ff,#1479e8); color:#fff; font-size:11px; font-weight:700; }
.ps-review-card footer strong,.ps-review-card footer small { display:block; }
.ps-review-card footer strong { color:#0b1a31; font-size:13px; }
.ps-review-card footer small { margin-top:3px; color:#8290a4; font-size:9px; text-transform:uppercase; letter-spacing:.08em; }
.ps-reviews-action { display:flex; justify-content:center; margin-top:28px; }
@media(max-width:991px){.ps-reviews-grid{grid-template-columns:1fr}.ps-review-card{min-height:auto}.ps-reviews-head{align-items:flex-start;flex-direction:column}.ps-review-proof{align-self:stretch}}

/* v13: consistent buttons across the complete page */
.tj-primary-btn,
.tj-primary-btn.hero-button,
.header_btn.tj-primary-btn {
  display:inline-flex !important;
  align-items:center !important;
  width:auto !important;
  min-width:0 !important;
  min-height:50px !important;
  padding:0 !important;
  overflow:hidden !important;
  border:1px solid rgba(10,36,72,.12) !important;
  border-radius:999px !important;
  background:#071a36 !important;
  color:#fff !important;
  box-shadow:0 12px 28px rgba(7,31,68,.14) !important;
}
.tj-primary-btn .btn_inner {
  display:flex !important;
  align-items:center !important;
  width:auto !important;
  min-width:0 !important;
  min-height:50px !important;
  padding:0 !important;
}
.tj-primary-btn .btn_icon {
  display:grid !important;
  place-items:center !important;
  flex:0 0 46px !important;
  width:46px !important;
  height:46px !important;
  margin:2px !important;
  border-radius:50% !important;
  background:linear-gradient(145deg,#55d3ff,#147be8) !important;
}
.tj-primary-btn .btn_icon > span { display:grid !important; place-items:center !important; width:100% !important; height:100% !important; }
.tj-primary-btn .btn_icon i { position:absolute; transition:transform .3s ease,opacity .3s ease; }
.tj-primary-btn .btn_icon i + i { opacity:0; transform:translateX(-12px); }
.tj-primary-btn:hover .btn_icon i:first-child { opacity:0; transform:translateX(12px); }
.tj-primary-btn:hover .btn_icon i + i { opacity:1; transform:translateX(0); }
.tj-primary-btn .btn_text { display:block !important; width:auto !important; padding:0 21px 0 13px !important; }
.tj-primary-btn .btn_text span { display:block !important; color:inherit !important; font-size:12px !important; font-weight:700 !important; white-space:nowrap !important; }
.tj-header-area.header-8 .header_right_info { gap:12px !important; align-items:center !important; }
.tj-header-area.header-8 .header_search { flex:0 0 46px !important; width:46px !important; height:46px !important; }
.tj-header-area.header-8 .header_btn.tj-primary-btn { min-height:46px !important; background:#fff !important; color:#071a36 !important; }
.tj-header-area.header-8 .header_btn .btn_inner { min-height:46px !important; }
.tj-header-area.header-8 .header_btn .btn_icon { flex-basis:42px !important; width:42px !important; height:42px !important; }

/* Desktop: one clear horizontal setup journey. */
@media(min-width:992px){
  .ps-journey-heading { max-width:900px; margin-bottom:40px; }
  .ps-journey-layout { display:block !important; }
  .ps-journey-tabs { display:grid !important; grid-template-columns:repeat(5,minmax(0,1fr)) !important; gap:0 !important; padding:0 0 32px !important; }
  .ps-journey-tabs::before { left:9% !important; right:9% !important; top:30px !important; bottom:auto !important; width:auto !important; height:2px !important; background:linear-gradient(90deg,#1687ff,#53d2ff) !important; }
  .ps-journey-tabs button { display:flex !important; flex-direction:column !important; align-items:center !important; min-height:150px !important; padding:0 12px !important; border:0 !important; background:transparent !important; text-align:center !important; box-shadow:none !important; transform:none !important; }
  .ps-journey-tabs button:hover { background:transparent !important; transform:translateY(-3px) !important; }
  .ps-journey-number { flex:0 0 60px !important; width:60px !important; height:60px !important; margin:0 0 18px !important; border:5px solid #091a34 !important; border-radius:50% !important; background:#152946 !important; box-shadow:0 0 0 1px rgba(94,167,255,.35) !important; font-size:12px !important; }
  .ps-journey-tabs button.active .ps-journey-number { box-shadow:0 0 0 4px rgba(44,153,255,.15),0 12px 28px rgba(17,118,229,.3) !important; }
  .ps-journey-tab-copy small { font-size:8px !important; }
  .ps-journey-tab-copy strong { font-size:13px !important; }
  .ps-journey-tabs button > i { display:none !important; }
  .ps-journey-detail { min-height:360px !important; margin-top:0; padding:34px 40px !important; }
  .ps-journey-icon { margin:22px 0 17px !important; }
  .ps-journey-detail ul { margin:20px 0 !important; }
}

/* Image-led flip cards for company structures. */
.ps-setup-options { background:linear-gradient(180deg,#f8fbff,#eef4fb) !important; }
.ps-setup-option-card.ps-flip-card { min-height:430px !important; padding:0 !important; overflow:visible !important; border:0 !important; background:transparent !important; box-shadow:none !important; perspective:1400px; }
.ps-flip-inner { position:relative; width:100%; height:430px; transition:transform .75s cubic-bezier(.2,.72,.22,1); transform-style:preserve-3d; }
.ps-flip-card:hover .ps-flip-inner,.ps-flip-card:focus .ps-flip-inner,.ps-flip-card:focus-within .ps-flip-inner { transform:rotateY(180deg); }
.ps-flip-face { position:absolute; inset:0; overflow:hidden; padding:30px; border:1px solid rgba(185,211,241,.75); border-radius:22px; backface-visibility:hidden; box-shadow:0 20px 55px rgba(18,61,112,.12); }
.ps-flip-front { display:flex; flex-direction:column; justify-content:space-between; color:#fff; background-image:linear-gradient(180deg,rgba(2,13,31,.08),rgba(2,13,31,.9)),var(--card-image); background-size:cover; background-position:center; }
.ps-flip-front::after { content:"Hover to explore"; position:absolute; top:30px; left:105px; color:rgba(255,255,255,.8); font-size:9px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.ps-flip-front .ps-setup-option-number { color:rgba(255,255,255,.62) !important; }
.ps-flip-front .ps-setup-option-icon { margin:0 !important; }
.ps-flip-title small { display:block; margin-bottom:8px; color:#64d8ff; font-size:9px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.ps-flip-title h3 { color:#fff !important; font-size:29px !important; }
.ps-flip-title p { color:#d4deec !important; font-size:13px !important; }
.ps-flip-back { display:flex; flex-direction:column; transform:rotateY(180deg); background:radial-gradient(circle at 100% 0,rgba(70,180,255,.17),transparent 40%),#071a35; color:#fff; }
.ps-flip-back .ps-setup-option-number { color:rgba(92,190,255,.24) !important; }
.ps-flip-back h3 { margin:40px 0 14px !important; color:#fff !important; font-size:27px !important; }
.ps-flip-back p { color:#aebdd0 !important; }
.ps-flip-back ul { margin:20px 0 76px; padding:0; list-style:none; }
.ps-flip-back li { position:relative; margin:9px 0; padding-left:21px; color:#d6e1ef; font-size:12px; }
.ps-flip-back li::before { content:"✓"; position:absolute; left:0; color:#55d3ff; }
.ps-flip-back .ps-premium-link { bottom:24px !important; border-color:rgba(255,255,255,.14) !important; background:rgba(255,255,255,.08) !important; color:#fff !important; }

/* Restore the template's animated testimonial columns; only its copy is replaced. */
.h8-testimonial { display:block !important; }
.ps-reviews { display:none !important; }
.h8-testimonial .author-images img[hidden] { display:none !important; }
.h8-testimonial .author-images { display:grid; place-items:center; }
.h8-testimonial .author-images::before { content:"“"; color:#1687ff; font-size:32px; }

/* Stable counter sizing for large values. */
.tj-counter-section .counter-wrapper { display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)) !important; }
.tj-counter-section .counter-item { min-width:0 !important; padding:42px 26px !important; }
.tj-counter-section .counter-item .number { display:flex !important; align-items:flex-start !important; flex-wrap:nowrap !important; white-space:nowrap !important; font-size:clamp(38px,4.1vw,68px) !important; line-height:1 !important; letter-spacing:-.05em !important; }
.tj-counter-section .counter-item .number .odometer { white-space:nowrap !important; }
.tj-counter-section .counter-item .number sup { margin:0 0 0 4px !important; font-size:.42em !important; line-height:1 !important; }
.tj-counter-section .counter-item > .sub-title { display:block; margin-top:13px; font-size:11px !important; line-height:1.35; }

/* Integrated cost calculator */
.ps-cost-section { position:relative; overflow:hidden; background:#f4f8fd; }
.ps-cost-shell { overflow:hidden; border:1px solid #d5e3f2; border-radius:26px; background:#fff; box-shadow:0 28px 80px rgba(12,54,103,.12); }
.ps-cost-head { position:relative; overflow:hidden; padding:46px 52px; color:#fff; background:linear-gradient(120deg,#061a38,#0c4c86 64%,#1687d9); }
.ps-cost-head::after { content:""; position:absolute; width:420px; height:420px; right:-130px; top:-260px; border:1px solid rgba(255,255,255,.16); border-radius:50%; box-shadow:0 0 0 65px rgba(255,255,255,.035); }
.ps-cost-head .sub-title { position:relative; z-index:1; color:#66d8ff; }
.ps-cost-head h2 { position:relative; z-index:1; max-width:760px; margin:10px 0 12px; color:#fff; font-size:clamp(36px,4vw,58px); font-weight:550; line-height:1.05; letter-spacing:-.045em; }
.ps-cost-head p { position:relative; z-index:1; max-width:650px; margin:0; color:#c6d7e9; font-size:14px; line-height:1.65; }
.ps-cost-grid { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(350px,.88fr); gap:34px; padding:42px 48px 48px; background:linear-gradient(90deg,#fff 0%,#fff 62%,#f4f9ff 62%); }
.ps-cost-form h3,.ps-cost-summary h3 { margin:0; color:#0a2242; font-size:17px; }
.ps-cost-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-top:22px; }
.ps-cost-fields label { display:grid; gap:8px; color:#163657; font-size:11px; font-weight:700; }
.ps-cost-fields select { width:100%; height:50px; padding:0 14px; border:1px solid #d8e3ee; border-radius:10px; background:#fff; color:#344b63; font:inherit; transition:border-color .25s,box-shadow .25s; }
.ps-cost-fields select:focus { outline:0; border-color:#2c96ef; box-shadow:0 0 0 4px rgba(43,148,237,.12); }
.ps-cost-form fieldset { margin:23px 0 0; padding:18px; border:1px solid #dce6f0; border-radius:14px; }
.ps-cost-form legend { padding:0 7px; color:#15385e; font-size:11px; font-weight:700; }
.ps-cost-addons { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
.ps-cost-addons label { display:flex; align-items:center; gap:8px; min-height:48px; padding:9px 11px; border:1px solid #dfe8f1; border-radius:10px; color:#587086; font-size:10px; cursor:pointer; transition:.25s; }
.ps-cost-addons label:hover { border-color:#7ac6fb; background:#f3faff; }
.ps-cost-addons input { width:16px; height:16px; accent-color:#1687ff; }
.ps-cost-summary { align-self:start; padding:27px; border:1px solid #cfe1f2; border-radius:19px; background:#fff; box-shadow:0 14px 38px rgba(14,68,124,.08); }
.ps-cost-summary-title { display:flex; align-items:center; gap:11px; }
.ps-cost-summary-title > span { display:grid; place-items:center; width:38px; height:38px; border-radius:11px; background:linear-gradient(145deg,#55d3ff,#147be8); color:#fff; }
.ps-cost-summary > p { margin:23px 0 3px; color:#71859a; font-size:10px; text-transform:uppercase; letter-spacing:.07em; }
.ps-cost-summary > strong { display:block; color:#0a2b50; font-size:clamp(28px,3.1vw,43px); line-height:1.1; letter-spacing:-.045em; }
.ps-cost-summary > small { display:block; margin-top:5px; color:#7f91a3; font-size:10px; }
.ps-cost-summary ul { margin:20px 0 0; padding:0; list-style:none; border-top:1px solid #e0e8f1; }
.ps-cost-summary li { display:flex; justify-content:space-between; gap:12px; padding:9px 0; border-bottom:1px solid #e7edf4; color:#63788e; font-size:10px; }
.ps-cost-summary li strong { color:#15375b; white-space:nowrap; }
.ps-cost-cta { display:flex; align-items:center; gap:11px; margin-top:20px; padding:5px 18px 5px 5px; width:max-content; border-radius:999px; background:#071a36; color:#fff; font-size:11px; font-weight:700; }
.ps-cost-cta i { display:grid; place-items:center; width:40px; height:40px; border-radius:50%; background:linear-gradient(145deg,#55d3ff,#147be8); }
.ps-cost-cta:hover { color:#fff; }
.ps-cost-summary em { display:block; margin-top:13px; color:#8798a9; font-size:9px; font-style:normal; line-height:1.5; }

@media(max-width:991px){
  .ps-cost-grid{grid-template-columns:1fr;background:#fff;padding:34px 28px}.ps-cost-head{padding:40px 28px}.ps-cost-addons{grid-template-columns:1fr}.tj-counter-section .counter-wrapper{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}
@media(max-width:767px){
  .ps-flip-card:hover .ps-flip-inner{transform:none}.ps-flip-card:focus .ps-flip-inner,.ps-flip-card:focus-within .ps-flip-inner{transform:rotateY(180deg)}.ps-flip-front::after{content:"Tap to explore"}.ps-cost-fields{grid-template-columns:1fr}.ps-cost-grid{padding:28px 18px}.tj-counter-section .counter-wrapper{grid-template-columns:1fr !important}.tj-counter-section .counter-item{text-align:center}.tj-counter-section .counter-item .number{justify-content:center}
}

/* v76: final hero/header composition and About heading scale. */
/* Keep the primary header floating over the skyline instead of creating a grey band. */
.tj-header-area.header-8.header-absolute {
  position:absolute !important;
  inset:0 0 auto !important;
  z-index:1000 !important;
  background:transparent !important;
}
.tj-header-area.header-8.header-absolute .header-topbar {
  background:rgba(3,15,36,.30) !important;
  -webkit-backdrop-filter:blur(9px) saturate(120%);
  backdrop-filter:blur(9px) saturate(120%);
}
.tj-header-area.header-8.header-absolute .header-bottom,
.tj-header-area.header-8.header-absolute .header-wrapper {
  background:linear-gradient(180deg,rgba(3,15,36,.48),rgba(3,15,36,.12)) !important;
  -webkit-backdrop-filter:blur(8px) saturate(115%);
  backdrop-filter:blur(8px) saturate(115%);
}

/* The skyline fills the full hero from its top edge, preserving the Burj Khalifa peak. */
.ps-hero {
  margin-top:0 !important;
  background-size:100% 100%,100% 100%,cover !important;
  background-position:center,center,center top !important;
  background-repeat:no-repeat !important;
}

/* Match the About title to the calmer scale used by the following Numbers section. */
.ps-about-copy .sec-title {
  max-width:620px !important;
  font-size:clamp(36px,3.15vw,48px) !important;
  line-height:1.08 !important;
  letter-spacing:-.035em !important;
}

@media(max-width:991px){
  .ps-hero{
    background-size:100% 100%,100% 100%,auto 100% !important;
    background-position:center,center,68% top !important;
  }
  .ps-about-copy .sec-title{font-size:clamp(34px,7vw,46px) !important;}
}
@media(max-width:575px){
  .ps-hero{
    background-size:100% 100%,100% 100%,auto 100% !important;
    background-position:center,center,72% top !important;
  }
  .ps-about-copy .sec-title{font-size:clamp(32px,10vw,41px) !important;}
}

/* v14 corrective pass */
.h8-process,.tj-growth-section { display:none !important; }

/* Neutralise the template's expanding icon layers and use one reliable button system. */
.tj-primary-btn .btn_icon { display:none !important; }
.tj-primary-btn,
.tj-primary-btn.hero-button,
.header_btn.tj-primary-btn {
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  min-height:48px !important;
  padding:4px 20px 4px 5px !important;
  border-radius:999px !important;
}
.tj-primary-btn::before {
  content:"↗" !important;
  display:grid !important;
  place-items:center !important;
  flex:0 0 38px !important;
  width:38px !important;
  height:38px !important;
  margin-right:11px !important;
  border-radius:50% !important;
  background:linear-gradient(145deg,#4ccfff,#147ae8) !important;
  color:#fff !important;
  font-size:14px !important;
  line-height:1 !important;
  transition:transform .25s ease !important;
}
.tj-primary-btn:hover::before { transform:rotate(45deg) !important; }
.tj-primary-btn .btn_inner { min-height:0 !important; }
.tj-primary-btn .btn_inner { transform:none !important; overflow:visible !important; background:transparent !important; }
.tj-primary-btn .btn_inner::before,.tj-primary-btn .btn_inner::after,.tj-primary-btn::after { display:none !important; }
.tj-primary-btn .btn_text { padding:0 !important; }
.tj-primary-btn .btn_text span { font-size:12px !important; line-height:1 !important; }
.tj-header-area.header-8 .header_btn.tj-primary-btn { min-height:44px !important; padding:3px 18px 3px 4px !important; }
.tj-header-area.header-8 .header_btn.tj-primary-btn::before { flex-basis:36px !important; width:36px !important; height:36px !important; }

.ps-btn:not(.ps-btn-whatsapp),.ps-premium-link,.ps-case-link,.ps-cost-cta,.ps-journey-detail>a {
  display:inline-flex !important;
  align-items:center !important;
  width:max-content !important;
  min-height:46px !important;
  padding:4px 18px 4px 5px !important;
  border-radius:999px !important;
}
.ps-btn:not(.ps-btn-whatsapp)::before,.ps-premium-link::before,.ps-case-link::before,.ps-journey-detail>a::before {
  width:36px !important;
  height:36px !important;
  margin-right:10px !important;
  border-radius:50% !important;
  font-size:13px !important;
}
.ps-cost-cta i { width:36px !important; height:36px !important; }

/* Guaranteed visible flip-card photography. */
.ps-flip-front { isolation:isolate; background:#071a35 !important; }
.ps-flip-front::before { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(180deg,rgba(2,13,31,.06),rgba(2,13,31,.88)); }
.ps-flip-image { position:absolute; z-index:-2; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }

/* Compact one-viewport journey. */
.ps-journey { padding:64px 0 66px !important; }
.ps-journey-heading { margin-bottom:28px !important; }
.ps-journey-heading h2 { font-size:clamp(34px,3.5vw,52px) !important; }
.ps-journey-heading>p { margin-top:12px !important; }
@media(min-width:992px){
  .ps-journey-tabs { padding-bottom:20px !important; }
  .ps-journey-tabs::before { top:24px !important; }
  .ps-journey-tabs button { min-height:105px !important; padding:0 8px !important; }
  .ps-journey-number { flex-basis:48px !important; width:48px !important; height:48px !important; margin-bottom:10px !important; border-width:4px !important; }
  .ps-journey-tab-copy small { display:none !important; }
  .ps-journey-detail { min-height:240px !important; padding:25px 30px !important; }
  .ps-journey-icon { display:none !important; }
  .ps-journey-detail>small { display:block; margin-top:14px; }
  .ps-journey-detail h3 { margin:5px 0 8px !important; font-size:clamp(24px,2.2vw,34px) !important; }
  .ps-journey-detail>p { font-size:12px !important; }
  .ps-journey-detail ul { margin:14px 0 !important; }
  .ps-journey-detail li { padding:8px !important; }
  .ps-journey-detail>a { min-height:42px !important; }
}

/* Calculator controls always sit above decorative layers and accept input. */
.ps-cost-section,.ps-cost-shell,.ps-cost-grid,.ps-cost-form { position:relative; }
.ps-cost-section { z-index:2; }
.ps-cost-shell { z-index:3; overflow:visible; }
.ps-cost-grid { z-index:4; }
.ps-cost-form { z-index:5; pointer-events:auto !important; }
.ps-cost-form label,.ps-cost-form select,.ps-cost-form input,.ps-cost-form fieldset { position:relative; z-index:6; pointer-events:auto !important; cursor:pointer; }
.ps-cost-form .nice-select { position:relative; z-index:20 !important; width:100% !important; height:50px !important; line-height:48px !important; pointer-events:auto !important; cursor:pointer !important; }
.ps-cost-form .nice-select .list { z-index:30 !important; pointer-events:auto !important; }
.ps-cost-head::after { pointer-events:none !important; }

/* Shorter case-study canvas. */
.ps-cases { padding:70px 0 !important; }
.ps-cases-heading { margin-bottom:25px !important; }
.ps-cases-heading h2 { font-size:clamp(34px,3.5vw,52px) !important; }
.ps-featured-case { min-height:560px !important; }
.ps-case-content { padding:34px 38px !important; }
.ps-case-content>h3 { margin:18px 0 !important; font-size:clamp(27px,2.7vw,40px) !important; }
.ps-case-story { gap:7px !important; margin:20px 0 !important; }
.ps-case-step { padding:10px 12px !important; }
.ps-case-step p { font-size:11px !important; }
.ps-case-index button { padding:14px 20px !important; }

/* Balanced testimonial presentation with subtle motion. */
.h8-testimonial { display:none !important; }
.ps-reviews { display:block !important; padding:78px 0 !important; }
.ps-reviews-head { align-items:center !important; margin-bottom:30px !important; }
.ps-reviews-head h2 { font-size:clamp(36px,3.7vw,54px) !important; }
.ps-review-card { min-height:300px !important; padding:26px !important; animation:psReviewFloat 5s ease-in-out infinite; }
.ps-review-card:nth-child(2) { animation-delay:.65s; }
.ps-review-card:nth-child(3) { animation-delay:1.3s; }
.ps-review-card blockquote { margin:19px 0 23px !important; font-size:13px !important; }
.ps-reviews-action { margin-top:22px !important; }
@keyframes psReviewFloat { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-7px)} }
.ps-review-card:hover { animation-play-state:paused; transform:translateY(-8px); }

@media(max-width:991px){
  .ps-featured-case{min-height:auto !important}.ps-case-content{padding:30px 24px !important}.ps-review-card{animation:none}.ps-cost-shell{overflow:hidden}.ps-journey{padding:55px 0 !important}
}

/* v15 final interaction and presentation refinements */

/* Premium buttons: stable text, restrained lift and luminous edge. */
.tj-primary-btn,.ps-btn:not(.ps-btn-whatsapp),.ps-premium-link,.ps-case-link,.ps-cost-cta,.ps-journey-detail>a {
  transform:translateY(0) !important;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background-color .25s ease !important;
}
.tj-primary-btn .btn_text,.tj-primary-btn .btn_text span {
  position:static !important;
  transform:none !important;
  opacity:1 !important;
  visibility:visible !important;
  transition:none !important;
}
.tj-primary-btn:hover,.ps-btn:not(.ps-btn-whatsapp):hover,.ps-premium-link:hover,.ps-case-link:hover,.ps-cost-cta:hover,.ps-journey-detail>a:hover {
  transform:translateY(-3px) !important;
  border-color:rgba(74,190,255,.62) !important;
  box-shadow:0 16px 34px rgba(9,70,139,.22),0 0 0 3px rgba(48,161,245,.08) !important;
}
.tj-primary-btn:hover::before,.ps-btn:not(.ps-btn-whatsapp):hover::before,.ps-premium-link:hover::before,.ps-case-link:hover::before,.ps-journey-detail>a:hover::before {
  transform:translateX(2px) rotate(45deg) !important;
}
.tj-header-area.header-8 .header_btn:hover { background:#f6fbff !important; color:#071a36 !important; }

/* Hero: diagrammatic ecosystem, never mistaken for a form. */
.ps-strategy-visual { padding:22px !important; }
.ps-strategy-visual h2,.ps-strategy-visual .ps-launch-steps { display:none !important; }
.ps-market-map { position:relative; height:300px; margin:10px 0; overflow:hidden; border:1px solid rgba(85,196,255,.15); border-radius:22px; background:radial-gradient(circle at 50% 48%,rgba(23,132,241,.22),transparent 38%),rgba(255,255,255,.025); }
.ps-market-orbit { position:absolute; left:50%; top:50%; border:1px solid rgba(82,193,255,.25); border-radius:50%; transform:translate(-50%,-50%); }
.ps-orbit-one { width:190px; height:190px; animation:psOrbit 16s linear infinite; }
.ps-orbit-two { width:275px; height:275px; border-style:dashed; opacity:.55; animation:psOrbitReverse 22s linear infinite; }
.ps-market-core { position:absolute; z-index:2; left:50%; top:50%; display:grid; place-items:center; width:116px; height:116px; border:1px solid rgba(92,207,255,.42); border-radius:50%; background:linear-gradient(145deg,rgba(17,119,226,.92),rgba(5,42,91,.92)); transform:translate(-50%,-50%); box-shadow:0 0 45px rgba(25,139,240,.28); }
.ps-market-core img { width:32px; height:32px; object-fit:contain; margin-bottom:3px; filter:brightness(0) invert(1); }
.ps-market-core strong { color:#fff; font-size:10px; letter-spacing:.14em; }
.ps-market-core small { color:#a9dfff; font-size:8px; }
.ps-map-node { position:absolute; z-index:3; display:flex; align-items:center; gap:6px; padding:7px 10px; border:1px solid rgba(255,255,255,.12); border-radius:999px; background:rgba(3,20,46,.84); color:#cfe4f8; font-size:9px; font-weight:650; box-shadow:0 8px 22px rgba(0,0,0,.2); }
.ps-map-node i { color:#55d2ff; }
.ps-node-one { left:16px; top:36px; }.ps-node-two { right:15px; top:60px; }.ps-node-three { left:19px; bottom:43px; }.ps-node-four { right:12px; bottom:35px; }
.ps-map-pulse { width:10px; height:10px; border-radius:50%; background:#59dc9a; box-shadow:0 0 0 7px rgba(89,220,154,.12); animation:psPulse 2s ease-in-out infinite; }
@keyframes psOrbit{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes psOrbitReverse{to{transform:translate(-50%,-50%) rotate(-360deg)}}

/* One-line institutional heading at desktop widths. */
@media(min-width:992px){
  .ps-authorities-heading { max-width:none !important; }
  .ps-authorities-heading .sec-title { white-space:nowrap; font-size:clamp(29px,3vw,43px) !important; }
}

.ps-flip-front::after { display:none !important; }
.ps-flip-front::before { background:linear-gradient(180deg,rgba(3,15,34,.18),rgba(3,15,34,.93)) !important; }
.ps-flip-image { filter:saturate(.8) contrast(1.03) brightness(.78); }

/* Stronger selected journey state and readable detail panel. */
.ps-journey-tabs button.active .ps-journey-number {
  transform:scale(1.12);
  border-color:#5ed8ff !important;
  box-shadow:0 0 0 7px rgba(40,151,255,.17),0 14px 34px rgba(14,107,226,.38) !important;
}
.ps-journey-tabs button.active .ps-journey-tab-copy strong { color:#67d9ff !important; font-weight:750 !important; }
.ps-journey-tabs button.active::after { content:"Current stage"; margin-top:5px; color:#4bcaff; font-size:7px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.ps-journey-detail { border-color:rgba(72,174,255,.3) !important; background:radial-gradient(circle at 100% 0,rgba(30,135,255,.26),transparent 40%),linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.035)) !important; }
.ps-journey-detail>small { font-size:10px !important; }
.ps-journey-detail h3 { font-weight:600 !important; }
.ps-journey-detail>p { color:#c2cede !important; font-size:14px !important; line-height:1.6 !important; }
.ps-journey-detail li { color:#d5dfec !important; font-size:11px !important; }

/* Native calculator fields: no theme replacement, larger result typography. */
.ps-cost-form select { display:block !important; appearance:auto !important; -webkit-appearance:menulist !important; pointer-events:auto !important; }
.ps-cost-form .nice-select { display:none !important; }
@media(min-width:1200px){
  .ps-cost-head h2 { max-width:none !important; white-space:nowrap; font-size:clamp(34px,3.35vw,52px) !important; }
}
.ps-cost-summary { padding:31px !important; }
.ps-cost-summary-title h3 { font-size:20px !important; }
.ps-cost-summary>p { font-size:12px !important; }
.ps-cost-summary>strong { font-size:clamp(34px,3.4vw,50px) !important; }
.ps-cost-summary>small { font-size:12px !important; }
.ps-cost-summary li { padding:11px 0 !important; font-size:12px !important; }
.ps-cost-summary em { font-size:10px !important; }

/* Restore the original vertically animated testimonial composition. */
.ps-reviews { display:none !important; }
.h8-testimonial { display:block !important; overflow:hidden; background:linear-gradient(145deg,#eaf2fb,#f4f8fd) !important; }
.h8-testimonial .h8-testimonial-section-heading-wrapper { padding-right:24px; }
.h8-testimonial .h8-testimonial-section-heading .sec-title { font-size:clamp(34px,3.4vw,52px) !important; line-height:1.06 !important; }
.h8-testimonial .h8-testimonial-fanfact .number { white-space:nowrap !important; font-size:clamp(48px,5vw,72px) !important; }
.h8-testimonial-item { border:1px solid #d8e4f1 !important; border-radius:18px !important; background:rgba(255,255,255,.92) !important; box-shadow:0 16px 42px rgba(20,64,116,.08) !important; }
.h8-testimonial-item .desc p { color:#40536a !important; font-size:13px !important; line-height:1.65 !important; }
.h8-testimonial-item .author-name { font-size:15px !important; }
.h8-testimonial .h8-testimonial-wrapper { max-height:720px; overflow:hidden; }

@media(max-width:991px){
  .ps-authorities-heading .sec-title{white-space:normal}.ps-market-map{height:280px}.h8-testimonial .h8-testimonial-wrapper{max-height:none}.ps-cost-head h2{white-space:normal}
}

/* v16 coordinated section polish */
.ps-hero h1 .ps-hero-line { display:block; background:none !important; color:#fff !important; -webkit-text-fill-color:#fff !important; }
.ps-hero h1 span:not(.ps-hero-line) { display:block; }
.ps-hero-services { display:none !important; }
.ps-hero-actions { margin-top:28px !important; }

/* Image-led editorial composition for the hero. */
.ps-hero-showcase { position:relative; min-height:500px; max-width:430px; margin-left:auto; }
.ps-showcase-frame { position:absolute; inset:35px 16px 36px 52px; overflow:hidden; border:1px solid rgba(108,207,255,.36); border-radius:210px 210px 30px 30px; background:#0a2448; box-shadow:0 35px 90px rgba(0,0,0,.36); }
.ps-showcase-frame::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(4,17,38,.05),rgba(4,17,38,.72)); }
.ps-showcase-frame img { width:100%; height:100%; object-fit:cover; object-position:center; filter:saturate(.78) contrast(1.05); }
.ps-showcase-badge { position:absolute; z-index:3; top:40px; left:0; display:flex; align-items:center; gap:10px; padding:14px 17px; border:1px solid rgba(255,255,255,.18); border-radius:16px; background:rgba(4,20,45,.82); box-shadow:0 15px 35px rgba(0,0,0,.25); backdrop-filter:blur(15px); }
.ps-showcase-badge strong { color:#5bd7ff; font-size:27px; line-height:1; }
.ps-showcase-badge span { color:#d5e3f3; font-size:9px; line-height:1.4; }
.ps-showcase-note { position:absolute; z-index:3; right:0; bottom:45px; display:flex; align-items:center; gap:11px; min-width:245px; padding:14px; border:1px solid rgba(255,255,255,.2); border-radius:16px; background:rgba(4,20,45,.86); box-shadow:0 18px 40px rgba(0,0,0,.28); backdrop-filter:blur(15px); }
.ps-showcase-note>i { display:grid; place-items:center; width:40px; height:40px; border-radius:12px; background:linear-gradient(145deg,#56d5ff,#147ae8); color:#fff; }
.ps-showcase-note small,.ps-showcase-note strong { display:block; }
.ps-showcase-note small { color:#78cfff; font-size:8px; text-transform:uppercase; letter-spacing:.1em; }
.ps-showcase-note strong { margin-top:3px; color:#fff; font-size:11px; }
.ps-showcase-orbit { position:absolute; right:-30px; top:18px; width:170px; height:170px; border:1px solid rgba(79,193,255,.22); border-radius:50%; animation:psOrbit 18s linear infinite; }
.ps-showcase-orbit::before,.ps-showcase-orbit::after { content:""; position:absolute; border-radius:50%; }
.ps-showcase-orbit::before { inset:18px; border:1px dashed rgba(79,193,255,.22); }
.ps-showcase-orbit::after { width:9px; height:9px; top:18px; left:23px; background:#5dd9ff; box-shadow:0 0 15px #3cbfff; }

/* Journey: equal active geometry, larger copy and icon-led benefits. */
@media(min-width:992px){
  .ps-journey-tabs button.active { padding:0 8px !important; border:0 !important; background:transparent !important; box-shadow:none !important; }
  .ps-journey-tabs button.active::after { margin-top:4px; }
  .ps-journey-detail { min-height:275px !important; padding:28px 34px !important; }
  .ps-journey-detail h3 { font-size:clamp(30px,2.55vw,40px) !important; }
}
.ps-journey-detail>small { font-size:11px !important; }
.ps-journey-detail>p { max-width:900px !important; font-size:15px !important; }
.ps-journey-detail ul { gap:10px !important; }
.ps-journey-detail li { position:relative; min-height:50px; padding:12px 12px 12px 43px !important; font-size:12px !important; }
.ps-journey-detail li i { position:absolute; left:11px; top:50%; display:grid; place-items:center; width:23px; height:23px; margin:0 !important; border-radius:8px; background:rgba(74,207,255,.13); transform:translateY(-50%); }

/* Site-scale typography for the calculator. */
.ps-cost-head p { font-size:16px !important; }
.ps-cost-form h3 { font-size:22px !important; }
.ps-cost-fields label>span,.ps-cost-form legend { font-size:13px !important; }
.ps-cost-fields select { height:56px !important; padding:0 16px !important; font-size:14px !important; }
.ps-cost-addons label { min-height:54px !important; font-size:12px !important; }
.ps-cost-summary-title h3 { font-size:22px !important; }
.ps-cost-summary>p { font-size:13px !important; }
.ps-cost-summary>small { font-size:13px !important; }
.ps-cost-summary li { font-size:13px !important; }
.ps-cost-summary em { font-size:11px !important; line-height:1.6 !important; }

/* Current-site text remains the focus of the About section. */
.h8-about .check-list-one { display:none !important; }
.h8-about-content .desc p { color:#51647b; font-size:14px; line-height:1.72; }
.ps-about-philosophy { margin-top:17px !important; padding:16px 18px; border-left:3px solid #1687ff; background:#f2f7fd; color:#153456 !important; font-weight:600; }

/* Icon-led number cards. */
.tj-counter-section { padding:92px 0; background:linear-gradient(145deg,#e9f1fa,#f8fbff); }
.tj-counter-section .counter-wrapper { gap:14px; background:transparent !important; }
.tj-counter-section .counter-item { position:relative; overflow:hidden; min-height:245px; border:1px solid #d4e2f1; border-radius:20px; background:rgba(255,255,255,.88); box-shadow:0 18px 48px rgba(17,61,112,.07); transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease; }
.tj-counter-section .counter-item:hover { transform:translateY(-6px); border-color:#aed4fb; box-shadow:0 25px 60px rgba(17,72,135,.13); }
.ps-counter-icon { display:grid; place-items:center; width:50px; height:50px; margin-bottom:24px; border-radius:15px; background:linear-gradient(145deg,#55d3ff,#147ae8); color:#fff; font-size:19px; box-shadow:0 12px 26px rgba(20,126,232,.22); }

/* Refined service rows and visible primary action. */
.h8-services-section { background:linear-gradient(180deg,#fff,#f3f7fc); }
.h8-services-wrapper { gap:34px !important; }
.h8-services-left .h8-video { overflow:hidden; border-radius:22px; box-shadow:0 24px 60px rgba(14,55,103,.16); }
.h8-services-left-content .title { margin-top:25px; font-size:clamp(34px,3.4vw,52px) !important; }
.h8-services-list { display:grid; gap:10px; }
.h8-services-list .service_item { padding:22px 20px !important; border:1px solid #dce6f1 !important; border-radius:16px; background:rgba(255,255,255,.86); box-shadow:0 9px 26px rgba(16,56,104,.05); transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease; }
.h8-services-list .service_item:hover { transform:translateX(-5px); border-color:#aad2fb !important; box-shadow:0 15px 36px rgba(15,74,139,.11); }
.h8-services-list .service_item .no { color:#1687ff !important; }
.h8-services-list .service_item .title { font-size:18px !important; }
.h8-services-list .service_item .desc { color:#6a7c91; font-size:12px; line-height:1.5; }
.h8-services-left-content>.tj-primary-btn { display:inline-flex !important; margin-top:25px; background:#071a36 !important; color:#fff !important; visibility:visible !important; opacity:1 !important; }

/* Larger case-study reading size. */
.ps-case-content>h3 { font-size:clamp(31px,3vw,45px) !important; }
.ps-case-step small { font-size:10px !important; }
.ps-case-step p { font-size:13px !important; line-height:1.55 !important; }
.ps-case-topline,.ps-case-sector { font-size:10px !important; }

/* Premium navy FAQ. */
.ps-faq { background:radial-gradient(circle at 0 0,rgba(24,118,224,.22),transparent 34%),linear-gradient(145deg,#06152d,#0a2243) !important; }
.ps-faq::before { color:rgba(105,191,255,.04) !important; }
.ps-faq .sec-heading .sub-title { color:#58d3ff !important; }
.ps-faq .sec-heading .sec-title { color:#fff !important; }
.ps-faq .tj-faq-style .accordion-item { border-color:rgba(255,255,255,.12) !important; background:rgba(255,255,255,.055) !important; box-shadow:none !important; }
.ps-faq .tj-faq-style .accordion-item:hover { border-color:rgba(83,193,255,.4) !important; }
.ps-faq .tj-faq-style .accordion-button { color:#eaf2fb !important; }
.ps-faq .tj-faq-style .accordion-button:not(.collapsed) { color:#61d7ff !important; background:rgba(34,137,244,.11) !important; }
.ps-faq .tj-faq-style .accordion-body p { color:#b6c5d8 !important; }
.ps-faq-assist { border-color:rgba(255,255,255,.14) !important; background:rgba(255,255,255,.07) !important; box-shadow:none !important; }
.ps-faq-assist small { color:#8ba3bd !important; }.ps-faq-assist strong { color:#fff !important; }

@media(max-width:991px){.ps-hero-showcase{min-height:450px;margin:20px auto 0}.ps-cost-fields select{font-size:16px !important}.tj-counter-section{padding:70px 0}}

/* v17: unified Polestar colour system and section consistency. */
:root {
  --ps-navy-950:#06152d;
  --ps-navy-900:#071a36;
  --ps-navy-800:#0b294e;
  --ps-blue-600:#147be8;
  --ps-blue-500:#1687ff;
  --ps-cyan-400:#55d3ff;
  --ps-ink:#08182f;
  --ps-copy:#52667e;
  --ps-surface:#eef4fb;
  --ps-line:#d5e3f2;
}

/* Template heading animation hooks on custom sections. */
.ps-authorities-heading .text-anim,
.ps-setup-options-heading .text-anim,
.ps-journey-heading .text-anim,
.ps-cost-head .text-anim,
.ps-cases-heading .text-anim,
.ps-reviews-head .text-anim { will-change:transform,opacity; }

/* A stronger, editorial numbers treatment. */
.tj-counter-section {
  position:relative;
  overflow:hidden;
  background:linear-gradient(145deg,#e8f1fb 0%,#f7faff 58%,#edf5fd 100%) !important;
}
.tj-counter-section::before {
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-260px;
  top:-285px;
  border:1px solid rgba(22,135,255,.13);
  border-radius:50%;
  box-shadow:0 0 0 75px rgba(22,135,255,.025),0 0 0 150px rgba(22,135,255,.018);
}
.tj-counter-section .container { position:relative; z-index:1; }
.tj-counter-section .counter-wrapper { align-items:stretch; }
.tj-counter-section .counter-item {
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  min-height:270px;
  padding:31px !important;
  border-color:rgba(181,207,234,.75) !important;
  background:linear-gradient(155deg,rgba(255,255,255,.97),rgba(245,250,255,.9)) !important;
}
.tj-counter-section .counter-item::before {
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  background:linear-gradient(var(--ps-cyan-400),var(--ps-blue-500));
  opacity:.3;
  transition:opacity .3s ease;
}
.tj-counter-section .counter-item:hover::before { opacity:1; }
.tj-counter-section .counter-item .number {
  color:var(--ps-navy-900) !important;
  font-size:clamp(43px,4vw,66px) !important;
  line-height:.95 !important;
  letter-spacing:-.055em;
}
.tj-counter-section .counter-item .number sup { color:var(--ps-blue-500) !important; font-size:.42em !important; }
.tj-counter-section .counter-item .sub-title { max-width:170px; margin-top:15px; color:#587089 !important; font-size:13px !important; line-height:1.4; }
.ps-counter-icon {
  position:absolute;
  top:28px;
  right:28px;
  width:54px;
  height:54px;
  margin:0;
  background:linear-gradient(145deg,var(--ps-cyan-400),var(--ps-blue-600));
}

/* Restore the established services-section blue-grey surface. */
.h8-services-section {
  background:#dfe8f3 !important;
}
.h8-services-list .service_item {
  border-color:rgba(190,207,226,.9) !important;
  background:rgba(255,255,255,.72) !important;
}
.h8-services-list .service_item:hover { background:#fff !important; }
.h8-services-left-content .title,
.h8-services-list .service_item .title a { color:var(--ps-ink) !important; }

/* FAQ: readable in every accordion state. */
.ps-faq .tj-faq-style .accordion-item,
.ps-faq .tj-faq-style .accordion-header,
.ps-faq .tj-faq-style .accordion-collapse,
.ps-faq .tj-faq-style .accordion-body { background:transparent !important; }
.ps-faq .tj-faq-style .accordion-button { color:#f3f8ff !important; }
.ps-faq .tj-faq-style .accordion-button.collapsed { color:#dce8f6 !important; }
.ps-faq .tj-faq-style .accordion-button:not(.collapsed) { color:#67d9ff !important; }
.ps-faq .tj-faq-style .accordion-body,
.ps-faq .tj-faq-style .accordion-body p {
  color:#c9d7e8 !important;
  opacity:1 !important;
  visibility:visible !important;
  font-size:14px !important;
  line-height:1.72 !important;
}
.ps-faq .tj-faq-style .accordion-button::after { filter:brightness(0) invert(1); opacity:.86; }

/* Final palette reconciliation for shared accents. */
.ps-section-kicker,
.ps-cases-kicker,
.ps-reviews .sub-title { color:var(--ps-blue-500) !important; }
.ps-section-kicker::before { background:var(--ps-blue-500) !important; }
.ps-journey .ps-section-kicker { color:var(--ps-cyan-400) !important; }
.ps-journey .ps-section-kicker::before { background:var(--ps-cyan-400) !important; }
.ps-premium-link::before,.ps-case-link::before,.ps-cost-cta i,
.ps-journey-detail>a::before { background:linear-gradient(145deg,var(--ps-cyan-400),var(--ps-blue-600)) !important; }

@media(max-width:767px){
  .tj-counter-section .counter-item{min-height:210px;padding:25px !important}
  .ps-counter-icon{top:22px;right:22px;width:48px;height:48px}
}

/* v18: calculator heading outside the box + definitive FAQ states. */
.ps-cost-section>.container>.ps-cost-head {
  max-width:980px;
  margin:0 auto 42px;
  padding:0 !important;
  text-align:center;
  color:var(--ps-ink);
  background:none !important;
  overflow:visible;
}
.ps-cost-section>.container>.ps-cost-head::before { display:none !important; }
.ps-cost-section>.container>.ps-cost-head .sub-title {
  display:inline-flex;
  justify-content:center;
  color:var(--ps-blue-500) !important;
}
.ps-cost-section>.container>.ps-cost-head h2 {
  margin:12px auto 14px;
  color:var(--ps-ink) !important;
  font-size:clamp(38px,4vw,60px) !important;
  line-height:1.05;
  letter-spacing:-.045em;
}
.ps-cost-section>.container>.ps-cost-head p {
  max-width:720px;
  margin:0 auto;
  color:var(--ps-copy) !important;
  font-size:15px !important;
}
.ps-cost-shell { border-radius:25px !important; }
.ps-cost-grid { border-radius:25px; }

.ps-faq .tj-faq-style .accordion-item {
  overflow:hidden;
  border:1px solid rgba(124,180,235,.2) !important;
  background:#0d2748 !important;
}
.ps-faq .tj-faq-style .accordion-header { background:#0d2748 !important; }
.ps-faq .tj-faq-style .accordion-button,
.ps-faq .tj-faq-style .accordion-button.collapsed {
  background:#0d2748 !important;
  color:#e7f0fb !important;
  box-shadow:none !important;
}
.ps-faq .tj-faq-style .accordion-button:not(.collapsed) {
  background:linear-gradient(90deg,#103961,#0d2e52) !important;
  color:#64d8ff !important;
  box-shadow:inset 3px 0 0 #25a5ff !important;
}
.ps-faq .tj-faq-style .accordion-collapse,
.ps-faq .tj-faq-style .accordion-body {
  background:#0a213f !important;
}
.ps-faq .tj-faq-style .accordion-body { border-top:1px solid rgba(122,185,241,.16); }

@media(max-width:767px){
  .ps-cost-section>.container>.ps-cost-head{margin-bottom:28px}
  .ps-cost-section>.container>.ps-cost-head h2{font-size:36px !important}
}

/* v20: subtle professional corners; action buttons remain fully round. */
body * { border-radius:8px !important; }

section,
.container,
.row,
.col,
.col-12,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
header,
footer,
nav,
ul,
ol { border-radius:0 !important; }

.ps-cost-shell,
.ps-cost-grid,
.ps-featured-case,
.ps-logo-panel,
.ps-journey-detail,
.ps-review-card,
.ps-setup-option-card,
.tj-counter-section .counter-item {
  border-radius:10px !important;
}

button:not(.accordion-button):not([role="tab"]),
input[type="button"],
input[type="submit"],
input[type="reset"],
.tj-primary-btn,
.ps-btn,
.ps-premium-link,
.ps-case-link,
.ps-cost-cta,
.ps-journey-detail>a,
.play_btn,
.video-popup,
.ps-float-whatsapp,
.ps-float-chat,
a[class*="-btn"] {
  border-radius:999px !important;
}

/* Circular action glyphs that belong to rounded buttons. */
.tj-primary-btn .btn_icon,
.tj-primary-btn .btn_icon span,
.ps-btn::before,
.ps-premium-link::before,
.ps-case-link::before,
.ps-cost-cta i,
.ps-journey-detail>a::before,
.play_btn i,
.video-popup i,
.ps-float-whatsapp i,
.ps-float-chat i {
  border-radius:50% !important;
}

/* v21: seamless, compact FAQ accordion. */
.ps-faq .tj-faq-style.style-2 .accordion-item {
  margin-bottom:12px !important;
  border:1px solid rgba(119,171,222,.24) !important;
  border-radius:10px !important;
  background:#0d2748 !important;
  box-shadow:0 10px 28px rgba(0,10,28,.12) !important;
  transform:none !important;
}
.ps-faq .tj-faq-style.style-2 .accordion-item:has(.accordion-button:not(.collapsed)) {
  border-color:rgba(45,166,255,.58) !important;
  box-shadow:0 14px 34px rgba(0,40,90,.2) !important;
}
.ps-faq .tj-faq-style.style-2 .accordion-item .accordion-header {
  margin:0 !important;
  background:transparent !important;
}
.ps-faq .tj-faq-style.style-2 .accordion-item .accordion-header .accordion-button,
.ps-faq .tj-faq-style.style-2 .accordion-item .accordion-header .accordion-button.collapsed {
  min-height:72px;
  padding:19px 65px 19px 24px !important;
  border:0 !important;
  border-radius:0 !important;
  background:#0d2748 !important;
  color:#e6effb !important;
  font-size:16px !important;
  line-height:1.38 !important;
  box-shadow:none !important;
}
.ps-faq .tj-faq-style.style-2 .accordion-item .accordion-header .accordion-button:not(.collapsed) {
  background:linear-gradient(90deg,#123d68,#103456) !important;
  color:#62d7ff !important;
  box-shadow:inset 4px 0 0 #2aa8ff !important;
}
.ps-faq .tj-faq-style.style-2 .accordion-item .accordion-header .accordion-button::before {
  right:20px !important;
  color:#bcd0e7 !important;
  font-size:20px;
}
.ps-faq .tj-faq-style.style-2 .accordion-item .accordion-header .accordion-button:not(.collapsed)::before {
  color:#49c9ff !important;
}
.ps-faq .tj-faq-style.style-2 .accordion-item .accordion-collapse,
.ps-faq .tj-faq-style.style-2 .accordion-item .accordion-body {
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:#0a213f !important;
}
.ps-faq .tj-faq-style.style-2 .accordion-item .accordion-body p {
  margin:0 !important;
  padding:22px 28px 25px !important;
  border:0 !important;
  color:#c8d7e8 !important;
  font-size:14px !important;
  line-height:1.72 !important;
}

@media(max-width:767px){
  .ps-faq .tj-faq-style.style-2 .accordion-item .accordion-header .accordion-button,
  .ps-faq .tj-faq-style.style-2 .accordion-item .accordion-header .accordion-button.collapsed {
    min-height:64px;
    padding:16px 52px 16px 18px !important;
    font-size:14px !important;
  }
  .ps-faq .tj-faq-style.style-2 .accordion-item .accordion-body p{padding:18px !important}
}

/* v22: stable header CTA hover and a new non-form hero visual. */
.tj-header-area.header-8 .header_btn.tj-primary-btn,
.tj-header-area.header-8 .header_btn.tj-primary-btn:hover {
  background:#f7fbff !important;
  color:#071a36 !important;
}
.tj-header-area.header-8 .header_btn.tj-primary-btn .btn_inner .btn_text,
.tj-header-area.header-8 .header_btn.tj-primary-btn:hover .btn_inner .btn_text,
.tj-header-area.header-8 .header_btn.tj-primary-btn .btn_inner .btn_text>span,
.tj-header-area.header-8 .header_btn.tj-primary-btn:hover .btn_inner .btn_text>span {
  color:#071a36 !important;
  text-shadow:none !important;
  transform:none !important;
  opacity:1 !important;
}
.tj-header-area.header-8 .header_btn.tj-primary-btn:hover .btn_icon {
  background:linear-gradient(145deg,#46c8ff,#0f73df) !important;
}
.tj-header-area.header-8 .header_btn.tj-primary-btn .btn_icon i { color:#fff !important; }

.ps-advisory-orbit {
  position:relative;
  width:min(100%,500px);
  min-height:500px;
  margin-left:auto;
  isolation:isolate;
}
.ps-advisory-orbit::before {
  content:"";
  position:absolute;
  inset:42px;
  border:1px solid rgba(92,200,255,.12);
  background:radial-gradient(circle at 50% 45%,rgba(25,144,255,.2),rgba(3,20,45,.06) 52%,transparent 70%);
  transform:rotate(12deg);
}
.ps-orbit-rings,
.ps-orbit-rings span { position:absolute; border-radius:50% !important; }
.ps-orbit-rings { inset:45px; animation:psOrbit 28s linear infinite; }
.ps-orbit-rings::before,
.ps-orbit-rings::after,
.ps-orbit-rings span { content:""; border:1px solid rgba(81,199,255,.2); }
.ps-orbit-rings::before { position:absolute; inset:0; border-radius:50%; }
.ps-orbit-rings::after { position:absolute; inset:58px; border-radius:50%; border-style:dashed; }
.ps-orbit-rings span:nth-child(1) { width:12px; height:12px; top:15px; left:100px; border:0; background:#58d6ff; box-shadow:0 0 22px #2aaeff; }
.ps-orbit-rings span:nth-child(2) { width:8px; height:8px; right:24px; bottom:105px; border:0; background:#45dd9a; box-shadow:0 0 18px rgba(69,221,154,.85); }
.ps-orbit-rings span:nth-child(3) { inset:102px; border-color:rgba(87,200,255,.13); }
.ps-orbit-core {
  position:absolute;
  z-index:3;
  left:50%;
  top:48%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  width:190px;
  height:190px;
  border:1px solid rgba(108,207,255,.42);
  border-radius:50% !important;
  background:linear-gradient(145deg,rgba(10,46,84,.96),rgba(5,24,52,.98));
  box-shadow:0 28px 80px rgba(0,9,28,.4),inset 0 0 45px rgba(34,145,255,.12);
  transform:translate(-50%,-50%);
  backdrop-filter:blur(12px);
}
.ps-orbit-core small { color:#77d8ff; font-size:9px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; }
.ps-orbit-core strong { margin:7px 0 4px; color:#fff; font-size:55px; line-height:.9; letter-spacing:-.06em; }
.ps-orbit-core span { color:#b9cce1; font-size:11px; }
.ps-orbit-node {
  position:absolute;
  z-index:4;
  display:flex;
  align-items:center;
  gap:10px;
  min-width:145px;
  padding:11px 14px;
  border:1px solid rgba(117,200,255,.25);
  background:rgba(5,27,59,.86);
  color:#dce9f8;
  box-shadow:0 16px 35px rgba(0,10,30,.24);
  backdrop-filter:blur(14px);
  animation:psFloat 5s ease-in-out infinite;
}
.ps-orbit-node i { display:grid; place-items:center; width:35px; height:35px; color:#5dd7ff; font-size:15px; background:rgba(44,158,255,.13); }
.ps-orbit-node span { font-size:10px; font-weight:650; line-height:1.35; }
.ps-orbit-node-one { top:42px; left:10px; }
.ps-orbit-node-two { top:145px; right:-3px; animation-delay:-1.6s; }
.ps-orbit-node-three { left:13px; bottom:94px; animation-delay:-3.1s; }
.ps-orbit-proof {
  position:absolute;
  z-index:5;
  right:4px;
  bottom:30px;
  display:flex;
  align-items:center;
  gap:11px;
  padding:13px 16px;
  border:1px solid rgba(109,197,255,.28);
  background:#071d3c;
  box-shadow:0 18px 45px rgba(0,10,30,.3);
}
.ps-orbit-proof>i { display:grid; place-items:center; width:39px; height:39px; border-radius:50% !important; color:#fff; background:linear-gradient(145deg,#52d2ff,#1478e8); }
.ps-orbit-proof strong,.ps-orbit-proof small { display:block; }
.ps-orbit-proof strong { color:#fff; font-size:11px; }
.ps-orbit-proof small { margin-top:3px; color:#7fa4c8; font-size:8px; text-transform:uppercase; letter-spacing:.08em; }

@media(max-width:991px){
  .ps-advisory-orbit{min-height:450px;margin:15px auto 0}
}
@media(max-width:575px){
  .ps-advisory-orbit{min-height:390px;transform:scale(.9);transform-origin:center top}
  .ps-orbit-node{min-width:125px;padding:9px}
  .ps-orbit-node-two{right:0}
}

/* v31: requested label cleanup and more compact authorities opening. */
.ps-journey-tabs button.active::after { content:none !important; display:none !important; }
.ps-authorities { padding-top:54px !important; }
.ps-logo-panels { margin-top:0 !important; }

/* v32: minimal line-separated company metrics. */
.ps-numbers-section {
  position:relative;
  overflow:hidden;
  padding:92px 0 !important;
  background:linear-gradient(145deg,#061327,#081b35) !important;
}
.ps-numbers-section::after {
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  left:-360px;
  bottom:-390px;
  border:1px solid rgba(38,150,255,.16);
  border-radius:50%;
  box-shadow:0 0 0 75px rgba(25,126,230,.025),0 0 0 150px rgba(25,126,230,.018);
}
.ps-numbers-section .container { position:relative; z-index:1; }
.ps-numbers-section .counter-wrapper {
  display:grid !important;
  grid-template-columns:minmax(280px,.85fr) repeat(2,minmax(230px,1fr)) !important;
  gap:0 !important;
  align-items:stretch !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.ps-numbers-intro {
  grid-row:span 2;
  align-self:stretch;
  padding:8px 50px 8px 0;
}
.ps-numbers-intro>span {
  display:block;
  margin-bottom:18px;
  color:#56d1ff;
  font-size:12px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.ps-numbers-intro h2 {
  max-width:360px;
  margin:0 0 21px;
  color:#f7fbff;
  font-size:clamp(34px,3vw,48px);
  font-weight:500;
  line-height:1.06;
  letter-spacing:-.04em;
}
.ps-numbers-intro p {
  max-width:325px;
  margin:0;
  color:#8fa2ba;
  font-size:14px;
  line-height:1.65;
}
.ps-numbers-section .counter-item {
  position:relative;
  display:block !important;
  min-width:0 !important;
  min-height:210px;
  padding:18px 42px 32px !important;
  border:0 !important;
  border-left:1px solid rgba(82,192,255,.34) !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  text-align:left !important;
}
.ps-numbers-section .counter-item:nth-of-type(4),
.ps-numbers-section .counter-item:nth-of-type(5) {
  padding-top:34px !important;
  border-top:1px solid rgba(116,151,191,.14) !important;
}
.ps-numbers-section .counter-item .number {
  margin:0 0 7px !important;
  color:#f8fbff !important;
  font-size:clamp(48px,5vw,72px) !important;
  font-weight:400 !important;
  line-height:1 !important;
  letter-spacing:-.045em;
}
.ps-numbers-section .counter-item .number sup {
  top:-.38em;
  margin-left:3px;
  color:#4fcaff;
  font-size:.45em;
}
.ps-numbers-section .counter-item>.sub-title {
  display:block;
  margin:0 0 9px !important;
  color:#e3ebf5 !important;
  font-size:14px !important;
  font-weight:600 !important;
  letter-spacing:0 !important;
  line-height:1.35;
  text-transform:none !important;
}
.ps-numbers-section .counter-item>p {
  max-width:250px;
  margin:0;
  color:#788ca6;
  font-size:12px;
  line-height:1.5;
}
@media(max-width:991px){
  .ps-numbers-section .counter-wrapper{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .ps-numbers-intro{grid-column:1/-1;grid-row:auto;padding:0 0 44px}
  .ps-numbers-intro h2,.ps-numbers-intro p{max-width:620px}
}
@media(max-width:575px){
  .ps-numbers-section{padding:68px 0 !important}
  .ps-numbers-section .counter-wrapper{grid-template-columns:1fr !important}
  .ps-numbers-section .counter-item{min-height:0;padding:26px 22px !important;border-top:1px solid rgba(116,151,191,.14) !important}
}

/* v33: conversion-led homepage section flow; presentation remains unchanged. */
.site-main { display:flex; flex-direction:column; }
.site-main>.ps-hero { order:1; }
.site-main>.ps-authorities { order:2; }
.site-main>.tj-about-section-five { order:3; }
.site-main>.tj-feature-section { order:4; }
.site-main>.ps-setup-options { order:5; }
.site-main>.h8-services-section { order:6; }
.site-main>.ps-journey { order:7; }
.site-main>.ps-cost-section { order:8; }
.site-main>.ps-numbers-section { order:9; }
.site-main>.ps-cases { order:10; }

/* v36: concise section intros and consistent centered case-study heading. */
.ps-setup-options-heading { margin-bottom:46px !important; }
.ps-journey-heading { margin-bottom:42px !important; }
.ps-cost-head { padding-bottom:38px !important; }
.ps-cases-heading {
  display:block !important;
  max-width:900px;
  margin:0 auto 34px !important;
  text-align:center;
}
.ps-cases-kicker { justify-content:center; }
.ps-cases-kicker::after { content:""; width:32px; height:1px; background:#1677e8; }
.ps-cases-heading h2 { margin-left:auto !important; margin-right:auto !important; }
.ps-cases-heading>p { max-width:600px !important; margin:18px auto 0 !important; }

.h8-testimonial .h8-testimonial-fanfact .counter-item {
  grid-template-columns:1fr !important;
  gap:10px !important;
  justify-items:start;
}
.h8-testimonial .h8-testimonial-fanfact .sub-title {
  max-width:300px !important;
  padding-left:0 !important;
  border-left:0 !important;
}

/* v39-final: popup proportions must override the base dialog rules. */
.ps-consult-dialog{grid-template-columns:minmax(330px,400px) minmax(500px,1fr) !important;width:min(980px,calc(100vw - 48px)) !important;align-items:stretch}
.ps-consult-visual{min-height:620px !important;max-height:680px;align-self:center}
.ps-consult-visual>img{object-position:center !important}
.ps-consult-visual-copy{left:32px !important;right:32px !important;bottom:32px !important}
.ps-consult-visual-copy>strong{font-size:31px !important}
.ps-consult-consent input[type="checkbox"]{appearance:auto !important;flex:0 0 16px !important;width:16px !important;min-width:16px !important;height:16px !important;margin:1px 0 0 !important;padding:0 !important}
.ps-consult-submit{justify-self:start !important;justify-content:flex-start !important;gap:28px;width:auto !important;min-width:300px;min-height:50px;padding:6px 7px 6px 21px !important}
.ps-consult-submit i{margin-left:auto}
@media(max-width:850px){.ps-consult-dialog{grid-template-columns:1fr !important;width:min(620px,calc(100vw - 28px)) !important}.ps-consult-visual{min-height:190px !important;max-height:190px;align-self:auto}.ps-consult-visual>img{object-position:center 63% !important}}
@media(max-width:520px){.ps-consult-submit{justify-self:stretch !important;width:100% !important;min-width:0}}

/* v63-final: brighter journey surface and compact calculator guidance. */
.ps-journey {
  background:
    radial-gradient(circle at 82% 12%,rgba(40,151,255,.28),transparent 34%),
    radial-gradient(circle at 12% 88%,rgba(25,109,220,.18),transparent 38%),
    linear-gradient(135deg,#0c2342 0%,#0d315c 52%,#0b274b 100%) !important;
}
.ps-journey::before {
  opacity:.42 !important;
  background-image:
    linear-gradient(rgba(104,190,255,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(104,190,255,.055) 1px,transparent 1px) !important;
}
.ps-journey::after {
  content:"";
  position:absolute;
  inset:-30% -10%;
  pointer-events:none;
  background:linear-gradient(115deg,transparent 30%,rgba(86,205,255,.09) 48%,transparent 65%);
  animation:psJourneyGlow 11s ease-in-out infinite alternate;
}
@keyframes psJourneyGlow {
  from { transform:translate3d(-5%,0,0); opacity:.55; }
  to { transform:translate3d(8%,0,0); opacity:1; }
}
.ps-journey-heading h2 span { color:#62caff !important; }
.ps-journey-tabs button {
  border-color:rgba(114,197,255,.18) !important;
  background:rgba(17,60,105,.58) !important;
}
.ps-journey-tabs button:hover { background:rgba(29,84,139,.72) !important; }
.ps-journey-tabs button.active {
  border-color:rgba(86,203,255,.7) !important;
  background:linear-gradient(100deg,rgba(27,132,230,.48),rgba(28,82,139,.68)) !important;
  box-shadow:inset 3px 0 0 #55d0ff,0 12px 34px rgba(0,25,60,.22) !important;
}
.ps-journey-number { background:#183f69 !important; border-color:rgba(123,202,255,.28) !important; color:#aac9e7 !important; }
.ps-journey-detail {
  border-color:rgba(117,201,255,.28) !important;
  background:
    radial-gradient(circle at 100% 0,rgba(49,165,255,.26),transparent 43%),
    linear-gradient(145deg,rgba(36,90,148,.9),rgba(16,52,91,.94)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 28px 70px rgba(0,18,45,.22) !important;
}
.ps-journey-detail>p { color:#c2d5e8 !important; }
.ps-journey-detail li { background:rgba(255,255,255,.07) !important; border-color:rgba(160,216,255,.16) !important; color:#e0ebf6 !important; }

.ps-cost-guidance {
  margin-top:14px !important;
  padding:14px 15px !important;
}
.ps-cost-guidance-head { gap:10px !important; }
.ps-cost-guidance-head>span { width:38px !important; height:38px !important; }
.ps-cost-guidance-head strong { font-size:14px !important; }
.ps-cost-guidance-steps {
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:8px !important;
  margin-top:12px !important;
}
.ps-cost-guidance-steps>div {
  display:grid !important;
  grid-template-columns:34px minmax(0,1fr) !important;
  align-items:center !important;
  gap:9px !important;
  min-height:64px !important;
  padding:9px 10px !important;
}
.ps-cost-guidance-steps>div>i {
  width:34px !important;
  height:34px !important;
  font-size:13px !important;
}
.ps-cost-guidance-steps span {
  display:block !important;
  margin:0 !important;
}
.ps-cost-guidance-steps b { display:none !important; }
.ps-cost-guidance-steps strong { display:block; font-size:11px !important; line-height:1.25 !important; }
.ps-cost-guidance-steps small { display:block; margin-top:2px !important; font-size:9px !important; line-height:1.3 !important; }

@media(max-width:991px) {
  .ps-cost-guidance-steps { grid-template-columns:1fr !important; }
}
@media(prefers-reduced-motion:reduce) {
  .ps-journey::after { animation:none; }
}

/* v61: compact cost calculator with in-field prompts. */
.ps-cost-grid {
  align-items:start !important;
  gap:24px !important;
  padding:30px 34px 34px !important;
}
.ps-cost-form,
.ps-cost-summary {
  align-self:start !important;
}
.ps-cost-form>h3 {
  margin-bottom:14px !important;
  font-size:19px !important;
}
.ps-cost-fields {
  gap:12px !important;
  margin-top:0 !important;
}
.ps-cost-fields label {
  position:relative;
  display:block !important;
  min-width:0;
}
.ps-cost-fields label>span {
  position:absolute;
  z-index:2;
  top:7px;
  left:16px;
  max-width:calc(100% - 48px);
  overflow:hidden;
  color:#71869d !important;
  font-size:9px !important;
  font-weight:700;
  line-height:1;
  letter-spacing:.035em;
  white-space:nowrap;
  text-overflow:ellipsis;
  pointer-events:none;
}
.ps-cost-fields select {
  height:58px !important;
  padding:18px 40px 4px 16px !important;
  border-radius:10px !important;
  color:#1d3c5e !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:1.2 !important;
}
.ps-cost-form fieldset {
  margin-top:14px !important;
  padding:14px !important;
}
.ps-cost-form legend {
  margin-bottom:10px !important;
  font-size:11px !important;
}
.ps-cost-addons {
  gap:8px !important;
}
.ps-cost-addons label {
  min-height:46px !important;
  padding:9px 11px !important;
  font-size:11px !important;
}
.ps-cost-guidance {
  margin-top:14px !important;
  padding:14px !important;
}
.ps-cost-guidance-head>span {
  width:38px !important;
  height:38px !important;
}
.ps-cost-guidance-head small { font-size:9px !important; }
.ps-cost-guidance-head strong { font-size:13px !important; }
.ps-cost-guidance-steps {
  gap:7px !important;
  margin-top:11px !important;
}
.ps-cost-guidance-steps>div {
  min-height:88px !important;
  padding:10px !important;
}
.ps-cost-guidance-steps>div>i {
  flex-basis:30px !important;
  width:30px !important;
  height:30px !important;
  font-size:12px !important;
}
.ps-cost-guidance-steps span { margin-top:7px !important; }
.ps-cost-guidance-steps strong { font-size:10px !important; }
.ps-cost-guidance-steps small { font-size:8px !important; line-height:1.35 !important; }
.ps-cost-summary {
  padding:22px !important;
  display:block !important;
}
.ps-cost-summary-title>span {
  width:34px !important;
  height:34px !important;
  border-radius:10px !important;
}
.ps-cost-summary-title h3 { font-size:18px !important; }
.ps-cost-summary>p {
  margin:16px 0 3px !important;
  font-size:10px !important;
}
.ps-cost-summary>strong {
  font-size:clamp(29px,2.7vw,40px) !important;
  line-height:1.05 !important;
}
.ps-cost-summary>small { font-size:10px !important; }
.ps-cost-summary ul { margin-top:14px !important; }
.ps-cost-summary li {
  padding:8px 0 !important;
  font-size:10px !important;
}
.ps-cost-summary .ps-cost-cta {
  margin-top:15px !important;
  min-height:46px !important;
}
.ps-cost-summary em {
  margin-top:10px !important;
  font-size:9px !important;
  line-height:1.4 !important;
}
@media(max-width:991px){
  .ps-cost-grid{padding:26px 22px 28px !important}
  .ps-cost-fields select{font-size:14px !important}
}
@media(max-width:575px){
  .ps-cost-grid{padding:22px 16px 24px !important}
  .ps-cost-fields{gap:10px !important}
  .ps-cost-fields select{height:56px !important}
}

/* v62: skyline-first hero — Burj Khalifa remains the visual focal point. */
.ps-hero {
  background-image:
    linear-gradient(90deg,rgba(1,8,22,.98) 0%,rgba(2,13,32,.9) 35%,rgba(3,16,38,.34) 60%,rgba(2,10,26,.06) 100%),
    linear-gradient(0deg,rgba(2,10,25,.72) 0%,transparent 42%),
    url("../images/dubai-skyline-luxury.png") !important;
  background-size:100% 100%,100% 100%,auto 94% !important;
  background-position:center,right bottom,right bottom !important;
  background-repeat:no-repeat !important;
}
.ps-hero-grid {
  grid-template-columns:minmax(0,1.18fr) minmax(330px,.56fr) !important;
  gap:clamp(54px,6vw,96px) !important;
}
.ps-hero-visual {
  width:100% !important;
  max-width:430px !important;
  margin-left:auto !important;
  perspective:none !important;
}
.ps-skyline-focus {
  position:relative;
  min-height:475px;
  isolation:isolate;
}
.ps-skyline-focus::before {
  content:"";
  position:absolute;
  z-index:-1;
  width:360px;
  height:360px;
  top:15px;
  right:-60px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(39,157,255,.2),rgba(18,93,186,.06) 48%,transparent 70%);
  filter:blur(2px);
  animation:psSkylineAura 7s ease-in-out infinite;
}
.ps-burj-marker {
  position:absolute;
  top:74px;
  right:42%;
  width:44px;
  height:44px;
  border:1px solid rgba(91,210,255,.45);
  border-radius:50% !important;
  box-shadow:0 0 0 12px rgba(37,151,246,.055),0 0 30px rgba(54,176,255,.2);
  animation:psBurjPulse 3.8s ease-out infinite;
}
.ps-burj-marker::before,
.ps-burj-marker::after {
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  border-radius:50% !important;
  transform:translate(-50%,-50%);
}
.ps-burj-marker::before {
  width:8px;
  height:8px;
  background:#5bd8ff;
  box-shadow:0 0 16px #34b7ff;
}
.ps-burj-marker::after {
  width:1px;
  height:118px;
  top:calc(50% + 81px);
  border-radius:0 !important;
  background:linear-gradient(rgba(91,215,255,.55),transparent);
}
.ps-skyline-proof {
  position:absolute;
  z-index:3;
  right:0;
  bottom:44px;
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  align-items:center;
  gap:15px;
  width:min(100%,360px);
  padding:17px 19px;
  border:1px solid rgba(104,200,255,.32);
  border-radius:16px;
  background:linear-gradient(135deg,rgba(4,24,54,.9),rgba(7,33,67,.78));
  box-shadow:0 22px 58px rgba(0,10,31,.35),inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter:blur(18px) saturate(130%);
  transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease;
}
.ps-skyline-proof:hover {
  transform:translateY(-5px);
  border-color:rgba(98,216,255,.58);
  box-shadow:0 28px 68px rgba(0,13,40,.42),0 0 34px rgba(31,147,246,.12);
}
.ps-skyline-proof-icon {
  display:grid;
  place-items:center;
  width:54px;
  height:54px;
  border-radius:14px;
  color:#fff;
  font-size:20px;
  background:linear-gradient(145deg,#56d4ff,#147ae8);
  box-shadow:0 12px 28px rgba(18,126,233,.3);
}
.ps-skyline-proof small,
.ps-skyline-proof strong { display:block; }
.ps-skyline-proof small {
  color:#68d9ff;
  font-size:9px;
  font-weight:750;
  line-height:1.2;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.ps-skyline-proof strong {
  margin-top:5px;
  color:#fff;
  font-size:16px;
  line-height:1.25;
}
.ps-skyline-proof p {
  display:flex;
  align-items:center;
  gap:7px;
  margin:7px 0 0;
  color:#9fb5ce;
  font-size:9px;
}
.ps-skyline-proof p i {
  width:3px;
  height:3px;
  border-radius:50% !important;
  background:#5bd8ff;
  box-shadow:0 0 8px rgba(91,216,255,.7);
}
@keyframes psSkylineAura {
  0%,100%{opacity:.55;transform:scale(.94)}
  50%{opacity:1;transform:scale(1.06)}
}
@keyframes psBurjPulse {
  0%{box-shadow:0 0 0 0 rgba(65,186,255,.2),0 0 24px rgba(54,176,255,.18)}
  70%,100%{box-shadow:0 0 0 20px rgba(65,186,255,0),0 0 34px rgba(54,176,255,.26)}
}
@media(prefers-reduced-motion:reduce){
  .ps-skyline-focus::before,.ps-burj-marker{animation:none !important}
}
@media(max-width:1199px){
  .ps-hero-grid{grid-template-columns:minmax(0,1fr) 330px !important;gap:42px !important}
  .ps-skyline-focus{min-height:420px}
  .ps-skyline-proof{bottom:30px}
}
@media(max-width:991px){
  .ps-hero{background-size:100% 100%,100% 100%,auto 72% !important;background-position:center,right bottom,72% bottom !important}
  .ps-hero-grid{grid-template-columns:1fr !important}
  .ps-hero-visual{max-width:430px !important;margin:18px auto 0 !important}
  .ps-skyline-focus{min-height:190px}
  .ps-burj-marker{display:none}
  .ps-skyline-focus::before{width:280px;height:220px;top:-35px;right:40px}
  .ps-skyline-proof{right:50%;bottom:12px;transform:translateX(50%);width:min(100%,370px)}
  .ps-skyline-proof:hover{transform:translateX(50%) translateY(-4px)}
}
@media(max-width:575px){
  .ps-hero{background-size:100% 100%,100% 100%,auto 58% !important;background-position:center,right bottom,63% bottom !important}
  .ps-skyline-focus{min-height:175px}
  .ps-skyline-proof{grid-template-columns:44px minmax(0,1fr);gap:12px;padding:14px 15px}
  .ps-skyline-proof-icon{width:44px;height:44px;border-radius:12px;font-size:17px}
  .ps-skyline-proof strong{font-size:14px}
}

/* v63: editorial About section inspired by layered product storytelling. */
.h8-about {
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 8%,rgba(41,150,244,.08),transparent 28%),
    linear-gradient(180deg,#f7faff,#eef4fb) !important;
}
.ps-about-editorial {
  display:grid;
  grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);
  align-items:center;
  gap:clamp(58px,7vw,105px);
}
.ps-about-visual {
  position:relative;
  min-height:600px;
  padding:30px 35px 44px 18px;
}
.ps-about-image-frame {
  position:absolute;
  inset:30px 35px 44px 18px;
  overflow:hidden;
  border-radius:22px;
  background:#0b294e;
  box-shadow:0 30px 70px rgba(12,56,108,.17);
}
.ps-about-image-frame::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 55%,rgba(2,17,39,.28));
  pointer-events:none;
}
.ps-about-image-frame img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(.9) contrast(1.02);
  transition:transform .7s cubic-bezier(.2,.7,.2,1);
}
.ps-about-visual:hover .ps-about-image-frame img { transform:scale(1.035); }
.ps-about-proof {
  position:absolute;
  z-index:3;
  display:flex;
  align-items:center;
  gap:12px;
  padding:14px 16px;
  border:1px solid rgba(18,85,151,.15);
  border-radius:15px;
  background:rgba(255,255,255,.93);
  box-shadow:0 18px 45px rgba(8,47,94,.16);
  backdrop-filter:blur(16px);
}
.ps-about-proof>span {
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  flex:0 0 42px;
  border-radius:12px;
  color:#fff;
  background:linear-gradient(145deg,#55d3ff,#147be8);
}
.ps-about-proof strong,.ps-about-proof small { display:block; }
.ps-about-proof strong { color:#071a36;font-size:19px;line-height:1; }
.ps-about-proof small { margin-top:4px;color:#6d8198;font-size:9px;line-height:1.35; }
.ps-about-proof-primary { top:7px;right:0;min-width:215px; }
.ps-about-proof-secondary { left:0;bottom:12px;min-width:205px; }
.ps-about-expert-pill {
  position:absolute;
  z-index:3;
  right:8px;
  bottom:80px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:10px 13px;
  border:1px solid rgba(105,209,255,.34);
  border-radius:999px;
  color:#dff4ff;
  background:rgba(5,28,59,.86);
  box-shadow:0 14px 34px rgba(0,13,39,.25);
  font-size:9px;
  font-weight:700;
  letter-spacing:.04em;
  backdrop-filter:blur(12px);
}
.ps-about-expert-pill i { color:#5bd8ff; }
.ps-about-copy .sec-heading { margin-bottom:20px !important; }
.ps-about-copy .sec-title {
  max-width:650px;
  font-size:clamp(38px,4vw,61px) !important;
  line-height:1.04 !important;
  letter-spacing:-.045em !important;
}
.ps-about-intro { max-width:650px; }
.ps-about-intro p { margin:0;color:#566b83;font-size:15px;line-height:1.72; }
.ps-about-benefits { display:grid;gap:10px;margin:25px 0 0;padding:0;list-style:none; }
.ps-about-benefits li {
  display:grid;
  grid-template-columns:46px minmax(0,1fr);
  align-items:center;
  gap:14px;
  padding:13px 15px;
  border:1px solid #dbe7f3;
  border-radius:14px;
  background:rgba(255,255,255,.72);
  transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease;
}
.ps-about-benefits li:hover { transform:translateX(5px);border-color:#acd5fa;box-shadow:0 12px 30px rgba(18,78,141,.08); }
.ps-about-benefits li>span {
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border-radius:13px;
  color:#1687ff;
  background:#e9f4ff;
  font-size:17px;
}
.ps-about-benefits strong,.ps-about-benefits small { display:block; }
.ps-about-benefits strong { color:#0a2242;font-size:14px; }
.ps-about-benefits small { margin-top:3px;color:#70839a;font-size:10px;line-height:1.45; }
.ps-about-quote {
  margin:17px 0 0;
  padding:15px 18px;
  border-left:3px solid #1687ff;
  border-radius:0 12px 12px 0;
  color:#1b3b5e;
  background:rgba(255,255,255,.68);
  font-size:12px;
  font-weight:650;
  line-height:1.55;
}
.ps-about-action { margin-top:20px; }
.ps-btn-dark {
  display:inline-flex;
  align-items:center;
  gap:12px;
  min-height:50px;
  padding:6px 21px 6px 7px;
  border:1px solid #0a315d;
  border-radius:999px;
  color:#fff;
  background:#071d3c;
  box-shadow:0 15px 35px rgba(7,29,60,.15);
}
.ps-btn-dark i {
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:50%;
  background:linear-gradient(145deg,#55d3ff,#147be8);
  transition:transform .3s ease;
}
.ps-btn-dark span { font-size:13px;font-weight:700; }
.ps-btn-dark:hover { color:#fff;border-color:#1687ff; }
.ps-btn-dark:hover i { transform:rotate(45deg); }

/* v63: readable but compact calculator. */
.ps-cost-fields label>span { display:none !important; }
.ps-cost-fields select {
  height:58px !important;
  padding:4px 42px 4px 16px !important;
  font-size:13px !important;
}
.ps-cost-summary>strong { font-size:clamp(27px,2.35vw,36px) !important; }
.ps-cost-summary li { padding:9px 0 !important;font-size:12px !important; }
.ps-cost-summary li strong { font-size:12px !important; }
.ps-cost-summary>small { font-size:11px !important; }
.ps-cost-summary em { font-size:10px !important;line-height:1.45 !important; }
.ps-cost-summary .ps-cost-cta span { font-size:13px !important; }
.ps-cost-guidance { padding:13px !important; }
.ps-cost-guidance-steps { grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:8px !important; }
.ps-cost-guidance-steps>div {
  display:grid !important;
  grid-template-columns:36px minmax(0,1fr) !important;
  align-items:center !important;
  gap:10px !important;
  min-height:82px !important;
  padding:10px !important;
}
.ps-cost-guidance-steps>div>i { width:36px !important;height:36px !important;flex-basis:36px !important; }
.ps-cost-guidance-steps span {
  display:grid !important;
  grid-template-columns:26px minmax(0,1fr) !important;
  align-items:start !important;
  margin:0 !important;
}
.ps-cost-guidance-steps b { grid-row:1/3 !important;padding-top:1px !important; }
.ps-cost-guidance-steps strong { font-size:11px !important; }
.ps-cost-guidance-steps small { margin-top:2px !important;font-size:9px !important;line-height:1.35 !important; }
@media(max-width:991px){
  .ps-about-editorial{grid-template-columns:1fr;gap:45px}
  .ps-about-visual{width:min(650px,100%);min-height:540px;margin:auto}
  .ps-about-copy{text-align:left}
  .ps-cost-guidance-steps{grid-template-columns:1fr !important}
}
@media(max-width:575px){
  .ps-about-visual{min-height:430px;padding:20px 12px 36px}
  .ps-about-image-frame{inset:20px 12px 36px}
  .ps-about-proof{padding:10px 11px}
  .ps-about-proof-primary{right:0;min-width:180px}
  .ps-about-proof-secondary{left:0;min-width:178px}
  .ps-about-proof>span{width:36px;height:36px;flex-basis:36px}
  .ps-about-proof strong{font-size:16px}
  .ps-about-expert-pill{right:0;bottom:64px}
  .ps-about-copy .sec-title{font-size:38px !important}
  .ps-cost-fields select{font-size:12px !important}
}

/* v53: Zoom-inspired expanding case-study showcase. */
.ps-case-accordion{
  display:flex;
  gap:12px;
  width:100%;
  min-height:540px;
  margin-top:38px;
  overflow:hidden;
}
.ps-case-panel{
  position:relative;
  flex:0 0 112px;
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(105,165,223,.32);
  border-radius:18px;
  background:#071a34;
  cursor:pointer;
  isolation:isolate;
  transition:flex-basis .72s cubic-bezier(.22,1,.36,1),transform .45s ease,border-color .45s ease,filter .45s ease;
}
.ps-case-panel::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(180deg,rgba(3,17,37,.12),rgba(3,17,37,.83));
  transition:opacity .45s ease;
}
.ps-case-panel>img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  filter:saturate(.78) brightness(.68);
  transform:scale(1.04);
  transition:filter .6s ease,transform 1s cubic-bezier(.22,1,.36,1);
}
.ps-case-panel-shade{
  position:absolute;
  inset:0;
  z-index:2;
  background:linear-gradient(90deg,rgba(2,17,38,.94) 0%,rgba(3,22,46,.72) 48%,rgba(3,18,38,.28) 100%);
  opacity:.72;
  transition:opacity .45s ease;
}
.ps-case-panel.is-active{
  flex:1 1 820px;
  border-color:rgba(69,189,255,.62);
  cursor:default;
}
.ps-case-panel.is-active>img{filter:saturate(.95) brightness(.78);transform:scale(1)}
.ps-case-panel.is-active::after{opacity:.55}
.ps-case-panel.is-active .ps-case-panel-shade{opacity:1}
.ps-case-panel:focus-visible{outline:3px solid rgba(66,187,255,.75);outline-offset:-4px}
.ps-case-panel-rail{
  position:absolute;
  left:50%;
  bottom:30px;
  z-index:4;
  display:flex;
  align-items:center;
  gap:16px;
  width:max-content;
  transform:translateX(-50%) rotate(-90deg) translateX(50%);
  transform-origin:center;
  color:#fff;
  white-space:nowrap;
  transition:opacity .25s ease,visibility .25s ease;
}
.ps-case-panel-rail span{color:#55ceff;font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.ps-case-panel-rail strong{font-size:18px;font-weight:700}
.ps-case-panel.is-active .ps-case-panel-rail{opacity:0;visibility:hidden}
.ps-case-panel-content{
  position:absolute;
  left:clamp(28px,4vw,64px);
  right:clamp(28px,4vw,64px);
  bottom:clamp(28px,4vw,54px);
  z-index:5;
  max-width:850px;
  color:#fff;
  opacity:0;
  transform:translateY(22px);
  visibility:hidden;
  transition:opacity .38s ease .16s,transform .55s cubic-bezier(.22,1,.36,1) .12s,visibility 0s linear .4s;
}
.ps-case-panel.is-active .ps-case-panel-content{opacity:1;transform:none;visibility:visible;transition-delay:.2s,.16s,0s}
.ps-case-panel-meta{display:block;margin-bottom:15px;color:#58d0ff;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.ps-case-panel-content h3{max-width:760px;margin:0;color:#fff;font-size:clamp(31px,3.2vw,52px);line-height:1.04;letter-spacing:-.045em}
.ps-case-panel-content>p{max-width:720px;margin:18px 0 24px;color:#c8d8eb;font-size:16px;line-height:1.65}
.ps-case-panel-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:24px}
.ps-case-panel-details>div{display:flex;align-items:center;gap:11px;min-height:68px;padding:12px 14px;border:1px solid rgba(116,188,245,.22);border-radius:12px;background:rgba(8,34,67,.74);backdrop-filter:blur(8px)}
.ps-case-panel-details i{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:9px;background:rgba(35,157,244,.16);color:#55ceff;font-size:15px}
.ps-case-panel-details span{color:#eaf4ff;font-size:13px;font-weight:700;line-height:1.3}
.ps-case-panel-details small{display:block;margin-bottom:3px;color:#7f9ab9;font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.ps-case-panel-content>a{display:inline-flex;align-items:center;gap:14px;color:#fff;font-size:15px;font-weight:800}
.ps-case-panel-content>a i{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:linear-gradient(145deg,#49caff,#1688ef);transition:transform .3s ease}
.ps-case-panel-content>a:hover i{transform:translate(3px,-3px)}

@media(max-width:991px){
  .ps-case-accordion{display:grid;gap:16px;min-height:0;overflow:visible}
  .ps-case-panel,.ps-case-panel.is-active{min-height:440px;flex:none;cursor:default}
  .ps-case-panel-rail{display:none}
  .ps-case-panel-content,.ps-case-panel.is-active .ps-case-panel-content{opacity:1;visibility:visible;transform:none;transition:none}
  .ps-case-panel>img{filter:saturate(.9) brightness(.72);transform:none}
  .ps-case-panel-shade{opacity:1}
}
@media(max-width:650px){
  .ps-case-accordion{margin-top:24px}
  .ps-case-panel,.ps-case-panel.is-active{min-height:520px}
  .ps-case-panel-content{left:20px;right:20px;bottom:22px}
  .ps-case-panel-content h3{font-size:30px}
  .ps-case-panel-content>p{font-size:14px;line-height:1.55}
  .ps-case-panel-details{grid-template-columns:1fr;gap:7px;margin-bottom:18px}
  .ps-case-panel-details>div{min-height:54px;padding:8px 10px}
}
@media(prefers-reduced-motion:reduce){
  .ps-case-panel,.ps-case-panel>img,.ps-case-panel-content,.ps-case-panel-content>a i{transition:none!important}
}

/* v54: light consultation form panel and a restrained Dubai footer silhouette. */
.ps-consult-cta-shell{
  background:#fff !important;
  border-color:#d6e3f1 !important;
  box-shadow:0 28px 72px rgba(25,55,91,.13) !important;
}
.ps-consult-cta-copy{
  color:#071a34 !important;
  background:linear-gradient(145deg,#fff 0%,#f6f9fd 100%) !important;
}
.ps-consult-cta-copy>span{color:#168df1 !important}
.ps-consult-cta-copy h2{color:#07162e !important}
.ps-consult-cta-copy>p{color:#64768d !important}
.ps-consult-inline-form label>span{
  color:#263c57 !important;
  font-size:12px !important;
}
.ps-consult-inline-form input:not([type=checkbox]),
.ps-consult-inline-form select{
  height:54px !important;
  padding:0 17px !important;
  border-color:#cfdeec !important;
  background:#f7f9fc !important;
  color:#102842 !important;
  color-scheme:light !important;
  font-size:15px !important;
  box-shadow:0 1px 0 rgba(255,255,255,.9) inset !important;
}
.ps-consult-inline-form input::placeholder{color:#7f8fa4 !important}
.ps-consult-inline-form select option{background:#fff !important;color:#102842 !important;font-size:15px !important}
.ps-consult-inline-form input:focus,
.ps-consult-inline-form select:focus{
  border-color:#258ff0 !important;
  background:#fff !important;
  box-shadow:0 0 0 4px rgba(37,143,240,.11) !important;
}
.ps-consult-inline-consent span{color:#667a92 !important;font-size:10px !important}
.ps-consult-cta-button{
  border-color:#09264a !important;
  background:#071d3a !important;
  color:#fff !important;
  min-height:56px !important;
  padding-left:25px !important;
  font-size:14px !important;
}
.ps-consult-cta-button i{width:42px !important;height:42px !important}

.tj-footer-area.footer-2.style-2::after{
  content:"";
  position:absolute;
  z-index:0;
  right:-3%;
  bottom:0;
  width:min(76vw,1280px);
  height:58%;
  pointer-events:none;
  background:url("../images/case-1.jpg") center 34%/cover no-repeat;
  filter:grayscale(1) contrast(1.15) brightness(.64) saturate(.35);
  opacity:.105;
  mix-blend-mode:screen;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.35) 20%,#000 58%),linear-gradient(0deg,#000 0%,rgba(0,0,0,.78) 55%,transparent 100%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.35) 20%,#000 58%),linear-gradient(0deg,#000 0%,rgba(0,0,0,.78) 55%,transparent 100%);
  mask-composite:intersect;
}
@media(max-width:991px){
  .tj-footer-area.footer-2.style-2::after{right:-24%;width:130vw;height:44%;opacity:.08}
}
@media(max-width:575px){
  .ps-consult-inline-form input:not([type=checkbox]),.ps-consult-inline-form select{font-size:16px !important}
  .tj-footer-area.footer-2.style-2::after{right:-48%;width:180vw;height:34%;opacity:.07}
}

/* v55: stable editorial case cards and a true CSS-vector Dubai skyline. */
.ps-case-accordion{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px !important;
  min-height:0 !important;
  overflow:visible !important;
}
.ps-case-panel,
.ps-case-panel.is-active{
  flex:none !important;
  min-height:560px !important;
  cursor:pointer !important;
  border-color:rgba(87,163,226,.3) !important;
  transform:none !important;
}
.ps-case-panel-rail{display:none !important}
.ps-case-panel>img,
.ps-case-panel.is-active>img{
  filter:saturate(.82) brightness(.69) !important;
  transform:scale(1.02) !important;
  transition:filter .55s ease,transform .75s cubic-bezier(.22,1,.36,1) !important;
}
.ps-case-panel::after,
.ps-case-panel.is-active::after{opacity:.68 !important}
.ps-case-panel-shade,
.ps-case-panel.is-active .ps-case-panel-shade{
  opacity:1 !important;
  background:linear-gradient(180deg,rgba(3,18,38,.08) 12%,rgba(3,19,42,.5) 46%,rgba(3,17,37,.98) 92%) !important;
}
.ps-case-panel-content,
.ps-case-panel.is-active .ps-case-panel-content{
  left:28px !important;
  right:28px !important;
  bottom:28px !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:translateY(116px) !important;
  transition:transform .58s cubic-bezier(.22,1,.36,1) !important;
}
.ps-case-panel-content h3{font-size:clamp(29px,2.2vw,39px) !important;line-height:1.08 !important}
.ps-case-panel-content>p{
  min-height:52px;
  margin:15px 0 18px !important;
  color:#c6d5e7 !important;
  font-size:14px !important;
  line-height:1.55 !important;
}
.ps-case-panel-details{
  grid-template-columns:1fr !important;
  gap:7px !important;
  margin-bottom:18px !important;
  opacity:0;
  transform:translateY(18px);
  transition:opacity .3s ease,transform .45s ease;
}
.ps-case-panel-details>div{min-height:48px !important;padding:7px 10px !important}
.ps-case-panel-details i{flex-basis:31px !important;width:31px !important;height:31px !important}
.ps-case-panel-content>a{opacity:0;transform:translateY(12px);transition:opacity .3s ease,transform .4s ease}
.ps-case-panel:hover,
.ps-case-panel:focus-within{border-color:rgba(72,192,255,.72) !important;box-shadow:0 24px 60px rgba(4,25,55,.22)}
.ps-case-panel:hover>img,
.ps-case-panel:focus-within>img{filter:saturate(.98) brightness(.76) !important;transform:scale(1.065) !important}
.ps-case-panel:hover .ps-case-panel-content,
.ps-case-panel:focus-within .ps-case-panel-content{transform:none !important}
.ps-case-panel:hover .ps-case-panel-details,
.ps-case-panel:focus-within .ps-case-panel-details,
.ps-case-panel:hover .ps-case-panel-content>a,
.ps-case-panel:focus-within .ps-case-panel-content>a{opacity:1;transform:none}

.tj-footer-area.footer-2.style-2::after{
  right:0 !important;
  bottom:0 !important;
  width:100% !important;
  height:260px !important;
  background:linear-gradient(180deg,rgba(89,190,255,.23),rgba(26,104,186,.055)) !important;
  filter:none !important;
  opacity:.48 !important;
  mix-blend-mode:screen !important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 18%,#000 88%,transparent 100%) !important;
  mask-image:linear-gradient(90deg,transparent 0%,#000 18%,#000 88%,transparent 100%) !important;
  -webkit-mask-composite:initial !important;
  mask-composite:initial !important;
  clip-path:polygon(
    0 100%,0 88%,3% 88%,3% 75%,5% 75%,5% 90%,8% 90%,8% 67%,10% 67%,10% 83%,12% 83%,12% 62%,14% 62%,14% 88%,17% 88%,17% 72%,19% 72%,19% 58%,21% 58%,21% 84%,24% 84%,24% 70%,26% 70%,26% 92%,29% 92%,29% 64%,31% 64%,31% 45%,32% 45%,32.5% 28%,33% 45%,34% 45%,34% 79%,37% 79%,37% 60%,39% 60%,39% 88%,42% 88%,42% 71%,44% 71%,44% 54%,46% 54%,46% 82%,49% 82%,49% 68%,51% 68%,51% 90%,54% 90%,54% 61%,56% 61%,56% 75%,58% 75%,58% 52%,60% 52%,60% 85%,63% 85%,63% 69%,65% 69%,65% 90%,68% 90%,68% 74%,70% 74%,70% 56%,72% 56%,72% 82%,75% 82%,75% 65%,77% 65%,77% 90%,80% 90%,80% 71%,82% 71%,82% 49%,84% 49%,84% 86%,87% 86%,87% 62%,89% 62%,89% 79%,91% 79%,91% 69%,93% 69%,93% 88%,96% 88%,96% 73%,98% 73%,98% 90%,100% 90%,100% 100%
  ) !important;
}
@media(max-width:991px){
  .ps-case-accordion{grid-template-columns:1fr !important}
  .ps-case-panel,.ps-case-panel.is-active{min-height:520px !important}
  .ps-case-panel-content,.ps-case-panel.is-active .ps-case-panel-content{transform:none !important}
  .ps-case-panel-details,.ps-case-panel-content>a{opacity:1 !important;transform:none !important}
  .tj-footer-area.footer-2.style-2::after{height:190px !important}
}
@media(max-width:575px){
  .ps-case-panel,.ps-case-panel.is-active{min-height:550px !important}
  .ps-case-panel-content,.ps-case-panel.is-active .ps-case-panel-content{left:20px !important;right:20px !important;bottom:22px !important}
  .tj-footer-area.footer-2.style-2::after{right:0 !important;width:100% !important;height:150px !important;opacity:.38 !important}
}
@media(prefers-reduced-motion:reduce){
  .ps-case-panel>img,.ps-case-panel-content,.ps-case-panel-details,.ps-case-panel-content>a{transition:none !important}
}

/* v56: restore the expanding showcase; activation is click/focus only. */
@media(min-width:992px){
  .ps-case-accordion{
    display:flex !important;
    grid-template-columns:none !important;
    gap:12px !important;
    min-height:540px !important;
    overflow:hidden !important;
  }
  .ps-case-panel,
  .ps-case-panel.is-active{
    min-height:540px !important;
    transform:none !important;
    box-shadow:none !important;
  }
  .ps-case-panel{
    flex:0 0 112px !important;
    cursor:pointer !important;
    border-color:rgba(105,165,223,.32) !important;
    transition:flex-basis .66s cubic-bezier(.22,1,.36,1),border-color .3s ease,filter .3s ease !important;
  }
  .ps-case-panel.is-active{
    flex:1 1 820px !important;
    cursor:default !important;
    border-color:rgba(69,189,255,.62) !important;
  }
  .ps-case-panel-rail{display:flex !important}
  .ps-case-panel.is-active .ps-case-panel-rail{display:flex !important;opacity:0 !important;visibility:hidden !important}
  .ps-case-panel>img,
  .ps-case-panel.is-active>img{
    filter:saturate(.78) brightness(.68) !important;
    transform:scale(1.04) !important;
  }
  .ps-case-panel.is-active>img{filter:saturate(.95) brightness(.78) !important;transform:scale(1) !important}
  .ps-case-panel-shade{opacity:.72 !important;background:linear-gradient(90deg,rgba(2,17,38,.94),rgba(3,22,46,.72) 48%,rgba(3,18,38,.28)) !important}
  .ps-case-panel.is-active .ps-case-panel-shade{opacity:1 !important}
  .ps-case-panel-content,
  .ps-case-panel:hover .ps-case-panel-content,
  .ps-case-panel:focus-within .ps-case-panel-content{
    left:clamp(28px,4vw,64px) !important;
    right:clamp(28px,4vw,64px) !important;
    bottom:clamp(28px,4vw,54px) !important;
    opacity:0 !important;
    visibility:hidden !important;
    transform:translateY(22px) !important;
    transition:opacity .3s ease,transform .48s cubic-bezier(.22,1,.36,1),visibility 0s linear .35s !important;
  }
  .ps-case-panel.is-active .ps-case-panel-content,
  .ps-case-panel.is-active:hover .ps-case-panel-content,
  .ps-case-panel.is-active:focus-within .ps-case-panel-content{
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    transition-delay:.16s,.12s,0s !important;
  }
  .ps-case-panel-content h3{font-size:clamp(31px,3.2vw,52px) !important;line-height:1.04 !important}
  .ps-case-panel-content>p{min-height:0 !important;margin:18px 0 24px !important;font-size:16px !important;line-height:1.65 !important}
  .ps-case-panel-details{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:10px !important;
    margin-bottom:24px !important;
    opacity:1 !important;
    transform:none !important;
  }
  .ps-case-panel-details>div{min-height:68px !important;padding:12px 14px !important}
  .ps-case-panel-content>a{opacity:1 !important;transform:none !important}
  .ps-case-panel:not(.is-active):hover{border-color:rgba(83,195,255,.62) !important;filter:brightness(1.08)}
}

/* v57: brighter split-layout setup cards while retaining the 3D flip. */
.ps-setup-option-card.ps-flip-card{min-height:455px !important}
.ps-flip-inner{height:455px !important}
.ps-flip-front{
  display:block !important;
  padding:0 !important;
  border-color:#d5e3f1 !important;
  background:#fff !important;
  color:#071a34 !important;
}
.ps-flip-front::before{
  z-index:-1 !important;
  inset:0 0 38% !important;
  background:linear-gradient(180deg,rgba(4,18,38,.02) 30%,rgba(4,18,38,.34) 100%) !important;
}
.ps-flip-image{
  z-index:-2 !important;
  bottom:auto !important;
  height:62% !important;
  object-position:center !important;
  filter:saturate(.98) contrast(1.02) brightness(.98) !important;
  transform:scale(1.01);
  transition:transform .65s cubic-bezier(.22,1,.36,1),filter .4s ease !important;
}
.ps-flip-card:hover .ps-flip-front .ps-flip-image,
.ps-flip-card:focus-within .ps-flip-front .ps-flip-image{transform:scale(1.055);filter:saturate(1.06) contrast(1.02) brightness(1.02) !important}
.ps-flip-front .ps-setup-option-icon{
  position:absolute !important;
  z-index:3;
  top:calc(62% - 30px) !important;
  left:26px !important;
  width:60px !important;
  height:60px !important;
  margin:0 !important;
  border:5px solid #fff;
  border-radius:18px !important;
  box-shadow:0 12px 28px rgba(20,91,161,.2) !important;
}
.ps-flip-title{
  position:absolute;
  z-index:2;
  left:0;
  right:0;
  bottom:0;
  height:38%;
  padding:35px 26px 22px 26px;
  background:#fff;
}
.ps-flip-title small{margin:0 0 6px 76px !important;color:#1687ee !important;font-size:9px !important}
.ps-flip-title h3{margin:0 0 8px 76px !important;color:#071a34 !important;font-size:25px !important;line-height:1.08 !important}
.ps-flip-title p{max-width:none !important;margin:14px 0 0 !important;color:#65778e !important;font-size:12px !important;line-height:1.5 !important}
@media(max-width:575px){
  .ps-setup-option-card.ps-flip-card{min-height:440px !important}
  .ps-flip-inner{height:440px !important}
  .ps-flip-title h3{font-size:23px !important}
}

/* v58: shared lightweight blue-mesh motion for key dark sections. */
.h8-services-section,
.ps-journey,
.ps-faq{position:relative;overflow:hidden;isolation:isolate}
.h8-services-section::after,
.ps-journey::after,
.ps-faq::after{
  content:"";
  position:absolute;
  z-index:0;
  width:92vw;
  height:330px;
  left:-35vw;
  top:8%;
  border:0;
  border-radius:50%;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 34% 52%,rgba(29,79,244,.78),transparent 52%),
    radial-gradient(ellipse at 68% 48%,rgba(34,205,255,.72),transparent 50%);
  filter:blur(34px);
  mix-blend-mode:screen;
  opacity:.45;
  transform:rotate(-13deg) translate3d(0,0,0);
  will-change:transform;
  animation:psSharedMeshDrift 15s ease-in-out infinite alternate;
}
.ps-journey::after{top:36%;left:auto;right:-38vw;animation-duration:18s;animation-direction:alternate-reverse;opacity:.42}
.ps-faq::after{top:18%;left:-28vw;animation-duration:17s;animation-delay:-6s;opacity:.38}
.h8-services-section>.container,
.ps-journey>.container,
.ps-faq>.container{position:relative;z-index:1}
@keyframes psSharedMeshDrift{
  0%{transform:rotate(-16deg) translate3d(-7%,-26px,0) scaleX(.9);opacity:.32}
  52%{opacity:.55}
  100%{transform:rotate(-7deg) translate3d(42%,74px,0) scaleX(1.14);opacity:.43}
}
@media(max-width:767px){
  .h8-services-section::after,.ps-journey::after,.ps-faq::after{width:150vw;height:260px;left:-76vw;right:auto;filter:blur(27px);opacity:.34}
  .ps-journey::after{left:auto;right:-78vw}
}
@media(prefers-reduced-motion:reduce){
  .h8-services-section::after,.ps-journey::after,.ps-faq::after{animation:none!important;will-change:auto}
}

/* v59: circular branded preloader and SVG favicon. */
.preloader .loading-container,
.preloader .loading{
  width:108px !important;
  height:108px !important;
  border-radius:50% !important;
}
.preloader .loading{
  border-width:2px !important;
  border-color:transparent #188aee transparent #55cfff !important;
  box-shadow:0 0 38px rgba(34,151,239,.13) !important;
}
.preloader #loading-icon{
  display:grid;
  place-items:center;
  width:60px !important;
  height:60px !important;
  max-width:none !important;
  padding:8px;
  border-radius:50% !important;
  background:#fff;
  box-shadow:0 8px 24px rgba(15,66,119,.12);
}
.preloader #loading-icon img{
  display:block;
  width:100% !important;
  height:100% !important;
  object-fit:contain;
}

/* v59.1: consistent setup-card text grid. */
.ps-flip-title small,
.ps-flip-title h3,
.ps-flip-title p{
  margin-left:0 !important;
  margin-right:0 !important;
  text-align:left !important;
}
.ps-flip-title small{margin-top:0 !important}
.ps-flip-title h3{margin-top:7px !important}

/* v59.2: contain decorative transforms without a horizontal page scrollbar. */
html,
body{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
}
.body-wrapper,
.site-main,
.tj-footer-area{max-width:100%;overflow-x:clip}
@supports (overflow:clip){
  html,body{overflow-x:clip}
}

/* v60: more breathing room below the floating setup-card icon. */
.ps-flip-title{
  padding-top:49px !important;
}
.ps-flip-title h3{margin-top:8px !important}
.ps-flip-title p{margin-top:16px !important}
@media(max-width:575px){
  .ps-flip-title{padding-top:45px !important}
}

/* v44: keep every consultation-form field on one consistent type scale. */
.ps-consult-form label > span {
  font-family: inherit !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
}
.ps-consult-form input:not([type="checkbox"]),
.ps-consult-form select,
.ps-consult-form option {
  font-family: inherit !important;
  font-size: 15px !important;
  line-height: 1.25 !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
}
.ps-consult-form input:not([type="checkbox"])::placeholder {
  color: #10233d !important;
  font: inherit !important;
  opacity: 1 !important;
}
.ps-consult-form select {
  color: #10233d !important;
}
.ps-consult-consent,
.ps-consult-consent span {
  font-family: inherit !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
}
@media (max-width: 575px) {
  .ps-consult-form input:not([type="checkbox"]),
  .ps-consult-form select,
  .ps-consult-form option { font-size: 16px !important; }
}

/* v41: consultation conversion section before the footer. */
.ps-consult-cta{padding:88px 0 !important;background:#f4f8fc !important}
.ps-consult-cta-shell{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);min-height:470px;overflow:hidden;border:1px solid #d5e3f1;border-radius:20px;background:linear-gradient(145deg,#07162e,#0b274a);box-shadow:0 28px 70px rgba(13,45,82,.14)}
.ps-consult-cta-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:60px 68px;color:#fff}
.ps-consult-cta-copy>span{margin-bottom:15px;color:#56d2ff;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.ps-consult-cta-copy h2{max-width:620px;margin:0 0 18px;color:#fff;font-size:clamp(42px,4.5vw,67px);font-weight:500;line-height:1.02;letter-spacing:-.05em}
.ps-consult-cta-copy>p{max-width:610px;margin:0 0 27px;color:#aebed2;font-size:14px;line-height:1.7}
.ps-consult-cta-button{display:flex;align-items:center;gap:20px;min-height:54px;padding:7px 8px 7px 22px;border:1px solid rgba(99,190,255,.32);border-radius:999px;background:#fff;color:#07162e;font-family:inherit;font-size:12px;font-weight:700;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease}
.ps-consult-cta-button i{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:linear-gradient(145deg,#54d1ff,#1479e8);color:#fff}
.ps-consult-cta-button:hover{transform:translateY(-3px);box-shadow:0 15px 34px rgba(0,8,25,.25)}
.ps-consult-cta-trust{display:flex;flex-wrap:wrap;gap:12px 22px;margin:28px 0 0;padding:0;list-style:none}
.ps-consult-cta-trust li{display:flex;align-items:center;gap:7px;color:#92a7c0;font-size:10px}
.ps-consult-cta-trust i{color:#57d4ff}
.ps-consult-cta-image{position:relative;min-height:470px;overflow:hidden}
.ps-consult-cta-image::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,22,46,.42),transparent 42%),linear-gradient(0deg,rgba(4,16,35,.55),transparent 48%)}
.ps-consult-cta-image>img{width:100%;height:100%;object-fit:cover;object-position:center}
.ps-consult-cta-image>div{position:absolute;z-index:2;right:28px;bottom:28px;display:flex;align-items:center;gap:13px;max-width:250px;padding:16px 18px;border:1px solid rgba(255,255,255,.2);border-radius:13px;background:rgba(5,19,42,.78);color:#fff;backdrop-filter:blur(12px)}
.ps-consult-cta-image>div span{color:#59d3ff;font-size:26px;font-weight:700;line-height:1}
.ps-consult-cta-image>div small{color:#c3d0df;font-size:9px;line-height:1.4}
@media(max-width:991px){.ps-consult-cta-shell{grid-template-columns:1fr}.ps-consult-cta-copy{padding:48px 40px}.ps-consult-cta-image{min-height:340px}}
@media(max-width:575px){.ps-consult-cta{padding:65px 0 !important}.ps-consult-cta-copy{padding:38px 24px}.ps-consult-cta-copy h2{font-size:40px}.ps-consult-cta-image{min-height:280px}}

/* v45: direct conversion form inside the pre-footer consultation section. */
.ps-consult-cta-shell{grid-template-columns:minmax(520px,1.12fr) minmax(360px,.88fr);min-height:610px}
.ps-consult-cta-copy{padding:48px 54px}
.ps-consult-cta-copy h2{font-size:clamp(39px,3.8vw,58px)}
.ps-consult-cta-copy>p{margin-bottom:22px}
.ps-consult-inline-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;width:100%;max-width:650px}
.ps-consult-inline-form label{display:block;margin:0}
.ps-consult-inline-form label>span{display:block;margin:0 0 6px;color:#c4d2e3;font-family:inherit;font-size:11px;font-weight:700;line-height:1.35}
.ps-consult-inline-form input:not([type=checkbox]),.ps-consult-inline-form select{width:100%;height:49px;padding:0 14px;border:1px solid rgba(124,191,244,.24);border-radius:9px;outline:0;background:rgba(255,255,255,.075);color:#fff;font-family:inherit;font-size:14px;font-weight:500;line-height:1.25;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}
.ps-consult-inline-form input::placeholder{color:#9eb0c5;opacity:1}
.ps-consult-inline-form select{color:#d9e4ef;color-scheme:dark}
.ps-consult-inline-form input:focus,.ps-consult-inline-form select:focus{border-color:#50c9ff;background:rgba(255,255,255,.11);box-shadow:0 0 0 3px rgba(71,190,255,.12)}
.ps-consult-inline-consent{grid-column:1/-1;display:flex !important;align-items:flex-start;gap:9px;padding:2px 0}
.ps-consult-inline-consent input{appearance:auto;flex:0 0 15px;width:15px;height:15px;margin:1px 0 0;accent-color:#2498f4}
.ps-consult-inline-consent span{margin:0 !important;color:#91a5bd !important;font-size:9px !important;font-weight:500 !important;line-height:1.5 !important}
.ps-consult-inline-form .ps-consult-cta-button{grid-column:1/-1;justify-self:start;margin-top:2px}
.ps-consult-cta-image{min-height:610px}
@media(max-width:991px){.ps-consult-cta-shell{grid-template-columns:1fr}.ps-consult-cta-copy{padding:48px 40px}.ps-consult-cta-image{min-height:340px}}
@media(max-width:575px){.ps-consult-cta-copy{padding:38px 24px}.ps-consult-inline-form{grid-template-columns:1fr}.ps-consult-inline-consent,.ps-consult-inline-form .ps-consult-cta-button{grid-column:1}.ps-consult-inline-form input:not([type=checkbox]),.ps-consult-inline-form select{font-size:16px}}

/* v46: service pictograms and a more legible global button scale. */
.h8-services-list .service_item .ps-service-card-icon{
  display:grid !important;
  place-items:center;
  flex:0 0 48px;
  width:48px;
  height:48px;
  border:1px solid rgba(88,201,255,.3);
  border-radius:12px;
  background:linear-gradient(145deg,rgba(74,204,255,.2),rgba(21,113,226,.18));
  color:#59d2ff !important;
  font-size:19px !important;
  line-height:1 !important;
  transition:transform .25s ease,border-color .25s ease,background .25s ease;
}
.h8-services-list .service_item:hover .ps-service-card-icon{
  transform:translateY(-3px);
  border-color:rgba(89,210,255,.62);
  background:linear-gradient(145deg,#42c9ff,#157be8);
  color:#fff !important;
}
.h8-services-list .service_item .content{max-width:390px}
.tj-primary-btn,
.tj-primary-btn .btn_text,
.tj-primary-btn .btn_text>span,
.ps-consult-cta-button,
.ps-consult-submit,
.ps-case-link,
.ps-hero-btn,
.ps-cost-section button,
.ps-journey button{
  font-size:14px !important;
  line-height:1.2 !important;
}
.tj-primary-btn .btn_text>span{font-weight:700 !important}
@media(max-width:575px){
  .tj-primary-btn,
  .tj-primary-btn .btn_text,
  .tj-primary-btn .btn_text>span,
  .ps-consult-cta-button,
  .ps-consult-submit,
  .ps-case-link,
  .ps-hero-btn{font-size:13px !important}
}

/* v42: flush popup image, circular CTA icon and richer compact footer. */
.ps-consult-dialog{align-items:stretch !important}
.ps-consult-visual{align-self:stretch !important;min-height:100% !important;max-height:none !important}
.ps-consult-submit i{flex:0 0 40px !important;width:40px !important;height:40px !important;aspect-ratio:1;border-radius:50% !important}
.tj-footer-area .footer-top-area>.container>.row.line{display:grid !important;grid-template-columns:repeat(6,minmax(0,1fr));gap:38px 28px !important}
.tj-footer-area.footer-2.style-2 .footer-top-area .line::before,.tj-footer-area .footer-top-area .line::before{display:none !important;content:none !important}
.tj-footer-area .footer-top-area>.container>.row.line>[class*=col-]{width:auto !important;max-width:none !important;padding:0 !important}
.tj-footer-area .footer-top-area>.container>.row.line>[class*=col-]:first-child{grid-column:1/-1;padding-bottom:30px !important;border-bottom:1px solid rgba(133,184,229,.14)}
.tj-footer-area .footer-top-area>.container>.row.line>[class*=col-]:first-child .footer-info{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(280px,1.4fr) auto;align-items:center;gap:24px 38px}
.tj-footer-area .footer-top-area>.container>.row.line>[class*=col-]:first-child .footer-logo,.tj-footer-area .footer-top-area>.container>.row.line>[class*=col-]:first-child .footer-info>.title{margin:0 !important}
.tj-footer-area .footer-top-area>.container>.row.line>[class*=col-]:first-child .ps-footer-social{grid-column:1/-1;margin-top:0}
.tj-footer-area .footer-widget{margin:0 !important}
.tj-footer-area .footer-logo{margin-bottom:24px !important}
.tj-footer-area .footer-logo img{max-width:150px}
.tj-footer-area .footer-info>.title{max-width:260px;margin-bottom:24px !important;font-size:clamp(24px,2vw,34px) !important;line-height:1.08 !important}
.tj-footer-area .footer-title{margin-bottom:20px !important}
.tj-footer-area .footer-title .title{font-size:14px !important;letter-spacing:-.01em}
.tj-footer-area .widget-menu ul li{margin-bottom:9px !important}
.tj-footer-area .widget-menu ul li a{font-size:11px !important;line-height:1.45 !important}
.tj-footer-area .footer-contact-infos .infos-item>span{font-size:11px !important}
.tj-footer-area .footer-contact-infos .infos-item p,.tj-footer-area .footer-contact-infos .infos-item>a{font-size:10px !important;line-height:1.65 !important}
.tj-footer-area .footer-top-area{padding-top:72px !important;padding-bottom:62px !important}
.tj-footer-area .copyright-content-area{gap:18px;flex-wrap:wrap}
.tj-footer-area .copyright-text p,.tj-footer-area .copyright-menu a{font-size:10px !important}
@media(max-width:1199px){.tj-footer-area .footer-top-area>.container>.row.line{grid-template-columns:repeat(3,minmax(0,1fr))}.tj-footer-area .footer-top-area>.container>.row.line>[class*=col-]:first-child .footer-info{grid-template-columns:1fr 1fr}}
@media(max-width:767px){.tj-footer-area .footer-top-area>.container>.row.line{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 24px !important}}
@media(max-width:480px){.tj-footer-area .footer-top-area>.container>.row.line{grid-template-columns:1fr}.tj-footer-area .footer-info>.title{max-width:330px}.tj-footer-area .footer-top-area>.container>.row.line>[class*=col-]:first-child .footer-info{grid-template-columns:1fr}}

/* v48: native dark consultation fields and cleaner footer grid. */
.ps-consult-inline-form .nice-select{display:none !important}
.ps-consult-inline-form select{
  display:block !important;
  appearance:auto !important;
  -webkit-appearance:auto !important;
  background-color:rgba(255,255,255,.075) !important;
  color:#d9e4ef !important;
  font-family:inherit !important;
  font-size:14px !important;
  font-weight:500 !important;
}
.ps-consult-inline-form select option{background:#0b2445;color:#fff;font-size:14px}
.ps-consult-inline-form input:not([type=checkbox]){font-size:14px !important;font-weight:500 !important}
.ps-consult-inline-form label>span{font-size:11px !important}
@media(min-width:1200px){.tj-footer-area .footer-top-area{padding-top:58px !important;padding-bottom:54px !important}}
@media(max-width:575px){.ps-consult-inline-form select,.ps-consult-inline-form input:not([type=checkbox]){font-size:16px !important}}

/* v49: detailed Polestar company and independent-provider footer note. */
.ps-footer-legal-details{
  margin-top:28px;
  padding-top:26px;
  border-top:1px solid rgba(136,179,220,.16);
  color:#9eacc0;
}
.ps-footer-company-details{
  display:flex;
  flex-wrap:wrap;
  gap:8px 28px;
  margin-bottom:20px;
}
.ps-footer-company-details p{
  position:relative;
  margin:0 !important;
  font-size:11px !important;
  line-height:1.55 !important;
}
.ps-footer-company-details p:not(:last-child)::after{
  content:"";
  position:absolute;
  top:3px;
  right:-14px;
  width:1px;
  height:14px;
  background:rgba(148,184,219,.22);
}
.ps-footer-legal-details strong{color:#e4edf7;font-weight:700}
.ps-footer-legal-details a{color:#b9c8da;transition:color .2s ease}
.ps-footer-legal-details a:hover{color:#56d1ff}
.ps-footer-disclaimer{max-width:1320px}
.ps-footer-disclaimer p{margin:0 0 8px !important;color:#8495aa !important;font-size:10px !important;line-height:1.72 !important}
@media(max-width:767px){
  .ps-footer-company-details{display:grid;gap:7px}
  .ps-footer-company-details p::after{display:none}
  .ps-footer-legal-details{margin-top:24px;padding-top:22px}
}

/* v50: lightweight animated blue light ribbons for the numbers section. */
.ps-numbers-section::before,
.ps-numbers-section::after{
  content:"" !important;
  position:absolute;
  display:block !important;
  pointer-events:none;
  border:0 !important;
  border-radius:50%;
  box-shadow:none !important;
  opacity:.64;
  filter:blur(27px);
  mix-blend-mode:screen;
  will-change:transform;
}
.ps-numbers-section::before{
  width:78vw;
  height:220px;
  top:-48px;
  left:-25vw;
  background:linear-gradient(90deg,transparent 2%,rgba(23,59,245,.72) 34%,rgba(26,202,255,.92) 67%,transparent 97%);
  transform:rotate(-13deg) translate3d(0,0,0);
  animation:psNumbersLightOne 11s ease-in-out infinite alternate;
}
.ps-numbers-section::after{
  width:72vw;
  height:270px;
  right:-23vw;
  bottom:-112px;
  background:linear-gradient(90deg,transparent 1%,rgba(20,65,232,.72) 32%,rgba(50,211,255,.9) 70%,transparent 98%);
  transform:rotate(-19deg) translate3d(0,0,0);
  animation:psNumbersLightTwo 14s ease-in-out infinite alternate;
}
@keyframes psNumbersLightOne{
  0%{transform:rotate(-15deg) translate3d(-9%,-10px,0) scaleX(.92);opacity:.44}
  55%{opacity:.78}
  100%{transform:rotate(-7deg) translate3d(31%,62px,0) scaleX(1.1);opacity:.6}
}
@keyframes psNumbersLightTwo{
  0%{transform:rotate(-21deg) translate3d(13%,32px,0) scaleX(.94);opacity:.42}
  48%{opacity:.74}
  100%{transform:rotate(-11deg) translate3d(-31%,-66px,0) scaleX(1.14);opacity:.6}
}
@media(max-width:767px){
  .ps-numbers-section::before{width:135vw;left:-65vw;filter:blur(24px)}
  .ps-numbers-section::after{width:125vw;right:-62vw;filter:blur(24px)}
}
@media(prefers-reduced-motion:reduce){
  .ps-numbers-section::before,
  .ps-numbers-section::after{animation:none !important;will-change:auto}
}

/* v51: static low-cost blue mesh ambience across the footer. */
.tj-footer-area.footer-2.style-2{
  overflow:hidden;
  isolation:isolate;
  background:#06142b !important;
}
.tj-footer-area.footer-2.style-2::before{
  content:"";
  position:absolute;
  z-index:0;
  inset:-14% -8%;
  pointer-events:none;
  background:
    radial-gradient(ellipse 46% 26% at 12% 20%,rgba(31,80,238,.42),transparent 72%),
    radial-gradient(ellipse 42% 24% at 78% 18%,rgba(16,111,242,.32),transparent 74%),
    radial-gradient(ellipse 52% 26% at 48% 76%,rgba(23,190,255,.19),transparent 75%),
    linear-gradient(125deg,transparent 23%,rgba(29,82,211,.13) 42%,transparent 62%);
  filter:blur(34px);
  mix-blend-mode:screen;
  opacity:.82;
}
.tj-footer-area.footer-2.style-2 .footer-top-area,
.tj-footer-area.footer-2.style-2 .footer-copyright-area{
  position:relative;
  z-index:1;
  background:transparent !important;
}

/* v52: balanced premium brand-and-consultation footer banner. */
.tj-footer-area .footer-top-area>.container>.row.line>[class*=col-]:first-child{
  padding-bottom:38px !important;
  border-bottom:0 !important;
}
.tj-footer-area .footer-top-area>.container>.row.line>[class*=col-]:first-child .footer-info{
  position:relative;
  display:grid !important;
  grid-template-columns:minmax(190px,.72fr) minmax(360px,1.55fr) auto !important;
  align-items:center;
  gap:28px 48px !important;
  overflow:hidden;
  padding:30px 34px !important;
  border:1px solid rgba(103,184,245,.2);
  border-radius:16px;
  background:linear-gradient(110deg,rgba(21,72,137,.23),rgba(255,255,255,.035) 48%,rgba(18,113,197,.13));
  box-shadow:0 22px 55px rgba(0,7,24,.18);
}
.tj-footer-area .footer-top-area>.container>.row.line>[class*=col-]:first-child .footer-info::after{
  content:"";
  position:absolute;
  right:-75px;
  top:-95px;
  width:250px;
  height:250px;
  border:1px solid rgba(73,191,255,.11);
  border-radius:50%;
  box-shadow:0 0 0 45px rgba(43,144,236,.035),0 0 0 90px rgba(43,144,236,.02);
  pointer-events:none;
}
.ps-footer-brand-block{display:flex;flex-direction:column;align-items:flex-start;gap:20px}
.ps-footer-brand-block .footer-logo{margin:0 !important}
.ps-footer-brand-block .footer-logo img{width:168px;max-width:100% !important}
.ps-footer-brand-block .ps-footer-social{display:flex;grid-column:auto !important;gap:8px;margin:0 !important}
.ps-footer-brand-block .ps-footer-social a{width:36px;height:36px;border-radius:9px;font-size:12px}
.ps-footer-cta-copy{max-width:600px}
.ps-footer-cta-copy>span{display:block;margin-bottom:9px;color:#55d0ff;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.ps-footer-cta-copy .title{max-width:580px !important;margin:0 0 9px !important;color:#f7fbff !important;font-size:clamp(27px,2.5vw,39px) !important;font-weight:500;line-height:1.04 !important;letter-spacing:-.04em}
.ps-footer-cta-copy p{max-width:580px;margin:0;color:#96a9c0;font-size:12px;line-height:1.55}
.tj-footer-area .footer-info>.footer-btn{position:relative;z-index:2;justify-self:end}
@media(max-width:1199px){
  .tj-footer-area .footer-top-area>.container>.row.line>[class*=col-]:first-child .footer-info{grid-template-columns:200px 1fr !important}
  .tj-footer-area .footer-info>.footer-btn{grid-column:2;justify-self:start}
}
@media(max-width:767px){
  .tj-footer-area .footer-top-area>.container>.row.line>[class*=col-]:first-child .footer-info{grid-template-columns:1fr !important;padding:28px 24px !important}
  .ps-footer-brand-block{gap:16px}
  .tj-footer-area .footer-info>.footer-btn{grid-column:1;justify-self:start}
}

/* v39: balanced consultation popup and compact CTA. */
.ps-consult-dialog {
  grid-template-columns:minmax(330px,400px) minmax(500px,1fr) !important;
  width:min(980px,calc(100vw - 48px)) !important;
  align-items:stretch;
}
.ps-consult-visual {
  min-height:620px !important;
  max-height:680px;
  align-self:center;
}
.ps-consult-visual>img { object-position:center !important; }
.ps-consult-visual-copy { left:32px !important; right:32px !important; bottom:32px !important; }
.ps-consult-visual-copy>strong { font-size:31px !important; }
.ps-consult-consent input[type="checkbox"] {
  appearance:auto !important;
  flex:0 0 16px !important;
  width:16px !important;
  min-width:16px !important;
  height:16px !important;
  margin:1px 0 0 !important;
  padding:0 !important;
}
.ps-consult-submit {
  justify-self:start !important;
  justify-content:flex-start !important;
  gap:28px;
  width:auto !important;
  min-width:300px;
  min-height:50px;
  padding:6px 7px 6px 21px !important;
}
.ps-consult-submit i { margin-left:auto; }
@media(max-width:850px){
  .ps-consult-dialog{grid-template-columns:1fr !important;width:min(620px,calc(100vw - 28px)) !important}
  .ps-consult-visual{min-height:190px !important;max-height:190px;align-self:auto}
  .ps-consult-visual>img{object-position:center 63% !important}
}
@media(max-width:520px){
  .ps-consult-submit{justify-self:stretch !important;width:100% !important;min-width:0}
}

/* Minimal metrics use divider lines only—remove inherited circular markers. */
.ps-numbers-section .counter-item::before,
.ps-numbers-section .counter-item::after {
  content:none !important;
  display:none !important;
}

/* v37: delayed consultation dialog. */
body.ps-modal-open { overflow:hidden; }
.ps-consult-modal { position:fixed; inset:0; z-index:100000; display:grid; place-items:center; padding:24px; opacity:0; visibility:hidden; pointer-events:none; transition:opacity .3s ease,visibility .3s ease; }
.ps-consult-modal.is-open { opacity:1; visibility:visible; pointer-events:auto; }
.ps-consult-backdrop { position:absolute; inset:0; background:rgba(1,9,23,.78); backdrop-filter:blur(7px); }
.ps-consult-dialog { position:relative; z-index:1; display:grid; grid-template-columns:minmax(310px,.78fr) minmax(520px,1.22fr); width:min(1080px,calc(100vw - 48px)); max-height:calc(100vh - 48px); overflow:auto; border:1px solid rgba(91,179,247,.24); border-radius:20px; background:#fff; box-shadow:0 40px 110px rgba(0,8,24,.45); transform:translateY(24px) scale(.975); transition:transform .38s cubic-bezier(.2,.8,.2,1); }
.ps-consult-modal.is-open .ps-consult-dialog { transform:none; }
.ps-consult-close { position:absolute; top:16px; right:16px; z-index:4; display:grid; place-items:center; width:42px; height:42px; padding:0; border:1px solid #d9e5f2; border-radius:50%; background:#fff; color:#07172e; font-size:19px; cursor:pointer; transition:transform .25s ease,background .25s ease,color .25s ease; }
.ps-consult-close:hover { transform:rotate(90deg); background:#0a2344; color:#fff; }
.ps-consult-visual { position:relative; min-height:650px; overflow:hidden; border-radius:19px 0 0 19px; background:#06162e; }
.ps-consult-visual::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(4,18,42,.08),rgba(3,14,33,.9)); }
.ps-consult-visual>img { width:100%; height:100%; object-fit:cover; object-position:center; }
.ps-consult-visual-copy { position:absolute; z-index:2; left:38px; right:38px; bottom:38px; color:#fff; }
.ps-consult-visual-copy>span,.ps-consult-eyebrow { display:block; margin-bottom:12px; color:#56d2ff; font-size:10px; font-weight:700; letter-spacing:.15em; text-transform:uppercase; }
.ps-consult-visual-copy>strong { display:block; font-size:34px; font-weight:500; line-height:1.08; letter-spacing:-.035em; }
.ps-consult-visual-copy>small { display:flex; align-items:center; gap:9px; margin-top:22px; color:#b6c6d9; font-size:11px; line-height:1.5; }
.ps-consult-visual-copy>small i { color:#59d3ff; }
.ps-consult-content { padding:44px 48px 38px; }
.ps-consult-content h2 { margin:0 0 10px; color:#07162d; font-size:clamp(32px,3vw,46px); font-weight:550; line-height:1.04; letter-spacing:-.04em; }
.ps-consult-content>p { max-width:600px; margin:0 0 24px; color:#66778d; font-size:13px; line-height:1.6; }
.ps-consult-form { display:grid; gap:13px; }
.ps-consult-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
.ps-consult-form label>span { display:block; margin-bottom:6px; color:#33465f; font-size:10px; font-weight:700; letter-spacing:.03em; }
.ps-consult-form input:not([type=checkbox]),.ps-consult-form select { width:100%; height:48px; padding:0 14px; border:1px solid #d7e2ef; border-radius:9px; outline:0; background:#f7f9fc; color:#10233d; font-family:inherit; font-size:12px; transition:border-color .2s ease,box-shadow .2s ease,background .2s ease; }
.ps-consult-form input:focus,.ps-consult-form select:focus { border-color:#2798f6; background:#fff; box-shadow:0 0 0 3px rgba(39,152,246,.12); }
.ps-consult-consent { display:flex; align-items:flex-start; gap:9px; margin-top:2px; cursor:pointer; }
.ps-consult-consent input { flex:0 0 auto; width:16px; height:16px; margin-top:2px; accent-color:#1687ff; }
.ps-consult-consent>span { margin:0 !important; color:#76869a !important; font-size:9px !important; font-weight:500 !important; line-height:1.45; letter-spacing:0 !important; }
.ps-consult-submit { display:flex; align-items:center; justify-content:space-between; width:100%; min-height:52px; margin-top:3px; padding:7px 8px 7px 20px; border:0; border-radius:999px; background:linear-gradient(90deg,#071a36,#0b2c55); color:#fff; font-family:inherit; font-size:12px; font-weight:700; cursor:pointer; transition:transform .25s ease,box-shadow .25s ease; }
.ps-consult-submit i { display:grid; place-items:center; width:38px; height:38px; border-radius:50%; background:linear-gradient(145deg,#55d1ff,#1479e8); }
.ps-consult-submit:hover { transform:translateY(-2px); box-shadow:0 14px 32px rgba(8,52,99,.2); }
@media(max-width:850px){
  .ps-consult-dialog{grid-template-columns:1fr;width:min(620px,calc(100vw - 28px))}
  .ps-consult-visual{min-height:180px;border-radius:19px 19px 0 0}
  .ps-consult-visual-copy{left:24px;right:80px;bottom:22px}.ps-consult-visual-copy>strong{font-size:27px}.ps-consult-visual-copy>small{display:none}
  .ps-consult-content{padding:30px 28px 28px}
}
@media(max-width:520px){
  .ps-consult-modal{padding:10px}.ps-consult-dialog{width:100%;max-height:calc(100vh - 20px)}
  .ps-consult-visual{min-height:145px}.ps-consult-content{padding:26px 20px 22px}.ps-consult-row{grid-template-columns:1fr}.ps-consult-content h2{font-size:30px}
}

/* v38: readable and functional footer CTA. */
.tj-footer-area .footer-btn .tj-primary-btn.white-btn {
  border:1px solid rgba(98,192,255,.24) !important;
  background:rgba(9,31,61,.88) !important;
  color:#fff !important;
}
.tj-footer-area .footer-btn .tj-primary-btn.white-btn .btn_text,
.tj-footer-area .footer-btn .tj-primary-btn.white-btn .btn_text span,
.tj-footer-area .footer-btn .tj-primary-btn.white-btn:hover .btn_text,
.tj-footer-area .footer-btn .tj-primary-btn.white-btn:hover .btn_text span {
  color:#fff !important;
  opacity:1 !important;
  visibility:visible !important;
  text-shadow:none !important;
}
.tj-footer-area .footer-btn .tj-primary-btn.white-btn:hover {
  border-color:rgba(91,207,255,.55) !important;
  background:#0c2b52 !important;
}
.site-main>.h8-testimonial { order:11; }
.site-main>.ps-faq { order:12; }
.site-main>.h8-blog-section { order:13; }
.site-main>.ps-ai-expert { order:14; }
.site-main>.h4-cta-section { order:15; }
.site-main>.h8-marquee-section { display:none !important; }

/* v34: dark navy interaction for the core feature cards. */
.h8-feature-item.style-4:hover,
.h8-feature-item.style-4:focus-within {
  background:linear-gradient(145deg,#07162d,#0b274b) !important;
  box-shadow:0 22px 48px rgba(4,22,48,.16);
}
.h8-feature-item.style-4:hover .feature-icon,
.h8-feature-item.style-4:focus-within .feature-icon,
.h8-feature-item.style-4:hover .title,
.h8-feature-item.style-4:focus-within .title,
.h8-feature-item.style-4:hover .desc,
.h8-feature-item.style-4:focus-within .desc {
  color:#f7fbff !important;
}

/* v23: icon-led journey detail with a clear stage/content structure. */
.ps-journey-detail {
  display:grid !important;
  grid-template-columns:185px minmax(0,1fr);
  min-height:330px !important;
  padding:0 !important;
  overflow:hidden;
  background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.025)) !important;
}
.ps-journey-stage {
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:28px 20px;
  border-right:1px solid rgba(104,184,255,.18);
  background:linear-gradient(180deg,rgba(19,65,111,.72),rgba(8,34,68,.82));
  text-align:center;
}
.ps-journey-stage::after {
  content:"";
  position:absolute;
  width:110px;
  height:110px;
  border:1px solid rgba(82,199,255,.12);
  border-radius:50% !important;
  box-shadow:0 0 0 26px rgba(50,157,246,.025);
}
.ps-journey-detail-top { position:absolute; top:22px; left:0; right:0; justify-content:center !important; color:#81a2c4 !important; }
.ps-journey-stage .ps-journey-icon {
  position:relative;
  z-index:2;
  width:76px !important;
  height:76px !important;
  margin:5px 0 20px !important;
  border-radius:50% !important;
  font-size:27px !important;
  background:linear-gradient(145deg,#51d2ff,#126fdd) !important;
  box-shadow:0 16px 36px rgba(10,103,214,.35) !important;
}
.ps-journey-stage .ps-journey-time {
  position:relative;
  z-index:2;
  border-color:rgba(102,194,255,.22) !important;
  background:rgba(255,255,255,.055) !important;
  color:#d7e6f7 !important;
  font-size:9px !important;
}
.ps-stage-caption { position:relative; z-index:2; margin-top:11px; color:#63d6ff; font-size:8px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.ps-journey-copy { display:flex; flex-direction:column; justify-content:center; padding:34px 38px; }
.ps-journey-copy>small { color:#5bd4ff; font-size:10px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.ps-journey-copy h3 { max-width:850px !important; margin:8px 0 11px !important; font-size:clamp(29px,2.7vw,42px) !important; }
.ps-journey-copy>p { max-width:850px; margin:0; color:#c2cede; font-size:14px; line-height:1.62; }
.ps-journey-copy ul { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:22px 0 !important; padding:0; list-style:none; }
.ps-journey-copy li {
  display:grid;
  grid-template-columns:42px 1fr;
  align-items:center;
  gap:11px;
  min-height:72px !important;
  padding:12px !important;
  border:1px solid rgba(107,180,245,.15) !important;
  background:rgba(255,255,255,.035) !important;
  color:#d5dfec !important;
  font-size:11px !important;
}
.ps-journey-copy li i {
  position:static !important;
  display:grid;
  place-items:center;
  width:42px !important;
  height:42px !important;
  margin:0 !important;
  border-radius:8px !important;
  color:#62d8ff !important;
  background:rgba(54,161,246,.13) !important;
  transform:none !important;
  font-size:15px;
}
.ps-journey-copy>a { align-self:flex-start; }

@media(max-width:991px){
  .ps-journey-detail{grid-template-columns:145px minmax(0,1fr) !important}
  .ps-journey-copy{padding:28px 25px}
  .ps-journey-copy ul{grid-template-columns:1fr}
}
@media(max-width:767px){
  .ps-journey-detail{display:block !important}
  .ps-journey-stage{min-height:155px;border-right:0;border-bottom:1px solid rgba(104,184,255,.18)}
  .ps-journey-stage .ps-journey-icon{display:grid !important;width:62px !important;height:62px !important;margin:9px 0 11px !important}
  .ps-journey-copy{padding:25px 20px}
  .ps-journey-copy h3{font-size:27px !important}
  .ps-journey-copy li{min-height:60px !important}
}

/* v24: centered journey heading and balanced calculator columns. */
.ps-journey-heading {
  max-width:980px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center !important;
}
.ps-journey-heading .ps-section-kicker { justify-content:center; }
.ps-journey-heading .ps-section-kicker::after {
  content:"";
  width:30px;
  height:1px;
  background:var(--ps-cyan-400);
}
.ps-journey-heading>p {
  max-width:720px !important;
  margin:18px auto 0 !important;
}

.ps-cost-form { display:flex; flex-direction:column; }
.ps-cost-guidance {
  position:relative;
  overflow:hidden;
  margin-top:26px;
  padding:24px;
  border:1px solid #d8e5f2;
  background:linear-gradient(145deg,#f7fbff,#edf5fd);
}
.ps-cost-guidance::after {
  content:"";
  position:absolute;
  right:-65px;
  bottom:-75px;
  width:180px;
  height:180px;
  border:1px solid rgba(22,135,255,.1);
  border-radius:50% !important;
  box-shadow:0 0 0 34px rgba(22,135,255,.025);
}
.ps-cost-guidance-head { position:relative; z-index:1; display:flex; align-items:center; gap:13px; }
.ps-cost-guidance-head>span {
  display:grid;
  place-items:center;
  flex:0 0 46px;
  width:46px;
  height:46px;
  color:#fff;
  font-size:18px;
  background:linear-gradient(145deg,var(--ps-cyan-400),var(--ps-blue-600));
}
.ps-cost-guidance-head small,.ps-cost-guidance-head strong { display:block; }
.ps-cost-guidance-head small { color:#6b8198; font-size:9px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.ps-cost-guidance-head strong { margin-top:3px; color:var(--ps-navy-900); font-size:15px; }
.ps-cost-guidance-steps { position:relative; z-index:1; display:grid; gap:9px; margin-top:20px; }
.ps-cost-guidance-steps>div {
  display:grid;
  grid-template-columns:40px 1fr;
  align-items:center;
  gap:12px;
  padding:12px 13px;
  border:1px solid rgba(196,214,232,.9);
  background:rgba(255,255,255,.72);
}
.ps-cost-guidance-steps>div>i { display:grid; place-items:center; width:40px; height:40px; color:var(--ps-blue-500); background:#e9f4ff; font-size:15px; }
.ps-cost-guidance-steps span { display:grid; grid-template-columns:28px 1fr; align-items:center; column-gap:7px; }
.ps-cost-guidance-steps b { grid-row:1/3; color:#85a1bd; font-size:9px; letter-spacing:.08em; }
.ps-cost-guidance-steps strong { color:#173657; font-size:12px; }
.ps-cost-guidance-steps small { color:#71869b; font-size:10px; line-height:1.45; }

@media(max-width:991px){
  .ps-cost-guidance{margin-top:20px}
}

/* v25: noticeable but restrained floating-contact cues. */
.ps-float-btn {
  position:relative;
  overflow:visible !important;
  isolation:isolate;
  animation:psContactNudge 7s ease-in-out infinite;
}
.ps-float-chat { animation-delay:1.2s; }
.ps-float-btn:hover,
.ps-float-btn:focus-visible {
  width:54px !important;
  transform:translateY(-3px) scale(1.05) !important;
  outline:none;
}
.ps-float-btn>span { display:none !important; }
.ps-float-btn::before {
  content:attr(data-tooltip);
  position:absolute;
  z-index:3;
  top:50%;
  right:calc(100% + 13px);
  width:max-content;
  max-width:180px;
  padding:9px 12px;
  border:1px solid rgba(111,187,246,.24);
  border-radius:7px !important;
  background:#071a36;
  color:#fff;
  font-size:10px;
  font-weight:700;
  line-height:1;
  letter-spacing:.02em;
  box-shadow:0 12px 28px rgba(5,24,53,.22);
  opacity:0;
  visibility:hidden;
  transform:translate(8px,-50%);
  transition:opacity .22s ease,transform .22s ease,visibility .22s ease;
  pointer-events:none;
}
.ps-float-btn::after {
  content:"";
  position:absolute;
  z-index:-1;
  inset:-1px;
  border:2px solid currentColor;
  border-radius:50% !important;
  opacity:0;
  animation:psContactRing 3.5s ease-out infinite;
  pointer-events:none;
}
.ps-float-chat::after { animation-delay:1.4s; }
.ps-float-btn:hover::before,
.ps-float-btn:focus-visible::before {
  opacity:1;
  visibility:visible;
  transform:translate(0,-50%);
}
.ps-float-btn:hover::after,
.ps-float-btn:focus-visible::after { animation-play-state:paused; opacity:0; }

@keyframes psContactNudge {
  0%,72%,100% { transform:translateY(0); }
  76% { transform:translateY(-5px); }
  80% { transform:translateY(0); }
  84% { transform:translateY(-3px); }
  88% { transform:translateY(0); }
}
@keyframes psContactRing {
  0%,60% { opacity:0; transform:scale(.92); }
  68% { opacity:.32; }
  88%,100% { opacity:0; transform:scale(1.42); }
}
@media(prefers-reduced-motion:reduce){
  .ps-float-btn,.ps-float-btn::after{animation:none !important}
}
@media(max-width:767px){
  .ps-float-btn:hover,.ps-float-btn:focus-visible{width:50px !important}
  .ps-float-btn::before{right:calc(100% + 10px)}
}

/* v26: services section aligned with the premium FAQ dark theme. */
.h8-services-section {
  position:relative;
  overflow:hidden;
  background:radial-gradient(circle at 0 0,rgba(24,118,224,.2),transparent 34%),linear-gradient(145deg,#06152d,#0a2243) !important;
}
.h8-services-section::before {
  content:"SERVICES";
  position:absolute;
  right:-32px;
  bottom:-42px;
  color:rgba(105,191,255,.028);
  font-size:170px;
  font-weight:700;
  line-height:1;
  letter-spacing:-.06em;
  pointer-events:none;
}
.h8-services-section .container { position:relative; z-index:1; }
.h8-services-left-content .title { color:#f7fbff !important; }
.h8-services-left-content .title span { color:#57d3ff !important; }
.h8-services-left .h8-video {
  border:1px solid rgba(106,188,246,.24) !important;
  box-shadow:0 28px 70px rgba(0,8,25,.32) !important;
}
.h8-services-list { border:0 !important; }
.h8-services-list .service_item {
  border:1px solid rgba(115,177,233,.18) !important;
  background:rgba(255,255,255,.045) !important;
  box-shadow:none !important;
}
.h8-services-list .service_item:hover {
  border-color:rgba(72,190,255,.5) !important;
  background:linear-gradient(90deg,rgba(25,112,194,.18),rgba(255,255,255,.055)) !important;
  box-shadow:0 16px 38px rgba(0,8,26,.2) !important;
}
.h8-services-list .service_item .no { color:#54d1ff !important; }
.h8-services-list .service_item .content .title,
.h8-services-list .service_item .content .title a { color:#f2f7fd !important; }
.h8-services-list .service_item .content .title a:hover { color:#61d7ff !important; }
.h8-services-list .service_item .content .desc,
.h8-services-list .service_item .content .desc p { color:#aebed1 !important; }
.h8-services-list .service_item .service_btn {
  border-color:rgba(117,185,245,.22) !important;
  background:#071a36 !important;
  color:#fff !important;
}
.h8-services-list .service_item:hover .service_btn {
  border-color:#299fff !important;
  background:linear-gradient(145deg,#52d2ff,#1477e7) !important;
}
.h8-services-section .tj-primary-btn {
  border-color:rgba(255,255,255,.22) !important;
  background:#f7fbff !important;
  color:#071a36 !important;
}
.h8-services-section .tj-primary-btn .btn_inner .btn_text,
.h8-services-section .tj-primary-btn .btn_inner .btn_text>span,
.h8-services-section .tj-primary-btn:hover .btn_inner .btn_text,
.h8-services-section .tj-primary-btn:hover .btn_inner .btn_text>span {
  color:#071a36 !important;
  text-shadow:none !important;
  transform:none !important;
  opacity:1 !important;
}

/* v27: calculator columns stay visually balanced at every selection depth. */
.ps-cost-grid { align-items:stretch !important; }
.ps-cost-form { align-self:stretch; }
.ps-cost-summary {
  align-self:stretch !important;
  display:flex;
  flex-direction:column;
}
.ps-cost-guidance { margin-top:22px; padding:20px; }
.ps-cost-guidance-steps {
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
  margin-top:17px;
}
.ps-cost-guidance-steps>div {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-height:138px;
  padding:14px;
}
.ps-cost-guidance-steps>div>i { flex:0 0 38px; width:38px; height:38px; }
.ps-cost-guidance-steps span {
  display:grid;
  grid-template-columns:24px 1fr;
  align-items:start;
  margin-top:11px;
}
.ps-cost-guidance-steps b { grid-row:1/3; padding-top:2px; }
.ps-cost-guidance-steps small { margin-top:3px; }
.ps-cost-summary .ps-cost-cta { margin-top:auto !important; }
.ps-cost-summary em { margin-top:14px !important; }

@media(max-width:1199px){
  .ps-cost-guidance-steps{grid-template-columns:1fr}
  .ps-cost-guidance-steps>div{display:grid;grid-template-columns:40px 1fr;align-items:center;min-height:70px}
  .ps-cost-guidance-steps span{margin-top:0}
}

/* v28: restore desktop sticky services narrative. */
@media(min-width:992px){
  .h8-services-section { overflow:visible !important; }
  .h8-services-section::before { right:0; }
  .h8-services-wrapper { align-items:stretch !important; }
  .h8-services-left { align-self:stretch; }
  .h8-services-left>.tj-sticky-top {
    position:sticky !important;
    top:110px !important;
    z-index:3;
  }
}

/* v29: align the full desktop header with the site content container. */
@media(min-width:1400px){
  .tj-header-area.header-8 .header-topbar>.container-fluid,
  .tj-header-area.header-8 .header-bottom>.container-fluid {
    width:100%;
    max-width:1320px;
    margin-left:auto;
    margin-right:auto;
    padding-left:12px;
    padding-right:12px;
  }
}
@media(min-width:992px) and (max-width:1399px){
  .tj-header-area.header-8 .header-topbar>.container-fluid,
  .tj-header-area.header-8 .header-bottom>.container-fluid {
    padding-left:24px;
    padding-right:24px;
  }
}

/* v30: final surface, case-study and testimonial refinements. */
.ps-setup-options { background:#fff !important; }

.ps-case-content {
  display:flex;
  flex-direction:column;
  padding:42px 46px !important;
}
.ps-case-content>h3 {
  max-width:720px;
  margin:24px 0 18px !important;
  font-size:clamp(29px,2.35vw,42px) !important;
  line-height:1.08;
}
.ps-client-pill { margin-bottom:22px; }
.ps-case-story {
  gap:10px !important;
  margin:12px 0 0 !important;
}
.ps-case-step {
  grid-template-columns:54px minmax(0,1fr) !important;
  gap:16px !important;
  min-height:84px;
  padding:13px 18px 13px 13px !important;
  border-color:rgba(109,180,242,.16) !important;
  border-radius:12px !important;
  background:linear-gradient(100deg,rgba(35,115,195,.14),rgba(255,255,255,.025)) !important;
  transition:transform .3s ease,border-color .3s ease,background .3s ease;
}
.ps-case-step:hover {
  transform:translateX(5px);
  border-color:rgba(80,190,255,.42) !important;
  background:linear-gradient(100deg,rgba(35,128,220,.22),rgba(255,255,255,.04)) !important;
}
.ps-case-number {
  width:54px !important;
  height:54px !important;
  border:1px solid rgba(85,203,255,.24) !important;
  border-radius:12px !important;
  background:linear-gradient(145deg,rgba(81,205,255,.18),rgba(24,112,231,.16)) !important;
  color:#59d2ff !important;
  font-size:19px !important;
}
.ps-case-step small { margin-bottom:5px; color:#58d2ff !important; font-size:10px !important; }
.ps-case-step p { color:#d0dbea !important; font-size:13px !important; line-height:1.48 !important; }
.ps-case-challenge,.ps-case-solution,.ps-case-outcome { --step-color:#55cfff; }
.ps-case-link {
  align-self:flex-start;
  margin-top:22px;
  padding:12px 18px;
  border:1px solid rgba(97,188,255,.28);
  border-radius:999px;
  background:rgba(21,111,205,.13);
}

/* Keep the original vertical slider motion while giving each review a compact premium card. */
.h8-testimonial .h8-testimonial-fanfact .counter-item {
  display:grid !important;
  grid-template-columns:auto minmax(150px,220px) !important;
  align-items:center !important;
  gap:18px !important;
}
.h8-testimonial .h8-testimonial-fanfact .sub-title {
  max-width:220px !important;
  margin:0 !important;
  padding-left:18px !important;
  border-left:1px solid #c9d6e5;
  color:#34455d !important;
  font-size:14px !important;
  line-height:1.45 !important;
  text-transform:none !important;
  letter-spacing:0 !important;
}
.h8-testimonial-item {
  min-height:0 !important;
  padding:28px !important;
}
.h8-testimonial-item .testimonial-content { display:flex !important; flex-direction:column !important; }
.h8-testimonial-item .author-rating { margin-bottom:18px !important; }
.h8-testimonial-item .star-ratings,
.h8-testimonial-item .star-ratings span { color:#1787ff !important; font-size:17px !important; letter-spacing:2px; }
.h8-testimonial-item .desc { margin:0 0 22px !important; padding:0 0 22px !important; border-bottom:1px solid #dce6f1; }
.h8-testimonial-item .desc p { margin:0 !important; font-size:14px !important; line-height:1.7 !important; }
.h8-testimonial-item .testimonial-author { display:flex !important; align-items:center !important; gap:12px !important; text-align:left !important; }
.h8-testimonial-item .author-images {
  flex:0 0 44px;
  width:44px !important;
  height:44px !important;
  border-radius:12px !important;
  background:linear-gradient(145deg,#54d1ff,#1579e8) !important;
}
.h8-testimonial-item .author-images::before { color:#fff !important; font-size:25px !important; }
.h8-testimonial-item .author-name { margin:0 !important; color:#09182f !important; font-size:16px !important; }
.h8-testimonial-item .testimonial-author .sub-title { margin:3px 0 0 !important; color:#7c899b !important; font-size:11px !important; }

@media(max-width:991px){
  .ps-case-content{padding:32px 24px !important}
  .ps-case-step{grid-template-columns:48px minmax(0,1fr) !important}
  .ps-case-number{width:48px !important;height:48px !important}
  .h8-testimonial .h8-testimonial-fanfact .counter-item{grid-template-columns:auto 1fr !important}
}
@media(max-width:575px){
  .h8-testimonial .h8-testimonial-fanfact .counter-item{grid-template-columns:1fr !important;gap:8px !important}
  .h8-testimonial .h8-testimonial-fanfact .sub-title{max-width:290px !important;padding:0 !important;border:0 !important}
}

/* v35: alternate light and dark sections for clearer visual pacing. */
.site-main>.h8-services-section { order:5; }
.site-main>.ps-setup-options { order:6; }
.site-main>.ps-journey { order:7; }
.site-main>.ps-cost-section { order:8; }
.site-main>.ps-numbers-section { order:9; }
.site-main>.ps-cases { order:10; }

/* v36-final: metric copy stays beneath the number on every viewport. */
.h8-testimonial .h8-testimonial-fanfact .counter-item {
  grid-template-columns:1fr !important;
  gap:10px !important;
  justify-items:start !important;
}
.h8-testimonial .h8-testimonial-fanfact .sub-title {
  max-width:300px !important;
  padding-left:0 !important;
  border-left:0 !important;
}

/* v40-final: final heading, popup and footer refinements. */
.ps-cases-heading{max-width:1320px !important}
.ps-cases-heading h2{color:#07162d !important;white-space:nowrap;font-size:clamp(31px,3.7vw,54px) !important}
.ps-consult-dialog{grid-template-columns:minmax(330px,400px) minmax(500px,1fr) !important;width:min(980px,calc(100vw - 48px)) !important;align-items:stretch}
.ps-consult-visual{min-height:620px !important;max-height:680px;align-self:center}
.ps-consult-visual>img{object-position:center !important}
.ps-consult-visual-copy{left:32px !important;right:32px !important;bottom:32px !important}
.ps-consult-visual-copy>strong{font-size:31px !important}
.ps-consult-consent input[type="checkbox"]{appearance:auto !important;flex:0 0 16px !important;width:16px !important;min-width:16px !important;height:16px !important;margin:1px 0 0 !important;padding:0 !important}
.ps-consult-submit{justify-self:start !important;justify-content:flex-start !important;gap:28px;width:auto !important;min-width:300px;min-height:50px;padding:6px 7px 6px 21px !important}
.ps-consult-submit i{margin-left:auto}
.ps-footer-social{display:flex;align-items:center;gap:10px;margin-top:24px}
.ps-footer-social a{display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(116,192,247,.22);border-radius:10px;background:rgba(255,255,255,.045);color:#dce9f7;font-size:14px;transition:transform .25s ease,border-color .25s ease,background .25s ease,color .25s ease}
.ps-footer-social a:hover{transform:translateY(-3px);border-color:#42baff;background:#1286ef;color:#fff}
@media(max-width:850px){.ps-consult-dialog{grid-template-columns:1fr !important;width:min(620px,calc(100vw - 28px)) !important}.ps-consult-visual{min-height:190px !important;max-height:190px;align-self:auto}.ps-consult-visual>img{object-position:center 63% !important}}
@media(max-width:767px){.ps-cases-heading h2{white-space:normal}}
@media(max-width:520px){.ps-consult-submit{justify-self:stretch !important;width:100% !important;min-width:0}}

/* v63-cascade-lock: retain the brighter journey and compact post-estimate cards. */
.ps-journey{background:radial-gradient(circle at 82% 12%,rgba(40,151,255,.28),transparent 34%),radial-gradient(circle at 12% 88%,rgba(25,109,220,.18),transparent 38%),linear-gradient(135deg,#0c2342 0%,#0d315c 52%,#0b274b 100%) !important}
.ps-journey-heading h2 span{color:#62caff !important}
.ps-journey-detail{border-color:rgba(117,201,255,.28) !important;background:radial-gradient(circle at 100% 0,rgba(49,165,255,.26),transparent 43%),linear-gradient(145deg,rgba(36,90,148,.9),rgba(16,52,91,.94)) !important}
.ps-cost-guidance{margin-top:14px !important;padding:14px 15px !important}
.ps-cost-guidance-steps{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:8px !important;margin-top:12px !important}
.ps-cost-guidance-steps>div{display:grid !important;grid-template-columns:34px minmax(0,1fr) !important;align-items:center !important;gap:9px !important;min-height:64px !important;padding:9px 10px !important}
.ps-cost-guidance-steps>div>i{width:34px !important;height:34px !important;font-size:13px !important}
.ps-cost-guidance-steps span{display:block !important;margin:0 !important}
.ps-cost-guidance-steps b{display:none !important}
.ps-cost-guidance-steps strong{display:block;font-size:11px !important;line-height:1.25 !important}
.ps-cost-guidance-steps small{display:block;margin-top:2px !important;font-size:9px !important;line-height:1.3 !important}
@media(max-width:991px){.ps-cost-guidance-steps{grid-template-columns:1fr !important}}

/* v64: consolidated visual corrections from the latest review. */
/* Keep the complete skyline below the header and retain Burj Khalifa as the focal point. */
.ps-hero{
  background-size:100% 100%,100% 100%,auto 82% !important;
  background-position:center,right bottom,right bottom !important;
}

/* Services: colour response and arrow motion only; the card itself stays fixed. */
.h8-services-list .service_item,
.h8-services-list .service_item:hover{
  transform:none !important;
}
.h8-services-list .service_item .service_btn i{
  transition:transform .28s ease !important;
}
.h8-services-list .service_item:hover .service_btn i{
  transform:translate(3px,-3px) rotate(4deg) !important;
}

/* Journey: visible separation, balanced active padding and no card movement. */
@media(min-width:992px){
  .ps-journey-tabs{
    gap:10px !important;
  }
  .ps-journey-tabs button,
  .ps-journey-tabs button.active{
    min-height:116px !important;
    padding:12px 10px 14px !important;
    border:1px solid rgba(110,193,255,.18) !important;
    border-radius:14px !important;
    transform:none !important;
  }
  .ps-journey-tabs button:hover{
    transform:none !important;
  }
}

/* Calculator: equal typography across option fields and post-estimate guidance. */
.ps-cost-addons label{
  font-size:13px !important;
  line-height:1.35 !important;
}
.ps-cost-guidance-steps strong{
  font-size:13px !important;
  line-height:1.3 !important;
}
.ps-cost-guidance-steps small{
  font-size:11px !important;
  line-height:1.35 !important;
}

/* Numbers: give the narrative column more room without crowding the metrics. */
.ps-numbers-section .counter-wrapper{
  grid-template-columns:minmax(360px,1.08fr) repeat(2,minmax(230px,1fr)) !important;
}
.ps-numbers-intro{
  padding-right:62px !important;
}
.ps-numbers-intro h2{
  max-width:430px !important;
}
.ps-numbers-intro p{
  max-width:390px !important;
}

/* Case studies: preserve legibility while allowing the photography to breathe. */
.ps-case-panel>img,
.ps-case-panel.is-active>img{
  filter:saturate(1.02) brightness(.94) !important;
}
.ps-case-panel-shade,
.ps-case-panel.is-active .ps-case-panel-shade{
  opacity:.72 !important;
  background:linear-gradient(90deg,rgba(2,17,38,.78) 0%,rgba(3,22,46,.48) 50%,rgba(3,18,38,.14) 100%) !important;
}
.ps-case-panel::after,
.ps-case-panel.is-active::after{
  opacity:.38 !important;
}

/* Footer: larger brand, one-line desktop heading and 1px larger utility copy. */
.ps-footer-brand-block .footer-logo img{
  width:190px !important;
}
.ps-footer-cta-copy{
  max-width:760px !important;
}
.ps-footer-cta-copy .title{
  max-width:none !important;
  white-space:nowrap;
  font-size:clamp(27px,2.15vw,37px) !important;
}
.tj-footer-area .widget-menu ul li a{
  font-size:12px !important;
}
.tj-footer-area .footer-contact-infos .infos-item>span{
  font-size:12px !important;
}
.tj-footer-area .footer-contact-infos .infos-item p,
.tj-footer-area .footer-contact-infos .infos-item>a{
  font-size:11px !important;
}
@media(max-width:1199px){
  .ps-footer-cta-copy .title{white-space:normal}
  .ps-numbers-section .counter-wrapper{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .ps-numbers-intro{padding-right:0 !important}
}
@media(max-width:991px){
  .ps-hero{background-size:100% 100%,100% 100%,auto 66% !important;background-position:center,right bottom,70% bottom !important}
}
@media(max-width:575px){
  .ps-hero{background-size:100% 100%,100% 100%,auto 52% !important;background-position:center,right bottom,62% bottom !important}
}

/* v65: hero continuity, requested About direction and refined journey alignment. */
/* The skyline now fills the complete hero canvas, avoiding the hard rectangular image edge. */
@media(min-width:992px){
  .ps-hero{
    background-size:100% 100%,100% 100%,auto 100% !important;
    background-position:center,center,right bottom !important;
  }
  .tj-header-area.header-8.header-absolute .header-bottom{
    background:rgba(3,15,36,.78) !important;
    -webkit-backdrop-filter:blur(14px) saturate(125%);
    backdrop-filter:blur(14px) saturate(125%);
  }
}

/* About Polestar: editorial copy on the left, photography on the right. */
@media(min-width:992px){
  .ps-about-copy{order:1 !important;}
  .ps-about-visual{order:2 !important;}
}

/* Journey: connector crosses every number centre and the selected state is even on all sides. */
@media(min-width:992px){
  .ps-journey-tabs::before{
    top:42px !important;
    left:9.3% !important;
    right:9.3% !important;
  }
  .ps-journey-tabs button,
  .ps-journey-tabs button.active{
    box-shadow:none !important;
    border-width:1px !important;
    border-style:solid !important;
  }
  .ps-journey-tabs button.active{
    padding:12px 10px 14px !important;
    border-color:rgba(86,203,255,.7) !important;
    background:linear-gradient(135deg,rgba(28,126,216,.58),rgba(28,82,139,.68)) !important;
  }
}

/* v68: improve readability of the About image proof labels. */
.ps-about-proof strong{
  font-size:22px !important;
  line-height:1.08 !important;
}
.ps-about-proof small{
  margin-top:5px !important;
  font-size:11px !important;
  line-height:1.4 !important;
}
.ps-about-expert-pill{
  font-size:11px !important;
}

/* Centre the services overview copy against the full card stack. */
@media(min-width:992px){
  .h8-feature>.container>.row{
    align-items:center !important;
  }
  .h8-feature>.container>.row>.col-lg-4{
    display:flex;
    align-items:center;
  }
  .h8-feature>.container>.row>.col-lg-4 .sec-heading{
    width:100%;
    margin-top:0 !important;
    margin-bottom:0 !important;
  }
}

/* v69: requested content polish and plugin-ready Ask AI Expert module. */
.ps-about-copy .sec-title{
  max-width:680px !important;
  font-size:clamp(42px,4.2vw,66px) !important;
  line-height:1.02 !important;
}
.ps-about-benefits{
  gap:14px !important;
}
.ps-about-benefits li{
  min-height:104px !important;
  padding:18px 22px !important;
}
.ps-about-benefits strong{
  font-size:17px !important;
  line-height:1.3 !important;
}
.ps-about-benefits small{
  margin-top:6px !important;
  font-size:13px !important;
  line-height:1.5 !important;
}
@media(min-width:992px){
  .ps-journey-tabs::before{
    background:linear-gradient(90deg,rgba(22,135,255,.22),rgba(83,210,255,.30)) !important;
    box-shadow:none !important;
  }
}
.ps-cost-summary .ps-cost-cta{
  margin-top:22px !important;
}
.ps-cost-summary em{
  margin-top:20px !important;
  padding-bottom:5px !important;
}
.ps-numbers-section .counter-item:nth-of-type(4),
.ps-numbers-section .counter-item:nth-of-type(5){
  margin-top:18px !important;
  padding-top:40px !important;
  border-top-color:rgba(116,151,191,.10) !important;
}

.ps-ai-expert{
  position:relative;
  overflow:hidden;
  padding:100px 0 !important;
  background:linear-gradient(145deg,#061327,#081b35) !important;
}
.ps-ai-expert::before{
  content:"";
  position:absolute;
  width:78vw;
  height:220px;
  top:-48px;
  left:-25vw;
  border:0;
  border-radius:50%;
  background:linear-gradient(90deg,transparent 2%,rgba(23,59,245,.72) 34%,rgba(26,202,255,.92) 67%,transparent 97%);
  opacity:.64;
  filter:blur(27px);
  mix-blend-mode:screen;
  pointer-events:none;
  will-change:transform;
  transform:rotate(-13deg) translate3d(0,0,0);
  animation:psNumbersLightOne 11s ease-in-out infinite alternate;
}
.ps-ai-expert::after{
  content:"";
  position:absolute;
  width:72vw;
  height:270px;
  right:-23vw;
  bottom:-112px;
  border-radius:50%;
  background:linear-gradient(90deg,transparent 1%,rgba(20,65,232,.72) 32%,rgba(50,211,255,.9) 70%,transparent 98%);
  opacity:.6;
  filter:blur(27px);
  mix-blend-mode:screen;
  pointer-events:none;
  will-change:transform;
  transform:rotate(-19deg) translate3d(0,0,0);
  animation:psNumbersLightTwo 14s ease-in-out infinite alternate;
}
.ps-ai-shell{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(520px,1.12fr);
  align-items:center;
  gap:70px;
  padding:56px;
  z-index:1;
  border:1px solid rgba(105,181,241,.22);
  border-radius:24px;
  background:linear-gradient(145deg,rgba(9,31,61,.86),rgba(5,19,40,.78));
  box-shadow:0 28px 80px rgba(0,8,25,.28);
  backdrop-filter:blur(10px);
}
.ps-ai-kicker{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin-bottom:20px;
  color:#117eed;
  font-size:13px;
  font-weight:750;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.ps-ai-intro h2{
  max-width:560px;
  margin:0;
  color:#fff;
  font-size:clamp(44px,4.3vw,68px);
  font-weight:540;
  line-height:1.02;
  letter-spacing:-.045em;
}
.ps-ai-intro>p{
  max-width:560px;
  margin:25px 0 0;
  color:#aebed2;
  font-size:17px;
  line-height:1.7;
}
.ps-ai-trust{
  display:flex;
  flex-wrap:wrap;
  gap:18px;
  margin-top:28px;
  color:#d7e5f4;
  font-size:13px;
  font-weight:650;
}
.ps-ai-trust span{display:flex;align-items:center;gap:8px}
.ps-ai-trust i{color:#1687ff}
.ps-ai-chat{
  overflow:hidden;
  border:1px solid rgba(91,164,235,.30);
  border-radius:20px;
  background:#071b39;
  box-shadow:0 28px 70px rgba(2,22,52,.22);
}
.ps-ai-chat-head{
  display:flex;
  align-items:center;
  gap:12px;
  padding:18px 20px;
  border-bottom:1px solid rgba(130,184,240,.16);
}
.ps-ai-avatar{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border-radius:13px;
  background:linear-gradient(145deg,#52d1ff,#147bea);
  color:#fff;
}
.ps-ai-chat-head strong,.ps-ai-chat-head small{display:block}
.ps-ai-chat-head strong{color:#fff;font-size:14px}
.ps-ai-chat-head small{margin-top:2px;color:#8fa7c3;font-size:10px}
.ps-ai-chat-head small i{display:inline-block;width:6px;height:6px;margin-right:5px;border-radius:50%;background:#42d99a;box-shadow:0 0 0 4px rgba(66,217,154,.10)}
.ps-ai-powered{margin-left:auto;color:#72cdf9;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.09em}
.ps-ai-messages{
  min-height:180px;
  max-height:260px;
  overflow:auto;
  padding:25px 22px 15px;
}
.ps-ai-message{
  width:max-content;
  max-width:82%;
  margin-bottom:12px;
  padding:13px 15px;
  border-radius:14px;
  color:#dce9f8;
  font-size:13px;
  line-height:1.55;
  opacity:0;
  transform:translateY(10px);
  animation:psAiMessageIn .42s cubic-bezier(.2,.8,.2,1) forwards;
}
@keyframes psAiMessageIn{to{opacity:1;transform:translateY(0)}}
.ps-ai-message.is-bot{border-bottom-left-radius:4px;background:#142f55}
.ps-ai-message.is-user{margin-left:auto;border-bottom-right-radius:4px;background:#1687ff;color:#fff}
.ps-ai-prompts{display:flex;flex-wrap:wrap;gap:7px;padding:0 22px 15px}
.ps-ai-prompts button{
  padding:8px 11px;
  border:1px solid rgba(91,179,255,.28);
  border-radius:999px;
  background:rgba(20,75,132,.30);
  color:#bdd4ec;
  font-size:10px;
  transition:.25s ease;
}
.ps-ai-prompts button:hover{border-color:#47c6ff;background:#123d6d;color:#fff}
.ps-ai-compose{
  display:flex;
  align-items:center;
  gap:10px;
  margin:0 16px 12px;
  padding:7px 7px 7px 16px;
  border:1px solid rgba(116,178,238,.27);
  border-radius:15px;
  background:#0c2649;
}
.ps-ai-compose input{
  flex:1;
  min-width:0;
  border:0;
  outline:0;
  background:transparent;
  color:#fff;
  font-size:13px;
}
.ps-ai-compose input::placeholder{color:#7891ad}
.ps-ai-compose button{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border:0;
  border-radius:12px;
  background:linear-gradient(145deg,#52d1ff,#147bea);
  color:#fff;
  transition:transform .25s ease,box-shadow .25s ease;
}
.ps-ai-compose button:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(22,135,255,.32)}
.ps-ai-disclaimer{display:block;padding:0 20px 16px;color:#6e87a3;font-size:9px;line-height:1.45}
@media(max-width:991px){
  .ps-ai-expert{padding:72px 0 !important}
  .ps-ai-shell{grid-template-columns:1fr;gap:38px;padding:34px}
  .ps-ai-chat{max-width:680px;width:100%}
}
@media(max-width:575px){
  .ps-ai-shell{padding:24px 18px;border-radius:18px}
  .ps-ai-intro h2{font-size:40px}
  .ps-ai-intro>p{font-size:15px}
  .ps-ai-prompts{flex-wrap:nowrap;overflow:auto;padding-bottom:17px}
  .ps-ai-prompts button{white-space:nowrap}
}
@media(prefers-reduced-motion:reduce){
  .ps-ai-expert::before,.ps-ai-expert::after,.ps-ai-message{animation:none !important;transform:none !important;opacity:1 !important}
}

/* Editorial blog cards — compact, consistent and WordPress-friendly. */
.h8-blog-section{
  padding:100px 0 !important;
  background:#fff !important;
}
.h8-blog-section .sec-heading{
  max-width:820px;
  margin:0 auto 46px;
}
.h8-blog-section .sec-heading .sub-title{
  color:#117eed;
  font-size:13px;
  font-weight:750;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.h8-blog-section .sec-heading .sec-title{
  margin-top:14px;
  color:#071a35;
  font-size:clamp(42px,4vw,64px);
  font-weight:560;
  line-height:1.05;
  letter-spacing:-.045em;
}
.h8-blog-section .h8-blog-wrapper{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:28px !important;
  align-items:stretch;
}
.h8-blog-section .h8-blog-item,
.h8-blog-section .h8-blog-item.active{
  display:flex !important;
  flex-direction:column !important;
  width:100% !important;
  height:auto !important;
  min-width:0;
  overflow:hidden;
  border:1px solid #dce5f0 !important;
  border-radius:20px !important;
  background:#fff !important;
  box-shadow:0 20px 55px rgba(11,43,84,.07);
  transition:border-color .3s ease,box-shadow .3s ease !important;
}
.h8-blog-section .h8-blog-item:hover{
  border-color:#9bc7f4 !important;
  box-shadow:0 26px 65px rgba(11,55,108,.12);
}
.h8-blog-section .h8-blog-item .blog-images{
  position:relative;
  width:100% !important;
  height:260px !important;
  flex:0 0 260px !important;
  overflow:hidden;
  background:#dfe9f4;
}
.h8-blog-section .h8-blog-item .blog-images::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(4,20,43,.02),rgba(4,20,43,.18));
  pointer-events:none;
}
.h8-blog-section .h8-blog-item .blog-images img{
  width:100% !important;
  height:100% !important;
  object-fit:cover;
  transform:scale(1.002);
  transition:transform .65s cubic-bezier(.2,.75,.2,1),filter .35s ease;
}
.h8-blog-section .h8-blog-item:hover .blog-images img{
  transform:scale(1.035);
  filter:saturate(1.06);
}
.h8-blog-section .h8-blog-item .blog-images .blog-date{
  z-index:2;
  top:18px;
  left:18px;
  inset-inline-start:18px;
  min-width:68px;
  padding:13px 12px !important;
  border:1px solid rgba(255,255,255,.25);
  border-radius:14px;
  background:rgba(7,26,53,.72) !important;
  box-shadow:0 10px 28px rgba(3,17,37,.18);
  backdrop-filter:blur(12px);
}
.h8-blog-section .blog-date .date{
  margin:0 0 5px !important;
  font-size:28px !important;
}
.h8-blog-section .blog-date .month{
  font-size:11px !important;
  letter-spacing:.18em !important;
}
.h8-blog-section .h8-blog-item .blog-content,
.h8-blog-section .h8-blog-item.active .blog-content{
  display:block !important;
  flex:1 1 auto !important;
  overflow:visible !important;
  padding:28px 28px 30px !important;
}
.h8-blog-section .h8-blog-item .blog-content-inner,
.h8-blog-section .h8-blog-item.active .blog-content-inner{
  display:flex;
  flex-direction:column;
  width:100% !important;
  height:100%;
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
}
.h8-blog-section .blog-two-meta{
  margin:0 0 17px !important;
}
.h8-blog-section .blog-two-meta ul{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:9px;
}
.h8-blog-section .blog-two-meta li{
  color:#708199;
  font-size:12px;
}
.h8-blog-section .blog-two-meta li:first-child a{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  background:#edf5ff;
  color:#117eed;
  font-weight:700;
}
.h8-blog-section .blog-content .title{
  margin:0 0 15px !important;
  color:#071a35;
  font-size:25px;
  font-weight:650;
  line-height:1.18 !important;
  letter-spacing:-.025em;
}
.h8-blog-section .blog-content .title a{color:inherit !important}
.h8-blog-section .blog-content .desc{
  margin-bottom:22px;
  color:#5f7088;
}
.h8-blog-section .blog-content .desc p{
  margin:0;
  font-size:15px;
  line-height:1.65;
}
.h8-blog-section .blog-content .blog-button{
  margin-top:auto !important;
  padding-top:4px;
}
.h8-blog-section .blog-button .tj-primary-btn{
  display:inline-flex;
  min-height:auto !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#071a35 !important;
}
.h8-blog-section .blog-button .tj-primary-btn .btn_inner{
  display:flex;
  align-items:center;
  gap:10px;
}
.h8-blog-section .blog-button .btn_icon{
  order:2;
  display:grid;
  place-items:center;
  width:30px !important;
  height:30px !important;
  border-radius:50% !important;
  background:#1687ff !important;
  color:#fff !important;
  transition:transform .3s ease,background .3s ease;
}
.h8-blog-section .blog-button .btn_icon span{
  display:block !important;
  width:auto !important;
  height:auto !important;
  transform:none !important;
}
.h8-blog-section .blog-button .btn_icon i:first-child{display:none}
.h8-blog-section .blog-button .btn_text{
  order:1;
  color:#071a35 !important;
  font-size:15px;
  font-weight:750;
}
.h8-blog-section .blog-button .tj-primary-btn:hover .btn_icon{
  transform:translateX(4px);
  background:#086fd8 !important;
}
@media(max-width:991px){
  .h8-blog-section .h8-blog-wrapper{grid-template-columns:repeat(2,minmax(0,1fr))}
  .h8-blog-section .h8-blog-item:last-child{grid-column:1/-1;max-width:calc(50% - 14px);margin:0 auto}
}
@media(max-width:767px){
  .h8-blog-section{padding:72px 0 !important}
  .h8-blog-section .sec-heading{margin-bottom:32px}
  .h8-blog-section .h8-blog-wrapper{grid-template-columns:1fr;gap:20px !important}
  .h8-blog-section .h8-blog-item:last-child{grid-column:auto;max-width:none;margin:0}
  .h8-blog-section .h8-blog-item .blog-images{height:230px !important;flex-basis:230px !important}
  .h8-blog-section .h8-blog-item .blog-content,.h8-blog-section .h8-blog-item.active .blog-content{padding:24px !important}
}

/* v76 final cascade lock: transparent header, complete skyline and balanced About title. */
.tj-header-area.header-8.header-absolute{
  position:absolute !important;
  inset:0 0 auto !important;
  z-index:1000 !important;
  background:transparent !important;
}
.tj-header-area.header-8.header-absolute .header-topbar{
  background:rgba(3,15,36,.30) !important;
  -webkit-backdrop-filter:blur(9px) saturate(120%);
  backdrop-filter:blur(9px) saturate(120%);
}
.tj-header-area.header-8.header-absolute .header-bottom,
.tj-header-area.header-8.header-absolute .header-wrapper{
  background:linear-gradient(180deg,rgba(3,15,36,.48),rgba(3,15,36,.12)) !important;
  -webkit-backdrop-filter:blur(8px) saturate(115%);
  backdrop-filter:blur(8px) saturate(115%);
}
.ps-hero{
  margin-top:0 !important;
  background-size:100% 100%,100% 100%,cover !important;
  background-position:center,center,center top !important;
  background-repeat:no-repeat !important;
}
.ps-about-copy .sec-title{
  max-width:620px !important;
  font-size:clamp(36px,3.15vw,48px) !important;
  line-height:1.08 !important;
  letter-spacing:-.035em !important;
}
@media(max-width:991px){
  .ps-hero{
    background-size:100% 100%,100% 100%,auto 100% !important;
    background-position:center,center,68% top !important;
  }
  .ps-about-copy .sec-title{font-size:clamp(34px,7vw,46px) !important}
}
@media(max-width:575px){
  .ps-hero{
    background-size:100% 100%,100% 100%,auto 100% !important;
    background-position:center,center,72% top !important;
  }
  .ps-about-copy .sec-title{font-size:clamp(32px,10vw,41px) !important}
}

/* v77: the desktop hero header must be genuinely transparent. */
.tj-header-area.header-8.header-absolute,
.tj-header-area.header-8.header-absolute .header-topbar,
.tj-header-area.header-8.header-absolute .header-bottom,
.tj-header-area.header-8.header-absolute .header-wrapper,
.tj-header-area.header-8.header-absolute .header-topbar_wrap,
.tj-header-area.header-8.header-absolute .container-fluid,
.tj-header-area.header-8.header-absolute .row,
.tj-header-area.header-8.header-absolute .col-12,
.tj-header-area.header-8.header-absolute .mainmenu {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
.tj-header-area.header-8.header-absolute::before,
.tj-header-area.header-8.header-absolute::after,
.tj-header-area.header-8.header-absolute .header-topbar::before,
.tj-header-area.header-8.header-absolute .header-topbar::after,
.tj-header-area.header-8.header-absolute .header-bottom::before,
.tj-header-area.header-8.header-absolute .header-bottom::after,
.tj-header-area.header-8.header-absolute .header-wrapper::before,
.tj-header-area.header-8.header-absolute .header-wrapper::after {
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}
.tj-header-area.header-8.header-absolute .header-topbar,
.tj-header-area.header-8.header-absolute .header-bottom {
  border-color: rgba(255,255,255,.13) !important;
}
.tj-header-area.header-8.header-absolute .header-wrapper {
  border: 0 !important;
}
