/* ============================================================
   ABOUT PAGE — hero orbit, capability + standards icons,
   "strong fit" panel and contact-side redesign.
   Loaded after home-theme.css on /about-us only.
   Colours come from the brand variables (no hardcoded hex).
   ============================================================ */

/* ---------------- Hero (editorial) ---------------- */
.pm-abh{
  position:relative;padding:26px 0 0;
  background:var(--pm-bg-white);border-bottom:1px solid var(--pm-border);
}
.pm-abh-topline{
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding-bottom:18px;border-bottom:1px solid var(--pm-border);
}
.pm-abh-topline .pm-breadcrumb{display:flex;align-items:center;gap:9px;margin:0;font-size:.82rem;color:var(--pm-text);}
.pm-abh-topline .pm-breadcrumb a{color:var(--pm-heading);font-weight:700;}
.pm-abh-topline .pm-breadcrumb span{opacity:.45;}
.pm-abh-index span{font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--pm-text);opacity:.75;}

.pm-abh-grid{
  display:flex;align-items:flex-end;gap:clamp(48px,7vw,120px);
  padding:clamp(56px,6vw,96px) 0 clamp(48px,5vw,72px);
}
.pm-abh-copy{flex:1 1 56%;min-width:0;}
.pm-abh-side{flex:1 1 38%;min-width:0;}

.pm-abh-kicker{
  display:inline-flex;align-items:center;gap:14px;margin-bottom:26px;
  font-size:.75rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--pm-primary);
}
.pm-abh-kicker::before{content:"";width:34px;height:1.5px;background:var(--pm-primary);}
.pm-abh h1{margin:0 0 26px;}
.pm-abh h1 em{font-family:Georgia,serif;font-style:italic;font-weight:500;color:var(--pm-primary);}
.pm-abh-copy > p{max-width:33rem;margin:0 0 34px;}
.pm-abh-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 28px;}
.pm-abh-link{
  display:inline-flex;align-items:center;gap:8px;padding-bottom:4px;
  color:var(--pm-heading);font-weight:600;font-size:1rem;
  border-bottom:1.5px solid color-mix(in srgb,var(--pm-heading) 22%,transparent);
  transition:color .2s,border-color .2s;
}
.pm-abh-link:hover{color:var(--pm-primary);border-bottom-color:var(--pm-primary);}

/* Hero side: placeholder image, to be replaced with a real one */
.pm-abh-side-img{
  display:block;width:100%;height:100%;min-height:420px;
  border-radius:24px;object-fit:cover;
  box-shadow:0 34px 80px -50px rgba(15,17,23,.45);
}

@media (prefers-reduced-motion:no-preference){
  .pm-abh-copy > *,.pm-abh-side{animation:pmAbhRise .7s cubic-bezier(.2,.7,.2,1) both;}
  .pm-abh-copy > h1{animation-delay:.07s;}
  .pm-abh-copy > p{animation-delay:.14s;}
  .pm-abh-copy > .pm-abh-actions{animation-delay:.21s;}
  .pm-abh-side{animation-delay:.28s;}
}
@keyframes pmAbhRise{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:none;}}

@media(max-width:991px){
  .pm-abh-grid{flex-direction:column;align-items:stretch;gap:52px;}
  .pm-abh-copy,.pm-abh-side{flex:none;width:100%;}
}
@media(max-width:767px){
  .pm-abh{padding-top:20px;}
  .pm-abh-index{display:none;}
  .pm-abh-grid{padding:44px 0 36px;}
  .pm-abh-actions .pm-btn{flex:1 1 100%;justify-content:center;}
  .pm-abh-side-img{min-height:260px;}
}

/* ---------------- Capability + standards cards ---------------- */
.pm-about-page .pm-about-capability-grid .pm-feature-card{
  position:relative;overflow:hidden;min-height:340px;padding:30px 28px 28px;
  border:1px solid var(--pm-border);border-radius:20px;background:#fff;display:flex;flex-direction:column;
  box-shadow:0 22px 50px -42px rgba(15,17,23,.4);
  transition:transform .25s,border-color .25s,box-shadow .25s;
}
.pm-about-page .pm-about-capability-grid .pm-feature-card::before{
  content:"";position:absolute;left:0;right:0;top:0;height:3px;
  background:linear-gradient(90deg,var(--pm-primary),var(--pm-primary-dark));
  transform:scaleX(0);transform-origin:left center;transition:transform .35s cubic-bezier(.2,.7,.2,1);
}
.pm-about-page .pm-about-capability-grid .pm-feature-card:hover{
  transform:translateY(-3px);border-color:color-mix(in srgb,var(--pm-primary) 30%,var(--pm-border));
  box-shadow:0 30px 60px -40px color-mix(in srgb,var(--pm-primary) 40%,transparent);
}
.pm-about-page .pm-about-capability-grid .pm-feature-card:hover::before{transform:scaleX(1);}
.pm-about-page .pm-about-capability-grid .pm-feature-card .pm-home-icon{margin-bottom:44px;}
.pm-about-page .pm-about-capability-grid .pm-feature-card p{margin:0 0 24px;}

