

/* ═══════════════════════════════════════
   CFJ ARCHITECTS v23 — CLEAN SHEET
   Living Archive concept.
   One style block. No patches. No conflicts.
═══════════════════════════════════════ */

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}

:root{
  --blk:#0a0a09;
  --wht:#ffffff;
  --off:#f4f3f1;
  --brd:#e2e0db;
  --mut:#9a9894;
  --bod:#4a4845;
  --fnt:"DM Sans",sans-serif;
  --ser:"EB Garamond",serif;
  --ez:cubic-bezier(.25,.46,.45,.94);
}

html{scroll-behavior:smooth;}
body,html{display:block !important;visibility:visible !important;}body,html{display:block !important;}body,html{display:block !important;}body,html{display:block !important;visibility:visible !important;}body,html{display:block !important;visibility:visible !important;}
body{font-family:var(--fnt);background:var(--blk);color:var(--bod);font-size:15px;line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased;}

/* ── PAGE SYSTEM ── */
.page{display:none;}
.page.on{display:block;min-height:100vh;}

/* ── CURSOR (desktop only) ── */
.cur,.cur-r{position:fixed;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);mix-blend-mode:difference;}
.cur{width:8px;height:8px;background:var(--wht);border-radius:50%;transition:width .3s,height .3s;}
.cur-r{width:32px;height:32px;border:1px solid rgba(255,255,255,.4);border-radius:50%;z-index:9998;transition:transform .4s var(--ez),opacity .4s var(--ez);}
body.ch .cur{width:44px;height:44px;}
body.ch .cur-r{opacity:0;}

/* ── NAV ── */
.nav{transition:top .4s cubic-bezier(.25,.46,.45,.94),opacity .6s,background .4s,border-color .4s;position:fixed;top:36px;left:0;right:0;z-index:800;height:68px;display:flex;align-items:center;padding:0 3rem;opacity:1;pointer-events:all;border-bottom:1px solid transparent;}
.nav.vis{opacity:1;pointer-events:all;}
.nav.lt{background:rgba(255,255,255,.97);backdrop-filter:blur(12px);border-bottom-color:var(--brd);}
.nav-in{width:100%;max-width:1440px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;}
.logo{text-decoration:none;}
.logo-n{font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--wht);display:block;transition:color .4s;}
.logo-s{font-size:8.5px;font-weight:400;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.35);display:block;margin-top:2px;transition:color .4s;}
.nav.lt .logo-n{color:var(--blk);}
.nav.lt .logo-s{color:var(--mut);}
.nav-ul{display:flex;list-style:none;}
.nav-ul a{font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.45);text-decoration:none;padding:.5rem 1.25rem;transition:color .25s;}
.nav-ul a:hover{color:rgba(255,255,255,.9);}
.nav.lt .nav-ul a{color:var(--mut);}
.nav.lt .nav-ul a:hover{color:var(--blk);}
.nav-soc{display:flex;align-items:center;gap:.75rem;margin-right:.5rem;}
.nav-ig{color:rgba(255,255,255,.45);text-decoration:none;display:flex;align-items:center;transition:color .25s;}
.nav-ig:hover{color:rgba(255,255,255,.9);}
.nav.lt .nav-ig{color:var(--mut);}
.nav.lt .nav-ig:hover{color:var(--blk);}
.nav-cta{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:.6rem 1.4rem;border:1px solid rgba(255,255,255,.25);color:var(--wht);text-decoration:none;transition:transform .25s,opacity .25s,background-color .25s,border-color .25s;position:relative;overflow:hidden;}
.nav-cta::before{content:"";position:absolute;inset:0;background:var(--wht);transform:translateX(-101%);transition:transform .28s var(--ez);z-index:0;}
.nav-cta span{position:relative;z-index:1;}
.nav-cta:hover{color:var(--blk);}
.nav-cta:hover::before{transform:none;}
.nav.lt .nav-cta{border-color:var(--blk);color:var(--blk);}
.nav.lt .nav-cta.dk::before{background:var(--blk);}
.nav-cta.dk:hover{color:var(--wht);}
/* Hamburger — mobile only */
.ham{display:none;background:none;border:none;padding:.4rem;cursor:pointer;flex-direction:column;gap:5px;align-items:flex-end;}
.hbar{display:block;height:1.5px;background:var(--wht);transition:transform .3s,opacity .3s,background-color .3s,border-color .3s;}
.hbar:nth-child(1){width:22px;}
.hbar:nth-child(2){width:14px;}
.nav.lt .hbar{background:var(--blk);}
.ham.open .hbar:nth-child(1){transform:rotate(45deg) translate(4.5px,4.5px);width:18px;}
.ham.open .hbar:nth-child(2){transform:rotate(-45deg) translate(3px,-3px);width:18px;}

/* ── MOBILE OVERLAY MENU ── */
.mob-ov{position:fixed;inset:0;background:var(--blk);z-index:790;display:flex;flex-direction:column;justify-content:center;padding:3rem;opacity:0;pointer-events:none;transition:opacity .4s var(--ez);}
.mob-ov.open{opacity:1;pointer-events:all;}
.mob-ov ul{list-style:none;}
.mob-ov ul li a{display:block;font-size:clamp(2.2rem,8vw,3rem);font-weight:800;letter-spacing:-.02em;text-transform:uppercase;color:rgba(255,255,255,.25);text-decoration:none;line-height:1.2;padding:.3rem 0;transition:color .2s;}
.mob-ov ul li a:hover{color:var(--wht);}
.mob-ov-foot{margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.08);}
.mob-soc{display:flex;gap:1.25rem;margin-top:1.25rem;}
.mob-ov-foot a{display:block;font-size:13px;font-weight:300;color:rgba(255,255,255,.35);text-decoration:none;margin-bottom:.4rem;}

/* ── OVERSEAS STRIP ── */
.os-strip{position:fixed;top:0;left:0;right:0;z-index:900;background:rgba(10,10,9,.92);backdrop-filter:blur(8px);padding:.55rem 3rem;display:flex;align-items:center;justify-content:center;gap:1rem;transition:transform .35s var(--ez);animation:stripIn .7s cubic-bezier(.22,1,.36,1) both;}@keyframes stripIn{from{transform:translateY(-100%);}to{transform:translateY(0);}}
.os-strip.hide{transform:translateY(-100%)!important;animation:none!important;}
.os-t{font-size:10px;font-weight:400;letter-spacing:.1em;color:rgba(255,255,255,.65);animation:stripTxtIn .6s .55s cubic-bezier(.22,1,.36,1) both, txtShimmer 4.5s 2s cubic-bezier(0.45,0,0.55,1) infinite alternate;}@keyframes stripTxtIn{from{opacity:0;transform:translateX(-10px);}to{opacity:1;transform:none;}}
.os-l{font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.85);text-decoration:none;transition:color .2s;position:relative;animation:stripLinkIn .6s .72s cubic-bezier(.22,1,.36,1) both, txtShimmer 4.5s 2.5s cubic-bezier(0.45,0,0.55,1) infinite alternate;}@keyframes stripLinkIn{from{opacity:0;transform:translateX(10px);}to{opacity:1;transform:none;}}.os-l::after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:1px;background:rgba(255,255,255,.7);transform:scaleX(0);transform-origin:left;transition:transform .32s cubic-bezier(.22,1,.36,1);}.os-l:hover{color:var(--wht);}.os-l:hover::after{transform:scaleX(1);}.os-arrow{display:inline-block;transition:transform .28s cubic-bezier(.22,1,.36,1);}.os-l:hover .os-arrow{transform:translateX(4px);}
.os-l:hover{color:var(--wht);}
.os-inner{display:inline-flex;align-items:center;gap:1rem;position:relative;animation:stripPulse 9s ease-in-out infinite;animation-delay:-4.5s;}












@keyframes stripPulse{
  0%{opacity:.4;}
  50%{opacity:1;}
  100%{opacity:.4;}
}
.os-x{position:absolute;right:3rem;background:none;border:none;color:rgba(255,255,255,.3);font-size:13px;cursor:pointer;line-height:1;padding:.2rem;transition:color .2s,transform .2s;animation:stripTxtIn .6s .9s cubic-bezier(.22,1,.36,1) both;}.os-x:hover{color:rgba(255,255,255,.7);transform:rotate(90deg);}
/* Strip shimmer — text colour based, full width */



/* ── SCROLL REVEAL ── */
.rv{opacity:1;transform:translateY(0);}
.rv.in{transform:translateY(0);}
.d1{transition-delay:.08s;}
.d2{transition-delay:.16s;}
.d3{transition-delay:.24s;}

/* ─────────────────────────────────────
   MOVEMENT I — ARRIVAL
───────────────────────────────────── */
.arrival{
  position:relative;height:100vh;min-height:680px;
  overflow:hidden;background:var(--blk);
}
/* Film grain — add back when images load in production */

/* SLIDER TRACK */
.sl-track{position:absolute;inset:0;}
.sl{
  position:absolute;inset:0;
  opacity:0;
  transition:opacity 1.8s ease-in-out;
  pointer-events:none;
}
.sl.on{opacity:1;}

/* SLIDE BACKGROUNDS */
.sl-bg{position:absolute;inset:0;background-size:cover;background-position:center;will-change:transform;transform-origin:center;}
.sl.on .sl-bg{transform:scale(1.0);}
.sl:not(.on) 

/* Residential — warm dark amber */

.sl-bg-res::before{content:"";position:absolute;inset:0;
  background:radial-gradient(ellipse 70% 60% at 60% 35%,rgba(62,50,32,.58) 0%,transparent 65%),
             radial-gradient(ellipse 40% 50% at 25% 70%,rgba(30,24,14,.35) 0%,transparent 55%);}
.sl-bg-res::after{content:"";position:absolute;inset:0;
  background-image:linear-gradient(12deg,rgba(255,255,255,.02) 1px,transparent 1px),
                   linear-gradient(-12deg,rgba(255,255,255,.02) 1px,transparent 1px);
  background-size:68px 68px;}

/* Corporate — cool dark navy */

.sl-bg-work::before{content:"";position:absolute;inset:0;
  background:radial-gradient(ellipse 65% 55% at 65% 30%,rgba(24,32,62,.62) 0%,transparent 60%),
             radial-gradient(ellipse 45% 45% at 30% 65%,rgba(12,16,30,.4) 0%,transparent 55%);}
.sl-bg-work::after{content:"";position:absolute;inset:0;
  background-image:linear-gradient(0deg,rgba(255,255,255,.018) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:40px 40px;}

/* Commercial — deep forest green-black */

.sl-bg-com::before{content:"";position:absolute;inset:0;
  background:radial-gradient(ellipse 72% 58% at 55% 38%,rgba(22,38,18,.6) 0%,transparent 62%),
             radial-gradient(ellipse 38% 42% at 20% 72%,rgba(14,22,12,.38) 0%,transparent 52%);}
.sl-bg-com::after{content:"";position:absolute;inset:0;
  background-image:linear-gradient(18deg,rgba(255,255,255,.02) 1px,transparent 1px);
  background-size:55px 55px;}

/* Hospitality — deep warm burgundy-black */

.sl-bg-hosp::before{content:"";position:absolute;inset:0;
  background:radial-gradient(ellipse 68% 56% at 58% 36%,rgba(48,18,22,.62) 0%,transparent 62%),
             radial-gradient(ellipse 40% 44% at 22% 70%,rgba(28,12,14,.38) 0%,transparent 52%);}
.sl-bg-hosp::after{content:"";position:absolute;inset:0;
  background-image:radial-gradient(circle at 50% 50%,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:32px 32px;}

/* GRADIENT MASK — all slides */
.sl-mask{position:absolute;inset:0;
  background:linear-gradient(to bottom,
    rgba(10,10,9,0) 0%,
    rgba(10,10,9,.08) 25%,
    rgba(10,10,9,.45) 65%,
    rgba(10,10,9,.88) 100%);
  z-index:1;}

/* SLIDE CONTENT — centred, lower third */
.sl-content{
  position:absolute;
  bottom:8.5rem;
  left:3rem;
  z-index:4;
}
.sl-label{
  overflow:hidden;
}
.sl-type{
  font-family:var(--fnt);
  font-size:clamp(3.2rem,5.8vw,6rem);
  font-weight:800;
  letter-spacing:-.03em;
  text-transform:none;
  color:var(--wht);
  display:block;
  line-height:.94;
  margin:0;
  padding:0;
}
.sl-headline{overflow:hidden;}
.sl-h{
  margin:0;
  padding:0;
  font-size:clamp(1rem,1.4vw,1.2rem);
  font-weight:300;
  letter-spacing:.04em;
  color:rgba(255,255,255,.7);
  line-height:1.6;
  text-transform:none;
  display:block;
  margin-top:1rem;
}

@keyframes slLblIn{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:none;}}
@keyframes slHIn{from{opacity:0;transform:translateY(12px);}to{opacity:1;transform:none;}}

/* MINIMAL INDICATORS */
.sl-indicators{
  position:absolute;
  bottom:3rem;
  left:3rem;
  z-index:4;
  display:flex;
  align-items:center;
  gap:.65rem;
}
.sl-ind{
  width:28px;height:1.5px;background:rgba(255,255,255,.22);
  border:none;padding:0;cursor:pointer;
  position:relative;overflow:hidden;
  transition:width .3s var(--ez),background .3s;
}
.sl-ind::after{
  content:"";
  position:absolute;
  inset:0;
  background:var(--wht);
  transform:scaleX(0);
  transform-origin:left;
  transition:none;
}
.sl-ind.on{
  width:48px;background:rgba(255,255,255,.35);
}
.sl-ind.on::after{
  content:"";
  position:absolute;
  top:0;left:0;height:100%;width:0%;
  background:var(--wht);
  animation:indProgress 5s linear forwards;
}
@keyframes indProgress{
  from{width:0%;}
  to{width:100%;}
}
.sl-ind.on::after{
  transform:scaleX(1);
  transition:transform var(--sl-dur,5s) linear;
}

/* FIRM MARK */
.arr-mark{position:absolute;bottom:2.75rem;right:3rem;left:auto;z-index:4;animation:fi .8s 1.2s var(--ez) both;}
.arr-city{font-size:10px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.25);display:block;text-align:right;}

/* SCROLL */
.arr-sc{position:absolute;bottom:2.75rem;left:50%;transform:translateX(-50%);z-index:4;display:flex;flex-direction:column;align-items:center;gap:8px;animation:fi 1s 2.5s ease both;}
.arr-sc-ln{
  width:1px;height:42px;
  background:rgba(255,255,255,.12);
  position:relative;overflow:hidden;
}
.arr-sc-ln::after{
  content:"";
  position:absolute;
  top:-100%;left:0;
  width:100%;height:40%;
  background:rgba(255,255,255,.65);
  animation:scPulse 1.8s ease-in-out infinite;
}
@keyframes scPulse{
  0%{top:-40%;opacity:0;}
  20%{opacity:1;}
  80%{opacity:1;}
  100%{top:140%;opacity:0;}
}
.arr-sc-ln::after{content:"";position:absolute;top:-100%;width:100%;height:100%;background:rgba(255,255,255,.55);animation:sp 2.2s 3s ease infinite;}
.arr-sc-tx{font-size:8px;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.2);writing-mode:vertical-rl;transform:rotate(180deg);}
@keyframes sp{0%{top:-100%;}100%{top:100%;}}
@keyframes fi{from{opacity:0;}to{opacity:1;}}
@keyframes fup{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:none;}}

/* Mobile adjustments */

/* ═══════════════════════════════════════
   ABOUT PAGE — COMPLETE
═══════════════════════════════════════ */

/* Base */
.ab-sec{}
.ab-sec:first-of-type{border-top:none;}
.ab-container{max-width:1440px;margin:0 auto;padding:0 3rem;}
.ab-img{width:100%;height:100%;object-fit:cover;display:block;}

/* SECTION 1 — Opening */
.ab-open{background:var(--wht);padding:8vh 0;}
#page-about .pg-tt{text-transform:none;}
.ab-two-col{display:grid;grid-template-columns:1fr 1.4fr;gap:6rem;align-items:start;}
.ab-open-body p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.25rem;}
.ab-open-body p:last-child{margin-bottom:0;}

/* SECTION 2 — Group photo */
.ab-team-hero{background:var(--off);padding:6vh 0;}
.ab-group-wrap{display:grid;grid-template-columns:1fr auto;gap:4rem;align-items:end;}
.ab-group-img{position:relative;}
.ab-group-img .ab-img{aspect-ratio:16/7;object-fit:cover;width:100%;}
.ab-img-cap{font-size:9px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--mut);margin-top:.85rem;}
.ab-team-stat{display:flex;flex-direction:column;gap:1.5rem;padding-bottom:.5rem;min-width:160px;}
.ab-stat-row{display:flex;flex-direction:column;gap:3px;}
.ab-stat-n{font-size:clamp(1.6rem,2.2vw,2rem);font-weight:800;color:var(--blk);letter-spacing:-.02em;line-height:1;}
.ab-stat-l{font-size:9px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--mut);}
.ab-stat-div{width:100%;height:1px;background:var(--brd);}

/* SECTION 3 — Principal */
.ab-principal{background:var(--off);padding:8vh 0;}
.ab-principal-grid{display:grid;grid-template-columns:320px 1fr;gap:7rem;align-items:start;}
.ab-principal-left{position:sticky;top:88px;z-index:2;}
.ab-faheem-img{margin-bottom:2rem;}
.ab-faheem-photo{aspect-ratio:3/4;object-fit:cover;object-position:top;}
.ab-cred-block{padding-top:1.75rem;border-top:1px solid var(--brd);}
.ab-cred-name{font-size:16px;font-weight:700;color:var(--blk);display:block;margin-bottom:3px;}
.ab-cred-title{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);display:block;margin-bottom:1.25rem;}
.ab-cred-list{display:flex;flex-direction:column;gap:.55rem;}
.ab-cred-list span{font-size:12.5px;font-weight:300;color:var(--bod);}
/* Right col */
.ab-pull{font-family:var(--ser);font-size:clamp(1.6rem,3vw,2.6rem);font-style:italic;color:var(--blk);line-height:1.45;padding-bottom:2.75rem;border-bottom:1px solid var(--brd);margin-bottom:2.75rem;}
.ab-body p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.5rem;}
.ab-body p:last-child{margin-bottom:0;}
.ab-sig{margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--brd);}
.ab-sig-name{font-size:13px;font-weight:700;color:var(--blk);display:block;margin-bottom:2px;}
.ab-sig-role{font-size:10px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--mut);display:block;}

/* SECTION 4 — Team members */
.ab-team-sec{background:var(--wht);padding:8vh 0;}
.ab-team-hd{margin-bottom:3.5rem;}
.ab-team-sub{font-size:14px;font-weight:300;color:var(--bod);line-height:1.8;max-width:560px;margin-top:1.25rem;}
.ab-team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem 2rem;}
.ab-member{display:flex;flex-direction:column;}
.ab-member-img{margin-bottom:1rem;overflow:hidden;}
.ab-member-img .ab-img{aspect-ratio:4/5;object-fit:cover;filter:grayscale(20%);transition:filter .5s;}
.ab-member:hover .ab-img{filter:grayscale(0%);}
.ab-member-name{font-size:13px;font-weight:600;color:var(--blk);margin-bottom:3px;}
.ab-member-role{font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--mut);}

