/* Portfolio automation stories. Kept separate from the website showcase. */
#portfolio .pf-intro{max-width:760px;margin-bottom:3rem}
#portfolio .pf-intro h2{max-width:720px}
#portfolio .pf-intro .lead{max-width:620px;margin-top:1.3rem}
#portfolio .pf-intro-copy{max-width:720px;color:var(--muted);line-height:1.75}
#portfolio .pf-intro-copy p{margin:1.2rem 0 0}
#portfolio .pf-intro-copy .pf-intro-closing{color:var(--ink)}
#portfolio .pf-index{display:flex;flex-wrap:wrap;gap:.65rem 1.8rem;padding:1.25rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:1rem}
#portfolio .pf-index a{display:flex;align-items:center;gap:.6rem;color:var(--ink-1);font-size:.88rem;text-decoration:none;padding:.4rem 0}
#portfolio .pf-index a:hover{color:var(--accent-bright)}
#portfolio .pf-index span{font-family:var(--font-mono);font-size:.66rem;color:var(--accent-bright)}
#portfolio .pf-story{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(2rem,5vw,5rem);align-items:center;padding:4.5rem 0;border-bottom:1px solid var(--line);scroll-margin-top:105px}
#portfolio .pf-copy{min-width:0}
#portfolio .pf-story--visual-left{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)}
#portfolio .pf-story--visual-left .pf-canvas{grid-column:1;grid-row:1}
#portfolio .pf-story--visual-left .pf-copy{grid-column:2;grid-row:1}
#portfolio .pf-comparison{margin-top:1.6rem;display:grid;gap:1rem;text-align:left}
#portfolio .pf-comparison>div{padding:.15rem 0 .15rem 1rem;border-left:2px solid #6d6554}
#portfolio .pf-comparison .pf-after{border-color:var(--accent)}
#portfolio .pf-comparison h4{font-family:var(--font-mono);font-size:.65rem;letter-spacing:.13em;text-transform:uppercase;font-weight:500;margin:0 0 .5rem;color:#c1b394}
#portfolio .pf-comparison .pf-after h4{color:#70c8a3}
#portfolio .pf-comparison p{margin:0;color:var(--ink-1);font-size:.9rem;line-height:1.65}
#portfolio .pf-story--featured{display:flex;flex-direction:column;gap:2.2rem;text-align:center;padding:4rem 0 4.5rem}
#portfolio .pf-story--featured .pf-copy{width:100%;max-width:850px}
#portfolio .pf-story--featured .pf-meta{justify-content:center}
#portfolio .pf-story--featured .pf-copy h3{max-width:none;font-size:clamp(2rem,4vw,3.4rem)}
#portfolio .pf-story--featured .pf-description{max-width:62ch;margin-inline:auto}
#portfolio .pf-story--featured .pf-comparison{grid-template-columns:1fr 1fr;gap:2rem;margin-top:2rem}
#portfolio .pf-story--featured .pf-canvas{width:100%;max-width:660px;text-align:left}
#portfolio .pf-meta{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;margin-bottom:1.4rem;font-family:var(--font-mono);font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:#aea99b}
#portfolio .pf-status{display:inline-flex;align-items:center;gap:.45rem;color:#70c8a3}
#portfolio .pf-status::before{content:"";width:5px;height:5px;background:currentColor;border-radius:50%}
#portfolio .pf-copy h3{font-family:var(--font-display);font-size:clamp(1.8rem,3.2vw,2.7rem);font-weight:500;letter-spacing:-.035em;line-height:1.12;margin:0 0 1.2rem;max-width:16ch}
#portfolio .pf-description{color:var(--muted);font-size:1rem;line-height:1.75;max-width:43ch;margin:0}
#portfolio .pf-benefit{margin-top:1.7rem;border-left:2px solid var(--accent);padding:.1rem 0 .1rem 1rem;max-width:40ch}
#portfolio .pf-benefit small{display:block;color:#70c8a3;font-family:var(--font-mono);font-size:.62rem;text-transform:uppercase;letter-spacing:.13em;margin-bottom:.45rem}
#portfolio .pf-benefit p{font-size:.95rem;color:var(--ink);margin:0;line-height:1.55}
#portfolio .pf-tools{margin-top:1.6rem;font-size:.75rem;color:#aaa698;line-height:1.6}
#portfolio .pf-canvas{margin:0;border:1px solid #2c3931;border-radius:16px;overflow:hidden;background:#101510;min-width:0;box-shadow:0 12px 40px #0002}
#portfolio .pf-canvas figcaption{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:1rem 1.3rem;border-bottom:1px solid #293329;font-family:var(--font-mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:#b2b6a9;background:#ffffff02}
#portfolio .pf-canvas figcaption span:last-child{color:#70c8a3;white-space:nowrap}
#portfolio .pf-flow{padding:1.6rem clamp(.9rem,2.4vw,2rem) 1.8rem;background-image:radial-gradient(#71968122 .8px,transparent .8px);background-size:18px 18px}
#portfolio .pf-node{position:relative;border:1px solid #374139;border-radius:9px;background:#192019;padding:.8rem .9rem;text-align:center;margin:0 auto;width:85%;color:var(--ink);font-size:.86rem;line-height:1.4}
#portfolio .pf-node small{display:block;font-size:.72rem;color:#b2b8ac;margin-top:.2rem;line-height:1.45}
#portfolio .pf-trigger{border-color:#44765b;background:#192b20}
#portfolio .pf-node-kicker{display:block;font-family:var(--font-mono);font-size:.57rem;letter-spacing:.12em;text-transform:uppercase;color:#84cda6;margin-bottom:.3rem}
#portfolio .pf-arrow{height:27px;position:relative;width:1px;background:#648773;margin:auto}
#portfolio .pf-arrow::after{content:"";position:absolute;bottom:1px;left:-3px;width:7px;height:7px;border-right:1px solid #648773;border-bottom:1px solid #648773;transform:rotate(45deg)}
#portfolio .pf-decision{width:77%;border-color:#648773;background:#1c2b22;font-size:.85rem}
#portfolio .pf-decision b::before{content:"◇";color:#91d7b2;margin-right:.5rem}
#portfolio .pf-branches{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding-top:22px;position:relative}
#portfolio .pf-branches::before{content:"";position:absolute;top:11px;left:25%;right:25%;height:1px;background:#648773}
#portfolio .pf-branches::after{content:"";position:absolute;top:0;left:50%;height:11px;width:1px;background:#648773}
#portfolio .pf-branch{position:relative;min-width:0;text-align:center}
#portfolio .pf-branch::before{content:"";position:absolute;top:-11px;left:50%;height:11px;width:1px;background:#648773}
#portfolio .pf-branch-label{display:block;width:max-content;max-width:100%;margin:0 auto .55rem;padding:.1rem .45rem;background:#101510;color:#91d7b2;font-family:var(--font-mono);font-size:.62rem}
#portfolio .pf-branch .pf-node{width:100%;height:calc(100% - 1.7rem);font-size:.82rem;padding:.8rem .65rem}
#portfolio .pf-branch--wait .pf-branch-label{color:#d3bf92}
#portfolio .pf-branch--wait .pf-node{border-color:#655941;background:#25241c}
#portfolio .pf-destinations{display:flex;gap:.4rem;justify-content:center;flex-wrap:wrap;margin-top:.55rem}
#portfolio .pf-destinations span{border:1px solid #4b6350;border-radius:4px;padding:.15rem .4rem;font-size:.63rem;color:#cbdecb}
#portfolio .pf-note{margin:2rem 0 0;max-width:760px;color:var(--muted);font-size:.8rem;line-height:1.7}
#portfolio .pf-report{padding:4rem 0;border-bottom:1px solid var(--line);scroll-margin-top:105px}
#portfolio .pf-report-intro{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;margin-bottom:2rem}
#portfolio .pf-report h3{font-family:var(--font-display);font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.15;font-weight:500;letter-spacing:-.03em;margin:0 0 1rem}
#portfolio .pf-report-points{margin:0;padding-left:1.2rem;display:grid;gap:.7rem;color:var(--ink-1);font-size:.92rem;line-height:1.6}
#portfolio .pf-report-points li::marker{color:var(--accent-bright)}
#portfolio .pf-report-flow{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1.3rem;align-items:center;padding:2rem 1.3rem}
#portfolio .pf-report-stage{position:relative;min-width:0}
#portfolio .pf-report-stage:not(:last-child)::after{content:'→';position:absolute;right:-1.1rem;top:50%;transform:translateY(-50%);color:#84cda6}
#portfolio .pf-report-pair{display:grid;gap:.65rem}
#portfolio .pf-report-flow .pf-node{width:100%;padding:.85rem .5rem;font-size:.8rem}
#portfolio .pf-report-flow .pf-node small{font-size:.7rem}
#portfolio .pf-onboarding-support{display:flex;gap:.7rem 1.2rem;flex-wrap:wrap;padding:1.1rem 1.3rem;border-top:1px solid #374139;background:#ffffff03;font-size:.85rem;line-height:1.6}
#portfolio .pf-onboarding-support b{color:#d3bf92}
#portfolio .pf-onboarding-support span{color:var(--muted);flex:1 1 350px}
#portfolio .pf-onboarding-benefit{margin:1.3rem 0 0;max-width:80ch;color:var(--ink-1);font-size:.94rem;line-height:1.7}
@media(max-width:1000px){#portfolio .pf-report-intro{grid-template-columns:1fr;gap:1.5rem}#portfolio .pf-report .pf-canvas{max-width:none}#portfolio .pf-report-flow{grid-template-columns:1fr;gap:1.8rem;padding:1.5rem}#portfolio .pf-report-stage:not(:last-child)::after{content:'↓';right:auto;left:50%;top:100%;transform:translateX(-50%);line-height:1.8rem}#portfolio .pf-report-pair{grid-template-columns:1fr 1fr}#portfolio .pf-report-flow .pf-node{font-size:.86rem}}
@media(max-width:850px){#portfolio .pf-story{grid-template-columns:1fr;gap:2rem;padding:3rem 0}#portfolio .pf-copy h3{max-width:24ch}#portfolio .pf-description{max-width:58ch}#portfolio .pf-canvas{width:100%;max-width:620px}#portfolio .pf-benefit{max-width:54ch}}
@media(max-width:420px){#portfolio .pf-index{gap:.3rem 1rem}#portfolio .pf-index a{font-size:.8rem}#portfolio .pf-canvas figcaption{padding:.9rem;font-size:.55rem}#portfolio .pf-node{width:94%}#portfolio .pf-decision{width:90%}#portfolio .pf-branches{gap:.65rem}#portfolio .pf-branch .pf-node{font-size:.76rem}#portfolio .pf-node small{font-size:.68rem}}
@media(max-width:850px){#portfolio .pf-story--visual-left .pf-copy,#portfolio .pf-story--visual-left .pf-canvas{grid-column:auto;grid-row:auto}#portfolio .pf-story--featured .pf-comparison{grid-template-columns:1fr;gap:1rem}#portfolio .pf-story--featured .pf-copy h3{max-width:none}}
