@font-face{font-family:'Bodoni Moda';font-style:italic;font-weight:400 900;font-display:swap;src:url(fonts/bodoni-moda-italic.woff2) format('woff2');}
@font-face{font-family:'Bodoni Moda';font-style:normal;font-weight:400 900;font-display:swap;src:url(fonts/bodoni-moda.woff2) format('woff2');}
@font-face{font-family:'Archivo';font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(fonts/archivo.woff2) format('woff2');}
@font-face{font-family:'Aref Ruqaa';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/aref-ruqaa-700.woff2) format('woff2');unicode-range:U+0600-06FF,U+0750-077F,U+08A0-08FF,U+200C-200E,U+FB50-FDFF,U+FE70-FEFC;}
@font-face{font-family:'Amiri';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/amiri-400.woff2) format('woff2');unicode-range:U+0600-06FF,U+0750-077F,U+08A0-08FF,U+200C-200E,U+FB50-FDFF,U+FE70-FEFC;}
@font-face{font-family:'Amiri';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/amiri-700.woff2) format('woff2');unicode-range:U+0600-06FF,U+0750-077F,U+08A0-08FF,U+200C-200E,U+FB50-FDFF,U+FE70-FEFC;}
@font-face{font-family:'Alexandria';font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/alexandria.woff2) format('woff2');unicode-range:U+0600-06FF,U+0750-077F,U+08A0-08FF,U+200C-200E,U+FB50-FDFF,U+FE70-FEFC;}
@font-face{font-family:'Imperial Script';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/imperial-script.woff2) format('woff2');}


:root{
  color-scheme:dark;
  /* black and white base */
  --black:#070707; --coal:#121211; --graphite:#1D1C1B;
  --ink:#F1EDE6; --ink-2:#B7B2A9; --ink-3:#7A7670;
  --line:rgba(241,237,230,.15); --line-2:rgba(241,237,230,.08);
  --paper:#F6F3ED; --paper-ink:#161514;
  /* accents, sampled from the commissioned artworks */
  --cobalt:#4A6BFF; --violet:#8562FF; --plum:#C6529D; --citron:#D9E032;
  --orchid:#F56ADF; --green:#45DB33; --red:#FF4529; --tangerine:#FF8E24;
  --serif:'Bodoni Moda','Didot','Bodoni 72',Georgia,serif;
  --sans:'Archivo','Helvetica Neue',Arial,sans-serif;
  --script:'Imperial Script','Snell Roundhand','Apple Chancery',cursive;
  --ease:cubic-bezier(.2,.7,.1,1);
  --gut:clamp(20px,5vw,72px);
  /* the content column: every size and every scene position below is derived from it, never from the window edge */
  --cw:min(100vw - 2*var(--gut),1560px);
}
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:clip;}
body{margin:0;background:var(--black);color:var(--ink);font-family:var(--sans);font-size:clamp(16px,calc(var(--cw)*.0135),19px);line-height:1.6;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip;}
@supports not (overflow-x:clip){body{overflow-x:hidden;}}
img{display:block;max-width:100%;}
a{color:inherit;}
p{margin:0;}
h1,h2,h3,h4{margin:0;font-weight:400;}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;}
:focus-visible{outline:2px solid var(--ink);outline-offset:4px;}
::selection{background:var(--ink);color:var(--black);}
.wrap{width:var(--cw);margin-inline:auto;position:relative;}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}