/* SECTION 5 — How we work */
.ab-how{background:var(--off);padding:8vh 0;}
.ab-how-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:7rem;align-items:start;}
.ab-how-body{display:flex;flex-direction:column;gap:2.5rem;}
.ab-how-item{padding-bottom:2rem;border-bottom:1px solid var(--brd);}
.ab-how-n{font-size:11px;font-weight:800;letter-spacing:.25em;text-transform:uppercase;color:var(--blk);display:block;margin-bottom:.85rem;}
.ab-how-title{font-size:15px;font-weight:700;color:var(--blk);margin-bottom:.6rem;letter-spacing:-.01em;}
.ab-how-text{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;}

/* SECTION 6 — CTA */
.ab-cta{background:var(--off);padding:8vh 0;}
.ab-cta-inner{max-width:680px;}
.ab-cta-h{font-family:var(--ser);font-size:clamp(2rem,3.5vw,3.5rem);font-style:italic;color:var(--blk);line-height:1.2;margin-bottom:1rem;}
.ab-cta-sub{font-size:14px;font-weight:300;color:var(--bod);margin-bottom:2.5rem;}
.ab-cta-btns{display:flex;gap:2.5rem;align-items:center;flex-wrap:wrap;}

/* ── ABOUT MOBILE ── */
@media(max-width:768px){
  .ab-phil-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:7rem;align-items:start;}
  .ab-phil{background:var(--wht);padding:8vh 0;}

  .ab-container{padding:0 1.5rem;}
  .ab-open{padding:6vh 0;}
  .ab-two-col{grid-template-columns:1fr;gap:2.5rem;}
  .ab-team-hero{padding:5vh 0;}
  .ab-group-wrap{grid-template-columns:1fr;gap:2rem;}
  .ab-team-stat{flex-direction:row;flex-wrap:wrap;gap:1.5rem 3rem;padding-bottom:0;}
  .ab-stat-div{display:none;}
  .ab-principal{padding:6vh 0;}
  .ab-principal-grid{grid-template-columns:1fr;gap:3rem;}
  .ab-principal-left{position:sticky;top:88px;z-index:2;}
  .ab-faheem-photo{aspect-ratio:1/1;}
  .ab-team-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;}
  .ab-how{padding:6vh 0;}
  .ab-how-grid{grid-template-columns:1fr;gap:3rem;}
  .ab-cta{padding:6vh 0;}
  .ab-cta-btns{flex-direction:column;align-items:flex-start;gap:1.25rem;}
}
@media(min-width:769px) and (max-width:1024px){
  .ab-principal-grid{grid-template-columns:260px 1fr;gap:4rem;}
  .ab-team-grid{grid-template-columns:repeat(3,1fr);gap:1.75rem;}
  .ab-two-col{grid-template-columns:1fr 1fr;}
  .ab-how-grid{grid-template-columns:1fr 1.2fr;gap:4rem;}
}

/* Philosophy section */
.ab-phil{background:var(--wht);padding:8vh 0;}
.ab-phil-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:7rem;align-items:start;}
.ab-phil-body p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.5rem;}
.ab-phil-body p:last-child{margin-bottom:0;}

/* ── TESTIMONIALS SECTION ── */
.ab-testi{background:var(--wht);padding:8vh 0;}
.ab-testi-hd{margin-bottom:3rem;}
.ab-testi-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem;}

/* Video card */
.ab-tv{display:flex;flex-direction:column;gap:1.25rem;}
.ab-tv-thumb{cursor:pointer;background:none;border:none;padding:0;width:100%;text-align:left;}
.ab-tv-img{aspect-ratio:16/10;position:relative;overflow:hidden;}
.ab-tv-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.18);transition:background .3s;}
.ab-tv-thumb:hover .ab-tv-overlay{background:rgba(0,0,0,.35);}
.ab-tv-btn{width:48px;height:48px;border-radius:50%;border:1.5px solid rgba(255,255,255,.65);display:flex;align-items:center;justify-content:center;transition:border-color .3s,transform .3s;}
.ab-tv-thumb:hover .ab-tv-btn{border-color:var(--wht);transform:scale(1.08);}
.ab-tv-label{display:flex;flex-direction:column;gap:3px;padding:.85rem 0 0;border-top:1px solid var(--brd);}
.ab-tv-name{font-size:13px;font-weight:600;color:var(--blk);}
.ab-tv-proj{font-size:9px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--mut);}
.ab-tv-quote{font-family:var(--ser);font-size:clamp(.95rem,1.4vw,1.15rem);font-style:italic;color:var(--bod);line-height:1.65;}

/* Google reviews strip */
.ab-reviews-link{display:flex;align-items:center;gap:1rem;padding-top:2rem;border-top:1px solid var(--brd);flex-wrap:wrap;}
.ab-gr-stars{display:flex;gap:2px;align-items:center;}
.ab-gr-text{font-size:12px;font-weight:500;color:var(--bod);}
.ab-gr-link{font-size:11px;}

/* Mobile */
@media(max-width:768px){
  .ab-testi-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem;}
  .ab-reviews-link{gap:.75rem;}
}
@media(min-width:769px) and (max-width:1024px){
  .ab-testi-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem;}
}

/* ════════════════════════════════════════
   REVIEWS PAGE
════════════════════════════════════════ */
.rv-sec{border-top:1px solid var(--brd);}
.rv-container{max-width:1440px;margin:0 auto;padding:0 3rem;}
.rv-hd{margin-bottom:3rem;}
.rv-hd-sub{font-size:14px;font-weight:300;color:var(--bod);max-width:520px;margin-top:1rem;line-height:1.75;}

/* Section backgrounds */
.rv-video{background:var(--wht);padding:8vh 0;}
.rv-corp{background:var(--off);padding:8vh 0;}
.rv-google{background:var(--wht);padding:8vh 0;}

/* VIDEO TESTIMONIALS */
.rv-video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;}
.rv-tv{display:flex;flex-direction:column;gap:1.25rem;}
.rv-tv-thumb{cursor:pointer;}
.rv-tv-img{aspect-ratio:16/10;position:relative;overflow:hidden;transition:opacity .3s;}
.rv-tv-thumb:hover .rv-tv-img{opacity:.9;}
.rv-tv-play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;}
.rv-play-btn{width:52px;height:52px;border-radius:50%;border:1.5px solid rgba(255,255,255,.6);display:flex;align-items:center;justify-content:center;transition:border-color .25s,transform .25s;padding-left:3px;}
.rv-tv-thumb:hover .rv-play-btn{border-color:var(--wht);transform:scale(1.1);}
.rv-play-label{font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.55);}
.rv-tv-info{display:flex;flex-direction:column;gap:.85rem;}
.rv-tv-meta{padding-top:.85rem;border-top:1px solid var(--brd);}
.rv-tv-name{font-size:13px;font-weight:600;color:var(--blk);display:block;margin-bottom:3px;}
.rv-tv-type{font-size:9px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--mut);display:block;}
.rv-tv-quote{font-family:var(--ser);font-size:clamp(1rem,1.4vw,1.15rem);font-style:italic;color:var(--bod);line-height:1.65;}

/* CORPORATE ENDORSEMENTS */
.rv-corp-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;}
.rv-letter{background:var(--wht);padding:2.5rem;display:grid;grid-template-columns:160px 1fr;gap:2.5rem;align-items:start;}
.rv-letter-logo{display:flex;align-items:center;justify-content:center;padding:1.5rem;border:1px solid var(--brd);}
.rv-logo-ph{font-size:16px;font-weight:800;color:var(--blk);text-align:center;letter-spacing:-.02em;line-height:1.2;}
.rv-logo-ph span{font-size:9px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);display:block;margin-top:3px;}
.rv-letter-quote{font-family:var(--ser);font-size:clamp(1rem,1.5vw,1.25rem);font-style:italic;color:var(--blk);line-height:1.6;margin-bottom:1.5rem;}
.rv-letter-attr{margin-bottom:1.25rem;}
.rv-letter-name{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--blk);display:block;margin-bottom:3px;}
.rv-letter-proj{font-size:11px;font-weight:300;color:var(--mut);display:block;}

/* GOOGLE REVIEWS */
.rv-google-score{display:flex;align-items:center;gap:1.5rem;margin-bottom:3rem;}
.rv-gs-number{font-size:clamp(2.5rem,4vw,4rem);font-weight:800;color:var(--blk);letter-spacing:-.04em;line-height:1;}
.rv-gs-right{display:flex;flex-direction:column;gap:.35rem;}
.rv-gs-stars{display:flex;gap:3px;}
.rv-gs-count{font-size:12px;font-weight:400;color:var(--mut);}
.rv-reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.75rem;margin-bottom:2.5rem;}
.rv-review{background:var(--off);padding:1.75rem;}
.rv-review-stars{display:flex;gap:2px;margin-bottom:1rem;}
.rv-review-text{font-size:13px;font-weight:300;color:var(--bod);line-height:1.8;margin-bottom:1.25rem;font-style:italic;}
.rv-review-attr{display:flex;justify-content:space-between;align-items:baseline;padding-top:1rem;border-top:1px solid var(--brd);}
.rv-review-name{font-size:11px;font-weight:600;color:var(--blk);}
.rv-review-date{font-size:10px;color:var(--mut);}
.rv-google-more{text-align:right;}

