/* Self-hosted web fonts (SIL Open Font License) — same families as the approved design: Newsreader (display serif) and Instrument Sans (text) */
@font-face{font-family:'Newsreader';font-style:normal;font-weight:300 500;font-display:swap;src:url(/assets/fonts/newsreader-latin-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:300 500;font-display:swap;src:url(/assets/fonts/newsreader-latin-ext-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:300 500;font-display:swap;src:url(/assets/fonts/newsreader-latin-italic.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:300 500;font-display:swap;src:url(/assets/fonts/newsreader-latin-ext-italic.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/instrument-sans-latin-400.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/instrument-sans-latin-ext-400.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/instrument-sans-latin-500.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/instrument-sans-latin-ext-500.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/instrument-sans-latin-600.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/instrument-sans-latin-ext-600.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
/* APIQ Consulting — production stylesheet (built from the approved design system; do not restyle per page) */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
img,svg{max-width:100%}
img{height:auto}
button,input,select,textarea{font:inherit}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
html,body{scroll-behavior:auto!important}
body{margin:0;background:#FFFFFF}
/* anchors land just below the fixed header; jumps are instant, no smooth scroll */
section[id]{scroll-margin-top:110px}
a{color:#161A30;text-decoration:none}
a:hover{color:#545778}
.navlink{padding:6px 0;border-bottom:1px solid transparent}
.subnav{position:sticky;top:108px;z-index:90;background:#161A30;border-bottom:1px solid rgba(180,140,44,.35)}
.sublink{display:flex;align-items:center;gap:10px;padding:18px 22px;font-size:14px;font-weight:500;color:rgba(255,255,255,.78);white-space:nowrap;border-bottom:2px solid transparent}
.sublink span{font-size:11px;font-weight:600;letter-spacing:.14em;color:#B48C2C}
.sublink:hover{color:#FFFFFF;border-bottom-color:#B48C2C;background:rgba(255,255,255,.04)}

/* Expertise mega dropdown (header) */
.dd{position:relative;display:flex;align-items:center}
.dd-caret{display:inline-block;margin-left:6px;font-size:10px;color:#B48C2C;transition:transform .15s}
.dd:hover .dd-caret,.dd:focus-within .dd-caret{transform:rotate(180deg)}
.dd-menu{position:absolute;top:100%;left:50%;transform:translateX(-50%);padding-top:26px;opacity:0;visibility:hidden;transition:opacity .15s,visibility .15s;z-index:200}
.dd:hover .dd-menu,.dd:focus-within .dd-menu{opacity:1;visibility:visible}
.dd.dd-off .dd-menu{opacity:0!important;visibility:hidden!important}
.dd-panel{display:grid;grid-template-columns:repeat(3,230px);gap:0 32px;background:#FFFFFF;border:1px solid #E6E9F0;border-top:2px solid #B48C2C;box-shadow:0 22px 48px rgba(22,26,48,.14);padding:28px 32px 22px;white-space:normal}
.dd-h{margin:0 0 10px;font-size:11px;font-weight:600;letter-spacing:.2em;color:#B48C2C}
.dd-q{margin:0 0 12px;font-family:'Newsreader',Georgia,serif;font-style:italic;font-size:15px;line-height:1.35;color:#545778}
.dd-l{position:relative;display:block;margin:0 -12px;padding:11px 34px 11px 12px;border-top:1px solid #EEF0F5;font-size:14.5px;font-weight:500;line-height:1.35;color:#161A30;transition:background .12s,color .12s}
.dd-l::after{content:"\2192";position:absolute;right:12px;top:50%;transform:translate(-4px,-50%);opacity:0;color:#B48C2C;transition:opacity .12s,transform .12s}
.dd-l:hover,.dd-l:focus-visible{background:#F3F5F8;color:#161A30;outline:none}
.dd-l:hover::after,.dd-l:focus-visible::after{opacity:1;transform:translate(0,-50%)}
.dd-foot{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;margin-top:18px;padding-top:14px;border-top:1px solid #E6E9F0;font-size:13.5px}
.dd-foot a{color:#161A30;font-weight:500}
.dd-foot a:hover{color:#B48C2C}

/* ---- QA: keyboard focus, mobile navigation, small-screen fixes ---- */
a:focus-visible,summary:focus-visible{outline:2px solid #B48C2C;outline-offset:3px;border-radius:2px}
.mnav{display:none}
/* header switches to the Menu button before the full nav can run out of room, so no header button is ever cut off */
@media (max-width:1080px){
  header nav[aria-label="Primary"]{display:none!important}
  .mnav{display:block;position:relative}
  .mnav summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 14px;border:1px solid #161A30;border-radius:2px;font-size:14px;font-weight:500;color:#161A30;user-select:none}
  .mnav summary::-webkit-details-marker{display:none}
  .mnav summary .bars{display:inline-block;width:18px;height:12px;background:linear-gradient(#161A30 0 2px,transparent 2px 5px,#161A30 5px 7px,transparent 7px 10px,#161A30 10px 12px)}
  .mnav[open] summary{background:#161A30;color:#FFFFFF}
  .mnav[open] summary .bars{background:linear-gradient(#FFFFFF 0 2px,transparent 2px 5px,#FFFFFF 5px 7px,transparent 7px 10px,#FFFFFF 10px 12px)}
  .mnav-panel{position:absolute;right:0;top:calc(100% + 10px);width:min(320px,calc(100vw - 32px));background:#FFFFFF;border:1px solid #E6E9F0;border-top:2px solid #B48C2C;box-shadow:0 18px 40px rgba(22,26,48,.14);padding:8px 0 12px;z-index:200}
  .mnav-panel a{display:flex;align-items:center;min-height:46px;padding:0 20px;font-size:16px;font-weight:500;color:#161A30;border-bottom:1px solid #EEF0F5}
  .mnav-panel a.sub{padding-left:36px;font-size:14.5px;font-weight:400;color:#33374F;min-height:42px}
  .mnav-panel a.cta{margin:12px 16px 0;justify-content:center;border:1px solid #161A30;border-radius:2px;border-bottom:1px solid #161A30}
  .mnav-panel .grp{display:block;padding:14px 20px 4px;font-size:11px;font-weight:600;letter-spacing:.2em;color:#B48C2C}
}
@media (max-width:900px){
  header nav[aria-label="Primary"]{display:none!important}
  .mnav{display:block;position:relative}
  .mnav summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 14px;border:1px solid #161A30;border-radius:2px;font-size:14px;font-weight:500;color:#161A30;user-select:none}
  .mnav summary::-webkit-details-marker{display:none}
  .mnav summary .bars{display:inline-block;width:18px;height:12px;background:linear-gradient(#161A30 0 2px,transparent 2px 5px,#161A30 5px 7px,transparent 7px 10px,#161A30 10px 12px)}
  .mnav[open] summary{background:#161A30;color:#FFFFFF}
  .mnav[open] summary .bars{background:linear-gradient(#FFFFFF 0 2px,transparent 2px 5px,#FFFFFF 5px 7px,transparent 7px 10px,#FFFFFF 10px 12px)}
  .mnav-panel{position:absolute;right:0;top:calc(100% + 10px);width:min(320px,calc(100vw - 32px));background:#FFFFFF;border:1px solid #E6E9F0;border-top:2px solid #B48C2C;box-shadow:0 18px 40px rgba(22,26,48,.14);padding:8px 0 12px;z-index:200}
  .mnav-panel a{display:flex;align-items:center;min-height:46px;padding:0 20px;font-size:16px;font-weight:500;color:#161A30;border-bottom:1px solid #EEF0F5}
  .mnav-panel a.sub{padding-left:36px;font-size:14.5px;font-weight:400;color:#33374F;min-height:42px}
  .mnav-panel a.cta{margin:12px 16px 0;justify-content:center;border:1px solid #161A30;border-radius:2px;border-bottom:1px solid #161A30}
  .mnav-panel .grp{display:block;padding:14px 20px 4px;font-size:11px;font-weight:600;letter-spacing:.2em;color:#B48C2C}
  .subnav .wrap{scrollbar-width:none}
  .subnav .wrap::-webkit-scrollbar{display:none}
  .sublink{padding:12px 16px}
  footer a{padding-top:6px;padding-bottom:6px}
}
@media (max-width:600px){
  [data-diagram=persp]{display:block}
  .persp-legend{display:grid!important}
}
@media (max-width:600px){
  .wrap{padding-left:20px;padding-right:20px}
  .bleed-l{padding:0 20px!important}
  header img[alt="APIQ Consulting"]{width:140px!important}
  header .wrap{gap:12px!important}
  .btn-gold,.btn-ink,.btn-outline{white-space:normal!important;height:auto!important;min-height:46px;padding-top:12px!important;padding-bottom:12px!important;text-align:center}
  .xgrid{grid-template-columns:1fr!important}
  .fp-left figure{max-width:calc(100% - 30px)!important}
  .fp-left figcaption{white-space:normal!important}
  h1{font-size:clamp(34px,10.5vw,44px)!important;overflow-wrap:anywhere}
  h2{overflow-wrap:anywhere}
  .hero-cta{flex-wrap:wrap!important;white-space:normal!important;gap:16px 24px!important}
  .fp-left,.fp-right{padding-left:20px!important;padding-right:20px!important}
}
@media (max-width:760px){
  .xart{grid-template-columns:1fr!important;gap:28px 0!important}
  .xfound{grid-template-columns:1fr!important}
}
@media (max-width:860px){
  /* mobile: centered headings, eyebrows, intros and CTA rows */
  main h1,main h2{text-align:center;margin-left:auto!important;margin-right:auto!important}
  .eb{justify-content:center}
  main h1+p,main h2+p,main .eb+h1+p,.hero-l p,main p[style*="flex: 0 1"]{text-align:center;margin-left:auto!important;margin-right:auto!important}
  .hero-cta,.cta-row{justify-content:center}
  main blockquote{text-align:center;border-left:0!important;padding-left:0!important;border-top:2px solid #B48C2C;padding-top:18px}
  .fp-left figure{margin-left:auto!important;margin-right:auto!important}
  .fp-left figcaption{text-align:center}
  footer .wrap > div:first-child{text-align:center;justify-content:center!important}
  footer .wrap > div:first-child > *{flex-basis:100%!important;max-width:none!important}
  footer img{margin:0 auto}
  footer ul{align-items:center}
  footer .wrap > div:last-child{justify-content:center!important;text-align:center}
  .eco li{white-space:normal}
  main h2{font-size:clamp(28px,8vw,34px)!important;line-height:1.15!important}
  .eb > span:not([aria-hidden]),.eb2 > span:not([aria-hidden]){text-align:center}
  .eb2{gap:12px!important}
  .eb2 > span[aria-hidden]{flex-basis:24px!important}
  main h3{text-align:center}
  .cw-lead{font-size:21px!important;line-height:1.5!important}
  main h3+p[style*="italic"],main h3+p[style*="Newsreader"]{text-align:center}
  main .xgrid > div > svg[aria-hidden="true"]{margin-left:auto!important;margin-right:auto!important}
  main .xgrid > div:has(> svg[aria-hidden="true"]){text-align:center}
  main a.svc,main .svc span{text-align:left}
  main a.svc .svc-title{text-align:left}
}
@media (max-width:360px){
  .wrap{padding-left:16px!important;padding-right:16px!important}
  .bleed-l{padding:0 16px!important}
  header img[alt="APIQ Consulting"]{width:112px!important}
  .mnav summary{padding:0 10px;gap:8px}
  .eco{grid-template-columns:1fr!important}
  .eco li{padding:0 4px;white-space:normal!important}
  main h1{font-size:clamp(28px,11vw,34px)!important}
  main h2{font-size:clamp(24px,9vw,30px)!important}
  main a,main p,main li,main h3{overflow-wrap:anywhere}
  .fp-left,.fp-right{padding-left:16px!important;padding-right:16px!important}
}
.navlink:hover{color:#161A30;border-bottom-color:#B48C2C}
.btn-ink:hover{background:#262B4A !important;color:#FFFFFF !important}
.btn-gold:hover{background:#B48C2C !important;color:#161A30 !important;box-shadow:inset 0 0 0 2px rgba(22,26,48,.35)}
.btn-outline:hover{background:#161A30 !important;color:#FFFFFF !important}
.tlink{border-bottom:1px solid rgba(22,26,48,.28);padding-bottom:3px}
.tlink:hover{border-bottom-color:#B48C2C;color:#161A30}
.dlink{color:#FFFFFF;border-bottom:1px solid rgba(255,255,255,.3);padding-bottom:3px}
.dlink:hover{color:#FFFFFF;border-bottom-color:#B48C2C}
.svc{position:relative}
.svc-arrow{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;margin-top:16px;border-radius:50%;border:1px solid rgba(180,140,44,.6);color:#B48C2C;font-size:15px;line-height:1;transition:background .15s,color .15s,border-color .15s}
.svc:hover .svc-title,.svc:focus-visible .svc-title{color:#B48C2C}
.svc:hover .svc-arrow,.svc:focus-visible .svc-arrow{background:#B48C2C;color:#161A30;border-color:#B48C2C}
.svc:focus-visible{outline:none}
.article-row:hover .article-title{color:#545778}
.flink{color:rgba(255,255,255,.74)}
.flink:hover{color:#FFFFFF}
/* ---- Desktop grid: 1200px content on 1440, 40px minimum gutters ---- */
.wrap{max-width:1280px;margin:0 auto;padding-left:40px;padding-right:40px;box-sizing:border-box}
.bleed{display:grid;grid-template-columns:minmax(40px,1fr) min(624px,calc(100% - 520px)) minmax(0,576px) minmax(40px,1fr)}
.bleed-l{grid-column:1/3;display:grid;grid-template-columns:minmax(40px,1fr) min(624px,calc(100% - 40px));align-items:center}
.bleed-l>*{grid-column:2}
.bleed-r{grid-column:3/5}
.when-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.eco{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 0;text-align:center}
.eco li{position:relative;font-size:17px;font-weight:400;letter-spacing:normal;line-height:1.6;color:#33374F;white-space:nowrap;padding:0 12px}
.eco li:not(:nth-child(4n+1))::before{content:'';position:absolute;left:0;top:5px;bottom:5px;width:1px;background:#D8DCE6}
@media (max-width:980px){.eco{grid-template-columns:repeat(2,minmax(0,1fr))}.eco li::before{display:none}.eco li:nth-child(2n)::before{display:block}}
@media (max-width:600px){.eco{grid-template-columns:1fr}.eco li::before{display:none!important}}
.fp{display:grid;grid-template-columns:minmax(40px,1fr) minmax(0,520px) minmax(0,680px) minmax(40px,1fr)}
.fp-left{grid-column:1/3;display:grid;grid-template-columns:minmax(40px,1fr) minmax(0,520px);align-items:center;padding:104px 0 88px}
.fp-left>*{grid-column:2}
.fp-right{grid-column:3/5;display:grid;grid-template-columns:minmax(0,680px) minmax(40px,1fr);align-items:center;padding:104px 0 96px}
.fp-right>*{grid-column:1;padding-left:72px;box-sizing:border-box}
.fp-h2{font-size:50px}
@media (max-width:980px){.when-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:860px){.bleed{display:block}.bleed-l{display:block;padding:0 40px}.bleed-l > div{padding:40px 0 44px!important;margin:0 auto;max-width:640px}.hero-r{aspect-ratio:640/600}.fp{display:block}.fp-left,.fp-right{display:block;padding:72px 40px 64px}.fp-right>*{padding-left:0}.fp-h2{font-size:40px}}
@media (max-width:600px){.when-grid{grid-template-columns:1fr}}
/* skip link: hidden until it receives keyboard focus */
.skip{position:absolute;left:-9999px;top:0;z-index:300;padding:12px 18px;background:#161A30;color:#FFFFFF;font-size:14px;font-weight:500}
.skip:focus{left:16px;top:12px;outline:2px solid #B48C2C;outline-offset:2px}

/* ======================================================================
   FINISH LAYER — restores the approved design's depth and material finish
   (layered surfaces, fine borders, restrained shadows, gold highlights).
   Global only: no per-section patches. Width-agnostic except the ≥1500px
   desktop grid widening at the end. Motion respects prefers-reduced-motion.
   ====================================================================== */
:root{--ink:#161A30;--ink-2:#0F1226;--ink-3:#0C0F20;--gold:#B48C2C;--gold-2:#C9A24A;--mist:#F3F5F8;--line:#E6E9F0;
  --sh-card:0 1px 2px rgba(22,26,48,.05),0 14px 34px -22px rgba(22,26,48,.22);
  --sh-card-hover:0 2px 4px rgba(22,26,48,.06),0 24px 48px -24px rgba(22,26,48,.30);
  --sh-panel:0 30px 70px -40px rgba(12,15,32,.55),inset 0 0 0 1px rgba(255,255,255,.06)}
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}

/* Header: frosted surface with a soft edge instead of a flat white bar */
header[style*="position: sticky"]{background:rgba(255,255,255,.92)!important;-webkit-backdrop-filter:saturate(1.4) blur(12px);backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid rgba(22,26,48,.08)!important;box-shadow:0 10px 30px -22px rgba(22,26,48,.28)}
.navlink{transition:color .15s,border-color .15s}

/* Light surfaces: layered tints instead of flat white / flat mist */
section[style*="background: #F3F5F8"]{background:linear-gradient(180deg,#F5F7FA 0%,#F1F3F7 100%)!important}
section[style*="background: #F3F5F8"]::after{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,rgba(22,26,48,0),rgba(22,26,48,.08) 20%,rgba(22,26,48,.08) 80%,rgba(22,26,48,0));pointer-events:none}
section[style*="background: #F3F5F8"]:not([style*="position"]){position:relative}
.bleed::after{display:none}

/* Dark surfaces: depth from a quiet radial lift + a gold hairline at the top edge */
#expertise[style*="#161A30"],section[aria-labelledby="track-h"],.fp-left{background:radial-gradient(ellipse 70% 90% at 80% 10%,#1F2446 0%,rgba(31,36,70,0) 60%),#161A30!important}
section[aria-labelledby="track-h"]{background:radial-gradient(ellipse 60% 80% at 15% 100%,#1B2040 0%,rgba(27,32,64,0) 60%),#0F1226!important}
#expertise::before,section[aria-labelledby="track-h"]::before,#contact::before,footer::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,rgba(180,140,44,0) 0%,rgba(180,140,44,.55) 18%,rgba(180,140,44,.55) 82%,rgba(180,140,44,0) 100%);pointer-events:none}
footer{position:relative}

/* Hero: paper-toned left panel, lit navy diagram panel with a fine seam */
.hero-l{background:linear-gradient(135deg,#F8F9FC 0%,#EFF2F7 100%)}
.bleed.bleed{background:linear-gradient(135deg,#F8F9FC 0%,#EFF2F7 100%)!important}
.hero-r{position:relative;background:radial-gradient(ellipse 65% 75% at 55% 50%,#222849 0%,#161A30 70%)!important;box-shadow:inset 1px 0 0 rgba(180,140,44,.35),inset 0 0 120px rgba(0,0,0,.25)}
.hero-r>svg{filter:drop-shadow(0 0 18px rgba(180,140,44,.08))}

/* Ecosystem strip: a sliver of raised white between the hero and the first section */
section[aria-label="Experience across the healthcare ecosystem"]{box-shadow:0 18px 40px -36px rgba(22,26,48,.35);position:relative;z-index:1}

/* Cards: material edge, soft lift, gentle hover for linked cards */
main div[style*="background: #FFFFFF; border-top: 2px solid #161A30"],.article-row[style*="background: #FFFFFF"]{background:linear-gradient(180deg,#FFFFFF 0%,#FBFBFD 100%)!important;border:1px solid rgba(22,26,48,.07);border-top:2px solid var(--ink)!important;box-shadow:var(--sh-card);transition:transform .22s ease,box-shadow .22s ease}
.article-row[style*="background: #FFFFFF"]{border-top:2px solid var(--gold)!important}
@media (hover:hover){.article-row[style*="background: #FFFFFF"]:hover{transform:translateY(-3px);box-shadow:var(--sh-card-hover)}}

/* Expertise detail panels (questions + grounded-in): same card material, navy half gets a quiet lift */
main div[style*="background: #F3F5F8; border-top: 2px solid #161A30"]{border:1px solid rgba(22,26,48,.08);border-top:2px solid var(--ink)!important;box-shadow:var(--sh-card);background:linear-gradient(180deg,#F6F7FA 0%,#F1F3F7 100%)!important}
main div[style*="background: #F3F5F8; border-top: 2px solid #161A30"]>div[style*="background: #161A30"]{background:radial-gradient(ellipse 80% 100% at 100% 0%,#1F2446 0%,#161A30 70%)!important;box-shadow:inset 0 1px 0 rgba(180,140,44,.35)}

/* Diagram & portrait panels */
[data-diagram="persp"]{border:0}
div[style*="background: #161A30; padding: 20px 16px"]{padding:12px 8px!important;background:radial-gradient(ellipse 70% 70% at 50% 50%,#20254A 0%,#161A30 72%)!important;box-shadow:var(--sh-panel)}
.fp-left figure div[style*="aspect-ratio"]{box-shadow:0 36px 70px -34px rgba(0,0,0,.75),0 0 0 1px rgba(255,255,255,.06)}
.fp-left figure>div[aria-hidden="true"]{border-color:rgba(180,140,44,.75)!important}

/* Buttons: finished surfaces (hairline highlight, grounded shadow, 1px lift on hover) */
.btn-ink,.btn-gold,.btn-outline,.mnav-panel a.cta{transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,color .18s ease}
.btn-ink{background:linear-gradient(180deg,#20264A 0%,#161A30 100%)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 1px 2px rgba(22,26,48,.25),0 12px 24px -14px rgba(22,26,48,.55)}
.btn-ink:hover{background:linear-gradient(180deg,#2A3058 0%,#1C2140 100%)!important;transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 2px 4px rgba(22,26,48,.25),0 18px 30px -14px rgba(22,26,48,.6)}
.btn-gold{background:linear-gradient(180deg,#C49A38 0%,#B48C2C 100%)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 1px 2px rgba(0,0,0,.25),0 14px 28px -14px rgba(180,140,44,.65)}
.btn-gold:hover{background:linear-gradient(180deg,#CFA544 0%,#B48C2C 100%)!important;transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 2px 4px rgba(0,0,0,.25),0 20px 34px -14px rgba(180,140,44,.7)}
.btn-outline{box-shadow:inset 0 0 0 0 rgba(22,26,48,0),0 1px 2px rgba(22,26,48,.06)}
.btn-outline:hover{transform:translateY(-1px);box-shadow:0 10px 22px -14px rgba(22,26,48,.5)}
.btn-ink:active,.btn-gold:active,.btn-outline:active{transform:translateY(0)}

/* Service rows on navy: a quiet surface change on hover */
.svc::before{content:"";position:absolute;inset:0 -16px;background:transparent;transition:background .15s;pointer-events:none}
@media (hover:hover){.svc:hover::before{background:rgba(255,255,255,.035)}}

/* Stats: lift the gold numerals slightly off the navy */
section[aria-labelledby="track-h"] dt[style*="Newsreader"]{text-shadow:0 2px 28px rgba(180,140,44,.28)}
section[aria-labelledby="track-h"] dl>div{border-top-color:rgba(255,255,255,.14)!important;background:linear-gradient(180deg,rgba(255,255,255,.016),rgba(255,255,255,0) 55%)}

/* Final CTA + footer: deeper, warmer navy with a soft gold wash */
#contact[style*="radial-gradient"]{background:radial-gradient(ellipse 60% 80% at 78% 50%,#2A3060 0%,#161A30 62%),#161A30!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
footer[style*="#0C0F20"]{background:linear-gradient(180deg,#0E1126 0%,#0A0D1D 100%)!important}

/* Eyebrow rule in gold gets a faint glow on dark sections only */
#expertise .eb>span[aria-hidden],section[aria-labelledby="track-h"] .eb>span[aria-hidden],#contact .eb>span[aria-hidden]{box-shadow:0 0 10px rgba(180,140,44,.45)}

/* Mobile menu panel: same card material */
.mnav-panel{box-shadow:0 24px 48px -20px rgba(22,26,48,.35),0 2px 6px rgba(22,26,48,.08)}

/* Motion safety */
@media (prefers-reduced-motion:reduce){.btn-ink,.btn-gold,.btn-outline,.article-row,.svc{transition:none!important}.btn-ink:hover,.btn-gold:hover,.btn-outline:hover,.article-row:hover{transform:none!important}}

/* ======================================================================
   DESKTOP SYSTEM (>=1100px) — one global container, balanced hero split,
   and a fluid type scale. Root causes fixed here:
   1) .wrap capped content at 1200px with fixed 40px gutters (75% of a
      1600px screen) while the hero/founder panels bled to the viewport edge,
      so the right panels grew with the screen and the text side did not;
   2) every font size was a fixed px value taken from the 1440 artboard.
   Below 1100px nothing in this block applies (tablet/mobile unchanged).
   ====================================================================== */
@media (min-width:1100px){
  :root{--g:max(40px,5vw);--cw:min(1320px,calc(100vw - 2 * var(--g)))}
  /* one container: ~90% of the viewport at 1280–1440, capped at 1320px content */
  .wrap{max-width:calc(1320px + 2 * var(--g));padding-left:var(--g);padding-right:var(--g)}
  /* hero: text column 52% / diagram 48% of the content width; the diagram still bleeds to the edge,
     but only by the same gutter the text side has, so both halves are near-equal on screen */
  .bleed{grid-template-columns:minmax(var(--g),1fr) minmax(0,calc(var(--cw) * .52)) minmax(0,calc(var(--cw) * .48)) minmax(var(--g),1fr)}
  .bleed-l{grid-template-columns:minmax(var(--g),1fr) minmax(0,calc(var(--cw) * .52))}
  .hero-l>div{padding-right:clamp(40px,4vw,72px)!important;padding-top:clamp(48px,4.4vw,80px)!important;padding-bottom:clamp(48px,4.4vw,80px)!important}
  .hero-l p{max-width:36em!important}
  /* founder section: same grid, 42% portrait panel / 58% text */
  .fp{grid-template-columns:minmax(var(--g),1fr) minmax(0,calc(var(--cw) * .42)) minmax(0,calc(var(--cw) * .58)) minmax(var(--g),1fr)}
  .fp-left{grid-template-columns:minmax(var(--g),1fr) minmax(0,calc(var(--cw) * .42))}
  .fp-right{grid-template-columns:minmax(0,calc(var(--cw) * .58)) minmax(var(--g),1fr)}
  .fp-left figure{max-width:min(440px,100%)!important}
  .fp-h2{font-size:clamp(54px,calc(31px + 1.875vw),61px)!important}
  /* header: logo stays prominent, nav reads at a normal desktop size */
  header img[alt="APIQ Consulting"]{width:clamp(180px,14vw,212px)!important}
  header .wrap{padding-top:18px!important;padding-bottom:18px!important}
  header .btn-outline{height:46px!important;padding:0 20px!important}
  .dd-panel{grid-template-columns:repeat(3,250px)}
  .dd-l{font-size:15.5px}.dd-q{font-size:16px}
  .eco li{font-size:clamp(17.68px,calc(12.58px + 0.425vw),19.04px)}
  /* the hero h1 uses its own clamp inline */
  main h1[style*="clamp(40px, 3.9vw, 56px)"]{font-size:clamp(58px,calc(19px + 3.05vw),72px)!important;line-height:1.06!important}
  /* fluid type scale for every inline size token used on the site */
  [style*="font-size: 11px"]{font-size:clamp(11.44px,calc(8.14px + 0.275vw),12.32px)!important}
  [style*="font-size: 12px"]{font-size:clamp(12.48px,calc(8.88px + 0.3vw),13.44px)!important}
  [style*="font-size: 13px"]{font-size:clamp(13.52px,calc(9.62px + 0.325vw),14.56px)!important}
  [style*="font-size: 13.5px"]{font-size:clamp(14.04px,calc(9.99px + 0.338vw),15.12px)!important}
  [style*="font-size: 14px"]{font-size:clamp(14.56px,calc(10.36px + 0.35vw),15.68px)!important}
  [style*="font-size: 14.5px"]{font-size:clamp(15.08px,calc(10.73px + 0.363vw),16.24px)!important}
  [style*="font-size: 15px"]{font-size:clamp(15.6px,calc(11.1px + 0.375vw),16.8px)!important}
  [style*="font-size: 15.5px"]{font-size:clamp(16.12px,calc(11.47px + 0.388vw),17.36px)!important}
  [style*="font-size: 16px"]{font-size:clamp(16.64px,calc(11.84px + 0.4vw),17.92px)!important}
  [style*="font-size: 16.5px"]{font-size:clamp(17.16px,calc(12.21px + 0.413vw),18.48px)!important}
  [style*="font-size: 17px"]{font-size:clamp(17.68px,calc(12.58px + 0.425vw),19.04px)!important}
  [style*="font-size: 18px"]{font-size:clamp(18.72px,calc(13.32px + 0.45vw),20.16px)!important}
  [style*="font-size: 18.5px"]{font-size:clamp(19.24px,calc(13.69px + 0.463vw),20.72px)!important}
  [style*="font-size: 19px"]{font-size:clamp(19.76px,calc(14.06px + 0.475vw),21.28px)!important}
  [style*="font-size: 20px"]{font-size:clamp(20.8px,calc(14.8px + 0.5vw),22.4px)!important}
  [style*="font-size: 25px"]{font-size:clamp(27px,calc(15.5px + 0.938vw),30.5px)!important}
  [style*="font-size: 26px"]{font-size:clamp(28.08px,calc(16.12px + 0.975vw),31.72px)!important}
  [style*="font-size: 27px"]{font-size:clamp(29.16px,calc(16.74px + 1.012vw),32.94px)!important}
  [style*="font-size: 28px"]{font-size:clamp(30.24px,calc(17.36px + 1.05vw),34.16px)!important}
  [style*="font-size: 30px"]{font-size:clamp(32.4px,calc(18.6px + 1.125vw),36.6px)!important}
  [style*="font-size: 31px"]{font-size:clamp(33.48px,calc(19.22px + 1.162vw),37.82px)!important}
  [style*="font-size: 34px"]{font-size:clamp(36.72px,calc(21.08px + 1.275vw),41.48px)!important}
  [style*="font-size: 40px"]{font-size:clamp(43.2px,calc(24.8px + 1.5vw),48.8px)!important}
  [style*="font-size: 44px"]{font-size:clamp(47.52px,calc(27.28px + 1.65vw),53.68px)!important}
  [style*="font-size: 46px"]{font-size:clamp(49.68px,calc(28.52px + 1.725vw),56.12px)!important}
  [style*="font-size: 48px"]{font-size:clamp(51.84px,calc(29.76px + 1.8vw),58.56px)!important}
  [style*="font-size: 50px"]{font-size:clamp(54px,calc(31px + 1.875vw),61px)!important}
  [style*="font-size: 54px"]{font-size:clamp(58.32px,calc(33.48px + 2.025vw),65.88px)!important}
  [style*="font-size: 56px"]{font-size:clamp(60.48px,calc(34.72px + 2.1vw),68.32px)!important}
  [style*="font-size: 62px"]{font-size:clamp(66.96px,calc(38.44px + 2.325vw),75.64px)!important}
  [style*="font-size: 64px"]{font-size:clamp(69.12px,calc(39.68px + 2.4vw),78.08px)!important}
}

/* ======================================================================
   PREMIUM FINISH v2 — visual finish only, tuned to read at normal viewing
   size (≈2–3× the depth of v1). Paint-only properties: background,
   border-color, box-shadow, color, and a 1px transform on hover. No size,
   spacing, layout, type, copy, geometry or animation-timing changes.
   ====================================================================== */
:root{--ease:cubic-bezier(.22,.61,.36,1);--t:180ms;
  --gold-hi:#D6B25E;--gold-mid:#B48C2C;--gold-lo:#96741F;
  --hair:rgba(22,26,48,.14);
  --sh-card:inset 0 1px 0 rgba(255,255,255,1),0 1px 2px rgba(22,26,48,.07),0 10px 22px -12px rgba(22,26,48,.22),0 30px 56px -28px rgba(22,26,48,.34);
  --sh-card-hover:inset 0 1px 0 rgba(255,255,255,1),0 2px 4px rgba(22,26,48,.08),0 16px 30px -12px rgba(22,26,48,.26),0 40px 70px -28px rgba(22,26,48,.42);
  --sh-panel:0 2px 4px rgba(4,6,16,.3),0 40px 80px -30px rgba(4,6,16,.8),inset 0 0 0 1px rgba(255,255,255,.09),inset 0 1px 0 rgba(255,255,255,.1)}

/* Rendering crispness */
body{text-rendering:optimizeLegibility;font-kerning:normal}
svg text{text-rendering:geometricPrecision}
svg path,svg line,svg polygon{shape-rendering:geometricPrecision}

/* HEADER — clean white, clearly separated from the page */
header[style*="position: sticky"]{background:#FFFFFF!important;-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom:1px solid rgba(22,26,48,.12)!important;box-shadow:0 1px 2px rgba(22,26,48,.06),0 6px 14px -8px rgba(22,26,48,.18),0 18px 40px -22px rgba(22,26,48,.28)}
.navlink{transition:color var(--t) var(--ease),border-color var(--t) var(--ease)}

/* LIGHT SECTIONS — white stays white; cool-neutral sections step clearly down from it */
section[style*="background: #FFFFFF"]{background:linear-gradient(180deg,#FFFFFF 0%,#FFFFFF 70%,#F9FAFD 100%)!important}
section[style*="background: #F3F5F8"]{background:radial-gradient(ellipse 90% 80% at 50% 0%,#F8FAFD 0%,rgba(248,250,253,0) 60%),linear-gradient(180deg,#EEF2F8 0%,#E4E9F1 100%)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.95),inset 0 -1px 0 rgba(22,26,48,.08)}
section[style*="background: #F3F5F8"]::after{background:linear-gradient(90deg,rgba(22,26,48,0),var(--hair) 12%,var(--hair) 88%,rgba(22,26,48,0))}
section[style*="border-bottom: 1px solid #E6E9F0"],section[style*="border-top: 1px solid #E6E9F0"]{border-color:#DFE4EC!important}
section[aria-labelledby="persp-h"]{background:linear-gradient(180deg,#FFFFFF 0%,#FFFFFF 40%,#E8EDF5 100%)!important}
section[aria-label="Experience across the healthcare ecosystem"]{box-shadow:0 2px 4px rgba(22,26,48,.04),0 24px 48px -30px rgba(22,26,48,.45)}
.eco li:not(:nth-child(4n+1))::before{background:#CBD1DD}

/* NAVY SECTIONS — rich centre, darker edges, fine top highlight */
section[style*="background: #161A30"],#expertise[style*="#161A30"]{background:radial-gradient(ellipse 85% 75% at 50% 35%,#282F5A 0%,#1B2040 48%,#0F1227 100%)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),inset 0 -1px 0 rgba(0,0,0,.35)}
.fp-left{background:radial-gradient(ellipse 110% 90% at 60% 45%,#2A3160 0%,#1B2040 50%,#0F1227 100%)!important;box-shadow:inset -1px 0 0 rgba(255,255,255,.05),inset 0 1px 0 rgba(255,255,255,.07)}
#expertise::before,section[aria-labelledby="track-h"]::before,#contact::before,footer::before{background:linear-gradient(90deg,rgba(214,178,94,0) 0%,rgba(214,178,94,.75) 15%,rgba(214,178,94,.75) 85%,rgba(214,178,94,0) 100%)}

/* HERO — dimensional light panel; deep, rich diagram panel (diagram untouched) */
.bleed.bleed,.hero-l{background:radial-gradient(ellipse 60% 80% at 8% 10%,#FFFFFF 0%,rgba(255,255,255,0) 65%),linear-gradient(135deg,#FCFDFF 0%,#EBF0F7 50%,#DFE5EF 100%)!important;box-shadow:inset 0 -1px 0 rgba(22,26,48,.1),inset 0 1px 0 rgba(255,255,255,1)}
.hero-r{background:radial-gradient(ellipse 60% 65% at 56% 48%,#2E3668 0%,#1C2140 52%,#0E1126 100%)!important;box-shadow:inset 2px 0 0 rgba(214,178,94,.45),inset 0 1px 0 rgba(255,255,255,.07),inset 0 0 180px rgba(3,5,14,.45)}
.hero-r>svg{filter:none}

/* DIAGRAM PANELS — crisp strokes; restrained luminance on gold nodes only */
svg[data-diagram] g[data-hub]>circle:not([data-hring]),svg[data-diagram] g[data-ehub]>circle:not([data-hring]){filter:drop-shadow(0 0 4px rgba(214,178,94,.7))}
svg[data-diagram] [data-indot]{filter:drop-shadow(0 0 2px rgba(255,255,255,.4))}
svg[data-diagram] [data-light]>circle:not([data-halo]){filter:drop-shadow(0 0 3px rgba(214,178,94,.7))}
div[style*="background: #161A30; padding: 20px 16px"]{background:radial-gradient(ellipse 65% 65% at 50% 48%,#272E58 0%,#1A1F3C 55%,#10132A 100%)!important;box-shadow:var(--sh-panel)}

/* CARDS — soft, clearly visible elevation with a crisp hairline edge (existing cards only) */
main div[style*="background: #FFFFFF; border-top: 2px solid #161A30"],.article-row[style*="background: #FFFFFF"]{background:linear-gradient(180deg,#FFFFFF 0%,#FBFCFE 100%)!important;border-color:rgba(22,26,48,.12);box-shadow:var(--sh-card);transition:transform var(--t) var(--ease),box-shadow var(--t) var(--ease)}
main div[style*="background: #F3F5F8; border-top: 2px solid #161A30"]{background:linear-gradient(180deg,#F8FAFD 0%,#EEF2F8 100%)!important;border-color:rgba(22,26,48,.12);box-shadow:var(--sh-card)}
@media (hover:hover){.article-row[style*="background: #FFFFFF"]:hover{transform:translateY(-2px);box-shadow:var(--sh-card-hover)}}

/* BUTTONS — dimensional finish (sizes untouched) */
.btn-ink,.btn-gold,.btn-outline,.mnav-panel a.cta{transition:transform var(--t) var(--ease),box-shadow var(--t) var(--ease),background-color var(--t) var(--ease),border-color var(--t) var(--ease),color var(--t) var(--ease)}
.btn-ink{background:linear-gradient(180deg,#2B3262 0%,#1C2140 48%,#121630 100%)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.22),inset 0 -1px 0 rgba(0,0,0,.35),0 1px 2px rgba(12,15,32,.35),0 6px 12px -6px rgba(12,15,32,.45),0 16px 32px -12px rgba(12,15,32,.6)}
.btn-ink:hover{background:linear-gradient(180deg,#353D74 0%,#232950 48%,#181C38 100%)!important;transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.26),inset 0 -1px 0 rgba(0,0,0,.35),0 2px 4px rgba(12,15,32,.32),0 10px 18px -6px rgba(12,15,32,.45),0 24px 40px -14px rgba(12,15,32,.62)}
.btn-gold{background:linear-gradient(180deg,var(--gold-hi) 0%,var(--gold-mid) 50%,var(--gold-lo) 100%)!important;box-shadow:inset 0 1px 0 rgba(255,243,214,.6),inset 0 -1px 0 rgba(80,56,6,.45),0 1px 2px rgba(20,14,0,.35),0 6px 12px -6px rgba(20,14,0,.4),0 16px 32px -12px rgba(20,14,0,.55)}
.btn-gold:hover{background:linear-gradient(180deg,#E0BF70 0%,#C09838 50%,#9F7C24 100%)!important;color:#161A30!important;transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,245,220,.7),inset 0 -1px 0 rgba(80,56,6,.45),0 2px 4px rgba(20,14,0,.32),0 10px 18px -6px rgba(20,14,0,.4),0 24px 40px -14px rgba(20,14,0,.58)}
.btn-outline{background:linear-gradient(180deg,rgba(255,255,255,.7),rgba(255,255,255,0))!important;border-color:rgba(22,26,48,.85)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,1),0 1px 2px rgba(22,26,48,.08),0 6px 14px -8px rgba(22,26,48,.22)}
.btn-outline:hover{background:#161A30!important;border-color:#161A30!important;color:#FFFFFF!important;transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 2px 4px rgba(22,26,48,.2),0 14px 26px -12px rgba(22,26,48,.55)}
.btn-ink:active,.btn-gold:active,.btn-outline:active{transform:translateY(0);transition-duration:90ms}
.btn-ink:focus-visible,.btn-gold:focus-visible,.btn-outline:focus-visible{outline:2px solid #B48C2C;outline-offset:3px}

/* GOLD — rich and solid; no glow treatments */
#expertise .eb>span[aria-hidden],section[aria-labelledby="track-h"] .eb>span[aria-hidden],#contact .eb>span[aria-hidden]{box-shadow:none;background:linear-gradient(90deg,var(--gold-lo),var(--gold-hi))!important}
.svc-arrow{transition:background-color var(--t) var(--ease),color var(--t) var(--ease),border-color var(--t) var(--ease),box-shadow var(--t) var(--ease)}
.svc:hover .svc-arrow,.svc:focus-visible .svc-arrow{background:linear-gradient(180deg,var(--gold-hi),var(--gold-mid));box-shadow:0 4px 10px -4px rgba(0,0,0,.5)}
.svc::before{transition:background-color var(--t) var(--ease)}
@media (hover:hover){.svc:hover::before{background:rgba(255,255,255,.055);box-shadow:inset 0 0 0 1px rgba(255,255,255,.05)}}
.svc-title{transition:color var(--t) var(--ease)}

/* TRACK RECORD — the richest navy, gold with real contrast, fine separators */
section[aria-labelledby="track-h"]{background:radial-gradient(ellipse 80% 90% at 20% 100%,#283060 0%,rgba(40,48,96,0) 62%),radial-gradient(ellipse 70% 70% at 85% 0%,#1C2244 0%,rgba(28,34,68,0) 60%),linear-gradient(180deg,#0E1128 0%,#0A0D1F 100%)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.06),inset 0 -1px 0 rgba(0,0,0,.4)}
section[aria-labelledby="track-h"] dt[style*="Newsreader"]{color:#CDA64C!important;text-shadow:none}
section[aria-labelledby="track-h"] dl>div{border-top-color:rgba(255,255,255,.18)!important;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,0) 60%)}
section[aria-labelledby="track-h"] dl>div>span[aria-hidden]{background:linear-gradient(180deg,var(--gold-hi),var(--gold-mid))!important;box-shadow:0 0 0 3px #0C0F22,0 0 0 4px rgba(214,178,94,.45)}

/* FOUNDER — depth around the portrait, refined gold frame; the photo itself untouched */
.fp-left figure div[style*="aspect-ratio"]{box-shadow:0 2px 4px rgba(0,0,0,.4),0 24px 48px -16px rgba(0,0,0,.7),0 60px 100px -40px rgba(0,0,0,.9),0 0 0 1px rgba(255,255,255,.12)}
.fp-left figure>div[aria-hidden="true"]{border-color:rgba(214,178,94,.85)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.05),0 0 0 1px rgba(0,0,0,.25)}
.fp-left figure>span[aria-hidden="true"]{background:linear-gradient(180deg,var(--gold-hi),var(--gold-mid))!important;box-shadow:0 0 0 3px rgba(16,19,40,1)}

/* FINAL CTA — rich navy glow and clear surface separation */
#contact[style*="radial-gradient"],section[aria-labelledby="cta-h"]{background:radial-gradient(ellipse 55% 85% at 78% 50%,#3B4486 0%,#252B58 40%,rgba(37,43,88,0) 72%),linear-gradient(180deg,#1A1F3C 0%,#121630 100%)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),inset 0 -1px 0 rgba(0,0,0,.4)}

/* FOOTER — deepest surface, gold edge, crisp separators */
footer[style*="#0C0F20"]{background:radial-gradient(ellipse 70% 60% at 50% 0%,#141833 0%,rgba(20,24,51,0) 70%),linear-gradient(180deg,#0B0E22 0%,#06081A 100%)!important;border-top-color:rgba(214,178,94,.5)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
footer .wrap>div:first-child{border-bottom-color:rgba(255,255,255,.12)!important}
.flink{transition:color var(--t) var(--ease)}
.flink:hover{color:#FFFFFF}
footer a:not(.flink):not([aria-label]){transition:color var(--t) var(--ease)}
.dlink,.tlink{transition:border-color var(--t) var(--ease),color var(--t) var(--ease)}

/* MENUS — same material */
.dd-l,.dd-l::after{transition-duration:var(--t);transition-timing-function:var(--ease)}
.dd-menu{transition:opacity var(--t) var(--ease),visibility var(--t) var(--ease)}
.dd-panel{border-color:rgba(22,26,48,.12);box-shadow:0 2px 6px rgba(22,26,48,.08),0 30px 60px -20px rgba(22,26,48,.38)}
.mnav-panel{border-color:rgba(22,26,48,.12);box-shadow:0 2px 6px rgba(22,26,48,.08),0 28px 56px -20px rgba(22,26,48,.4)}
.sublink{transition:color var(--t) var(--ease),border-color var(--t) var(--ease),background-color var(--t) var(--ease)}

/* MOTION SAFETY */
@media (prefers-reduced-motion:reduce){.btn-ink,.btn-gold,.btn-outline,.article-row,.svc,.svc-arrow,.flink,.navlink{transition:none!important}.btn-ink:hover,.btn-gold:hover,.btn-outline:hover,.article-row:hover{transform:none!important}}

/* a11y contrast (final audit): small gold labels on white, 11px */
.dd-h{color:#8C6C1E}
.mnav-panel .grp{color:#8C6C1E}

/* sticky "On this page" bar: sit exactly at the bottom edge of the header (height varies 114-131px on tablet/desktop); mobile keeps 108px */
@media (min-width:601px){.subnav{top:var(--hdr-h,108px)}}
/* pages with the sticky "On this page" bar: every anchor / focus / find-in-page jump clears header + bar with 24px breathing room (replaces the fixed inline scroll-margins) */
html:has(.subnav){scroll-padding-top:calc(var(--bars-h,153px) + 24px)}
html:has(.subnav) [id]{scroll-margin-top:0!important}
/* sticky bar sits flush under the header at every width, including phones (header is 86-98px there) */
.subnav{top:var(--hdr-h,108px)}
/* APIQ Perspective diagram v2: desktop and mobile label sets, quieter type (end rule below) */
[data-diagram="persp"] .pd-m{display:none}
.persp-panel{padding:33px 30px 27px!important;background:radial-gradient(ellipse 65% 65% at 50% 48%,#272E58 0%,#1A1F3C 55%,#10132A 100%)!important;box-shadow:var(--sh-panel)}
@media (max-width:600px){
  [data-diagram="persp"] .pd-d{display:none}
  [data-diagram="persp"] .pd-m{display:inline}
  .persp-panel{padding:4px 0!important}
}
/* end persp v2 */
/* expertise columns: keep each guiding question on one line so the three columns stay level (scales down only when a column is too narrow) */
@media (min-width:601px){
  .xgrid > div:has(> p.xq){container-type:inline-size}
  .xgrid p.xq{white-space:nowrap;font-size:min(18.5px,5.3cqi)!important}
  .xgrid > div:has(> p.xq) > h3{white-space:nowrap;font-size:min(31px,9.1cqi)!important}
}
/* APIQ Perspective row: stay side-by-side down to 1100px; when stacked (tablet) centre the diagram panel */
@media (min-width:1100px) and (max-width:1279px){
  section[aria-labelledby="persp-h"] > .wrap{column-gap:48px!important}
  section[aria-labelledby="persp-h"] > .wrap > div:first-child{flex:1 1 360px!important}
  section[aria-labelledby="persp-h"] .persp-panel{flex:1 1 520px!important}
}
@media (min-width:601px) and (max-width:1099px){
  section[aria-labelledby="persp-h"] .persp-panel{margin-left:auto;margin-right:auto}
}
/* Track Record stats: figures scale to the row so every column keeps clear breathing room; tablet uses an even 3+2 grid */
@media (min-width:601px){
  section[aria-labelledby="track-h"] dl{container-type:inline-size}
  section[aria-labelledby="track-h"] dl>div{padding-right:32px!important}
  section[aria-labelledby="track-h"] dl>div:last-child{padding-right:0!important}
}
@media (min-width:1100px){
  section[aria-labelledby="track-h"] dl{grid-template-columns:repeat(5,minmax(0,1fr))!important}
  section[aria-labelledby="track-h"] dl>div>dt[style*="font-size: 62px"]{font-size:min(72px,5.2cqi)!important}
}
@media (min-width:601px) and (max-width:1099px){
  section[aria-labelledby="track-h"] dl{grid-template-columns:repeat(3,minmax(0,1fr))!important;row-gap:48px!important}
  section[aria-labelledby="track-h"] dl>div:nth-child(3){padding-right:0!important}
  section[aria-labelledby="track-h"] dl>div>dt[style*="font-size: 62px"]{font-size:min(62px,7cqi)!important}
}
/* Closing CTA ("Let's talk about what's next."): centre the block on desktop to match mobile and fill the section */
@media (min-width:601px){
  section[aria-labelledby="cta-h"] > .wrap > div{max-width:980px!important;margin-left:auto!important;margin-right:auto!important;text-align:center}
  section[aria-labelledby="cta-h"] h2#cta-h{margin-left:auto!important;margin-right:auto!important}
  section[aria-labelledby="cta-h"] h2#cta-h + p{max-width:640px!important;margin-left:auto!important;margin-right:auto!important}
  section[aria-labelledby="cta-h"] .cta-row{justify-content:center}
  #contact[style*="radial-gradient"],section[aria-labelledby="cta-h"]{background:radial-gradient(ellipse 55% 85% at 50% 50%,#3B4486 0%,#252B58 40%,rgba(37,43,88,0) 72%),linear-gradient(180deg,#1A1F3C 0%,#121630 100%)!important}
}
