/* program.css — "Become a Career Counsellor" page. Built on ai-counselor.css + workshop.css tokens. */

/* ── program hero right-side card ─────── */
.phero .hero-g{align-items:center}
.pcard{position:relative;z-index:6;border:1px solid var(--ln);background:rgba(255,255,255,.97);backdrop-filter:blur(14px);box-shadow:0 50px 100px -46px rgba(33,79,152,.6);padding:clamp(24px,2.6vw,34px)}
.pcard .pk{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--blue)}
.pcard h3{font-family:var(--serif);font-size:clamp(22px,2.2vw,28px);letter-spacing:-.022em;margin-top:12px;line-height:1.12}
.pcard .plist{margin-top:18px;display:flex;flex-direction:column;gap:11px}
.pcard .plist div{display:flex;gap:11px;font-size:13.5px;color:var(--bk-72);line-height:1.5}
.pcard .plist svg{width:15px;height:15px;color:var(--blue);flex:none;margin-top:2px}
.pcard .pcta{margin-top:22px;display:flex;flex-direction:column;gap:10px}
.pcard .pcta .btn{width:100%}
.pcard .pfoot{margin-top:14px;font-size:11.5px;color:var(--bk-38);text-align:center;line-height:1.5}

/* ── opportunity cards (why now) ──────── */
.opp{margin-top:clamp(30px,4vw,52px);display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(14px,1.8vw,22px)}
@media(max-width:820px){.opp{grid-template-columns:1fr}}
.oc{position:relative;border:1px solid var(--ln);background:var(--w);padding:clamp(24px,2.8vw,34px);display:flex;flex-direction:column;gap:12px;overflow:hidden;transition:.4s cubic-bezier(.2,.8,.2,1)}
.oc:hover{border-color:var(--blue);transform:translateY(-5px);box-shadow:0 34px 70px -36px rgba(33,79,152,.55)}
.oc .oi{width:44px;height:44px;border:1px solid var(--ln-2);display:grid;place-items:center;color:var(--blue);transition:.35s}
.oc:hover .oi{background:var(--blue);border-color:var(--blue);color:var(--w)}
.oc .oi svg{width:21px;height:21px}
.oc .obig{font-family:var(--serif);font-size:clamp(30px,3.6vw,46px);letter-spacing:-.03em;line-height:1;color:var(--blue)}
.oc h3{font-family:var(--serif);font-size:clamp(19px,2vw,24px);letter-spacing:-.022em;line-height:1.14}
.oc p{font-size:13.5px;color:var(--bk-56);line-height:1.62}

/* ── module / curriculum accordion (reuses .cat structure; adds body list) ── */
.mods{margin-top:clamp(30px,4vw,52px);border-top:1px solid var(--ln)}
.mod-tags{display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start}
.mod-tags span{padding:7px 13px;border:1px solid var(--ln);font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;color:var(--bk-72);transition:.3s}
.mod-tags span:hover{border-color:var(--blue);color:var(--blue);background:var(--bl-6)}

/* ── platform feature grid ────────────── */
.feat3{margin-top:clamp(30px,4vw,52px);display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.8vw,22px)}
@media(max-width:900px){.feat3{grid-template-columns:1fr}}
.fc3{border:1px solid var(--ln);background:var(--w);padding:clamp(24px,2.6vw,32px);display:flex;flex-direction:column;gap:13px;transition:.4s cubic-bezier(.2,.8,.2,1)}
.fc3:hover{border-color:var(--blue);transform:translateY(-6px);box-shadow:0 34px 70px -36px rgba(33,79,152,.55)}
.fc3 .fi{width:42px;height:42px;border:1px solid var(--ln-2);display:grid;place-items:center;color:var(--blue);transition:.35s}
.fc3:hover .fi{background:var(--blue);border-color:var(--blue);color:var(--w)}
.fc3 .fi svg{width:20px;height:20px}
.fc3 h4{font-family:var(--serif);font-size:20px;letter-spacing:-.02em}
.fc3 p{font-size:13px;color:var(--bk-56);line-height:1.6}

/* ── process timeline ─────────────────── */
.proc{margin-top:clamp(30px,4vw,52px);display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(12px,1.6vw,18px);counter-reset:step}
@media(max-width:900px){.proc{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.proc{grid-template-columns:1fr}}
.pstep{position:relative;border:1px solid var(--ln);background:var(--w);padding:clamp(20px,2.2vw,26px);display:flex;flex-direction:column;gap:12px;transition:.4s cubic-bezier(.2,.8,.2,1)}
.pstep:hover{border-color:var(--blue);transform:translateY(-5px);box-shadow:0 26px 56px -34px rgba(33,79,152,.5)}
.pstep .psn{width:40px;height:40px;border:1px solid var(--blue);color:var(--blue);display:grid;place-items:center;font-family:var(--serif);font-size:18px;line-height:1;transition:.35s}
.pstep:hover .psn{background:var(--blue);color:var(--w)}
.pstep h4{font-family:var(--serif);font-size:18px;letter-spacing:-.02em;line-height:1.15}
.pstep p{font-size:12.5px;color:var(--bk-56);line-height:1.55}

/* ── pricing plans ────────────────────── */
.plans{margin-top:clamp(30px,4vw,52px);display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,26px);align-items:stretch}
@media(max-width:900px){.plans{grid-template-columns:1fr;max-width:460px;margin-left:auto;margin-right:auto}}
.plan{position:relative;border:1px solid var(--ln);background:var(--w);padding:clamp(24px,2.8vw,34px);display:flex;flex-direction:column;gap:15px;transition:.4s cubic-bezier(.2,.8,.2,1)}
.plan:hover{border-color:var(--blue);transform:translateY(-6px);box-shadow:0 40px 82px -40px rgba(33,79,152,.55)}
.plan.feat{border-color:var(--blue);box-shadow:0 44px 92px -44px rgba(33,79,152,.6)}
.plan.feat::before{content:"Most popular";position:absolute;top:0;right:22px;transform:translateY(-50%);background:var(--blue);color:#fff;font-family:var(--mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;padding:6px 12px}
.plan .pln{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--blue)}
.plan h3{font-family:var(--serif);font-size:clamp(22px,2.3vw,27px);letter-spacing:-.022em;line-height:1.1}
.plan .pp{display:flex;align-items:baseline;gap:8px;padding-bottom:15px;border-bottom:1px solid var(--ln)}
.plan .pp b{font-family:var(--serif);font-size:clamp(30px,3.6vw,42px);color:var(--blue);letter-spacing:-.03em;line-height:1}
.plan .pp span{font-size:12px;color:var(--bk-38)}
.plan ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:11px}
.plan li{display:flex;gap:10px;font-size:13.5px;color:var(--bk-72);line-height:1.5}
.plan li svg{width:14px;height:14px;color:var(--blue);flex:none;margin-top:3px}
.plan .btn{margin-top:auto;width:100%}
.plans-note{margin-top:20px;text-align:center;font-size:12.5px;color:var(--bk-38)}

