/* Selected work � image-led cards, shared Lead Flow typography and palette. */
.portfolio-section{isolation:isolate;position:relative;overflow:hidden;padding:105px var(--gutter) 110px;scroll-margin-top:calc(var(--header-h) + 24px);background:linear-gradient(#070e1b,#0b1426 45%,#070e1b)}
.portfolio-section:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 12% 12%,#204a771b,transparent 40%),radial-gradient(ellipse at 90% 58%,#204a7718,transparent 45%)}
.portfolio-inner{max-width:1320px;margin:auto}.portfolio-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:56px}.portfolio-intro{max-width:840px}.portfolio-heading h2{margin:24px 0;font-size:clamp(42px,5.7vw,82px);line-height:1.03;letter-spacing:-.06em;font-weight:400}.portfolio-heading h2>span,.portfolio-cta h2>span{color:#e11d48}.portfolio-description{max-width:590px;color:#9cacc2;font-size:16px;line-height:1.8;margin:0}.portfolio-count{margin:0 0 7px;flex:none;display:flex;flex-direction:column;gap:16px;padding-left:28px;border-left:1px solid #a8c2e120}.portfolio-count strong{font-size:68px;line-height:.9;letter-spacing:-.06em;font-weight:400}.portfolio-count strong>span{font-size:32px;color:#e11d48;margin-left:12px;font-weight:400}.portfolio-count>span{color:#8fa0b7;font-size:10px;line-height:1.7;letter-spacing:.13em}.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.portfolio-reveal{min-width:0;display:flex}.portfolio-card{--portfolio-x:50%;--portfolio-y:70%;position:relative;isolation:isolate;display:flex;flex-direction:column;min-width:0;width:100%;border:1px solid #a8c2e11c;border-radius:24px;padding:10px;background:rgba(15,29,50,.52);transition:transform .45s cubic-bezier(.2,.7,.2,1),border-color .45s,box-shadow .45s}.portfolio-card:before{content:"";position:absolute;inset:0;border-radius:inherit;z-index:-1;pointer-events:none;opacity:0;background:radial-gradient(400px circle at var(--portfolio-x) var(--portfolio-y),#4284c51f,transparent 70%);transition:opacity .45s}.portfolio-image{position:relative;display:grid;place-items:center;aspect-ratio:16/9;overflow:hidden;border:1px solid #a8c2e112;border-radius:16px;background:#070e1b;flex:none}.portfolio-image img{display:block;width:97%;height:97%;object-fit:contain;transition:transform .55s cubic-bezier(.2,.7,.2,1)}.portfolio-number{position:absolute;top:14px;left:14px;padding:7px 10px;color:#d3deec;background:#070e1bcc;border:1px solid #a8c2e12b;border-radius:999px;backdrop-filter:blur(10px);font-size:10px;letter-spacing:.12em;pointer-events:none}.portfolio-info{padding:26px 22px 12px;display:flex;flex-direction:column;flex:1;min-width:0}.portfolio-category{color:#90a2bb;font-size:10px;letter-spacing:.11em;margin:0 0 12px;line-height:1.6}.portfolio-info h3{font-size:30px;font-weight:400;letter-spacing:-.035em;line-height:1.2;margin:0 0 14px}.portfolio-info h3 a{display:inline-block;min-height:38px}.portfolio-summary{font-size:13px;line-height:1.8;color:#9cacc2;margin:0 0 24px;max-width:490px}.portfolio-visit{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;padding:12px 0 3px;margin-top:auto;border-top:1px solid #a8c2e11a;font-size:12px;font-weight:550}.portfolio-visit i{width:32px;height:32px;display:grid;place-items:center;border:1px solid #a8c2e12b;border-radius:50%;font-size:20px;font-style:normal;transition:transform .45s,background .45s}.portfolio-card:focus-within{border-color:#8caed36b}.portfolio-card:focus-within .portfolio-visit i{background:#204a7744}.portfolio-section a:focus-visible{outline:2px solid #e11d48;outline-offset:5px;border-radius:8px}.portfolio-image:focus-visible{outline-offset:-4px}.portfolio-cta{display:flex;align-items:center;justify-content:space-between;gap:48px;margin-top:72px;padding:48px;border:1px solid #a8c2e124;border-radius:24px;background:radial-gradient(ellipse at 90% 100%,#204a7733,transparent 60%),rgba(15,29,50,.65);backdrop-filter:blur(20px)}.portfolio-cta-label{display:flex;align-items:center;gap:10px;margin:0 0 20px;color:#90a2bb;font-size:10px;letter-spacing:.13em}.portfolio-cta-label>span{width:5px;height:5px;flex:none;border-radius:50%;background:#e11d48}.portfolio-cta h2{font-size:clamp(30px,3.6vw,48px);font-weight:400;letter-spacing:-.05em;line-height:1.12;margin:0 0 18px}.portfolio-cta div>p:last-child{font-size:14px;line-height:1.8;color:#9cacc2;max-width:490px;margin:0}.portfolio-discuss{flex:none;min-width:230px;justify-content:space-between}.portfolio-discuss:hover i{transform:translate(2px,-2px)}.motion-ready .portfolio-reveal:nth-child(even){transition-delay:.1s}.service-options+#service-error{margin:-10px 0 18px}.service-options+#service-error:empty{display:none}
@media(hover:hover) and (pointer:fine){.portfolio-card:hover{transform:translateY(-5px);border-color:#8caed354;box-shadow:0 12px 34px #204a771c}.portfolio-card.is-hovered:before{opacity:1}.portfolio-card:hover .portfolio-image img{transform:scale(1.03)}.portfolio-card:hover .portfolio-visit i{transform:translate(2px,-2px);background:#204a7744}}
@media(max-width:900px){.portfolio-card:before{background:radial-gradient(ellipse at center,rgba(62,119,185,.28),transparent 65%);background-size:180% 180%;background-repeat:no-repeat;animation:portfolio-mobile-glow 3.9s linear infinite;transition:none}.portfolio-reveal:nth-child(even) .portfolio-card:before{animation-delay:1.95s}@keyframes portfolio-mobile-glow{0%{opacity:0;background-position:0% 0%}11.53846%{opacity:1;background-position:0% 0%}88.46154%{opacity:1;background-position:100% 100%}100%{opacity:0;background-position:100% 100%}}}@media(max-width:1100px){.portfolio-heading{gap:25px}.portfolio-grid{gap:20px}.portfolio-info{padding:22px 16px 8px}.portfolio-count strong{font-size:56px}.portfolio-cta{padding:36px;gap:24px}}
@media(max-width:900px){.portfolio-section{padding-top:80px;padding-bottom:80px}.portfolio-count{padding-left:20px}.portfolio-heading h2{font-size:54px}.portfolio-description{font-size:14px}.portfolio-info h3{font-size:27px}.portfolio-cta{flex-direction:column;align-items:flex-start}.portfolio-discuss{width:240px}}
@media(max-width:767px){.portfolio-grid{grid-template-columns:1fr;gap:24px}.portfolio-heading{flex-direction:column;align-items:flex-start;gap:26px;margin-bottom:32px}.portfolio-heading h2{font-size:clamp(37px,9.8vw,62px);margin:20px 0}.portfolio-count{flex-direction:row;align-items:center;padding:0;border:0;gap:18px}.portfolio-count strong{font-size:38px}.portfolio-count strong>span{font-size:22px;margin-left:10px}.portfolio-count>span{font-size:9px}.portfolio-intro .eyebrow{font-size:10px}.portfolio-card{border-radius:22px;padding:7px}.portfolio-image{border-radius:15px}.portfolio-number{top:10px;left:10px;font-size:9px;padding:6px 8px}.portfolio-info{padding:22px 17px 10px}.portfolio-info h3{font-size:29px}.portfolio-summary{font-size:13px;margin-bottom:20px}.portfolio-category{font-size:9px;letter-spacing:.09em}.portfolio-cta{margin-top:45px;padding:30px 24px;gap:26px}.portfolio-cta h2{font-size:34px}.portfolio-cta-label{font-size:8px;letter-spacing:.1em}.portfolio-discuss{width:100%;min-width:0}.motion-ready .portfolio-reveal:nth-child(even){transition-delay:0s}}
@media(max-width:360px){.portfolio-heading h2{font-size:35px}.portfolio-cta{padding:26px 19px}.portfolio-cta h2{font-size:29px}.portfolio-info{padding:20px 14px 8px}}
@media(prefers-reduced-motion:reduce){.portfolio-card,.portfolio-image img,.portfolio-visit i{transition:none!important;transform:none!important}.portfolio-card:before{display:none}.motion-ready .portfolio-section .reveal{opacity:1;transform:none;transition:none}}