/* ============ the page as one continuous scene ============ */
.page{position:relative;isolation:isolate;}
.tone{position:absolute;inset:0;z-index:-3;pointer-events:none;
  background:linear-gradient(to bottom,#070707 0,#070707 22%,#121211 36%,#1D1C1B 54%,#0A0A0A 70%,#121211 86%,#060606 100%);}
.grain{position:absolute;inset:0;z-index:-2;pointer-events:none;background:url(img/grain.png) 0 0/180px 180px;}
.scn{position:absolute;inset:-180px 0;z-index:-1;pointer-events:none;}
.scn>*{position:absolute;}

/* soft light forms */
.haze{background:radial-gradient(closest-side,rgba(236,230,222,.30),rgba(236,230,222,.12) 50%,transparent 100%);}
/* the commissioned artworks, re-inked for a black ground: pencil becomes light, the painted colours stay */
.nart{aspect-ratio:5/6;background:center/contain no-repeat;}
.nart-05{background-image:url(img/makeup-district-artwork-night-05.webp);}
.nart-01{background-image:url(img/makeup-district-artwork-night-01.webp);}
.nart-02{background-image:url(img/makeup-district-artwork-night-02.webp);}
.sheen{background:radial-gradient(ellipse 50% 50% at 50% 56%,rgba(255,250,243,.15),rgba(255,250,243,.05) 55%,transparent 100%);transform:rotate(6deg);}
/* scene placement: measured from the centre of the content column, so it is identical on every screen width */
.s-hero-haze{left:calc(50% - var(--cw)*.04);top:40px;width:calc(var(--cw)*.92);height:calc(var(--cw)*.78);opacity:.7;}
.hero-art{left:calc(50% + var(--cw)*.055);top:118px;height:calc(var(--cw)*.67);}
.s-hero-sheen1{left:calc(50% - var(--cw)*.44);top:-40px;width:calc(var(--cw)*.2);height:118%;}
.s-hero-sheen2{left:calc(50% - var(--cw)*.04);top:20%;width:calc(var(--cw)*.3);height:100%;opacity:.4;}
.s-edge-l{left:calc(50% - var(--cw)/2 - 162px);}
.s-edge-r{right:calc(50% - var(--cw)/2 - 152px);}
.s-svc-sheen{left:calc(50% + var(--cw)*.2);top:6%;width:calc(var(--cw)*.22);height:70%;opacity:.5;}
.s-story-haze{left:calc(50% + var(--cw)*.06);top:4%;width:calc(var(--cw)*.7);height:calc(var(--cw)*.7);opacity:.5;}
.s-story-sheen{left:calc(50% - var(--cw)*.12);top:0;width:calc(var(--cw)*.2);height:100%;opacity:.55;}
.s-book-haze{left:calc(50% - var(--cw)*.5);top:50%;width:var(--cw);height:calc(var(--cw)*.66);margin-top:calc(var(--cw)*-.33);opacity:.55;}
.book-art{left:calc(50% + var(--cw)*.2);top:50%;height:calc(var(--cw)*.5);margin-top:calc(var(--cw)*-.25);opacity:.92;}

/* triangle facet pattern, from the artworks */
.fct{display:block;overflow:visible;}
.fct .fl path{fill:none;stroke:var(--ink);stroke-width:1;opacity:.13;vector-effect:non-scaling-stroke;}
.fct polygon{fill:var(--ink);opacity:0;transition:opacity .9s ease;}
.fct polygon.a{opacity:.74;}
.fct polygon.b{opacity:.42;}
.fct polygon.c{opacity:.16;}
.glint{position:absolute;left:0;top:0;width:60px;height:51.96px;z-index:-1;pointer-events:none;background:var(--ink);opacity:0;transition:opacity 1.2s ease;clip-path:polygon(50% 0,100% 100%,0 100%);}
.glint.dn{clip-path:polygon(0 0,100% 0,50% 100%);}
.glint.hit{opacity:.42;transition-duration:.14s;}
.soft .fct polygon.a{opacity:.2;}
.soft .fct polygon.b{opacity:.11;}
.soft .fct polygon.c{opacity:.06;}

/* ============ header ============ */
.hdr{position:sticky;top:env(safe-area-inset-top,0px);z-index:100;}
.hdr::before{content:"";position:absolute;left:0;right:0;top:0;height:124px;pointer-events:none;opacity:0;transition:opacity .6s;
  background:linear-gradient(to bottom,#070707 0,#070707 44%,rgba(7,7,7,.86) 58%,rgba(7,7,7,.5) 74%,rgba(7,7,7,.16) 90%,rgba(7,7,7,0) 100%);}
.hdr.is-stuck::before{opacity:1;}
.hdr-in{position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding-block:16px;}
.nav,.lang,.menu-btn{transition:transform .6s var(--ease);}
.hdr.is-stuck .nav,.hdr.is-stuck .lang,.hdr.is-stuck .menu-btn{transform:translateY(-13px);}
.nav{display:flex;gap:clamp(18px,2.7vw,42px);}
.nav a{position:relative;padding:8px 0;font-size:13px;font-weight:500;font-stretch:112%;letter-spacing:.06em;text-decoration:none;color:var(--ink);white-space:nowrap;}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:1px;height:1.5px;background:var(--c,var(--ink));
  transform:scaleX(0);transform-origin:right center;transition:transform .55s var(--ease);}
.nav a:hover::after,.nav a:focus-visible::after,.nav a.is-current::after{transform:scaleX(1);transform-origin:left center;}
.brand{display:block;justify-self:center;line-height:0;}
.brand img{height:64px;width:auto;transform-origin:50% 0;transition:transform .6s var(--ease);}
.hdr.is-stuck .brand img{transform:translateY(-6px) scale(.72);}
.hdr-r{justify-self:end;display:flex;align-items:center;gap:clamp(18px,2.7vw,42px);}
.lang{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:500;font-stretch:112%;letter-spacing:.14em;color:var(--ink-3);}
.lang button{padding:8px 2px;color:var(--ink-3);transition:color .3s;}
.lang button.on,.lang button:hover{color:var(--ink);}
.lang .lang-ar{font-family:'Alexandria','Archivo',sans-serif;font-size:14px;font-weight:500;letter-spacing:0;font-stretch:100%;line-height:1;}
.progress{position:absolute;left:0;top:0;height:1.5px;width:100%;transform:scaleX(0);transform-origin:left;pointer-events:none;
  background:linear-gradient(90deg,var(--cobalt),var(--violet),var(--orchid),var(--red),var(--tangerine),var(--citron),var(--green));}
.menu-btn{display:none;justify-self:start;align-items:center;gap:10px;padding:10px 0;font-size:12px;font-weight:500;font-stretch:112%;letter-spacing:.16em;text-transform:uppercase;}
.menu-btn i{position:relative;width:22px;height:9px;}
.menu-btn i::before,.menu-btn i::after{content:"";position:absolute;left:0;right:0;height:1.5px;background:currentColor;transition:transform .45s var(--ease);}
.menu-btn i::before{top:0;}.menu-btn i::after{bottom:0;}
.menu-open .menu-btn i::before{transform:translateY(3.75px) rotate(20deg);}
.menu-open .menu-btn i::after{transform:translateY(-3.75px) rotate(-20deg);}
.menu{position:fixed;inset:0;z-index:90;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:120px var(--gut) 60px;
  background:rgba(7,7,7,.94);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);
  opacity:0;visibility:hidden;transition:opacity .5s,visibility 0s .5s;}
.menu-open .menu{opacity:1;visibility:visible;transition:opacity .5s,visibility 0s;}
.menu a{display:flex;align-items:baseline;gap:16px;padding:10px 0;text-decoration:none;font:italic 400 clamp(38px,11vw,60px)/1.1 var(--serif);
  opacity:0;transform:translateY(22px);transition:opacity .6s var(--ease),transform .7s var(--ease);}
.menu a span{font:500 11px/1 var(--sans);font-stretch:125%;letter-spacing:.2em;color:var(--c);}
.menu-open .menu a{opacity:1;transform:none;transition-delay:calc(var(--i)*70ms + 120ms);}

/* ============ buttons ============ */
.btn{position:relative;display:inline-flex;align-items:center;gap:14px;padding:18px 28px;border:1px solid var(--ink);isolation:isolate;overflow:hidden;
  font-size:13px;font-weight:600;font-stretch:112%;letter-spacing:.08em;line-height:1;text-decoration:none;white-space:nowrap;
  transition:color .5s var(--ease),border-color .5s;}
.btn::before{content:"";position:absolute;inset:-1px;z-index:-1;clip-path:polygon(0 0,0 0,-34% 100%,0 100%);transition:clip-path .7s var(--ease);}
.btn:hover::before,.btn:focus-visible::before{clip-path:polygon(0 0,134% 0,100% 100%,0 100%);}
.btn svg{width:18px;height:10px;flex:none;transition:transform .5s var(--ease);}
.btn:hover svg{transform:translateX(5px);}
.btn-solid{background:var(--ink);color:var(--black);}
.btn-solid::before{background:var(--black);}
.btn-solid:hover,.btn-solid:focus-visible{color:var(--ink);}
.btn-ghost{color:var(--ink);border-color:rgba(241,237,230,.42);background:rgba(7,7,7,.5);}
.btn-ghost::before{background:var(--ink);}
.btn-ghost:hover,.btn-ghost:focus-visible{color:var(--black);border-color:var(--ink);}

/* ============ type ============ */
.eyebrow{display:flex;align-items:center;justify-content:center;gap:16px;font-size:11px;font-weight:500;font-stretch:125%;letter-spacing:.32em;text-transform:uppercase;color:var(--ink-2);}
.eyebrow::before,.eyebrow::after{content:"";width:clamp(28px,6vw,72px);height:1px;background:linear-gradient(90deg,transparent,var(--line));}
.eyebrow::after{transform:scaleX(-1);}
.eyebrow.left{justify-content:flex-start;}
.eyebrow.left::before{display:none;}
.rh{display:inline-block;width:14px;height:8px;background:currentColor;clip-path:polygon(0 50%,50% 0,100% 50%,50% 100%);flex:none;}
.h2{font-size:clamp(38px,calc(var(--cw)*.062),96px);line-height:1;letter-spacing:-.02em;}
.h2 .it{font-family:var(--serif);font-style:italic;font-weight:400;font-variation-settings:'opsz' 36;}
.h2 .gr{font-family:var(--sans);font-weight:900;font-stretch:125%;letter-spacing:-.045em;text-transform:lowercase;font-size:.9em;}
.sec-head{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px clamp(24px,5vw,80px);align-items:end;}
.sec-head p{justify-self:end;max-width:34ch;color:var(--ink-2);font-size:16px;padding-bottom:.5em;}
section{position:relative;padding-block:clamp(40px,4.8vw,68px);scroll-margin-top:64px;}

/* ============ hero ============ */
.hero{padding-block:calc(var(--cw)*.04) clamp(22px,calc(var(--cw)*.028),44px);text-align:center;}
.h1{font-size:calc(var(--cw)*.098);line-height:.9;color:var(--ink);}
.h1 .l{display:block;}
.h1 .w{display:inline-block;}
.h1 .sc{font-family:var(--script);font-weight:400;font-size:1.52em;line-height:.6;letter-spacing:0;margin-right:.02em;vertical-align:-.04em;}
.h1 .fat{font-family:var(--serif);font-weight:900;font-size:.92em;letter-spacing:-.025em;font-variation-settings:'opsz' 24;}
.h1 .l2{font-family:var(--sans);font-weight:900;font-stretch:125%;letter-spacing:-.048em;text-transform:lowercase;margin-top:.02em;}
.h1 .l2 .w+.w{margin-left:.1em;}
.lede{max-width:35em;margin:clamp(22px,2.6vw,36px) auto 0;font-size:clamp(16px,calc(var(--cw)*.0148),22px);line-height:1.62;color:var(--ink-2);}
.cta-row{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:clamp(26px,3vw,40px);}
.cue{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:clamp(32px,4vw,52px);font-size:10px;font-weight:500;font-stretch:125%;letter-spacing:.34em;text-transform:uppercase;color:var(--ink-3);text-decoration:none;}
.cue i{position:relative;width:1px;height:46px;background:var(--line);overflow:hidden;}
.cue i::after{content:"";position:absolute;left:0;top:0;width:1px;height:18px;background:var(--ink);animation:cue 2.6s var(--ease) 3.6s 3 both;}
@media (min-width:641px){
  .hero{text-align:start;}
  .hero-copy{width:60%;}
  .hero .h1{font-size:calc(var(--cw)*.112);}
  .hero .h1 .l1{font-size:.66em;white-space:nowrap;}
  .hero .h1 .l2{margin-top:.07em;}
  .hero .h1 .l2 .w{display:block;margin-left:0;}
  .hero .lede{margin-inline:0;max-width:31em;}
  .hero .cta-row{justify-content:flex-start;}
  .hero .cue{display:none;}
}
@keyframes cue{from{transform:translateY(-20px);}to{transform:translateY(48px);}}

/* hero opening sequence */
@keyframes focusIn{from{opacity:0;transform:translateY(.3em);}to{opacity:1;transform:none;}}
@keyframes riseIn{from{opacity:0;transform:translateY(18px);}to{opacity:1;transform:none;}}
@keyframes dropIn{from{opacity:0;transform:translateY(-12px);}to{opacity:1;transform:none;}}
@keyframes bloom{from{opacity:0;}to{opacity:1;}}
.hdr-in>*{animation:dropIn 1.3s var(--ease) backwards;}
.hdr-in>.brand{animation:none;}
.hdr-in>.nav,.hdr-in>.menu-btn{animation-delay:.2s;}
.hdr-in>.hdr-r{animation-delay:.4s;}
.h1 .w{animation:focusIn 1.8s var(--ease) both;animation-delay:calc(var(--i)*.26s + .35s);}
.hero .lede{animation:riseIn 1.4s var(--ease) 1.6s both;}
.hero .cta-row{animation:riseIn 1.4s var(--ease) 1.95s both;}
.hero .cue{animation:riseIn 1.4s var(--ease) 2.3s both;}
.hero .scn{animation:bloom 3.4s ease .2s both;}
.hero-art{animation:artIn 4s var(--ease) .2s both;}
@keyframes artIn{from{transform:translate3d(3%,0,0) scale(1.06);}to{transform:none;}}
.credits-run{animation:bloom 2s ease 2.5s both;}
/* the opening sequence waits: nothing starts until the page has fully loaded, painted and is actually on screen */
.js:not(.ready) .hdr-in>*,.js:not(.ready) .h1 .w,.js:not(.ready) .hero .lede,.js:not(.ready) .hero .cta-row,.js:not(.ready) .hero .cue,
.js:not(.ready) .hero .scn,.js:not(.ready) .hero-art,.js:not(.ready) .credits-run,.js:not(.ready) .cue i::after{animation-play-state:paused;}

/* ============ credits line ============ */
.credits-run{position:relative;padding-block:6px 18px;overflow:hidden;}
.run{display:flex;width:max-content;will-change:transform;}
.run ul{display:flex;align-items:center;gap:clamp(26px,3.2vw,48px);margin:0;padding:0 clamp(13px,1.6vw,24px);list-style:none;}
.run li{display:flex;align-items:center;gap:clamp(26px,3.2vw,48px);white-space:nowrap;font:italic 400 clamp(19px,calc(var(--cw)*.021),31px)/1.3 var(--serif);font-variation-settings:'opsz' 22;color:var(--ink-2);}
.run li::after{content:"";width:12px;height:7px;background:var(--ink-3);clip-path:polygon(0 50%,50% 0,100% 50%,50% 100%);}

/* ============ gallery prints ============ */
.work{padding-top:clamp(40px,5vw,64px);}
.prints{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,3.2vw,48px);margin-top:clamp(36px,4.5vw,60px);perspective:1500px;}
.print{position:relative;margin:0;}
.print:nth-child(2){margin-top:clamp(0px,4vw,56px);}
.print .spot{position:absolute;left:50%;top:-190px;width:170%;height:calc(100% + 320px);transform:translateX(-50%);z-index:-1;pointer-events:none;opacity:.8;transition:opacity .8s;
  background:radial-gradient(ellipse 48% 36% at 50% 38%,rgba(255,250,243,.19),rgba(255,250,243,.07) 52%,transparent 100%);}
.print:hover .spot{opacity:1.3;}
.sheet{position:relative;background:var(--paper);padding:clamp(8px,1.1vw,14px) clamp(8px,1.1vw,14px) 0;
  box-shadow:0 40px 70px -28px rgba(0,0,0,.9),0 12px 24px -12px rgba(0,0,0,.6);
  transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) rotate(var(--rz,0deg));transition:transform .7s var(--ease),box-shadow .7s;}
