/* Source-led work: explicit colours, measured type and real project photography. */
.pfr-launch-work-hero{padding:155px max(6vw,24px) 60px;background:#101b2b;color:#fff}
.pfr-launch-work-hero .pfr-new-page-kicker{color:#b7d4f8!important}
.pfr-launch-work-hero h1{font-size:clamp(46px,5.8vw,88px);line-height:1.05;color:#fff;margin:18px 0 26px}
.pfr-launch-work-hero p{font-size:clamp(19px,1.7vw,24px);line-height:1.55;color:#e0e8f3;max-width:860px;margin:0}
.pfr-launch-work{padding:80px max(6vw,24px);background:#f4f5f6;color:#182331}
.pfr-launch-work--established{background:#fff}
.pfr-launch-work__heading{max-width:770px;margin:0 0 40px}
.pfr-launch-work__heading h2{font-size:clamp(30px,3.4vw,50px);line-height:1.1;margin:14px 0 20px;color:#142235}
.pfr-launch-work__heading p{font-size:19px;line-height:1.6;color:#37485b}
.pfr-launch-work__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.pfr-launch-work__grid article{min-width:0;background:#fff;border:1px solid #dce1e7;border-radius:6px;overflow:hidden}
.pfr-launch-work__grid article a{display:flex;flex-direction:column;height:100%;color:#142235;text-decoration:none}
.pfr-launch-work__grid article a:hover h3{text-decoration:underline;text-underline-offset:5px}
.pfr-launch-work__grid figure{margin:0;background:#0d1622;aspect-ratio:4/3;overflow:hidden}
.pfr-launch-work__grid img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.pfr-launch-work__grid article a:hover img{transform:scale(1.025)}
.pfr-launch-work__grid article a>div{padding:25px;display:flex;flex:1;flex-direction:column}
.pfr-launch-work__grid span{font-size:13px;letter-spacing:.035em;color:#43576b}
.pfr-launch-work__grid h3{font-size:27px;line-height:1.15;margin:12px 0 14px;color:#142235}
.pfr-launch-work__grid p{font-size:17px;line-height:1.55;color:#384a5c;margin:0 0 25px}
.pfr-launch-work__grid em{margin-top:auto;font-size:16px;font-style:normal;color:#254a82;font-weight:600}
.pfr-launch-archive-link{display:inline-block;margin-top:34px;padding:15px 0;color:#254a82;text-decoration:underline;text-underline-offset:5px}
.pfr-launch-case{background:#fff;color:#142235}
.pfr-launch-case__hero{display:grid;grid-template-columns:1fr 1fr;background:#101b2b;color:#fff;padding:125px max(6vw,24px) 65px;gap:50px;align-items:center}
.pfr-launch-case__hero h1{font-size:clamp(38px,4.6vw,68px);line-height:1.06;color:#fff;margin:18px 0 25px}
.pfr-launch-case__hero p{font-size:20px;line-height:1.6;max-width:680px;color:#e0e8f3}
.pfr-launch-case__hero figure{margin:0;background:#080f19;border-radius:4px;overflow:hidden}
.pfr-launch-case__hero img{display:block;width:100%;height:460px;object-fit:contain}
.pfr-launch-case .pfr-new-page-kicker{color:#325f96}
.pfr-launch-case__hero .pfr-new-page-kicker{color:#b7d4f8!important}
.pfr-launch-back{display:block;color:#c4daf6;font-size:15px;margin:0 0 34px;text-decoration:none}
.pfr-launch-back--archive{padding:24px max(6vw,24px);background:#fff;color:#254a82;margin:0}
.pfr-launch-case__facts{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin:0;padding:35px max(6vw,24px);background:#edf1f5;border-bottom:1px solid #d4dce5}
.pfr-launch-case__facts dt{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:#506174;margin-bottom:10px}
.pfr-launch-case__facts dd{margin:0;font-size:17px;line-height:1.4;color:#172537}
.pfr-launch-case__story{max-width:1040px;margin:auto;padding:75px max(5vw,24px) 25px}
.pfr-launch-case__story section{margin-bottom:50px}
.pfr-launch-case__story h2{font-size:clamp(28px,3vw,39px);line-height:1.15;color:#142235;margin:12px 0 22px}
.pfr-launch-case__story p,.pfr-launch-case__story li{font-size:19px;line-height:1.7;color:#304255}
.pfr-launch-case__story ul{list-style:disc;padding-left:22px}
.pfr-launch-case__story li{margin:12px 0}
.pfr-launch-case__story blockquote{margin:55px 0;padding:35px;border-left:4px solid #487bb7;background:#edf3fa}
.pfr-launch-case__story blockquote p{font-size:clamp(22px,2.4vw,30px);line-height:1.45;color:#193451;margin:0 0 25px}
.pfr-launch-case__story blockquote footer{background:transparent;color:#304255;display:flex;flex-direction:column;gap:7px;padding:0;font-size:16px}
.pfr-launch-case__gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding:25px max(6vw,24px) 75px}
.pfr-launch-case__gallery figure{margin:0;background:#111b2b}
.pfr-launch-case__gallery img{display:block;width:100%;height:410px;object-fit:contain}
.pfr-launch-case__next{display:grid;grid-template-columns:2fr 1fr;gap:55px;padding:70px max(6vw,24px);background:#101b2b;color:#fff}
.pfr-launch-case__next h2{font-size:clamp(30px,3vw,45px);line-height:1.15;color:#fff;margin:15px 0 24px}
.pfr-launch-case__next p{font-size:19px;line-height:1.6;color:#e0e8f3;max-width:660px}
.pfr-launch-case__next a{display:inline-block;margin:14px 0;color:#c3dcff;font-size:18px;text-decoration:underline;text-underline-offset:5px}
.pfr-launch-case__next nav{display:flex;flex-direction:column;justify-content:center}
.pfr-launch-case__next .pfr-new-page-kicker{color:#b7d4f8!important}
.pfr-launch-work a:focus-visible,.pfr-launch-case a:focus-visible{outline:3px solid #5189cf;outline-offset:5px}
.pfr-tech-placeholder--image{position:relative}
.pfr-technical-concept{position:absolute;left:16px;bottom:16px;background:rgba(0,0,0,.82);padding:8px 12px;color:#fff;font-size:12px;line-height:1.4;border-radius:3px;z-index:2}
@media(max-width:1050px){.pfr-launch-work__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pfr-launch-case__hero{gap:30px}.pfr-launch-case__hero img{height:360px}}
@media(max-width:760px){.pfr-launch-work{padding:55px 24px}.pfr-launch-work__grid{grid-template-columns:1fr}.pfr-launch-case__hero{grid-template-columns:1fr;padding:105px 24px 40px}.pfr-launch-case__hero img{height:auto;max-height:420px}.pfr-launch-case__facts{grid-template-columns:repeat(2,1fr);padding:28px 24px}.pfr-launch-case__gallery{grid-template-columns:1fr;padding:24px}.pfr-launch-case__gallery img{height:auto;max-height:450px}.pfr-launch-case__next{grid-template-columns:1fr;padding:50px 24px;gap:20px}.pfr-launch-case__story blockquote{padding:24px}.pfr-launch-case__story{padding-top:50px}}
@media(prefers-reduced-motion:reduce){.pfr-launch-work__grid img{transition:none}}
@media(max-width:760px){.pfr-launch-work-hero{padding:115px 24px 45px}}
