/* OUR SERVICES / FOUR SIGNATURE SERVICES — 20 OCTOBER 2026
 * Section-only presentation. Four equal native links; no additional scripts.
 * 01 Foundation · 02 Heading · 03 Cards · 04 Other services · 05 Responsive · 06 Fallbacks */

/* 01 / FOUNDATION — PAPER, INK AND RESTRAINED BRAND HIGHLIGHTS */
body .aphc-home .aps-services {
  --aps-paper:#f6f3ec; --aps-ink:#162134; --aps-muted:#62685f;
  --aps-line:#d2d6ce; --aps-navy:#111a3d; --aps-cyan:#6fefff;
  padding-block:clamp(56px,5vw,84px); background:var(--aps-paper); color:var(--aps-ink);
  font-family:Arial,Helvetica,sans-serif; overflow:visible;
}
body .aphc-home .aps-services .aps-wrap { width:calc(100% - 112px); max-width:1700px; margin-inline:auto; }
body .aphc-home .aps-services :is(figure,h2,h3,p) { margin:0; }
body .aphc-home .aps-services :is(a,div,figure,h2,h3,p,span) { min-width:0; }
body .aphc-home .aps-services a { text-decoration:none; }
body .aphc-home .aps-services a:focus-visible { outline:3px solid #007c86; outline-offset:5px; }

/* 02 / A COMPACT EDITORIAL HEADING */
body .aphc-home .aps-services .aps-head {
  display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr); align-items:end;
  gap:36px; padding-top:20px; margin-bottom:30px; border-top:1px solid var(--aps-line);
}
body .aphc-home .aps-services .aps-eyebrow {
  display:flex; align-items:center; gap:10px; color:#4d5b60;
  font-size:11px; line-height:1.6; font-weight:600; letter-spacing:.12em; text-transform:uppercase;
}
body .aphc-home .aps-services .aps-eyebrow::before { content:''; width:6px; height:6px; flex:0 0 6px; border-radius:50%; background:#007b86; }
body .aphc-home .aps-services h2.aps-title {
  margin-top:18px; color:var(--aps-ink); font:500 clamp(37px,3.6vw,60px)/1.04 Arial,Helvetica,sans-serif;
  letter-spacing:-.06em; text-transform:none;
}
body .aphc-home .aps-services .aps-title em {
  display:block; margin-top:2px; color:#5c685c;
  font:italic 400 1.03em/1.02 Georgia,'Times New Roman',serif; letter-spacing:-.05em;
}
body .aphc-home .aps-services .aps-intro { max-width:370px; justify-self:end; padding-bottom:3px; }
body .aphc-home .aps-services .aps-intro > p { color:var(--aps-muted); font-size:14px; line-height:1.75; }
body .aphc-home .aps-services .aps-text-link {
  display:inline-flex; align-items:center; justify-content:space-between; gap:24px; max-width:100%; min-height:44px;
  padding-block:8px; border-bottom:1px solid #8c9999; color:var(--aps-navy);
  font-size:12px; line-height:1.6; font-weight:600; transition:color .2s ease,border-color .2s ease;
}
body .aphc-home .aps-services .aps-text-link b { color:inherit; font-size:21px; line-height:1; font-weight:400; }
body .aphc-home .aps-services .aps-intro .aps-text-link { margin-top:10px; }

/* 03 / FOUR EQUAL HIGHLIGHTED CARDS — TWO PER DESKTOP ROW */
body .aphc-home .aps-services .aps-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
body .aphc-home .aps-services a.aps-service-card {
  position:relative; display:grid; grid-template-columns:minmax(122px,31%) minmax(0,1fr); min-height:234px;
  border:1px solid #cdd4d1; border-radius:8px; overflow:hidden; background:#fffefa; color:var(--aps-ink);
  box-shadow:0 7px 24px -17px #111a3d40; transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease;
}
body .aphc-home .aps-services .aps-service-card::after {
  content:''; position:absolute; top:0; right:0; left:31%; height:3px;
  background:linear-gradient(90deg,#6fefff,#6fefff 38%,#c5e1df); pointer-events:none;
}
body .aphc-home .aps-services .aps-card-photo { position:relative; align-self:stretch; min-height:100%; overflow:hidden; background:#d2d8d0; }
body .aphc-home .aps-services .aps-card-photo img {
  display:block; width:100%; max-width:100%; height:100%; position:absolute; inset:0; border-radius:0;
  object-fit:cover; object-position:center; filter:none; mix-blend-mode:normal;
  transition:transform .6s cubic-bezier(.2,.65,.3,1);
}
body .aphc-home .aps-services .aps-card-photo figcaption {
  position:absolute; left:9px; bottom:9px; max-width:calc(100% - 18px); padding:3px 6px;
  border:1px solid #e5e5dc; border-radius:2px; background:#f7f4ecf5; color:#454f4c; font-size:9px; line-height:1.5;
}
body .aphc-home .aps-services .aps-card-body { display:flex; flex-direction:column; align-items:flex-start; padding:clamp(23px,2.2vw,35px); }
body .aphc-home .aps-services .aps-card-number {
  display:block; color:#4f686c; font-size:10px; line-height:1.5; letter-spacing:.09em; font-weight:600; text-transform:uppercase;
}
body .aphc-home .aps-services .aps-card-body h3 {
  margin-top:13px; color:var(--aps-navy); font:500 clamp(25px,2.3vw,37px)/1.12 Arial,Helvetica,sans-serif;
  letter-spacing:-.045em; text-transform:none;
}
body .aphc-home .aps-services p.aps-card-copy { max-width:425px; margin-block:12px 18px; color:#59645e; font-size:14px; line-height:1.65; }
body .aphc-home .aps-services .aps-card-action {
  display:inline-flex; align-items:center; justify-content:space-between; gap:20px; min-height:36px; max-width:100%;
  padding:7px 12px; margin-top:auto; border:1px solid #d8e4e1; border-radius:4px; background:#edf4ef; color:#1c3c42;
  font-size:11px; line-height:1.5; font-weight:600; transition:background .2s ease,border-color .2s ease;
}
body .aphc-home .aps-services .aps-card-action b { color:inherit; font-size:20px; line-height:1; font-weight:400; transition:transform .2s ease; }

/* 04 / OTHER WORK REMAINS ACCESSIBLE WITH QUIETER EMPHASIS */
body .aphc-home .aps-services .aps-bottom {
  display:flex; flex-wrap:wrap; align-items:center; gap:8px 25px; padding-top:16px; margin-top:22px; border-top:1px solid var(--aps-line);
}
body .aphc-home .aps-services .aps-bottom p { color:#647068; font-size:12px; line-height:1.6; }
body .aphc-home .aps-services .aps-bottom > nav { display:flex; flex-wrap:wrap; align-items:center; gap:4px 20px; }
body .aphc-home .aps-services .aps-secondary-link {
  display:inline-flex; align-items:center; gap:12px; min-height:44px; color:#213b41; font-size:12px; line-height:1.6; font-weight:600;
  text-decoration:underline; text-decoration-color:#a2b0a9; text-underline-offset:5px;
}
body .aphc-home .aps-services .aps-note { max-width:850px; margin-top:9px; color:#667168; font-size:11px; line-height:1.7; }
@media (hover:hover) and (pointer:fine) {
  body .aphc-home .aps-services .aps-service-card:hover { border-color:#7dacae; box-shadow:0 14px 30px -19px #111a3d60; transform:translateY(-3px); }
  body .aphc-home .aps-services .aps-service-card:hover .aps-card-photo img { transform:scale(1.035); }
  body .aphc-home .aps-services .aps-service-card:hover .aps-card-action { background:#6fefff; border-color:#6fefff; }
  body .aphc-home .aps-services .aps-service-card:hover .aps-card-action b { transform:translate(2px,-2px); }
  body .aphc-home .aps-services :is(.aps-text-link,.aps-secondary-link):hover { color:#006e79; border-color:#007580; }
}

/* 05 / RESPONSIVE — TWO DESKTOP CARDS, ONE COMPACT MOBILE CARD PER ROW */
@media (max-width:1100px) {
  body .aphc-home .aps-services .aps-card-grid { gap:15px; }
  body .aphc-home .aps-services a.aps-service-card { grid-template-columns:29% minmax(0,1fr); min-height:238px; }
  body .aphc-home .aps-services .aps-service-card::after { left:29%; }
  body .aphc-home .aps-services .aps-card-body { padding:24px 21px; }
  body .aphc-home .aps-services .aps-card-body h3 { font-size:27px; }
}
@media (max-width:900px) {
  body .aphc-home .aps-services .aps-wrap { width:calc(100% - 64px); }
  body .aphc-home .aps-services .aps-head { grid-template-columns:minmax(0,1fr) minmax(0,.85fr); gap:28px; }
  body .aphc-home .aps-services .aps-card-grid { grid-template-columns:minmax(0,1fr); }
  body .aphc-home .aps-services a.aps-service-card { grid-template-columns:29% minmax(0,1fr); min-height:215px; }
  body .aphc-home .aps-services .aps-card-body { padding:25px 28px; }
  body .aphc-home .aps-services .aps-card-body h3 { font-size:30px; }
}
@media (max-width:580px) {
  body .aphc-home .aps-services { padding-block:48px; }
  body .aphc-home .aps-services .aps-wrap { width:calc(100% - 40px); }
  body .aphc-home .aps-services .aps-head { grid-template-columns:minmax(0,1fr); gap:17px; padding-top:17px; margin-bottom:23px; }
  body .aphc-home .aps-services .aps-eyebrow { font-size:10px; letter-spacing:.1em; }
  body .aphc-home .aps-services h2.aps-title { margin-top:16px; font-size:clamp(33px,8.5vw,45px); }
  body .aphc-home .aps-services .aps-intro { max-width:420px; justify-self:start; padding:0; }
  body .aphc-home .aps-services .aps-intro > p { font-size:13px; line-height:1.7; }
  body .aphc-home .aps-services .aps-intro .aps-text-link { margin-top:5px; }
  body .aphc-home .aps-services .aps-card-grid { gap:12px; }
  body .aphc-home .aps-services a.aps-service-card { grid-template-columns:29% minmax(0,1fr); min-height:216px; border-radius:6px; }
  body .aphc-home .aps-services .aps-card-body { padding:21px 18px; }
  body .aphc-home .aps-services .aps-card-number { font-size:9px; letter-spacing:.06em; }
  body .aphc-home .aps-services .aps-card-body h3 { margin-top:11px; font-size:clamp(23px,6.15vw,29px); line-height:1.12; }
  body .aphc-home .aps-services p.aps-card-copy { margin-block:10px 15px; font-size:13px; line-height:1.6; }
  body .aphc-home .aps-services .aps-card-action { gap:16px; min-height:35px; padding:7px 10px; font-size:10px; }
  body .aphc-home .aps-services .aps-card-photo figcaption { left:6px; bottom:7px; max-width:calc(100% - 12px); padding:3px 4px; font-size:8px; }
  body .aphc-home .aps-services .aps-bottom { gap:3px 20px; margin-top:18px; padding-top:12px; }
  body .aphc-home .aps-services .aps-bottom p { width:100%; }
  body .aphc-home .aps-services .aps-note { margin-top:7px; font-size:10px; }
}
@media (max-width:360px) {
  body .aphc-home .aps-services .aps-card-body { padding:20px 14px; }
  body .aphc-home .aps-services .aps-card-body h3 { font-size:22px; }
  body .aphc-home .aps-services .aps-card-number { font-size:8px; letter-spacing:.02em; }
}

/* 06 / KEYBOARD, REDUCED MOTION AND PRINT */
@media (forced-colors:active) {
  body .aphc-home .aps-services a.aps-service-card { border-color:LinkText; }
  body .aphc-home .aps-services .aps-card-action { border-color:LinkText; color:LinkText; }
  body .aphc-home .aps-services a:focus-visible { outline-color:Highlight; }
}
@media (prefers-reduced-motion:reduce) {
  body .aphc-home .aps-services *,body .aphc-home .aps-services *::before,body .aphc-home .aps-services *::after { transition:none !important; animation:none !important; }
  body .aphc-home .aps-services .aps-service-card:hover,
  body .aphc-home .aps-services .aps-service-card:hover .aps-card-photo img,
  body .aphc-home .aps-services .aps-service-card:hover .aps-card-action b { transform:none; }
}
@media print {
  body .aphc-home .aps-services { padding-block:24px; background:white; }
  body .aphc-home .aps-services .aps-wrap { width:100%; }
  body .aphc-home .aps-services .aps-service-card { break-inside:avoid; box-shadow:none; }
  body .aphc-home .aps-services [data-ap3-reveal] { opacity:1 !important; transform:none !important; visibility:visible !important; }
}
