:root{
  --bg:#0b1220;
  --card:#0f1a33;
  --text:#0c0f16;
  --muted:#5b6576;
  --white:#fff;
  --border:rgba(10,20,40,.10);
  --blue:#1e5bff;
  --blue2:#2b7bff;
  --orange:#ff9a1a;
  --shadow:0 16px 40px rgba(0,0,0,.10);
  --radius:18px;
  --container:1180px;
}

*{box-sizing:border-box}

html,body{
  margin:0;
  padding:0;
  font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial;
  color:var(--text);
  background:#f6f8ff;
}

a{
  color:inherit;
  text-decoration:none !important;
}
img{max-width:100%;display:block}

.container{
  max-width:var(--container);
  margin:0 auto;
  padding:0 18px;
}

/* =========================
   NAV
========================= */

.nav{
  position:sticky;
  top:0;
  z-index:50;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--border);
}

.nav-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  height:68px;
  gap:12px;
}

.brand{
  display:flex;
  align-items:center;
  gap:10px;
}

.brand-logo{
  width:40px;
  height:40px;
  object-fit:contain;
}

.brand-name{
  font-weight:800;
  font-size:22px;
}

.brand-strong{font-weight:900}

.modern-brand{
  display:flex;
  align-items:center;
  gap:14px;
  font-weight:800;
  font-size:20px;
  letter-spacing:.2px;
}

.modern-brand img{
  width:50px !important;
  height:50px !important;
  object-fit:cover !important;
  border:1px solid rgba(0,0,0,.05);
  border-radius:50% !important;
  box-shadow:0 4px 10px rgba(0,0,0,.1);
}

.modern-brand span{
  color:#111827;
}

.nav-links{
  display:flex;
  gap:10px;
  font-weight:500;
}

.nav-links a{
  color:#1a1a1a !important;
  font-weight:600;
  font-size:14px;
  padding:8px 16px;
  border-radius:50px;
  opacity:1;
  transition:all .3s ease;
}

.nav-links a:hover{
  background:rgba(30,91,255,.10);
  color:#1e5bff !important;
}

.nav-burger{
  display:none;
  border:0;
  background:transparent;
  font-size:22px;
  padding:10px;
  border-radius:12px;
  cursor:pointer;
}

.nav-mobile{
  display:none;
  padding:12px 18px;
  border-top:1px solid var(--border);
  background:#fff;
}

.nav-mobile a{
  display:block;
  padding:10px 8px;
  border-radius:10px;
}

.nav-mobile a:hover{
  background:#f4f6ff;
}

/* =========================
   BUTTONS / INPUTS
========================= */

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 16px;
  border-radius:14px;
  border:1px solid transparent;
  font-weight:700;
  cursor:pointer;
  transition:transform .08s ease, opacity .2s ease, background .2s ease, border .2s ease;
}

.btn:active{transform:scale(.98)}

.btn-primary{
  background:var(--blue);
  color:#fff;
}