/* Mobile */
@media(max-width:768px){
  .rv-container{padding:0 1.5rem;}
  .rv-video{padding:6vh 0;}
  .rv-corp{padding:6vh 0;}
  .rv-google{padding:6vh 0;}
  .rv-video-grid{grid-template-columns:1fr;}
  .rv-corp-grid{grid-template-columns:1fr;}
  .rv-letter{grid-template-columns:1fr;gap:1.5rem;}
  .rv-letter-logo{justify-content:flex-start;}
  .rv-reviews-grid{grid-template-columns:1fr;gap:1.25rem;}
  .rv-google-score{gap:1rem;}

.section-hd{padding-left:0!important;padding-right:0!important;}
.con-g-child{padding:0!important;}
.masonry{margin-left:0!important;margin-right:0!important;}
.mc{margin-left:0!important;margin-right:0!important;}
.mc-img{width:100%!important;}
.work-in-hm .masonry{padding:0!important;}
.work-hd{display:block!important;}
.work-hd .tl{display:none!important;}
.work-in-hm{padding:0 1.5rem!important;}
.masonry{padding:0!important;margin:0!important;}
.mc{width:100%!important;margin-bottom:1.5rem!important;}
.mc-cap{padding:0.75rem 0!important;}

.ptypes-grid{grid-template-columns:85vw!important;padding-left:1.5rem!important;scroll-snap-type:x mandatory!important;}
.pt-card{scroll-snap-align:start!important;}

.offer-in{padding:0 1.5rem!important;}
.oi{padding:2.25rem 1.5rem!important;}
.offer-note{padding-left:0!important;padding-right:0!important;}
.con-g-inner{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.stmt-in{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.voices-in{padding-left:0!important;padding-right:0!important;}
.footer-in{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.footer-bot{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.nav-in{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.rv-stat-bar{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.work-section-hd-in{padding-left:0!important;padding-right:0!important;}
.ab-container{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.work-in-hm{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.work-hd{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.ca-intro-g{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.ca-values-g{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.ca-roles-g{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.ca-life-g{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.inv-in{padding-left:0!important;padding-right:0!important;}
.con-g-inner>div{padding:4vh 0!important;}
.pt-body{padding-left:0!important;padding-right:0!important;}
.ptypes{padding-left:1.5rem!important;padding-right:1.5rem!important;}
}
@media(min-width:769px) and (max-width:1024px){
  .rv-video-grid{grid-template-columns:1fr 1fr;}
  .rv-reviews-grid{grid-template-columns:1fr 1fr;}
}

/* Ken Burns — slow scale + drift per slide */
@keyframes kbRes{
  from{transform:scale(1.0) translate(0,0);}
  to{transform:scale(1.05) translate(-1.5%,-.5%);}
}
@keyframes kbWork{
  from{transform:scale(1.0) translate(0,0);}
  to{transform:scale(1.05) translate(1.5%,-.5%);}
}
@keyframes kbCom{
  from{transform:scale(1.0) translate(0,0);}
  to{transform:scale(1.05) translate(-1%,.5%);}
}
@keyframes kbHosp{
  from{transform:scale(1.0) translate(0,0);}
/* Ken Burns — only when slide is active */
.sl.on .sl-bg-res{animation:kbRes 8s linear forwards;}
.sl.on .sl-bg-work{animation:kbWork 8s linear forwards;}
.sl.on .sl-bg-com{animation:kbCom 8s linear forwards;}
.sl.on .sl-bg-hosp{animation:kbHosp 8s linear forwards;}

/* ── Mobile margin consistency fix v5.2.1 ── */
@media(max-width:768px){
.section-hd{padding-left:0!important;padding-right:0!important;}
.offer-in{padding:0 1.5rem!important;}
.oi{padding-left:0!important;padding-right:0!important;padding-top:2.25rem!important;padding-bottom:2.25rem!important;}
.offer-note{padding-left:0!important;padding-right:0!important;}
.con-g-inner{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.stmt-in{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.voices-in{padding-left:0!important;padding-right:0!important;}
.footer-in{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.footer-bot{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.nav-in{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.rv-stat-bar{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.work-section-hd-in{padding-left:0!important;padding-right:0!important;}
.ab-container{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.work-in-hm{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.work-hd{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.ca-intro-g{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.ca-values-g{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.ca-roles-g{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.ca-life-g{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.inv-in{padding-left:0!important;padding-right:0!important;}
.con-g-inner>div{padding:4vh 0!important;}
.pt-body{padding-left:0!important;padding-right:0!important;}
.ptypes{padding-left:1.5rem!important;padding-right:1.5rem!important;}
}


}

/* Apply Ken Burns only when slide is active — resets on each activation */

/* Hero counter */
.arr-counter{
  font-size:9px;font-weight:700;letter-spacing:.22em;
  color:rgba(255,255,255,.45);display:block;margin-bottom:.35rem;
}
.arr-sep{color:rgba(255,255,255,.22);}

/* Hero CTA */
.sl-cta{
  display:inline-block;margin-top:1.75rem;
  font-size:10px;font-weight:700;letter-spacing:.18em;
  text-transform:uppercase;color:rgba(255,255,255,.55);
  text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.2);
  padding-bottom:2px;
  transition:color .25s,border-color .25s;
  animation:fi .6s 1.8s ease both;
}
.sl-cta:hover{color:var(--wht);border-bottom-color:rgba(255,255,255,.6);}
.tl-hero{color:rgba(255,255,255,.55);}






@keyframes slClipIn{
  from{clip-path:inset(100% 0 0 0);opacity:0;}
  to{clip-path:inset(0% 0 0 0);opacity:1;}
}
/* ── SLIDE BACKGROUNDS ── */
.sl-bg-res,.sl-bg-work,.sl-bg-com,





/* Images via inline style — loaded by browser when online */
/* Ken Burns — runs when slide is active */
/* ── SLIDE BACKGROUNDS ── */
.sl-bg-res,.sl-bg-work,.sl-bg-com,.sl-bg-hosp{
  position:absolute;
  inset:-5%;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  will-change:transform;
  transform-origin:center center;
}
.sl-bg-res{background-color:#1a1510;}
.sl-bg-work{background-color:#0e1018;}
.sl-bg-com{background-color:#121814;}
.sl-bg-hosp{background-color:#14100e;}
/* Ken Burns animations per slide */
.sl-ov{
  position:absolute;inset:0;
  background:linear-gradient(to bottom,
    rgba(8,8,10,.55) 0%,
    rgba(8,8,10,.08) 35%,
    rgba(8,8,10,.15) 55%,
    rgba(8,8,10,.78) 100%
  );
  z-index:1;
}

/* About stats — reuses homepage stmt-cred styles */
.ab-stats{background:var(--off);padding:8vh 0;}
.ab-stats 
/* Clean group photo */
.ab-group-img-wrap{position:relative;}
.ab-group-img-wrap .ab-img{aspect-ratio:16/7;object-fit:cover;width:100%;display:block;}

/* ════════════════════════════════════════
   ABOUT PAGE — RESTRUCTURED
════════════════════════════════════════ */

/* Shared */
.ab-sec{} 
.ab-container{max-width:1440px;margin:0 auto;padding:0 3rem;}
.ab-img{width:100%;height:100%;object-fit:cover;display:block;}

/* SECTION 1 — Identity + Group Photo */
.ab-identity{background:var(--wht);padding:8vh 0;}
.ab-identity-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:start;}
.ab-id-photo{position:relative;}
.ab-id-photo .ab-img{aspect-ratio:4/3;object-fit:cover;}
.ab-img-cap{font-size:9px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--mut);margin-top:.85rem;display:block;}
.ab-id-right{display:flex;flex-direction:column;gap:2rem;padding-top:.5rem;}
.ab-id-body{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;}

/* Proof strip */
.ab-proof{display:flex;align-items:flex-start;gap:2rem;padding:1.75rem 0;border-top:1px solid var(--brd);border-bottom:1px solid var(--brd);flex-wrap:wrap;}
.ab-proof-item{display:flex;flex-direction:column;gap:4px;align-items:flex-start;}
.ab-proof-n{font-size:clamp(1.8rem,2.8vw,2.4rem);font-weight:800;color:var(--blk);letter-spacing:-.025em;line-height:1;display:block;}
.ab-proof-star{display:flex;align-items:center;gap:5px;font-size:clamp(1.8rem,2.8vw,2.4rem);line-height:1;}
.ab-proof-star svg{color:var(--blk);margin-top:-1px;}
.ab-proof-sm{font-size:clamp(1.4rem,2.2vw,1.9rem);letter-spacing:.04em;}
.ab-proof-l{font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);}
.ab-proof-div{width:1px;height:48px;background:var(--brd);flex-shrink:0;margin-top:4px;}

/* Client marks */
.ab-clients{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding-top:1.5rem;}
.ab-clients-lbl{font-size:10px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--mut);}
.ab-client-marks{display:flex;align-items:center;gap:.75rem;}
.ab-client-mark{font-size:12px;font-weight:700;color:var(--blk);letter-spacing:.06em;}
.ab-client-dot{color:var(--mut);}

/* SECTION 2 — Principal */
.ab-principal{background:var(--off);padding:8vh 0;}
.ab-principal-grid{display:grid;grid-template-columns:280px 1fr;gap:7rem;align-items:start;}
.ab-principal-left{position:sticky;top:88px;z-index:2;}
.ab-faheem-img{margin-bottom:1.75rem;}
.ab-faheem-photo{aspect-ratio:3/4;object-fit:cover;object-position:top;}
.ab-cred-block{padding-top:1.5rem;border-top:1px solid var(--brd);}
.ab-cred-name{font-size:15px;font-weight:700;color:var(--blk);display:block;margin-bottom:3px;}
.ab-cred-title{font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--mut);display:block;margin-bottom:1.25rem;}
.ab-cred-list{display:flex;flex-direction:column;gap:.5rem;}
.ab-cred-list span{font-size:13px;font-weight:300;color:var(--bod);}
.ab-pull{font-family:var(--ser);font-size:clamp(1.4rem,2.2vw,2rem);font-style:italic;color:var(--blk);line-height:1.45;padding-bottom:2.5rem;border-bottom:1px solid var(--brd);margin-bottom:2.5rem;}
.ab-body p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.5rem;}
.ab-body p:last-child{margin-bottom:0;}
.ab-sig{margin-top:2.5rem;padding-top:1.75rem;border-top:1px solid var(--brd);}
.ab-sig-name{font-size:13px;font-weight:700;color:var(--blk);display:block;margin-bottom:2px;}
.ab-sig-role{font-size:10px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--mut);display:block;}

/* SECTION 3 — Philosophy */
.ab-phil{background:var(--wht);padding:8vh 0;}
.ab-phil-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:7rem;align-items:start;}
.ab-phil-body p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.5rem;}
.ab-phil-body p:last-child{margin-bottom:0;}

/* SECTION 4 — Studio */
.ab-studio{background:var(--off);padding:8vh 0;}
.ab-studio-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:start;}
.ab-studio-img .ab-img{aspect-ratio:4/3;object-fit:cover;}
.ab-studio-body{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin:1.5rem 0 2rem;}
.ab-roles{display:flex;flex-direction:column;gap:1.25rem;}
.ab-role{padding:.85rem 0;border-bottom:1px solid var(--brd);}
.ab-role:first-child{border-top:1px solid var(--brd);}
.ab-role-title{font-size:13px;font-weight:700;color:var(--blk);display:block;margin-bottom:4px;letter-spacing:-.01em;}
.ab-role-desc{font-size:12px;font-weight:300;color:var(--mut);display:block;}

/* SECTION 5 — How we work (reuse existing styles) */
.ab-how{background:var(--off);padding:8vh 0;}
.ab-evidence{max-width:1440px;margin:0 auto;padding:0 3rem 4vh;}
.ab-ev-img{overflow:hidden;}
.ab-ev-img .ab-img{aspect-ratio:16/6;object-fit:cover;}
.ab-ev-cap{display:flex;justify-content:space-between;align-items:baseline;padding-top:.85rem;border-top:1px solid var(--brd);margin-top:.85rem;}
.ab-ev-project{font-size:13px;font-weight:500;color:var(--blk);}
.ab-ev-detail{font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);}
.ab-how-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:7rem;align-items:start;}
.ab-how-body{display:flex;flex-direction:column;gap:2.5rem;}
.ab-how-item{padding-bottom:2rem;border-bottom:1px solid var(--brd);}
.ab-how-n{font-size:11px;font-weight:800;letter-spacing:.25em;text-transform:uppercase;color:var(--blk);display:block;margin-bottom:.85rem;}
.ab-how-title{font-size:15px;font-weight:700;color:var(--blk);margin-bottom:.6rem;letter-spacing:-.01em;}
.ab-how-text{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;}

/* SECTION 6 — Testimonials */
.ab-testi{background:var(--wht);padding:8vh 0;}
.ab-testi-hd{margin-bottom:3rem;}
.ab-testi-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem;}
.ab-tv{display:flex;flex-direction:column;gap:1.25rem;}
.ab-tv-thumb{cursor:pointer;background:none;border:none;padding:0;width:100%;text-align:left;}
.ab-tv-img{aspect-ratio:16/10;position:relative;overflow:hidden;}
.ab-tv-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transition:background .3s;}
.ab-tv-thumb:hover .ab-tv-overlay{background:rgba(0,0,0,.2);}
.ab-tv-btn{width:48px;height:48px;border-radius:50%;border:1.5px solid rgba(255,255,255,.55);display:flex;align-items:center;justify-content:center;transition:border-color .25s,transform .25s;padding-left:3px;}
.ab-tv-thumb:hover .ab-tv-btn{border-color:var(--wht);transform:scale(1.08);}
.ab-tv-label{display:flex;flex-direction:column;gap:3px;padding:.85rem 0 0;border-top:1px solid var(--brd);}
.ab-tv-name{font-size:13px;font-weight:600;color:var(--blk);}
.ab-tv-proj{font-size:9px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--mut);}
.ab-tv-quote{font-family:var(--ser);font-size:clamp(.95rem,1.4vw,1.1rem);font-style:italic;color:var(--bod);line-height:1.65;}
.ab-reviews-link{display:flex;align-items:center;gap:1rem;padding-top:2rem;border-top:1px solid var(--brd);flex-wrap:wrap;}
.ab-gr-stars{display:flex;gap:3px;align-items:center;}
.ab-gr-text{font-size:12px;font-weight:500;color:var(--bod);}

/* Mobile */
@media(max-width:768px){
  .ab-container{padding:0 1.5rem;}
  .ab-identity{padding:6vh 0;}
  .ab-identity-grid{grid-template-columns:1fr;gap:2.5rem;}
  .ab-proof{gap:1rem;}
  .ab-proof-div{display:none;}
  .ab-principal{padding:6vh 0;}
  .ab-principal-grid{grid-template-columns:1fr;gap:3rem;}
  .ab-principal-left{position:sticky;top:88px;z-index:2;}
  .ab-faheem-photo{aspect-ratio:1/1;}
  .ab-phil{background:var(--wht);padding:8vh 0;}
  .ab-phil-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:7rem;align-items:start;}
  .ab-studio{padding:6vh 0;}
  .ab-studio-grid{grid-template-columns:1fr;gap:2.5rem;}
  .ab-how{padding:6vh 0;}
  .ab-how-grid{grid-template-columns:1fr;gap:3rem;}
  .ab-evidence{padding:0 1.5rem 3vh;}
  .ab-testi{padding:6vh 0;}
  .ab-testi-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem;}
}
@media(min-width:769px) and (max-width:1024px){
  .ab-identity-grid{gap:3.5rem;}
  .ab-principal-grid{grid-template-columns:220px 1fr;gap:4rem;}
  .ab-testi-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem;}
  .ab-studio-grid{gap:3.5rem;}
}
@media(max-width:768px){
  .sl-content{bottom:7rem;left:1.5rem;}
  .sl-type{font-size:clamp(2.6rem,9.5vw,4rem);}
  .sl-h{font-size:.95rem;margin-top:.75rem;}
  .sl-indicators{bottom:3.25rem;left:1.5rem;}
  .arr-mark{right:1.5rem;bottom:3.25rem;}
  .arr-sc{display:none;}
}

/* ─────────────────────────────────────
   MOVEMENT II — STATEMENT
───────────────────────────────────── */
.stmt{background:var(--wht);padding:8vh 0;}

.stmt-cred{grid-column:1/-1;margin-top:5vh;padding-top:2.5rem;border-top:1px solid var(--brd);display:flex;align-items:center;justify-content:center;gap:3rem;flex-wrap:wrap;}
.stmt-in{max-width:1440px;margin:0 auto;padding:0 3rem;display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:end;}
.stmt-h{font-size:clamp(3rem,5.5vw,5.8rem);font-weight:800;line-height:.96;letter-spacing:-.03em;color:var(--blk);margin-bottom:1.75rem;}
.stmt-h .l2{display:block;padding-left:.12em;opacity:.38;}
.stmt-body{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;max-width:420px;margin-bottom:1.25rem;}
.stmt-diff{font-size:14px;font-weight:300;color:var(--bod);line-height:1.85;max-width:420px;margin-bottom:1.25rem;}
.stmt-punch{font-size:13.5px;font-weight:700;letter-spacing:.04em;color:var(--blk);margin-bottom:2.5rem;}

.cr-item{display:flex;flex-direction:column;gap:3px;}
.cr-n{font-size:clamp(1.8rem,2.8vw,2.4rem);font-weight:800;color:var(--blk);letter-spacing:-.02em;line-height:1;display:block;}
.cr-star-row{display:inline-flex;align-items:center;gap:.35rem;}
.cr-star{width:14px;height:14px;color:var(--blk);flex-shrink:0;margin-top:-1px;}
.cr-l{font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);display:block;}
.cr-div{width:1px;height:36px;background:var(--brd);flex-shrink:0;}

/* ─────────────────────────────────────
   PROJECT TYPES SECTION
───────────────────────────────────── */
.ptypes{background:var(--wht);border-top:1px solid var(--brd);padding:8vh 0 8vh 3rem;overflow:hidden;}
.ptypes-inner{max-width:1440px;margin:0 auto;}
.ptypes-hd{padding-right:3rem;margin-bottom:2rem;}
.ptypes-lbl{font-size:11px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--mut);display:block;margin-bottom:.75rem;}
.ptypes-h{font-size:clamp(1.6rem,2.8vw,2.6rem);font-weight:800;letter-spacing:-.025em;color:var(--blk);line-height:1;}
.section-eye{font-size:11px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--mut);display:block;margin-bottom:.75rem;}
.section-h{font-size:clamp(1.6rem,2.8vw,2.6rem);font-weight:800;letter-spacing:-.025em;color:var(--blk);line-height:1;}
.section-hd{margin-bottom:2rem;}
.ptypes-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;background:transparent;padding-right:3rem;}
.pt-card{background:var(--wht);display:flex;flex-direction:column;transition:background .3s;}
.pt-card:hover{background:var(--off);}
.pt-img{position:relative;aspect-ratio:4/3;overflow:hidden;}
.pt-img-in{position:absolute;inset:0;transition:transform .6s var(--ez);}
.pt-card:hover .pt-img-in{transform:scale(1.03);}
.pt-ov{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 40%,rgba(10,10,9,.45) 100%);}
/* Type backgrounds */
.bg-res .pt-img-in{background:linear-gradient(145deg,#1a1510,#2c2018 40%,#1a1410);}
.bg-res .pt-img-in::before{content:"";position:absolute;inset:0;background-image:linear-gradient(12deg,rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(-12deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:34px 34px;}
.bg-res .pt-img-in::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 78% 65% at 40% 35%,rgba(58,48,32,.5) 0%,transparent 68%);}
.bg-corp .pt-img-in{background:linear-gradient(145deg,#0e1018,#161c2c 40%,#0c0e18);}
.bg-corp .pt-img-in::before{content:"";position:absolute;inset:0;background-image:linear-gradient(0deg,rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);background-size:28px 28px;}
.bg-corp .pt-img-in::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 60% 55% at 62% 30%,rgba(28,38,62,.55) 0%,transparent 68%);}
.bg-com .pt-img-in{background:linear-gradient(145deg,#121412,#1e2418 40%,#101210);}
.bg-com .pt-img-in::before{content:"";position:absolute;inset:0;background-image:linear-gradient(20deg,rgba(255,255,255,.022) 1px,transparent 1px);background-size:22px 22px;}
.bg-com .pt-img-in::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 72% 52% at 50% 40%,rgba(22,36,18,.48) 0%,transparent 65%);}
.bg-hosp .pt-img-in{background:linear-gradient(145deg,#181210,#2a1e1c 40%,#141010);}
.bg-hosp .pt-img-in::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 55% 55% at 40% 30%,rgba(255,255,255,.04) 0%,transparent 45%);}
.bg-hosp .pt-img-in::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 68% 58% at 45% 35%,rgba(42,26,24,.52) 0%,transparent 65%);}
/* Card body */
.pt-body{padding:1.5rem 1.5rem 1.75rem;}
.pt-num{font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--mut);margin-bottom:.7rem;display:block;}
.pt-name{font-size:15px;font-weight:800;letter-spacing:-.01em;color:var(--blk);text-transform:uppercase;margin-bottom:.55rem;}
.pt-desc{font-size:13px;font-weight:300;color:var(--bod);line-height:1.72;margin-bottom:1.1rem;}
.pt-tags{display:flex;flex-wrap:wrap;gap:.3rem;}
.pt-tags span{font-size:8.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:.22rem .6rem;border:1px solid var(--brd);color:var(--mut);}
/* Mobile scroll hint */
.pt-hint{display:none;font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);margin-top:1.25rem;padding-right:3rem;opacity:.65;}
.pt-dots{display:none;gap:.4rem;margin-top:1rem;padding-right:3rem;}
.pt-dot{width:18px;height:2px;background:var(--brd);transition:background .3s,width .3s;}
.pt-dot.on{background:var(--blk);width:28px;}

/* ─────────────────────────────────────
   MOVEMENT III — WORK
───────────────────────────────────── */


/* ─────────────────────────────────────
   MOVEMENT IV — VOICES
───────────────────────────────────── */
.voices{background:var(--wht);border-top:1px solid var(--brd);padding:8vh 3rem;}
.voices-in{max-width:1440px;margin:0 auto;}
.voice{padding:2.5rem 0 0;border-top:1px solid var(--brd);display:grid;grid-template-columns:200px 1fr;gap:5rem;align-items:start;}
.voice:first-child{border-top:none;padding-top:0;}
.section-hd + .voice{border-top:none;padding-top:0;}
.voice:last-child{padding-bottom:0;}
.v-attr{display:flex;flex-direction:column;gap:3px;padding-top:.3rem;}
.v-type{font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--blk);display:block;margin-bottom:.35rem;}
.v-loc{font-size:13px;font-weight:400;color:var(--bod);display:block;line-height:1.5;margin-bottom:.25rem;}
.v-year{font-size:10px;font-weight:400;color:rgba(154,152,148,.55);display:block;letter-spacing:.04em;}
.v-txt{font-family:var(--ser);font-size:clamp(1.1rem,1.8vw,1.6rem);font-style:italic;color:var(--blk);line-height:1.65;}

/* ─────────────────────────────────────
   MOVEMENT V — OFFER (services)
───────────────────────────────────── */
.offer{background:var(--off);border-top:1px solid var(--brd);padding:8vh 0;}
.offer-in{max-width:1440px;margin:0 auto;padding:0 3rem;}
.offer-g{display:grid;grid-template-columns:repeat(3,1fr);}
.oi{padding:3rem 2.5rem 2.5rem;border-right:1px solid var(--brd);position:relative;display:flex;flex-direction:column;background:var(--wht);}
.oi:last-child{border-right:none;padding-right:0;}
.oi:not(:first-child){padding-left:2.5rem;}
.oi::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--blk);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ez);}
.oi:hover::before{transform:scaleX(1);}
.oi-n{font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--mut);margin-bottom:1.25rem;}
.oi-t{font-size:15px;font-weight:800;letter-spacing:-.01em;color:var(--blk);text-transform:uppercase;margin-bottom:.85rem;line-height:1.1;}
.oi-b{font-size:13px;font-weight:300;color:var(--bod);line-height:1.8;margin-bottom:1.5rem;flex:1;}
.oi-th{display:none;}
.oi-ty{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:2rem;}
.oi-ty span{font-size:8.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:.22rem .6rem;border:1px solid var(--brd);color:var(--mut);}
.offer-note{padding:2rem 0 0;border-top:1px solid var(--brd);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;}
.offer-note-t{font-size:12px;font-weight:300;color:var(--mut);font-style:italic;}

/* ─────────────────────────────────────
   MOVEMENT VI — INVITATION (contact)
───────────────────────────────────── */
.inv{background:var(--off);border-top:1px solid var(--brd);padding:8vh 3rem;position:relative;overflow:hidden;}
.inv::before{content:"";position:absolute;inset:0;background-image:linear-gradient(14deg,rgba(0,0,0,.028) 1px,transparent 1px),linear-gradient(-14deg,rgba(0,0,0,.028) 1px,transparent 1px);background-size:58px 58px;}
.inv-in{max-width:1440px;margin:0 auto;position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:7rem;align-items:center;}
.inv-h{font-family:var(--ser);font-size:clamp(2.5rem,4vw,4.8rem);font-style:italic;color:var(--blk);line-height:1.18;margin-bottom:1.75rem;}
.inv-s{font-size:14px;font-weight:400;color:var(--blk);line-height:1.75;max-width:380px;margin-top:.75rem;}

/* Invitation contact — left column, below sub text */
.inv-contact{display:flex;flex-direction:column;gap:1.1rem;}
.inv-ct{display:flex;flex-direction:column;gap:2px;}
.inv-ct-lbl{font-size:9px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--mut);}
.inv-ct-val{font-size:13px;font-weight:400;color:var(--bod);text-decoration:none;transition:color .2s;}
.inv-ct-val:hover{color:var(--blk);}
.f-field{position:relative;margin-bottom:1.5px;}
.f-inp{width:100%;background:transparent;border:none;border-bottom:1px solid var(--brd);color:var(--blk);font-family:var(--fnt);font-size:14px;font-weight:300;padding:1.1rem 0;outline:none;transition:border-color .2s;caret-color:var(--blk);}
.f-inp::placeholder{color:rgba(0,0,0,.38);font-style:italic;}
.f-inp:focus{border-bottom-color:var(--blk);}
.f-ta{resize:none;min-height:90px;}
.f-submit{margin-top:2.25rem;}
.f-btn{font-family:var(--fnt);font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:.95rem 2.25rem;background:var(--blk);color:var(--wht);border:1px solid var(--blk);cursor:pointer;position:relative;overflow:hidden;transition:color .25s;}
.f-btn::before{content:"";position:absolute;inset:0;background:var(--wht);transform:translateX(-101%);transition:transform .28s var(--ez);}
.f-btn:hover{color:var(--blk);}
.f-btn:hover::before{transform:none;}
.f-btn:active{transform:scale(.97);}
.f-btn span{position:relative;z-index:1;}
.f-contact a{display:block;font-size:11px;font-weight:300;color:var(--mut);text-decoration:none;margin-bottom:3px;transition:color .2s;}
.f-contact a:hover{color:var(--blk);}

/* ─────────────────────────────────────
   FOOTER
───────────────────────────────────── */
.footer{background:#08080a;border-top:1px solid rgba(255,255,255,.06);}
.footer-in{max-width:1440px;margin:0 auto;padding:3.5rem 3rem;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;}
.ft-nm{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.5);display:block;margin-bottom:.5rem;}
.ft-ds{font-size:13px;font-weight:300;color:rgba(255,255,255,.26);line-height:1.75;max-width:260px;}
.ft-ht{font-size:8.5px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.18);margin-bottom:1.1rem;}
.ft-lk{display:flex;flex-direction:column;gap:.55rem;}
.ft-lk a{font-size:13px;font-weight:300;color:rgba(255,255,255,.32);text-decoration:none;transition:color .2s;}
.ft-lk a:hover{color:rgba(255,255,255,.72);}
.footer-bot{border-top:1px solid rgba(255,255,255,.05);padding:1.5rem 3rem;max-width:1440px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;}
.ft-cp{font-size:11px;color:rgba(255,255,255,.18);letter-spacing:.04em;}
.ft-social{display:flex;align-items:center;justify-content:center;gap:.85rem;}
.ft-soc-link{color:rgba(255,255,255,.28);text-decoration:none;display:flex;align-items:center;transition:color .2s,transform .2s;}
.ft-soc-link:hover{color:rgba(255,255,255,.85);transform:translateY(-2px);}

/* ─────────────────────────────────────
   WHATSAPP
───────────────────────────────────── */

/* ─────────────────────────────────────
   TEXT LINKS
───────────────────────────────────── */
.tl{font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--blk);text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;transition:gap .25s;}
.tl:hover{opacity:.7;}
.tl:hover .tl-arr{transform:translateX(4px);}



.tl-wht{color:var(--wht);}
.tl-wht:hover{color:rgba(255,255,255,.75);}

/* ─────────────────────────────────────
   INNER PAGES — shared
───────────────────────────────────── */
.pg-hero{height:42vh;min-height:300px;background:var(--blk);position:relative;overflow:hidden;display:flex;align-items:flex-end;}
.pg-bg{position:absolute;inset:0;background-size:cover;background-position:center;}
.pg-mk{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(10,10,9,.2) 0%,rgba(10,10,9,.72) 100%);}
.pg-ct{position:relative;z-index:1;padding:0 3rem 2rem;max-width:1440px;margin:0 auto;width:100%;}
.pg-ey{font-size:9px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.3);margin-bottom:.85rem;display:block;}
.pg-tt{font-size:clamp(2.5rem,5vw,5rem);font-weight:800;color:var(--wht);line-height:.95;letter-spacing:-.025em;text-transform:uppercase;}

