:root{color-scheme:light;--paper:#f8f6f3;--ink:#19151e;--body:#4a4254;--violet:#7300fa;--lilac:#eee7f6;--line:#d6cfdd;--bar:4.25rem;--width:77rem;--pad:clamp(1.2rem,4.6vw,4rem);font-family:"Open Sans",Arial,sans-serif}
@font-face{font-family:"Open Sans";src:url("assets/open-sans-regular.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"Open Sans";src:url("assets/open-sans-bold.ttf") format("truetype");font-weight:700;font-display:swap}
@font-face{font-family:"Open Sans";src:url("assets/open-sans-extra-bold.ttf") format("truetype");font-weight:800;font-display:swap}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:calc(var(--bar) + 1.25rem);scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);line-height:1.55}
body:has(dialog[open]){overflow:hidden}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,p,dd{margin:0}h2,h3{line-height:1.08;text-wrap:balance}
p,dd{color:var(--body);text-wrap:pretty}
a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}
a:focus-visible,button:focus-visible{outline:3px solid var(--violet);outline-offset:4px}
.wrap{width:min(100%,calc(var(--width) + var(--pad)*2));padding-inline:var(--pad);margin-inline:auto}
.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip:focus{position:fixed;z-index:5;top:.4rem;left:1rem;padding:.7rem;background:white}
.top{position:sticky;top:0;z-index:3;background:var(--paper);border-bottom:1px solid var(--line)}
.top-inner{display:flex;align-items:center;justify-content:space-between;gap:.8rem;min-height:var(--bar)}
.wordmark{font-size:clamp(.78rem,1.45vw,1.1rem);font-weight:800;white-space:nowrap;letter-spacing:-.02em}
.top nav{display:flex;align-items:center;gap:clamp(.15rem,1.6vw,1.4rem)}
.top nav a{padding:.65rem .55rem;text-transform:uppercase;font-size:clamp(.65rem,1vw,.86rem);line-height:1;font-weight:700}
.top nav a:hover,.top nav a:focus-visible,.top nav a[aria-current]{background:var(--lilac);color:var(--violet)}
.hero{max-width:100rem;margin-inline:auto}.hero-desktop img{width:100%}
.hero-desktop{max-height:min(76vh,51rem);overflow:hidden}
.hero-desktop img{height:min(76vh,51rem);object-fit:contain;object-position:center;background:#f8f5f2}
.hero-mobile{display:none}
.hero-strip{background:var(--ink);color:white}
.hero-strip .wrap{min-height:5.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.hero-strip p,.hero-strip a{color:inherit;font-weight:800;font-size:clamp(.8rem,1.65vw,1.4rem)}
.hero-strip p span{color:#d7c1e8;margin-inline:.4em}
.hero-strip a{display:inline-flex;align-items:center;gap:.8em;font-size:clamp(.72rem,1.25vw,1rem);padding:.65em .85em;white-space:nowrap}
.hero-strip a:hover,.hero-strip a:focus-visible{background:var(--lilac);color:var(--ink)}
.section{padding-block:clamp(3.4rem,8vw,7rem);position:relative}
.section+.section::before{content:"";position:absolute;inset:0 var(--pad) auto;border-top:1px solid var(--line)}
.section h2,.contact h2{font-size:clamp(2.5rem,6.4vw,5.7rem);font-weight:800;letter-spacing:-.065em}
.section-head{margin-bottom:clamp(1.5rem,3.5vw,3.1rem);border-bottom:1px solid var(--line);padding-bottom:1.45rem}
.eyebrow,.skills,.action,.back,.text-action{color:var(--violet);font-size:.78rem;font-weight:800;letter-spacing:.045em}
.eyebrow{margin-bottom:.95rem}.skills{margin-top:1.1rem}
.lede{font-size:clamp(1.03rem,1.85vw,1.36rem);max-width:51rem;margin-top:1rem}
.brand-index-grid,.gallery-grid,.editorial-grid,.video-grid,.about-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.1rem,3vw,3rem)}
.brand-index-grid{margin-top:2.4rem;column-gap:2rem;row-gap:0}
.brand-link{display:grid;grid-template-columns:2rem 1fr auto;align-items:center;gap:.7rem;padding:1.35rem .6rem;border-top:1px solid var(--line);transition:background .16s}
.brand-link:nth-last-child(-n+2){border-bottom:1px solid var(--line)}
.brand-link:hover,.brand-link:focus-visible,.featured-card:hover,.featured-card:focus-visible{background:var(--lilac)}
.brand-link strong{display:block;font-size:clamp(1.25rem,2.6vw,2.1rem);line-height:1.13;letter-spacing:-.035em}
.brand-link small{display:block;color:var(--body);margin-top:.3rem}.brand-index,.brand-arrow{color:var(--violet);font-weight:800}
.brand-arrow{font-size:1.5rem}
.featured-grid,.step-grid,.columns-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.8rem,2.3vw,2rem)}
.featured-card{display:flex;flex-direction:column;border:1px solid var(--line);transition:background .16s}
.featured-art{display:grid;grid-template-columns:repeat(var(--columns),1fr);height:clamp(10rem,19vw,17rem);overflow:hidden;background:var(--lilac);gap:2px}
.featured-art img{width:100%;height:100%;object-fit:cover}
.featured-copy{padding:1.1rem;display:flex;flex-direction:column;flex:1}.featured-copy h3{font-size:clamp(1.25rem,2.6vw,2.2rem);letter-spacing:-.045em}
.featured-copy p:not(.eyebrow){margin-top:.6rem}
.featured-copy .action{margin-top:auto;padding-top:1rem}
.text-action{border:0;background:none;padding:.65rem .75rem;color:var(--violet);font-weight:800}
.text-action:hover,.back:hover{background:var(--lilac)}
.back{display:inline-block;padding:.6rem 0;margin-bottom:1.35rem}
.strip{display:grid;grid-template-columns:repeat(var(--columns),minmax(0,1fr));gap:clamp(.25rem,.8vw,.75rem);align-items:start}
.case-strip[style="--columns:6"]{grid-template-columns:repeat(3,minmax(0,1fr))}
.case-strip{max-width:65rem;margin-inline:auto}
.media-tile{position:relative;display:block;width:100%;min-width:0;padding:0;border:0;overflow:hidden;background:var(--lilac);cursor:zoom-in}
.media-tile img{width:100%;transition:transform .18s ease}
.media-tile:hover img{transform:scale(1.025)}
.media-icon{position:absolute;display:grid;place-items:center;width:clamp(1.25rem,3vw,2.35rem);aspect-ratio:1;right:.45rem;bottom:.45rem;border-radius:50%;background:var(--ink);color:white;font-size:clamp(.72rem,1.2vw,1rem);line-height:1;font-weight:700}
.media-tile:hover .media-icon,.media-tile:focus-visible .media-icon{background:var(--lilac);color:var(--ink)}
.play-tile{cursor:pointer}.play-tile .media-icon{background:var(--violet)}
.play-tile .media-icon{width:clamp(1.6rem,4vw,3rem)}
.editorial-grid{margin-top:2.3rem;line-height:1.7}
.seven-feature{display:grid;gap:1.4rem}
.seven-feature .video-hero{max-width:none}
.seven-feature-copy{grid-template-columns:minmax(0,1fr);gap:1.4rem;margin-top:0}
.seven-ads-intro{max-width:none}
.steps{margin-top:2.4rem;padding-top:1.5rem;border-top:1px solid var(--line)}
.step-grid h3{font-size:1.05rem;margin-bottom:.55rem}.step-grid h3 span{color:var(--violet)}
.takeaway{background:var(--lilac);padding:clamp(1.2rem,3vw,2.6rem);margin-top:2.3rem}
.takeaway p:not(.eyebrow){font-size:clamp(1.1rem,2.2vw,1.8rem);font-weight:800;color:var(--ink);letter-spacing:-.025em}
.gallery-grid{row-gap:2.5rem}.gallery-grid h3,.media-caption h3,.clip-title{font-size:clamp(1.14rem,2.4vw,1.65rem);letter-spacing:-.035em;margin-top:.95rem}
.gallery-grid p,.video-card>p{margin-top:.5rem}
.mini-strip{background:var(--lilac);height:clamp(7rem,17vw,15rem);align-items:center;padding:clamp(.25rem,.65vw,.55rem)}
.mini-strip .media-tile img{height:clamp(6rem,15.5vw,14rem);object-fit:contain}
.mini-strip .media-icon{right:.15rem;bottom:.15rem}
.subsection{border-top:1px solid var(--line);margin-top:3.5rem;padding-top:1.8rem}
.subheading,.about-grid h3,.about-row h3{font-size:clamp(1.65rem,3.6vw,3rem);letter-spacing:-.05em}
.video-grid{margin-top:1.6rem}.video-card .media-tile img{height:clamp(10rem,24vw,19rem);object-fit:contain}
.video-hero{max-width:57rem}.video-hero .media-tile img{height:auto;max-height:32rem}
.media-caption{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}.media-caption span{color:var(--violet);font-size:.77rem;font-weight:800;white-space:nowrap}
.seven-grid{margin-top:1.2rem}.seven-grid>article:first-child>.media-tile{max-width:7rem;margin-top:.8rem}
.clip-title{margin-top:1.3rem}.text-action{padding-inline:0}
.signage-grid{margin-top:2rem}.signage-wide{grid-column:1/-1}.signage-grid .media-tile img{aspect-ratio:1.6;object-fit:cover}
.signage-wide .media-tile img{aspect-ratio:2.05;object-fit:contain}
.about-grid{grid-template-columns:1.55fr 1fr}.about-grid h3{color:var(--violet);margin-bottom:1rem}.about-grid p+p{margin-top:1rem}
.about-grid aside{background:var(--ink);color:white;padding:1.45rem 1.8rem;align-self:start}.about-grid aside h3{color:#ead9fa;font-size:1.7rem}
.about-grid ul{margin:0;padding-left:1.3em}.about-grid li+li{margin-top:.3rem}
.about-row{display:grid;grid-template-columns:minmax(10rem,1fr) 1.7fr;gap:1.3rem;border-top:1px solid var(--line);padding-top:1.7rem;margin-top:2rem}
.about-row dt{font-weight:800;color:var(--violet)}.about-row dd+dt,.about-row p+p{margin-top:.65rem}
.contact{background:var(--violet);color:white;padding-block:clamp(2.4rem,5vw,4.75rem)}
.contact h2{font-size:clamp(2.2rem,5vw,4.4rem)}.contact p{color:white;margin-top:.85rem}
.contact-links{display:flex;gap:.65rem;flex-wrap:wrap;margin-top:1.5rem}
.contact-links a{border:1px solid #fffd;padding:.55rem .9rem;font-weight:700}
.contact-links a:hover,.contact-links a:focus-visible{background:var(--lilac);color:var(--ink)}
.contact-links a:focus-visible{outline-color:white}.contact-links span{margin-left:.55rem}
.footer{display:flex;justify-content:space-between;gap:1rem;padding-block:1.3rem;font-size:.73rem;font-weight:800;color:var(--body)}
dialog{border:0;padding:0;background:transparent;color:white;width:min(96vw,75rem);max-width:none;max-height:95dvh;overflow:auto}
dialog::backdrop{background:#17121eea}
.viewer-inner{background:#211a29;padding:.8rem clamp(.65rem,2vw,1.3rem)}
.viewer-head,.viewer-tools{display:flex;gap:.7rem;align-items:center;justify-content:center}
.viewer-head{justify-content:space-between;margin-bottom:.55rem}
.viewer-head h2{font-size:clamp(1rem,2.5vw,1.45rem)}
.viewer-head button,.viewer-tools button{background:#383040;border:1px solid #8e809d;color:white;padding:.45rem .75rem;min-height:2.75rem}
.viewer-head button{font-size:1.5rem;line-height:1}
.viewer-head button:hover,.viewer-tools button:hover{background:var(--lilac);color:var(--ink)}
.viewer-head button:focus-visible,.viewer-tools button:focus-visible{outline-color:#e6d5fa}
.viewer-stage{display:grid;place-items:center;min-height:10rem;background:#110e15}
.viewer-stage :is(img,video){max-width:100%;max-height:min(72dvh,56rem);height:auto;width:auto}
.viewer-tools{margin-top:.6rem;flex-wrap:wrap}.viewer-count{font-size:.8rem}.viewer-tools .viewer-related{font-weight:700;font-size:.85rem}
[hidden]{display:none!important}
@media(min-width:64rem){
 .seven-feature{
  grid-template-columns:minmax(0,2fr) minmax(0,1fr);
  grid-template-rows:auto auto;
  gap:0 clamp(1.8rem,3vw,2.6rem);
 }
 .seven-feature .video-hero{
  grid-column:1;
  grid-row:1 / span 2;
  display:grid;
  grid-template-rows:subgrid;
 }
 .seven-feature .media-tile{align-self:end}
 .seven-feature-copy{
  grid-column:2;
  grid-row:1;
  align-self:end;
  font-size:clamp(1rem,1.35vw,1.125rem);
  gap:1.65rem;
 }
 .seven-feature-copy .eyebrow{font-size:.875rem;margin-bottom:1.2rem}
}
@media(max-width:700px){
 :root{--bar:3.6rem}.hero-desktop{display:none}
 .hero-mobile{display:grid;grid-template-columns:1fr .96fr;align-items:center;background:#f8f5f2;overflow:hidden}
 .hero-mobile img{width:100%;height:100%;max-height:32rem;object-fit:cover;object-position:55% center}
 .hero-mobile p{font-weight:800;color:#090909;text-transform:uppercase;font-size:clamp(1.55rem,6.5vw,3.2rem);letter-spacing:-.07em;line-height:1.03;padding-left:var(--pad)}
 .hero-mobile p span{color:var(--violet)}
 .hero-strip .wrap{min-height:4.45rem}
 .featured-grid,.step-grid{grid-template-columns:1fr}
 .featured-art{height:clamp(9rem,42vw,14rem)}
 .gallery-grid,.editorial-grid,.about-grid{grid-template-columns:1fr}
 .brand-link{grid-template-columns:1.2rem 1fr auto;gap:.35rem;padding:1rem .15rem}
 .brand-link small{font-size:.76rem}.brand-index-grid{column-gap:.85rem}
 .mini-strip{height:clamp(8rem,32vw,12rem)}
 .mini-strip .media-tile img{height:clamp(7rem,29vw,11rem)}
 .video-card .media-tile img{height:clamp(8rem,32vw,14rem)}
 .video-hero .media-tile img{height:auto}
 .columns-3{grid-template-columns:repeat(2,minmax(0,1fr))}
 .about-row{grid-template-columns:1fr;gap:.85rem}
 .signage-wide{grid-column:auto}
}
@media(max-width:395px){.wordmark span{font-size:.63rem}.top nav a{padding:.58rem .3rem}.hero-strip p{font-size:.68rem}.hero-strip p span{margin-inline:.15em}.brand-link strong{font-size:1.05rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

@media(max-width:360px){.wordmark span{display:none}}
