/* Atelier: open editorial composition. No panel/card layout. */
:root{color-scheme:dark;--paper:#111310;--ink:#eeede6;--dim:#b2b2a8;--gold:#c4ab78;--line:#ffffff24;--acid:var(--gold);--soft:#191b17}
html[data-theme=light]{color-scheme:light;--paper:#f5f3ed;--ink:#242720;--dim:#60655c;--gold:#80632e;--line:#24272028;--soft:#eae8df}
*{box-sizing:border-box;min-width:0}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.85 Tajawal,Arial,sans-serif}
img{display:block;max-width:100%;height:auto}
figure{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:2px solid var(--gold);outline-offset:6px}
[hidden]{display:none!important}
.shell{width:calc(100% - 96px);max-width:1280px;margin-inline:auto}
.section{padding:120px 0}.tag{color:var(--gold);font-size:.875rem;letter-spacing:.1em}.muted{color:var(--dim)}
h1,h2,h3,h4,p{overflow-wrap:break-word}h2,h3,h4{font-weight:500}
[dir=rtl] h2,[dir=rtl] h3{letter-spacing:0;line-height:1.45}
.nav{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px max(24px,calc((100vw - 1280px)/2));background:var(--paper);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:18px}.brand-mark{color:var(--gold);font:italic 48px/.8 Georgia,serif}.brand>span:last-child{font-size:.75rem;letter-spacing:.2em}
.navlinks{display:flex;align-items:center;gap:20px}.navlinks a{font-size:.875rem}.navlinks a:hover{color:var(--gold)}
.switch{background:none;border:0;color:var(--ink);min-width:44px;min-height:44px;padding:6px}.menu-toggle{display:none}
.mobile-nav{position:fixed;inset:78px 0 auto;z-index:19;padding:22px 28px;background:var(--paper);box-shadow:0 20px 35px #0002;max-height:75svh;overflow:auto}
.mobile-nav a{display:block;font-size:1.2rem;padding:8px 0;border-bottom:1px solid var(--line)}
.hero{position:relative;isolation:isolate;background:#111310 url(hero-atmosphere.webp) center/cover no-repeat;color:#f4f0e5;min-height:88svh;display:flex;align-items:center;padding:100px 0 30px}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#10120f35 30%,#10120fc9);z-index:-1}
.hero-layout{display:block}.hero-copy{width:65%;margin-left:auto;padding:40px 0 80px}.hero-role{color:#ccb88e;margin:0 0 45px;font-size:.95rem}
.availability{font-size:.875rem;color:#ddd9ce;margin-bottom:30px}.availability i{display:none}
.hero h1{direction:ltr;text-align:start;font:400 clamp(60px,8.2vw,120px)/.93 Georgia,serif;letter-spacing:-.065em;margin:0}
[dir=rtl] .hero h1{text-align:right}.hero h1 small{display:block;font:400 .25em/1.4 Tajawal,sans-serif;letter-spacing:.28em;margin-top:20px}
.hero-desc{max-width:580px;font-size:1.15rem;line-height:1.9;margin:30px 0;color:#e1ded4}
.actions{display:flex;flex-wrap:wrap;gap:28px;align-items:center;margin-top:26px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:7px 0;border:0;border-bottom:1px solid var(--gold);font-size:1rem;color:var(--ink);background:none}
.hero .btn{color:#f4f0e5;border-color:#c4ab78}.btn:hover{color:var(--gold)}
.metrics{display:flex;justify-content:space-between;flex-wrap:wrap;gap:30px;padding:32px 0;border-top:1px solid #ffffff30}
.metric{display:flex;gap:18px;align-items:center}.metric b{font:400 2.5rem/1.3 Georgia,serif;color:#c4ab78}.metric span{font-size:.875rem;max-width:130px;color:#dedbcf}
.section-head{display:flex;gap:24px;align-items:flex-start;margin-bottom:65px}.section-no{font:italic 22px/1.8 Georgia,serif;color:var(--gold);padding-top:8px}
.section-title{max-width:950px}.section-title h2{font-size:clamp(36px,4.5vw,68px);line-height:1.18;margin:12px 0 20px;letter-spacing:-.03em}
.section-title p{color:var(--dim);max-width:650px;margin:0}
.services-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.services-intro{position:sticky;top:120px}
.services-art{overflow:hidden;clip-path:ellipse(49% 50% at 50% 50%);aspect-ratio:1/.95}
.services-art img{width:100%;height:100%;object-fit:cover}
.services-copy{padding:25px 16px 0}.services-copy h3{font-size:1.8rem;margin:0 0 10px}.services-copy p{color:var(--dim);font-size:1rem;margin:0}
.service{border-bottom:1px solid var(--line)}
.service summary{list-style:none;display:flex;gap:20px;align-items:center;padding:20px 0;cursor:pointer;font-size:1.3rem}
.service summary::-webkit-details-marker{display:none}.service-index{font:italic .875rem Georgia,serif;color:var(--gold)}
.service .plus{margin-inline-start:auto;color:var(--gold);font-size:1.5rem}.service[open] .plus{transform:rotate(45deg)}
.service p{margin:0;padding:0 35px 24px;color:var(--dim);font-size:1rem}
.manifesto{display:grid;grid-template-columns:.8fr 1.2fr;gap:20px 90px;align-items:center}
.hero-image{grid-row:span 2}.hero-image figure{position:relative}
.hero-image img{width:100%;max-height:590px;object-fit:cover;border-radius:46% 46% 0 0}
.hero-label{padding-top:15px;color:var(--dim);font-size:.875rem}.hero-label b{display:block;font-weight:500;color:var(--ink);font-size:1.25rem}.hero-label span{letter-spacing:.06em}
.manifesto h2{font-size:clamp(32px,3.5vw,54px);line-height:1.4;margin:0}.manifesto-copy{font-size:1.18rem;color:var(--dim);margin:0}.manifesto-copy strong{font-weight:500;color:var(--ink)}
.skill-strip{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.skill-strip span{font-size:.75rem;color:var(--gold);letter-spacing:.08em}
.gallery{display:grid;grid-template-columns:1fr 1fr;gap:85px 70px;align-items:start}
.work:nth-child(even){margin-top:100px}.work img{width:100%;height:400px;object-fit:contain;background:var(--soft)}
.work figcaption{padding:18px 0;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.work b{font-size:1.15rem;font-weight:500}.work span{font-size:.8rem;color:var(--dim)}
.sites{border-top:1px solid var(--line)}
.site{display:grid;grid-template-columns:40px 1fr auto 24px;gap:24px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}
.site h3{font-size:clamp(21px,2.5vw,34px);margin:0}.site small,.project-index{font-size:.875rem;color:var(--dim)}
.site:hover h3,.site:hover>span:last-child{color:var(--gold)}
.games{display:block}.game-main{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center}.game-main img{width:100%;height:auto;object-fit:contain}
.game-body h3{font-size:2.4rem;line-height:1.45;margin:15px 0}.game-body .tag{font-size:.8rem}
.game-stack{display:flex;gap:45px;margin-top:80px}.game-small{flex:1}.game-small img{width:100%;height:200px;object-fit:contain}.game-small>div{padding-top:20px}.game-small h4{font-size:1.3rem;margin:10px 0}.textlink{color:var(--gold);text-decoration:underline;text-underline-offset:6px}
.career{display:grid;grid-template-columns:180px 1fr 1fr;gap:35px;align-items:baseline;border-bottom:1px solid var(--line);padding:24px 0}
.career time{font-size:1rem;color:var(--gold)}.career h3{margin:0;font-size:1.2rem}.career p{margin:0;color:var(--dim);font-size:1rem}
.clients{display:flex;flex-wrap:wrap;justify-content:center;gap:32px 48px;padding:30px 0}.clients span{font-size:1.2rem;font-weight:500;color:var(--dim)}
#contact{background:#111310 url(closing-atmosphere.webp) center/cover no-repeat;color:#f4f0e5}
.contact{display:block;text-align:center;max-width:1050px}.contact .tag{color:#c4ab78}
.contact-copy h2{font-size:clamp(55px,8vw,120px);line-height:1.35;font-weight:400;margin:25px 0 55px}
.contact-links{display:flex;justify-content:center;flex-wrap:wrap;gap:25px 45px}.contact-links a{display:flex;align-items:center;gap:12px;min-height:48px;font-size:1.1rem;border-bottom:1px solid #c4ab7880}
footer{padding:40px 0 70px}.foot{display:flex;justify-content:space-between;gap:20px;color:var(--dim);font-size:.875rem}.foot b{font-weight:500}
.float.up{position:fixed;right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--paper);color:var(--ink);z-index:15;opacity:0;pointer-events:none}.float.up.show{opacity:1;pointer-events:auto}
@media(max-width:1000px){.navlinks>a{display:none}.menu-toggle{display:block}.hero-copy{width:75%}.services-layout{gap:40px}.manifesto{gap:25px 40px}.gallery{gap:55px 30px}.game-main{gap:35px}.career{grid-template-columns:140px 1fr}.career p{grid-column:2}.section{padding:85px 0}}
@media(max-width:650px){.shell{width:calc(100% - 40px)}.nav{padding:10px 18px;gap:8px}.brand>span:last-child{display:none}.navlinks{gap:4px}.brand-mark{font-size:42px}.switch{font-size:.875rem}.hero{padding:65px 0 20px;min-height:0;background-position:30% center}.hero:before{background:#10120f91}.hero-copy{width:100%;padding:35px 0 65px}.hero-role{margin-bottom:26px}.hero h1{font-size:clamp(55px,16vw,100px)}.hero-desc{font-size:1.05rem}.actions{gap:22px}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:26px 16px}.metric{display:block}.metric b{font-size:2rem}.metric span{display:block;font-size:.8rem}.section{padding:70px 0}.section-head{gap:16px;margin-bottom:35px}.section-title h2{font-size:2.2rem}.section-no{font-size:18px}.services-layout{display:block}.services-intro{position:static;margin-bottom:30px}.services-art{aspect-ratio:1.2}.services-copy{padding-inline:0}.service summary{font-size:1.2rem;padding:18px 0}.service p{padding-inline:0}.manifesto{display:flex;flex-direction:column;align-items:stretch;gap:30px}.hero-image{max-width:360px;align-self:center}.manifesto h2{font-size:2rem}.gallery{display:block}.work{margin:0 0 40px!important}.work img{height:auto;max-height:480px;object-fit:contain}.site{grid-template-columns:25px 1fr 20px;gap:12px;padding:20px 0}.site small{grid-column:2;grid-row:2}.site>span:last-child{grid-column:3;grid-row:1}.game-main{display:block}.game-body{padding-top:20px}.game-body h3{font-size:2rem}.game-stack{display:block;margin-top:45px}.game-small{display:grid;grid-template-columns:100px 1fr;gap:20px;margin-bottom:32px}.game-small img{height:140px}.game-small>div{padding:0}.game-small h4{font-size:1.15rem}.career{display:block}.career h3{margin:8px 0}.clients{gap:20px}.clients span{font-size:1rem}.contact-copy h2{font-size:3.7rem}.contact-links{flex-direction:column;align-items:center;gap:16px}.contact-links a{font-size:1rem;overflow-wrap:anywhere}.foot{display:block}.foot>div+div{margin-top:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
