@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@500;600;700;800&family=Inter:wght@400;500;600;700&family=IBM+Plex+Sans+Arabic:wght@400;500;600;700&display=swap');

:root{
--ranza-magenta:#a91f5a;
--ranza-plum:#6f245c;
--ranza-navy:#171f47;
--ranza-navy-deep:#12183a;
--ranza-maroon:#690738;
--white:#ffffff;
--gray-50:#f7f7f9;
--gray-100:#eef0f3;
--gray-200:#e2e4ea;
--gray-300:#c9ccd6;
--gray-400:#9a9eac;
--gray-500:#6f7386;
--gray-600:#4f5265;
--gray-700:#363852;
--gray-900:#171f47;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:#ffffff;font-family:'Inter',system-ui,sans-serif;-webkit-font-smoothing:antialiased;}
a{color:#a91f5a;text-decoration:none;}
[hidden]{display:none !important;}
html[dir="rtl"] body{font-family:'IBM Plex Sans Arabic','Inter',system-ui,sans-serif;}
html[dir="rtl"] [style*="margin-left:auto"]{margin-left:0 !important;margin-right:auto !important;}
html[dir="rtl"] [style*="letter-spacing"]{letter-spacing:normal !important;}
html[dir="rtl"] [style*="border-left:4px"]{border-left:none !important;border-right:4px solid currentColor !important;}
img{max-width:100%;}

/* skip link */
.skip-link{position:absolute;left:-999px;top:auto;background:#a91f5a;color:#fff;padding:10px 16px;border-radius:0 0 6px 0;z-index:999;font-size:14px;font-weight:600;}
.skip-link:focus{left:0;top:0;}

/* mobile nav toggle */
.nav-toggle{display:none;background:none;border:1px solid rgba(255,255,255,0.24);color:#fff;border-radius:6px;width:40px;height:40px;align-items:center;justify-content:center;cursor:pointer;flex:none;}
.nav-toggle svg{width:20px;height:20px;}

/* consent banner */
#ranza-consent{position:fixed;left:16px;right:16px;bottom:16px;max-width:640px;margin:0 auto;background:#171f47;color:#e8eaf3;border:1px solid rgba(255,255,255,0.14);border-radius:12px;padding:18px 20px;font-size:13.5px;line-height:1.6;box-shadow:0 12px 40px rgba(0,0,0,0.28);z-index:999;display:flex;flex-wrap:wrap;gap:14px;align-items:center;}
#ranza-consent p{margin:0;flex:1 1 260px;}
#ranza-consent .btn{border:none;border-radius:6px;padding:9px 16px;font-size:13.5px;font-weight:600;cursor:pointer;font-family:'Inter',sans-serif;}
#ranza-consent .accept{background:#a91f5a;color:#fff;}
#ranza-consent .decline{background:transparent;color:#c9ccd6;border:1px solid rgba(255,255,255,0.24);}

/* ===== Responsive layer =====
   The page markup uses fixed inline grid-template-columns (authored in the
   design file). We override those by targeting the literal style substrings,
   since every page reuses the same handful of section/grid patterns. */
@media (max-width:980px){
  header > div{padding:0 20px !important;}
  header nav{display:none !important;}
  header[data-nav-open="1"] nav{display:flex !important;position:absolute;top:74px;left:0;right:0;background:#171f47;flex-direction:column;align-items:flex-start;gap:0;padding:8px 20px 18px;border-bottom:1px solid rgba(255,255,255,0.1);}
  header[data-nav-open="1"] nav a{padding:12px 0;width:100%;}
  .nav-toggle{display:flex;}
  [style*="grid-template-columns:1.05fr 0.95fr"],
  [style*="grid-template-columns:1fr 1fr"],
  [style*="grid-template-columns:0.85fr 1.15fr"],
  [style*="grid-template-columns:1.4fr 1fr 1fr 1fr"],
  [style*="grid-template-columns:1.1fr 1fr"]{grid-template-columns:1fr !important;}
  [style*="grid-template-columns:repeat(4,1fr)"],
  [style*="grid-template-columns:repeat(3,1fr)"]{grid-template-columns:repeat(2,1fr) !important;}
  section > div{padding-left:20px !important;padding-right:20px !important;}
  #top > div{padding:64px 20px 56px !important;}
  #top h1{font-size:40px !important;}
  h2[style*="font-size:40px"]{font-size:30px !important;}
}
@media (max-width:600px){
  [style*="grid-template-columns:repeat(4,1fr)"],
  [style*="grid-template-columns:repeat(3,1fr)"],
  [style*="grid-template-columns:repeat(2,1fr)"]{grid-template-columns:1fr !important;}
  #top h1{font-size:32px !important;}
  footer > div:first-child{grid-template-columns:1fr !important;}
}