/* ── comparison table ─────────────────── */
.cmp{margin-top:clamp(28px,3.4vw,46px);border:1px solid var(--ln);background:var(--w);overflow:hidden;max-width:920px;margin-left:auto;margin-right:auto}
.cmp-r{display:grid;grid-template-columns:1.5fr 1fr 1fr;border-bottom:1px solid var(--ln)}
.cmp-r:last-child{border-bottom:none}
.cmp-r>div{padding:14px 18px;font-size:13.5px;display:flex;align-items:center;gap:9px;line-height:1.4}
.cmp-r>div+div{border-left:1px solid var(--ln);justify-content:center;text-align:center}
.cmp-h{background:var(--soft)}
.cmp-h>div{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--bk-56)}
.cmp-h>div.on{color:var(--blue);font-weight:600}
.cmp .lbl{color:var(--bk-72)}
.cmp svg{width:16px;height:16px;flex:none}
.cmp .yes{color:var(--blue)}
.cmp .no{color:var(--bk-38)}
@media(max-width:620px){.cmp-r{grid-template-columns:1.3fr .7fr .7fr}.cmp-r>div{padding:11px 12px;font-size:12px}}

/* ── certificate showcase ─────────────── */
.cert{margin-top:clamp(28px,3.4vw,46px);display:grid;grid-template-columns:1fr 1fr;gap:clamp(26px,3.4vw,56px);align-items:center}
@media(max-width:860px){.cert{grid-template-columns:1fr}}
.cert-card{position:relative;aspect-ratio:1.42/1;border:1px solid var(--ln);background:linear-gradient(150deg,var(--soft),#fff);box-shadow:0 40px 90px -48px rgba(33,79,152,.55);padding:clamp(22px,3vw,36px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:13px;overflow:hidden}
.cert-card::after{content:"";position:absolute;inset:14px;border:1px solid var(--bl-24);pointer-events:none}
.cert-card .seal{width:66px;height:66px;border-radius:50%;border:2px solid var(--blue);color:var(--blue);display:grid;place-items:center;background:var(--w)}
.cert-card .seal svg{width:30px;height:30px}
.cert-card .ck{font-family:var(--mono);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--bk-38)}
.cert-card .ct{font-family:var(--serif);font-size:clamp(20px,2.4vw,28px);letter-spacing:-.02em;color:var(--blue);line-height:1.1}
.cert-card .cn{font-size:12.5px;color:var(--bk-56)}
.cert-card .cby{margin-top:6px;font-family:var(--mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--bk-38)}

/* ── enquiry form ─────────────────────── */
.pf{max-width:560px;margin:clamp(28px,3.4vw,44px) auto 0;border:1px solid var(--ln);background:var(--w);box-shadow:0 44px 96px -46px rgba(33,79,152,.5);padding:clamp(24px,2.6vw,34px)}
.pf h3{font-family:var(--serif);font-size:clamp(21px,2.1vw,26px);letter-spacing:-.022em}
.pf p.sub{margin-top:8px;font-size:13px;color:var(--bk-56);line-height:1.55}
.pf form{margin-top:18px;display:grid;gap:12px}
.pf .fr{display:grid;gap:6px}
.pf label{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--bk-38)}
.pf input,.pf select{width:100%;font-family:var(--sans);font-size:14px;color:var(--bk);background:var(--w);border:1px solid var(--ln-2);border-radius:2px;padding:13px 14px;outline:none;transition:border-color .25s,box-shadow .25s;appearance:none}
.pf select{background-image:linear-gradient(45deg,transparent 50%,var(--blue) 50%),linear-gradient(135deg,var(--blue) 50%,transparent 50%);background-position:calc(100% - 18px) 21px,calc(100% - 13px) 21px;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:36px}
.pf input:focus,.pf select:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--bl-12)}
.pf .two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:520px){.pf .two{grid-template-columns:1fr}}
.pf .btn{width:100%;margin-top:4px}
.pf .fine{font-size:11.5px;line-height:1.5;color:var(--bk-38);text-align:center}

/* section head kicker helper on program pages */
.psec .head{max-width:820px}
