.page-hero{position:relative;overflow:hidden;padding:46px 0 64px;background:linear-gradient(180deg,#fff,#F6FAFF)}
.page-hero-grid{position:relative;display:grid;grid-template-columns:1fr 420px;gap:58px;align-items:center}
.page-hero p{max-width:780px;margin-top:22px}
.page-logo-card{background:#fff;border:1px solid var(--pcl-border);border-radius:34px;padding:34px;box-shadow:var(--pcl-shadow)}
.page-logo-card img{max-height:260px;margin:auto}
.breadcrumb{font-size:14px;font-weight:900;color:var(--pcl-blue);letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px}
.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center}
.feature-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.feature-item{display:flex;gap:12px;align-items:flex-start;padding:18px;border:1px solid var(--pcl-border);border-radius:20px;background:#fff}
.feature-item span{color:var(--pcl-green);font-weight:900}
.content{max-width:900px}


/* V16 inner page contextual panel replacement */
.page-info-panel{
  position:relative;
  background:
    radial-gradient(circle at 85% 12%,rgba(16,189,168,.16),transparent 32%),
    radial-gradient(circle at 12% 0%,rgba(7,87,213,.12),transparent 28%),
    linear-gradient(135deg,#FFFFFF,#F4FAFF);
  border:1px solid var(--pcl-border);
  border-radius:34px;
  padding:30px;
  box-shadow:var(--pcl-shadow);
  overflow:hidden;
}
.page-info-panel:before{
  content:"";
  position:absolute;
  right:-42px;
  top:-42px;
  width:150px;
  height:150px;
  border-radius:50%;
  border:22px solid rgba(16,189,168,.10);
}
.page-info-panel:after{
  content:"";
  position:absolute;
  left:-34px;
  bottom:-34px;
  width:120px;
  height:120px;
  border-radius:50%;
  border:18px solid rgba(7,87,213,.10);
}
.panel-kicker{
  position:relative;
  z-index:1;
  color:var(--pcl-blue);
  font-size:13px;
  font-weight:900;
  letter-spacing:.22em;
  text-transform:uppercase;
  margin-bottom:18px;
}
.mini-metric{
  position:relative;
  z-index:1;
  display:flex;
  gap:14px;
  align-items:flex-start;
  padding:16px 0;
  border-top:1px solid rgba(220,232,246,.92);
}
.mini-metric:first-of-type{
  border-top:0;
  padding-top:0;
}
.mini-metric strong{
  flex:0 0 76px;
  color:var(--pcl-green);
  font-size:22px;
  line-height:1.15;
  font-weight:900;
}
.mini-metric span{
  color:var(--pcl-text);
  line-height:1.55;
  font-weight:700;
}
.service-summary-panel .mini-metric strong{
  color:var(--pcl-blue);
}
.page-logo-card{
  display:none !important;
}


/* V24 interactive About page */
.about-hero .page-hero-grid{
  grid-template-columns:minmax(0,1fr) minmax(360px,460px);
}

.about-pulse-card{
  position:relative;
  min-height:430px;
  border-radius:36px;
  background:
    radial-gradient(circle at 50% 45%,rgba(16,189,168,.20),transparent 34%),
    radial-gradient(circle at 40% 38%,rgba(7,87,213,.16),transparent 36%),
    linear-gradient(135deg,#FFFFFF,#F4FAFF);
  border:1px solid var(--pcl-border);
  box-shadow:var(--pcl-shadow);
  overflow:hidden;
}

.pulse-ring{
  position:absolute;
  left:50%;
  top:50%;
  width:260px;
  height:260px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  border:2px solid rgba(7,87,213,.22);
}

.pulse-ring:after{
  content:"";
  position:absolute;
  inset:36px;
  border-radius:50%;
  border:8px solid rgba(16,189,168,.17);
}

.pulse-core{
  position:absolute;
  left:50%;
  top:50%;
  width:210px;
  min-height:138px;
  transform:translate(-50%,-50%);
  border-radius:28px;
  background:linear-gradient(135deg,var(--pcl-navy),#0A3F77);
  color:#fff;
  display:grid;
  place-items:center;
  text-align:center;
  padding:22px;
  box-shadow:0 24px 60px rgba(7,27,70,.22);
}

.pulse-core strong{
  display:block;
  color:#fff;
  font-size:24px;
  line-height:1.15;
}

.pulse-core span{
  color:#DBEAFE;
  font-size:13px;
  line-height:1.45;
}

.orbit-card{
  position:absolute;
  width:126px;
  padding:14px;
  border-radius:20px;
  background:#fff;
  border:1px solid var(--pcl-border);
  box-shadow:0 18px 44px rgba(7,27,70,.11);
  transition:.22s ease;
}

.orbit-card:hover{
  transform:translateY(-5px);
}

.orbit-card span{
  display:block;
  color:var(--pcl-blue);
  font-weight:900;
  font-size:20px;
  margin-bottom:4px;
}

.orbit-card small{
  color:var(--pcl-text);
  font-weight:700;
  line-height:1.3;
}

.orbit-1{left:28px;top:38px}
.orbit-2{right:28px;top:48px}
.orbit-3{left:34px;bottom:42px}
.orbit-4{right:34px;bottom:38px}

.about-story-grid{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:44px;
  align-items:center;
}

.about-story-copy p + p{
  margin-top:18px;
}

.about-interactive-cards{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
}

.about-focus-card,
.difference-card{
  position:relative;
  background:#fff;
  border:1px solid var(--pcl-border);
  border-radius:26px;
  padding:26px;
  box-shadow:0 18px 44px rgba(7,27,70,.08);
  transition:.22s ease;
  overflow:hidden;
}

.about-focus-card:hover,
.difference-card:hover{
  transform:translateY(-6px);
  box-shadow:var(--pcl-shadow);
}

.about-focus-card:before,
.difference-card:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:6px;
  height:100%;
  background:linear-gradient(var(--pcl-blue),var(--pcl-green));
}

.about-focus-card span{
  width:52px;
  height:52px;
  border-radius:18px;
  background:linear-gradient(135deg,rgba(7,87,213,.13),rgba(16,189,168,.13));
  color:var(--pcl-blue);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:22px;
  font-weight:900;
  margin-bottom:18px;
}

.about-focus-card p,
.difference-card p{
  font-size:16px;
  margin-top:12px;
}

.about-tabs{
  display:grid;
  grid-template-columns:310px minmax(0,1fr);
  gap:24px;
  background:#fff;
  border:1px solid var(--pcl-border);
  border-radius:34px;
  padding:24px;
  box-shadow:var(--pcl-shadow);
}

.about-tab-buttons{
  display:grid;
  gap:10px;
}

.about-tab-button{
  min-height:58px;
  padding:15px 18px;
  border:1px solid var(--pcl-border);
  border-radius:18px;
  background:#F8FBFF;
  color:var(--pcl-navy);
  font:inherit;
  font-weight:900;
  text-align:left;
  cursor:pointer;
  transition:.2s ease;
}

.about-tab-button:hover,
.about-tab-button.active{
  background:linear-gradient(135deg,var(--pcl-blue),var(--pcl-green));
  color:#fff;
  border-color:transparent;
}

.about-tab-panels{
  position:relative;
  min-height:320px;
  border-radius:26px;
  background:
    radial-gradient(circle at 90% 10%,rgba(16,189,168,.16),transparent 32%),
    linear-gradient(135deg,#F8FBFF,#EEF7FF);
  padding:34px;
  overflow:hidden;
}

.about-tab-panel{
  display:none;
}

.about-tab-panel.active{
  display:block;
  animation:pclFadeUp .32s ease both;
}

.about-tab-panel p{
  max-width:760px;
  margin-top:14px;
}

.about-tab-panel ul{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  padding:0;
  margin:28px 0 0;
  list-style:none;
}

.about-tab-panel li{
  padding:16px;
  border-radius:18px;
  background:#fff;
  border:1px solid var(--pcl-border);
  color:var(--pcl-navy);
  font-weight:800;
  line-height:1.35;
}

@keyframes pclFadeUp{
  from{opacity:0;transform:translateY(10px)}
  to{opacity:1;transform:none}
}

.about-timeline{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  counter-reset:steps;
}

.about-step{
  position:relative;
  padding:28px;
  border-radius:28px;
  background:#fff;
  border:1px solid var(--pcl-border);
  box-shadow:0 18px 44px rgba(7,27,70,.08);
}

.about-step span{
  display:inline-flex;
  width:58px;
  height:58px;
  align-items:center;
  justify-content:center;
  border-radius:18px;
  background:linear-gradient(135deg,var(--pcl-blue),var(--pcl-green));
  color:#fff;
  font-weight:900;
  font-size:20px;
  margin-bottom:20px;
}

.about-step p{
  font-size:15px;
  margin-top:12px;
}

.difference-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.about-value-strip-section{
  padding-top:0;
}

.about-value-strip{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  padding:28px;
  border-radius:34px;
  background:linear-gradient(135deg,var(--pcl-navy),#0A3F77);
  box-shadow:var(--pcl-shadow);
}

.about-value-strip div{
  padding:22px;
  border-radius:22px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.13);
}

.about-value-strip strong{
  display:block;
  color:#39E59B;
  font-size:26px;
  margin-bottom:8px;
}

.about-value-strip span{
  color:#DBEAFE;
  line-height:1.45;
}


/* V25 inner page top spacing fix */
.page-hero{
  padding-top:46px !important;
  padding-bottom:64px !important;
}

.page-hero .breadcrumb{
  margin-bottom:16px;
}

.page-hero h1{
  margin-top:0;
}

@media(max-width:760px){
  .page-hero{
    padding-top:32px !important;
    padding-bottom:48px !important;
  }
}


/* V26 About hero pulse text alignment fix */
.about-pulse-card{
  display:block;
}

.pulse-core{
  width:230px;
  min-height:150px;
  padding:24px 26px;
}

.pulse-core strong{
  max-width:180px;
  margin:0 auto;
  text-align:center;
  line-height:1.08;
  letter-spacing:-.025em;
}

.pulse-core span{
  display:block;
  max-width:190px;
  margin:10px auto 0;
  text-align:center;
  line-height:1.4;
}

.orbit-card{
  min-height:132px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  text-align:left;
  padding:20px 22px;
}

.orbit-card span{
  margin:0 0 10px;
  line-height:1;
  letter-spacing:-.025em;
}

.orbit-card small{
  display:block;
  max-width:100%;
  font-size:17px;
  line-height:1.32;
  font-weight:800;
  color:var(--pcl-text);
}

/* Wider cards where text needs two balanced lines */
.orbit-1,
.orbit-2,
.orbit-3,
.orbit-4{
  width:150px;
}

.orbit-1{left:42px;top:54px}
.orbit-2{right:42px;top:66px}
.orbit-3{left:48px;bottom:58px}
.orbit-4{right:48px;bottom:54px}


/* V28 final About pulse text alignment and center-card fix */
.about-pulse-card{
  min-height:470px;
}

.pulse-core{
  width:300px !important;
  min-height:178px !important;
  padding:28px 30px !important;
  border-radius:34px !important;
  overflow:visible !important;
  z-index:3;
}

.pulse-core strong{
  max-width:260px !important;
  margin:0 auto !important;
  text-align:center !important;
  font-size:34px !important;
  line-height:1.12 !important;
  letter-spacing:-.035em !important;
  white-space:normal !important;
}

.pulse-core span{
  display:block !important;
  max-width:260px !important;
  margin:12px auto 0 !important;
  text-align:center !important;
  font-size:18px !important;
  line-height:1.45 !important;
  white-space:normal !important;
}

.orbit-card{
  width:150px !important;
  min-height:126px !important;
  padding:18px 16px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:center !important;
  text-align:center !important;
  z-index:4;
}

.orbit-card span{
  display:block !important;
  width:100% !important;
  margin:0 0 10px !important;
  text-align:center !important;
  line-height:1.05 !important;
  font-size:28px !important;
}

.orbit-card small{
  display:block !important;
  width:100% !important;
  max-width:112px !important;
  margin:0 auto !important;
  text-align:center !important;
  font-size:18px !important;
  line-height:1.32 !important;
  font-weight:800 !important;
}

/* Push cards away from the center so they do not cover the main text */
.orbit-1{left:34px !important;top:48px !important}
.orbit-2{right:34px !important;top:48px !important}
.orbit-3{left:34px !important;bottom:48px !important}
.orbit-4{right:34px !important;bottom:48px !important}


/* V29 About pulse desktop no-overlap layout */
.about-pulse-card{
  min-height:auto !important;
  padding:38px !important;
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  grid-template-areas:
    "qa ai"
    "core core"
    "ccaas web" !important;
  gap:26px 42px !important;
  align-items:center !important;
  justify-items:center !important;
}

.about-pulse-card .pulse-ring{
  left:50% !important;
  top:50% !important;
  width:260px !important;
  height:260px !important;
  transform:translate(-50%,-50%) !important;
  z-index:0 !important;
  pointer-events:none !important;
}

.about-pulse-card .pulse-core{
  position:relative !important;
  left:auto !important;
  top:auto !important;
  transform:none !important;
  grid-area:core !important;
  width:310px !important;
  min-height:175px !important;
  max-width:100% !important;
  z-index:2 !important;
  margin:0 auto !important;
}

.about-pulse-card .pulse-core strong{
  font-size:32px !important;
  line-height:1.12 !important;
  max-width:270px !important;
}

.about-pulse-card .pulse-core span{
  font-size:17px !important;
  line-height:1.42 !important;
  max-width:270px !important;
}

.about-pulse-card .orbit-card{
  position:relative !important;
  left:auto !important;
  right:auto !important;
  top:auto !important;
  bottom:auto !important;
  transform:none !important;
  width:165px !important;
  min-height:128px !important;
  max-width:100% !important;
  z-index:3 !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:center !important;
  text-align:center !important;
}

.about-pulse-card .orbit-1{grid-area:qa !important}
.about-pulse-card .orbit-2{grid-area:ai !important}
.about-pulse-card .orbit-3{grid-area:ccaas !important}
.about-pulse-card .orbit-4{grid-area:web !important}

.about-pulse-card .orbit-card span,
.about-pulse-card .orbit-card small{
  text-align:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