.sheet::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .6s;
  background:radial-gradient(circle 240px at var(--gx,50%) var(--gy,0%),rgba(255,255,255,.22),transparent 70%);}
.print:hover .sheet::after{opacity:1;}
.art{aspect-ratio:5/6;background-color:var(--paper);background-size:cover;background-position:center;background-blend-mode:multiply;}
.a01{background-image:url(img/makeup-district-artwork-01.jpg);}
.a02{background-image:url(img/makeup-district-artwork-02.jpg);}
.a03{background-image:url(img/makeup-district-artwork-03.jpg);}
.a04{background-image:url(img/makeup-district-artwork-04.jpg);}
.a05{background-image:url(img/makeup-district-artwork-05.jpg);}
.a06{background-image:url(img/makeup-district-artwork-06.jpg);}
.a08{background-image:url(img/makeup-district-artwork-08.jpg);}
.cap{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:clamp(8px,1vw,13px) 2px clamp(9px,1.1vw,14px);color:var(--paper-ink);}
.cap b{font:italic 500 clamp(13px,1.2vw,16px)/1 var(--serif);font-variation-settings:'opsz' 14;white-space:nowrap;}
.cap span{font-size:clamp(8px,.72vw,10px);font-weight:600;font-stretch:125%;letter-spacing:.22em;text-transform:uppercase;opacity:.62;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

/* ============ services ============ */
.svc{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,6vw,104px);align-items:start;margin-top:clamp(36px,4.5vw,64px);}
.stage{position:sticky;top:112px;}
.stage-glow{position:absolute;inset:-34%;z-index:-1;pointer-events:none;opacity:0;color:var(--violet);
  background:radial-gradient(closest-side,currentColor 26%,transparent 100%);transition:opacity .9s ease;}
