*,*::before,*::after {
  box-sizing:border-box;
}
html {
  scroll-behavior:smooth;
  scroll-padding-block-start:24px;
}
body {
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--sans);
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
button,a {
  -webkit-tap-highlight-color:transparent;
}
button,input,textarea {
  font:inherit;
}
button {
  cursor:pointer;
  color:inherit;
}
button[hidden],[hidden] {
  display:none!important;
}
a {
  color:inherit;
  text-decoration:none;
}
p,h1,h2,h3,h4,figure {
  margin:0;
}
h1,h2,h3,h4 {
  font-weight:500;
}
h2 {
  font-size:clamp(2.25rem,4.7vw,4.5rem);
  line-height:1.12;
  letter-spacing:-.055em;
  text-wrap:balance;
}
h3 {
  line-height:1.2;
  letter-spacing:-.035em;
}
p {
  max-inline-size:65ch;
}
img {
  display:block;
  max-inline-size:100%;
  block-size:auto;
}
button {
  border:0;
  background:none;
}
a,button,summary {
  touch-action:manipulation;
}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible {
  outline:2px solid var(--accent);
  outline-offset:6px;
}
::selection {
  background:var(--vermilion);
  color:var(--paper);
}
.multiline {
  white-space:pre-line;
}
.meta,.eyebrow,.index {
  font-family:var(--mono);
  font-size:12px;
  line-height:1.7;
  font-weight:400;
}
.eyebrow {
  margin-block-end:24px;
}
.section-intro {
  color:var(--muted);
  font-size:16px;
  max-inline-size:37ch;
}
.skip-link {
  position:fixed;
  z-index:50;
  inset-block-start:12px;
  inset-inline-start:var(--gutter);
  padding:12px 20px;
  background:var(--ink);
  color:var(--paper);
  transform:translateY(-180%);
}
.skip-link:focus {
  transform:none;
}
.arrow {
  display:inline-block;
  font-size:21px;
  line-height:1;
}
.text-link {
  text-decoration:underline;
  text-underline-offset:6px;
  text-decoration-thickness:1px;
  display:inline-flex;
  align-items:center;
  gap:28px;
  min-block-size:48px;
}
.text-link .arrow {
  font-size:18px;
}
main:focus,section[tabindex="-1"]:focus {
  outline:none;
}
bdi {
  unicode-bidi:isolate;
}
html[lang=ar] {
  --sans:'IBM Plex Sans Arabic',Tahoma,Arial,sans-serif;
  --mono:'IBM Plex Sans Arabic',Tahoma,sans-serif;
}
html[lang=ar] body {
  line-height:1.9;
}
html[lang=ar] :is(h1,h2,h3,h4,.wordmark,.about-statement,.expressive,.eyebrow,.meta) {
  letter-spacing:normal;
}
html[lang=ar] h2 {
  line-height:1.4;
  font-size:clamp(2rem,4.2vw,4rem);
}
html[lang=ar] .expressive {
  font-family:var(--sans);
  font-style:normal;
  font-weight:500;
}
html[dir=rtl] .arrow {
  transform:scaleX(-1);
}
.index,.process-index {
  font-variant-numeric:tabular-nums;
}
section[id] {
  scroll-margin-block-start:24px;
}
h1,h2,h3 {
  overflow-wrap:break-word;
}
body {
  padding-inline:max(0px,env(safe-area-inset-left)) max(0px,env(safe-area-inset-right));
}
@media(hover:hover) and (pointer:fine) {
  .site-footer a:hover,.social-links a:hover,.contact-email:hover {
    color:var(--accent);
  }
}
.locale-ar {
  display:none;
}
html[lang=ar] .locale-en {
  display:none;
}
html[lang=ar] .locale-ar {
  display:inline;
}
