/* Page overrides for /project-management/ (property-level diffs vs global.css + page-only rules).
   Hero, intro and exchange panels follow /tender-support/; the Project Portal band
   follows the global dark-section rules (.process / .std): flat frame navy, hairline rules,
   no gradients. Brand Guide tokens only — no raw hex. */
h1,h2,h3,.display{font-family:'Saira Condensed','Saira',sans-serif;font-weight:600;line-height:1.04;letter-spacing:-.01em}
.nav-link:hover{color:var(--blue)}
.submenu-inner a:hover{background:var(--paper);color:var(--blue)}
.hero .lede{font-size:clamp(.95rem,1.55vw,1.17rem);color:var(--on-dark-body);max-width:46ch;font-weight:400;line-height:1.45}
.crumb{font-family:'Saira',sans-serif;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--on-dark-muted);margin-bottom:6px}
.crumb a{color:var(--on-dark-muted)}
.crumb span{color:var(--blue-soft);margin:0 .5em}

/* Intro */
.intro h2{font-size:clamp(1.9rem,3.5vw,2.9rem);font-weight:600;margin:.45em 0 .55em;color:var(--navy);max-width:16ch}
.intro p{color:var(--ink-muted);font-size:.95rem;margin-bottom:1.1em;max-width:54ch;line-height:1.5}

/* Four-stage project lifecycle: numbered timeline nodes joined by a Metroid Blue rule,
   each above a card in the site's .unique card language (white, hairline, blue top rule). */
#process .section-head{margin-inline:auto;text-align:center}
.pm-steps{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;position:relative}
.pm-steps::before{content:"";position:absolute;left:12.5%;right:12.5%;top:27px;height:2px;background:var(--blue)}
.pm-step{display:flex;flex-direction:column;align-items:center}
.pm-node{width:56px;height:56px;border-radius:50%;background:var(--white);border:2px solid var(--blue);display:grid;place-items:center;font-family:'Saira Condensed',sans-serif;font-weight:700;font-size:1.25rem;color:var(--navy);letter-spacing:.04em;position:relative;z-index:1;box-shadow:0 0 0 8px var(--paper)}
.pm-step:last-child .pm-node{background:var(--blue);color:var(--white)}
.pm-node svg{width:24px;height:24px;color:var(--blue)}
.pm-step:last-child .pm-node svg{color:var(--white)}
.pm-stem{width:2px;height:28px;background:var(--line)}
.pm-card{align-self:stretch;flex:1;background:var(--white);border:1px solid var(--line);border-top:3px solid var(--blue);border-radius:4px;padding:34px 24px 32px;display:flex;flex-direction:column;transition:transform .2s ease, box-shadow .2s ease}
.pm-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card)}
.pm-card .unique-index{margin-bottom:8px}
.pm-card h3{font-size:1.55rem;line-height:1.08;color:var(--navy);margin-bottom:12px}
.pm-card > p{color:var(--ink-muted);font-size:.9rem;line-height:1.5;margin-bottom:20px}
.pm-card ul{list-style:none;display:flex;flex-direction:column;gap:11px;margin-top:auto;padding-top:18px;border-top:1px solid var(--line)}
.pm-card li{position:relative;padding-left:22px;font-size:.86rem;color:var(--ink-muted);line-height:1.45}
.pm-card li::before{content:"";position:absolute;left:0;top:.5em;width:9px;height:9px;background:var(--blue);transform:rotate(45deg)}
@media(max-width:900px){
.pm-steps{grid-template-columns:1fr;gap:32px}
.pm-steps::before{display:none}
.pm-step{align-items:flex-start}
}

/* Project Portal band — screenshot centrepiece, features in a row beneath.
   Section shell, heading and copy match the global .process dark section. */
.portal{padding:clamp(72px,9vw,118px) 0;background:var(--navy-deep);color:var(--on-dark)}
.portal .wrap{display:flex;flex-direction:column;align-items:center}
.portal .section-head{margin-inline:auto;text-align:center;display:flex;flex-direction:column;align-items:center}
.portal .section-head h2{color:var(--on-dark)}
.portal .section-head p{color:var(--on-dark-body);font-size:.95rem;margin-top:.6em;line-height:1.5}
.portal-figure{width:100%}
.portal-figure img{width:100%;border-radius:4px;border:1px solid rgba(255,255,255,.14);box-shadow:var(--shadow-media)}
.portal-figure figcaption{margin-top:12px;font-size:.82rem;color:var(--on-dark-muted);text-align:center}
.portal-feats{list-style:none;width:100%;margin-top:clamp(44px,5vw,64px);padding-top:clamp(36px,4vw,48px);border-top:1px solid rgba(255,255,255,.14);display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:36px 24px}
.portal-feats li{display:flex;flex-direction:column;gap:14px}
.portal-feats .pf-ico{width:42px;height:42px;border:1px solid rgba(91,180,229,.4);border-radius:3px;display:grid;place-items:center;color:var(--blue-soft)}
.portal-feats .pf-ico svg{width:22px;height:22px}
.portal-feats h3{font-size:1.3rem;color:var(--on-dark);margin-bottom:.4em}
.portal-feats p{font-size:.83rem;color:var(--on-dark-body);line-height:1.5}
.portal-cta{margin-top:42px;display:flex;justify-content:center}

/* Expectations exchange (same panel language as tender-support) */
.exchange{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:8px}
.exchange .panel{border:1px solid var(--line);border-radius:4px;padding:34px 32px;background:var(--white)}
.exchange .panel.dark{background:var(--navy-deep);border-color:var(--navy-deep);color:var(--on-dark)}
.exchange h3{font-size:1.35rem;margin-bottom:18px;color:var(--navy)}
.exchange .panel.dark h3{color:var(--on-dark)}
.exchange ul{list-style:none;display:flex;flex-direction:column;gap:14px}
.exchange li{position:relative;padding-left:28px;font-size:.9rem;line-height:1.5;color:var(--ink-muted)}
.exchange .panel.dark li{color:var(--on-dark-soft)}
.exchange li::before{content:"\2713";position:absolute;left:0;top:0;color:var(--blue);font-weight:700}
.exchange .panel.dark li::before{color:var(--blue-soft)}
.exchange .foot{margin-top:22px;padding-top:18px;border-top:1px solid var(--line);font-size:.9rem;color:var(--gray);font-style:italic}
.exchange .panel.dark .foot{border-top-color:rgba(255,255,255,.16);color:var(--on-dark-muted)}
@media(max-width:880px){
.exchange{grid-template-columns:1fr}
}

@media(prefers-reduced-motion:reduce){
.btn,.pm-card{transition:none}
}
@media(max-width:1080px){
.menu-toggle span{transition:transform .2s ease,opacity .2s ease}
}