.stage-glow.on{opacity:.34;}
.stage .sheet{--rz:-1.6deg;}
.stage-art{position:relative;aspect-ratio:5/6;overflow:hidden;background:var(--paper);}
.stage-art .art{position:absolute;inset:0;opacity:0;transition:opacity .7s var(--ease);}
.stage-art .art.on{opacity:1;z-index:1;}
.stage .cap b{transition:color .5s;}
.svc-list{list-style:none;margin:0;padding:0;}
.row{position:relative;display:grid;grid-template-columns:54px minmax(0,1fr) auto;column-gap:clamp(10px,1.6vw,24px);align-items:center;
  padding:clamp(18px,2vw,26px) 0;border-top:1px solid var(--line);text-decoration:none;color:inherit;}
.svc-list li:last-child .row{border-bottom:1px solid var(--line);}
.row::before{content:"";position:absolute;left:0;top:-1px;width:100%;height:1px;background:var(--acc);transform:scaleX(0);transform-origin:left;transition:transform .8s var(--ease);}
.row.on::before{transform:scaleX(1);}
.row .n{align-self:start;padding-top:.75em;font-size:11px;font-weight:500;font-stretch:125%;letter-spacing:.2em;color:var(--ink-3);transition:color .45s;}
.row.on .n{color:var(--acc);}
.row .tx{transition:transform .7s var(--ease);}
.row.on .tx{transform:translateX(10px);}
.row h3{font:500 clamp(23px,calc(var(--cw)*.028),42px)/1.14 var(--serif);font-variation-settings:'opsz' 22;letter-spacing:-.005em;color:rgba(241,237,230,.66);transition:color .45s;}
.row.on h3{color:var(--ink);}
.row p{margin-top:7px;max-width:48ch;font-size:15px;line-height:1.55;color:var(--ink-3);transition:color .45s;}
.row.on p{color:var(--ink-2);}
.row .go{display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--line);border-radius:50%;color:var(--ink-3);
  transition:background .5s,border-color .5s,color .5s,transform .7s var(--ease);}
.row .go svg{width:16px;height:9px;transform:rotate(-45deg);transition:transform .7s var(--ease);}
.row.on .go{background:var(--acc);border-color:var(--acc);color:#0A0A0A;}
.row.on .go svg{transform:none;}
.row .thumb{display:none;}

/* ============ story ============ */
.story-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(28px,7vw,120px);align-items:center;}
.story .h2{margin-top:18px;}
.story .lead{margin-top:clamp(22px,2.4vw,34px);font:400 clamp(21px,calc(var(--cw)*.0225),34px)/1.4 var(--serif);font-variation-settings:'opsz' 16;color:var(--ink);}
.story .body{margin-top:18px;max-width:58ch;color:var(--ink-2);}
.history{margin-top:clamp(28px,3vw,42px);}
.history h4{display:flex;align-items:center;gap:12px;font-size:11px;font-weight:500;font-stretch:125%;letter-spacing:.3em;text-transform:uppercase;color:var(--ink-2);}
.history dl{margin:16px 0 0;}
.history .hr{display:grid;grid-template-columns:118px minmax(0,1fr);gap:18px;padding:13px 0;border-top:1px solid var(--line-2);}
.history dt{padding-top:.42em;font-size:10px;font-weight:500;font-stretch:125%;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-3);}
.history dd{margin:0;font:italic 400 clamp(17px,1.5vw,21px)/1.4 var(--serif);font-variation-settings:'opsz' 16;color:var(--ink);}
.story-art{position:relative;}
.story-art .sheet{--rz:1.8deg;}
.story-art .spot{left:50%;top:-30%;width:190%;height:160%;background:radial-gradient(ellipse 48% 42% at 50% 44%,rgba(255,250,243,.2),rgba(255,250,243,.07) 52%,transparent 100%);}

/* ============ our work ============ */
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:clamp(24px,3vw,40px);}
.chip{padding:11px 18px;border:1px solid var(--line);font-size:11px;font-weight:500;font-stretch:112%;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2);transition:background .4s,color .4s,border-color .4s;}
.chip:hover{border-color:var(--ink);color:var(--ink);}
.chip[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--black);}
.gal{columns:3;column-gap:clamp(10px,calc(var(--cw)*.014),22px);margin-top:clamp(18px,2.2vw,30px);}
.shot{position:relative;display:block;width:100%;margin:0 0 clamp(10px,calc(var(--cw)*.014),22px);padding:0;overflow:hidden;break-inside:avoid;background:#111;cursor:zoom-in;}
.shot img{width:100%;height:auto;transition:transform 1.4s var(--ease);pointer-events:none;}
/* photos and artworks: no drag, no long-press save, no right-click menu (see script) */
.shot,.lb-stage,.lb-stage img,.art,.nart,.thumb,.brand img,.ftr-brand img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;}
.shot:hover img,.shot:focus-visible img{transform:scale(1.045);}
.shot span{position:absolute;left:0;bottom:0;padding:9px 13px;background:rgba(7,7,7,.78);font-size:10px;font-weight:500;font-stretch:125%;letter-spacing:.22em;text-transform:uppercase;color:var(--ink);opacity:0;transform:translateY(6px);transition:opacity .4s,transform .5s var(--ease);}
.shot:hover span,.shot:focus-visible span{opacity:1;transform:none;}
.shot.off{display:none;}
@media (min-width:1200px){.gal{columns:4;}}

/* contact page */
.reach{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(28px,calc(var(--cw)*.07),110px);align-items:start;}
.cards{display:grid;gap:clamp(14px,1.6vw,22px);}
.card{padding:clamp(24px,3vw,40px);border:1px solid var(--line);background:rgba(255,250,243,.035);}
.mail-img{display:block;width:auto;height:clamp(24px,calc(var(--cw)*.028),38px);max-width:100%;object-fit:contain;object-position:left;margin-top:20px;-webkit-user-drag:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;}
.card h3{margin-top:18px;font:500 clamp(26px,calc(var(--cw)*.028),38px)/1.1 var(--serif);font-variation-settings:'opsz' 22;}
.card p{margin-top:14px;max-width:46ch;color:var(--ink-2);}
.card .cta-row{justify-content:flex-start;margin-top:24px;}
.reach-note{color:var(--ink-2);}
.reach-note a{color:var(--ink);text-underline-offset:4px;}
@media (max-width:900px){.reach{grid-template-columns:minmax(0,1fr);}.cards{order:-1;}}