/* ─────────────────────────────────────
   ABOUT PAGE
───────────────────────────────────── */
.about-g{max-width:1440px;margin:0 auto;padding:8vh 3rem;display:grid;grid-template-columns:1fr 1.5fr;gap:7rem;align-items:start;background:var(--wht);}
.about-ld{position:sticky;top:100px;}
.about-nm{font-size:clamp(2rem,3.2vw,3rem);font-weight:800;color:var(--blk);line-height:1;letter-spacing:-.025em;text-transform:uppercase;margin-bottom:1.5rem;}
.about-cr{display:flex;flex-direction:column;gap:.55rem;padding:1.5rem 0;border-top:1px solid var(--brd);border-bottom:1px solid var(--brd);margin-bottom:2rem;}
.about-cr span{font-size:13px;color:var(--bod);}
.about-ph{width:100%;aspect-ratio:3/4;background:linear-gradient(145deg,#f0ede8,#e8e4de);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#c4c0b8;position:relative;overflow:hidden;}
.about-ph::before{content:"";position:absolute;inset:0;background-image:linear-gradient(14deg,rgba(0,0,0,.04) 1px,transparent 1px),linear-gradient(-14deg,rgba(0,0,0,.04) 1px,transparent 1px);background-size:24px 24px;}
.about-ph span{position:relative;}
.about-pl{font-family:var(--ser);font-size:clamp(1.3rem,2vw,1.8rem);font-style:italic;color:var(--blk);line-height:1.5;padding:2.5rem 0;border-top:1px solid var(--brd);border-bottom:1px solid var(--brd);margin:2.5rem 0;}
.about-bd p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.5rem;}

/* ─────────────────────────────────────
   CONTACT PAGE
───────────────────────────────────── */
.con-g{background:var(--wht);}
.con-g-inner{max-width:1440px;margin:0 auto;padding:8vh 3rem;display:grid;grid-template-columns:1fr 1.1fr;gap:7rem;align-items:start;}
.con-h{font-family:var(--ser);font-size:clamp(2.2rem,3.8vw,4rem);font-style:italic;color:var(--blk);line-height:1.2;margin-bottom:1.75rem;}
.con-b{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:2.75rem;max-width:360px;}
.con-det{display:flex;flex-direction:column;gap:1.25rem;}
.con-lbl{font-size:8.5px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--mut);display:block;margin-bottom:3px;}
.con-val{font-size:14px;color:var(--blk);text-decoration:none;display:block;transition:color .2s;}
a.con-val:hover{color:var(--mut);}
.cf-lbl{font-size:9px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--mut);display:block;margin-bottom:.45rem;}
.cf-inp,.cf-ta{width:100%;background:transparent;border:none;border-bottom:1px solid var(--brd);font-family:var(--fnt);font-size:14px;font-weight:300;color:var(--blk);padding:.7rem 0;outline:none;transition:border-color .2s;caret-color:var(--blk);}
.cf-inp::placeholder,.cf-ta::placeholder{color:rgba(0,0,0,.2);}
.cf-inp:focus,.cf-ta:focus{border-bottom-color:var(--blk);}
.cf-ta{resize:none;min-height:110px;}
.cf-row{display:flex;flex-direction:column;gap:.45rem;margin-bottom:1.75rem;}
.cf-sub{font-family:var(--fnt);font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:1rem 2.25rem;background:var(--blk);color:var(--wht);border:1px solid var(--blk);cursor:pointer;transition:transform .25s,opacity .25s,background-color .25s,border-color .25s;margin-top:2rem;}
.cf-sub:hover{background:transparent;color:var(--blk);}

/* ─────────────────────────────────────
   WORK PAGE
───────────────────────────────────── */
.wk-filters{background:var(--wht);border-bottom:1px solid var(--brd);border-top:1px solid var(--brd);}
.fb{font-family:var(--fnt);font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);background:transparent;border:1px solid var(--brd);padding:.45rem 1rem;cursor:pointer;transition:transform .2s,opacity .2s,background-color .2s,border-color .2s;white-space:nowrap;}
.fb.on,.fb:hover{background:var(--blk);border-color:var(--blk);color:var(--wht);}

/* ─────────────────────────────────────
   PROJECT PAGE
───────────────────────────────────── */
.prj-g{max-width:1440px;margin:0 auto;padding:6vh 3rem;background:var(--wht);display:grid;grid-template-columns:220px 1fr;gap:5rem;}
.prj-meta{position:sticky;top:96px;}
.prj-ml{font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--mut);margin-bottom:1.75rem;display:block;}
.pm{margin-bottom:1.5rem;}
.pm-k{font-size:8.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--mut);display:block;margin-bottom:2px;}
.pm-v{font-size:13px;color:var(--blk);}
.prj-txt p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:2.5rem;max-width:580px;}
.prj-imgs{display:grid;gap:2px;}
.prj-img{background:linear-gradient(145deg,#f4f2ee,#ece9e3);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#c4c0b8;position:relative;overflow:hidden;}
.prj-img::before{content:"";position:absolute;inset:0;background-image:linear-gradient(14deg,rgba(0,0,0,.04) 1px,transparent 1px),linear-gradient(-14deg,rgba(0,0,0,.04) 1px,transparent 1px);background-size:28px 28px;}
.prj-img span{position:relative;}
.prj-q{font-family:var(--ser);font-size:clamp(1.2rem,1.9vw,1.6rem);font-style:italic;color:var(--blk);line-height:1.58;padding:2.25rem 0;border-top:1px solid var(--brd);border-bottom:1px solid var(--brd);margin:2.75rem 0;}
.prj-q cite{display:block;margin-top:.85rem;font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);font-style:normal;}

/* ─────────────────────────────────────
   OVERSEAS PAGE
───────────────────────────────────── */
.os-g{max-width:1440px;margin:0 auto;padding:8vh 3rem;display:grid;grid-template-columns:1fr 1fr;gap:7rem;background:var(--wht);}
.os-pull{font-family:var(--ser);font-size:clamp(1.3rem,2vw,1.8rem);font-style:italic;color:var(--blk);line-height:1.5;padding-bottom:2rem;border-bottom:1px solid var(--brd);margin-bottom:2.5rem;}
.os-bd p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.5rem;}
.os-ls{display:flex;flex-direction:column;gap:1.1rem;margin-top:2.5rem;}
.os-li{display:flex;gap:.85rem;align-items:flex-start;}
.os-dot{width:3px;height:3px;background:var(--blk);flex-shrink:0;margin-top:9px;}
.os-li-t{font-size:15px;font-weight:300;color:var(--bod);line-height:1.65;}


/* ═══════════════════════════════════════
   RESPONSIVE — TABLET
═══════════════════════════════════════ */
@media (min-width:769px) and (max-width:1024px){
  .stmt-in{grid-template-columns:1fr;gap:2.5rem;}
  .ptypes-grid{grid-template-columns:repeat(2,1fr);}
  .offer-g{grid-template-columns:1fr 1fr;}
  .oi:nth-child(2){border-right:none;padding-right:0;}
  .oi:nth-child(3){border-top:1px solid var(--brd);padding-top:2.5rem;padding-left:0;border-right:1px solid var(--brd);padding-right:2.5rem;}
  .oi:nth-child(3)::before{top:-1px;}
  .inv-in{grid-template-columns:1fr;gap:3.5rem;}
  .about-g{grid-template-columns:1fr 1.2fr;gap:4rem;}
  .about-ld{position:static;}
  .con-g{background:var(--wht);}
.con-g-inner{max-width:1440px;margin:0 auto;padding:8vh 3rem;display:grid;grid-template-columns:1fr 1.1fr;gap:7rem;align-items:start;}
  .os-g{grid-template-columns:1fr;gap:3rem;}
  .footer-in{grid-template-columns:1fr 1fr;gap:2rem;}
}

/* ═══════════════════════════════════════
   RESPONSIVE — MOBILE
═══════════════════════════════════════ */
@media (max-width:768px){
  .work-in{background:var(--off);padding:1.5rem 0 0;}
  .work-hd{max-width:1440px;margin:0 auto;padding:0 3rem 1.5rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--brd);}

  .masonry{column-count:2;column-gap:1.5rem;}
  .mc-cap{padding:.75rem 0 .25rem;display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;}
  .work-ft{padding-top:2rem;border-top:1px solid var(--brd);}
  
  
  .mc-cap{padding:.75rem 0 .25rem;display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;}
  .work-ft{padding:2.5rem 0 1rem;display:flex;justify-content:flex-end;border-top:1px solid var(--brd);margin-top:1rem;}
  /* Hide desktop-only elements */
  .os-strip{display:none;}
  .nav-ul,.nav-cta,.nav-soc{display:none;}
  .cur,.cur-r{display:none;}
  .arr-sc{display:none;}

  /* Nav */
  .nav{top:0!important;padding:0 1.5rem;height:60px;}
  .ham{display:flex;}

  /* Arrival */
  .arr-mark{left:1.5rem;bottom:1.75rem;}
  .arr-city{font-size:9.5px;}

  /* Statement */
  .stmt{padding:9vh 0 7vh;}
  .stmt-in{padding:0 1.5rem;}
  
  .stmt-in{grid-template-columns:1fr;gap:2rem;}
  .stmt-h{font-size:clamp(2.8rem,10.5vw,4.5rem);}
  .stmt-h .l2{padding-left:0;}
  
  .cr-div{display:none;}
  .cr-item:last-child,.cr-item:last-child + .cr-div{display:none;}
  .cr-n{font-size:1.7rem;}

  /* Project types — horizontal scroll */
  .ptypes{padding:7vh 0 7vh 1.5rem;}
  .ptypes-hd{padding-right:1.5rem;}
  .ptypes-grid{
    grid-template-columns:repeat(4,74vw);
    gap:.85rem;
    background:transparent;
    padding-right:1.5rem;
    overflow-x:scroll;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    -ms-overflow-style:none;
  }
  .ptypes-grid::-webkit-scrollbar{display:none;}
  .pt-card{scroll-snap-align:start;border:1px solid var(--brd);}
  .pt-img{aspect-ratio:3/2;}
  .pt-hint{display:block;}
  .pt-dots{display:flex;}

  /* Work */
  
  
  
  .work-ft{padding:2.5rem 0 1rem;display:flex;justify-content:flex-end;border-top:1px solid var(--brd);margin-top:1rem;}
  .work-hd{max-width:1440px;margin:0 auto;padding:0 3rem 1.5rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--brd);}

  /* Voices */
  .voices{padding:7vh 1.5rem;}
  .voice{grid-template-columns:1fr;gap:0;padding:2.25rem 0;display:flex;flex-direction:column;}
  .v-txt{font-size:clamp(1rem,4.2vw,1.3rem);order:1;}
  .v-attr{order:2;padding-top:1.25rem;border-top:1px solid var(--brd);margin-top:1.25rem;}

  /* Offer */
  .offer-g{grid-template-columns:1fr;}
  .oi{border-right:none;padding:2.25rem 1.5rem;border-top:1px solid var(--brd);}
  .oi:first-child{border-top:none;}
  .oi:not(:first-child){padding-left:1.5rem;}
  .offer-in{padding:0;}
  .offer-note{padding:1.75rem 1.5rem;flex-direction:column;align-items:flex-start;}

  /* Invitation */
  .inv{padding:9vh 1.5rem;}

  .inv-in{grid-template-columns:1fr;gap:3rem;}
  .inv-h{font-size:clamp(2rem,8.5vw,3.2rem);}
  .inv-contact{flex-direction:row;flex-wrap:wrap;gap:1.5rem 2.5rem;}

  /* Footer */
  .footer-in{grid-template-columns:1fr;gap:2.25rem;padding:2.75rem 1.5rem;}
  .footer-bot{border-top:1px solid rgba(255,255,255,.05);padding:1.5rem 3rem;max-width:1440px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;}

  /* Inner pages */
  .pg-ct{padding:0 1.5rem 2.25rem;}
  .pg-tt{font-size:clamp(2rem,7.5vw,3rem);}
  .about-g{grid-template-columns:1fr;gap:2.5rem;padding:5vh 1.5rem;}
  .about-ld{position:static;}
  .con-g{background:var(--wht);}
.con-g-inner{max-width:1440px;margin:0 auto;padding:8vh 3rem;display:grid;grid-template-columns:1fr 1.1fr;gap:7rem;align-items:start;}
  .os-g{grid-template-columns:1fr;gap:2.5rem;padding:5vh 1.5rem;}
  .prj-g{grid-template-columns:1fr;gap:2rem;padding:4vh 1.5rem;}
  .prj-meta{position:static;}
  .wk-filters{background:var(--wht);border-bottom:1px solid var(--brd);border-top:1px solid var(--brd);}
  .wg3{grid-template-columns:1fr;}
}
/* ── WORK SECTION ── */
.work{background:var(--off);border-top:1px solid var(--brd);padding:8vh 0;}
.work-hd{max-width:1440px;margin:0 auto;padding:0 3rem 1.5rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--brd);}
.work-eye{font-size:11px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--mut);display:block;margin-bottom:.75rem;}
.work-ft{padding:2.5rem 0 1rem;display:flex;justify-content:flex-end;border-top:1px solid var(--brd);margin-top:1rem;}
.work-in{background:var(--off);padding:0;}
.masonry{column-count:2;column-gap:1.5rem;}
.mc{break-inside:avoid;margin-bottom:1.5rem;cursor:pointer;display:block;}
.mc-img{position:relative;width:100%;overflow:hidden;display:block;}
.mc-bg{position:absolute;inset:0;transition:transform .7s var(--ez);will-change:transform;}
.mc:hover .mc-bg{transform:scale(1.03);}
.mc-bg::before{content:"";position:absolute;inset:0;background-image:linear-gradient(14deg,rgba(255,255,255,.022) 1px,transparent 1px),linear-gradient(-14deg,rgba(255,255,255,.022) 1px,transparent 1px);background-size:42px 42px;}
.wc1{background:url('https://images.unsplash.com/photo-1497366216548-37526070297c?w=800&q=80&auto=format&fit=crop') center/cover no-repeat;}
.wc2{background:url('https://images.unsplash.com/photo-1600596542815-ffad4c1539a9?w=800&q=80&auto=format&fit=crop') center/cover no-repeat;}
.wc3{background:url('https://images.unsplash.com/photo-1560179707-f14e90ef3623?w=800&q=80&auto=format&fit=crop') center/cover no-repeat;}
.wc4{background:url('https://images.unsplash.com/photo-1497366811353-6870744d04b2?w=800&q=80&auto=format&fit=crop') center/cover no-repeat;}
.wc5{background:url('https://images.unsplash.com/photo-1545324418-cc1a3fa10c00?w=800&q=80&auto=format&fit=crop') center/cover no-repeat;}
.wc6{background:url('https://images.unsplash.com/photo-1486325212027-8081e485255e?w=800&q=80&auto=format&fit=crop') center/cover no-repeat;}
.mc-cap{padding:.75rem 0 .25rem;display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;}
.mc-name{font-size:13px;font-weight:600;color:var(--blk);line-height:1.3;}
.mc-meta{font-size:10px;font-weight:400;color:var(--mut);letter-spacing:.04em;white-space:nowrap;flex-shrink:0;}


/* About page evidence image */
.ab-evidence{max-width:1440px;margin:0 auto 0;padding:0 3rem 5vh;}
.ab-ev-img{width:100%;overflow:hidden;margin-bottom:1rem;}
.ab-ev-img .ab-img{aspect-ratio:21/9;object-fit:cover;object-position:center 40%;}
.ab-ev-cap{display:flex;justify-content:space-between;align-items:baseline;padding-top:.85rem;border-top:1px solid var(--brd);}
.ab-ev-project{font-size:13px;font-weight:500;color:var(--blk);}
.ab-ev-detail{font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);}

.ab-role:first-child .ab-role-title{color:var(--blk);font-size:14px;}

.ab-proof-item{transition:opacity .2s;}
.ab-proof-item:hover .ab-proof-n{color:var(--blk);opacity:.75;}
.ab-proof-item:hover .ab-proof-l{color:var(--bod);}

/* DHL Letter Card */
.ab-letter-card{background:var(--off);border:1px solid var(--brd);padding:2rem;display:flex;flex-direction:column;gap:1.5rem;height:100%;}
.ab-lc-header{display:flex;justify-content:space-between;align-items:flex-start;}
.ab-lc-logo{
  font-size:18px;font-weight:900;color:var(--blk);
  letter-spacing:-.02em;line-height:1;
}
.ab-lc-logo span{
  font-size:9px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--mut);
  display:block;margin-top:3px;
}
.ab-lc-type{
  font-size:9px;font-weight:600;letter-spacing:.18em;
  text-transform:uppercase;color:var(--mut);
}
.ab-lc-quote{
  font-family:var(--ser);font-size:clamp(1rem,1.6vw,1.2rem);
  font-style:italic;color:var(--blk);line-height:1.65;
  border-left:2px solid var(--blk);padding-left:1.25rem;
}
.ab-lc-footer{
  display:flex;justify-content:space-between;align-items:baseline;
  padding-top:1.25rem;border-top:1px solid var(--brd);
}
.ab-lc-proj{font-size:11px;font-weight:300;color:var(--mut);}

.skip-nav{
  position:absolute;top:-100%;left:1rem;
  background:var(--blk);color:var(--wht);
  padding:.5rem 1rem;font-size:12px;z-index:9999;
  transition:top .2s;
}
.skip-nav:focus{top:1rem;}

.sr-only{
  position:absolute;width:1px;height:1px;
  padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

/* Testi 2×2 layout */
.ab-lc-top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;}
.ab-lc-svg-logo{width:140px;height:auto;flex-shrink:0;}
.ab-lc-type{font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);text-align:right;}
.ab-lc-quote{font-family:var(--ser);font-size:clamp(.95rem,1.4vw,1.1rem);font-style:italic;color:var(--blk);line-height:1.65;border-left:2px solid var(--brd);padding-left:1.25rem;flex:1;}
.ab-lc-footer{display:flex;justify-content:space-between;align-items:baseline;padding-top:1.25rem;border-top:1px solid var(--brd);margin-top:auto;flex-wrap:wrap;gap:.5rem;}
.ab-lc-proj{font-size:11px;font-weight:300;color:var(--mut);}

/* Mobile: stack to single column */

/* Studio section — missing rules */
.ab-studio-img{overflow:hidden;}
.ab-studio-img .ab-img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block;}
.ab-studio-right{display:flex;flex-direction:column;gap:0;}

/* ── TEAM SECTION ── */
.ab-team-sec{background:var(--wht);padding:8vh 0;}
.ab-team-hd{margin-bottom:3.5rem;}
.ab-team-sub{
  font-size:15px;font-weight:300;color:var(--bod);
  line-height:1.8;max-width:560px;margin-top:1rem;
}
.ab-team-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:2rem;
}
.ab-member{display:flex;flex-direction:column;gap:0;}
.ab-member-img{
  overflow:hidden;
  margin-bottom:1.25rem;
}
.ab-member-img .ab-img{
  aspect-ratio:3/4;
  object-fit:cover;
  object-position:top;
  width:100%;
  display:block;
  transition:transform .6s cubic-bezier(.4,0,.2,1);
}
.ab-member:hover .ab-member-img .ab-img{
  transform:scale(1.03);
}
.ab-member-info{
  display:flex;flex-direction:column;gap:4px;
  padding-top:1rem;
  border-top:1px solid var(--brd);
}
.ab-member-name{
  font-size:14px;font-weight:700;
  color:var(--blk);letter-spacing:-.01em;
}
.ab-member-role{
  font-size:9px;font-weight:700;
  letter-spacing:.2em;text-transform:uppercase;
  color:var(--mut);margin-bottom:6px;
}
.ab-member-bio{
  font-size:12px;font-weight:300;
  color:var(--bod);line-height:1.7;
}

