.priority-service-page {
  overflow-x: clip;
}

.ps-breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 24px;
  color: #525252;
  font-size: 14px;
}

.ps-breadcrumbs a {
  color: inherit;
  text-decoration: none;
}

.ps-breadcrumbs a:hover,
.ps-breadcrumbs a:focus-visible {
  color: #c2410c;
}

.ps-hero .shell {
  position: relative;
  overflow: hidden;
  padding: clamp(28px, 5vw, 64px);
  color: #fff;
  background:
    radial-gradient(circle at 82% 20%, rgba(255, 105, 0, 0.4), transparent 34%),
    linear-gradient(135deg, #171717 0%, #0b0b0d 100%);
}

.ps-hero-grid,
.ps-two-column,
.ps-analytics-grid,
.ps-cost-grid,
.ps-author-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(280px, 0.9fr);
  gap: clamp(24px, 5vw, 64px);
  align-items: center;
}

.ps-hero-single {
  max-width: 900px;
}

.ps-company-actions {
  margin-top: 1.5rem;
}

.ps-hero .badge {
  color: #fff;
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.16);
}

.ps-hero h1 {
  max-width: 900px;
  margin: 20px 0;
  color: #fff;
  font-size: clamp(38px, 5.8vw, 78px);
  line-height: 0.98;
  letter-spacing: -0.055em;
}

.ps-hero-lead {
  max-width: 760px;
  margin: 0 0 28px;
  color: rgba(255, 255, 255, 0.76);
  font-size: clamp(18px, 2vw, 23px);
  line-height: 1.55;
}

.ps-hero-result {
  padding: 26px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 26px;
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(10px);
}

