:root{--paper:#f4f2ed;--ink:#090909;--red:#ef202b;--teal:#00b7b2;--line:#17171755}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Montserrat,Arial,sans-serif;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;background:url('assets/main-background.jpg') center/cover repeat-y;opacity:.18;z-index:-4;pointer-events:none}
a{color:inherit;text-decoration:none}button{font:inherit}
.site-header{height:82px;padding:0 4.2vw;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:30;background:#f4f2edee;backdrop-filter:blur(8px);border-bottom:1px solid #0001}
.nav-brand img{width:230px;display:block}.nav-brand:hover img{opacity:.72}.menu{display:none;background:none;border:0;font-size:24px}
nav[aria-label="Primary navigation"]{display:flex;gap:38px;font-size:12px;font-weight:700;letter-spacing:.16em}
nav[aria-label="Primary navigation"] a{position:relative;padding:9px 0;transition:color .2s}nav[aria-label="Primary navigation"] a:after{content:"";position:absolute;left:0;right:0;bottom:1px;height:3px;background:var(--teal);transform:scaleX(0);transition:transform .2s}nav[aria-label="Primary navigation"] a:hover,nav[aria-label="Primary navigation"] a.active{color:var(--teal)}nav[aria-label="Primary navigation"] a:hover:after,nav[aria-label="Primary navigation"] a.active:after{transform:scaleX(1)}
.section-shell{padding-left:4.2vw;padding-right:4.2vw}
.project-hero{min-height:700px;position:relative;display:grid;grid-template-columns:minmax(0,580px) minmax(0,540px);justify-content:center;column-gap:28px;align-items:center;padding:58px 4.2vw 78px;overflow:hidden}
.hero-texture{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;opacity:.52;z-index:0;pointer-events:none;mask-image:linear-gradient(to bottom,#000 0%,#000 68%,rgba(0,0,0,.55) 86%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 68%,rgba(0,0,0,.55) 86%,transparent 100%)}
.hero-copy,.hero-art{position:relative;z-index:1}.hero-lockup{display:grid;grid-template-columns:28px 18px minmax(0,1fr);column-gap:15px;align-items:start;max-width:580px}.hero-logo{display:block;height:auto;width:min(100%,430px);max-width:100%}.hero-bar-wrap{display:flex;align-items:flex-start;justify-content:center}.hero-color-bar{width:18px;height:auto;display:block;object-fit:fill}.hero-reg-wrap{display:flex;align-items:center;justify-content:center;padding-top:0;align-self:stretch}.hero-reg{width:18px;height:18px;object-fit:contain}.hero-logo-wrap{min-width:0}.hero-logo-wrap p{font-size:9px;font-weight:600;letter-spacing:.095em;margin:-1px 0 0;padding-left:6.5%;white-space:nowrap}.hero-art{height:540px;display:flex;align-items:center;justify-content:center;padding-left:1vw}.hero-art img{height:540px;width:auto;max-width:100%;display:block;object-fit:contain;transform:none}
.project-intro{display:grid;grid-template-columns:minmax(0,48%) minmax(0,52%);align-items:center;gap:0;padding-top:30px;padding-bottom:78px;position:relative}.intro-copy{padding-right:1vw;max-width:560px}.intro-copy h2,.visual-language>h2{font-size:clamp(22px,2.2vw,32px);letter-spacing:.05em;margin:0 0 16px;font-weight:700}.intro-copy p{font-size:clamp(13px,1.05vw,16px);line-height:1.55;margin:0 0 30px;max-width:470px}.intro-copy h3{font-size:11px;letter-spacing:.13em;margin:0 0 9px}.intro-copy .role{font-size:10px;line-height:1.45;letter-spacing:.045em;margin:0}.intro-art{min-width:0}.intro-art{display:flex;justify-content:flex-end}.intro-art img{display:block;width:min(100%,620px);height:auto;object-fit:cover}
.visual-language{padding-top:0;padding-bottom:92px}.visual-language>h2{margin:0 0 58px}.language-system{display:grid;grid-template-columns:1.2fr 1px 1.05fr 1px .9fr 1px 1.45fr 1px 1.35fr;align-items:center;width:100%;min-height:125px}.language-divider{width:1px;height:92px;background:#17171766;justify-self:center}.language-piece{min-width:0;display:flex;align-items:center;justify-content:center;padding:0 24px}.language-logo{justify-content:flex-start;padding-left:0}.language-logo img{width:min(190px,100%);height:auto;display:block}.language-palette img{width:min(175px,100%);height:auto;display:block}.language-type{flex-direction:column;align-items:flex-start;justify-content:center;line-height:.9}.type-aa{font-family:Anton,Impact,sans-serif;font-size:66px;line-height:.78;letter-spacing:-.03em}.language-type strong{font-family:Anton,Impact,sans-serif;font-size:18px;letter-spacing:.04em;margin-top:10px}.language-type small{font-family:Montserrat,Arial,sans-serif;font-size:8px;font-weight:800;letter-spacing:.14em;margin-top:3px}.language-icons img{width:min(220px,100%);height:auto;display:block}.language-marks{justify-content:flex-end;padding-right:0}.language-marks img{width:min(230px,100%);height:auto;display:block}
.work-grid{padding-bottom:14px}.work-row{display:grid;align-items:start;margin-bottom:10px;grid-auto-rows:auto}.work-row:last-child{margin-bottom:0}.work-row> .work-piece{min-width:0;overflow:hidden}.work-piece img{width:100%;height:100%;display:block;object-fit:contain}.work-piece{border:0;background:none;padding:0;text-align:left;cursor:zoom-in}.website-row{grid-template-columns:1fr 1fr;height:470px;grid-auto-rows:470px}.website-piece{display:flex;justify-content:center;align-items:stretch;background:transparent;overflow:hidden;height:470px;min-height:470px}.gif-trigger{position:relative;width:100%;height:470px;min-height:470px;display:block}.gif-trigger img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block}.gif-label{position:absolute;right:16px;top:16px;background:var(--red);color:#fff;padding:8px 10px;font-size:9px;font-weight:800;letter-spacing:.12em;opacity:0;transform:translateY(4px);transition:.2s}.gif-trigger:hover .gif-label,.gif-trigger:focus-visible .gif-label{opacity:1;transform:none}.device-piece{display:flex;align-items:center;justify-content:center;padding-left:22px;cursor:zoom-in;height:470px;min-height:470px}.device-piece img{width:100%;height:470px;min-height:470px;object-fit:contain;display:block}.pitch-row{grid-template-columns:1.125fr 1fr;gap:26px;margin-bottom:0}.social-row{grid-template-columns:1.545fr 1fr;gap:26px}.pitch-piece img,.social-piece img,.facebook-piece img,.thirds-piece img{width:100%;height:auto;object-fit:contain}
.results{background:url('assets/results-background.jpg') center/cover repeat-x;color:#fff;padding:32px 4.2vw 36px}.results-inner{display:grid;grid-template-columns:58% 42%;gap:2.5vw;align-items:center}.results-copy{min-width:0;overflow:visible}.results-line{display:block;font-family:Anton,Impact,sans-serif;line-height:.9;letter-spacing:.015em;white-space:nowrap;transform-origin:left center}.line-one{font-size:clamp(30px,3.55vw,60px)}.line-two{font-size:clamp(52px,6.2vw,105px);color:var(--red);margin-top:7px}.results-inner>p{font-size:clamp(12px,1vw,15px);line-height:1.5;margin:0;max-width:600px;color:#fff}
.project-nav{display:flex;justify-content:space-between;align-items:flex-start;padding-top:64px;padding-bottom:96px;font-size:13px;font-weight:700;letter-spacing:.12em}.project-nav a{display:flex;flex-direction:column;gap:11px}.project-nav .next{text-align:right}.project-nav strong{font-size:13px;letter-spacing:.08em}.project-nav a:hover{color:var(--teal)}
footer{min-height:440px;background:var(--teal);color:#fff;position:relative;margin-top:0}.tear{position:absolute;top:-64px;left:0;right:0;height:90px;overflow:visible;z-index:2;pointer-events:none}.tear img{width:100%;height:90px;object-fit:fill;object-position:bottom;display:block}.foot{min-height:440px;padding:85px 4.2vw 24px;display:grid;grid-template-columns:1.2fr 1fr;grid-template-rows:1fr auto;column-gap:8vw;position:relative;z-index:3}.footer-logo{width:min(470px,48vw);max-height:220px;object-fit:contain;object-position:left top;align-self:start}.footer-links{display:grid;grid-template-columns:1fr 1.35fr;gap:5vw;align-self:start;padding-top:6px}.footer-links div{display:flex;flex-direction:column;gap:9px}.footer-links strong{font-size:9px;letter-spacing:.18em;margin-bottom:4px}.footer-links a{font-size:10px;font-weight:600;letter-spacing:.1em}.footer-links a:hover{color:#111}.foot-bottom{grid-column:1/-1;border-top:1px solid #ffffff66;padding-top:14px;align-self:end;font-size:9px;font-weight:700;letter-spacing:.1em;display:flex;justify-content:space-between}
.lightbox{position:fixed;inset:0;background:rgba(6,6,6,.9);z-index:100;display:flex;align-items:flex-start;justify-content:center;padding:45px 5vw;opacity:0;visibility:hidden;transition:.22s}.lightbox.open{opacity:1;visibility:visible}.lightbox-frame{width:min(100%,1100px);height:calc(100vh - 90px);overflow:auto;background:#111;box-shadow:0 25px 80px #0008}.lightbox-image{width:auto;max-width:100%;height:auto;display:block;margin:0 auto}.lightbox-close{position:fixed;top:18px;right:22px;width:42px;height:42px;border:1px solid #fff6;border-radius:50%;background:#111;color:#fff;font-size:30px;line-height:1;cursor:pointer;z-index:101}.lightbox-close:hover{background:var(--red)}
@media (min-width:901px) and (max-width:1200px){
  .project-hero{grid-template-columns:52% 48%;column-gap:0}
  .project-intro{grid-template-columns:38% 62%}
  .intro-copy{padding-right:5vw}
  .work-grid{padding-bottom:10px}
  .work-row{margin-bottom:8px}
  .pitch-row{margin-bottom:0}
  .website-row{--website-h:clamp(360px,39vw,470px);height:var(--website-h);grid-auto-rows:var(--website-h)}
  .website-piece,.gif-trigger,.device-piece{height:var(--website-h);min-height:var(--website-h)}
  .gif-trigger img{object-fit:cover}
  .device-piece{padding-left:12px}
  .device-piece img{width:100%;height:100%;min-height:0;object-fit:contain}
  .social-row{margin-bottom:0}
  /* Tablet: keep the art rows compact and make the website pair share a true visual frame. */
  .pitch-row,.social-row{grid-auto-rows:auto;align-items:start}
  .pitch-piece,.social-piece,.facebook-piece,.thirds-piece{height:auto}
  .website-row{--website-h:clamp(340px,39vw,470px)}
  .website-piece,.gif-trigger,.device-piece{height:var(--website-h);min-height:var(--website-h)}
  .gif-trigger img{object-fit:cover;width:100%;height:100%}
  .device-piece img{width:100%;height:100%;min-height:0;object-fit:cover;object-position:center}
  .work-row{margin-bottom:6px}
  .pitch-piece img,.social-piece img,.facebook-piece img,.thirds-piece img{height:auto}
  .results{padding-top:20px;padding-bottom:26px}
  .results-inner{grid-template-columns:minmax(0,58%) minmax(0,42%);gap:2.5vw}
  .results-inner>p{max-width:38vw;font-size:clamp(11px,1.05vw,14px)}
}
@media (min-width:1201px){
  .project-hero{min-height:calc(100svh - 82px);}
  .project-intro{grid-template-columns:minmax(0,43%) minmax(0,57%)}
  .intro-copy{padding-right:2vw}
  .intro-art{justify-content:flex-start}
  .intro-art img{width:min(100%,700px)}
  .pitch-row,.social-row{grid-auto-rows:auto}
  .pitch-row{margin-bottom:14px}
  .pitch-piece img,.social-piece img,.facebook-piece img,.thirds-piece img{height:auto}
}

@media(max-width:900px){
.site-header{height:68px;padding:0 20px}.nav-brand img{width:190px}.menu{display:block}nav[aria-label="Primary navigation"]{display:none;position:absolute;top:68px;left:0;right:0;background:var(--paper);padding:18px 20px;flex-direction:column;gap:0}nav[aria-label="Primary navigation"].open{display:flex}nav[aria-label="Primary navigation"] a{padding:14px 0}
.section-shell{padding-left:20px;padding-right:20px}.project-hero{min-height:690px;display:flex;flex-direction:column;align-items:stretch;padding:45px 20px 55px}.hero-lockup{grid-template-columns:16px 10px minmax(0,1fr);column-gap:8px;max-width:100%;align-items:start}.hero-logo{height:auto;width:min(100%,330px);max-width:100%}.hero-bar-wrap{align-items:flex-start}.hero-color-bar{width:10px;height:auto;display:block}.hero-reg-wrap{align-self:stretch;padding-top:0}.hero-reg{width:15px;height:15px}.hero-logo-wrap p{font-size:8px;letter-spacing:.06em;white-space:nowrap;line-height:1.3;margin:1px 0 0;padding-left:6.5%;}.hero-art{margin-top:34px;height:auto;align-self:center;width:100%;display:flex;justify-content:center}.hero-art img{width:min(100%,580px);height:auto;transform:none}
.project-intro{grid-template-columns:1fr;gap:32px;padding-top:35px;padding-bottom:75px}.intro-copy{padding-right:0}.intro-art{width:100%;justify-content:flex-start}.intro-art img{width:100%;height:auto}
.visual-language{padding-bottom:38px}.visual-language>h2{margin-bottom:28px}.language-system{grid-template-columns:repeat(6,1fr);grid-template-rows:auto auto;min-height:0;row-gap:8px;column-gap:4px}.language-divider{display:none}.language-piece{padding:0;justify-content:center;min-width:0}.language-logo{grid-column:1 / 3;grid-row:1}.language-palette{grid-column:3 / 5;grid-row:1}.language-type{grid-column:5 / 7;grid-row:1;align-items:center}.language-icons{grid-column:1 / 4;grid-row:2}.language-marks{grid-column:4 / 7;grid-row:2;justify-content:center}.language-logo img{width:min(118px,92%)}.language-palette img{width:min(108px,88%)}.type-aa{font-size:32px}.language-type strong{font-size:10px;margin-top:5px}.language-type small{font-size:5px}.language-icons img{width:min(145px,92%)}.language-marks img{width:min(130px,88%)}
.work-grid{padding-bottom:28px}.work-row{grid-template-columns:1fr!important;gap:10px;margin-bottom:10px;grid-auto-rows:auto}.website-row{height:auto;grid-auto-rows:auto}.gif-trigger{height:auto;min-height:0;aspect-ratio:640/590}.gif-trigger img{object-fit:cover}.device-piece{padding-left:0;height:auto;min-height:0}.device-piece img{height:auto;min-height:0}.pitch-row,.social-row{gap:12px}.pitch-piece img,.social-piece img,.facebook-piece img,.thirds-piece img{height:auto;object-fit:contain}.gif-label{opacity:1;transform:none}
.results{padding:26px 20px 30px}.results-inner{grid-template-columns:1fr;gap:24px}.line-one{font-size:clamp(30px,8vw,58px)}.line-two{font-size:clamp(44px,12.7vw,88px)}.results-inner>p{font-size:12px}.project-nav{padding-top:52px;padding-bottom:88px;font-size:10px}.project-nav strong{font-size:11px}
footer{margin-top:0}.foot{min-height:420px;padding:85px 20px 18px;grid-template-columns:1fr;grid-template-rows:auto auto 1fr;row-gap:40px}.footer-logo{width:78vw}.footer-links{grid-template-columns:1fr 1fr;gap:25px;padding-top:0}.foot-bottom{align-self:end;font-size:8px}.tear{top:-64px}
.lightbox{padding:55px 12px 20px}.lightbox-frame{height:calc(100vh - 75px)}.lightbox-close{top:9px;right:10px}
}