/* Mobile */
@media(max-width:768px){
  .ab-team-grid{grid-template-columns:1fr 1fr;gap:1.5rem;}
  .ab-team-sec{padding:6vh 0;}
}
@media(min-width:769px) and (max-width:1024px){
  .ab-team-grid{grid-template-columns:repeat(2,1fr);gap:1.75rem;}
}

/* Voice logos */
.voice-logo{
  height:18px;width:auto;object-fit:contain;
  display:inline-block;vertical-align:middle;
  margin-right:.5rem;filter:grayscale(100%);opacity:.6;
}
/* mc-meta scope */
.mc-meta{font-size:10px;font-weight:400;color:var(--mut);letter-spacing:.04em;white-space:nowrap;flex-shrink:0;}
@media(max-width:768px){
  .nav{top:0 !important;}
  .ab-testi-grid{grid-template-columns:1fr;}
}

/* About page additional */
.about-body{display:flex;flex-direction:column;gap:2rem;}
.about-bd p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.25rem;}
/* Project page image */
.prj-img{background-color:var(--off);background-size:cover;background-position:center;}
@media(min-width:769px) and (max-width:1024px){
  .ab-testi-grid{grid-template-columns:1fr 1fr;}
}

/* Real company logos */
.ab-lc-img-logo{
  height:36px;
  width:auto;
  max-width:130px;
  object-fit:contain;
  object-position:left center;
  display:block;
}
.ab-lc-logo-fb{
  font-size:18px;font-weight:900;
  color:var(--blk);letter-spacing:-.02em;line-height:1;
  flex-direction:column;gap:2px;
}
.ab-lc-logo-fb span{
  font-size:9px;font-weight:500;letter-spacing:.1em;
  text-transform:uppercase;color:var(--mut);
}
.ab-client-logo{
  height:22px;
  width:auto;
  max-width:80px;
  object-fit:contain;
  object-position:left center;
  display:inline-block;
  vertical-align:middle;
  filter:grayscale(100%);
  opacity:.6;
  transition:filter .25s,opacity .25s;
}
.ab-client-logo:hover{
  filter:grayscale(0%);
  opacity:1;
}
.ab-gr-logo{
  height:18px;
  width:auto;
  object-fit:contain;
  display:block;
  filter:grayscale(100%);
  opacity:.5;
}


.v-logo{margin-bottom:.75rem;}
.v-logo .voice-logo{height:22px;width:auto;object-fit:contain;filter:grayscale(100%);opacity:.55;display:block;}

/* Demo bar */
.demo-bar{position:fixed;bottom:0;left:0;right:0;z-index:999;background:rgba(10,10,9,.92);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem;border-top:1px solid rgba(255,255,255,.06);}
.db{font-family:var(--fnt);font-size:8.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:.35rem .85rem;background:transparent;border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.35);cursor:pointer;transition:transform .2s,opacity .2s,background-color .2s,border-color .2s;}
.db.on,.db:hover{background:var(--wht);border-color:var(--wht);color:var(--blk);}

/* about-bd */
.about-bd{display:flex;flex-direction:column;}
.about-bd p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.25rem;}
/* os-bd */
.os-bd p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.25rem;}
/* prj-txt */
.prj-txt p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:2rem;max-width:580px;}

.prj-txt p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:2rem;max-width:580px;}

.prj-txt{}
.prj-txt p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:2rem;max-width:580px;}

/* ── ABOUT BODY PARAGRAPHS ── */
.about-bd p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.25rem;}
.about-bd p:last-child{margin-bottom:0;}
/* ── ABOUT CR SPANS ── */
.about-cr span{font-size:13px;color:var(--bod);line-height:1.6;}
.ab-body{}
.ab-body p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.5rem;}
.ab-body p:last-child{margin-bottom:0;}
.ab-phil-body{}
.ab-phil-body p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.5rem;}
.ab-phil-body p:last-child{margin-bottom:0;}
.ab-principal-right{display:flex;flex-direction:column;gap:2.5rem;}

.ft-cp-right{font-size:11px;color:rgba(255,255,255,.18);letter-spacing:.04em;text-align:right;}
@media(max-width:768px){.footer-bot{grid-template-columns:1fr;text-align:center;}.ft-cp-right{text-align:center;}}

.cf-inp{width:100%;background:transparent;border:none;border-bottom:1px solid var(--brd);font-family:var(--fnt);font-size:14px;font-weight:300;color:var(--blk);padding:.7rem 0;outline:none;transition:border-color .2s;caret-color:var(--blk);}
.cf-inp::placeholder{color:rgba(0,0,0,.2);}
.cf-inp:focus{border-bottom-color:var(--blk);}

.con-det>div{display:flex;flex-direction:column;gap:.35rem;}

.work-section-hd{background:var(--wht);max-width:100%;}
.wa{
  position:fixed;bottom:2rem;right:2rem;z-index:700;
  width:42px;height:42px;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(8px);
  border:1px solid rgba(0,0,0,.12);
  color:rgba(0,0,0,.5);
  display:flex;align-items:center;justify-content:center;
  text-decoration:none;
  border-radius:50%;
  box-shadow:0 2px 12px rgba(0,0,0,.08);
  transition:background .3s,color .3s,border-color .3s,box-shadow .3s;
  animation:fi .8s 3s ease both, waBreathe 3s 4s ease-in-out infinite;
  cursor:pointer;
}
.wa:hover{
  animation:fi .8s 3s ease both;
}
/* Ripple ring */
.wa::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1.5px solid rgba(0,0,0,.18);
  animation:waRipple 3s 4.5s ease-out infinite;
  pointer-events:none;
}
.wa:hover::before{
  animation:none;
  opacity:0;
}
@keyframes waBreathe{
  0%,100%{transform:scale(1);}
  50%{transform:scale(1.07);}
}
@keyframes waRipple{
  0%{transform:scale(1);opacity:.45;}
  100%{transform:scale(1.75);opacity:0;}
}

.wk-filters-in{max-width:1440px;margin:0 auto;padding:.85rem 3rem;display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;}

.work-in-inner{max-width:1440px;margin:0 auto;}

.work-section-hd-in{max-width:1440px;margin:0 auto;padding:6vh 3rem 3vh;display:flex;align-items:flex-end;justify-content:space-between;gap:4rem;}

.work-in-hm{max-width:1440px;margin:0 auto;padding:0 3rem;}
/* ── CAREERS ── */
.ca-intro{background:var(--wht);}
.ca-intro-g{max-width:1440px;margin:0 auto;padding:8vh 3rem;display:grid;grid-template-columns:1fr 1.4fr;gap:7rem;align-items:start;}
.ca-intro-body p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.5rem;}
.ca-intro-body p:last-child{margin-bottom:0;}
.ca-values{background:var(--off);}
.ca-values-g{max-width:1440px;margin:0 auto;padding:8vh 3rem;}
.ca-val-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem;}
.ca-val-item{padding-top:2rem;border-top:2px solid var(--blk);}
.ca-val-h{font-size:15px;font-weight:700;color:var(--blk);margin-bottom:.75rem;letter-spacing:-.01em;}
.ca-val-p{font-size:14px;font-weight:300;color:var(--bod);line-height:1.8;}
.ca-roles{background:var(--wht);}
.ca-roles-g{max-width:1440px;margin:0 auto;padding:8vh 3rem;}
.ca-role-row{padding:2rem 0;border-top:1px solid var(--brd);display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:start;}
.ca-role-eye{font-size:9px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--mut);display:block;margin-bottom:.5rem;}
.ca-role-h{font-size:17px;font-weight:700;color:var(--blk);margin-bottom:.5rem;letter-spacing:-.01em;}
.ca-role-desc{font-size:14px;font-weight:300;color:var(--bod);line-height:1.8;max-width:580px;}
.ca-role-tags{display:flex;gap:1rem;margin-top:1rem;flex-wrap:wrap;}
.ca-tag{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);border:1px solid var(--brd);padding:.25rem .75rem;}
.ca-open{margin-top:3.5rem;padding:2.5rem;background:var(--off);display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center;}
.ca-open-h{font-size:15px;font-weight:700;color:var(--blk);margin-bottom:.5rem;}
.ca-open-p{font-size:14px;font-weight:300;color:var(--bod);line-height:1.75;max-width:480px;}
.ca-life{background:var(--off);border-top:1px solid var(--brd);}
.ca-life-g{max-width:1440px;margin:0 auto;padding:7vh 3rem;}
.ca-life-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;}
.ca-life-item{padding-top:1.5rem;border-top:1px solid var(--brd);}
.ca-life-h{font-size:13px;font-weight:700;color:var(--blk);display:block;margin-bottom:.6rem;}
.ca-life-p{font-size:13px;font-weight:300;color:var(--bod);line-height:1.75;}

@media(max-width:768px){
  .work-section-hd,.work-section-hd-in{grid-template-columns:1fr!important;gap:1.5rem;padding:4vh 1.5rem 2vh;}
  .wk-filters-in{padding:.75rem 1.5rem;gap:.5rem;}
  .work-in{padding:2rem 1.5rem 1.5rem;}
  .masonry{column-count:1!important;}
  .voices-in{padding:0 1.5rem;}
  .voice{grid-template-columns:1fr;gap:1rem;padding:1.75rem 0;}
  .os-g,.con-g-inner{grid-template-columns:1fr!important;gap:2rem;padding:4vh 1.5rem!important;}
.con-g-inner>div{grid-template-columns:1fr!important;gap:2rem;padding:4vh 0!important;}
  .offer-g{grid-template-columns:1fr;gap:2rem;}
  .ab-identity-grid,.ab-principal-grid,.ab-studio-grid,.ab-phil-grid,.ab-how-grid{grid-template-columns:1fr!important;gap:2rem;}
  .ab-team-grid{grid-template-columns:1fr 1fr;gap:1.5rem;}
  .footer-in{grid-template-columns:1fr 1fr;gap:2rem;}
  .footer-bot{grid-template-columns:1fr;gap:.75rem;text-align:center;}
  .ft-cp-right{text-align:center;}
  .inv-in{grid-template-columns:1fr!important;gap:2rem;padding:0 1.5rem;}
  .ca-intro-g,.ca-val-grid,.ca-roles-g,.ca-life-grid{grid-template-columns:1fr!important;gap:1.5rem;}
  .ca-role-row,.ca-open{grid-template-columns:1fr;}

.section-hd{padding-left:0!important;padding-right:0!important;}
.offer-in{padding:0 1.5rem!important;}
.oi{padding-left:0!important;padding-right:0!important;padding-top:2.25rem!important;padding-bottom:2.25rem!important;}
.offer-note{padding-left:0!important;padding-right:0!important;}
.con-g-inner{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.stmt-in{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.voices-in{padding-left:0!important;padding-right:0!important;}
.footer-in{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.footer-bot{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.nav-in{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.rv-stat-bar{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.work-section-hd-in{padding-left:0!important;padding-right:0!important;}
.ab-container{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.work-in-hm{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.work-hd{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.ca-intro-g{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.ca-values-g{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.ca-roles-g{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.ca-life-g{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.inv-in{padding-left:0!important;padding-right:0!important;}
.con-g-inner>div{padding:4vh 0!important;}
.pt-body{padding-left:0!important;padding-right:0!important;}
.ptypes{padding-left:1.5rem!important;padding-right:1.5rem!important;}
}
.bg-res{background:url('https://images.unsplash.com/photo-1600596542815-ffad4c1539a9?w=800&q=80&auto=format&fit=crop') center/cover no-repeat;}
.bg-corp{background:url('https://images.unsplash.com/photo-1497366216548-37526070297c?w=800&q=80&auto=format&fit=crop') center/cover no-repeat;}
.bg-com{background:url('https://images.unsplash.com/photo-1486325212027-8081e485255e?w=800&q=80&auto=format&fit=crop') center/cover no-repeat;}
.bg-hosp{background:url('https://images.unsplash.com/photo-1414235077428-338989a2e8c0?w=800&q=80&auto=format&fit=crop') center/cover no-repeat;}
.oi-th{font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--mut);margin-bottom:.4rem;}
.oi-ty{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1.5rem;}
.oi-ty span{font-size:10px;color:var(--bod);border:1px solid var(--brd);padding:.18rem .55rem;}
.v-body{display:flex;flex-direction:column;gap:.4rem;}

.tl:hover 
.tl-wht 
.stmt-sub{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;max-width:480px;margin-top:1.5rem;}
.tl-arr{margin-left:.35rem;display:inline-block;transition:transform .2s ease;}
.tl-wht .tl-arr{color:var(--wht);}

.oi-en{padding-bottom:2rem;}
/* FIX: space below enquire link in service cards */
.oi{padding-bottom:2.5rem!important;}

}

/* Apply Ken Burns only when slide is active — resets on each activation */

/* Hero counter */
.arr-counter{
  font-size:9px;font-weight:700;letter-spacing:.22em;
  color:rgba(255,255,255,.45);display:block;margin-bottom:.35rem;
}
.arr-sep{color:rgba(255,255,255,.22);}

/* Hero CTA */
.sl-cta{
  display:inline-block;margin-top:1.75rem;
  font-size:10px;font-weight:700;letter-spacing:.18em;
  text-transform:uppercase;color:rgba(255,255,255,.55);
  text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.2);
  padding-bottom:2px;
  transition:color .25s,border-color .25s;
  animation:fi .6s 1.8s ease both;
}
.sl-cta:hover{color:var(--wht);border-bottom-color:rgba(255,255,255,.6);}
.tl-hero{color:rgba(255,255,255,.55);}






@keyframes slClipIn{
  from{clip-path:inset(100% 0 0 0);opacity:0;}
  to{clip-path:inset(0% 0 0 0);opacity:1;}
}
/* ── SLIDE BACKGROUNDS ── */
.sl-bg-res,.sl-bg-work,.sl-bg-com,





/* Images via inline style — loaded by browser when online */
/* Ken Burns — runs when slide is active */
/* ── SLIDE BACKGROUNDS ── */
.sl-bg-res,.sl-bg-work,.sl-bg-com,.sl-bg-hosp{
  position:absolute;
  inset:-5%;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  will-change:transform;
  transform-origin:center center;
}
.sl-bg-res{background-color:#1a1510;}
.sl-bg-work{background-color:#0e1018;}
.sl-bg-com{background-color:#121814;}
.sl-bg-hosp{background-color:#14100e;}
/* Ken Burns animations per slide */
.sl-ov{
  position:absolute;inset:0;
  background:linear-gradient(to bottom,
    rgba(8,8,10,.55) 0%,
    rgba(8,8,10,.08) 35%,
    rgba(8,8,10,.15) 55%,
    rgba(8,8,10,.78) 100%
  );
  z-index:1;
}

/* About stats — reuses homepage stmt-cred styles */
.ab-stats{background:var(--off);padding:8vh 0;}
.ab-stats 
/* Clean group photo */
.ab-group-img-wrap{position:relative;}
.ab-group-img-wrap .ab-img{aspect-ratio:16/7;object-fit:cover;width:100%;display:block;}

/* ════════════════════════════════════════
   ABOUT PAGE — RESTRUCTURED
════════════════════════════════════════ */

/* Shared */
.ab-sec{} 
.ab-container{max-width:1440px;margin:0 auto;padding:0 3rem;}
.ab-img{width:100%;height:100%;object-fit:cover;display:block;}

/* SECTION 1 — Identity + Group Photo */
.ab-identity{background:var(--wht);padding:8vh 0;}
.ab-identity-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:start;}
.ab-id-photo{position:relative;}
.ab-id-photo .ab-img{aspect-ratio:4/3;object-fit:cover;}
.ab-img-cap{font-size:9px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--mut);margin-top:.85rem;display:block;}
.ab-id-right{display:flex;flex-direction:column;gap:2rem;padding-top:.5rem;}
.ab-id-body{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;}

/* Proof strip */
.ab-proof{display:flex;align-items:flex-start;gap:2rem;padding:1.75rem 0;border-top:1px solid var(--brd);border-bottom:1px solid var(--brd);flex-wrap:wrap;}
.ab-proof-item{display:flex;flex-direction:column;gap:4px;align-items:flex-start;}
.ab-proof-n{font-size:clamp(1.8rem,2.8vw,2.4rem);font-weight:800;color:var(--blk);letter-spacing:-.025em;line-height:1;display:block;}
.ab-proof-star{display:flex;align-items:center;gap:5px;font-size:clamp(1.8rem,2.8vw,2.4rem);line-height:1;}
.ab-proof-star svg{color:var(--blk);margin-top:-1px;}
.ab-proof-sm{font-size:clamp(1.4rem,2.2vw,1.9rem);letter-spacing:.04em;}
.ab-proof-l{font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);}
.ab-proof-div{width:1px;height:48px;background:var(--brd);flex-shrink:0;margin-top:4px;}

/* Client marks */
.ab-clients{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding-top:1.5rem;}
.ab-clients-lbl{font-size:10px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--mut);}
.ab-client-marks{display:flex;align-items:center;gap:.75rem;}
.ab-client-mark{font-size:12px;font-weight:700;color:var(--blk);letter-spacing:.06em;}
.ab-client-dot{color:var(--mut);}

/* SECTION 2 — Principal */
.ab-principal{background:var(--off);padding:8vh 0;}
.ab-principal-grid{display:grid;grid-template-columns:280px 1fr;gap:7rem;align-items:start;}
.ab-principal-left{position:sticky;top:88px;z-index:2;}
.ab-faheem-img{margin-bottom:1.75rem;}
.ab-faheem-photo{aspect-ratio:3/4;object-fit:cover;object-position:top;}
.ab-cred-block{padding-top:1.5rem;border-top:1px solid var(--brd);}
.ab-cred-name{font-size:15px;font-weight:700;color:var(--blk);display:block;margin-bottom:3px;}
.ab-cred-title{font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--mut);display:block;margin-bottom:1.25rem;}
.ab-cred-list{display:flex;flex-direction:column;gap:.5rem;}
.ab-cred-list span{font-size:13px;font-weight:300;color:var(--bod);}
.ab-pull{font-family:var(--ser);font-size:clamp(1.4rem,2.2vw,2rem);font-style:italic;color:var(--blk);line-height:1.45;padding-bottom:2.5rem;border-bottom:1px solid var(--brd);margin-bottom:2.5rem;}
.ab-body p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.5rem;}
.ab-body p:last-child{margin-bottom:0;}
.ab-sig{margin-top:2.5rem;padding-top:1.75rem;border-top:1px solid var(--brd);}
.ab-sig-name{font-size:13px;font-weight:700;color:var(--blk);display:block;margin-bottom:2px;}
.ab-sig-role{font-size:10px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--mut);display:block;}

/* SECTION 3 — Philosophy */
.ab-phil{background:var(--wht);padding:8vh 0;}
.ab-phil-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:7rem;align-items:start;}
.ab-phil-body p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.5rem;}
.ab-phil-body p:last-child{margin-bottom:0;}

/* SECTION 4 — Studio */
.ab-studio{background:var(--off);padding:8vh 0;}
.ab-studio-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:start;}
.ab-studio-img .ab-img{aspect-ratio:4/3;object-fit:cover;}
.ab-studio-body{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin:1.5rem 0 2rem;}
.ab-roles{display:flex;flex-direction:column;gap:1.25rem;}
.ab-role{padding:.85rem 0;border-bottom:1px solid var(--brd);}
.ab-role:first-child{border-top:1px solid var(--brd);}
.ab-role-title{font-size:13px;font-weight:700;color:var(--blk);display:block;margin-bottom:4px;letter-spacing:-.01em;}
.ab-role-desc{font-size:12px;font-weight:300;color:var(--mut);display:block;}

/* SECTION 5 — How we work (reuse existing styles) */
.ab-how{background:var(--off);padding:8vh 0;}
.ab-evidence{max-width:1440px;margin:0 auto;padding:0 3rem 4vh;}
.ab-ev-img{overflow:hidden;}
.ab-ev-img .ab-img{aspect-ratio:16/6;object-fit:cover;}
.ab-ev-cap{display:flex;justify-content:space-between;align-items:baseline;padding-top:.85rem;border-top:1px solid var(--brd);margin-top:.85rem;}
.ab-ev-project{font-size:13px;font-weight:500;color:var(--blk);}
.ab-ev-detail{font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);}
.ab-how-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:7rem;align-items:start;}
.ab-how-body{display:flex;flex-direction:column;gap:2.5rem;}
.ab-how-item{padding-bottom:2rem;border-bottom:1px solid var(--brd);}
.ab-how-n{font-size:11px;font-weight:800;letter-spacing:.25em;text-transform:uppercase;color:var(--blk);display:block;margin-bottom:.85rem;}
.ab-how-title{font-size:15px;font-weight:700;color:var(--blk);margin-bottom:.6rem;letter-spacing:-.01em;}
.ab-how-text{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;}

/* SECTION 6 — Testimonials */
.ab-testi{background:var(--wht);padding:8vh 0;}
.ab-testi-hd{margin-bottom:3rem;}
.ab-testi-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem;}
.ab-tv{display:flex;flex-direction:column;gap:1.25rem;}
.ab-tv-thumb{cursor:pointer;background:none;border:none;padding:0;width:100%;text-align:left;}
.ab-tv-img{aspect-ratio:16/10;position:relative;overflow:hidden;}
.ab-tv-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transition:background .3s;}
.ab-tv-thumb:hover .ab-tv-overlay{background:rgba(0,0,0,.2);}
.ab-tv-btn{width:48px;height:48px;border-radius:50%;border:1.5px solid rgba(255,255,255,.55);display:flex;align-items:center;justify-content:center;transition:border-color .25s,transform .25s;padding-left:3px;}
.ab-tv-thumb:hover .ab-tv-btn{border-color:var(--wht);transform:scale(1.08);}
.ab-tv-label{display:flex;flex-direction:column;gap:3px;padding:.85rem 0 0;border-top:1px solid var(--brd);}
.ab-tv-name{font-size:13px;font-weight:600;color:var(--blk);}
.ab-tv-proj{font-size:9px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--mut);}
.ab-tv-quote{font-family:var(--ser);font-size:clamp(.95rem,1.4vw,1.1rem);font-style:italic;color:var(--bod);line-height:1.65;}
.ab-reviews-link{display:flex;align-items:center;gap:1rem;padding-top:2rem;border-top:1px solid var(--brd);flex-wrap:wrap;}
.ab-gr-stars{display:flex;gap:3px;align-items:center;}
.ab-gr-text{font-size:12px;font-weight:500;color:var(--bod);}

