@font-face{font-family:Studio Outfit;src:url('assets/brand/Outfit-Regular.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Studio Outfit;src:url('assets/brand/Outfit-SemiBold.woff') format('woff');font-weight:600 900;font-style:normal;font-display:swap}
:root{font-family:Studio Outfit,Arial,sans-serif;color:#111;background:#fff}
button:focus-visible,a:focus-visible{outline-color:currentColor}
.concept-brand{gap:12px;font:inherit}
.concept-brand .studio-symbol{width:32px;height:32px;object-fit:contain}
.concept-brand span{font-family:Studio Outfit,Arial,sans-serif;font-size:12px}
.concept-bar nav a,.notes-toggle{font-size:14px}
.brand-lockup{display:block;width:240px;max-width:100%;height:auto;object-fit:contain;object-position:left center}
.studio-logo-link{display:block;flex-shrink:0}
.site-header{height:152px}
.site-header .brand-lockup{width:230px}
.cinema .brand-lockup{filter:invert(1)}
.electric .brand-lockup{filter:invert(1)}
.cinema,.editorial,.electric,.concierge{font-family:Studio Outfit,Arial,sans-serif}
.cinema h1,.cinema .section-intro h2,.cinema-index button,.cinema-end>p:not(.eyebrow),.editorial h1,.editorial-side h2,.editorial-services .section-intro h2,.editorial-services .branch-name,.editorial-end h2,.concierge h1,.purpose-copy h2,.concierge-end h2,dialog h2{font-family:Studio Outfit,Arial,sans-serif}
.cinema{background:#111;color:#fff}
.cinema-shade{background:linear-gradient(90deg,#000d,#0006 55%,#0001),linear-gradient(0deg,#1119,transparent 60%)}
.cinema h1 em,.cinema .section-intro h2 em,.cinema-index button:hover{color:#fff}
.cinema-end{background:#202020}
.editorial,.concierge{background:#fff;color:#111}
.editorial-title>.eyebrow,.editorial h1 em,.editorial-side h2 em,.small-cross,.editorial-services button:hover,.concierge h1 em{color:#555}
.editorial-end{background:#111;color:#fff}
.electric{background:#fff;color:#111}
.electric .site-header,.electric-hero{background:#111;color:#fff}
.electric h1>span:not(.period),.electric h1 .period{color:#fff}
.electric-bottom a,.electric-marquee,.electric-end{background:#fff;color:#111}
.electric-grid{border-color:#1114}
.electric-grid button{border-color:#1114}
.electric-grid button:nth-child(3),.electric-grid button:hover,.electric-end button{background:#111;color:#fff}
.electric-feature h2 span,.electric-feature p:not(.eyebrow){color:#555}
.purpose-choices button[aria-pressed=true]{background:#111;color:#fff}
.purpose-choices button:hover{border-color:#111}
#purpose-result,.concierge-end{background:#efefef}
.purpose-copy>p:not(.eyebrow),.concierge-intro>p:last-child{color:#555}
#design-notes,dialog{background:#fff;color:#111}
.dialog-primary{background:#111;color:#fff}
dialog::backdrop{background:#000a}
.header-loc,.sd,.eyebrow,.concept-footer,.concept-footer button{font-family:Studio Outfit,Arial,sans-serif}
.kinetic{--acid:#fff;--ink:#111;color:#fff;font-family:Studio Outfit,Arial,sans-serif}
.kinetic-header{padding-top:20px;padding-bottom:20px;min-height:148px}
.kinetic-logo{width:240px;flex-shrink:0;line-height:0;letter-spacing:0}
.kinetic-logo .brand-lockup{width:100%;filter:invert(1)}
.kinetic-header button{color:#111;border:1px solid #fff;font-size:14px}
.kinetic-header>div{font-size:14px}
.kinetic-heading{padding-top:42px;padding-bottom:38px;background-image:url('assets/brand/studio-halftone-white.svg');background-repeat:no-repeat;background-size:auto 100%;background-position:right center}
.kinetic h1{position:relative;z-index:1;letter-spacing:-.055em;line-height:.94}
.kinetic-heading>.eyebrow{position:relative;top:auto;right:auto;margin-bottom:26px;max-width:none;font-size:14px;letter-spacing:.035em;line-height:1.6}
.kinetic-heading>.eyebrow br{display:none}
.kinetic-heading>.eyebrow br::after{content:' '}
.kinetic-heading h1{max-width:100%;font-size:clamp(55px,9vw,154px)}
.kinetic-heading h1 span{color:#fff}
.elastic-intro,.elastic-intro>span:last-child{font-size:12px}
.elastic-panel:focus-visible{outline-color:#fff}
.elastic-caption{color:#f3f3f3;font-size:14px}
.elastic-summary .eyebrow{font-size:12px;color:#bcbcbc}
.elastic-summary>a,.kinetic-statement a,.project-context button{font-size:14px}
.kinetic-statement p:not(.eyebrow){color:#c6c6c6}
.kinetic-work-header,.kinetic-project-nav{background:#fff;color:#111}
.kinetic-work-header>p{color:#555;font-size:14px}
.kinetic-project-nav a{font-size:14px}
.parallax-chapter,.accent-pink,.accent-lime,.accent-blue{--accent:#fff}
.chapter-inset{border-color:#fff;background:#fff}
.chapter-inset>span{font-size:12px}
.project-context{background:#161616}
.project-context>.eyebrow{font-size:12px}
.kinetic-end{color:#111;background:#fff url('assets/brand/studio-halftone-black.svg') right center/auto 100% no-repeat}
.kinetic-end h2 em{color:#111}
.kinetic-end button{background:#111;color:#fff}
.kinetic-end>div{font-size:12px;border-color:#1115;align-items:center}
.kinetic-end .footer-brand{width:240px}
.motion-toggle{font-size:14px}
.concept-footer{padding-bottom:80px}
@media(max-width:1000px){.concept-brand span{display:none}.kinetic-header>div{gap:20px}.concept-bar nav a{padding:11px 9px}}
@media(max-width:650px){
 .concept-brand span{display:inline;font-size:12px;margin-left:0}
 .concept-bar nav a{font-size:12px;padding:9px 3px}
 .notes-toggle{font-size:13px}
 .site-header{height:130px;gap:12px}
 .site-header .brand-lockup{width:190px}
 .header-cta{font-size:13px;max-width:100px;text-align:left}
 .header-cta span{margin-left:0}
 .kinetic-header{min-height:136px;padding:20px 5%;gap:16px}
 .kinetic-logo{width:clamp(174px,51vw,218px)}
 .kinetic-header button{font-size:14px;padding:12px}
 .kinetic-heading{padding-top:26px;padding-bottom:28px;background-position:right top;background-size:auto 100%}
 .kinetic-heading>.eyebrow{font-size:14px;margin-bottom:22px;letter-spacing:0;max-width:80%}
 .kinetic-heading h1{font-size:10.6vw;line-height:1.02;letter-spacing:-.045em}
 .elastic-intro{align-items:flex-start;gap:10px;line-height:1.5;font-size:12px}
 .elastic-intro>span:last-child{font-size:12px;text-align:right;max-width:120px}
 .elastic-caption{font-size:13px}
 .elastic-summary>a{font-size:14px}
 .kinetic-statement h2{font-size:9.4vw;letter-spacing:-.045em}
 .kinetic-project-nav{gap:16px;flex-wrap:wrap}
 .kinetic-project-nav a{font-size:14px;flex:1 1 130px}
 .chapter-inset>span{font-size:12px;padding:6px 3px}
 .kinetic-end>div{align-items:flex-start;gap:24px;font-size:12px}
 .motion-toggle{font-size:13px}
}
@media(max-width:360px){.concept-bar nav a{font-size:12px}.concept-bar nav a span{display:block;margin:3px 0 0}.kinetic-header{gap:10px}.kinetic-header button{padding:10px}.site-header .brand-lockup{width:174px}.header-cta{font-size:12px}.kinetic-end .footer-brand{width:210px}}

/* Warm ivory brand surfaces and approved hybrid wordmark. */
:root{--studio-paper:#f5f2eb;--studio-ink:#24221f;background:var(--studio-paper);color:var(--studio-ink)}
body,.concept-bar,.concept-footer,#design-notes,dialog,.editorial,.concierge,.electric{background:var(--studio-paper);color:var(--studio-ink)}
.concept-bar{border-color:#24221f24}.concept-bar nav a{color:#625d55}
.kinetic{--ink:#24221f;--acid:#24221f;background:var(--studio-paper);color:var(--studio-ink)}
.kinetic-header{border-color:#24221f26}.kinetic-logo .brand-lockup{filter:none}
.kinetic-header button{background:var(--studio-ink);color:var(--studio-paper);border-color:var(--studio-ink)}
.kinetic-heading{background-image:url('assets/brand/studio-halftone-black.svg')}
.kinetic-heading h1 span{color:var(--studio-ink)}
.elastic-intro>span:last-child,.elastic-summary .eyebrow,.kinetic-statement p:not(.eyebrow){color:#625d55}
.elastic-summary{border-color:#24221f30}.elastic-summary>a{border-color:#24221f60}
.is-active .elastic-plus{color:#f5f2eb}
.kinetic-work-header,.kinetic-project-nav,.kinetic-end{background-color:var(--studio-paper);color:var(--studio-ink)}
.parallax-chapter{color:#fff}.project-context{background:#eae5db;color:var(--studio-ink);border-color:#24221f26}
.project-context>.eyebrow{color:#625d55}.project-context button{border-color:#24221f70}
.chapter-inset{background:var(--studio-paper);border-color:var(--studio-paper)}
#purpose-result,.concierge-end{background:#eae5db}
.electric-bottom a,.electric-marquee,.electric-end{background:var(--studio-paper)}
.arrival-doors{position:fixed;inset:0;z-index:1000;pointer-events:none;overflow:hidden;animation:arrival-clear 1ms 1700ms forwards}
.arrival-door{position:absolute;top:0;bottom:0;width:calc(50% + 1px);background:#eae5db;will-change:transform;animation-duration:1400ms;animation-delay:180ms;animation-timing-function:cubic-bezier(.76,0,.24,1);animation-fill-mode:both}
.arrival-left{left:0;border-right:1px solid #24221f18;animation-name:arrival-left}
.arrival-right{right:0;animation-name:arrival-right}
@keyframes arrival-left{from{transform:translateX(0)}to{transform:translateX(-101%)}}
@keyframes arrival-right{from{transform:translateX(0)}to{transform:translateX(101%)}}
@keyframes arrival-clear{to{visibility:hidden}}
@media(prefers-reduced-motion:reduce){.arrival-doors{display:none}.arrival-door{animation:none}}

.cinema .site-header,.electric .site-header{background:var(--studio-paper);color:var(--studio-ink)}
.cinema .site-header .brand-lockup,.electric .site-header .brand-lockup{filter:none}

/* A quiet, full-bleed branch chooser. */
body[data-direction="kinetic"]{display:flex;flex-direction:column}
body[data-direction="kinetic"] #main-content{order:0}
body[data-direction="kinetic"] .concept-bar{order:2;position:relative;top:auto}
body[data-direction="kinetic"] #design-notes{order:3}
body[data-direction="kinetic"] .concept-footer{order:4}
.kinetic{position:relative}
.branch-landing{position:relative;isolation:isolate;min-height:720px;height:100svh;overflow:hidden;background:#24221f}
.branch-backgrounds,.branch-backgrounds::after,.branch-background{position:absolute;inset:0;width:100%;height:100%}
.branch-backgrounds{z-index:-1}
.branch-background{object-fit:cover;opacity:0;transition:opacity 650ms ease;object-position:center}
.branch-background.is-active{opacity:1}
.branch-backgrounds::after{content:"";background:linear-gradient(90deg,rgba(0,0,0,.52),rgba(0,0,0,.12) 75%);pointer-events:none}
.background-classic{filter:grayscale(1)}
.background-families{object-position:65% center}
.landing-header{position:absolute;top:38px;left:7%;right:7%;display:flex;align-items:center}
.landing-header a{display:block;width:clamp(180px,18vw,245px)}
.landing-header img{width:100%;height:auto;filter:invert(1)}
.branch-choices{position:absolute;left:7%;top:50%;transform:translateY(-35%);display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.branch-pill{min-width:220px;padding:15px 32px;border-radius:999px;border:1px solid #f5f2eb99;background:#24221f45;color:#fff;font-size:20px;font-weight:400;text-align:center;backdrop-filter:blur(12px);transition:background 220ms,color 220ms,border-color 220ms}
.branch-pill.is-active,.branch-pill:hover{background:#f5f2eb;color:#24221f;border-color:#f5f2eb}
.branch-pill:focus-visible{outline:2px solid #f5f2eb;outline-offset:5px}
.kinetic .motion-toggle{position:absolute;top:calc(100svh + 24px);bottom:auto}
.kinetic.motion-paused .branch-background{transition:none}
@media(max-width:650px){.branch-landing{min-height:640px}.landing-header{top:28px;left:7%}.landing-header a{width:190px}.branch-choices{left:7%;gap:12px;transform:translateY(-30%)}.branch-pill{min-width:190px;padding:14px 28px;font-size:18px}.branch-backgrounds::after{background:linear-gradient(90deg,#0008,#0002)}.kinetic .motion-toggle{top:calc(max(100svh,640px) + 16px)}}
@media(max-height:650px) and (min-width:651px){.branch-landing{min-height:570px}.branch-choices{gap:9px;transform:translateY(-27%)}.branch-pill{padding:10px 28px}.landing-header{top:22px}.landing-header a{width:180px}}
@media(prefers-reduced-motion:reduce){.branch-background,.branch-pill{transition:none}}

.background-classic{object-position:center 74%}.background-families{object-position:center 65%}

/* One vertical gesture reveals the next full-screen face. */
.branch-backgrounds{overflow-y:auto;overflow-x:hidden;scroll-snap-type:y mandatory;scrollbar-width:none;scroll-behavior:smooth;z-index:0}
.branch-backgrounds::-webkit-scrollbar{display:none}
.branch-backgrounds::after{display:none}
.branch-face{position:relative;width:100%;height:100%;scroll-snap-align:start;scroll-snap-stop:always}
.branch-face .branch-background{opacity:1;transition:none}
.branch-landing::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#0008,#0002 75%)}
.landing-header,.branch-choices{z-index:2}
@media(prefers-reduced-motion:reduce){.branch-backgrounds{scroll-behavior:auto}}

/* One brand at a time, set beside the wordmark. */
.branch-backgrounds{overflow:hidden;scroll-snap-type:none}
.branch-face{position:absolute;inset:0}
.branch-face .branch-background{opacity:0;transition:opacity 420ms ease}
.branch-face .branch-background.is-active{opacity:1}
.brand-intro{position:absolute;z-index:2;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:36px 5%;color:#f5f2eb}
.brand-signature{display:flex;align-items:center;justify-content:center;gap:clamp(14px,2.8vw,48px);width:100%;max-width:1100px}
.intro-logo{display:block;width:46%;max-width:490px;flex-shrink:0}
.intro-logo img{width:100%;height:auto;filter:invert(1)}
.brand-colon{font-size:clamp(38px,7vw,92px);font-weight:400;line-height:1;transform:translateY(6%)}
.brand-reel{overflow:hidden;min-width:0;width:43%;font-size:clamp(38px,6.5vw,94px);line-height:1.22;letter-spacing:-.045em;font-weight:400;padding:8px 0;outline-offset:8px}
.brand-current{display:block;white-space:nowrap}
.brand-prompt{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:42px;font-size:16px;letter-spacing:.06em}
.brand-prompt button{width:44px;height:44px;border:1px solid #f5f2eb66;border-radius:50%;color:#f5f2eb;font-size:20px;background:#0002}
.brand-prompt button:hover{background:#f5f2eb;color:#24221f}
.brand-reel:focus-visible{outline:2px solid #f5f2eb}
@media(max-width:650px){.brand-signature{gap:10px}.intro-logo{width:44%}.brand-colon{font-size:30px}.brand-reel{font-size:clamp(26px,7.3vw,46px);width:46%;letter-spacing:-.055em}.brand-prompt{margin-top:32px;font-size:14px;gap:16px}.branch-landing{min-height:500px}}
@media(prefers-reduced-motion:reduce){.branch-face .branch-background{transition:none}}
.kinetic.motion-paused .branch-face .branch-background{transition:none}

[hidden]{display:none!important}
body[data-surface="selector"]{overflow:hidden}
body[data-surface="selector"] .branch-landing{height:100dvh;min-height:0}
.brand-enter{margin-top:24px;padding:10px 0;border-bottom:1px solid #f5f2eb88;font-size:16px;color:#f5f2eb}
.brand-page{background:var(--studio-paper);color:var(--studio-ink)}
.brand-page-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 6%;border-bottom:1px solid #24221f22}
.brand-page-header .brand-lockup{width:200px}
.brand-page-header>a:last-child{font-size:14px}
.brand-page-hero{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding:70px 6%;align-items:center;min-height:75svh}
.brand-page-hero h1{font-size:clamp(42px,5.2vw,84px);line-height:1.04;margin:25px 0}
.brand-page-hero p:not(.eyebrow){font-size:18px;max-width:540px;color:#625d55}
.brand-page-hero figure{margin:0}.brand-page-hero img{height:65svh;min-height:350px;max-height:760px;object-fit:cover}
.brand-page-hero figcaption{font-size:12px;color:#625d55;margin-top:10px}
.brand-action{margin-top:30px;padding:15px 0;border-bottom:1px solid currentColor;font-size:16px}
.brand-page-services{padding:65px 6%;display:grid;grid-template-columns:1fr 2fr;gap:40px;border-top:1px solid #24221f22}
.brand-page-services h2{font-size:clamp(28px,3vw,46px);padding:20px 0;border-bottom:1px solid #24221f22}
.brand-page-contact{padding:80px 6%;background:#eae5db}.brand-page-contact h2{font-size:clamp(36px,5vw,72px)}
.brand-page-footer{padding:35px 6%;display:flex;justify-content:space-between;gap:30px;font-size:14px}.brand-page-footer nav{display:flex;gap:20px;flex-wrap:wrap}.brand-page-footer [aria-current]{text-decoration:underline}
.brand-page-classic .brand-page-hero img{filter:grayscale(1)}.brand-page-business .brand-page-hero h1{text-transform:uppercase;font-weight:600}
.brand-page-legacy .brand-page-hero{padding-top:100px;padding-bottom:100px}
body[data-surface="studio"] .motion-toggle{position:fixed;top:auto;bottom:20px}
@media(max-width:650px){.brand-page-header{padding:20px 6%;gap:15px;flex-wrap:wrap}.brand-page-header .brand-lockup{width:155px}.brand-page-header>span{font-size:14px}.brand-page-hero{grid-template-columns:1fr;padding-top:38px;gap:36px}.brand-page-hero img{height:55svh;min-height:280px}.brand-page-services{grid-template-columns:1fr;gap:15px}.brand-page-footer{flex-direction:column}.brand-page-footer nav{gap:18px}.brand-enter{font-size:14px}}

.studio-archive-link{padding:24px 5%;font-size:14px;background:var(--studio-paper);color:var(--studio-ink)}

.contact-page{background:var(--studio-paper);color:var(--studio-ink)}.contact-intro{padding:70px 8% 65px}.contact-intro h1{font-size:clamp(64px,10vw,140px);line-height:.95;margin:30px 0}.contact-intro>p{font-size:18px}.contact-email{display:inline-block;font-size:clamp(20px,3vw,38px);border-bottom:1px solid;margin:30px 0}.contact-location{color:#625d55}.contact-compose{padding:65px 8%;border-top:1px solid #24221f22;display:grid;grid-template-columns:1fr 1fr;gap:9%}.contact-compose h2{font-size:36px;line-height:1.15;margin-bottom:20px}.contact-compose p{color:#625d55}.contact-compose label{display:flex;flex-direction:column;gap:9px;margin-bottom:22px;font-size:16px}.contact-compose input,.contact-compose select,.contact-compose textarea{font:inherit;width:100%;padding:14px;border:1px solid #24221f55;border-radius:0;background:#fffcf7;color:#24221f}.contact-compose textarea{resize:vertical}.contact-compose button{background:#24221f;color:#f5f2eb;padding:16px 22px;font-size:16px;width:100%}.contact-note{font-size:14px;margin-top:12px}@media(max-width:650px){.contact-intro{padding:45px 6%}.contact-compose{grid-template-columns:1fr;padding:40px 6%;gap:40px}}