.ps-hero-result > strong {
  display: block;
  margin-bottom: 16px;
  color: #ff8b3d;
  font-size: 15px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.ps-hero-result p {
  margin: 0;
  color: #fff;
  font-size: 22px;
  line-height: 1.45;
}

.ps-updated {
  margin-top: 18px;
  color: rgba(255, 255, 255, 0.56);
  font-size: 13px;
}

.ps-section-head {
  max-width: 820px;
  margin-bottom: 34px;
}

.ps-section-head .section-lead {
  margin-top: 14px;
}

.ps-card-grid,
.ps-metric-grid,
.ps-scope-grid,
.ps-case-grid,
.ps-index-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.ps-card,
.ps-metric,
.ps-scope-card,
.ps-process-card,
.ps-team-card,
.ps-cost-card,
.ps-index-card {
  padding: 26px;
  border: 1px solid rgba(17, 17, 17, 0.09);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 18px 46px rgba(17, 17, 17, 0.055);
}

.ps-card h3,
.ps-scope-card h3,
.ps-process-card h3,
.ps-team-card h3,
.ps-cost-card h3,
.ps-index-card h2 {
  margin: 0 0 10px;
  font-size: 22px;
  line-height: 1.25;
  letter-spacing: -0.025em;
}

.ps-card p,
.ps-scope-card p,
.ps-process-card p,
.ps-team-card p,
.ps-cost-card p,
.ps-index-card p {
  margin: 0;
  color: #666b75;
  line-height: 1.65;
}

.ps-kicker,
.ps-step {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  min-height: 42px;
  margin-bottom: 18px;
  padding: 0 12px;
  border-radius: 14px;
  background: #ff6900;
  color: #fff;
  font-size: 14px;
  font-weight: 800;
}

.ps-limit-box,
.ps-evidence-note {
  margin-top: 22px;
  padding: 22px 24px;
  border-left: 4px solid #ff6900;
  border-radius: 0 18px 18px 0;
  background: #fff4ec;
  color: #484c55;
  line-height: 1.65;
}

.ps-problem-list,
.ps-check-list,
.ps-analytics-list,
.ps-price-list {
  display: grid;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ps-problem-list li,
.ps-check-list li,
.ps-analytics-list li,
.ps-price-list li {
  position: relative;
  padding-left: 28px;
  color: #3f434b;
  line-height: 1.6;
}

.ps-problem-list li::before,
.ps-check-list li::before,
.ps-analytics-list li::before,
.ps-price-list li::before {
  position: absolute;
  left: 0;
  top: 0.68em;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #ff6900;
  content: "";
}

.ps-metric {
  min-height: 185px;
  color: #fff;
  background: #151515;
}

.ps-metric strong {
  display: block;
  margin-bottom: 14px;
  color: #ff8634;
  font-size: clamp(28px, 3vw, 44px);
  line-height: 1;
}

.ps-metric span {
  color: rgba(255, 255, 255, 0.74);
  line-height: 1.55;
}

.ps-scope-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ps-scope-card ul {
  margin: 16px 0 0;
  padding-left: 20px;
  color: #555a64;
  line-height: 1.7;
}

.ps-process {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  counter-reset: service-step;
}

.ps-process-card {
  counter-increment: service-step;
}

.ps-step::before {
  content: counter(service-step, decimal-leading-zero);
}

.ps-process-meta {
  display: block;
  margin-top: 16px;
  color: #ff6900;
  font-size: 13px;
  font-weight: 800;
}

.ps-analytics-panel,
.ps-cost-panel {
  padding: clamp(26px, 4vw, 44px);
  border-radius: 28px;
  color: #fff;
  background: #151515;
}

.ps-analytics-panel h2,
.ps-cost-panel h2 {
  margin-top: 0;
  color: #fff;
}

.ps-analytics-panel p,
.ps-cost-panel p,
.ps-analytics-panel li,
.ps-cost-panel li {
  color: rgba(255, 255, 255, 0.74);
}

.ps-formula {
  display: block;
  margin-top: 20px;
  padding: 18px;
  overflow-wrap: anywhere;
  border-radius: 16px;
  color: #fff;
  background: rgba(255, 255, 255, 0.09);
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
  line-height: 1.55;
}

.ps-case-card {
  overflow: hidden;
  border: 1px solid rgba(17, 17, 17, 0.09);
  border-radius: 26px;
  color: inherit;
  background: #fff;
  text-decoration: none;
  box-shadow: 0 18px 46px rgba(17, 17, 17, 0.055);
}

.ps-case-card img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.ps-case-body {
  padding: 24px;
}

.ps-case-body strong {
  display: block;
  margin: 10px 0;
  font-size: 25px;
}

.ps-case-body p {
  margin: 0;
  color: #666b75;
  line-height: 1.6;
}

.ps-team-card {
  display: grid;
  grid-template-columns: 96px 1fr;
  gap: 20px;
  align-items: center;
}

.ps-team-card img,
.ps-author-grid img {
  width: 96px;
  height: 96px;
  border-radius: 24px;
  object-fit: cover;
}

.ps-author-grid img {
  width: min(100%, 300px);
  height: auto;
  aspect-ratio: 1 / 1;
}

.ps-role-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 18px;
}

.ps-role {
  padding: 18px;
  border-radius: 18px;
  background: #f6f6f7;
}

.ps-role strong,
.ps-role span {
  display: block;
}

.ps-role span {
  margin-top: 6px;
  color: #6b7079;
  font-size: 14px;
  line-height: 1.45;
}

.ps-faq {
  display: grid;
  gap: 12px;
}

.ps-faq details {
  padding: 0 24px;
  border: 1px solid rgba(17, 17, 17, 0.09);
  border-radius: 20px;
  background: #fff;
}

.ps-faq summary {
  padding: 22px 0;
  cursor: pointer;
  font-size: 18px;
  font-weight: 800;
}

.ps-faq details p {
  margin: 0;
  padding: 0 0 22px;
  color: #60656e;
  line-height: 1.7;
}

.ps-cta .shell {
  padding: clamp(30px, 5vw, 58px);
  color: #fff;
  background: #ff6900;
}

.ps-cta h2 {
  max-width: 850px;
  margin: 0 0 14px;
  color: #fff;
  font-size: clamp(34px, 5vw, 62px);
  line-height: 1.04;
  letter-spacing: -0.045em;
}

.ps-cta p {
  max-width: 720px;
  color: rgba(255, 255, 255, 0.84);
  font-size: 18px;
  line-height: 1.6;
}

.ps-cta .btn-light {
  color: #111;
  background: #fff;
}

.ps-author {
  margin-top: 28px;
  padding-top: 28px;
  border-top: 1px solid rgba(17, 17, 17, 0.1);
}

.ps-index-card {
  display: flex;
  min-height: 260px;
  flex-direction: column;
  color: inherit;
  text-decoration: none;
}

.ps-index-card .read-link {
  margin-top: auto;
  padding-top: 24px;
}

.service-card h3 a {
  color: inherit;
  text-decoration: none;
}

.service-card h3 a:hover,
.service-card h3 a:focus-visible {
  color: #ff6900;
}

@media (max-width: 980px) {
  .ps-card-grid,
  .ps-metric-grid,
  .ps-index-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ps-process {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .ps-hero-grid,
  .ps-two-column,
  .ps-analytics-grid,
  .ps-cost-grid,
  .ps-author-grid,
  .ps-card-grid,
  .ps-metric-grid,
  .ps-scope-grid,
  .ps-case-grid,
  .ps-index-grid,
  .ps-process,
  .ps-role-list {
    grid-template-columns: 1fr;
  }

  .ps-card,
  .ps-metric,
  .ps-scope-card,
  .ps-process-card,
  .ps-team-card,
  .ps-cost-card,
  .ps-index-card {
    padding: 22px;
  }

  .ps-team-card {
    grid-template-columns: 72px 1fr;
  }

  .ps-team-card img {
    width: 72px;
    height: 72px;
    border-radius: 18px;
  }
}