/* Mobile */
@media(max-width:768px){
  .ab-container{padding:0 1.5rem;}
  .ab-identity{padding:6vh 0;}
  .ab-identity-grid{grid-template-columns:1fr;gap:2.5rem;}
  .ab-proof{gap:1rem;}
  .ab-proof-div{display:none;}
  .ab-principal{padding:6vh 0;}
  .ab-principal-grid{grid-template-columns:1fr;gap:3rem;}
  .ab-principal-left{position:sticky;top:88px;z-index:2;}
  .ab-faheem-photo{aspect-ratio:1/1;}
  .ab-phil{background:var(--wht);padding:8vh 0;}
  .ab-phil-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:7rem;align-items:start;}
  .ab-studio{padding:6vh 0;}
  .ab-studio-grid{grid-template-columns:1fr;gap:2.5rem;}
  .ab-how{padding:6vh 0;}
  .ab-how-grid{grid-template-columns:1fr;gap:3rem;}
  .ab-evidence{padding:0 1.5rem 3vh;}
  .ab-testi{padding:6vh 0;}
  .ab-testi-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem;}
}
@media(min-width:769px) and (max-width:1024px){
  .ab-identity-grid{gap:3.5rem;}
  .ab-principal-grid{grid-template-columns:220px 1fr;gap:4rem;}
  .ab-testi-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem;}
  .ab-studio-grid{gap:3.5rem;}
}
@media(max-width:768px){
  .sl-content{bottom:7rem;left:1.5rem;}
  .sl-type{font-size:clamp(2.6rem,9.5vw,4rem);}
  .sl-h{font-size:.95rem;margin-top:.75rem;}
  .sl-indicators{bottom:3.25rem;left:1.5rem;}
  .arr-mark{right:1.5rem;bottom:3.25rem;}
  .arr-sc{display:none;}
}

/* ─────────────────────────────────────
   MOVEMENT II — STATEMENT
───────────────────────────────────── */
.stmt{background:var(--wht);padding:8vh 0;}

.stmt-cred{grid-column:1/-1;margin-top:5vh;padding-top:2.5rem;border-top:1px solid var(--brd);display:flex;align-items:center;justify-content:center;gap:3rem;flex-wrap:wrap;}
.stmt-in{max-width:1440px;margin:0 auto;padding:0 3rem;display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:end;}
.stmt-h{font-size:clamp(3rem,5.5vw,5.8rem);font-weight:800;line-height:.96;letter-spacing:-.03em;color:var(--blk);margin-bottom:1.75rem;}
.stmt-h .l2{display:block;padding-left:.12em;opacity:.38;}
.stmt-body{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;max-width:420px;margin-bottom:1.25rem;}
.stmt-diff{font-size:14px;font-weight:300;color:var(--bod);line-height:1.85;max-width:420px;margin-bottom:1.25rem;}
.stmt-punch{font-size:13.5px;font-weight:700;letter-spacing:.04em;color:var(--blk);margin-bottom:2.5rem;}

.cr-item{display:flex;flex-direction:column;gap:3px;}
.cr-n{font-size:clamp(1.8rem,2.8vw,2.4rem);font-weight:800;color:var(--blk);letter-spacing:-.02em;line-height:1;display:block;}
.cr-star-row{display:inline-flex;align-items:center;gap:.35rem;}
.cr-star{width:14px;height:14px;color:var(--blk);flex-shrink:0;margin-top:-1px;}
.cr-l{font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);display:block;}
.cr-div{width:1px;height:36px;background:var(--brd);flex-shrink:0;}

/* ─────────────────────────────────────
   PROJECT TYPES SECTION
───────────────────────────────────── */
.ptypes{background:var(--wht);border-top:1px solid var(--brd);padding:8vh 0 8vh 3rem;overflow:hidden;}
.ptypes-inner{max-width:1440px;margin:0 auto;}
.ptypes-hd{padding-right:3rem;margin-bottom:2rem;}
.ptypes-lbl{font-size:11px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--mut);display:block;margin-bottom:.75rem;}
.ptypes-h{font-size:clamp(1.6rem,2.8vw,2.6rem);font-weight:800;letter-spacing:-.025em;color:var(--blk);line-height:1;}
.section-eye{font-size:11px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--mut);display:block;margin-bottom:.75rem;}
.section-h{font-size:clamp(1.6rem,2.8vw,2.6rem);font-weight:800;letter-spacing:-.025em;color:var(--blk);line-height:1;}
.section-hd{margin-bottom:2rem;}
.ptypes-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;background:transparent;padding-right:3rem;}
.pt-card{background:var(--wht);display:flex;flex-direction:column;transition:background .3s;}
.pt-card:hover{background:var(--off);}
.pt-img{position:relative;aspect-ratio:4/3;overflow:hidden;}
.pt-img-in{position:absolute;inset:0;transition:transform .6s var(--ez);}
.pt-card:hover .pt-img-in{transform:scale(1.03);}
.pt-ov{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 40%,rgba(10,10,9,.45) 100%);}
/* Type backgrounds */
.bg-res .pt-img-in{background:linear-gradient(145deg,#1a1510,#2c2018 40%,#1a1410);}
.bg-res .pt-img-in::before{content:"";position:absolute;inset:0;background-image:linear-gradient(12deg,rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(-12deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:34px 34px;}
.bg-res .pt-img-in::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 78% 65% at 40% 35%,rgba(58,48,32,.5) 0%,transparent 68%);}
.bg-corp .pt-img-in{background:linear-gradient(145deg,#0e1018,#161c2c 40%,#0c0e18);}
.bg-corp .pt-img-in::before{content:"";position:absolute;inset:0;background-image:linear-gradient(0deg,rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);background-size:28px 28px;}
.bg-corp .pt-img-in::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 60% 55% at 62% 30%,rgba(28,38,62,.55) 0%,transparent 68%);}
.bg-com .pt-img-in{background:linear-gradient(145deg,#121412,#1e2418 40%,#101210);}
.bg-com .pt-img-in::before{content:"";position:absolute;inset:0;background-image:linear-gradient(20deg,rgba(255,255,255,.022) 1px,transparent 1px);background-size:22px 22px;}
.bg-com .pt-img-in::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 72% 52% at 50% 40%,rgba(22,36,18,.48) 0%,transparent 65%);}
.bg-hosp .pt-img-in{background:linear-gradient(145deg,#181210,#2a1e1c 40%,#141010);}
.bg-hosp .pt-img-in::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 55% 55% at 40% 30%,rgba(255,255,255,.04) 0%,transparent 45%);}
.bg-hosp .pt-img-in::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 68% 58% at 45% 35%,rgba(42,26,24,.52) 0%,transparent 65%);}
/* Card body */
.pt-body{padding:1.5rem 1.5rem 1.75rem;}
.pt-num{font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--mut);margin-bottom:.7rem;display:block;}
.pt-name{font-size:15px;font-weight:800;letter-spacing:-.01em;color:var(--blk);text-transform:uppercase;margin-bottom:.55rem;}
.pt-desc{font-size:13px;font-weight:300;color:var(--bod);line-height:1.72;margin-bottom:1.1rem;}
.pt-tags{display:flex;flex-wrap:wrap;gap:.3rem;}
.pt-tags span{font-size:8.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:.22rem .6rem;border:1px solid var(--brd);color:var(--mut);}
/* Mobile scroll hint */
.pt-hint{display:none;font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);margin-top:1.25rem;padding-right:3rem;opacity:.65;}
.pt-dots{display:none;gap:.4rem;margin-top:1rem;padding-right:3rem;}
.pt-dot{width:18px;height:2px;background:var(--brd);transition:background .3s,width .3s;}
.pt-dot.on{background:var(--blk);width:28px;}

/* ─────────────────────────────────────
   MOVEMENT III — WORK
───────────────────────────────────── */


/* ─────────────────────────────────────
   MOVEMENT IV — VOICES
───────────────────────────────────── */
.voices{background:var(--wht);border-top:1px solid var(--brd);padding:8vh 3rem;}
.voices-in{max-width:1440px;margin:0 auto;}
.voice{padding:2.5rem 0 0;border-top:1px solid var(--brd);display:grid;grid-template-columns:200px 1fr;gap:5rem;align-items:start;}
.voice:first-child{border-top:none;padding-top:0;}
.section-hd + .voice{border-top:none;padding-top:0;}
.voice:last-child{padding-bottom:0;}
.v-attr{display:flex;flex-direction:column;gap:3px;padding-top:.3rem;}
.v-type{font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--blk);display:block;margin-bottom:.35rem;}
.v-loc{font-size:13px;font-weight:400;color:var(--bod);display:block;line-height:1.5;margin-bottom:.25rem;}
.v-year{font-size:10px;font-weight:400;color:rgba(154,152,148,.55);display:block;letter-spacing:.04em;}
.v-txt{font-family:var(--ser);font-size:clamp(1.1rem,1.8vw,1.6rem);font-style:italic;color:var(--blk);line-height:1.65;}

/* ─────────────────────────────────────
   MOVEMENT V — OFFER (services)
───────────────────────────────────── */
.offer{background:var(--off);border-top:1px solid var(--brd);padding:8vh 0;}
.offer-in{max-width:1440px;margin:0 auto;padding:0 3rem;}
.offer-g{display:grid;grid-template-columns:repeat(3,1fr);}
.oi{padding:3rem 2.5rem 2.5rem;border-right:1px solid var(--brd);position:relative;display:flex;flex-direction:column;background:var(--wht);}
.oi:last-child{border-right:none;padding-right:0;}
.oi:not(:first-child){padding-left:2.5rem;}
.oi::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--blk);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ez);}
.oi:hover::before{transform:scaleX(1);}
.oi-n{font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--mut);margin-bottom:1.25rem;}
.oi-t{font-size:15px;font-weight:800;letter-spacing:-.01em;color:var(--blk);text-transform:uppercase;margin-bottom:.85rem;line-height:1.1;}
.oi-b{font-size:13px;font-weight:300;color:var(--bod);line-height:1.8;margin-bottom:1.5rem;flex:1;}
.oi-th{display:none;}
.oi-ty{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:2rem;}
.oi-ty span{font-size:8.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:.22rem .6rem;border:1px solid var(--brd);color:var(--mut);}
.offer-note{padding:2rem 0 0;border-top:1px solid var(--brd);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;}
.offer-note-t{font-size:12px;font-weight:300;color:var(--mut);font-style:italic;}

/* ─────────────────────────────────────
   MOVEMENT VI — INVITATION (contact)
───────────────────────────────────── */
.inv{background:var(--off);border-top:1px solid var(--brd);padding:8vh 3rem;position:relative;overflow:hidden;}
.inv::before{content:"";position:absolute;inset:0;background-image:linear-gradient(14deg,rgba(0,0,0,.028) 1px,transparent 1px),linear-gradient(-14deg,rgba(0,0,0,.028) 1px,transparent 1px);background-size:58px 58px;}
.inv-in{max-width:1440px;margin:0 auto;position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:7rem;align-items:center;}
.inv-h{font-family:var(--ser);font-size:clamp(2.5rem,4vw,4.8rem);font-style:italic;color:var(--blk);line-height:1.18;margin-bottom:1.75rem;}
.inv-s{font-size:14px;font-weight:400;color:var(--blk);line-height:1.75;max-width:380px;margin-top:.75rem;}

/* Invitation contact — left column, below sub text */
.inv-contact{display:flex;flex-direction:column;gap:1.1rem;}
.inv-ct{display:flex;flex-direction:column;gap:2px;}
.inv-ct-lbl{font-size:9px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--mut);}
.inv-ct-val{font-size:13px;font-weight:400;color:var(--bod);text-decoration:none;transition:color .2s;}
.inv-ct-val:hover{color:var(--blk);}
.f-field{position:relative;margin-bottom:1.5px;}
.f-inp{width:100%;background:transparent;border:none;border-bottom:1px solid var(--brd);color:var(--blk);font-family:var(--fnt);font-size:14px;font-weight:300;padding:1.1rem 0;outline:none;transition:border-color .2s;caret-color:var(--blk);}
.f-inp::placeholder{color:rgba(0,0,0,.38);font-style:italic;}
.f-inp:focus{border-bottom-color:var(--blk);}
.f-ta{resize:none;min-height:90px;}
.f-submit{margin-top:2.25rem;}
.f-btn{font-family:var(--fnt);font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:.95rem 2.25rem;background:var(--blk);color:var(--wht);border:1px solid var(--blk);cursor:pointer;position:relative;overflow:hidden;transition:color .25s;}
.f-btn::before{content:"";position:absolute;inset:0;background:var(--wht);transform:translateX(-101%);transition:transform .28s var(--ez);}
.f-btn:hover{color:var(--blk);}
.f-btn:hover::before{transform:none;}
.f-btn:active{transform:scale(.97);}
.f-btn span{position:relative;z-index:1;}
.f-contact a{display:block;font-size:11px;font-weight:300;color:var(--mut);text-decoration:none;margin-bottom:3px;transition:color .2s;}
.f-contact a:hover{color:var(--blk);}

/* ─────────────────────────────────────
   FOOTER
───────────────────────────────────── */
.footer{background:#08080a;border-top:1px solid rgba(255,255,255,.06);}
.footer-in{max-width:1440px;margin:0 auto;padding:3.5rem 3rem;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;}
.ft-nm{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.5);display:block;margin-bottom:.5rem;}
.ft-ds{font-size:13px;font-weight:300;color:rgba(255,255,255,.26);line-height:1.75;max-width:260px;}
.ft-ht{font-size:8.5px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.18);margin-bottom:1.1rem;}
.ft-lk{display:flex;flex-direction:column;gap:.55rem;}
.ft-lk a{font-size:13px;font-weight:300;color:rgba(255,255,255,.32);text-decoration:none;transition:color .2s;}
.ft-lk a:hover{color:rgba(255,255,255,.72);}
.footer-bot{border-top:1px solid rgba(255,255,255,.05);padding:1.5rem 3rem;max-width:1440px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;}
.ft-cp{font-size:11px;color:rgba(255,255,255,.18);letter-spacing:.04em;}
.ft-social{display:flex;align-items:center;justify-content:center;gap:.85rem;}
.ft-soc-link{color:rgba(255,255,255,.28);text-decoration:none;display:flex;align-items:center;transition:color .2s,transform .2s;}
.ft-soc-link:hover{color:rgba(255,255,255,.85);transform:translateY(-2px);}

/* ─────────────────────────────────────
   WHATSAPP
───────────────────────────────────── */

/* ─────────────────────────────────────
   TEXT LINKS
───────────────────────────────────── */
.tl{font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--blk);text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;transition:gap .25s;}
.tl:hover{opacity:.7;}
.tl:hover .tl-arr{transform:translateX(4px);}



.tl-wht{color:var(--wht);}
.tl-wht:hover{color:rgba(255,255,255,.75);}

/* ─────────────────────────────────────
   INNER PAGES — shared
───────────────────────────────────── */
.pg-hero{height:42vh;min-height:300px;background:var(--blk);position:relative;overflow:hidden;display:flex;align-items:flex-end;}
.pg-bg{position:absolute;inset:0;background-size:cover;background-position:center;}
.pg-mk{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(10,10,9,.2) 0%,rgba(10,10,9,.72) 100%);}
.pg-ct{position:relative;z-index:1;padding:0 3rem 2rem;max-width:1440px;margin:0 auto;width:100%;}
.pg-ey{font-size:9px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.3);margin-bottom:.85rem;display:block;}
.pg-tt{font-size:clamp(2.5rem,5vw,5rem);font-weight:800;color:var(--wht);line-height:.95;letter-spacing:-.025em;text-transform:uppercase;}

