@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=Manrope:wght@500;700;800&display=swap');

:root {
  color-scheme: light;
  --navy: #082b4a;
  --navy-deep: #061f37;
  --blue: #0d5b9d;
  --blue-strong: #0a4c82;
  --blue-light: #edf7ff;
  --gold: #f6a623;
  --gold-deep: #e57d16;
  --ink: #142b3e;
  --muted: #5d7282;
  --paper: #f6f9fb;
  --white: #fff;
  --line: rgba(10, 76, 130, 0.12);
  --brand-blue: #0d5b9d;
  --brand-blue-deep: #072d4b;
  --brand-orange: #f4a11a;
  --brand-orange-deep: #d8840e;
  --brand-surface: rgba(255,255,255,.96);
  --brand-surface-soft: rgba(238,246,250,.92);
  --shadow-soft: rgba(8,43,74,.12);
  --shadow-strong: rgba(8,43,74,.18);
  --font-body: 'Inter', 'Segoe UI', sans-serif;
  --font-display: 'Manrope', 'Segoe UI', sans-serif;
  font-family: var(--font-body);
  color: var(--ink);
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  scroll-behavior: smooth;
}

*, *::before, *::after { box-sizing: border-box; }
body {
  margin: 0;
  min-width: 0;
  background:
    radial-gradient(circle at 10% 10%, rgba(13,91,157,.10), transparent 26%),
    radial-gradient(circle at 86% 74%, rgba(244,161,26,.14), transparent 26%),
    linear-gradient(135deg, #f5fafc 0%, #ffffff 45%, #fff6eb 100%);
}
a { color: inherit; text-decoration: none; }
button { font: inherit; }
.shell { width: min(1160px, calc(100% - 64px)); margin-inline: auto; }
.skip-link { position: fixed; top: -60px; left: 16px; z-index: 20; padding: 12px 18px; background: #fff; color: var(--navy); }
.skip-link:focus { top: 12px; }

.site-header { position: absolute; z-index: 5; inset: 0 0 auto; height: 82px; color: #fff; }
.detail-header { position: absolute; color: var(--navy); background: rgba(251,250,247,.95); border-bottom: 1px solid rgba(8,43,74,.08); box-shadow: 0 10px 28px rgba(8,43,74,.06); }
.header-inner { display: flex; height: 100%; align-items: center; justify-content: space-between; }
.brand { display: inline-flex; flex: 0 0 auto; align-items: center; color: inherit; }
.brand img { display: block; width: 180px; height: auto; padding: 0; border-radius: 0; background: transparent; }
.site-header:not(.detail-header) .brand { padding: 5px 8px; border: 1px solid rgba(255,255,255,.58); border-radius: 11px; background: rgba(255,255,255,.94); box-shadow: 0 8px 24px rgba(0,0,0,.14); backdrop-filter: blur(8px); }
.brand-footer img { width: 150px; }
.brand-mark { position: relative; width: 31px; height: 31px; display: grid; grid-template-columns: repeat(2, 1fr); gap: 3px; transform: rotate(-7deg); }
.brand-mark span { border: 1.6px solid var(--gold); border-radius: 4px 4px 1px 4px; }
.brand-mark span:nth-child(2), .brand-mark span:nth-child(3) { border-color: #58b3df; }
.brand-mark::after { content: ''; position: absolute; width: 6px; height: 6px; border-radius: 50%; right: -3px; top: -3px; background: var(--gold); }
.brand-type { display: flex; flex-direction: column; line-height: .93; }
.brand-type strong { font-family: var(--font-display); font-size: 17px; letter-spacing: .12em; font-weight: 800; }
.brand-type small { color: var(--gold); font-size: 10px; font-weight: 700; letter-spacing: .1em; }
.primary-nav { display: flex; align-items: center; gap: clamp(19px, 2.4vw, 34px); font-size: 12px; font-weight: 600; }
.primary-nav > a:not(.nav-cta) { color: rgba(255,255,255,.82); transition: color .2s ease; }
.detail-header .primary-nav { background: transparent; border: 0; box-shadow: none; }
.detail-header .primary-nav > a:not(.nav-cta) { color: #385064; }
.detail-header .primary-nav > a:not(.nav-cta):hover { color: var(--blue); }
.primary-nav a[aria-current="page"] { color: var(--gold); }
.detail-header .primary-nav a[aria-current="page"] { color: var(--blue); }
.language-switch { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 3px; padding: 4px; border: 1px solid rgba(8,43,74,.13); border-radius: 999px; background: #edf3f6; box-shadow: inset 0 1px 2px rgba(8,43,74,.05); }
.language-option { min-width: 39px; padding: 7px 10px; border: 0; border-radius: 999px; background: transparent; color: #536d7e; cursor: pointer; font-size: 12px; font-weight: 800; letter-spacing: .04em; transition: background .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease; }
.language-option:hover { color: var(--navy); }
.language-option[aria-pressed="true"] { background: var(--navy); color: #fff; box-shadow: 0 3px 9px rgba(8,43,74,.2); }
.detail-header .language-option[aria-pressed="true"] { background: var(--navy); color: #fff; }
.language-option:active { transform: scale(.96); }
.language-option:focus-visible { outline: 3px solid var(--gold); outline-offset: 3px; }
.primary-nav > a:not(.nav-cta):hover { color: var(--gold); }
.nav-cta { padding: 12px 17px; border-radius: 30px; background: var(--gold); color: var(--navy-deep); font-size: 11px; font-weight: 700; }
.nav-cta span { margin-left: 8px; }
.menu-toggle { display: none; }
.detail-header .menu-toggle { color: var(--navy); border-color: rgba(8,43,74,.25); }
.detail-header .menu-toggle span { background: currentColor; }

.hero { position: relative; min-height: 680px; overflow: hidden; color: #fff; background: var(--navy-deep); }
.hero-image { position: absolute; inset: 0; background-image: url('assets/accounting-work.jpg'); background-size: cover; background-position: center 48%; opacity: .58; }
.hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(4,26,46,.96) 0%, rgba(5,35,59,.88) 36%, rgba(6,36,59,.36) 72%, rgba(6,31,51,.2) 100%), linear-gradient(0deg, rgba(6,31,51,.4), transparent 32%); }
.hero-content { position: relative; min-height: 680px; display: flex; align-items: center; }
.hero-copy { position: relative; z-index: 1; width: min(610px, 67%); padding-top: 37px; }
.eyebrow { display: inline-flex; align-items: center; gap: 9px; color: var(--blue); font-size: 9px; line-height: 1.4; font-weight: 700; letter-spacing: .16em; }
.eyebrow > span:first-child { width: 19px; height: 1px; background: var(--gold); }
.hero-eyebrow, .eyebrow-light { color: rgba(255,255,255,.77); }
.hero h1, .section-heading h2, .goals-heading h2, .purpose-inner > h2, .contact-layout h2 { font-family: var(--font-display); font-weight: 700; letter-spacing: -.055em; }
.hero h1 { max-width: 640px; margin: 23px 0 17px; font-size: clamp(49px, 6.1vw, 79px); line-height: 1.04; }
.hero h1 em, .section-heading h2 em, .goals-heading h2 em { color: var(--gold); font-style: normal; }
.hero-description { max-width: 470px; margin: 0; color: rgba(255,255,255,.76); font-size: 15px; line-height: 1.8; }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 29px; }
.button { display: inline-flex; min-height: 46px; align-items: center; justify-content: center; gap: 19px; padding: 0 19px; border-radius: 4px; font-size: 11px; font-weight: 700; transition: transform .2s ease, background .2s ease; }
.button:hover { transform: translateY(-2px); }
.button-primary { background: var(--gold); color: var(--navy-deep); }
.button-primary:hover { background: #ffc251; }
.button-outline { border: 1px solid rgba(255,255,255,.48); color: #fff; }
.button-outline:hover { background: rgba(255,255,255,.1); }
.hero-note { display: flex; align-items: center; gap: 10px; margin-top: 49px; color: rgba(255,255,255,.7); font-size: 11px; }
.note-line { width: 30px; height: 1px; background: var(--gold); }
.hero-card { position: absolute; right: 7.5%; top: 42%; width: 217px; padding: 19px 20px 17px; border: 1px solid rgba(255,255,255,.28); border-radius: 5px; background: rgba(255,255,255,.91); color: var(--navy); box-shadow: 0 14px 44px rgba(0,0,0,.12); backdrop-filter: blur(7px); transform: translateY(-17%); }
.hero-card-top { display: flex; align-items: center; justify-content: space-between; color: #677988; font-size: 7px; font-weight: 700; letter-spacing: .12em; }
.mini-icon { color: var(--gold); font-size: 18px; }
.hero-card > strong { display: block; margin: 12px 0 19px; font-family: var(--font-display); font-size: 17px; line-height: 1.35; letter-spacing: -.035em; }
.hero-card-bottom { display: flex; align-items: center; gap: 8px; padding-top: 12px; border-top: 1px solid #e4e9eb; color: #758492; font-size: 8px; font-weight: 700; letter-spacing: .13em; }
.card-dot { width: 4px; height: 4px; border-radius: 50%; background: var(--gold); }
.hero-index { position: absolute; bottom: 27px; left: 0; color: rgba(255,255,255,.55); font-size: 9px; font-weight: 600; letter-spacing: .13em; }
.hero-index span { margin: 0 8px; color: var(--gold); }
.scroll-cue { position: absolute; right: 0; bottom: 0; width: 42px; height: 58px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.23); border-bottom: 0; }
.scroll-cue span { width: 1px; height: 22px; background: var(--gold); animation: scroll 1.5s infinite; }
@keyframes scroll { 0%,100% { transform: scaleY(.65); opacity: .45; } 50% { transform: scaleY(1); opacity: 1; } }

.section-pad { padding-block: 100px; }
.intro-section { background: var(--paper); }
.intro-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 80px; align-items: start; }
.section-heading h2, .goals-heading h2 { margin: 17px 0 0; color: var(--navy); font-size: clamp(39px, 4.2vw, 54px); line-height: 1.13; }
.section-heading h2 em { color: var(--blue); }
.intro-copy { max-width: 545px; padding-top: 31px; }
.intro-lead { margin: 0 0 14px; color: var(--navy); font-family: var(--font-display); font-size: 20px; line-height: 1.5; font-weight: 600; letter-spacing: -.025em; }
.body-copy { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.9; }
.text-link { display: inline-flex; align-items: center; gap: 15px; margin-top: 22px; color: var(--blue); font-size: 11px; font-weight: 700; }
.text-link span:last-child { color: var(--gold); font-size: 16px; transition: transform .2s ease; }
.text-link:hover span:last-child { transform: translate(3px, -3px); }
.info-strip { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 61px; padding-block: 23px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.info-item { display: flex; align-items: center; gap: 14px; padding: 4px 22px; border-right: 1px solid var(--line); }
.info-item:first-child { padding-left: 0; }
.info-item:last-child { border-right: 0; }
.info-icon { color: var(--blue); font-size: 20px; }
.info-item div { display: flex; flex-direction: column; gap: 5px; }
.info-item small, .contact-row small { color: #8898a1; font-size: 8px; font-weight: 700; letter-spacing: .13em; }
.info-item strong { color: var(--navy); font-size: 11px; font-weight: 600; }

.services-section { background: #f1f5f4; }
.section-topline, .values-header { display: flex; align-items: end; justify-content: space-between; gap: 35px; margin-bottom: 39px; }
.section-aside { max-width: 340px; margin: 0 0 5px; color: var(--muted); font-size: 13px; line-height: 1.8; }
.services-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.service-card { position: relative; min-height: 236px; padding: 0 25px 23px; overflow: hidden; border: 1px solid #e5ebea; border-radius: 5px; background: rgba(255,255,255,.96); transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.service-card:hover { transform: translateY(-4px); border-color: #d2e0e4; box-shadow: 0 14px 35px rgba(16,56,77,.07); }
.service-card-image { display: block; width: calc(100% + 50px); height: 145px; margin: 0 -25px 20px; object-fit: cover; object-position: center 45%; }
.service-number { position: absolute; top: 158px; right: 24px; color: #b8c3c6; font-family: var(--font-display); font-size: 11px; font-weight: 700; }
.service-symbol { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 50%; background: #e8f2f6; color: var(--blue); font-size: 17px; }
.service-card:nth-child(2) .service-symbol { background: #f8f0df; color: #c6841d; }
.service-card:nth-child(3) .service-symbol { background: #e8f1e9; color: #458266; }
.service-card h3 { margin: 14px 0 9px; color: var(--navy); font-family: var(--font-display); font-size: 16px; letter-spacing: -.03em; }
.service-card > p { min-height: 39px; margin: 0; color: var(--muted); font-size: 11px; line-height: 1.65; }
.service-details { margin: 15px 0 0; padding: 14px 0 0 15px; border-top: 1px solid #e8eceb; color: #647883; font-size: 10px; line-height: 1.8; }
.service-details li { padding-left: 2px; }
.service-details li strong { display: block; margin-bottom: 2px; color: var(--navy); font-size: 10px; }
.service-details li span { display: block; }
.service-more { display: inline-flex; align-items: center; gap: 10px; margin-top: 14px; color: var(--blue); font-size: 10px; font-weight: 700; }
.service-more span:last-child { color: var(--gold); font-size: 15px; }
.service-card-detailed { max-width: 850px; min-height: unset; }
.service-card-detailed .service-card-image { height: 245px; }
.service-card-detailed .service-header { margin-top: -42px; }
.service-card-detailed .service-details { display: grid; grid-template-columns: repeat(2, 1fr); column-gap: 35px; row-gap: 8px; }
.detail-service-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 17px; align-items: start; }
.detail-service-grid .service-card { min-height: 0; }
.detail-service-grid.single-service {
  grid-template-columns: minmax(0, 900px);
  justify-content: center;
}
.detail-service-grid.single-service .service-card-detailed {
  max-width: 100%;
  padding-bottom: 26px;
}
.detail-service-intro { max-width: 740px; margin-bottom: 32px; }
.detail-service-intro > p { color: var(--muted); font-size: 14px; line-height: 1.85; }

.clients-section { background: #fff; }
.client-logo-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 19px; }
.clients-section .client-logo-grid:not(.client-logo-grid-compact) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.clients-section .client-logo-grid:not(.client-logo-grid-compact) .client-logo-card:last-child:nth-child(3n + 1) { grid-column: 2; }
.client-logo-grid-compact { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.client-logo-card { display: flex; min-height: 146px; flex-direction: column; align-items: center; justify-content: center; gap: 9px; margin: 0; padding: 15px; overflow: hidden; border: 1px solid #edf0ef; border-radius: 17px; background: #fff; box-shadow: 0 4px 14px rgba(20,43,62,.09); transition: transform .2s ease, box-shadow .2s ease; }
.client-logo-card:hover { transform: translateY(-4px); box-shadow: 0 12px 27px rgba(20,43,62,.13); }
.client-logo-card img { display: block; width: 100%; height: 95px; object-fit: contain; }
.client-logo-card figcaption { color: #667a88; font-size: 10px; text-align: center; }
.client-logo-grid-compact .client-logo-card { min-height: 125px; padding: 11px; }
.client-logo-grid-compact .client-logo-card img { height: 88px; }
.client-logo-grid-compact .client-logo-card figcaption { display: none; }

.detail-hero { display: flex; min-height: 280px; align-items: center; padding: 92px 0 38px; color: #fff; background: linear-gradient(110deg, rgba(5,31,53,.97), rgba(8,58,91,.86)), url('assets/audit-work.jpg') center/cover; }
.detail-hero-short { min-height: 260px; }
.detail-hero-inner { padding-top: 12px; }
.detail-hero h1 { max-width: 790px; margin: 16px 0 12px; font-family: var(--font-display); font-size: clamp(34px, 4.4vw, 56px); line-height: 1.08; letter-spacing: -.055em; }
.detail-hero h1 em { color: var(--gold); font-style: normal; }
.detail-hero p { max-width: 680px; margin: 0 0 25px; color: rgba(255,255,255,.75); font-size: 15px; line-height: 1.8; }
.detail-hero .eyebrow a { color: inherit; }
.detail-two-col { display: grid; grid-template-columns: 1.2fr .8fr; gap: 90px; align-items: start; }
.detail-two-col > div:first-child > p { max-width: 690px; color: var(--muted); font-size: 14px; line-height: 1.9; }
.detail-title { margin: 18px 0 20px; color: var(--navy); font-family: var(--font-display); font-size: clamp(32px, 4vw, 44px); letter-spacing: -.04em; }
.detail-aside { padding: 30px; border-left: 2px solid var(--gold); background: #f1f5f4; color: var(--muted); font-size: 12px; line-height: 1.8; }
.detail-aside-number { color: var(--navy); font-family: var(--font-display); font-size: 25px; font-weight: 800; letter-spacing: .12em; }
.detail-aside p { margin: 10px 0 0; }
.detail-purpose { margin-top: 0; }
.values-grid-detail { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.contact-page-grid { display: grid; grid-template-columns: .8fr 1fr; gap: 60px; align-items: center; }
.contact-page-grid > div:first-child > p { max-width: 380px; color: var(--muted); font-size: 13px; line-height: 1.8; }
.contact-card-light { border-color: #e5e9e8; background: #fff; box-shadow: 0 12px 35px rgba(8,43,74,.07); }
.contact-card-light .contact-row { border-color: #e9edec; }
.contact-card-light .contact-icon { border-color: #dce6e9; color: var(--blue); }
.contact-card-light .contact-row small { color: #8898a1; }
.contact-card-light .contact-row strong { color: var(--navy); }
.contact-card-light .contact-location { color: var(--muted); }

.nav-cta:focus-visible, .button:focus-visible, a:focus-visible, button:focus-visible { outline: 3px solid #f8b83e; outline-offset: 3px; }

.purpose-section { display: grid; grid-template-columns: 1fr 1.1fr; min-height: 560px; background: var(--navy); }
.purpose-photo { min-height: 560px; background: url('assets/advisory-work.jpg') center/cover; }
.purpose-panel { display: flex; align-items: center; padding: 69px clamp(42px, 7vw, 102px); color: #fff; background: linear-gradient(135deg, #0c4168 0%, #082b4a 70%, #06213b 100%); }
.purpose-inner { max-width: 520px; }
.purpose-inner > h2, .contact-layout h2 { margin: 18px 0 30px; font-size: clamp(39px, 4.1vw, 54px); line-height: 1.13; }
.purpose-inner > h2 em, .contact-layout h2 em { color: var(--gold); font-style: normal; }
.purpose-statements { display: grid; gap: 22px; margin-bottom: 28px; }
.purpose-statement { display: grid; grid-template-columns: 37px 1fr; gap: 12px; }
.statement-index { padding-top: 3px; color: var(--gold); font-family: var(--font-display); font-size: 11px; font-weight: 700; }
.purpose-statement h3 { margin: 0 0 6px; font-family: var(--font-display); font-size: 13px; }
.purpose-statement p { max-width: 410px; margin: 0; color: rgba(255,255,255,.68); font-size: 11px; line-height: 1.75; }
.button-light { background: #fff; color: var(--navy); }
.button-light:hover { background: #f1f3f3; }

.goals-section { background: var(--paper); }
.goals-layout { display: grid; grid-template-columns: .75fr 1.25fr; gap: 88px; }
.goals-heading { position: sticky; top: 36px; align-self: start; }
.goals-heading > p { max-width: 290px; margin: 18px 0 0; color: var(--muted); font-size: 12px; line-height: 1.8; }
.goals-list { border-top: 1px solid var(--line); }
.goal-row { display: grid; grid-template-columns: 42px 1fr; gap: 14px; padding: 20px 0 19px; border-bottom: 1px solid var(--line); }
.goal-index { color: var(--gold); font-family: var(--font-display); font-size: 11px; font-weight: 700; }
.goal-row h3 { margin: 0 0 6px; color: var(--navy); font-family: var(--font-display); font-size: 14px; }
.goal-row p { max-width: 520px; margin: 0; color: var(--muted); font-size: 11px; line-height: 1.75; }

.values-section { background: #eef4f5; }
.values-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.value-card { min-height: 168px; padding: 22px 21px; border: 1px solid rgba(9,54,78,.08); border-radius: 4px; background: rgba(255,255,255,.76); }
.value-card > span { color: var(--gold); font-family: var(--font-display); font-size: 10px; font-weight: 700; letter-spacing: .12em; }
.value-card h3 { margin: 13px 0 7px; color: var(--navy); font-family: var(--font-display); font-size: 14px; }
.value-card p { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.75; }

.contact-section { position: relative; overflow: hidden; padding: 77px 0 0; color: #fff; background: var(--navy-deep); }
.contact-glow { position: absolute; top: -240px; right: -120px; width: 600px; height: 600px; border-radius: 50%; background: radial-gradient(circle, rgba(21,101,151,.35), transparent 68%); pointer-events: none; }
.contact-layout { position: relative; display: grid; grid-template-columns: 1fr .86fr; gap: 70px; align-items: center; padding-bottom: 73px; }
.contact-layout h2 { margin-bottom: 16px; }
.contact-layout > div:first-child > p { max-width: 360px; margin: 0; color: rgba(255,255,255,.64); font-size: 12px; line-height: 1.8; }
.contact-card { padding: 8px 22px; border: 1px solid rgba(255,255,255,.12); border-radius: 5px; background: rgba(255,255,255,.05); }
.contact-row { display: flex; align-items: center; gap: 13px; min-height: 68px; border-bottom: 1px solid rgba(255,255,255,.1); }
.contact-icon { display: grid; width: 32px; height: 32px; flex: 0 0 auto; place-items: center; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; color: var(--gold); font-size: 16px; }
.contact-row > span:nth-child(2) { display: flex; flex: 1; flex-direction: column; gap: 5px; }
.contact-row small { color: rgba(255,255,255,.45); }
.contact-row strong { color: #fff; font-size: 12px; font-weight: 500; }
.contact-arrow { color: var(--gold); font-size: 17px; }
.contact-location { display: flex; align-items: center; gap: 11px; padding: 16px 0 13px 5px; color: rgba(255,255,255,.65); font-size: 10px; }
.location-pin { color: var(--gold); font-size: 16px; }
.contact-footer { position: relative; display: flex; justify-content: space-between; padding: 17px 0; border-top: 1px solid rgba(255,255,255,.12); color: rgba(255,255,255,.48); font-size: 10px; }
.contact-footer a { color: rgba(255,255,255,.8); }
.site-footer {
  background: linear-gradient(135deg, rgba(13,91,157,.95) 0%, rgba(255,255,255,.88) 50%, rgba(244,161,26,.76) 100%);
  color: #173a59;
  min-height: 130px;
  padding: 18px 0;
}
.footer-inner { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 20px; font-size: 9px; }
.footer-inner p { margin: 0; }
.footer-inner > span[data-i18n="footerLocation"] { color: rgba(23,58,89,.88); line-height: 1.5; }
.site-footer .brand-footer { background: rgba(255,255,255,.6); border: 1px solid rgba(13,91,157,.08); }
.brand-footer .brand-type strong { font-size: 14px; }
.brand-footer .brand-type small { font-size: 8px; }
.brand-footer .brand-mark { width: 26px; height: 26px; }

@media (min-width: 1500px) { .hero, .hero-content { min-height: 760px; } }
@media (max-width: 900px) {
  .shell { width: min(100% - 44px, 700px); }
  .menu-toggle { display: flex; width: 40px; height: 40px; flex-direction: column; align-items: center; justify-content: center; gap: 6px; border: 1px solid rgba(255,255,255,.36); border-radius: 50%; background: transparent; color: #fff; cursor: pointer; }
  .menu-toggle span { width: 15px; height: 1px; background: currentColor; transition: transform .2s ease; }
.site-header:not(.detail-header) .brand {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}
.primary-nav > a { white-space: nowrap; }
html[lang="so"] .primary-nav { gap: clamp(10px, 1.25vw, 18px); }
html[lang="so"] .primary-nav > a:not(.nav-cta) { font-size: 13px; }
  .menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(3.5px) rotate(45deg); }
  .client-ribbon { width: calc(100vw - 40px); margin-top: 18px; }
  .detail-header .menu-toggle { color: var(--navy); border-color: rgba(8,43,74,.25); }
  .primary-nav { position: absolute; top: 72px; left: 22px; right: 22px; display: none; align-items: stretch; gap: 0; padding: 10px 18px 17px; border: 1px solid rgba(255,255,255,.13); border-radius: 5px; background: #082b4a; box-shadow: 0 15px 35px rgba(0,0,0,.22); font-size: 13px; }
  .primary-nav.is-open { display: flex; flex-direction: column; }
  .primary-nav > a:not(.nav-cta) { padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,.1); }
  .detail-header .primary-nav { background: #fff; border-color: #e1e8e8; }
  .detail-header .primary-nav > a:not(.nav-cta) { border-color: #e8ecec; color: var(--navy); }
  .language-switch { align-self: flex-start; margin: 12px 0; }
  .nav-cta { align-self: flex-start; margin-top: 3px; }
  .brand:not(.brand-footer) img { width: 150px; }
  .nav-cta { padding-inline: 13px; }
  .hero, .hero-content { min-height: 640px; }
  .hero-copy { width: 75%; }
  .hero-card { right: 2%; width: 185px; }
  .intro-grid { gap: 38px; }
  .purpose-section { grid-template-columns: .8fr 1.2fr; }
  .purpose-panel { padding-inline: 40px; }
  .goals-layout { gap: 45px; }
  .client-logo-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .client-logo-grid-compact { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 9px; }
  .client-logo-grid-compact .client-logo-card { min-height: 94px; }
  .client-logo-grid-compact .client-logo-card img { height: 70px; }
  .detail-two-col, .contact-page-grid { gap: 40px; }
}
@media (max-width: 680px) {
  .shell { width: calc(100% - 40px); }
  .site-header { height: 69px; }
  .brand:not(.brand-footer) img { width: 146px; }
  .primary-nav { position: absolute; top: 61px; left: 20px; right: 20px; display: none; align-items: stretch; gap: 0; padding: 10px 18px 17px; border: 1px solid rgba(255,255,255,.13); border-radius: 5px; background: #082b4a; box-shadow: 0 15px 35px rgba(0,0,0,.22); font-size: 13px; }
  .detail-header .primary-nav { background: #fff; border-color: #e1e8e8; }
  .primary-nav.is-open { display: flex; flex-direction: column; }
  .primary-nav > a:not(.nav-cta) { padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,.1); }
  .detail-header .primary-nav > a:not(.nav-cta) { border-color: #e8ecec; color: var(--navy); }
  .language-switch { align-self: flex-start; margin: 12px 0; }
  .nav-cta { align-self: flex-start; margin-top: 3px; }
  .hero, .hero-content { min-height: 720px; }
  .hero-image { background-position: 57% center; }
  .hero-shade { background: linear-gradient(90deg, rgba(4,26,46,.95), rgba(5,35,59,.70)), linear-gradient(0deg, rgba(6,31,51,.48), transparent 46%); }
  .hero-content { align-items: flex-start; padding-top: 150px; }
  .hero-copy { width: 100%; padding-top: 0; }
  .hero h1 { max-width: 500px; margin-top: 20px; font-size: clamp(46px, 11.5vw, 68px); }
  .hero-description { max-width: 430px; font-size: 13px; }
  .hero-card { right: 0; top: auto; bottom: 88px; width: 191px; transform: none; }
  .hero-note { margin-top: 28px; }
  .hero-index { bottom: 26px; }
  .scroll-cue { right: 0; }
  .section-pad { padding-block: 72px; }
  .intro-grid { grid-template-columns: 1fr; gap: 14px; }
  .intro-copy { padding-top: 4px; }
  .section-heading h2, .goals-heading h2 { font-size: 43px; }
  .intro-lead { font-size: 18px; }
  .info-strip { grid-template-columns: 1fr; margin-top: 37px; padding-block: 8px; }
  .info-item, .info-item:first-child { min-height: 58px; padding: 9px 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .info-item:last-child { border-bottom: 0; }
  .section-topline, .values-header { display: block; margin-bottom: 28px; }
  .section-aside { max-width: 430px; margin-top: 17px; }
  .services-grid { grid-template-columns: 1fr; gap: 10px; }
  .service-card { min-height: auto; padding: 0 22px 22px; }
  .service-card-image { width: calc(100% + 44px); height: 170px; margin: 0 -22px 18px; }
  .service-number { top: 184px; right: 21px; }
  .service-card > p { min-height: 0; }
  .detail-service-grid { grid-template-columns: 1fr; }
  .service-card-detailed .service-details { grid-template-columns: 1fr; }
  .service-card-detailed .service-card-image { height: 200px; }
  .client-logo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .client-logo-grid-compact { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .client-logo-grid-compact .client-logo-card { min-height: 105px; }
  .client-logo-grid-compact .client-logo-card img { height: 75px; }
  .purpose-section { grid-template-columns: 1fr; }
  .purpose-photo { min-height: 250px; background-position: center 48%; }
  .purpose-panel { padding: 55px 24px 58px; }
  .purpose-inner > h2, .contact-layout h2 { font-size: 43px; }
  .goals-layout { grid-template-columns: 1fr; gap: 35px; }
  .goals-heading { position: static; }
  .goals-heading h2 { font-size: clamp(34px, 9vw, 40px); overflow-wrap: anywhere; }
  .goals-heading > p { max-width: 430px; }
  .values-grid { grid-template-columns: repeat(2, 1fr); }
  .value-card { min-height: 165px; padding: 18px 16px; }
  .contact-section { padding-top: 62px; }
  .contact-layout { grid-template-columns: 1fr; gap: 30px; padding-bottom: 50px; }
  .detail-hero { min-height: 440px; padding: 120px 0 54px; }
  .detail-hero-short { min-height: 390px; }
  .detail-hero h1 { font-size: clamp(40px, 11vw, 55px); overflow-wrap: anywhere; }
  .detail-hero p { font-size: 13px; }
  .detail-two-col, .contact-page-grid { grid-template-columns: 1fr; gap: 26px; }
  .detail-aside { padding: 22px; }
  .values-grid-detail { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .contact-card { padding-inline: 15px; }
  .contact-row strong { font-size: 11px; }
  .footer-inner { min-height: 91px; flex-wrap: wrap; justify-content: space-between; padding-block: 15px; }
  .footer-inner > span { display: none; }
}
@media (max-width: 390px) {
  .hero-card { width: 174px; }
  .hero h1 { font-size: 45px; }
  .values-grid { grid-template-columns: 1fr; }
  .value-card { min-height: unset; }
  .contact-footer { gap: 10px; font-size: 9px; }
  .client-logo-card { min-height: 124px; padding: 10px; }
  .client-logo-card img { height: 78px; }
  .values-grid-detail { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Brighter, more confident visual refresh */
.site-header, .detail-header {
  height: 88px;
  color: var(--navy);
  background: rgba(255,255,255,.94);
  border-bottom: 1px solid rgba(8,43,74,.08);
  box-shadow: 0 8px 28px rgba(8,43,74,.08);
  backdrop-filter: blur(14px);
}
.site-header:not(.detail-header) .brand { background: transparent; border: 0; box-shadow: none; backdrop-filter: none; padding: 0; }
.primary-nav { gap: clamp(14px, 1.8vw, 26px); font-size: 14px; font-weight: 700; }
.primary-nav > a:not(.nav-cta), .detail-header .primary-nav > a:not(.nav-cta) { color: #23465f; }
.primary-nav > a:not(.nav-cta):hover, .detail-header .primary-nav > a:not(.nav-cta):hover { color: var(--blue); }
.primary-nav a[aria-current="page"], .detail-header .primary-nav a[aria-current="page"] { color: #c47b0b; }
.nav-cta { padding: 14px 19px; font-size: 13px; box-shadow: 0 7px 17px rgba(239,167,45,.28); }
.language-switch { border-color: rgba(8,43,74,.16); }
.hero { padding-top: 88px; }
.hero-image { opacity: .92; filter: saturate(1.12) contrast(1.03); }
.hero-shade { background: linear-gradient(90deg, rgba(4,26,46,.78) 0%, rgba(5,35,59,.66) 35%, rgba(6,36,59,.13) 72%, rgba(6,31,51,.04) 100%), linear-gradient(0deg, rgba(6,31,51,.2), transparent 34%); }
.hero-content { min-height: 680px; padding-top: 30px; }
.hero h1 { font-size: clamp(56px, 6.5vw, 86px); letter-spacing: -.06em; }
.hero-description { color: rgba(255,255,255,.93); font-size: 17px; line-height: 1.75; }
.hero-eyebrow, .eyebrow-light { color: rgba(255,255,255,.92); }
.button { min-height: 52px; padding-inline: 22px; font-size: 13px; }
.hero-card { border-color: rgba(255,255,255,.7); background: rgba(255,255,255,.96); box-shadow: 0 20px 55px rgba(0,0,0,.2); }
.section-pad { padding-block: 112px; }
.section-heading h2, .goals-heading h2 { font-size: clamp(44px, 4.7vw, 62px); }
.eyebrow { font-size: 11px; }
.intro-lead { font-size: 22px; }
.body-copy, .section-aside, .detail-two-col > div:first-child > p, .detail-service-intro > p { font-size: 16px; }
.info-item small, .contact-row small { font-size: 10px; }
.info-item strong { font-size: 13px; }
.service-card { border-radius: 14px; box-shadow: 0 12px 30px rgba(16,56,77,.06); }
.service-card h3 { font-size: 19px; }
.service-card > p { font-size: 14px; }
.service-details { font-size: 13px; }
.service-details li strong { font-size: 13px; }
.service-more, .text-link { font-size: 13px; }
.detail-hero { background-image: linear-gradient(110deg, rgba(5,31,53,.77), rgba(8,58,91,.56)), url('assets/audit-work.jpg'); }
body[data-page="about"] .detail-hero, body[data-page="advisory"] .detail-hero, body[data-page="values"] .detail-hero { background-image: linear-gradient(110deg, rgba(5,31,53,.76), rgba(8,58,91,.5)), url('assets/advisory-work.jpg'); }
body[data-page="accounting"] .detail-hero, body[data-page="contact"] .detail-hero { background-image: linear-gradient(110deg, rgba(5,31,53,.76), rgba(8,58,91,.5)), url('assets/accounting-work.jpg'); }
body[data-page="services"] .detail-hero { background-image: linear-gradient(110deg, rgba(5,31,53,.76), rgba(8,58,91,.5)), url('assets/audit-work.jpg'); }
body[data-page="clients"] .detail-hero { background-image: linear-gradient(110deg, rgba(5,31,53,.76), rgba(8,58,91,.5)), url('assets/profile-page-2.jpg'); }
.detail-hero h1 { font-size: clamp(50px, 6.5vw, 78px); }
.detail-hero p { color: rgba(255,255,255,.92); font-size: 17px; }
.detail-title { font-size: clamp(38px, 4.3vw, 50px); }
.purpose-panel { background: linear-gradient(135deg, #176394 0%, #0c4168 55%, #082b4a 100%); }
.purpose-statement h3 { font-size: 16px; }
.purpose-statement p, .goal-row p, .value-card p { color: #526a79; font-size: 14px; }
.purpose-statement p { color: rgba(255,255,255,.86); }
.goal-row h3, .value-card h3 { font-size: 17px; }
.value-card { min-height: 190px; border-radius: 12px; background: #fff; box-shadow: 0 10px 24px rgba(20,43,62,.06); }
.contact-layout > div:first-child > p { color: rgba(255,255,255,.88); font-size: 15px; }
.contact-row strong { font-size: 14px; }
.contact-location { font-size: 13px; }
.footer-inner { font-size: 11px; }
.client-slider { width: 100%; overflow: hidden; padding: 8px 2px 18px; -webkit-mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent); mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent); }
.client-slider:focus-visible { outline: 3px solid var(--gold); outline-offset: 4px; }
.client-logo-track { display: flex; width: max-content; gap: 18px; animation: client-marquee 42s linear infinite; }
.client-slider:hover .client-logo-track, .client-slider:focus-within .client-logo-track { animation-play-state: paused; }
.client-slider .client-logo-card { display: flex; flex: 0 0 220px; width: 220px; min-height: 150px; justify-content: center; padding: 16px; border: 1px solid #e6edf0; border-radius: 16px; box-shadow: 0 10px 24px rgba(20,43,62,.08); }
.client-slider .client-logo-card img { height: 94px; }
.client-slider .client-logo-card figcaption { display: block; color: #35566d; font-size: 12px; font-weight: 700; }
.client-slider-compact .client-logo-card { min-height: 132px; }
.client-slider-compact .client-logo-card img { height: 76px; }
@keyframes client-marquee { to { transform: translateX(-50%); } }

@media (max-width: 900px) {
  .site-header, .detail-header { height: 78px; }
  .primary-nav { font-size: 15px; }
  .primary-nav.is-open { top: 72px; background: #fff; border-color: #e1e8e8; box-shadow: 0 18px 36px rgba(8,43,74,.16); }
  .primary-nav.is-open > a:not(.nav-cta) { color: var(--navy); border-color: #e8ecec; }
  .menu-toggle, .detail-header .menu-toggle { color: var(--navy); border-color: rgba(8,43,74,.22); }
  .client-logo-track { gap: 12px; animation-duration: 34s; }
  .client-slider .client-logo-card { flex-basis: 185px; width: 185px; min-height: 132px; padding: 12px; }
  .client-slider .client-logo-card img { height: 76px; }
}
@media (max-width: 680px) {
  .site-header, .detail-header { height: 70px; }
  .hero { padding-top: 70px; }
  .hero-content { min-height: 720px; padding-top: 135px; }
  .hero-shade { background: linear-gradient(90deg, rgba(4,26,46,.78), rgba(5,35,59,.53)), linear-gradient(0deg, rgba(6,31,51,.2), transparent 46%); }
  .hero h1 { font-size: clamp(47px, 12vw, 68px); }
  .hero-description { font-size: 15px; }
  .section-pad { padding-block: 78px; }
  .section-heading h2, .goals-heading h2 { font-size: clamp(39px, 10vw, 50px); }
  .intro-lead { font-size: 20px; }
  .body-copy, .section-aside, .detail-two-col > div:first-child > p, .detail-service-intro > p { font-size: 15px; }
  .detail-hero { background-image: linear-gradient(110deg, rgba(5,31,53,.78), rgba(8,58,91,.6)), url('assets/audit-work.jpg'); }
  .detail-hero h1 { font-size: clamp(42px, 11vw, 59px); }
  .primary-nav { top: 62px; }
  .primary-nav.is-open { top: 62px; }
  .client-logo-track { animation-duration: 28s; }
  .client-slider .client-logo-card { flex-basis: 165px; width: 165px; min-height: 124px; }
  .client-slider .client-logo-card img { height: 68px; }
}
@media (prefers-reduced-motion: reduce) {
  .client-logo-track { animation: none; }
  .client-slider { overflow-x: auto; -webkit-mask-image: none; mask-image: none; }
}

body {
  font-size: 17px;
  background: #f5f7fa;
}
.site-header, .detail-header {
  height: 92px;
  background: rgba(255,255,255,.9);
  border-bottom: 1px solid rgba(8,43,74,.06);
  backdrop-filter: blur(8px);
}
.header-inner { gap: 24px; }
.brand:not(.brand-footer) img { width: 194px; }
.primary-nav { gap: clamp(14px, 1.55vw, 23px); font-size: 15px; }
.primary-nav > a:not(.nav-cta), .detail-header .primary-nav > a:not(.nav-cta) { color: #163a59; }
.nav-cta { padding: 15px 20px; font-size: 14px; background: linear-gradient(135deg, var(--gold), var(--gold-deep)); color: var(--navy-deep); box-shadow: 0 10px 20px rgba(246,166,35,.18); }
.language-option { font-size: 13px; background: rgba(13,91,157,.06); color: #173d5d; }
.language-option[aria-pressed="true"] { background: linear-gradient(135deg, var(--brand-blue), var(--brand-blue-deep)); color: #fff; }
.hero {
  padding-top: 92px;
  color: var(--white);
  background: linear-gradient(130deg, var(--brand-blue-deep) 0%, var(--brand-blue) 52%, rgba(244,161,26,.8) 100%);
  box-shadow: inset 0 -18px 42px rgba(6,31,55,.06);
}
.hero-image {
  opacity: .74;
  filter: saturate(1.08) contrast(1.05) brightness(.8);
}
.hero-shade {
  background: linear-gradient(90deg, rgba(7,45,75,.76) 0%, rgba(13,91,157,.68) 38%, rgba(244,161,26,.38) 100%);
}
.hero-content { min-height: 680px; padding-top: 20px; }
.hero-copy { width: min(660px, 63%); padding: 28px 30px 28px 0; }
.hero-eyebrow { color: rgba(255,255,255,.82); }
.hero h1 { max-width: 700px; font-size: clamp(60px, 7vw, 94px); line-height: .99; letter-spacing: -.065em; }
.hero h1 em { color: var(--gold); }
.hero-description { max-width: 550px; color: rgba(255,255,255,.86); font-size: 19px; line-height: 1.7; }
.hero-note { color: rgba(255,255,255,.8); font-size: 14px; }
.button { min-height: 56px; padding-inline: 24px; border-radius: 10px; font-size: 14px; }
.button-outline { border-color: rgba(255,255,255,.38); color: var(--white); background: rgba(255,255,255,.05); }
.button-outline:hover { background: rgba(255,255,255,.12); }
.hero-card {
  right: 3%; top: 52%; width: 245px; border-radius: 18px;
  background: rgba(255,255,255,.14);
  border-color: rgba(255,255,255,.28);
  box-shadow: 0 22px 65px rgba(8,43,74,.18);
}
.hero-card-top { font-size: 9px; }
.hero-card > strong { font-size: 19px; }
.hero-card-bottom { font-size: 9px; }
.hero-index { color: rgba(255,255,255,.82); font-size: 11px; }
.scroll-cue { border-color: rgba(255,255,255,.25); }
.scroll-cue span { background: var(--gold); }
.section-pad { padding-block: 124px; }
.section-heading h2, .goals-heading h2 { font-size: clamp(48px, 5vw, 68px); }
.eyebrow { font-size: 12px; }
.intro-lead { font-size: 24px; }
.body-copy, .section-aside, .detail-two-col > div:first-child > p, .detail-service-intro > p { font-size: 17px; line-height: 1.85; }
.info-item strong { font-size: 15px; }
.info-item small { font-size: 11px; }
.service-card {
  border-radius: 18px;
  border-color: rgba(10,76,130,.08);
  box-shadow: 0 14px 36px rgba(16,56,77,.08);
}
.service-card h3 { font-size: 21px; }
.service-card > p, .service-details, .service-details li strong { font-size: 15px; }
.service-more, .text-link { font-size: 15px; }
.detail-hero { min-height: 510px; }
.detail-hero h1 { font-size: clamp(56px, 7vw, 84px); }
.detail-hero p { font-size: 18px; }
.detail-title { font-size: clamp(42px, 4.5vw, 54px); }
.value-card { min-height: 205px; border-radius: 18px; box-shadow: 0 12px 30px rgba(20,43,62,.08); }
.value-card h3, .goal-row h3 { font-size: 19px; }
.value-card p, .goal-row p { font-size: 15px; line-height: 1.8; }
.intro-section, .goals-section, .services-section, .values-section, .clients-section, .poster-showcase, .campaign-section {
  background: linear-gradient(180deg, rgba(13,91,157,.04) 0%, rgba(255,255,255,0) 100%);
}
.purpose-panel { background: linear-gradient(135deg, rgba(13,91,157,.96) 0%, rgba(9,67,108,.96) 52%, rgba(244,161,26,.8) 100%); }
.purpose-inner > h2, .contact-layout h2 { font-size: clamp(45px, 4.8vw, 62px); }
.purpose-statement h3 { font-size: 18px; }
.purpose-statement p { font-size: 15px; }
.contact-layout > div:first-child > p { font-size: 17px; }
.contact-row strong { font-size: 15px; }
.contact-location { font-size: 14px; }
.site-footer { background: linear-gradient(135deg, #0a4c82 0%, #0d5b9d 42%, #f4a11a 100%); }
.site-footer .brand-footer { padding: 7px 10px; border-radius: 10px; background: rgba(255,255,255,.12); }
.footer-inner { font-size: 12px; }
.client-slider .client-logo-card { flex-basis: 240px; width: 240px; min-height: 165px; }
.client-slider .client-logo-card figcaption { font-size: 13px; }

@media (max-width: 900px) {
  .site-header, .detail-header { height: 78px; }
  .brand:not(.brand-footer) img { width: 166px; }
  .hero { padding-top: 78px; }
  .hero-copy { width: 72%; }
  .hero h1 { font-size: clamp(54px, 8vw, 76px); }
  .hero-description { font-size: 17px; }
  .primary-nav { font-size: 16px; }
}
@media (max-width: 680px) {
  .site-header, .detail-header { height: 70px; }
  .brand:not(.brand-footer) img { width: 154px; }
  .hero { padding-top: 70px; }
  .hero, .hero-content { min-height: 760px; }
  .hero-image { background-position: 64% center; }
  .hero-shade { background: linear-gradient(90deg, rgba(5,25,42,.8), rgba(11,65,120,.7) 64%, rgba(244,161,26,.38)); }
  .hero-content { padding-top: 112px; }
  .hero-copy { width: 100%; padding: 20px 0 0; }
  .hero h1 { max-width: 550px; font-size: clamp(48px, 12.2vw, 66px); }
  .hero-description { max-width: 440px; font-size: 16px; }
  .hero-note { margin-top: 24px; font-size: 13px; }
  .hero-card { right: 0; top: auto; bottom: 86px; width: 210px; }
  .hero-index { font-size: 10px; }
  .section-pad { padding-block: 82px; }
  .section-heading h2, .goals-heading h2 { font-size: clamp(40px, 10.5vw, 52px); }
  .intro-lead { font-size: 21px; }
  .body-copy, .section-aside, .detail-two-col > div:first-child > p, .detail-service-intro > p { font-size: 16px; }
  .service-card h3 { font-size: 20px; }
  .service-card > p, .service-details, .value-card p, .goal-row p { font-size: 14px; }
  .detail-hero { min-height: 460px; }
  .detail-hero h1 { font-size: clamp(45px, 11vw, 62px); }
}
  .detail-hero p { font-size: 16px; }
  .purpose-inner > h2, .contact-layout h2 { font-size: clamp(40px, 10vw, 51px); }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
.campaign-section { position: relative; z-index: 1; padding: 88px 0 98px; overflow: hidden; background: linear-gradient(135deg, #f1f8fb, #fff 50%, #fff8e9); }
.campaign-section::before { position: absolute; top: -140px; right: -80px; width: 380px; height: 380px; border-radius: 50%; background: radial-gradient(circle, rgba(239,167,45,.18), transparent 68%); content: ''; pointer-events: none; }
.campaign-heading { position: relative; display: flex; align-items: end; justify-content: space-between; gap: 42px; margin-bottom: 36px; }
.campaign-heading h2 { margin: 15px 0 0; color: var(--navy); font-family: var(--font-display); font-size: clamp(42px, 5vw, 64px); line-height: 1.05; letter-spacing: -.055em; }
.campaign-heading h2 em { color: #d98b15; font-style: normal; }
.campaign-heading > p { max-width: 380px; margin: 0 0 5px; color: #38586c; font-size: 18px; line-height: 1.7; }
.campaign-grid { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.campaign-card { position: relative; min-height: 440px; isolation: isolate; overflow: hidden; border-radius: 20px; background: #102f49; box-shadow: 0 18px 42px rgba(8,43,74,.15); transition: transform .3s ease, box-shadow .3s ease; }
.campaign-card:hover { transform: translateY(-7px); box-shadow: 0 26px 56px rgba(8,43,74,.22); }
.campaign-card > img { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease; }
.campaign-card:hover > img { transform: scale(1.05); }
.campaign-card::after { position: absolute; z-index: -1; inset: 0; background: linear-gradient(180deg, rgba(7,33,55,.03) 7%, rgba(7,33,55,.18) 30%, rgba(7,33,55,.94) 100%); content: ''; }
.campaign-advisory::after { background: linear-gradient(180deg, rgba(7,33,55,.05) 5%, rgba(7,33,55,.32) 30%, rgba(7,33,55,.96) 100%); }
.campaign-card-copy { position: absolute; inset: auto 0 0; padding: 25px 27px 28px; color: #fff; }
.campaign-kicker { display: inline-flex; padding: 8px 11px; border: 1px solid rgba(255,255,255,.32); border-radius: 99px; background: rgba(255,255,255,.15); color: #fff; font-size: 10px; font-weight: 800; letter-spacing: .12em; backdrop-filter: blur(8px); }
.campaign-card h3 { margin: 16px 0 10px; font-family: var(--font-display); font-size: clamp(23px, 2.4vw, 31px); line-height: 1.12; letter-spacing: -.045em; }
.campaign-card p { margin: 0; color: rgba(255,255,255,.91); font-size: 15px; line-height: 1.65; }
.campaign-card a { display: inline-flex; align-items: center; gap: 13px; margin-top: 20px; padding: 12px 15px; border-radius: 8px; background: var(--gold); color: #092840; font-size: 13px; font-weight: 800; transition: gap .2s ease, background .2s ease; }
.campaign-card a:hover { gap: 19px; background: #ffc251; }
@media (max-width: 900px) {
  .campaign-section { padding-block: 74px; }
  .campaign-grid { gap: 14px; }
  .campaign-card { min-height: 390px; border-radius: 16px; }
  .campaign-card-copy { padding: 20px; }
  .campaign-card h3 { font-size: 24px; }
  .campaign-card p { font-size: 14px; }
}
@media (max-width: 680px) {
  .campaign-section { padding-block: 64px; }
  .campaign-heading { display: block; margin-bottom: 25px; }
  .campaign-heading h2 { font-size: clamp(39px, 10.5vw, 52px); }
  .campaign-heading > p { margin-top: 15px; font-size: 16px; }
  .campaign-grid { grid-template-columns: 1fr; gap: 16px; }
  .campaign-card { min-height: 410px; }
  .campaign-card-copy { padding: 22px; }
  .campaign-card h3 { font-size: 30px; }
  .campaign-card p { font-size: 15px; }
}
.client-ribbon { position: relative; z-index: 6; margin-top: -154px; padding: 0 0 44px; }
.client-ribbon-inner { padding: 14px 18px 16px; overflow: hidden; border: 1px solid rgba(220,232,238,.9); border-radius: 17px; background: rgba(255,255,255,.97); box-shadow: 0 18px 48px rgba(8,43,74,.2); }
.client-ribbon-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 4px 8px; color: #35566d; font-size: 11px; font-weight: 800; letter-spacing: .12em; }
.client-ribbon-heading a { color: #12649a; font-size: 12px; letter-spacing: 0; }
.client-ribbon-heading a span { color: #d98b15; }
.client-ribbon .client-slider { padding: 2px 2px 4px; mask-image: linear-gradient(90deg, transparent, #000 2%, #000 98%, transparent); -webkit-mask-image: linear-gradient(90deg, transparent, #000 2%, #000 98%, transparent); }
.client-ribbon .client-logo-track { gap: 12px; animation-duration: 36s; }
.client-ribbon .client-logo-card { flex-basis: 160px; width: 160px; min-height: 104px; gap: 5px; padding: 8px; border-radius: 12px; box-shadow: 0 5px 15px rgba(20,43,62,.07); }
.client-ribbon .client-logo-card img { height: 66px; }
.client-ribbon .client-logo-card figcaption { font-size: 10px; }
.poster-showcase { overflow: hidden; background: linear-gradient(145deg, #f3f8fa, #fff 58%, #fff8eb); }
.poster-heading { display: flex; align-items: end; justify-content: space-between; gap: 38px; margin-bottom: 30px; }
.poster-heading h2 { margin: 14px 0 0; color: var(--navy); font-family: var(--font-display); font-size: clamp(42px, 5vw, 64px); line-height: 1.04; letter-spacing: -.055em; }
.poster-heading h2 em { color: #d98b15; font-style: normal; }
.poster-heading > p { max-width: 380px; margin: 0 0 5px; color: #38586c; font-size: 17px; line-height: 1.7; }
.poster-track { display: flex; gap: 20px; overflow-x: auto; padding: 5px 2px 22px; scroll-snap-type: x mandatory; scrollbar-color: #9ab5c5 #e8eff2; scrollbar-width: thin; }
.poster-track:focus-visible { outline: 3px solid var(--gold); outline-offset: 3px; }
.poster-card { flex: 0 0 min(600px, 78vw); overflow: hidden; margin: 0; border: 1px solid #e0e9ed; border-radius: 17px; background: #fff; box-shadow: 0 14px 34px rgba(8,43,74,.1); scroll-snap-align: start; }
.poster-card > img { display: block; width: 100%; aspect-ratio: 2 / 1; object-fit: contain; background: #e8edf0; }
.poster-card figcaption { min-height: 176px; padding: 22px 24px 24px; }
.poster-card figcaption > span { color: #b5730d; font-size: 10px; font-weight: 800; letter-spacing: .13em; }
.poster-card h3 { margin: 9px 0 7px; color: var(--navy); font-family: var(--font-display); font-size: 22px; line-height: 1.25; }
.poster-card p { margin: 0; color: #476174; font-size: 15px; line-height: 1.7; }
@media (max-width: 900px) {
  .client-ribbon { margin-top: -138px; }
  .client-ribbon .client-logo-card { flex-basis: 142px; width: 142px; }
  .poster-heading > p { max-width: 320px; font-size: 16px; }
  .poster-card { flex-basis: min(540px, 82vw); }
}
@media (max-width: 680px) {
  .client-ribbon { margin-top: -130px; padding-bottom: 30px; }
  .client-ribbon-inner { padding: 12px 10px 12px; border-radius: 14px; }
  .client-ribbon-heading { font-size: 10px; }
  .client-ribbon-heading a { font-size: 11px; }
  .client-ribbon .client-logo-track { animation-duration: 28s; }
  .client-ribbon .client-logo-card { flex-basis: 132px; width: 132px; min-height: 94px; }
  .client-ribbon .client-logo-card img { height: 60px; }
  .client-ribbon .client-logo-card figcaption { font-size: 9px; }
  .poster-heading { display: block; margin-bottom: 22px; }
  .poster-heading h2 { font-size: clamp(38px, 10vw, 50px); }
  .poster-heading > p { margin-top: 13px; font-size: 15px; }
  .poster-track { gap: 14px; }
  .poster-card { flex-basis: 88vw; border-radius: 13px; }
  .poster-card figcaption { min-height: 185px; padding: 18px; }
  .poster-card h3 { font-size: 20px; }
  .poster-card p { font-size: 14px; }
}

/* Keep the hero copy, actions, and floating profile card in separate lanes. */
@media (min-width: 901px) {
  .hero-content { align-items: flex-start; }
  .hero-copy { width: min(620px, 54%); margin-top: 38px; padding-top: 0; }
  .hero h1 { font-size: clamp(58px, 5.5vw, 76px); line-height: 1.02; }
  .hero-description { max-width: 530px; font-size: 17px; }
  .hero-card { top: 26%; right: 4%; width: 270px; transform: none; }
  .hero-card-bottom { flex-wrap: wrap; row-gap: 8px; font-size: 9px; }
  .hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
  .hero-actions .button-outline { min-height: 0; padding: 8px 0; border: 0; background: transparent; color: var(--navy); font-size: 14px; }
  .hero-actions .button-outline:hover { background: transparent; color: var(--blue); }
  .hero-note { display: none; }
  .hero-index { bottom: 166px; }
}
@media (max-width: 900px) {
  .hero-content { align-items: flex-start; }
  .hero-copy { width: min(520px, 56%); margin-top: 34px; padding-top: 0; }
  .hero h1 { font-size: clamp(52px, 6.6vw, 68px); line-height: 1.03; }
  .hero-description { font-size: 16px; }
  .hero-card { top: 24%; right: 2%; width: 220px; transform: none; }
  .hero-card-bottom { flex-wrap: wrap; row-gap: 7px; font-size: 8px; }
  .hero-actions { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; margin-top: 20px; }
  .hero-actions .button-outline { min-height: 0; padding: 8px 0; border: 0; background: transparent; color: var(--navy); font-size: 14px; }
  .hero-actions .button-outline:hover { background: transparent; color: var(--blue); }
  .hero-note { display: none; }
  .hero-index { bottom: 148px; }
}
@media (max-width: 680px) {
  .hero-copy { width: 100%; margin-top: 0; }
  .hero-actions { gap: 10px; margin-top: 22px; }
  .hero-actions .button-primary { min-height: 50px; padding-inline: 16px; font-size: 13px; }
  .hero-actions .button-outline { min-height: 0; padding: 8px 0; font-size: 13px; }
  .hero-note { display: none; }
  .hero-card { display: none; }
  .hero-index { bottom: 145px; }
}

/* Keep the hero and its overlapping client ribbon visible on first load. */
@media (min-width: 901px) {
  .hero-content { min-height: min(680px, calc(100svh - 146px)); }
}
@media (min-width: 681px) and (max-width: 900px) {
  .hero { min-height: 0; }
  .hero-content { min-height: min(640px, calc(100svh - 140px)); }
  .hero-actions { flex-direction: row; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
}
@media (max-width: 680px) {
  .hero { min-height: 0; }
  .hero-content { min-height: min(760px, calc(100svh - 129px)); }
  .client-ribbon { margin-top: -100px; }
  .hero-actions { flex-direction: row; flex-wrap: wrap; gap: 6px 12px; }
}
@media (max-width: 680px) and (max-height: 720px) {
  .hero-content { min-height: calc(100svh - 110px); padding-top: 68px; }
  .hero-copy { padding-top: 0; }
  .hero h1 { margin: 14px 0 10px; font-size: clamp(40px, 10.5vw, 46px); }
  .hero-description { font-size: 14px; line-height: 1.55; }
  .hero-actions { gap: 4px 10px; margin-top: 13px; }
  .hero-actions .button-primary { min-height: 46px; padding-inline: 14px; font-size: 12px; }
  .hero-actions .button-outline { padding-block: 6px; font-size: 12px; }
  .client-ribbon { margin-top: -90px; padding-bottom: 16px; }
  .client-ribbon-inner { padding: 8px 10px; }
  .client-ribbon-heading { margin-bottom: 4px; font-size: 9px; }
  .client-ribbon-heading a { font-size: 10px; }
  .client-ribbon .client-logo-track { gap: 8px; }
  .client-ribbon .client-logo-card { flex-basis: 106px; width: 106px; min-height: 64px; padding: 5px; }
  .client-ribbon .client-logo-card img { height: 38px; }
  .client-ribbon .client-logo-card figcaption { font-size: 7px; }
}
@media (min-width: 901px) {
  .client-ribbon { margin-top: -170px; }
}
@media (min-width: 391px) and (max-width: 680px) and (min-height: 721px) {
  .client-ribbon { margin-top: -117px; }
}
@media (min-width: 681px) and (max-height: 800px) {
  .hero { min-height: 0; }
  .hero-content { min-height: calc(100svh - 120px); padding-top: 0; }
  .hero-copy { width: min(690px, 60%); margin-top: 0; padding: 8px 26px 0 0; }
  .hero h1 { max-width: 670px; margin: 15px 0 10px; font-size: clamp(54px, 5vw, 64px); line-height: 1.01; }
  .hero-description { max-width: 590px; font-size: 16px; line-height: 1.55; }
  .hero-actions { gap: 8px; margin-top: 13px; }
  .hero-actions .button-primary { min-height: 48px; }
  .hero-index { display: none; }
  .hero-card { top: 15%; }
  .scroll-cue { display: none; }
  .client-ribbon { margin-top: -120px; padding-bottom: 12px; }
  .client-ribbon-inner { padding: 7px 10px; border-radius: 14px; }
  .client-ribbon-heading { margin-bottom: 3px; font-size: 9px; }
  .client-ribbon-heading a { font-size: 10px; }
  .client-ribbon .client-logo-track { gap: 8px; }
  .client-ribbon .client-logo-card { flex-basis: 106px; width: 106px; min-height: 64px; padding: 5px; border-radius: 9px; }
  .client-ribbon .client-logo-card img { height: 38px; }
  .client-ribbon .client-logo-card figcaption { font-size: 7px; }
}
@media (min-width: 681px) and (max-width: 1300px) and (max-height: 700px) {
  .site-header { height: 80px; }
  .hero { padding-top: 80px; }
  .hero-content { min-height: calc(100svh - 108px); }
  .hero-copy { width: min(700px, 64%); padding-right: 22px; }
  .hero h1 { max-width: 680px; margin: 12px 0 9px; font-size: clamp(48px, 4.7vw, 58px); line-height: 1.02; }
  .hero-description { max-width: 600px; font-size: 15px; line-height: 1.5; }
  .hero-actions { margin-top: 12px; gap: 8px; }
  .hero-actions .button-primary { min-height: 46px; padding-inline: 18px; font-size: 13px; }
  .hero-card { top: 14%; right: 3%; width: 240px; padding: 16px 17px 14px; }
  .hero-card > strong { margin: 9px 0 13px; font-size: 17px; }
  .client-ribbon { margin-top: -106px; padding-bottom: 10px; }
  .client-ribbon-inner { padding: 6px 9px; border-radius: 13px; }
  .client-ribbon-heading { margin-bottom: 3px; font-size: 8px; }
  .client-ribbon-heading a { font-size: 9px; }
  .client-ribbon .client-logo-track { gap: 7px; }
  .client-ribbon .client-logo-card { flex-basis: 100px; width: 100px; min-height: 64px; padding: 5px; border-radius: 8px; }
  .client-ribbon .client-logo-card img { height: 38px; }
  .client-ribbon .client-logo-card figcaption { font-size: 8px; }
}

/* Inner pages use the same light, photo-forward banner treatment as home. */
.detail-hero {
  color: var(--navy);
  background-image: linear-gradient(90deg, rgba(255,255,255,.96) 0%, rgba(255,255,255,.88) 45%, rgba(255,255,255,.58) 100%), url('assets/audit-work.jpg');
  background-size: cover;
  background-position: center;
}
.detail-hero h1 { color: var(--navy); }
.detail-hero h1 em { color: #d98b15; }
.detail-hero p { color: #29475d; }
.detail-hero .eyebrow-light, .detail-hero .eyebrow-light a { color: #315a74; }
body[data-page="about"] .detail-hero,
body[data-page="advisory"] .detail-hero,
body[data-page="values"] .detail-hero { background-image: linear-gradient(90deg, rgba(255,255,255,.96) 0%, rgba(255,255,255,.88) 45%, rgba(255,255,255,.58) 100%), url('assets/advisory-work.jpg'); }
body[data-page="accounting"] .detail-hero,
body[data-page="contact"] .detail-hero { background-image: linear-gradient(90deg, rgba(255,255,255,.96) 0%, rgba(255,255,255,.88) 45%, rgba(255,255,255,.58) 100%), url('assets/accounting-work.jpg'); }
body[data-page="services"] .detail-hero { background-image: linear-gradient(90deg, rgba(255,255,255,.96) 0%, rgba(255,255,255,.88) 45%, rgba(255,255,255,.58) 100%), url('assets/audit-work.jpg'); }
body[data-page="clients"] .detail-hero { background-image: linear-gradient(90deg, rgba(255,255,255,.96) 0%, rgba(255,255,255,.88) 45%, rgba(255,255,255,.58) 100%), url('assets/profile-page-2.jpg'); }

/* The homepage keeps its animated ribbon; the Clients page is a complete static gallery. */
.client-logo-grid-static { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.client-logo-grid-static .client-logo-card { min-height: 190px; padding: 20px; border-radius: 17px; }
.client-logo-grid-static .client-logo-card img { height: 125px; }
.client-logo-grid-static .client-logo-card figcaption { color: #35566d; font-size: 13px; font-weight: 700; }
@media (max-width: 900px) {
  .client-logo-grid-static { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; }
}
@media (max-width: 680px) {
  .clients-section .client-logo-grid:not(.client-logo-grid-compact).client-logo-grid-static { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .client-logo-grid-static .client-logo-card { min-height: 150px; padding: 12px; }
  .client-logo-grid-static .client-logo-card img { height: 96px; }
  .client-logo-grid-static .client-logo-card figcaption { font-size: 11px; }
}

/* Strengthen the brand colors site-wide while keeping the content readable. */
body {
  background: linear-gradient(128deg, #d7e9f4 0%, #e8f1f3 44%, #f6e5c4 100%);
}
.site-header, .detail-header {
  background: linear-gradient(105deg, rgba(214,233,244,.98), rgba(255,235,195,.97));
}
.hero-shade {
  background: linear-gradient(100deg, rgba(216,235,246,.96) 0%, rgba(226,239,244,.92) 39%, rgba(239,231,207,.76) 62%, rgba(239,167,45,.28) 100%);
}
.hero-eyebrow, .hero-note, .hero-index { color: #234a64; }
.hero-description { color: #29475d; }
.hero h1 em, .section-heading h2 em, .goals-heading h2 em { color: #bd7200; }
.client-ribbon-inner {
  background: linear-gradient(115deg, #d9eaf4, #eaf1ed 52%, #ffebc5);
}
.intro-section, .goals-section {
  background: linear-gradient(112deg, #dcecf5 0%, #e9f1ef 52%, #ffedcb 100%);
}
.services-section, .values-section, .clients-section {
  background: linear-gradient(125deg, #d5e8f3 0%, #e3eef1 52%, #f8e3bb 100%);
}
.poster-showcase, .campaign-section {
  background: linear-gradient(130deg, #d9eaf4 0%, #eaf0eb 52%, #ffe6b7 100%);
}
.detail-hero,
body[data-page="about"] .detail-hero,
body[data-page="advisory"] .detail-hero,
body[data-page="values"] .detail-hero,
body[data-page="accounting"] .detail-hero,
body[data-page="contact"] .detail-hero,
body[data-page="services"] .detail-hero,
body[data-page="clients"] .detail-hero {
  color: var(--navy);
  background-image: linear-gradient(100deg, rgba(216,235,246,.96) 0%, rgba(226,239,244,.88) 48%, rgba(239,167,45,.4) 100%), url('assets/audit-work.jpg');
}
body[data-page="about"] .detail-hero,
body[data-page="advisory"] .detail-hero,
body[data-page="values"] .detail-hero { background-image: linear-gradient(100deg, rgba(216,235,246,.96), rgba(226,239,244,.88) 48%, rgba(239,167,45,.4)), url('assets/advisory-work.jpg'); }
body[data-page="accounting"] .detail-hero,
body[data-page="contact"] .detail-hero { background-image: linear-gradient(100deg, rgba(216,235,246,.96), rgba(226,239,244,.88) 48%, rgba(239,167,45,.4)), url('assets/accounting-work.jpg'); }
body[data-page="clients"] .detail-hero { background-image: linear-gradient(100deg, rgba(216,235,246,.96), rgba(226,239,244,.88) 48%, rgba(239,167,45,.4)), url('assets/profile-page-2.jpg'); }
.detail-hero h1, .detail-hero p { color: var(--navy); }
.detail-hero .eyebrow-light, .detail-hero .eyebrow-light a { color: #315a74; }
.detail-aside { background: linear-gradient(125deg, #d8eaf4, #f8e5c0); }
.service-card, .value-card, .client-logo-card, .poster-card {
  background: linear-gradient(140deg, #eaf3f7 0%, #f0f3ed 58%, #fff0d2 100%);
}
.site-footer {
  background: linear-gradient(110deg, #d4e7f2, #e7efed 54%, #ffebc5);
  color: #294b63;
}
.site-footer .brand-footer { background: rgba(224,239,247,.85); }
.footer-inner > span[data-i18n="footerLocation"] { color: #294b63; }
.contact-section {
  background: radial-gradient(circle at 88% 8%, rgba(239,167,45,.34), transparent 34%), linear-gradient(125deg, #125a91, #082b4a 72%);
}

.client-ribbon .client-logo-track { animation-duration: 36s; }
@media (max-width: 680px) {
  .hero-shade { background: linear-gradient(105deg, rgba(216,235,246,.97), rgba(226,239,244,.91) 60%, rgba(239,167,45,.32)); }
  .client-ribbon .client-logo-track { animation-duration: 28s; }
}

/* A consistent Ameen blue-and-gold palette across every page. */
:root {
  --paper: #edf5f8;
  --blue-light: #e3f0f7;
  --line: #d7e5ec;
}
body {
  background: radial-gradient(ellipse at 12% 18%, rgba(18,90,145,.09), transparent 34%),
              radial-gradient(ellipse at 90% 48%, rgba(239,167,45,.12), transparent 30%),
              linear-gradient(135deg, #f1f7fa, #fff5e3);
  background-attachment: fixed;
}
.site-header, .detail-header { background: linear-gradient(100deg, rgba(231,242,248,.97), rgba(255,249,235,.96)); }
.hero-shade {
  background: linear-gradient(90deg, rgba(224,239,247,.98) 0%, rgba(229,241,247,.94) 34%, rgba(240,239,224,.78) 55%, rgba(239,167,45,.2) 100%),
              linear-gradient(0deg, rgba(18,90,145,.12), transparent 55%);
}
.hero-eyebrow { color: #315a74; }
.hero h1 em, .section-heading h2 em, .goals-heading h2 em { color: #bf7708; }
.hero-description { color: #29475d; }
.hero-note, .hero-index { color: #315a74; }
.button-outline { border-color: #315a74; color: var(--navy); }
.button-outline:hover { background: rgba(18,90,145,.08); }
.intro-section, .goals-section { background: linear-gradient(120deg, rgba(228,241,248,.94), rgba(255,248,232,.88)); }
.services-section, .values-section { background: linear-gradient(135deg, #e5f1f7 0%, #f5f8f2 54%, #fff1d7 100%); }
.clients-section { background: linear-gradient(135deg, #eaf4f8, #fff4df); }
.poster-showcase { background: linear-gradient(145deg, #e6f2f8, #f7faf8 55%, #fff0d4); }
.campaign-section { background: linear-gradient(135deg, #e6f2f8, #fff4df); }
.detail-hero,
body[data-page="about"] .detail-hero,
body[data-page="advisory"] .detail-hero,
body[data-page="values"] .detail-hero,
body[data-page="accounting"] .detail-hero,
body[data-page="contact"] .detail-hero,
body[data-page="services"] .detail-hero,
body[data-page="clients"] .detail-hero {
  color: var(--navy);
  background-image: linear-gradient(100deg, rgba(226,240,247,.97) 0%, rgba(233,243,247,.88) 48%, rgba(244,190,88,.43) 100%), url('assets/audit-work.jpg');
}
body[data-page="about"] .detail-hero, body[data-page="advisory"] .detail-hero, body[data-page="values"] .detail-hero { background-image: linear-gradient(100deg, rgba(226,240,247,.97), rgba(233,243,247,.88) 48%, rgba(244,190,88,.43)), url('assets/advisory-work.jpg'); }
body[data-page="accounting"] .detail-hero, body[data-page="contact"] .detail-hero { background-image: linear-gradient(100deg, rgba(226,240,247,.97), rgba(233,243,247,.88) 48%, rgba(244,190,88,.43)), url('assets/accounting-work.jpg'); }
body[data-page="clients"] .detail-hero { background-image: linear-gradient(100deg, rgba(226,240,247,.97), rgba(233,243,247,.88) 48%, rgba(244,190,88,.43)), url('assets/profile-page-2.jpg'); }
.detail-hero h1, .detail-hero p { color: var(--navy); }
.detail-hero h1 em { color: #bf7708; }
.detail-hero .eyebrow-light, .detail-hero .eyebrow-light a { color: #315a74; }
.detail-aside { background: linear-gradient(135deg, #e4f0f6, #fff0d6); }
.service-card, .value-card, .client-logo-card, .poster-card {
  background: linear-gradient(140deg, rgba(255,255,255,.98), rgba(235,245,249,.98) 68%, rgba(255,247,228,.95));
}
.service-card-image { height: 190px; margin-bottom: 52px; }
.service-symbol {
  position: absolute;
  top: 145px;
  left: 25px;
  z-index: 1;
  width: 78px;
  height: 78px;
  border: 4px solid rgba(255,255,255,.96);
  border-radius: 22px;
  background: linear-gradient(145deg, #e2f0f7, #fff0d4);
  color: var(--blue);
  box-shadow: 0 9px 24px rgba(8,43,74,.18);
}
.service-symbol svg { width: 52px; height: 52px; fill: none; stroke: currentColor; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }
.service-card:nth-child(2) .service-symbol { background: linear-gradient(145deg, #fff0d4, #e2f0f7); color: #b87912; }
.service-card:nth-child(3) .service-symbol { background: linear-gradient(145deg, #e2f0f7, #fff0d4); color: #125a91; }
.service-number { top: 17px; right: 18px; padding: 7px 10px; border-radius: 30px; background: rgba(255,255,255,.9); color: var(--navy); }
#services-grid .service-details { display: block; }
.location-list { display: grid; gap: 7px; }
.location-entry { display: block; }
.info-item .location-list { gap: 5px; }
.contact-location { align-items: flex-start; }
.contact-location .location-list { gap: 5px; }
.contact-location .location-entry::before { content: '•'; margin-right: 8px; color: var(--gold); }
.footer-inner > span[data-i18n="footerLocation"] { display: flex; flex-direction: column; gap: 4px; color: #36576c; line-height: 1.45; }
.contact-section { background: radial-gradient(circle at 90% 10%, rgba(239,167,45,.2), transparent 34%), linear-gradient(125deg, #125a91, #082b4a 72%); }
.purpose-panel { background: linear-gradient(125deg, #176394, #125a91 58%, #082b4a); }
.values-grid + .text-link { margin-top: 26px; }
@media (max-width: 680px) {
  .hero-shade { background: linear-gradient(100deg, rgba(226,240,247,.97), rgba(233,243,247,.9) 60%, rgba(244,190,88,.35)); }
  .service-card-image { height: 170px; margin-bottom: 47px; }
  .service-symbol { top: 126px; left: 22px; width: 72px; height: 72px; }
  .service-symbol svg { width: 47px; height: 47px; }
  .footer-inner > span[data-i18n="footerLocation"] { display: flex; flex-basis: 100%; }
  .site-footer .footer-inner { gap: 10px 18px; }
  .site-footer { min-height: 150px; }
  .footer-inner { flex-direction: column; align-items: flex-start; }
}

:root {
  --brand-blue: #0d5b9d;
  --brand-blue-deep: #072d4b;
  --brand-orange: #f4a11a;
  --brand-orange-deep: #d8840e;
  --brand-surface: rgba(255,255,255,.96);
  --brand-surface-soft: rgba(238,246,250,.92);
}
body {
  background:
    radial-gradient(circle at 12% 8%, rgba(13,91,157,.11), transparent 24%),
    radial-gradient(circle at 86% 74%, rgba(244,161,26,.14), transparent 26%),
    linear-gradient(135deg, #f5f9fc 0%, #ffffff 46%, #fff7ee 100%);
  color: var(--ink);
}
.site-header, .detail-header {
  background: rgba(255,255,255,.88);
  border-bottom: 1px solid rgba(8,43,74,.07);
  backdrop-filter: blur(8px);
}
.site-header:not(.detail-header) .brand { background: rgba(255,255,255,.82); border-color: rgba(8,43,74,.08); }
.primary-nav > a:not(.nav-cta), .detail-header .primary-nav > a:not(.nav-cta), .site-header .primary-nav > a:not(.nav-cta) { color: #163a59; }
.detail-header .primary-nav > a:not(.nav-cta) { color: #153b58; }
.hero {
  background: linear-gradient(130deg, rgba(7,45,75,.96) 0%, rgba(13,91,157,.9) 52%, rgba(244,161,26,.72) 100%);
}
.hero-image {
  filter: saturate(1.08) contrast(1.05) brightness(.82);
  opacity: .7;
}
.hero-shade {
  background: linear-gradient(90deg, rgba(7,45,75,.8) 0%, rgba(13,91,157,.64) 42%, rgba(244,161,26,.32) 100%);
}
.hero h1, .hero-description, .hero-note, .hero-card, .hero-index, .scroll-cue span { color: #fff; }
.hero-card {
  border-color: rgba(255,255,255,.25);
  background: rgba(255,255,255,.12);
  box-shadow: 0 14px 40px rgba(6,25,43,.18);
}
.hero-card-top, .hero-card-bottom, .hero-card > strong { color: #fff; }
.hero-card-bottom { border-top-color: rgba(255,255,255,.22); }
.hero-card .card-dot, .mini-icon { color: var(--brand-orange); }
.hero-copy .eyebrow { color: rgba(255,255,255,.82); }
.client-ribbon-inner {
  background: linear-gradient(135deg, rgba(13,91,157,.95), rgba(255,255,255,.9) 45%, rgba(244,161,26,.82));
  border-color: rgba(255,255,255,.22);
}
.client-ribbon-heading, .client-ribbon-heading a, .client-logo-card figcaption { color: rgba(255,255,255,.9); }
.client-ribbon-heading a span { color: var(--brand-orange); }
.intro-section, .goals-section, .services-section, .values-section, .clients-section, .poster-showcase, .campaign-section {
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,251,252,.96));
}
.service-card, .value-card, .client-logo-card, .poster-card {
  background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(239,246,250,.96) 62%, rgba(255,247,232,.96));
  box-shadow: 0 12px 30px rgba(8,43,74,.08);
}
.service-card h3, .value-card h3, .goal-row h3, .detail-title, .contact-layout h2, .section-heading h2, .goals-heading h2 { color: var(--navy); }
.site-footer {
  background: linear-gradient(135deg, rgba(13,91,157,.96) 0%, rgba(7,45,75,.96) 48%, rgba(244,161,26,.9) 100%);
  color: #fff;
}
.footer-inner > span[data-i18n="footerLocation"] { color: rgba(255,255,255,.8); }
.site-footer .brand-footer { background: rgba(255,255,255,.12); }
.contact-section {
  background: linear-gradient(135deg, rgba(7,45,75,.96), rgba(9,67,108,.96) 52%, rgba(244,161,26,.8));
}
.detail-hero,
body[data-page="about"] .detail-hero,
body[data-page="advisory"] .detail-hero,
body[data-page="values"] .detail-hero,
body[data-page="accounting"] .detail-hero,
body[data-page="contact"] .detail-hero,
body[data-page="services"] .detail-hero,
body[data-page="clients"] .detail-hero {
  color: #fff;
  background-image: linear-gradient(100deg, rgba(7,45,75,.76) 0%, rgba(13,91,157,.72) 50%, rgba(244,161,26,.46) 100%), url('assets/audit-work.jpg');
  background-blend-mode: multiply, normal;
}
body[data-page="about"] .detail-hero,
body[data-page="advisory"] .detail-hero,
body[data-page="values"] .detail-hero { background-image: linear-gradient(100deg, rgba(7,45,75,.76) 0%, rgba(13,91,157,.72) 50%, rgba(244,161,26,.46) 100%), url('assets/advisory-work.jpg'); }
body[data-page="accounting"] .detail-hero,
body[data-page="contact"] .detail-hero { background-image: linear-gradient(100deg, rgba(7,45,75,.76) 0%, rgba(13,91,157,.72) 50%, rgba(244,161,26,.46) 100%), url('assets/accounting-work.jpg'); }
body[data-page="clients"] .detail-hero { background-image: linear-gradient(100deg, rgba(7,45,75,.76) 0%, rgba(13,91,157,.72) 50%, rgba(244,161,26,.46) 100%), url('assets/profile-page-2.jpg'); }
.detail-hero h1, .detail-hero p { color: #fff; }
.detail-hero .eyebrow-light, .detail-hero .eyebrow-light a { color: rgba(255,255,255,.9); }
.detail-aside {
  background: linear-gradient(125deg, rgba(13,91,157,.96), rgba(244,161,26,.8));
  border-left-color: rgba(255,255,255,.5);
}
@media (max-width: 680px) {
  .hero-shade { background: linear-gradient(105deg, rgba(7,45,75,.8), rgba(13,91,157,.7) 60%, rgba(244,161,26,.42)); }
}

/* Final clean Ameen theme: light, premium, and consistent across all pages. */
:root {
  --navy: #082b4a;
  --navy-deep: #061f37;
  --blue: #0d5b9d;
  --blue-strong: #0a4c82;
  --gold: #f6a623;
  --gold-deep: #d8840e;
  --ink: #142b3e;
  --muted: #5d7282;
  --paper: #f4f9fb;
  --white: #ffffff;
  --line: rgba(10, 76, 130, 0.12);
  --shadow-soft: rgba(8, 43, 74, 0.1);
}
body {
  background:
    radial-gradient(circle at 12% 8%, rgba(13, 91, 157, 0.08), transparent 26%),
    radial-gradient(circle at 90% 78%, rgba(244, 161, 26, 0.08), transparent 20%),
    linear-gradient(135deg, #f7fbfd 0%, #ffffff 52%, #fff9f0 100%);
  color: var(--ink);
}
.site-header, .detail-header {
  height: 88px;
  background: rgba(255,255,255,0.9);
  border-bottom: 1px solid rgba(8,43,74,0.08);
  box-shadow: 0 10px 28px rgba(8,43,74,0.06);
  backdrop-filter: blur(10px);
}
.site-header:not(.detail-header) .brand {
  background: rgba(255,255,255,0.8);
  border: 1px solid rgba(8,43,74,0.08);
  border-radius: 14px;
  box-shadow: 0 12px 28px rgba(8,43,74,0.08);
}
.primary-nav > a:not(.nav-cta), .detail-header .primary-nav > a:not(.nav-cta) {
  color: #163a59;
}
.primary-nav > a:not(.nav-cta):hover, .detail-header .primary-nav > a:not(.nav-cta):hover {
  color: var(--blue);
}
.primary-nav a[aria-current="page"], .detail-header .primary-nav a[aria-current="page"] {
  color: var(--gold-deep);
}
.nav-cta {
  background: linear-gradient(135deg, var(--gold), var(--gold-deep));
  color: var(--navy-deep);
  box-shadow: 0 10px 18px rgba(246, 166, 35, 0.2);
}
.language-switch {
  background: rgba(13, 91, 157, 0.05);
  border-color: rgba(8,43,74,0.12);
}
.language-option[aria-pressed="true"] {
  background: linear-gradient(135deg, var(--blue), var(--blue-strong));
  color: var(--white);
}
.hero {
  background: linear-gradient(120deg, #072d4b 0%, #0d5b9d 46%, rgba(244,161,26,0.82) 100%);
  box-shadow: inset 0 -16px 34px rgba(7,45,75,0.08);
}
.hero-shade {
  background: linear-gradient(90deg, rgba(7,45,75,0.82) 0%, rgba(13,91,157,0.68) 36%, rgba(244,161,26,0.26) 100%);
}
.hero h1 em, .section-heading h2 em, .goals-heading h2 em, .detail-hero h1 em {
  color: var(--gold);
}
.hero-description, .hero-note, .hero-index, .detail-hero p, .detail-hero .eyebrow-light { color: rgba(255,255,255,0.9); }
.hero-card {
  background: rgba(255,255,255,0.96);
  border-color: rgba(255,255,255,0.58);
  box-shadow: 0 20px 44px rgba(8,43,74,0.2);
}
.section-pad {
  padding-block: 104px;
}
.services-section, .values-section, .clients-section, .intro-section, .goals-section {
  background: linear-gradient(135deg, rgba(229,240,246,0.9), rgba(255,249,239,0.88));
}
.service-card, .value-card, .client-logo-card, .poster-card, .industry-card {
  background: linear-gradient(145deg, rgba(255,255,255,0.98), rgba(239,246,250,0.96) 60%, rgba(255,247,232,0.96));
  border: 1px solid rgba(8,43,74,0.08);
  border-radius: 18px;
  box-shadow: 0 14px 32px rgba(8,43,74,0.06);
}
.service-card {
  min-height: 250px;
  padding: 0 20px 18px;
  background: linear-gradient(135deg, #0d5b9d 0%, #083d66 100%);
  border-color: rgba(7,45,75,.12);
  box-shadow: 0 14px 32px rgba(7,45,75,.14);
}
.service-card:nth-child(even) {
  background: linear-gradient(135deg, #f4a11a 0%, #d98313 100%);
  border-color: rgba(177,103,9,.2);
  box-shadow: 0 14px 32px rgba(212,125,16,.12);
}
.service-card-image { height: 148px; margin-bottom: 10px; }
.service-header {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-top: -24px;
  position: relative;
  z-index: 1;
}
.service-title-wrap {
  flex: 1;
  min-width: 0;
}
.service-symbol {
  position: static;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  width: 66px;
  height: 66px;
  border-radius: 16px;
  border: 4px solid rgba(255,255,255,0.96);
  background: rgba(255,255,255,.18);
  color: #fff;
  box-shadow: 0 12px 24px rgba(8,43,74,0.12);
}
.service-card:nth-child(even) .service-symbol { background: rgba(255,255,255,.2); color: #fff; }
.service-symbol svg {
  width: 38px;
  height: 38px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.3;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.service-number {
  display: inline-block;
  margin-bottom: 6px;
  font-family: var(--font-display);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(255,255,255,.82);
}
.service-card h3, .value-card h3, .goal-row h3, .industry-card h3 {
  margin: 0;
  color: #fff;
}
.service-card > p, .service-details, .value-card p, .industry-card p { color: rgba(255,255,255,.9); }
.service-details li strong { color: #fff; }
.service-details { border-top-color: rgba(255,255,255,.22); }
.service-more, .text-link { color: #fff; }
.service-more span:last-child { color: #ffe08a; }
.detail-hero {
  color: var(--navy);
  background-image: linear-gradient(90deg, rgba(255,255,255,0.96) 0%, rgba(255,255,255,0.88) 46%, rgba(255,255,255,0.58) 100%), url('assets/audit-work.jpg');
  background-size: cover;
  background-position: center;
}
body[data-page="about"] .detail-hero,
body[data-page="advisory"] .detail-hero,
body[data-page="values"] .detail-hero { background-image: linear-gradient(90deg, rgba(255,255,255,0.96) 0%, rgba(255,255,255,0.88) 46%, rgba(255,255,255,0.58) 100%), url('assets/advisory-work.jpg'); }
body[data-page="accounting"] .detail-hero,
body[data-page="contact"] .detail-hero { background-image: linear-gradient(90deg, rgba(255,255,255,0.96) 0%, rgba(255,255,255,0.88) 46%, rgba(255,255,255,0.58) 100%), url('assets/accounting-work.jpg'); }
body[data-page="services"] .detail-hero { background-image: linear-gradient(90deg, rgba(255,255,255,0.96) 0%, rgba(255,255,255,0.88) 46%, rgba(255,255,255,0.58) 100%), url('assets/audit-work.jpg'); }
body[data-page="clients"] .detail-hero { background-image: linear-gradient(90deg, rgba(255,255,255,0.96) 0%, rgba(255,255,255,0.88) 46%, rgba(255,255,255,0.58) 100%), url('assets/profile-page-2.jpg'); }
.detail-hero h1, .detail-hero p { color: var(--navy); }
.detail-hero .eyebrow-light, .detail-hero .eyebrow-light a { color: #315a74; }
.industry-showcase { margin-bottom: 34px; }
.industry-showcase-header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 26px;
}
.industry-showcase-header h2 {
  margin: 0;
  color: var(--navy);
  font-family: var(--font-display);
  font-size: clamp(34px, 4vw, 52px);
  letter-spacing: -0.05em;
}
.industry-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.industry-card {
  display: flex;
  flex-direction: column;
  min-height: 180px;
  padding: 18px 16px 16px;
  background: linear-gradient(135deg, #0d5b9d, #0b4b82);
  border: 1px solid rgba(9,68,117,0.18);
  color: #fff;
}
.industry-card:nth-child(even) {
  background: linear-gradient(135deg, #f5a623, #d9871a);
  border-color: rgba(169,104,14,0.22);
}
.industry-icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background: rgba(255,255,255,0.18);
  color: #fff;
  font-size: 24px;
}
.industry-card h3 {
  margin: 16px 0 8px;
  font-size: 1rem;
  line-height: 1.35;
  color: #fff;
}
.industry-card p {
  margin: 0;
  font-size: 0.8rem;
  line-height: 1.7;
  color: rgba(255,255,255,0.9);
}
.client-logo-grid-static {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.client-logo-grid-static .client-logo-card {
  min-height: 170px;
  padding: 18px;
}
.client-logo-grid-static .client-logo-card img {
  height: 100px;
}
.site-footer {
  background: linear-gradient(135deg, rgba(13,91,157,0.96) 0%, rgba(255,255,255,0.78) 52%, rgba(244,161,26,0.7) 100%);
  color: #173a59;
}
.footer-inner > span[data-i18n="footerLocation"] { color: #173a59; }
@media (max-width: 900px) {
  .industry-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .client-logo-grid-static { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .industry-showcase-header { display: block; }
  .industry-grid, .client-logo-grid-static { grid-template-columns: 1fr; }
  .service-card { min-height: 220px; padding: 0 18px 20px; }
  .service-card-image { height: 140px; }
  .service-symbol { left: 20px; top: 122px; width: 64px; height: 64px; }
  .service-card h3 { font-size: 1.08rem; }
}
#services-grid .service-card > p { min-height: 68px; }
#services-grid .service-more { margin-top: 16px; }

/* Airy, light footer with more useful routes on every page. */
.site-footer {
  min-height: 300px;
  padding: 48px 0 20px;
  color: #173a59;
  background: linear-gradient(120deg, #e8f4fa 0%, #fff 42%, #fff0d4 100%);
  border-top: 5px solid transparent;
  border-image: linear-gradient(90deg, #0d5b9d, #f4a11a) 1;
}
.footer-layout { display: grid; grid-template-columns: 1.15fr .8fr 1.2fr 1fr; gap: 34px; }
.footer-brand-column p, .footer-location p { max-width: 260px; color: #536d7e; font-size: 12px; line-height: 1.7; }
.brand-footer { padding: 5px 8px; border-radius: 8px; background: rgba(255,255,255,.78); }
.footer-links, .footer-location { display: flex; flex-direction: column; align-items: flex-start; gap: 11px; }
.footer-links h2, .footer-location h2 { margin: 3px 0 5px; color: #0d5b9d; font-family: var(--font-display); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; }
.footer-links a, .footer-contact-link { color: #34566e; font-size: 12px; line-height: 1.5; transition: color .2s ease; }
.footer-links a:hover, .footer-contact-link:hover, .footer-bottom a:hover { color: #d8840e; }
.footer-location .location-entry { margin-bottom: 5px; }
.footer-bottom { grid-column: 1 / -1; display: flex; justify-content: space-between; gap: 20px; margin-top: 12px; padding-top: 18px; border-top: 1px solid rgba(13,91,157,.16); color: #607789; font-size: 11px; }
.footer-bottom a { color: #0d5b9d; font-weight: 700; }
@media (max-width: 760px) {
  .footer-layout { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 20px; }
  .footer-bottom { flex-direction: column; }
}
@media (max-width: 480px) {
  .footer-layout { grid-template-columns: 1fr; }
  .footer-bottom { grid-column: 1; }
}

/* Refined navigation, readable typography, and compact homepage previews. */
:root {
  --font-body: 'DM Sans', 'Segoe UI', sans-serif;
  --font-display: 'Manrope', 'DM Sans', 'Segoe UI', sans-serif;
}
body, button, input, textarea { font-family: var(--font-body); }
h1, h2, h3, .brand-type strong { font-family: var(--font-display); }
.site-header { height: 88px; }
.header-inner { gap: 24px; }
.site-header:not(.detail-header) .brand { padding: 5px 10px; border-radius: 12px; box-shadow: 0 7px 22px rgba(0,0,0,.18); }
.primary-nav {
  gap: clamp(14px, 1.8vw, 25px);
  padding: 7px 8px 7px 18px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 999px;
  background: rgba(3,30,52,.36);
  box-shadow: 0 10px 24px rgba(0,0,0,.12);
  backdrop-filter: blur(12px);
}
.primary-nav > a:not(.nav-cta) {
  position: relative;
  padding: 10px 0;
  color: rgba(255,255,255,.88);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .01em;
  transition: color .2s ease;
}
.primary-nav > a:not(.nav-cta)::after {
  position: absolute;
  right: 0;
  bottom: 3px;
  left: 0;
  height: 2px;
  border-radius: 2px;
  background: var(--brand-orange);
  content: '';
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .2s ease;
}
.primary-nav > a:not(.nav-cta):hover::after,
.primary-nav > a[aria-current="page"]:not(.nav-cta)::after { transform: scaleX(1); }
.primary-nav > a[aria-current="page"]:not(.nav-cta) { color: #fff; }
.language-switch { flex: 0 0 auto; border-color: rgba(255,255,255,.2); background: rgba(255,255,255,.1); }
.language-option { min-width: 34px; padding: 7px 9px; color: rgba(255,255,255,.8); }
.language-option:hover { color: #fff; }
.language-option[aria-pressed="true"] { background: #fff; color: var(--brand-blue-deep); box-shadow: none; }
.nav-cta { min-height: 40px; display: inline-flex; align-items: center; padding: 0 15px; border-radius: 999px; background: var(--brand-orange); color: #173a59; font-size: 11px; font-weight: 800; white-space: nowrap; }
.detail-header .primary-nav { border-color: rgba(8,43,74,.08); background: rgba(255,255,255,.7); }
.detail-header .primary-nav > a:not(.nav-cta) { color: #173a59; }
.detail-header .primary-nav > a[aria-current="page"]:not(.nav-cta) { color: var(--blue); }
.detail-header .language-option[aria-pressed="true"] { background: var(--navy); color: #fff; }
.client-ribbon .client-slider { display: block; overflow: hidden; }
.client-ribbon .client-logo-track { width: max-content; animation: client-marquee 38s linear infinite; will-change: transform; }
.client-ribbon .client-slider:hover .client-logo-track,
.client-ribbon .client-slider:focus-within .client-logo-track { animation-play-state: paused; }
.client-ribbon .client-logo-card { background: #fff; }
.client-ribbon .client-logo-card figcaption { color: #274c66; }
.intro-section .intro-copy .body-copy { display: none; }
.intro-section .info-strip .info-item:nth-child(n + 2) { display: none; }
.intro-section .info-strip { grid-template-columns: 1fr; margin-top: 30px; }
.purpose-section .purpose-statement p { display: none; }
.purpose-section .purpose-statements { gap: 13px; }
.goals-section .goal-row p, .values-section .value-card p { display: none; }
.goals-section .goal-row { padding-block: 14px; }
.values-section .value-card { min-height: 110px; }
.poster-heading > p, .poster-card figcaption > p { display: none; }
.poster-track { grid-auto-columns: minmax(210px, 26%); }
.hero-description { max-width: 540px; font-size: clamp(15px, 1.2vw, 17px); line-height: 1.7; }
.section-aside, .goal-row p, .purpose-statement p, .service-card > p, .value-card p,
.detail-hero p, .detail-two-col > div:first-child > p, .detail-service-intro > p,
.footer-brand-column p, .footer-location p { line-height: 1.75; }
.detail-title, .detail-hero h1, .hero h1, .section-heading h2, .goals-heading h2 { text-wrap: balance; }
@media (max-width: 900px) {
  .site-header { height: 76px; }
  .primary-nav { top: 76px; left: 0; right: 0; gap: 0; padding: 13px 18px 18px; border: 1px solid rgba(255,255,255,.17); border-radius: 18px; background: #072d4b; box-shadow: 0 18px 35px rgba(0,0,0,.24); }
  .primary-nav > a:not(.nav-cta) { padding: 12px 0; }
  .primary-nav > a:not(.nav-cta)::after { display: none; }
  .primary-nav .language-switch { align-self: flex-start; margin: 12px 0; }
  .primary-nav .nav-cta { align-self: flex-start; }
  .detail-header .primary-nav { background: rgba(255,255,255,.95); border-color: rgba(8,43,74,.08); }
  .detail-header .primary-nav > a:not(.nav-cta) { color: var(--navy); }
}
@media (max-width: 680px) {
  .client-ribbon .client-logo-track { animation-duration: 30s; }
  .poster-track { grid-auto-columns: minmax(215px, 78%); }
}
@media (prefers-reduced-motion: reduce) {
  .client-ribbon .client-logo-track { animation: none; }
}
.intro-section, .goals-section, .services-section, .values-section, .clients-section, .poster-showcase, .campaign-section,
body[data-page] main > section.section-pad {
  background: linear-gradient(120deg, #0d5b9d 0%, #125a91 58%, #9a5a08 100%);
}
.services-section, .values-section, body[data-page="services"] .services-section,
body[data-page="accounting"] .services-section, body[data-page="audit"] .services-section,
body[data-page="advisory"] .services-section, body[data-page="values"] .goals-section {
  background: linear-gradient(120deg, #9a5a08 0%, #a96610 42%, #0d5b9d 100%);
}
.client-ribbon-inner { background: linear-gradient(110deg, #0d5b9d, #a96610); }
.detail-aside { background: linear-gradient(135deg, #0d5b9d, #9a5a08); }
.purpose-panel { background: linear-gradient(130deg, #0d5b9d, #072d4b 70%, #9a5a08); }
.contact-section { background: linear-gradient(120deg, #072d4b, #0d5b9d 58%, #9a5a08); }

/* Final readability and spacing pass. */
.site-header { height: 78px; }
.site-header:not(.detail-header) .brand { padding: 3px 6px; border-radius: 9px; box-shadow: none; background: rgba(255,255,255,.96); }
.brand img { width: 142px; max-height: 47px; object-fit: contain; }
.primary-nav { gap: clamp(16px, 2vw, 29px); }
.primary-nav > a:not(.nav-cta) { font-size: 14px; font-weight: 650; }
.nav-cta { min-height: 44px; padding-inline: 18px; font-size: 13px; }
.language-option { min-width: 38px; font-size: 13px; }
.hero-eyebrow { max-width: 100%; font-size: 11px; letter-spacing: .12em; }
.hero h1 { letter-spacing: -.04em; }
.hero-description { color: #f5f9fc; font-weight: 500; }
.hero-note { color: #e6f0f7; }
.section-heading h2, .goals-heading h2, .poster-heading h2 { letter-spacing: -.035em; }
.section-aside, .goal-row p, .purpose-statement p, .service-card > p, .value-card p,
.detail-hero p, .detail-two-col > div:first-child > p, .detail-service-intro > p {
  font-size: 14px;
  line-height: 1.8;
}
.service-card > p, .value-card p, .goal-row p { color: #345168; }
.intro-lead { color: #fff; font-size: clamp(20px, 2vw, 24px); }
.body-copy { color: #eaf3f9; }
.hero-card { width: 245px; }
.hero-card-top { font-size: 9px; }
.hero-card > strong { font-size: 19px; }
.hero-card-bottom { flex-wrap: wrap; font-size: 9px; line-height: 1.5; }
.client-ribbon { z-index: 1; margin: 0; padding: 26px 0 34px; }
.client-ribbon-inner { border-radius: 14px; }
.client-ribbon .client-slider { padding-block: 4px 8px; }
.client-ribbon .client-logo-card { min-height: 118px; }
.client-ribbon .client-logo-card img { height: 68px; }
.poster-showcase { margin-top: 0; }
@media (max-width: 900px) {
  .site-header { height: 72px; }
  .brand img { width: 126px; max-height: 42px; }
  .site-header:not(.detail-header) .brand { padding: 2px 5px; }
  .primary-nav { top: 72px; }
  .primary-nav > a:not(.nav-cta) { font-size: 16px; }
}
@media (max-width: 680px) {
  .hero { min-height: 620px; }
  .hero-content { min-height: 620px; }
  .hero-copy { width: 100%; padding-top: 25px; }
  .hero-eyebrow { font-size: 9px; letter-spacing: .1em; }
  .hero h1 { max-width: 560px; font-size: clamp(43px, 11vw, 60px); }
  .hero-description { max-width: 430px; font-size: 15px; }
  .hero-card { display: none; }
  .client-ribbon { padding: 20px 0 28px; }
  .client-ribbon .client-logo-card { flex-basis: 152px; width: 152px; min-height: 114px; }
  .client-ribbon .client-logo-card img { height: 64px; }
}
.menu-toggle, .detail-header .menu-toggle {
  color: #fff;
  border-color: rgba(255,255,255,.55);
  background: rgba(255,255,255,.1);
}
.menu-toggle span, .detail-header .menu-toggle span { background: currentColor; }
.hero .hero-actions .button-outline {
  border-color: rgba(255,255,255,.78);
  background: rgba(7,45,75,.22);
  color: #fff;
}
.hero .hero-actions .button-outline:hover { background: rgba(255,255,255,.14); color: #fff; }
.client-ribbon .client-logo-card {
  flex: 0 0 158px;
  width: 158px;
  min-height: 116px;
}
.client-ribbon .client-logo-card img { width: 100%; height: 67px; object-fit: contain; object-position: center; }
.client-ribbon .client-logo-card figcaption { min-height: 28px; display: flex; align-items: center; justify-content: center; line-height: 1.35; text-align: center; }
@media (min-width: 901px) {
  .brand img { width: 132px; max-height: 44px; }
}
@media (max-width: 900px) {
  .brand img { width: 84px; max-height: 29px; }
  .client-ribbon .client-logo-card { flex-basis: 150px; width: 150px; min-height: 112px; }
}
@media (max-width: 680px) {
  .brand img { width: 84px; max-height: 29px; }
  .client-ribbon .client-logo-card { flex-basis: 146px; width: 146px; min-height: 108px; }
}
.goals-heading > p, .goals-section .text-link, .values-section .text-link {
  color: rgba(255,255,255,.92);
}
.goals-section .text-link span:last-child, .values-section .text-link span:last-child { color: #ffd27b; }
.goals-heading > p { font-size: 15px; line-height: 1.8; }

/* Final homepage structure: a wide client band and summary-only home sections. */
.site-header .brand img, .detail-header .brand img { width: 150px; max-height: 47px; }
.site-header:not(.detail-header) .brand {
  padding: 5px 8px;
  border: 1px solid rgba(255,255,255,.55);
  border-radius: 10px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 8px 24px rgba(0,0,0,.14);
}
.client-ribbon {
  width: 100%;
  margin: 0;
  padding: 22px 0 28px;
  background: linear-gradient(110deg, #0d5b9d, #a96610);
}
.client-ribbon-inner {
  width: min(1160px, calc(100% - 64px));
  padding: 13px 18px 15px;
  border-color: rgba(255,255,255,.5);
  background: rgba(255,255,255,.96);
}
.client-ribbon .client-slider { width: 100%; }
.client-ribbon .client-logo-track { animation-duration: 42s; }
.client-ribbon .client-logo-card { flex-basis: 178px; width: 178px; min-height: 112px; }
.client-ribbon .client-logo-card img { height: 66px; }
.services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.services-grid .service-card { min-height: 330px; }
.home-all-services { margin-top: 24px; color: #fff; font-size: 14px; }
.home-all-services span:last-child { color: #ffd27b; }
.intro-section .info-strip { display: none; }
.home-principles, .home-contact {
  color: #fff;
  background: linear-gradient(120deg, #072d4b 0%, #0d5b9d 58%, #9a5a08 100%);
}
.home-principles-inner, .home-contact-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 36px;
}
.home-principles-inner > div:first-child { max-width: 650px; }
.home-principles h2, .home-contact h2 {
  margin: 14px 0 12px;
  color: #fff;
  font-family: var(--font-display);
  font-size: clamp(36px, 4vw, 52px);
  line-height: 1.12;
  letter-spacing: -.035em;
}
.home-principles h2 em, .home-contact h2 em { color: #ffd27b; font-style: normal; }
.home-principles p { max-width: 540px; margin: 0; color: #edf5fa; font-size: 16px; line-height: 1.7; }
.home-principles-links { display: flex; flex-wrap: wrap; gap: 12px; }
.home-contact-inner { padding-block: 0; }
.home-contact h2 { margin-bottom: 0; }
.home-contact .eyebrow { color: #edf5fa; }
@media (max-width: 900px) {
  .site-header .brand img, .detail-header .brand img { width: 150px; max-height: 47px; }
  .client-ribbon-inner { width: min(100% - 44px, 700px); }
}
@media (max-width: 680px) {
  .site-header .brand img, .detail-header .brand img { width: 150px; max-height: 47px; }
  .client-ribbon { padding-block: 18px 23px; }
  .client-ribbon-inner { width: calc(100% - 40px); padding: 11px 10px; }
  .client-ribbon .client-logo-card { flex-basis: 154px; width: 154px; min-height: 98px; }
  .client-ribbon .client-logo-card img { height: 58px; }
  .services-grid { grid-template-columns: 1fr; }
  .services-grid .service-card { min-height: 310px; }
  .home-principles-inner, .home-contact-inner { align-items: flex-start; flex-direction: column; }
  .home-principles-links { flex-direction: column; align-items: flex-start; }
}

/* Light menu panel for all pages so headers stay consistent without a dark overlay. */
@media (max-width: 900px) {
  .primary-nav, .detail-header .primary-nav,
  .primary-nav.is-open, .detail-header .primary-nav.is-open {
    background: rgba(255,255,255,.96);
    border: 1px solid rgba(8,43,74,.1);
    box-shadow: 0 18px 38px rgba(8,43,74,.14);
  }
  .primary-nav.is-open > a:not(.nav-cta),
  .detail-header .primary-nav.is-open > a:not(.nav-cta) {
    color: #244b66;
    border-bottom: 1px solid rgba(8,43,74,.08);
    font-size: 16px;
    line-height: 1.45;
  }
  .primary-nav.is-open > a[aria-current="page"]:not(.nav-cta),
  .detail-header .primary-nav.is-open > a[aria-current="page"]:not(.nav-cta) { color: var(--blue); }
  .primary-nav.is-open .language-switch,
  .detail-header .primary-nav.is-open .language-switch { background: #f5f9fc; border-color: rgba(8,43,74,.12); }
  .primary-nav.is-open .language-option,
  .detail-header .primary-nav.is-open .language-option { color: #526b7d; }
  .primary-nav.is-open .language-option[aria-pressed="true"],
  .detail-header .primary-nav.is-open .language-option[aria-pressed="true"] { background: var(--navy); color: #fff; }
  .primary-nav.is-open .nav-cta,
  .detail-header .primary-nav.is-open .nav-cta { color: #173a59; background: #ffc04d; }
}

/* Keep the client slider attached to the hero call-to-action, not on top of sections. */
.hero, .hero-content { min-height: 760px; }
.hero-copy { width: min(720px, 74%); }
.client-ribbon {
  position: relative;
  z-index: 1;
  width: min(610px, 100%);
  margin: 22px 0 0;
  padding: 0;
}
.client-ribbon-inner {
  padding: 12px 14px 13px;
  border: 1px solid rgba(255,255,255,.72);
  border-radius: 14px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 14px 34px rgba(3,23,40,.24);
}
.client-ribbon-heading { margin-bottom: 7px; color: #34566e; font-size: 10px; }
.client-ribbon-heading a { color: #0d5b9d; font-size: 12px; font-weight: 700; }
.client-ribbon .client-slider { padding: 3px 1px 5px; }
.client-ribbon .client-logo-track { animation-duration: 34s; }
.client-ribbon .client-logo-card { flex-basis: 132px; width: 132px; min-height: 84px; padding: 6px; border-radius: 10px; }
.client-ribbon .client-logo-card img { height: 54px; }
.client-ribbon .client-logo-card figcaption { display: none; }
.hero-note { margin-top: 17px; }

/* Campaign artwork: clean responsive portfolio cards with full poster previews. */
.poster-showcase { padding-block: 84px; }
.poster-heading { align-items: end; margin-bottom: 30px; }
.poster-heading h2 { color: #fff; font-size: clamp(38px, 4.5vw, 58px); }
.poster-heading h2 em { color: #ffd27b; }
.poster-heading .eyebrow { color: rgba(255,255,255,.9); }
.poster-track {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  overflow: visible;
  padding: 4px 2px 10px;
}
.poster-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  border: 1px solid rgba(255,255,255,.55);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 16px 38px rgba(4,29,49,.24);
  transition: transform .24s ease, box-shadow .24s ease;
}
.poster-card:hover { transform: translateY(-6px); box-shadow: 0 22px 48px rgba(4,29,49,.3); }
.poster-artwork { position: relative; overflow: hidden; padding: 10px; border-radius: 17px 17px 0 0; background: linear-gradient(135deg, #eaf3f8, #fff4e2); }
.poster-artwork img {
  display: block;
  width: 100%;
  aspect-ratio: 1.78 / 1;
  object-fit: contain;
  border-radius: 10px;
  background: #fff;
  transition: transform .35s ease;
}
.poster-card:hover .poster-artwork img { transform: scale(1.025); }
.poster-index { position: absolute; top: 18px; right: 18px; display: grid; width: 34px; height: 34px; place-items: center; border: 1px solid rgba(255,255,255,.7); border-radius: 50%; background: rgba(7,45,75,.88); color: #fff; font-size: 11px; font-weight: 800; }
.poster-copy { flex: 1; padding: 18px 19px 21px; }
.poster-kicker { color: #b16a07; font-size: 10px; font-weight: 800; letter-spacing: .12em; }
.poster-card .poster-copy h3 { margin: 8px 0; color: #082b4a; font-size: 18px; line-height: 1.35; letter-spacing: -.025em; }
.poster-card .poster-copy p { display: block; margin: 0; color: #4a6274; font-size: 12px; line-height: 1.65; }
@media (max-width: 900px) {
  .hero, .hero-content { min-height: 740px; }
  .hero-copy { width: min(680px, 82%); }
  .poster-track { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .poster-card:last-child:nth-child(odd) { grid-column: 1 / -1; width: calc(50% - 10px); }
}
@media (max-width: 680px) {
  .hero, .hero-content { min-height: 770px; }
  .hero-copy { width: 100%; padding-top: 20px; }
  .client-ribbon { width: 100%; margin-top: 19px; }
  .client-ribbon-inner { padding: 10px; }
  .client-ribbon .client-logo-card { flex-basis: 116px; width: 116px; min-height: 76px; }
  .client-ribbon .client-logo-card img { height: 47px; }
  .poster-showcase { padding-block: 62px; }
  .poster-heading { display: block; }
  .poster-track { grid-template-columns: 1fr; gap: 16px; }
  .poster-card:last-child:nth-child(odd) { grid-column: auto; width: auto; }
  .poster-artwork { padding: 8px; }
  .poster-copy { padding: 16px; }
  .poster-card .poster-copy h3 { font-size: 18px; }
}

/* Final overrides for the full-width client band on small screens. */
.client-ribbon { width: 100%; margin: 0; }
.client-ribbon-inner { width: min(1160px, calc(100% - 64px)); }
.client-ribbon .client-slider .client-logo-card { flex: 0 0 178px; width: 178px; }
@media (max-width: 900px) {
  .client-ribbon-inner { width: min(100% - 44px, 700px); }
  .client-ribbon .client-slider .client-logo-card { flex-basis: 166px; width: 166px; }
}
@media (max-width: 680px) {
  .client-ribbon-inner { width: calc(100% - 40px); }
  .client-ribbon .client-slider .client-logo-card { flex-basis: 150px; width: 150px; }
}
.enquiry-layout { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); align-items: start; gap: clamp(30px, 6vw, 78px); }
.enquiry-copy > p { max-width: 420px; color: #eaf3f9; font-size: 15px; line-height: 1.75; }
.enquiry-copy .contact-card { margin-top: 28px; }
.enquiry-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; padding: clamp(22px, 4vw, 36px); border: 1px solid rgba(255,255,255,.62); border-radius: 18px; background: linear-gradient(145deg, rgba(255,255,255,.97), rgba(255,244,225,.97)); box-shadow: 0 18px 48px rgba(3,23,40,.22); }
.enquiry-form label { display: grid; gap: 8px; color: #24445c; font-size: 13px; font-weight: 700; }
.enquiry-form input, .enquiry-form select, .enquiry-form textarea { width: 100%; min-height: 46px; padding: 11px 13px; border: 1px solid #cbd9e1; border-radius: 9px; background: #fff; color: #173a59; font: inherit; font-size: 14px; }
.enquiry-form textarea { min-height: 142px; resize: vertical; }
.enquiry-form input:focus, .enquiry-form select:focus, .enquiry-form textarea:focus { outline: 3px solid rgba(13,91,157,.2); border-color: #0d5b9d; }
.enquiry-message-field { grid-column: 1 / -1; }
.enquiry-form button { justify-self: start; min-height: 48px; border: 0; cursor: pointer; }
.enquiry-privacy { grid-column: 1 / -1; margin: -4px 0 0; color: #5c7281; font-size: 12px; line-height: 1.55; }
.form-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; }
.client-logo-card img[src$="amir-hotel-logo.svg"] { width: 100%; height: auto; max-height: 100px; }
@media (max-width: 760px) {
  .enquiry-layout { grid-template-columns: 1fr; }
}
@media (max-width: 520px) {
  .enquiry-form { grid-template-columns: 1fr; gap: 14px; }
  .enquiry-message-field, .enquiry-privacy { grid-column: 1; }
}
.values-grid-detail { gap: 18px; }
.values-grid-detail .value-card {
  position: relative;
  min-height: 255px;
  padding: 27px 24px 24px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.62);
  border-radius: 17px;
  background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(255,245,226,.96));
  box-shadow: 0 15px 34px rgba(4,29,49,.16);
  transition: transform .22s ease, box-shadow .22s ease;
}
.values-grid-detail .value-card:hover { transform: translateY(-5px); box-shadow: 0 21px 42px rgba(4,29,49,.23); }
.values-grid-detail .value-card::after { position: absolute; right: -24px; bottom: -34px; width: 110px; height: 110px; border-radius: 50%; background: rgba(13,91,157,.07); content: ''; }
.values-grid-detail .value-icon { display: grid; width: 58px; height: 58px; place-items: center; border: 1px solid rgba(13,91,157,.13); border-radius: 16px; background: linear-gradient(145deg, #e5f2fa, #fff0d6); color: #0d5b9d; }
.values-grid-detail .value-icon svg { width: 31px; height: 31px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.values-grid-detail .value-number { position: absolute; top: 28px; right: 24px; color: #b7c8d2; font-size: 12px; font-weight: 800; letter-spacing: .12em; }
.values-grid-detail .value-card h3 { margin: 20px 0 9px; color: #082b4a; font-size: 18px; letter-spacing: -.025em; }
.values-grid-detail .value-card p { color: #4a6274; font-size: 13px; line-height: 1.7; }
body[data-page="values"] .values-grid-detail .value-card p,
body[data-page="values"] .goals-list .goal-row p { display: block; }
.contact-page-grid, .enquiry-layout { align-items: stretch; }
.enquiry-copy { display: flex; flex-direction: column; align-items: flex-start; }
.enquiry-copy > .eyebrow { color: #f4a11a; font-size: 11px; }
.enquiry-copy .detail-title { margin: 14px 0 12px; color: #fff; font-size: clamp(35px, 4vw, 48px); line-height: 1.12; }
.enquiry-copy > p { color: rgba(255,255,255,.9); font-size: 16px; line-height: 1.75; }
.enquiry-copy .contact-card-light { width: 100%; margin-top: 24px; padding: 7px 20px; border: 1px solid rgba(255,255,255,.85); border-radius: 16px; background: rgba(255,255,255,.96); box-shadow: 0 18px 38px rgba(4,29,49,.16); }
.contact-card-light .contact-row { min-height: 76px; gap: 15px; border-bottom-color: #e8eef2; }
.contact-card-light .contact-icon { width: 42px; height: 42px; border: 0; border-radius: 13px; background: linear-gradient(145deg, #e5f2fa, #fff0d6); color: #0d5b9d; }
.contact-icon svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.contact-card-light .contact-row small { color: #6a7f8e; font-size: 10px; }
.contact-card-light .contact-row strong { color: #082b4a; font-size: 14px; font-weight: 700; }
.contact-card-light .contact-arrow { color: #c97b08; }
.contact-card-light .contact-location { gap: 14px; color: #405d72; font-size: 12px; line-height: 1.65; }
.contact-card-light .location-pin { display: none; }
.enquiry-form { align-content: start; gap: 20px; padding: clamp(24px, 4vw, 40px); border-color: rgba(13,91,157,.14); border-radius: 20px; background: linear-gradient(145deg, #fff 0%, #fff8ed 100%); box-shadow: 0 22px 52px rgba(3,23,40,.22); }
.enquiry-form label { color: #173a59; font-size: 14px; font-weight: 700; }
.enquiry-form input, .enquiry-form select, .enquiry-form textarea { border-color: #c5d5df; border-radius: 10px; font-size: 15px; transition: border-color .2s ease, box-shadow .2s ease; }
.enquiry-form input:focus, .enquiry-form select:focus, .enquiry-form textarea:focus { outline: none; border-color: #0d5b9d; box-shadow: 0 0 0 4px rgba(13,91,157,.13); }
.enquiry-form button { min-width: 175px; justify-content: space-between; border-radius: 10px; font-size: 14px; }
.enquiry-privacy { color: #4f6576; font-size: 12px; }
.detail-hero + .enquiry-section { padding-top: 64px; padding-bottom: 78px; }
@media (min-width: 901px) {
  .hero { padding-top: 76px; }
  .hero-content { min-height: 660px; padding-top: 0; }
}
@media (max-width: 900px) {
  .hero { padding-top: 72px; }
  .hero-content { min-height: 620px; padding-top: 0; }
  .detail-hero + .enquiry-section { padding-top: 54px; }
}
@media (max-width: 680px) {
  .hero { padding-top: 64px; min-height: 0; }
  .hero-content { min-height: 650px; padding-top: 0; align-items: center; }
  .hero-copy { margin-top: 0; padding-top: 10px; }
  .values-grid-detail { grid-template-columns: 1fr; }
  .values-grid-detail .value-card { min-height: 220px; }
  .enquiry-copy .contact-card-light { padding-inline: 14px; }
  .enquiry-form { gap: 16px; }
  .detail-hero + .enquiry-section { padding-top: 40px; padding-bottom: 58px; }
}
.poster-showcase { padding-top: 54px; }
@media (max-width: 680px) { .poster-showcase { padding-top: 40px; } }
@media (min-width: 901px) {
  .hero { min-height: 0; padding-top: 76px; }
  .hero-content { min-height: 580px; padding-top: 0; }
}
@media (min-width: 681px) and (max-width: 900px) {
  .hero { min-height: 0; padding-top: 72px; }
  .hero-content { min-height: 440px; padding-top: 0; }
}
@media (max-width: 680px) {
  .hero { min-height: 0; padding-top: 64px; }
  .hero-content { min-height: 0; padding-top: 18px; padding-bottom: 30px; align-items: flex-start; }
  .hero-copy { margin-top: 0; padding-top: 0; }
  .hero-note { margin-top: 15px; }
}

/* Light, logo-led visual system across all pages. */
:root {
  --brand-blue: #0876bd;
  --brand-blue-deep: #064d7d;
  --brand-orange: #f5a623;
  --brand-orange-deep: #d8870d;
  --ink: #15364f;
  --muted: #526b7d;
  --paper: #f5f9fc;
}
body {
  color: #173a53;
  background: linear-gradient(135deg, #f5faff 0%, #fff 50%, #fff8ec 100%);
  background-attachment: fixed;
}
.site-header, .detail-header {
  color: #123650;
  background: rgba(255,255,255,.97);
  border-bottom: 1px solid rgba(8,78,125,.12);
  box-shadow: 0 5px 22px rgba(8,43,74,.07);
  backdrop-filter: blur(14px);
}
.site-header:not(.detail-header) .brand,
.site-header:not(.detail-header) .brand:hover {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.primary-nav {
  border: 1px solid rgba(8,78,125,.1);
  background: #f7fafc;
  box-shadow: 0 6px 20px rgba(8,43,74,.07);
  backdrop-filter: none;
}
.primary-nav > a:not(.nav-cta), .detail-header .primary-nav > a:not(.nav-cta) {
  color: #244b66;
  font-weight: 650;
}
.primary-nav > a:not(.nav-cta):hover,
.detail-header .primary-nav > a:not(.nav-cta):hover { color: #0876bd; }
.primary-nav > a[aria-current="page"]:not(.nav-cta),
.detail-header .primary-nav > a[aria-current="page"]:not(.nav-cta) { color: #0876bd; }
.primary-nav > a:not(.nav-cta)::after { background: #f5a623; }
.language-switch { border-color: #d6e3eb; background: #fff; }
.language-option { color: #526b7d; }
.language-option:hover { color: #0876bd; }
.language-option[aria-pressed="true"] { color: #fff; background: #0876bd; }
.nav-cta { color: #173a53; background: #f5a623; box-shadow: 0 6px 14px rgba(216,135,13,.18); }
.nav-cta:hover { background: #ffc04d; }
.menu-toggle, .detail-header .menu-toggle {
  color: #0876bd;
  border-color: #c9dce8;
  background: #f7fbfd;
}
.menu-toggle span, .detail-header .menu-toggle span { background: currentColor; }

/* Light hero surfaces with quiet blue/orange color fields and readable copy. */
.hero, .detail-hero {
  color: #143b56;
  background-color: #eaf4fa;
  background-image: linear-gradient(120deg, #eaf5fb 0%, rgba(245,250,252,.96) 52%, rgba(255,243,220,.92) 100%);
}
.hero { background: linear-gradient(120deg, #eaf5fb 0%, #f7fbfd 58%, #fff0d6 100%); }
.hero-image { opacity: .16; filter: saturate(.8) contrast(.96); }
.hero-shade { background: linear-gradient(90deg, rgba(247,251,253,.97), rgba(241,248,251,.9) 54%, rgba(255,240,211,.72)); }
.hero-eyebrow, .hero .eyebrow-light { color: #315a74; }
.hero h1, .hero-description, .hero-note, .hero-index { color: #123650; }
.hero h1 em { color: #0876bd; }
.hero-description { color: #3e5b70; }
.hero-note { color: #45677e; }
.hero-index { color: #45677e; }
.hero .button-outline {
  border-color: #0a6fae;
  color: #075585;
  background: rgba(255,255,255,.6);
}
.hero .button-outline:hover { color: #064d7d; background: #fff; }
.hero-card { border-color: rgba(8,78,125,.12); background: rgba(255,255,255,.9); color: #123650; box-shadow: 0 16px 38px rgba(8,43,74,.13); }
.hero-card-top, .hero-card-bottom { color: #527084; }
.hero-card-bottom { border-top-color: #dce7ed; }
.scroll-cue { border-color: rgba(8,78,125,.22); }
.scroll-cue span { background: #f5a623; }
.detail-hero,
body[data-page="about"] .detail-hero,
body[data-page="advisory"] .detail-hero,
body[data-page="values"] .detail-hero,
body[data-page="accounting"] .detail-hero,
body[data-page="contact"] .detail-hero,
body[data-page="services"] .detail-hero,
body[data-page="clients"] .detail-hero {
  color: #123650;
  background-image: linear-gradient(105deg, rgba(235,246,251,.96), rgba(248,251,252,.9) 54%, rgba(255,241,213,.82)), url('assets/audit-work.jpg');
  background-blend-mode: normal;
}
body[data-page="about"] .detail-hero,
body[data-page="advisory"] .detail-hero,
body[data-page="values"] .detail-hero { background-image: linear-gradient(105deg, rgba(235,246,251,.96), rgba(248,251,252,.9) 54%, rgba(255,241,213,.82)), url('assets/advisory-work.jpg'); }
body[data-page="accounting"] .detail-hero,
body[data-page="contact"] .detail-hero { background-image: linear-gradient(105deg, rgba(235,246,251,.96), rgba(248,251,252,.9) 54%, rgba(255,241,213,.82)), url('assets/accounting-work.jpg'); }
body[data-page="clients"] .detail-hero { background-image: linear-gradient(105deg, rgba(235,246,251,.96), rgba(248,251,252,.9) 54%, rgba(255,241,213,.82)), url('assets/profile-page-2.jpg'); }
.detail-hero h1, .detail-hero p, .detail-hero .eyebrow-light, .detail-hero .eyebrow-light a { color: #173a53; }
.detail-hero h1 em { color: #0876bd; }
.detail-hero .eyebrow-light > span:first-child { background: #f5a623; }

/* All content sections return to white/light neutral surfaces. */
.intro-section, .goals-section, .services-section, .values-section,
.clients-section, .poster-showcase, .campaign-section,
body[data-page] main > section.section-pad {
  color: #173a53;
  background: linear-gradient(145deg, #fff 0%, #f5f9fc 72%, #fff8ec 100%);
}
.intro-section .section-heading h2, .section-heading h2, .goals-heading h2,
.detail-title, .detail-two-col > div:first-child > p, .detail-service-intro > p,
.goals-heading > p, .goal-row h3, .value-card h3, .section-aside,
.intro-lead, .info-item strong { color: #173a53; }
.intro-section .eyebrow, .goals-section .eyebrow, .services-section .eyebrow,
.values-section .eyebrow, .clients-section .eyebrow, .poster-showcase .eyebrow {
  color: #315a74;
}
.intro-lead { color: #254c66; }
.body-copy, .goal-row p, .service-card > p, .value-card p,
.detail-two-col > div:first-child > p, .detail-service-intro > p { color: #526b7d; }
.goals-heading > p, .section-aside { color: #526b7d; }
.info-strip, .info-item { border-color: #d8e5ed; }
.info-item small { color: #627b8c; }
.info-icon { color: #0876bd; }
.text-link { color: #075f98; }
.text-link span:last-child { color: #d8870d; }
.detail-aside { color: #405f75; background: linear-gradient(145deg, #e8f4fa, #fff3dc); border-left-color: #f5a623; }
.detail-aside-number { color: #0876bd; }
.purpose-panel { color: #173a53; background: linear-gradient(135deg, #eaf5fb, #f7fbfd 68%, #fff0d6); }
.purpose-inner > h2, .purpose-statement h3 { color: #173a53; }
.purpose-inner > h2 em { color: #0876bd; }
.purpose-statement p { color: #526b7d; }
.statement-index { color: #d8870d; }
.contact-section, .home-contact, .home-principles {
  color: #173a53;
  background: linear-gradient(125deg, #eaf5fb 0%, #f8fbfd 52%, #fff0d6 100%);
}
.contact-layout h2, .home-contact h2, .home-principles h2 { color: #173a53; }
.contact-layout h2 em, .home-contact h2 em, .home-principles h2 em { color: #0876bd; }
.contact-layout > div:first-child > p, .home-principles p { color: #526b7d; }
.contact-layout .eyebrow-light, .home-contact .eyebrow, .home-principles .eyebrow { color: #315a74; }
.purpose-panel .eyebrow-light { color: #315a74; }
.purpose-statement h3 { color: #173a53; }
.purpose-statement p { color: #526b7d; }
.enquiry-copy .detail-title { color: #173a53; }
.enquiry-copy > p { color: #526b7d; }
.enquiry-copy > .eyebrow { color: #315a74; }
.contact-page-grid .detail-title { color: #173a53; }
.contact-page-grid > div:first-child > p { color: #526b7d; }
.contact-card { border-color: rgba(8,78,125,.15); background: rgba(255,255,255,.86); }
.contact-row { border-bottom-color: #dce7ed; }
.contact-icon { border-color: #cbdde8; background: linear-gradient(145deg, #e5f2fa, #fff0d6); color: #0876bd; }
.contact-row small { color: #60798b; }
.contact-row strong { color: #173a53; }
.contact-location { color: #526b7d; }
.contact-footer { border-top-color: #d5e3eb; color: #60798b; }
.contact-footer a { color: #075f98; }
.contact-glow { background: radial-gradient(circle, rgba(8,118,189,.1), transparent 68%); }
.detail-aside, .contact-card-light, .enquiry-form { box-shadow: 0 12px 32px rgba(8,43,74,.1); }

/* Branded values tiles inspired by the supplied blue/red card layout, using Ameen blue/orange. */
.values-grid-detail { gap: 18px; }
.values-grid-detail .value-card {
  min-height: 258px;
  padding: 26px 24px;
  border: 1px solid rgba(8,78,125,.12);
  border-radius: 18px;
  background: linear-gradient(145deg, #0876bd, #075588);
  box-shadow: 0 14px 30px rgba(8,78,125,.18);
}
.values-grid-detail .value-card:nth-child(even) {
  background: linear-gradient(145deg, #f5a623, #e08b10);
  border-color: rgba(216,135,13,.2);
  box-shadow: 0 14px 30px rgba(216,135,13,.18);
}
.values-grid-detail .value-card::after { background: rgba(255,255,255,.1); }
.values-grid-detail .value-icon { border-color: rgba(255,255,255,.24); background: rgba(255,255,255,.16); color: #fff; }
.values-grid-detail .value-number { color: rgba(255,255,255,.72); }
.values-grid-detail .value-card h3, .values-grid-detail .value-card p { color: #fff; }
.values-grid-detail .value-card p { font-size: 13px; }

/* Goal rows become readable, light panels with clear blue/orange markers. */
.goals-section { background: linear-gradient(145deg, #fff 0%, #f1f7fb 100%); }
.goals-layout { align-items: start; }
.goals-list { border-top: 1px solid #d5e3eb; }
.goal-row {
  grid-template-columns: 44px 1fr;
  gap: 16px;
  padding: 20px 18px;
  border-bottom: 1px solid #d5e3eb;
  background: rgba(255,255,255,.7);
}
.goal-index { color: #d8870d; font-size: 13px; }
.goal-row h3 { color: #173a53; font-size: 17px; }
.goal-row p { color: #526b7d; font-size: 14px; line-height: 1.7; }
body[data-page="values"] .goals-section .goal-row p { display: block; }

/* Keep the brand ribbon colorful, but let surrounding pages stay light. */
.client-ribbon { background: linear-gradient(100deg, #0876bd, #f5a623); }
.client-ribbon-inner { background: #fff; border-color: rgba(255,255,255,.85); }
.poster-showcase { padding-top: 46px; }
.poster-heading h2 { color: #173a53; }
.poster-heading h2 em { color: #0876bd; }
.poster-heading .eyebrow { color: #315a74; }
.poster-heading > p { color: #526b7d; }
.poster-card { border-color: #dce7ed; box-shadow: 0 12px 30px rgba(8,43,74,.1); }
.poster-artwork { background: linear-gradient(135deg, #e8f4fa, #fff2d9); }
.poster-index { background: #0876bd; }
.poster-kicker { color: #b57208; }
.poster-card .poster-copy h3 { color: #173a53; }
.poster-card .poster-copy p { color: #526b7d; }

/* White navigation on desktop and compact mobile dropdown. */
@media (max-width: 900px) {
  .primary-nav, .detail-header .primary-nav,
  .primary-nav.is-open, .detail-header .primary-nav.is-open {
    background: #fff;
    border-color: #d7e4eb;
    box-shadow: 0 18px 36px rgba(8,43,74,.16);
  }
  .primary-nav.is-open > a:not(.nav-cta), .detail-header .primary-nav.is-open > a:not(.nav-cta) {
    color: #244b66;
    border-bottom-color: #e5edf2;
  }
  .primary-nav.is-open > a[aria-current="page"]:not(.nav-cta),
  .detail-header .primary-nav.is-open > a[aria-current="page"]:not(.nav-cta) { color: #0876bd; }
  .primary-nav.is-open .language-switch { background: #f5f9fc; border-color: #d6e3eb; }
  .primary-nav.is-open .language-option { color: #526b7d; }
  .primary-nav.is-open .language-option[aria-pressed="true"] { color: #fff; background: #0876bd; }
}
@media (max-width: 680px) {
  .values-grid-detail { grid-template-columns: 1fr; }
  .values-grid-detail .value-card { min-height: 230px; }
  .goals-layout { grid-template-columns: 1fr; gap: 28px; }
  .goals-heading { position: static; }
  .goals-section .goal-row { padding-inline: 14px; }
  .poster-showcase { padding-top: 38px; }
}

/* Reserve clear space for the hero profile card at common laptop/tablet widths. */
@media (min-width: 901px) and (max-width: 1399px) {
  .hero-copy { width: min(660px, 62%); padding-right: 22px; }
  .hero h1 { max-width: 640px; font-size: clamp(52px, 5.5vw, 72px); }
  .hero-description { width: min(100%, 470px); max-width: 470px; }
  .hero-actions { width: 100%; gap: 14px; }
  .hero-card { right: 4.5%; width: 235px; }
}
.hero-card > strong { color: #123650; }
.hero-card-top, .hero-card-bottom { color: #49677d; }
.hero .hero-actions .button-outline {
  min-height: 50px;
  padding-inline: 20px;
  border: 0;
  border-radius: 12px;
  background: linear-gradient(135deg, #0876bd, #064d7d);
  color: #fff;
  box-shadow: 0 9px 22px rgba(6,77,125,.22);
  font-size: 13px;
}
.hero .hero-actions .button-outline:hover {
  background: linear-gradient(135deg, #0b85ce, #075989);
  color: #fff;
  box-shadow: 0 12px 26px rgba(6,77,125,.27);
  transform: translateY(-2px);
}
.hero-image { opacity: .27; filter: saturate(.9) contrast(.98); }

/* Service cards use the Ameen palette rather than neutral white panels. */
.services-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  align-items: stretch;
}
.service-card {
  position: relative;
  border: 1px solid rgba(7,45,75,.12);
  border-radius: 28px;
  background: linear-gradient(135deg, #0d5b9d 0%, #083d66 100%);
  box-shadow: 0 14px 32px rgba(7,45,75,.14);
  min-height: 420px;
  padding: 22px 24px 22px;
  overflow: hidden;
}
.service-card:nth-child(odd) {
  border-color: rgba(7,45,75,.16);
  background: linear-gradient(135deg, #0d5b9d 0%, #083d66 100%);
}
.service-card:nth-child(even) {
  border-color: rgba(177,103,9,.2);
  background: linear-gradient(135deg, #f0a633 0%, #e78d23 100%);
  box-shadow: 0 14px 32px rgba(212,125,16,.12);
}
.service-card-image {
  display: none;
}
.service-header {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin: 0 0 18px;
  padding-top: 8px;
}
.service-symbol {
  display: grid;
  place-items: center;
  width: 64px;
  height: 64px;
  border: 0;
  border-radius: 18px;
  background: rgba(255,255,255,.14);
  color: #fff;
  box-shadow: none;
}
.service-card:nth-child(even) .service-symbol { background: rgba(255,255,255,.14); color: #fff; }
.service-card .service-title-wrap {
  flex: 1;
  min-width: 0;
}
.service-number { display: none; }
.service-card h3 {
  margin: 0;
  font-size: clamp(1.8rem, 2vw, 2.6rem);
  line-height: 1.12;
  letter-spacing: -.05em;
  color: #fff;
}
.service-card > p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 1.05rem;
  line-height: 1.45;
}
.service-details {
  margin: 20px 0 0;
  padding: 18px 0 0;
  border-top: 1px solid rgba(255,255,255,.18);
  display: grid;
  gap: 14px;
  color: #fff;
}
.service-details li {
  display: list-item;
  padding-left: 0;
}
.service-details li strong,
.service-details li span,
.service-card h3,
.service-card > p,
.service-card .service-more {
  color: #fff;
}
.service-more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  margin-top: 18px;
  margin-left: auto;
  border-radius: 50%;
  background: rgba(255,255,255,.12);
  color: #fff;
  font-size: 1.85rem;
}
.service-card:nth-child(odd) .service-more {
  background: rgba(255,255,255,.15);
}
.service-card:nth-child(even) .service-more {
  background: rgba(13,91,157,.18);
}
.service-more span:first-child { display: none; }
.service-more span:last-child { color: #fff; font-size: 2rem; }
.service-card:hover {
  transform: translateY(-2px);
  border-color: rgba(255,255,255,.7);
  box-shadow: 0 19px 38px rgba(8,43,74,.2);
}
.service-card:nth-child(even):hover { border-color: rgba(255,255,255,.7); }
.service-card-detailed { color: inherit; }
.detail-service-grid .service-card { min-height: 0; }
.site-header .primary-nav > a:not(.nav-cta),
.detail-header .primary-nav > a:not(.nav-cta) {
  color: #244b66;
}
.site-header .primary-nav > a:not(.nav-cta):hover,
.detail-header .primary-nav > a:not(.nav-cta):hover { color: #0876bd; }
.site-header .primary-nav > a[aria-current="page"]:not(.nav-cta),
.detail-header .primary-nav > a[aria-current="page"]:not(.nav-cta) { color: #075f98; }
.hero .hero-copy .hero-eyebrow { color: #315a74; }
@media (max-width: 900px) and (min-width: 681px) {
  .hero-copy { width: min(620px, 68%); padding-right: 20px; }
  .hero-description { max-width: min(100%, 440px); }
  .hero-card { right: 2%; width: 215px; }
}
@media (max-width: 680px) {
  .hero-copy { width: 100%; padding-right: 0; }
  .hero-description { width: 100%; max-width: 100%; }
  .hero .hero-actions .button-outline { min-height: 48px; font-size: 12px; }
  .service-card-image { opacity: .86; }
}

/* Banner photography should remain visible while the blue overlay protects text. */
.hero {
  color: #fff;
  background: #075588;
}
.hero-image {
  opacity: .72;
  filter: saturate(1.02) contrast(1.04);
}
.hero-shade {
  background: linear-gradient(90deg, rgba(5,54,88,.64) 0%, rgba(5,77,125,.45) 49%, rgba(7,91,145,.27) 74%, rgba(216,135,13,.18) 100%),
              linear-gradient(0deg, rgba(5,54,88,.18), transparent 40%);
}
.hero h1, .hero-description, .hero-note, .hero-index { color: #fff; }
.hero h1 em { color: #ffbd4a; }
.hero .hero-copy .hero-eyebrow { color: rgba(255,255,255,.92); }
.hero h1, .hero-description { text-shadow: 0 2px 14px rgba(4,38,64,.24); }
.hero .hero-actions .button-outline {
  border: 1px solid rgba(255,255,255,.65);
  background: rgba(255,255,255,.14);
  color: #fff;
  backdrop-filter: blur(6px);
}
.hero .hero-actions .button-outline:hover { background: rgba(255,255,255,.24); color: #fff; }

/* Use the photos as real page banners: stronger visibility with a readable brand overlay. */
.detail-hero,
body[data-page="about"] .detail-hero,
body[data-page="advisory"] .detail-hero,
body[data-page="values"] .detail-hero,
body[data-page="accounting"] .detail-hero,
body[data-page="contact"] .detail-hero,
body[data-page="services"] .detail-hero,
body[data-page="clients"] .detail-hero {
  color: #fff;
  background-color: #075588;
  background-image: linear-gradient(100deg, rgba(5,54,88,.62) 0%, rgba(6,80,128,.4) 52%, rgba(216,135,13,.2) 100%), url('assets/audit-work.jpg');
  background-blend-mode: normal;
}
body[data-page="about"] .detail-hero,
body[data-page="advisory"] .detail-hero,
body[data-page="values"] .detail-hero { background-image: linear-gradient(100deg, rgba(5,54,88,.62), rgba(6,80,128,.4) 52%, rgba(216,135,13,.2)), url('assets/advisory-work.jpg'); }
body[data-page="accounting"] .detail-hero,
body[data-page="contact"] .detail-hero { background-image: linear-gradient(100deg, rgba(5,54,88,.62), rgba(6,80,128,.4) 52%, rgba(216,135,13,.2)), url('assets/accounting-work.jpg'); }
body[data-page="clients"] .detail-hero { background-image: linear-gradient(100deg, rgba(5,54,88,.62), rgba(6,80,128,.4) 52%, rgba(216,135,13,.2)), url('assets/profile-page-2.jpg'); }
.detail-hero h1, .detail-hero p, .detail-hero .eyebrow-light, .detail-hero .eyebrow-light a { color: #fff; }
.detail-hero h1 em { color: #ffbd4a; }

/* Brand-color bands belong to content panels; surrounding page canvas stays light. */
.purpose-panel {
  color: #fff;
  background: linear-gradient(135deg, #0876bd 0%, #075588 72%, #d8870d 100%);
}
.purpose-inner > h2, .purpose-statement h3 { color: #fff; }
.purpose-inner > h2 em { color: #ffbd4a; }
.purpose-statement p { color: rgba(255,255,255,.9); }
.statement-index { color: #ffbd4a; }
.detail-aside { border-left-color: #f5a623; background: linear-gradient(145deg, #eaf5fb, #fff0d6); }
.goals-list { border-top-color: #c9dce8; }
.goal-row { border-bottom-color: #c9dce8; border-left: 3px solid #0876bd; }
.goal-row:nth-child(even) { border-left-color: #f5a623; }
.goal-index { color: #c77b08; }
.service-card-image { opacity: .92; }
@media (max-width: 680px) {
  .hero-shade { background: linear-gradient(100deg, rgba(5,54,88,.62), rgba(6,80,128,.43) 65%, rgba(216,135,13,.22)); }
  .detail-hero,
  body[data-page] .detail-hero { background-position: center; }
}

/* Requested section colors: About = logo blue; purpose, branch panel and goals = logo orange. */
.intro-section {
  color: #fff;
  background: #0876bd;
}
.intro-section .section-heading h2,
.intro-section .intro-lead,
.intro-section .body-copy { color: #fff; }
.intro-section .section-heading h2 em { color: #ffbd4a; }
.intro-section .eyebrow { color: rgba(255,255,255,.92); }
.intro-section .text-link { color: #fff; }
.intro-section .text-link span:last-child { color: #ffd27b; }

.home-principles {
  color: #173a53;
  background: #f5a623;
}
.home-principles h2 { color: #173a53; }
.home-principles h2 em { color: #075f98; }
.home-principles p, .home-principles .eyebrow { color: #294b63; }
.home-principles .button-light { background: #fff; color: #173a53; }
.home-principles .button-outline {
  border: 1px solid #075f98;
  background: #0876bd;
  color: #fff;
}
.home-principles .button-outline:hover { background: #075f98; color: #fff; }

.detail-aside {
  color: #173a53;
  background: #f5a623;
  border-left-color: #0876bd;
}
.detail-aside-number { color: #075f98; }
.detail-aside p { color: #294b63; }

.goals-section .goal-row {
  background: #f5a623;
  border-bottom-color: rgba(23,58,83,.18);
  border-left-color: #0876bd;
}
.goals-section .goal-row:nth-child(even) { border-left-color: #075f98; }
.goals-section .goal-row h3 { color: #173a53; }
.goals-section .goal-row p { color: #294b63; }
.goals-section .goal-index { color: #075f98; }

/* Ameen Advisory campaign cards alternate the logo blue and orange. */
.poster-card {
  overflow: hidden;
  border: 1px solid rgba(8,78,125,.2);
  background: linear-gradient(145deg, #0876bd, #075588);
  box-shadow: 0 16px 36px rgba(8,78,125,.2);
}
.poster-card:nth-child(even) {
  border-color: rgba(216,135,13,.3);
  background: linear-gradient(145deg, #f5a623, #e99416);
  box-shadow: 0 16px 36px rgba(216,135,13,.2);
}
.poster-artwork { background: linear-gradient(135deg, rgba(255,255,255,.92), rgba(226,241,249,.9)); }
.poster-card:nth-child(even) .poster-artwork { background: linear-gradient(135deg, rgba(255,255,255,.92), rgba(255,236,199,.94)); }
.poster-card .poster-copy { background: transparent; }
.poster-card .poster-kicker { color: #ffd27b; }
.poster-card .poster-copy h3, .poster-card .poster-copy p { color: #fff; }
.poster-card:nth-child(even) .poster-kicker { color: #075f98; }
.poster-card:nth-child(even) .poster-copy h3,
.poster-card:nth-child(even) .poster-copy p { color: #173a53; }
.poster-card .poster-index { background: #f5a623; color: #173a53; border-color: rgba(255,255,255,.8); }
.poster-card:nth-child(even) .poster-index { background: #0876bd; color: #fff; }
.poster-card:hover { box-shadow: 0 22px 46px rgba(8,43,74,.25); }
.poster-card:nth-child(even):hover { box-shadow: 0 22px 46px rgba(216,135,13,.26); }
.client-ribbon {
  width: min(1160px, calc(100vw - 64px));
  margin: 22px 0 0;
  padding: 0;
  background: transparent;
}
.client-ribbon-inner {
  width: 100%;
  padding: 12px 14px;
  border-color: rgba(255,255,255,.72);
  border-radius: 14px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 14px 34px rgba(3,23,40,.24);
}
.client-ribbon .client-slider { width: 100%; }
@media (max-width: 680px) {
  .client-ribbon { width: calc(100vw - 40px); margin-top: 18px; }
  .client-ribbon-inner { width: 100%; padding: 10px; }
}
.site-header:not(.detail-header) .brand {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}

/* ─── Mobile nav fix ─────────────────────────────────────────── */
@media (max-width: 900px) {
  /* Hamburger button */
  .menu-toggle,
  .detail-header .menu-toggle {
    position: relative;
    display: flex;
    width: 42px;
    height: 42px;
    flex-shrink: 0;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0;           /* gap disabled — spacing handled via margin on spans */
    border: 1px solid #c9dce8;
    border-radius: 50%;
    background: #f7fbfd;
    color: #0876bd;
    cursor: pointer;
    overflow: hidden;  /* clip any stray visual bleed */
  }
  .menu-toggle span,
  .detail-header .menu-toggle span {
    display: block;
    width: 16px;
    height: 2px;
    margin: 2.5px 0;  /* 2.5px top + 2px bar + 2.5px bottom = 7px per slot; center-to-center = 7px */
    background: currentColor;
    border-radius: 2px;
    transform-origin: center center;
    transition: transform .24s ease, opacity .24s ease;
  }
  /* Closed state — explicit reset so no inherited transform leaks in */
  .menu-toggle[aria-expanded="false"] span:first-child,
  .menu-toggle[aria-expanded="false"] span:last-child {
    transform: none;
    opacity: 1;
  }
  /* Open state — both spans rotate toward the same center to form ✕ */
  /* center-to-center distance = 2px bar + 2×2.5px margin = 7px → offset = 3.5px */
  .menu-toggle[aria-expanded="true"] span:first-child {
    transform: translateY(3.5px) rotate(45deg);
  }
  .menu-toggle[aria-expanded="true"] span:last-child {
    transform: translateY(-3.5px) rotate(-45deg);
  }

  /* Hidden state — no layout, no visual bleed */
  .primary-nav {
    display: none;
    position: absolute;
    top: 100%;        /* sits flush below the header */
    left: 16px;
    right: 16px;
    z-index: 200;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 12px 18px 18px;
    border: 1px solid #d7e4eb;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 20px 44px rgba(8,43,74,.18);
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    font-size: 15px;
    font-weight: 600;
  }

  /* Open state */
  .primary-nav.is-open {
    display: flex;
  }

  /* Nav links */
  .primary-nav > a:not(.nav-cta) {
    padding: 13px 0;
    color: #244b66;
    border-bottom: 1px solid #e5edf2;
    font-size: 15px;
    font-weight: 600;
  }
  .primary-nav > a:not(.nav-cta):last-of-type { border-bottom: 0; }
  .primary-nav > a:not(.nav-cta):hover { color: #0876bd; }
  .primary-nav > a[aria-current="page"]:not(.nav-cta) { color: #0876bd; }
  .primary-nav > a:not(.nav-cta)::after { display: none; }

  /* Language switch & CTA within mobile menu */
  .primary-nav .language-switch {
    align-self: flex-start;
    margin: 12px 0 4px;
    border-color: #d6e3eb;
    background: #f5f9fc;
  }
  .primary-nav .language-option { color: #526b7d; }
  .primary-nav .language-option[aria-pressed="true"] { background: #0876bd; color: #fff; }
  .primary-nav .nav-cta {
    align-self: flex-start;
    margin-top: 8px;
    background: #f5a623;
    color: #173a53;
  }
}

/* Compact, image-led service previews for home and the all-services page. */
.services-grid,
.detail-service-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  align-items: stretch;
}
.service-card-compact {
  display: flex;
  min-width: 0;
  height: 100%;
  flex-direction: column;
  padding: 0 0 17px;
  overflow: hidden;
  border: 1px solid rgba(8,43,74,.12);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(8,43,74,.09);
  color: #173a53;
  transition: transform .22s ease, box-shadow .22s ease;
}
.service-card-compact:nth-child(even) { background: #fff; }
.service-card.service-card-compact:nth-child(odd),
.service-card.service-card-compact:nth-child(even) {
  background: #fff;
  color: #173a53;
}
.service-card-compact:hover { transform: translateY(-4px); box-shadow: 0 18px 38px rgba(8,43,74,.14); }
.service-card-compact .service-card-image {
  display: block;
  width: 100%;
  height: 142px;
  flex: 0 0 142px;
  margin: 0;
  object-fit: cover;
  object-position: center 45%;
}
.service-card-compact .service-header {
  align-items: center;
  gap: 11px;
  margin: 14px 18px 9px;
  padding: 0;
}
.service-card-compact .service-symbol {
  position: static;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 13px;
  background: #e7f2f8;
  color: #0876bd;
  box-shadow: none;
}
.service-card-compact:nth-child(even) .service-symbol { background: #fff0d6; color: #ad6d0b; }
.service-card-compact .service-symbol svg { width: 27px; height: 27px; }
.service-card-compact .service-title-wrap { min-width: 0; }
.service-card-compact .service-number { display: none; }
.service-card-compact h3 {
  margin: 0;
  color: #123b59;
  font-size: clamp(17px, 1.65vw, 22px);
  line-height: 1.25;
  letter-spacing: -.035em;
}
.service-card-compact > p {
  min-height: 0;
  margin: 0 18px;
  color: #536e80;
  font-size: 13px;
  line-height: 1.6;
}
.service-card-compact .service-details { display: none !important; }
.service-card-compact .service-more {
  display: flex;
  width: auto;
  height: auto;
  min-height: 32px;
  flex: 0 0 auto;
  justify-content: space-between;
  margin: auto 18px 0;
  margin-left: 18px;
  padding-top: 13px;
  color: #0876bd;
  font-size: 11px;
  border-radius: 0;
  background: transparent;
}
.service-card.service-card-compact:nth-child(odd) .service-more,
.service-card.service-card-compact:nth-child(even) .service-more { background: transparent; }
.service-card-compact:nth-child(even) .service-more { color: #9d6108; }
.service-card-compact .service-more span:first-child { display: inline; }
.service-card-compact .service-more span:last-child {
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  border-radius: 50%;
  background: #e7f2f8;
  color: #0876bd;
  font-size: 16px;
}
.service-card-compact:nth-child(even) .service-more span:last-child { background: #fff0d6; color: #9d6108; }
#services-grid .service-card-compact { height: 300px; }
.detail-service-grid .service-card-compact { height: 350px; }

/* Full service pages keep the photo and show every detail in a clean layout. */
.detail-service-grid.single-service { grid-template-columns: minmax(0, 940px); }
.service-card-detailed {
  width: 100%;
  max-width: none;
  min-height: 0;
  padding: 0 28px 30px;
  border: 1px solid rgba(8,43,74,.12);
  border-top: 5px solid #0876bd;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 18px 48px rgba(8,43,74,.12);
  color: #173a53;
}
.service-card-detailed:nth-child(even) { border-top-color: #efa322; background: #fff; }
.service-card.service-card-detailed:nth-child(odd),
.service-card.service-card-detailed:nth-child(even) { background: #fff; color: #173a53; }
.service-card-detailed .service-card-image {
  display: block;
  width: calc(100% + 56px);
  height: clamp(190px, 28vw, 290px);
  margin: 0 -28px 23px;
  object-fit: cover;
  object-position: center 43%;
}
.service-card-detailed .service-header { align-items: center; gap: 15px; margin: 0 0 12px; padding: 0; }
.service-card-detailed .service-symbol {
  position: static;
  flex: 0 0 58px;
  width: 58px;
  height: 58px;
  border: 0;
  border-radius: 17px;
  background: #e7f2f8;
  color: #0876bd;
  box-shadow: none;
}
.service-card-detailed:nth-child(even) .service-symbol { background: #fff0d6; color: #ad6d0b; }
.service-card-detailed .service-symbol svg { width: 34px; height: 34px; }
.service-card-detailed .service-number {
  display: block;
  position: static;
  margin: 0 0 5px;
  padding: 0;
  background: none;
  color: #718797;
  font-size: 10px;
  letter-spacing: .12em;
}
.service-card-detailed h3 { margin: 0; color: #123b59; font-size: clamp(23px, 3vw, 34px); line-height: 1.2; }
.service-card-detailed > p { min-height: 0; margin: 0 0 22px 73px; color: #536e80; font-size: 15px; line-height: 1.7; }
.service-card-detailed .service-details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 11px;
  margin: 0;
  padding: 20px 0 0;
  border-top: 1px solid #e1eaf0;
  list-style: none;
  color: #536e80;
}
.service-card-detailed .service-details li {
  min-width: 0;
  padding: 14px 15px;
  border: 1px solid #e5eef3;
  border-radius: 13px;
  background: linear-gradient(135deg, #f8fbfd, #fffaf0);
  list-style: none;
}
.service-card-detailed .service-details li:nth-child(odd) {
  border-color: rgba(7,70,113,.22);
  background: linear-gradient(145deg, #0876bd, #075588);
}
.service-card-detailed .service-details li:nth-child(even) {
  border-color: rgba(176,107,9,.24);
  background: linear-gradient(145deg, #f5a623, #e08b10);
}
.service-card-detailed .service-details li strong { margin-bottom: 5px; color: #153e5c; font-size: 13px; line-height: 1.4; }
.service-card-detailed .service-details li span { color: #607989; font-size: 12px; line-height: 1.6; }
.service-card-detailed .service-details li:nth-child(odd) strong,
.service-card-detailed .service-details li:nth-child(odd) span { color: #fff; }
.service-card-detailed .service-details li:nth-child(even) strong,
.service-card-detailed .service-details li:nth-child(even) span { color: #173a53; }
.detail-service-intro { margin-inline: auto; }
.detail-service-intro > p { color: #536e80; }
@media (max-width: 680px) {
  .services-grid, .detail-service-grid { grid-template-columns: 1fr; gap: 15px; }
  #services-grid .service-card-compact { height: 285px; }
  .detail-service-grid .service-card-compact { height: 325px; }
  .service-card-compact .service-card-image { height: 135px; flex-basis: 135px; }
  .service-card-detailed { padding: 0 18px 21px; border-radius: 18px; }
  .service-card-detailed .service-card-image { width: calc(100% + 36px); height: 180px; margin: 0 -18px 19px; }
  .service-card-detailed .service-symbol { flex-basis: 50px; width: 50px; height: 50px; }
  .service-card-detailed > p { margin-left: 0; font-size: 14px; }
  .service-card-detailed .service-details { grid-template-columns: 1fr; }
}

/* About page: company profile, distinct purpose cards, and designed goal tiles. */
.about-story-section {
  color: #173a53;
  background: linear-gradient(135deg, #fff 0%, #f0f7fb 64%, #fff4df 100%);
}
.about-story-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(270px, .75fr);
  align-items: center;
  gap: clamp(38px, 7vw, 92px);
}
.about-story-copy { max-width: 650px; }
.about-story-copy .detail-title {
  max-width: 590px;
  margin: 16px 0 17px;
  color: #123b59;
  font-size: clamp(30px, 3.8vw, 46px);
  line-height: 1.15;
}
.about-story-copy > p { margin: 0; color: #536e80; font-size: 15px; line-height: 1.85; }
.about-facts { display: grid; gap: 13px; }
.about-fact {
  position: relative;
  min-width: 0;
  padding: 21px 22px 21px 62px;
  overflow: hidden;
  border: 1px solid rgba(8,78,125,.12);
  border-radius: 18px;
  background: rgba(255,255,255,.82);
  box-shadow: 0 12px 30px rgba(8,43,74,.07);
}
.about-fact::before {
  position: absolute;
  top: 21px;
  left: 20px;
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  border-radius: 10px;
  background: #e7f2f8;
  color: #0876bd;
  content: '↗';
  font-size: 16px;
  font-weight: 800;
}
.about-fact-established::before { background: #fff0d6; color: #a96808; content: '✦'; }
.about-fact-index { display: none; }
.about-fact small { display: block; margin-bottom: 7px; color: #718797; font-size: 10px; font-weight: 800; letter-spacing: .13em; }
.about-fact strong { display: block; color: #173a53; font-size: 14px; line-height: 1.65; }
.about-fact strong .location-entry { display: block; }
.about-purpose-section {
  position: relative;
  overflow: hidden;
  padding: clamp(66px, 8vw, 100px) 0;
  color: #fff;
  background: linear-gradient(125deg, #064d7d 0%, #0876bd 63%, #0a5d91 100%);
}
.about-purpose-section::before,
.about-purpose-section::after {
  position: absolute;
  width: 380px;
  height: 380px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 50%;
  content: '';
  pointer-events: none;
}
.about-purpose-section::before { top: -225px; right: -80px; box-shadow: 0 0 0 38px rgba(255,255,255,.025), 0 0 0 78px rgba(255,255,255,.02); }
.about-purpose-section::after { bottom: -275px; left: -145px; width: 440px; height: 440px; border-color: rgba(245,166,35,.18); }
.about-purpose-section > .shell { position: relative; z-index: 1; }
.about-purpose-heading { max-width: 740px; margin: 0 auto 34px; text-align: center; }
.about-purpose-heading .eyebrow { color: rgba(255,255,255,.8); }
.about-purpose-heading h2 { margin: 14px 0 9px; color: #fff; font-family: var(--font-display); font-size: clamp(34px, 4.5vw, 55px); line-height: 1.12; letter-spacing: -.045em; }
.about-purpose-heading > p { margin: 0; color: rgba(255,255,255,.78); font-size: 15px; line-height: 1.7; }
.about-purpose-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.about-purpose-card {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 300px;
  flex-direction: column;
  justify-content: space-between;
  padding: clamp(24px, 4vw, 38px);
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.3);
  border-radius: 24px;
  background: linear-gradient(145deg, rgba(255,255,255,.15), rgba(255,255,255,.06));
  box-shadow: 0 18px 42px rgba(3,34,58,.17);
  backdrop-filter: blur(7px);
}
.about-purpose-vision {
  border-color: rgba(255,255,255,.38);
  background: linear-gradient(145deg, #f5a623, #e08b10);
  color: #173a53;
}
.about-purpose-card::after {
  position: absolute;
  top: -64px;
  right: -46px;
  width: 200px;
  height: 200px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 50%;
  box-shadow: 0 0 0 22px rgba(255,255,255,.035), 0 0 0 44px rgba(255,255,255,.025);
  content: '';
  pointer-events: none;
}
.about-purpose-index { position: absolute; top: 25px; right: 28px; color: rgba(255,255,255,.7); font-size: 11px; font-weight: 800; letter-spacing: .15em; }
.about-purpose-vision .about-purpose-index { color: rgba(23,58,83,.68); }
.about-purpose-symbol { display: grid; width: 54px; height: 54px; place-items: center; border: 1px solid rgba(255,255,255,.28); border-radius: 17px; background: rgba(255,255,255,.14); color: #fff; font-family: var(--font-display); font-size: 22px; font-weight: 800; }
.about-purpose-vision .about-purpose-symbol { border-color: rgba(23,58,83,.14); background: rgba(255,255,255,.28); color: #173a53; }
.about-purpose-card > div { position: relative; z-index: 1; max-width: 590px; margin-top: 24px; }
.about-purpose-card small { color: #ffd27b; font-size: 10px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.about-purpose-vision small { color: #075f98; }
.about-purpose-card h3 { margin: 9px 0 12px; color: #fff; font-family: var(--font-display); font-size: clamp(23px, 2.7vw, 32px); line-height: 1.2; }
.about-purpose-vision h3 { color: #173a53; }
.about-purpose-card p { margin: 0; color: rgba(255,255,255,.9); font-size: 14px; line-height: 1.8; }
.about-purpose-vision p { color: #294b63; }
.about-goals-section { background: linear-gradient(145deg, #fff 0%, #f3f8fb 62%, #fff4df 100%); }
.about-goals-heading { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 30px; }
.about-goals-heading h2 { margin: 12px 0 0; color: #123b59; font-family: var(--font-display); font-size: clamp(34px, 4vw, 48px); line-height: 1.1; letter-spacing: -.045em; }
.about-goals-heading > p { max-width: 430px; margin: 0 0 3px; color: #536e80; font-size: 14px; line-height: 1.75; }
.about-goals-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 13px; }
.about-goal-card {
  position: relative;
  min-width: 0;
  min-height: 246px;
  padding: 21px 17px;
  overflow: hidden;
  border: 1px solid rgba(8,78,125,.12);
  border-radius: 18px;
  background: linear-gradient(150deg, #fff, #eaf5fb);
  box-shadow: 0 12px 27px rgba(8,43,74,.08);
  transition: transform .22s ease, box-shadow .22s ease;
}
.about-goal-card:nth-child(even) { border-color: rgba(216,135,13,.18); background: linear-gradient(150deg, #fff, #fff0d6); }
.about-goal-card:hover { transform: translateY(-4px); box-shadow: 0 18px 35px rgba(8,43,74,.14); }
.about-goal-number { position: relative; z-index: 1; display: inline-flex; min-width: 36px; height: 30px; align-items: center; justify-content: center; border-radius: 9px; background: #0876bd; color: #fff; font-size: 10px; font-weight: 800; letter-spacing: .1em; }
.about-goal-card:nth-child(even) .about-goal-number { background: #f5a623; color: #173a53; }
.about-goal-orbit { position: absolute; top: -38px; right: -37px; width: 110px; height: 110px; border: 1px solid rgba(8,118,189,.11); border-radius: 50%; box-shadow: 0 0 0 13px rgba(8,118,189,.035), 0 0 0 26px rgba(8,118,189,.025); }
.about-goal-card:nth-child(even) .about-goal-orbit { border-color: rgba(216,135,13,.2); box-shadow: 0 0 0 13px rgba(216,135,13,.045), 0 0 0 26px rgba(216,135,13,.03); }
.about-goal-card h3 { position: relative; z-index: 1; margin: 24px 0 9px; color: #123b59; font-size: 16px; line-height: 1.35; }
.about-goal-card p { position: relative; z-index: 1; margin: 0; color: #536e80; font-size: 12px; line-height: 1.7; }
.about-values-link { margin-top: 26px; }

/* Values match the reference's tall, icon-led cards, alternating Ameen blue/orange. */
body[data-page="values"] .values-section {
  padding-block: clamp(62px, 8vw, 98px);
  background: linear-gradient(125deg, #064d7d, #0876bd 65%, #075588);
}
body[data-page="values"] .values-grid-detail {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 13px;
}
body[data-page="values"] .values-grid-detail .value-card {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 300px;
  flex-direction: column;
  align-items: flex-start;
  padding: 22px 17px 20px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 23px;
  background: linear-gradient(155deg, rgba(255,255,255,.15), rgba(255,255,255,.06));
  box-shadow: 0 14px 30px rgba(3,28,49,.16);
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
body[data-page="values"] .values-grid-detail .value-card:nth-child(even) {
  border-color: rgba(255,255,255,.42);
  background: linear-gradient(155deg, #f5a623, #df8910);
  box-shadow: 0 14px 30px rgba(3,28,49,.14);
}
body[data-page="values"] .values-grid-detail .value-card:hover { transform: translateY(-5px); border-color: rgba(255,255,255,.6); box-shadow: 0 20px 38px rgba(3,28,49,.24); }
body[data-page="values"] .values-grid-detail .value-card::after { position: absolute; right: -36px; bottom: -42px; width: 125px; height: 125px; border: 1px solid rgba(255,255,255,.13); border-radius: 50%; background: transparent; content: ''; }
body[data-page="values"] .values-grid-detail .value-icon { position: relative; z-index: 1; display: grid; width: 42px; height: 42px; place-items: center; border: 0; border-radius: 13px; background: rgba(255,255,255,.14); color: #fff; }
body[data-page="values"] .values-grid-detail .value-icon svg { width: 24px; height: 24px; }
body[data-page="values"] .values-grid-detail .value-number { top: 27px; right: 16px; color: rgba(255,255,255,.72); }
body[data-page="values"] .values-grid-detail .value-card h3 { position: relative; z-index: 1; margin: 24px 0 11px; color: #fff; font-size: 16px; line-height: 1.3; }
body[data-page="values"] .values-grid-detail .value-card p { position: relative; z-index: 1; margin: 0; color: rgba(255,255,255,.9); font-size: 12px; line-height: 1.65; }
body[data-page="values"] .values-grid-detail .value-card:nth-child(even) .value-icon { background: rgba(255,255,255,.32); color: #173a53; }
body[data-page="values"] .values-grid-detail .value-card:nth-child(even) .value-number { color: rgba(23,58,83,.7); }
body[data-page="values"] .values-grid-detail .value-card:nth-child(even) h3 { color: #173a53; }
body[data-page="values"] .values-grid-detail .value-card:nth-child(even) p { color: #294b63; }
@media (max-width: 1050px) {
  .about-goals-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  body[data-page="values"] .values-grid-detail { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .about-story-layout { grid-template-columns: 1fr; gap: 26px; }
  .about-facts { grid-template-columns: 1fr 1fr; }
  .about-fact { padding: 18px 14px 18px 52px; }
  .about-fact::before { top: 18px; left: 13px; }
  .about-purpose-grid { grid-template-columns: 1fr; }
  .about-purpose-card { min-height: 270px; }
  .about-goals-heading { display: block; }
  .about-goals-heading > p { margin-top: 14px; }
  .about-goals-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }
  .about-goal-card { min-height: 230px; padding: 17px 14px; }
  body[data-page="values"] .values-grid-detail { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  body[data-page="values"] .values-grid-detail .value-card { min-height: 255px; padding: 18px 15px; }
}
@media (max-width: 390px) {
  .about-facts { grid-template-columns: 1fr; }
  .about-goals-grid { grid-template-columns: 1fr; }
  .about-goal-card { min-height: 0; }
  body[data-page="values"] .values-grid-detail { grid-template-columns: 1fr; }
  body[data-page="values"] .values-grid-detail .value-card { min-height: 210px; }
}

/* Resolve higher-specificity legacy section rules on values.html. */
body[data-page="values"] main > .values-section.section-pad {
  background: linear-gradient(125deg, #064d7d, #0876bd 65%, #075588);
}
body[data-page="values"] main > .values-section.section-pad .values-grid-detail .value-card {
  border-color: rgba(255,255,255,.24);
  background: linear-gradient(155deg, #0876bd, #075588);
  color: #fff;
}
body[data-page="values"] main > .values-section.section-pad .values-grid-detail .value-card:nth-child(even) {
  border-color: rgba(255,255,255,.4);
  background: linear-gradient(155deg, #f5a623, #df8910);
}
body[data-page="values"] main > .values-section.section-pad .values-grid-detail .value-card h3,
body[data-page="values"] main > .values-section.section-pad .values-grid-detail .value-card p { color: #fff; }
body[data-page="values"] main > .values-section.section-pad .values-grid-detail .value-card:nth-child(even) h3 { color: #173a53; }
body[data-page="values"] main > .values-section.section-pad .values-grid-detail .value-card:nth-child(even) p { color: #294b63; }
.about-purpose-card { justify-content: flex-start; gap: 23px; }
.about-purpose-card > div { margin-top: 0; }

/* Goals live in one place: About offers a roadmap preview that links here. */
.about-goals-section { scroll-margin-top: 100px; }
.about-goals-preview { max-width: 1040px; }
.about-goals-preview .about-goals-heading { align-items: flex-end; }
.about-goals-roadmap {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  padding: 18px;
  border: 1px solid rgba(8,78,125,.12);
  border-radius: 20px;
  background: rgba(255,255,255,.82);
  box-shadow: 0 12px 30px rgba(8,43,74,.07);
}
.about-goal-step {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 9px;
  padding: 11px 9px;
  border-radius: 12px;
  color: #254c66;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;
}
.about-goal-step > span {
  display: grid;
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  place-items: center;
  border-radius: 10px;
  background: #0876bd;
  color: #fff;
  font-size: 10px;
  letter-spacing: .06em;
}
.about-goal-step:nth-child(even) > span { background: #f5a623; color: #173a53; }
.about-goals-cta { margin-top: 20px; border-radius: 11px; }
.about-goals-cta span:last-child { font-size: 17px; }

/* Single source of full goal descriptions: styled cards on the Values page. */
body[data-page="values"] main > .goals-section#goals {
  scroll-margin-top: 100px;
  background: linear-gradient(140deg, #f7fbfd 0%, #fff 58%, #fff5e3 100%);
}
.values-goals-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 32px;
  margin-bottom: 30px;
}
.values-goals-heading h2 {
  margin: 12px 0 0;
  color: #123b59;
  font-family: var(--font-display);
  font-size: clamp(36px, 4vw, 50px);
  line-height: 1.1;
  letter-spacing: -.045em;
}
.values-goals-heading > p {
  max-width: 470px;
  margin: 0 0 3px;
  color: #536e80;
  font-size: 14px;
  line-height: 1.75;
}
.values-goals-list {
  position: relative;
  max-width: 930px;
  margin-inline: auto;
}
.values-goals-list::before {
  position: absolute;
  top: 26px;
  bottom: 26px;
  left: 28px;
  width: 2px;
  background: linear-gradient(180deg, #0876bd, #b9d8e9 42%, #f5a623 62%, #e8c98f);
  content: '';
}
.values-goal-item {
  position: relative;
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) 28px;
  align-items: center;
  gap: 22px;
  min-height: 118px;
  padding: 21px 14px 21px 0;
  border-bottom: 1px solid #dce8ee;
  transition: padding .2s ease, background .2s ease;
}
.values-goal-item:first-child { border-top: 1px solid #dce8ee; }
.values-goal-item:hover { padding-left: 8px; background: linear-gradient(90deg, rgba(8,118,189,.045), rgba(245,166,35,.035)); }
.values-goal-number {
  position: relative;
  z-index: 1;
  display: grid;
  width: 58px;
  height: 58px;
  place-items: center;
  border: 5px solid #f7fbfd;
  border-radius: 50%;
  background: #0876bd;
  color: #fff;
  font-family: var(--font-display);
  font-size: 13px;
  font-weight: 800;
  box-shadow: 0 0 0 1px rgba(8,118,189,.18), 0 5px 14px rgba(8,78,125,.13);
}
.values-goal-item:nth-child(even) .values-goal-number {
  background: #f5a623;
  color: #173a53;
  box-shadow: 0 0 0 1px rgba(216,135,13,.22), 0 5px 14px rgba(216,135,13,.12);
}
.values-goal-item > div { min-width: 0; }
.values-goal-item h3 {
  margin: 0 0 5px;
  color: #123b59;
  font-family: var(--font-display);
  font-size: 19px;
  line-height: 1.35;
  letter-spacing: -.025em;
}
.values-goal-item p { max-width: 710px; margin: 0; color: #536e80; font-size: 14px; line-height: 1.7; }
.values-goal-arrow { color: #0876bd; font-size: 20px; transition: color .2s ease, transform .2s ease; }
.values-goal-item:nth-child(even) .values-goal-arrow { color: #c17a0d; }
.values-goal-item:hover .values-goal-arrow { transform: translate(3px, -3px); }
@media (max-width: 900px) {
  .about-goal-step { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 680px) {
  .about-goals-preview .about-goals-heading,
  .values-goals-heading { display: block; }
  .about-goals-preview .about-goals-heading > p,
  .values-goals-heading > p { margin-top: 13px; }
  .about-goals-roadmap { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 10px; }
  .about-goal-step { flex-direction: row; align-items: center; padding: 9px 5px; font-size: 11px; }
  .values-goals-list { margin-left: 0; }
  .values-goals-list::before { left: 21px; }
  .values-goal-item { grid-template-columns: 44px minmax(0, 1fr) 20px; gap: 13px; min-height: 112px; padding-block: 18px; }
  .values-goal-number { width: 44px; height: 44px; border-width: 4px; font-size: 11px; }
  .values-goal-item h3 { font-size: 16px; }
  .values-goal-item p { font-size: 12px; line-height: 1.6; }
  .values-goal-arrow { font-size: 16px; }
}

/* Final service-preview palette and CTA placement. */
.service-card.service-card-compact:nth-child(odd) {
  border-color: rgba(7,70,113,.22);
  background: linear-gradient(145deg, #0876bd 0%, #075588 100%);
  box-shadow: 0 12px 28px rgba(8,78,125,.18);
}
.service-card.service-card-compact:nth-child(even) {
  border-color: rgba(176,107,9,.24);
  background: linear-gradient(145deg, #f5a623 0%, #e08b10 100%);
  box-shadow: 0 12px 28px rgba(216,135,13,.18);
}
.service-card-compact:nth-child(odd) .service-symbol,
.service-card-compact:nth-child(even) .service-symbol {
  border: 1px solid rgba(255,255,255,.32);
  background: rgba(255,255,255,.16);
  color: #fff;
}
.service-card-compact:nth-child(odd) h3,
.service-card-compact:nth-child(odd) > p,
.service-card-compact:nth-child(odd) .service-more { color: #fff; }
.service-card-compact:nth-child(even) h3,
.service-card-compact:nth-child(even) > p,
.service-card-compact:nth-child(even) .service-more { color: #173a53; }
.service-card-compact .service-more {
  justify-content: flex-start;
  gap: 12px;
  margin: 12px 18px 0;
  padding-top: 0;
}
.service-card-compact .service-more span:last-child {
  flex: 0 0 32px;
  background: rgba(255,255,255,.18);
  color: inherit;
}
.service-card-compact:nth-child(even) .service-more span:last-child {
  background: rgba(255,255,255,.38);
  color: #173a53;
}
#services-grid .service-card-compact { height: 278px; min-height: 0; }
#services-grid .service-card-compact > p { margin-bottom: 0; }
.detail-service-grid .service-card-compact { height: 350px; }
@media (max-width: 680px) {
  #services-grid .service-card-compact { height: 270px; min-height: 0; }
}

/* Contact rows follow the supplied reference and safely wrap long contact details. */
.enquiry-copy .contact-card-light {
  width: 100%;
  min-width: 0;
  padding: 8px clamp(14px, 3vw, 26px);
  border: 1px solid rgba(8,78,125,.1);
  border-radius: 22px;
  background: rgba(255,255,255,.98);
  box-shadow: 0 16px 38px rgba(8,43,74,.12);
}
.contact-card-light .contact-row {
  min-width: 0;
  min-height: 82px;
  gap: clamp(10px, 2.4vw, 18px);
  border-bottom: 1px solid #e4edf2;
}
.contact-card-light .contact-row > span:nth-child(2) {
  min-width: 0;
  flex: 1 1 auto;
}
.contact-card-light .contact-row strong {
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
  font-size: clamp(13px, 1.45vw, 17px);
  line-height: 1.35;
}
.contact-card-light .contact-icon {
  flex: 0 0 56px;
  width: 56px;
  height: 56px;
  border-radius: 20px;
  background: linear-gradient(145deg, #e7f2f8 0%, #fff0d6 100%);
  color: #0876bd;
}
.contact-card-light .contact-arrow {
  flex: 0 0 auto;
  margin-left: auto;
  color: #d8870d;
}
.contact-card-light .contact-location {
  min-width: 0;
  align-items: flex-start;
  gap: clamp(10px, 2.4vw, 18px);
  padding-block: 18px;
  font-size: 13px;
}
.contact-card-light .contact-location .location-list {
  min-width: 0;
  overflow-wrap: anywhere;
}
@media (max-width: 520px) {
  .enquiry-copy .contact-card-light { padding-inline: 12px; border-radius: 18px; }
  .contact-card-light .contact-row { min-height: 76px; gap: 10px; }
  .contact-card-light .contact-icon { flex-basis: 46px; width: 46px; height: 46px; border-radius: 16px; }
  .contact-card-light .contact-icon svg { width: 20px; height: 20px; }
  .contact-card-light .contact-row strong { font-size: 13px; }
  .contact-card-light .contact-arrow { font-size: 15px; }
  .contact-card-light .contact-location { gap: 10px; }
}
@media (max-width: 900px) {
  .enquiry-layout { grid-template-columns: minmax(0, 1fr); }
  .enquiry-copy .contact-card-light { max-width: none; }
}
.contact-card-light .contact-row[href^="tel:"] strong { white-space: nowrap; }

/* Get-in-touch: give the contact details and enquiry form distinct logo colors. */
body[data-page="contact"] .enquiry-section {
  background: linear-gradient(135deg, #f1f8fc 0%, #fff 52%, #fff5e3 100%);
}
body[data-page="contact"] .enquiry-copy .contact-card-light {
  border: 1px solid rgba(255,255,255,.24);
  background: linear-gradient(145deg, #0876bd 0%, #064d7d 100%);
  box-shadow: 0 20px 46px rgba(8,78,125,.22);
}
body[data-page="contact"] .contact-card-light .contact-row { border-bottom-color: rgba(255,255,255,.2); }
body[data-page="contact"] .contact-card-light .contact-icon {
  border: 1px solid rgba(255,255,255,.26);
  background: rgba(255,255,255,.14);
  color: #fff;
}
body[data-page="contact"] .contact-card-light .contact-row small { color: rgba(255,255,255,.72); }
body[data-page="contact"] .contact-card-light .contact-row strong { color: #fff; }
body[data-page="contact"] .contact-card-light .contact-arrow { color: #ffd27b; }
body[data-page="contact"] .contact-card-light .contact-location { color: rgba(255,255,255,.88); }
body[data-page="contact"] .enquiry-form {
  border: 1px solid rgba(170,101,6,.22);
  background: linear-gradient(145deg, #ffd178 0%, #f5a623 58%, #e99416 100%);
  box-shadow: 0 20px 48px rgba(197,119,10,.2);
}
body[data-page="contact"] .enquiry-form label { color: #173a53; }
body[data-page="contact"] .enquiry-form input,
body[data-page="contact"] .enquiry-form select,
body[data-page="contact"] .enquiry-form textarea {
  border-color: rgba(8,78,125,.18);
  background: rgba(255,255,255,.96);
  color: #173a53;
}
body[data-page="contact"] .enquiry-form input:focus,
body[data-page="contact"] .enquiry-form select:focus,
body[data-page="contact"] .enquiry-form textarea:focus {
  border-color: #0876bd;
  box-shadow: 0 0 0 4px rgba(8,118,189,.16);
}
body[data-page="contact"] .enquiry-form button {
  background: linear-gradient(135deg, #0876bd, #064d7d);
  color: #fff;
  box-shadow: 0 8px 18px rgba(8,78,125,.2);
}
body[data-page="contact"] .enquiry-form button:hover { background: linear-gradient(135deg, #0b85ce, #075989); }
body[data-page="contact"] .enquiry-privacy { color: #40586a; }

/* A clean light footer with distinct, spaced branch lines. */
body .site-footer {
  min-height: 0;
  padding: 48px 0 20px;
  border: 0;
  border-top: 1px solid #dce8ee;
  border-image: none;
  background: #fff;
  color: #173a53;
}
body .site-footer .footer-layout {
  grid-template-columns: minmax(210px, 1.2fr) repeat(2, minmax(150px, .8fr)) minmax(190px, 1fr);
  gap: 30px;
}
body .site-footer .footer-brand-column p { color: #60798b; }
body .site-footer .footer-links h2,
body .site-footer .footer-location h2 { color: #0876bd; }
body .site-footer .footer-links a,
body .site-footer .footer-contact-link { color: #34566e; }
body .site-footer .footer-location p {
  display: grid;
  gap: 7px;
  max-width: 290px;
  margin: 0;
  color: #536d7e;
  line-height: 1.6;
}
body .site-footer .footer-location p > span { display: block; }
body .site-footer .footer-bottom { border-top-color: #e2ebf0; color: #607789; }
body .site-footer .footer-bottom a { color: #0876bd; }
body .site-footer .brand-footer { border: 1px solid #e4edf2; background: #f7fbfd; }

/* Native modal result for enquiry submission. */
.enquiry-result-dialog {
  width: min(460px, calc(100vw - 32px));
  max-width: none;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(8,78,125,.16);
  border-radius: 24px;
  background: #fff;
  color: #173a53;
  box-shadow: 0 28px 80px rgba(4,29,49,.3);
}
.enquiry-result-dialog::backdrop { background: rgba(5,31,53,.58); backdrop-filter: blur(4px); }
.enquiry-dialog-content { padding: 34px 32px 30px; text-align: center; }
.enquiry-dialog-mark {
  display: grid;
  width: 64px;
  height: 64px;
  margin: 0 auto 18px;
  place-items: center;
  border-radius: 21px;
  background: linear-gradient(145deg, #e7f4fb, #d5ecf8);
  color: #0876bd;
  font-size: 30px;
  font-weight: 800;
}
.enquiry-result-dialog.is-error .enquiry-dialog-mark { background: linear-gradient(145deg, #fff0d6, #ffe2b0); color: #a96808; }
.enquiry-dialog-content h2 { margin: 0 0 9px; color: #123b59; font-family: var(--font-display); font-size: 25px; letter-spacing: -.03em; }
.enquiry-dialog-message { margin: 0; color: #536e80; font-size: 14px; line-height: 1.7; }
.enquiry-dialog-detail { margin: 13px 0 0; color: #98600c; font-size: 12px; line-height: 1.55; overflow-wrap: anywhere; }
.enquiry-dialog-close { min-width: 135px; margin-top: 23px; border: 0; border-radius: 11px; cursor: pointer; }
@media (max-width: 900px) {
  body .site-footer .footer-layout { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 22px; }
}
@media (max-width: 520px) {
  body .site-footer { padding: 36px 0 18px; }
  body .site-footer .footer-layout { grid-template-columns: 1fr; gap: 24px; }
  body .site-footer .footer-bottom { grid-column: 1; flex-direction: column; }
  .enquiry-dialog-content { padding: 28px 22px 24px; }
}

/* Fixed WhatsApp contact shortcut for every page except Contact. */
.whatsapp-float {
  position: fixed;
  right: max(22px, env(safe-area-inset-right));
  bottom: max(22px, env(safe-area-inset-bottom));
  z-index: 80;
  display: grid;
  width: 60px;
  height: 60px;
  place-items: center;
  align-items: center;
  justify-content: center;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.32);
  border-radius: 999px;
  background: linear-gradient(135deg, #25d366, #128c7e);
  color: #fff;
  box-shadow: 0 12px 30px rgba(18,140,126,.32), 0 3px 8px rgba(4,29,49,.16);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.whatsapp-float:hover { transform: translateY(-3px); filter: saturate(1.08); box-shadow: 0 17px 36px rgba(18,140,126,.38), 0 5px 12px rgba(4,29,49,.17); }
.whatsapp-float:focus-visible { outline: 3px solid #f5a623; outline-offset: 4px; }
.whatsapp-float-icon { position: relative; z-index: 1; display: block; width: 32px; height: 32px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.whatsapp-float-pulse { position: absolute; inset: 0; border: 1px solid rgba(255,255,255,.28); border-radius: inherit; pointer-events: none; }
@media (max-width: 520px) {
  .whatsapp-float { right: max(15px, env(safe-area-inset-right)); bottom: max(15px, env(safe-area-inset-bottom)); width: 54px; height: 54px; }
  .whatsapp-float-icon { width: 29px; height: 29px; }
}
@media (prefers-reduced-motion: reduce) {
  .whatsapp-float { transition: none; }
}
