/* Praxis Model · the one shared footer (decision 8, Ralph approved 6 Nov 2026; PR #44).
   Same markup on every main page, generated from one template (praxis-knowledge
   website-handover/mobile-sweep/rig/footer/build.py). Logical properties throughout, so the
   Arabic pages mirror it with dir="rtl". Scoped to footer.uf so page styles for older footers
   never reach it. */
footer.uf{--uf-navy:#0F1722;--uf-gold:#C7A24C;--uf-gold-soft:#d8bd7e;--uf-ivory:#F1ECE2;--uf-slate:#9aa2ad;--uf-line:rgba(241,236,226,.12);
  display:block;position:relative;z-index:1;background:var(--uf-navy);color:#cdc7bb;font-family:'Inter',system-ui,sans-serif;font-weight:300;
  font-size:15px;line-height:1.5;text-align:start;margin:0;padding:0;border:0;border-top:1px solid var(--uf-line);-webkit-font-smoothing:antialiased}
footer.uf *{box-sizing:border-box}
footer.uf .uf-in{max-width:1120px;margin:0 auto;padding:56px 24px 40px}
footer.uf a,footer.uf button.uf-ck{color:inherit;text-decoration:none;background:none;border:0;font:inherit;cursor:pointer;padding:0;margin:0;letter-spacing:normal;text-transform:none}
footer.uf a:hover,footer.uf button.uf-ck:hover{color:var(--uf-gold-soft)}
footer.uf a:focus-visible,footer.uf button:focus-visible{outline:2px solid var(--uf-ivory);outline-offset:2px}
footer.uf .uf-h{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--uf-slate);margin:0 0 14px;font-weight:500;line-height:1.4}
footer.uf[dir=rtl] .uf-h,html[dir=rtl] footer.uf .uf-h{letter-spacing:0;font-size:13px}
footer.uf ul{list-style:none;margin:0;padding:0}
footer.uf .uf-top{display:grid;grid-template-columns:1.3fr 1fr;gap:34px 48px;padding-bottom:40px;border-bottom:1px solid var(--uf-line)}
footer.uf .uf-cta-h{font-family:'Fraunces',serif;font-weight:400;font-size:clamp(26px,3.2vw,36px);line-height:1.1;color:var(--uf-ivory);text-transform:uppercase;margin:0}
footer.uf .uf-cta-h em{display:block;font-style:italic;text-transform:none;color:var(--uf-gold)}
footer.uf .uf-btn{display:inline-flex;align-items:center;min-height:48px;margin-top:22px;padding:0 26px;background:var(--uf-gold);color:var(--uf-navy);font-weight:500;font-size:14px;letter-spacing:.02em;border-radius:0}
footer.uf .uf-btn:hover{background:var(--uf-gold-soft);color:var(--uf-navy)}
footer.uf .uf-reach a{display:flex;align-items:center;gap:12px;min-height:48px;padding:6px 0;border-bottom:1px solid var(--uf-line);color:var(--uf-ivory);font-size:16px;line-height:1.3}
footer.uf .uf-reach a small{display:block;color:var(--uf-slate);font-size:12.5px;margin-top:2px;font-family:'Inter',system-ui,sans-serif}
footer.uf .uf-reach svg{width:20px;height:20px;flex:0 0 auto;color:var(--uf-gold)}
footer.uf .uf-reach a.uf-mail{font-family:'Fraunces',serif;font-size:19px;color:var(--uf-gold)}
footer.uf .uf-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:30px 40px;padding:40px 0;border-bottom:1px solid var(--uf-line)}
footer.uf .uf-nav li a{display:flex;align-items:center;min-height:40px;font-size:15px;color:#cdc7bb}
footer.uf .uf-nav li a.uf-all{color:var(--uf-gold)}
footer.uf .uf-mid{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;flex-wrap:wrap;padding:32px 0;border-bottom:1px solid var(--uf-line)}
footer.uf .uf-soc{display:flex;gap:10px;flex-wrap:wrap}
footer.uf .uf-soc a{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(199,162,76,.45);color:var(--uf-gold);border-radius:0}
footer.uf .uf-soc svg{width:19px;height:19px}
footer.uf .uf-langw{width:100%;max-width:300px}
footer.uf .uf-lang{display:flex;border:1px solid var(--uf-line)}
footer.uf .uf-lang a{flex:1;min-width:72px;min-height:44px;display:flex;align-items:center;justify-content:center;font-size:14px;padding:0 14px}
footer.uf .uf-lang a[aria-current],footer.uf .uf-lang a.is-cur{background:rgba(199,162,76,.14);color:var(--uf-gold)}
footer.uf .uf-lang a+a{border-inline-start:1px solid var(--uf-line)}
footer.uf .uf-motto{font-family:'Fraunces',serif;font-style:italic;color:var(--uf-gold);font-size:15px;text-align:center;margin:0;padding:28px 0 10px}
footer.uf .uf-legal{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:0 6px;font-size:13px;color:var(--uf-slate);padding-top:6px}
footer.uf .uf-legal a,footer.uf .uf-legal button.uf-ck{min-height:44px;display:inline-flex;align-items:center;padding:0 8px;color:var(--uf-slate);font-size:13px}
footer.uf .uf-copy{text-align:center;font-size:12.5px;color:var(--uf-slate);line-height:1.7;margin:6px 0 0}
.uf-pre{max-width:1120px;margin:0 auto;padding:28px 24px;text-align:center;color:rgba(241,236,226,.6);font-size:13.5px;line-height:1.7}
.uf-pre a{color:#C7A24C;text-decoration:none;display:inline-flex;align-items:center;min-height:44px;padding:0 8px}
@media (max-width:767px){
  footer.uf .uf-in{padding:44px 24px 32px}
  footer.uf .uf-top{grid-template-columns:1fr}
  footer.uf .uf-nav{grid-template-columns:1fr 1fr;gap:26px 22px}
  footer.uf .uf-nav .uf-wide{grid-column:1 / -1}
  footer.uf .uf-nav .uf-wide ul{columns:2;column-gap:22px}
  footer.uf .uf-nav .uf-wide.uf-ans ul{columns:1}
  footer.uf .uf-legal .uf-sep{display:none}
  footer.uf .uf-legal{gap:0 4px}
  footer.uf .uf-mid{flex-direction:column;align-items:flex-start}
  footer.uf .uf-langw{max-width:none}
}
/* the slim strip (questionnaire, service agreement, 404) gains WhatsApp and the email */
.uf-slim-reach{display:flex;flex-wrap:wrap;justify-content:center;gap:0 14px;margin:6px 0;font-size:13px}
.uf-slim-reach a{display:inline-flex;align-items:center;min-height:44px;color:#C7A24C;text-decoration:none}
/* shield the footer from page-level element rules (nav, p, ul, li, small, em, button) */
footer.uf p,footer.uf ul,footer.uf li,footer.uf small,footer.uf em,footer.uf span{position:static;float:none;opacity:1;transform:none;visibility:visible}
footer.uf li{display:block;margin:0;padding:0;break-inside:avoid;-webkit-column-break-inside:avoid}
footer.uf .uf-nav,footer.uf .uf-mid,footer.uf .uf-top{position:static;inset:auto;width:auto;height:auto;opacity:1;transform:none;visibility:visible;background:none;box-shadow:none}
footer.uf#gdfoot{background:#0F1722;padding:0;text-align:start;border-top:1px solid rgba(241,236,226,.12)}
/* touch spacing (house rule: 8px between targets): each link keeps a 36px+ zone with 8px between rows */
footer.uf .uf-nav li a{min-height:36px}
footer.uf .uf-nav li+li{margin-top:8px}
footer.uf .uf-reach a+a{margin-top:8px}
footer.uf .uf-legal{gap:0 8px}
footer.uf .uf-legal{gap:8px 8px}
footer.uf .uf-lang{gap:8px;border:0}
footer.uf .uf-lang a{border:1px solid var(--uf-line)}
footer.uf .uf-lang a+a{border-inline-start:1px solid var(--uf-line)}
.uf-slim-reach{gap:8px 14px;margin:10px 0}
/* block 8 (V1-19): "Where we work" was a two-column CSS columns list; WebKit kept the 8px row gap on the first item of the
   second column, so Qatar..Oman sat 8px lower than Dubai..Jeddah. Same two columns, same order, same gaps, as a grid. */
@media (max-width:767px){
  footer.uf .uf-nav .uf-wide:not(.uf-ans) ul{columns:auto;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(5,auto);grid-auto-flow:column;column-gap:22px;row-gap:8px}
  footer.uf .uf-nav .uf-wide:not(.uf-ans) li+li{margin-top:0}
}
/* block 8 (V1-20): on phones the motto left "Money." alone on its last line; the two lines are balanced instead */
@media (max-width:767px){footer.uf .uf-motto{text-wrap:balance}}
