@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');
@font-face{font-family:'D-DIN Condensed';src:url('assets/d-din-condensed.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
:root{--portfolio-paper:#f9f6ed;--portfolio-white:#fdfbf7;--portfolio-ink:#292824;--portfolio-muted:#68665e;--portfolio-line:#29282420;--portfolio-gutter:clamp(24px,4vw,64px);--portfolio-radius:24px;--portfolio-display:'D-DIN Condensed','Arial Narrow',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;font-family:'DM Sans',Arial,sans-serif}a{color:inherit}button{font:inherit}img,video{max-width:100%}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid currentColor;outline-offset:6px}button,a,summary{-webkit-tap-highlight-color:transparent}
.nav{position:sticky;top:0;z-index:50;width:100%;height:88px;padding:0 var(--portfolio-gutter);display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;background:var(--portfolio-paper);color:var(--portfolio-ink);border:0;backdrop-filter:none;gap:24px}
.nav .monogram{font:500 clamp(16px,1.4vw,20px)/1.2 'DM Sans',sans-serif;letter-spacing:.035em;white-space:nowrap;text-transform:uppercase;justify-self:center;text-decoration:none}.nav .nav-role{font:400 11px/1.5 'DM Sans',sans-serif;letter-spacing:.04em;text-transform:none;max-width:24ch}.nav .nav-right{display:flex;gap:24px;align-items:center;justify-self:end}.nav-right>a,.nav .work-menu summary{font:500 12px/1.4 'DM Sans',sans-serif;letter-spacing:0;text-transform:none;text-decoration:none;white-space:nowrap}.nav a:hover{font-style:normal;color:var(--portfolio-muted)}.nav .nav-right>a:last-child{padding:11px 19px;background:var(--portfolio-ink);color:var(--portfolio-white);border-radius:99px}.nav .nav-right>a:last-child:hover{background:#45433b;color:var(--portfolio-white)}
.nav .work-menu{position:relative}.nav .work-menu summary{list-style:none;cursor:pointer;padding:12px 0}.nav .work-menu summary::-webkit-details-marker{display:none}.nav .work-menu summary::after{content:'⌄';margin-left:5px;font-size:12px}.nav .work-menu-panel{position:absolute;top:calc(100% + 12px);right:-30px;width:min(390px,calc(100vw - 40px));max-height:65svh;overflow:auto;padding:12px 24px;background:var(--portfolio-white);border:1px solid var(--portfolio-line);border-radius:18px;box-shadow:0 16px 48px #29282412}.nav .work-menu-panel a{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border:0;border-bottom:1px solid var(--portfolio-line);font:400 13px/1.5 'DM Sans',sans-serif;text-transform:none;letter-spacing:0;text-decoration:none}.nav .work-menu-panel a:last-child{border:0}.nav .work-menu-panel small{font-size:11px;color:var(--portfolio-muted);text-align:right}.nav .work-menu-panel a:hover{color:var(--portfolio-ink);font-style:normal}
.skip-link{position:fixed;top:10px;left:10px;z-index:100;transform:translateY(-160%);padding:12px 20px;background:var(--portfolio-ink);color:var(--portfolio-white);border-radius:99px}.skip-link:focus{transform:none}
.portfolio-home{background:var(--portfolio-paper);color:var(--portfolio-ink);font-size:16px;line-height:1.7}.portfolio-home a{text-decoration:none}.portfolio-home h1,.portfolio-home h2,.portfolio-home h3,.portfolio-home .brand-caption strong,.portfolio-home .additional-caption strong{font-family:var(--portfolio-display);font-weight:400;letter-spacing:-.015em;line-height:1.06}.portfolio-home h2{font-size:clamp(44px,5vw,72px);margin:0}.portfolio-home p{margin:0}.eyebrow,.portfolio-home .eyebrow{display:block;font:500 11px/1.6 'DM Sans',sans-serif;text-transform:uppercase;letter-spacing:.1em;color:var(--portfolio-muted)}
.portfolio-home .hero{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:560px;min-height:min(720px,calc(88svh - 88px));padding:clamp(48px,6vw,88px) var(--portfolio-gutter) 36px;background:var(--portfolio-white);border-radius:var(--portfolio-radius);margin:0 var(--portfolio-gutter);gap:40px}.hero-title-block .eyebrow{margin-bottom:24px}.portfolio-home .hero h1{font-size:clamp(64px,8.3vw,120px);line-height:.99;margin:0 auto 30px;max-width:18ch}.button{display:inline-flex;gap:16px;align-items:center;justify-content:center;padding:14px 24px;background:var(--portfolio-ink);color:var(--portfolio-white);border-radius:99px;font:500 13px/1.5 'DM Sans',sans-serif;text-decoration:none;min-height:48px;transition:background-color .2s ease}.button:hover{background:#45433b;color:var(--portfolio-white)}.hero-stats{display:flex;justify-content:center;gap:clamp(24px,5vw,72px)}.hero-stat{display:flex;align-items:baseline;gap:9px}.hero-stat strong{font:400 28px/1 var(--portfolio-display)}.hero-stat span{font-size:11px;color:var(--portfolio-muted)}.hero-bottom{display:none}
.hero-gallery{position:relative;isolation:isolate;margin:24px var(--portfolio-gutter) 0;aspect-ratio:2.15;overflow:hidden;border-radius:var(--portfolio-radius);background:var(--portfolio-ink)}.hero-gallery-slide{position:absolute;inset:0;opacity:0;transition:opacity 1s ease}.hero-gallery-slide.is-active{opacity:1}.hero-gallery-slide img{display:block;width:100%;height:100%;object-fit:cover}.hero-gallery-slide.frontline-slide img,.hero-gallery-slide.frontline-open-slide img,.hero-gallery-slide.frontline-cover-slide img{object-fit:contain;background:#e9e7df}
#work,#brand-design,#creative-direction,.client-roster,.testimonials,.about,.experience{margin:0 var(--portfolio-gutter)}#work{padding-top:clamp(80px,9vw,128px)}.work-head{display:block;max-width:900px}.work-head .eyebrow{margin-bottom:24px}.work-index{display:flex;gap:12px;flex-wrap:wrap;margin:32px 0 0}.work-index a{display:flex;gap:14px;align-items:center;padding:12px 20px;border:1px solid var(--portfolio-line);border-radius:99px;font-size:13px}.work-index a:hover{background:var(--portfolio-white)}.work-index strong{font-weight:500}.work-index-link{font-size:11px;color:var(--portfolio-muted)}.work-index-link b{font-size:15px;font-weight:400;margin-left:10px}
#brand-design,#creative-direction{padding-top:80px}.additional-heading{display:flex;align-items:end;justify-content:space-between;gap:36px;margin:0 0 32px}.additional-heading h2{font-size:clamp(38px,4vw,56px)}.additional-heading>p{font-size:14px;color:var(--portfolio-muted);max-width:35ch;line-height:1.65}.brand-grid,.additional-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 28px}.brand-card,.additional-card{display:block;min-width:0}.brand-image,.additional-image{position:relative;display:grid;place-items:center;aspect-ratio:1.4;overflow:hidden;border-radius:var(--portfolio-radius);background:#e9e7e0}.brand-image img,.additional-image img,.additional-image video{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.brand-card:is(:hover,:focus-visible) img,.additional-card:is(:hover,:focus-visible) img,.additional-card:is(:hover,:focus-visible) video{transform:scale(1.025)}.rebel-brand .brand-image{background:#271469 url('assets/rebel-ninja-texture.jpg') center/cover}.rebel-brand .brand-image img{object-fit:contain;padding:15%}.frontline-brand .brand-image img{object-fit:contain;background:#e4e9df;padding:5%}.warner-world .additional-image img{object-fit:contain;background:#203762;padding:8%}.rock-world .additional-image img{object-fit:contain;background:#426449;padding:3%}
.brand-caption,.additional-caption{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:10px 20px;padding:24px 4px 0;background:none;color:var(--portfolio-ink)}.brand-caption>span:first-child,.additional-caption>span:first-child{grid-column:1/-1;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--portfolio-muted)}.portfolio-home .brand-caption strong,.portfolio-home .additional-caption strong{font-size:clamp(32px,3vw,44px)}.brand-visit,.additional-visit{font-size:11px;white-space:nowrap}
.client-roster{padding:64px 0 0;text-align:center}.client-roster p{font-size:11px;color:var(--portfolio-muted);margin-bottom:20px}.client-roster ul{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 26px;list-style:none;padding:0;margin:0;font-size:13px;max-width:1000px;margin-inline:auto}
.testimonials{padding:clamp(64px,7vw,96px) 0;display:grid;grid-template-columns:.8fr 1.2fr;gap:24px 64px;margin-top:80px;border-top:1px solid var(--portfolio-line)}.testimonials-head .eyebrow{margin-bottom:20px}.testimonial-track{display:grid;grid-template-columns:1fr 1fr;gap:36px}.testimonial-track article{display:flex;flex-direction:column;gap:24px;padding:0 0 28px;border-bottom:1px solid var(--portfolio-line)}.testimonial-track article:nth-child(n+5){display:none}.reviews-expanded .testimonial-track article{display:flex}.testimonial-track p{font-size:15px;line-height:1.75}.testimonial-track span{font-size:10px;letter-spacing:.04em;color:var(--portfolio-muted)}.review-expand{grid-column:2;justify-self:start;cursor:pointer;border:1px solid var(--portfolio-line);border-radius:99px;background:transparent;padding:12px 20px;color:var(--portfolio-ink);font-size:12px}.review-expand:hover{background:var(--portfolio-white)}
.about{display:grid;grid-template-columns:1.1fr .9fr;gap:48px 64px;padding:clamp(40px,5vw,72px);background:var(--portfolio-white);border-radius:var(--portfolio-radius);align-items:start}.about-copy .eyebrow{margin-bottom:24px}.about-copy h2{margin-bottom:28px;max-width:14ch}.about-copy p{font-size:15px;line-height:1.8;margin-top:18px;max-width:57ch}.about-vera-link{font-weight:500}.about-vera-link:hover{color:var(--portfolio-muted)}.about-photo{position:relative;aspect-ratio:4/5;border-radius:18px;overflow:hidden;background:#e8e5dd}.about-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:56% 43%}.about-photo span{position:absolute;left:20px;bottom:20px;background:var(--portfolio-white);color:var(--portfolio-ink);padding:8px 12px;border-radius:99px;font-size:9px}.skills{grid-column:1/-1;display:grid;grid-template-columns:1.1fr .9fr;gap:64px;padding-top:36px;border-top:1px solid var(--portfolio-line)}.skills h3{font:500 11px/1.6 'DM Sans',sans-serif;text-transform:uppercase;letter-spacing:.1em;color:var(--portfolio-muted);margin:0 0 18px}.skills-list{list-style:none;padding:0;margin:0;display:grid;gap:9px;font-size:14px;line-height:1.55}.awards{align-self:end;display:flex;flex-direction:column;gap:7px;font-size:11px;color:var(--portfolio-muted)}.awards strong{font-weight:500;color:var(--portfolio-ink);margin-bottom:8px}
.experience{display:grid;grid-template-columns:1fr 1fr;gap:64px;padding:clamp(80px,9vw,128px) 0}.experience-title .eyebrow{margin-bottom:24px}.experience-title h2{max-width:15ch}.experience-title p{font-size:15px;line-height:1.8;max-width:48ch;margin-top:26px}.expertise-list{display:grid;gap:28px}.expertise{padding-bottom:26px;border-bottom:1px solid var(--portfolio-line)}.expertise>span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--portfolio-muted)}.expertise h3{font-size:32px;margin:12px 0}.expertise p{font-size:14px;max-width:50ch}
.portfolio-home footer{padding:0 var(--portfolio-gutter) 28px}.closing-invitation{display:flex;align-items:center;justify-content:space-between;gap:40px;border-radius:var(--portfolio-radius);padding:clamp(40px,6vw,88px);background:radial-gradient(ellipse at 0% 100%,#eafe5f,transparent 65%),radial-gradient(ellipse at 100% 100%,#9ac2ff,transparent 65%),linear-gradient(110deg,#ffbd9a,#f4e7fa 50%,#d597ed)}.closing-invitation .eyebrow{color:#54534b;margin-bottom:24px}.closing-invitation h2{font-size:clamp(44px,5vw,72px)}.closing-invitation .button{flex-shrink:0}.foot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px 24px;padding:30px 4px 0;font-size:10px;color:var(--portfolio-muted)}.foot a:hover{color:var(--portfolio-ink)}
@media(min-width:1800px){.portfolio-home main,.portfolio-home footer{max-width:1800px;margin-inline:auto}}
@media(max-width:1000px){.nav{grid-template-columns:1fr auto;height:76px;gap:16px}.nav .nav-role{display:none}.nav .monogram{justify-self:start}.testimonials{grid-template-columns:1fr;gap:36px}.review-expand{grid-column:1}.about{gap:36px}.about-copy h2{font-size:48px}.skills{gap:36px}.experience{gap:40px}.hero-stat{flex-direction:column;align-items:center}.portfolio-home .hero{min-height:580px}.hero-gallery{aspect-ratio:1.7}}
@media(max-width:700px){:root{--portfolio-radius:18px;--portfolio-gutter:20px}html{scroll-padding-top:90px}.nav{height:72px;padding-inline:20px}.nav .monogram{font-size:14px}.nav .nav-right{gap:16px}.nav-right>a,.nav .work-menu summary{font-size:11px}.nav .nav-right>a:last-child{padding:9px 13px}.nav .work-menu-panel{position:fixed;top:78px;left:20px;right:20px;width:auto}.nav .work-menu-panel a{font-size:12px}.nav .work-menu-panel small{font-size:10px}.portfolio-home .hero{min-height:520px;padding:52px 20px 32px;gap:40px}.portfolio-home .hero h1{font-size:clamp(52px,10.8vw,76px)}.hero-title-block .eyebrow{font-size:9px;letter-spacing:.07em}.hero-stats{gap:28px}.hero-stat strong{font-size:26px}.hero-stat span{font-size:9px}.hero-gallery{margin-top:16px;aspect-ratio:1.25}.hero-gallery .rebel-slide img{object-position:65% center}#work{padding-top:72px}.work-head h2{font-size:44px}.work-index{gap:10px}.work-index a{padding:10px 16px;font-size:12px}.work-index-link{display:none}#brand-design,#creative-direction{padding-top:60px}.additional-heading{display:block;margin-bottom:24px}.additional-heading h2{font-size:38px}.additional-heading>p{margin-top:14px;font-size:13px}.brand-grid,.additional-grid{grid-template-columns:1fr;gap:36px}.brand-image,.additional-image{aspect-ratio:1.35}.brand-caption,.additional-caption{padding-top:18px;gap:8px 12px}.portfolio-home .brand-caption strong,.portfolio-home .additional-caption strong{font-size:36px}.brand-visit,.additional-visit{font-size:10px}.client-roster{padding-top:48px}.client-roster ul{gap:8px 18px;font-size:12px}.testimonials{margin-top:56px;padding:56px 0}.testimonial-track{gap:24px;grid-template-columns:1fr}.testimonial-track p{font-size:15px}.about{grid-template-columns:1fr;padding:32px 24px;gap:32px}.about-copy h2{font-size:48px}.about-copy p{font-size:14px}.about-photo{aspect-ratio:4/4.5}.skills{grid-template-columns:1fr;gap:28px}.skills-list{font-size:13px}.experience{grid-template-columns:1fr;padding:64px 0;gap:36px}.experience h2{font-size:48px}.closing-invitation{flex-direction:column;align-items:flex-start;padding:36px 24px;gap:28px}.closing-invitation h2{font-size:46px}.foot{font-size:10px;gap:14px 20px}.foot>span{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.brand-card:is(:hover,:focus-visible) img,.additional-card:is(:hover,:focus-visible) img,.additional-card:is(:hover,:focus-visible) video{transform:none}}