/* photo viewer */
.lb{position:fixed;inset:0;z-index:200;display:grid;grid-template-rows:1fr auto;background:#050505;opacity:0;visibility:hidden;transition:opacity .4s,visibility 0s .4s;}
.lb.open{opacity:1;visibility:visible;transition:opacity .4s,visibility 0s;}
.lb-stage{position:relative;display:grid;place-items:center;min-height:0;padding:clamp(56px,7vh,84px) clamp(16px,6vw,96px) 12px;}
.lb-stage img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;box-shadow:0 30px 80px -30px #000;pointer-events:none;}
.lb-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px clamp(16px,6vw,96px) calc(18px + env(safe-area-inset-bottom,0px));font-size:11px;font-weight:500;font-stretch:125%;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-2);}
.lb button{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--line);border-radius:50%;color:var(--ink);background:rgba(7,7,7,.6);transition:background .4s,color .4s,border-color .4s;}
.lb button:hover{background:var(--ink);color:var(--black);border-color:var(--ink);}
.lb button svg{width:16px;height:16px;}
.lb-x{position:absolute;right:clamp(16px,3vw,40px);top:clamp(14px,2.4vh,28px);}
.lb-p,.lb-n{position:absolute;top:50%;margin-top:-24px;}
.lb-p{left:clamp(8px,2vw,32px);}.lb-n{right:clamp(8px,2vw,32px);}

/* booking: one question, then WhatsApp */
.bk{position:fixed;inset:0;z-index:210;display:grid;place-items:center;padding:16px;background:rgba(5,5,5,.82);opacity:0;visibility:hidden;transition:opacity .4s,visibility 0s .4s;}
.bk.open{opacity:1;visibility:visible;transition:opacity .4s,visibility 0s;}
.bk-panel{position:relative;width:min(560px,100%);padding:clamp(28px,5vw,48px);background:var(--coal);border:1px solid var(--line);transform:translateY(18px);transition:transform .6s var(--ease);}
.bk.open .bk-panel{transform:none;}
.bk-eyebrow{display:flex;align-items:center;gap:12px;font-size:11px;font-weight:500;font-stretch:125%;letter-spacing:.28em;text-transform:uppercase;color:var(--ink-2);}
.bk h3{margin-top:14px;font:italic 400 clamp(30px,5vw,44px)/1.08 var(--serif);font-variation-settings:'opsz' 30;}
.bk-svc{margin-top:10px;color:var(--ink-2);font-size:15px;}
.bk-svc b{font-weight:500;color:var(--ink);}
.bk-opts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:clamp(22px,3vw,30px);}
.bk-opt{position:relative;display:block;padding:20px 20px 18px;border:1px solid var(--line);text-decoration:none;color:var(--ink);transition:background .4s,color .4s,border-color .4s;}
.bk-opt:hover,.bk-opt:focus-visible{background:var(--ink);border-color:var(--ink);color:var(--black);}
.bk-opt b{display:block;font:500 clamp(24px,3.4vw,30px)/1.1 var(--serif);font-variation-settings:'opsz' 22;}
.bk-opt small{display:block;margin-top:5px;font-size:10px;font-weight:500;font-stretch:125%;letter-spacing:.22em;text-transform:uppercase;opacity:.66;}
.bk-opt i{display:flex;align-items:center;gap:8px;margin-top:18px;font-style:normal;font-size:12px;font-weight:600;font-stretch:112%;letter-spacing:.06em;}
.bk-opt i svg{width:16px;height:9px;}
.bk-opt.sug{border-color:var(--ink);}
.bk-opt.sug::after{content:attr(data-sug);position:absolute;inset-inline-end:12px;top:-9px;padding:2px 8px;background:var(--coal);font-size:9px;font-weight:500;font-stretch:125%;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-2);}
.bk-opt.na{pointer-events:none;opacity:.5;}
.bk-note{margin-top:18px;font-size:14px;color:var(--ink-3);}
.bk-x{position:absolute;right:12px;top:12px;display:grid;place-items:center;width:40px;height:40px;color:var(--ink-2);}
.bk-x:hover{color:var(--ink);}
.bk-x svg{width:14px;height:14px;}
.no-scroll{overflow:hidden;}

/* ============ book ============ */
.book{text-align:center;padding-block:clamp(60px,7.4vw,108px) clamp(56px,6.6vw,96px);}
.book .h1{font-size:calc(var(--cw)*.085);}
.book .lede{margin-top:clamp(20px,2.4vw,32px);color:var(--ink);}

/* ============ footer ============ */
.ftr{position:relative;padding:clamp(40px,5vw,72px) 0 calc(28px + env(safe-area-inset-bottom,0px));}
.ftr-top{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(5,minmax(0,1fr));gap:clamp(24px,4vw,56px);align-items:start;}
.ftr-brand img{height:104px;width:auto;}
.ftr-brand p{margin-top:20px;max-width:26ch;font:italic 400 19px/1.4 var(--serif);font-variation-settings:'opsz' 16;color:var(--ink-2);}
.ftr h4{display:flex;align-items:center;gap:10px;white-space:nowrap;margin-bottom:14px;font-size:10.5px;font-weight:500;font-stretch:125%;letter-spacing:.3em;text-transform:uppercase;color:var(--ink-3);}
.ftr h4 i{color:var(--c);}
.ftr-col a{position:relative;display:table;padding:5px 0;font-size:15px;text-decoration:none;color:var(--ink);}
.ftr-col a::after{content:"";position:absolute;left:0;right:0;bottom:3px;height:1px;background:var(--c,var(--ink));transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease);}
.ftr-col a:hover::after,.ftr-col a:focus-visible::after{transform:scaleX(1);transform-origin:left;}
.ftr-end{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:clamp(36px,5vw,64px);font-size:10.5px;font-weight:500;font-stretch:125%;letter-spacing:.26em;text-transform:uppercase;color:var(--ink-3);}
.ftr-end a{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink-2);transition:color .3s;}
.ftr-end a:hover{color:var(--ink);}
.ftr-end a svg{width:9px;height:16px;transition:transform .5s var(--ease);}
.ftr-end a:hover svg{transform:translateY(-4px);}

/* ============ scroll reveals (only when script is running) ============ */
.js .rv{opacity:0;transform:translateY(30px);transition:opacity 1.5s var(--ease) var(--d,0s),transform 1.7s var(--ease) var(--d,0s);}
.js .rv.in{opacity:1;transform:none;}
.js .rvf{opacity:0;transform:translateY(24px);transition:opacity 1.5s var(--ease) var(--d,0s),transform 1.7s var(--ease) var(--d,0s);}
.js .rvf.in{opacity:1;transform:none;}
.js .wipe .art{clip-path:polygon(0 0,0 0,0 0);transition:clip-path 2.4s var(--ease) calc(var(--d,0s) + .2s);}
.js .wipe.in .art{clip-path:polygon(0 0,200% 0,0 200%);}
.js .wipe.done .art{clip-path:none;transition:none;}
[data-par]{will-change:translate;}

