/* ============================================================
   Concepts International — Blueprint design system
   Shared across all pages
   ============================================================ */
:root{
  --amber:#F7A21A; --amber-deep:#E0890A;
  --navy:#15233D; --navy-2:#1E3050;
  --ink:#14181F; --paper:#F6F3EC; --white:#fff;
  --muted:#5A6172; --line:rgba(21,35,61,.12);
  --disp:'Space Grotesk',sans-serif; --body:'Manrope',sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--body);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;line-height:1.6}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
.wrap{max-width:1240px;margin:0 auto;padding:0 40px}
section{position:relative}
h1,h2,h3,h4{font-family:var(--disp);font-weight:700;line-height:1.04;letter-spacing:-.02em;color:var(--navy)}
.eyebrow{font-family:var(--disp);font-weight:600;font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--amber-deep);display:flex;align-items:center;gap:12px}
.eyebrow::before{content:"";width:28px;height:2px;background:var(--amber)}
.eyebrow.center{justify-content:center}
.eyebrow.center::before{display:none}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--disp);font-weight:600;font-size:14.5px;padding:13px 24px;border-radius:2px;cursor:pointer;border:none;transition:.2s}
.btn-amber{background:var(--amber);color:var(--navy)}
.btn-amber:hover{background:var(--amber-deep);transform:translateY(-1px)}
.btn-ghost{background:transparent;color:var(--navy);border:1.5px solid var(--navy)}
.btn-ghost:hover{background:var(--navy);color:#fff}
.btn-navy{background:var(--navy);color:#fff}
.btn-navy:hover{background:var(--amber);color:var(--navy)}
.btn-light{background:#fff;color:var(--navy);border:1.5px solid var(--line)}
.btn-light:hover{border-color:var(--navy)}

/* NAV */
header{position:sticky;top:0;z-index:50;background:rgba(246,243,236,.86);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
nav{display:flex;align-items:center;justify-content:space-between;height:78px}
.brand{display:flex;align-items:center}
.brand img{height:38px}
.navlinks{display:flex;gap:38px;align-items:center}
.navlinks a{font-weight:600;font-size:14.5px;color:var(--navy);position:relative;padding:4px 0}
.navlinks a::after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:2px;background:var(--amber);transition:width .25s}
.navlinks a:hover::after,.navlinks a.active::after{width:100%}
.navlinks a.active{color:var(--amber-deep)}
.nav-cta{display:flex;align-items:center;gap:18px}
.menu-btn{display:none;background:none;border:none;cursor:pointer;flex-direction:column;gap:5px}
.menu-btn span{width:24px;height:2px;background:var(--navy);transition:.2s}

/* PAGE HERO (sub-pages) */
.page-hero{background:var(--navy);color:#fff;padding:72px 0 78px;overflow:hidden}
.page-hero .gridbg2{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:46px 46px;-webkit-mask:radial-gradient(ellipse 60% 90% at 80% 30%,#000,transparent);mask:radial-gradient(ellipse 60% 90% at 80% 30%,#000,transparent)}
.page-hero .inner{position:relative;max-width:760px}
.page-hero .eyebrow{color:var(--amber)}
.page-hero h1{color:#fff;font-size:clamp(38px,5vw,62px);margin:20px 0 0}
.page-hero h1 .am{color:var(--amber)}
.page-hero p{color:#c2cbdb;font-size:18.5px;margin-top:22px;max-width:600px}
.crumb{display:flex;align-items:center;gap:10px;font-size:13px;color:#8b96ab;font-family:var(--disp);font-weight:500;letter-spacing:.02em}
.crumb a:hover{color:var(--amber)}
.crumb span{opacity:.5}

/* SECTION HEAD */
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:52px;flex-wrap:wrap}
.sec-head h2{font-size:clamp(32px,3.6vw,46px);max-width:600px}
.sec-head p{color:var(--muted);max-width:360px;font-size:16px}

/* STAT STRIP (navy) */
.statband{background:var(--navy);color:#fff;padding:70px 0}
.statband .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.1)}
.statband .grid > div{background:var(--navy);padding:34px 30px}
.statband .n{font-family:var(--disp);font-weight:700;font-size:46px;color:#fff;line-height:1}
.statband .n em{color:var(--amber);font-style:normal}
.statband .l{color:#9fa9bd;font-size:13.5px;margin-top:8px;letter-spacing:.02em}

/* MARQUEE */
.strip{background:var(--navy);color:#fff;padding:22px 0;overflow:hidden}
.marquee{display:flex;gap:60px;white-space:nowrap;animation:scroll 32s linear infinite;font-family:var(--disp);font-weight:600;font-size:16px;color:#cdd5e3}
@keyframes scroll{to{transform:translateX(-50%)}}

/* CTA band */
.cta{padding:104px 0}
.cta-box{background:var(--amber);border-radius:6px;padding:64px 60px;display:grid;grid-template-columns:1.3fr .7fr;gap:40px;align-items:center;position:relative;overflow:hidden}
.cta-box h2{font-size:clamp(30px,3.6vw,46px);color:var(--navy)}
.cta-box p{color:#5a4205;font-size:16.5px;margin-top:14px;font-weight:500}
.cta-box .ring{position:absolute;right:-60px;top:-60px;width:200px;height:200px;border:30px solid rgba(255,255,255,.25);border-radius:50%}
.cta-actions{display:flex;flex-direction:column;gap:12px}

/* FORM */
.field{display:flex;flex-direction:column;gap:7px}
.field label{font-family:var(--disp);font-weight:600;font-size:13px;color:var(--navy);letter-spacing:.02em}
.field input,.field select,.field textarea{padding:13px 15px;border:1.5px solid var(--line);border-radius:3px;background:#fff;font-family:var(--body);font-size:15px;color:var(--ink);width:100%}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--navy)}
.field textarea{resize:vertical;min-height:120px}

/* FOOTER */
footer{background:var(--ink);color:#cfd4dd;padding:70px 0 34px}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px}
.foot-grid h4{color:#fff;font-size:14px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px;font-family:var(--disp)}
.foot-grid a,.foot-grid p{display:block;color:#9aa1ae;font-size:14.5px;margin-bottom:10px}
.foot-grid a:hover{color:var(--amber)}
.foot-logo{background:#fff;display:inline-block;padding:12px 14px;border-radius:4px}
.foot-logo img{height:34px}
.foot-bot{border-top:1px solid rgba(255,255,255,.1);margin-top:50px;padding-top:24px;display:flex;justify-content:space-between;font-size:13px;color:#717885;flex-wrap:wrap;gap:10px}

/* REVEAL */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}

/* RESPONSIVE shared */
@media(max-width:980px){
  .foot-grid{grid-template-columns:1fr 1fr}
  .statband .grid{grid-template-columns:1fr 1fr}
  .navlinks{display:none}.menu-btn{display:flex}
  .cta-box{grid-template-columns:1fr;gap:32px}
}
@media(max-width:560px){.wrap{padding:0 22px}}

/* ============================================================
   i18n — language switcher, directional arrows, RTL & fonts
   ============================================================ */

/* trailing arrow utility (RTL-aware, replaces inline &rarr;) */
.has-arr::after{content:"→";margin-inline-start:8px;display:inline-block;transition:transform .2s}
.btn.has-arr:hover::after{transform:translateX(2px)}
[dir="rtl"] .has-arr::after{content:"←"}
[dir="rtl"] .btn.has-arr:hover::after{transform:translateX(-2px)}

/* language switcher */
.lang-switch{position:relative;display:inline-flex}
.lang-btn{display:inline-flex;align-items:center;gap:7px;font-family:var(--disp);font-weight:600;font-size:14px;color:var(--navy);background:transparent;border:1.5px solid var(--line);padding:9px 12px;border-radius:2px;cursor:pointer;transition:border-color .2s,background .2s;line-height:1}
.lang-btn:hover{border-color:var(--navy)}
.lang-btn svg{flex-shrink:0}
.lang-cur{white-space:nowrap}
.lang-caret{opacity:.7;transition:transform .2s}
.lang-switch.open .lang-caret{transform:rotate(180deg)}
.lang-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:172px;background:#fff;border:1px solid var(--line);border-radius:4px;box-shadow:0 22px 44px -22px rgba(21,35,61,.5);padding:6px;margin:0;list-style:none;display:none;z-index:60;max-height:min(70vh,420px);overflow:auto}
.lang-switch.open .lang-menu{display:block;animation:langIn .16s ease}
@keyframes langIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.lang-opt{font-family:var(--disp);font-weight:600;font-size:14px;color:var(--navy);padding:10px 12px;border-radius:3px;cursor:pointer;transition:background .15s,color .15s;display:flex;align-items:center;justify-content:space-between;gap:12px;white-space:nowrap}
.lang-opt:hover,.lang-opt:focus{background:var(--paper);color:var(--amber-deep);outline:none}
.lang-opt.active{color:var(--amber-deep)}
.lang-opt.active::after{content:"✓";font-size:13px;color:var(--amber-deep)}
[dir="rtl"] .lang-menu{right:auto;left:0}

@media(max-width:560px){
  .lang-cur{display:none}
  .lang-btn{padding:9px 10px}
  .nav-cta{gap:12px}
}

/* RTL fine-tuning */
[dir="rtl"] .marquee{animation-direction:reverse}
[dir="rtl"] .cta-box .ring{right:auto;left:-60px}
[dir="rtl"] .hero-visual .tag{left:auto;right:-22px}
[dir="rtl"] .hero-visual .dot{right:auto;left:-14px}
[dir="rtl"] .story-visual .dot{left:auto;right:-16px}
[dir="rtl"] .about-visual .badge{right:auto;left:-18px}
[dir="rtl"] .map .overlay-txt{left:auto;right:40px}

/* per-language font fallbacks (Latin display fonts lack these scripts) */
html[lang="ar"],html[lang="ur"]{--disp:"Segoe UI","Tahoma","Noto Naskh Arabic","Geeza Pro",sans-serif;--body:"Segoe UI","Tahoma","Noto Naskh Arabic","Geeza Pro",sans-serif}
html[lang="zh"]{--disp:"Microsoft YaHei","PingFang SC","Hiragino Sans GB","Noto Sans SC",sans-serif;--body:"Microsoft YaHei","PingFang SC","Hiragino Sans GB","Noto Sans SC",sans-serif}
html[lang="hi"]{--disp:"Nirmala UI","Noto Sans Devanagari","Mangal",sans-serif;--body:"Nirmala UI","Noto Sans Devanagari","Mangal",sans-serif}
html[lang="bn"]{--disp:"Nirmala UI","Noto Sans Bengali","Vrinda",sans-serif;--body:"Nirmala UI","Noto Sans Bengali","Vrinda",sans-serif}
html[lang="ru"]{--disp:"Space Grotesk","Segoe UI",sans-serif}
