/* ============================================================
   JVAT brand kit — shared design system for the capability &
   credential pages. Native tokens: flat dark-green ground,
   square corners, translucent-white hairlines, DM Sans (300
   display / 400 body / 500 buttons), green #00bf6f + mint
   #8bebb3 accents. Jaguar wordmark ('jvat') for JVAT lockups.
   ============================================================ */
/* Self-hosted DM Sans (variable, weights 100–1000) so the kit pages render in
   DM Sans offline — no remote Google Fonts dependency. Files under assets/fonts/. */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 100 1000;
  font-display: swap;
  src: url('assets/fonts/dm-sans-latin.c57593e0.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: 'DM Sans';
  font-style: normal;
  font-weight: 100 1000;
  font-display: swap;
  src: url('assets/fonts/dm-sans-latin-ext.f78180b1.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: 'JVAT Jaguar';
  src: url('Jaguar-Bold.52e49b42.otf') format('opentype');
  font-weight: 700; font-style: normal; font-display: swap;
}
:root{
  --dg:#00382f; --dg2:#00382f; --dg3:#00382f; --deep:#00382f;
  --green:#00bf6f; --mint:#8bebb3; --paper:#f2f5f4;
  --line:rgba(255,255,255,.18); --line2:rgba(255,255,255,.22);
  --tx:rgba(255,255,255,.78); --tx2:rgba(255,255,255,.62);
  --max:1220px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:"DM Sans",Arial,sans-serif;background:var(--dg2);color:var(--tx);-webkit-font-smoothing:antialiased;}
a{color:inherit;}
img{max-width:100%;display:block;}
.jvat-wordmark{font-family:'JVAT Jaguar','DM Sans','Segoe UI',Arial,sans-serif;font-weight:700;letter-spacing:.02em;text-transform:lowercase;line-height:1;color:inherit;}
.jk-wrap{max-width:var(--max);margin:0 auto;padding:0 42px;}
@media(max-width:600px){.jk-wrap{padding:0 22px;}}

/* ---- buttons ---- */
.jk-btn{display:inline-flex;align-items:center;gap:9px;padding:11px 30px 12px;font-size:15px;font-weight:500;line-height:1.2;text-decoration:none;border:1px solid transparent;transition:background .2s,color .2s,border-color .2s;}
.jk-btn svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;}
.jk-btn--fill{background:#fff;color:#223035;}
.jk-btn--fill:hover{background:var(--green);color:var(--dg);}
.jk-btn--ghost{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.46);color:#fff;}
.jk-btn--ghost:hover{background:#fff;color:var(--dg2);}
.jk-btn--dark{background:var(--dg);color:#fff;}
.jk-btn--dark:hover{background:var(--green);color:var(--dg);}

/* ---- header ---- */
.jk-header{position:sticky;top:0;z-index:50;background:rgba(3,21,18,.82);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
.jk-header__inner{display:flex;align-items:center;justify-content:space-between;gap:28px;height:74px;}
.jk-logo{display:inline-flex;align-items:baseline;gap:.34em;text-decoration:none;color:#fff;font-size:26px;}
.jk-logo .jvat-wordmark{color:#fff;font-size:1.05em;}
.jk-logo .grp{font-family:'JVAT Jaguar','DM Sans',sans-serif;color:var(--mint);font-weight:700;letter-spacing:.02em;text-transform:lowercase;font-size:.92em;}
.jk-nav{display:flex;gap:26px;align-items:center;}
.jk-nav a{color:rgba(255,255,255,.8);text-decoration:none;font-size:14px;letter-spacing:.04em;}
.jk-nav a:hover{color:var(--mint);}
.jk-nav a.jk-nav__cta{color:var(--green);}
@media(max-width:860px){.jk-nav{display:none;}}

/* ---- hero ---- */
.jk-hero{position:relative;background:#00382f;padding:clamp(64px,7vw,96px) 0 clamp(60px,7vw,96px);}
.jk-eyebrow{margin:0 0 16px;color:var(--green);font-size:14px;font-weight:400;letter-spacing:.16em;text-transform:uppercase;}
.jk-hero h1{margin:0;color:#fff;font-size:clamp(44px,6.5vw,88px);line-height:.98;font-weight:300;letter-spacing:-.035em;}
.jk-hero h1 .jvat-wordmark{color:#fff;}
.jk-hero__lead{margin:24px 0 0;max-width:760px;color:#fff;font-size:clamp(19px,1.8vw,26px);line-height:1.35;font-weight:300;}
.jk-hero__sub{margin:18px 0 0;max-width:720px;color:var(--tx);font-size:clamp(15px,1.3vw,17px);line-height:1.6;}

/* ---- section scaffolding ---- */
.jk-section{padding:clamp(64px,7vw,104px) 0;}
.jk-section--paper{background:var(--paper);color:var(--dg);}
.jk-shead{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(320px,1.2fr);gap:clamp(24px,4vw,48px);align-items:end;margin-bottom:clamp(36px,5vw,56px);}
.jk-shead h2{margin:0;color:#fff;font-size:clamp(32px,4vw,52px);line-height:1.02;font-weight:300;letter-spacing:-.03em;}
.jk-section--paper .jk-shead h2{color:var(--dg);}
.jk-shead p{margin:0;color:var(--tx);font-size:clamp(16px,1.3vw,19px);line-height:1.6;}
@media(max-width:760px){.jk-shead{grid-template-columns:1fr;gap:14px;margin-bottom:clamp(28px,6vw,40px);}}
/* section utilities */
.jk-shead--flush{margin-bottom:0;}
.jk-section__note{margin:28px 0 0;max-width:720px;color:var(--tx);font-size:clamp(15px,1.3vw,17px);line-height:1.6;}
.jk-lt .jk-section__note{color:#41615a;}
.jk-hero .jk-breadcrumb + .jk-eyebrow{margin-top:22px;}
.jk-siteftr__logo img{height:24px;width:auto;display:block;}

/* ---- GM band (light green staff spotlight) ---- */
.jvat-gm-band{background:#e3f2ea;color:var(--dg);padding:clamp(56px,6vw,88px) 0;border-top:1px solid rgba(0,56,47,.14);}
.jvat-gm-band__inner{max-width:var(--max);margin:0 auto;padding:0 42px;}
@media(max-width:600px){.jvat-gm-band__inner{padding:0 22px;}}
/* solo spotlight (single GM, no region switch): photo + content sit DIRECTLY in
   __inner, so give them the same constrained 2-col grid the region variant uses.
   Region pages nest a __region grid inside __inner, so ">.__photo" never matches
   them -- they are unaffected. Without this the circular photo fills the full
   container width (oversized). */
.jvat-gm-band__inner:has(> .jvat-gm-band__photo){display:grid;grid-template-columns:minmax(180px,240px) minmax(0,1fr);gap:clamp(28px,4vw,60px);align-items:center;}
@media(max-width:760px){.jvat-gm-band__inner:has(> .jvat-gm-band__photo){grid-template-columns:1fr;}.jvat-gm-band__inner:has(> .jvat-gm-band__photo) .jvat-gm-band__photo{max-width:220px;}}
.jvat-gm-band__photo{position:relative;aspect-ratio:1/1;border-radius:50%;background:#cfe6d8 center/cover;border:1px solid rgba(0,56,47,.16);overflow:hidden;}
.jvat-gm-band__photo img{width:100%;height:100%;object-fit:cover;object-position:center 22%;display:block;}
.jvat-gm-band__photo-todo{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:rgba(0,56,47,.5);font-size:12px;letter-spacing:.14em;text-transform:uppercase;}
/* point-of-contact photo fallback */
.jvat-gm-band__photo--mono{background:linear-gradient(150deg,#0f5f47,#00382f);border-color:rgba(0,56,47,.18);}
.jvat-gm-band__mono{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:clamp(42px,7vw,66px);font-weight:300;letter-spacing:.04em;color:#8bebb3;}
.jvat-gm-band__eyebrow{margin:0 0 14px;color:var(--green);font-size:14px;font-weight:400;letter-spacing:.16em;text-transform:uppercase;}
.jvat-gm-band__name{margin:0;color:var(--dg);font-size:clamp(34px,4vw,52px);line-height:1.02;font-weight:300;letter-spacing:-.03em;}
.jvat-gm-band__role{margin:10px 0 0;color:#0f5a49;font-size:clamp(15px,1.3vw,18px);font-weight:500;}
.jvat-gm-band__role .jvat-wordmark{color:var(--dg);}
.jvat-gm-band__bio{margin:22px 0 0;max-width:640px;color:rgba(0,56,47,.82);font-size:clamp(15px,1.2vw,17px);line-height:1.62;}
.jvat-gm-band__bio[data-todo]{border-left:2px solid var(--green);padding-left:16px;color:rgba(0,56,47,.55);font-style:italic;}
.jvat-gm-band__cta{margin-top:26px;}
@media(max-width:760px){.jvat-gm-band__region{grid-template-columns:1fr;}.jvat-gm-band__photo{max-width:280px;}}

/* ---- capability layout: sticky subnav + stacked sections ---- */
.jk-caps{display:grid;grid-template-columns:minmax(200px,260px) minmax(0,1fr);gap:clamp(28px,4vw,64px);align-items:start;}
.jk-subnav{position:sticky;top:98px;display:flex;flex-direction:column;gap:2px;border-left:1px solid var(--line);}
.jk-subnav a{padding:11px 0 11px 18px;margin-left:-1px;border-left:2px solid transparent;color:var(--tx2);text-decoration:none;font-size:15px;line-height:1.3;}
.jk-subnav a:hover{color:#fff;}
.jk-cap{scroll-margin-top:98px;padding:clamp(28px,3vw,40px) 0;border-top:1px solid var(--line);}
.jk-cap:first-child{border-top:0;padding-top:0;}
.jk-cap__eyebrow{margin:0 0 10px;color:var(--mint);font-size:13px;font-weight:500;letter-spacing:.1em;}
.jk-cap h3{margin:0;color:#fff;font-size:clamp(26px,3vw,40px);line-height:1.03;font-weight:300;letter-spacing:-.025em;}
.jk-cap__blurb{margin:16px 0 0;max-width:720px;color:var(--tx);font-size:clamp(16px,1.3vw,18px);line-height:1.6;}
.jk-points{margin:22px 0 0;padding:0;list-style:none;border-top:1px solid var(--line);}
.jk-points li{display:block;position:relative;padding:13px 0 13px 26px;border-bottom:1px solid var(--line);color:#fff;font-size:clamp(15px,1.2vw,17px);}
.jk-points li:before{content:"";width:7px;height:7px;margin-top:.35em;border-radius:99px;background:var(--green);box-shadow:0 0 0 4px rgba(0,191,111,.12);}
.jk-cap__cta{margin-top:26px;display:inline-flex;align-items:center;gap:10px;color:var(--green);font-size:16px;font-weight:500;text-decoration:none;}
.jk-cap__cta:after{content:"";width:11px;height:11px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;transform:rotate(45deg);transition:transform .2s;}
.jk-cap__cta:hover:after{transform:rotate(45deg) translate(2px,-2px);}
@media(max-width:900px){.jk-caps{grid-template-columns:1fr;}.jk-subnav{display:none;}}

/* ---- credential page proof blocks ---- */
.jk-proof{display:grid;gap:1px;background:var(--line);border:1px solid var(--line2);}
.jk-proof__cell{background:var(--dg2);padding:clamp(26px,3vw,40px);}
.jk-proof__cell h3{margin:0 0 14px;color:#fff;font-size:clamp(20px,2vw,26px);font-weight:300;letter-spacing:-.01em;}
.jk-proof__cell p{margin:0;color:var(--tx);font-size:16px;line-height:1.62;}
.jk-proof__cell ul{margin:0;padding-left:20px;color:var(--tx);font-size:16px;line-height:1.7;}
@media(min-width:760px){.jk-proof{grid-template-columns:1fr 1fr;}}
.jk-standards{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;}
.jk-standards span{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border:1px solid rgba(139,235,179,.42);background:rgba(0,191,111,.08);color:var(--mint);font-size:13px;font-weight:500;letter-spacing:.04em;}

/* ---- closing CTA ---- */
.jk-cta{background:#00382f;border-top:1px solid var(--line);text-align:center;padding:clamp(72px,9vw,120px) 0;}
.jk-cta h2{margin:0 auto;max-width:820px;color:#fff;font-size:clamp(30px,4vw,52px);line-height:1.04;font-weight:300;letter-spacing:-.03em;}
.jk-cta p{margin:18px auto 0;max-width:600px;color:var(--tx);font-size:17px;line-height:1.6;}
.jk-cta__row{margin-top:32px;display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}

/* ---- footer ---- */
.jk-footer{background:var(--deep);border-top:1px solid var(--line);padding:44px 0;}
.jk-footer__inner{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;}
.jk-footer a{color:var(--tx2);text-decoration:none;font-size:13px;}
.jk-footer a:hover{color:var(--mint);}
.jk-breadcrumb{padding:18px 0 0;color:var(--tx2);font-size:13px;letter-spacing:.02em;}
.jk-breadcrumb a{color:var(--mint);text-decoration:none;}

@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important;}}


/* ===== Unified group header (matches JVAT homepage) ===== */
.jk-header--group{position:sticky;top:0;z-index:100;background:#00382f;border-bottom:1px solid rgba(139,235,179,.6);backdrop-filter:none;}
.jk-header--group .jk-header__bar{display:flex;align-items:center;gap:clamp(14px,1.4vw,24px);max-width:1600px;margin:0 auto;padding:16px clamp(20px,3vw,48px);}
.jk-header__logo{flex:0 0 auto;display:inline-flex;align-items:center;}
.jk-header__logo img{height:40px;width:auto;display:block;}
.jk-header__nav{margin-left:auto;display:flex;align-items:center;gap:clamp(12px,1vw,18px);flex-wrap:wrap;}
.jk-header__nav a{color:rgba(255,255,255,.92);text-decoration:none;font-size:clamp(14px,.95vw,16px);letter-spacing:.02em;white-space:nowrap;transition:color .18s ease;}
.jk-header__nav a:hover{color:#8bebb3;}
.jk-header--group .jvat-region-switcher{position:relative;display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;padding:5px;border:1px solid rgba(139,235,179,.22);border-radius:999px;background:rgba(3,15,13,.48);}
.jvat-region-switcher__flag{font-size:16px;line-height:1;}
.jvat-region-switcher__code{font-size:10px;font-weight:800;letter-spacing:.08em;color:#fff;}
.jvat-region-switcher__toggle{appearance:none;border:0;background:transparent;color:#fff;display:inline-flex;align-items:center;gap:7px;cursor:pointer;font:inherit;padding:4px 10px;min-height:30px;border-radius:999px;transition:background .18s ease;}
.jvat-region-switcher__toggle:hover{background:rgba(0,191,111,.14);}
.jvat-region-switcher__chev{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid rgba(255,255,255,.72);transition:transform .18s ease;}
.jvat-region-switcher[data-open="true"] .jvat-region-switcher__chev{transform:rotate(180deg);}
.jvat-region-switcher__menu{position:absolute;top:calc(100% + 10px);right:0;min-width:236px;list-style:none;margin:0;padding:6px;background:#00382f;border:1px solid rgba(139,235,179,.24);border-radius:12px;box-shadow:0 22px 44px rgba(0,0,0,.4);z-index:300;display:none;}
.jvat-region-switcher[data-open="true"] .jvat-region-switcher__menu{display:block;}
.jvat-region-switcher__option{display:flex;align-items:center;gap:10px;padding:9px 12px;color:rgba(255,255,255,.86);font-size:14px;line-height:1.2;border-radius:8px;cursor:pointer;white-space:nowrap;}
.jvat-region-switcher__option:hover{background:rgba(0,191,111,.16);color:#fff;}
.jvat-region-switcher__option[aria-selected="true"]{color:#8bebb3;}
.jvat-region-switcher__option .jvat-region-switcher__flag{font-size:18px;}
@media (max-width:1024px){ .jk-header--group .jk-header__bar{gap:10px;} .jk-header__nav{gap:10px;} .jk-header__nav a{font-size:13px;} .jk-header__logo img{height:34px;} }

/* ===== credential: pillars strip (after hero) ===== */
.jk-pillars{background:var(--dg2);padding:clamp(64px,7vw,104px) 0 clamp(48px,6vw,84px);}
.jk-pillars__statement{margin:0 0 clamp(30px,4vw,46px);max-width:26ch;color:#fff;font-size:clamp(24px,3.2vw,40px);line-height:1.12;font-weight:300;letter-spacing:-.025em;}
.jk-pillars__row{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,44px);border-top:1px solid var(--line);padding-top:clamp(26px,3vw,38px);}
.jk-pillar__n{color:var(--mint);font-size:13px;font-weight:500;letter-spacing:.1em;}
.jk-pillar b{display:block;margin:10px 0 8px;color:#fff;font-size:clamp(20px,2vw,26px);font-weight:300;letter-spacing:-.01em;}
.jk-pillar p{margin:0;color:var(--tx);font-size:15px;line-height:1.55;}
@media(max-width:760px){.jk-pillars__row{grid-template-columns:1fr;gap:26px;}}

/* ===== credential: portfolio / selected engagements ===== */
.jk-portfolio__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1px;background:var(--line);border:1px solid var(--line2);}
@media(max-width:880px){.jk-portfolio__grid{grid-template-columns:1fr;}}
.jk-pfcard{background:var(--dg2);display:flex;flex-direction:column;padding-bottom:26px;}
.jk-pfcard__img{aspect-ratio:16/10;background:rgba(255,255,255,.04);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.38);font-size:11px;letter-spacing:.16em;text-transform:uppercase;}
.jk-pfcard__eyebrow{margin:20px 24px 8px;color:var(--mint);font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;}
.jk-pfcard h3{margin:0 24px 10px;color:#fff;font-size:clamp(18px,1.6vw,22px);font-weight:300;letter-spacing:-.01em;}
.jk-pfcard p{margin:0 24px;color:var(--tx);font-size:14px;line-height:1.58;}
.jk-pfcard p[data-todo]{color:var(--tx2);font-style:italic;}

/* ===== shared site footer: awards band + bottom bar (all pages) ===== */
.jk-siteftr{background:#00251f;border-top:1px solid rgba(255,255,255,.14);font-family:"DM Sans",Arial,sans-serif;}
.jk-siteftr__wrap{max-width:1220px;margin:0 auto;padding:0 42px;}
@media(max-width:600px){.jk-siteftr__wrap{padding:0 22px;}}
.jk-siteftr__awards{border-bottom:1px solid rgba(255,255,255,.12);padding:clamp(34px,4vw,54px) 0;}
.jk-siteftr__awards-inner{display:grid;grid-template-columns:auto 1fr;gap:clamp(26px,4vw,54px);align-items:center;}
.jk-siteftr__certs{display:flex;gap:14px;flex-wrap:wrap;flex:0 0 auto;}
.jk-siteftr__certs img{height:80px;width:auto;object-fit:contain;}
.jk-siteftr__awardtext{margin:0;color:rgba(255,255,255,.72);font-size:15px;line-height:1.6;max-width:64ch;}
.jk-siteftr__awardtext b{color:#fff;font-weight:500;}
.jk-siteftr__bottom{padding:28px 0;}
.jk-siteftr__bottom-inner{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap;}
.jk-siteftr__logo{display:inline-flex;align-items:baseline;gap:.34em;text-decoration:none;color:#fff;font-size:22px;}
.jk-siteftr__logo .jvat-wordmark{color:#fff;font-size:1.05em;}
.jk-siteftr__logo .grp{font-family:'JVAT Jaguar','DM Sans',sans-serif;color:#8bebb3;font-weight:700;text-transform:lowercase;font-size:.92em;}
.jk-siteftr__nav{display:flex;gap:20px;flex-wrap:wrap;justify-content:center;}
.jk-siteftr__nav a{color:rgba(255,255,255,.62);text-decoration:none;font-size:13px;}
.jk-siteftr__nav a:hover{color:#8bebb3;}
.jk-siteftr__copy{margin:0;color:rgba(255,255,255,.62);font-size:13px;}
@media(max-width:760px){.jk-siteftr__awards-inner{grid-template-columns:1fr;}.jk-siteftr__bottom-inner{justify-content:flex-start;}}

/* ===== awards strip (full, all logos) + de-emphasise Jaguar on non-logo JVAT text ===== */
.jvat-wordmark{font-family:inherit !important;font-weight:inherit !important;letter-spacing:normal !important;text-transform:none !important;}
.jk-siteftr__logo .grp{font-family:inherit !important;font-weight:600;}
.jk-siteftr__awards .jk-siteftr__wrap{text-align:center;}
.jk-siteftr__awardrow{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:22px 40px;margin:0 auto clamp(20px,3vw,28px);}
.jk-siteftr__awardrow img{height:52px;width:auto;object-fit:contain;}
.jk-siteftr__awardtext{max-width:94ch;margin:0 auto;text-align:center;}

/* ===== market/sector: operating domains ===== */
.jk-domainrow{display:flex;flex-wrap:wrap;gap:14px;}
.jk-domain{border:1px solid var(--line2);background:var(--dg2);padding:16px 22px;min-width:118px;scroll-margin-top:100px;}
.jk-domain span{color:var(--mint);font-size:11px;font-weight:500;letter-spacing:.16em;}
.jk-domain b{display:block;color:#fff;font-size:clamp(18px,1.6vw,22px);font-weight:300;margin-top:8px;letter-spacing:-.01em;}

/* ===== alternating section backgrounds (white / very-light-green) + double-arrow bullets ===== */
.jk-bg-white{background:#ffffff !important;}
.jk-bg-mint{background:#eef6f1 !important;}
.jk-lt{color:#41615a;}
.jk-lt .jk-shead h2{color:#00382f;}
.jk-lt .jk-shead p{color:#41615a;}
/* pillars on light */
.jk-lt .jk-pillars__statement{color:#00382f;}
.jk-lt .jk-pillars__row{border-top-color:rgba(0,56,47,.16);}
.jk-lt .jk-pillar__n{color:#0a7d54;}
.jk-lt .jk-pillar b{color:#00382f;}
.jk-lt .jk-pillar p{color:#41615a;}
/* proof grid on light */
.jk-lt .jk-proof{background:rgba(0,56,47,.14);border-color:rgba(0,56,47,.16);}
.jk-lt .jk-proof__cell{background:#ffffff;}
.jk-lt .jk-proof__cell h3{color:#00382f;}
.jk-lt .jk-proof__cell p,.jk-lt .jk-proof__cell ul{color:#41615a;}
.jk-lt .jk-standards span{border-color:rgba(0,56,47,.28);background:rgba(0,191,111,.1);color:#0a7d54;}
/* portfolio on light */
.jk-lt .jk-portfolio__grid{background:rgba(0,56,47,.14);border-color:rgba(0,56,47,.16);}
.jk-lt .jk-pfcard{background:#ffffff;}
.jk-lt .jk-pfcard__img{background:rgba(0,56,47,.05);border-bottom-color:rgba(0,56,47,.12);color:rgba(0,56,47,.42);}
.jk-lt .jk-pfcard__eyebrow{color:#0a7d54;}
.jk-lt .jk-pfcard h3{color:#00382f;}
.jk-lt .jk-pfcard p{color:#41615a;}
.jk-lt .jk-pfcard p[data-todo]{color:rgba(0,56,47,.5);}
/* operating domains on light */
.jk-lt .jk-domain{background:#ffffff;border-color:rgba(0,56,47,.2);}
.jk-lt .jk-domain span{color:#0a7d54;}
.jk-lt .jk-domain b{color:#00382f;}
/* capability list + subnav on light */
.jk-lt .jk-points{border-top-color:rgba(0,56,47,.16);}
.jk-lt .jk-points li{color:#00382f;border-bottom-color:rgba(0,56,47,.14);}
.jk-lt .jk-cap{border-top-color:rgba(0,56,47,.14);}
.jk-lt .jk-cap__eyebrow{color:#0a7d54;}
.jk-lt .jk-cap h3{color:#00382f;}
.jk-lt .jk-cap__blurb{color:#41615a;}
.jk-lt .jk-cap__cta{color:#0a7d54;}
.jk-lt .jk-subnav{border-left-color:rgba(0,56,47,.18);}
.jk-lt .jk-subnav a{color:rgba(0,56,47,.6);}
.jk-lt .jk-subnav a:hover{color:#00382f;}
.jk-lt .jk-hero__sub{color:#41615a;}

/* double-arrow (») bullets everywhere dot-points appear */
.jk-points li:before{content:"\00BB";position:absolute;left:0;top:13px;width:auto;height:auto;margin-top:0;border-radius:0;background:none;box-shadow:none;color:var(--green);font-weight:700;font-size:1.05em;line-height:1.25;}
.jk-proof__cell ul{list-style:none;padding-left:0;}
.jk-proof__cell ul li{position:relative;padding-left:24px;margin:0 0 4px;}
.jk-proof__cell ul li:before{content:"\00BB";position:absolute;left:0;top:0;color:var(--green);font-weight:700;}

/* ===== Sectors nav dropdown (reveals market sub-pages) ===== */
.jk-nav-drop{position:relative;}
.jk-header__nav .jk-nav-drop{display:inline-flex;align-items:center;}
.jvat-simple-menu li.jk-nav-drop,.jvat-simple-mobile-menu li.jk-nav-drop{display:block;list-style:none;}
.jk-nav-drop__toggle{display:inline-flex;align-items:center;gap:6px;cursor:pointer;color:rgba(255,255,255,.92);font-size:clamp(14px,.95vw,16px);letter-spacing:.02em;white-space:nowrap;}
.jk-nav-drop__toggle:hover,.jk-nav-drop:focus-within .jk-nav-drop__toggle{color:#8bebb3;}
.jk-nav-drop__chev{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;opacity:.7;transition:transform .18s ease;}
.jk-nav-drop:hover .jk-nav-drop__chev,.jk-nav-drop:focus-within .jk-nav-drop__chev{transform:rotate(180deg);}
.jk-nav-drop__menu{position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%);margin:0;padding:6px;min-width:238px;list-style:none;background:#00382f;border:1px solid rgba(139,235,179,.24);border-radius:12px;box-shadow:0 22px 44px rgba(0,0,0,.4);opacity:0;visibility:hidden;transition:opacity .16s ease,visibility .16s ease;z-index:400;}
.jk-nav-drop__menu::before{content:"";position:absolute;top:-12px;left:0;right:0;height:12px;}
.jk-nav-drop:hover .jk-nav-drop__menu,.jk-nav-drop:focus-within .jk-nav-drop__menu{opacity:1;visibility:visible;}
.jk-nav-drop__menu li{margin:0;list-style:none;}
.jk-nav-drop__menu a{display:block;padding:9px 14px;border-radius:8px;color:rgba(255,255,255,.86);text-decoration:none;font-size:14px;white-space:nowrap;}
.jk-nav-drop__menu a:hover{background:rgba(0,191,111,.16);color:#fff;}

/* ===== credential: Selected engagements — alternating image rows ===== */
.jk-engage__row{padding:clamp(30px,4vw,58px) 0;}
.jk-engage__inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(26px,5vw,64px);align-items:center;}
.jk-engage__img{position:relative;aspect-ratio:16/10;display:flex;align-items:flex-end;overflow:hidden;padding:14px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;order:0;}
.jk-engage__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.86) contrast(1.04);}
.jk-engage__img:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(0,0,0,.55));z-index:1;pointer-events:none;}
.jk-engage__img span{position:relative;z-index:2;color:#fff;text-shadow:0 1px 14px rgba(0,0,0,.48);}
.jk-engage__body{order:1;}
.jk-engage__row--flip .jk-engage__img{order:1;}
.jk-engage__row--flip .jk-engage__body{order:0;}
.jk-engage__eyebrow{margin:0 0 12px;font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;}
.jk-engage__body h3,.jk-engage__film-head h3{margin:0 0 12px;font-size:clamp(22px,2.4vw,32px);font-weight:300;letter-spacing:-.01em;}
.jk-engage__body h3[data-todo],.jk-engage__body p[data-todo]{font-style:italic;}
.jk-engage__body p:not(.jk-engage__eyebrow){margin:0;font-size:16px;line-height:1.62;max-width:60ch;}
.jk-engage__what-label{display:block;margin:0 0 7px;color:#0a7d54;font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;}
.jk-engage__outcomes{margin:18px 0 0;padding:0;list-style:none;max-width:60ch;}
.jk-engage__outcomes li{position:relative;margin:0 0 8px;padding-left:24px;font-size:15px;line-height:1.55;}
.jk-engage__outcomes li:last-child{margin-bottom:0;}
.jk-engage__outcomes li:before{content:"\00BB";position:absolute;left:0;top:0;color:var(--green);font-weight:700;}
.jk-engage__row--green{background:#00382f;color:rgba(255,255,255,.82);}
.jk-engage__row--green h3{color:#fff;} .jk-engage__row--green .jk-engage__eyebrow,.jk-engage__row--green .jk-engage__what-label{color:#8bebb3;}
.jk-engage__row--green .jk-engage__img{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);color:rgba(255,255,255,.5);}
.jk-engage__row--white{background:#ffffff;color:#41615a;}
.jk-engage__row--white h3{color:#00382f;} .jk-engage__row--white .jk-engage__eyebrow{color:#0a7d54;}
.jk-engage__row--white .jk-engage__img{background:rgba(0,56,47,.05);border:1px solid rgba(0,56,47,.14);color:rgba(0,56,47,.4);}
.jk-engage__row--mint{background:#eef6f1;color:#41615a;}
.jk-engage__row--mint h3{color:#00382f;} .jk-engage__row--mint .jk-engage__eyebrow{color:#0a7d54;}
.jk-engage__row--mint .jk-engage__img{background:rgba(0,56,47,.05);border:1px solid rgba(0,56,47,.14);color:rgba(0,56,47,.4);}
@media(max-width:760px){.jk-engage__inner{grid-template-columns:1fr;gap:14px;}.jk-engage__row--flip .jk-engage__img{order:0;}.jk-engage__row--flip .jk-engage__body{order:1;}}

/* ===== credential engagements: subtle per-row contact link + hero contact button ===== */
.jk-hero__cta{margin-top:28px;}
.jk-engage__cta{display:inline-flex;align-items:center;gap:8px;margin-top:18px;font-size:14px;font-weight:500;text-decoration:none;}
.jk-engage__cta svg{width:9px;height:9px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease;}
.jk-engage__cta:hover svg{transform:translate(2px,-2px);}
.jk-engage__row--green .jk-engage__cta{color:#8bebb3;}
.jk-engage__row--white .jk-engage__cta,.jk-engage__row--mint .jk-engage__cta{color:#0a7d54;}

/* --- market domain rows reuse .jk-engage; deep-link anchor offset + :target highlight --- */
.jk-engage__row{scroll-margin-top:74px;}
.jk-engage__row:target{box-shadow:inset 0 0 0 2px var(--green), inset 7px 0 0 var(--green);}
.jk-engage__row--green:target{box-shadow:inset 0 0 0 2px var(--mint), inset 7px 0 0 var(--mint);}
.jk-engage__img--dom{background:linear-gradient(150deg,#0f5f47,#00382f)!important;border:1px solid rgba(255,255,255,.16)!important;color:rgba(255,255,255,.74)!important;}
/* engage photos span full row height (desktop) */
.jk-engage__inner{align-items:stretch;}
.jk-engage__img{aspect-ratio:auto;min-height:340px;height:auto;}
@media(max-width:760px){.jk-engage__img{aspect-ratio:16/10;min-height:0;}}

/* region-aware spotlight: GM band / "who you'd work with" swaps content by AU|UK|US */
.jvat-gm-band__region{display:none;grid-template-columns:minmax(230px,320px) minmax(0,1fr);gap:clamp(28px,4vw,60px);align-items:center;}
html:not([data-jvat-region]) .jvat-gm-band__region[data-region="au"]{display:grid;}
html[data-jvat-region="au"] .jvat-gm-band__region[data-region="au"]{display:grid;}
html[data-jvat-region="uk"] .jvat-gm-band__region[data-region="uk"]{display:grid;}
html[data-jvat-region="us"] .jvat-gm-band__region[data-region="us"]{display:grid;}
.jvat-gm-band__region-tag{display:inline-block;margin:0 0 14px;color:#0f5a49;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;border:1px solid rgba(0,56,47,.22);padding:4px 10px;}
/* engage media: FEATURED FILM (lead "Selected engagement", click-to-play showcase)
   Full-width 16:9 stage under a copy head -- larger than the photo slots in both
   dimensions, so it reads as the page headline. Box ratio == source ratio (16:9),
   so object-fit:cover fills edge-to-edge with no crop and no letterbox. */
.jk-engage__row--film .jk-engage__inner{display:block;}          /* single column -- overrides the 2-col grid + align-items:stretch */
.jk-engage__film-head{max-width:70ch;margin:0 0 clamp(20px,2.4vw,30px);}
.jk-engage__img--video{aspect-ratio:16/9;min-height:0;height:auto;padding:0;overflow:hidden;background:#000;border:1px solid rgba(0,56,47,.16);}
.jk-engage__img--video:before{display:none;}                     /* no green photo-wash over real footage */
.jk-engage__img--video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#000;}
/* provenance + play cue -- same uppercase tracked caps as the photo corner tags,
   pinned top-left so it clears the native control bar (no JS). Two classes (0,2,0)
   to beat the base ".jk-engage__img span" rule. */
.jk-engage__img--video .jk-engage__playtag{position:absolute;z-index:3;top:14px;left:14px;display:inline-flex;align-items:center;gap:8px;padding:7px 12px;background:rgba(0,56,47,.72);border:1px solid rgba(139,235,179,.5);color:#fff;font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;text-shadow:0 1px 12px rgba(0,0,0,.5);pointer-events:none;}
.jk-engage__img--video .jk-engage__playtag svg{width:11px;height:11px;flex:none;fill:#8bebb3;}
@media(max-width:760px){.jk-engage__row--film .jk-engage__inner{display:block;}.jk-engage__img--video{aspect-ratio:16/9;}}

/* ===== capability card: "one level down" sub-capability detail (native <details>) =====
   The overview .jk-points stay visible for the at-a-glance scan; this discloses the
   full sub-capability depth persisted from the legacy our-capabilities taxonomy. */
.jk-capmore{margin-top:20px;border-top:1px solid var(--line);}
.jk-lt .jk-capmore{border-top-color:rgba(0,56,47,.14);}
.jk-capmore>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:11px;padding:15px 0 3px;color:var(--green);font-size:15px;font-weight:500;letter-spacing:.01em;}
.jk-lt .jk-capmore>summary{color:#0a7d54;}
.jk-capmore>summary::-webkit-details-marker{display:none;}
.jk-capmore>summary:hover{color:#00bf6f;}
.jk-lt .jk-capmore>summary:hover{color:#00382f;}
.jk-capmore__chev{width:8px;height:8px;flex:none;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .2s ease;margin-top:-3px;}
.jk-capmore[open]>summary .jk-capmore__chev{transform:rotate(225deg);margin-top:2px;}
.jk-capmore__body{columns:2;column-gap:clamp(26px,3.4vw,54px);margin-top:20px;padding-top:4px;}
@media(max-width:640px){.jk-capmore__body{columns:1;}}
.jk-subcap{break-inside:avoid;-webkit-column-break-inside:avoid;page-break-inside:avoid;margin:0 0 24px;}
.jk-subcap h4{margin:0 0 9px;color:#fff;font-size:15.5px;font-weight:500;letter-spacing:-.005em;}
.jk-lt .jk-subcap h4{color:var(--dg);}
.jk-subcap ul{margin:0;padding:0;list-style:none;}
.jk-subcap li{position:relative;padding:4px 0 4px 19px;color:var(--tx);font-size:14px;line-height:1.5;}
.jk-lt .jk-subcap li{color:#41615a;}
.jk-subcap li:before{content:"\00BB";position:absolute;left:0;top:4px;color:var(--green);font-weight:700;}
.jk-lt .jk-subcap li:before{color:#0a7d54;}

/* capability card: per-subsection expandables ("What this covers" as one
   accordion row per sub-capability — same native-details idiom as .jvat-value) */
.jk-capdetail{margin-top:20px;border-top:1px solid var(--line);}
.jk-lt .jk-capdetail{border-top-color:rgba(0,56,47,.14);}
.jk-capdetail__label{margin:16px 0 6px;font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--mint);}
.jk-lt .jk-capdetail__label{color:#0a7d54;}
.jk-subacc{border-bottom:1px solid var(--line);}
.jk-lt .jk-subacc{border-bottom-color:rgba(0,56,47,.12);}
.jk-subacc:last-of-type{border-bottom:0;}
.jk-subacc>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 2px;}
.jk-subacc>summary::-webkit-details-marker{display:none;}
.jk-subacc>summary h4{margin:0;font-size:16.5px;font-weight:500;letter-spacing:-.005em;color:#fff;}
.jk-lt .jk-subacc>summary h4{color:var(--dg);}
.jk-subacc>summary:hover h4{color:var(--green);}
.jk-lt .jk-subacc>summary:hover h4{color:#0a7d54;}
.jk-subacc__chev{width:8px;height:8px;flex:none;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .2s ease;color:var(--green);margin-right:2px;}
.jk-lt .jk-subacc__chev{color:#0a7d54;}
.jk-subacc[open]>summary .jk-subacc__chev{transform:rotate(225deg);}
.jk-subacc>ul{margin:0;padding:2px 0 16px;list-style:none;}
.jk-subacc>ul li{position:relative;padding:4px 0 4px 19px;color:var(--tx);font-size:14px;line-height:1.5;}
.jk-lt .jk-subacc>ul li{color:#41615a;}
.jk-subacc>ul li:before{content:"\00BB";position:absolute;left:0;top:4px;color:var(--green);font-weight:700;}
.jk-lt .jk-subacc>ul li:before{color:#0a7d54;}

/* region-swapped terminology (AU/US baseline vs UK). Wraps two inline variants;
   the UK one shows only when the region switcher selects UK. Hidden variant is
   display:none so it is excluded from screen readers, copy and find-in-page.
   e.g. <span class="jk-rgn"><span>program</span><span data-uk>programme</span></span> */
.jk-rgn>[data-uk]{display:none;}
html[data-jvat-region="uk"] .jk-rgn>:not([data-uk]){display:none;}
html[data-jvat-region="uk"] .jk-rgn>[data-uk]{display:inline;}

/* ===== long-form document pages (privacy, terms of business, statements, reports) =====
   Sits inside a .jk-section.jk-lt.jk-bg-white; measure-capped for readability. */
.jk-doc{max-width:78ch;}
.jk-doc__meta{margin:0 0 clamp(26px,3vw,38px);padding-bottom:16px;border-bottom:1px solid rgba(0,56,47,.14);color:#0a7d54;font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;}
.jk-doc h2{margin:clamp(32px,4vw,48px) 0 12px;color:var(--dg);font-size:clamp(19px,1.9vw,25px);font-weight:400;line-height:1.25;letter-spacing:-.01em;}
.jk-doc h2:first-child{margin-top:0;}
.jk-doc h3{margin:clamp(24px,3vw,34px) 0 10px;color:var(--dg);font-size:clamp(16px,1.5vw,19px);font-weight:500;line-height:1.3;}
.jk-doc h4{margin:22px 0 8px;color:var(--dg);font-size:15.5px;font-weight:600;}
.jk-doc p{margin:0 0 13px;color:#41615a;font-size:15.5px;line-height:1.68;}
.jk-doc ul{margin:0 0 16px;padding:0;list-style:none;}
.jk-doc li{position:relative;margin:0 0 8px;padding-left:22px;color:#41615a;font-size:15.5px;line-height:1.6;}
.jk-doc li:before{content:"\00BB";position:absolute;left:0;top:0;color:#0a7d54;font-weight:700;}
.jk-doc a{color:#0a7d54;}
/* scanned/paged report presented as page images */
.jk-doc__pages{display:grid;gap:clamp(14px,2vw,22px);max-width:940px;}
.jk-doc__pages figure{margin:0;}
.jk-doc__pages img{width:100%;height:auto;display:block;border:1px solid rgba(0,56,47,.16);background:#fff;}
.jk-doc__pages figcaption{margin:6px 0 0;color:#0a7d54;font-size:12px;letter-spacing:.12em;text-transform:uppercase;}

/* three-up proof grid (e.g. Industries "Sectors we work in" tiles) */
@media(min-width:760px){.jk-proof--three{grid-template-columns:repeat(3,1fr);}}

/* short lede + inline action line under a section head (e.g. "Where we work") */
.jk-leadline{margin:clamp(20px,2.4vw,30px) 0 0;max-width:70ch;font-size:clamp(16px,1.3vw,18px);line-height:1.6;}
.jk-lt .jk-leadline{color:#41615a;}
.jk-leadline .jk-cap__cta{margin-top:14px;}
