/* Generated; edit original source stylesheets. */

/* assets/css/launch-pages.css */

/* assets/css/design-tokens.css */

/* assets/css/fonts.css */
@font-face {
  font-family:"Lora";
  src:url("/assets/fonts/lora-latin-400-normal.woff2") format("woff2");
  font-display:swap;
  font-weight:400;
}

@font-face {
  font-family:"Lora";
  src:url("/assets/fonts/lora-latin-600-normal.woff2") format("woff2");
  font-display:swap;
  font-weight:600;
}

@font-face {
  font-family:"IBM Plex Sans";
  src:url("/assets/fonts/ibm-plex-sans-latin-400-normal.woff2") format("woff2");
  font-display:swap;
  font-weight:400;
}

@font-face {
  font-family:"IBM Plex Sans";
  src:url("/assets/fonts/ibm-plex-sans-latin-500-normal.woff2") format("woff2");
  font-display:swap;
  font-weight:500;
}

@font-face {
  font-family:"IBM Plex Sans";
  src:url("/assets/fonts/ibm-plex-sans-latin-600-normal.woff2") format("woff2");
  font-display:swap;
  font-weight:600;
}


:root {
  --navy:#07182b;
  --navy-deep:#04111f;
  --navy-soft:#18304d;
  --gold:#815f17;
  --gold-line:#c79a43;
  --gold-light:#e5c77f;
  --paper:#fcfaf5;
  --paper-deep:#f2ede3;
  --white:#fff;
  --ink:#10233f;
  --muted:#52647a;
  --line:#d9d1c1;
  --line-light:#e8e2d6;
  --serif:"Lora",Georgia,serif;
  --sans:"IBM Plex Sans",Arial,sans-serif;
  --gap-sm:8px;
  --gap-md:16px;
  --gap-lg:24px;
  --card-padding:clamp(18px,3vw,24px);
  --section-space:clamp(32px,5vw,64px);
  --action-height:48px;
  --action-padding:12px 24px;
  --heading-leading:1.2;
  --space-1:.5rem;
  --space-2:clamp(2rem,4vw,3.5rem);
  --space-3:clamp(3rem,6vw,5rem);
  --content-width:1260px;
  --reading-width:760px;
  --header-height:88px;
  --radius-sm:2px;
  --shadow-soft:0 8px 24px rgba(7,24,43,.05);
  --shadow-lift:0 24px 54px rgba(7,24,43,.14);
  --motion-fast:160ms;
  --motion-base:240ms;
  --focus-ring:3px solid var(--gold-line);
}

