@font-face{font-family:"Newsreader";src:url("/assets/fonts/newsreader-variable.woff2") format("woff2");font-style:normal;font-weight:300 800;font-display:swap}
@font-face{font-family:"Atkinson";src:url("/assets/fonts/atkinson-400.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Atkinson";src:url("/assets/fonts/atkinson-700.woff2") format("woff2");font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:"Noto Naskh Arabic";src:url("/assets/fonts/noto-naskh-arabic-arabic-variable.woff2") format("woff2");font-style:normal;font-weight:400 700;font-display:swap}
:root{--office-ground:#151311;--office-ink:#f3eadd;--office-muted:#c8bba9;--office-walnut:#2d2018;--office-brass:#7f6949;--office-rule:rgba(243,234,221,.22);--office-display:"Newsreader",Georgia,serif;--office-body:"Atkinson",system-ui,sans-serif;--office-arabic:"Noto Naskh Arabic",var(--office-display)}
*,*::before,*::after{box-sizing:border-box}
html{background:var(--office-ground);color-scheme:dark}
body.office-home{display:flex;flex-direction:column;min-width:0;min-height:100vh;margin:0;background:var(--office-ground);color:var(--office-ink);font-family:var(--office-body);font-size:1rem;line-height:1.5}
body.office-home[dir="rtl"],html[lang="ar"]{font-family:var(--office-arabic)}
.office-skip{position:absolute;z-index:10;top:0;left:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;color:var(--office-ink);background:var(--office-walnut)}
.office-skip:focus{top:.75rem;left:.75rem;width:auto;height:auto;margin:0;padding:.6rem 1rem;overflow:visible;clip:auto;clip-path:none;white-space:normal}
[data-office-home]{display:flex;flex:1;flex-direction:column;min-height:0}
.office-home__hero{display:grid;flex:1;grid-template-columns:minmax(18rem,.9fr) minmax(0,1.3fr);align-items:center;gap:clamp(1.5rem,5vw,6rem);width:min(100%,1440px);min-height:0;margin:0 auto;padding:clamp(2rem,6vw,5.5rem) clamp(1.25rem,5vw,5rem) clamp(1rem,3vw,3rem)}
.office-home__copy{position:relative;z-index:2;max-width:34rem}
.office-kicker{margin:0 0 clamp(2rem,7vh,5rem);color:var(--office-muted);font-size:.78rem;letter-spacing:.13em;line-height:1.4;text-transform:uppercase}
.office-home h1{max-width:14ch;margin:0;font-family:var(--office-display);font-size:clamp(3rem,4.7vw,5.25rem);font-weight:450;letter-spacing:-.02em;line-height:1.05;overflow-wrap:normal;text-wrap:balance}
.office-home__lead,.office-home__body,.office-home__support{max-width:34rem;margin:2rem 0 0;color:var(--office-muted);font-size:clamp(1.125rem,1.45vw,1.25rem);line-height:1.5}
.office-home__body,.office-home__support{margin-top:1rem;color:var(--office-ink);font-size:1.125rem;line-height:1.55}
.office-room{position:relative;z-index:1;width:100%;margin:0}.office-room::before{content:"";position:absolute;left:4%;right:4%;bottom:-7%;height:22%;border-radius:50%;background:radial-gradient(ellipse at center,rgba(127,105,73,.16),rgba(127,105,73,.06) 40%,transparent 70%);filter:blur(14px);z-index:0;pointer-events:none}.office-room::after{content:"";position:absolute;left:14%;right:14%;bottom:-1%;height:10%;border-radius:50%;background:radial-gradient(ellipse at center,rgba(0,0,0,.9),rgba(0,0,0,.4) 50%,transparent 75%);filter:blur(8px);z-index:0;pointer-events:none}.office-room__frame{position:relative;z-index:1}
.office-room__frame{position:relative;width:100%;max-height:calc(100vh - 11rem);aspect-ratio:16/10;overflow:hidden;background:#020204;will-change:transform;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 7%,#000 90%,transparent 100%),linear-gradient(to right,transparent 0%,#000 3%,#000 97%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to bottom,transparent 0%,#000 7%,#000 90%,transparent 100%),linear-gradient(to right,transparent 0%,#000 3%,#000 97%,transparent 100%);mask-composite:intersect}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.office-room__frame{transition:transform .9s cubic-bezier(.2,.7,.2,1)}.office-room:hover .office-room__frame{transform:scale(1.015)}}
.office-room picture,.office-room__poster,.office-room__motion{display:block;width:100%;height:100%}
.office-room__poster,.office-room__motion{position:absolute;inset:0;object-fit:cover;object-position:50% 50%;mix-blend-mode:normal;transform:scale(1.0);transform-origin:50% 50%}
.office-room__poster{z-index:1}
.office-room__motion{z-index:2;opacity:0;pointer-events:none;transition:opacity 160ms ease}
.office-room__motion.is-playing{opacity:1}
.office-room__motion--mobile{display:none}
.office-room>figcaption{margin-top:.6rem;color:var(--office-muted);font-family:var(--office-body);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase}
.office-links{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:100%;margin-top:auto;padding:1rem clamp(1.25rem,5vw,5rem) 1.3rem;background:var(--office-walnut);border-top:1px solid var(--office-rule);gap:.25rem 1.25rem}
.office-links a{display:inline-flex;align-items:center;min-width:44px;min-height:48px;color:var(--office-ink);font-family:var(--office-body);font-size:1rem;font-weight:400;line-height:1.3;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:.22em}
.office-links #enquire{border-inline-start:1px solid var(--office-brass);padding-inline-start:.75rem;font-size:1rem;letter-spacing:.02em}
.office-links a{position:relative;justify-self:start}.office-links a::after{content:"";position:absolute;left:0;right:0;bottom:.55rem;height:1px;background:var(--office-brass);opacity:1;transform:scaleX(0);transform-origin:left center;transition:transform 380ms cubic-bezier(.2,.7,.2,1)}html[dir="rtl"] .office-links a::after{transform-origin:right center}
.office-links a{transition:color 160ms ease}.office-links a:hover,.office-links a:focus-visible{color:#fff}
.office-links a:hover::after,.office-links a:focus-visible::after{transform:scaleX(1)}
.office-links a:focus-visible,.office-skip:focus-visible{outline:2px solid var(--office-ink);outline-offset:4px}
.office-links a:nth-last-child(2){justify-self:start;text-align:start}.office-links a:last-child{justify-self:end}
@media(min-width:701px){
 .office-home__hero{grid-template-columns:minmax(24rem,.58fr) minmax(0,1.9fr);gap:clamp(1.25rem,2vw,2.5rem);width:min(100%,1920px);padding:clamp(1.5rem,3vh,2.5rem) clamp(1.5rem,3.3vw,4rem)}
 .office-home__copy{max-width:32rem}.office-home h1{max-width:none;font-size:clamp(2.8rem,3.6vw,4rem);line-height:1.06}
 .office-home__lead{margin-top:1.6rem;font-size:clamp(1.125rem,1.3vw,1.25rem)}
}
@media(min-width:701px) and (max-width:1100px){
 .office-home__hero{grid-template-columns:minmax(21rem,.85fr) minmax(0,1.2fr);padding:clamp(1.5rem,3vh,2.5rem) 1.5rem;gap:1rem}.office-home h1{font-size:clamp(2.5rem,4.1vw,2.9rem)}
}
@media(min-width:1101px){
 /* 3 Sep 2026 (Hussain: "the office should be huge, it should take up the
    entire screen"): on a desktop the room is the page. Copy and room share one
    cell; the room bleeds edge to edge behind the words, and a gradient scrim on
    the reading side keeps the text legible without a panel. */
 .office-home__hero{position:relative;grid-template-columns:1fr;grid-template-areas:"stage";align-items:center;gap:0;width:100%;max-width:none;padding:0;min-height:calc(100vh - 5.5rem)}
 .office-home__hero>*{grid-area:stage}
 .office-room{position:absolute;inset:0;width:100%;height:100%;margin:0;z-index:0}
 .office-room::before,.office-room::after{display:none}
 .office-room__frame{width:100%;height:100%;max-height:none;aspect-ratio:auto;-webkit-mask-image:none;mask-image:none}
 /* 4 Sep 2026 (Hussain: "look at the right, it's not really properly full
    screen"): above 1100px the poster is the 21:9 hero render, so cover crops
    its sides rather than its top and bottom. Centred, the crop takes an equal
    slice off each edge -- about 12% at 1440, 9% at 1920, 10% at 2560 -- which
    removes the dark cut faces at both ends and leaves the lamp just past the
    middle with the desk, laptop and window in the right two thirds, the left
    third in shadow under the copy. The walk footage is still the 16:10
    arrival and keeps the framing it was authored for. */
 .office-room__poster{object-fit:cover;object-position:50% 50%}
 /* 4 Sep 2026: in Arabic the reading field is on the right, where the lamp and window
    are, so the RTL home slides the frame the other way and keeps the lit half clear
    of the headline. */
 html[dir="rtl"] .office-room__poster,html[dir="rtl"] .office-room__motion{object-position:80% 50%}
 .office-room__motion{object-fit:cover;object-position:62% 50%}
 .office-home__hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(to right,rgba(10,9,8,.92) 0%,rgba(10,9,8,.86) 22%,rgba(10,9,8,.45) 40%,rgba(10,9,8,0) 58%),linear-gradient(to bottom,rgba(10,9,8,.35) 0%,rgba(10,9,8,0) 22%,rgba(10,9,8,0) 78%,rgba(10,9,8,.45) 100%)}
 html[dir="rtl"] .office-home__hero::after{background:linear-gradient(to left,rgba(10,9,8,.92) 0%,rgba(10,9,8,.86) 22%,rgba(10,9,8,.45) 40%,rgba(10,9,8,0) 58%),linear-gradient(to bottom,rgba(10,9,8,.35) 0%,rgba(10,9,8,0) 22%,rgba(10,9,8,0) 78%,rgba(10,9,8,.45) 100%)}
 .office-home__copy{position:relative;z-index:2;justify-self:start;max-width:34rem;margin-inline-start:clamp(2rem,5vw,5.5rem)}
 .office-home h1{font-size:clamp(2.6rem,3.4vw,3.6rem);line-height:1.05}
 .office-home__lead{font-size:clamp(1.15rem,1.15vw,1.3rem)}
}
@media(max-width:700px){
 .office-home__hero{display:flex;flex-direction:column;align-items:stretch;gap:1rem;min-height:0;padding:1.25rem 1rem .75rem}
 .office-home__copy{max-width:34rem}.office-home h1{max-width:14ch;font-size:clamp(2.1rem,8vw,2.75rem);overflow-wrap:anywhere}
 .office-home__lead{margin-top:1.35rem;font-size:1.125rem;line-height:1.55}.office-home__body,.office-home__support{margin-top:.85rem;font-size:1.125rem;line-height:1.55}.office-room__frame{aspect-ratio:1.35;direction:ltr;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 12%,#000 82%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 12%,#000 82%,transparent 100%)}
 .office-room{display:flex;flex:1 1 auto;flex-direction:column;justify-content:flex-start;width:calc(100% + 2rem);min-height:52vh;margin-inline:-1rem;overflow:hidden;direction:ltr}.office-room picture{position:absolute;inset:0;width:100%;height:100%;direction:ltr}.office-room__frame{flex:1 1 auto;aspect-ratio:auto;height:auto;min-height:52vh;max-height:none}.office-room__poster,.office-room__motion{object-position:56% 50%;transform:none}.office-links{margin-top:.25rem}
 .office-room__motion--desktop{display:none}.office-room__motion--mobile{display:block}.office-room>figcaption{margin-top:.45rem;font-size:.65rem}
 .office-links{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.1rem .25rem;padding:.55rem .9rem .8rem}.office-links a{flex:0 0 auto;min-height:48px;padding:0 .15rem;font-size:.95rem;white-space:nowrap}
 .office-links a:nth-last-child(2){justify-self:auto}.office-links #enquire{margin:0;padding:0 0 0 .6rem;border-top:0;border-inline-start:1px solid var(--office-brass);font-size:.95rem}
}
@media(prefers-reduced-motion:reduce){.office-links a::after,.office-room__motion{transition:none}}
html[dir="rtl"] .office-home__copy{text-align:right}html[dir="rtl"] .office-links{direction:rtl}
html[lang="ar"] .office-home h1{font-family:var(--office-arabic);font-weight:450;letter-spacing:0;line-height:1.25}
html[lang="ar"] .office-home__lead,html[lang="ar"] .office-home__body,html[lang="ar"] .office-home__support{font-family:var(--office-arabic);letter-spacing:0}
html[lang="ar"] .office-links a{font-family:var(--office-arabic);letter-spacing:0}
html[lang="ar"] .office-links a[lang="en"]{font-family:var(--office-body);letter-spacing:normal;direction:ltr}

.office-area-picture{position:relative;display:block;width:100%;margin:0 0 1.1rem;overflow:visible;background:transparent}.office-area-picture img{position:relative;z-index:1;background:#020204;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 5%,#000 95%,transparent 100%),linear-gradient(to right,transparent 0%,#000 10%,#000 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to bottom,transparent 0%,#000 5%,#000 95%,transparent 100%),linear-gradient(to right,transparent 0%,#000 10%,#000 100%);mask-composite:intersect}html[dir="rtl"] .office-area-picture img{-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 5%,#000 95%,transparent 100%),linear-gradient(to left,transparent 0%,#000 10%,#000 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 5%,#000 95%,transparent 100%),linear-gradient(to left,transparent 0%,#000 10%,#000 100%)}@media(prefers-reduced-motion:no-preference){.office-area-picture img{animation:office-settle 700ms cubic-bezier(.2,.7,.2,1) both}@keyframes office-settle{from{opacity:0;transform:scale(1.035)}to{opacity:1;transform:none}}}
.office-area-picture img{display:block;width:100%;height:auto;aspect-ratio:1440 / 900;object-fit:cover;object-position:47% 52%}
/* 3 Sep 2026: beside a chapter the still stands as a tall framed picture (5:6) rather than a small letterbox, so a 2880px render is not shown in a 370px strip. */
@media(min-width:701px){.office-chapter__article:has(.office-area-picture)>.office-area-picture img{aspect-ratio:5 / 6;object-position:50% 50%;box-shadow:0 28px 60px -34px #000}#research .office-area-picture img{object-position:70% 40%}#health .office-area-picture img{object-position:50% 30%}}
@media(max-width:700px){.office-area-picture img{aspect-ratio:780 / 530}}
html[dir="rtl"] .office-area-picture img{direction:ltr}

/* Opaque destination chrome shares the office's charcoal and walnut materials. */
html.office-ways,body.office-ways{min-height:100%;background:var(--office-ground);color:var(--office-ink)}
body.office-ways{margin:0;font-family:var(--office-body);font-optical-sizing:auto}
body.office-ways .office-shell{position:sticky;top:0;z-index:6;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-inline-start:1.2rem;background:var(--office-walnut);border-bottom:1px solid var(--office-rule)}
body.office-ways .office-shell__home{display:inline-flex;align-items:center;min-height:44px;color:var(--office-ink);font-family:var(--office-display);font-size:1.15rem;font-weight:500;letter-spacing:.01em;text-decoration:none;white-space:nowrap}
body.office-ways .office-shell__home:hover,body.office-ways .office-shell__home:focus-visible{text-decoration:underline;text-decoration-color:var(--office-brass);text-underline-offset:.22em}
html[lang="ar"] body.office-ways .office-shell__home{font-family:var(--office-arabic);letter-spacing:0}
body.office-ways .office-shell__nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.35rem 1.15rem;min-height:48px;padding:.4rem 1.2rem;font-family:var(--office-body)}
body.office-ways .office-shell__nav a,body.office-ways .office-shell-foot a{display:inline-flex;align-items:center;min-width:44px;min-height:44px;color:var(--office-ink);font-size:1rem;line-height:1.3;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:.22em}
body.office-ways .office-shell__nav a{position:relative;text-decoration:none}body.office-ways .office-shell__nav a::after{content:"";position:absolute;left:0;right:0;bottom:.45rem;height:1px;background:var(--office-brass);transform:scaleX(0);transform-origin:left center;transition:transform 380ms cubic-bezier(.2,.7,.2,1)}html[dir="rtl"] body.office-ways .office-shell__nav a::after{transform-origin:right center}body.office-ways .office-shell__nav a:hover::after,body.office-ways .office-shell__nav a:focus-visible::after,body.office-ways .office-shell__nav a[aria-current]::after{transform:scaleX(1)}
body.office-ways .office-shell__nav a:hover,body.office-ways .office-shell__nav a:focus-visible,body.office-ways .office-shell-foot a:hover,body.office-ways .office-shell-foot a:focus-visible{color:var(--office-ink);text-decoration-color:var(--office-brass)}
body.office-ways .office-shell__nav a[lang="en"]{font-family:var(--office-body);direction:ltr}
body.office-ways .office-shell-foot{padding:1.4rem 1.2rem 2rem;background:var(--office-walnut);color:var(--office-muted);border-top:1px solid var(--office-rule)}
body.office-ways .office-shell-foot .office-shell__nav{justify-content:flex-start;padding:0}
/* 3 Sep 2026 audit: the legal row sat at 13.6px. 14px is the floor for a
   label a visitor is meant to be able to read. */
body.office-ways .office-shell__legal{display:flex;flex-wrap:wrap;gap:.35rem 1.15rem;margin:.4rem 0 0;font-family:var(--office-body);font-size:.875rem;color:var(--office-muted)}body.office-ways .office-shell__legal a{min-width:44px;min-height:44px;color:var(--office-muted);font-size:.875rem;text-decoration-color:transparent}body.office-ways .office-shell__legal a:hover,body.office-ways .office-shell__legal a:focus-visible{color:var(--office-ink);text-decoration-color:var(--office-brass)}
body.office-ways .office-shell__skip{position:absolute;inset:auto;inset-block-start:0;inset-inline-start:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;color:var(--office-ink);background:var(--office-walnut)}
body.office-ways .office-shell__skip:focus,body.office-ways .office-shell__skip:focus-visible{inset:auto;inset-block-start:.75rem;inset-inline-start:.75rem;width:auto;height:auto;margin:0;padding:.6rem 1rem;overflow:visible;clip:auto;clip-path:none;white-space:normal;color:var(--office-ink);background:var(--office-walnut);z-index:8}
.office-ways__main{width:min(1040px,calc(100vw - 40px));margin:0 auto;padding:2.5rem 0 5rem}
.office-ways__main>h1{max-width:62ch;margin:0;font-family:var(--office-display);font-size:28px;font-weight:450;letter-spacing:-.02em;line-height:1.15}
.office-ways__lead{max-width:62ch;margin:1rem 0 2rem;color:var(--office-muted);font-family:var(--office-body);font-size:20px;line-height:1.5}
.office-ways__summary{max-width:62ch;margin:0;padding:1.5rem 0;border-top:1px solid var(--office-rule);scroll-margin-top:4rem}
.office-ways__summary--secondary{margin-top:1.25rem;padding-top:2.25rem;border-top-color:rgba(243,234,221,.14)}
.office-ways__summary--secondary h2{color:var(--office-muted);font-weight:400}
.office-ways__summary h2{margin:0 0 .7rem;font-family:var(--office-body);font-size:18px;font-weight:700;letter-spacing:normal;line-height:1.35}
.office-ways__summary p,.office-chapter__section p{max-width:62ch;margin:0 0 1.25rem;font-family:var(--office-body);font-size:18px;line-height:1.7;text-align:start}
.office-ways__summary p:last-child{margin-bottom:0}
.office-ways__summary a,.office-chapter__siblings a,.office-chapter__context a{display:inline-flex;align-items:center;min-width:44px;min-height:44px;color:var(--office-ink);font-family:var(--office-body);font-size:16px;font-weight:400;line-height:1.3;text-decoration:underline;text-decoration-color:var(--office-brass);text-underline-offset:.22em}
.office-ways__summary a:hover,.office-ways__summary a:focus-visible,.office-chapter__siblings a:hover,.office-chapter__siblings a:focus-visible,.office-chapter__context a:hover,.office-chapter__context a:focus-visible{color:var(--office-ink)}
.office-destination-nav{display:flex;flex-wrap:wrap;gap:.35rem .7rem;width:min(62ch,100%);margin:1.25rem auto 0;padding:0 0 1rem;border-bottom:1px solid var(--office-rule)}
.office-destination-nav a,.office-destination-return a{display:inline-flex;align-items:center;min-height:44px;color:var(--office-ink);font-family:var(--office-body);font-size:16px;line-height:1.3;text-decoration:underline;text-decoration-color:var(--office-brass);text-underline-offset:.22em}
.office-destination-nav a{padding:.35rem 0}
.office-destination-nav a:hover,.office-destination-nav a:focus-visible,.office-destination-return a:hover,.office-destination-return a:focus-visible{text-decoration:underline;text-underline-offset:.2em}
.office-chapter__article{margin:0;padding:0}
.office-chapter__article:has(.office-area-picture){display:grid;grid-template-columns:minmax(0,1fr) minmax(19rem,.92fr);column-gap:clamp(2rem,5vw,5rem);align-items:start}
.office-chapter__article:has(.office-area-picture)> :not(.office-area-picture){grid-column:1}
.office-chapter__article>h1{max-width:62ch;margin:0;font-family:var(--office-display);font-size:40px;font-weight:450;letter-spacing:-.02em;line-height:1.08}
.office-chapter__intro{max-width:62ch;margin:1.5rem 0 2.5rem;color:var(--office-muted);font-family:var(--office-body);font-size:20px;line-height:1.5;text-align:start}
.office-chapter__article:has(.office-area-picture)>.office-area-picture{grid-column:2;grid-row:1 / span 20;position:sticky;top:5.5rem;align-self:start;margin:0}
.office-chapter__section{max-width:62ch;margin:3.25rem 0 0}
/* The specimen note (2 Sep 2026): a sheet set on the desk, framed once and
   typeset like the chapter, so it reads as a document the client received
   rather than more chapter prose. */
.office-chapter__note{position:relative;margin-top:3.5rem;padding:1.6rem 1.6rem 1.2rem;border:1px solid var(--office-rule);border-radius:2px;background:linear-gradient(180deg,rgba(45,32,24,.55),rgba(45,32,24,.28))}
.office-chapter__note::before{content:"";position:absolute;inset:0;pointer-events:none;border-top:2px solid var(--office-brass);opacity:.8}
.office-chapter__note h2{font-size:24px}
.office-chapter__note .office-note__specimen{margin:0 0 1.2rem;color:var(--office-muted);font-size:15px;line-height:1.55}
.office-chapter__note .office-note__meta{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.35rem 1rem;margin:0 0 1.5rem;padding:0 0 1.2rem;border-bottom:1px solid var(--office-rule);font-family:var(--office-body);font-size:16px;line-height:1.55}
.office-chapter__note .office-note__meta div{display:contents}
.office-chapter__note .office-note__meta dt{color:var(--office-muted);font-weight:700;white-space:nowrap}
.office-chapter__note .office-note__meta dd{margin:0}
.office-chapter__note h3{margin:1.5rem 0 .55rem;font-family:var(--office-display);font-size:21px;font-weight:450;letter-spacing:-.01em;line-height:1.25}
.office-chapter__note h3:first-of-type{margin-top:0}
.office-chapter__note p{font-size:17px;line-height:1.65;margin-bottom:1rem}
.office-chapter__note ol,.office-chapter__note ul{max-width:62ch;margin:0 0 1rem;padding-inline-start:1.4rem;font-family:var(--office-body);font-size:17px;line-height:1.65}
.office-chapter__note li{margin:0 0 .5rem}
.office-chapter__note .office-note__link a{display:inline-flex;align-items:center;min-height:44px;color:var(--office-ink);text-decoration:underline;text-decoration-color:var(--office-brass);text-underline-offset:.22em}
html[lang="ar"] .office-chapter__note p,html[lang="ar"] .office-chapter__note li,html[lang="ar"] .office-chapter__note h3,html[lang="ar"] .office-chapter__note .office-note__meta,html[lang="ar"] .office-chapter__note .office-note__specimen{font-family:var(--office-arabic);letter-spacing:0}html[lang="ar"] .office-chapter__note h3{font-size:22px;line-height:1.45}html[lang="ar"] .office-chapter__note p,html[lang="ar"] .office-chapter__note li{font-size:18px;line-height:1.8}
.office-chapter__note .office-note__download{margin:1.4rem 0 0;padding-top:1rem;border-top:1px solid var(--office-rule);font-family:var(--office-body);font-size:15px}.office-chapter__note .office-note__download a{display:inline-flex;align-items:center;gap:.5rem;min-height:44px;color:var(--office-ink);text-decoration:underline;text-decoration-color:var(--office-brass);text-underline-offset:.22em}.office-chapter__note .office-note__download a::before{content:"";width:.7rem;height:.9rem;border:1px solid var(--office-brass);border-radius:1px;opacity:.9}
.office-chapter__section h2{margin:0 0 .9rem;font-family:var(--office-display);font-size:28px;font-weight:450;letter-spacing:-.01em;line-height:1.2}
.office-destination-return{max-width:62ch;margin:2.5rem 0 0;padding-top:1rem;border-top:1px solid var(--office-rule)}
.office-chapter__library+.office-destination-return{margin-top:0;padding-top:1.25rem;border-top:0}
/* Published-work block on a destination (1 Sep 2026): the corpus opens as
   quiet ruled rows, label above a muted meta line, in the shared tokens. */
.office-chapter__library-links{display:flex;flex-direction:column;max-width:62ch;margin:.35rem 0 0}
.office-chapter__library-links a{display:flex;flex-direction:column;gap:.15rem;min-height:44px;padding:.85rem .1rem;border-top:1px solid var(--office-rule);color:var(--office-ink);font-family:var(--office-body);text-decoration:none}
.office-chapter__library-links a:last-child{border-bottom:1px solid var(--office-rule)}
.office-chapter__library-label{font-size:18px;line-height:1.35;text-decoration:underline;text-decoration-color:var(--office-brass);text-underline-offset:.22em}
.office-chapter__library-meta{max-width:56ch;color:var(--office-muted);font-size:15px;line-height:1.5}
.office-chapter__library-links a:hover .office-chapter__library-label,.office-chapter__library-links a:focus-visible .office-chapter__library-label{text-decoration-color:var(--office-ink)}
.office-chapter__library-links a:focus-visible{outline:2px solid var(--office-ink);outline-offset:4px}
.office-destination-return a::before{content:"←";margin-inline-end:.5rem;color:var(--office-brass)}
.office-ways__area,.office-health-destination{scroll-margin-top:4rem}
.office-chapter__siblings{display:flex;flex-wrap:wrap;gap:.35rem 1.1rem;max-width:62ch;margin:2.5rem 0 0;padding-top:1rem;border-top:1px solid var(--office-rule)}
.office-chapter__context{max-width:62ch;margin:2.5rem 0 0;padding-top:1rem;border-top:1px solid var(--office-rule)}
.office-work__links{display:block;padding-top:0;border-top:0}.office-work__links>.office-ways__summary{width:100%;max-width:62ch}
.office-health-destination{margin-top:2rem;padding:2rem 0;border-top:1px solid var(--office-rule)}
.office-health-destination h2{margin:0 0 1rem;font-family:var(--office-display);font-size:clamp(2rem,5vw,3rem);font-weight:450}
.office-health-destination h3{margin-top:1.6rem}
html[lang="ar"] body.office-ways{font-family:var(--office-arabic)}
html[lang="ar"] body.office-ways .office-shell__nav a:not([lang="en"]),html[lang="ar"] body.office-ways .office-shell-foot a:not([lang="en"]){font-family:var(--office-arabic);letter-spacing:0}
html[lang="ar"] .office-ways__main>h1,html[lang="ar"] .office-chapter__article>h1{font-family:var(--office-arabic);letter-spacing:0}
html[lang="ar"] .office-ways__summary h2,html[lang="ar"] .office-chapter__section h2{font-family:var(--office-arabic);letter-spacing:0}
html[lang="ar"] .office-ways__lead,html[lang="ar"] .office-ways__summary p,html[lang="ar"] .office-chapter__intro,html[lang="ar"] .office-chapter__section p{font-family:var(--office-arabic);letter-spacing:0}
html[lang="ar"] .office-ways__summary a,html[lang="ar"] .office-chapter__siblings a,html[lang="ar"] .office-chapter__context a,html[lang="ar"] .office-destination-return a{font-family:var(--office-arabic);letter-spacing:0}
html[lang="ar"] .office-ways__summary a[lang="en"],html[lang="ar"] .office-chapter__siblings a[lang="en"]{font-family:var(--office-body);letter-spacing:normal;direction:ltr}
html[lang="ar"] .office-ways__summary p,html[lang="ar"] .office-chapter__section p{font-size:19px;line-height:1.8}
html[lang="ar"] .office-chapter__intro{font-size:20px;line-height:1.65}
html[lang="ar"] .office-chapter__article>h1{font-size:38px;line-height:1.3}
html[lang="ar"] .office-destination-return a::before{content:"→"}
html[lang="ar"] .office-ways__main{text-align:start}
html[dir="rtl"] body.office-ways header.office-shell>.office-shell__nav{justify-content:flex-start}
@media(max-width:700px){
 .office-ways__main{width:calc(100vw - 40px);padding:2rem 0 4rem}
 .office-chapter__article:has(.office-area-picture){display:block}
 .office-chapter__article:has(.office-area-picture)>.office-area-picture{position:relative;top:auto;margin:0 0 .5rem}
 .office-chapter__article>h1{font-size:36px;line-height:1.12}
 .office-chapter__intro{font-size:18px;line-height:1.55}
 .office-chapter__section{margin-top:2rem}
 .office-chapter__note{padding:1.1rem 1rem .8rem;margin-top:2.5rem}
 .office-chapter__note .office-note__meta{grid-template-columns:1fr;gap:.15rem}
 .office-chapter__note .office-note__meta dt{white-space:normal;margin-top:.5rem}
 .office-chapter__section h2{font-size:26px;line-height:1.2}
 html[lang="ar"] .office-home h1{font-size:36px}
 html[lang="ar"] .office-chapter__article>h1{font-size:36px;line-height:1.25}
 html[lang="ar"] .office-chapter__intro{font-size:20px;line-height:1.65}
}
@media(max-width:340px){
 .office-ways__main{padding-top:1rem}
 .office-chapter__section{margin-top:.5rem}
}
body.office-contact{min-height:100vh;background:var(--office-ground);color:var(--office-ink);font-family:var(--office-body)}
body.office-contact .one-header,body.office-contact .one-footer{background:var(--office-walnut);color:var(--office-ink);border-color:var(--office-rule)}
body.office-contact .one-header a,body.office-contact .one-footer a{color:var(--office-ink)}
body.office-contact .one-nav> a:not(.one-button),body.office-contact .one-menu__sheet a,body.office-contact .one-menu>summary{color:var(--office-ink)}
body.office-contact .one-nav> a:not(.one-button):hover,body.office-contact .one-menu__sheet a:hover{color:var(--office-muted)}
body.office-contact .one-menu__sheet{background:var(--office-walnut);border-color:var(--office-rule)}
body.office-contact main{background:var(--office-ground)}
body.office-contact .ri-contact__enquiry{background-color:var(--office-walnut);border-color:var(--office-brass)}
body.office-contact .ri-contact__email{color:var(--office-muted);user-select:text}
body.office-contact .ri-contact__enquiry .ri-action{color:var(--office-ink);border-color:var(--office-brass);background:transparent}
body.office-contact .ri-contact__enquiry .ri-action:hover,body.office-contact .ri-contact__enquiry .ri-action:focus-visible{background:var(--office-brass);color:var(--office-ground)}
body.office-contact .ri-contact__title,body.office-contact .ri-heading{color:var(--office-ink);font-family:var(--office-display)}
body.office-contact .ri-body,body.office-contact .ri-lead{color:var(--office-muted)}
body.office-contact .ri-body a,body.office-contact .ri-lead a,body.office-contact .ri-source a{color:var(--office-muted);text-decoration:underline;text-decoration-color:var(--office-brass);text-underline-offset:2px}
body.office-contact .ri-body a:hover,body.office-contact .ri-lead a:hover,body.office-contact .ri-source a:hover{color:var(--office-ink);text-decoration-color:var(--office-ink)}
body.office-contact .ri-source,body.office-contact .ri-folio{color:var(--office-muted)}
body.office-contact .ri-support-disclosure>summary{color:var(--office-ink)}
body.office-contact .ri-support-disclosure>summary::before{color:var(--office-muted)}
body.office-contact .ri-support-disclosure .ri-desk-route h2{color:var(--office-ink)}
body.office-contact .ri-support-disclosure>summary{color:var(--office-ink);border-color:var(--office-rule)}
body.office-contact a:focus-visible,body.office-contact .ri-support-disclosure>summary:focus-visible,body.office-contact .one-menu>summary:focus-visible,body.office-ways a:focus-visible{outline:2px solid var(--office-ink);outline-offset:4px}

/* Small touches (2 Sep 2026). Light aims where you are about to go; the lamp
   breathes; the room follows the pointer a few millimetres; the page dims as
   the walk begins and settles as the next one arrives. All of it is off
   under prefers-reduced-motion, and the light layers sit above poster and
   film alike so the two never differ. */
.office-room__light{position:absolute;z-index:3;pointer-events:none;border-radius:50%;opacity:0;mix-blend-mode:screen;filter:blur(18px);transition:opacity 520ms cubic-bezier(.2,.7,.2,1)}
.office-room__light--lamp{left:33%;top:38%;width:18%;height:22%;background:radial-gradient(ellipse at center,rgba(255,196,110,.34),rgba(255,170,80,.10) 45%,transparent 70%)}
.office-room__light--research{left:6%;top:22%;width:30%;height:44%;background:radial-gradient(ellipse at center,rgba(255,206,140,.30),rgba(255,190,110,.10) 45%,transparent 72%)}
.office-room__light--private-health{left:40%;top:52%;width:34%;height:30%;background:radial-gradient(ellipse at center,rgba(255,220,170,.30),rgba(255,200,130,.10) 45%,transparent 72%)}
.office-room__light--work{left:48%;top:30%;width:26%;height:36%;background:radial-gradient(ellipse at center,rgba(220,225,255,.26),rgba(200,210,255,.08) 45%,transparent 72%)}
.office-room__light--enquire{left:26%;top:24%;width:52%;height:56%;background:radial-gradient(ellipse at center,rgba(255,210,150,.16),rgba(255,190,120,.06) 50%,transparent 74%)}
[data-office-aim="research"] .office-room__light--research,[data-office-aim="private-health"] .office-room__light--private-health,[data-office-aim="work"] .office-room__light--work,[data-office-aim="operations"] .office-room__light--work,[data-office-aim="enquire"] .office-room__light--enquire{opacity:1}
@media(prefers-reduced-motion:no-preference){
 .office-room__light--lamp{opacity:.55;animation:office-lamp 5.5s ease-in-out infinite}
 @keyframes office-lamp{0%,100%{opacity:.42}50%{opacity:.7}}
 .office-room__frame{transition:transform 340ms cubic-bezier(.2,.7,.2,1)}
 .office-home__copy,.office-links{transition:opacity 420ms ease,transform 420ms cubic-bezier(.2,.7,.2,1)}
 body[data-office-leaving] .office-home__copy{opacity:.28;transform:translateY(-4px)}
 body[data-office-leaving] .office-links{opacity:.4}
 .office-home__copy{animation:office-arrive 640ms cubic-bezier(.2,.7,.2,1) both}
 body.office-ways .office-chapter__main,body.office-ways .office-ways__main,body.office-contact main{animation:office-arrive-fade 560ms ease-out}
 @keyframes office-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
 @keyframes office-arrive-fade{from{opacity:0}to{opacity:1}}
}
@media(prefers-reduced-motion:reduce){.office-room__light{transition:none}}
/* Continuity between pages (2 Sep 2026). With cross-document view
   transitions, the room frame on the home and the chapter's own frame share
   one name, so a door does not cut to its chapter: the last frame of the walk
   moves and settles into the chapter picture, and Back to office carries it
   home again. Browsers without the feature simply navigate. Reduced motion
   opts out entirely. */
@media(prefers-reduced-motion:no-preference){
  @view-transition{navigation:auto}
  .office-room__frame,.office-area-picture{view-transition-name:office-room}
  ::view-transition-old(root),::view-transition-new(root){animation-duration:.42s;animation-timing-function:cubic-bezier(.2,.7,.2,1)}
  ::view-transition-group(office-room){animation-duration:.62s;animation-timing-function:cubic-bezier(.2,.7,.2,1)}
  ::view-transition-old(office-room){animation:none;mix-blend-mode:normal}
  ::view-transition-new(office-room){animation:office-room-arrive .62s cubic-bezier(.2,.7,.2,1) both;mix-blend-mode:normal}
  @keyframes office-room-arrive{from{opacity:0}to{opacity:1}}
  html:active-view-transition .office-area-picture img{animation:none}
  html:active-view-transition .office-chapter__main,html:active-view-transition .office-ways__main{animation:none}
}
/* About in the office shell (3 Sep 2026). The portrait stands beside the
   words as a chapter's room picture does, cropped 4:5 and toned to the room;
   the page's own labels, the two lines under the introduction, the
   commitments and the in-section links take the chapter's tokens. Words
   unchanged. */
#about .office-area-picture img{aspect-ratio:4 / 5;object-position:50% 26%;filter:sepia(.08) saturate(.7) contrast(1.08) brightness(.9);max-width:420px;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 3%,#000 97%,transparent 100%),linear-gradient(to right,transparent 0%,#000 3%,#000 97%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 3%,#000 97%,transparent 100%),linear-gradient(to right,transparent 0%,#000 3%,#000 97%,transparent 100%)}
/* 3 Sep 2026 audit: the About section labels rendered at 12.5px. A label a
   reader has to lean in for is not a label; 14px is the floor. */
#about .office-about__label{max-width:62ch;margin:0 0 .6rem;color:var(--office-muted);font-family:var(--office-body);font-size:.875rem;letter-spacing:.13em;line-height:1.4;text-transform:uppercase}
#about .office-about__eyebrow{margin-bottom:1rem}
#about .office-chapter__intro{margin-bottom:1rem}
#about .office-about__opening{margin-top:0}
#about .office-about__commitment{margin-top:1.6rem}
#about .office-about__commitment h3{max-width:62ch;margin:0 0 .45rem;font-family:var(--office-display);font-size:21px;font-weight:450;letter-spacing:-.01em;line-height:1.25}
#about .office-about__link{margin-bottom:.25rem}
#about .office-chapter__section p a{display:inline-flex;align-items:center;min-height:44px;color:var(--office-ink);text-decoration:underline;text-decoration-color:var(--office-brass);text-underline-offset:.22em}
#about .office-chapter__section p a:hover,#about .office-chapter__section p a:focus-visible{text-decoration-color:var(--office-ink)}
@media(max-width:700px){#about .office-area-picture img{aspect-ratio:4 / 5;max-width:none}}
