@import url('https://fonts.googleapis.com/css2?family=Golos+Text:wght@400;500;600;700&display=swap');
:root{--bg:#EAE5DA;--panel:#E1DBCF;--line:#C9C0B3;--white:#211D1B;--orange:#792C38;--muted:#625A53;--paper:#F5F0E7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--white);font-family:'Golos Text',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #ff9677;outline-offset:6px}header{position:absolute;z-index:3;top:0;left:0;width:100%;padding:28px 7.7%;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{font-size:29px;font-weight:600;letter-spacing:-1.2px}.logo span{font-size:34px}nav{display:flex;gap:32px;text-transform:uppercase;font-size:14px}nav a:hover{color:#ff9478}.button{display:inline-flex;align-items:center;border:0;background:none;padding:0;color:#fff}.button i,.button span{background:var(--orange);height:40px;display:flex;align-items:center;justify-content:center;font-style:normal;border-radius:50px}.button i{width:40px;font-size:22px}.button span{padding:0 32px}.button:hover i{transform:rotate(45deg)}.button i{transition:transform .25s}.light i,.light span{background:var(--white);color:#111}.menu{display:none}.hero{position:relative;overflow:hidden;min-height:830px;height:100svh;max-height:1100px;padding:170px 7.7% 30px;background:#030303;display:flex;flex-direction:column;justify-content:space-between}.rays{position:absolute;inset:-25% -10% 0;pointer-events:none;background:linear-gradient(145deg,#f27f32 3%,#f34227 20%,#000 25%,#000 29%,#ed3626 34%,#000 43%,#000 48%,#a42618 51%,#000 59%);filter:blur(20px);opacity:.85;animation:drift 16s ease-in-out infinite alternate}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#030303 3%,transparent 85%);pointer-events:none}.hero>*:not(.rays){z-index:1}.hero-top{display:flex;justify-content:space-between;gap:60px}.intro{max-width:480px}.intro>p{font-size:32px;line-height:1.16;letter-spacing:-1.1px;margin:0 0 36px;padding-bottom:40px;border-bottom:1px solid #ffffff24}.intro small{display:block;font-size:12px;margin-top:20px;color:#c3c1bf}.spotlight{width:360px;align-self:flex-start}.spotlight>a{display:block;padding:7px;background:#ffffff08;border:1px solid #ffffff12;border-radius:4px}.spotlight .art{height:205px;min-height:0}.spotlight .art b{font-size:52px}.spotlight .art em{font-size:17px}.spotlight p{font-size:16px;margin:10px 5px 5px;display:flex;justify-content:space-between}.arrows{text-align:right;padding-top:10px}.arrows button{background:none;border:0;color:#bbb;font-size:30px;padding:0 10px}.hero h1{font-size:clamp(70px,13.3vw,240px);letter-spacing:-.075em;line-height:.9;white-space:nowrap;margin:auto 0 28px;font-weight:600}.disciplines{display:flex;align-items:center;justify-content:space-between;font-size:12px;text-transform:uppercase;color:#ccc}.disciplines b{font-size:10px;font-weight:400}.ticker{padding:35px 7.7%;background:#121316;display:flex;justify-content:space-around;gap:20px;font-size:26px;font-weight:600;font-style:italic;border-bottom:1px solid var(--line)}.section{padding:110px 7.7%;border-bottom:1px solid var(--line)}.eyebrow{font-size:11px;letter-spacing:.05em;color:var(--orange);margin:0;text-transform:uppercase}h2{font-size:clamp(36px,4.7vw,70px);line-height:1.04;letter-spacing:-.055em;font-weight:500;margin:0}h3{font-weight:500;letter-spacing:-.035em}.about{display:grid;grid-template-columns:1fr 1.2fr;gap:70px 80px}.about h2{font-size:clamp(32px,3.6vw,52px)}.about-copy{grid-column:1;grid-row:2;max-width:300px}.about-copy>p,.process p{font-size:14px;line-height:1.55;color:var(--muted);margin:0 0 26px}.section-head{display:grid;grid-template-columns:1fr 1.2fr 1fr;align-items:start;gap:35px;margin-bottom:65px}.muted{color:var(--muted);font-size:14px;line-height:1.6}.section-head>.muted{margin:8px 0 0;align-self:end}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px 24px}.project{border:0;padding:0;background:none;text-align:left}.art{position:relative;isolation:isolate;overflow:hidden;min-height:390px;padding:30px;display:flex;flex-direction:column;justify-content:center;transition:filter .3s}.project:hover .art{filter:brightness(1.1)}.art b{font-size:clamp(42px,6vw,90px);line-height:.86;letter-spacing:-.065em;font-weight:600;z-index:1}.art em{font-size:20px;font-style:normal;line-height:1.1;margin-top:28px;z-index:1}.sample{position:absolute;top:20px;left:24px;font-size:9px;letter-spacing:.08em;text-transform:uppercase;z-index:2}.art-one{background:var(--orange);color:#151515}.art-one:after{content:'✳';position:absolute;font-size:390px;right:-45px;bottom:-100px;color:#111;opacity:.14;transform:rotate(12deg)}.art-two{background:#d6d4cb;color:#222}.art-two b{font-weight:400;font-family:Georgia,serif;letter-spacing:-.06em}.orb{position:absolute;width:240px;height:240px;border-radius:50%;right:-50px;bottom:-50px;background:repeating-radial-gradient(circle,#242c1b 0 2px,#c4c6b2 3px 7px)}.art-three{background:#afbbc2;color:#141c20}.art-three b{font-family:Georgia,serif;font-style:italic;font-weight:400}.art-three:after{content:'';position:absolute;width:160px;height:350px;background:#e9ece8;right:-40px;top:90px;transform:rotate(28deg);box-shadow:-24px 14px 50px #0003;z-index:-1}.art-four{background:#b4bd8e;color:#26301f}.art-four b{font-size:clamp(38px,5.1vw,76px)}.art-four:after{content:'';position:absolute;width:300px;height:300px;border:50px solid #26301f;right:-100px;bottom:-200px;border-radius:50%}.project-meta{display:flex;justify-content:space-between;align-items:center;padding-top:20px}.project-meta small{font-size:11px;color:var(--muted)}.project-meta h3{margin:7px 0 0;font-size:22px}.project-meta>span{font-size:30px}.services{display:grid;grid-template-columns:1fr 2.2fr;gap:30px}details{border-bottom:1px solid var(--line);padding:23px 0}details:first-child{padding-top:0}summary{list-style:none;display:flex;gap:22px;align-items:center;cursor:pointer;font-size:clamp(25px,3.8vw,55px);letter-spacing:-.05em}summary::-webkit-details-marker{display:none}summary small{font-size:11px;color:var(--orange);letter-spacing:0}summary>span{font-size:27px;margin-left:auto}details[open] summary>span{transform:rotate(45deg)}details p{max-width:480px;color:var(--muted);font-size:14px;line-height:1.6;margin:22px 40px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.process-grid article{padding:36px;border-right:1px solid var(--line);background:var(--panel)}.process-grid article:last-child{border:0}.process-icon{display:block;color:var(--orange);font-size:64px;margin:0 0 50px}.process-grid small{color:var(--muted);font-size:10px}.process-grid h3{font-size:26px;margin:18px 0}.process-grid p{margin:0}.contact{position:relative;background:radial-gradient(ellipse at top left,#dc4225 0,#641e13 35%,#080808 75%);overflow:hidden}.contact .eyebrow{color:#ffb69b}.contact h2{font-size:clamp(60px,9vw,140px);margin:55px 0}.contact-bottom{display:flex;justify-content:space-between;align-items:end;gap:30px}.contact-bottom p{font-size:17px;line-height:1.4;margin:0}.contact-status{max-width:600px;font-size:14px;line-height:1.5;color:#ddd}footer{padding:65px 7.7% 30px;display:grid;grid-template-columns:1fr 1fr;gap:20px}footer p{font-size:14px;color:var(--muted)}footer>div{display:flex;gap:28px;font-size:13px}footer small{font-size:11px;color:var(--muted);text-align:right}dialog{max-width:650px;width:calc(100% - 40px);padding:55px;background:#151618;border:1px solid #444;color:var(--white)}dialog::backdrop{background:#000b;backdrop-filter:blur(8px)}dialog h2{margin:28px 0}dialog p{line-height:1.6}dialog .button{margin-top:20px}.close{position:absolute;top:12px;right:16px;background:none;border:0;font-size:30px}.skip{position:absolute;left:20px;top:-100px;z-index:10;background:#fff;color:#000;padding:10px}.skip:focus{top:10px}@keyframes drift{to{transform:translate(7%,3%) rotate(4deg)}}@media(min-width:1700px){.hero{padding-top:210px}.hero h1{font-size:13.3vw}}@media(max-width:900px){header{padding:24px 5%}.hero{padding:150px 5% 30px;min-height:740px}.intro>p{font-size:26px}.spotlight{width:300px}.hero-top{gap:35px}nav{gap:18px;font-size:12px}.desktop-contact{display:none}.section{padding:80px 5%}.art{min-height:310px}.section-head{grid-template-columns:1fr 1.4fr}.section-head>.muted{grid-column:2}.process-grid article{padding:25px}.process-grid h3{font-size:22px}footer{padding:55px 5% 25px}}@media(max-width:600px){header .logo{font-size:26px}.menu{display:block;border:0;background:#fff;color:#111;width:34px;height:34px;font-size:28px;line-height:1}.menu[aria-expanded=true]{transform:rotate(45deg)}nav{display:none;position:absolute;top:80px;left:5%;right:5%;padding:28px;background:#181818;flex-direction:column;font-size:22px;gap:22px}nav.open{display:flex}.hero{height:90svh;min-height:640px;max-height:900px;padding-top:145px}.intro>p{font-size:24px;max-width:350px;padding-bottom:30px;margin-bottom:25px}.intro small{font-size:10px}.spotlight{display:none}.hero h1{font-size:14vw;letter-spacing:-.075em;margin-bottom:25px}.disciplines{font-size:9px}.disciplines span:last-child,.disciplines b:nth-last-child(2){display:none}.ticker{padding:28px 5%;font-size:17px;gap:10px}.ticker span:last-child{display:none}.section{padding:65px 5%}.about{grid-template-columns:1fr;gap:30px}.about h2{font-size:36px}.about-copy{grid-column:auto;grid-row:auto;max-width:100%}.about-copy>p{max-width:330px}.section-head{grid-template-columns:1fr;gap:25px;margin-bottom:35px}.section-head>.muted{grid-column:auto}.project-grid{grid-template-columns:1fr;gap:38px}.art{min-height:370px}.art b{font-size:72px}.art-four b{font-size:58px}.services{grid-template-columns:1fr;gap:35px}summary{font-size:32px;gap:16px}details p{margin-left:35px}.process-grid{grid-template-columns:1fr}.process-grid article{border-right:0;border-bottom:1px solid var(--line);padding:30px}.process-icon{margin-bottom:25px;font-size:55px}.contact h2{font-size:17vw}.contact-bottom{align-items:start;flex-direction:column;gap:25px}footer{grid-template-columns:1fr;gap:15px}footer small{text-align:left;margin-top:25px}footer>div{gap:20px}dialog{padding:40px 25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:after{animation:none!important;transition:none!important}}

/* Selected work: preserve complete compositions without cropping. */
.project-artwork{background:#18191b;overflow:hidden;display:flex;align-items:center;justify-content:center;aspect-ratio:4/5;border:1px solid #ffffff0d}
.project-artwork img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .45s ease}
.project:hover .project-artwork img{transform:scale(1.025)}
.spotlight .project-artwork{height:230px;aspect-ratio:auto}
.project-open{overflow:hidden}
dialog{max-width:1080px;max-height:90svh;overflow:auto;overscroll-behavior:contain}
dialog .close{position:sticky;display:block;margin-left:auto;top:0;right:0;width:44px;height:44px;background:transparent;z-index:2}
dialog h2{font-size:clamp(30px,6vw,65px);overflow-wrap:anywhere}
.project-gallery{display:grid;gap:30px;margin-top:36px}
.project-gallery figure{margin:0}
.project-gallery img{display:block;width:100%;height:auto;background:#202123}
.project-gallery figcaption{margin-top:10px;color:var(--muted);font-size:11px;letter-spacing:.08em}
@media(max-width:600px){dialog{padding:20px}.project-artwork{aspect-ratio:4/5}.project-meta h3{font-size:21px}}

/* Oxblood Editorial */
body{color-scheme:light}
::selection{background:#792C38;color:#F5F0E7}
button:focus-visible,a:focus-visible,summary:focus-visible{outline-color:#792C38}
nav a:hover,footer a:hover{color:#792C38}
.button{color:#F5F0E7}
.light i,.light span{background:#792C38;color:#F5F0E7}
.hero{background:#EAE5DA}
.rays{background:radial-gradient(ellipse at 18% 10%,#792C3814,transparent 55%),linear-gradient(125deg,#d9cfbf66,transparent 60%);filter:none;opacity:1;animation:none}
.hero:after{background:linear-gradient(0deg,#EAE5DA,transparent 70%)}
.hero h1{color:#792C38}
.intro>p{border-color:#C9C0B3}
.intro small,.disciplines{color:#625A53}
.spotlight>a{background:#F5F0E7;border-color:#C9C0B3}
.arrows button{color:#792C38}
.ticker{background:#792C38;color:#F5F0E7;border-color:#792C38}
.project-artwork{background:#DDD5C8;border-color:#C9C0B3}
.project-meta>span{color:#792C38}
.project-meta h3{color:#211D1B}
.project-gallery img{background:#DDD5C8}
dialog{background:#F5F0E7;border-color:#C9C0B3;color:#211D1B}
dialog::backdrop{background:#211D1B99}
dialog .close{background:transparent;color:#792C38}
.contact{background:#792C38;color:#F5F0E7}
.contact .eyebrow,.contact-status{color:#EAE5DA}
.contact .light i,.contact .light span{background:#F5F0E7;color:#792C38}
.contact button:focus-visible{outline-color:#F5F0E7}
.skip{background:#792C38;color:#F5F0E7}
@media(max-width:600px){nav{background:#F5F0E7;border:1px solid #C9C0B3}.menu{background:#792C38;color:#F5F0E7}}

/* Flowing editorial hero backdrop. */
.hero .rays{inset:-35%;background:radial-gradient(ellipse at 22% 32%,#792C38A6 0%,#792C3840 24%,transparent 49%),radial-gradient(ellipse at 77% 30%,#A75E656B 0%,transparent 46%),linear-gradient(125deg,#EAE5DA 20%,#CFABA5 50%,#EAE5DA 80%);filter:blur(45px);opacity:.9;transform-origin:center;animation:editorial-flow 22s ease-in-out infinite alternate;will-change:transform}
.hero:after{background:linear-gradient(0deg,#EAE5DA 0%,#EAE5DAE6 16%,#EAE5DA70 48%,#EAE5DA33 100%)}
@keyframes editorial-flow{0%{transform:translate(-5%,-3%) rotate(-8deg) scale(1)}50%{transform:translate(4%,5%) rotate(3deg) scale(1.07)}100%{transform:translate(7%,-2%) rotate(12deg) scale(1.12)}}
@media(prefers-reduced-motion:reduce){.hero .rays{animation:none;will-change:auto}}

/* Reference hero: drifting diagonal light bands on black. */
header{color:#F5F0E7}
header nav a:hover{color:#E9ACAA}
.hero{background:#050303;color:#F5F0E7}
.hero .rays{inset:-25% -15%;background:linear-gradient(148deg,#D8DBDF 3%,#92989F 17%,#050505 24%,#050505 28%,#D8DBDF 34%,#050505 43%,#050505 48%,#92989F 53%,#050505 63%);filter:blur(25px);opacity:.95;animation:diagonal-light-flow 16s ease-in-out infinite alternate;will-change:transform}
.hero:after{background:linear-gradient(0deg,#050303 2%,#050303E6 16%,#05030355 58%,transparent 100%)}
.hero h1{color:#F5F0E7}
.intro>p{border-color:#F5F0E733}
.intro small,.disciplines{color:#D7CBC8}
.hero .button i,.hero .button span{background:#792C38;color:#F5F0E7}
.spotlight>a{background:#211D1B44;border-color:#F5F0E726}
.spotlight .project-artwork{background:#211D1B;border-color:#F5F0E71A}
.arrows button{color:#F5F0E7}
header a:focus-visible,.hero a:focus-visible,.hero button:focus-visible{outline-color:#F5F0E7}
@keyframes diagonal-light-flow{0%{transform:translate(-7%,-5%) rotate(-5deg) scale(1.04)}50%{transform:translate(2%,4%) rotate(1deg) scale(1.1)}100%{transform:translate(9%,-1%) rotate(5deg) scale(1.04)}}
@media(max-width:600px){header nav{color:#211D1B}header nav a:hover{color:#792C38}}
@media(prefers-reduced-motion:reduce){.hero .rays{animation:none;will-change:auto}}

/* Neutral silver hero lighting. */
.hero{background:#050505}
.hero:after{background:linear-gradient(0deg,#050505 2%,#050505E6 16%,#05050555 58%,transparent 100%)}

.logo-strip{background:#792C38;border-bottom:1px solid #792C38;overflow:hidden;padding:20px 0;contain:paint}
.logo-track{display:flex;width:max-content;will-change:transform}
.logo-set{display:flex;align-items:center;flex-shrink:0}
.logo-item{width:clamp(180px,25vw,360px);height:110px;display:flex;align-items:center;justify-content:center}
.logo-item img{display:block;width:190px;height:110px;object-fit:contain}
@media(max-width:600px){.logo-item{width:180px;height:90px}.logo-item img{width:160px;height:90px}}
@media(prefers-reduced-motion:reduce){.logo-track{transform:none!important;will-change:auto}}

/* Black and white review direction. Artwork retains its original colours. */
:root{--bg:#FFFFFF;--panel:#F2F2F2;--line:#D4D4D4;--white:#111111;--orange:#111111;--muted:#606060;--paper:#FFFFFF}
body{background:#FFFFFF;color:#111111}
::selection{background:#111111;color:#FFFFFF}
a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:#111111}
nav a:hover,footer a:hover{color:#606060}
.button,.light i,.light span{color:#FFFFFF}
.button i,.button span,.light i,.light span{background:#111111;color:#FFFFFF}
header{color:#FFFFFF}
header nav a:hover{color:#D8DBDF}
header a:focus-visible,.hero a:focus-visible,.hero button:focus-visible{outline-color:#FFFFFF}
.hero{background:#050505;color:#FFFFFF}
.hero h1{color:#FFFFFF}
.hero .rays{background:linear-gradient(148deg,#D8DBDF 3%,#92989F 17%,#050505 24%,#050505 28%,#D8DBDF 34%,#050505 43%,#050505 48%,#92989F 53%,#050505 63%)}
.intro>p{border-color:#FFFFFF33}
.intro small,.disciplines{color:#CCCCCC}
.hero .button i,.hero .button span{background:#FFFFFF;color:#111111}
.spotlight>a{background:#11111155;border-color:#FFFFFF26}
.spotlight .project-artwork{background:#181818;border-color:#FFFFFF1A}
.arrows button{color:#FFFFFF}
.logo-strip{background:#111111;border-color:#333333}
.project-artwork{background:#E9E9E9;border-color:#D4D4D4}
.project-meta>span,.project-meta h3{color:#111111}
dialog{background:#FFFFFF;color:#111111;border-color:#D4D4D4}
dialog::backdrop{background:#00000099}
dialog .close{background:transparent;color:#111111}
.project-gallery img{background:#E9E9E9}
.contact{background:#111111;color:#FFFFFF}
.contact .eyebrow,.contact-status{color:#CCCCCC}
.contact .light i,.contact .light span{background:#FFFFFF;color:#111111}
.contact button:focus-visible{outline-color:#FFFFFF}
.skip{background:#111111;color:#FFFFFF}
@media(max-width:600px){header nav{background:#FFFFFF;color:#111111;border-color:#D4D4D4}header nav a:hover{color:#606060}.menu{background:#FFFFFF;color:#111111}}

/* Text enters gently once, then remains readable. */
@media(prefers-reduced-motion:no-preference){
.text-reveal{opacity:0;transform:translate3d(0,24px,0);transition:opacity .85s ease,transform .85s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0ms)}
.text-reveal.is-visible{opacity:1;transform:translate3d(0,0,0)}
}

/* Project entrances and deliberate hover details. */
.project .project-meta>span{display:inline-block;transition:transform .35s cubic-bezier(.22,1,.36,1)}
.project .project-meta h3{transition:transform .35s cubic-bezier(.22,1,.36,1)}
.project .project-artwork img{transition:transform .65s cubic-bezier(.22,1,.36,1)}
.project:focus-visible .project-artwork img{transform:scale(1.025)}
.project:focus-visible .project-meta>span{transform:translate(4px,-4px)}
.project:focus-visible .project-meta h3{transform:translateX(3px)}
@media(hover:hover) and (pointer:fine){
.project:hover .project-meta>span{transform:translate(4px,-4px)}
.project:hover .project-meta h3{transform:translateX(3px)}
}
@media(prefers-reduced-motion:no-preference){
.project.project-reveal{opacity:0;transform:translate3d(0,32px,0);transition:opacity .8s ease,transform .9s cubic-bezier(.22,1,.36,1);transition-delay:var(--project-delay,0ms)}
.project.project-reveal.is-visible{opacity:1;transform:translate3d(0,0,0)}
}
@media(prefers-reduced-motion:reduce){
.project:hover .project-artwork img,.project:focus-visible .project-artwork img,.project:hover .project-meta>span,.project:focus-visible .project-meta>span,.project:hover .project-meta h3,.project:focus-visible .project-meta h3{transform:none}
}

/* Editorial project chapters and image browser. */
#work .section-head{margin-bottom:80px}.work-feature{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:7%;padding:64px 0 90px;border-top:1px solid var(--line);align-items:start}
.work-info{position:sticky;top:40px}.work-info h3{font-size:clamp(32px,3.6vw,64px);line-height:1;overflow-wrap:anywhere;letter-spacing:-.055em;margin:28px 0 20px}.work-category{font-size:11px;text-transform:uppercase;letter-spacing:.08em}.work-description{font-size:14px;line-height:1.7;color:var(--muted);margin:30px 0}.work-info>small{display:block;color:var(--muted);font-size:11px;margin-top:20px}.work-open{border:0;border-bottom:1px solid #111;background:none;padding:12px 0;display:flex;justify-content:space-between;width:100%;font-size:14px}.work-open span{transition:transform .3s}.work-open:hover span{transform:translate(3px,-3px)}
.work-cover{position:relative;display:block;width:100%;padding:28px;background:#E9E9E9;border:0;overflow:hidden}.work-cover img{display:block;width:100%;height:470px;object-fit:contain;transition:transform .7s cubic-bezier(.22,1,.36,1)}.work-cover>span{display:block;text-align:right;margin-top:20px;font-size:11px;letter-spacing:.06em;text-transform:uppercase}.detail-previews{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.detail-preview{padding:18px;background:#F0F0F0;border:0;text-align:left;overflow:hidden}.detail-preview img{display:block;width:100%;height:180px;object-fit:contain;transition:transform .6s}.detail-preview span{display:block;font-size:10px;color:#606060;margin-top:16px}
@media(hover:hover){.work-cover:hover img,.detail-preview:hover img{transform:scale(1.035)}}
.work-cover:focus-visible img,.detail-preview:focus-visible img{transform:scale(1.035)}
dialog{max-width:1250px;padding:28px 40px 40px}dialog h2{font-size:clamp(28px,4vw,48px);margin:20px 0 14px}#dialog-copy{max-width:680px;font-size:13px;color:var(--muted)}.project-gallery{display:block;margin-top:24px}.gallery-stage{background:#EFEFEF;padding:20px;display:flex;align-items:center;justify-content:center;min-height:250px}.gallery-stage img{width:100%;height:52svh;object-fit:contain;background:transparent;animation:gallery-enter .35s ease}.gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 0}.gallery-controls button{border:1px solid #CCC;background:transparent;padding:12px 16px;font-size:12px}.gallery-controls button:hover{background:#111;color:#FFF}.gallery-controls p{font-size:11px}.gallery-thumbs{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 12px}.gallery-thumbs button{width:92px;height:72px;flex:0 0 auto;padding:5px;background:#EEE;border:1px solid transparent;opacity:.55}.gallery-thumbs button[aria-pressed=true]{border-color:#111;opacity:1}.gallery-thumbs button img{width:100%;height:100%;object-fit:contain;background:transparent}.gallery-thumbs button:hover{opacity:1}@keyframes gallery-enter{from{opacity:.35;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(max-width:900px){.work-feature{grid-template-columns:1fr;gap:30px}.work-info{position:static}.work-info h3{font-size:44px}.work-description{max-width:560px;margin:20px 0}.work-open{max-width:280px}.work-cover img{height:430px}}
@media(max-width:600px){#work .section-head{margin-bottom:40px}.work-feature{padding:35px 0 55px}.work-info h3{font-size:36px}.work-cover{padding:15px}.work-cover img{height:360px}.detail-preview{padding:10px}.detail-preview img{height:120px}.detail-previews{gap:10px;margin-top:10px}dialog{padding:18px}.gallery-stage{padding:10px}.gallery-stage img{height:43svh}.gallery-controls button{padding:10px}.gallery-thumbs button{width:72px;height:60px}}
@media(prefers-reduced-motion:reduce){.work-cover:hover img,.detail-preview:hover img,.work-cover:focus-visible img,.detail-preview:focus-visible img,.work-open:hover span{transform:none}}

/* Dark charcoal portfolio direction. */
:root{--bg:#101113;--panel:#191B1E;--line:#33363A;--white:#F0F1F2;--orange:#D8DBDF;--muted:#A9ADB3;--paper:#191B1E}
body{background:var(--bg);color:var(--white);color-scheme:dark}
::selection{background:#D8DBDF;color:#101113}
a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:#D8DBDF}
nav a:hover,footer a:hover{color:#D8DBDF}
.button i,.button span,.light i,.light span{background:#D8DBDF;color:#101113}
.logo-strip{background:#16181B;border-color:#33363A}
.project-artwork,.work-cover{background:#1D2024;border-color:#33363A}
.project-meta h3,.project-meta>span{color:#F0F1F2}
.work-open{border-color:#70757D;color:#F0F1F2}
.detail-preview{background:#191B1E}.detail-preview span{color:#A9ADB3}
dialog{background:#141619;color:#F0F1F2;border-color:#3A3E44}
dialog .close{color:#F0F1F2;background:transparent}
.project-gallery img{background:transparent}
.gallery-stage{background:#202328}
.gallery-controls button{border-color:#535861;color:#F0F1F2}
.gallery-controls button:hover{background:#D8DBDF;color:#101113}
.gallery-thumbs button{background:#25282D}
.gallery-thumbs button[aria-pressed=true]{border-color:#D8DBDF}
.contact{background:#08090A;color:#F0F1F2}
.contact .eyebrow,.contact-status{color:#B5B9BF}
.contact .light i,.contact .light span{background:#D8DBDF;color:#101113}
.skip{background:#D8DBDF;color:#101113}
@media(max-width:600px){header nav{background:#191B1E;color:#F0F1F2;border-color:#33363A}header nav a:hover{color:#D8DBDF}}

/* Art-directed stages echo each project's own visual language. */
.work-neuro{--project-accent:#B8F542;--stage-base:#292D29;--stage-line:#D8DFD014;--stage-glow:#B8F54212}
.work-prophecy{--project-accent:#CFB78A;--stage-base:#302A22;--stage-line:#D9BC8114;--stage-glow:#BDA57624}
.work-visuals .work-cover{isolation:isolate;border:1px solid var(--stage-line);background-color:var(--stage-base);background-image:radial-gradient(ellipse at 70% 20%,var(--stage-glow),transparent 65%),linear-gradient(var(--stage-line) 1px,transparent 1px),linear-gradient(90deg,var(--stage-line) 1px,transparent 1px);background-size:auto,48px 48px,48px 48px;padding:44px 30px 24px}
.work-cover:before{content:'';position:absolute;inset:14px;border:1px solid var(--stage-line);z-index:-1;pointer-events:none}
.work-cover img{filter:drop-shadow(0 20px 25px #0007)}
.work-cover>span{color:var(--project-accent);border-top:1px solid var(--stage-line);padding-top:18px;margin-top:26px}
.work-neuro .work-cover:after{content:'ND—001 / VISUAL SYSTEM';position:absolute;left:30px;top:18px;font-family:monospace;font-size:9px;letter-spacing:.1em;color:#B8F542}
.work-prophecy .work-cover{background-image:radial-gradient(ellipse at 45% 25%,#BDA57624,transparent 75%),repeating-linear-gradient(115deg,#D9BC8105 0px,#D9BC8105 1px,transparent 1px,transparent 5px)}
.work-prophecy .work-cover:after{content:'THE LAST PROPHECY / POSTER SERIES';position:absolute;left:30px;top:18px;font-family:Georgia,serif;font-size:9px;letter-spacing:.12em;color:#CFB78A}
.work-feature .detail-preview{background:var(--stage-base);border:1px solid var(--stage-line)}
.work-feature .detail-preview span{color:var(--project-accent)}
dialog[data-art-direction=neuro] .gallery-stage{background-color:#292D29;background-image:radial-gradient(ellipse at 70% 20%,#B8F54212,transparent 65%),linear-gradient(#D8DFD014 1px,transparent 1px),linear-gradient(90deg,#D8DFD014 1px,transparent 1px);background-size:auto,48px 48px,48px 48px;border:1px solid #D8DFD020}
dialog[data-art-direction=prophecy] .gallery-stage{background:radial-gradient(ellipse at 45% 25%,#BDA57624,transparent 75%),repeating-linear-gradient(115deg,#D9BC8105 0px,#D9BC8105 1px,transparent 1px,transparent 5px),#302A22;border:1px solid #D9BC8120}
@media(max-width:600px){.work-visuals .work-cover{padding:40px 18px 18px}.work-neuro .work-cover:after,.work-prophecy .work-cover:after{left:18px;font-size:8px}.work-cover:before{inset:9px}}

/* Gallery navigation: tactile pill controls with project accents. */
dialog{--gallery-accent:#D8DBDF}dialog[data-art-direction=neuro]{--gallery-accent:#B8F542}dialog[data-art-direction=prophecy]{--gallery-accent:#CFB78A}
.gallery-controls{padding:22px 0;gap:18px}
.gallery-controls button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px;padding:6px 18px 6px 6px;border-radius:100px;border:1px solid #FFFFFF24;background:#FFFFFF05;color:#F0F1F2;font-size:12px;letter-spacing:.02em;transition:background .25s,border-color .25s,box-shadow .25s}
.gallery-controls .gallery-next{padding:6px 6px 6px 18px}
.gallery-arrow{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--gallery-accent);color:#101113;font-size:21px;line-height:1;transition:transform .25s}
.gallery-controls button:hover{background:#FFFFFF0C;color:#FFFFFF;border-color:var(--gallery-accent);box-shadow:0 4px 20px #0002}
.gallery-prev:hover .gallery-arrow{transform:translateX(-2px)}.gallery-next:hover .gallery-arrow{transform:translateX(2px)}
.gallery-controls button:focus-visible{outline:2px solid var(--gallery-accent);outline-offset:4px}
.gallery-controls p{font-variant-numeric:tabular-nums;letter-spacing:.12em;color:#B5B9BF;font-size:11px;margin:0}
@media(max-width:600px){.gallery-controls{gap:10px;padding:18px 0}.gallery-controls button{gap:9px;padding:5px 12px 5px 5px;font-size:11px}.gallery-controls .gallery-next{padding:5px 5px 5px 12px}.gallery-arrow{width:32px;height:32px}.gallery-controls p{font-size:10px;letter-spacing:.05em}}

/* Unified high-contrast action system. */
.button{gap:6px;border-radius:100px;min-height:48px;transition:transform .25s ease,filter .25s ease}
.button i,.button span{height:48px;background:#F0F1F2;color:#101113;border:1px solid #FFFFFF35}
.button i{width:48px;font-size:24px}
.button span{font-size:13px;font-weight:600;padding:0 28px;letter-spacing:.01em}
.button:not(:has(i)) span{min-height:48px}
.button:hover{transform:translateY(-2px);filter:brightness(1.08)}
.button:hover i{transform:rotate(45deg);background:#D8DBDF}
.button:active{transform:translateY(0) scale(.98)}
.button:focus-visible{outline:2px solid #FFFFFF;outline-offset:5px}
header .desktop-contact i,header .desktop-contact span,.hero .button i,.hero .button span,.contact .light i,.contact .light span{background:#F0F1F2;color:#101113}
.work-open{width:auto;min-width:210px;max-width:100%;min-height:50px;display:inline-flex;align-items:center;justify-content:space-between;gap:26px;padding:6px 7px 6px 22px;border:1px solid #FFFFFF33;border-radius:100px;background:#F0F1F2;color:#101113;font-weight:600;transition:transform .25s,background .25s}
.work-open span{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#101113;color:#F0F1F2;font-size:21px}
.work-open:hover{background:#FFFFFF;transform:translateY(-2px)}
.work-open:hover span{transform:rotate(45deg)}
.work-open:active{transform:scale(.98)}
.arrows{display:flex;justify-content:flex-end;gap:9px;padding-top:14px}
.arrows button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:1px solid #FFFFFF40;background:#FFFFFF0A;color:#FFFFFF;padding:0;font-size:28px;transition:background .25s,color .25s,transform .25s}
.arrows button:hover{background:#F0F1F2;color:#101113;transform:translateY(-2px)}
.arrows button:active{transform:scale(.95)}
dialog .close{border-radius:50%;border:1px solid #FFFFFF3D;color:#F0F1F2;transition:color .2s,border-color .2s,transform .2s}
dialog .close:hover{color:var(--gallery-accent,#FFFFFF);border-color:var(--gallery-accent,#FFFFFF);transform:rotate(90deg)}
.gallery-controls button{font-weight:600;min-height:50px;box-shadow:0 3px 12px #0002}
.gallery-controls button:active{transform:scale(.97)}
.gallery-thumbs button{border-radius:8px;transition:opacity .25s,border-color .25s,background .25s}
.gallery-thumbs button[aria-pressed=true]{border-color:var(--gallery-accent);background:#FFFFFF12}
.work-cover>span{display:flex;align-items:center;justify-content:flex-end;gap:10px;font-weight:600;letter-spacing:.08em}
.menu{border-radius:50%;transition:transform .25s}
@media(max-width:600px){.button span{padding:0 23px}.work-open{min-width:200px}.menu{width:42px;height:42px}.arrows button{width:44px;height:44px}}
@media(prefers-reduced-motion:reduce){.button:hover,.button:hover i,.button:active,.work-open:hover,.work-open:hover span,.work-open:active,.arrows button:hover,.arrows button:active,dialog .close:hover,.gallery-controls button:active{transform:none}}
.service-list summary>span{display:flex;align-items:center;justify-content:center;width:42px;height:42px;flex-shrink:0;border-radius:50%;border:1px solid #FFFFFF35;font-size:24px;transition:transform .25s,background .25s,color .25s}
.service-list summary:hover>span{background:#D8DBDF;color:#101113}
.service-list details[open] summary>span{background:#D8DBDF;color:#101113;transform:rotate(45deg)}

/* Primary project actions: one clear pill with an inset arrow. */
.work-open,#contact-button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:60px;border:1px solid #FFFFFF80;border-radius:100px;background:#F5F6F7;color:#0A0B0D;padding:7px 8px 7px 24px;font-size:14px;font-weight:600;box-shadow:0 5px 18px #0003;transition:transform .22s ease,box-shadow .22s ease,background .22s ease}
.work-open{min-width:230px}
.work-open>span,#contact-button>i{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;min-height:44px;padding:0;border:0;border-radius:50%;background:#111317;color:#FFFFFF;font-size:24px;font-style:normal;transition:transform .25s ease,background .25s ease}
#contact-button{min-width:235px}
#contact-button>span{order:0;display:block;background:transparent;color:#0A0B0D;border:0;border-radius:0;height:auto;min-height:0;padding:0;font-size:14px}
#contact-button>i{order:1}
.work-open:hover,#contact-button:hover{background:#FFFFFF;transform:translateY(-3px);box-shadow:0 9px 26px #0005;filter:none}
.work-open:hover>span,#contact-button:hover>i{transform:rotate(45deg);background:#343940}
.work-open:active,#contact-button:active{transform:translateY(0) scale(.97);box-shadow:0 2px 6px #0003}
.work-open:focus-visible,#contact-button:focus-visible{outline:2px solid #FFFFFF;outline-offset:6px}
@media(max-width:600px){.work-open,#contact-button{min-height:56px;min-width:220px;padding:6px 7px 6px 22px}.work-open>span,#contact-button>i{width:42px;height:42px;flex-basis:42px}}
@media(prefers-reduced-motion:reduce){.work-open:hover,#contact-button:hover,.work-open:active,#contact-button:active,.work-open:hover>span,#contact-button:hover>i{transform:none}}

.brand-tagline{font-size:24px;letter-spacing:-.04em;margin:0 0 24px}.brand-swatches{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:26px 0 32px}.brand-swatches span{font-family:monospace;font-size:9px;color:#A9ADB3}.brand-swatches i{display:block;height:28px;background:var(--swatch);border:1px solid #ffffff20;margin-bottom:8px}.brand-feature .work-cover img{height:340px}.brand-feature .work-cover{background:var(--stage-base)}.brand-feature .work-cover:before{border-color:#ffffff20}.brand-feature .detail-preview img{height:180px}.gallery-stage{position:relative;flex-direction:column}.gallery-section-label{margin:14px 0 0;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#F0F1F2}
dialog[data-art-direction=aura]{--gallery-accent:#D8FF3E}dialog[data-art-direction=aven]{--gallery-accent:#D7AA75}dialog[data-art-direction=sxc]{--gallery-accent:#FF785B}dialog[data-art-direction=aura] .gallery-stage{background:#111317}dialog[data-art-direction=aven] .gallery-stage{background:#173F35}dialog[data-art-direction=sxc] .gallery-stage{background:#3524A8}
@media(max-width:600px){.brand-feature .work-cover img{height:270px}.brand-feature .detail-preview img{height:120px}}

.gallery-stage.gallery-explainer{align-items:stretch;padding:24px;gap:0}
.gallery-explainer img{display:block;width:100%;height:auto;max-height:40svh;object-fit:contain;object-position:left center}
.gallery-art-copy{width:100%;text-align:left;padding:22px 0 0}
.gallery-art-copy>p{font-size:clamp(17px,2vw,25px);line-height:1.4;margin:0;max-width:36em;color:#F0F1F2}
.gallery-art-copy>.gallery-art-note{font-size:13px;margin-top:16px;color:#A9ADB3}
.gallery-explainer .gallery-section-label{align-self:flex-start;margin-top:24px}
@media(max-width:600px){.gallery-stage.gallery-explainer{padding:14px}.gallery-art-copy{padding-top:18px}}

/* Minimal primary actions. */
.work-open,#contact-button{min-width:0;min-height:46px;gap:24px;padding:12px 0;border:0;border-bottom:1px solid #747980;border-radius:0;background:transparent;color:#F0F1F2;font-size:13px;font-weight:400;box-shadow:none;transition:border-color .2s,color .2s}
.work-open>span,#contact-button>i{width:auto;height:auto;min-height:0;flex:0 0 auto;padding:0;border:0;border-radius:0;background:transparent;color:inherit;font-size:20px;transition:transform .2s}
#contact-button>span{font-size:13px;font-weight:400;color:inherit;background:transparent;padding:0}
.work-open:hover,#contact-button:hover{background:transparent;color:#FFFFFF;border-color:#FFFFFF;transform:none;box-shadow:none;filter:none}
.work-open:hover>span,#contact-button:hover>i{background:transparent;transform:translate(2px,-2px)}
.work-open:active,#contact-button:active{transform:none;box-shadow:none;opacity:.7}
.work-open:focus-visible,#contact-button:focus-visible{outline:1px solid #D8DBDF;outline-offset:6px}
@media(prefers-reduced-motion:reduce){.work-open:hover>span,#contact-button:hover>i{transform:none}}

/* Compact, minimal pill actions. */
.work-open,#contact-button{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-width:0;min-height:44px;padding:5px 5px 5px 19px;border:0;border-radius:100px;background:#F0F1F2;color:#111317;font-size:12px;font-weight:500;box-shadow:none;transition:transform .22s ease,background .22s ease}
.work-open>span,#contact-button>i{display:flex;align-items:center;justify-content:center;width:34px;height:34px;min-height:34px;flex:0 0 34px;padding:0;border:0;border-radius:50%;background:#17191D;color:#F0F1F2;font-size:19px;transition:transform .25s ease,background .25s ease}
#contact-button>span{display:block;height:auto;min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:#111317;font-size:12px;font-weight:500;order:0}
#contact-button>i{order:1}
.work-open:hover,#contact-button:hover{background:#FFFFFF;color:#111317;transform:translateY(-2px);box-shadow:none;opacity:1}
.work-open:hover>span,#contact-button:hover>i{background:#17191D;transform:rotate(35deg)}
.work-open:active,#contact-button:active{transform:translateY(0) scale(.98);opacity:1;box-shadow:none}
.work-open:focus-visible,#contact-button:focus-visible{outline:1px solid #F0F1F2;outline-offset:5px}
@media(prefers-reduced-motion:reduce){.work-open:hover,#contact-button:hover,.work-open:active,#contact-button:active,.work-open:hover>span,#contact-button:hover>i{transform:none}}