/* ============ floating WhatsApp ============ */
.wa-float{position:fixed;z-index:150;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));display:inline-flex;align-items:center;gap:10px;height:54px;padding:0 22px 0 16px;border:1px solid var(--ink);border-radius:27px;background:var(--ink);color:var(--black);text-decoration:none;font-size:13px;font-weight:600;font-stretch:112%;letter-spacing:.04em;white-space:nowrap;box-shadow:0 14px 34px -12px rgba(0,0,0,.85);opacity:0;transform:translateY(18px);pointer-events:none;transition:opacity .6s var(--ease),transform .6s var(--ease),background .4s,color .4s;}
.ready .wa-float{opacity:1;transform:none;pointer-events:auto;}
.wa-float svg{width:24px;height:24px;flex:none;}
.wa-float:hover,.wa-float:focus-visible{background:var(--black);color:var(--ink);}
.no-scroll .wa-float,.menu-open .wa-float{opacity:0;transform:translateY(18px);pointer-events:none;}
/* ============ welcome offer ============ */
.wc{position:fixed;z-index:160;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(84px + env(safe-area-inset-bottom,0px));width:min(390px,calc(100vw - 32px));padding:26px 26px 20px;background:var(--coal);border:1px solid var(--line);box-shadow:0 30px 70px -24px rgba(0,0,0,.95);opacity:0;visibility:hidden;transform:translateY(24px);transition:opacity .6s var(--ease),transform .7s var(--ease),visibility 0s .7s;}
.wc.open{opacity:1;visibility:visible;transform:none;transition:opacity .6s var(--ease),transform .7s var(--ease),visibility 0s;}
.no-scroll .wc.open,.menu-open .wc.open{opacity:0;visibility:hidden;}
.wc .bk-eyebrow{padding-inline-end:34px;}
.wc h3{margin-top:12px;padding-inline-end:28px;font:italic 400 clamp(27px,3vw,34px)/1.08 var(--serif);font-variation-settings:'opsz' 30;}
.wc-lead{margin-top:8px;font-size:14px;line-height:1.55;color:var(--ink-2);}
.wc-code{display:flex;align-items:stretch;margin-top:16px;border:1px dashed rgba(241,237,230,.45);}
.wc-code output{flex:1;display:flex;align-items:center;min-width:0;padding:13px 14px;font-size:17px;font-weight:600;font-stretch:112%;letter-spacing:.16em;color:var(--ink);unicode-bidi:isolate;-webkit-user-select:all;user-select:all;}
.wc-code button{flex:none;padding:0 16px;border-inline-start:1px dashed rgba(241,237,230,.45);font-size:11px;font-weight:600;font-stretch:112%;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);transition:background .3s,color .3s;}
.wc-code button:hover,.wc-code button:focus-visible{background:var(--ink);color:var(--black);}
.wc .btn{display:flex;width:100%;justify-content:center;margin-top:12px;padding:15px 20px;}
.wc-terms{margin-top:12px;font-size:12px;line-height:1.5;color:var(--ink-3);}
.wc-terms a{color:var(--ink-2);text-underline-offset:3px;}
.wc-x{right:8px;top:8px;}
.bk-code{margin-top:16px;padding:10px 14px;border:1px dashed rgba(241,237,230,.3);font-size:13px;color:var(--ink-2);}
.bk-code b{font-weight:600;letter-spacing:.1em;color:var(--ink);unicode-bidi:isolate;}
/* ============ privacy and terms ============ */
.legal{padding:clamp(150px,15vw,210px) 0 clamp(70px,8vw,120px);}
.legal-in{max-width:780px;}
.legal h1{margin-top:22px;font:italic 400 clamp(46px,calc(var(--cw)*.062),88px)/1 var(--serif);font-variation-settings:'opsz' 60;}
.legal-lede{margin-top:20px;max-width:60ch;font-size:clamp(17px,1.4vw,20px);color:var(--ink-2);}
.legal h2{margin-top:clamp(38px,4.4vw,56px);padding-top:clamp(24px,2.6vw,32px);border-top:1px solid var(--line-2);font:500 clamp(22px,2vw,28px)/1.2 var(--serif);font-variation-settings:'opsz' 22;scroll-margin-top:110px;}
.legal p,.legal li{margin-top:12px;max-width:68ch;color:var(--ink-2);}
.legal ul{margin:6px 0 0;padding-inline-start:1.2em;}
.legal li::marker{color:var(--ink-3);}
.legal-cta{justify-content:flex-start;margin-top:clamp(40px,5vw,60px);}
.ftr-legal{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;}
.ftr-end .ftr-link{color:var(--ink-2);text-underline-offset:4px;}
.ftr-end .ftr-link span{text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:5px;}

/* ============ service and business pages ============ */
.svc-more{display:flex;flex-wrap:wrap;gap:12px 34px;margin-top:clamp(26px,3vw,40px);}
.svc-more a{display:inline-flex;align-items:center;gap:12px;padding:6px 0;font-size:13px;font-weight:600;font-stretch:112%;letter-spacing:.06em;text-decoration:none;color:var(--ink);border-bottom:1px solid var(--line);transition:border-color .4s;}
.svc-more a:hover{border-color:var(--ink);}
.svc-more svg{width:18px;height:10px;flex:none;transition:transform .5s var(--ease);}
.svc-more a:hover svg{transform:translateX(5px);}
.cp{padding:clamp(140px,14vw,200px) 0 clamp(60px,7vw,100px);}
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;font-size:11px;font-weight:500;font-stretch:125%;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3);}
.crumbs a{color:var(--ink-2);text-decoration:none;transition:color .3s;}
.crumbs a:hover{color:var(--ink);}
.crumbs i{font-style:normal;opacity:.5;}
.cp-h{margin-top:clamp(18px,2vw,28px);}
.cp-lede{margin-top:clamp(18px,2vw,26px);max-width:40em;font-size:clamp(17px,1.5vw,21px);line-height:1.6;color:var(--ink-2);}
.cp .cta-row{justify-content:flex-start;margin-top:clamp(24px,2.6vw,34px);}
.cp-shots{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:clamp(10px,1.2vw,16px);margin-top:clamp(36px,5vw,64px);}
.cp-shot{margin:0;overflow:hidden;background:#111;}
.cp-shot img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;pointer-events:none;}
.cp-body{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(36px,6vw,96px);margin-top:clamp(40px,6vw,80px);}
.cp-body.has-rel{grid-template-columns:minmax(0,1fr) minmax(0,340px);}
.cp-main{max-width:760px;}
.cp-main>h2{margin-top:clamp(36px,4vw,52px);font:500 clamp(24px,2.2vw,32px)/1.2 var(--serif);font-variation-settings:'opsz' 22;}
.cp-main>h2:first-child{margin-top:0;}
.cp-main>p,.cp-main li{margin-top:12px;max-width:66ch;color:var(--ink-2);}
.cp-main ul{margin:6px 0 0;padding-inline-start:1.2em;}
.cp-main li::marker{color:var(--ink-3);}
.cp-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:12px;margin-top:22px;}
.cp-main>.cp-cards:first-child{margin-top:0;}
.cp-card{display:block;padding:22px 22px 20px;border:1px solid var(--line);text-decoration:none;color:var(--ink);background:rgba(255,250,243,.025);transition:background .4s,color .4s,border-color .4s;}
.cp-card b{display:block;font:500 21px/1.2 var(--serif);font-variation-settings:'opsz' 22;}
.cp-card span{display:block;margin-top:8px;font-size:14px;line-height:1.5;color:var(--ink-3);transition:color .4s;}
.cp-card:hover,.cp-card:focus-visible{background:var(--ink);border-color:var(--ink);color:var(--black);}
.cp-card:hover span,.cp-card:focus-visible span{color:rgba(7,7,7,.7);}
.cp-rel{display:grid;gap:10px;align-content:start;}
.cp-rel h4{display:flex;align-items:center;gap:12px;margin-bottom:6px;font-size:11px;font-weight:500;font-stretch:125%;letter-spacing:.3em;text-transform:uppercase;color:var(--ink-2);}
.cp-history{margin-top:clamp(36px,4vw,52px);}
.cp-faq{display:grid;gap:0;border-top:1px solid var(--line);}
.cp-faq details{border-bottom:1px solid var(--line);}
.cp-faq summary{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 0;cursor:pointer;list-style:none;font:500 clamp(19px,1.7vw,23px)/1.35 var(--serif);font-variation-settings:'opsz' 18;}
.cp-faq summary::-webkit-details-marker{display:none;}
.cp-faq summary::after{content:"+";flex:none;font:300 26px/1 var(--sans);color:var(--ink-3);transition:transform .4s var(--ease);}
.cp-faq details[open] summary::after{transform:rotate(45deg);}
.cp-faq details p{margin:0 0 22px;max-width:66ch;color:var(--ink-2);}
.cp-faq+.cp-cards{margin-top:clamp(36px,4vw,52px);}
.cp-end{margin-top:clamp(48px,6vw,84px);padding-top:clamp(28px,3vw,40px);border-top:1px solid var(--line);}
.cp-end p{font:italic 400 clamp(22px,2.2vw,30px)/1.3 var(--serif);font-variation-settings:'opsz' 22;}
.cp-end .cta-row{margin-top:20px;}
@media (max-width:900px){.cp-body.has-rel{grid-template-columns:minmax(0,1fr);}}
html[lang="ar"] .cp-main>h2,html[lang="ar"] .cp-card b,html[lang="ar"] .cp-faq summary{font-weight:700;line-height:1.6;}
html[lang="ar"] .cp-main>p,html[lang="ar"] .cp-main li,html[lang="ar"] .cp-faq details p,html[lang="ar"] .cp-lede{line-height:1.95;}
html[lang="ar"] .crumbs,html[lang="ar"] .cp-rel h4{font-size:13px;}
html[lang="ar"] .cp-end p{font-weight:700;line-height:1.6;}
html[lang="ar"] .svc-more a{font-size:14px;}
[dir="rtl"] .svc-more svg{scale:-1 1;}

