.oif-footer *, .oif-footer *::before, .oif-footer *::after {
  box-sizing: border-box; margin: 0; padding: 0;
  font-family: 'Nunito Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}
.oif-footer { width:100%; max-width:100%; background:#fafaf9; overflow:hidden; }

/* TOP BAR */
.oif-footer .oif-top-bar { height:3px; background:linear-gradient(90deg,#b45309 0%,#d97706 30%,#f59e0b 60%,#fbbf24 100%); }

/* GLOBAL PRESENCE */
.oif-footer .oif-globe-strip { background:#030102; border-bottom:1px solid #e7e5e4; padding:36px 10px 32px; text-align:center; position:relative; }
.oif-footer .oif-globe-strip::before { content:''; position:absolute; width:360px; height:360px; border-radius:50%; background:rgba(217,119,6,.06); filter:blur(100px); top:-120px; left:50%; transform:translateX(-50%); pointer-events:none; }
.oif-footer .oif-globe-tag { display:inline-flex; align-items:center; gap:7px; background:#fff; color:#d97706; font-size:.68rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase; padding:6px 14px; border-radius:50px; border:1.5px solid #e7e5e4; margin-bottom:20px; position:relative; z-index:1; }
.oif-footer .oif-globe-tag-dot { width:6px; height:6px; border-radius:50%; background:#d97706; animation:oif-pulse-dot 2s infinite; }
@keyframes oif-pulse-dot { 0%,100%{box-shadow:0 0 0 0 rgba(217,119,6,.4)} 50%{box-shadow:0 0 0 6px rgba(217,119,6,0)} }
.oif-footer .oif-offices { display:flex; justify-content:center; align-items:stretch; gap:10px; flex-wrap:wrap; max-width:100%; margin:0 auto; padding:0 0px; position:relative; z-index:1; }
.oif-footer .oif-office-card { display:flex; flex-direction:column; align-items:center; gap:7px; flex:1; min-width:155px; max-width:195px; padding:16px 10px 14px; border-radius:12px; background:#ffffff; border:1px solid #e7e5e4; box-shadow:0 1px 3px rgba(15,23,42,.04); transition:all .25s cubic-bezier(0.4,0,0.2,1); cursor:default; }
.oif-footer .oif-office-card:hover { box-shadow:0 12px 28px rgba(15,23,42,.10); border-color:#f59e0b; transform:translateY(-4px); }
.oif-footer .oif-office-flag { width:52px; height:52px; border-radius:50%; border:2px solid #fef3c7; overflow:hidden; flex-shrink:0; transition:border-color .25s; }
.oif-footer .oif-office-flag .fi { width:52px; height:52px; border-radius:50%; background-size:cover !important; background-position:center !important; display:block; }
.oif-footer .oif-office-card:hover .oif-office-flag { border-color:#f59e0b; }
.oif-footer .oif-office-card .oif-country { font-size:.75rem; font-weight:800; color:#0f172a; letter-spacing:.04em; text-transform:uppercase; display:inline-flex; align-items:center; gap:5px; }
.oif-footer .oif-office-card .oif-addr { font-size:.67rem; font-weight:600; color:#0f172a; line-height:1.5; text-align:center; }
.oif-footer .oif-hq-badge { font-size:.56rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; background:linear-gradient(135deg,#d97706,#f59e0b); color:#fff; border-radius:4px; padding:2px 6px; box-shadow:0 2px 6px rgba(217,119,6,.30); }

/* MAIN BODY */
.oif-footer .oif-main-body { background:#ffffff; border-bottom:1px solid #e7e5e4; }
.oif-footer .oif-main-inner { max-width:95%; margin:0 auto; padding:0 0px; display:grid; grid-template-columns:300px 1fr; gap:0 48px; align-items:stretch; }

/* LEFT: About */
.oif-footer .oif-about-col { padding:36px 16px 36px 0; border-right:1px solid #e7e5e4; display:flex; flex-direction:column; }
.oif-footer .oif-brand-block { margin-bottom:14px; }
.oif-footer .oif-brand-logo { display:inline-flex; transition:transform .3s ease; }
.oif-footer .oif-brand-logo:hover { transform:scale(1.02); }
.oif-footer .oif-brand-logo img { max-width:210px; height:auto; width:100%; display:block; }
.oif-footer .oif-brand-tagline { font-size:.73rem; font-weight:700; color:#d97706; margin:0 0 13px; letter-spacing:.02em; display:block; }
.oif-footer .oif-about-text { font-size:.77rem; line-height:1.68; color:#0f172a; margin-bottom:16px; font-weight:600; }
.oif-footer .oif-social-row { display:flex; align-items:center; gap:7px; margin-bottom:18px; padding-bottom:18px; border-bottom:1px dashed #e7e5e4; flex-wrap:wrap; }
.oif-footer .oif-s-btn { width:34px; height:34px; border-radius:9px; background:#f5f5f4; border:1px solid #e7e5e4; display:grid; place-items:center; text-decoration:none; color:#475569; transition:all .25s cubic-bezier(0.4,0,0.2,1); }
.oif-footer .oif-s-btn svg { width:14px; height:14px; fill:currentColor; }
.oif-footer .oif-s-btn.oif-facebook:hover  { background:#1877F2; border-color:#1877F2; color:#fff; transform:translateY(-3px); box-shadow:0 6px 14px rgba(24,119,242,.35); }
.oif-footer .oif-s-btn.oif-twitter:hover   { background:#000; border-color:#000; color:#fff; transform:translateY(-3px); box-shadow:0 6px 14px rgba(0,0,0,.30); }
.oif-footer .oif-s-btn.oif-youtube:hover   { background:#FF0000; border-color:#FF0000; color:#fff; transform:translateY(-3px); box-shadow:0 6px 14px rgba(255,0,0,.35); }
.oif-footer .oif-s-btn.oif-linkedin:hover  { background:#0A66C2; border-color:#0A66C2; color:#fff; transform:translateY(-3px); box-shadow:0 6px 14px rgba(10,102,194,.35); }
.oif-footer .oif-s-btn.oif-instagram:hover { background:linear-gradient(45deg,#F58529 0%,#DD2A7B 35%,#8134AF 65%,#515BD4 100%); border-color:transparent; color:#fff; transform:translateY(-3px); box-shadow:0 6px 14px rgba(221,42,123,.35); }
.oif-footer .oif-contact-mini { display:flex; flex-direction:column; gap:10px; margin-top:auto; }
.oif-footer .oif-cm-row { display:flex; align-items:center; gap:9px; }
.oif-footer .oif-cm-icon { width:28px; height:28px; border-radius:7px; background:#fffbeb; border:1px solid #fef3c7; display:grid; place-items:center; flex-shrink:0; transition:all .2s; }
.oif-footer .oif-cm-row:hover .oif-cm-icon { background:#fef3c7; border-color:#f59e0b; }
.oif-footer .oif-cm-icon svg { width:11px; height:11px; fill:#d97706; }
.oif-footer .oif-cm-text { font-size:.73rem; color:#0f172a; line-height:1.55; font-weight:600; }
.oif-footer .oif-cm-text a { color:#0f172a; text-decoration:none; transition:color .15s; font-weight:700; }
.oif-footer .oif-cm-text a:hover { color:#d97706; }

/* RIGHT COLUMN */
.oif-footer .oif-right-col { display:flex; flex-direction:column; padding:36px 0; gap:0; }
.oif-footer .oif-mega-tabs { display:flex; gap:7px; flex-wrap:wrap; padding-bottom:14px; border-bottom:1px solid #e7e5e4; margin-bottom:14px; }
.oif-footer .oif-mega-tab { font-family:'Nunito Sans',sans-serif; font-size:.72rem; font-weight:800; padding:7px 15px; border-radius:100px; border:1.5px solid #e7e5e4; background:#fafaf9; color:#475569; cursor:pointer; transition:all .22s cubic-bezier(0.4,0,0.2,1); white-space:nowrap; letter-spacing:.02em; line-height:normal; }
.oif-footer .oif-mega-tab:hover { border-color:#f59e0b; color:#d97706; background:#fffbeb; }
.oif-footer .oif-mega-tab.oif-active { background:linear-gradient(135deg,#0f172a,#1e293b); color:#fff; border-color:transparent; font-weight:900; box-shadow:0 6px 14px rgba(15,23,42,.18); }
.oif-footer .oif-tab-panel { display:flex; flex-direction:column; gap:0; margin-bottom:0; }
.oif-footer .oif-mega-links { display:flex; flex-wrap:wrap; gap:2px 0; align-items:flex-start; }
.oif-footer .oif-mega-links a { font-size:.75rem; font-weight:600; color:#0f172a; text-decoration:none; padding:3px 11px 3px 0; white-space:nowrap; border-right:1px solid #e7e5e4; margin-right:11px; transition:color .18s; line-height:1.8; }
.oif-footer .oif-mega-links a:last-child { border-right:none; margin-right:0; }
.oif-footer .oif-mega-links a:hover { color:#d97706; }
.oif-footer .oif-view-all-btn { display:inline-flex; align-items:center; gap:6px; margin-top:12px; padding:8px 18px; border-radius:50px; background:linear-gradient(135deg,#d97706,#f59e0b); color:#fff; font-size:.73rem; font-weight:800; text-decoration:none; white-space:nowrap; letter-spacing:.02em; box-shadow:0 4px 14px rgba(217,119,6,.32); transition:all .22s cubic-bezier(0.4,0,0.2,1); align-self:flex-start; border:none; }
.oif-footer .oif-view-all-btn:hover { color:#fff; background:linear-gradient(135deg,#b45309,#d97706); box-shadow:0 6px 18px rgba(217,119,6,.45); transform:translateY(-2px); }
.oif-footer .oif-view-all-btn svg { width:11px; height:11px; fill:none; stroke:#fff; stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; transition:transform .22s; }
.oif-footer .oif-view-all-btn:hover svg { transform:translateX(3px); }

/* Stats strip */
.oif-footer .oif-stats-strip { flex:1; display:flex; align-items:center; gap:0; margin:18px 0 0; padding:18px 20px; background:linear-gradient(135deg,#fffbeb 0%,#fff 60%,#fafaf9 100%); border:1px solid #fef3c7; border-radius:12px; position:relative; overflow:hidden; }
.oif-footer .oif-stats-strip::before { content:''; position:absolute; width:200px; height:200px; border-radius:50%; background:rgba(217,119,6,.07); filter:blur(60px); top:-60px; right:-40px; pointer-events:none; }
.oif-footer .oif-stat-item { flex:1; display:flex; flex-direction:column; align-items:center; text-align:center; gap:3px; position:relative; z-index:1; }
.oif-footer .oif-stat-item:not(:last-child)::after { content:''; position:absolute; right:0; top:10%; height:80%; width:1px; background:#fef3c7; }
.oif-footer .oif-stat-num { font-size:1.5rem; font-weight:900; line-height:1; letter-spacing:-.03em; background:linear-gradient(135deg,#b45309,#d97706); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.oif-footer .oif-stat-label { font-size:.70rem; font-weight:600; color:#0f172a; letter-spacing:.01em; text-transform:capitalize; line-height:1.3; }

/* CTA grid */
.oif-footer .oif-cta-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; padding-top:16px; border-top:1px solid #e7e5e4; margin-top:16px; }
.oif-footer .oif-cta-card { display:flex; align-items:center; gap:11px; background:#fafaf9; border:1px solid #e7e5e4; border-radius:12px; padding:13px 14px; text-decoration:none; box-shadow:0 1px 3px rgba(15,23,42,.04); transition:all .25s cubic-bezier(0.4,0,0.2,1); position:relative; overflow:hidden; }
.oif-footer .oif-cta-card::after { content:''; position:absolute; top:0; right:0; width:36px; height:36px; background:linear-gradient(135deg,#fffbeb,transparent); clip-path:polygon(100% 0,0 0,100% 100%); opacity:0; transition:opacity .25s; }
.oif-footer .oif-cta-card:hover { box-shadow:0 12px 28px rgba(15,23,42,.10); border-color:#f59e0b; transform:translateY(-2px); }
.oif-footer .oif-cta-card:hover::after { opacity:1; }
.oif-footer .oif-cta-card.oif-featured { background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%); border-color:transparent; box-shadow:0 8px 24px rgba(15,23,42,.25); }
.oif-footer .oif-cta-card.oif-featured::before { content:''; position:absolute; width:140px; height:140px; border-radius:50%; background:rgba(245,158,11,.15); filter:blur(40px); top:-50px; right:-30px; pointer-events:none; }
.oif-footer .oif-cta-card.oif-featured:hover { box-shadow:0 12px 28px rgba(15,23,42,.35); transform:translateY(-2px); }
.oif-footer .oif-cta-icon { width:34px; height:34px; border-radius:9px; background:#fffbeb; border:1px solid #fef3c7; display:grid; place-items:center; flex-shrink:0; position:relative; z-index:1; transition:all .25s; }
.oif-footer .oif-cta-card:hover .oif-cta-icon { background:linear-gradient(135deg,#d97706,#f59e0b); border-color:transparent; transform:scale(1.05) rotate(-5deg); }
.oif-footer .oif-cta-card:hover .oif-cta-icon svg { stroke:#fff; }
.oif-footer .oif-cta-icon svg { width:15px; height:15px; fill:none; stroke:#d97706; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; transition:stroke .25s; }
.oif-footer .oif-cta-card.oif-featured .oif-cta-icon { background:rgba(245,158,11,.25); border-color:rgba(245,158,11,.40); }
.oif-footer .oif-cta-card.oif-featured .oif-cta-icon svg { stroke:#f59e0b; }
.oif-footer .oif-cta-card.oif-featured:hover .oif-cta-icon { background:linear-gradient(135deg,#d97706,#f59e0b); border-color:transparent; }
.oif-footer .oif-cta-card.oif-featured:hover .oif-cta-icon svg { stroke:#fff; }
.oif-footer .oif-cta-text-wrap { position:relative; z-index:1; }
.oif-footer .oif-cta-label { font-size:.80rem; font-weight:800; color:#0f172a; line-height:1.2; letter-spacing:-.01em; }
.oif-footer .oif-cta-sub { font-size:.62rem; font-weight:600; color:#0f172a; margin-top:2px; line-height:1.3; }
.oif-footer .oif-cta-card.oif-featured .oif-cta-label { color:#fff; }
.oif-footer .oif-cta-card.oif-featured .oif-cta-sub { color:rgba(255,255,255,.75); }

/* ── BOTTOM BAR FIX ──
   Outer bar: full-width dark bg, NO horizontal padding
   Inner wrapper: max-width + padding matches all sections above */
.oif-footer .oif-bottom-bar {
  background: #1c1917;
  padding: 15px 0;        /* ← NO horizontal padding here */
  display: flex;
  justify-content: center;
  position: relative;
}
.oif-footer .oif-bottom-bar::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(245,158,11,.30), transparent);
}
.oif-footer .oif-bottom-bar-inner {
  max-width: 100%;      /* ← same as .oif-main-inner & .oif-offices */
  width: 100%;
  padding: 0 36px;        /* ← horizontal padding lives HERE */
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}
.oif-footer .oif-policy { display:flex; align-items:center; gap:5px; flex-wrap:wrap; }
.oif-footer .oif-policy a { color:rgba(255,255,255,.55); font-size:.72rem; font-weight:600; text-decoration:none; transition:color .18s; }
.oif-footer .oif-policy a:hover { color:#f59e0b; }
.oif-footer .oif-policy .oif-sep { width:1px; height:10px; background:rgba(255,255,255,.18); margin:0 4px; }
.oif-footer .oif-back-top { display:flex; align-items:center; gap:6px; font-size:.72rem; font-weight:800; color:rgba(255,255,255,.75); text-decoration:none; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.15); border-radius:8px; padding:6px 12px; transition:all .22s; }
.oif-footer .oif-back-top:hover { background:linear-gradient(135deg,#d97706,#f59e0b); border-color:transparent; color:#fff; transform:translateY(-1px); box-shadow:0 6px 14px rgba(217,119,6,.30); }
.oif-footer .oif-back-top svg { width:12px; height:12px; fill:none; stroke:currentColor; stroke-width:2.5; stroke-linecap:round; transition:transform .22s; }
.oif-footer .oif-back-top:hover svg { transform:translateY(-2px); }

/* RESPONSIVE */
@media (max-width:1024px) {
  .oif-footer .oif-main-inner { grid-template-columns:1fr; }
  .oif-footer .oif-about-col { padding:28px 10px; border-right:none; border-bottom:1px dashed #e7e5e4; }
  .oif-footer .oif-right-col { padding:28px 0; }
  .oif-footer .oif-cta-grid { grid-template-columns:repeat(2,1fr); }
  .oif-footer .oif-stats-strip { flex:none; }
}
@media (max-width:640px) {
  .oif-footer .oif-cta-grid { grid-template-columns:1fr; }
  .oif-footer .oif-bottom-bar-inner { flex-direction:column; align-items:center; text-align:center; gap:10px; }
  .oif-footer .oif-stat-num { font-size:1.2rem; }
}