.btn-primary:hover{background:#1748d6}

.btn-ghost{
  background:#f2f5ff;
  border:1px solid #dbe6ff;
}

.btn-ghost:hover{background:#e8efff}

.btn-white{
  background:#fff;
  color:#0b2cff;
}

.btn-white:hover{opacity:.95}

.btn-outline{
  background:transparent;
  color:#fff;
  border:1px solid rgba(255,255,255,.55);
}

.btn-outline:hover{
  background:rgba(255,255,255,.10);
}

.input{
  width:100%;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(0,0,0,.12);
  outline:none;
}

.input:focus{
  border-color:rgba(30,91,255,.55);
  box-shadow:0 0 0 4px rgba(30,91,255,.12);
}

/* =========================
   HERO
========================= */

.hero{
  color:#fff;
  background:
    radial-gradient(1400px 800px at 20% 10%, rgba(255,255,255,.14), transparent 60%),
    linear-gradient(135deg, #1f5cff 0%, #1d44cc 45%, #6a2cff 100%);
  padding:42px 0 26px;
  min-height:calc(100vh - 68px);
}

.hero-grid{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:30px;
  align-items:center;
  min-height:calc(100vh - 68px);
}

.pill{
  display:inline-flex;
  gap:8px;
  align-items:center;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.18);
  padding:8px 12px;
  border-radius:999px;
  font-weight:600;
  font-size:14px;
}

.pill-light{
  background:#eaf1ff;
  border-color:#d7e6ff;
  color:#1c46d6;
}

.hero h1{
  font-size:38px !important;
  line-height:1.2;
  font-weight:800;
  margin:14px 0 15px;
}

.accent{color:var(--orange)}

.hero-sub{
  font-size:20px;
  line-height:1.55;
  max-width:560px;
  opacity:.92;
  margin:0 0 18px;
}

.hero-actions{
  display:flex;
  gap:14px;
  margin:18px 0 26px;
  flex-wrap:wrap;
}

.hero-metrics{
  display:flex;
  gap:46px;
  border-top:1px solid rgba(255,255,255,.22);
  padding-top:20px;
  margin-top:18px;
}

.metric-big{
  font-size:34px;
  font-weight:900;
}

.metric-small{opacity:.85}

.hero-right{
  display:flex;
  justify-content:center;
}

.orbit{
  width:360px;
  height:360px;
  position:relative;
  filter:drop-shadow(0 25px 60px rgba(0,0,0,.25));
}

.orbit::before,
.orbit::after{
  content:"";
  position:absolute;
  inset:30px;
  border-radius:50%;
  border:2px solid rgba(255,255,255,.14);
}

.orbit::after{
  inset:70px;
  border-color:rgba(255,255,255,.10);
}

/* Local: .orbit-center e .orbit-center img */
/* --- HERO ORBIT PREMIUM (REFINADO) --- */
.orbit-center {
  position: absolute;
  inset: 110px !important;    /* Espaçamento perfeito para os ícones não encostarem */
  background: #ffffff !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important; /* Corta o quadrado da imagem */
  
  /* O segredo do refinamento: sombra externa e uma sombra interna leve */
  box-shadow: 
    0 15px 35px rgba(0,0,0,0.2), 
    inset 0 0 15px rgba(0,0,0,0.05) !important;
  
  z-index: 10;
  border: 2px solid rgba(255,255,255,0.5); /* Borda de brilho sutil */
}

.orbit-center img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important; /* Preenche o círculo sem sobras pretas */
  object-position: center !important;
  border-radius: 50% !important; 
  transition: transform 0.3s ease;
}

/* --- ANIMAÇÃO DE ROTAÇÃO DOS ÍCONES --- */
@keyframes orbitRotate {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

/* Aplica a rotação lenta à órbita */
.orbit {
  animation: orbitRotate 100s linear infinite;
}

/* Garante que o centro (o logo) NÃO gire junto com os ícones */
.orbit-center {
  animation: orbitRotate 100s linear infinite reverse;
}


.orb{
  position:absolute;
  width:54px;
  height:54px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.18);
  font-size:22px;
}

.o1{top:18px; left:160px}
.o2{top:60px; right:40px}
.o3{top:155px; left:18px}
.o4{bottom:70px; right:22px}
.o5{bottom:30px; left:140px}
.o6{top:250px; right:140px}

/* =========================
   SECTIONS
========================= */

.section{
  padding:70px 0;
  background:linear-gradient(180deg,#f6f8ff 0%,#ffffff 100%);
}

.section-soft{
  background:linear-gradient(180deg,#f6f8ff 0%,#ffffff 80%);
}

.section + .section{
  border-top:1px solid rgba(30, 91, 255, 0.08);
}

.section-head{
  text-align:center;
  max-width:820px;
  margin:0 auto 42px;
}

.section-head h2{
  font-size:54px;
  margin:16px 0 8px;
}

.section-head p{font-size:18px}

.accent-blue{color:#1e5bff}
.muted{color:var(--muted)}
.small{font-size:13px}

/* =========================
   CATEGORIES
========================= */

.grid-categories{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:24px;
}



.cat-card:hover{transform:translateY(-4px)}

.cat-bg{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
  filter:saturate(1.05);
}

.cat-overlay{
  position:absolute;
  inset:0;
  background:rgba(10,20,40,.55);
}

.cat-content{
  position:relative;
  padding:22px;
  color:#fff;
  display:flex;
  flex-direction:column;
  gap:10px;
}

.cat-emoji{
  width:54px;
  height:54px;
  border-radius:50%;
  background:rgba(255,255,255,.20);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:22px;
}

.cat-title{
  font-size:28px;
  font-weight:900;
  margin:0;
}

.cat-desc{
  opacity:.92;
  margin:0;
}

.cat-link{
  display:inline-flex;
  gap:10px;
  align-items:center;
  font-weight:800;
  opacity:.95;
}

.cat-link:hover{opacity:1}

/* =========================
   PRODUCTS
========================= */

.products-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
}

.products-head h2{
  font-size:44px;
  margin:0;
}

.filters{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.filters .input{min-width:180px}

.grid-products{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:18px;
  margin-top:18px;
}

.p-card{
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 14px 30px rgba(0,0,0,.06);
  transition:transform .16s ease;
}

.p-card:hover{transform:translateY(-3px)}

.p-img{
  height:170px;
  background:#f2f5ff;
  background-size:cover;
  background-position:center;
}

.p-body{padding:14px}

.p-title{
  font-weight:900;
  margin:0 0 6px;
}

.p-desc{
  margin:0 0 10px;
  color:var(--muted);
  font-size:14px;
  line-height:1.4;
  min-height:38px;
}

.p-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.p-price{font-weight:900}

.p-old{
  color:var(--muted);
  text-decoration:line-through;
  font-size:13px;
}

.badge{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  background:#fff3e6;
  color:#a24c00;
  font-weight:900;
  font-size:12px;
  border:1px solid rgba(255,154,26,.35);
}

.p-actions{
  display:flex;
  gap:10px;
  margin-top:12px;
}

.p-actions a{flex:1}

.empty{
  margin-top:24px;
  padding:16px;
  border-radius:14px;
  background:#fff;
  border:1px dashed rgba(0,0,0,.18);
  color:var(--muted);
  text-align:center;
}

/* =========================
   PROMO PREMIUM
========================= */

.promo{
  padding:56px 36px;
  background:linear-gradient(180deg,#eef3ff 0%,#ffffff 100%);
}

.promo-card{
  position:relative;
  display:grid;
  grid-template-columns:60% 40%;
  min-height:340px;
  max-width:100%;
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 28px 70px rgba(30,91,255,.22);
  background:
    radial-gradient(circle at 82% 45%, rgba(255,255,255,.18), transparent 34%),
    linear-gradient(135deg, #1f5cff 0%, #1d44cc 45%, #6a2cff 100%);
  color:#fff;
}

.promo-left{
  padding:42px 40px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  z-index:2;
}

.promo-badge{
  width:max-content;
  display:inline-flex;
  padding:9px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.22);
  font-weight:800;
  box-shadow:0 10px 24px rgba(0,0,0,.12);
}

.promo-left h2{
  margin:22px 0 12px;
  font-size:30px;
  line-height:1.16;
  max-width:680px;
}

.promo-left p{
  opacity:.92;
  font-size:17px;
  margin-bottom:20px;
}

.promo-left .btn,
#promoLink{
  width:max-content;
  background:#fff;
  color:#123cff;
  font-weight:900;
  box-shadow:0 12px 26px rgba(0,0,0,.16);
}

.promo-right{
  position:relative;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:26px 34px 26px 8px;
  overflow:hidden;
}

.promo-right::before{
  content:"";
  position:absolute;
  width:260px;
  height:260px;
  border-radius:50%;
  background:rgba(255,255,255,.14);
  filter:blur(4px);
}

.promo-right img{
  position:relative;
  z-index:2;
  width:auto;
  max-width:78%;
  height:auto;
  max-height:255px;
  object-fit:contain;
  object-position:center;
  border-radius:18px;
  display:block;
  margin:0 auto;
  filter:drop-shadow(0 22px 30px rgba(0,0,0,.36));
  transform:none;
}

/* =========================
   PROMO SLIDER ARROWS
========================= */

.promo-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:5;
  width:42px;
  height:42px;
  border-radius:50%;
  border:none;
  cursor:pointer;
  font-size:20px;
  font-weight:bold;
  background:rgba(255,255,255,.9);
  box-shadow:0 4px 10px rgba(0,0,0,.15);
  transition:.2s;
}

.promo-arrow:hover{
  background:#fff;
  transform:translateY(-50%) scale(1.1);
}

.promo-arrow.left{left:-12px}
.promo-arrow.right{right:-12px}

/* =========================
   ABOUT
========================= */

.about{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:22px;
  align-items:start;
}

.about-list{
  margin:14px 0 0;
  padding-left:18px;
  color:var(--muted);
}

.card{
  background:#fff;
  border-radius:18px;
  padding:18px;
  border:1px solid rgba(0,0,0,.08);
  box-shadow:0 12px 26px rgba(0,0,0,.05);
}

/* =========================
   FOOTER FULL WIDTH
========================= */

.sm-footer{
  width:100%;
  margin-top:80px;
  padding:80px 0 30px 0;
  background:linear-gradient(135deg,#0b1220,#111827,#1e293b);
}

.sm-footer-wrap{
  max-width:1180px;
  margin:0 auto;
  padding:0 24px;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:40px;
}

.sm-footer-col h3{
  color:#fff;
  font-size:15px;
  font-weight:800;
  margin-bottom:16px;
  text-transform:uppercase;
}

.sm-footer-col ul{
  list-style:none;
  margin:0;
  padding:0;
}

.sm-footer-col ul li{
  margin-bottom:10px;
}

.sm-footer-col ul li a,
.social-links a,
.small-text{
  color:#94a3b8;
  font-size:14px;
  line-height:1.6;
}

.sm-footer-col ul li a:hover,
.social-links a:hover{
  color:#fff;
}

.footer-logo{
  width:120px;
  height:auto;
  margin-bottom:12px;
  object-fit:contain;
  border-radius:14px;
}

.sm-footer-bottom{
  max-width:1180px;
  margin:40px auto 0;
  padding:20px 24px 0;
  border-top:1px solid rgba(255,255,255,.08);
  text-align:center;
  font-size:14px;
  color:#94a3b8;
}

/* =========================
   ADMIN
========================= */

.admin-body{background:#f6f8ff}
.admin-grid{display:grid; grid-template-columns:1fr; gap:16px}
.row{display:flex; gap:10px; margin:10px 0; flex-wrap:wrap}
.table-wrap{overflow:auto; margin-top:10px}
.table{width:100%; border-collapse:collapse}

.table th,
.table td{
  padding:10px;
  border-bottom:1px solid rgba(0,0,0,.08);
  text-align:left;
  font-size:14px;
}

.inline{
  display:flex;
  gap:10px;
  align-items:center;
  font-weight:700;
}

/* =========================
   EFEITO DE PROPULSÃO
========================= */

.particle-container{
  position:fixed;
  top:0;
  left:0;
  width:100vw;
  height:100vh;
  pointer-events:none;
}

/* =========================
   SKELETON
========================= */

@keyframes pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: .5; }
}

.skeleton {
  animation: pulse 1.5s cubic-bezier(0.4, 0, 0.6, 1) infinite;
  background-color: #e2e8f0;
}

.skeleton-text {
  height: 1rem;
  border-radius: 4px;
  margin-bottom: 8px;
}

.skeleton-img {
  height: 170px;
  width: 100%;
}

.skeleton-cat {
  height: 240px;
  border-radius: 22px;
}

.skeleton-btn {
  height: 42px;
  border-radius: 14px;
  margin-top: 12px;
}

/* =========================
   RESPONSIVO
========================= */

@media (max-width: 900px){
  .nav-links{
    display:none;
  }

  .nav-burger{
    display:block;
  }

  .hero-grid{
    grid-template-columns:1fr;
    text-align:center;
  }

  .hero-sub{
    margin-left:auto;
    margin-right:auto;
  }

  .hero-actions,
  .hero-metrics{
    justify-content:center;
  }

  .hero h1{
    font-size:44px;
  }

  .grid-categories,
  .grid-products,
  .about{
    grid-template-columns:1fr;
  }

  .promo-card{
    grid-template-columns:1fr;
    min-height:auto;
  }

  .promo-left{
    padding:34px 26px 12px;
    text-align:left;
  }

  .promo-left h2{
    font-size:26px;
  }

  .promo-right{
    min-height:260px;
    padding:10px 24px 34px;
  }

  .promo-right img{
    max-width:70%;
    max-height:230px;
  }
}

@media (max-width: 520px){
  .promo{
    padding:34px 16px;
  }

  .promo-card{
    border-radius:22px;
  }

  .promo-left h2{
    font-size:22px;
  }

  .promo-right img{
    max-width:82%;
    max-height:210px;
  }

  .hero h1{
    font-size:36px;
  }

  .orbit{
    width:280px;
    height:280px;
  }

  .orbit-center{
    inset:72px;
  }

  .orbit-center img{
    width:100%;
    height:100%;
  }
}

.promo-right::before{
  display:none;
}

/* ✅ IMAGEM FINAL CORRETA */
.promo-right img{
  position:relative;
  z-index:2;

  width:auto;
  max-width:78%;

  height:auto;
  max-height:260px;

  object-fit:contain;
  object-position:center;

  display:block;
  margin:0 auto;

  filter:drop-shadow(0 24px 34px rgba(0,0,0,.38));
}

/* =========================
   FIX FINAL - IMAGEM PROMO
========================= */

.promo-card{
  max-height:360px;
}

.promo-right{
  overflow:hidden !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}


#promoImg{
  width:360px !important;
  height:auto !important;

  max-width:360px !important;
  max-height:330px !important;

  object-fit:contain !important;
  object-position:center !important;

  display:block !important;
  margin:auto !important;


  background:transparent !important;
  border:none !important;
  border-radius:0 !important;


  filter:drop-shadow(0 18px 28px rgba(0,0,0,.35));
}


.grid-categories{
  grid-template-columns:repeat(4,1fr);
}

.cat-overlay{
  background:rgba(10,20,40,.65);
}

.cat-title{
  font-size:22px;
}

.cat-desc{
  font-size:14px;
}

.sm-footer{
  padding:90px 0 40px;
}

.sm-footer-col h3{
  font-size:16px;
  letter-spacing:.5px;
}

.sm-footer-col a{
  transition:.2s;
}

.sm-footer-col a:hover{
  transform:translateX(4px);
}

/* =========================
   PREMIUM RESTORE - CATEGORIES + FOOTER
========================= */

#esportes .container > h2,
#produtos .container > h2{
  font-size:32px;
  margin:0 0 24px;
  color:#111827;
}

.grid-categories{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}


.cat-card {
  position: relative; 
  min-height: 210px;
  cursor: pointer;
  border-radius: 18px;
  overflow: hidden;    
  border: 1px solid rgba(30,91,255,.12);
  transition: transform .18s ease;
  box-shadow: 0 18px 42px rgba(15,35,80,.16);
  

  background: 
    radial-gradient(circle at 88% 16%, rgba(255,154,26,.22), transparent 28%), 
    linear-gradient(145deg,#102a66 0%,#1e5bff 48%,#0b1220 100%);
}

.cat-card:hover {
  transform: translateY(-4px);
}

.cat-card:nth-child(2n){
  background:
    radial-gradient(circle at 86% 18%, rgba(255,255,255,.20), transparent 28%),
    linear-gradient(145deg,#111827 0%,#233d7a 52%,#1e5bff 100%);
}

.cat-card:nth-child(3n){
  background:
    radial-gradient(circle at 86% 18%, rgba(255,154,26,.24), transparent 28%),
    linear-gradient(145deg,#0f172a 0%,#1d4ed8 54%,#172554 100%);
}

.cat-card:focus-visible{
  outline:3px solid rgba(255,154,26,.65);
  outline-offset:4px;
}

.cat-content{
  min-height:210px;
  padding:22px;
  justify-content:space-between;
  color:#fff;
}

.cat-content h3{
  margin:10px 0 0;
  font-size:22px;
  line-height:1.15;
  color:#fff;
}

.cat-content p{
  margin:0;
  color:rgba(255,255,255,.78);
  font-size:14px;
  line-height:1.45;
}

.cat-emoji{
  width:48px;
  height:48px;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.20);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18);
}

.cat-count{
  width:max-content;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  color:#fff;
  font-size:12px;
  font-weight:800;
}

.cat-content a{
  width:max-content;
  color:#fff;
  font-weight:900;
  border-bottom:0;
}

.sm-footer{
  margin-top:0;
  padding:72px 0 28px;
  background:
    radial-gradient(900px 360px at 12% 0%, rgba(30,91,255,.30), transparent 62%),
    linear-gradient(135deg,#07111f 0%,#101827 48%,#172554 100%);
}

.sm-footer-wrap{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}

.sm-footer-card{
  min-height:260px;
  padding:24px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.07);
  box-shadow:0 22px 50px rgba(0,0,0,.24);
  backdrop-filter:blur(10px);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}

.sm-footer-card h3{
  margin:8px 0 12px;
  color:#fff;
  font-size:20px;
  line-height:1.2;
}

.sm-footer-card p,
.sm-footer-card li,
.sm-footer-card a{
  color:#cbd5e1;
  font-size:14px;
  line-height:1.6;
}

.sm-footer-card ul{
  list-style:none;
  margin:0;
  padding:0;
}

.sm-footer-card a{
  display:inline-flex;
  width:max-content;
  max-width:100%;
  transition:color .2s ease, transform .2s ease;
}

.sm-footer-card a:hover{
  color:#fff;
  transform:translateX(3px);
}

.footer-kicker{
  display:inline-flex;
  width:max-content;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  margin:0 0 4px;
  border-radius:999px;
  background:rgba(255,154,26,.16);
  color:#ffcc85;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
}

.footer-icon{
  display:flex;
  width:42px;
  height:42px;
  align-items:center;
  justify-content:center;
  margin-bottom:16px;
  border-radius:14px;
  background:#fff;
  color:#1e5bff;
  font-weight:900;
}

.footer-logo{
  width:50px !important;
  height:50px !important;
  object-fit:cover !important;
  margin-bottom:16px;
  border:1px solid rgba(0,0,0,.05);
  border-radius:50% !important;
  box-shadow:0 4px 10px rgba(0,0,0,.1);
}

.social-links{
  display:grid;
  gap:8px;
}

@media (max-width: 980px){
  .grid-categories,
  .sm-footer-wrap{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 620px){
  .grid-categories,
  .sm-footer-wrap{
    grid-template-columns:1fr;
  }}

  .sm-footer {
  margin-top: 0;
  padding: 72px 0 28px;
  /* Restaurando o gradiente escuro profundo com brilho azul */
  background: 
    radial-gradient(900px 360px at 12% 0%, rgba(30,91,255,.30), transparent 62%), 
    linear-gradient(135deg,#07111f 0%,#101827 48%,#172554 100%);
}

.sm-footer-card {
  min-height: 260px;
  padding: 24px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.07); /* Mantém a transparência do glassmorphism */
  box-shadow: 0 22px 50px rgba(0,0,0,.24);
  backdrop-filter: blur(10px);
}
