.portfolio-page{color:#f4f8fb;background:#07111f;padding:clamp(2rem,5vw,4.5rem) 1rem}.portfolio-container{max-width:1200px;margin:auto}.portfolio-breadcrumbs{color:#a8bdce;flex-wrap:wrap;gap:.65rem;margin-bottom:2rem;font-size:.8rem;display:flex}.portfolio-breadcrumbs a{text-underline-offset:4px;text-decoration:underline}.portfolio-hero{max-width:960px;margin-bottom:2.5rem}.portfolio-eyebrow{color:#92e7c8;text-transform:uppercase;letter-spacing:.09em;font-size:.7rem;font-weight:800}.portfolio-hero h1{letter-spacing:-.045em;text-wrap:balance;margin:1rem 0;font-size:clamp(2rem,4.5vw,3.7rem);font-weight:800;line-height:1.12}.portfolio-lead{color:#beccda;max-width:74ch;font-size:1.05rem;line-height:1.8}.portfolio-actions{flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;margin-top:1.5rem;display:flex}.portfolio-actions a,.portfolio-card-actions a,.portfolio-external{color:#b6edd7;align-items:center;gap:.5rem;min-height:44px;font-size:.85rem;font-weight:750;display:inline-flex}.portfolio-actions .cro-button{color:#06251d}.portfolio-page a svg{flex-shrink:0}.portfolio-page a:focus-visible,.portfolio-page button:focus-visible,.portfolio-page summary:focus-visible,.portfolio-search:focus-within{outline-offset:4px;outline:2px solid #b6edd7}.portfolio-page a:hover{text-underline-offset:4px;text-decoration:underline}.portfolio-answer{background:#0e2030;border-left:3px solid #6ee7b7;border-radius:0 1rem 1rem 0;gap:.5rem;margin-bottom:3rem;padding:1.25rem 1.5rem;display:grid}.portfolio-answer p,.portfolio-planning p,.portfolio-detail-grid p,.portfolio-faq p,.portfolio-cta p{color:#bbcbda;line-height:1.8}.portfolio-answer a,.portfolio-detail-grid a,.portfolio-empty button{color:#b6edd7;text-underline-offset:4px;text-decoration:underline}.portfolio-list{scroll-margin-top:7rem}.portfolio-page h2{letter-spacing:-.025em;margin:.6rem 0 1rem;font-size:clamp(1.45rem,2.3vw,2rem);font-weight:800;line-height:1.25}.portfolio-search input{color:#f4f8fb;background:0 0;outline:0;width:100%;min-width:0;font-size:16px}.portfolio-search input::placeholder{color:#9fb3c6}.portfolio-count{color:#9fb5c7;margin-bottom:1rem;font-size:.8rem}.portfolio-grid{grid-template-columns:minmax(0,1fr);gap:1.5rem;display:grid}.portfolio-card{background:#0e1d2d;border:1px solid #2c4355;border-radius:1.1rem;flex-direction:column;min-width:0;transition:border-color .2s;display:flex;overflow:clip}.portfolio-card:hover{border-color:#79bda2}.portfolio-preview{background:#102332;min-width:0}.portfolio-browser-bar{color:#a9bbca;justify-content:space-between;align-items:center;gap:.7rem;padding:.65rem 1rem;font-size:.7rem;display:flex}.portfolio-browser-bar>span:first-child{color:#65897e;white-space:nowrap;letter-spacing:.15em}.portfolio-browser-bar>span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.portfolio-browser-bar svg{flex-shrink:0}.portfolio-preview img{aspect-ratio:8/5;-o-object-fit:cover;object-fit:cover;width:100%;height:auto;display:block}.portfolio-preview-unavailable{aspect-ratio:8/5;color:#b7cddc;background:radial-gradient(circle,#183e3a,#0b1a29);flex-direction:column;justify-content:center;align-items:center;gap:.65rem;display:flex}.portfolio-card-copy{flex-direction:column;flex:1;padding:clamp(1.1rem,2vw,1.65rem);display:flex}.portfolio-card h3{letter-spacing:-.025em;margin:.65rem 0;font-size:1.35rem;font-weight:800;line-height:1.35}.portfolio-card-copy>p:not(.portfolio-eyebrow){color:#b9cbd9;font-size:.9375rem;line-height:1.75}.portfolio-card-actions{border-top:1px solid #2c4355;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1rem;margin-top:auto;padding-top:.7rem;display:flex}.portfolio-card-copy>p:not(.portfolio-eyebrow){margin-bottom:1.25rem}.portfolio-preview--large{border:1px solid #2c4355;border-radius:1.1rem;overflow:clip}.portfolio-preview figcaption{color:#a8c0d0;padding:1rem;font-size:.8rem;line-height:1.7}.portfolio-detail-grid{gap:2rem;margin:3rem 0 1.5rem;display:grid}.portfolio-detail-grid h2:not(:first-child){margin-top:1.75rem}.portfolio-detail-grid h3{margin:1.5rem 0 .75rem;font-size:1rem;font-weight:800}.portfolio-detail-grid ul{color:#bbcbda;padding-left:1.2rem;line-height:1.8;list-style:outside}.portfolio-detail-grid li{margin-top:.5rem}.portfolio-detail-grid li a{align-items:center;gap:.4rem;min-height:44px;display:inline-flex}.portfolio-detail-grid aside{background:#0e2030;border:1px solid #2c4355;border-radius:1rem;padding:1.5rem}.portfolio-source{margin-top:1rem;font-size:.8rem}.portfolio-note{color:#a1b8c8;border-left:2px solid #648f81;padding:1rem;font-size:.8125rem;line-height:1.8}.portfolio-planning{border-block:1px solid #2c4355;margin-top:2rem;padding:2rem 0}.portfolio-faq{margin-top:3rem}.portfolio-faq details{border-bottom:1px solid #2c4355;padding:1rem 0}.portfolio-faq summary{cursor:pointer;min-height:44px;font-weight:750}.portfolio-faq p{max-width:85ch}.portfolio-cta{background:#102c2a;border:1px solid #3b6154;border-radius:1.25rem;gap:1.25rem;margin-top:3rem;padding:clamp(1.25rem,3vw,2.5rem);display:grid}.portfolio-cta .cro-button{justify-self:start}.portfolio-empty{background:#0e2030;border-radius:1rem;padding:2rem}.portfolio-hero--showcase{align-items:center;gap:clamp(1.75rem,4vw,4rem);max-width:none;margin-bottom:2.5rem;display:grid}.portfolio-hero-copy{min-width:0}.portfolio-hero--showcase h1{text-wrap:initial;font-size:clamp(2.25rem,4.2vw,3.65rem);line-height:1.12}.portfolio-hero--showcase .portfolio-lead{max-width:48ch;font-size:1rem}.portfolio-hero--showcase .portfolio-eyebrow{align-items:center;gap:.55rem;display:flex}.portfolio-status-dot{background:#78e6bc;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #78e6bc15}.portfolio-hero-stats{border-top:1px solid #304553;flex-wrap:wrap;gap:1.25rem;margin-top:2rem;padding-top:1.25rem;display:flex}.portfolio-hero-stats>div{border-right:1px solid #304553;flex-direction:column-reverse;gap:.35rem;padding-right:1rem;display:flex}.portfolio-hero-stats>div:last-child{border:0;padding-right:0;display:none}.portfolio-hero-stats>div:nth-child(2){border-right:0}.portfolio-hero-stats dt{color:#a5b9c9;font-size:.7rem}.portfolio-hero-stats dd{letter-spacing:-.03em;font-size:1.5rem;font-weight:800;line-height:1.2}.portfolio-hero-stats>div:last-child dd{letter-spacing:0;font-size:.875rem}.portfolio-hero-art{background:#0b1823;border:1px solid #304a52;border-radius:1.4rem;min-width:0;animation:.75s ease-out both portfolio-reveal;position:relative;overflow:clip;box-shadow:0 24px 65px #0005}.portfolio-hero-art img{aspect-ratio:3/2;-o-object-fit:cover;object-fit:cover;width:100%;height:auto;display:block}.portfolio-art-label{color:#b2e5d1;background:#0a201dea;border:1px solid #557367;border-radius:999px;align-items:center;gap:.5rem;padding:.65rem .8rem;font-size:.7rem;display:inline-flex;position:absolute;top:1rem;left:1rem}.portfolio-hero-art figcaption{color:#a3b8c7;padding:.8rem 1rem;font-size:.7rem;line-height:1.6}.portfolio-type-filter select:focus-visible{outline-offset:3px;outline:2px solid #b6edd7}.portfolio-card-tags{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.portfolio-card-tags>span{color:#a5bac9;font-size:.68rem}.portfolio-source-excerpt{background:#0e2030;border-left:2px solid #76b79d;margin-top:2rem;padding:1rem 1.25rem}.portfolio-source-excerpt blockquote{color:#dbe8ee;margin:.65rem 0;font-size:1.05rem;line-height:1.7}.portfolio-source-excerpt>p:last-child{color:#a6bdce;font-size:.8rem}@keyframes portfolio-reveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (width>=1000px){.portfolio-hero--showcase{grid-template-columns:minmax(0,1fr) minmax(0,1.12fr)}.portfolio-hero-art img{aspect-ratio:1.12}.portfolio-hero--showcase .portfolio-actions{-moz-column-gap:1rem;column-gap:1rem}}@media (hover:hover) and (prefers-reduced-motion:no-preference){.portfolio-hero-art img{transition:transform .8s}.portfolio-hero-art:hover img{transform:scale(1.025)}}@media (prefers-reduced-motion:reduce){.portfolio-hero-art{animation:none}}@media (width>=700px){.portfolio-page{padding-inline:2rem}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-hero-stats>div:last-child{display:flex}.portfolio-hero-stats>div:nth-child(2){border-right:1px solid #304553}}@media (width>=1000px){.portfolio-detail-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.portfolio-cta{grid-template-columns:minmax(0,1fr) auto;align-items:center}}@media (prefers-reduced-motion:reduce){.portfolio-card{transition:none}}.portfolio-list-heading,.portfolio-results-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.25rem 1rem;display:flex}.portfolio-list-heading #portfolio-list-title{margin:.25rem 0 0}.portfolio-samples-link{color:#b6edd7;align-items:center;gap:.45rem;min-height:44px;font-size:.85rem;font-weight:750;display:inline-flex}.portfolio-toolbar{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.portfolio-search,.portfolio-type-filter select{color:#e3edf5;background:#0e2030;border:1px solid #355064;border-radius:.65rem;width:100%;min-width:0;min-height:44px;padding:.45rem .75rem;font-size:16px}.portfolio-search{flex:2 19rem;align-items:center;gap:.6rem;display:flex}.portfolio-search svg{color:#a9cbbb;flex:none}.portfolio-type-filter{flex:9rem;min-width:0}.portfolio-results-bar{margin:.5rem 0 .75rem}.portfolio-results-bar .portfolio-count{margin:0}.portfolio-service-filters{flex-wrap:wrap;gap:.375rem;display:flex}.portfolio-service-filters .cro-button{min-height:44px;padding:.375rem .75rem;font-size:.8125rem}@media (width>=1024px){#portfolio-projects>.portfolio-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.portfolio-showcase{background:radial-gradient(at 75% 4%,#0d353a65,#0000 23rem),#06121d;overflow:clip}.portfolio-showcase .portfolio-container{max-width:1460px}.portfolio-hero--showcase,.case-study-showcase,.portfolio-github{isolation:isolate;position:relative}.portfolio-hero--showcase:before,.case-study-showcase:before,.portfolio-github:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(at 62% 6%,#197b7055,#0000 42%);border-top:1px solid #61eac085;border-bottom:1px solid #eab75d85;border-radius:50%;position:absolute;inset:-4rem -10% 0 18%;transform:rotate(-9deg);box-shadow:inset 0 12px 38px #14897924,0 18px 48px #d79f3d12}.portfolio-hero--showcase{padding-bottom:clamp(2.5rem,6vw,6rem)}.portfolio-hero--showcase h1{font-size:clamp(2.5rem,5vw,5rem)}.portfolio-hero--showcase h1 span{color:#74eac0}.portfolio-hero--showcase .portfolio-lead{font-size:clamp(1rem,1.45vw,1.25rem)}.portfolio-hero--showcase .cro-button--primary{box-shadow:0 0 24px #5debb347}.portfolio-hero-art{background:linear-gradient(#0b1e28,#0b1e28) padding-box padding-box,linear-gradient(140deg,#56e5b6,#f6cc7d 42%,#56e5b6) border-box;border-color:#0000}.portfolio-hero-art figcaption{padding:1rem 1.35rem;font-size:.9rem}.portfolio-hero-stats dd{font-size:clamp(1.5rem,2.6vw,2.4rem)}.case-study-showcase{padding-block:clamp(2rem,4vw,4rem)}.case-study-showcase:before{border-top-color:#d8a65085;border-bottom:0;height:12rem;inset:0 -12% auto;transform:rotate(4deg)}.case-study-heading{text-align:center;margin-bottom:1.75rem}.case-study-kicker{color:#f6cc7b;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:800}.case-study-kicker:before{content:"";vertical-align:middle;background:#f6c465;width:1.6rem;height:2px;margin-right:.65rem;display:inline-block}.case-study-heading h2,.portfolio-github h2,.portfolio-guide h2{color:#f5f8fb;letter-spacing:-.035em;margin:.6rem 0;font-size:clamp(1.9rem,3.45vw,3.4rem);font-weight:800;line-height:1.12}.case-study-heading h2 span,.portfolio-github h2 span,.portfolio-guide h2 span,.portfolio-showcase .brand-review-section h3 span{color:#f5c56a}.case-study-heading>p:last-child{color:#becddb}.case-study-heading:after{content:"";background:#f5c56a;width:3.5rem;height:3px;margin:1rem auto 0;display:block}.case-study-card{background:linear-gradient(145deg,#13232e,#08141e 80%);border-color:#57707c;flex-direction:column;display:flex;position:relative}.case-study-card:after{content:"";bottom:0;pointer-events:none;background:linear-gradient(90deg,#ffcf73,#0000 75%);height:2px;position:absolute;inset-inline:5%}.case-study-image{position:relative}.case-study-image .portfolio-browser-bar{display:none}.case-study-image img{aspect-ratio:1.7;-o-object-position:top;object-position:top}.case-study-badge{pointer-events:none;color:#c9eff2;background:#06131dec;border:1px solid #8dd6df66;border-radius:999px;padding:.35rem .7rem;font-size:.72rem;font-weight:800;position:absolute;top:.75rem;left:.75rem}.case-study-card .portfolio-card-copy{flex-direction:column;flex:1;display:flex}.case-study-card .portfolio-card-actions{margin-top:auto;padding-top:.7rem}.case-study-card .portfolio-card-actions svg{color:#f6c468}.case-study-details{gap:.75rem;margin-top:.75rem;display:grid}.case-study-details>div{grid-template-columns:auto minmax(0,1fr);gap:.55rem;display:grid}.case-study-details svg{color:#f6c468;margin-top:.1rem}.case-study-details>div:nth-child(2) svg{color:#80dd8c}.case-study-details dt{color:#f5f8fb;font-weight:800}.case-study-details dd{color:#c4d2df;margin:.2rem 0 0;font-size:.9rem;line-height:1.5}.case-study-more{margin-top:1.5rem}.case-study-more summary{color:#f5f8fb;cursor:pointer;border:1px solid #f5c56a;border-radius:999px;justify-content:center;align-items:center;gap:.6rem;width:fit-content;min-height:44px;margin:0 auto 1.25rem;padding:.55rem 1.25rem;font-weight:800;display:flex}.case-study-more summary svg{color:#f5c56a}.case-study-dialog{overscroll-behavior:contain;color:#f5f8fb;background:#0b1924;border:1px solid #b3894e;border-radius:1.25rem;width:min(800px,100% - 2rem);max-height:calc(100dvh - 2rem);margin:auto;padding:0;position:fixed;inset:0;overflow:auto;box-shadow:0 20px 70px #000a}.case-study-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#020810db}.case-study-dialog-content{padding:clamp(1rem,3vw,2rem)}.case-study-dialog h2{margin:.5rem 0 1rem;padding-right:2.8rem;font-size:clamp(1.5rem,4vw,2.4rem);font-weight:800;line-height:1.15}.case-study-close{background:#142735;border:1px solid #657c87;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:.7rem;right:.7rem}.case-study-dialog :focus-visible,.case-study-more summary:focus-visible{outline-offset:3px;outline:2px solid #f5c56a}.case-study-dialog .portfolio-preview{border-radius:.75rem;overflow:hidden}body:has(.case-study-dialog[open]){overflow:hidden}.portfolio-github,.portfolio-guide{align-items:center;gap:1.5rem;display:grid}.portfolio-github:before{border-top:0;inset:0 0 0 35%;transform:rotate(-6deg)}.portfolio-github .portfolio-actions a,.portfolio-guide .portfolio-actions a{color:#f6cf84;border:1px solid #ba9b64;border-radius:999px;padding:.45rem .95rem}.portfolio-github-device{background:#090e16;border:1px solid #96a7b5;border-bottom:0;border-radius:1rem 1rem 0 0;width:min(86%,29rem);margin:auto;padding:7px 7px 0;transform:perspective(900px)rotateX(8deg)rotateY(-12deg)}.portfolio-github-device:after{content:"";background:linear-gradient(#a4b0bc,#24343e);border-radius:1px 1px 14px 14px;height:12px;margin-inline:-10%;display:block;box-shadow:0 12px 22px #000a}.portfolio-github-screen{color:#edf6fb;background:linear-gradient(145deg,#0f2331,#09121c);gap:.75rem;padding:clamp(1rem,3vw,2rem);display:grid}.portfolio-github-screen>span{align-items:center;gap:.45rem;font-weight:800;display:flex}.portfolio-github-screen strong{font-size:clamp(1rem,2vw,1.55rem)}.portfolio-github-screen small,.portfolio-github-screen>div{color:#b4c5d2}.portfolio-github-screen>div{border-top:1px solid #355064;flex-wrap:wrap;gap:.65rem;padding-top:.65rem;display:flex}.portfolio-guide img{aspect-ratio:2.1;-o-object-fit:cover;object-fit:cover;border:1px solid #385467;border-radius:1.2rem;width:100%;height:auto}.portfolio-showcase .brand-review-card{background:linear-gradient(145deg,#172733,#0b1821);border-color:#4e6573}.brand-review-card figcaption{align-items:center;gap:.75rem;display:flex}.brand-review-card figcaption img{-o-object-fit:contain;object-fit:contain;border:1px solid #59707d;border-radius:.65rem}.portfolio-showcase .brand-review-card a{color:#f6cf84}.portfolio-showcase .brand-review-card blockquote{font-style:italic}@media (width>=1000px){.case-study-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.portfolio-github,.portfolio-guide{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-showcase .brand-review-section{grid-template-columns:minmax(0,1fr) minmax(0,2.4fr);gap:.65rem 1.5rem;display:grid}.portfolio-showcase .brand-review-section h3{grid-area:1/1;align-self:end}.portfolio-showcase .brand-review-section>p:first-of-type{grid-area:2/1;margin-top:0}.portfolio-showcase .brand-review-grid{grid-area:1/2/span 2;margin-top:0}.portfolio-showcase .brand-review-checked{grid-column:2}}
