/* Approved Creative Aperture extended across the family. The homepage keeps
   its signature lens; supporting pages share its optical material. */
:root{--ap-canvas:#0c0b10;--ap-ink:#f8f3f6;--ap-pink:#f4a3cc;--ap-action:#21101a;--ap-cherry:#20141d;--ap-mauve:#f0e7ed;--ap-dark-text:#261624;--ap-rule:#705263;--ap-ease:cubic-bezier(.16,1,.3,1)}
html{scrollbar-color:#9c798f #0c0b10}
.ap-family{--pink:var(--ap-pink)}
.ap-family h1,.ap-family h2{letter-spacing:-.04em}
.ap-family ::selection{background:var(--ap-pink);color:var(--ap-action)}
.ap-family .header{position:fixed;inset:0 0 auto;max-width:none;width:100%;margin:0;padding-inline:4.5vw;background:#0c0b10f5;color:var(--ap-ink);z-index:60;border-bottom:1px solid #ffffff12}
.ap-family .header .brand{width:166px}.ap-family .header .logo-dark{display:none}.ap-family .header .logo-light{display:block}
.ap-family .header .button{background:var(--ap-pink);color:var(--ap-action);border-color:var(--ap-pink);padding:16px 25px;min-height:54px;font-size:13px;border-radius:3px}
.ap-family .desktop-nav{gap:30px}.ap-family .desktop-nav a{font-size:12px}.ap-family .desktop-nav a::after{background:var(--ap-pink)}
.ap-family .mobile-nav{background:#161017;color:var(--ap-ink);z-index:55}.ap-family .mobile-nav>a{border-color:#51434f}
.ap-family .header :focus-visible,.ap-family .mobile-nav :focus-visible{outline:2px solid var(--ap-pink);outline-offset:5px}
.ap-family .skip{z-index:100;background:var(--ap-pink);color:var(--ap-action)}
.ap-family .footer{--ink:var(--ap-ink);background:#100d12;color:#e5dce4}.ap-family .footer-bottom{border-color:#423743;color:#baabba}.ap-family .footer-top>div>span{color:#baabba}
.ap-family .cookie{z-index:90;background:#171018;color:var(--ap-ink);border-color:#796673;border-radius:3px}.ap-family .cookie button{min-height:44px;background:var(--ap-pink);color:var(--ap-action)}
.ap-inner{padding-top:104px;--paper:var(--ap-mauve);--ink:var(--ap-dark-text);--muted:#69505f;--line:#b8a2b1;background:var(--paper);color:var(--ink)}
.ap-inner.theme-dark{--paper:var(--ap-canvas);--ink:var(--ap-ink);--muted:#d6c3d0;--line:var(--ap-rule)}
.ap-inner.theme-studio{--paper:var(--ap-cherry);--ink:var(--ap-ink);--muted:#d6c3d0;--line:var(--ap-rule)}
.ap-inner .wrap,.ap-inner .sc-wrap{width:91%;max-width:1520px}
.ap-inner .button{background:var(--ap-pink);color:var(--ap-action);border-color:var(--ap-pink);border-radius:3px;min-height:54px;transition:background .2s,color .2s,transform .2s var(--ap-ease)}
.ap-inner .button:hover{background:var(--ap-ink);border-color:var(--ap-ink);color:var(--ap-action);transform:translateY(-2px)}
.ap-inner .button:active{transform:translateY(1px)}
.ap-inner :focus-visible{outline:2px solid #3b1730;outline-offset:5px}.ap-inner.theme-dark :focus-visible,.ap-inner.theme-studio :focus-visible{outline-color:var(--ap-pink)}
.ap-inner .close,.ap-inner.theme-legal .band{background:var(--ap-pink);color:var(--ap-action);--ink:var(--ap-action);--paper:var(--ap-ink);padding-block:75px;position:relative;overflow:clip}
.ap-inner .close h2{font-size:clamp(42px,5.3vw,82px);line-height:1.08;letter-spacing:-.04em}.ap-inner .close p{font-size:14px}
.ap-inner .close .button{background:var(--ap-action);color:var(--ap-ink);border-color:var(--ap-action)}.ap-inner .close .button:hover{background:var(--ap-ink);color:var(--ap-action);border-color:var(--ap-ink)}
.ap-inner .close :focus-visible,.ap-inner.theme-legal .band :focus-visible{outline-color:var(--ap-action)}
.ap-inner-hero{position:relative;isolation:isolate;overflow:clip;width:100%;max-width:none;margin:0;min-height:660px;padding:75px 4.5vw 85px;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:4%;background:var(--ap-canvas);color:var(--ap-ink)}
.ap-inner-copy{position:relative;z-index:3;max-width:720px}.ap-inner-hero .ap-inner-copy h1{font-size:clamp(62px,6.7vw,106px);line-height:1.04;letter-spacing:-.04em}.ap-inner-hero h1 span{color:var(--ap-pink)}
.ap-inner-hero .ap-inner-copy>p{font-size:16px;line-height:1.8;max-width:460px;color:#d6c3d0;margin:27px 0 28px}.ap-inner-hero .text-link{font-size:13px;color:var(--ap-ink)}.ap-inner-hero :focus-visible{outline-color:var(--ap-pink)}
.ap-inner-hero .ap-secondary{display:block;width:fit-content;margin-top:18px}.ap-inner-hero .ap-secondary .icon{margin-left:12px}
.ap-optic{pointer-events:none;max-width:none;object-fit:cover;transform:translate3d(var(--optic-x,0px),var(--optic-y,0px),0) scale(var(--optic-scale,1));transform-origin:70% 50%}
.ap-production-art{position:relative;min-width:0;height:510px}.ap-production-art>.ap-optic{position:absolute;width:180%;height:110%;left:-52%;top:-5%;object-position:100% 50%;mask-image:linear-gradient(90deg,transparent 0%,#000 25%),linear-gradient(180deg,transparent 0%,#000 12%,#000 88%,transparent 100%);mask-composite:intersect}
.ap-inner .service-detail-layout{border-top:1px solid var(--line)}.ap-inner .sticky-copy{top:130px}.ap-inner .service-list details{scroll-margin-top:125px;border-color:var(--line)}.ap-inner .service-list summary{min-height:80px}.ap-inner .service-list summary:hover,.ap-inner .service-list details[open]>summary{color:var(--ap-pink)}.ap-inner .service-content ul{font-size:12px}.ap-inner .service-content{padding-bottom:32px}
.ap-inner .campaign-process{background:var(--ap-cherry);width:100%;max-width:none;padding-inline:4.5vw}.ap-inner .process-grid{gap:5%}.ap-inner .process-grid>div{border-color:#94667f}.ap-inner .credential p{font-size:14px}
.ap-inner .studio-links a{transition:color .2s}.ap-inner .studio-links a:hover{color:var(--ap-pink)}
.ap-inner.theme-work .work-hero{min-height:640px;grid-template-columns:1.1fr 1fr;padding-bottom:70px}.ap-inner .work-hero h1{font-size:clamp(60px,6.3vw,100px)}
.ap-work-art{position:relative;height:440px;min-width:0;perspective:1600px}.ap-work-art>.ap-optic{position:absolute;left:-15%;top:-15%;width:150%;height:135%;object-position:100% 50%;mask-image:linear-gradient(90deg,transparent,#000 40%)}
.ap-work-window{position:absolute;width:78%;border:5px solid #6d5967;border-radius:6px;box-shadow:0 25px 50px #0007;overflow:hidden;transform:translate3d(0,var(--format-y,0px),0) rotate(var(--rotation));background:#211822}.ap-work-window img{width:100%;height:auto;display:block}
.ap-window-primary{left:0;top:2%;--rotation:-7deg;z-index:1}.ap-window-secondary{left:30%;top:35%;width:74%;--rotation:7deg;z-index:2}
.ap-inner.theme-work .project-jump{display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px 26px;margin:0 auto;padding:26px 0 30px;border-bottom:1px solid var(--line)}.ap-inner .project-jump a{display:flex;align-items:center;gap:10px;font-size:12px;min-height:44px;text-decoration:none;border-bottom:1px solid transparent}.ap-inner .project-jump a:hover{border-color:currentColor}.ap-inner .project-jump .icon{width:15px;height:15px}
.ap-inner .portfolio{padding-top:55px}.ap-inner .project-image{background:#d5c2ce;padding:5% 7%;border-radius:3px;border:1px solid #bea2b3}.ap-inner .project-feature:nth-child(even) .project-image{background:#281722;border-color:#715065}.ap-inner .project-image>img{box-shadow:0 24px 55px #2c123233;border-radius:2px}.ap-inner .work-arrow{background:var(--ap-mauve);color:var(--ap-dark-text)}
.ap-inner .project-feature{scroll-margin-top:125px}.ap-inner .project-story h2{letter-spacing:-.04em}.ap-inner .project-story>div>p:not(.project-kind){font-size:14px}.ap-inner .quote-mark{color:#a44a77}
.ap-inner.theme-studio .about-hero{background:var(--ap-cherry);grid-template-columns:.95fr 1fr;gap:7%;min-height:690px}.ap-portrait-stage{position:relative;min-width:0}.ap-portrait-stage>.ap-optic{position:absolute;width:160%;height:130%;left:-35%;top:-18%;object-position:100% 50%;mask-image:linear-gradient(90deg,transparent 0%,#000 30%,#000 75%,transparent 100%)}
.ap-inner .about-hero .ap-portrait-stage figure{position:relative;z-index:2;width:100%;margin:0;transform:translate3d(0,var(--format-y,0px),0) rotate(2deg);padding:10px;background:#a18192;border:1px solid #d5b9c9;box-shadow:0 22px 50px #0c07104d}.ap-inner .about-hero figure img{width:100%;height:auto;aspect-ratio:1.15;object-fit:cover;object-position:50% 30%;box-shadow:none}.ap-inner .about-hero figcaption{font-size:11px;color:#21101a;padding:8px 3px 0;margin:0}
.ap-inner.theme-studio .story{border-color:var(--line)}.ap-inner.theme-studio .team-section{width:100%;max-width:none;padding-inline:4.5vw;background:var(--ap-mauve);color:var(--ap-dark-text);--muted:#69505f;--line:#b8a2b1}.ap-inner .team-grid article>img{border:1px solid #b8a2b1;border-radius:3px}.ap-inner .team-grid p:not(.role){font-size:14px}.ap-inner .team-section :focus-visible{outline-color:#3b1730}
.ap-inner.theme-contact .contact-intro h1 span{color:#943b68}.ap-inner .contact-form-panel{background:#e4d6e0;border:1px solid #b8a2b1;border-radius:3px}.ap-inner .field input:not([type=checkbox]),.ap-inner .field textarea,.ap-inner .field select{background:#f8f3f6;border-color:#a98a9d;border-radius:3px}.ap-inner .contact-direct a{border-color:var(--line)}
@media(max-width:1100px){.ap-inner-hero{min-height:580px;padding-block:55px 65px}.ap-inner-hero .ap-inner-copy h1{font-size:clamp(54px,7vw,80px)}.ap-production-art{height:420px}.ap-inner-hero .ap-inner-copy>p{font-size:14px}.ap-work-art{height:370px}.ap-inner.theme-studio .about-hero{min-height:610px}.ap-inner.theme-work .work-hero{min-height:580px}}
@media(max-width:800px){.ap-inner{padding-top:83px}.ap-family .header .brand{width:139px}.ap-family .header .button{padding:9px 13px;min-height:44px;font-size:10px;gap:10px}.ap-family .header-actions{gap:18px}.ap-inner .close-inner{gap:35px}.ap-inner .close h2{font-size:48px}.ap-inner-hero{gap:3%}.ap-inner-hero .ap-inner-copy h1{font-size:58px}.ap-production-art{height:370px}.ap-work-art{height:300px}.ap-inner.theme-work .work-hero{grid-template-columns:1.1fr 1fr}.ap-inner .work-hero h1{font-size:55px}.ap-inner .project-jump a{font-size:12px}.ap-inner.theme-studio .about-hero{gap:5%}.ap-inner .about-hero figcaption{font-size:10px}}
@media(max-width:700px){.ap-inner-hero,.ap-inner.theme-work .work-hero,.ap-inner.theme-studio .about-hero{display:flex;flex-direction:column;align-items:stretch;gap:35px;min-height:0;padding:45px 5% 50px}.ap-inner-hero .ap-inner-copy h1{font-size:clamp(52px,12.6vw,76px)}.ap-inner-hero .ap-inner-copy>p{font-size:14px;margin:23px 0}.ap-inner-copy{width:100%;max-width:500px}.ap-production-art{height:350px;width:100%;max-width:430px;align-self:center}.ap-inner .ap-secondary{display:inline-flex;margin:16px 0 0 20px}.ap-inner .services-hero .button{font-size:12px;padding-inline:18px;gap:18px}.ap-inner .services-hero .ap-secondary{font-size:12px;gap:8px}.ap-inner .services-hero .ap-secondary .icon{margin:0;width:18px}
 .ap-work-art{height:345px;width:100%;max-width:470px;align-self:center}.ap-window-primary{left:0;width:76%}.ap-window-secondary{left:28%;width:73%;top:34%}.ap-inner.theme-work .work-hero{padding-bottom:40px}.ap-inner .portfolio{padding-top:32px}.ap-inner.theme-work .project-jump{justify-content:flex-start;gap:5px 25px;padding-block:20px}.ap-inner .project-image{padding:6%;}.ap-inner .project-story{padding-top:25px}.ap-inner .project-tags{font-size:12px}.ap-inner .quote-section blockquote{font-size:34px}
 .ap-inner .service-detail-layout{grid-template-columns:1fr;gap:35px}.ap-inner .sticky-copy{position:static}.ap-inner .service-list summary{font-size:20px;min-height:75px}.ap-inner .process-grid{grid-template-columns:1fr;gap:28px}.ap-inner .process-grid p{font-size:14px}.ap-inner .credential p{font-size:14px}.ap-inner .credential{grid-template-columns:65px 1fr;gap:18px}.ap-inner .credentials{grid-template-columns:1fr}.ap-inner .credentials>h2{grid-row:auto}
 .ap-portrait-stage{width:94%;max-width:470px;align-self:center;margin-top:25px}.ap-inner .about-hero .ap-portrait-stage figure{padding:7px;transform:translate3d(0,var(--format-y,0px),0) rotate(2deg)}.ap-inner .about-hero figcaption{font-size:10px;line-height:1.5}.ap-inner .story{grid-template-columns:1fr;gap:28px}.ap-inner .close{padding-block:54px}.ap-inner .close-inner{grid-template-columns:1fr;gap:28px}.ap-inner .close h2{font-size:42px}.ap-inner .close p{font-size:14px}.ap-inner .team-grid .role{font-size:12px}
}
@media(max-width:700px){.ap-production-art>.ap-optic,.ap-work-art>.ap-optic{top:0;height:100%;mask-image:linear-gradient(180deg,transparent 0%,#000 14%,#000 85%,transparent 100%)}.ap-portrait-stage>.ap-optic{mask-image:linear-gradient(180deg,transparent 0%,#000 16%,#000 86%,transparent 100%)}}
@media(max-width:370px){.ap-family .header .brand{width:115px}.ap-family .header-actions{gap:12px}.ap-family .header .button{font-size:9px;padding-inline:10px}.ap-inner-hero .ap-inner-copy h1{font-size:49px}.ap-inner .services-hero .ap-secondary{margin-left:0;display:flex}.ap-work-art{height:310px}}
@media(prefers-reduced-motion:reduce){.ap-optic,.ap-work-window,.ap-inner .about-hero .ap-portrait-stage figure{--optic-x:0px!important;--optic-y:0px!important;--optic-scale:1!important;--format-y:0px!important}}
@media(prefers-contrast:more){.ap-inner{--muted:var(--ink);--line:currentColor}.ap-inner .ap-inner-copy>p{color:var(--ap-ink)}}
@media print{.ap-inner{padding-top:0}.ap-inner-hero{background:white!important;color:#111!important;display:block;min-height:0;padding:25px 0}.ap-inner-hero .ap-inner-copy>p,.ap-inner-hero h1 span{color:#111}.ap-production-art,.ap-work-art,.ap-optic{display:none}.ap-portrait-stage{max-width:400px}}
/* A live project in progress: text, not an invented product screenshot. */
.ap-care{padding:70px 0 80px;border-top:1px solid #b8a2b1;display:grid;grid-template-columns:1fr 1.15fr;gap:10%;scroll-margin-top:125px}
.ap-care h2{font-size:clamp(36px,4.5vw,64px);line-height:1.1}.ap-care-status{display:inline-flex;margin-top:20px;border:1px solid #a18192;border-radius:3px;padding:7px 12px;font-size:12px;color:#624355}.ap-care h3{font-size:clamp(25px,2.6vw,38px);line-height:1.2;letter-spacing:-.035em}.ap-care p{font-size:15px;line-height:1.85;margin-top:22px;max-width:65ch}.ap-care .text-link{font-size:13px;margin-top:22px}
@media(max-width:700px){.ap-care{grid-template-columns:1fr;gap:30px;padding:45px 0 55px}.ap-care p{font-size:14px}.ap-care-status{margin-top:14px}}
