/* IAL Pakistan - design & accessibility layer (loads after combined.css) */
@font-face{font-family:"Inter";src:url(../fonts/inter-latin-wght-normal.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Montserrat";src:url(../fonts/montserrat-latin-wght-normal.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
:root{--ial-navy:#211D70;--ial-navy-2:#2d288a;--ial-red:#E63946;--ial-ink:#0F172A;--ial-muted:#475569;--ial-surface:#F6F7FB;--ial-line:#E4E7F0;--ial-radius:16px;--ial-shadow:0 10px 30px rgba(33,29,112,.10)}
html{scroll-padding-top:96px}
body{font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,h5,h6{font-family:Montserrat,Inter,system-ui,sans-serif;letter-spacing:-.012em;text-wrap:balance}
p,li{text-wrap:pretty}
:where(img[width][height]){height:auto}
main:focus{outline:none}

/* accessibility */
.skip-link{position:absolute!important;left:-9999px!important;top:8px;z-index:4000;background:var(--ial-navy);color:#fff!important;padding:12px 18px;border-radius:8px;font-weight:600;text-decoration:none}
.skip-link:focus{left:12px!important;outline:3px solid var(--ial-red);outline-offset:2px}
:focus-visible{outline:3px solid var(--ial-red);outline-offset:3px;border-radius:4px}
.floating_btn a:focus-visible{outline:3px solid #fff!important;box-shadow:0 0 0 6px var(--ial-navy)!important;border-radius:50px}
.btn,.filter-btn,.carousel-btn{min-height:44px}
.stat-number{font-variant-numeric:tabular-nums}
.footer-links a{color:rgba(255,255,255,.9)}
.footer .opacity-75{opacity:.92!important}
a{text-underline-offset:.2em}

/* hero: stronger scrim so white headline text always passes contrast */
.header-carousel .carousel-caption{background:linear-gradient(180deg,rgba(15,12,60,.62) 0%,rgba(15,12,60,.40) 45%,rgba(15,12,60,.66) 100%)}
.carousel-caption .lead{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}

/* section eyebrow, shared by new blocks */
.ial-eyebrow{display:inline-block;font-family:Montserrat,sans-serif;font-weight:700;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ial-red);margin-bottom:.6rem}

/* at-a-glance (answer-first summary) */
.ial-glance{padding:clamp(40px,6vw,72px) 0;background:#fff}
.ial-glance__grid{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(24px,4vw,56px);align-items:start}
.ial-glance__intro h2{font-size:clamp(1.5rem,2.6vw,2.15rem);font-weight:800;color:var(--ial-navy);margin-bottom:1rem}
.ial-glance__intro p{color:var(--ial-ink);font-size:1.05rem;line-height:1.75;margin:0}
.ial-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0}
.ial-facts>div{background:var(--ial-surface);border:1px solid var(--ial-line);border-left:4px solid var(--ial-red);border-radius:12px;padding:14px 16px}
.ial-facts dt{font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ial-muted);margin-bottom:4px}
.ial-facts dd{margin:0;font-weight:600;color:var(--ial-navy);line-height:1.4}
.ial-facts dd a{color:var(--ial-navy);text-decoration:none;font-weight:inherit;font-family:inherit}
.ial-facts dd a:hover{color:var(--ial-red);text-decoration:underline}
@media(max-width:900px){.ial-glance__grid{grid-template-columns:1fr}.ial-facts{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.ial-facts{grid-template-columns:1fr}}

/* FAQ (native <details>, no JS, crawlable) */
.ial-faq{padding:clamp(48px,7vw,88px) 0;background:var(--ial-surface)}
.ial-faq__head{text-align:center;margin-bottom:clamp(24px,4vw,40px)}
.ial-faq__head h2{font-size:clamp(1.5rem,2.8vw,2.2rem);font-weight:800;color:var(--ial-navy);margin:0}
.ial-faq__list{max-width:860px;margin:0 auto;display:grid;gap:12px}
.faq-item{background:#fff;border:1px solid var(--ial-line);border-radius:14px;box-shadow:0 2px 10px rgba(33,29,112,.05);overflow:hidden;transition:box-shadow .25s,border-color .25s}
.faq-item[open]{border-color:rgba(33,29,112,.35);box-shadow:var(--ial-shadow)}
.faq-item summary{cursor:pointer;list-style:none;padding:18px 56px 18px 22px;font-family:Montserrat,sans-serif;font-weight:700;font-size:1.02rem;color:var(--ial-navy);position:relative;line-height:1.4}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;background:rgba(230,57,70,.1);color:var(--ial-red);font-size:1.3rem;font-weight:700;line-height:28px;text-align:center;transition:transform .25s,background .25s}
.faq-item[open] summary::after{content:"\2212";background:var(--ial-red);color:#fff}
.faq-answer{padding:0 22px 20px;color:var(--ial-ink);line-height:1.75}
.faq-answer p{margin:0}

/* home: feature strip had a fixed 450px inline height that left a large empty band */
.top-feature{height:auto!important;min-height:0!important;padding-bottom:0!important}
.top-feature>.container{padding-bottom:clamp(24px,4vw,48px)!important}
@media(max-width:991px){.top-feature{margin-top:0}.top-feature .bg-white{min-height:0!important;padding-top:20px;padding-bottom:20px}}
/* home product cards & general card polish */
.products-section .card,.category-card{border-radius:var(--ial-radius)}

/* motion preferences */
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media print{.floating_btn,.header .topbar,.owl-nav,.owl-dots{display:none!important}}

@media(max-width:576px){
  .ial-facts{grid-template-columns:1fr 1fr;gap:8px}
  .ial-facts>div{padding:10px 12px}
  .ial-facts dd{font-size:.9rem}
  .clients-grid{grid-template-columns:1fr 1fr!important;gap:12px!important;max-width:none!important}
  .client-logo-container{height:110px!important}
  .client-info{padding:12px!important}
  .client-info h3{font-size:14px!important;min-height:0!important}
  .client-tags,.client-sector{display:none!important}
  .britlite-stats-section{min-height:0!important}
  .stat-card-item{min-height:0!important}
}

/* ---- Milestones / stats: overlay now sits in normal flow so the section always wraps its cards ---- */
.britlite-stats-section{min-height:0!important;padding:0!important;background-attachment:scroll!important;overflow:hidden}
.britlite-stats-section .stats-bg-overlay{position:relative!important;top:auto!important;left:auto!important;height:auto!important;padding:clamp(56px,8vw,96px) 0}
.britlite-stats-section .stats-header{margin-bottom:clamp(28px,5vw,56px)}
.britlite-stats-section .stats-subtitle{margin-top:0!important}
.britlite-stats-section .stats-cards-grid{padding-top:0!important;margin-bottom:clamp(24px,4vw,40px)}
.britlite-stats-section .stat-card-item{min-height:0!important;padding:clamp(24px,3vw,40px) 20px}
@media(max-width:1200px){.britlite-stats-section .stats-cards-grid{grid-template-columns:repeat(2,1fr);max-width:760px}}
@media(max-width:480px){.britlite-stats-section .stats-cards-grid{grid-template-columns:1fr 1fr;gap:12px}
  .britlite-stats-section .stat-card-item{padding:20px 12px}
  .britlite-stats-section .stat-card-icon{width:52px;height:52px;margin-bottom:12px}.britlite-stats-section .stat-card-icon i{font-size:20px}
  .britlite-stats-section .stat-number{font-size:30px}.britlite-stats-section .stat-plus{font-size:16px}
  .britlite-stats-section .stat-card-title{font-size:15px}.britlite-stats-section .stat-card-text{font-size:12.5px}}

/* ---- Technology partners carousel: exact N cards per view, centred, swipeable ---- */
.home-partners-section .partners-carousel-container{max-width:1200px;margin:0 auto 24px;padding:0 64px}
.home-partners-section .partners-carousel{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;padding:12px 0 24px;-webkit-overflow-scrolling:touch}
.home-partners-section .partner-card{flex:0 0 calc((100% - 40px)/3);width:auto;min-width:0;max-width:none;scroll-snap-align:start}
.home-partners-section .partner-logo{height:96px}
.home-partners-section .partner-logo img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}
.home-partners-section .card-inner{padding:22px}
.home-partners-section .carousel-btn:disabled{opacity:.35;cursor:default;transform:translateY(-50%)}
.home-partners-section .carousel-btn:focus-visible{outline:3px solid #fff}
.home-partners-section .carousel-indicators{position:static;margin:0 0 28px;padding:0;gap:8px;justify-content:center;display:flex}
.home-partners-section .indicator{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.35)}
.home-partners-section .indicator.active{width:26px;border-radius:10px;background:var(--ial-red)}
@media(max-width:991px){
  .home-partners-section .partners-carousel-container{padding:0 56px}
  .home-partners-section .partner-card{flex-basis:calc((100% - 20px)/2)}
  .home-partners-section .partners-carousel{gap:20px}}
@media(max-width:575px){
  .home-partners-section .partners-carousel-container{padding:0 6px}
  .home-partners-section .partners-carousel{gap:14px;scroll-snap-type:x mandatory}
  .home-partners-section .partner-card{flex-basis:88%;scroll-snap-align:center}
  .home-partners-section .partners-carousel{padding-left:6%;padding-right:6%;scroll-padding:0 6%}
  .home-partners-section .carousel-btn{display:none}
  .home-partners-section .category-filters{gap:8px}
  .home-partners-section .filter-btn{min-height:40px;padding:8px 16px}}

/* ---- Site search page ---- */
.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0;white-space:nowrap}
.ial-search{padding:calc(165px + clamp(24px,4vw,56px)) 0 clamp(56px,8vw,110px);background:var(--ial-surface);min-height:70vh}
@media(max-width:991px){.ial-search{padding-top:calc(140px + 28px)}}
.ial-search__head{text-align:center;margin-bottom:28px}
.ial-search__head h1{font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:800;color:var(--ial-navy);margin:0 0 8px}
.ial-search__head p{color:var(--ial-muted);margin:0}
.ial-search__form{display:flex;gap:10px;max-width:760px;margin:0 auto 18px}
.ial-search__form input{flex:1;min-width:0;border:2px solid var(--ial-navy);border-radius:999px;padding:14px 22px;font-size:1.05rem;background:#fff;color:var(--ial-ink)}
.ial-search__form input:focus{outline:3px solid rgba(230,57,70,.35);outline-offset:2px}
.ial-search__form button{border:0;border-radius:999px;background:var(--ial-red);color:#fff;font-weight:700;padding:0 28px;min-height:50px;cursor:pointer;white-space:nowrap}
.ial-search__form button:hover{background:#c9303c}
.ial-search__status{text-align:center;color:var(--ial-muted);font-weight:600;margin:0 0 22px;min-height:1.5em}
.ial-search__list{list-style:none;margin:0 auto;padding:0;max-width:900px;display:grid;gap:14px}
.ial-result{display:flex;gap:18px;background:#fff;border:1px solid var(--ial-line);border-radius:14px;padding:16px;box-shadow:0 2px 10px rgba(33,29,112,.05);transition:box-shadow .2s,transform .2s}
.ial-result:hover{box-shadow:var(--ial-shadow);transform:translateY(-2px)}
.ial-result__thumb{flex:0 0 120px}
.ial-result__thumb img{width:120px;height:90px;object-fit:cover;border-radius:10px;display:block;background:var(--ial-surface)}
.ial-result__body{min-width:0}
.ial-result__meta{display:block;font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ial-red);margin-bottom:4px}
.ial-result__title{font-size:1.15rem;font-weight:800;margin:0 0 6px}
.ial-result__title a{color:var(--ial-navy);text-decoration:none}
.ial-result__title a:hover{text-decoration:underline}
.ial-result p{margin:0 0 8px;color:var(--ial-ink);line-height:1.6;font-size:.95rem}
.ial-result mark{background:rgba(230,57,70,.15);color:inherit;border-radius:3px;padding:0 2px}
.ial-result__tags{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.ial-result__tags li{font-size:.78rem;background:var(--ial-surface);border:1px solid var(--ial-line);border-radius:999px;padding:3px 10px;color:var(--ial-muted)}
.ial-search__empty{max-width:760px;margin:0 auto;text-align:center}
.ial-search__empty h2{font-size:1.2rem;color:var(--ial-navy);font-weight:800;margin-bottom:14px}
.ial-search__chips{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.ial-search__chips a{display:inline-block;background:#fff;border:1px solid var(--ial-line);border-radius:999px;padding:8px 16px;font-weight:600;color:var(--ial-navy);text-decoration:none}
.ial-search__chips a:hover{border-color:var(--ial-red);color:var(--ial-red)}
@media(max-width:576px){.ial-search__form{flex-direction:column}.ial-search__form button{min-height:48px}.ial-result{flex-direction:column}.ial-result__thumb{flex-basis:auto}.ial-result__thumb img{width:100%;height:150px}}

/* partner carousel: one centred card on phones, no half-peeking neighbour */
@media(max-width:575px){
  .home-partners-section .partner-card{flex-basis:100%!important;scroll-snap-align:center!important}
  .home-partners-section .partners-carousel{padding-left:0!important;padding-right:0!important;scroll-padding:0!important;gap:12px!important}
  .home-partners-section .partners-carousel-container{padding:0 14px!important}}