/* ─────────────────────────────────────
   ABOUT PAGE
───────────────────────────────────── */
.about-g{max-width:1440px;margin:0 auto;padding:8vh 3rem;display:grid;grid-template-columns:1fr 1.5fr;gap:7rem;align-items:start;background:var(--wht);}
.about-ld{position:sticky;top:100px;}
.about-nm{font-size:clamp(2rem,3.2vw,3rem);font-weight:800;color:var(--blk);line-height:1;letter-spacing:-.025em;text-transform:uppercase;margin-bottom:1.5rem;}
.about-cr{display:flex;flex-direction:column;gap:.55rem;padding:1.5rem 0;border-top:1px solid var(--brd);border-bottom:1px solid var(--brd);margin-bottom:2rem;}
.about-cr span{font-size:13px;color:var(--bod);}
.about-ph{width:100%;aspect-ratio:3/4;background:linear-gradient(145deg,#f0ede8,#e8e4de);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#c4c0b8;position:relative;overflow:hidden;}
.about-ph::before{content:"";position:absolute;inset:0;background-image:linear-gradient(14deg,rgba(0,0,0,.04) 1px,transparent 1px),linear-gradient(-14deg,rgba(0,0,0,.04) 1px,transparent 1px);background-size:24px 24px;}
.about-ph span{position:relative;}
.about-pl{font-family:var(--ser);font-size:clamp(1.3rem,2vw,1.8rem);font-style:italic;color:var(--blk);line-height:1.5;padding:2.5rem 0;border-top:1px solid var(--brd);border-bottom:1px solid var(--brd);margin:2.5rem 0;}
.about-bd p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.5rem;}

/* ─────────────────────────────────────
   CONTACT PAGE
───────────────────────────────────── */
.con-g{background:var(--wht);}
.con-g-inner{max-width:1440px;margin:0 auto;padding:8vh 3rem;display:grid;grid-template-columns:1fr 1.1fr;gap:7rem;align-items:start;}
.con-h{font-family:var(--ser);font-size:clamp(2.2rem,3.8vw,4rem);font-style:italic;color:var(--blk);line-height:1.2;margin-bottom:1.75rem;}
.con-b{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:2.75rem;max-width:360px;}
.con-det{display:flex;flex-direction:column;gap:1.25rem;}
.con-lbl{font-size:8.5px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--mut);display:block;margin-bottom:3px;}
.con-val{font-size:14px;color:var(--blk);text-decoration:none;display:block;transition:color .2s;}
a.con-val:hover{color:var(--mut);}
.cf-lbl{font-size:9px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--mut);display:block;margin-bottom:.45rem;}
.cf-inp,.cf-ta{width:100%;background:transparent;border:none;border-bottom:1px solid var(--brd);font-family:var(--fnt);font-size:14px;font-weight:300;color:var(--blk);padding:.7rem 0;outline:none;transition:border-color .2s;caret-color:var(--blk);}
.cf-inp::placeholder,.cf-ta::placeholder{color:rgba(0,0,0,.2);}
.cf-inp:focus,.cf-ta:focus{border-bottom-color:var(--blk);}
.cf-ta{resize:none;min-height:110px;}
.cf-row{display:flex;flex-direction:column;gap:.45rem;margin-bottom:1.75rem;}
.cf-sub{font-family:var(--fnt);font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:1rem 2.25rem;background:var(--blk);color:var(--wht);border:1px solid var(--blk);cursor:pointer;transition:transform .25s,opacity .25s,background-color .25s,border-color .25s;margin-top:2rem;}
.cf-sub:hover{background:transparent;color:var(--blk);}

/* ─────────────────────────────────────
   WORK PAGE
───────────────────────────────────── */
.wk-filters{background:var(--wht);border-bottom:1px solid var(--brd);border-top:1px solid var(--brd);}
.fb{font-family:var(--fnt);font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);background:transparent;border:1px solid var(--brd);padding:.45rem 1rem;cursor:pointer;transition:transform .2s,opacity .2s,background-color .2s,border-color .2s;white-space:nowrap;}
.fb.on,.fb:hover{background:var(--blk);border-color:var(--blk);color:var(--wht);}

/* ─────────────────────────────────────
   PROJECT PAGE
───────────────────────────────────── */
.prj-g{max-width:1440px;margin:0 auto;padding:6vh 3rem;background:var(--wht);display:grid;grid-template-columns:220px 1fr;gap:5rem;}
.prj-meta{position:sticky;top:96px;}
.prj-ml{font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--mut);margin-bottom:1.75rem;display:block;}
.pm{margin-bottom:1.5rem;}
.pm-k{font-size:8.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--mut);display:block;margin-bottom:2px;}
.pm-v{font-size:13px;color:var(--blk);}
.prj-txt p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:2.5rem;max-width:580px;}
.prj-imgs{display:grid;gap:2px;}
.prj-img{background:linear-gradient(145deg,#f4f2ee,#ece9e3);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#c4c0b8;position:relative;overflow:hidden;}
.prj-img::before{content:"";position:absolute;inset:0;background-image:linear-gradient(14deg,rgba(0,0,0,.04) 1px,transparent 1px),linear-gradient(-14deg,rgba(0,0,0,.04) 1px,transparent 1px);background-size:28px 28px;}
.prj-img span{position:relative;}
.prj-q{font-family:var(--ser);font-size:clamp(1.2rem,1.9vw,1.6rem);font-style:italic;color:var(--blk);line-height:1.58;padding:2.25rem 0;border-top:1px solid var(--brd);border-bottom:1px solid var(--brd);margin:2.75rem 0;}
.prj-q cite{display:block;margin-top:.85rem;font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);font-style:normal;}

/* ─────────────────────────────────────
   OVERSEAS PAGE
───────────────────────────────────── */
.os-g{max-width:1440px;margin:0 auto;padding:8vh 3rem;display:grid;grid-template-columns:1fr 1fr;gap:7rem;background:var(--wht);}
.os-pull{font-family:var(--ser);font-size:clamp(1.3rem,2vw,1.8rem);font-style:italic;color:var(--blk);line-height:1.5;padding-bottom:2rem;border-bottom:1px solid var(--brd);margin-bottom:2.5rem;}
.os-bd p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.5rem;}
.os-ls{display:flex;flex-direction:column;gap:1.1rem;margin-top:2.5rem;}
.os-li{display:flex;gap:.85rem;align-items:flex-start;}
.os-dot{width:3px;height:3px;background:var(--blk);flex-shrink:0;margin-top:9px;}
.os-li-t{font-size:15px;font-weight:300;color:var(--bod);line-height:1.65;}


/* ═══════════════════════════════════════
   RESPONSIVE — TABLET
═══════════════════════════════════════ */
@media (min-width:769px) and (max-width:1024px){
  .stmt-in{grid-template-columns:1fr;gap:2.5rem;}
  .ptypes-grid{grid-template-columns:repeat(2,1fr);}
  .offer-g{grid-template-columns:1fr 1fr;}
  .oi:nth-child(2){border-right:none;padding-right:0;}
  .oi:nth-child(3){border-top:1px solid var(--brd);padding-top:2.5rem;padding-left:0;border-right:1px solid var(--brd);padding-right:2.5rem;}
  .oi:nth-child(3)::before{top:-1px;}
  .inv-in{grid-template-columns:1fr;gap:3.5rem;}
  .about-g{grid-template-columns:1fr 1.2fr;gap:4rem;}
  .about-ld{position:static;}
  .con-g{background:var(--wht);}
.con-g-inner{max-width:1440px;margin:0 auto;padding:8vh 3rem;display:grid;grid-template-columns:1fr 1.1fr;gap:7rem;align-items:start;}
  .os-g{grid-template-columns:1fr;gap:3rem;}
  .footer-in{grid-template-columns:1fr 1fr;gap:2rem;}
}

/* ═══════════════════════════════════════
   RESPONSIVE — MOBILE
═══════════════════════════════════════ */
@media (max-width:768px){
  .work-in{background:var(--off);padding:1.5rem 0 0;}
  .work-hd{max-width:1440px;margin:0 auto;padding:0 3rem 1.5rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--brd);}

  .masonry{column-count:2;column-gap:1.5rem;}
  .mc-cap{padding:.75rem 0 .25rem;display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;}
  .work-ft{padding-top:2rem;border-top:1px solid var(--brd);}
  
  
  .mc-cap{padding:.75rem 0 .25rem;display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;}
  .work-ft{padding:2.5rem 0 1rem;display:flex;justify-content:flex-end;border-top:1px solid var(--brd);margin-top:1rem;}
  /* Hide desktop-only elements */
  .os-strip{display:none;}
  .nav-ul,.nav-cta,.nav-soc{display:none;}
  .cur,.cur-r{display:none;}
  .arr-sc{display:none;}

  /* Nav */
  .nav{top:0!important;padding:0 1.5rem;height:60px;}
  .ham{display:flex;}

  /* Arrival */
  .arr-mark{left:1.5rem;bottom:1.75rem;}
  .arr-city{font-size:9.5px;}

  /* Statement */
  .stmt{padding:9vh 0 7vh;}
  .stmt-in{padding:0 1.5rem;}
  
  .stmt-in{grid-template-columns:1fr;gap:2rem;}
  .stmt-h{font-size:clamp(2.8rem,10.5vw,4.5rem);}
  .stmt-h .l2{padding-left:0;}
  
  .cr-div{display:none;}
  .cr-item:last-child,.cr-item:last-child + .cr-div{display:none;}
  .cr-n{font-size:1.7rem;}

  /* Project types — horizontal scroll */
  .ptypes{padding:7vh 0 7vh 1.5rem;}
  .ptypes-hd{padding-right:1.5rem;}
  .ptypes-grid{
    grid-template-columns:repeat(4,74vw);
    gap:.85rem;
    background:transparent;
    padding-right:1.5rem;
    overflow-x:scroll;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    -ms-overflow-style:none;
  }
  .ptypes-grid::-webkit-scrollbar{display:none;}
  .pt-card{scroll-snap-align:start;border:1px solid var(--brd);}
  .pt-img{aspect-ratio:3/2;}
  .pt-hint{display:block;}
  .pt-dots{display:flex;}

  /* Work */
  
  
  
  .work-ft{padding:2.5rem 0 1rem;display:flex;justify-content:flex-end;border-top:1px solid var(--brd);margin-top:1rem;}
  .work-hd{max-width:1440px;margin:0 auto;padding:0 3rem 1.5rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--brd);}

  /* Voices */
  .voices{padding:7vh 1.5rem;}
  .voice{grid-template-columns:1fr;gap:0;padding:2.25rem 0;display:flex;flex-direction:column;}
  .v-txt{font-size:clamp(1rem,4.2vw,1.3rem);order:1;}
  .v-attr{order:2;padding-top:1.25rem;border-top:1px solid var(--brd);margin-top:1.25rem;}

  /* Offer */
  .offer-g{grid-template-columns:1fr;}
  .oi{border-right:none;padding:2.25rem 1.5rem;border-top:1px solid var(--brd);}
  .oi:first-child{border-top:none;}
  .oi:not(:first-child){padding-left:1.5rem;}
  .offer-in{padding:0;}
  .offer-note{padding:1.75rem 1.5rem;flex-direction:column;align-items:flex-start;}

  /* Invitation */
  .inv{padding:9vh 1.5rem;}

  .inv-in{grid-template-columns:1fr;gap:3rem;}
  .inv-h{font-size:clamp(2rem,8.5vw,3.2rem);}
  .inv-contact{flex-direction:row;flex-wrap:wrap;gap:1.5rem 2.5rem;}

  /* Footer */
  .footer-in{grid-template-columns:1fr;gap:2.25rem;padding:2.75rem 1.5rem;}
  .footer-bot{border-top:1px solid rgba(255,255,255,.05);padding:1.5rem 3rem;max-width:1440px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;}

  /* Inner pages */
  .pg-ct{padding:0 1.5rem 2.25rem;}
  .pg-tt{font-size:clamp(2rem,7.5vw,3rem);}
  .about-g{grid-template-columns:1fr;gap:2.5rem;padding:5vh 1.5rem;}
  .about-ld{position:static;}
  .con-g{background:var(--wht);}
.con-g-inner{max-width:1440px;margin:0 auto;padding:8vh 3rem;display:grid;grid-template-columns:1fr 1.1fr;gap:7rem;align-items:start;}
  .os-g{grid-template-columns:1fr;gap:2.5rem;padding:5vh 1.5rem;}
  .prj-g{grid-template-columns:1fr;gap:2rem;padding:4vh 1.5rem;}
  .prj-meta{position:static;}
  .wk-filters{background:var(--wht);border-bottom:1px solid var(--brd);border-top:1px solid var(--brd);}
  .wg3{grid-template-columns:1fr;}
}
/* ── WORK SECTION ── */
.work{background:var(--off);border-top:1px solid var(--brd);padding:8vh 0;}
.work-hd{max-width:1440px;margin:0 auto;padding:0 3rem 1.5rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--brd);}
.work-eye{font-size:11px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--mut);display:block;margin-bottom:.75rem;}
.work-ft{padding:2.5rem 0 1rem;display:flex;justify-content:flex-end;border-top:1px solid var(--brd);margin-top:1rem;}
.work-in{background:var(--off);padding:0;}
.masonry{column-count:2;column-gap:1.5rem;}
.mc{break-inside:avoid;margin-bottom:1.5rem;cursor:pointer;display:block;}
.mc-img{position:relative;width:100%;overflow:hidden;display:block;}
.mc-bg{position:absolute;inset:0;transition:transform .7s var(--ez);will-change:transform;}
.mc:hover .mc-bg{transform:scale(1.03);}
.mc-bg::before{content:"";position:absolute;inset:0;background-image:linear-gradient(14deg,rgba(255,255,255,.022) 1px,transparent 1px),linear-gradient(-14deg,rgba(255,255,255,.022) 1px,transparent 1px);background-size:42px 42px;}
.wc1{background:url('https://images.unsplash.com/photo-1497366216548-37526070297c?w=800&q=80&auto=format&fit=crop') center/cover no-repeat;}
.wc2{background:url('https://images.unsplash.com/photo-1600596542815-ffad4c1539a9?w=800&q=80&auto=format&fit=crop') center/cover no-repeat;}
.wc3{background:url('https://images.unsplash.com/photo-1560179707-f14e90ef3623?w=800&q=80&auto=format&fit=crop') center/cover no-repeat;}
.wc4{background:url('https://images.unsplash.com/photo-1497366811353-6870744d04b2?w=800&q=80&auto=format&fit=crop') center/cover no-repeat;}
.wc5{background:url('https://images.unsplash.com/photo-1545324418-cc1a3fa10c00?w=800&q=80&auto=format&fit=crop') center/cover no-repeat;}
.wc6{background:url('https://images.unsplash.com/photo-1486325212027-8081e485255e?w=800&q=80&auto=format&fit=crop') center/cover no-repeat;}
.mc-cap{padding:.75rem 0 .25rem;display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;}
.mc-name{font-size:13px;font-weight:600;color:var(--blk);line-height:1.3;}
.mc-meta{font-size:10px;font-weight:400;color:var(--mut);letter-spacing:.04em;white-space:nowrap;flex-shrink:0;}


/* About page evidence image */
.ab-evidence{max-width:1440px;margin:0 auto 0;padding:0 3rem 5vh;}
.ab-ev-img{width:100%;overflow:hidden;margin-bottom:1rem;}
.ab-ev-img .ab-img{aspect-ratio:21/9;object-fit:cover;object-position:center 40%;}
.ab-ev-cap{display:flex;justify-content:space-between;align-items:baseline;padding-top:.85rem;border-top:1px solid var(--brd);}
.ab-ev-project{font-size:13px;font-weight:500;color:var(--blk);}
.ab-ev-detail{font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);}

.ab-role:first-child .ab-role-title{color:var(--blk);font-size:14px;}

.ab-proof-item{transition:opacity .2s;}
.ab-proof-item:hover .ab-proof-n{color:var(--blk);opacity:.75;}
.ab-proof-item:hover .ab-proof-l{color:var(--bod);}

/* DHL Letter Card */
.ab-letter-card{background:var(--off);border:1px solid var(--brd);padding:2rem;display:flex;flex-direction:column;gap:1.5rem;height:100%;}
.ab-lc-header{display:flex;justify-content:space-between;align-items:flex-start;}
.ab-lc-logo{
  font-size:18px;font-weight:900;color:var(--blk);
  letter-spacing:-.02em;line-height:1;
}
.ab-lc-logo span{
  font-size:9px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--mut);
  display:block;margin-top:3px;
}
.ab-lc-type{
  font-size:9px;font-weight:600;letter-spacing:.18em;
  text-transform:uppercase;color:var(--mut);
}
.ab-lc-quote{
  font-family:var(--ser);font-size:clamp(1rem,1.6vw,1.2rem);
  font-style:italic;color:var(--blk);line-height:1.65;
  border-left:2px solid var(--blk);padding-left:1.25rem;
}
.ab-lc-footer{
  display:flex;justify-content:space-between;align-items:baseline;
  padding-top:1.25rem;border-top:1px solid var(--brd);
}
.ab-lc-proj{font-size:11px;font-weight:300;color:var(--mut);}

.skip-nav{
  position:absolute;top:-100%;left:1rem;
  background:var(--blk);color:var(--wht);
  padding:.5rem 1rem;font-size:12px;z-index:9999;
  transition:top .2s;
}
.skip-nav:focus{top:1rem;}

.sr-only{
  position:absolute;width:1px;height:1px;
  padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

/* Testi 2×2 layout */
.ab-lc-top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;}
.ab-lc-svg-logo{width:140px;height:auto;flex-shrink:0;}
.ab-lc-type{font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);text-align:right;}
.ab-lc-quote{font-family:var(--ser);font-size:clamp(.95rem,1.4vw,1.1rem);font-style:italic;color:var(--blk);line-height:1.65;border-left:2px solid var(--brd);padding-left:1.25rem;flex:1;}
.ab-lc-footer{display:flex;justify-content:space-between;align-items:baseline;padding-top:1.25rem;border-top:1px solid var(--brd);margin-top:auto;flex-wrap:wrap;gap:.5rem;}
.ab-lc-proj{font-size:11px;font-weight:300;color:var(--mut);}

/* Mobile: stack to single column */

/* Studio section — missing rules */
.ab-studio-img{overflow:hidden;}
.ab-studio-img .ab-img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block;}
.ab-studio-right{display:flex;flex-direction:column;gap:0;}

/* ── TEAM SECTION ── */
.ab-team-sec{background:var(--wht);padding:8vh 0;}
.ab-team-hd{margin-bottom:3.5rem;}
.ab-team-sub{
  font-size:15px;font-weight:300;color:var(--bod);
  line-height:1.8;max-width:560px;margin-top:1rem;
}
.ab-team-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:2rem;
}
.ab-member{display:flex;flex-direction:column;gap:0;}
.ab-member-img{
  overflow:hidden;
  margin-bottom:1.25rem;
}
.ab-member-img .ab-img{
  aspect-ratio:3/4;
  object-fit:cover;
  object-position:top;
  width:100%;
  display:block;
  transition:transform .6s cubic-bezier(.4,0,.2,1);
}
.ab-member:hover .ab-member-img .ab-img{
  transform:scale(1.03);
}
.ab-member-info{
  display:flex;flex-direction:column;gap:4px;
  padding-top:1rem;
  border-top:1px solid var(--brd);
}
.ab-member-name{
  font-size:14px;font-weight:700;
  color:var(--blk);letter-spacing:-.01em;
}
.ab-member-role{
  font-size:9px;font-weight:700;
  letter-spacing:.2em;text-transform:uppercase;
  color:var(--mut);margin-bottom:6px;
}
.ab-member-bio{
  font-size:12px;font-weight:300;
  color:var(--bod);line-height:1.7;
}

/* Mobile */
@media(max-width:768px){
  .ab-team-grid{grid-template-columns:1fr 1fr;gap:1.5rem;}
  .ab-team-sec{padding:6vh 0;}
}
@media(min-width:769px) and (max-width:1024px){
  .ab-team-grid{grid-template-columns:repeat(2,1fr);gap:1.75rem;}
}

/* Voice logos */
.voice-logo{
  height:18px;width:auto;object-fit:contain;
  display:inline-block;vertical-align:middle;
  margin-right:.5rem;filter:grayscale(100%);opacity:.6;
}
/* mc-meta scope */
.mc-meta{font-size:10px;font-weight:400;color:var(--mut);letter-spacing:.04em;white-space:nowrap;flex-shrink:0;}
@media(max-width:768px){
  .nav{top:0 !important;}
  .ab-testi-grid{grid-template-columns:1fr;}
}

/* About page additional */
.about-body{display:flex;flex-direction:column;gap:2rem;}
.about-bd p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.25rem;}
/* Project page image */
.prj-img{background-color:var(--off);background-size:cover;background-position:center;}
@media(min-width:769px) and (max-width:1024px){
  .ab-testi-grid{grid-template-columns:1fr 1fr;}
}

