.portfolio{--ink:var(--portfolio-ink);--paper:var(--portfolio-paper);--lav:var(--portfolio-lavender);--mint:var(--portfolio-mint);--amber:var(--portfolio-amber);--line:var(--portfolio-line);color:var(--ink);background:var(--portfolio-white);font-family:DM Sans,Arial,sans-serif;font-size:17px;line-height:1.5}html{scroll-behavior:smooth}body{margin:0}.portfolio *,.portfolio :before,.portfolio :after{box-sizing:border-box;letter-spacing:0}.portfolio a{color:inherit;text-decoration:none}.portfolio .portfolio-button{height:auto;color:inherit;box-shadow:none;font:inherit;white-space:normal;cursor:pointer;transition:background-color .4s var(--portfolio-motion-ease), transform .6s var(--portfolio-motion-ease), opacity .4s;background:0 0;border:0;padding:0}.portfolio a:focus-visible,.portfolio .portfolio-button:focus-visible{outline:3px solid var(--lav);outline-offset:4px}.portfolio h1,.portfolio h2,.portfolio h3,.portfolio .hcond,.portfolio .boxnum{font-optical-sizing:auto;font-variation-settings:"opsz" 32;margin:0;font-family:Inter,Arial,sans-serif;font-weight:850;line-height:1.02}.portfolio h3,.portfolio .service .hcond,.portfolio .trait .hcond,.portfolio .quote-intro .hcond{font-weight:600}.portfolio p{font-size:17px;font-weight:400;line-height:1.6}.section{padding:72px 6%;position:relative;overflow:clip}.shell{max-width:1300px;margin:0 auto}.card{border-radius:25px;position:relative;overflow:hidden}.photo{background-position:50%;background-size:cover}.tiny{font-size:12px;font-weight:600}.corner{width:16px;height:16px;transition:transform .6s var(--portfolio-motion-ease);border-top:2.5px solid;border-right:2.5px solid;position:absolute;top:22px;right:22px}.card:hover>.corner,.logo:hover>.corner{transform:translate(3px,-3px)}.scribble{color:var(--portfolio-white);font:600 44px Inter,sans-serif;position:absolute;bottom:28px;left:30px}#hero{background:var(--paper);padding-top:52px;padding-bottom:56px}#hero .bigword{margin-bottom:32px}.portfolio .display{font-size:128px;line-height:1}.home-grid{grid-template-rows:390px 110px;grid-template-columns:1.23fr .76fr .5fr;gap:24px;display:grid}.portfolio .main-film{text-align:left;background:var(--portfolio-film);grid-row:span 2;display:block;position:relative}.main-film .photo{transition:transform 1s var(--portfolio-motion-ease);background-position:45% 20%;position:absolute;inset:0}.main-film .photo:after{content:"";background:linear-gradient(#0000 52%,#100c1894 100%);position:absolute;inset:0}.main-film:hover .photo{transform:scale(1.035)}.film-copy{color:var(--portfolio-white);position:absolute;bottom:34px;left:30px;right:24px}.portfolio .film-copy h2{margin:0 0 12px;font-size:44px}.film-copy p{margin:0}.brand-tile{background:var(--portfolio-white);border:1px solid var(--line);flex-direction:column;gap:18px;padding:26px 22px 22px;display:flex}.brand-tile>.tiny{color:var(--portfolio-muted)}.brand-tile .corner{color:var(--ink);opacity:.4}.brand-tile:hover .corner{opacity:1}.home-brands{flex:1;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:8px;display:grid}.portfolio .home-brand{background:var(--paper);border-radius:12px;width:100%;min-width:0;padding:10px 12px}.home-brand img{object-fit:contain;width:100%;height:100%;max-height:40px;transition:transform .5s var(--portfolio-motion-ease);display:block}.home-brand.compact-logo img{max-height:52px}.portfolio .home-brand:hover{background:var(--line);transform:none}.portfolio .home-brand:hover img{transform:translateY(-2px)}.small-stack{grid-template-rows:1fr 1fr;gap:24px;min-width:0;display:grid}.portfolio .service{background:var(--mint);flex-direction:column;justify-content:flex-end;align-items:flex-start;padding:24px;display:flex}.portfolio .service.amber{background:var(--amber)}.portfolio .service .hcond{font-size:24px}.portfolio .service:hover{transform:translateY(-4px)}.strip{background:var(--paper);border:1px solid var(--line);grid-column:2/4;align-items:stretch;padding:0;display:flex}.portfolio .nav-pill{background:var(--paper);text-transform:uppercase;letter-spacing:.12em;border-left:1px solid var(--line);flex:1;justify-content:center;align-items:center;padding:12px 16px;font-family:Inter,Arial,sans-serif;font-size:14px;font-weight:600;display:flex;position:relative}.portfolio .nav-pill:first-child{border-left:0}.portfolio .nav-pill:after{content:"";opacity:.55;width:10px;height:10px;transition:opacity .4s, transform .6s var(--portfolio-motion-ease);border-top:2px solid;border-right:2px solid;position:absolute;top:14px;right:14px}.portfolio .nav-pill:hover:after{opacity:1;transform:translate(2px,-2px)}.portfolio .nav-pill:hover{background:var(--line);transform:translateY(-2px)}#about{background:var(--portfolio-white)}.about-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:44px;display:grid}.about-photo{background:var(--lav);min-height:640px}.about-photo .photo,.contact-photo .photo{position:absolute;inset:0}.about-copy{flex-direction:column;justify-content:center;min-width:0;display:flex}.portfolio .about-copy h2{margin-bottom:28px;font-size:64px}.bio{max-width:690px;margin:0 0 32px}.bio strong{font-weight:700}.trait-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.trait{flex-direction:column;justify-content:space-between;gap:20px;min-height:235px;padding:20px;display:flex}.trait.violet{background:var(--lav)}.trait.mint{background:var(--mint)}.trait.amber{background:var(--amber)}.portfolio .trait .hcond{overflow-wrap:anywhere;font-size:20px}.trait p{margin:0}.collabtop,.work-heading,.result-header{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;gap:48px;margin-bottom:44px;display:grid}.portfolio .collabtop h2,.portfolio .work-heading h2,.portfolio .result-header h2{font-size:64px}.collabtop p,.work-heading p,.result-header p{text-align:right;max-width:420px;margin:10px 0 0 auto}.more-brands{text-transform:uppercase;letter-spacing:.14em;color:var(--ink);align-items:center;gap:22px;margin:34px 0 0;font-family:Inter,Arial,sans-serif;font-size:13px;font-weight:600;display:flex}.more-brands:before,.more-brands:after{content:"";opacity:.35;background:currentColor;flex:1;height:1px}#collabs{background:var(--mint)}.logo-board{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.portfolio .logo{background:var(--portfolio-white);border:1px solid var(--line);border-radius:8px;justify-content:center;align-items:center;width:100%;min-height:160px;padding:30px;display:flex;position:relative}.logo img{object-fit:contain;width:100%;height:70px}.logo.compact-logo img{height:95px}.logo .corner{opacity:.4;width:12px;height:12px;top:14px;right:14px}.portfolio .logo:hover{background:var(--portfolio-logo-hover);transform:translateY(-4px)}.logo:hover .corner{opacity:1}#work{background:var(--portfolio-graphite);color:var(--portfolio-white)}.filters{flex-wrap:wrap;gap:8px;margin-bottom:28px;display:flex}.portfolio .filter{border:1px solid var(--portfolio-graphite-muted);border-radius:99px;padding:10px 16px;font-size:14px}.portfolio .filter.is-selected,.portfolio .filter:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}.videos{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;display:grid}.videos-more{justify-content:center;margin-top:28px;display:flex}.portfolio .video{aspect-ratio:9/16;background:var(--portfolio-film);border-radius:15px;width:100%;display:block;position:relative;overflow:hidden}.video[hidden]{display:none!important}.video .photo{filter:brightness(.88);transition:transform .8s var(--portfolio-motion-ease);position:absolute;inset:0}.video:hover .photo{transform:scale(1.045)}.playcircle{background:var(--portfolio-overlay-soft);width:44px;height:44px;color:var(--ink);transition:transform .5s var(--portfolio-motion-ease);border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.video:hover .playcircle{transform:translate(-50%,-50%)scale(1.12)}.videotag{background:var(--paper);color:var(--ink);text-align:center;white-space:normal;border-radius:99px;max-width:calc(100% - 24px);padding:7px 11px;font-size:12px;position:absolute;bottom:12px;left:12px}.number{color:var(--portfolio-white);font-size:12px;position:absolute;top:12px;left:12px}#results{background:var(--paper)}.res-grid{grid-template-rows:224px 300px;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.stat{flex-direction:column;justify-content:space-between;gap:18px;padding:24px;display:flex}.portfolio .stat .boxnum{font-size:80px}.portfolio .stat h3{font-size:17px}.stat.one{background:var(--lav)}.stat.two{background:var(--mint)}.stat.three{background:var(--amber)}.stat.why{background:var(--portfolio-graphite);color:var(--portfolio-white)}.portfolio .stat.why .hcond{font-size:36px}.quote-intro{background:var(--portfolio-white);flex-direction:column;grid-column:span 2;justify-content:space-between;gap:24px;padding:30px;display:flex}.portfolio .quote-intro .hcond{font-size:42px}.portfolio .review.shot{background:var(--portfolio-white);border:1px solid var(--line);padding:0;display:block}.review.shot img{object-fit:cover;object-position:top;width:100%;height:100%;transition:transform .8s var(--portfolio-motion-ease);display:block}.review.shot:hover img{transform:scale(1.035)}.review.shot .corner{color:var(--ink)}#contact{background:var(--portfolio-white)}.contact-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:28px;display:grid}.contact-photo{background:var(--lav);min-height:600px}.contact-copy{background:var(--portfolio-graphite);color:var(--portfolio-white);flex-direction:column;justify-content:space-between;gap:64px;min-width:0;padding:44px 32px;display:flex}.portfolio .contact-copy h2{font-size:48px}.portfolio .contact-copy .cta{border-top:1px solid var(--portfolio-graphite-muted);overflow-wrap:anywhere;justify-content:space-between;width:100%;padding:20px 24px 0 0;font-size:20px;display:flex;position:relative}.contact-copy .cta .corner{width:12px;height:12px;top:25px;right:0}.socialrow{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.portfolio .social{border:1px solid var(--portfolio-graphite-muted);border-radius:99px;padding:10px 18px}.portfolio .social:hover{background:var(--portfolio-white);color:var(--ink);transform:translateY(-2px)}.foot{color:var(--portfolio-muted);justify-content:space-between;align-items:center;gap:16px;margin-top:28px;font-size:12px;display:flex}.portfolio .foot .portfolio-button{font-size:inherit}.portfolio dialog{background:var(--portfolio-dialog);max-height:calc(100dvh - 32px);color:var(--ink);box-shadow:var(--portfolio-dialog-shadow);text-align:center;border:0;border-radius:24px;margin:auto;padding:24px;position:fixed;inset:0;overflow:auto}#video-dialog{width:min(720px,100% - 32px)}#brand-dialog{width:min(820px,100% - 32px)}#shot-dialog{width:min(980px,100% - 32px);overflow:hidden}#shot-dialog[open]{flex-direction:column;display:flex}#shot-dialog .modal-head{flex-shrink:0}.reviews-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;overflow-y:auto}.reviews-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:4px;display:grid}.review-image{aspect-ratio:3/4;border:1px solid var(--line);background:var(--portfolio-white);border-radius:8px;margin:0;overflow:hidden}.review-image img{object-fit:contain;width:100%;height:100%;display:block}#shot-dialog[open] .review-image{animation:review-unfold .6s var(--portfolio-motion-ease) both}#shot-dialog[open] .review-image:nth-child(2){animation-delay:70ms}#shot-dialog[open] .review-image:nth-child(3){animation-delay:.14s}#shot-dialog[open] .review-image:nth-child(4){animation-delay:.21s}#shot-dialog[open] .review-image:nth-child(5){animation-delay:.28s}#shot-dialog[open] .review-image:nth-child(6){animation-delay:.35s}.portfolio dialog::backdrop{background:var(--portfolio-overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modal-head{justify-content:center;align-items:center;gap:16px;min-height:36px;margin-bottom:24px;padding:0 48px;display:flex;position:relative}.portfolio .modal-head h2{font-size:21px;font-weight:600}.portfolio .modal-head .modal-x,.portfolio .modal-head #modal-close{background:var(--portfolio-control);border-radius:50%;width:36px;height:36px;position:absolute;top:50%;right:0;transform:translateY(-50%)}.portfolio .modal-head .portfolio-button:hover{background:var(--line)}.modal-brand-logo{object-fit:contain;width:200px;max-width:100%;height:65px;margin:auto;display:block}#modal-player{aspect-ratio:9/16;object-fit:contain;background:var(--portfolio-film);border-radius:14px;width:min(100%,39.375dvh);max-height:70dvh;margin:0 auto;display:block}#dialog-placeholder{flex-direction:column;justify-content:center;align-items:center;min-height:300px;padding:30px;display:flex}#dialog-placeholder[hidden]{display:none}.placeholder-icon{width:44px;height:44px;color:var(--portfolio-muted)}.brand-videos{grid-template-columns:repeat(auto-fit,minmax(150px,200px));justify-content:center;gap:12px;display:grid}.brand-empty{text-align:center;letter-spacing:.14em;text-transform:uppercase;color:var(--portfolio-muted);grid-column:1/-1;padding:26px 0;font-size:13px}.motion-ready .reveal{opacity:0;transition:opacity .9s var(--portfolio-motion-ease), transform 1.1s var(--portfolio-motion-ease);transform:translateY(24px)}.motion-ready .reveal.is-visible{opacity:1;transform:none}.portfolio dialog[open]{animation:dialog-in .45s var(--portfolio-motion-ease)}.portfolio dialog[open]::backdrop{animation:.35s backdrop-in}@keyframes dialog-in{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:none}}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes review-unfold{0%{opacity:0;transform:translateY(24px)scale(.96)}to{opacity:1;transform:none}}@media (width>=1500px){.portfolio .display{font-size:160px}.home-grid{grid-template-rows:440px 120px}.portfolio .film-copy h2{font-size:52px}}@media (width<=1150px){.portfolio .display{font-size:108px}.home-grid{grid-template-rows:360px 110px;grid-template-columns:1.15fr .85fr .6fr;gap:20px}.small-stack{gap:20px}.portfolio .film-copy h2{font-size:36px}.portfolio .service{padding:20px}.portfolio .service .hcond{font-size:22px}.portfolio .nav-pill{padding:10px 13px;font-size:13px}.about-grid{gap:30px}.trait-grid{grid-template-columns:1fr}.trait{gap:14px;min-height:auto}.portfolio .trait .hcond{font-size:26px}.portfolio .collabtop h2,.portfolio .work-heading h2,.portfolio .result-header h2,.portfolio .about-copy h2{font-size:56px}.portfolio .contact-copy h2{font-size:40px}.portfolio .stat .boxnum{font-size:64px}}@media (width<=900px){.section{padding:56px 6%}#hero{padding-top:40px;padding-bottom:48px}.portfolio .display{font-size:84px}.home-grid{grid-template-rows:auto;grid-template-columns:1fr 1fr;gap:20px}.portfolio .main-film{grid-area:auto/span 2;min-height:420px}.brand-tile{min-height:330px}.small-stack{gap:20px}.portfolio .service{min-height:155px}.portfolio .service .hcond{font-size:28px}.strip{grid-column:span 2;min-height:96px}.portfolio .nav-pill{padding:12px 20px;font-size:17px}.about-grid,.contact-grid{grid-template-columns:1fr;gap:32px}.about-photo,.contact-photo{height:500px;min-height:0}.collabtop,.work-heading,.result-header{grid-template-columns:1fr;gap:24px}.collabtop p,.work-heading p,.result-header p{max-width:520px}.trait-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.trait{min-height:210px}.portfolio .trait .hcond{font-size:20px}.logo-board{grid-template-columns:repeat(2,minmax(0,1fr))}.videos{grid-template-columns:repeat(3,minmax(0,1fr))}.res-grid{grid-template-rows:auto;grid-template-columns:repeat(2,minmax(0,1fr))}.stat{min-height:220px}.quote-intro{grid-column:span 2;min-height:240px}.review.shot{height:380px}.contact-copy{min-height:480px}.portfolio .contact-copy h2{font-size:56px}}@media (width<=600px){.section{padding:44px 24px}#hero{padding:32px 24px 40px}.portfolio .display{font-size:60px}#hero .bigword{margin-bottom:24px}.home-grid,.small-stack{gap:16px}.portfolio .main-film{min-height:380px}.film-copy{bottom:26px;left:22px;right:18px}.portfolio .film-copy h2{font-size:32px}.play{top:18px;right:18px}.brand-tile{min-height:300px;padding:20px 16px 16px}.portfolio .home-brand{padding:8px}.portfolio .service{min-height:142px;padding:18px}.portfolio .service .hcond{font-size:22px}.service .corner{width:12px;height:12px;top:16px;right:16px}.strip{min-height:86px}.portfolio .nav-pill{letter-spacing:.08em;padding:10px 8px;font-size:12px}.portfolio .about-copy h2,.portfolio .collabtop h2,.portfolio .work-heading h2,.portfolio .result-header h2{font-size:42px}.about-photo,.contact-photo{height:420px}.trait-grid{grid-template-columns:1fr}.trait{min-height:auto}.portfolio .trait .hcond{font-size:28px}.logo-board{gap:12px}.portfolio .logo{min-height:120px;padding:20px}.logo img{height:50px}.logo.compact-logo img{height:70px}.videos{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.portfolio .filter{padding:9px 13px;font-size:13px}.res-grid{gap:12px}.stat{min-height:205px;padding:20px 16px}.portfolio .stat .boxnum{font-size:56px}.portfolio .stat.why .hcond{font-size:30px}.quote-intro{min-height:210px;padding:24px}.portfolio .quote-intro .hcond{font-size:34px}.review.shot{height:280px}.contact-copy{gap:48px;min-height:430px;padding:32px 24px}.portfolio .contact-copy h2{font-size:36px}.portfolio .contact-copy .cta{font-size:17px}.brand-videos{grid-template-columns:repeat(auto-fit,minmax(110px,160px))}.portfolio dialog{padding:20px}.portfolio .modal-head h2{font-size:18px}.reviews-gallery{grid-template-columns:1fr;gap:16px}.foot{align-items:flex-start}.portfolio .strip .nav-pill{letter-spacing:.05em;text-align:center;flex:1 1 0;min-width:0;padding:10px 4px;font-size:10px}.portfolio .strip .nav-pill:after{opacity:.6;width:8px;height:8px;top:10px;right:8px}.collabtop p,.work-heading p,.result-header p{text-align:left;margin:0}.portfolio .more-brands{letter-spacing:.08em;text-align:center;gap:12px;font-size:10.5px;line-height:1.6}.more-brands:before,.more-brands:after{min-width:16px}.more-brands{justify-content:center}.portfolio .more-brands{grid-template-columns:minmax(16px,1fr) minmax(0,280px) minmax(16px,1fr);display:grid}}@media (width<=400px){.portfolio .strip .nav-pill{letter-spacing:.03em;padding:10px 2px;font-size:9px}.portfolio .display{font-size:44px}.portfolio .film-copy h2{font-size:28px}.portfolio .service .hcond{font-size:20px}.portfolio .nav-pill{padding:10px;font-size:13px}.portfolio .contact-copy h2{font-size:30px}.portfolio .stat.why .hcond{font-size:24px}.portfolio .stat .boxnum{font-size:40px}.stat .tiny{font-size:10px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.portfolio *,.portfolio :before,.portfolio :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.portfolio .reveal{opacity:1!important;transform:none!important}}
