:root{--bg:#090909;--ink:#f0eee8;--dim:#a3a09a;--line:#33322f;--accent:#d6cbb9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid #fff;outline-offset:5px}::selection{background:#d6cbb9;color:#090909}#progress{position:fixed;top:0;left:0;width:0;height:2px;background:#e6e0d4;z-index:100;pointer-events:none}#transition{position:fixed;inset:0;background:#d9d1c3;z-index:110;transform:translateY(-101%);pointer-events:none}.header{position:absolute;z-index:20;left:0;right:0;top:0;padding:23px clamp(22px,5vw,90px);display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid #ffffff29}.logo{display:flex;align-items:center;gap:15px}.mark{font:700 37px/.66 Georgia,serif;letter-spacing:-.09em;display:flex;flex-direction:column;width:56px;height:62px;justify-content:center}.mark span:last-child{font-size:50px}.logo-rule{height:45px;border-left:1px solid #777}.logo-copy{font-size:10px;letter-spacing:.32em;line-height:1.8}.nav{display:flex;gap:clamp(15px,2.4vw,45px)}.nav a,.nav-cta,.menu{font-size:10px;font-weight:700;letter-spacing:.15em}.nav a{transition:color .25s}.nav a:hover{color:#aaa}.nav-cta{border:1px solid #aaa8;padding:15px 17px;border-radius:40px;white-space:nowrap}.nav-cta span{margin-left:15px}.menu{display:none;background:none;border:1px solid #777;color:white;padding:13px}.hero{min-height:800px;height:100svh;max-height:1100px;position:relative;overflow:hidden;display:flex;align-items:center;padding:125px clamp(22px,7vw,125px) 90px;background:radial-gradient(ellipse at 73% 44%,#2a2927 0%,#121211 35%,#090909 68%)}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff0a 1px,transparent 1px),linear-gradient(90deg,#ffffff0a 1px,transparent 1px);background-size:90px 90px;mask-image:linear-gradient(to right,transparent,#000)}.hero-noise{position:absolute;inset:0;opacity:.08;background-image:url('data:image/svg+xml,%3Csvg viewBox="0 0 180 180" xmlns="http://www.w3.org/2000/svg"%3E%3Cfilter id="n"%3E%3CfeTurbulence type="fractalNoise" baseFrequency=".8" numOctaves="3" stitchTiles="stitch"/%3E%3C/filter%3E%3Crect width="100%25" height="100%25" filter="url(%23n)"/%3E%3C/svg%3E');pointer-events:none}.hero-copy{position:relative;z-index:3;max-width:880px;pointer-events:none}.hero-copy a{pointer-events:auto}.eyebrow,.section-kicker{font-size:11px;letter-spacing:.25em;font-weight:700}.live-dot{display:inline-block;width:7px;height:7px;background:#e5dbca;border-radius:50%;margin-right:10px;box-shadow:0 0 13px #e5dbca}.hero h1,.display,.panel h3{font-family:Arial,Helvetica,sans-serif;font-weight:900;letter-spacing:-.075em;line-height:.92}.hero h1{font-size:clamp(66px,8.5vw,160px);margin:35px 0 25px}.hero h1 em,.display em,.panel h3 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.07em}.period{color:#a99d8c}.hero-description{font-size:clamp(17px,1.6vw,23px);line-height:1.45;max-width:430px}.hero-actions{display:flex;gap:26px;align-items:center;margin-top:35px}.hero-hint{font-size:9px;letter-spacing:.18em;color:#a7a39e;max-width:120px;line-height:1.6}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;padding:20px 24px;border:0;font-size:11px;font-weight:800;letter-spacing:.1em;transition:background .25s,color .25s,transform .25s}.button:hover{transform:translateY(-3px)}.button-light{background:var(--ink);color:#111}.button-light:hover{background:#c8bda9}.button-dark{background:#111;color:white}.hero-object{position:absolute;inset:5% -2% 5% 44%;z-index:2;cursor:grab;touch-action:pan-y}.hero-object:active{cursor:grabbing}#sculpture{width:100%;height:100%;display:block}.object-fallback{display:none;position:absolute;inset:0;place-items:center;font:italic 430px Georgia,serif;color:#bfb8ab;text-shadow:20px 20px 80px #000}.orbit-label{position:absolute;font-size:10px;letter-spacing:.2em;color:#c8c4ba;pointer-events:none}.orbit-one{right:10%;top:20%}.orbit-two{right:12%;bottom:20%}.hero-bottom{position:absolute;bottom:30px;left:clamp(22px,7vw,125px);right:clamp(22px,7vw,125px);display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.17em;z-index:5}.hero-bottom a span{padding-left:20px}.ticker{background:#e4ddd0;color:#151515;overflow:hidden;padding:21px 0;white-space:nowrap}.ticker-track{display:flex;width:max-content;animation:ticker 34s linear infinite}.ticker-track span{font-size:clamp(19px,2.4vw,35px);font-weight:900;letter-spacing:-.05em;padding-right:25px}.ticker i{font-style:normal;margin:0 18px;color:#8e8579}@keyframes ticker{to{transform:translateX(-50%)}}.section-pad{padding:130px clamp(22px,7vw,125px)}.section-kicker{color:#a8a49d}.intro{display:grid;grid-template-columns:1fr 2.2fr;gap:8vw}.display{font-size:clamp(55px,7vw,120px);margin:0}.intro-main>.display{margin-bottom:35px}.intro-blurb{font-size:clamp(17px,2vw,26px);line-height:1.4;max-width:560px;color:#b4b1ab;margin-bottom:75px}.services-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:55px 1fr 40px;align-items:center;gap:20px;padding:30px 0;border-bottom:1px solid var(--line);transition:padding .25s,color .25s}.service-row:hover{padding-left:16px;color:#d1c5b4}.service-row>span:first-child{font-size:12px;color:#918e88}.service-row strong{font-size:clamp(19px,2.3vw,33px);font-weight:500;letter-spacing:-.035em}.service-arrow{font-size:25px;text-align:right}.spotlight{height:min(790px,90svh);min-height:520px;position:relative;overflow:hidden;isolation:isolate;background:#0a0a0a}.spotlight-back,.spotlight-reveal{position:absolute;inset:0;background:url('assets/architecture.jpg') center/cover no-repeat}.spotlight-back{filter:grayscale(1) brightness(.13)}.spotlight-reveal{opacity:0;filter:grayscale(.2) contrast(1.2);mask-image:radial-gradient(circle 185px at var(--mx,50%) var(--my,50%),#000 0%,#0008 62%,transparent 100%);-webkit-mask-image:radial-gradient(circle 185px at var(--mx,50%) var(--my,50%),#000 0%,#0008 62%,transparent 100%);transition:opacity .3s}.spotlight.active .spotlight-reveal{opacity:.95}.spotlight-content{position:absolute;z-index:2;left:clamp(22px,7vw,125px);top:50%;transform:translateY(-50%);pointer-events:none;max-width:900px;text-shadow:0 2px 24px #000}.spotlight-content .display{font-size:clamp(55px,7.8vw,120px);margin:30px 0}.spotlight-content>p:last-of-type{font-size:17px;color:#ddd}.spotlight-cross{position:absolute;right:7%;bottom:12%;font-size:140px;color:#ffffff18}.spotlight-touch{display:none;pointer-events:auto}.spotlight-touch button{background:#e4ddd0;border:0;padding:15px;color:#111;font-weight:bold}.work-intro{min-height:540px;display:grid;grid-template-columns:1fr 2fr;gap:8vw;align-items:center;padding:90px clamp(22px,7vw,125px)}.work-intro .display{font-size:clamp(54px,6vw,98px)}.work-intro p{color:#aaa}.scroll-instruction{grid-column:2;font-size:11px;letter-spacing:.2em}.horizontal{height:400vh;position:relative;background:#e5e0d7;color:#111}.horizontal-sticky{position:sticky;top:0;height:100svh;overflow:hidden}.horizontal-track{height:100%;display:flex;width:max-content;will-change:transform}.panel{height:100%;width:100vw;flex:none;padding:clamp(25px,5vw,85px);position:relative;display:flex;flex-direction:column;justify-content:center}.panel-start{background:#d7cfc3}.panel-index{position:absolute;top:7%;left:7%;font-size:11px;letter-spacing:.2em}.panel-start-inner{margin-left:8%}.panel-start-inner>span{font-size:12px;letter-spacing:.2em}.panel h3{font-size:clamp(70px,9vw,155px);margin:22px 0}.panel-start p{font-size:18px}.project-panel{background:#e9e5de;justify-content:center;gap:15px}.project-panel:nth-child(3){background:#d1d0ca}.project-visual{height:min(65vh,650px);width:min(80vw,1200px);margin:auto;overflow:hidden;position:relative;background:#aaa}.project-visual img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.project-visual:hover img{transform:scale(1.07)}.project-overlay{position:absolute;inset:auto 0 0;display:flex;justify-content:space-between;align-items:center;padding:25px;color:white;background:linear-gradient(transparent,#0009);font-size:11px;letter-spacing:.15em}.project-overlay span:last-child{font-size:35px}.project-caption{display:flex;align-items:baseline;justify-content:space-between;width:min(80vw,1200px);margin:0 auto;gap:20px}.project-caption h3{font-size:clamp(25px,3.5vw,55px);margin:0}.project-caption p{font-size:11px;letter-spacing:.12em}.panel-end{background:#161615;color:white;align-items:flex-start;padding-left:12%}.panel-end h3{font-size:clamp(85px,10vw,175px)}.gallery-bottom{position:absolute;bottom:20px;left:5vw;right:5vw;display:flex;gap:20px;align-items:center;font-size:10px;letter-spacing:.2em;z-index:3;color:#555}.gallery-bar{height:2px;background:#9996;flex:1}.gallery-bar span{display:block;background:#111;height:100%;width:0}.studio{background:#0d0d0c}.studio-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:7vw;align-items:center;margin:50px 0 110px}.studio .display{font-size:clamp(58px,6.8vw,110px)}.studio-copy{font-size:20px;line-height:1.6;max-width:580px;color:#aaa;margin:40px 0}.text-link{font-size:11px;letter-spacing:.2em;border-bottom:1px solid #999;padding-bottom:12px}.studio-art{min-height:570px;background:radial-gradient(circle at 30% 20%,#69635b,#242321 42%,#111 76%);display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden;position:relative;perspective:800px}.studio-art-inner{font:700 clamp(170px,19vw,360px)/.65 Georgia,serif;letter-spacing:-.12em;display:flex;flex-direction:column;color:#e7dfd1;text-shadow:16px 18px 0 #8c8172,32px 36px 30px #000;transform:rotate(-11deg) rotateY(-19deg);transition:transform .3s}.studio-art small{position:absolute;bottom:20px;left:20px;font-size:10px;letter-spacing:.15em}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.steps>div{border-top:1px solid #555;padding-top:20px}.steps span{font-size:11px;letter-spacing:.15em;color:#bbb}.steps p{font-size:18px}.contact{min-height:750px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:120px 25px;position:relative;overflow:hidden;background:#1b1a18}.contact-orb{position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#aca295,#37332e 38%,#10100f 66%);filter:blur(1px);right:-180px;bottom:-180px;box-shadow:0 0 140px #9a8c7740;pointer-events:none}.contact>*:not(.contact-orb){position:relative}.contact .display{font-size:clamp(75px,11vw,180px);margin:40px 0}.contact>p:not(.eyebrow){color:#c5c0b8;font-size:19px}.contact .button{margin:25px 0}.contact-note{font-size:12px!important;color:#b8b2aa!important}.footer{padding:45px 7vw;display:flex;align-items:end;justify-content:space-between;gap:25px}.footer-logo{font:700 60px/.8 Georgia,serif;letter-spacing:-.1em}.footer-logo small{display:block;font:10px Arial,sans-serif;letter-spacing:.25em;margin-top:12px}.footer>span,.footer>a:last-child{font-size:10px;letter-spacing:.15em;color:#aaa}.reveal{opacity:0;transform:translateY(50px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:none}@media(max-width:950px){.nav{display:none;position:absolute;top:100%;left:0;right:0;background:#0b0b0b;padding:30px 7vw;flex-direction:column;gap:25px}.nav.open{display:flex}.menu{display:block}.nav-cta{display:none}.hero-object{inset:10% -27% 9% 30%;opacity:.65}.hero-copy{max-width:720px}.hero h1{font-size:clamp(70px,11vw,115px)}.intro{grid-template-columns:1fr;gap:40px}.work-intro{grid-template-columns:1fr;gap:25px}.scroll-instruction{grid-column:1}.studio-layout{grid-template-columns:1fr}.studio-art{min-height:400px}.steps{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.header{padding:15px 20px}.hero{height:auto;min-height:790px;padding:145px 22px 90px;align-items:flex-start}.hero-copy{padding-top:65px}.hero h1{font-size:clamp(57px,14vw,85px);margin-top:24px}.hero-object{inset:33% -58% 1% 10%;opacity:.43}.orbit-label{display:none}.hero-description{max-width:290px;font-size:17px}.hero-actions{align-items:flex-start;flex-direction:column;gap:14px}.hero-bottom{left:22px;right:22px;font-size:8px}.hero-bottom>span{display:none}.section-pad{padding:90px 22px}.intro .display,.spotlight .display{font-size:clamp(48px,12vw,75px)}.service-row{grid-template-columns:25px 1fr 24px;gap:12px;padding:24px 0}.service-row strong{font-size:20px}.spotlight{height:600px}.spotlight-content{left:22px;right:22px}.spotlight-touch{display:block;margin-top:25px}.work-intro{padding:90px 22px;min-height:420px}.work-intro .display{font-size:clamp(48px,11vw,75px)}.panel{padding:25px}.panel-start-inner{margin-left:0}.panel h3{font-size:clamp(60px,14vw,95px)}.project-visual{width:92vw;height:55vh}.project-caption{width:92vw;display:block}.project-caption h3{font-size:26px}.project-caption p{font-size:9px}.gallery-bottom{bottom:12px}.gallery-bottom>span:first-child{display:none}.studio-art{min-height:350px}.steps{gap:20px}.steps p{font-size:15px}.contact{min-height:650px}.footer{display:flex;align-items:flex-start;flex-direction:column}.footer-logo{font-size:45px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker-track{animation:none}.reveal{opacity:1;transform:none;transition:none}.button,.service-row,.project-visual img,.studio-art-inner{transition:none}}
/* Brief editorial wipe when navigating between on-page scenes. */
#transition.active{animation:sceneWipe .82s cubic-bezier(.76,0,.24,1) both}@keyframes sceneWipe{0%{transform:translateY(-101%)}46%{transform:translateY(0)}54%{transform:translateY(0)}100%{transform:translateY(101%)}}@media(prefers-reduced-motion:reduce){#transition.active{animation:none}}

/* Version 2.1: balanced capabilities and responsive UI polish */
.intro{position:relative;grid-template-columns:minmax(175px,24%) minmax(0,1fr);gap:clamp(35px,5vw,95px);align-items:start;overflow:hidden}
.intro-aside{display:flex;flex-direction:column;gap:55px;min-width:0}
.aside-art{width:100%;aspect-ratio:1/1.12;max-height:340px;border:1px solid #3a3835;background:radial-gradient(circle at 30% 25%,#4a4640,#1a1918 55%,#0d0d0d);display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;font:700 clamp(70px,8vw,150px)/.7 Georgia,serif;letter-spacing:-.1em;color:#e4ded3;text-shadow:8px 12px 18px #0009;transform:translateZ(0)}
.aside-art span:last-child{margin-left:-.12em}
.aside-note{font-size:10px;line-height:1.8;letter-spacing:.18em;color:#aaa49c}
.intro-main{min-width:0;max-width:1150px}
.intro-main>.display{font-size:clamp(45px,5.3vw,93px);line-height:.98;letter-spacing:-.07em;overflow-wrap:normal;max-width:1100px;margin:0 0 30px}
.intro-blurb{margin:0 0 44px;max-width:620px;font-size:clamp(17px,1.5vw,22px)}
.service-row{min-height:88px;padding:22px 0;position:relative;transition:padding .25s,color .25s,background .25s}
.service-row:hover,.service-row:focus-visible{padding-left:14px;background:#ffffff08}
.service-row strong{font-size:clamp(19px,2vw,29px);line-height:1.25}
.service-arrow{transition:transform .25s}
.service-row:hover .service-arrow,.service-row:focus-visible .service-arrow{transform:translate(4px,-4px)}
.service-preview{position:absolute;left:clamp(22px,7vw,125px);top:53%;width:min(20vw,310px);aspect-ratio:4/5;overflow:hidden;border:1px solid #ffffff24;opacity:0;transform:translateY(14px) rotate(-3deg);pointer-events:none;transition:opacity .3s,transform .35s;box-shadow:0 18px 70px #0008}
.service-preview img{width:100%;height:100%;object-fit:cover}
.service-preview.active{opacity:1;transform:translateY(0) rotate(-3deg)}
.section-pad{padding-top:clamp(80px,8vw,125px);padding-bottom:clamp(85px,8vw,125px)}
.work-intro{min-height:440px}
.horizontal{height:400svh}
.panel-start-inner{margin-left:3%}
.panel h3{line-height:.97}
.project-caption{align-items:center}
.project-caption p{line-height:1.5}
.spotlight-content{max-width:min(85vw,960px)}
.spotlight-content .display{font-size:clamp(52px,6.8vw,108px)}
/* Avoid unclickable scroll-jumps during the horizontal sticky scene */
html{scroll-padding-top:20px}
@media(max-width:1000px){.intro{grid-template-columns:1fr;gap:25px}.intro-aside{gap:0}.aside-art,.aside-note,.service-preview{display:none}.intro-main>.display{font-size:clamp(46px,7.4vw,80px)}.intro-blurb{margin-bottom:40px}}
@media(max-width:600px){.intro-main>.display{font-size:clamp(43px,10.6vw,65px);letter-spacing:-.065em}.intro-blurb{font-size:17px}.service-row{min-height:78px;gap:10px}.service-row strong{font-size:19px}.spotlight-content .display{font-size:clamp(43px,10.5vw,67px)}.panel-start-inner{margin-left:0}.project-caption{margin-bottom:45px}.project-visual{height:min(51svh,500px)}.gallery-bottom{background:#e5e0d7dd;padding:10px 0;bottom:0}.work-intro{min-height:380px}.intro{padding-top:80px;padding-bottom:85px}}
@media(prefers-reduced-motion:reduce){.service-preview,.service-arrow{transition:none}}

/* V2.2: replace empty interstitial with actual work */
.work-heading{padding:72px clamp(22px,7vw,125px) 62px;display:grid;grid-template-columns:1fr 2.2fr auto;gap:30px;align-items:end;background:#101010;border-top:1px solid #292929}
.work-heading h2{font-size:clamp(42px,5.5vw,90px);letter-spacing:-.065em;line-height:.95;margin:0 0 22px;font-weight:850}.work-heading h2 em{font-family:Georgia,serif;font-weight:400}.work-heading p{font-size:17px;color:#b6b1aa;margin:0}.work-count{font-size:12px;letter-spacing:.18em;color:#aaa;white-space:nowrap}.horizontal{height:550svh}.project-panel{gap:15px;padding:clamp(24px,4vw,60px);background:#e9e5de!important}.project-panel:nth-child(even){background:#d5d0c8!important}.project-visual{display:block;height:min(67svh,680px);width:min(86vw,1330px);border-radius:10px;box-shadow:0 18px 50px #0002;flex:none}.project-visual img{display:block}.project-caption{width:min(86vw,1330px);align-items:center}.project-caption h3{font-size:clamp(25px,3.2vw,49px);line-height:1.05;margin:6px 0 0}.project-category{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#5b5651}.project-link{font-size:12px;letter-spacing:.12em;white-space:nowrap;border:1px solid #292521;padding:15px 20px;border-radius:99px;transition:background .2s,color .2s}.project-link:hover,.project-link:focus-visible{background:#111;color:white}.gallery-bottom{pointer-events:none}.work-heading .section-kicker{align-self:start}@media(max-width:900px){.work-heading{grid-template-columns:1fr;gap:20px}.work-count{display:none}}@media(max-width:600px){.work-heading{padding:55px 22px 40px}.work-heading h2{font-size:clamp(38px,10vw,65px)}.work-heading p{font-size:15px}.horizontal{height:550svh}.project-panel{padding:22px}.project-visual{height:57svh;width:calc(100vw - 44px)}.project-caption{width:calc(100vw - 44px);display:flex;align-items:flex-start;gap:8px}.project-caption h3{font-size:22px}.project-category{font-size:9px}.project-link{font-size:9px;padding:11px 10px;white-space:normal;text-align:center;max-width:115px}.gallery-bottom{bottom:0}.project-overlay{padding:15px}}

/* v2.3: real website preview, never an invented site image */
.project-visual{position:relative;display:block;overflow:hidden;background:#181818}
.real-site-preview{position:absolute;inset:0;overflow:hidden;background:#111;color:#f1eee8}
.browser-chrome{height:38px;display:flex;align-items:center;gap:12px;padding:0 15px;background:#e9e5dd;color:#282828;font:600 11px/1 Arial,sans-serif;letter-spacing:.04em}
.browser-dots{color:#999;font-size:9px;white-space:nowrap}.browser-url{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.browser-live{font-size:9px;letter-spacing:.12em}
.real-site-preview iframe{display:block;width:1440px;height:1000px;transform-origin:top left;transform:scale(.66);border:0;pointer-events:none;background:white}
.preview-fallback{position:absolute;inset:38px 0 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;text-align:center;padding:28px;background:linear-gradient(140deg,rgba(13,13,13,.04),rgba(13,13,13,.18));pointer-events:none}
.preview-fallback strong,.preview-fallback small,.preview-fallback span{background:rgba(8,8,8,.84);padding:9px 14px;border:1px solid rgba(255,255,255,.18)}
.preview-fallback strong{font-size:clamp(16px,2vw,24px);letter-spacing:.05em}.preview-fallback small{font-size:12px}.preview-fallback span{font-size:11px;letter-spacing:.13em}
.project-visual:hover .preview-fallback{background:rgba(0,0,0,.1)}
@media(max-width:800px){.real-site-preview iframe{transform:scale(.38)}.browser-chrome{height:32px;padding:0 8px}.preview-fallback{inset:32px 0 0}.preview-fallback strong{font-size:14px}}

/* V2.4: stable, responsive, accessible portfolio and interaction fixes */
html{scroll-behavior:smooth;scroll-padding-top:96px}body{overflow-x:clip}#transition{display:none!important}.work-heading{padding:85px max(22px,7vw) 45px}.portfolio-grid-section{background:#e9e5de;color:#181715;padding:0 max(22px,7vw) 115px}.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:45px 24px;max-width:1550px;margin:0 auto}.portfolio-card{min-width:0}.portfolio-card-link{display:block;color:inherit;text-decoration:none}.portfolio-browser{background:#181818;border:1px solid #45413c;border-radius:12px;overflow:hidden;box-shadow:0 16px 40px #0002;transition:transform .25s ease,box-shadow .25s ease}.portfolio-card-link:hover .portfolio-browser,.portfolio-card-link:focus-visible .portfolio-browser{transform:translateY(-5px);box-shadow:0 22px 44px #0003}.portfolio-browser-bar{height:38px;background:#272522;color:#817c74;padding:11px 16px;font-size:10px;letter-spacing:3px;display:flex;gap:15px;align-items:center}.portfolio-browser-bar span{font:12px Arial,sans-serif;color:#bdb8ae;letter-spacing:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portfolio-browser-content{min-height:275px;aspect-ratio:1.85;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(22px,4vw,55px);background:radial-gradient(circle at 80% 10%,#4b4944 0,transparent 43%),linear-gradient(135deg,#252522,#0c0c0c);color:#f0ede7;overflow:hidden}.portfolio-card:nth-child(2) .portfolio-browser-content{background:linear-gradient(135deg,#22352e,#101714)}.portfolio-card:nth-child(3) .portfolio-browser-content{background:linear-gradient(135deg,#30383d,#12171b)}.portfolio-card:nth-child(4) .portfolio-browser-content{background:linear-gradient(135deg,#3b3129,#151210)}.portfolio-card:nth-child(5) .portfolio-browser-content{background:linear-gradient(135deg,#2b2b37,#111115)}.portfolio-browser-kicker{font-size:10px;letter-spacing:.17em;color:#c2bdb5}.portfolio-browser-content strong{font:normal clamp(28px,3.4vw,58px)/1.05 Georgia,serif;letter-spacing:-.035em;max-width:80%;overflow-wrap:anywhere}.portfolio-browser-content small{font-size:12px;color:#c9c4bc}.portfolio-meta{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px 0}.portfolio-category{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#67615a}.portfolio-meta h3{font-size:clamp(22px,2.4vw,36px);margin:6px 0 8px;line-height:1.1}.portfolio-meta p{font-size:14px;line-height:1.5;max-width:380px;color:#625d56;margin:0}.portfolio-open{border:1px solid #222;border-radius:50px;padding:13px 17px;font-size:10px;letter-spacing:.08em;white-space:nowrap}.portfolio-card-link:hover .portfolio-open,.portfolio-card-link:focus-visible .portfolio-open{background:#151515;color:#fff}.hero h1,.display,.work-heading h2{overflow-wrap:normal}.hero-object{touch-action:pan-y}.intro{overflow:hidden}.spotlight{overflow:hidden}.header{z-index:1000}.menu{cursor:pointer}.portfolio-card-link:focus-visible,.nav a:focus-visible,.button:focus-visible{outline:2px solid #b0a28d;outline-offset:5px}
@media(max-width:900px){.portfolio-grid{gap:30px 18px}.portfolio-meta{align-items:flex-start;flex-direction:column}.portfolio-open{display:inline-block}.portfolio-browser-content{min-height:225px}.intro .display{font-size:clamp(44px,7vw,82px)}}
@media(max-width:680px){.portfolio-grid{grid-template-columns:1fr;gap:26px}.portfolio-grid-section{padding:0 20px 65px}.work-heading{padding:65px 20px 35px}.portfolio-browser-content{min-height:210px;aspect-ratio:1.55;padding:25px}.portfolio-browser-content strong{font-size:clamp(30px,9vw,48px)}.portfolio-meta{padding:15px 0 8px;gap:14px}.portfolio-meta h3{font-size:26px}.portfolio-meta p{font-size:14px}.hero-object{pointer-events:none}.hero{min-height:720px}.hero-copy{position:relative;z-index:2}.hero h1{font-size:clamp(48px,12.5vw,77px)}.intro-main>.display{font-size:clamp(42px,10vw,62px)}.studio .display{font-size:clamp(45px,11vw,76px)}.spotlight .display{font-size:clamp(40px,10vw,64px)}.contact .display{font-size:clamp(50px,12vw,84px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.portfolio-browser,.portfolio-open{transition:none!important}.portfolio-card-link:hover .portfolio-browser{transform:none}}

/* V2.5: purposeful, compact portfolio. No decorative full-screen spotlight. */
.work-compact{background:#eae7e1;color:#161616;padding:clamp(48px,6vw,96px) clamp(18px,5vw,90px) 64px;overflow:hidden}
.work-compact-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:32px}
.work-compact-head h2{font:800 clamp(55px,8vw,124px)/.92 Arial,Helvetica,sans-serif;letter-spacing:-.075em;margin:18px 0 12px}
.work-dot{color:#80776a}.work-compact-head p:not(.section-kicker){font-size:clamp(14px,1.3vw,19px);color:#595650;margin:0}.work-count{white-space:nowrap;font-size:11px;letter-spacing:.15em}
.work-tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.work-tile{min-width:0;min-height:196px;text-align:left;display:flex;flex-direction:column;align-items:flex-start;position:relative;gap:14px;padding:20px;border:1px solid #c6c1b8;border-radius:9px;background:#f4f1eb;color:#1b1b1b;cursor:pointer;transition:background .22s ease,color .22s ease,transform .22s ease,border-color .22s ease}
.work-tile:hover{transform:translateY(-5px);border-color:#252525}.work-tile.is-selected{background:#141414;color:#f6f3ed;border-color:#141414}.work-tile:focus-visible{outline:3px solid #786b59;outline-offset:3px}
.tile-index,.tile-industry{font-size:10px;letter-spacing:.12em;text-transform:uppercase;opacity:.7}.tile-brand{font:700 clamp(17px,1.8vw,29px)/1.08 Arial,Helvetica,sans-serif;letter-spacing:-.045em;margin:auto 0;overflow-wrap:break-word}.tile-arrow{position:absolute;top:15px;right:16px;font-size:22px}.tile-industry{margin-top:auto}
.work-detail{margin-top:13px;background:#111;color:#f3f0e9;display:grid;grid-template-columns:1.15fr .85fr;min-height:275px;border-radius:10px;overflow:hidden}
.work-detail-copy{padding:clamp(24px,3vw,50px);display:flex;flex-direction:column;align-items:flex-start}.detail-eyebrow{font-size:10px;letter-spacing:.2em;color:#b5ac9e}.work-detail h3{font:700 clamp(34px,4.3vw,70px)/1.02 Arial,Helvetica,sans-serif;letter-spacing:-.055em;margin:14px 0}.work-detail-copy>p{font-size:clamp(14px,1.3vw,18px);line-height:1.5;color:#bcb7b0;max-width:520px;margin:0 0 25px}.work-detail-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:auto}.detail-visit{display:inline-flex;padding:13px 18px;background:#eee9e1;color:#111;border-radius:50px;font-size:11px;font-weight:700;letter-spacing:.07em;text-decoration:none;transition:background .2s,transform .2s}.detail-visit:hover{background:#fff;transform:translateY(-2px)}#detailDomain{font-size:12px;color:#aba59d}
.work-detail-graphic{position:relative;overflow:hidden;background:radial-gradient(circle at 45% 40%,#33312e,#191919 58%,#111);display:flex;align-items:center;justify-content:center}.work-detail-graphic>span#detailNumber{font:700 clamp(120px,18vw,270px)/1 Arial,sans-serif;letter-spacing:-.1em;color:#e8e4dc;opacity:.12;transition:transform .4s ease}.work-detail:hover #detailNumber{transform:scale(1.07) rotate(-4deg)}.graphic-orbit{position:absolute;width:65%;aspect-ratio:1;border:1px solid #ffffff22;border-radius:50%;transform:rotateX(60deg) rotateZ(-35deg)}.orbit-two{width:95%;transform:rotateX(65deg) rotateZ(35deg)}.graphic-caption{position:absolute;bottom:24px;right:25px;font-size:9px;letter-spacing:.18em;color:#8e8b85}.work-hint{font-size:11px;color:#666059;margin:14px 0 0}.detail-enter .work-detail-copy{animation:detailFade .32s ease both}@keyframes detailFade{from{opacity:.55;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1050px){.work-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}.work-tile{min-height:145px}.work-detail{min-height:245px}}
@media(max-width:680px){.work-compact{padding:48px 16px 50px}.work-compact-head{align-items:start}.work-compact-head h2{font-size:clamp(49px,13vw,78px)}.work-count{display:none}.work-tiles{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;gap:10px;padding:3px 2px 12px;scrollbar-width:thin}.work-tile{flex:0 0 min(61vw,240px);min-height:150px;scroll-snap-align:start}.tile-brand{font-size:23px}.work-detail{display:block;min-height:0}.work-detail-copy{padding:26px 22px}.work-detail h3{font-size:clamp(32px,9vw,52px)}.work-detail-graphic{display:none}.work-hint{line-height:1.4}}
@media(prefers-reduced-motion:reduce){.work-tile,.detail-visit,.work-detail-graphic>span#detailNumber{transition:none!important}.detail-enter .work-detail-copy{animation:none}}

/* V2.6: purposeful interactions, without additional scrolling sections */
.work-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-6px 0 16px}.work-toolbar-label{font:700 10px/1.2 Arial,sans-serif;letter-spacing:.16em;color:#666}.work-toolbar-pulse{display:inline-block;width:7px;height:7px;border-radius:50%;background:#7c8774;margin-left:7px;box-shadow:0 0 0 4px #7c877421}.work-controls{display:flex;align-items:center;gap:13px}.work-controls button{border:1px solid #b8b1a8;background:transparent;color:#111;border-radius:50%;height:38px;width:38px;font-size:18px;cursor:pointer;transition:background .2s,color .2s,transform .2s}.work-controls button:hover,.work-controls button:focus-visible{background:#141414;color:white;transform:scale(1.08)}#projectPosition{font-size:11px;letter-spacing:.13em;min-width:48px;text-align:center}.work-tile{position:relative;isolation:isolate;transform:perspective(800px) rotateX(var(--tiltx,0deg)) rotateY(var(--tilty,0deg));transition:transform .24s ease,background .25s,border-color .25s;will-change:transform}.work-tile::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at var(--mx,50%) var(--my,50%),#ffffff2b,transparent 60%);opacity:0;transition:opacity .25s}.work-tile:hover::before,.work-tile:focus-visible::before{opacity:1}.work-tile:focus-visible{outline:3px solid #b29c78;outline-offset:3px}.work-detail{overflow:hidden}.work-detail-graphic{background:radial-gradient(circle at var(--gx,48%) var(--gy,48%),#45413b,#181818 63%,#0c0c0c);transition:background .2s}.project-graphic-grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff0d 1px,transparent 1px),linear-gradient(90deg,#ffffff0d 1px,transparent 1px);background-size:40px 40px;mask-image:linear-gradient(90deg,transparent,#000)}.project-scan{position:absolute;left:-30%;top:-60%;width:45%;height:220%;background:linear-gradient(90deg,transparent,#ffffff10,transparent);transform:rotate(20deg);animation:projectScan 7s ease-in-out infinite}.project-graphic-domain{position:absolute;left:24px;top:22px;font-size:10px;letter-spacing:.17em;color:#d4cfc7;z-index:1}.work-detail[data-project="1"] .work-detail-graphic{background-color:#17332a}.work-detail[data-project="2"] .work-detail-graphic{background-color:#233039}.work-detail[data-project="3"] .work-detail-graphic{background-color:#3a2921}.work-detail[data-project="4"] .work-detail-graphic{background-color:#29283d}@keyframes projectScan{0%,12%{transform:translateX(-100%) rotate(20deg)}65%,100%{transform:translateX(520%) rotate(20deg)}}.nav a.nav-current{color:#e9d8b6}.service-row{width:100%;text-align:left;cursor:pointer;background:transparent;color:inherit;font-family:inherit}.service-row[aria-expanded="true"]{color:#d6c0a0}.service-detail{border-bottom:1px solid #ffffff30;padding:4px 4% 24px 7%;color:#d1cbc2;animation:serviceOpen .25s ease}.service-detail p{font-size:clamp(14px,1.25vw,18px);line-height:1.55;max-width:640px;margin:0 0 12px}.service-detail small{display:block;font-size:11px;letter-spacing:.05em;color:#9b958c;margin-bottom:15px}.service-detail a{font-size:11px;font-weight:700;letter-spacing:.12em;color:#f3e7d6;text-decoration:underline;text-underline-offset:5px}@keyframes serviceOpen{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:680px){.work-toolbar{margin-top:0}.work-controls button{width:42px;height:42px}.work-tile{transform:none!important}.project-scan{animation:none}.service-detail{padding:4px 12px 24px}}@media(prefers-reduced-motion:reduce){.project-scan{animation:none}.work-tile{transform:none!important}.service-detail{animation:none}.work-controls button{transition:none}}
