/* Al-Amthal Law Firm site styles. Built from the approved template 4: template 2 header + city hero,
   template 1 page (Bend Law Group layout), Cairo office photography. Classes .t1/.t2/.t4 are kept from the templates. */
:root{
  color-scheme:light;
  /* T1 Bend Law Group */
  --t1-navy:#14284f; --t1-red:#c23a29; --t1-gold:#b9994c; --t1-ink:#252525; --t1-grey:#4f596b; --t1-soft:#f1f1f1; --t1-beige:#f6f0e8; --t1-line:#e2e6ee;
  /* T2 Roulston Urquhart / Calgary Defence */
  --t2-char:#4d565e; --t2-dark:#2d2d2d; --t2-text:#676767; --t2-soft:#f5f6f6; --t2-line:#e4e6e7;
  /* review bar */
  --rb-bg:#111418; --rb-fg:#f2f4f6; --rb-mute:#9aa3ad;
  --ar-sans:"Noto Sans Arabic",system-ui,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:#ffffff;color:#222;margin:0;padding-inline:0}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4,p,ul{margin:0}
ul{list-style:none;padding:0}
.wrap{max-width:1180px;margin-inline:auto;padding-inline:clamp(16px,4vw,40px)}
.ltr{direction:ltr;unicode-bidi:isolate;display:inline-block}
.todo{outline:1.5px dashed currentColor;outline-offset:3px;border-radius:2px}
.ph{position:relative;display:grid;place-items:end start;padding:14px;font:600 11.5px/1.35 system-ui,sans-serif;letter-spacing:.04em;color:rgba(255,255,255,.85);
  background:repeating-linear-gradient(135deg,rgba(255,255,255,.07) 0 12px,rgba(255,255,255,0) 12px 24px),var(--ph,#3b4654)}
.ph span{background:rgba(0,0,0,.35);padding:4px 8px;border-radius:2px;max-width:100%}
[dir="rtl"] .ph{font-family:var(--ar-sans);letter-spacing:0}

/* ---------- full-screen city slideshow (shared) ---------- */
.hero{position:relative;min-height:100svh;display:grid;overflow:hidden;color:#fff;isolation:isolate}
.slides{position:absolute;inset:0;z-index:-2}
.slides figure{position:absolute;inset:0;margin:0;opacity:0;transition:opacity 1.6s ease}
.slides figure.on{opacity:1}
.slides img{width:100%;height:100%;object-fit:cover;transform:scale(1.04)}
.slides figure.on img{animation:kb 9s ease-out forwards}
@keyframes kb{from{transform:scale(1.12)}to{transform:scale(1.02)}}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--veil)}
.dots{position:absolute;z-index:2;inset-block-end:28px;inset-inline-end:clamp(16px,4vw,40px);display:flex;gap:18px}
.dots button{all:unset;cursor:pointer;font:600 11px/1 system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.6);padding-block:8px;border-top:2px solid rgba(255,255,255,.35)}
[dir="rtl"] .dots button{font-family:var(--ar-sans);letter-spacing:0;font-size:13px}
.dots button[aria-current="true"]{color:#fff;border-top-color:#fff}
.dots button:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media (prefers-reduced-motion:reduce){.slides figure{transition:none}.slides figure.on img{animation:none}html{scroll-behavior:auto}}

/* =======================================================================
   T1 · BEND LAW GROUP  (Forum hero, Avenir Next bold caps headings -> Nunito Sans, Montserrat body)
   ======================================================================= */
.t1{font-family:Montserrat,system-ui,sans-serif;color:var(--t1-ink);font-size:15px;line-height:1.65}
.t1[dir="rtl"]{font-family:var(--ar-sans)}
.t1 .H{font-family:"Nunito Sans","Avenir Next",system-ui,sans-serif;font-weight:800;text-transform:uppercase;color:var(--t1-navy);letter-spacing:.005em;line-height:1.15;text-wrap:balance}
.t1[dir="rtl"] .H{font-family:"Noto Kufi Arabic",var(--ar-sans);font-weight:700;line-height:1.6}
.t1 .eyebrow{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--t1-gold)}
.t1[dir="rtl"] .eyebrow{letter-spacing:0;font-size:13px}
.t1 .btn{display:inline-block;background:var(--t1-red);color:#fff;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:11px 20px;border-radius:2px}
.t1[dir="rtl"] .btn{letter-spacing:0;font-size:14px}
.t1 header{position:absolute;z-index:5;inset-inline:0;top:0;color:#fff}
.t1 header .wrap{display:flex;align-items:center;gap:26px;padding-block:18px;flex-wrap:wrap}
.t1 .logo{display:flex;align-items:center;gap:12px}
.t1 .logo img{width:60px;height:60px;filter:drop-shadow(0 1px 3px rgba(0,0,0,.45))}
.t1 .logo b{display:block;font-family:"Nunito Sans",sans-serif;font-weight:800;font-size:21px;letter-spacing:.2em;line-height:1}
.t1 .logo small{display:block;font-size:9.5px;letter-spacing:.32em;margin-top:4px;opacity:.85}
.t1[dir="rtl"] .logo b{font-family:"Noto Kufi Arabic",sans-serif;letter-spacing:0;font-size:22px}
.t1[dir="rtl"] .logo small{letter-spacing:0;font-size:12px}
.t1 nav{display:flex;gap:26px;margin-inline-start:auto;font-size:13px;font-weight:500}
.t1 nav a:hover{color:var(--t1-gold)}
.t1 .lang{font-size:13px;border-bottom:1px solid rgba(255,255,255,.6)}
.t1 .hero{--veil:linear-gradient(180deg,rgba(14,22,40,.55),rgba(14,22,40,.35) 40%,rgba(14,22,40,.7))}
.t1 .hero .wrap{align-self:center;padding-block:140px 180px;width:100%}
.t1 .hero h1{font-family:Forum,"Times New Roman",serif;font-weight:400;font-size:clamp(36px,4.8vw,62px);line-height:1.08;text-transform:uppercase;max-width:22ch;color:#fff;text-wrap:balance}
.t1[dir="rtl"] .hero h1{font-family:Amiri,serif;font-weight:700;line-height:1.4;max-width:18ch}
.t1 .hero p{max-width:52ch;margin-top:22px;font-size:16px;color:#e6e9ef}
.t1 .hero p+p{margin-top:12px}
.t1 .assess{position:relative;z-index:3;margin-top:-110px}
.t1 .assess .card{background:#fff;box-shadow:0 18px 50px -20px rgba(20,40,79,.45);display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:28px;padding:clamp(22px,3.4vw,38px);align-items:center}
.t1 .assess h2{font-size:21px;text-transform:none}
.t1 .assess p{font-size:13.5px;color:var(--t1-grey);margin-top:8px}
.t1 .checks{display:grid;gap:6px;font-size:13.5px;color:var(--t1-navy);font-weight:600}
.t1 .checks li::before{content:"✓";color:#6aa84f;font-weight:800;margin-inline-end:10px}
.t1 .assess .alt{display:block;margin-top:12px;font-size:13px;font-style:italic;color:var(--t1-grey)}
.t1 .assess .alt a{font-style:normal;font-weight:700;color:var(--t1-navy);text-decoration:underline}
.t1 section{padding-block:clamp(56px,7vw,96px)}
.t1 .grey{background:var(--t1-soft);text-align:center}
.t1 .grey h2{font-size:clamp(22px,2.6vw,28px)}
.t1 .badges{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;max-width:860px;margin:28px auto 0}
.t1 .badges li{background:var(--t1-navy);color:#fff;padding:20px 16px;display:grid;gap:4px;box-shadow:0 8px 20px -12px rgba(0,0,0,.5)}
.t1 .badges b{font-family:Forum,serif;font-size:34px;font-weight:400;line-height:1;color:var(--t1-gold)}
.t1[dir="rtl"] .badges b{font-family:Amiri,serif;font-weight:700}
.t1 .badges span{font-size:13px;color:#d8deea}
.t1 .founder .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center}
.t1 .founder .photo{aspect-ratio:4/5;object-fit:cover;width:100%;filter:saturate(.9)}
.t1 .founder .card{background:#fff;box-shadow:0 18px 50px -24px rgba(20,40,79,.45);padding:clamp(24px,4vw,52px);margin-inline-start:-60px;position:relative;text-align:center;display:grid;gap:14px}
.t1 .founder .card h2{font-size:clamp(22px,2.6vw,28px)}
.t1 .founder .card p{font-size:14px;color:#3d4350;text-align:start}
.t1 .founder .card .btn{justify-self:center;margin-top:6px}
.t1 .draft{font-size:11.5px;color:var(--t1-red);font-weight:600}
.t1 .navyband{background:var(--t1-navy);color:#fff;text-align:center}
.t1 .navyband h2{color:#fff;font-size:clamp(24px,3vw,32px)}
.t1 .navyband .sub{color:var(--t1-gold);font-size:14px;margin-top:6px}
.t1 .navyband .row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:36px;margin-top:40px;text-align:start;align-items:center}
.t1 .navyband .ph{aspect-ratio:16/9;--ph:#20365f;place-items:center}
.t1 .play{width:60px;height:60px;border-radius:50%;background:var(--t1-red);display:grid;place-items:center}
.t1 .play::after{content:"";border-inline-start:16px solid #fff;border-block:10px solid transparent;margin-inline-start:4px}
.t1[dir="rtl"] .play::after{transform:scaleX(-1);margin-inline-start:0;margin-inline-end:4px}
.t1 .navyband .row p{font-size:13.5px;color:#d6dcea}
.t1 .navyband .row p+p{margin-top:14px}
.t1 .approach{background:var(--t1-beige);text-align:center}
.t1 .approach h2{font-size:clamp(24px,3vw,32px);max-width:24ch;margin:10px auto 0}
.t1 .approach .row{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,64px);margin-top:44px;text-align:start}
.t1 .approach .lead{font-weight:600;font-size:16px;color:var(--t1-navy);line-height:1.6}
.t1 .approach .lead::before{content:"";display:block;width:36px;height:2px;background:var(--t1-gold);margin-bottom:20px}
.t1 .approach .rt p{font-size:13.5px;color:#454b57}
.t1 .approach .rt p+p{margin-top:14px}
.t1 .approach blockquote{margin:16px 0;padding-inline-start:16px;border-inline-start:2px solid var(--t1-gold);font-style:italic;color:var(--t1-navy);font-size:14.5px}
.t1 .stages{text-align:center}
.t1 .stages h2{font-size:clamp(24px,3vw,32px);max-width:26ch;margin:10px auto 0}
.t1 .stages .intro{font-weight:700;color:var(--t1-ink);margin-top:14px}
.t1 .stages .intro+p{font-size:13.5px;color:var(--t1-grey);max-width:66ch;margin:8px auto 0}
.t1 .cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:40px;text-align:start}
.t1 .cards li{border-top:3px solid var(--c);box-shadow:0 10px 30px -18px rgba(20,40,79,.45);padding:22px 20px;display:grid;gap:8px;align-content:start;background:#fff}
.t1 .cards .k{font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--c);text-transform:uppercase}
.t1[dir="rtl"] .cards .k{letter-spacing:0;font-size:13px}
.t1 .cards h3{font-size:19px;color:var(--t1-navy);font-family:"Nunito Sans",sans-serif;font-weight:800}
.t1[dir="rtl"] .cards h3{font-family:"Noto Kufi Arabic",sans-serif;font-weight:700}
.t1 .cards p{font-size:13px;color:#454b57}
.t1 .cards small{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--t1-navy);margin-top:6px}
.t1[dir="rtl"] .cards small{letter-spacing:0;font-size:12px}
.t1 .cards ul{display:grid;gap:3px;font-size:12.5px;color:#454b57}
.t1 .cards ul li{all:unset;display:block}
.t1 .cards ul li::before{content:"· "}
.t1 .cards a{font-size:12.5px;font-weight:700;color:var(--c);margin-top:10px}
.t1 .steps{background:var(--t1-soft);text-align:center}
.t1 .steps ol{list-style:none;padding:0;margin:36px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;counter-reset:s}
.t1 .steps ol li{counter-increment:s;display:grid;gap:10px;justify-items:center}
.t1 .steps ol li::before{content:counter(s);width:46px;height:46px;border-radius:50%;background:var(--t1-navy);color:#fff;display:grid;place-items:center;font-weight:700}
.t1 .steps h3{font-size:16px;color:var(--t1-navy)}
.t1 .steps p{font-size:13.5px;color:var(--t1-grey);max-width:34ch}
.t1 .quotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:36px}
.t1 .quotes li{background:#fff;border:1px dashed #c4cad6;padding:22px;font-size:13.5px;color:var(--t1-grey);font-style:italic;display:grid;gap:10px}
.t1 .quotes li b{font-style:normal;color:var(--t1-navy);font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.t1 .faq{background:var(--t1-navy);color:#fff}
.t1 .faq .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:clamp(24px,5vw,64px)}
.t1 .faq h2{color:#fff;font-size:clamp(22px,2.6vw,28px)}
.t1 .faq .intro{font-size:13.5px;color:#cdd5e3;margin-top:14px}
.t1 .faq details{border-bottom:1px solid rgba(255,255,255,.18);padding-block:16px}
.t1 .faq summary{cursor:pointer;font-weight:600;font-size:15px;list-style:none;display:flex;justify-content:space-between;gap:14px}
.t1 .faq summary::-webkit-details-marker{display:none}
.t1 .faq summary::after{content:"+";color:var(--t1-gold);font-size:20px;line-height:1}
.t1 .faq details[open] summary::after{content:"–"}
.t1 .faq details p{font-size:13.5px;color:#cdd5e3;margin-top:10px}
.t1 .cta{text-align:center}
.t1 .cta h2{font-size:clamp(24px,3vw,32px);max-width:24ch;margin-inline:auto}
.t1 .cta p{max-width:62ch;margin:14px auto 22px;color:var(--t1-grey)}
.t1 footer{background:#0f1f3d;color:#b8c2d4;font-size:13px}
.t1 footer .wrap{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:28px;padding-block:48px 24px}
.t1 footer h4{color:#fff;font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px}
.t1[dir="rtl"] footer h4{letter-spacing:0;font-size:14px}
.t1 footer li+li{margin-top:6px}
.t1 footer .legal{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding-top:18px;font-size:11.5px;color:#7f8ba3;display:grid;gap:6px;padding-bottom:70px}

/* =======================================================================
   T2 · ROULSTON URQUHART / CALGARY DEFENCE  (Montserrat light caps headings, Open Sans body)
   ======================================================================= */
.t2{font-family:"Open Sans",system-ui,sans-serif;color:var(--t2-text);font-size:14.5px;line-height:1.8}
.t2[dir="rtl"]{font-family:var(--ar-sans)}
.t2 .M{font-family:Montserrat,system-ui,sans-serif;text-transform:uppercase;font-weight:400;color:var(--t2-char);letter-spacing:.02em;line-height:1.25;text-wrap:balance}
.t2[dir="rtl"] .M{font-family:Tajawal,var(--ar-sans);font-weight:300;letter-spacing:0;line-height:1.5}
.t2 header{position:absolute;z-index:5;inset-inline:0;top:0;color:#fff;border-bottom:1px solid rgba(255,255,255,.18)}
.t2 header .wrap{max-width:none;display:flex;align-items:center;gap:30px;padding-block:14px;flex-wrap:wrap}
.t2 .logo{display:flex;align-items:center;gap:12px}
.t2 .logo img{width:54px;height:54px;filter:drop-shadow(0 1px 3px rgba(0,0,0,.45))}
.t2 .logo b{display:block;font-family:Montserrat,sans-serif;font-weight:500;font-size:17px;letter-spacing:.06em;line-height:1.1}
.t2 .logo small{display:block;font-family:Montserrat,sans-serif;font-size:10.5px;letter-spacing:.32em;opacity:.85}
.t2[dir="rtl"] .logo b{font-family:Tajawal,sans-serif;font-size:20px;letter-spacing:0}
.t2[dir="rtl"] .logo small{font-family:Tajawal,sans-serif;letter-spacing:0;font-size:13px}
.t2 nav{display:flex;gap:22px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}
.t2[dir="rtl"] nav{font-family:Tajawal,sans-serif;letter-spacing:0;font-size:14px}
.t2 .phone{margin-inline-start:auto;font-family:Montserrat,sans-serif;font-size:22px;font-weight:400;letter-spacing:.02em}
.t2 .lang{font-family:Montserrat,sans-serif;font-size:12px;border:1px solid rgba(255,255,255,.5);padding:5px 10px}
.t2[dir="rtl"] .lang{font-family:Tajawal,sans-serif}
.t2 .hero{--veil:linear-gradient(180deg,rgba(20,24,28,.55),rgba(20,24,28,.35) 50%,rgba(20,24,28,.6));text-align:center}
.t2 .hero .wrap{align-self:center;padding-block:130px 220px;width:100%}
.t2 .hero h1{font-family:Montserrat,sans-serif;font-weight:300;text-transform:uppercase;font-size:clamp(32px,5vw,58px);line-height:1.2;max-width:20ch;margin-inline:auto;color:#fff;text-wrap:balance}
.t2[dir="rtl"] .hero h1{font-family:Tajawal,sans-serif;font-weight:300;line-height:1.45}
.t2 .obtns{display:flex;justify-content:center;gap:14px;margin-top:22px;flex-wrap:wrap}
.t2 .obtn{border:1px solid rgba(255,255,255,.85);color:#fff;padding:10px 22px;font-family:Montserrat,sans-serif;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;display:inline-flex;gap:10px;align-items:center}
.t2[dir="rtl"] .obtn{font-family:Tajawal,sans-serif;letter-spacing:0;font-size:14px}
.t2 .obtn.dark{border-color:var(--t2-char);color:var(--t2-char)}
.t2 .obtn.fill{background:var(--t2-char);border-color:var(--t2-char);color:#fff}
/* firm logo row at the top of every footer */
.fbrand{grid-column:1/-1;padding-bottom:22px;margin-bottom:6px;border-bottom:1px solid rgba(255,255,255,.12)}
.fbrand img{display:block;width:100%;max-width:460px;height:auto}


/* ---------- phone menu, links and sizing (shared) ---------- */
[id]{scroll-margin-top:84px}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.mcall,.mbtn{display:none;align-items:center;justify-content:center;width:44px;height:44px;border:0;padding:0;background:transparent;color:inherit;cursor:pointer;border-radius:50%;flex:none}
.mcall{margin-inline-start:auto;border:1px solid currentColor}
.mcall svg,.mbtn svg{width:22px;height:22px}
.mcall:focus-visible,.mbtn:focus-visible,.mnav button:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.mnav{position:fixed;inset:0;z-index:70;display:flex;flex-direction:column;gap:4px;padding:calc(14px + env(safe-area-inset-top,0px)) 20px calc(24px + env(safe-area-inset-bottom,0px));overflow-y:auto;background:var(--mbg,#0f1f3d);color:#fff}
.mnav[hidden]{display:none}
.mnav .mtop{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.mnav .mtop img{width:52px;height:52px}
.mnav .mclose{width:44px;height:44px;border:0;background:transparent;color:#fff;font-size:30px;line-height:1;cursor:pointer}
.mnav nav{display:grid!important;gap:0;margin:0!important;font-size:20px!important;letter-spacing:0!important;text-transform:none!important}
.mnav nav a{display:block;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.14);color:#fff}
.mnav .mfoot{display:grid;gap:10px;margin-top:22px}
.mnav .mfoot a{display:flex;gap:6px;align-items:center;justify-content:center;min-height:48px;border:1px solid rgba(255,255,255,.5);font-size:16px;color:#fff}
.mnav .mfoot a.pri{background:#fff;color:var(--mbg,#0f1f3d);border-color:#fff;font-weight:700}
.t1 .mnav{--mbg:#14284f}.t2 .mnav{--mbg:#24292e}
body.lock{overflow:hidden}
a[href^="tel:"]{white-space:nowrap}
footer a[href^="tel:"],footer a[href^="mailto:"],.ogrid a[href^="tel:"]{display:inline-block;padding-block:9px;margin-block:-5px}
.t1 .faq details{padding-block:0}
.t1 .faq summary{padding-block:16px}
.t1 .faq details p{margin:0 0 16px}
.t1 .cards a{padding-block:10px}
.t1 .assess .alt a{display:inline-block;padding-block:8px}
@media (max-width:980px){
  .mcall,.mbtn{display:inline-flex}
  .t1 header .btn,.t1 header .lang,.t2 header .lang,.t2 header .phone{display:none}
  .t1 header .wrap,.t2 header .wrap{flex-wrap:nowrap;gap:10px}
  .t1 header .logo,.t2 header .logo{min-width:0}
}
@media (max-width:720px){
  .dots button{font-size:12px;padding-block:15px;min-width:44px;text-align:center}
  .t1 .eyebrow,.t1 .cards .k,.t1 .cards small,.t1 .draft,.ph{font-size:12px}
  .t1 footer .legal{font-size:12.5px}
  .t2 .obtn{font-size:12.5px;min-height:44px}
  .t1 .logo small,.t2 .logo small{font-size:10.5px}
  .t1 .hero .wrap{padding-block:110px 150px}
  .t2 .hero .wrap{padding-block:110px 200px}
}
@media (max-width:420px){
  .t1 .logo b{font-size:18px;letter-spacing:.14em}
  .t2 .logo b{font-size:15px}
}
/* text shown only to crawlers and readers without JavaScript */
.nos{max-width:760px;margin:0 auto;padding:32px 20px;font:16px/1.6 system-ui,sans-serif;color:#222}
.nos h1{font-size:24px;margin-bottom:8px}.nos h2{font-size:19px;margin:22px 0 6px}.nos li{margin:4px 0}

/* ---------- responsive ---------- */
@media (max-width:980px){
  .t1 nav,.t2 nav{display:none}
  .t1 .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .t1 footer .wrap{grid-template-columns:1fr 1fr}
}
@media (max-width:720px){
  .t1 .assess .card,.t1 .founder .wrap,.t1 .navyband .row,.t1 .approach .row,.t1 .faq .wrap{grid-template-columns:1fr}
  .t1 .founder .card{margin-inline-start:0;margin-top:-40px;margin-inline:16px}
  .t1 .badges,.t1 .steps ol,.t1 .quotes{grid-template-columns:1fr}
  .t2 .phone{font-size:16px}
  .dots{inset-inline:16px;justify-content:center;inset-block-end:84px}
}
@media (max-width:480px){
  .t1 .cards,.t1 footer .wrap{grid-template-columns:1fr}
  .t2 .phone{display:none}
  .t1 .logo img,.t2 .logo img{width:44px;height:44px}
}

/* =======================================================================
   T4 · COMBINED  (T2 header + city hero, T1 page, Cairo shoot photography)
   ======================================================================= */
.t4 .t2 .hero .wrap{padding-block:130px 200px}
.t4 .t2 nav{margin-inline-start:0}
.t4 .t2 .logo small{margin-top:0}
.t4 .dots{inset-block-end:140px}
.t4 picture{display:block}
.t4 picture img{display:block;width:100%;height:auto}
.t4 figure{margin:0}
.t4 figcaption{font-size:12px;line-height:1.5;color:var(--t1-grey);text-align:start;margin-top:10px}
.t4 .strip{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:1080px;margin:48px auto 0}
.t4 .strip img{aspect-ratio:4/3;object-fit:cover}
.t4 .founder img.photo{aspect-ratio:4/5;object-fit:cover;filter:none}
.t4 .navyband figure img{aspect-ratio:16/9;object-fit:cover}
.t4 .navyband figcaption{color:#aeb8cc}
.t4 .approach .apimg{margin-top:30px}
.t4 .quotes li{text-align:start;font-style:normal;gap:6px;align-content:start}
.t4 .quotes blockquote{margin:0 0 10px;font-style:italic;font-size:14.5px;line-height:1.6;color:var(--t1-ink)}
.t4 .quotes li b{font-size:12px}
.t4[dir="rtl"] .quotes li b{letter-spacing:0;font-size:14px}
.t4 .quotes li small{font-size:12px;color:var(--t1-grey)}
.t4 .steps .qdraft{margin:18px auto 0;max-width:none;font-size:12px;font-weight:600;color:var(--t1-red);text-align:center}
.t4 .approach .apimg img{aspect-ratio:3/2;object-fit:cover}
.t4 .cta.photo{position:relative;isolation:isolate;overflow:hidden;color:#fff;padding-block:clamp(300px,41vw,640px) clamp(48px,6vw,76px)}
.t4 .cta.photo .bg{position:absolute;inset:0;z-index:-2}
.t4 .cta.photo .bg picture{height:100%}
.t4 .cta.photo .bg img{height:100%;object-fit:cover;object-position:50% 35%}
.t4 .cta.photo::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(14,22,40,0) 35%,rgba(14,22,40,.6) 62%,rgba(14,22,40,.92))}
.t4 .cta.photo .H{color:#fff}
.t4 .cta.photo p{color:#d6dcea}
.t4 .cta.photo .addr{margin:-8px auto 22px;font-size:13.5px;color:var(--t1-gold)}
@media (max-width:720px){
  .t4 .t2 .hero .wrap{padding-block:110px 170px}
  .t4 .strip{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:84%;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-inline:-16px;padding-inline:16px;scroll-padding-inline:16px}
  .t4 .strip li{scroll-snap-align:start}
  .t4 .cta.photo{padding-block:0 56px;background:var(--t1-navy)}
  .t4 .cta.photo .bg{position:static}
  .t4 .cta.photo .bg picture{height:auto}
  .t4 .cta.photo .bg img{height:auto;aspect-ratio:16/9}
  .t4 .cta.photo::after{display:none}
  .t4 .cta.photo .wrap{padding-top:36px}
  .t4 figcaption{font-size:12.5px}
}

/* =======================================================================
   Inner pages (same system as the home page: navy / gold / red, Nunito Sans caps headings, Montserrat body)
   ======================================================================= */
.skip{position:absolute;inset-inline-start:12px;top:-60px;z-index:90;background:#fff;color:var(--t1-navy);padding:10px 14px;font-weight:700;border-radius:2px}
.skip:focus{top:12px}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--t1-gold);outline-offset:2px}
.t4 .t2 nav a[aria-current="page"]{color:var(--t1-gold)}
.t4 .t2 header .wrap{gap:24px}
.t4 .t2 nav{gap:18px}
@media (max-width:1240px){.t4 .t2 .phone{display:none}}

/* page banner: shorter version of the city hero, one photo */
.t4 .banner{min-height:min(62svh,600px)}
.t4 .banner .bg{position:absolute;inset:0;z-index:-2;margin:0}
.t4 .banner .bg img{width:100%;height:100%;object-fit:cover}
.t4 .t2 .banner{--veil:linear-gradient(180deg,rgba(14,22,40,.72),rgba(14,22,40,.5) 45%,rgba(14,22,40,.78))}
.t4 .t2 .banner .wrap{padding-block:150px 70px;align-self:end}
.t4 .t2 .banner h1{font-size:clamp(30px,4.2vw,50px)}
.t4 .banner .lead{max-width:60ch;margin:16px auto 0;font-size:16px;line-height:1.7;color:#e3e7ee}
.t4 .banner.plain{min-height:auto;background:var(--t1-navy)}
.t4 .banner.plain::before{display:none}
.t4 .banner.plain .wrap{padding-block:140px 56px}
.crumbs{font:500 12px/1.4 Montserrat,system-ui,sans-serif;letter-spacing:.06em;color:#c9d1de;margin-bottom:14px}
.crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:6px}
.crumbs li+li::before{content:"/";margin-inline-end:6px;opacity:.6}
.crumbs a{text-decoration:underline;text-underline-offset:3px}
[dir="rtl"] .crumbs{font-family:var(--ar-sans);letter-spacing:0;font-size:13px}

/* generic content blocks */
.t4 .prose p{font-size:15px;color:#3d4350;line-height:1.75}
.t4 .prose p+p{margin-top:14px}
.t4 .prose h2{font-size:clamp(20px,2.2vw,26px);margin:38px 0 14px}
.t4 .prose h2:first-child{margin-top:0}
.t4 .prose ul.ticks{display:grid;gap:8px;margin-top:6px}
.t4 ul.ticks li{position:relative;padding-inline-start:26px;font-size:14.5px;color:#3d4350;line-height:1.6}
.t4 ul.ticks li::before{content:"";position:absolute;inset-inline-start:0;top:.55em;width:12px;height:2px;background:var(--t1-gold)}
.t4 .lead-p{font-size:17px;font-weight:600;color:var(--t1-navy);line-height:1.65}
.t4 .twocol{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(32px,5vw,72px);align-items:start}
.t4 .aside{position:sticky;top:24px;display:grid;gap:22px}
.t4 .acard{background:var(--t1-navy);color:#fff;padding:28px 26px;display:grid;gap:12px}
.t4 .acard h2{color:#fff;font-size:19px}
.t4 .acard p{font-size:13.5px;color:#cdd5e3;line-height:1.65}
.t4 .acard .tel{font:500 20px/1.2 Montserrat,sans-serif;color:#fff}
.t4 .acard .btn{justify-self:start;margin-top:4px}
.t4 .alist{border:1px solid var(--t1-line);padding:22px 24px}
.t4 .alist h2{font-size:14px;margin-bottom:10px}
.t4 .alist a{display:block;padding-block:8px;font-size:14px;color:var(--t1-navy);border-top:1px solid var(--t1-line)}
.t4 .alist a:hover,.t4 .alist a[aria-current="page"]{color:var(--t1-red)}
.t4 .svcgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 28px;margin-top:6px}
.t4 .faql{margin-top:8px}
.t4 .faql details{border-bottom:1px solid var(--t1-line)}
.t4 .faql summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:14px;padding-block:16px;font-weight:700;color:var(--t1-navy);font-size:15px}
.t4 .faql summary::-webkit-details-marker{display:none}
.t4 .faql summary::after{content:"+";color:var(--t1-gold);font-size:20px;line-height:1}
.t4 .faql details[open] summary::after{content:"–"}
.t4 .faql details p{margin:0 0 16px;font-size:14.5px;color:#3d4350;line-height:1.7}
.t4 .related{background:var(--t1-soft)}
.t4 .related h2{font-size:clamp(20px,2.2vw,26px);text-align:center}
.t4 .rgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:30px}
.t4 .pcard{background:#fff;padding:24px 22px;display:grid;gap:10px;align-content:start;box-shadow:0 10px 30px -18px rgba(20,40,79,.45);border-top:3px solid var(--t1-gold);transition:transform .2s ease}
.t4 .pcard:hover{transform:translateY(-3px)}
.t4 .pcard svg{width:34px;height:34px;color:var(--t1-navy)}
.t4 .pcard h3{font-family:"Nunito Sans",sans-serif;font-weight:800;font-size:17px;color:var(--t1-navy);line-height:1.3}
.t4[dir="rtl"] .pcard h3{font-family:"Noto Kufi Arabic",sans-serif;font-weight:700}
.t4 .pcard p{font-size:13.5px;color:#454b57;line-height:1.6}
.t4 .pcard .more{font-size:12.5px;font-weight:700;color:var(--t1-red);margin-top:4px}
.t4 .pgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.t4 .ctaband{background:var(--t1-navy);color:#fff;text-align:center}
.t4 .ctaband h2{color:#fff;font-size:clamp(22px,2.8vw,30px)}
.t4 .ctaband p{color:#cdd5e3;max-width:62ch;margin:12px auto 22px;font-size:14.5px}
.t4 .ctaband .row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.t4 .btn.ghost{background:transparent;border:1px solid rgba(255,255,255,.7)}

/* about */
.t4 .facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:26px}
.t4 .facts li{background:var(--t1-navy);color:#fff;padding:18px 14px;display:grid;gap:6px;text-align:center}
.t4 .facts b{font-family:Forum,serif;font-weight:400;font-size:32px;line-height:1;color:var(--t1-gold)}
.t4[dir="rtl"] .facts b{font-family:Amiri,serif;font-weight:700}
.t4 .facts span{font-size:12.5px;color:#d8deea;line-height:1.45}
.t4 .split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:center}
.t4 .split figure img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.t4 .mems{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.t4 .mems li{border:1px solid var(--t1-line);padding:8px 14px;font-size:13px;color:var(--t1-navy);font-weight:600}

/* team */
.t4 .people{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.t4 .person{display:grid;gap:10px;align-content:start}
.t4 .person .pic{aspect-ratio:4/5;background:var(--t1-navy);display:grid;place-items:center;overflow:hidden}
.t4 .person .pic img{width:100%;height:100%;object-fit:cover}
.t4 .person .mono{font-family:Forum,serif;font-size:72px;color:var(--t1-gold);letter-spacing:.06em}
.t4[dir="rtl"] .person .mono{font-family:Amiri,serif;font-weight:700}
.t4 .person h2{font-family:"Nunito Sans",sans-serif;font-weight:800;font-size:18px;color:var(--t1-navy);text-transform:none;line-height:1.3;margin-top:6px}
.t4[dir="rtl"] .person h2{font-family:"Noto Kufi Arabic",sans-serif;font-weight:700}
.t4 .person .r{font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--t1-gold)}
.t4[dir="rtl"] .person .r{letter-spacing:0;font-size:13.5px}
.t4 .person p{font-size:13.5px;color:#454b57;line-height:1.6}
.t4 .person a.more{font-size:12.5px;font-weight:700;color:var(--t1-red)}

/* founder bio */
.t4 .bio{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,64px);align-items:start}
.t4 .bio .portrait{position:sticky;top:24px}
.t4 .bio .portrait img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.t4 .bio .role{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--t1-gold);margin-bottom:10px}
.t4[dir="rtl"] .bio .role{letter-spacing:0;font-size:14px}
.t4 .letter{background:var(--t1-beige);padding:clamp(22px,3.4vw,40px);margin-top:40px}
.t4 .letter p{font-size:15px;color:#3d4350;line-height:1.75}
.t4 .letter p+p{margin-top:12px}
.t4 .draftnote{display:block;margin-top:14px;font-size:12px;font-weight:600;color:var(--t1-red)}

/* offices */
.t4 .ocards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.t4 .ocard{border-top:3px solid var(--t1-gold);background:#fff;box-shadow:0 10px 30px -18px rgba(20,40,79,.45);padding:26px 24px;display:grid;gap:8px;align-content:start}
.t4 .ocard h2{font-size:22px}
.t4 .ocard .r{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--t1-gold)}
.t4[dir="rtl"] .ocard .r{letter-spacing:0;font-size:13.5px}
.t4 .ocard p{font-size:14px;color:#454b57;line-height:1.6}
.t4 .ocard .tel{font:500 19px/1.3 Montserrat,sans-serif;color:var(--t1-navy)}
.t4 .ocard .mapa{font-size:13px;font-weight:700;color:var(--t1-red);text-decoration:underline;text-underline-offset:3px}

/* gallery */
.t4 .gal{columns:3 300px;column-gap:16px}
.t4 .gal figure{break-inside:avoid;margin:0 0 16px}
.t4 .gal a{display:block;overflow:hidden;cursor:zoom-in}
.t4 .gal img{width:100%;height:auto;transition:transform .5s ease}
.t4 .gal a:hover img{transform:scale(1.03)}
.t4 .gal figcaption{font-size:12.5px;color:var(--t1-grey);margin-top:8px;line-height:1.5}
.lb{border:0;padding:0;background:rgba(8,12,22,.94);width:100vw;height:100svh;max-width:none;max-height:none;margin:0;color:#fff}
.lb::backdrop{background:rgba(8,12,22,.94)}
.lb .in{display:grid;grid-template-rows:1fr auto;height:100%;padding:56px 16px 20px}
.lb img{max-width:100%;max-height:calc(100svh - 140px);margin:auto;object-fit:contain}
.lb p{text-align:center;font-size:14px;color:#cdd5e3;margin-top:12px}
.lb button{position:absolute;background:rgba(255,255,255,.08);border:0;color:#fff;width:48px;height:48px;border-radius:50%;font-size:26px;line-height:1;cursor:pointer}
.lb .x{top:12px;inset-inline-end:12px}
.lb .pv{top:50%;inset-inline-start:12px;transform:translateY(-50%)}
.lb .nx{top:50%;inset-inline-end:12px;transform:translateY(-50%)}
[dir="rtl"] .lb .pv,[dir="rtl"] .lb .nx{transform:translateY(-50%) scaleX(-1)}

/* contact */
.t4 .form{display:grid;gap:16px}
.t4 .form .two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.t4 .form label{display:grid;gap:6px;font-size:13px;font-weight:600;color:var(--t1-navy)}
.t4 .form input,.t4 .form select,.t4 .form textarea{font:inherit;font-size:15px;padding:12px 14px;border:1px solid #c4cad6;border-radius:2px;background:#fff;color:var(--t1-ink);width:100%}
.t4 .form textarea{min-height:140px;resize:vertical}
.t4 .form .chk{grid-template-columns:auto 1fr;align-items:start;font-weight:500;color:#3d4350;line-height:1.5}
.t4 .form .chk input{width:18px;height:18px;margin-top:2px}
.t4 .form .chk a{text-decoration:underline}
.t4 .form .btn{justify-self:start;border:0;cursor:pointer;font-family:inherit}
.t4 .form .warn{font-size:13px;color:var(--t1-grey);background:var(--t1-soft);padding:12px 14px}
.t4 .hp{position:absolute;inset-inline-start:-9999px}
.t4 .req{color:var(--t1-red)}

/* legal */
.t4 .legal-body{max-width:760px;margin-inline:auto}
.t4 .legal-body .upd{font-size:13px;color:var(--t1-grey);margin-bottom:28px}
.t4 .legal-body ul{display:grid;gap:6px;margin:10px 0 0;padding-inline-start:20px;list-style:disc}
.t4 .legal-body li{font-size:14.5px;color:#3d4350;line-height:1.65}

/* home additions */
.t4 .strip-more{margin-top:26px}
.t4 .strip-more a{font-size:13px;font-weight:700;color:var(--t1-navy);text-decoration:underline;text-underline-offset:4px}
.t4 .cards ul a{text-decoration:underline;text-decoration-color:rgba(20,40,79,.25);text-underline-offset:3px}
.t4 .cards ul a:hover{color:var(--t1-red)}

/* footer practice list in two columns */
.t1 footer .fh{color:#fff;font-family:Montserrat,sans-serif;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px}
.t1[dir="rtl"] footer .fh{letter-spacing:0;font-size:14px;font-family:var(--ar-sans)}
.t4 footer .wrap{grid-template-columns:1.1fr 1fr 1.6fr 1fr}
.t4 footer .pl{columns:2;column-gap:20px}
.t4 footer .pl li{break-inside:avoid}
.t4 footer a:hover{color:#fff;text-decoration:underline}

@media (max-width:980px){
  .t4 .twocol,.t4 .bio{grid-template-columns:1fr}
  .t4 .aside,.t4 .bio .portrait{position:static}
  .t4 .bio .portrait{max-width:420px}
  .t4 .pgrid,.t4 .rgrid,.t4 .ocards,.t4 .people{grid-template-columns:repeat(2,minmax(0,1fr))}
  .t4 .facts{grid-template-columns:repeat(3,minmax(0,1fr))}
  .t4 footer .wrap{grid-template-columns:1fr 1fr}
}
@media (max-width:720px){
  .t4 .split{grid-template-columns:1fr}
  .t4 .t2 .banner .wrap{padding-block:120px 48px}
  .t4 .svcgrid,.t4 .form .two{grid-template-columns:1fr}
}
@media (max-width:560px){
  .t4 .pgrid,.t4 .rgrid,.t4 .ocards,.t4 .people,.t4 footer .wrap{grid-template-columns:1fr}
  .t4 .facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .t4 footer .pl{columns:1}
}
@media (prefers-reduced-motion:reduce){.t4 .pcard,.t4 .gal img{transition:none}}
/* the template's ".t1 nav" header rule must not reach in-page navigation */
.t4 nav.crumbs,.t4 nav.alist{display:block;margin-inline-start:0;gap:0;font-weight:inherit}
.t4 nav.crumbs{font-size:12px}
.t4 nav.alist{font-size:14px}
/* guides + faq */
.t4 .pcard .gk{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--t1-gold)}
.t4[dir="rtl"] .pcard .gk{letter-spacing:0;font-size:12.5px}
.t4 .prose .meta{font-size:13px;color:var(--t1-grey);margin-bottom:18px}
.t4 .take{background:var(--t1-beige);padding:22px 24px;margin-bottom:10px}
.t4 .take h2.H{margin:0 0 10px;font-size:16px}
.t4 .prose .note{margin-top:28px;font-size:13px;color:var(--t1-grey);border-top:1px solid var(--t1-line);padding-top:14px}
.t4 a.more-l{font-size:13px;font-weight:700;color:var(--t1-red)}
@media (max-width:480px){
  .t4 .t2 .logo small{letter-spacing:.12em;font-size:9.5px;white-space:nowrap}
  .t4 .t2 .logo b{font-size:15px;white-space:nowrap}
  .t4 .t2 .logo{gap:8px}
}
.t4 .t2 .banner.art h1{font-size:clamp(26px,3.2vw,40px);max-width:30ch;line-height:1.2}
.t4 .banner.art .crumbs li:last-child{max-width:40ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.t4 .form .ferr{font-size:14px;font-weight:600;color:var(--t1-red)}
