:root{--bg-primary:#323544;--bg-deep:#232733;--bg-card:#454958;--bg-card-dark:#1f2330;--accent:#ffae21;--accent-hover:#ffba43;--text-primary:#f5f5f7;--text-secondary:#b7bac4;--text-muted:#858995;--divider:#ffffff17;--shadow-border:0 0 0 1px #ffffff14;--shadow-border-hover:0 0 0 1px #ffffff24;--container:1220px;--section-space:clamp(5rem, 10vw, 8.75rem);--ease-out:cubic-bezier(.22, 1, .36, 1);color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Segoe UI,Tahoma,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg-primary);scroll-padding-top:6rem;overflow-x:clip}body{background:var(--bg-primary);min-width:320px;color:var(--text-primary);margin:0;font-size:1rem;line-height:1.75;overflow-x:hidden}body::selection{color:var(--bg-deep);background:var(--accent)}img,svg{display:block}img{max-width:100%}a{color:inherit;text-decoration:none}button,summary,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}h1,h2,h3,p{margin-block-start:0}h1,h2,h3{text-wrap:balance}p,li,blockquote{text-wrap:pretty}.container{width:min(calc(100% - 3rem), var(--container));margin-inline:auto}.skip-link{z-index:1000;background:var(--accent);color:var(--bg-deep);padding:.65rem 1rem;font-weight:700;transition-property:transform;transition-duration:.18s;transition-timing-function:ease-out;position:fixed;inset-block-start:1rem;inset-inline-start:1rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:50;padding-block:1.5rem;position:absolute;inset:0 0 auto}.header-inner,.desktop-nav,.brand,.language-links,.social-links,.project-card-copy,.project-meta,.footer-bottom{align-items:center;display:flex}.header-inner{justify-content:space-between;gap:2rem}.brand{letter-spacing:-.02em;gap:.8rem;min-height:44px;font-weight:700}.brand>span:first-child,.footer-mark{background:var(--accent);width:2.65rem;height:2.65rem;color:var(--bg-deep);letter-spacing:-.05em;place-items:center;font-size:.82rem;font-weight:800;display:grid}.brand-name{font-size:.9rem}.desktop-nav{gap:clamp(1.2rem,3vw,2.5rem)}.desktop-nav>a{min-height:44px;color:var(--text-secondary);place-items:center;font-size:.88rem;font-weight:650;transition-property:color;transition-duration:.18s;transition-timing-function:ease-out;display:grid;position:relative}.desktop-nav>a:after{background:var(--accent);content:"";width:0;height:2px;transition-property:width;transition-duration:.2s;transition-timing-function:var(--ease-out);position:absolute;inset-block-end:6px;inset-inline-start:0}.desktop-nav>a:hover,.desktop-nav>a:focus-visible{color:var(--text-primary)}.desktop-nav>a:hover:after{width:100%}.language-links{gap:.2rem}.language-links a{min-width:44px;min-height:44px;color:var(--text-muted);place-items:center;padding-inline:.55rem;font-size:.75rem;font-weight:700;transition-property:color,background-color;transition-duration:.18s;transition-timing-function:ease-out;display:grid}.language-links a:hover,.language-links a[aria-current=page]{color:var(--text-primary);background:#ffffff0f}.mobile-nav{display:none;position:relative}.mobile-nav summary{cursor:pointer;place-items:center;width:44px;height:44px;list-style:none;display:grid}.menu-label{display:none}.mobile-nav summary::-webkit-details-marker{display:none}.menu-icon{width:24px;height:16px;position:relative}.menu-icon i{height:1.5px;transition-property:transform,inset-block-start;transition-duration:.2s;transition-timing-function:var(--ease-out);background:currentColor;position:absolute;inset-inline:0}.menu-icon i:first-child{inset-block-start:3px}.menu-icon i:last-child{inset-block-start:12px}.mobile-nav[open] .menu-icon i:first-child{inset-block-start:8px;transform:rotate(45deg)}.mobile-nav[open] .menu-icon i:last-child{inset-block-start:8px;transform:rotate(-45deg)}.mobile-nav-panel{inset-block-start:calc(100% + .75rem);background:var(--bg-deep);width:min(82vw,20rem);max-width:calc(100vw - 2.5rem);padding:1rem;position:absolute;left:auto;right:0;box-shadow:0 0 0 1px #ffffff1a,0 1.5rem 4rem #00000059}.mobile-nav-panel>a{border-bottom:1px solid var(--divider);align-items:center;min-height:48px;font-size:1.2rem;font-weight:650;display:flex}.mobile-nav-panel .language-links{justify-content:flex-start;margin-block-start:.75rem}.section-label{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:.75rem;margin-block-end:1.35rem;font-size:.75rem;font-weight:750;line-height:1.4;display:flex}.section-label>span{background:currentColor;width:1.8rem;height:1px}.section-label--light{color:var(--bg-deep)}.social-links{flex-wrap:wrap;gap:.75rem}.social-links a{min-height:44px;color:var(--text-secondary);box-shadow:var(--shadow-border);align-items:center;gap:.65rem;padding:.55rem .8rem .55rem .9rem;font-size:.82rem;font-weight:650;transition-property:color,box-shadow,scale;transition-duration:.16s;transition-timing-function:ease-out;display:inline-flex}.social-links a:hover{color:var(--accent);box-shadow:var(--shadow-border-hover)}.social-links a:active{scale:.96}.social-links--compact a{justify-content:center;width:44px;padding:0}.reveal{transition-property:opacity,transform,filter;transition-duration:.62s;transition-delay:var(--reveal-delay,0s);transition-timing-function:var(--ease-out)}.js .reveal:not(.is-visible){opacity:0;filter:blur(4px);transform:translateY(24px)}.project-visual{aspect-ratio:4/3.15;background:var(--bg-card-dark);outline-offset:-1px;outline:1px solid #ffffff1a;margin:0;position:relative;overflow:hidden}.project-visual img{object-fit:cover;outline-offset:-1px;outline:1px solid #ffffff1a;width:100%;height:100%}.project-visual--khalawat{background:#15130f}.project-visual--khalawat img{object-fit:contain}.project-card{break-inside:avoid}.project-card-link{display:block}.project-card .project-visual{transition-property:transform,box-shadow;transition-duration:.38s;transition-timing-function:var(--ease-out)}.project-card:hover .project-visual{box-shadow:var(--shadow-border-hover);transform:translateY(-6px)}.project-card-copy{justify-content:space-between;gap:1rem;margin-block-start:1.5rem}.project-card-copy p,.project-meta,.project-summary{color:var(--text-secondary)}.project-card-copy p{margin-block-end:.25rem;font-size:.75rem}.project-card h3{letter-spacing:-.045em;margin:0;font-size:clamp(1.6rem,3vw,2.35rem);line-height:1.1;transition-property:color;transition-duration:.18s;transition-timing-function:ease-out}.project-card:hover h3{color:var(--accent)}.project-arrow{color:var(--accent);font-size:1.5rem;transition-property:transform;transition-duration:.18s;transition-timing-function:ease-out}.project-card:hover .project-arrow{transform:translate(4px,-4px)}[dir=rtl] .project-card:hover .project-arrow{transform:translate(-4px,-4px)}.project-summary{max-width:38rem;margin:.8rem 0 0;font-size:.92rem;line-height:1.65}.project-meta{border-top:1px solid var(--divider);justify-content:space-between;gap:1rem;margin-block-start:1rem;padding-block-start:.85rem;font-size:.72rem}.project-meta span:last-child{color:var(--accent)}.site-footer{padding-block:var(--section-space) 2rem;background:var(--bg-deep)}.footer-inner>h2{letter-spacing:-.065em;max-width:12ch;margin-block-end:1.2rem;font-size:clamp(3rem,8vw,7rem);line-height:.95}.footer-inner>p{max-width:35rem;color:var(--text-secondary);margin-block-end:2rem}.footer-bottom{border-top:1px solid var(--divider);color:var(--text-muted);justify-content:space-between;gap:1rem;margin-block-start:clamp(5rem,12vw,10rem);padding-block-start:1.5rem;font-size:.75rem}@media (width<=920px){.desktop-nav{display:none}.mobile-nav{display:block}[dir=rtl] .header-inner{direction:ltr}[dir=rtl] .mobile-nav-panel{direction:rtl}}@media (width<=700px){.container{width:min(calc(100% - 2.5rem), var(--container))}.brand-name{display:none}.site-header{padding-block:1rem}.footer-bottom{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.js .reveal:not(.is-visible){opacity:1;filter:none;transform:none}}