/* ============ smaller screens ============ */
@media (max-width:900px){
  .nav{display:none;}
  .menu-btn{display:inline-flex;}
  .brand img{height:54px;}
  .hdr.is-stuck .brand img{transform:translateY(-4px) scale(.8);}
  .hdr.is-stuck .nav,.hdr.is-stuck .lang,.hdr.is-stuck .menu-btn{transform:translateY(-9px);}
  .hdr::before{height:104px;}
  .hdr-in{padding-block:14px;}
  .sec-head{grid-template-columns:1fr;}
  .sec-head p{justify-self:start;padding-bottom:0;}
  .svc{grid-template-columns:1fr;}
  .stage{display:none;}
  .row{grid-template-columns:30px minmax(0,1fr) 76px;align-items:start;}
  .row .go{display:none;}
  .row .n{padding-top:.6em;}
  .row .thumb .art{display:block;}
  .row .thumb{display:block;padding:4px;background:var(--paper);box-shadow:0 14px 26px -12px rgba(0,0,0,.9);transform:rotate(1.5deg);transition:transform .7s var(--ease);}
  .row.on .thumb{transform:rotate(-1.5deg) scale(1.04);}
  .row.on .tx{transform:none;}
  .story-grid{grid-template-columns:1fr;}
  .story-art{width:min(72%,340px);margin:8px auto 0;}
  .ftr-top{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:34px;}
  .ftr-brand{grid-column:1/-1;}
  .ftr-brand img{height:84px;}
}
@media (max-width:640px){
  body{font-size:16px;}
  .h1{font-size:15.6vw;line-height:.88;}
  .h1 .w{display:block;}
  .h1 .sc{font-size:1.7em;line-height:.9;margin:0 0 .02em;}
  .hero-art{left:auto;right:-26vw;top:150px;height:118vw;opacity:.4;}
  .book-art{left:auto;right:-30vw;height:100vw;margin-top:-50vw;opacity:.3;}
  .fct polygon.a{opacity:.2;}
  .fct polygon.b{opacity:.11;}
  .fct polygon.c{opacity:.06;}
  .cap span{letter-spacing:.14em;}
  .hero .fct-box{opacity:.55;}
  .prints .print:nth-child(-n+2) .cap span{display:none;}
  .h1 .fat{font-size:.98em;}
  .h1 .l2 .w+.w{margin-left:0;}
  .book .h1{font-size:15vw;}
  .cta-row .btn{flex:1 1 100%;justify-content:center;}
  .prints{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
  .print:nth-child(2){margin-top:34px;}
  .print:nth-child(3){grid-column:1/-1;width:62%;margin:6px auto 0;}
  .print .spot{top:-110px;height:calc(100% + 190px);}
  .gal{columns:2;}
  .chips{gap:6px;}
  .chip{padding:9px 11px;font-size:10px;letter-spacing:.12em;}
  .lb button{width:42px;height:42px;}
  .lb-p,.lb-n{margin-top:-21px;}
  .lb-p{left:6px;}.lb-n{right:6px;}
  .bk{place-items:end center;padding:0;}
  .bk-panel{width:100%;border-width:1px 0 0;padding-bottom:calc(28px + env(safe-area-inset-bottom,0px));}
  .history .hr{grid-template-columns:1fr;gap:4px;}
  .history dt{padding-top:0;}
  .ftr-end{flex-direction:column-reverse;align-items:flex-start;}
  .ftr{padding-bottom:calc(96px + env(safe-area-inset-bottom,0px));}
  .ftr-top{grid-template-columns:repeat(2,minmax(0,1fr));}
  .wa-float{width:54px;padding:0;justify-content:center;}
  .wa-float span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
  .wc{left:0;right:0;bottom:0;width:100%;border-width:1px 0 0;padding:22px var(--gut) calc(16px + env(safe-area-inset-bottom,0px));}
  .wc-lead{display:none;}
  .wc h3{font-size:27px;}
  .wc-on .wa-float{opacity:0;transform:translateY(18px);pointer-events:none;}
  .legal-cta .btn{flex:1 1 100%;}
}
@media (max-width:400px){
  .btn{padding:16px 18px;gap:10px;white-space:normal;text-align:center;}
  .card{padding:22px 18px;}
}
@media (max-height:720px){
  .wc-lead{display:none;}
}
@media (max-width:640px) and (max-height:700px){
  .wc .bk-eyebrow{display:none;}
  .wc h3{margin-top:0;font-size:25px;}
  .wc-code{margin-top:12px;}
  .wc-code output{padding:11px 12px;}
  .wc .btn{padding:13px 18px;}
}
@media (max-height:520px) and (orientation:landscape){
  .wc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:12px;align-items:end;left:max(16px,env(safe-area-inset-left,0px));right:auto;bottom:12px;width:min(600px,calc(100vw - 120px));padding:14px 18px 12px;border-width:1px;}
  .wc .bk-eyebrow,.wc-lead{display:none;}
  .wc h3{grid-column:1/-1;margin-top:0;font-size:23px;}
  .wc-code,.wc .btn{margin-top:10px;}
  .wc .btn{padding:12px 14px;height:100%;}
  .wc-terms{grid-column:1/-1;margin-top:8px;}
  .wa-float{height:48px;}
  .wc-on .wa-float{opacity:1;}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation:none !important;transition-duration:.01ms !important;}
  .js .rv,.js .rvf{opacity:1;transform:none;filter:none;}
  .js .wipe .art{clip-path:none;}
  .run{flex-wrap:wrap;width:auto;justify-content:center;}
  .run ul{flex-wrap:wrap;justify-content:center;row-gap:8px;}
  .run ul+ul{display:none;}
}
@media print{.grain,.scn{display:none;}}

