.portfolio{--bg:#f5f5f7;--bg-2:#ebebee;--fg:#1a1a1c;--fg-2:#76767a;--line:#1a1a1c1f;--line-strong:#1a1a1c4d;--pad:clamp(18px,4vw,56px);--brand-red:#d8252b;--brand-red-ink:#b81e23;background:var(--bg);color:var(--fg);font-family:var(--font-geist,"Geist",system-ui,sans-serif);-webkit-font-smoothing:antialiased;min-height:100vh;font-size:16px;font-weight:400;line-height:1.5;overflow-x:hidden}.portfolio,.portfolio *{box-sizing:border-box}.portfolio a{color:inherit;text-decoration:none}.portfolio img{max-width:100%;display:block}.portfolio nav.top{z-index:50;padding:14px var(--pad);-webkit-backdrop-filter:blur(12px)saturate(140%);color:#1a1816;background:#f5f5f7d1;border-bottom:1px solid #1a1a1c1f;justify-content:space-between;align-items:center;gap:16px;display:flex;position:fixed;inset:0 0 auto}.portfolio nav.top .brand,.portfolio nav.top .nav-meta{color:#1a1816}.portfolio nav.top .brand .brand-name{color:var(--brand-red)}.portfolio nav.top ul a{color:#1a1a1cb3}.portfolio nav.top ul a:hover{color:var(--brand-red);opacity:1}.portfolio nav.top .brand{flex-shrink:0;align-items:center;line-height:1;display:inline-flex}.portfolio nav.top .brand-lockup{width:auto;height:40px;display:block}@media (max-width:480px){.portfolio nav.top .brand-lockup{height:32px}}.portfolio nav.top ul{gap:28px;margin:0;padding:0;list-style:none;display:flex}.portfolio nav.top ul a{color:var(--fg);opacity:.7;font-size:14px;transition:opacity .2s}.portfolio nav.top ul a:hover{opacity:1}.portfolio nav.top .nav-meta{color:var(--fg);opacity:.7;flex-shrink:0;font-size:13px}@media (max-width:720px){.portfolio nav.top ul{display:none}}@media (max-width:420px){.portfolio nav.top{padding:14px var(--pad)}.portfolio nav.top .nav-meta{display:none}}.portfolio .hero{min-height:100svh;padding:clamp(110px,14vh,170px)var(--pad)clamp(60px,8vh,100px);grid-template-columns:.95fr 1.15fr;grid-template-areas:"text image";align-items:center;column-gap:clamp(32px,5vw,80px);display:grid;position:relative;overflow:hidden}.portfolio .hero-bg{isolation:isolate;grid-area:image;place-items:center;width:100%;min-width:0;display:grid;position:relative;transform:translateY(clamp(-100px,-10vh,-50px))}.portfolio .hero-slide{object-fit:contain;object-position:25% center;opacity:0;pointer-events:none;grid-area:1/1;width:100%;height:auto;max-height:90vh;transition:opacity 1.4s ease-in-out;display:block}.portfolio .hero-slide.is-active{opacity:1}.portfolio .hero-text{grid-area:text}.portfolio .hero-eyebrow{top:clamp(110px,14vh,180px);left:var(--pad);z-index:3;letter-spacing:.08em;text-transform:uppercase;color:var(--fg);align-items:center;gap:14px;font-size:clamp(11px,.85vw,14px);font-weight:500;display:inline-flex;position:absolute}.portfolio .hero-eyebrow-dot{background:var(--brand-red);flex-shrink:0;width:7px;height:7px;display:inline-block}.portfolio .hero-eyebrow svg{flex-shrink:0;width:clamp(14px,1vw,18px);height:clamp(14px,1vw,18px)}.portfolio .hero-eyebrow-stars{color:var(--brand-red);letter-spacing:.08em;font-size:clamp(12px,.95vw,16px);line-height:1}.portfolio .hero-overlay{z-index:1;background:linear-gradient(#18181a0d 0%,#18181a80 65%,#18181ae6 85%);position:absolute;inset:0}.portfolio .hero-text{z-index:2;flex-direction:column;gap:clamp(20px,3vh,32px);min-width:0;max-width:1200px;display:flex;position:relative}.portfolio .hero h1{letter-spacing:-.035em;max-width:14ch;margin:0;font-size:clamp(36px,7vw,130px);font-weight:400;line-height:1}.portfolio .hero-cta{color:var(--fg);letter-spacing:-.005em;align-self:flex-start;align-items:center;gap:10px;font-size:clamp(13px,1.05vw,17px);font-weight:500;transition:color .2s;display:inline-flex}.portfolio .hero-cta span{color:var(--brand-red);transition:transform .2s;display:inline-block}.portfolio .hero-cta:hover{color:var(--brand-red)}.portfolio .hero-cta:hover span{transform:translate(4px)}.portfolio h2 .muted,.portfolio .hero h1 .muted{color:var(--brand-red)}@media (max-width:900px){.portfolio .hero{gap:clamp(24px,4vw,48px);padding-top:clamp(96px,12vh,130px)}.portfolio .hero h1{font-size:clamp(36px,7vw,64px)}}@media (max-width:600px){.portfolio .hero{min-height:auto;padding:96px var(--pad)36px;grid-template:"eyebrow""text""image"/1fr;align-items:start;row-gap:clamp(32px,4.5vh,48px)}.portfolio .hero-eyebrow{flex-wrap:wrap;grid-area:eyebrow;gap:10px;font-size:11px;position:static;top:auto;left:auto}.portfolio .hero-eyebrow svg{width:14px;height:14px}.portfolio .hero-eyebrow-stars{font-size:13px}.portfolio .hero-bg{justify-items:center;height:auto;margin-top:0;transform:none}.portfolio .hero-slide{object-position:center;width:100%;max-width:100%;max-height:56vh}.portfolio .hero-text{gap:clamp(20px,3vh,32px)}.portfolio .hero-cta{color:var(--brand-red);border:1px solid var(--brand-red);justify-content:space-between;align-self:stretch;margin-top:0;padding:16px 22px;font-size:16px}.portfolio .hero-cta:hover{background:var(--brand-red);color:#fff}.portfolio .hero-cta:hover span{color:#fff}.portfolio .hero h1{letter-spacing:-.04em;max-width:100%;font-size:clamp(48px,13vw,72px);line-height:.96}.portfolio .hero-eyebrow{top:96px}}.portfolio .work{padding:clamp(80px,12vh,140px) 0 clamp(40px,6vh,80px)}.portfolio .work-head{padding:0 var(--pad);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:clamp(50px,8vh,90px);display:flex}.portfolio .work-head h2{letter-spacing:-.03em;max-width:16ch;margin:0;font-size:clamp(34px,5.5vw,76px);font-weight:400;line-height:1}.portfolio .work-head .count{color:var(--fg-2);font-size:13px}.portfolio .filters{padding:0 var(--pad);flex-wrap:wrap;gap:8px;margin-bottom:clamp(40px,6vh,80px);display:flex}.portfolio .filter{appearance:none;border:1px solid var(--line);color:var(--fg-2);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:0;padding:9px 14px;font-family:inherit;font-size:12px;font-weight:500;line-height:1;transition:color .15s,border-color .15s,background .15s}.portfolio .filter:hover{color:var(--fg);border-color:var(--fg-2)}.portfolio .filter.active{background:var(--brand-red);color:#fff;border-color:var(--brand-red)}.portfolio .work-empty{margin:0 var(--pad);border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;padding:clamp(60px,10vh,120px) clamp(20px,4vw,40px)}.portfolio .work-empty p{color:var(--fg-2);letter-spacing:-.01em;margin:0;font-size:clamp(16px,2vw,20px)}.portfolio .project{max-width:760px;padding:clamp(40px,6vh,80px)var(--pad);border-top:1px solid var(--line);flex-direction:column;gap:clamp(18px,2.5vh,28px);margin:0 auto;display:flex}.portfolio .project-image{background:var(--bg);width:100%;position:relative;overflow:hidden}.portfolio .project-meta{color:var(--fg-2);letter-spacing:.04em;align-self:flex-start;font-size:13px;transition:color .2s}.portfolio .project:hover .project-meta{color:var(--brand-red)}.portfolio .project-image .stripes{background:repeating-linear-gradient(135deg,transparent 0 28px,color-mix(in oklab,var(--fg)4%,transparent)28px 29px);position:absolute;inset:0}.portfolio .project-foot{color:var(--fg-2);flex-direction:column;grid-area:foot;align-items:flex-start;gap:12px;margin-top:0;font-size:14px;display:flex}.portfolio .project-foot p{max-width:50ch;color:var(--fg-2);white-space:pre-line;margin:0;font-size:clamp(13px,1vw,14px);line-height:1.6}@media (max-width:900px){.portfolio .project-foot{margin-top:0}}@media (max-width:600px){.portfolio .work{padding:64px 0}.portfolio .pricing,.portfolio .reviews,.portfolio .contact{padding:64px var(--pad)}.portfolio .work-head,.portfolio .reviews-head,.portfolio .pricing-head{margin-bottom:36px}.portfolio .work-head h2,.portfolio .reviews-head h2,.portfolio .pricing-head h2{font-size:clamp(38px,9vw,56px)}.portfolio .contact h2{font-size:clamp(54px,14vw,96px)}.portfolio .filters{margin-bottom:32px}.portfolio .filter{padding:8px 12px;font-size:11px}.portfolio .review{gap:14px;min-height:0;padding:22px}.portfolio .review p{font-size:14px}.portfolio .contact-id{margin-bottom:32px}.portfolio .contact-author-name{font-size:22px}.portfolio .contact-row{padding:16px 0;font-size:16px}.portfolio footer{padding:16px var(--pad)}}.portfolio .pricing{padding:clamp(80px,12vh,140px)var(--pad);border-top:1px solid var(--line)}.portfolio .pricing-head{flex-direction:column;gap:16px;margin-bottom:clamp(50px,8vh,90px);display:flex}.portfolio .pricing-head h2{letter-spacing:-.03em;max-width:16ch;margin:0;font-size:clamp(34px,5.5vw,76px);font-weight:400;line-height:1}.portfolio .pricing-lede{color:var(--fg-2);max-width:56ch;margin:0;font-size:clamp(15px,1.4vw,18px);line-height:1.55}.portfolio .pricing-services{border-top:1px solid var(--line);margin-bottom:clamp(56px,8vh,96px)}.portfolio .pricing-row{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:baseline;gap:clamp(20px,4vw,60px);padding:clamp(24px,4vh,40px) 0;display:grid}.portfolio .pricing-row-text h3{letter-spacing:-.025em;margin:0 0 8px;font-size:clamp(24px,3vw,36px);font-weight:400;line-height:1.1}.portfolio .pricing-row-text p{color:var(--fg-2);max-width:60ch;margin:0;font-size:14px;line-height:1.5}.portfolio .pricing-row-tag{white-space:nowrap;flex-direction:column;align-items:flex-end;gap:4px;display:flex}.portfolio .pricing-tag-from{letter-spacing:.1em;text-transform:uppercase;color:var(--fg-2);font-size:11px;font-weight:500}.portfolio .pricing-tag-amount{color:var(--brand-red);letter-spacing:-.015em;font-size:clamp(20px,2.4vw,28px);font-weight:500;line-height:1}.portfolio .pricing-grid{grid-template-columns:1fr 1fr;gap:clamp(40px,5vw,80px);margin-bottom:clamp(48px,7vh,80px);display:grid}.portfolio .pricing-block-title{letter-spacing:.08em;text-transform:uppercase;color:var(--fg-2);margin:0 0 16px;font-size:12px;font-weight:500}.portfolio .pricing-block ul{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.portfolio .pricing-block li{color:var(--fg);border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:16px;padding:14px 0;font-size:15px;display:flex}.portfolio .pricing-block-tag{color:var(--brand-red);letter-spacing:-.01em;flex-shrink:0;font-size:13px;font-weight:500}.portfolio .pricing-cta{background:var(--brand-red);color:#fff;letter-spacing:.02em;border:1px solid var(--brand-red);align-items:center;gap:10px;padding:16px 28px;font-size:14px;font-weight:500;transition:background .2s,transform .2s;display:inline-flex}.portfolio .pricing-cta:hover{background:var(--brand-red-ink)}.portfolio .pricing-cta .arrow{transition:transform .2s;display:inline-block}.portfolio .pricing-cta:hover .arrow{transform:translate(4px)}@media (max-width:700px){.portfolio .pricing-grid{grid-template-columns:1fr;gap:clamp(28px,4vh,48px)}.portfolio .pricing-row{grid-template-columns:1fr;gap:12px}.portfolio .pricing-row-tag{flex-direction:row;align-self:flex-start;align-items:baseline;gap:10px}.portfolio .pricing-cta{justify-content:space-between;width:100%}}.portfolio .reviews{padding:clamp(80px,12vh,140px)var(--pad)clamp(60px,8vh,100px);border-top:1px solid var(--line)}.portfolio .reviews-head{flex-direction:column;gap:16px;margin-bottom:clamp(50px,8vh,90px);display:flex}.portfolio .reviews-source{letter-spacing:.06em;text-transform:uppercase;color:var(--fg-2);border:1px solid var(--line);background:var(--bg);align-self:flex-start;align-items:center;gap:8px;padding:8px 14px;font-size:12px;font-weight:500;display:inline-flex}.portfolio .reviews-source svg{flex-shrink:0}.portfolio .reviews-head h2{letter-spacing:-.03em;max-width:16ch;margin:0;font-size:clamp(34px,5.5vw,76px);font-weight:400;line-height:1}.portfolio .reviews-meta{color:var(--fg-2);letter-spacing:.04em;flex-wrap:wrap;align-items:baseline;gap:12px;font-size:13px;display:inline-flex}.portfolio .reviews-meta-stars{color:var(--brand-red);letter-spacing:.1em;font-size:16px;line-height:1}.portfolio .reviews-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1px;display:grid}.portfolio .review{background:var(--bg);flex-direction:column;gap:18px;min-height:220px;padding:clamp(24px,3vw,36px);display:flex}.portfolio .review-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.portfolio .review-stars{color:var(--brand-red);letter-spacing:.1em;font-size:14px;line-height:1}.portfolio .review-head svg{opacity:.7;flex-shrink:0}.portfolio .review p{color:var(--fg);flex:1;margin:0;font-size:15px;line-height:1.55}.portfolio .review-author{color:var(--fg-2);letter-spacing:.04em;margin-top:auto;font-size:12px}.portfolio .reviews-cta{border:1px solid var(--line-strong);letter-spacing:.02em;color:var(--fg);align-items:center;gap:10px;margin-top:clamp(32px,5vh,56px);padding:14px 22px;font-size:13px;font-weight:500;transition:border-color .2s,background .2s,transform .2s;display:inline-flex}.portfolio .reviews-cta:hover{border-color:var(--fg);background:var(--bg-2)}.portfolio .reviews-cta svg{flex-shrink:0}.portfolio .reviews-cta span{color:var(--fg-2);margin-left:4px;transition:transform .2s,color .2s}.portfolio .reviews-cta:hover span{color:var(--brand-red);transform:translate(2px,-2px)}.portfolio .contact{padding:clamp(80px,16vh,200px)var(--pad);border-top:1px solid var(--line)}.portfolio .contact-id{align-items:center;gap:clamp(20px,3vw,36px);margin-bottom:clamp(40px,6vh,72px);display:flex}.portfolio .contact-portrait{aspect-ratio:4/5;background:var(--bg-2);flex-shrink:0;width:clamp(140px,16vw,180px);position:relative;overflow:hidden}.portfolio .contact-portrait img{object-fit:cover;object-position:60% 28%;width:100%;height:100%}.portfolio .contact-author{flex-direction:column;gap:8px;min-width:0;display:flex}.portfolio .contact-author-name{color:var(--fg);letter-spacing:-.02em;font-size:clamp(22px,2.4vw,30px);font-weight:500;line-height:1.1}.portfolio .contact-author-role{letter-spacing:.1em;text-transform:uppercase;color:var(--fg-2);align-items:center;gap:12px;font-size:12px;font-weight:500;display:inline-flex}.portfolio .contact-author-bar{background:var(--brand-red,#d8252b);width:24px;height:1px;display:inline-block}@media (max-width:480px){.portfolio .contact-id{flex-direction:column;align-items:flex-start;gap:20px}}.portfolio .contact h2{letter-spacing:-.04em;margin:0 0 24px;font-size:clamp(44px,11vw,180px);font-weight:400;line-height:.9}.portfolio .contact .contact-lede{color:var(--fg-2);max-width:46ch;margin:0 0 clamp(36px,6vh,80px);font-size:clamp(15px,1.4vw,18px);line-height:1.55}.portfolio .contact-rows{border-top:1px solid var(--line)}.portfolio .contact-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:22px 0;font-size:clamp(16px,2vw,26px);transition:padding .25s;display:flex}.portfolio .contact-row>:last-child{text-align:right;word-break:break-word;min-width:0}.portfolio .contact-row:hover{padding-left:14px}.portfolio .contact-row .k{color:var(--fg-2);flex-shrink:0;font-size:13px}.portfolio .contact-row.link:after{content:"↗";color:var(--fg-2);margin-left:8px;transition:transform .25s,color .25s;display:inline-block}.portfolio .contact-row.link:hover:after{color:var(--brand-red);transform:translate(3px,-3px)}.portfolio .contact-row.link:hover{color:var(--brand-red)}@media (max-width:600px){.portfolio .contact-row{padding:18px 0}.portfolio .contact-row:hover{padding-left:8px}}.portfolio footer{padding:20px var(--pad);border-top:1px solid var(--line);color:var(--fg-2);flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:12px;display:flex}