/* Real company logos */
.ab-lc-img-logo{
  height:36px;
  width:auto;
  max-width:130px;
  object-fit:contain;
  object-position:left center;
  display:block;
}
.ab-lc-logo-fb{
  font-size:18px;font-weight:900;
  color:var(--blk);letter-spacing:-.02em;line-height:1;
  flex-direction:column;gap:2px;
}
.ab-lc-logo-fb span{
  font-size:9px;font-weight:500;letter-spacing:.1em;
  text-transform:uppercase;color:var(--mut);
}
.ab-client-logo{
  height:22px;
  width:auto;
  max-width:80px;
  object-fit:contain;
  object-position:left center;
  display:inline-block;
  vertical-align:middle;
  filter:grayscale(100%);
  opacity:.6;
  transition:filter .25s,opacity .25s;
}
.ab-client-logo:hover{
  filter:grayscale(0%);
  opacity:1;
}
.ab-gr-logo{
  height:18px;
  width:auto;
  object-fit:contain;
  display:block;
  filter:grayscale(100%);
  opacity:.5;
}


.v-logo{margin-bottom:.75rem;}
.v-logo .voice-logo{height:22px;width:auto;object-fit:contain;filter:grayscale(100%);opacity:.55;display:block;}

/* Demo bar */
.demo-bar{position:fixed;bottom:0;left:0;right:0;z-index:999;background:rgba(10,10,9,.92);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem;border-top:1px solid rgba(255,255,255,.06);}
.db{font-family:var(--fnt);font-size:8.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:.35rem .85rem;background:transparent;border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.35);cursor:pointer;transition:transform .2s,opacity .2s,background-color .2s,border-color .2s;}
.db.on,.db:hover{background:var(--wht);border-color:var(--wht);color:var(--blk);}

/* about-bd */
.about-bd{display:flex;flex-direction:column;}
.about-bd p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.25rem;}
/* os-bd */
.os-bd p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.25rem;}
/* prj-txt */
.prj-txt p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:2rem;max-width:580px;}

.prj-txt p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:2rem;max-width:580px;}

.prj-txt{}
.prj-txt p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:2rem;max-width:580px;}

/* ── ABOUT BODY PARAGRAPHS ── */
.about-bd p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.25rem;}
.about-bd p:last-child{margin-bottom:0;}
/* ── ABOUT CR SPANS ── */
.about-cr span{font-size:13px;color:var(--bod);line-height:1.6;}
.ab-body{}
.ab-body p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.5rem;}
.ab-body p:last-child{margin-bottom:0;}
.ab-phil-body{}
.ab-phil-body p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.5rem;}
.ab-phil-body p:last-child{margin-bottom:0;}
.ab-principal-right{display:flex;flex-direction:column;gap:2.5rem;}

.ft-cp-right{font-size:11px;color:rgba(255,255,255,.18);letter-spacing:.04em;text-align:right;}
@media(max-width:768px){.footer-bot{grid-template-columns:1fr;text-align:center;}.ft-cp-right{text-align:center;}}

.cf-inp{width:100%;background:transparent;border:none;border-bottom:1px solid var(--brd);font-family:var(--fnt);font-size:14px;font-weight:300;color:var(--blk);padding:.7rem 0;outline:none;transition:border-color .2s;caret-color:var(--blk);}
.cf-inp::placeholder{color:rgba(0,0,0,.2);}
.cf-inp:focus{border-bottom-color:var(--blk);}

.con-det>div{display:flex;flex-direction:column;gap:.35rem;}

.work-section-hd{background:var(--wht);max-width:100%;}
.wa{
  position:fixed;bottom:2rem;right:2rem;z-index:700;
  width:42px;height:42px;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(8px);
  border:1px solid rgba(0,0,0,.12);
  color:rgba(0,0,0,.5);
  display:flex;align-items:center;justify-content:center;
  text-decoration:none;
  border-radius:50%;
  box-shadow:0 2px 12px rgba(0,0,0,.08);
  transition:background .3s,color .3s,border-color .3s,box-shadow .3s;
  animation:fi .8s 3s ease both, waBreathe 3s 4s ease-in-out infinite;
  cursor:pointer;
}
.wa:hover{
  animation:fi .8s 3s ease both;
}
/* Ripple ring */
.wa::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1.5px solid rgba(0,0,0,.18);
  animation:waRipple 3s 4.5s ease-out infinite;
  pointer-events:none;
}
.wa:hover::before{
  animation:none;
  opacity:0;
}
@keyframes waBreathe{
  0%,100%{transform:scale(1);}
  50%{transform:scale(1.07);}
}
@keyframes waRipple{
  0%{transform:scale(1);opacity:.45;}
  100%{transform:scale(1.75);opacity:0;}
}

.wk-filters-in{max-width:1440px;margin:0 auto;padding:.85rem 3rem;display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;}

.work-in-inner{max-width:1440px;margin:0 auto;}

.work-section-hd-in{max-width:1440px;margin:0 auto;padding:6vh 3rem 3vh;display:flex;align-items:flex-end;justify-content:space-between;gap:4rem;}

.work-in-hm{max-width:1440px;margin:0 auto;padding:0 3rem;}
/* ── CAREERS ── */
.ca-intro{background:var(--wht);}
.ca-intro-g{max-width:1440px;margin:0 auto;padding:8vh 3rem;display:grid;grid-template-columns:1fr 1.4fr;gap:7rem;align-items:start;}
.ca-intro-body p{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;margin-bottom:1.5rem;}
.ca-intro-body p:last-child{margin-bottom:0;}
.ca-values{background:var(--off);}
.ca-values-g{max-width:1440px;margin:0 auto;padding:8vh 3rem;}
.ca-val-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem;}
.ca-val-item{padding-top:2rem;border-top:2px solid var(--blk);}
.ca-val-h{font-size:15px;font-weight:700;color:var(--blk);margin-bottom:.75rem;letter-spacing:-.01em;}
.ca-val-p{font-size:14px;font-weight:300;color:var(--bod);line-height:1.8;}
.ca-roles{background:var(--wht);}
.ca-roles-g{max-width:1440px;margin:0 auto;padding:8vh 3rem;}
.ca-role-row{padding:2rem 0;border-top:1px solid var(--brd);display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:start;}
.ca-role-eye{font-size:9px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--mut);display:block;margin-bottom:.5rem;}
.ca-role-h{font-size:17px;font-weight:700;color:var(--blk);margin-bottom:.5rem;letter-spacing:-.01em;}
.ca-role-desc{font-size:14px;font-weight:300;color:var(--bod);line-height:1.8;max-width:580px;}
.ca-role-tags{display:flex;gap:1rem;margin-top:1rem;flex-wrap:wrap;}
.ca-tag{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);border:1px solid var(--brd);padding:.25rem .75rem;}
.ca-open{margin-top:3.5rem;padding:2.5rem;background:var(--off);display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center;}
.ca-open-h{font-size:15px;font-weight:700;color:var(--blk);margin-bottom:.5rem;}
.ca-open-p{font-size:14px;font-weight:300;color:var(--bod);line-height:1.75;max-width:480px;}
.ca-life{background:var(--off);border-top:1px solid var(--brd);}
.ca-life-g{max-width:1440px;margin:0 auto;padding:7vh 3rem;}
.ca-life-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;}
.ca-life-item{padding-top:1.5rem;border-top:1px solid var(--brd);}
.ca-life-h{font-size:13px;font-weight:700;color:var(--blk);display:block;margin-bottom:.6rem;}
.ca-life-p{font-size:13px;font-weight:300;color:var(--bod);line-height:1.75;}

@media(max-width:768px){
  .work-section-hd,.work-section-hd-in{grid-template-columns:1fr!important;gap:1.5rem;padding:4vh 1.5rem 2vh;}
  .wk-filters-in{padding:.75rem 1.5rem;gap:.5rem;}
  .work-in{padding:2rem 1.5rem 1.5rem;}
  .masonry{column-count:1!important;}
  .voices-in{padding:0 1.5rem;}
  .voice{grid-template-columns:1fr;gap:1rem;padding:1.75rem 0;}
  .os-g,.con-g-inner,.con-g-inner>div{grid-template-columns:1fr!important;gap:2rem;padding:4vh 1.5rem!important;}
  .offer-g{grid-template-columns:1fr;gap:2rem;}
  .ab-identity-grid,.ab-principal-grid,.ab-studio-grid,.ab-phil-grid,.ab-how-grid{grid-template-columns:1fr!important;gap:2rem;}
  .ab-team-grid{grid-template-columns:1fr 1fr;gap:1.5rem;}
  .footer-in{grid-template-columns:1fr 1fr;gap:2rem;}
  .footer-bot{grid-template-columns:1fr;gap:.75rem;text-align:center;}
  .ft-cp-right{text-align:center;}
  .inv-in{grid-template-columns:1fr!important;gap:2rem;padding:0 1.5rem;}
  .ca-intro-g,.ca-val-grid,.ca-roles-g,.ca-life-grid{grid-template-columns:1fr!important;gap:1.5rem;}
  .ca-role-row,.ca-open{grid-template-columns:1fr;}
}
.bg-res{background:url('https://images.unsplash.com/photo-1600596542815-ffad4c1539a9?w=800&q=80&auto=format&fit=crop') center/cover no-repeat;}
.bg-corp{background:url('https://images.unsplash.com/photo-1497366216548-37526070297c?w=800&q=80&auto=format&fit=crop') center/cover no-repeat;}
.bg-com{background:url('https://images.unsplash.com/photo-1486325212027-8081e485255e?w=800&q=80&auto=format&fit=crop') center/cover no-repeat;}
.bg-hosp{background:url('https://images.unsplash.com/photo-1414235077428-338989a2e8c0?w=800&q=80&auto=format&fit=crop') center/cover no-repeat;}
.oi-th{font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--mut);margin-bottom:.4rem;}
.oi-ty{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1.5rem;}
.oi-ty span{font-size:10px;color:var(--bod);border:1px solid var(--brd);padding:.18rem .55rem;}
.v-body{display:flex;flex-direction:column;gap:.4rem;}

.tl:hover 
.tl-wht 
.stmt-sub{font-size:15px;font-weight:300;color:var(--bod);line-height:1.85;max-width:480px;margin-top:1.5rem;}
.tl-arr{margin-left:.35rem;display:inline-block;transition:transform .2s ease;}
.tl-wht .tl-arr{color:var(--wht);}

.oi-en{padding-bottom:2rem;}
/* FIX: space below enquire link in service cards */
.oi{padding-bottom:2.5rem!important;}


/* Ken Burns slide animations */
@keyframes kbRes{from{transform:scale(1.0) translate(0,0);}to{transform:scale(1.05) translate(-1.5%,-.5%);}}
@keyframes kbWork{from{transform:scale(1.0) translate(0,0);}to{transform:scale(1.05) translate(1.5%,-.5%);}}
@keyframes kbCom{from{transform:scale(1.0) translate(0,0);}to{transform:scale(1.05) translate(-1%,.5%);}}
@keyframes kbHosp{from{transform:scale(1.0) translate(0,0);}to{transform:scale(1.05) translate(1.5%,.5%);}}
.sl.on .sl-bg-res{animation:kbRes 8s linear forwards;}
.sl.on .sl-bg-work{animation:kbWork 8s linear forwards;}
.sl.on .sl-bg-com{animation:kbCom 8s linear forwards;}
.sl.on .sl-bg-hosp{animation:kbHosp 8s linear forwards;

/* ===== CFJ MOBILE — all mobile overrides ===== */
/* Mobile overlay menu */
.mob-ov ul{list-style:none;padding:0;margin:0;}
.mob-ov ul li a{display:block;font-size:clamp(2rem,9vw,3rem);font-weight:800;letter-spacing:-.02em;text-transform:uppercase;color:rgba(255,255,255,.45);text-decoration:none;line-height:1.2;padding:.3rem 0;transition:color .25s;}
.mob-ov ul li a:active{color:var(--wht);}
.mob-ov-foot{margin-top:2.5rem;padding-top:1.75rem;border-top:1px solid rgba(255,255,255,.1);}
.mob-ov-foot a{display:block;font-size:13px;font-weight:300;color:rgba(255,255,255,.35);text-decoration:none;margin-bottom:.5rem;}
.mob-soc{display:flex;gap:1.25rem;margin-top:1.25rem;}
.mob-soc a{color:rgba(255,255,255,.3);text-decoration:none;}
/* Reviews stat bar */
.rv-stat-bar{padding:2rem 3rem;}
@media(max-width:768px){
/* Nav */
.pg-hero{height:38vh;min-height:220px;}
/* Services cards */
.offer-g{grid-template-columns:1fr;}
.offer-in{padding:0 1.5rem;}
.offer-hd{padding:6vh 1.5rem 3vh;}
.oi{border-right:none;padding:2.25rem 1.5rem;}
.oi:first-child{border-top:none;}
.oi:not(:first-child){padding-left:1.5rem;}
.offer-note{padding:1.75rem 1.5rem;flex-direction:column;align-items:flex-start;gap:1rem;}
/* Work */
.wk-filters-in{padding:.75rem 1.5rem;gap:.5rem;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none;}
.wk-filters-in::-webkit-scrollbar{display:none;}
.masonry{column-count:1;}
.work-in{padding:1.5rem;}
/* CTA */
.inv{padding:8vh 1.5rem;}
.inv-in{grid-template-columns:1fr;gap:2.5rem;}
.inv-h{font-size:clamp(2.4rem,9vw,3.5rem);}
/* Reviews */
.rv-stat-bar{padding:1.5rem;gap:1.25rem;}
.rv-stat-bar .tl{margin-left:0;margin-top:.5rem;}
.voices{padding:7vh 1.5rem;}
.voices-in{padding:0 1.5rem;}
.section-hd{padding:0 1.5rem;}
/* Footer */
.footer-in{grid-template-columns:1fr 1fr;padding:4vh 1.5rem;}
.footer-bot{flex-direction:column;gap:1rem;padding:1.5rem;align-items:center;}
.ft-cp,.ft-cp-right{text-align:center;}
.ft-social{justify-content:center;}
/* Other content padding */
.stmt-in{padding:0 1.5rem;}
.con-g-inner{padding:6vh 1.5rem;}
}

/* CFJ Mobile — final fixes from reference */
@media(max-width:768px){
.wk-filters-in{padding:.75rem 1.5rem;gap:.5rem;}
.voices-in{padding:0 1.5rem;}
.inv-in{grid-template-columns:1fr!important;gap:2rem;padding:0 1.5rem;}
.ft-cp-right{text-align:center;}
.ca-role-row,.ca-open{grid-template-columns:1fr;}
.masonry{column-count:1!important;}

/* v5.2.2 margin fix */
.section-hd{padding-left:0!important;padding-right:0!important;}
.offer-in{padding:0 1.5rem!important;}
.oi{padding-left:0!important;padding-right:0!important;padding-top:2.25rem!important;padding-bottom:2.25rem!important;}
.offer-note{padding-left:0!important;padding-right:0!important;}
.con-g-inner{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.stmt-in{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.voices-in{padding-left:0!important;padding-right:0!important;}
.footer-in{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.footer-bot{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.nav-in{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.rv-stat-bar{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.work-section-hd-in{padding-left:0!important;padding-right:0!important;}
.ab-container{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.work-in-hm{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.work-hd{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.ca-intro-g{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.ca-values-g{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.ca-roles-g{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.ca-life-g{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.inv-in{padding-left:0!important;padding-right:0!important;}
.con-g-inner>div{padding:4vh 0!important;}
.pt-body{padding-left:0!important;padding-right:0!important;}
.ptypes{padding-left:1.5rem!important;padding-right:1.5rem!important;}
}

/* CFJ Mobile — conflict resolution (appended last to win cascade) */
@media(max-width:768px){
.offer-in{padding:0!important;}
.inv-in{grid-template-columns:1fr!important;gap:2rem!important;padding:0 1.5rem!important;}
.con-g-inner{padding:4vh 1.5rem!important;}
}

/* CFJ Mobile v4.2 — final cascade wins */
@media(max-width:768px){
.inv-in{grid-template-columns:1fr!important;gap:2rem;}
.wk-filters-in{padding:.75rem 1.5rem;gap:.5rem;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none;}
.voices-in{padding:0 1.5rem;}
}

/* CFJ Mobile — cascade winners (final append) */
@media(max-width:768px){
.voices-in{padding:0 1.5rem;}
.wk-filters-in{padding:.75rem 1.5rem;gap:.5rem;}
}

/* CFJ Mobile — careers page actual class names */
@media(max-width:768px){
.ca-intro-g{grid-template-columns:1fr!important;gap:1.5rem;padding:5vh 1.5rem!important;}
.ca-values-g{grid-template-columns:1fr!important;gap:1.5rem;padding:5vh 1.5rem!important;}
.ca-roles-g{grid-template-columns:1fr!important;gap:1.5rem;padding:5vh 1.5rem!important;}
.ca-life-g{grid-template-columns:1fr!important;gap:1.5rem;padding:5vh 1.5rem!important;}
.ca-open{padding:1.5rem!important;}
}

/* Inline style overrides for mobile */
.offer-hd-section{padding:0 3rem 4vh;}
.os-cta-box{padding:2.5rem;}
@media(max-width:768px){
.offer-hd-section{padding:0 1.5rem 4vh !important;}
.os-cta-box{padding:1.5rem !important;}
}

/* CFJ Mobile — homepage work section + ptypes fixes */
@media(max-width:768px){
.work-hd{padding:0 1.5rem 1.5rem !important;}
.work-in-hm{padding:0 1.5rem !important;}
.pt-body{padding:1rem 1.5rem !important;}
}


/* ── Mobile margin consistency fix v5.2.1 ──────────────────────────────── */
@media(max-width:768px){

  /* Section headings - need 1.5rem side padding */
  .section-hd{padding-left:0!important;padding-right:0!important;}

  /* Offer container - was padding:0, needs sides for section-hd inside it */
  .offer-in{padding:0 1.5rem!important;}
  /* Individual service cards - remove their own side padding since parent handles it */
  .oi{padding-left:0!important;padding-right:0!important;padding-top:2.25rem!important;padding-bottom:2.25rem!important;}
  .offer-note{padding-left:0!important;padding-right:0!important;}

  /* Contact grid inner - reduce from 3rem to 1.5rem */
  .con-g-inner{padding-left:1.5rem!important;padding-right:1.5rem!important;}

  /* Statement section - reduce from 3rem to 1.5rem */
  .stmt-in{padding-left:1.5rem!important;padding-right:1.5rem!important;}

  /* Voices - parent has 1.5rem, inner should have 0 to avoid double */
  .voices-in{padding-left:0!important;padding-right:0!important;}

  /* Footer - reduce from 3rem to 1.5rem */
  .footer-in{padding-left:1.5rem!important;padding-right:1.5rem!important;}
  .footer-bot{padding-left:1.5rem!important;padding-right:1.5rem!important;}

  /* Nav */
  .nav-in{padding-left:1.5rem!important;padding-right:1.5rem!important;}

  /* Reviews stat bar */
  .rv-stat-bar{padding-left:1.5rem!important;padding-right:1.5rem!important;}

  /* Work section header */
  .work-section-hd-in{padding-left:0!important;padding-right:0!important;}

  /* About page container */
  .ab-container{padding-left:1.5rem!important;padding-right:1.5rem!important;}

  /* Work homepage section */
  .work-in-hm{padding-left:1.5rem!important;padding-right:1.5rem!important;}
}
