/* Persian typography: native weights, generous leading, no Latin tracking. */
html[lang=fa] body{font-family:Peyda,Tahoma,sans-serif;font-size:18px;font-weight:400;line-height:1.95;font-synthesis:none}
html[lang=fa] h1,html[lang=fa] h2,html[lang=fa] .eyebrow,html[lang=fa] .brand small{letter-spacing:0}
html[lang=fa] button{font-family:Peyda,Tahoma,sans-serif}
html[lang=fa] h1{font-weight:900;font-size:clamp(82px,8vw,116px);line-height:1.15}
html[lang=fa] h2{font-weight:800;line-height:1.55}
html[lang=fa] h3{font-weight:700}
html[lang=fa] .brand small,html[lang=fa] .footer-brand span{font-family:Peyda,Tahoma,sans-serif;letter-spacing:0;font-size:13px}
html[lang=fa] nav{font-size:16px;font-weight:500;gap:36px}
html[lang=fa] .eyebrow{font-size:14px;font-weight:500}
html[lang=fa] .roles{font-size:24px;font-weight:600;line-height:1.8}
html[lang=fa] .intro,html[lang=fa] .muted{font-size:18px}
html[lang=fa] .pill{font-size:16px;font-weight:500}
html[lang=fa] .hero-bottom{font-size:13px;gap:24px}
html[lang=fa] .section-note{font-size:15px}
html[lang=fa] .about-lead{font-size:23px;line-height:2}
html[lang=fa] .stats b{font-weight:600;font-size:48px}
html[lang=fa] .stats span{font-size:14px}
html[lang=fa] .timeline-row .date,html[lang=fa] .timeline-row .job{font-size:16px}
html[lang=fa] .current{font-size:12px}
html[lang=fa] .cap h3{font-size:22px}
html[lang=fa] .cap p{font-size:17px;line-height:2}
html[lang=fa] .tool small{font-size:15px}
html[lang=fa] .tool .learning{font-size:13px}
html[lang=fa] .tools-heading>span{font-size:14px}
html[lang=fa] .work-card h3{font-size:27px}
html[lang=fa] .work-card .card-bottom{font-size:15px}
html[lang=fa] footer{font-size:14px}