.pm-about-page .pm-about-standards-grid .pm-feature-card > .pm-home-icon{margin:0 0 26px;}
.pm-about-page .pm-about-standards-grid .pm-feature-card:first-child{
  background:linear-gradient(120deg,color-mix(in srgb,var(--pm-primary) 5%,white),#fff);
  border-color:color-mix(in srgb,var(--pm-primary) 16%,var(--pm-border));
}
.pm-about-page .pm-about-standards-grid .pm-feature-card:first-child > .pm-home-icon{margin:0;}

/* ---------------- "Strong fit" panel ---------------- */
.pm-about-page .pm-about-fit-grid{display:flex;align-items:flex-start;gap:clamp(40px,6vw,88px);}
.pm-fit-intro{flex:0 0 36%;position:sticky;top:110px;}
.pm-fit-intro > p{margin:0 0 26px;}
.pm-fit-panel{
  flex:1;min-width:0;overflow:hidden;background:#fff;
  border:1px solid var(--pm-border);border-radius:24px;
  box-shadow:0 30px 70px -50px rgba(15,17,23,.4);
}
.pm-fit-panel-head{
  display:flex;align-items:center;gap:10px;padding:18px 32px;
  border-bottom:1px solid var(--pm-border);
  background:linear-gradient(90deg,color-mix(in srgb,var(--pm-primary) 6%,white),#fff);
  font-family:var(--pm-font-heading);font-weight:700;font-size:.95rem;color:var(--pm-heading);
}
.pm-fit-panel-head::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--pm-primary);}
.pm-about-page .pm-about-fit-list{border:0;}
.pm-about-page .pm-about-fit-list article{
  display:flex;align-items:center;gap:20px;padding:26px 32px;
  border-bottom:1px solid var(--pm-border);transition:background .25s;
}
.pm-about-page .pm-about-fit-list article:last-child{border-bottom:0;}
.pm-about-page .pm-about-fit-list article:hover{background:color-mix(in srgb,var(--pm-primary) 3%,white);}
.pm-about-page .pm-about-fit-list .pm-fit-ic{
  flex:none;width:44px;height:44px;padding:0;border-radius:12px;display:flex;align-items:center;justify-content:center;
  font-size:1rem;letter-spacing:0;
  color:var(--pm-primary);background:color-mix(in srgb,var(--pm-primary) 9%,white);
  border:1px solid color-mix(in srgb,var(--pm-primary) 16%,transparent);
  transition:background .25s,color .25s,border-color .25s;
}
.pm-about-page .pm-about-fit-list .pm-fit-ic svg{width:20px;height:20px;}
.pm-about-page .pm-about-fit-list article:hover .pm-fit-ic{background:var(--pm-primary);border-color:var(--pm-primary);color:#fff;}
.pm-about-page .pm-about-fit-list article p{flex:1;margin:0;color:var(--pm-heading);font-weight:500;}
.pm-about-page .pm-about-fit-list article b{flex:none;}
@media(max-width:991px){
  .pm-about-page .pm-about-fit-grid{flex-direction:column;gap:36px;}
  .pm-fit-intro{flex:none;position:static;}
  .pm-fit-panel{width:100%;}
}
@media(max-width:560px){
  .pm-about-page .pm-about-fit-list article{padding:22px 20px;gap:16px;}
  .pm-fit-panel-head{padding:16px 20px;}
  .pm-about-page .pm-about-fit-list article b{display:none;}
}

/* ---------------- Contact — left side ---------------- */
.pm-about-page .pm-about-contact-copy{align-self:center;}
.pm-ac-steps{list-style:none;margin:30px 0 0;padding:0;border-top:1px solid var(--pm-border);}
.pm-ac-steps li{display:flex;gap:22px;padding:20px 0;border-bottom:1px solid var(--pm-border);}
.pm-ac-steps li > .pm-n-row{flex:none;width:34px;}
.pm-ac-steps strong{display:block;margin-bottom:3px;font-family:var(--pm-font-heading);font-size:1.0625rem;color:var(--pm-heading);}
.pm-ac-steps p{margin:0;}
.pm-ac-direct{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px;}
.pm-ac-direct a{
  flex:1 1 230px;min-width:0;display:flex;align-items:center;gap:14px;padding:14px 16px;
  border:1px solid var(--pm-border);border-radius:16px;background:#fff;
  box-shadow:0 16px 36px -30px rgba(15,17,23,.45);
  transition:transform .25s,border-color .25s,box-shadow .25s;
}
.pm-ac-direct a:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--pm-primary) 32%,var(--pm-border));box-shadow:0 22px 40px -30px color-mix(in srgb,var(--pm-primary) 40%,transparent);}
.pm-ac-ic{
  flex:none;width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  color:var(--pm-primary);background:color-mix(in srgb,var(--pm-primary) 9%,white);
  border:1px solid color-mix(in srgb,var(--pm-primary) 16%,transparent);
}
.pm-ac-ic svg{width:19px;height:19px;}
.pm-ac-direct a > span:last-child{min-width:0;}
.pm-ac-direct small{display:block;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--pm-text);}
.pm-ac-direct strong{display:block;font-size:.95rem;color:var(--pm-heading);overflow-wrap:anywhere;}
.pm-about-page .pm-about-contact-points{margin-top:22px;}