/* ================= ARABIC: typefaces ================= */
html[lang="ar"]{--serif:'Amiri','Bodoni Moda','Didot',Georgia,serif;--sans:'Alexandria','Archivo','Helvetica Neue',Arial,sans-serif;--script:'Aref Ruqaa','Imperial Script',cursive;}
html[lang="ar"] *{letter-spacing:0 !important;font-style:normal !important;}
html[lang="ar"] body{line-height:1.9;}
html[lang="ar"] .h1{line-height:1.28;}
html[lang="ar"] .h1 .sc{font-size:1.16em;line-height:1.2;font-weight:700;vertical-align:baseline;margin:0 0 0 .14em;}
html[lang="ar"] .h1 .fat{font-size:1em;font-weight:700;}
html[lang="ar"] .h1 .l2{font-size:.8em;font-weight:900;margin-top:.12em;line-height:1.36;}
html[lang="ar"] .hero .h1 .l1{font-size:.62em;}
html[lang="ar"] .h2{line-height:1.5;}
html[lang="ar"] .h2 .it{font-weight:700;}
html[lang="ar"] .h2 .gr{font-size:.74em;font-weight:900;}
html[lang="ar"] .lede{line-height:2;}
html[lang="ar"] .eyebrow,html[lang="ar"] .history h4,html[lang="ar"] .history dt,html[lang="ar"] .ftr h4,html[lang="ar"] .bk-eyebrow,html[lang="ar"] .chip,html[lang="ar"] .bk-opt small,html[lang="ar"] .lb-bar,html[lang="ar"] .ftr-end,html[lang="ar"] .cue,html[lang="ar"] .shot span,html[lang="ar"] .menu-btn{font-size:13px;}
html[lang="ar"] .cap span{font-size:clamp(9px,.85vw,12px);}
html[lang="ar"] .nav a,html[lang="ar"] .btn{font-size:14px;}
html[lang="ar"] .row h3{font-weight:700;line-height:1.5;}
html[lang="ar"] .story .lead{line-height:1.9;}
html[lang="ar"] .history dd,html[lang="ar"] .run li{font-size:clamp(19px,calc(var(--cw)*.0185),27px);}
html[lang="ar"] .bk h3,html[lang="ar"] .card h3,html[lang="ar"] .bk-opt b{font-weight:700;line-height:1.5;}
html[lang="ar"] .menu a{line-height:1.5;font-weight:700;}
html[lang="ar"] .ftr-brand p{line-height:1.8;}
html[lang="ar"] .wc h3,html[lang="ar"] .legal h1,html[lang="ar"] .legal h2{font-weight:700;line-height:1.5;}
html[lang="ar"] .wa-float,html[lang="ar"] .wc-code button{font-size:14px;}
html[lang="ar"] .legal p,html[lang="ar"] .legal li{line-height:1.95;}
html[lang="ar"] .lang button:first-of-type{font-family:'Archivo',sans-serif;}

/* ================= ARABIC: the layout mirrors, right to left ================= */
[dir="rtl"] .s-hero-haze{left:auto;right:calc(50% - var(--cw)*.04);}
[dir="rtl"] .hero-art{left:auto;right:calc(50% + var(--cw)*.055);scale:-1 1;}
[dir="rtl"] .s-hero-sheen1{left:auto;right:calc(50% - var(--cw)*.44);}
[dir="rtl"] .s-hero-sheen2{left:auto;right:calc(50% - var(--cw)*.04);}
[dir="rtl"] .s-edge-l{left:auto;right:calc(50% - var(--cw)/2 - 162px);scale:-1 1;}
[dir="rtl"] .s-edge-r{right:auto;left:calc(50% - var(--cw)/2 - 152px);scale:-1 1;}
[dir="rtl"] .s-svc-sheen{left:auto;right:calc(50% + var(--cw)*.2);}
[dir="rtl"] .s-story-haze{left:auto;right:calc(50% + var(--cw)*.06);}
[dir="rtl"] .s-story-sheen{left:auto;right:calc(50% - var(--cw)*.12);}
[dir="rtl"] .book-art{left:auto;right:calc(50% + var(--cw)*.2);scale:-1 1;}
[dir="rtl"] .progress,[dir="rtl"] .row::before{transform-origin:right;}
[dir="rtl"] .btn svg,[dir="rtl"] .bk-opt i svg,[dir="rtl"] .row .go svg{scale:-1 1;}
[dir="rtl"] .shot span{left:auto;right:0;}
[dir="rtl"] .bk-x{right:auto;left:12px;}
[dir="rtl"] .wc-x{left:8px;}
[dir="rtl"] .wa-float{right:auto;left:max(16px,env(safe-area-inset-left,0px));}
[dir="rtl"] .wc{right:auto;left:max(16px,env(safe-area-inset-left,0px));}
@media (max-width:640px){[dir="rtl"] .wc{right:0;left:0;}}
@media (max-height:520px) and (orientation:landscape){[dir="rtl"] .wc{left:auto;right:max(16px,env(safe-area-inset-right,0px));}}
[dir="rtl"] .mail-img{object-position:right;}
[dir="rtl"] .nav a::after,[dir="rtl"] .ftr-col a::after{transform-origin:left center;}
[dir="rtl"] .nav a:hover::after,[dir="rtl"] .nav a:focus-visible::after,[dir="rtl"] .nav a.is-current::after,[dir="rtl"] .ftr-col a:hover::after{transform-origin:right center;}
@media (min-width:901px){[dir="rtl"] .row.on .tx{transform:translateX(-10px);}}
@media (min-width:641px){
  html[lang="ar"] #hero-h .l2 .w{display:inline-block;}
  html[lang="ar"] #hero-h .l2 .w+.w{margin-inline-start:.24em;}
  html[lang="ar"] #hero-h .l2{font-size:.72em;white-space:nowrap;}
}
@media (max-width:640px){
  [dir="rtl"] .hero-art{right:auto;left:-26vw;}
  [dir="rtl"] .book-art{right:auto;left:-30vw;}
  html[lang="ar"] .h1 .sc{font-size:1.3em;margin:0;line-height:1.08;}
  html[lang="ar"] .hero .h1 .l1{font-size:1em;}
}