html[lang=fa] .empty-work p{font-size:17px}
html[lang=fa] .timeline-row{grid-template-columns:155px 1fr 1.5fr}
/* An original photograph spanning the hero with a directional glass scrim. */
.hero{isolation:isolate;display:flex;align-items:center;min-height:760px;padding:55px 6%;overflow:hidden;gap:0}
.hero-portrait{position:absolute;inset:0 auto 0 0;width:77%;height:100%;z-index:-2;border-radius:0;background:#101110;min-height:0;margin:0}
.hero-portrait img{object-position:50% 29%;object-fit:cover;width:100%;height:100%;filter:none}
.hero-portrait:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 45%,#10111055 73%,#101110 100%),linear-gradient(0deg,#101110 0%,transparent 17%,transparent 88%,#10111055 100%);pointer-events:none}
.hero-copy{position:relative;isolation:isolate;width:52%;padding:35px 0 40px;align-self:center;max-width:660px}
.hero-copy:before{content:"";position:absolute;z-index:-1;inset:-55px -10vw -60px -45px;background:linear-gradient(270deg,#101110fa 6%,#101110e8 43%,#151713ae 73%,#10111012 100%);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);mask-image:linear-gradient(270deg,#000 70%,transparent);pointer-events:none}
.hero .intro{max-width:360px;color:#d7d7ce}
.hero h1{margin-bottom:25px}
.hero .surname{color:#e1c18b}
.hero .hero-bottom{margin-top:48px;color:#c1c2b8}
.photo-caption{bottom:22px;left:28px;right:auto;padding:0;background:none;z-index:1;display:block;text-shadow:0 1px 8px #000}
.photo-caption span:last-child{display:none}
html[lang=en] .hero-portrait{left:auto;right:0}
html[lang=en] .hero-portrait:after{background:linear-gradient(270deg,transparent 45%,#10111055 73%,#101110 100%),linear-gradient(0deg,#101110,transparent 17%)}
html[lang=en] .hero-copy:before{inset:-55px -45px -60px -10vw;background:linear-gradient(90deg,#101110fa 6%,#101110e8 43%,#151713ae 73%,#10111012 100%);mask-image:linear-gradient(90deg,#000 70%,transparent)}
html[lang=en] .photo-caption{left:auto;right:28px}
/* A seamless left-to-right ticker with a user-controlled pause. */
.partners{max-width:1440px;margin:0 auto;border-bottom:1px solid var(--line);padding:28px 0 40px;overflow:hidden}
.partners-heading{display:flex;align-items:center;justify-content:space-between;padding:0 6%;margin-bottom:20px}
.partners-heading p{font-size:14px;color:var(--muted);margin:0}
.partners-heading button{background:none;border:0;border-bottom:1px solid #5c584e;color:var(--muted);font-size:13px;padding:0 0 2px}
.partners-window{direction:ltr;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.partners-track{display:flex;width:max-content;animation:partners-ltr 48s linear infinite;will-change:transform}
.partners-group{display:flex;align-items:center;flex:none;gap:44px;padding-inline-end:44px}
.partner-name{font:500 clamp(22px,2.3vw,32px)/1.4 Arial,sans-serif;letter-spacing:1px;color:#d1d0c6;white-space:nowrap}
.partner-separator{font-size:12px;color:var(--accent);opacity:.65}
.partners-track.paused,.partners-window:hover .partners-track{animation-play-state:paused}
@keyframes partners-ltr{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@media(max-width:900px){.hero{min-height:690px}.hero-copy{width:57%}.hero-portrait{width:86%}html[lang=fa] h1{font-size:88px}html[lang=fa] .roles{font-size:21px}html[lang=fa] .about-lead{font-size:20px}html[lang=fa] .timeline-row{grid-template-columns:135px 1fr 1.5fr}}
@media(max-width:600px){
.hero{min-height:800px;display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;padding:0 7% 32px}
.hero-portrait,html[lang=en] .hero-portrait{inset:0 0 auto;width:100%;height:660px;margin:0}
.hero-portrait img{object-position:50% 23%}
.hero-portrait:after,html[lang=en] .hero-portrait:after{background:linear-gradient(0deg,#101110 0%,#10111000 40%,#10111000 90%,#10111033 100%)}
.hero-copy{width:100%;max-width:none;padding:26px 0 0;align-self:auto;margin-top:350px}
.hero-copy:before,html[lang=en] .hero-copy:before{inset:-28px -10vw -45px;background:linear-gradient(0deg,#101110 8%,#101110e6 45%,#10111082 80%,transparent 100%);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);mask-image:linear-gradient(0deg,#000 62%,transparent 100%)}
.hero-copy .eyebrow{margin-bottom:14px}
html[lang=fa] h1{font-size:clamp(60px,17vw,86px);line-height:1.3;margin:0 0 8px;white-space:nowrap}
html[lang=fa] h1 span{display:inline}html[lang=fa] h1 .surname{margin-inline-start:10px}
html[lang=fa] .roles{font-size:19px;margin:5px 0 10px}
html[lang=fa] .intro{font-size:16px;max-width:290px;margin-bottom:10px}
.hero .pill{margin-top:13px}.hero .photo-caption{display:none}
html[lang=en] h1{font-size:51px;line-height:1.05;margin:0 0 18px}
html[lang=en] .hero-copy .roles{font-size:14px;line-height:1.7}
.partners{padding:24px 0 30px}.partners-heading{margin-bottom:21px}.partners-group{gap:27px;padding-inline-end:27px}.partner-name{font-size:23px}.partners-heading button{font-size:12px}
html[lang=fa] h2{font-size:33px}html[lang=fa] .section-note{font-size:14px}
html[lang=fa] .eyebrow{font-size:13px}html[lang=fa] .about-lead{font-size:20px}
html[lang=fa] .muted{font-size:17px}html[lang=fa] .stats span{font-size:12px}
html[lang=fa] .timeline-row{grid-template-columns:105px 1fr;gap:6px 16px}
html[lang=fa] .timeline-row .date{font-size:14px}html[lang=fa] .timeline-row .job{font-size:15px}
html[lang=fa] .cap h3{font-size:20px}html[lang=fa] .cap p{font-size:16px}
html[lang=fa] .work-card h3{font-size:27px}html[lang=fa] .contact h2{font-size:46px}
html[lang=fa] footer>span{font-size:12px}
}
@media(prefers-reduced-motion:reduce){.partners-track{animation:none;transform:none}.partners-window{overflow-x:auto;mask-image:none;padding-inline:6%}.partners-group[aria-hidden=true]{display:none}#pausePartners{display:none}}

/* Specialties are editorial lists, not selectable filters. */
.specialty-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:42px;row-gap:13px;list-style:disc outside;margin:26px 0 12px;padding-inline-start:24px;color:var(--fg);font-size:16px;line-height:1.8;text-align:start}
.specialty-list[hidden]{display:none}
.specialty-list li{padding-inline-start:5px}
.specialty-list li::marker{color:var(--accent);font-size:.75em}
html[lang=fa] .specialty-list{font-family:Peyda,Tahoma,sans-serif;font-size:19px;line-height:1.9}
@media(max-width:600px){.specialty-list{grid-template-columns:1fr;row-gap:10px;margin-top:22px}html[lang=fa] .specialty-list{font-size:18px}}

/* Selectable editorial bullets retain a plain list appearance. */
.specialty-list li::marker{color:#777b70;transition:color .2s}
.specialty-list li.selected::marker{color:var(--accent)}
.specialty-list button{display:inline;background:none;border:0;border-radius:0;padding:3px 0;color:var(--muted);font:inherit;text-align:start;line-height:inherit;transition:color .2s;text-underline-offset:6px}
.specialty-list button:hover{color:var(--fg)}
.specialty-list button[aria-pressed=true]{color:var(--accent);font-weight:700;text-decoration:underline;text-decoration-thickness:1px}
.portfolio-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:32px}
.portfolio-results[hidden],.empty-work[hidden]{display:none}
.portfolio-results img{display:block;width:100%;height:auto}
.portfolio-results h3{font-size:18px;margin:12px 0}
@media(max-width:600px){.portfolio-results{grid-template-columns:1fr}}

.project-preview{position:relative;display:block;width:100%;padding:0;border:1px solid #38392f;background:#20211c;overflow:hidden;cursor:zoom-in;text-align:inherit}
.portfolio-results .project-preview img{display:block;width:100%;height:auto;object-fit:contain;transition:filter .25s}
.preview-hint{position:absolute;bottom:14px;inset-inline-end:14px;background:#101110dc;backdrop-filter:blur(10px);border:1px solid #d3b47b66;border-radius:24px;padding:5px 14px;color:#eee7da;font-size:14px}
.project-preview:hover img{filter:brightness(1.06)}
#artwork{width:96vw;max-width:1200px;max-height:96vh;padding:0;border:1px solid #484236;background:#101110;overflow:auto}
#artwork::backdrop{background:#000e;backdrop-filter:blur(14px)}
.artwork-toolbar{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 24px;background:#101110f5;border-bottom:1px solid var(--line)}
#artworkTitle{font-size:20px;line-height:1.6;letter-spacing:0}
#closeArtwork{background:none;border:0;font-size:32px;line-height:1;width:44px;height:44px;flex:none}
#artworkImage{display:block;max-width:100%;width:auto;height:auto;max-height:calc(96vh - 85px);object-fit:contain;margin:0 auto}
@media(max-width:600px){.artwork-toolbar{padding:10px 14px}html[lang=fa] #artworkTitle{font-size:18px}.preview-hint{font-size:13px}#artworkImage{max-height:none;width:100%;height:auto}}

/* Quiet geometric echoes of lens rings and viewfinder focus guides. */
body{isolation:isolate}
.photo-atmosphere{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;user-select:none;contain:strict;color:var(--accent)}
.optical-rings{position:absolute;width:440px;height:440px;left:-255px;top:16%;opacity:.11;animation:optical-drift 32s ease-in-out infinite alternate}
.optical-rings i{position:absolute;inset:0;border:1px solid currentColor;border-radius:50%}
.optical-rings i:nth-child(2){inset:25px;opacity:.7}
.optical-rings i:nth-child(3){inset:58px;border-style:dashed;border-width:1px;opacity:.65;animation:optical-turn 100s linear infinite}
.focus-corners{position:absolute;right:3%;top:55%;width:86px;height:64px;opacity:.10;animation:focus-drift 24s ease-in-out infinite alternate}
.focus-corners i{position:absolute;width:15px;height:15px;border:0 solid currentColor}
.focus-corners i:nth-child(1){top:0;left:0;border-top-width:1px;border-left-width:1px}
.focus-corners i:nth-child(2){top:0;right:0;border-top-width:1px;border-right-width:1px}
.focus-corners i:nth-child(3){bottom:0;left:0;border-bottom-width:1px;border-left-width:1px}
.focus-corners i:nth-child(4){bottom:0;right:0;border-bottom-width:1px;border-right-width:1px}
.optical-arc{position:absolute;bottom:-200px;right:9%;width:300px;height:300px;border:1px solid currentColor;border-radius:50%;opacity:.07;animation:optical-drift 38s ease-in-out infinite alternate-reverse}
@keyframes optical-drift{from{transform:translate3d(0,0,0)}to{transform:translate3d(16px,24px,0)}}
@keyframes optical-turn{to{transform:rotate(360deg)}}
@keyframes focus-drift{from{transform:translate3d(0,0,0);opacity:.07}to{transform:translate3d(-8px,-18px,0);opacity:.12}}
@media(max-width:600px){.optical-rings{width:290px;height:290px;left:-220px;opacity:.08}.focus-corners{right:-10px;width:55px;height:45px;opacity:.06}.optical-arc{display:none}}
@media(prefers-reduced-motion:reduce){.photo-atmosphere,.photo-atmosphere *{animation:none!important}}
html.page-idle .photo-atmosphere *{animation-play-state:paused}

/* Slightly stronger accents and one floating Lucide camera outline. */
.optical-rings{opacity:.20}
.optical-arc{opacity:.13}
.focus-corners{opacity:.18}
@keyframes focus-drift{from{transform:translate3d(0,0,0);opacity:.14}to{transform:translate3d(-8px,-18px,0);opacity:.22}}
.floating-camera{position:absolute;left:4%;top:66%;width:92px;height:92px;color:var(--accent);opacity:.24;transform:rotate(-12deg);animation:camera-float 19s ease-in-out infinite}
.floating-camera svg{display:block;width:100%;height:100%}
@keyframes camera-float{0%,100%{transform:translate3d(0,0,0) rotate(-12deg)}50%{transform:translate3d(16px,-27px,0) rotate(4deg)}}
@media(max-width:600px){.optical-rings{opacity:.14}.focus-corners{opacity:.12}.floating-camera{left:2%;top:74%;width:56px;height:56px;opacity:.16}}
@media(prefers-reduced-motion:reduce){.floating-camera{animation:none;transform:rotate(-8deg)}}

/* The supplied Zhooca monogram replaces the temporary brand initial. */
.brand .zhooca-mark{display:block;width:50px;height:56px;object-fit:contain;flex:none}
.footer-brand{display:inline-flex;align-items:center;gap:14px}
.footer-brand .zhooca-mark{display:block;width:48px;height:54px;object-fit:contain}
.footer-brand .footer-wordmark{margin:0;font:bold 27px/1.1 Arial,sans-serif;color:var(--fg)}
.footer-wordmark small{display:block;font:14px/1.8 Peyda,Tahoma,sans-serif;color:var(--accent);text-align:start;margin-top:3px}
@media(max-width:600px){.brand .zhooca-mark{width:42px;height:47px}.footer-brand .zhooca-mark{width:40px;height:45px}}

.motion-off *, .motion-off *::before,.motion-off *::after{animation:none!important;transition:none!important}.motion-off .reveal{opacity:1;transform:none}.preview-banner{position:sticky;top:0;z-index:100;background:#d3b47b;color:#151710;padding:10px;text-align:center;font:16px Peyda,Tahoma,sans-serif}#artworkVideo{max-width:100%;width:100%;max-height:80vh}#artworkVideo[hidden],#artworkImage[hidden]{display:none}

/* Restrained Persian hero heading. */
html[lang=fa] .hero h1{font-family:Peyda,Tahoma,sans-serif;font-weight:600;font-synthesis:none;font-size:clamp(64px,7vw,98px);line-height:1.35;letter-spacing:0;white-space:normal}
html[lang=fa] .hero h1 span{font-weight:600}
@media(max-width:900px){html[lang=fa] .hero h1{font-size:78px}}
@media(max-width:600px){html[lang=fa] .hero h1{font-size:clamp(48px,13vw,70px);line-height:1.45;white-space:normal}html[lang=fa] .hero h1 span{display:inline}html[lang=fa] .hero h1 .surname{margin-inline-start:10px}}
