
/* ==========================================================
   SP WORLDTECH GLOBAL SITE TOOLS
   Shared rolling advertisement, Nigeria clock, language and
   currency controls. Loaded on every public/dashboard page.
========================================================== */
.spw-global-tools{
  position:relative;
  z-index:900;
  width:100%;
  background:#fff;
  border-bottom:1px solid rgba(16,43,81,.08);
}
.spw-global-ad{
  width:100%;
  overflow:hidden;
  background:linear-gradient(90deg,#002e20,#005c39,#003e2b,#005c39,#002e20);
  border-top:1px solid rgba(0,255,145,.65);
  border-bottom:1px solid rgba(0,255,145,.65);
  box-shadow:0 8px 30px rgba(0,100,65,.18),inset 0 0 25px rgba(0,255,145,.12);
}
.spw-global-ad-link{
  display:block;
  color:#00ff91;
  text-decoration:none;
  white-space:nowrap;
  overflow:hidden;
  font-weight:900;
  font-size:18px;
}
.spw-global-ad-track{
  display:inline-flex;
  width:max-content;
  animation:spwGlobalAdScroll 40s linear infinite;
}
.spw-global-ad-item{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:16px 30px;
  text-shadow:0 0 5px #00ff91,0 0 12px rgba(0,255,145,.85),0 0 25px rgba(0,255,145,.55);
}
.spw-global-ad:hover .spw-global-ad-track{animation-play-state:paused}
@keyframes spwGlobalAdScroll{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}

.spw-global-toolbar{
  background:linear-gradient(180deg,#f9fcff 0%,#fff 100%);
}
.spw-global-inner{
  width:min(1500px,94%);
  margin:0 auto;
  padding:14px 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.spw-clock-card{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:300px;
  padding:9px 14px;
  border:1px solid rgba(18,104,216,.15);
  border-radius:18px;
  background:rgba(255,255,255,.94);
  box-shadow:0 10px 30px rgba(13,76,135,.08);
}
.spw-clock-digital{
  width:58px;
  height:42px;
  flex:0 0 58px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:linear-gradient(135deg,#ecfdf5,#f0fdf4);
  border:1px solid #b7ead2;
  color:#159b74;
  font-size:12px;
  font-weight:900;
  letter-spacing:.8px;
}
.spw-clock-info{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:1px;
}
.spw-clock-label{
  color:#65748b;
  font-size:11px;
  font-weight:900;
  letter-spacing:.7px;
}
.spw-clock-info strong{
  color:#159b74;
  font-size:20px;
  line-height:1.15;
}
.spw-clock-info span:last-child{
  color:#159b74;
  font-size:12px;
  font-weight:700;
}
.spw-global-selectors{
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  gap:12px;
  flex-wrap:wrap;
}
.spw-selector{
  display:flex;
  flex-direction:column;
  gap:5px;
  min-width:190px;
}
.spw-selector span{
  color:#536a84;
  font-size:11px;
  font-weight:900;
  letter-spacing:.4px;
  text-transform:uppercase;
}
.spw-selector select{
  width:100%;
  min-height:42px;
  padding:0 38px 0 12px;
  border:1px solid #d8e4f0;
  border-radius:12px;
  background:#fff;
  color:#142b49;
  font:700 13px Inter,system-ui,sans-serif;
  outline:none;
  cursor:pointer;
}
.spw-selector select:focus{
  border-color:#1680e8;
  box-shadow:0 0 0 3px rgba(22,128,232,.1);
}
.spw-global-status{
  min-width:100px;
  padding-bottom:11px;
  color:#0c7b68;
  font-size:11px;
  font-weight:800;
}
@media(max-width:900px){
  .spw-global-inner{
    width:92%;
    align-items:stretch;
    flex-direction:column;
  }
  .spw-clock-card{min-width:0;width:100%}
  .spw-global-selectors{width:100%;align-items:stretch;justify-content:stretch}
  .spw-selector{flex:1 1 180px;min-width:0}
  .spw-global-status{padding:0;align-self:center}
}
@media(max-width:600px){
  .spw-global-ad-link{font-size:14px}
  .spw-global-ad-item{padding:13px 20px}
  .spw-global-selectors{display:grid;grid-template-columns:1fr 1fr}
  .spw-selector{min-width:0}
  .spw-global-status{grid-column:1/-1;text-align:center}
  .spw-clock-info strong{font-size:18px}
}

/* Tech image fallback: cards remain clean until the user supplies
   ./images/tech-1.png through ./images/tech-20.png. */
.sp-tech-roll-card img.spw-tech-image-error{
  opacity:0;
}


/* =========================================================
   SP WORLDTECH PROFESSIONAL SHARED FOOTER
   ========================================================= */

  .spw-footer-shell {
    --bg: #020817;
    --panel: #071426;
    --panel-2: #0a1b31;
    --line: rgba(69, 157, 255, .25);
    --blue: #1597ff;
    --blue-2: #55b8ff;
    --text: #f6f9ff;
    --muted: #9fb1c8;
    --green: #28d17c;
    --radius: 20px;
  }

  .spw-footer-shell {
    position: relative;
    background: var(--bg);
    color: var(--text);
    overflow: hidden;
    border-top: 1px solid rgba(100, 180, 255, .18);
  }

  .spw-footer-shell::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image:
      linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
    background-size: 46px 46px;
    mask-image: linear-gradient(to bottom, black, transparent 88%);
  }

  .spw-footer-container {
    width: min(1440px, calc(100% - 48px));
    margin: auto;
    position: relative;
    z-index: 1;
  }

  /* TECHNOLOGY PARTNERS */
  .spw-footer-tech-section {
    padding: 78px 0 62px;
    text-align: center;
  }

  .spw-footer-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    color: #63bcff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .28em;
    text-transform: uppercase;
  }

  .spw-footer-eyebrow::before,
  .spw-footer-eyebrow::after {
    content: "";
    width: 48px;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--blue));
  }

  .spw-footer-eyebrow::after {
    background: linear-gradient(90deg, var(--blue), transparent);
  }

  .spw-footer-tech-section h2 {
    margin: 16px 0 8px;
    font-size: clamp(32px, 4vw, 57px);
    line-height: 1.05;
    letter-spacing: -.045em;
  }

  .spw-footer-gradient-text {
    color: var(--blue);
    text-shadow: 0 0 32px rgba(21,151,255,.25);
  }

  .spw-footer-tech-subtitle {
    margin: 0 auto 38px;
    max-width: 720px;
    color: var(--muted);
    font-size: 16px;
  }

  .spw-footer-tech-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
  }

  .spw-footer-tech-card {
    position: relative;
    min-height: 130px;
    padding: 25px 22px;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: linear-gradient(145deg, rgba(10,27,49,.94), rgba(3,13,27,.96));
    display: flex;
    align-items: center;
    gap: 18px;
    text-align: left;
    transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease;
  }

  .spw-footer-tech-card:hover {
    transform: translateY(-6px);
    border-color: rgba(55,170,255,.7);
    box-shadow: 0 18px 45px rgba(0, 113, 255, .16);
  }

  .spw-footer-logo-box {
    width: 62px;
    height: 62px;
    flex: 0 0 62px;
    border-radius: 16px;
    display: grid;
    place-items: center;
    background: rgba(255,255,255,.045);
    border: 1px solid rgba(255,255,255,.09);
  }

  .spw-footer-logo-box img {
    width: 42px;
    height: 42px;
    object-fit: contain;
  }

  .spw-footer-tech-card h3 {
    margin: 0 0 5px;
    font-size: 19px;
  }

  .spw-footer-tech-card p {
    margin: 0 0 9px;
    color: var(--muted);
    font-size: 12px;
    line-height: 1.45;
  }

  .spw-footer-brand-link {
    color: #69c0ff;
    font-size: 11px;
    font-weight: 700;
  }

  /* SOCIAL STRIP */
  .spw-footer-social-section {
    position: relative;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    background:
      linear-gradient(90deg, rgba(2,8,23,.97), rgba(2,18,38,.83), rgba(2,8,23,.97)),
      url("https://images.unsplash.com/photo-1451187580459-43490279c0fa?auto=format&fit=crop&w=2200&q=80")
      center/cover;
  }

  .spw-footer-social-section::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
      radial-gradient(circle at 80% 50%, rgba(0,145,255,.2), transparent 28%),
      radial-gradient(circle at 20% 50%, rgba(0,145,255,.12), transparent 25%);
  }

  .spw-footer-social-inner {
    position: relative;
    z-index: 1;
    min-height: 225px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
  }

  .spw-footer-social-copy {
    max-width: 550px;
  }

  .spw-footer-social-copy .spw-footer-eyebrow {
    justify-content: flex-start;
  }

  .spw-footer-social-copy h2 {
    margin: 12px 0 9px;
    font-size: clamp(30px, 4vw, 48px);
    letter-spacing: -.04em;
  }

  .spw-footer-social-copy p {
    margin: 0;
    color: #c0cede;
    line-height: 1.7;
  }

  .spw-footer-social-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(105px, 1fr));
    gap: 13px;
  }

  .spw-footer-social-card {
    width: 116px;
    min-height: 118px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid rgba(88,174,255,.35);
    border-radius: 18px;
    background: rgba(2,10,23,.72);
    backdrop-filter: blur(14px);
    transition: transform .25s ease, background .25s ease;
  }

  .spw-footer-social-card:hover {
    transform: translateY(-6px) scale(1.025);
    background: rgba(11,32,57,.9);
  }

  .spw-footer-social-card img {
    width: 36px;
    height: 36px;
    object-fit: contain;
  }

  .spw-footer-social-card strong {
    font-size: 13px;
  }

  .spw-footer-social-card span {
    color: #8da4be;
    font-size: 10px;
  }

  /* MAIN FOOTER */
  .spw-footer-main {
    padding: 65px 0 44px;
  }

  .spw-footer-grid {
    display: grid;
    grid-template-columns: 1.45fr repeat(4, 1fr);
    gap: 45px;
  }

  .spw-footer-brand-area {
    padding-right: 25px;
  }

  .spw-footer-brand-row {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 20px;
  }

  .spw-footer-logo {
    width: 74px;
    height: 74px;
    border-radius: 20px;
    object-fit: cover;
    border: 1px solid rgba(255,215,90,.45);
    box-shadow: 0 0 30px rgba(255,196,40,.12);
  }

  .spw-footer-brand-name {
    font-size: 28px;
    font-weight: 900;
    letter-spacing: -.04em;
  }

  .spw-footer-brand-name span { color: var(--blue); }

  .spw-footer-brand-tag {
    margin-top: 2px;
    color: #a9bdd4;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .16em;
  }

  .spw-footer-brand-description {
    color: #9fb1c8;
    line-height: 1.75;
    font-size: 14px;
    max-width: 410px;
  }

  .spw-footer-motto {
    display: flex;
    flex-wrap: wrap;
    gap: 11px;
    margin-top: 24px;
    color: #bdd0e5;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
  }

  .spw-footer-motto i {
    width: 4px;
    height: 4px;
    margin-top: 5px;
    border-radius: 50%;
    background: var(--blue);
  }

  .spw-footer-column {
    border-left: 1px solid rgba(98,163,221,.18);
    padding-left: 28px;
  }

  .spw-footer-column h3 {
    margin: 0 0 18px;
    color: #44afff;
    font-size: 12px;
    letter-spacing: .11em;
    text-transform: uppercase;
  }

  .spw-footer-column a {
    display: block;
    width: fit-content;
    margin: 0 0 12px;
    color: #d2ddec;
    font-size: 13px;
    transition: color .2s ease, transform .2s ease;
  }

  .spw-footer-column a:hover {
    color: white;
    transform: translateX(4px);
  }

  /* BOTTOM */
  .spw-footer-bottom-bar {
    border-top: 1px solid rgba(92,158,219,.2);
    padding: 24px 0;
  }

  .spw-footer-bottom-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
  }

  .spw-footer-copyright {
    color: #899cb4;
    font-size: 12px;
  }

  .spw-footer-trust-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 15px;
    color: #aebed1;
    font-size: 11px;
  }

  .spw-footer-trust-item {
    display: inline-flex;
    align-items: center;
    gap: 7px;
  }

  .spw-footer-trust-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--green);
    box-shadow: 0 0 10px rgba(40,209,124,.55);
  }

  .spw-footer-top-button {
    position: fixed;
    right: 22px;
    bottom: 22px;
    width: 48px;
    height: 48px;
    border: 1px solid rgba(73,178,255,.7);
    border-radius: 50%;
    background: rgba(2,13,29,.88);
    color: white;
    cursor: pointer;
    display: grid;
    place-items: center;
    font-size: 21px;
    box-shadow: 0 10px 35px rgba(0,104,255,.2);
    opacity: 0;
    transform: translateY(15px);
    pointer-events: none;
    transition: .25s ease;
    z-index: 50;
  }

  .spw-footer-top-button.visible {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
  }

  @media (max-width: 1100px) {
    .spw-footer-tech-grid { grid-template-columns: repeat(2, 1fr); }
    .spw-footer-grid { grid-template-columns: repeat(3, 1fr); }
    .spw-footer-brand-area { grid-column: 1 / -1; }
    .spw-footer-social-inner { flex-direction: column; align-items: flex-start; padding: 42px 0; }
    .spw-footer-social-grid { width: 100%; grid-template-columns: repeat(4, 1fr); }
    .spw-footer-social-card { width: 100%; }
  }

  @media (max-width: 700px) {
    .spw-footer-container { width: min(100% - 28px, 1440px); }
    .spw-footer-tech-section { padding-top: 52px; }
    .spw-footer-tech-grid { grid-template-columns: 1fr; }
    .spw-footer-grid { grid-template-columns: 1fr 1fr; gap: 32px 20px; }
    .spw-footer-brand-area { grid-column: 1 / -1; }
    .spw-footer-column { padding-left: 17px; }
    .spw-footer-social-grid { grid-template-columns: repeat(2, 1fr); }
    .spw-footer-social-card { min-height: 105px; }
    .spw-footer-bottom-inner { flex-direction: column; align-items: flex-start; }
    .spw-footer-trust-row { justify-content: flex-start; }
  }

  @media (max-width: 430px) {
    .spw-footer-grid { grid-template-columns: 1fr; }
    .spw-footer-social-grid { grid-template-columns: repeat(2, 1fr); }
    .spw-footer-brand-name { font-size: 24px; }
    .spw-footer-logo { width: 62px; height: 62px; }
  }


