
:root{--ink:#121212;--ink-2:#181818;--paper:#f7f5ee;--gold:#f2cf36;--gold-hi:#ffe575;--gold-sheen:#ffe575;--dim:#bdbdb5;--dimmer:#94948b;--hair:#ffffff25;--gut:clamp(22px,5vw,80px);--font:CareerDisplay,Arial,sans-serif;--display:CareerDisplay,Arial,sans-serif;--font-display:CareerDisplay,Arial,sans-serif;--font-accent:ui-monospace,monospace;--mono:ui-monospace,monospace;--fs-label:11px;--fs-display:clamp(30px,4.5vw,66px);--fs-title:clamp(24px,3vw,42px);--ease:cubic-bezier(.22,1,.36,1)}
.home-addons{position:relative;font-family:var(--font);background:var(--ink)}
.home-addons :is(h2,h3,p){margin:0}
.home-addons img{display:block;max-width:100%}
.home-addons .tag{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.18em;margin-bottom:20px;color:var(--dim)}
.home-addons .tr-title em{color:#937600}
.home-addons .deck-bg{opacity:.18}.home-addons .deck{background:var(--ink)}
.home-addons .deck-gold,.home-addons .deck-amber{background:var(--gold);color:var(--ink)}
.home-addons .deck-indigo,.home-addons .deck-teal{background:#252525;color:var(--paper);border:1px solid #ffffff25}
.home-addons .deck-paper{background:var(--paper);color:var(--ink)}
.home-addons .deck-card .deck-note{color:inherit;opacity:.85}
.home-addons .deck-rule{background:currentColor;opacity:.35}
.home-addons .deck-head h2{font-size:clamp(26px,3vw,46px);line-height:1.06;font-weight:500;letter-spacing:-.04em}
.home-addons .deck-head h2 em{font-style:normal;color:var(--gold)}
.home-addons .bk-bg{opacity:.35}
.home-addons .bk-face--dark{background:var(--ink);color:var(--paper)}
.home-addons .bk-head h2 em{color:var(--gold)}
.home-addons .bk-face--paper,.home-addons .bk-face--plate{background:var(--paper);color:var(--ink)}
.home-addons .bk-mark{color:#a08212}
.home-addons .tk-header h2{font-weight:500;line-height:1.05;letter-spacing:-.04em}
.home-addons .tk-header h2 em{color:var(--gold)}
.home-addons .tk-icon{filter:grayscale(1)}
.home-addons .tk-icon:hover{filter:grayscale(0)}
@media(max-width:700px){.home-addons .tr-cap{font-size:12px}.home-addons .deck-head h2{font-size:26px}.home-addons .bk-head h2{font-size:27px}}
/* Home: editorial opening and a visible route into the work. */
.home1 header{padding:26px 4%;align-items:center}
.home1 header nav{display:none}
.home-links{display:flex;gap:32px;margin-left:auto;margin-right:48px;font-size:14px}
.home-links a{color:inherit;text-decoration:none;padding:12px 0;border-bottom:1px solid transparent;transition:border-color .2s}
.home-links a:hover{border-color:currentColor}
.home1 header .join{position:static;border:1px solid currentColor;border-radius:30px;padding:14px 22px;font-size:12px}
.home1 #intro .hero-atmosphere{background:linear-gradient(90deg,#121212 0%,#121212e6 40%,#12121200 72%)}
.home1 #intro .hero-eyebrow{top:19%;left:4%;font-size:11px;letter-spacing:.14em;color:#c6c6bc}
.home1 #intro h1{top:25%;left:4%;width:67%;font-size:clamp(66px,8.4vw,154px);line-height:.91;letter-spacing:-.055em;font-weight:500}
.home1 #intro h1 span+span{margin-top:.04em}
.home1 #intro h1 em{color:var(--gold)}
.home1 #intro p{top:51%;left:4%;width:37%;max-width:490px;font-size:clamp(14px,1.25vw,19px);line-height:1.5;color:#bdbdb5}
.home1 #intro .hero-cta{top:63%;left:4%;font-size:12px;padding:8px 10px 8px 24px;min-height:52px;transition:background .2s,box-shadow .2s}
.home1 #intro .hero-cta:hover{background:#ffe575;box-shadow:0 0 30px #f2cf3625}
.home1 #intro .hero-tags{display:none}
.hero-work{position:absolute;bottom:5%;left:4%;width:62%;display:grid;grid-template-columns:1fr 1fr .75fr;gap:18px;pointer-events:auto}
.work-preview{display:grid;grid-template-columns:42% 1fr;align-items:center;gap:14px;padding:10px;background:#1d1d1d;border:1px solid #ffffff28;color:var(--paper);text-decoration:none;transition:transform .3s,border-color .3s;min-width:0}
.work-preview img{width:100%;height:83px;object-fit:cover}
.work-preview span{font-size:15px;line-height:1.5}.work-preview small{display:block;color:#bdbdb5;font-size:8px;letter-spacing:.08em;margin-bottom:8px}.work-preview b{font-weight:400;color:var(--gold)}
.work-preview:hover{transform:translateY(-6px);border-color:var(--gold)}
.hero-work-note{font-size:10px;letter-spacing:.08em;line-height:1.7;align-self:center;padding-left:10px;color:#d8d8ce}.hero-work-note a{display:block;color:var(--gold);margin-top:10px;text-decoration:none;letter-spacing:0;font-size:11px}
.spark-caption{position:absolute;right:6%;bottom:17%;font-size:10px;line-height:1.7;letter-spacing:.1em;color:#e6e6dc}.spark-caption span{color:#9e9e95}.spark-caption i{display:inline-block;width:6px;height:6px;background:var(--gold);border-radius:50%;margin-right:8px;box-shadow:0 0 12px var(--gold)}
.home1 #skip{left:auto;right:4%;bottom:5%;transform:none;width:150px}
.home1 .location{display:none}
.home1 a:focus-visible,.home1 button:focus-visible{outline:2px solid var(--gold);outline-offset:6px}
@media(min-width:701px) and (max-height:740px){.home1 #intro h1{font-size:7.5vw;top:24%}.home1 #intro p{top:51%}.hero-work{bottom:4%}.work-preview img{height:62px}}
@media(max-width:1000px){.hero-work{width:70%;grid-template-columns:1fr 1fr}.hero-work-note{display:none}.home-links{gap:20px;margin-right:24px}}
@media(max-width:700px){
.home1 header{padding:20px 6%}.home1 header .brand{font-size:24px}.home-links{display:none}.home1 header .join{padding:11px 16px;margin-left:auto;font-size:10px}
.home1 #intro .hero-eyebrow{top:16%;left:6%;font-size:8px;letter-spacing:.08em}
.home1 #intro h1{top:22%;left:6%;width:90%;font-size:13vw;line-height:.96}
.home1 #intro p{top:43%;left:6%;width:53%;font-size:13px;line-height:1.5}
.home1 #intro .hero-cta{top:64%;left:6%;font-size:10px;min-height:45px}
.home1 #intro .hero-cta b{width:32px;height:32px}
.hero-work{left:6%;width:88%;bottom:7%;gap:10px}.work-preview{display:block;padding:7px}.work-preview img{height:65px}.work-preview span{display:block;font-size:12px;padding-top:6px}.work-preview small{display:none}
.spark-caption{right:6%;bottom:35%;font-size:7px;letter-spacing:0}.home1 #skip{display:none}
.home1 #intro .hero-atmosphere{background:linear-gradient(180deg,#121212c9,transparent 70%)}
}
@media(prefers-reduced-motion:reduce){.work-preview,.home-links a{transition:none}}
.home1 header .join{white-space:nowrap;width:auto;max-width:none;flex-shrink:0}
@media(max-width:700px){.home1 header .join{min-width:96px;text-align:center}.home1 #intro p{font-size:13px;letter-spacing:0}.hero-work{gap:12px}}
/* Rotating compositions share a camera and keep all content inside the frame. */
.home1 .perspective-artboard{perspective:1600px}
.home1 .collage-pieces{inset:22%;gap:15%;transform-origin:50% 50%}
.home1 .collage-pieces img{transform-origin:50% 50%;border-radius:0;box-shadow:0 10px 24px #00000018}
.home1 .perspective-triptych{box-sizing:border-box;top:21%;left:10%;width:80%;height:64%;padding:2.5%;display:grid;grid-template-columns:1fr 1.08fr 1fr;grid-template-rows:minmax(0,1fr);gap:3%;overflow:hidden;transform-origin:50% 50%;backface-visibility:hidden;box-shadow:0 24px 80px #0005;will-change:transform}
.home1 .perspective-triptych>img{display:block;box-sizing:border-box;width:100%;height:100%;min-height:0;min-width:0;object-fit:cover}
.home1 .triptych-type{display:flex;min-height:0;flex-direction:column;justify-content:space-between;color:#121212;padding:1% 0}
.home1 .triptych-type h2{font-size:clamp(24px,3.1cqw,60px);line-height:1.02;letter-spacing:-.04em}
.home1 .triptych-type small{font-size:clamp(10px,.75cqw,14px);line-height:1.4}
@media(max-width:700px){.home1 .perspective-triptych{left:5%;width:90%;top:25%;height:51%;padding:4%;gap:4%;grid-template-columns:1fr 1fr;grid-template-rows:minmax(0,1fr) minmax(0,1fr)}.home1 .triptych-type{grid-column:2;grid-row:1 / 3}.home1 .perspective-triptych>img:last-child{grid-column:1;grid-row:2}.home1 .triptych-type h2{font-size:6cqw}.home1 .triptych-type small{font-size:10px}}
/* A warm filament closes the story. */
.home1 #join{isolation:isolate;overflow:hidden;padding:105px 5% 30px;background:#10100f;min-height:100svh;color:#f7f5ee}
.footer-topline,.footer-bottom{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff24;padding-top:22px;font-size:10px;letter-spacing:.1em}
.footer-composition{position:relative;z-index:1;display:grid;grid-template-columns:1.5fr 1fr;align-items:center;min-height:610px}
.footer-copy{position:relative;z-index:2}.home1 #join h2{margin:30px 0;font-size:clamp(60px,7.6vw,145px);line-height:.94;letter-spacing:-.055em}.home1 #join p{font-size:clamp(14px,1.2vw,19px);line-height:1.65;color:#c1bfb5;margin:0 0 30px}
.footer-copy .eyebrow{font-size:10px;letter-spacing:.15em;color:#b9b6a8}
.footer-contact{display:inline-flex;align-items:center;gap:40px;padding:9px 9px 9px 24px;border-radius:40px;background:#f2cf36;color:#121212;font-size:12px;transition:box-shadow .3s,background .3s}.footer-contact span{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#171712;color:#f2cf36;font-size:24px}.footer-contact:hover{box-shadow:0 0 36px #f2cf3635;background:#ffe578}
.footer-email{display:block;width:fit-content;font-size:13px;margin-top:22px;color:#ccc8b9;border-bottom:1px solid #ffffff30;padding-bottom:5px}
.footer-bulb-scene{position:relative;height:610px;display:flex;align-items:center;justify-content:center;flex-direction:column;perspective:900px}.footer-bulb{width:min(95%,350px);height:490px;overflow:visible;transform:rotate(9deg);filter:drop-shadow(10px 24px 12px #0007)}
.footer-light{position:absolute;width:850px;height:850px;right:-170px;top:-10px;border-radius:50%;background:radial-gradient(ellipse,#f6cf5335 0%,#eabc2617 28%,transparent 67%);pointer-events:none;transition:opacity .8s;z-index:0}
.footer-grain{position:absolute;inset:0;opacity:.2;z-index:0;pointer-events:none;background-image:repeating-linear-gradient(115deg,transparent 0 69px,#ebd88213 70px,transparent 71px),radial-gradient(#edd88738 .6px,transparent .9px);background-size:auto,5px 5px;mask-image:linear-gradient(90deg,transparent,#000)}
.footer-orbit{position:absolute;left:0;top:29%;width:100%;height:180px;border:1px solid #f2cf362c;border-radius:50%;transform:rotate(-28deg);pointer-events:none}.footer-orbit:before{content:'';position:absolute;top:17%;left:12%;width:5px;height:5px;background:#f2cf36;border-radius:50%;box-shadow:0 0 14px #ffd951}
.footer-switch{display:flex;gap:12px;align-items:center;min-height:44px;padding:10px 18px;border:1px solid #ead17466;border-radius:30px;font-size:10px;letter-spacing:.1em;margin-top:8px;background:#181810}.footer-switch i{width:7px;height:7px;background:#f2cf36;border-radius:50%;box-shadow:0 0 12px #f2cf36}.footer-switch b{font-size:17px;font-weight:400}.footer-bulb-note{font-size:8px;letter-spacing:.12em;color:#bdb6a0;margin-top:18px}
.footer-filament{transition:opacity .7s,stroke .7s}.light-off .footer-filament{opacity:.12}.light-off .footer-light{opacity:.08}.light-off .footer-switch i{background:#777;box-shadow:none}
.footer-bottom{gap:25px;flex-wrap:wrap;letter-spacing:0;padding-top:26px}.footer-wordmark{font-size:clamp(40px,6vw,85px);letter-spacing:-.07em;line-height:1}.footer-wordmark span{font-size:14px;vertical-align:top;letter-spacing:0}.footer-bottom>div{display:flex;gap:25px;font-size:12px}.home1 #replay{margin:0;font-size:10px}.footer-bottom small{width:100%;font-size:10px;color:#949187;margin-top:10px}
@media(max-width:700px){.home1 #join{padding:100px 6% 25px}.footer-topline{font-size:8px;gap:30px;line-height:1.5}.footer-topline span:last-child{text-align:right}.footer-composition{grid-template-columns:1fr;min-height:0}.footer-copy{padding-top:50px}.home1 #join h2{font-size:13vw;margin:22px 0}.footer-copy .eyebrow{font-size:8px}.home1 #join p{font-size:14px}.footer-bulb-scene{height:440px;margin-top:10px}.footer-bulb{height:340px;width:240px}.footer-orbit{left:10%;width:80%;top:29%;height:120px}.footer-light{width:650px;height:650px;right:-150px;top:380px}.footer-bottom>div{gap:20px}.footer-bottom{gap:20px}.home1 #replay{width:100%;text-align:left}.footer-contact{font-size:10px}}
/* A complete site directory beneath the contact invitation. */
.site-footer{position:relative;z-index:2;padding-top:50px;border-top:1px solid #e2d28b45;margin-top:30px}
.footer-directory{display:grid;grid-template-columns:1.25fr .7fr 1.2fr 1.15fr 1.15fr;gap:32px;padding-bottom:55px}
.footer-intro .footer-wordmark{font-size:clamp(35px,3.8vw,64px);display:inline-block}.home1 #join .footer-intro p{font-size:14px;color:#c4c0b4;line-height:1.6;margin:20px 0}
.footer-studio-status{font-size:8px;letter-spacing:.08em;color:#c3b884;line-height:1.6;display:block}.footer-studio-status i{display:inline-block;width:5px;height:5px;background:#f2cf36;border-radius:50%;margin-right:6px;box-shadow:0 0 10px #f2cf36}
.footer-column{display:flex;align-items:flex-start;flex-direction:column;gap:14px;min-width:0}.footer-column h3{font-size:10px;font-weight:400;letter-spacing:.15em;color:#ead360;margin:4px 0 12px}.footer-column a{font-size:13px;line-height:1.5;color:#e4e1d7;transition:color .2s,transform .2s;overflow-wrap:anywhere}.footer-column a:hover{color:#f2cf36;transform:translateX(3px)}.footer-column address{font-size:13px;line-height:1.8;font-style:normal;color:#c4c0b4}.footer-column>span{font-size:11px;color:#9f9b90}.footer-column .footer-directions{border-bottom:1px solid #ead36070;padding-bottom:5px;margin-top:4px}
.footer-legal{border-top:1px solid #ffffff20;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0 0;color:#a7a396}.footer-legal small{font-size:11px}.footer-legal>span{font-size:8px;letter-spacing:.12em}.home1 .footer-legal #replay{color:#e4e1d7;margin:0;width:auto}
@media(max-width:1100px){.footer-directory{grid-template-columns:1fr 1fr 1fr;gap:35px}.footer-intro{grid-row:span 2}}
@media(max-width:600px){.site-footer{padding-top:35px;margin-top:10px}.footer-directory{grid-template-columns:1fr 1fr;gap:35px 22px;padding-bottom:35px}.footer-intro{grid-column:1/-1;grid-row:auto}.footer-column a{font-size:13px;min-height:30px}.footer-column{gap:10px}.footer-column address{font-size:12px}.footer-legal{flex-wrap:wrap;gap:8px}.footer-legal>span{width:100%;order:3}.home1 .footer-legal #replay{font-size:9px}.footer-legal small{font-size:9px}}
@media(prefers-reduced-motion:reduce){.footer-column a{transition:none}}
/* Shared About navigation, isolated from the original story header rules. */
.home1 header.sn{padding:0 clamp(1rem,3vw,2.5rem);mix-blend-mode:normal;pointer-events:auto;justify-content:flex-start}
.home1 header.sn nav{position:static;left:auto;width:auto;font-weight:inherit}
.home1 header.sn .sn-links{display:flex}
.home1 header.sn.sn-ready .sn-links{display:none}
.home1 .sn-panel nav{position:static;left:auto;width:auto;font-size:inherit;font-weight:inherit}
.home1 .sn-mark img{border-radius:50%;object-fit:contain;background:white}
.brand-sparks{position:absolute;inset:0;z-index:8;overflow:hidden;pointer-events:none}
.brand-spark{position:absolute;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#121212b8;box-shadow:0 0 18px currentColor;will-change:transform,opacity}
.brand-spark svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
html.sn-js .home1 header.sn .sn-links{display:none}
/* Logo marks should read as coloured symbols, not dark bubbles. */
.brand-spark{width:36px;height:36px;background:transparent;border-radius:0;box-shadow:none;filter:drop-shadow(0 2px 3px #0003)}
.brand-spark svg{width:30px;height:30px;stroke-width:2.5}
.brand-spark:nth-child(5n+1) svg{fill:currentColor;stroke-width:1.2}
.brand-sparks{z-index:15}
/* Flow layout keeps the supporting copy below the headline at every aspect ratio. */
@media(min-width:701px){
.home1 #intro .hero-content{inset:20% auto auto 4%;width:65%;height:auto;display:flex;flex-direction:column;align-items:flex-start}
.home1 #intro .hero-eyebrow,.home1 #intro h1,.home1 #intro p,.home1 #intro .hero-cta{position:relative;inset:auto;width:auto;max-width:none;transform-origin:left center}
.home1 #intro .hero-eyebrow{margin:0 0 28px}
.home1 #intro h1{font-size:min(8vw,14vh);margin:0;line-height:.94}
.home1 #intro p{font-size:clamp(14px,1.2vw,19px);max-width:500px;margin:24px 0 22px;line-height:1.55}
.home1 #intro .hero-cta{margin:0}
}
@media(max-width:700px){.brand-spark{width:28px;height:28px}.brand-spark svg{width:25px;height:25px}}
.brand-spark:nth-child(n) svg{fill:none;stroke-width:2.5}
/* A restrained trail, with consistent line weight and no sticker-like glow. */
.brand-spark{width:24px;height:24px;filter:none}
.brand-spark:nth-child(n) svg{width:21px;height:21px;fill:none;stroke-width:1.8}
@media(max-width:700px){.brand-spark{width:22px;height:22px}.brand-spark:nth-child(n) svg{width:19px;height:19px}}
/* One continuous orbital path connects the brand symbols to the light source. */
.brand-orbit-layer{transition:opacity .35s}
.brand-orbit-layer .brand-spark{left:0;top:0;width:24px;height:24px;filter:drop-shadow(0 1px 2px #0003)}
.brand-orbit-ring{position:absolute;border:1px solid #b9a55745;border-radius:50%;pointer-events:none}
.home1 .footer-orbit{display:none}
.brand-orbit-layer .brand-spark:nth-child(n) svg{width:23px;height:23px;stroke-width:1.8}
@media(max-width:700px){.brand-orbit-layer .brand-spark:nth-child(n) svg{width:19px;height:19px}}
/* Perspective orbit: a quiet rear edge and a softly lit foreground arc. */
.brand-orbit-ring{border-width:1px;border-style:solid;border-top-color:#efe4bb0b;border-left-color:#efe4bb1a;border-right-color:#ead38b3d;border-bottom-color:#ead38b70;box-shadow:0 3px 12px -9px #ffe79c70}
.brand-orbit-layer .brand-spark{filter:none}
.brand-orbit-layer .brand-spark:nth-child(n) svg{width:21px;height:21px;stroke-width:1.65}
@media(max-width:700px){.brand-orbit-layer .brand-spark:nth-child(n) svg{width:18px;height:18px}}
.home1 .perspective-poster:after{content:'OUR PEOPLE. OUR STUDIO. OUR DIGITAL WORK.'}
