/* Studio Irth — a single responsive system for English and Arabic. */
:root{--ink:#281820;--wine:#761b34;--paper:#fcfaf9;--line:#d8cbd1;--muted:#665560;--soft:#eee5e8;--dark:#28131f;--rose:#e8bdcc;--font:'Poppins','Tajawal',sans-serif;--gutter:max(clamp(20px,4vw,64px),calc((100vw - 1600px)/2));--section-space:clamp(56px,6vw,88px)}

:lang(en){--font:'Poppins','Tajawal',sans-serif}
:lang(ar){--font:'Tajawal','Poppins',sans-serif}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:115px}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1rem/1.75 var(--font);-webkit-font-smoothing:antialiased}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-weight:500;line-height:1.2;letter-spacing:-.035em;text-wrap:balance;overflow-wrap:break-word}
h2{font-size:clamp(2.25rem,4vw,3.75rem)}
h2 em{font-weight:400;color:var(--wine)}
a{color:inherit;text-decoration:none}
button,select{font:inherit;color:inherit}
button,summary,select{cursor:pointer}
button,a,summary,select{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid #a82f57;outline-offset:5px}
main:focus{outline:none}
[hidden]{display:none!important}
::selection{background:var(--wine);color:#fff}
img{max-width:100%}
main,section,article,nav,.section-top>*,.manifesto-copy,.about-copy,.about-label,.skill-group,.media-card,.media-link>*,.start-grid>*{min-width:0}
p,li,.archive-name{overflow-wrap:break-word}
[lang]{font-family:var(--font)}
.section{padding:var(--section-space) var(--gutter)}
.section-top{margin-bottom:36px}
.section-top .eyebrow{display:block;margin-bottom:18px}
.section-top>p,.section-top>div+p{font-size:1rem;line-height:1.8;color:var(--muted);max-width:35rem}
.eyebrow{font-size:.75rem;letter-spacing:.09em;font-weight:600;line-height:1.6}
.small{font-size:.8125rem}
.text-link,.quiet-link{display:inline-block;font-size:.875rem;font-weight:500;text-decoration:underline;text-underline-offset:6px;text-decoration-color:#ad8394;text-decoration-thickness:1px;min-height:44px;padding-block:10px}
.text-link:hover,.quiet-link:hover{text-decoration-color:currentColor}
.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:13px 23px;border-radius:28px;font-size:.875rem;font-weight:500;border:1px solid transparent;transition:background .2s,transform .2s}
.button:hover{transform:translateY(-2px)}
.dark{background:var(--dark);color:white}
.dark:hover{background:var(--wine)}
.light{background:var(--wine);color:#fff}
.light:hover{background:var(--dark)}

.skip{position:fixed;top:-100px;inset-inline-start:20px;z-index:100;background:white;padding:12px 20px}
.skip:focus{top:12px}
.reading-progress{position:fixed;inset:0 0 auto;height:3px;background:#bd3656;transform:scaleX(0);transform-origin:left;z-index:80;pointer-events:none}
.brand-filters{position:absolute;overflow:hidden;pointer-events:none}
.brand{display:inline-flex;flex-shrink:0;line-height:1;direction:ltr}
.logo-crop{position:relative;display:block;width:58px;aspect-ratio:950/1020;overflow:hidden}
.logo-crop img{position:absolute;display:block;width:168.421%;height:auto;max-width:none;left:-31.579%;top:-28.431%}
header .logo-crop img{filter:url(#logo-burgundy)}
header .brand{justify-self:start}
footer .logo-crop img,.manifesto-card .logo-crop img{filter:url(#logo-rose)}

header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:88px;padding:12px var(--gutter);background:var(--paper);border-bottom:1px solid #dbd2d480}
nav{display:flex;gap:clamp(20px,2.5vw,36px);align-items:center}
nav a{display:flex;align-items:center;min-height:44px;font-size:.875rem;font-weight:500}
nav a:hover{color:var(--wine);text-decoration:underline;text-underline-offset:7px}
.nav-contact{color:var(--wine)}
#language{min-height:44px;min-width:88px;padding:8px 15px;border:1px solid var(--line);border-radius:24px;background:transparent;font-size:.875rem}
#language:hover{background:var(--soft)}

/* Real, independent panels: RTL swaps their order, never the artwork itself. */
.hero{padding-top:24px}
.hero-stage{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));min-height:clamp(500px,40vw,580px);margin:0 var(--gutter) 24px;overflow:hidden;border:1px solid #dfc5c8;border-radius:18px;background:#f0e0df}
.hero-stage .art{position:relative;grid-column:2;grid-row:1;overflow:hidden;min-width:0;min-height:100%;background:#4a1825;direction:ltr}
.hero-stage .art>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .8s ease-out;animation:hero-settle 1.2s ease-out both}
.hero-copy{grid-column:1;grid-row:1;min-width:0;display:flex;flex-direction:column;justify-content:center;padding:clamp(28px,4vw,64px);text-align:start}
.hero-copy .eyebrow{font-size:.75rem;letter-spacing:.04em}
.hero h1{font-size:clamp(3.2rem,5.7vw,5.5rem);line-height:1.08;letter-spacing:-.05em;margin:24px 0}
.hero h1 em{font-weight:400;color:var(--wine)}
.hero .lead{font-size:1rem;line-height:1.8;color:#412c35;max-width:27rem;margin-bottom:26px;text-wrap:pretty}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 24px}
.hero-bottom{display:flex;align-items:center;justify-content:center;gap:24px;padding:18px var(--gutter);background:var(--dark);color:#f5e7ed;font-size:.875rem;text-align:center}
.hero-bottom .cross{font-size:25px;line-height:1;color:#d995b0}

/* Manifesto */
.manifesto{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr);align-items:center;gap:8%}
.manifesto-side>.eyebrow{display:block;color:var(--muted);margin-bottom:27px}
.manifesto-card{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:24px;padding:28px;background:var(--dark);color:var(--rose);min-height:340px;border-radius:12px}
.manifesto-card:before{content:'';position:absolute;inset:12px;border:1px solid #e8bdcc22;pointer-events:none}
.manifesto-card-label{display:flex;align-items:baseline;justify-content:space-between;gap:16px;font-size:.875rem;line-height:1.5}
.manifesto-card-label>span:last-child{font:400 .75rem 'Poppins',sans-serif;color:#c6a4b2}
.manifesto-card .logo-crop{width:clamp(130px,12vw,185px);align-self:center;animation:mark-breathe 8s ease-in-out infinite}
.manifesto-title{font-size:clamp(2rem,3.5vw,3.4rem);line-height:1.23;letter-spacing:-.04em}
.system-word{display:inline-block;border:1px solid #b89baa;padding:0 .1em;margin:.06em 0;color:var(--wine);line-height:1.1;letter-spacing:-.065em}
.manifesto-copy>p{font-size:1rem;line-height:1.85;color:var(--muted);margin-top:25px;max-width:550px}

/* Services: one number per discipline, aligned headings and lists. */
.studio{background:#eee5e8;padding-block:clamp(55px,5vw,72px)}
.studio h2{font-size:clamp(2rem,3.5vw,3.25rem);max-width:1000px}
.services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid #bdabb4;border-bottom:1px solid #bdabb4}
.service{display:grid;grid-template-rows:auto auto 1fr auto auto;padding-block:28px 24px;padding-inline:0 40px;min-width:0}
.service+.service{border-inline-start:1px solid #bdabb4;padding-inline:40px 0}
.service-top{display:flex;align-items:baseline;gap:18px;color:var(--wine)}
.service-index{font-size:.875rem;font-variant-numeric:tabular-nums}
.service-kicker{font-size:.75rem;letter-spacing:.06em;font-weight:500}
.service h3{font-size:clamp(2rem,3.2vw,2.75rem);line-height:1.12;margin:18px 0 16px}
.service p{font-size:1rem;line-height:1.8;color:var(--muted);max-width:500px;padding-bottom:22px}
.service ul{list-style:none;padding:0;margin:0}
.service li{border-top:1px solid #cabac2;padding:13px 0;font-size:.9375rem;line-height:1.6}
.service .text-link{justify-self:start;margin-top:12px;color:var(--wine)}

/* Project explorer */
.work .section-top,.media-section .section-top{display:grid;grid-template-columns:1.2fr .8fr;gap:8%;align-items:end}
.work h2{font-size:clamp(2.5rem,4.6vw,4.25rem)}
.work .section-top>p,.media-section .section-top>p{padding-bottom:3px}
.filters{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}
.filters button{display:inline-flex;gap:12px;align-items:center;min-height:44px;border:1px solid var(--line);padding:10px 17px;border-radius:25px;background:transparent;font-size:.875rem;line-height:1.5}
.filters button:hover{border-color:var(--wine)}
.filters button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
.filter-count{font-size:.75rem;opacity:.75;font-variant-numeric:tabular-nums}
.work-tools{display:flex;align-items:center;gap:15px;margin-bottom:30px;flex-wrap:wrap;font-size:.875rem}
.work-tools label{font-weight:500}
.work-tools select{min-height:44px;padding:8px 30px 8px 10px;border:1px solid var(--line);border-radius:4px;background:var(--paper);max-width:100%;font-size:.875rem}
#result-count{margin-inline-start:auto;color:var(--muted);font-size:.8125rem}
.projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 32px}
.project{min-width:0}
.project-face{position:relative;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;min-height:330px;height:27vw;max-height:405px;padding:28px;border-radius:12px}
.project-topline,.project-baseline{display:flex;justify-content:space-between;align-items:baseline;gap:16px;position:relative;z-index:1}
.project-topline .label{font-size:.75rem;max-width:53%;line-height:1.5}
.project-status{display:inline-flex;align-items:center;gap:6px;border:1px solid currentColor;border-radius:20px;padding:4px 10px;font-size:.875rem;line-height:1.6;font-weight:500;white-space:nowrap}
.status-active:before{content:'';width:5px;height:5px;background:currentColor;border-radius:50%;flex-shrink:0}
.project-word{position:relative;z-index:1;font-size:clamp(1.9rem,3.1vw,3.15rem);font-weight:500;line-height:1.13;letter-spacing:-.055em;margin:26px 0;max-width:96%;transition:transform .4s}
.project:hover .project-word{transform:translateY(-4px)}
.project-baseline .small{font-size:.8125rem;max-width:85%;line-height:1.6}
.cover-arrow{display:none}
.cover-art{position:absolute;inset:0;overflow:hidden;pointer-events:none;opacity:.4;direction:ltr}
.cover-art i{position:absolute;display:block}
.cover-systems{background:#332333;color:#f1deed}
.cover-systems .project-word{font:500 clamp(5.5rem,9vw,8.5rem)/1 'Poppins',sans-serif;letter-spacing:-.08em}
.cover-systems .cover-art{background-image:linear-gradient(#e7d0e910 1px,transparent 1px),linear-gradient(90deg,#e7d0e910 1px,transparent 1px);background-size:36px 36px}
.cover-systems .cover-art i{border:1px solid #f4d5e7;width:125px;height:75px;right:-18px;border-radius:9px;transform:rotate(-30deg);top:100px}
.cover-systems .cover-art i:nth-child(2){top:168px;right:57px}
.cover-systems .cover-art i:nth-child(3){top:236px;right:132px}
.cover-water{background:#c2d9e3;color:#23444e}
.cover-water .cover-art i{width:290px;height:290px;border:1px solid currentColor;right:-95px;top:30px;border-radius:50%;animation:ripple 9s ease-in-out infinite}
.cover-water .cover-art i:nth-child(2){scale:.8;animation-delay:-3s}
.cover-water .cover-art i:nth-child(3){scale:.6;animation-delay:-6s}
.cover-mental{background:#edc1a4;color:#65332c}
.cover-mental .cover-art i{width:65%;height:65%;border:1px solid currentColor;border-radius:50%;right:-12%;top:14%;transform:rotate(-40deg)}
.cover-mental .cover-art i:nth-child(2){transform:rotate(15deg);right:-7%}
.cover-mental .cover-art i:nth-child(3){transform:rotate(70deg);right:-2%}
.cover-brainy{background:#d9dfa3;color:#343f29}
.cover-brainy .cover-art i{height:220px;width:160px;border:1px solid currentColor;border-radius:100px;right:-20px;top:65px;transform:rotate(25deg)}
.cover-brainy .cover-art i:nth-child(2){right:40px;transform:rotate(-25deg)}
.cover-brainy .cover-art i:nth-child(3){right:100px}
.project-meta{padding-top:20px}
.project-meta h3{font-size:1.375rem;line-height:1.4;letter-spacing:-.025em}
.project-role{font-size:.8125rem;line-height:1.75;color:var(--wine);margin:7px 0 14px}
.project-description{font-size:1rem;color:var(--muted);line-height:1.8;margin-bottom:17px}
.project-detail{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
summary{list-style:none}
summary::-webkit-details-marker{display:none}
.project-detail summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;font-size:.875rem;min-height:48px}
.project-detail summary>span{font-size:23px;transition:rotate .2s}
.project-detail[open] summary>span{rotate:45deg}
.project-detail-body{padding:0 0 22px}
.project-detail-body>p{font-size:1rem;color:var(--muted);line-height:1.8;padding-top:8px}
.project-tags{list-style:none;display:flex;flex-wrap:wrap;gap:7px;padding:0;margin:18px 0 0}
.project-tags li{border:1px solid var(--line);padding:5px 9px;border-radius:3px;font-size:.75rem;line-height:1.5}
.project-detail-body .text-link{margin-top:15px;color:var(--wine)}
.projects.single-feature .project{grid-column:1/-1;display:grid;grid-template-columns:1.1fr 1fr;gap:0 36px}
.single-feature .project-face{grid-column:1;grid-row:1/5;height:100%;min-height:360px;max-height:560px}
.single-feature .project-meta,.single-feature .project-role,.single-feature .project-description,.single-feature .project-detail{grid-column:2}
.single-feature .project-meta{align-self:end}
.archive-heading{display:flex;justify-content:space-between;align-items:baseline;gap:25px;margin-top:55px;padding-bottom:16px;border-bottom:1px solid var(--ink)}
.archive-heading h3{font-size:.8125rem;letter-spacing:.07em}
.archive-heading p{font-size:.875rem;color:var(--muted)}
.archive-project{border-bottom:1px solid var(--line);transition:background .2s}
.archive-project:hover,.archive-project[open]{background:#f1e9ed}
.archive-project summary{display:grid;grid-template-columns:30px minmax(0,1fr) auto 25px;align-items:center;gap:18px;padding:21px 10px}
.archive-number{font-size:.75rem;color:#806171;font-variant-numeric:tabular-nums}
.archive-name{font-size:1.1875rem;font-weight:500;line-height:1.4;letter-spacing:-.02em}
.archive-name>span{display:block;font-size:.75rem;color:var(--muted);font-weight:400;letter-spacing:0;margin-top:7px}
.archive-project .project-status{color:#694455;border-color:#ccb6c0;white-space:normal;max-width:215px}
.archive-plus{font-size:26px;line-height:1;justify-self:end;transition:rotate .2s}
.archive-project[open] .archive-plus{rotate:45deg}
.archive-body{padding:0 60px 25px;max-width:940px}
.archive-body>p:not(.project-role){font-size:1rem;color:var(--muted);line-height:1.85}
.archive-body .text-link{margin-top:16px;color:var(--wine)}
.provenance{font-size:.8125rem;line-height:1.85;color:var(--muted);margin-top:26px;max-width:980px}
.empty-work{padding:28px;border:1px solid var(--line);background:var(--soft)}
.empty-work p{font-size:1rem}
.empty-work button{margin-top:16px;padding:10px 18px;border:1px solid var(--wine);background:var(--wine);color:white;border-radius:24px;min-height:44px;font-size:.875rem}

/* Founder and capability profile */
.about{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr);gap:10%;align-items:start;background:var(--dark);color:#f7eaf0}
.about-label>.eyebrow{color:#ddbbcc}
.founder-mark{display:flex;flex-direction:column;align-items:flex-start;gap:24px;margin-top:38px}
.founder-word{display:grid;justify-items:start;gap:12px;width:100%;color:var(--rose);font-size:clamp(5rem,8vw,8rem)}
.founder-en{font:500 1em/1.1 'Poppins',sans-serif;letter-spacing:-.065em}
.founder-ar{font:500 .48em/1.4 'Tajawal',sans-serif;letter-spacing:0}
.founder-signature{font-size:.75rem;line-height:1.7;letter-spacing:.06em;color:#dbc0cd}
.about-copy h2{font-size:clamp(2.25rem,3.8vw,3.5rem);margin-bottom:25px}
.about-copy h2 em{color:var(--rose)}
.about-copy>p{font-size:1rem;line-height:1.9;color:#dfcbd6;margin-bottom:20px}
.about-copy .personal-note{font-size:.75rem;letter-spacing:.09em;border-top:1px solid #715060;padding-top:22px;margin-top:27px;color:var(--rose)}
.profile-links{display:flex;flex-wrap:wrap;gap:10px 25px;margin:0 0 15px}
.profile-links a{min-height:44px;padding-block:10px;font-size:.875rem;text-decoration:underline;text-underline-offset:6px;text-decoration-color:#a47d90}
.about .text-link{color:#f2d6e3}
.skills{background:var(--dark);color:#f7eaf0;border-top:1px solid #624050;padding-top:58px}
.skills .eyebrow{color:#ddbbcc}
.skills h2{font-size:clamp(2rem,3.5vw,3.25rem)}
.skill-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4%}
.skill-group{border-top:1px solid #896475;padding-top:22px}
.skill-number{font-size:.75rem;color:#d4aebf}
.skill-group h3{font-size:1.5rem;color:var(--rose);margin:17px 0 15px;line-height:1.3;letter-spacing:-.025em}
.skill-group>p{font-size:1rem;line-height:1.75;color:#d3bcc9;margin-bottom:22px;min-height:3.5em}
.skill-group ul{list-style:none;padding:0;margin:0}
.skill-group li{font-size:.875rem;line-height:1.8;padding:10px 0;border-top:1px solid #674454}

/* Media */
.media-section{background:var(--soft)}
.media-section h2{font-size:clamp(2.4rem,4.4vw,4rem)}
.media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:27px}
.media-link{display:flex;flex-direction:column;height:100%}
.broadcast{height:280px;min-height:280px;flex-shrink:0;display:flex;flex-direction:column;justify-content:space-between;padding:24px;position:relative;overflow:hidden;background:#913047;color:#fff0f5;transition:transform .3s;border-radius:10px}
.broadcast-1{background:#252933}
.broadcast-2{background:#405148}
.broadcast:after{content:'';position:absolute;inset:10px;border:1px solid #ffffff24;pointer-events:none}
.media-link:hover .broadcast{transform:translateY(-4px)}
.broadcast-type{font-size:.75rem}
.broadcast-name{font-size:clamp(1.75rem,2.8vw,2.6rem);font-weight:500;line-height:1.2;letter-spacing:-.035em;max-width:250px;margin:18px 0}
.broadcast-bottom{display:flex;align-items:center;justify-content:space-between}
.play-icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid #ffffff88;border-radius:50%;font-size:14px;padding-inline-start:2px}
.waveform{display:flex;align-items:center;gap:4px;height:34px}
.waveform i{display:block;width:2px;height:8px;background:#f4d1d9;animation:wave 1.4s ease-in-out infinite alternate;animation-play-state:paused}
.waveform i:nth-child(3n){height:30px;animation-delay:-.5s}
.waveform i:nth-child(3n+1){height:17px;animation-delay:-.9s}
.media-link:hover .waveform i,.media-link:focus-visible .waveform i{animation-play-state:running}
.media-link h3{font-size:1.3rem;line-height:1.4;margin:21px 0 12px;letter-spacing:-.025em}
.media-link>p{font-size:1rem;color:var(--muted);line-height:1.8;margin-bottom:12px}
.media-link>.text-link{margin-top:auto;align-self:start}
.media-note{font-size:.8125rem;line-height:1.8;border-top:1px solid var(--line);padding-top:20px;margin-top:35px;color:var(--muted)}

/* Process: full-width, left-aligned introduction and a four-step sequence. */
.process .section-top{max-width:none;margin-bottom:32px}
.process h2{font-size:clamp(2rem,3.8vw,3.5rem)}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line)}
.step{padding-block:24px 0;padding-inline:0 25px;min-width:0}
.step+.step{border-inline-start:1px solid var(--line);padding-inline-start:25px}
.step .number{font-size:.875rem;color:var(--wine);font-variant-numeric:tabular-nums}
.step h3{font-size:1.5rem;line-height:1.3;margin:19px 0 13px}
.step p{font-size:1rem;color:var(--muted);line-height:1.8}

.starting-point{background:var(--soft)}
.starting-point h2{font-size:clamp(2.4rem,4.5vw,4rem)}
.start-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:6%}
.scenarios{display:flex;flex-direction:column}
.scenarios button{display:flex;align-items:center;gap:18px;min-height:75px;padding:21px 0;text-align:start;border:0;border-bottom:1px solid #c5b3bd;background:transparent;font-size:1.0625rem;line-height:1.6}
.scenarios button:first-child{border-top:1px solid #c5b3bd}
.scenarios button[aria-pressed=true]{color:var(--wine);font-weight:500}
.scenario-number{font-size:.75rem;color:#795566;flex-shrink:0}
.scenario-sign{margin-inline-start:auto;font-size:26px;font-weight:400}
.scenario-result{padding:32px;background:var(--paper);border-top:3px solid var(--wine);min-height:390px}
.scenario-result .eyebrow{color:var(--wine)}
.scenario-result h3{font-size:2.125rem;line-height:1.25;margin:20px 0 18px}
.scenario-result p{font-size:1rem;line-height:1.8;color:var(--muted);margin-bottom:20px}
.scenario-result ol{padding-inline-start:20px;margin:0 0 16px;font-size:.875rem;line-height:1.8;color:var(--wine)}
.scenario-result li+li{margin-top:5px}
.scenario-result .text-link{color:var(--wine)}

.contact h2{font-size:clamp(2.8rem,6.6vw,6.4rem);line-height:1.12;letter-spacing:-.06em;margin:27px 0 40px;max-width:1300px}
.contact-bottom{display:flex;justify-content:space-between;align-items:center;gap:32px;border-top:1px solid var(--line);padding-top:27px}
.contact-bottom p{max-width:570px;font-size:1rem;line-height:1.8;color:var(--muted)}
.contact-email{font-family:'Poppins',sans-serif;font-size:.9375rem;direction:ltr;unicode-bidi:isolate;max-width:100%;overflow-wrap:anywhere;text-align:center}
footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:24px;padding:28px var(--gutter);background:var(--dark);color:#e5ceda;font-size:.8125rem}
footer .logo-crop{width:48px}
footer>a:not(.brand){min-height:44px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:5px}

/* Arabic uses its own rhythm; English brand names remain correctly shaped. */
html[lang=ar] body{font-size:1.125rem}
html[lang=ar] h1,html[lang=ar] h2,html[lang=ar] h3,html[lang=ar] .eyebrow,html[lang=ar] .project-word,html[lang=ar] .archive-name,html[lang=ar] .broadcast-name{letter-spacing:0}
html[lang=ar] h2{line-height:1.35}
html[lang=ar] h2 em,html[lang=ar] h1 em{font-style:normal;font-weight:500}
html[lang=ar] nav a,html[lang=ar] .filters button,html[lang=ar] .service li,html[lang=ar] .skill-group li{font-size:1rem}
html[lang=ar] .hero h1{font-size:clamp(3.1rem,5.5vw,5.25rem);line-height:1.28;letter-spacing:0;margin-block:22px}
html[lang=ar] .hero .lead{font-size:1.125rem;line-height:1.8}
html[lang=ar] .manifesto-title{line-height:1.4}
html[lang=ar] .system-word{letter-spacing:0;line-height:1.25}
html[lang=ar] .service h3{line-height:1.4;margin-block:17px}
html[lang=ar] .service p,html[lang=ar] .manifesto-copy>p,html[lang=ar] .project-description,html[lang=ar] .project-detail-body>p,html[lang=ar] .archive-body>p:not(.project-role),html[lang=ar] .about-copy>p,html[lang=ar] .skill-group>p,html[lang=ar] .media-link>p,html[lang=ar] .step p,html[lang=ar] .scenario-result p,html[lang=ar] .contact-bottom p{font-size:1.125rem}
html[lang=ar] .project-word{line-height:1.45}
html[lang=ar] .cover-systems .project-word{font-family:'Poppins',sans-serif;line-height:1;letter-spacing:-.08em;direction:ltr;text-align:right}
html[lang=ar] .project-status{font-size:1rem}
html[lang=ar] .archive-name{font-size:1.375rem}
html[lang=ar] .archive-name>span{font-size:.875rem}
html[lang=ar] .founder-signature{font-size:.9375rem;letter-spacing:0}
html[lang=ar] .personal-note{font-size:.875rem;letter-spacing:0}
html[lang=ar] .broadcast-name{line-height:1.4}
html[lang=ar] .scenario-result h3{line-height:1.35}
html[lang=ar] .scenario-result ol,html[lang=ar] .text-link,html[lang=ar] .profile-links a{font-size:1rem}
html[lang=ar] .contact h2{line-height:1.35}
html[lang=ar] .reading-progress{transform-origin:right}

/* Motion is progressive enhancement: content is never hidden to await a scroll. */
.reveal.visible{animation:reveal-in .45s ease-out both}
@keyframes reveal-in{from{transform:translateY(12px)}
to{transform:translateY(0)}
}
@keyframes hero-settle{from{transform:scale(1.03)}
to{transform:scale(1)}
}
@keyframes mark-breathe{0%,100%{transform:translateY(0)}
50%{transform:translateY(-6px)}
}
@keyframes ripple{0%,100%{transform:scale(.9)}
50%{transform:scale(1.08)}
}
@keyframes wave{from{transform:scaleY(.5)}
to{transform:scaleY(1.1)}
}

@media(max-width:1100px){
.hero-actions{gap:12px 18px}
.manifesto{grid-template-columns:.8fr 1.5fr;gap:6%}
.service{padding-inline-end:28px}
.service+.service{padding-inline-start:28px}
.project-face{min-height:315px;padding:24px}
.project-topline{align-items:start}
.project-status{white-space:normal}
.skill-group h3{font-size:1.375rem}
.media-grid{gap:20px}
.broadcast{padding:22px;min-height:240px}
.step{padding-inline-end:20px}
.step+.step{padding-inline-start:20px}
}

/* Tablets and phones: text first, followed by the artwork. */
@media(max-width:900px){
.hero-stage{grid-template-columns:minmax(0,1fr);min-height:0}
.hero-copy{grid-column:1;grid-row:1;padding:36px}
.hero-copy .eyebrow{max-width:none}
.hero h1{font-size:clamp(2.9rem,8vw,4.5rem);margin-block:22px}
.hero .lead{max-width:35rem}
.hero-actions{flex-direction:row;align-items:center}
.hero-stage .art{grid-column:1;grid-row:2;min-height:0;height:auto;aspect-ratio:1.35}
.hero-stage .art>img{object-position:center;animation:none}
html[lang=ar] .hero h1{font-size:clamp(2.75rem,7.5vw,4.5rem);line-height:1.28}
.about{gap:6%}
.founder-word{font-size:clamp(4.5rem,8vw,6rem)}
}

@media(max-width:850px){.section{padding-block:65px}
.manifesto{grid-template-columns:minmax(200px,.8fr) minmax(0,1.2fr);gap:5%}
.manifesto-title{font-size:clamp(2rem,4.4vw,2.65rem)}
.manifesto-card{padding:20px;min-height:300px}
.manifesto-card-label{font-size:.8125rem}
.work .section-top,.media-section .section-top{grid-template-columns:1fr;gap:22px}
.work .section-top>p,.media-section .section-top>p{max-width:630px}
.skill-groups{grid-template-columns:1fr;gap:30px}
.skill-group{display:grid;grid-template-columns:1fr 1.15fr;gap:0 7%}
.skill-group>p{min-height:0}
.skill-group ul{grid-column:2;grid-row:1/4}
.skill-group li:first-child{border-top:0}
.skill-group h3{font-size:1.625rem}
.media-grid{grid-template-columns:1fr}
.media-link{display:grid;grid-template-columns:1fr 1.1fr;gap:0 26px}
.broadcast{grid-column:1;grid-row:1/4;min-height:250px}
.media-link h3{align-self:end;margin-top:0}
.media-link>.text-link{align-self:start;margin-top:0;justify-self:start}
.media-link>p{margin-block:12px}
.steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:28px}
.step:nth-child(3){border-inline-start:0;padding-inline-start:0}
.start-grid{grid-template-columns:1fr;gap:28px}
.scenarios{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.scenarios button{align-items:start;border-top:1px solid #c5b3bd}
.scenario-result{padding:26px}
.scenarios button{font-size:1rem;gap:12px}
.scenario-result h3{font-size:1.9rem}
.contact-bottom{align-items:start;flex-direction:column;gap:22px}
}

@media(max-width:720px){html{scroll-padding-top:132px}
header{display:grid;grid-template-columns:1fr auto;gap:5px 20px;min-height:112px;padding-block:9px}
.logo-crop{width:47px}
header nav{grid-row:2;grid-column:1/-1;justify-content:space-between;gap:8px}
nav a{font-size:.8125rem;min-height:44px}
#language{grid-row:1;grid-column:2;min-height:42px}
.hero-copy{padding:30px}
.hero h1{font-size:clamp(2.6rem,10.6vw,4.5rem)}
.hero-actions{gap:12px 20px}
.hero-stage .art{height:auto;aspect-ratio:1.35}
.hero-bottom{gap:14px;font-size:.8125rem}
.hero-bottom>span:not(.cross){max-width:45%}
.manifesto{grid-template-columns:1fr;gap:30px}
.manifesto-side{display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:center}
.manifesto-side>.eyebrow{margin:0}
.manifesto-card{min-height:265px;gap:16px;max-width:330px;justify-self:end;width:100%}
.manifesto-card .logo-crop{width:125px}
.manifesto-title{font-size:clamp(1.95rem,6.8vw,3.25rem)}
.services{grid-template-columns:1fr}
.service,.service+.service{padding:27px 0;border-inline-start:0}
.service+.service{border-top:1px solid #bdabb4}
.service h3{font-size:clamp(1.8rem,6.8vw,2.3rem)}
.service p{max-width:100%;padding-bottom:20px}
.projects{grid-template-columns:1fr;gap:38px}
.project-face{height:77vw;min-height:310px;max-height:390px;padding:26px}
.project-word{font-size:clamp(2rem,6.8vw,3rem)}
.cover-systems .project-word{font-size:7.5rem}
.projects.single-feature .project{display:block}
.single-feature .project-face{height:340px;min-height:0}
.archive-heading{align-items:start;flex-direction:column;gap:8px;margin-top:38px}
.archive-project summary{grid-template-columns:24px minmax(0,1fr) 24px;gap:10px 13px;padding:19px 5px}
.archive-number{align-self:start;margin-top:4px}
.archive-name{font-size:1.125rem}
.archive-project .project-status{grid-row:2;grid-column:2;justify-self:start}
.archive-plus{grid-column:3;grid-row:1/3}
.archive-body{padding:0 15px 24px 42px}
.about{grid-template-columns:1fr;gap:36px}
.founder-mark{margin-top:28px;gap:18px}
.founder-word{font-size:clamp(4rem,16vw,5.6rem)}
.about-copy h2{font-size:2.35rem}
.start-grid{grid-template-columns:1fr}
.scenarios{display:flex;gap:0}
.scenarios button{align-items:center;border-top:0}
.scenarios button:first-child{border-top:1px solid #c5b3bd}
.scenario-result{min-height:0;padding:28px}
.scenarios button{min-height:66px;padding-block:16px}
.contact h2{font-size:clamp(2.6rem,8vw,4rem)}
footer{gap:18px 25px}
footer>span:last-child{width:100%}
html[lang=ar] .hero h1{font-size:clamp(2.6rem,10.6vw,4.5rem);line-height:1.28}
html[lang=ar] .archive-body{padding-inline:42px 15px}
}

@media(max-width:480px){.section{padding-block:55px}
.section-top{margin-bottom:28px}
.hero{padding-top:16px}
.hero-stage{margin-bottom:16px;border-radius:12px}
.hero-copy{padding:28px 20px}
.hero h1{font-size:clamp(2.5rem,10.6vw,3.15rem)}
html[lang=ar] .hero h1{font-size:clamp(2.5rem,10.6vw,3.15rem)}
.hero-actions{gap:6px 16px}
.hero-bottom{gap:12px;font-size:.8125rem}
.manifesto-side{display:block}
.manifesto-side>.eyebrow{margin-bottom:22px}
.manifesto-card{max-width:none;min-height:270px;padding:23px}
.manifesto-card .logo-crop{width:140px}
.manifesto-card-label{font-size:.875rem}
.hero-copy .eyebrow{font-size:.75rem}
.hero-actions .button{padding-inline:18px}
.hero-actions .quiet-link{font-size:.8125rem}
.filters{gap:8px}
.filters button{font-size:.875rem;padding-inline:13px;gap:8px}
.work-tools{gap:8px 12px}
.work-tools label{width:100%}
.work-tools select{max-width:100%;flex:1;min-width:0}
#result-count{width:100%;margin:5px 0 0}
.project-face{padding:23px;min-height:320px}
.project-status{font-size:.875rem}
.project-topline .label{font-size:.75rem;max-width:49%}
.project-word{font-size:clamp(1.7rem,7.6vw,2.1rem);overflow-wrap:break-word}
.cover-systems .project-word{font-size:6.8rem}
.skill-group{display:block}
.skill-group h3{font-size:1.5rem}
.skill-group>p{margin-bottom:20px}
.media-link{display:flex;gap:0}
.broadcast{min-height:240px}
.broadcast-name{font-size:2.3rem}
.media-link h3{margin-top:20px;align-self:start}
.media-link>p{margin-bottom:12px}
.media-grid{gap:33px}
.steps{grid-template-columns:1fr;gap:0}
.step,.step+.step{padding:22px 0;border-inline-start:0}
.step+.step{border-top:1px solid var(--line)}
.step h3{margin-block:10px}
.step p{max-width:35rem}
.scenario-result{padding:24px}
.contact-email{font-size:.875rem;padding-inline:19px}
html[lang=ar] nav a{font-size:.9375rem}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*:before,*:after{animation:none!important;transition:none!important}
.hero-stage .art>img{translate:0 0!important}
.project:hover .project-word,.media-link:hover .broadcast,.button:hover{transform:none}
}
