/* ==========================================================
   AICS â€” premium layer (loaded after acis.css).
   Fonts and colours aligned strictly with site2.
   Remove this file's <link> to revert to the original look.
   ========================================================== */
:root{
  /* palette + font taken strictly from site2 (assets/style.css) */
  --navy:#0f3580;          /* site2 --blue-dark */
  --royal:#1848a0;         /* site2 --blue */
  --gold:#fad430;          /* site2 --yellow */
  --gold-lt:#fad430;       /* site2 --yellow */
  --ivory:#fef9db;         /* site2 --yellow-light */
  --mist:#e8eef9;          /* site2 --blue-light */
  --ink:#1a1a2e;           /* site2 --text */
  --body:#5a6070;          /* site2 --muted */
  --border:#e4e6ea;        /* site2 --grey-mid */
  --serif:'Poppins',system-ui,sans-serif;
  --sans:'Poppins',system-ui,sans-serif;
  --shadow-sm:0 2px 6px rgba(15,53,128,.05),0 8px 24px -12px rgba(15,53,128,.14);
  --shadow-lg:0 4px 12px rgba(15,53,128,.06),0 30px 60px -28px rgba(15,53,128,.30);
}

/* ---------- base type ---------- */
body{font-family:var(--sans);color:var(--ink);background:#fff;font-size:1.02rem;}
p{font-family:var(--sans);}
::selection{background:var(--gold);color:var(--navy);}

/* display headings: serif, sentence case, elegant weight */
.dsp,.mod-title,.hero-title,.page-hero h1,.cta-band h2,.intro h2,.panel-card h3{
  font-family:var(--serif)!important;text-transform:none!important;font-weight:800!important;letter-spacing:-.02em!important;
}
.mod-title{font-size:clamp(2rem,4.2vw,3.4rem);line-height:1.08;}
.mod-title .ac,.page-hero h1 .ac,.cta-band h2 .ac{font-style:normal;}
.mod-white .mod-title{color:var(--navy)!important;}
.mod-white .mod-title .ac{color:var(--gold)!important;}
.intro h2{font-size:clamp(1.9rem,3.2vw,2.7rem);line-height:1.15;color:var(--navy);}
.intro p,.prose p,.fcard p,.tcard>p,#panel-p p{font-family:var(--sans);color:var(--body);}
.lede{font-family:var(--sans);font-weight:500;color:var(--royal);}
.prose h3,.fcard h3,.tm-b h3,.tauthor b{font-family:var(--serif);font-weight:700;color:var(--navy);}

/* kickers: small, tracked, gold, with a fine rule */
.mod-kicker{font-family:var(--sans);font-weight:700;font-size:.72rem;letter-spacing:.24em;color:var(--gold)!important;display:inline-flex;align-items:center;gap:.7rem;}
.mod-kicker::before{width:28px!important;height:1.5px!important;border-radius:2px!important;opacity:1!important;background:currentColor;margin-right:0!important;}

/* ---------- buttons ---------- */
.btn-pill{font-family:var(--sans);font-weight:700;font-size:.82rem;letter-spacing:.08em;padding:.9rem 1.8rem;box-shadow:var(--shadow-sm);}
.btn-pill:hover{transform:translateY(-2px);}
.btn-gold{background:var(--gold);color:var(--navy);}
.btn-gold:hover{background:#e6bf10;}
.btn-teal{background:var(--navy);}
.btn-ghost{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);}

/* ---------- header ---------- */
.hdr-inner{background:linear-gradient(to bottom,rgba(11,34,87,.70),rgba(11,34,87,0));}
.logo-txt{font-family:var(--sans);font-weight:700;}
.logo-txt .l2{font-size:1.15em;}
.hdr-cta{font-family:var(--sans);font-weight:700;font-size:.84rem;letter-spacing:.14em;}
.hdr-cta.primary .ac,.hdr-cta:hover .ac{background:var(--gold);border-color:var(--gold);color:var(--navy);}
.logo-crest{box-shadow:0 0 0 3px rgba(250,212,48,.55),0 6px 20px rgba(0,0,0,.25);}

/* ---------- hero ---------- */
.hero-slide::after{background:
  linear-gradient(90deg,rgba(11,34,87,.70) 0%,rgba(11,34,87,.25) 45%,transparent 70%),
  linear-gradient(to top,rgba(11,34,87,.85) 0%,rgba(11,34,87,.15) 45%,transparent 70%);}
.hero-title{font-size:clamp(2.6rem,5.4vw,5.2rem);line-height:1.02;color:#fff;text-shadow:0 2px 24px rgba(0,0,0,.25);}
.hero-title .l2{font-family:var(--serif);font-style:normal;font-weight:800;color:var(--gold-lt);font-size:1em;letter-spacing:-.01em;line-height:1.05;}
.hero-body::before{content:'';display:block;width:56px;height:2px;background:var(--gold);margin-bottom:1.4rem;}
.hero-dots button.on{background:var(--gold);border-color:var(--gold);}
.hr-bell{background:var(--gold);box-shadow:0 0 0 6px rgba(250,212,48,.22),0 10px 24px rgba(0,0,0,.25);}

/* ---------- section surfaces ---------- */
.module{padding-top:clamp(4.5rem,9vw,8rem);padding-bottom:clamp(4.5rem,9vw,8rem);}
.module + .module{border-top:none;}
.mod-white + .mod-white{background:#f5f6f8;}
.mod-red{background:radial-gradient(120% 140% at 0% 0%,#2056b8 0%,var(--royal) 45%,var(--navy) 100%);}
.mod-teal,.mod-gold,.mod-navy{background:radial-gradient(120% 140% at 100% 0%,#2056b8 0%,var(--navy) 60%,#0f3580 100%);}
.mod-lime{background:#f5f6f8;}                       /* lemon block -> warm ivory */
.mod-lime .mod-title{color:var(--navy)!important;}
.mod-lime .mod-title .ac{color:var(--gold)!important;}
.mod-lime .mod-kicker{color:var(--gold)!important;}
.mod-lime p{color:var(--body)!important;}
.mod-red .mod-kicker,.mod-teal .mod-kicker,.mod-gold .mod-kicker,.mod-navy .mod-kicker{color:var(--gold-lt)!important;}

/* ---------- stats ---------- */
.stats{background:var(--navy);}
.stat,.stat:nth-child(n){background:transparent!important;position:relative;}
.stat + .stat::before{content:'';position:absolute;left:0;top:28%;bottom:28%;width:1px;background:rgba(255,255,255,.14);}
.stat .n,.stat:nth-child(n) .n{font-family:var(--serif);font-weight:700;color:var(--gold-lt)!important;}
.stat .t,.stat:nth-child(n) .t{color:rgba(255,255,255,.75)!important;font-family:var(--sans);font-weight:600;}

/* ---------- cards ---------- */
.fcard,.tcard,.tmember,.form-card,.partner{border-color:var(--border);box-shadow:var(--shadow-sm);}
.fcard:hover,.tcard:hover,.tmember:hover{box-shadow:var(--shadow-lg);}
.fcard .fico{border-radius:50%;background:var(--mist);color:var(--royal);}
.fcard.b .fico{background:#fef9db;color:#1848a0;}
.fcard.c .fico,.fcard.d .fico,.fcard.e .fico,.fcard.f .fico{background:var(--mist);color:var(--navy);}
.tile{border-radius:1.4rem;box-shadow:var(--shadow-sm);}
.tile::after{background:linear-gradient(to top,rgba(11,34,87,.80) 0%,rgba(11,34,87,.10) 55%,transparent);}
.tile-label .dsp{font-size:clamp(1.5rem,2.3vw,2rem);}
.tile:hover .tile-plus{background:var(--gold);}
.tcard .tq{background:#fef9db;color:#1848a0;border-radius:50%;}
.tcard>p{font-family:var(--sans);font-style:italic;font-size:1.03rem;line-height:1.7;color:var(--ink);}
.tavatar{background:linear-gradient(135deg,var(--gold),#e6bf10);}
.tauthor span,.tm-b span{color:#1848a0;}
.intro-img{border-radius:1.6rem;box-shadow:var(--shadow-lg);outline:1px solid rgba(250,212,48,.35);outline-offset:10px;}

/* ---------- interior pages ---------- */
.page-hero::after{background:linear-gradient(90deg,rgba(11,34,87,.80),rgba(11,34,87,.25) 60%,rgba(11,34,87,.10)),linear-gradient(to top,rgba(11,34,87,.75),transparent 60%);}
.page-hero h1{font-size:clamp(2.3rem,4.6vw,3.8rem);line-height:1.05;}
.ph-crumb{font-family:var(--sans);}
.cta-band{background:radial-gradient(120% 160% at 0% 0%,#2056b8,var(--navy) 60%,#0f3580);}
.cta-band::before{background:rgba(250,212,48,.12);}
.cta-band::after{background:rgba(250,212,48,.08);}
.field input,.field textarea,.field select{font-family:var(--sans);background:#ffffff;}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(250,212,48,.15);}
.field label{font-family:var(--sans);color:var(--navy);}

/* ---------- ticker + footer ---------- */
.ticker{background:#0f3580;}
.ticker-track a{font-family:var(--sans);}
.ticker-track a .arr{border-color:rgba(250,212,48,.5);color:var(--gold);}
.foot{background:radial-gradient(100% 120% at 100% 0%,#1848a0,var(--navy) 55%,#0f3580);}
.foot::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--gold),transparent);}
.foot-box .lbl{color:var(--gold);}
.foot-box .lbl::before{background:var(--gold);}

/* ---------- accessibility polish ---------- */
a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:3px;}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;}}

/* ---------- mobile: light, clean, compact ---------- */
@media(max-width:768px){
  html,body{background:#f5f6f8!important;}
  .logo-block,.hdr-links,#hero,.module,.stats,.ticker,.foot,.page-hero,.cta-band{border:none!important;}
  .hdr-links{display:none!important;}                     /* quick actions live in the menu */
  .hdr-inner{padding:10px 12px 0;}
  .logo-block{background:#fff;border-radius:16px;padding:10px 14px;box-shadow:var(--shadow-sm);}
  .logo-crest{width:46px;height:46px;}
  .hdr-inner .logo-txt,.logo-txt span{color:var(--navy)!important;font-size:.95rem;}
  .hdr-left{order:1;flex:1 1 auto;}
  #burger{order:2;width:52px;height:52px;background:var(--navy);box-shadow:var(--shadow-sm);}
  #burger span{background:#fff;}
  #hero{margin:12px;border-radius:22px;box-shadow:var(--shadow-lg);}
  .hero-title{font-size:clamp(2rem,8.5vw,2.6rem);}
  .module{margin:12px;border-radius:22px;box-shadow:var(--shadow-sm);}
  .mod-white{background:#fff;}
  .stats,.ticker,.foot,.cta-band,.page-hero{margin:12px;border-radius:22px;}
  .stat + .stat::before{display:none;}
  .mod-title{font-size:clamp(1.9rem,8vw,2.5rem);}
}

/* site2 eyebrow treatment: blue label + yellow rule on light backgrounds (readable on white) */
.mod-white .mod-kicker,.mod-lime .mod-kicker,.intro .mod-kicker{color:var(--royal)!important;}
.mod-white .mod-kicker::before,.mod-lime .mod-kicker::before,.intro .mod-kicker::before{background:var(--gold)!important;height:3px!important;}

/* ---------- official brand icon colours ---------- */
.menu-soc a,.foot-soc a{color:#fff!important;border:none!important;transition:transform .2s,box-shadow .2s,filter .2s;}
.menu-soc a:hover,.foot-soc a:hover{transform:translateY(-3px);filter:brightness(1.1);box-shadow:0 8px 18px rgba(0,0,0,.25);}
.menu-soc a:has(.bi-facebook),.foot-soc a:has(.bi-facebook){background:#1877F2!important;}
.menu-soc a:has(.bi-instagram),.foot-soc a:has(.bi-instagram){background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285AEB 90%)!important;}
.menu-soc a:has(.bi-youtube),.foot-soc a:has(.bi-youtube){background:#FF0000!important;}
.menu-soc a:has(.bi-twitter-x),.foot-soc a:has(.bi-twitter-x){background:#000000!important;}
.menu-soc a:has(.bi-whatsapp),.foot-soc a:has(.bi-whatsapp){background:#25D366!important;}

/* contact rows (menu + footer) and contact-page cards */
.cc-row i.bi-geo-alt-fill,.fico:has(.bi-geo-alt-fill){background:#EA4335!important;color:#fff!important;border-color:#EA4335!important;}
.cc-row i.bi-telephone-fill,.fico:has(.bi-telephone-fill){background:#34A853!important;color:#fff!important;border-color:#34A853!important;}
.cc-row i.bi-envelope-fill,.fico:has(.bi-envelope-fill){background:#1A73E8!important;color:#fff!important;border-color:#1A73E8!important;}
.cc-row i.bi-whatsapp,.fico:has(.bi-whatsapp){background:#25D366!important;color:#fff!important;border-color:#25D366!important;}
.cc-row:hover i{filter:brightness(1.1);}
.fico:has(.bi-geo-alt-fill) i,.fico:has(.bi-telephone-fill) i,.fico:has(.bi-envelope-fill) i,.fico:has(.bi-whatsapp) i{color:#fff!important;}

/* ---------- premium icon refinement: smaller, white/tinted circles, brand-coloured glyphs ---------- */
.menu-soc,.foot-soc{gap:.5rem!important;}
.menu-soc a,.foot-soc a{width:34px!important;height:34px!important;font-size:.85rem!important;background:#fff!important;
  box-shadow:0 2px 8px rgba(0,0,0,.18)!important;filter:none!important;}
.menu-soc a:has(.bi-facebook),.foot-soc a:has(.bi-facebook){color:#1877F2!important;}
.menu-soc a:has(.bi-instagram),.foot-soc a:has(.bi-instagram){color:#E1306C!important;}
.menu-soc a:has(.bi-youtube),.foot-soc a:has(.bi-youtube){color:#FF0000!important;}
.menu-soc a:has(.bi-twitter-x),.foot-soc a:has(.bi-twitter-x){color:#000!important;}
.menu-soc a:has(.bi-whatsapp),.foot-soc a:has(.bi-whatsapp){color:#25D366!important;}
.menu-soc a:hover,.foot-soc a:hover{color:#fff!important;transform:translateY(-2px);box-shadow:0 6px 14px rgba(0,0,0,.25)!important;}
.menu-soc a:has(.bi-facebook):hover,.foot-soc a:has(.bi-facebook):hover{background:#1877F2!important;}
.menu-soc a:has(.bi-instagram):hover,.foot-soc a:has(.bi-instagram):hover{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fd5949 45%,#d6249f 60%,#285AEB 90%)!important;}
.menu-soc a:has(.bi-youtube):hover,.foot-soc a:has(.bi-youtube):hover{background:#FF0000!important;}
.menu-soc a:has(.bi-twitter-x):hover,.foot-soc a:has(.bi-twitter-x):hover{background:#000!important;}
.menu-soc a:has(.bi-whatsapp):hover,.foot-soc a:has(.bi-whatsapp):hover{background:#25D366!important;}

/* contact rows on dark menu/footer: small white discs, coloured glyphs */
.cc-row i,.foot .cc-row i{width:32px!important;height:32px!important;font-size:.8rem!important;background:#fff!important;border:none!important;box-shadow:0 2px 8px rgba(0,0,0,.18);}
.cc-row i.bi-geo-alt-fill{color:#EA4335!important;}
.cc-row i.bi-telephone-fill{color:#34A853!important;}
.cc-row i.bi-envelope-fill{color:#1A73E8!important;}
.cc-row i.bi-whatsapp{color:#25D366!important;}

/* contact-page cards (white): soft tinted squares, coloured glyphs */
.fico:has(.bi-geo-alt-fill),.fico:has(.bi-telephone-fill),.fico:has(.bi-envelope-fill),.fico:has(.bi-whatsapp){width:44px!important;height:44px!important;border-radius:12px!important;font-size:1.1rem!important;border:none!important;}
.fico:has(.bi-geo-alt-fill){background:rgba(234,67,53,.10)!important;}
.fico:has(.bi-geo-alt-fill) i{color:#EA4335!important;}
.fico:has(.bi-telephone-fill){background:rgba(52,168,83,.10)!important;}
.fico:has(.bi-telephone-fill) i{color:#34A853!important;}
.fico:has(.bi-envelope-fill){background:rgba(26,115,232,.10)!important;}
.fico:has(.bi-envelope-fill) i{color:#1A73E8!important;}
.fico:has(.bi-whatsapp){background:rgba(37,211,102,.12)!important;}
.fico:has(.bi-whatsapp) i{color:#25D366!important;}

/* hero: keep each headline to two lines */
.hero-body{max-width:min(980px,90%)!important;}
.hero-title,.hero-title .l2{white-space:nowrap;}
@media(max-width:768px){.hero-body{max-width:calc(100% - 40px)!important;}.hero-title,.hero-title .l2{white-space:normal;}}

/* social discs: white at rest (beats the earlier per-brand :has() fills), brand fill on hover */
.menu-soc a:has(i):not(:hover),.foot-soc a:has(i):not(:hover){background:#fff!important;}

/* ---------- menu overlay to match site: Poppins sentence case, site2 colours, balanced icons ---------- */
.menu-l,.menu-r,#menu,.menu-mobtop{background:var(--navy)!important;}
.mitem{text-transform:none!important;font-weight:700!important;font-size:clamp(1.15rem,1.9vw,1.55rem)!important;letter-spacing:-.01em!important;color:#fff!important;}
.mitem:hover{color:var(--gold)!important;}
.mitem i{color:var(--gold)!important;opacity:.7!important;}
.mtext .sub{text-transform:uppercase;letter-spacing:.14em;font-size:.38em!important;color:rgba(255,255,255,.55)!important;font-weight:600!important;}
.mitem.msub{font-weight:500!important;color:rgba(255,255,255,.8)!important;}
.mcard-title{text-transform:none!important;font-weight:800!important;font-size:clamp(1.15rem,1.5vw,1.45rem)!important;letter-spacing:-.01em;}
.cc-name{text-transform:none!important;font-weight:800!important;font-size:clamp(1.1rem,1.3vw,1.35rem)!important;line-height:1.25!important;}
.mcard-contact{background:var(--royal)!important;gap:.85rem!important;}
.mcard-contact .cc-addr{color:rgba(255,255,255,.75)!important;}
.menu-search,.ms-input{text-transform:none!important;letter-spacing:0!important;font-weight:500!important;}
.mcard-arrow{width:38px!important;height:38px!important;background:rgba(255,255,255,.12);backdrop-filter:blur(4px);}

/* contact rows everywhere: identical white discs with brand-coloured glyphs (beats earlier fills) */
.cc-row{text-transform:none!important;letter-spacing:0!important;font-weight:600!important;gap:.75rem!important;}
.cc-row i[class*="bi-"]{width:34px!important;height:34px!important;min-width:34px;font-size:.85rem!important;background:#fff!important;border:none!important;
  display:inline-flex!important;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,.18);}
.cc-row i.bi-geo-alt-fill[class*="bi-"]{color:#EA4335!important;}
.cc-row i.bi-telephone-fill[class*="bi-"]{color:#34A853!important;}
.cc-row i.bi-envelope-fill[class*="bi-"]{color:#1A73E8!important;}
.cc-row i.bi-whatsapp[class*="bi-"]{color:#25D366!important;}
.cc-row:hover{color:var(--gold)!important;}

/* social discs: same 34px size as contact discs */
.menu-soc a,.foot-soc a{width:34px!important;height:34px!important;}

/* header logo: no gold ring */
#site-header .logo-crest{box-shadow:0 4px 18px rgba(0,0,0,.25)!important;}

/* boxed full-width bands (stats + ticker) aligned to the content width */
@media(min-width:769px){
  section.acis-full{width:min(1212px,calc(100% - 2*clamp(1.5rem,5vw,5rem)))!important;left:auto!important;right:auto!important;
    margin:clamp(2rem,4vw,3rem) auto!important;border-radius:22px;overflow:hidden;box-shadow:var(--shadow-sm);}
  section.acis-full .stats{border-radius:22px;}
  section.acis-full.ticker{border-top:none;}
}

/* bands: full-bleed background, boxed content (overrides the boxed card above) */
@media(min-width:769px){
  section.acis-full{width:100vw!important;left:50%!important;right:50%!important;margin:0 -50vw!important;
    border-radius:0!important;box-shadow:none!important;background:var(--navy)!important;--gut:max(clamp(1.5rem,5vw,5rem),calc((100vw - 1212px)/2));}
  section.acis-full .stats{max-width:1212px;margin:0 auto;border-radius:0!important;background:transparent!important;}
  section.acis-full.ticker{position:relative;}
  section.acis-full.ticker::before,section.acis-full.ticker::after{content:'';position:absolute;top:0;bottom:0;width:var(--gut);z-index:2;background:var(--navy);pointer-events:none;}
  section.acis-full.ticker::before{left:0;box-shadow:12px 0 16px -6px var(--navy);}
  section.acis-full.ticker::after{right:0;box-shadow:-12px 0 16px -6px var(--navy);}
}

/* no gold ring on any logo (header, footer, menu; desktop + mobile) */
.logo-crest,.foot .logo-crest{box-shadow:0 4px 18px rgba(0,0,0,.25)!important;border:none!important;outline:none!important;}
