/* v9.9.9 — accreditation landing pages. Each page sets its body's own colours and typeface as
   --a-* variables on <main class="acc acc-…">; the site header and footer stay People Group Services. */
.acc{--a-primary:#082d50;--a-deep:#061f37;--a-accent:#23b9e7;--a-soft:#eff7fb;--a-ink:#10304c;--a-cta:#23b9e7;--a-ctaInk:#082d50;--a-font:Aptos,Inter,Arial,sans-serif;font-family:var(--a-font);color:var(--a-ink)}
.acc h1,.acc h2,.acc h3{font-family:var(--a-font);color:inherit}
.acc .wrap{position:relative}
.acc-eyebrow{font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--a-accent);margin:0 0 12px}
.acc-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 24px;border-radius:999px;font-weight:800;font-size:1rem;text-decoration:none;border:2px solid transparent;transition:transform .15s ease,box-shadow .15s ease;text-align:center}
.acc-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.16)}
.acc-btn.cta{background:var(--a-cta);color:var(--a-ctaInk)}
.acc-btn.ghost{border-color:currentColor;color:inherit;background:transparent}
.acc-btn.big{min-height:60px;padding:0 32px;font-size:1.08rem}
.acc-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.acc-link{display:inline-block;margin-top:18px;font-weight:800;color:var(--a-primary);text-decoration:underline;text-underline-offset:4px}
.acc-small{font-size:.78rem;color:#6a7682;margin:22px 0 0;max-width:820px}

/* hero */
.acc-hero{background:linear-gradient(135deg,var(--a-primary),var(--a-deep));color:#fff;padding:64px 0 76px;overflow:hidden}
.acc-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:54px;align-items:center}
.acc-crumb{display:inline-block;color:rgba(255,255,255,.78);font-size:.88rem;font-weight:700;text-decoration:none;margin-bottom:22px}
.acc-crumb:hover{color:#fff}
.acc-hero h1{font-size:clamp(2.3rem,4.4vw,3.9rem);line-height:1.02;letter-spacing:-.03em;margin:0 0 18px;color:#fff;font-weight:800}
.acc-lead{font-size:1.12rem;line-height:1.6;color:rgba(255,255,255,.9);margin:0;max-width:620px}
.acc-hero .acc-btn.ghost{color:#fff}
.acc-hero-pic{position:relative;margin:0}
.acc-hero-pic>img{width:100%;height:auto;border-radius:24px;box-shadow:0 26px 60px rgba(0,0,0,.35);display:block}
.acc-logo-tile{position:absolute;left:-26px;bottom:-30px;border-radius:20px;padding:14px 18px;box-shadow:0 16px 36px rgba(0,0,0,.25);max-width:46%}
.acc-logo-tile img{display:block;width:100%;height:auto;max-height:120px;object-fit:contain}

/* bands with clean breaks */
.acc-band{padding:78px 0;border-top:1px solid rgba(0,0,0,.06)}
.acc-head{max-width:760px;margin:0 0 34px}
.acc-head h2,.acc-ours h2,.acc-go h2{font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.08;letter-spacing:-.025em;margin:0 0 12px;font-weight:800}
.acc-head p{font-size:1.06rem;line-height:1.6;color:#4b5966;margin:0}
.acc-what{background:#fff}
.acc-what .acc-eyebrow,.acc-means .acc-eyebrow,.acc-how .acc-eyebrow{color:var(--a-primary)}
.acc-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.acc-cards.n4{grid-template-columns:repeat(4,minmax(0,1fr))}
.acc-card{background:var(--a-soft);border-radius:20px;padding:26px 24px;border-top:5px solid var(--a-accent)}
.acc-card svg{width:40px;height:40px;fill:none;stroke:var(--a-primary);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;margin-bottom:14px}
.acc-card h3{font-size:1.12rem;margin:0 0 8px;font-weight:800;color:var(--a-primary)}
.acc-card p{margin:0;color:#3d4b58;line-height:1.55;font-size:.96rem}
.acc-how{background:var(--a-soft)}
.acc-how-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px;align-items:start}
.acc-steps{list-style:none;counter-reset:s;margin:0;padding:0;display:grid;gap:12px}
.acc-steps li{counter-increment:s;position:relative;background:#fff;border-radius:18px;padding:20px 22px 20px 78px;box-shadow:0 2px 0 rgba(0,0,0,.04)}
.acc-steps li::before{content:counter(s);position:absolute;left:20px;top:18px;width:40px;height:40px;border-radius:50%;background:var(--a-primary);color:#fff;display:grid;place-items:center;font-weight:800}
.acc-steps strong{display:block;font-size:1.05rem;color:var(--a-primary);margin-bottom:3px}
.acc-steps span{color:#3d4b58;line-height:1.5}
.acc-means{background:#fff}
.acc-means-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.acc-mean{border:2px solid var(--a-soft);border-radius:22px;padding:28px}
.acc-mean h3{margin:0 0 14px;font-size:1.25rem;font-weight:800;color:var(--a-primary)}
.acc-mean ul,.acc-ticks{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.acc-mean li,.acc-ticks li{position:relative;padding-left:32px;line-height:1.5;color:#33414e}
.acc-mean li::before,.acc-ticks li::before{content:"";position:absolute;left:0;top:2px;width:21px;height:21px;border-radius:50%;background:var(--a-accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.4l3 3 6-6.6' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/13px no-repeat}
.acc-ours{background:linear-gradient(135deg,var(--a-deep),var(--a-primary));color:#fff}
.acc-ours h2{color:#fff}
.acc-ours-grid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:50px;align-items:center}
.acc-ours-badge{display:flex;flex-direction:column;align-items:center;gap:14px}
.acc-ours-badge img{width:100%;max-width:260px;height:auto;border-radius:20px;padding:16px}
.acc-ours-badge span{font-weight:800;letter-spacing:.12em;text-transform:uppercase;font-size:.82rem;color:var(--a-accent)}
.acc-ours .acc-ticks li{color:rgba(255,255,255,.92);font-size:1.05rem}
.acc-ours .acc-btn.ghost{color:#fff}
.acc-go{background:var(--a-soft)}
.acc-go-row{display:flex;justify-content:space-between;align-items:center;gap:26px;flex-wrap:wrap}
.acc-go p{margin:0;color:#4b5966;font-size:1.05rem}
.acc-more{background:#fff;padding:44px 0}
.acc-more-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.acc-more-row>span{font-weight:800;margin-right:6px;color:#4b5966}
.acc-other{display:inline-flex;flex-direction:column;padding:12px 18px;border-radius:14px;border:1px solid #dbe3ea;text-decoration:none;color:#10304c;font-weight:800;line-height:1.2}
.acc-other small{font-weight:600;color:#6a7682;font-size:.76rem;margin-top:2px}
.acc-other:hover{border-color:#9fb4c6}
.acc-other-saferec{border-left:5px solid #055848}.acc-other-professional-passport{border-left:5px solid #275d8a}.acc-other-apsco{border-left:5px solid #f07c00}.acc-other-team{border-left:5px solid #ffe500}

/* body-specific touches */
.acc-saferec .acc-hero{background:radial-gradient(1200px 500px at 80% 10%,#0b7a63 0,transparent 60%),linear-gradient(135deg,#055848,#033b31)}
.acc-saferec .acc-hero h1::after{content:"";display:block;width:64px;height:4px;border-radius:4px;background:var(--a-accent);margin-top:22px}
.acc-saferec .acc-logo-tile{background:transparent!important;box-shadow:none;padding:0;max-width:42%;filter:drop-shadow(0 14px 26px rgba(0,0,0,.35))}
.acc-saferec .acc-ours-badge img{padding:0}
.acc-professional-passport .acc-hero{background:#fff;color:var(--a-ink);border-bottom:6px solid var(--a-primary)}
.acc-professional-passport .acc-hero h1{color:var(--a-ink);text-transform:uppercase;letter-spacing:.01em;font-weight:900;font-size:clamp(2.1rem,4vw,3.4rem)}
.acc-professional-passport .acc-hero h1::first-line{color:var(--a-accent)}
.acc-professional-passport .acc-lead{color:#3a4652}
.acc-professional-passport .acc-crumb{color:var(--a-primary)}
.acc-professional-passport .acc-hero .acc-btn.ghost{color:var(--a-primary)}
.acc-professional-passport .acc-hero-copy{border-left:8px solid #1e7d3f;padding-left:28px}
.acc-professional-passport .acc-eyebrow{color:var(--a-primary)}
.acc-professional-passport .acc-hero .acc-eyebrow{color:var(--a-stamp)}
.acc-professional-passport .acc-ours{background:var(--a-primary)}
.acc-professional-passport .acc-ours .acc-ours-badge span{color:#fff}
.acc-professional-passport .acc-card{border-top-color:var(--a-primary)}
.acc-professional-passport .acc-steps li::before{background:var(--a-accent)}
.acc-apsco .acc-hero{background:radial-gradient(420px 420px at 100% 100%,var(--a-teal) 0,transparent 62%),radial-gradient(360px 360px at 0 0,var(--a-sun) 0,transparent 55%),linear-gradient(135deg,#133080,#0c1f57)}
.acc-apsco .acc-card:nth-child(2){border-top-color:var(--a-teal)}
.acc-apsco .acc-card:nth-child(3){border-top-color:var(--a-sun)}
.acc-apsco .acc-ours-badge span{color:var(--a-sun)}
.acc-team .acc-hero{background:linear-gradient(135deg,#111a2c,#05080f)}
.acc-team .acc-hero h1 em,.acc-team .acc-eyebrow{color:var(--a-accent)}
.acc-team .acc-what .acc-eyebrow,.acc-team .acc-means .acc-eyebrow,.acc-team .acc-how .acc-eyebrow{color:var(--a-blue)}
.acc-team .acc-card{border-top-color:var(--a-accent);background:#f4f6fa}
.acc-team .acc-card svg,.acc-team .acc-card h3,.acc-team .acc-steps strong,.acc-team .acc-mean h3,.acc-team .acc-link{stroke:var(--a-blue);color:var(--a-blue)}
.acc-team .acc-card h3{stroke:none}
.acc-team .acc-steps li::before{background:var(--a-accent);color:#0b1220}
.acc-team .acc-mean li::before,.acc-team .acc-ticks li::before{background-color:var(--a-blue)}

/* hub */
.hub-hero{padding:64px 0 60px}
.hub-hero h1{max-width:820px}
.hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.hub-card{display:flex;flex-direction:column;border-radius:24px;overflow:hidden;text-decoration:none;color:#10304c;background:#fff;border:1px solid #dbe3ea;transition:transform .18s ease,box-shadow .18s ease}
.hub-card:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(9,46,80,.12)}
.hub-pic{position:relative;background:var(--a-primary)}
.hub-pic>img{width:100%;height:auto;display:block;aspect-ratio:16/9;object-fit:cover}
.hub-logo{position:absolute;left:18px;bottom:-24px;border-radius:14px;padding:8px 12px;box-shadow:0 10px 24px rgba(0,0,0,.18);width:150px}
.hub-logo img{display:block;width:100%;height:auto;max-height:70px;object-fit:contain}
.hub-saferec .hub-logo{background:transparent!important;box-shadow:none;padding:0;width:124px;filter:drop-shadow(0 8px 16px rgba(0,0,0,.3))}
.hub-body{padding:38px 26px 26px;border-top:6px solid var(--a-accent)}
.hub-body .acc-eyebrow{color:var(--a-primary)}
.hub-body h2{margin:0 0 8px;font-size:1.6rem;color:var(--a-primary)}
.hub-body p{margin:0 0 14px;color:#4b5966;line-height:1.55}
.hub-more{font-weight:800;color:var(--a-primary)}

@media(max-width:1000px){.acc-cards.n4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.acc-hero{padding:46px 0 64px}.acc-hero-grid,.acc-how-grid,.acc-ours-grid{grid-template-columns:1fr;gap:34px}.acc-cards{grid-template-columns:1fr}.acc-means-grid{grid-template-columns:1fr}.acc-band{padding:56px 0}.acc-logo-tile{left:14px;bottom:-24px}.acc-ours-badge{align-items:flex-start}.acc-ours-badge img{max-width:200px}.hub-grid{grid-template-columns:1fr}}
@media(max-width:560px){.acc-cards.n4{grid-template-columns:1fr}.acc-steps li{padding-left:68px}.acc-btn{width:100%}.acc-professional-passport .acc-hero-copy{padding-left:16px;border-left-width:6px}}
/* v9.12 — bodies added in the control panel */
.acc-hero-pic.acc-logo-only{display:flex;align-items:center;justify-content:center;aspect-ratio:16/9;border-radius:24px;padding:12%}
.acc-hero-pic.acc-logo-only img{max-height:100%;width:auto;object-fit:contain}
.acc-other-plain{border-left:5px solid var(--a-primary)}