@media(prefers-reduced-motion:reduce) { :root{--motion-fast:0ms;--motion-base:0ms} }

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--navy);font-family:var(--sans);line-height:1.65}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.skip{position:absolute;left:-999px;top:12px;z-index:100;background:var(--navy);color:#fff;padding:10px 14px}
.skip:focus{left:12px}
.hero{padding:90px max(5vw,28px);background:linear-gradient(105deg,var(--paper) 0 66%,var(--paper-deep) 66%);border-bottom:1px solid var(--line)}
.wrap{max-width:1180px;margin:auto}
.eyebrow{color:var(--gold);font-size:.72rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase}
.hero h1{max-width:920px;margin:20px 0 25px;font:600 clamp(3rem,6vw,6.3rem)/1 var(--serif);letter-spacing:-.045em}
.hero .lead{max-width:780px;color:var(--muted);font-size:1.08rem}
.facts{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.facts span{padding:8px 12px;border:1px solid var(--line);background:rgba(255,255,255,.55);font-size:.76rem}
.section{padding:82px max(5vw,28px);border-bottom:1px solid var(--line)}
.section.alt{background:var(--paper-deep)}
.section-head{display:grid;grid-template-columns:180px 1fr;gap:40px;align-items:start;margin-bottom:40px}
.section h2{max-width:850px;margin:0;font:600 clamp(2rem,4vw,4rem)/1.08 var(--serif);letter-spacing:-.035em}
.section-intro{max-width:760px;color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.card{padding:26px;border:1px solid var(--line);background:#fff}
.card small{color:var(--gold);font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.card h3{margin:10px 0 8px;font:600 1.35rem var(--serif)}
.card p{margin:0;color:var(--muted);font-size:.88rem}
.evidence{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.evidence article{padding:28px;border-left:3px solid var(--gold);background:#fff}
.evidence h3{margin:0 0 8px;font:600 1.45rem var(--serif)}
.evidence p{margin:0;color:var(--muted)}
.cta{padding:64px max(5vw,28px);background:var(--navy);color:#fff}
.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}
.cta h2{max-width:700px;margin:0;font:600 clamp(2rem,4vw,3.6rem)/1.08 var(--serif)}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 18px;border:1px solid var(--gold);background:var(--gold);color:var(--navy);font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.footer{padding:36px max(5vw,28px);display:flex;justify-content:space-between;gap:28px;background:#041326;color:#bac5d2;font-size:.76rem}
.footer nav{display:flex;flex-wrap:wrap;gap:18px}
.footer a:hover{color:var(--gold-light)}
@media(max-width:760px){.hero{padding-top:65px;background:var(--paper)}
.section-head,.cards,.evidence{grid-template-columns:1fr}
.cta .wrap,.footer{align-items:flex-start;flex-direction:column}
.section{padding-block:64px}}
.hero .eyebrow,.section .eyebrow,.card small{color:#815f17}
body{background-color:var(--paper);background-image:radial-gradient(circle at 12% 4%,rgba(182,138,47,.055),transparent 28rem),linear-gradient(rgba(7,26,50,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(7,26,50,.018) 1px,transparent 1px);background-size:auto,32px 32px,32px 32px}
.button,.card{transition:color .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .22s ease,transform .22s ease}
.button:hover,.button:focus-visible{transform:translateY(-2px);box-shadow:0 12px 24px rgba(7,26,50,.14)}
.card:hover,.card:focus-within{border-color:rgba(182,138,47,.65);box-shadow:0 22px 48px rgba(7,26,50,.09);transform:translateY(-3px)}
@media(max-width:760px){.hero{padding-top:54px}}
@media(max-width:520px){body{background-size:auto,24px 24px,24px 24px}}
@media(prefers-reduced-motion:reduce){.button,.card{transition:none}
.button:hover,.button:focus-visible,.card:hover,.card:focus-within{transform:none}}

/* assets/css/growth-pages.css */
.growth-hero{padding:clamp(4.5rem,9vw,8rem) max(5vw,28px);border-bottom:1px solid var(--line);background:radial-gradient(circle at 82% 20%,rgba(229,199,127,.2),transparent 24rem),linear-gradient(125deg,var(--navy-deep),var(--navy) 62%,#102d4d);color:#fff}.growth-hero h1{max-width:1000px;margin:20px 0 24px;font:600 clamp(3rem,7vw,6.8rem)/.98 var(--serif);letter-spacing:-.055em}.growth-hero .lead{max-width:800px;margin:0;color:#c7d2dd;font-size:clamp(1rem,1.8vw,1.2rem);line-height:1.75}.growth-section{padding:var(--space-3) max(5vw,28px);border-bottom:1px solid var(--line);background:var(--paper)}.growth-section.alt{background:var(--paper-deep)}.growth-section h2{font-family:var(--serif)}.profile-grid,.split-layout,.case-grid{display:grid;grid-template-columns:minmax(280px,.7fr) minmax(0,1.3fr);gap:clamp(2rem,6vw,6rem);align-items:start}.profile-portrait{width:100%;max-height:660px;object-fit:contain;object-position:center bottom;border:1px solid var(--line);background:#fff}.profile-grid>div>h2,.split-layout h2{margin:0 0 24px;font:600 clamp(2rem,4vw,4rem)/1.05 var(--serif)}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:24px 0;border:1px solid var(--line)}.stat-grid span{min-height:112px;padding:18px;display:grid;align-content:center;border-right:1px solid var(--line);color:var(--muted);font-size:.72rem;text-transform:uppercase}.stat-grid span:last-child{border:0}.stat-grid strong{display:block;color:var(--gold);font:600 1.8rem var(--serif)}.action-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.button.secondary{background:transparent;color:inherit}.growth-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.growth-cards.four{grid-template-columns:repeat(4,minmax(0,1fr))}.growth-cards>a,.growth-cards>article{min-height:250px;padding:28px;border:1px solid var(--line);border-top:4px solid var(--gold-line);background:#fff;box-shadow:var(--shadow-soft)}.growth-cards>a:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift)}.growth-cards small,.case-sequence small{color:var(--gold);font-weight:700;letter-spacing:.1em;text-transform:uppercase}.growth-cards h2,.growth-cards h3{margin:18px 0 12px;font:600 1.55rem/1.2 var(--serif)}.growth-cards p,.split-layout p{color:var(--muted);line-height:1.65}.check-list{padding:0;margin:0;list-style:none}.check-list li{position:relative;padding:13px 0 13px 30px;border-bottom:1px solid var(--line);line-height:1.55}.check-list li::before{content:"✓";position:absolute;left:0;color:var(--gold);font-weight:700}.link-stack{display:grid}.link-stack a{min-height:60px;padding:16px 0;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);font-weight:600}.link-stack a span{color:var(--gold)}.growth-cta{padding:var(--space-2) max(5vw,28px);background:var(--navy);color:#fff}.growth-cta h2{margin:0;font:600 clamp(2rem,4vw,4rem)/1.1 var(--serif)}.boundary{max-width:900px;color:#d2dce7;line-height:1.7}.project-index{display:grid;gap:32px}.project-index article{display:grid;grid-template-columns:52px minmax(260px,.8fr) 1fr;gap:26px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line)}.project-index article>span{color:var(--gold);font:600 1.3rem var(--serif)}.project-index img{width:100%;aspect-ratio:1.5;object-fit:cover;object-position:top;border:1px solid var(--line)}.project-index h2{margin:0 0 8px;font:600 clamp(2rem,4vw,3.5rem)/1 var(--serif)}.project-index p{color:var(--muted);line-height:1.65}.case-grid{grid-template-columns:minmax(300px,1fr) minmax(0,1fr)}.case-grid figure{position:sticky;top:110px;margin:0}.case-grid figure img{width:100%;border:1px solid var(--line);background:#fff}.case-grid figcaption{padding:10px;color:var(--muted);font-size:.72rem}.case-sequence{display:grid;gap:14px}.case-sequence article{padding:24px;border-left:3px solid var(--gold-line);background:#fff}.case-sequence h2{margin:7px 0 10px;font:600 1.45rem var(--serif)}.case-sequence p{margin:0;color:var(--muted);line-height:1.65}.glossary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.glossary-grid article{padding:26px;border:1px solid var(--line);background:#fff}.glossary-grid h2{margin:0 0 10px;color:var(--gold);font:600 1.45rem var(--serif)}.glossary-grid p{margin:0;color:var(--muted);line-height:1.65}.static-home-shell{min-height:100vh;padding:10vw 7vw;background:var(--navy);color:#fff}.static-home-shell section{max-width:980px}.static-home-shell h1{margin:.2em 0;font:600 clamp(3.5rem,8vw,7rem)/1 var(--serif)}.static-home-shell h2{color:var(--gold-light);font:600 clamp(1.6rem,3vw,3rem)/1.2 var(--sans)}.static-home-shell p,.static-home-shell nav{max-width:760px;color:#c7d2dd;line-height:1.75}.static-home-shell a{color:#fff;text-decoration:underline;text-underline-offset:4px}.recruiter-print{min-height:70vh}
.utm-builder{display:grid;gap:16px}.utm-builder label{display:grid;gap:7px;color:var(--gold);font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.utm-builder input,.utm-result textarea{width:100%;min-height:48px;padding:12px;border:1px solid #b8aa91;background:#fff;color:var(--navy);font:500 .92rem var(--sans)}.utm-result textarea{min-height:130px;resize:vertical;line-height:1.5}.utm-result h2{margin-top:0}.utm-result h3{margin-top:32px;font-family:var(--serif)}
@media(max-width:900px){.profile-grid,.split-layout,.case-grid{grid-template-columns:1fr}.growth-cards,.growth-cards.four{grid-template-columns:repeat(2,minmax(0,1fr))}.project-index article{grid-template-columns:40px 1fr}.project-index article>div{grid-column:2}.case-grid figure{position:static}.stat-grid{grid-template-columns:repeat(2,1fr)}.stat-grid span:nth-child(2){border-right:0}.stat-grid span:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:600px){.growth-hero,.growth-section,.growth-cta{padding-inline:20px}.growth-cards,.growth-cards.four,.glossary-grid{grid-template-columns:1fr}.project-index article{grid-template-columns:1fr}.project-index article>span,.project-index article>div{grid-column:auto}.stat-grid{grid-template-columns:1fr}.stat-grid span{border-right:0;border-bottom:1px solid var(--line)}.action-row{display:grid}.action-row .button{width:100%}}

.project-index-visual{display:grid;gap:10px}.project-index .project-index-visual>img:not(.project-logo){width:100%;aspect-ratio:1.5;object-fit:cover;object-position:top}.project-index .project-logo,.case-brand .project-logo{display:block;width:min(360px,100%);height:auto;aspect-ratio:15/4;object-fit:contain;border:1px solid rgba(182,138,47,.35);background:#fbf8f1}.case-brand{margin-bottom:26px}.case-brand .project-logo{box-shadow:0 14px 34px rgba(7,24,43,.08)}
@media print{.masthead,.footer,.no-print{display:none!important}.growth-hero{padding:20px 0;background:#fff!important;color:#07182b}.growth-hero .lead{color:#52647a}.growth-section{padding:20px 0}.recruiter-print{font-size:10pt}.stat-grid span{min-height:70px}.button{display:none!important}}
.case-evidence{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:36px}.case-evidence>section{padding:28px;border:1px solid var(--line);border-top:4px solid var(--gold-line);background:#fff}.case-evidence h2{margin:10px 0 18px;font:600 clamp(1.6rem,3vw,2.35rem)/1.1 var(--serif)}.case-evidence p{color:var(--muted);line-height:1.7}.collection-switcher{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-bottom:28px;border:1px solid var(--line);background:var(--line)}.collection-switcher a{padding:17px;background:#fff;color:var(--navy);font-size:.72rem;font-weight:700;text-align:center}.collection-switcher a.is-active{background:var(--navy);color:#fff}.collection-list{padding:0;list-style:none}.collection-list li{display:grid;grid-template-columns:50px minmax(0,1fr) auto;gap:22px;align-items:start;padding:26px 0;border-bottom:1px solid var(--line)}.collection-list>li>span{color:var(--gold);font:600 1.25rem var(--serif)}.collection-list small{color:var(--gold);font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.collection-list h2{margin:7px 0;font:600 clamp(1.35rem,2.5vw,2rem)/1.25 var(--serif)}.collection-list p{margin:0;color:var(--muted);line-height:1.6}.collection-list button{min-width:74px;min-height:42px;border:1px solid var(--navy);background:#fff;color:var(--navy);font-weight:700}.collection-list button[aria-pressed="true"]{border-color:var(--gold);background:var(--gold);color:var(--navy)}.saved-reading-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.saved-reading-list{display:grid}.saved-reading-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}.saved-reading-card small{color:var(--gold);font-weight:700}.saved-reading-card h2{margin:7px 0;font:600 clamp(1.25rem,2.6vw,1.9rem)/1.2 var(--serif)}.saved-reading-card time{color:var(--muted);font-size:.7rem}.saved-reading-card button{min-height:42px;padding:8px 12px;border:1px solid var(--navy);background:#fff;color:var(--navy);font-weight:700}.saved-reading-empty{padding:36px;border:1px solid var(--line);border-top:4px solid var(--gold);background:#fff}.saved-reading-empty h2{margin-top:0;font:600 clamp(1.8rem,4vw,3rem)/1.1 var(--serif)}.saved-reading-empty p{color:var(--muted)}
@media(max-width:700px){.case-evidence,.collection-switcher{grid-template-columns:1fr}.collection-list li{grid-template-columns:36px minmax(0,1fr)}.collection-list button{grid-column:2;width:max-content}.saved-reading-header,.saved-reading-card{align-items:flex-start;flex-direction:column}.saved-reading-card{display:flex}.saved-reading-card button{width:100%}}

/* Match the site's navy, cream and gold editorial language. */
.growth-hero h1{font-family:var(--serif);font-size:clamp(2.25rem,4.7vw,4rem);line-height:1.1;letter-spacing:-.035em}
.growth-hero{padding-top:clamp(2.5rem,5vw,4.5rem);padding-bottom:clamp(2rem,4vw,3.5rem)}
.profile-grid>div>h2,.split-layout h2{font-size:clamp(1.75rem,2.7vw,2.4rem)}

/* assets/css/discovery.css */
.nav-search kbd{margin-left:5px;color:var(--muted);font:500 .62rem var(--sans)}
.discovery-page{background:var(--paper);color:var(--ink);font-family:var(--sans)}
.discovery-hero,.path-hero{padding:84px max(5vw,28px);border-bottom:1px solid var(--line);background:linear-gradient(110deg,var(--paper) 0 72%,var(--paper-deep) 72%)}
.discovery-hero>*{max-width:900px}
.discovery-hero h1,.path-hero h1,.confirmation-panel h1{margin:18px 0 24px;font:600 clamp(3rem,7vw,6.4rem)/.98 var(--serif);letter-spacing:-.05em}
.discovery-hero p,.path-hero>p{max-width:760px;color:var(--muted);font-size:1.05rem;line-height:1.75}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:12px 18px;border:1px solid var(--gold-line);background:var(--navy);color:#fff;font-weight:600;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}
.button.is-secondary{background:transparent;color:var(--navy)}
.featured-strip,.knowledge-browser,.path-grid,.path-steps,.path-tools,.resource-library,.newsletter-page>.newsletter-signup,.newsletter-archive,.confirmation-panel{max-width:1240px;margin:0 auto;padding:72px max(28px,4vw)}
.featured-strip>header,.knowledge-browser>header,.path-steps>header,.resource-library>header{display:grid;grid-template-columns:210px 1fr;gap:28px;margin-bottom:34px}
.featured-strip h2,.knowledge-browser h2,.path-steps h2,.path-tools h2,.resource-library>header h2,.newsletter-signup h2,.newsletter-archive h2{margin:0;font:600 clamp(2.1rem,4vw,4.1rem)/1.05 var(--serif);letter-spacing:-.04em}
.featured-strip>div{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.featured-strip a{display:grid;align-content:start;gap:12px;min-height:210px;padding:22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.featured-strip small,.featured-strip span,.path-card>span,.knowledge-card>a>span,.resource-grid article>span{color:var(--gold);font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.featured-strip strong{font:600 1.12rem/1.4 var(--serif)}
.featured-strip span{margin-top:auto}
.featured-strip a:hover,.featured-strip a:focus-visible{background:var(--navy);color:#fff}
.knowledge-browser{border-top:1px solid var(--line)}
.knowledge-browser>header p{color:var(--muted)}
.knowledge-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:10px;margin-bottom:32px;padding:18px;border:1px solid var(--line);background:var(--paper-deep)}
.knowledge-filters label{display:grid;gap:7px;color:var(--muted);font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.knowledge-filters select,.knowledge-filters input{width:100%;min-height:44px;padding:9px 10px;border:1px solid #b8aa91;background:#fff;color:var(--navy);font:500 .78rem var(--sans)}
.knowledge-filters button{align-self:end;min-height:44px;padding:9px 13px;border:1px solid var(--navy);background:transparent;color:var(--navy);font-weight:600;cursor:pointer}
.knowledge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.knowledge-card{min-width:0;border-top:3px solid var(--gold-line)}
.knowledge-card[hidden]{display:none}
.knowledge-card a{display:grid;height:100%;grid-template-rows:auto auto auto 1fr auto;gap:9px;padding-top:12px}
.knowledge-card img{width:100%;aspect-ratio:1.55;object-fit:cover;border:1px solid var(--line);background:#fff}
.knowledge-card h2{margin:3px 0;font:600 1.26rem/1.32 var(--serif)}
.knowledge-card p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.6}
.knowledge-card small{padding-top:12px;color:var(--muted);font-size:.67rem}
.knowledge-card a:hover h2,.knowledge-card a:focus-visible h2{color:var(--gold)}
.knowledge-empty{padding:48px;border:1px solid var(--line);background:#fff}
.knowledge-empty h3{margin:0 0 8px;font:600 1.7rem var(--serif)}
.path-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.path-card{display:grid;align-content:start;min-height:330px;padding:30px;border-top:3px solid var(--gold-line);background:#fff;box-shadow:0 12px 30px rgba(7,26,50,.06)}
.path-card h2{margin:20px 0 12px;font:600 2rem/1.08 var(--serif)}
.path-card p{color:var(--muted);line-height:1.65}
.path-card small{margin-top:auto;padding-top:22px;color:var(--muted)}
.path-card a{display:inline-block;margin-top:20px;color:var(--gold);font-weight:700}
.path-hero>a{display:inline-block;margin-bottom:38px;color:var(--muted)}
.path-hero dl{max-width:900px;display:grid;grid-template-columns:2fr 1fr;gap:1px;margin:34px 0 16px;background:var(--line)}
.path-hero dl div{padding:18px;background:#fff}
.path-hero dt{color:var(--gold);font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.path-hero dd{margin:7px 0 0}
.path-progress{max-width:900px;height:5px;background:#ddd4c2}
.path-progress span{display:block;width:0;height:100%;background:var(--gold-line);transition:width .25s ease}
.path-steps ol{margin:0;padding:0;list-style:none}
.path-steps li{display:grid;grid-template-columns:54px 1fr auto;gap:26px;align-items:start;padding:28px 0;border-top:1px solid var(--line)}
.path-steps li>span{color:var(--gold);font:600 1.5rem var(--serif)}
.path-steps h3{margin:6px 0 8px;font:600 1.45rem/1.3 var(--serif)}
.path-steps p{max-width:760px;margin:0;color:var(--muted);font-size:.82rem;line-height:1.6}
.path-steps small{color:var(--gold);font-size:.64rem;font-weight:700;text-transform:uppercase}
.path-steps button{min-height:44px;padding:10px 13px;border:1px solid var(--line);background:#fff;color:var(--navy);font-weight:600;cursor:pointer}
.path-steps li.is-complete{opacity:.72}
.path-steps li.is-complete button{border-color:var(--gold-line);background:var(--navy);color:#fff}
.path-tools{border-top:1px solid var(--line)}
.path-tools>div{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:28px}
.path-tools a{display:grid;gap:9px;padding:24px;border:1px solid var(--line);background:#fff}
.path-tools strong{font:600 1.35rem var(--serif)}
.path-tools span{color:var(--muted);font-size:.8rem}
.path-tools small{color:var(--gold);font-weight:700}
.path-index-link{max-width:1240px;margin:auto;padding:0 max(28px,4vw) 52px;text-align:right;font-weight:700}
.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.resource-grid article{display:grid;align-content:start;min-height:290px;padding:26px;border:1px solid var(--line);background:#fff}
.resource-grid h2{margin:15px 0 10px;font:600 1.38rem/1.3 var(--serif)}
.resource-grid p{color:var(--muted);font-size:.8rem;line-height:1.65}
.resource-grid small{margin-top:auto;color:var(--muted)}
.resource-grid a{display:inline-block;margin-top:20px;color:var(--gold);font-weight:700}
.newsletter-signup{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;padding:58px;border-top:3px solid var(--gold-line);background:var(--navy);color:#fff}
.newsletter-signup .eyebrow{color:#dfc27d}
.newsletter-signup p{color:#c3ceda;line-height:1.65}
.newsletter-signup form{align-self:center}
.newsletter-signup label{display:block;margin-bottom:8px;color:#dfc27d;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.newsletter-form-row{display:grid;grid-template-columns:1fr auto}
.newsletter-form-row input{min-width:0;min-height:50px;padding:13px;border:1px solid #d6c49d;background:#fff;color:var(--navy);font:500 1rem var(--sans)}
.newsletter-form-row button{min-height:50px;padding:12px 18px;border:1px solid var(--gold-line);background:#dfc27d;color:var(--navy);font-weight:700;cursor:pointer}
.newsletter-form-row button[disabled]{cursor:wait;opacity:.7}
.newsletter-consent{font-size:.68rem!important}
.newsletter-consent a{text-decoration:underline}
.newsletter-status{min-height:1.3em;margin-bottom:0!important;font-size:.75rem}
.newsletter-status.is-error{color:#ffd2cc}
.newsletter-status.is-success{color:#e8d69f}
.newsletter-honeypot{position:absolute!important;left:-9999px!important}
.newsletter-archive{border-top:1px solid var(--line)}
.newsletter-archive p{max-width:680px;color:var(--muted)}
.newsletter-archive a{font-weight:700}
.confirmation-panel{min-height:60vh}
.confirmation-panel p{max-width:660px;color:var(--muted);font-size:1.05rem}
.confirmation-panel .button{margin-top:20px}
.global-search{width:min(980px,calc(100% - 28px));max-height:min(88vh,780px);padding:0;border:1px solid var(--gold-line);background:var(--paper);color:var(--navy);box-shadow:0 32px 90px rgba(2,15,31,.5)}
.global-search::backdrop{background:rgba(3,16,33,.78);backdrop-filter:blur(4px)}
.global-search-panel{padding:28px}
.global-search header{display:flex;justify-content:space-between;gap:20px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.global-search h2{margin:5px 0 0;font:600 clamp(2rem,5vw,3.6rem)/1 var(--serif)}
.global-search header button{width:44px;height:44px;border:1px solid var(--line);background:#fff;color:var(--navy);font-size:1.5rem;cursor:pointer}
.global-search label{display:block;margin-top:20px}
.global-search label span{display:block;margin-bottom:7px;color:var(--gold);font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.global-search input{width:100%;min-height:56px;padding:14px 16px;border:1px solid #b8aa91;background:#fff;color:var(--navy);font:600 1rem var(--sans)}
.global-search-status{margin:12px 0;color:var(--muted);font-size:.75rem}
.global-search-groups{max-height:470px;overflow:auto}
.search-group{margin-top:18px}
.search-group h3{margin:0 0 8px;color:var(--gold);font-size:.68rem;letter-spacing:.09em;text-transform:uppercase}
.search-group a{display:grid;grid-template-columns:1fr auto;gap:5px 14px;padding:13px 14px;border-top:1px solid var(--line);background:#fff}
.search-group a:focus-visible,.search-group a:hover{box-shadow:inset 4px 0 var(--gold-line)}
.search-group strong{font:600 1rem var(--serif)}
.search-group span{grid-column:1;color:var(--muted);font-size:.72rem}
.search-group small{grid-column:2;grid-row:1/3;color:var(--muted);font-size:.65rem}
.search-suggestions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.search-suggestions button{min-height:40px;padding:8px 10px;border:1px solid var(--line);background:#fff;color:var(--navy);cursor:pointer}
.path-hero>a{display:block;width:max-content}
@media(max-width:1000px){.knowledge-filters{grid-template-columns:1fr 1fr}
.knowledge-filters button{align-self:stretch}
.knowledge-grid,.resource-grid{grid-template-columns:1fr 1fr}
.featured-strip>div{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.discovery-hero,.path-hero{padding:60px 22px;background:var(--paper)}
.featured-strip,.knowledge-browser,.path-grid,.path-steps,.path-tools,.resource-library,.newsletter-page>.newsletter-signup,.newsletter-archive,.confirmation-panel{padding:54px 22px}
.featured-strip>header,.knowledge-browser>header,.path-steps>header,.resource-library>header{grid-template-columns:1fr;gap:8px}
.path-grid,.knowledge-grid,.resource-grid,.newsletter-signup{grid-template-columns:1fr}
.path-steps li{grid-template-columns:40px 1fr}
.path-steps button{grid-column:2}
.path-tools>div{grid-template-columns:1fr}
.newsletter-signup{gap:28px}}
@media(max-width:520px){.featured-strip>div,.knowledge-filters{grid-template-columns:1fr}
.newsletter-form-row{grid-template-columns:1fr}
.global-search-panel{padding:20px}
.global-search-groups{max-height:54vh}
.search-group a{grid-template-columns:1fr}
.search-group small{grid-column:1;grid-row:auto}
.path-hero dl{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.path-progress span{transition:none}
.global-search::backdrop{backdrop-filter:none}}
@media(max-width:520px){.discovery-page{overflow-x:clip}
.discovery-hero h1,.path-hero h1{font-size:clamp(2.6rem,14vw,4rem);overflow-wrap:anywhere}
.knowledge-filters{gap:12px}
.knowledge-filters label,.knowledge-filters input,.knowledge-filters select,.knowledge-filters button{min-width:0;width:100%}
.knowledge-grid,.resource-grid{gap:14px}
.featured-strip,.knowledge-browser,.path-grid,.path-steps,.path-tools,.resource-library,.newsletter-page>.newsletter-signup,.newsletter-archive,.confirmation-panel{padding-inline:18px}
.path-steps li{grid-template-columns:34px minmax(0,1fr);gap:12px}
.path-steps button{width:100%}
.newsletter-signup{padding-inline:18px}
.global-search{width:calc(100% - 16px)}}
/* The shared navy, warm-white and gold theme owns these components. */
html{scroll-padding-top:104px}
body{background:var(--paper);color:var(--ink)}
.discovery-page{background:var(--paper)}
.discovery-hero{padding-block:92px;border-bottom:1px solid var(--line);background:radial-gradient(circle at 78% 24%,rgba(229,199,127,.18),transparent 22rem),linear-gradient(125deg,#061426,#0a2038 60%,#102b49);color:#fff}
.discovery-hero .eyebrow{color:var(--gold-light)}
.discovery-hero h1,.featured-strip h2,.knowledge-browser h2,.path-card h2,.knowledge-card h2,.resource-grid h2{font-family:var(--serif);font-weight:600;text-transform:none}
.discovery-hero h1{max-width:930px;color:#fff;letter-spacing:-.055em}
.discovery-hero p{max-width:760px;color:#c7d2dd;font-size:1.03rem;line-height:1.75}
.featured-strip,.knowledge-browser{border-color:var(--line)}
.featured-strip>header,.knowledge-browser>header{align-items:end;padding-bottom:26px;border-bottom:1px solid var(--line)}
.featured-strip>div{gap:14px;border:0}
.featured-strip a{min-height:250px;border:1px solid var(--line);border-top:3px solid var(--gold-line);background:#fff;box-shadow:0 12px 34px rgba(7,24,43,.06)}
.featured-strip a:hover,.featured-strip a:focus-visible{background:var(--navy);box-shadow:0 22px 48px rgba(7,24,43,.16);transform:translateY(-4px)}
.featured-strip small,.featured-strip span,.path-card>span,.knowledge-card>a>span,.resource-grid article>span{color:var(--gold)}
.knowledge-filters{position:sticky;z-index:5;top:96px;border:1px solid var(--line);border-top:3px solid var(--gold-line);border-radius:3px;background:rgba(252,250,245,.96);box-shadow:0 14px 38px rgba(7,24,43,.08);backdrop-filter:blur(14px)}
.knowledge-filters label{position:relative}
.knowledge-filters label.is-active{color:var(--gold)}
.knowledge-filters label.is-active::before{content:"";position:absolute;left:0;top:-10px;width:28px;height:2px;background:var(--gold-line)}
.knowledge-filters select,.knowledge-filters input,.knowledge-filters button{border-color:#b8aa91;border-radius:2px}
.knowledge-filters select:focus,.knowledge-filters input:focus{outline:3px solid rgba(199,154,67,.2);outline-offset:2px;border-color:var(--gold-line)}
.knowledge-filters button{border-color:var(--navy);background:var(--navy);color:#fff}
.knowledge-filters button:hover,.knowledge-filters button:focus-visible{border-color:var(--gold-line);background:var(--gold-line);color:var(--navy)}
.knowledge-grid{gap:24px}
.knowledge-card{overflow:hidden;border:1px solid var(--line);border-top:4px solid var(--gold-line);border-radius:3px;background:#fff;box-shadow:0 12px 34px rgba(7,24,43,.065);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.knowledge-card a{grid-template-rows:auto auto 1fr auto;gap:11px;padding:24px}
.knowledge-card>a>span{display:inline-flex;width:max-content;max-width:100%;padding:5px 8px;border:1px solid rgba(129,95,23,.24);background:var(--paper);line-height:1.3}
.knowledge-card h2{color:var(--navy);font-size:1.35rem;line-height:1.28}
.knowledge-card p{font-size:.82rem;line-height:1.65}
.knowledge-card small{border-top:1px solid var(--line);color:var(--muted)}
.knowledge-card:hover,.knowledge-card:focus-within{border-color:rgba(199,154,67,.75);box-shadow:0 24px 54px rgba(7,24,43,.13);transform:translateY(-4px)}
.knowledge-card a:hover h2,.knowledge-card a:focus-visible h2{color:var(--gold)}
.knowledge-empty{border-color:var(--line);border-top:4px solid var(--gold-line);background:#fff}
.path-card,.resource-grid article{border:1px solid var(--line);border-top:3px solid var(--gold-line);border-radius:3px;background:#fff;box-shadow:0 12px 34px rgba(7,24,43,.06)}
.article-reader-page{--reader-paper:#fcfaf5;--reader-ink:#10233f;--reader-muted:#52647a;--reader-line:#d9d1c1;background:var(--paper);color:var(--ink)}
.article-progress-track{height:3px;background:rgba(7,24,43,.12)}
.article-progress-track span{background:var(--gold-line)}
.article-page{max-width:1200px;padding:46px 34px 104px;background:var(--paper)}
.article-topline{margin-bottom:42px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.reader-utilities{gap:8px}
.reader-font-controls{overflow:hidden;border:1px solid var(--line);border-radius:2px}
.reader-utilities button{min-height:44px;border-color:var(--line);border-radius:2px;background:#fff;color:var(--navy);font-size:.63rem}
.reader-font-controls button{border:0}
.reader-font-controls button+button{border-left:1px solid var(--line)}
.reader-utilities button:hover,.reader-utilities button:focus-visible,.reader-utilities button[aria-pressed="true"]{border-color:var(--gold-line);background:var(--navy);color:#fff;box-shadow:none;transform:none}
.article-page-header{max-width:1000px;padding:38px 38px 42px;border:1px solid var(--line);border-left:5px solid var(--gold-line);border-bottom:1px solid var(--line);background:#fff;box-shadow:0 20px 50px rgba(7,24,43,.065)}
.article-page-header::before{display:none}
.article-page-header h1{max-width:900px;margin:19px 0;color:var(--navy);font:600 clamp(3rem,6vw,6.2rem)/.98 var(--serif);letter-spacing:-.055em;text-transform:none;text-wrap:balance}
.article-page-header>p{max-width:790px;color:var(--muted);font-size:1.04rem;line-height:1.75}
.article-meta-row{display:inline-grid;grid-template-columns:max-content;margin-top:28px;background:transparent}
.article-meta-row>div{min-width:154px;border:1px solid var(--line);border-left:3px solid var(--gold-line);background:var(--paper)}
.article-meta-row dt{color:var(--gold)}
.article-meta-row dd{color:var(--navy)}
.article-series-bar,.article-brief,.article-toc,.article-glossary{border-color:var(--line);border-radius:3px;background:#fff;box-shadow:0 12px 34px rgba(7,24,43,.05)}
.article-series-bar::before{background:var(--gold-line)}
.article-brief-number,.article-toc>span,.article-tags a,.related-card-number,.heading-anchor{color:var(--gold)!important}
.article-brief h2,.article-growth h2{font-family:var(--serif);font-weight:600;text-transform:none}
.article-reader-layout{grid-template-columns:250px minmax(0,790px);gap:58px}
.article-toc{top:104px;max-height:calc(100vh - 128px);border-top:4px solid var(--gold-line);box-shadow:0 18px 40px rgba(7,24,43,.07)}
.article-toc details{border-color:var(--line)}
.article-toc summary{color:var(--navy)}
.article-toc a{min-height:42px;color:var(--muted)}
.article-toc a span{color:var(--gold)!important}
.article-toc a::after{background:var(--gold-line)}
.article-toc a:hover,.article-toc a:focus-visible,.article-toc a.is-active{color:var(--navy)}
.article-body{padding-top:52px;color:var(--ink);font:400 calc(1.045rem * var(--reader-scale))/1.86 var(--sans)}
.article-body>*{max-width:760px}
.article-body h1,.article-body h2,.article-body h3{color:var(--navy);font-family:var(--serif);font-weight:600;text-transform:none;text-wrap:balance}
.article-body h2{margin-top:64px;padding-top:31px;border-top:1px solid var(--line);font-size:calc(2.15rem * var(--reader-scale));letter-spacing:-.035em}
.article-body h3{margin-top:38px;font-size:calc(1.38rem * var(--reader-scale))}
.article-body p,.article-body li{color:var(--ink)}
.article-body a{color:var(--gold);text-decoration-thickness:1px;text-underline-offset:4px}
.article-body a:hover{color:var(--navy)}
.article-body blockquote{padding:25px 28px;border-left:4px solid var(--gold-line);background:var(--paper-deep);color:var(--navy);font:600 1.18rem/1.65 var(--serif)}
.article-body :is(.series-card,.framework-grid>div,.related-card,.repository-card,.implementation-steps>div,.hero-stats>div,.answer-block,.responsibility-panel){border-color:var(--line);border-top:3px solid var(--gold-line);border-radius:3px;background:#fff;box-shadow:0 10px 28px rgba(7,24,43,.045)}
.article-body .framework-grid>div>span{background:var(--navy);color:var(--gold-light)}
.article-body table{min-width:680px;border-collapse:collapse;background:#fff}
.article-body th,.article-body td{border-color:var(--line)}
.article-body th{position:sticky;top:0;background:var(--navy);color:#fff}
.article-body .article-table-wrap{max-width:920px;overflow-x:auto;border:1px solid var(--line);background:#fff;box-shadow:0 12px 32px rgba(7,24,43,.05);scrollbar-color:var(--gold-line) var(--paper-deep)}
.article-body .article-sources{border-color:var(--line);border-top-color:var(--gold-line);background:#fff;box-shadow:0 14px 36px rgba(7,24,43,.06)}
.article-source-list li::before{color:var(--gold)!important}
.article-sequence{max-width:790px;gap:14px;border:0;background:transparent}
.article-sequence>a,.sequence-empty{border:1px solid var(--line);border-top:3px solid var(--gold-line);border-radius:3px;background:#fff;box-shadow:0 10px 28px rgba(7,24,43,.055)}
.article-sequence>a:hover,.article-sequence>a:focus-visible{border-color:var(--gold-line);background:var(--navy);color:#fff;box-shadow:0 20px 42px rgba(7,24,43,.14);transform:translateY(-3px)}
.article-sequence span{color:var(--gold)}
.article-sequence strong{font-family:var(--serif)}
.article-growth a{border-color:var(--line);border-top:3px solid var(--gold-line);border-radius:3px;background:#fff;box-shadow:0 10px 28px rgba(7,24,43,.05)}
.article-growth a:hover,.article-growth a:focus-visible{border-color:var(--gold-line);box-shadow:0 20px 42px rgba(7,24,43,.13);transform:translateY(-3px)}
.article-newsletter{border-top:3px solid var(--gold-line);background:var(--navy)}
.article-footer{border-top:1px solid rgba(229,199,127,.25);background:var(--navy-deep)}
.article-section-map{border-color:var(--line);background:#fff;box-shadow:0 12px 34px rgba(7,24,43,.12)}
.article-section-map button.is-active{background:var(--gold-line)}
.reader-dark{--reader-paper:#0b1827;--reader-ink:#e7edf4;--reader-muted:#b6c3d2;--reader-line:#405065}
.reader-dark .article-page{background:#0b1827}
.reader-dark .article-page-header,.reader-dark :is(.article-series-bar,.article-brief,.article-toc,.article-toc details,.article-glossary,.article-sequence>a,.sequence-empty,.article-growth a){border-color:#405065;background:#102238;color:#e7edf4}
.reader-dark .article-page-header h1,.reader-dark .article-body :is(h1,h2,h3,p,li),.reader-dark .article-series-bar strong,.reader-dark .article-sequence strong{color:#edf3f8}
.reader-dark .article-body :is(.series-card,.framework-grid>div,.related-card,.repository-card,.implementation-steps>div,.hero-stats>div,.answer-block,.responsibility-panel){border-color:#405065;background:#102238;color:#e7edf4}
@media(max-width:1000px){.knowledge-filters{position:static}
.article-reader-layout{gap:34px}
.knowledge-grid{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.article-reader-layout{display:block}
.article-toc{position:relative;top:auto;max-height:none}
.article-toc ol{columns:2}
.article-body>*{max-width:760px}
.article-page-header{margin-inline:0}}
@media(max-width:760px){html{scroll-padding-top:78px}

.discovery-hero{padding:64px 20px}
.featured-strip,.knowledge-browser{padding-inline:20px}
.featured-strip>div,.knowledge-grid{grid-template-columns:1fr}
.knowledge-filters{grid-template-columns:1fr}
.knowledge-card a{padding:21px}
.article-page{padding:28px 18px 74px}
.article-page-header{padding:27px 22px 31px}
.article-page-header h1{font-size:clamp(2.6rem,12vw,4rem)}
.article-body{font-size:calc(1rem * var(--reader-scale));line-height:1.8}
.article-body h2{font-size:calc(1.82rem * var(--reader-scale))}
.article-toc ol{columns:1}
.article-body table{min-width:620px}
.article-sequence{grid-template-columns:1fr}
.article-sequence>a:last-child{text-align:left}}
@media(max-width:420px){.reader-utilities{grid-template-columns:1fr}
.reader-utilities>button{width:100%}
.article-page-header{padding-inline:18px}
.article-body .framework-grid>div{grid-template-columns:2.7rem minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.featured-strip a,.knowledge-card,.article-sequence>a,.article-growth a{transition:none}
.featured-strip a:hover,.featured-strip a:focus-visible,.knowledge-card:hover,.knowledge-card:focus-within,.article-sequence>a:hover,.article-sequence>a:focus-visible,.article-growth a:hover,.article-growth a:focus-visible{transform:none}}
@media(forced-colors:active){.discovery-hero,.article-newsletter,.article-footer{background:Canvas;color:CanvasText}
.knowledge-card,.article-page-header,.article-toc,.article-sequence>a{border:1px solid CanvasText}}
.search-suggestion-group{margin-top:18px}
.search-suggestion-group h3{margin:0;color:var(--gold);font-size:.62rem;letter-spacing:.09em;text-transform:uppercase}
.discovery-hero .hero-actions .button{border-color:var(--gold-line);background:var(--gold-light);color:var(--navy-deep);box-shadow:0 8px 22px rgba(1,12,26,.18);transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}
.discovery-hero .hero-actions .button.is-secondary{border-color:rgba(255,255,255,.72);background:rgba(255,255,255,.04);color:#fff;box-shadow:none}
.discovery-hero .hero-actions .button:hover,.discovery-hero .hero-actions .button:focus-visible{border-color:#fff;background:#fff;color:var(--navy-deep);transform:translateY(-2px)}
.discovery-hero .hero-actions .button.is-secondary:hover,.discovery-hero .hero-actions .button.is-secondary:focus-visible{border-color:var(--gold-light);background:var(--gold-light);color:var(--navy-deep)}
@media(prefers-reduced-motion:reduce){.discovery-hero .hero-actions .button{transition:none}
.discovery-hero .hero-actions .button:hover,.discovery-hero .hero-actions .button:focus-visible{transform:none}}
.discovery-hero{padding-top:clamp(2.5rem,5vw,4.5rem);padding-bottom:clamp(2rem,4vw,3.5rem)}
.discovery-hero h1{font-size:clamp(2.25rem,4.7vw,4rem);line-height:1.1;letter-spacing:-.035em;max-width:1050px}
.discovery-page h2{font-size:clamp(1.65rem,2.6vw,2.25rem);line-height:1.2}
.discovery-page .knowledge-card h2{font-size:1.35rem;line-height:1.35}
.discovery-page .eyebrow,.discovery-page small{font-size:max(.8125rem,13px)}
.discovery-page :focus-visible{outline:3px solid #815f17;outline-offset:4px}
@media(max-width:600px){.discovery-hero h1{font-size:2.25rem}
.discovery-page .hero-actions{align-items:stretch}
.discovery-page .hero-actions a{white-space:normal}}

/* assets/css/site-field-manual.css */

body{font-family:var(--sans);background:var(--paper)}
.growth-hero,.discovery-hero,.lab-hero{background:var(--navy);color:#fcfaf5;padding:44px max(5vw,24px);min-height:0;border-bottom:0;box-shadow:none}
.growth-hero h1,.discovery-hero h1,.lab-hero h1{font:600 clamp(32px,4vw,52px)/1.2 var(--serif);letter-spacing:-.035em;max-width:1000px;margin:14px 0 18px;color:#fcfaf5}
.growth-hero .lead,.discovery-hero>p,.lab-hero>p,.lab-hero p{font:400 18px/1.7 var(--sans);max-width:820px;color:#dce3eb}
.growth-hero .eyebrow,.discovery-hero .eyebrow,.lab-hero .eyebrow{font-size:12px;letter-spacing:.12em;color:var(--gold-light)}
.growth-section,.lab-section{padding:52px max(5vw,24px);background:var(--paper)}
.growth-section.alt,.lab-section.is-white{background:var(--white)}
.section-head h2,.section-intro h2,.lab-section h2,.growth-section h2{font-family:var(--serif);line-height:1.3;letter-spacing:-.025em}
.knowledge-grid,.path-grid,.lab-card-grid,.growth-cards{gap:var(--gap-lg)}
.knowledge-card,.path-card,.lab-card,.growth-cards article{border:1px solid var(--line-light);border-radius:2px;box-shadow:none;background:#fff}
.knowledge-card a,.path-card a{padding:var(--card-padding)}
.knowledge-card h2,.path-card h2,.lab-card h3{font:600 clamp(21px,2vw,25px)/1.35 var(--serif);letter-spacing:-.02em;color:var(--ink)}
.knowledge-card p,.path-card p,.lab-card p{font-size:15px;line-height:1.7;color:var(--muted)}
.knowledge-card:hover,.path-card:hover,.lab-card:hover{border-color:var(--gold-line);box-shadow:var(--shadow-soft)}
.knowledge-filters{gap:16px;padding:var(--card-padding);background:var(--paper-deep);border:1px solid var(--line-light);box-shadow:none}
.knowledge-filters input,.knowledge-filters select{min-height:44px;border-radius:2px;font-size:15px;background:#fff;color:var(--ink)}
.featured-strip{gap:20px;margin-bottom:32px}
.button,.lab-button{border-radius:2px;min-height:44px;line-height:1.4;font-family:var(--sans)}
.profile-grid{grid-template-columns:minmax(240px,.65fr) minmax(0,1.35fr);gap:48px}
.profile-portrait{max-height:450px;object-fit:contain;border:1px solid var(--line-light);box-shadow:none}
.stat-grid span{min-height:88px}
.project-index{gap:32px}
.project-index-visual{box-shadow:none;border:1px solid var(--line-light)}
.pillar-grid{gap:var(--gap-lg)}
.pillar{box-shadow:none;border-color:var(--line-light)}
.long-section{padding-top:64px;padding-bottom:64px}
.section-intro h2{font-size:clamp(30px,3.5vw,44px)}
@media(max-width:900px){.profile-grid{grid-template-columns:1fr;gap:28px}
.profile-portrait{max-height:340px;max-width:360px}
.growth-hero,.discovery-hero,.lab-hero{padding:32px 24px}
.growth-section,.lab-section{padding:36px 24px}
.knowledge-grid,.path-grid,.lab-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.growth-hero,.discovery-hero,.lab-hero{padding:28px 20px}
.growth-hero h1,.discovery-hero h1,.lab-hero h1{font-size:32px}
.growth-section,.lab-section{padding:32px 20px}
.knowledge-grid,.path-grid,.lab-card-grid{grid-template-columns:1fr}
.knowledge-filters{padding:18px;grid-template-columns:1fr}
.hero{padding-top:32px;padding-bottom:32px}
.hero-copy h1{font-size:44px}
.hero-summary{font-size:17px}
.long-section{padding-top:40px;padding-bottom:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.project-index .project-index-visual>img:not(.project-logo){height:auto;aspect-ratio:16/9;object-fit:contain;background:#fff}
.growth-section h2,.lab-section h2{font-size:clamp(28px,3vw,40px);line-height:1.3}
[data-contact-summary]{max-width:65ch;line-height:1.65}
/* Shared, bounded connections between guides; also used by series indexes. */
.library-connections{margin:36px 0;padding:28px;border:1px solid var(--line);border-top:3px solid var(--gold-line);border-radius:4px;background:var(--paper-deep);scroll-margin-top:100px}
.library-connections h2{font:600 clamp(24px,3vw,30px)/1.3 var(--serif);color:var(--ink);margin:0 0 12px}
.library-connections>p{color:var(--muted);margin:0 0 20px;max-width:65ch}
.library-connections ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0!important;list-style:none;margin:0!important}
.library-connections li{margin:0!important;min-width:0}.library-connections li a{display:flex;flex-direction:column;height:100%;padding:20px;border:1px solid var(--line);background:var(--paper);border-radius:3px;text-decoration:none!important;color:var(--ink);overflow-wrap:anywhere}
.library-connections a>span{font:600 11px/1.5 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--gold);margin-bottom:10px}.library-connections strong{font:600 19px/1.35 var(--serif)}
.library-connections a>p{font:400 14px/1.65 var(--sans);color:var(--muted);margin:12px 0 0}.library-connections a:hover{border-color:var(--gold-line)}.library-connections a:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
@media(max-width:1000px){.library-connections ul{grid-template-columns:1fr}.library-connections{padding:20px}}
@media print{.library-connections{break-inside:avoid;background:none;padding:16px}.library-connections ul{display:block}.library-connections li a{padding:8px;border:0}.library-connections a>p{display:none}}

/* Small utility pages use the same reading width and editorial hierarchy. */
.utility-page{margin:0;font:400 17px/1.65 var(--sans);color:var(--ink);background:var(--paper)}
.utility-page main{box-sizing:border-box;width:min(900px,100%);margin:0 auto;padding:var(--section-space) 24px;min-height:60vh}
.utility-page main :is(h1,h2,h3){font-family:var(--serif);color:var(--navy);line-height:1.2}
.utility-page main h1{font-size:clamp(32px,5vw,52px)}
.utility-page main a{color:var(--gold)}
.utility-page main .button{display:inline-flex;align-items:center;min-height:48px;padding:12px 24px;background:var(--navy);color:#fff}

/* assets/css/portfolio-pages.css */
/* Supporting pages share the homepage's editorial type, palette and rhythm. */
.portfolio-page { background: var(--paper); background-image: none; color: var(--navy); font: 17px/1.65 var(--sans); }
.portfolio-page .wrap { width: min(1296px, calc(100% - 100px)); max-width: none; margin-inline: auto; }
.portfolio-page :is(h1,h2,h3) { font-family: var(--serif); font-weight: 600; letter-spacing: -.025em; }
.portfolio-page :is(.growth-hero,.discovery-hero) { padding: 66px 0 54px; background: var(--paper); color: var(--navy); border-bottom: 1px solid var(--line); }
.portfolio-page .discovery-hero { padding-inline: max(50px, calc((100vw - 1296px)/2)); }
.portfolio-page :is(.growth-hero,.discovery-hero) h1 { font-size: clamp(42px, 5vw, 72px); line-height: 1.12; margin: 18px 0 24px; color: var(--navy); max-width: 24ch; }
.portfolio-page :is(.growth-hero .lead,.discovery-hero > p) { color: var(--muted); font-size: 19px; line-height: 1.65; max-width: 760px; }
.portfolio-page :is(.growth-hero,.discovery-hero) .eyebrow { color: var(--gold); font-size: 13px; }
.portfolio-page :is(.button,.lab-button) { padding: var(--action-padding); min-height: var(--action-height); border: 1px solid var(--navy); border-radius: 3px; background: var(--navy); color: #fff; font: 600 15px/1.4 var(--sans); letter-spacing: 0; text-transform: none; box-shadow: none; transition: background-color .15s ease; }
.portfolio-page :is(.button.secondary,.button.is-secondary) { background: transparent; color: var(--navy); border-color: var(--gold); }
.portfolio-page .button:hover { background: #244057; color: #fff; transform: none; box-shadow: none; }
.portfolio-page :is(.growth-section,.profile-section) { padding: var(--section-space) 0; background: var(--paper); border-bottom: 1px solid var(--line); }
.portfolio-page .growth-section.alt { background: #f3eee4; }
.portfolio-page :is(.growth-section,.profile-section) h2 { font-size: clamp(30px,3.5vw,46px); line-height: 1.2; }
.portfolio-page .eyebrow { font-size: 12px; font-weight: 500; letter-spacing: .1em; color: var(--gold); }
.portfolio-section-heading { display: flex; align-items: center; gap: 30px; margin-bottom: 32px; }
.portfolio-section-heading h2 { margin: 0; }
.portfolio-section-heading > span { flex: 1; min-width: 30px; height: 1px; background: var(--gold); }
.section-lead { max-width: 780px; margin: -12px 0 34px; color: var(--muted); font-size: 17px; }
.text-link { display: inline-flex; gap: 10px; align-items: center; color: var(--gold); font: 600 15px var(--sans); text-decoration: underline; text-underline-offset: 5px; }
.profile-intro { padding: 58px 0 36px; border-bottom: 1px solid var(--line); }
.profile-intro-grid { display: grid; grid-template-columns: 1.35fr .8fr; gap: 64px; align-items: center; }
.profile-intro h1 { font-size: clamp(44px,5vw,72px); line-height: 1.12; margin: 20px 0 28px; max-width: 18ch; }
.profile-lead { max-width: 65ch; font: 400 20px/1.7 var(--serif); }
.work-authorisation { color: var(--navy); font-size: 15px; max-width: 63ch; border-left: 2px solid var(--gold); padding-left: 16px; margin-top: 24px; }
.work-authorisation > span { color: var(--gold); }
.profile-intro figure { margin: 0; height: 480px; align-self: end; overflow: hidden; }
.profile-intro figure img { width: 100%; height: 100%; object-fit: contain; object-position: center bottom; mix-blend-mode: multiply; }
.qualification-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.qualification-card { display: flex; flex-direction: column; padding: 28px; border: 1px solid var(--line); border-radius: 3px; background: #fffdf8; }
.qualification-card h3 { font-size: 25px; line-height: 1.35; margin: 10px 0 14px; }
.qualification-card > p { color: var(--muted); font-size: 16px; margin: 0 0 16px; }
.qualification-card .eyebrow { color: var(--gold); font-size: 11px; }
.qualification-card .text-link { margin-top: auto; padding-top: 16px; }
.qualification-date { color: var(--gold); font-size: 14px; white-space: normal; }
.iata-list { border-top: 1px solid var(--line); }
.iata-list > a { display: grid; grid-template-columns: 1fr 180px 24px; align-items: center; gap:var(--gap-lg); padding: 22px 0; border-bottom: 1px solid var(--line); }
.iata-list small { display: block; color: var(--gold); font-size: 11px; text-transform: uppercase; letter-spacing: .08em; margin-bottom: 6px; }
.iata-list strong { display: block; font: 600 24px/1.35 var(--serif); }
.iata-list > a:hover strong { text-decoration: underline; text-underline-offset: 5px; }
.career-entry { display: grid; grid-template-columns: 230px 1fr; gap: 56px; padding: 34px 0; border-bottom: 1px solid var(--line); }
.career-entry:first-child { padding-top: 0; }
.career-entry:last-child { border-bottom: 0; padding-bottom: 0; }
.career-dates { color: var(--gold); font-size: 15px; margin: 5px 0 10px; }
.career-location { color: var(--muted); font-size: 14px; }
.career-entry h3 { font-size: 29px; line-height: 1.35; margin: 0 0 12px; }
.department { font-weight: 600; font-size: 17px; margin: 0 0 6px; }
.career-scope { color: var(--muted); font-size: 16px; margin: 0; }
.career-entry ul { margin: 20px 0 0; padding-left: 20px; color: var(--muted); max-width: 77ch; }
.career-entry li { margin: 10px 0; padding-left: 5px; font-size: 16px; }
.contribution-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 30px; }
.contribution-grid h3 { font-size: 25px; line-height: 1.3; }
.contribution-grid p { color: var(--muted); font-size: 16px; }
.project-note { font-size: 14px !important; border-left: 2px solid var(--gold); padding-left: 14px; }
.training-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.training-card { display: flex; flex-direction: column; padding:var(--card-padding); border: 1px solid var(--line); border-radius: 3px; }
.training-card h3 { font-size: 22px; line-height: 1.35; margin: 0 0 14px; }
.training-card p { color: var(--muted); font-size: 15px; margin: 0 0 20px; }
.training-card .text-link { margin-top: auto; }
.professional-details { margin-top: 32px; padding: 20px 0; border-top: 1px solid var(--line); }
.professional-details summary { cursor: pointer; font-size: 17px; font-weight: 600; }
.professional-details p { max-width: 80ch; color: var(--muted); }
.foundation-grid,.profile-tools { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; }
.foundation-grid h3,.profile-tools h3 { font-size: 26px; }
.foundation-grid p,.profile-tools li,.language-list { color: var(--muted); font-size: 16px; }
.language-list { padding-left: 18px; margin: 16px 0 0; }
.language-list li { margin: 8px 0; }
.profile-tools { border-top: 1px solid var(--line); margin-top: 34px; padding-top: 20px; }
.tool-tags { display: flex; flex-wrap: wrap; gap: 9px; }
.tool-tags span { padding: 8px 12px; border: 1px solid var(--line); border-radius: 3px; font-size: 14px; }
.profile-contact { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; }
.profile-contact > div:last-child { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; }
.profile-contact a { overflow-wrap: anywhere; }
.portfolio-page .project-index { gap: 0; }
.portfolio-page .project-index > article { grid-template-columns: 60px minmax(0,.85fr) minmax(0,1fr); padding: 40px 0; gap: 34px; }
.portfolio-page .project-index > article:first-child { padding-top: 0; }
.portfolio-page .project-index h2 { font-size: 38px; margin: 0 0 14px; }
.portfolio-page .project-index article > span { font-size: 36px; }
.portfolio-page .project-index-visual { border: 1px solid var(--line); border-radius: 3px; overflow: hidden; background: #fff; }
.portfolio-page .case-grid { gap: 44px; }
.portfolio-page .case-brand { margin-bottom: 28px; }
.portfolio-page .case-sequence { gap: 0; }
.portfolio-page .case-sequence article { padding: 24px 0; border-left: 0; border-bottom: 1px solid var(--line); background: transparent; }
.portfolio-page .case-sequence article:first-child { padding-top: 0; }
.portfolio-page .case-sequence h2 { font-size: 27px; margin: 9px 0 16px; }
.portfolio-page .case-evidence { border-top: 1px solid var(--line); margin-top: 40px; padding-top: 40px; }
.portfolio-page .case-evidence h2 { font-size: 32px; }
.portfolio-page .growth-cta { background: var(--paper); color: var(--navy); border-block: 1px solid var(--line); padding: 40px 0; }
.portfolio-page .growth-cta .boundary { color: var(--muted); }
.portfolio-page .featured-strip,.portfolio-page .knowledge-browser { max-width: 1396px; padding: 54px 50px; }
.portfolio-page .featured-strip > header,.portfolio-page .knowledge-browser > header { display: flex; flex-wrap: wrap; gap: 16px 30px; align-items: baseline; }
.portfolio-page .featured-strip h2,.portfolio-page .knowledge-browser h2 { font-size: 38px; }
.portfolio-page .featured-strip > div { border: 0; gap: 22px; }
.portfolio-page .featured-strip a { min-height: 220px; padding: 25px; border: 1px solid var(--line); border-radius: 3px; background: #fffdf8; }
.portfolio-page .featured-strip a:hover { background: #f1eadf; color: var(--navy); }
.portfolio-page .featured-strip strong { font-size: 22px; line-height: 1.4; }
.portfolio-page .knowledge-filters { gap: 16px; padding:var(--card-padding); border-radius: 3px; background: #f3eee4; }
.portfolio-page .knowledge-grid { gap:var(--gap-lg); }
.portfolio-page .knowledge-card { border: 1px solid var(--line); border-radius: 3px; background: #fffdf8; box-shadow: none; }
.portfolio-page .knowledge-card a { padding: 26px; gap: 14px; }
.portfolio-page .knowledge-card h2 { font-size: 24px; line-height: 1.4; }
.portfolio-page .knowledge-card p { font-size: 16px; line-height: 1.7; }
.portfolio-page .knowledge-card:hover { border-color: var(--gold); box-shadow: none; }
.portfolio-page :is(a,button,input,select,summary):focus-visible { outline: 3px solid var(--gold); outline-offset: 4px; }
@media(max-width:1000px) {
 .portfolio-page .wrap { width: calc(100% - 64px); }
 .profile-intro-grid { grid-template-columns: 1.3fr .75fr; gap: 30px; }
 .profile-intro figure { height: 410px; }
 .profile-intro h1 { font-size: 48px; }
 .profile-lead { font-size: 18px; }
 .qualification-grid,.training-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .career-entry { grid-template-columns: 180px 1fr; gap: 28px; }
 .portfolio-page .project-index > article { grid-template-columns: 40px minmax(0,1fr) minmax(0,1fr); gap:var(--gap-lg); }
 .portfolio-page .featured-strip,.portfolio-page .knowledge-browser { padding-inline: 32px; }
 .portfolio-page .discovery-hero { padding-inline: 32px; }
 .contribution-grid { grid-template-columns: 1fr; }
 .portfolio-page .featured-strip > div { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media(max-width:760px) {
 .portfolio-page .wrap { width: calc(100% - 40px); }
 .portfolio-page :is(.growth-hero,.discovery-hero) { padding-block: 36px; }
 .portfolio-page .discovery-hero { padding-inline: 20px; }
 .portfolio-page :is(.growth-hero,.discovery-hero) h1 { font-size: 42px; }
 .portfolio-page :is(.growth-section,.profile-section) { padding-block: 40px; }
 .profile-intro { padding-top: 30px; }
 .profile-intro-grid { grid-template-columns: 1fr; gap:var(--gap-lg); }
 .profile-intro h1 { font-size: 44px; }
 .profile-intro figure { height: 350px; max-width: 340px; margin-inline: auto; }
 .qualification-grid,.training-grid,.foundation-grid,.profile-tools,.profile-contact { grid-template-columns: 1fr; gap:var(--gap-lg); }
 .qualification-card { padding:var(--card-padding); }
 .portfolio-section-heading { gap: 18px; }
 .portfolio-section-heading > span { display: none; }
 .iata-list > a { grid-template-columns: 1fr 24px; gap: 10px; }
 .iata-list > a .qualification-date { grid-column: 1; grid-row: 2; }
 .iata-list > a > span:last-child { grid-column: 2; grid-row: 1 / 3; }
 .iata-list strong { font-size: 22px; }
 .career-entry { grid-template-columns: 1fr; gap: 8px; padding-block: 28px; }
 .career-dates,.career-location { margin: 0 0 5px; }
 .career-entry h3 { font-size: 26px; }
 .portfolio-page .project-index > article { grid-template-columns: 1fr; gap: 20px; padding-block: 30px; }
 .portfolio-page .project-index article > span { font-size: 28px; }
 .portfolio-page .case-grid { grid-template-columns: 1fr; gap: 30px; }
 .portfolio-page .case-grid figure { position: static; }
 .portfolio-page .case-evidence { grid-template-columns: 1fr; gap: 30px; }
 .portfolio-page .featured-strip,.portfolio-page .knowledge-browser { padding: 36px 20px; }
 .portfolio-page .featured-strip > div { grid-template-columns: 1fr; }
 .portfolio-page .knowledge-filters { padding: 18px; }
 .portfolio-page .knowledge-grid { grid-template-columns: 1fr; }
 .portfolio-page .featured-strip h2,.portfolio-page .knowledge-browser h2 { font-size: 32px; }
}
@media(prefers-reduced-motion:reduce) { .portfolio-page .button { transition: none; } }
@media print {
 .portfolio-page .masthead,.portfolio-page .platform-footer,.portfolio-page .action-row { display: none !important; }
 .portfolio-page .wrap { width: 100%; }
 .portfolio-page .profile-section { padding-block: 20px; }
 .qualification-card,.career-entry { break-inside: avoid; }
}

/* Portfolio library uses a warm-white hero, so its secondary action needs dark text. */
.portfolio-page .discovery-hero .hero-actions .button.is-secondary { color: var(--navy); border-color: var(--navy); background: transparent; }

.portfolio-page .newsletter-signup .eyebrow { color: #dfc27d; }

/* Research extensions reuse the case-study cards with a readable two-column rhythm. */
.portfolio-page .nl-research{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:28px}
.portfolio-page .nl-research h3{margin:0 0 14px;font-size:24px;line-height:1.3}
.portfolio-page .nl-research a{color:#795b20;text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.portfolio-page .nl-research{grid-template-columns:minmax(0,1fr)}}

/* assets/css/site-chrome.css */
/* Shared frame owns its palette and typography on every page family. */
.masthead,.platform-footer{--navy:#10283f;--paper:#fcfaf5;--gold:#795b20;--gold-line:#c79a43;--gold-light:#e5c77f;--line:#ded5c5;--serif:"Lora",Georgia,serif;--sans:"IBM Plex Sans",Arial,sans-serif;box-sizing:border-box;font-size:16px;line-height:1.5;letter-spacing:normal}
/* Shared navigation and footer. Homepage components retain their editorial layout. */
.masthead {
  position: sticky;
  top: 0;
  z-index: 100;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-height: 88px;
  padding: 12px max(24px, calc((100vw - 1200px)/2));
  border-bottom: 1px solid var(--line-light);
  background: var(--paper);

}
.masthead .brand, .platform-footer .brand {
  display: flex;
  align-items: center;
  gap: 14px;
}
.masthead .mark, .platform-footer .mark {
  display: grid;
  place-items: center;
  flex-shrink: 0;
  width: 58px;
  height: 52px;
  border: 1px solid var(--gold-line);
  color: var(--navy);
  font: 600 1.55rem/1 var(--serif);
  letter-spacing: -.05em;
}
.masthead .brand strong, .platform-footer .brand strong {
  display: block;
  color: var(--navy);
  font: 600 22px/1.2 var(--serif);
}
.masthead .brand small, .platform-footer .brand small {
  display: block;
  color: var(--muted);
  font-size: .64rem;
}
.masthead nav {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 26px;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
}
.masthead nav :is(a, button) {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  white-space: nowrap;
}
.masthead nav a {
  text-decoration:none;
  position: relative;
  padding: 15px 0 10px;
  color: var(--navy-soft);
  font-size: 16px;
  letter-spacing: 0;
}
.masthead nav a::after {
  content: "";
  position: absolute;
  inset: auto 0 2px;
  height: 2px;
  background: var(--gold-line);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform var(--motion-fast) ease;
}
.masthead nav a:is(:hover, :focus-visible, [aria-current="page"]) {
  color: var(--navy);
}
.masthead nav a:is(:hover, :focus-visible, [aria-current="page"])::after {
  transform: scaleX(1);
}
.masthead .nav-cv { padding: 0 12px; border: 1px solid var(--line); }
.masthead .nav-search {
  padding: 7px 10px;
  border: 1px solid rgba(7, 24, 43, .3);
  border-radius: 2px;
  background: transparent;
  color: var(--navy);
  font: 600 13px var(--sans);
  letter-spacing: .08em;
  text-transform: uppercase;
  cursor: pointer;
}
.masthead .nav-search:is(:hover, :focus-visible) {
  border-color: var(--gold-line);
  background: var(--navy);
  color: #fff;
}
.static-menu-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 48px;
  min-height: 44px;
  padding: 8px 11px;
  border: 1px solid var(--line);
  background: #fff;
  color: var(--navy);
  font: 600 13px var(--sans);
  letter-spacing: .07em;
  text-transform: uppercase;
  cursor: pointer;
}
.static-menu-toggle[hidden] { display: none; }
.platform-footer {
  display: grid;
  grid-template-columns: 1.4fr repeat(3, .65fr);
  gap: 42px;
  padding: 40px max(5vw, 28px) 32px;
  border-top: 3px solid var(--gold-line);
  background: var(--navy);
  color: var(--paper);
  font-family: var(--sans);
}
.platform-footer > div p { max-width: 420px; color: #9dabbc; font-size: .8rem; }
.platform-footer nav { display: grid; align-content: start; gap: 9px; }
.platform-footer nav strong {
  margin-bottom: 6px;
  color: #dfc27d;
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.platform-footer nav a { font:400 14px/1.5 var(--sans);min-height:44px;display:flex;align-items:center;text-decoration:none; }
.platform-footer a { color: #dce3eb; overflow-wrap: anywhere; }
.platform-footer a:hover { color: var(--gold-light); }
.platform-footer > small {
  grid-column: 1 / -1;
  padding-top: 22px;
  border-top: 1px solid rgba(255, 255, 255, .14);
  color: #8291a3;
}
.platform-footer .brand { width: max-content; max-width: 100%; }
.platform-footer .brand .mark {
  color: var(--gold-light);
  background: rgba(255, 255, 255, .035);
}
.platform-footer .brand strong { color: #fff; }
.platform-footer .brand small { color: #aebed0; }
.platform-footer .brand:is(:hover, :focus-visible) strong { color: var(--gold-light); }
.platform-footer .professional-social {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-weight: 600;
}
.platform-footer .professional-social svg { width: 20px; height: 20px; fill: currentColor; flex-shrink: 0; }
.platform-footer .professional-social:hover { text-decoration: underline; text-underline-offset: 4px; }
.reader-dark .masthead { background: #0b1827; }
@media (max-width: 1000px) {
  .platform-footer { grid-template-columns: 1fr 1fr; }
  .platform-footer > div { grid-column: 1 / -1; }
}
@media (min-width: 761px) and (max-width: 1000px) {
  .masthead { flex-direction: column; align-items: flex-start; }
  .masthead nav { width: 100%; overflow-x: auto; flex-wrap: nowrap; justify-content: flex-start; gap: 18px; }
  .masthead nav > * { flex-shrink: 0; }
}
@media (max-width: 760px) {
  .masthead { min-height: 74px; flex-direction: row; padding-block: 9px; }
  .masthead nav { width: 100%; gap: 12px; }
  .masthead .brand small { display: none; }
  .masthead[data-navigation-ready] .static-menu-toggle { display: inline-flex; margin-left: auto; }
  .masthead[data-navigation-ready] nav {
    position: absolute;
    z-index: 120;
    inset: 100% 0 auto;
    display: none;
    max-height: calc(100dvh - 74px);
    align-items: stretch;
    gap: 0;
    padding: 12px 18px 20px;
    overflow-y: auto;
    border-bottom: 1px solid var(--line);
    background: var(--paper);
    box-shadow: var(--shadow-soft);
  }
  .masthead[data-navigation-ready] nav.is-open { display: grid; }
  .masthead nav :is(a, button) { width: 100%; min-height: 44px; padding: 11px; justify-content: flex-start; }
  .masthead nav a::after { display: none; }
  .masthead .nav-search { margin-top: 8px; }
  .platform-footer { grid-template-columns: 1fr; padding-inline: 22px; }
  .platform-footer > div, .platform-footer > small { grid-column: auto; }
}
@media (max-width: 520px) {
  .masthead { padding-inline: 18px; }
  .platform-footer { padding-inline: 18px; }
}
@media (max-width: 420px) {
  .masthead .mark { width: 46px; height: 44px; }
}

/* The masthead monogram is the same asset used on the homepage. */
.masthead img.mark { width:58px;height:58px;object-fit:contain;border:0;display:block; }
@media(max-width:760px){.masthead .brand strong{font-size:20px}.masthead img.mark{width:46px;height:46px}.masthead{gap:14px}}
/* A single compact navigation behaviour across portfolio pages and product demos. */
.masthead[data-navigation-ready],.editorial-masthead[data-navigation-ready]{position:sticky;top:0;z-index:100;background:var(--paper);overflow:visible}
.editorial-masthead .primary{gap:24px;align-items:center}
.editorial-masthead .primary :is(a,button){min-height:44px;display:inline-flex;align-items:center}
.editorial-masthead .nav-search,.editorial-masthead .nav-cv{padding:8px 12px;border:1px solid var(--line);border-radius:2px;background:transparent;color:var(--navy);font:600 14px var(--sans);text-decoration:none}
@media(max-width:1000px){
 .masthead[data-navigation-ready],.editorial-masthead[data-navigation-ready]{min-height:74px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;padding-block:9px}
 .masthead[data-navigation-ready] .static-menu-toggle,.editorial-masthead[data-navigation-ready] .static-menu-toggle{display:inline-flex;margin-left:auto}
 .masthead[data-navigation-ready] nav,.editorial-masthead[data-navigation-ready] .primary{position:absolute;z-index:120;inset:100% 0 auto;display:none;width:100%;max-height:calc(100dvh - 74px);padding:12px 18px 20px;overflow-y:auto;gap:0;background:var(--paper);border:1px solid var(--line);box-shadow:0 12px 24px rgba(16,40,63,.12)}
 .masthead[data-navigation-ready] nav.is-open,.editorial-masthead[data-navigation-ready] .primary.is-open{display:grid}
 .masthead[data-navigation-ready] nav :is(a,button),.editorial-masthead[data-navigation-ready] .primary :is(a,button){width:100%;min-height:44px;padding:11px;justify-content:flex-start;font:600 16px var(--sans)}
 .masthead[data-navigation-ready] nav a::after{display:none}
 .editorial-masthead[data-navigation-ready] .brand{font-size:21px;gap:12px}
 .editorial-masthead[data-navigation-ready] .brand img{width:48px;height:48px}
}

/* Short landscape screens need the full viewport for forms and reading. */
@media(max-height:500px) and (max-width:1000px){.masthead[data-navigation-ready],.editorial-masthead[data-navigation-ready]{position:relative!important}}
.platform-footer>*{min-width:0;max-width:100%;box-sizing:border-box}
.platform-footer nav{grid-template-columns:minmax(0,1fr)}
.platform-footer .brand>*{min-width:0;overflow-wrap:anywhere}
@media(max-width:760px){.platform-footer{grid-template-columns:minmax(0,1fr)}}

/* Optional update notice: never reload automatically or clear saved drafts. */
.site-update-notice{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);z-index:200;width:min(720px,calc(100% - 32px));display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:16px;background:#fcfaf5;color:#10283f;border:1px solid #795b20;border-radius:3px;box-shadow:0 6px 24px #10283f26;font:400 15px/1.5 var(--sans,Arial,sans-serif)}
.site-update-notice p{flex:1 1 280px;margin:0}.site-update-notice button{min-height:44px;padding:10px 16px;border:1px solid #10283f;background:#10283f;color:white;font:inherit;border-radius:3px;cursor:pointer}.site-update-notice [data-update-dismiss]{background:transparent;color:#10283f}.site-update-notice button:focus-visible{outline:3px solid #795b20;outline-offset:3px}
#library-search{scroll-margin-top:100px}.library-search-return{display:inline-flex;min-height:44px;align-items:center;margin:0 0 16px;color:#795b20;text-underline-offset:4px}
@media print{.site-update-notice{display:none!important}}

/* Reserve the compact header row before web fonts finish loading. */
@media(max-width:1000px){
 .masthead[data-navigation-ready],.editorial-masthead[data-navigation-ready]{flex-wrap:nowrap}
 .masthead[data-navigation-ready]>.brand,.editorial-masthead[data-navigation-ready]>.brand{min-width:0}
 .static-menu-toggle{flex-shrink:0}
}
@media(max-width:420px){
 .masthead[data-navigation-ready]>.brand{gap:8px}
 .masthead .brand strong{font-size:clamp(16px,4.6vw,18px)}
 .masthead img.mark{width:40px;height:40px;flex-shrink:0}
}

.product-context{max-width:1200px;margin:32px auto;padding:24px;border-top:1px solid var(--line,#ded5c5);font:400 16px/1.6 var(--sans);color:var(--ink,#10283f);background:var(--paper,#fcfaf5)}
.product-context nav{display:flex;flex-wrap:wrap;gap:12px 24px}.product-context a{min-height:44px;display:inline-flex;align-items:center;color:inherit;text-decoration:underline}
.platform-footer .brand{font-size:16px;letter-spacing:normal;text-decoration:none}
.platform-footer .brand strong{font:600 22px/1.2 var(--serif)}
.platform-footer .brand small{font:400 13px/1.5 var(--sans)}
.platform-footer>div p{margin:16px 0 0;font:400 14px/1.65 var(--sans);color:#c6cfda}
.platform-footer>small{font:400 13px/1.5 var(--sans);color:#b7c3d1}
.platform-footer a:focus-visible{outline:3px solid var(--gold-light);outline-offset:3px}
@media print{.masthead,.platform-footer,.product-context{display:none!important}}
