/* Three Tapes: multi-page design layer. Retains shipped visual identity. */
.tt-mobile-menu{display:none}
.tt-multipage{--mp-panel:#15131b;--mp-line:rgba(255,255,255,.18);}
.tt-multipage .tt-top{width:min(100% - 48px,1240px)}
.tt-multipage .tt-contact{border-radius:4px}
.mp-hero{padding-top:84px;padding-bottom:12px}
.mp-hero-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(270px,.45fr);align-items:end;gap:45px;margin-top:21px}
.mp-hero h1{font-size:clamp(76px,10.2vw,155px);letter-spacing:-.09em;line-height:.84;font-weight:400;margin:0;max-width:1150px}
.mp-hero h1 em{font-style:normal;color:#c7b8ff}
.mp-hero-aside{max-width:410px;padding:22px 0 7px;border-top:1px solid rgba(255,255,255,.28)}
.mp-index{display:block;color:#b6a4d2;font-size:10px;letter-spacing:.16em;font-weight:700;margin-bottom:24px}
.mp-hero-aside p{font-size:17px;line-height:1.62;color:#c7c0ce;margin:0 0 26px}
.mp-inline-link{font-size:13px;font-weight:700;display:inline-block;border-bottom:1px solid #bcb1c8;padding-bottom:7px}
.mp-inline-link:hover{color:#d4bcff}
.mp-rule{height:1px;background:rgba(255,255,255,.21);margin-top:80px}
.mp-section{padding-block:108px;border-bottom:1px solid var(--mp-line)}
.mp-section-top{display:flex;align-items:start;justify-content:space-between;gap:30px;margin-bottom:40px}
.mp-section-top h2{font-size:clamp(44px,6.1vw,87px);line-height:.94;letter-spacing:-.075em;margin:20px 0 0;font-weight:400}
.mp-section-top>p{color:#aaa5af;font-size:15px;max-width:380px;line-height:1.7;margin:35px 0 0}
.mp-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:28px}
.mp-filters button{cursor:pointer;background:transparent;border:1px solid #ffffff42;border-radius:3px;padding:11px 16px;color:#c4bfcc;font:600 11px/1.2 Arial,Helvetica,sans-serif}
.mp-filters button span{font-size:10px;opacity:.7;margin-left:8px}
.mp-filters button:hover,.mp-filters button.is-active{background:#c7b8ff;color:#100d18;border-color:#c7b8ff}
.mp-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:27px 16px}
.mp-project{border-bottom:1px solid #ffffff3b;display:flex;flex-direction:column;padding-bottom:29px;min-width:0}
.mp-project-media{position:relative;background:#25212a;aspect-ratio:4/3;overflow:hidden}
.mp-project-media img{width:100%;height:100%;object-fit:cover;filter:brightness(.85);transition:transform .65s cubic-bezier(.18,.65,.25,1),filter .35s}
.mp-project:hover img{transform:scale(1.045);filter:brightness(1)}
.mp-project-open{display:grid;place-items:center;position:absolute;right:14px;top:14px;width:38px;height:38px;color:#14101a;background:#f3edf9;border-radius:50%;font-size:20px}
.mp-project-line{display:flex;justify-content:space-between;gap:8px;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#ac9eae;margin-top:20px}
.mp-project-line span:last-child{color:#cbb7ec;white-space:nowrap}
.mp-project h3{font-size:clamp(30px,3.3vw,48px);line-height:1.04;letter-spacing:-.065em;font-weight:400;margin:19px 0 13px}
.mp-project p{color:#a9a1af;font-size:13px;line-height:1.65;max-width:450px;margin:0}
.mp-no-work{font-size:14px;color:#aaa}
.mp-work-note{display:grid;grid-template-columns:.4fr 1fr;gap:80px}
.mp-work-note h2,.mp-statement-copy h2{font-weight:400;line-height:1;letter-spacing:-.075em;font-size:clamp(43px,6vw,86px);margin:0 0 28px}
.mp-work-note p,.mp-statement-copy p{max-width:660px;font-size:17px;line-height:1.75;color:#aaa3af;margin:0 0 27px}
.mp-wide-image{position:relative;overflow:hidden;background:#100c16;min-height:460px;max-height:750px}
.mp-wide-image img{display:block;width:100%;max-height:750px;min-height:460px;object-fit:cover;object-position:center 34%}
.mp-wide-image:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#08061096)}
.mp-image-caption{position:absolute;z-index:1;bottom:25px;left:30px;right:30px;display:flex;justify-content:space-between;gap:15px;color:#fff;font-size:10px;letter-spacing:.11em}
.mp-statement{padding-block:100px 30px}
.mp-statement-copy{display:grid;grid-template-columns:.5fr 1fr 1fr;gap:30px;align-items:start;margin-top:63px}
.mp-statement-copy h2{grid-column:2;max-width:690px}
.mp-statement-copy h2 em{font-style:normal;color:#c7b8ff}
.mp-statement-copy p{grid-column:3;margin:0}
.mp-team-grid,.mp-process{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.mp-team-grid article,.mp-process article{border-top:1px solid #ffffff6b;padding:19px 0 45px;min-height:200px}
.mp-team-grid article span,.mp-process article span{font-size:10px;letter-spacing:.14em;color:#bfa9d2}
.mp-team-grid article h3{font-size:clamp(38px,5vw,70px);font-weight:400;letter-spacing:-.075em;margin:45px 0 18px}
.mp-team-grid article p,.mp-process article p{font-size:14px;line-height:1.7;color:#aaa3af;max-width:330px;margin:0}
.mp-process article h3{font-size:clamp(25px,3.1vw,40px);letter-spacing:-.06em;line-height:1.09;margin:48px 0 19px;font-weight:400}
.mp-contact-grid{display:grid;grid-template-columns:1fr minmax(260px,.56fr);gap:80px}
.mp-contact-grid h2{font-weight:400;letter-spacing:-.075em;font-size:clamp(49px,6.5vw,92px);line-height:.92;margin:22px 0 25px}
.mp-contact-grid .mp-lead{font-size:17px;line-height:1.65;color:#b0a8b6;max-width:560px}
.mp-contact-rows{margin-top:57px;border-top:1px solid #ffffff55}
.mp-contact-rows a{min-height:102px;padding:25px 0;display:grid;grid-template-columns:130px 1fr 25px;gap:18px;align-items:center;border-bottom:1px solid #ffffff32}
.mp-contact-rows span{font-size:10px;color:#a998be;letter-spacing:.13em}
.mp-contact-rows strong{font-weight:400;font-size:clamp(18px,2.9vw,34px);letter-spacing:-.06em;overflow-wrap:anywhere}
.mp-contact-rows b{font-size:22px;font-weight:400;color:#c7b8ff}
.mp-contact-rows a:hover strong{color:#cfbcff}
.mp-contact-aside{background:#19151f;border:1px solid #ffffff30;padding:36px 32px 30px;align-self:start}
.mp-contact-aside h3{font-size:37px;letter-spacing:-.065em;font-weight:400;margin:8px 0 28px}
.mp-contact-aside ol{list-style:none;padding:0;margin:0}
.mp-contact-aside li{display:flex;align-items:start;gap:16px;font-size:15px;line-height:1.5;color:#dbd1e2;padding:17px 0;border-top:1px solid #ffffff25}
.mp-contact-aside li span{font-size:11px;color:#bca0e9;flex-shrink:0;padding-top:4px}
.mp-contact-aside>p{font-size:13px;color:#a9a0b1;line-height:1.7;margin:28px 0 0}
.mp-privacy{max-width:900px}
.mp-privacy article{margin:0 0 56px}
.mp-privacy h2{font-size:clamp(28px,4vw,49px);font-weight:400;letter-spacing:-.055em;margin:0 0 15px}
.mp-privacy p{line-height:1.75;color:#bcb4c6;font-size:16px;margin:0 0 16px}
.mp-privacy p a{color:#d7c5ff;text-decoration:underline;text-underline-offset:3px}
.mp-cta-sub{line-height:1.6;font-size:15px;max-width:580px;margin:22px 0 0;color:#3d3047}
/* Global page navigation on existing home, service pages and case studies */
.tt-mobile-menu{position:relative;z-index:90}
.tt-mobile-menu summary{list-style:none;cursor:pointer;font-size:12px;color:#fff;border:1px solid #ffffff70;border-radius:3px;padding:12px 15px;min-width:72px;text-align:center;user-select:none}
.tt-mobile-menu summary::-webkit-details-marker{display:none}
.tt-mobile-menu summary span{margin-left:8px}
.tt-mobile-menu[open] summary{background:#c7b8ff;color:#151020;border-color:#c7b8ff}
.tt-mobile-menu nav{position:absolute;top:calc(100% + 10px);right:0;min-width:230px;background:#17121c;border:1px solid #c7b8ff;box-shadow:0 19px 45px #000b;display:flex;flex-direction:column;padding:11px}
.tt-mobile-menu nav a{display:flex;justify-content:space-between;gap:20px;padding:13px 14px;color:#f5eefb;font-size:15px;border-bottom:1px solid #ffffff18}
.tt-mobile-menu nav a:last-child{border-bottom:none}
.tt-mobile-menu nav a:hover{color:#c7b8ff}
.case-header{gap:18px}
.tt-case-global-links{display:flex;gap:24px;margin-left:auto}
.tt-case-global-links a{font-size:11px;color:#b8b0bf}
.tt-case-global-links a:hover{color:#fff}
.case-back{margin-left:auto;white-space:nowrap}
.tt-multipage .tt-nav a[aria-current="page"]{color:#f9f5ff}
/* Home page: nav starts at About, so remove previous first-child highlight. */
.desktop-nav a:first-child:not([aria-current]){background:transparent;color:#d9d4df}
.desktop-nav a:hover,.desktop-nav a[aria-current="page"]{background:#ffffff1c;color:#fff}
.site-footer .mp-footer-links{display:flex;gap:13px;flex-wrap:wrap;justify-content:center}
.site-footer .mp-footer-links a{font-size:11px;color:#b9adbd}
.site-footer .mp-footer-links a:hover{color:#fff}
.site-footer .mp-footer-links a[aria-current=page]{color:#fff}
/* Home & existing pages use the same secondary mobile dropdown. */
@media(max-width:900px){
 .mp-hero-grid{grid-template-columns:1fr;gap:30px}.mp-hero-aside{max-width:640px}
 .mp-hero h1{font-size:clamp(69px,10vw,112px)}
 .mp-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .mp-statement-copy{grid-template-columns:1fr 1fr;gap:14px}.mp-statement-copy .tt-kicker{grid-column:1/-1}.mp-statement-copy h2{grid-column:1}.mp-statement-copy p{grid-column:2}
 .mp-contact-grid{grid-template-columns:1fr;gap:55px}.mp-contact-aside{max-width:740px}
 .mp-work-note{grid-template-columns:1fr;gap:25px}
 .tt-nav,.desktop-nav,.tt-case-global-links{display:none!important}
 .tt-mobile-menu{display:block}
 .tt-top .tt-mobile-menu{margin-left:auto}
 .site-header .tt-mobile-menu{justify-self:end;margin-left:auto}
 .site-header>.pill{display:none}
 .case-back{margin-left:0}
}
@media(max-width:650px){
 .mp-hero{padding-top:53px}.mp-hero h1{font-size:clamp(56px,12vw,79px)}.mp-rule{margin-top:55px}
 .mp-section{padding-block:68px}.mp-section-top{display:block}.mp-section-top>p{margin-top:25px}
 .mp-project-grid{grid-template-columns:1fr}.mp-project-media{aspect-ratio:1.3}
 .mp-team-grid,.mp-process{grid-template-columns:1fr;gap:6px}
 .mp-team-grid article,.mp-process article{min-height:0;padding-bottom:29px}
 .mp-team-grid article h3,.mp-process article h3{margin-top:24px}
 .mp-statement{padding-top:60px}.mp-wide-image{min-height:300px}.mp-wide-image img{min-height:300px}.mp-image-caption{left:18px;right:18px;bottom:16px;font-size:8px}
 .mp-statement-copy{grid-template-columns:1fr;margin-top:45px}.mp-statement-copy h2,.mp-statement-copy p{grid-column:1}
 .mp-contact-rows a{grid-template-columns:1fr 20px;gap:10px}.mp-contact-rows a span{grid-column:1/-1}.mp-contact-rows strong{grid-column:1}.mp-contact-rows b{grid-column:2}
 .mp-contact-aside{padding:25px 20px}
 .tt-bottom{padding:25px 0}
 .case-header .case-back{display:none}
 .site-footer{flex-wrap:wrap;gap:15px}.site-footer .mp-footer-links{order:3;width:100%;justify-content:flex-start}
}
@media(prefers-reduced-motion:reduce){.mp-project img{transition:none!important}}

.mp-editorial-cover{background:radial-gradient(circle at 75% 35%,#72587955,transparent 55%),linear-gradient(150deg,#241923,#493845 50%,#151019);isolation:isolate;}
.mp-editorial-cover::before{content:"";position:absolute;inset:0;background-image:linear-gradient(#ffffff18 1px,transparent 1px),linear-gradient(90deg,#ffffff18 1px,transparent 1px);background-size:20% 20%;opacity:.32;pointer-events:none}
.mp-editorial-cover .mp-cover-type{position:absolute;z-index:1;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:29px;color:#f6f0eb;}
.mp-editorial-cover .mp-cover-type small,.mp-editorial-cover .mp-cover-type b{font-size:9px;letter-spacing:.18em;font-weight:600}
.mp-editorial-cover .mp-cover-type span{font-family:Georgia,serif;font-size:clamp(38px,4.3vw,71px);letter-spacing:-.052em;line-height:.91;font-weight:400}
.mp-editorial-cover .mp-project-open{z-index:2}
