/* RL portfolio detail pages V5: isolated styles, no JS and no external assets. */
:root{color-scheme:dark;--bg:#0c0e12;--panel:#15191f;--line:#2d343c;--ink:#f1f2f3;--muted:#b5bec6;--accent:#db3a47}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink);line-height:1.7}a{color:inherit}a:focus-visible{outline:2px solid #f58a93;outline-offset:4px}img{max-width:100%;display:block}
.pc-shell{max-width:1132px;margin:auto;padding:0 24px}.pc-header{border-bottom:1px solid var(--line);background:#0e1015}.pc-top{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.pc-brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-weight:700;font-size:14px;letter-spacing:.01em}.pc-logo{width:124px;height:auto;max-height:42px;object-fit:contain}.pc-nav{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.pc-nav a{text-decoration:none;color:#c6cbd1;font-size:13px}.pc-nav a:hover,.pc-meta a:hover{color:white}
.pc-breadcrumb{display:flex;gap:9px;align-items:center;flex-wrap:wrap;color:#9aa4af;font-size:12px;padding:24px 0 0}.pc-breadcrumb a{text-decoration:none}.pc-breadcrumb .sep{opacity:.45}
.pc-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:45px;padding:52px 0 76px;border-bottom:1px solid var(--line)}.pc-kicker{color:#f18c95;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:750}.pc-hero h1{font-size:clamp(27px,3.2vw,40px);letter-spacing:-.025em;line-height:1.17;font-weight:700;margin:13px 0 20px}.pc-lead{font-size:16px;color:#c7ccd1;max-width:57ch;line-height:1.75}.pc-actions{display:flex;gap:12px;flex-wrap:wrap;margin:27px 0 0}.pc-button{padding:11px 17px;border-radius:9px;font-size:13px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-height:44px;font-weight:700}.pc-primary{background:#b92a38;color:white}.pc-outline{border:1px solid #59606a;color:white}.pc-media{background:#1b2027;border:1px solid #393f48;border-radius:14px;overflow:hidden}.pc-media img{width:100%;aspect-ratio:16/10;object-fit:cover;background:#15191f}.pc-media figcaption{font-size:11px;color:#a8b1ba;padding:12px 15px;border-top:1px solid #333a43}
.pc-note{padding:15px 18px;border-left:3px solid #a83f4a;background:#211a20;color:#ddd5d8;font-size:13px;line-height:1.7;margin-top:22px}.pc-quad{padding:58px 0 12px}.pc-section-title{font-size:23px;line-height:1.3;letter-spacing:-.012em;margin:7px 0 12px;font-weight:700}.pc-description{color:var(--muted);font-size:14px;max-width:74ch;margin:0 0 24px}.pc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.pc-panel{border:1px solid var(--line);background:var(--panel);padding:23px;border-radius:12px}.pc-number{color:#eb8c94;font-size:11px;font-weight:800}.pc-panel h3{font-size:16px;line-height:1.35;margin:8px 0 7px}.pc-panel p{font-size:13px;color:#bdc4cb;margin:0}
.pc-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(250px,.65fr);gap:36px;padding:56px 0}.pc-steps{display:grid;gap:24px}.pc-step{border-top:1px solid var(--line);padding-top:18px}.pc-step h3{font-size:16px;margin:0 0 8px}.pc-step p{color:#bfc6cc;font-size:14px;margin:0}.pc-aside{align-self:start;background:#14191f;border:1px solid var(--line);padding:25px;border-radius:12px}.pc-aside strong{font-size:13px}.pc-aside p,.pc-aside li{font-size:13px;color:#b8c0c8}.pc-aside ul{padding-left:18px}.pc-aside li{margin:9px 0}.pc-aside a{color:#f1afb4;text-decoration-thickness:1px;text-underline-offset:3px}
.pc-faq{padding:12px 0 55px;border-top:1px solid var(--line)}.pc-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:20px}.pc-faq h3{font-size:15px;margin:0 0 7px}.pc-faq p{font-size:13px;color:#bcc3ca;margin:0}
.pc-related{padding:31px 0 48px;border-top:1px solid var(--line)}.pc-related-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}.pc-related a{border:1px solid #49515b;border-radius:8px;padding:9px 14px;font-size:13px;text-decoration:none}.pc-related a:hover{background:#252a31}
.pc-callout{padding:27px 30px;border-radius:13px;background:linear-gradient(120deg,#242027,#181d24);border:1px solid #49323b;display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:70px}.pc-callout h2{font-size:20px;line-height:1.35;margin:0}.pc-callout p{color:#bfc6cd;font-size:13px;margin:8px 0 0}.pc-footer{border-top:1px solid var(--line);padding:29px 0 37px;color:#9ba5ae;font-size:12px}.pc-footer .pc-shell{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.pc-footer a{text-decoration:none;color:#d4dade}
.pc-hub-hero{padding:44px 0 30px}.pc-hub-hero h1{font-size:clamp(28px,3vw,40px);line-height:1.2;letter-spacing:-.025em;margin:12px 0}.pc-hub-hero p{font-size:15px;color:#c1c9d0;max-width:73ch}.pc-hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding-bottom:58px}.pc-tile{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#15191f;display:flex;flex-direction:column;text-decoration:none}.pc-tile:hover{border-color:#96505a}.pc-tile img{aspect-ratio:16/10;object-fit:cover;width:100%;background:#171a20}.pc-tile-copy{padding:21px;display:flex;flex-direction:column;flex:1}.pc-tile-copy h2{font-size:18px;margin:8px 0 5px;line-height:1.3}.pc-tile-copy p{font-size:13px;color:#bbc4cc;margin:0 0 13px}.pc-tile-copy span:last-child{margin-top:auto;font-size:13px;color:#e3a5ad;font-weight:700}.pc-hub-guidance{padding:35px 0 55px;border-top:1px solid var(--line)}.pc-hub-guidance p{color:#c1c8d0;font-size:14px;max-width:78ch}
@media(max-width:900px){.pc-hero{grid-template-columns:1fr;gap:25px}.pc-layout{grid-template-columns:1fr}.pc-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.pc-shell{padding:0 17px}.pc-top{min-height:70px}.pc-logo{width:100px}.pc-nav{gap:13px}.pc-nav a{font-size:12px}.pc-hero{padding:38px 0 48px}.pc-lead{font-size:15px}.pc-quad{padding-top:38px}.pc-grid,.pc-faq-grid,.pc-hub-grid{grid-template-columns:1fr}.pc-layout{padding:38px 0}.pc-callout{display:block;padding:23px}.pc-callout .pc-button{margin-top:20px}.pc-hub-hero{padding-top:30px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(max-width:620px){.pc-top{flex-wrap:wrap;gap:9px;padding:12px 0}.pc-nav{width:100%;gap:11px 15px}.pc-nav a{white-space:nowrap}}