/* SP WorldTech footer logo reliability and consistency */
.spw-footer-tech-card .spw-footer-logo-box img,
.spw-footer-social-card img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
}
.spw-footer-tech-card .spw-footer-logo-box img { width: 42px; height: 42px; }
.spw-footer-social-card img { width: 38px; height: 38px; }
.spw-footer-container.spw-footer-social-inner,
.spw-footer-container.spw-footer-grid,
.spw-footer-container.spw-footer-bottom-inner {
  width: min(1440px, calc(100% - 48px));
  margin-inline: auto;
}
@media (max-width: 700px) {
  .spw-footer-container.spw-footer-social-inner,
  .spw-footer-container.spw-footer-grid,
  .spw-footer-container.spw-footer-bottom-inner { width: min(100% - 28px, 1440px); }
}

/* SP WorldTech product pricing */
.product-price-wrap{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap}.product-old-price{color:#8a96a6;font-size:.82em;text-decoration-thickness:1.5px}.product-new-price{color:#0b6bf5;font-weight:800}.product-free{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#e8f8f0;color:#118b5b;font-weight:800;font-size:.85em}.marketplace-upload-card{border:1px solid #d9e6f5}.marketplace-upload-card .panel-head p{max-width:680px;line-height:1.5}.spw-rating{font-family:Inter,system-ui,sans-serif}

/* International layout refinement: keep global tools compact and eliminate accidental empty bands. */
.spw-global-tools{margin:0!important;height:auto!important;min-height:0!important;flex:none!important}
.spw-global-toolbar,.spw-global-ad{height:auto!important;min-height:0!important}
.spw-global-inner{padding:10px 0!important}
.spw-global-ad-item{padding:12px 28px!important}
@media(max-width:760px){.spw-global-inner{padding:9px 0!important}.spw-clock-card{min-width:0!important;width:100%}.spw-global-selectors{width:100%!important}}
