/* Moonlit archive: daylight ivory, royal blue, and midnight purple. */
:root{--bg:#f2f3fc;--surface:#fff;--soft:#e9ecfa;--ink:#202943;--muted:#59627b;--line:#c9cfe6;--blue:#365be6;--purple:#7650b3;--shadow:#bcc6e5;--on-blue:#fff;--max:1200px;color-scheme:light}
:root[data-theme=dark]{--bg:#0b1027;--surface:#121a34;--soft:#182241;--ink:#edf0ff;--muted:#bbc4df;--line:#354365;--blue:#a0b4ff;--purple:#c5a6f1;--shadow:#040819;--on-blue:#111a35;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-underline-offset:4px}a:hover{color:var(--blue)}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--purple);outline-offset:5px}img{display:block;max-width:100%}figure{margin:0}h1,h2,h3,h4,p{margin:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.12}h1{font-size:clamp(2.8rem,5.5vw,4.8rem);letter-spacing:-.04em}h2{font-size:clamp(2rem,3.8vw,3.1rem);letter-spacing:-.03em}h3{font-size:1.2rem;line-height:1.35}h4{font-size:1rem}p{color:var(--muted)}.wrap{width:min(var(--max),calc(100% - 80px));margin-inline:auto}.eyebrow{display:block;color:var(--purple);font:600 .72rem/1.5 'Courier New',monospace;text-transform:uppercase;letter-spacing:.16em;margin-bottom:16px}.skip-link{position:fixed;top:-100px;inset-inline-start:20px;background:var(--surface);color:var(--ink);padding:12px 18px;z-index:100}.skip-link:focus{top:10px}.site-header{position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:1px solid var(--line)}.header-inner{min-height:84px;display:flex;align-items:center;gap:32px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font:700 .85rem/1.2 'Courier New',monospace;letter-spacing:.12em;flex-shrink:0}.brand-mark{width:30px;height:32px;display:grid;place-items:center;background:var(--blue);color:var(--on-blue);clip-path:polygon(5px 0,25px 0,25px 5px,30px 5px,30px 27px,25px 27px,25px 32px,5px 32px,5px 27px,0 27px,0 5px,5px 5px)}.desktop-nav{display:flex;gap:24px;margin-inline-start:auto}.desktop-nav a{font-size:.86rem;text-decoration:none;color:var(--muted)}.header-controls{display:flex;gap:16px;align-items:center}.language-switch{font-size:.85rem;text-decoration:none}.theme-button,.menu-button{background:transparent;color:var(--ink);border:1px solid var(--line);padding:7px 11px;font-size:.78rem;display:flex;gap:7px;align-items:center}.theme-glyph{font-size:1.05rem}.menu-button{display:none}.mobile-nav{padding-block:8px 20px}.mobile-nav a{display:block;padding:9px 0;text-decoration:none}.hero{display:grid;grid-template-columns:1fr 1.03fr;gap:62px;align-items:center;padding-block:88px 82px}.hero-alias{display:flex;gap:14px;align-items:center;font:500 1.1rem/1.5 'Courier New',monospace;color:var(--purple);margin-top:16px}.alias-line{width:50px;height:1px;background:var(--purple)}.hero-intro{font-size:1.08rem;max-width:500px;margin-top:26px}.hero-actions,.contact-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-size:.87rem;font-weight:600;min-height:46px;padding:11px 21px;border:1px solid var(--blue);box-shadow:3px 3px 0 var(--shadow);transition:transform .15s,box-shadow .15s}.button:hover{transform:translateY(-2px);box-shadow:4px 5px 0 var(--shadow)}.primary{background:var(--blue);color:var(--on-blue)}.primary:hover{color:var(--on-blue)}.secondary{background:var(--surface);color:var(--blue)}.location{font-size:.8rem;margin-top:24px}.hero-art{min-width:0}.art-frame{position:relative;background:var(--soft);padding:9px;border:1px solid var(--line);box-shadow:8px 8px 0 var(--shadow);clip-path:polygon(0 8px,8px 8px,8px 0,calc(100% - 8px) 0,calc(100% - 8px) 8px,100% 8px,100% calc(100% - 8px),calc(100% - 8px) calc(100% - 8px),calc(100% - 8px) 100%,8px 100%,8px calc(100% - 8px),0 calc(100% - 8px))}.hero-art img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.art-border{position:absolute;inset:15px;border:1px solid #ffffff45;pointer-events:none}.hero-art figcaption{display:flex;gap:9px;margin-top:18px;font:500 .73rem/1.5 'Courier New',monospace;color:var(--muted)}.pixel-star{color:var(--purple)}.chapter-ribbon{border-block:1px solid var(--line);background:var(--soft)}.chapter-ribbon .wrap{display:flex;justify-content:space-between;gap:12px;padding-block:17px;font:600 .7rem/1.5 'Courier New',monospace;letter-spacing:.12em;color:var(--muted)}.ribbon-dot{color:var(--purple)}.section{padding-block:90px}.section-heading{max-width:670px;margin-bottom:42px}.section-heading p{margin-top:20px}.about-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:90px}.lead{font-size:1.13rem;color:var(--ink)}.about-copy>p+p{margin-top:20px}.personal-note{display:flex;gap:16px;border-top:1px solid var(--line);padding-top:24px;margin-top:28px}.personal-note p{font-size:.9rem}.experience{border-inline-start:1px solid var(--line);padding-inline-start:30px}.experience>h3{margin-bottom:24px;font-size:1rem}.experience ol{list-style:none;margin:0;padding:0}.experience li+li{margin-top:24px}.experience-meta{display:block;font-size:.8rem;color:var(--purple);margin-top:4px}.experience p{font-size:.87rem;margin-top:7px}.services-section,.creative-section{background:var(--soft);border-block:1px solid var(--line)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.service{padding:27px;background:var(--surface);border:1px solid var(--line);box-shadow:3px 3px 0 var(--shadow)}.service-number{display:block;color:var(--purple);font:700 .72rem/1.5 'Courier New',monospace;margin-bottom:17px}.service h3{font-size:1.05rem}.service p{font-size:.91rem;margin-top:13px}.scope-note{font-size:.85rem;margin-top:24px;max-width:790px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.project-card{border:1px solid var(--line);background:var(--surface);box-shadow:4px 4px 0 var(--shadow)}.project-band{height:104px;display:flex;align-items:center;justify-content:space-between;padding:25px 30px;color:var(--blue);background:var(--soft);border-bottom:1px solid var(--line);position:relative;overflow:hidden}.project-band:after{content:'';position:absolute;inset-inline-end:32%;top:23px;width:60px;height:60px;border:1px solid currentColor;transform:rotate(45deg);opacity:.25}.project-index{font:500 .8rem 'Courier New',monospace}.project-symbol{font:700 1.8rem 'Courier New',monospace;letter-spacing:.12em}.band-1,.band-3{color:var(--purple)}.project-content{padding:30px}.project-content .eyebrow{margin-bottom:10px;font-size:.66rem}.project-content h3 a{text-decoration:none}.project-content p{margin-top:14px;font-size:.93rem}.tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:22px}.tags span{font:500 .68rem/1.5 'Courier New',monospace;color:var(--muted);border:1px solid var(--line);padding:4px 8px}.project-status{display:block;color:var(--purple);font-size:.8rem;margin-top:20px}.text-link{display:inline-block;font-size:.86rem;font-weight:600;color:var(--blue);margin-top:15px}.creative-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.creative-card{padding:28px;border:1px solid var(--line);background:var(--surface)}.creative-card p{margin-top:15px;font-size:.93rem}.creative-card .eyebrow{font-size:.65rem}.contact{padding-block:100px;text-align:center;max-width:900px}.contact>p{max-width:640px;margin:22px auto 0}.contact-actions{justify-content:center}.email-row{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:13px;margin-top:27px}.email-address{font:500 .88rem/1.5 'Courier New',monospace}.copy-button{padding:4px 9px;border:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:.73rem}.copy-status{flex-basis:100%;font-size:.78rem;color:var(--purple)}.copy-status:empty{display:none}.social-details{margin-top:30px}.social-details summary{cursor:pointer;display:inline-block;font-size:.85rem;color:var(--muted);text-decoration:underline}.social-list{display:flex;justify-content:center;flex-wrap:wrap;gap:14px 22px;padding-top:23px;font-size:.84rem}.site-footer{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:30px}.footer-brand{font:700 .85rem 'Courier New',monospace;text-decoration:none}.site-footer p{font-size:.78rem;margin-top:8px}.footer-right{display:flex;flex-wrap:wrap;gap:20px;font-size:.77rem;color:var(--muted)}.footer-right a{text-decoration:none}.case-study{padding-block:55px 95px}.back-link{font-size:.86rem;color:var(--blue)}.case-header{max-width:850px;margin-top:50px;margin-bottom:54px}.case-header h1{font-size:clamp(2.5rem,5vw,4.1rem)}.case-header .lead{margin-top:25px}.case-stage{margin-top:20px;color:var(--purple);font-size:.86rem}.case-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:70px}.case-layout section+section{margin-top:40px}.case-layout h2{font-size:1.85rem;margin-bottom:20px}.case-list{padding-inline-start:22px;color:var(--muted)}.case-list li+li{margin-top:14px}.stage-panel{align-self:start;background:var(--soft);border:1px solid var(--line);padding:30px}.stage-panel p{font-size:.94rem}.stage-panel .button{margin-top:25px}.not-found{padding-block:110px;min-height:65vh}.not-found p{margin-top:25px;margin-bottom:30px}[hidden]{display:none!important}[dir=rtl]{font-family:Tahoma,Arial,sans-serif}[dir=rtl] h1,[dir=rtl] h2{font-family:Tahoma,Arial,sans-serif;letter-spacing:0;line-height:1.4}[dir=rtl] h1{font-size:clamp(2.7rem,5vw,4rem)}[dir=rtl] .eyebrow{letter-spacing:0;font-family:Tahoma,Arial,sans-serif}[dir=rtl] .hero-intro{line-height:1.9}
@media(min-width:1400px){.hero{padding-block:100px 95px;gap:80px}}
@media(max-width:1100px){.wrap{width:calc(100% - 56px)}.header-inner{gap:20px}.desktop-nav{gap:16px}.header-controls{gap:10px}.hero{gap:36px}.about-grid{gap:45px}.service-grid{gap:18px}.service{padding:22px}.creative-grid{gap:20px}}
@media(max-width:940px){.desktop-nav{display:none}.header-controls{margin-inline-start:auto}.menu-button{display:flex}.header-inner{min-height:76px}.hero{gap:28px;padding-block:60px}.hero-intro{font-size:1rem}.hero-actions{gap:10px}.button{padding:11px 15px}.service-grid{grid-template-columns:repeat(2,1fr)}.creative-grid{grid-template-columns:1fr}.creative-card{padding:28px}.about-grid{grid-template-columns:1fr;gap:35px}.experience{padding-inline-start:25px}.case-layout{grid-template-columns:1fr;gap:35px}}
@media(max-width:650px){html{scroll-padding-top:96px}.wrap{width:calc(100% - 40px)}.header-inner{min-height:72px;gap:8px}.brand{font-size:.77rem;gap:8px;letter-spacing:.08em}.brand-mark{width:26px;height:28px;clip-path:polygon(4px 0,22px 0,22px 4px,26px 4px,26px 24px,22px 24px,22px 28px,4px 28px,4px 24px,0 24px,0 4px,4px 4px)}.header-controls{gap:8px}.theme-button{padding:6px 9px}.theme-button [data-theme-label]{display:none}.menu-button{padding:6px 8px}.language-switch{font-size:.76rem}.hero{grid-template-columns:1fr;padding-block:48px;gap:36px}.hero-copy h1{font-size:3.1rem}.hero-intro{max-width:100%}.hero-art figcaption{font-size:.65rem}.hero-art{max-width:560px}.chapter-ribbon .wrap{font-size:.56rem;gap:9px;letter-spacing:.04em;flex-wrap:wrap;justify-content:center}.chapter-ribbon .wrap>span:last-child,.chapter-ribbon .wrap>span:nth-last-child(2){display:none}.section{padding-block:58px}.section-heading{margin-bottom:30px}.service-grid,.project-grid{grid-template-columns:1fr;gap:22px}.service{padding:25px}.project-content{padding:25px}.project-band{height:86px}.contact{padding-block:65px}.site-footer{align-items:flex-start;flex-direction:column;gap:20px;padding-block:25px}.footer-right{gap:15px}.case-study{padding-block:35px 60px}.case-header{margin-top:35px;margin-bottom:35px}.case-header h1{font-size:2.5rem}.stage-panel{padding:25px}[dir=rtl] .hero-copy h1{font-size:2.5rem}}
@media(pointer:coarse){.theme-button,.menu-button,.language-switch,.copy-button{min-height:44px}.language-switch{display:inline-flex;align-items:center}.text-link,.social-list a{padding-block:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
