
/* ==========================================================
   PROMOSIM — PADRONIZAÇÃO VISUAL GLOBAL
   Somente apresentação. Não altera funções, SEO ou estrutura.
   ========================================================== */

:root{
  --promosim-purple:#7A009D;
  --promosim-ink:#171219;
  --promosim-muted:#716976;
  --promosim-line:#e9e3ec;
  --promosim-soft:#fbf9fc;
  --promosim-max:1220px;
  --promosim-radius:14px;
  --promosim-font:"Segoe UI Variable","Segoe UI",Arial,sans-serif;
}

/* ---------- 1. FONTE GLOBAL ---------- */
html,
body,
button,
input,
select,
textarea,
option,
a,
p,
span,
div,
label,
small,
strong,
b,
h1,h2,h3,h4,h5,h6{
  font-family:var(--promosim-font) !important;
}

body{
  color:var(--promosim-ink);
  font-weight:400 !important;
  letter-spacing:-.01em;
}

p,span,div,label,small,a,
input,select,textarea,button{
  font-weight:400;
}

/* ---------- 2. TÍTULOS E CABEÇALHOS ---------- */
h1,h2,h3,h4,h5,h6,
.page-title,
.section-title,
.section-heading,
.block-title,
.home-title,
.hero-title,
.all-title h2,
.section-head h1,
.section-head h2,
.section-head h3{
  font-weight:700 !important;
  letter-spacing:-.025em !important;
  color:var(--promosim-ink);
}

h1,.page-title,.hero-title{
  line-height:1.12 !important;
}

h2,.section-title,.section-heading,.block-title{
  line-height:1.18 !important;
}

/* palavras coloridas dentro dos títulos continuam em negrito */
h1 span,h2 span,h3 span,
.page-title span,
.section-title span,
.section-heading span,
.block-title span,
.hero-title span{
  font-weight:700 !important;
}

/* ---------- 3. CARD DE PRODUTO: TÍTULO NORMAL ---------- */
.product-title,
.product-name,
.product-name-v2,
.offer-title,
.all-deal-title,
.achado-title,
.ss-title,
.similar-title,
.explore-title,
.pc-title,
.card-title,
.deal-title,
.trending-name,
.card .title,
.body .title,
.product-card h3,
.offer-card h3{
  font-weight:400 !important;
  display:-webkit-box !important;
  -webkit-box-orient:vertical !important;
  -webkit-line-clamp:2 !important;
  line-clamp:2 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:normal !important;
  line-height:1.32 !important;
  height:2.64em !important;
  min-height:2.64em !important;
  max-height:2.64em !important;
}

/* descendentes não voltam a ficar em negrito */
.product-title *,
.product-name *,
.product-name-v2 *,
.offer-title *,
.all-deal-title *,
.achado-title *,
.ss-title *,
.similar-title *,
.explore-title *,
.pc-title *,
.card-title *,
.deal-title *,
.trending-name *,
.card .title *,
.body .title *{
  font-weight:400 !important;
}

/* ---------- 4. PREÇO EM NEGRITO ---------- */
.price,
.current-price,
.final-price,
.product-price,
.product-price-v2,
.offer-price,
.all-deal-price,
.achado-price,
.ss-price,
.similar-price,
.explore-price,
.pc-price,
.deal-price,
[class*="current-price"],
[class*="final-price"]{
  font-weight:700 !important;
  letter-spacing:-.02em !important;
}

/* preço anterior não fica em negrito */
.old-price,
.previous-price,
.price-old,
.product-old,
.product-old-v2,
.all-deal-old,
.achado-old{
  font-weight:400 !important;
}

/* ---------- 5. TEXTOS AUXILIARES ---------- */
.subtitle,
.description,
.crumb,
.breadcrumb,
.product-store,
.product-store-v2,
.offer-store,
.all-deal-store,
.achado-store,
.cat-count,
small{
  font-weight:400 !important;
}

/* ---------- 6. LARGURA / LINHA GLOBAL ---------- */
/* Classes de container usadas no portal */
.wrap,
.container,
.site-container,
.page-container,
.page-wrap,
.content-wrap{
  width:min(calc(100% - 48px), var(--promosim-max)) !important;
  max-width:var(--promosim-max) !important;
  margin-left:auto !important;
  margin-right:auto !important;
  box-sizing:border-box !important;
}

/* evita container duplo reduzir a largura */
.wrap .container,
.container .wrap,
.page-wrap .container,
.page-container .container{
  width:100% !important;
  max-width:100% !important;
}

/* ---------- 7. MENU GLOBAL ---------- */
.nav{
  display:flex !important;
  align-items:center !important;
  gap:34px !important;
  white-space:nowrap;
}

.nav > a{
  font-weight:400 !important;
}

/* ---------- 8. FAVORITOS / ALERTAS / CONTA ---------- */
.actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:10px !important;
}

.actions > a,
.actions > .action{
  box-sizing:border-box;
}

/* mantém o padrão moderno já existente */
.actions a b,
.actions .action b,
.action-ico{
  color:var(--promosim-purple) !important;
}

/* ---------- 9. CARDS: RITMO VISUAL ---------- */
.product-card,
.offer-card,
.all-deal-card,
.achado-card,
.similar-card,
.explore-card,
.ss-card,
.pc-card{
  box-sizing:border-box !important;
}

/* reduz diferenças causadas por margens locais em conteúdo de card */
.product-card p,
.offer-card p,
.all-deal-card p,
.achado-card p,
.similar-card p,
.explore-card p{
  margin-top:0;
}

/* ---------- 10. BOTÕES E FILTROS ---------- */
button,
.btn,
[class*="btn"],
select,
input,
textarea{
  font-family:var(--promosim-font) !important;
}

button,
.btn,
[class*="btn"]{
  font-weight:600;
}

/* ---------- 11. MOBILE ---------- */
@media(max-width:760px){
  .wrap,
  .container,
  .site-container,
  .page-container,
  .page-wrap,
  .content-wrap{
    width:calc(100% - 24px) !important;
  }

  .nav{
    gap:22px !important;
    overflow-x:auto;
    scrollbar-width:none;
  }

  .nav::-webkit-scrollbar{
    display:none;
  }

  h1,.page-title,.hero-title{
    letter-spacing:-.02em !important;
  }
}


/* PROMOSIM_GLOBAL_NAV_STANDARD_V2
   Controle único do menu principal em todas as páginas públicas.
   O item ativo muda SOMENTE de cor e recebe a linha inferior.
*/
.nav{
  display:flex !important;
  align-items:center !important;
  gap:34px !important;
  height:42px !important;
  margin:0 !important;
  padding:0 !important;
  white-space:nowrap !important;
  box-sizing:border-box !important;
}

.nav > a{
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;

  height:42px !important;
  padding:0 !important;
  margin:0 !important;

  font-family:var(--promosim-font) !important;
  font-size:12px !important;
  font-weight:400 !important;
  line-height:1 !important;
  letter-spacing:-.01em !important;

  color:var(--promosim-ink) !important;
  text-decoration:none !important;
  border:0 !important;
  box-shadow:none !important;
  background:none !important;

  transition:color .18s ease !important;
}

/* Todos os ícones do menu seguem exatamente o mesmo tamanho */
.nav > a svg,
.nav > a .promosim-nav-v2-icon,
.nav > a .promosim-home-nav-icon,
.nav > a [class*="nav-icon"]{
  width:18px !important;
  height:18px !important;
  min-width:18px !important;
  flex:0 0 18px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  vertical-align:middle !important;
  color:var(--promosim-purple) !important;
}

/* SVGs ficam visualmente idênticos */
.nav > a svg{
  display:block !important;
  width:18px !important;
  height:18px !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.8 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}

/* Hover: só muda a cor */
.nav > a:hover{
  color:var(--promosim-purple) !important;
}

/* Ativo: mesma fonte/tamanho/peso dos demais */
.nav > a.active,
.nav > a.is-active,
.nav > a.current,
.nav > a.selected,
.nav > a.promosim-menu-active-v6{
  color:var(--promosim-purple) !important;
  font-size:12px !important;
  font-weight:400 !important;
}

/* Remove indicadores locais/antigos para evitar duplicações e larguras diferentes */
.nav > a.active::before,
.nav > a.is-active::before,
.nav > a.current::before,
.nav > a.selected::before,
.nav > a.promosim-menu-active-v6::before,
.nav > a.active::after,
.nav > a.is-active::after,
.nav > a.current::after,
.nav > a.selected::after,
.nav > a.promosim-menu-active-v6::after{
  content:none !important;
  display:none !important;
}

/* Indicador global único: exatamente sob ícone + texto */
.nav > a.active::after,
.nav > a.is-active::after,
.nav > a.current::after,
.nav > a.selected::after,
.nav > a.promosim-menu-active-v6::after{
  content:"" !important;
  display:block !important;
  position:absolute !important;

  left:0 !important;
  right:0 !important;
  bottom:0 !important;

  width:100% !important;
  height:2px !important;
  margin:0 auto !important;

  border-radius:999px !important;
  background:var(--promosim-purple) !important;
}

/* Garante que wrappers internos não alterem peso/tamanho do ativo */
.nav > a span,
.nav > a b,
.nav > a strong{
  font-family:var(--promosim-font) !important;
  font-size:12px !important;
  font-weight:400 !important;
  line-height:1 !important;
}

/* Distância consistente entre menu e linha divisória do header */
header .nav{
  padding-bottom:0 !important;
}

header{
  border-bottom:1px solid var(--promosim-line) !important;
}

/* Mobile: mesma lógica, apenas menor espaçamento horizontal */
@media(max-width:760px){
  .nav{
    gap:22px !important;
    height:42px !important;
    overflow-x:auto !important;
    scrollbar-width:none !important;
  }

  .nav::-webkit-scrollbar{
    display:none !important;
  }

  .nav > a,
  .nav > a.active,
  .nav > a.is-active,
  .nav > a.current,
  .nav > a.selected,
  .nav > a.promosim-menu-active-v6{
    height:42px !important;
    font-size:12px !important;
    font-weight:400 !important;
  }
}


/* PROMOSIM_GLOBAL_CAMPAIGN_BANNER_COMPONENT_V1
   Componente global único, sem ícones. Só existe quando o backend o injeta.
*/
.promosim-global-campaign{
  display:block !important;
  width:min(calc(100% - 32px), 1460px) !important;
  margin:10px auto 0 !important;
  border-radius:14px !important;
  background:linear-gradient(110deg,var(--pgb-from,#650081),var(--pgb-to,#A51FD0)) !important;
  color:var(--pgb-text,#fff) !important;
  text-decoration:none !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
  box-shadow:0 8px 22px rgba(79,0,102,.08) !important;
}

.promosim-global-campaign__inner{
  min-height:52px !important;
  padding:9px 16px 9px 20px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:20px !important;
  box-sizing:border-box !important;
}

.promosim-global-campaign__copy{
  min-width:0 !important;
  display:flex !important;
  align-items:baseline !important;
  flex-wrap:wrap !important;
  gap:5px 8px !important;
  color:inherit !important;
  font-weight:400 !important;
  line-height:1.25 !important;
}

.promosim-global-campaign__main,
.promosim-global-campaign__extra{
  color:inherit !important;
  font-size:13px !important;
  font-weight:400 !important;
}

.promosim-global-campaign__highlight{
  color:inherit !important;
  font-size:13px !important;
  font-weight:700 !important;
}

.promosim-global-campaign__cta{
  flex:0 0 auto !important;
  min-height:34px !important;
  padding:0 15px !important;
  border-radius:10px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:5px !important;
  background:var(--pgb-button,#fff) !important;
  color:var(--pgb-from,#650081) !important;
  font-size:11px !important;
  font-weight:700 !important;
  white-space:nowrap !important;
  transition:transform .18s ease,opacity .18s ease !important;
}

.promosim-global-campaign:hover .promosim-global-campaign__cta{
  transform:translateX(2px) !important;
}

@media(max-width:760px){
  .promosim-global-campaign{
    width:calc(100% - 20px) !important;
    margin-top:7px !important;
    border-radius:12px !important;
  }

  .promosim-global-campaign__inner{
    min-height:auto !important;
    padding:10px 12px !important;
    gap:10px !important;
    align-items:center !important;
  }

  .promosim-global-campaign__copy{
    display:block !important;
    line-height:1.18 !important;
  }

  .promosim-global-campaign__main,
  .promosim-global-campaign__highlight,
  .promosim-global-campaign__extra{
    font-size:11px !important;
  }

  .promosim-global-campaign__highlight{
    margin-left:4px !important;
  }

  .promosim-global-campaign__extra{
    display:block !important;
    margin-top:3px !important;
    opacity:.9 !important;
  }

  .promosim-global-campaign__cta{
    min-height:32px !important;
    padding:0 10px !important;
    border-radius:9px !important;
    font-size:10px !important;
  }
}

@media(max-width:430px){
  .promosim-global-campaign__inner{
    align-items:flex-start !important;
  }

  .promosim-global-campaign__cta{
    max-width:112px !important;
    white-space:normal !important;
    text-align:center !important;
  }
}

.promosim-global-campaign--image{background:none!important;box-shadow:none!important}
.promosim-global-campaign--image img{display:block!important;width:100%!important;height:auto!important;max-height:120px!important;object-fit:cover!important;border-radius:14px!important}
@media(max-width:760px){.promosim-global-campaign--image img{max-height:none!important;object-fit:contain!important}}


/* PROMOSIM_GLOBAL_CAMPAIGN_POSITION_V3
   Substitui a antiga topbar; não empilha banners.
   Modelo: faixa ampla e baixa imediatamente acima do cabeçalho.
*/
.promosim-global-campaign{
  width:min(calc(100% - 32px),1760px) !important;
  margin:8px auto !important;
  border-radius:12px !important;
}

.promosim-global-campaign__inner{
  min-height:44px !important;
  padding:7px 16px 7px 18px !important;
}

.promosim-global-campaign--image{
  height:52px !important;
  margin:8px auto !important;
}

.promosim-global-campaign--image img{
  width:100% !important;
  height:52px !important;
  max-height:52px !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:12px !important;
}

@media(max-width:760px){
  .promosim-global-campaign{
    width:calc(100% - 20px) !important;
    margin:6px auto !important;
    border-radius:10px !important;
  }

  .promosim-global-campaign--image{
    height:auto !important;
  }

  .promosim-global-campaign--image img{
    height:auto !important;
    max-height:none !important;
    object-fit:contain !important;
    border-radius:10px !important;
  }
}


/* PROMOSIM_GLOBAL_BANNER_EXACT_STATIC_SIZE_V4
   Mantém o banner no formato fino do banner estático / modelo Promobit.
   Não altera header, menu, cards ou conteúdo da página.
*/
.promosim-global-campaign,
.promosim-global-campaign--image{
  display:block !important;
  width:min(calc(100% - 48px), 1728px) !important;
  height:auto !important;
  min-height:0 !important;
  margin:8px auto !important;
  padding:0 !important;
  border:0 !important;
  border-radius:10px !important;
  overflow:hidden !important;
  line-height:0 !important;
  box-sizing:border-box !important;
  background:transparent !important;
  box-shadow:none !important;
}

.promosim-global-campaign--image img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  aspect-ratio:43.2 / 1 !important; /* 1728 x 40 */
  max-height:none !important;
  min-height:0 !important;
  object-fit:cover !important;
  object-position:center !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:10px !important;
}

/* O banner montado pelo painel usa a mesma altura visual */
.promosim-global-campaign:not(.promosim-global-campaign--image) .promosim-global-campaign__inner{
  min-height:40px !important;
  height:40px !important;
  padding:0 14px 0 18px !important;
  box-sizing:border-box !important;
}

/* Mobile: mantém proporção, sem esticar nem gerar rolagem horizontal */
@media(max-width:760px){
  .promosim-global-campaign,
  .promosim-global-campaign--image{
    width:calc(100% - 20px) !important;
    margin:6px auto !important;
    border-radius:8px !important;
  }

  .promosim-global-campaign--image img{
    width:100% !important;
    height:auto !important;
    aspect-ratio:12 / 1 !important;
    object-fit:cover !important;
    object-position:center !important;
    border-radius:8px !important;
  }
}


/* PROMOSIM_GLOBAL_FOOTER_VISUAL_V1
   Exclusivo do rodapé global.
   Mesma largura/recuo do Banner Global atual: 1728px / 48px desktop e 20px mobile.
*/
.promosim-global-footer-shell{
  width:min(calc(100% - 48px),1728px) !important;
  margin:34px auto 20px !important;
  box-sizing:border-box !important;
  font-family:var(--promosim-font) !important;
  color:#211c23 !important;
}

.promosim-global-footer-shell *,
.promosim-global-footer-shell *::before,
.promosim-global-footer-shell *::after{
  box-sizing:border-box !important;
}

.pgf-newsletter{
  width:100% !important;
  min-height:86px !important;
  padding:19px 22px !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(360px,.9fr) !important;
  align-items:center !important;
  gap:18px 30px !important;
  border:0 !important;
  border-radius:16px !important;
  background:linear-gradient(100deg,#650081 0%,#7A009D 48%,#A51FD0 100%) !important;
  color:#fff !important;
  overflow:hidden !important;
}

.pgf-newsletter-copy strong{
  display:block !important;
  margin:0 0 4px !important;
  font-size:17px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
  color:#fff !important;
}

.pgf-newsletter-copy span{
  display:block !important;
  font-size:10px !important;
  line-height:1.45 !important;
  font-weight:400 !important;
  color:rgba(255,255,255,.84) !important;
}

.pgf-newsletter-form{
  width:100% !important;
  display:flex !important;
  align-items:stretch !important;
  margin:0 !important;
}

.pgf-newsletter-form input{
  min-width:0 !important;
  flex:1 1 auto !important;
  height:42px !important;
  padding:0 14px !important;
  border:1px solid rgba(255,255,255,.28) !important;
  border-right:0 !important;
  border-radius:10px 0 0 10px !important;
  outline:0 !important;
  background:#fff !important;
  color:#241c26 !important;
  font-family:var(--promosim-font) !important;
  font-size:11px !important;
  font-weight:400 !important;
}

.pgf-newsletter-form button{
  flex:0 0 auto !important;
  height:42px !important;
  padding:0 18px !important;
  border:1px solid rgba(255,255,255,.72) !important;
  border-radius:0 10px 10px 0 !important;
  background:rgba(255,255,255,.06) !important;
  color:#fff !important;
  font-family:var(--promosim-font) !important;
  font-size:10px !important;
  font-weight:700 !important;
  cursor:pointer !important;
  transition:background .18s ease !important;
}

.pgf-newsletter-form button:hover{
  background:rgba(255,255,255,.15) !important;
}

.pgf-newsletter-status{
  grid-column:2 !important;
  min-height:12px !important;
  margin-top:-11px !important;
  font-size:9px !important;
  line-height:1.3 !important;
  color:rgba(255,255,255,.88) !important;
}

.pgf-benefits{
  width:100% !important;
  margin:14px 0 0 !important;
  padding:15px 8px !important;
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:10px !important;
  border-top:1px solid #eee9f0 !important;
  border-bottom:1px solid #eee9f0 !important;
  background:#fff !important;
}

.pgf-benefits>div{
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  color:#5a525d !important;
  font-size:10px !important;
  font-weight:500 !important;
  line-height:1.3 !important;
  text-align:center !important;
}

.pgf-benefit-mark{
  width:21px !important;
  height:21px !important;
  flex:0 0 21px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:999px !important;
  background:#f6edf8 !important;
  color:var(--promosim-purple) !important;
  font-size:10px !important;
  font-weight:700 !important;
}

.pgf-footer{
  width:100% !important;
  margin:0 !important;
  padding:30px 28px 18px !important;
  border:0 !important;
  border-radius:0 0 16px 16px !important;
  background:#fcfbfc !important;
  color:#211c23 !important;
}

.pgf-grid{
  display:grid !important;
  grid-template-columns:minmax(260px,1.45fr) repeat(3,minmax(155px,1fr)) !important;
  gap:38px !important;
  align-items:start !important;
}

.pgf-brand{
  min-width:0 !important;
}

.pgf-logo{
  display:inline-flex !important;
  align-items:center !important;
  width:max-content !important;
  max-width:210px !important;
  margin:0 0 12px !important;
  text-decoration:none !important;
}

.pgf-logo img{
  display:block !important;
  width:185px !important;
  height:auto !important;
  max-height:62px !important;
  object-fit:contain !important;
  object-position:left center !important;
}

.pgf-logo-text{
  color:var(--promosim-purple) !important;
  font-size:25px !important;
  font-weight:800 !important;
  letter-spacing:-.04em !important;
}

.pgf-brand p{
  max-width:335px !important;
  margin:0 0 18px !important;
  color:#655d68 !important;
  font-size:11px !important;
  font-weight:400 !important;
  line-height:1.6 !important;
}

.pgf-social-title{
  display:block !important;
  margin:0 0 9px !important;
  color:#282229 !important;
  font-size:10px !important;
  font-weight:700 !important;
}

.pgf-socials{
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:8px !important;
}

.pgf-social{
  width:34px !important;
  height:34px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid #e7dfe9 !important;
  border-radius:999px !important;
  background:#fff !important;
  color:#6a5e6e !important;
  text-decoration:none !important;
  transition:transform .18s ease,border-color .18s ease,color .18s ease,background .18s ease !important;
}

.pgf-social svg{
  width:16px !important;
  height:16px !important;
  display:block !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.8 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}

.pgf-social:hover{
  transform:translateY(-2px) !important;
  border-color:#cfa5da !important;
  background:#faf4fc !important;
  color:var(--promosim-purple) !important;
}

.pgf-social-disabled{
  opacity:.42 !important;
  cursor:default !important;
}

.pgf-social-disabled:hover{
  transform:none !important;
  border-color:#e7dfe9 !important;
  background:#fff !important;
  color:#6a5e6e !important;
}

.pgf-col{
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
}

.pgf-col>strong{
  display:block !important;
  margin:0 0 12px !important;
  color:#282229 !important;
  font-size:11px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
  text-transform:none !important;
}

.pgf-col>a{
  display:block !important;
  width:max-content !important;
  max-width:100% !important;
  margin:0 !important;
  padding:5px 0 !important;
  color:#5d555f !important;
  font-size:10.5px !important;
  line-height:1.4 !important;
  font-weight:400 !important;
  text-decoration:none !important;
  transition:color .18s ease !important;
}

.pgf-col>a:hover{
  color:var(--promosim-purple) !important;
}

.pgf-legal{
  margin-top:28px !important;
  padding-top:17px !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:20px !important;
  border-top:1px solid #e9e4ea !important;
}

.pgf-company{
  color:#3d3540 !important;
  font-size:10px !important;
  font-weight:700 !important;
  white-space:nowrap !important;
}

.pgf-affiliate{
  max-width:760px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-end !important;
  gap:3px !important;
  color:#777079 !important;
  font-size:9.5px !important;
  font-weight:400 !important;
  line-height:1.45 !important;
  text-align:right !important;
}

@media(max-width:980px){
  .pgf-newsletter{
    grid-template-columns:1fr !important;
  }

  .pgf-newsletter-status{
    grid-column:1 !important;
    margin-top:-8px !important;
  }

  .pgf-grid{
    grid-template-columns:1.2fr repeat(2,1fr) !important;
    gap:30px !important;
  }

  .pgf-col:last-child{
    grid-column:2 / -1 !important;
  }
}

@media(max-width:700px){
  .promosim-global-footer-shell{
    width:calc(100% - 20px) !important;
    margin:26px auto 12px !important;
  }

  .pgf-newsletter{
    padding:17px 14px !important;
    border-radius:13px !important;
  }

  .pgf-newsletter-copy strong{
    font-size:15px !important;
  }

  .pgf-newsletter-form{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:7px !important;
  }

  .pgf-newsletter-form input,
  .pgf-newsletter-form button{
    width:100% !important;
    border:1px solid rgba(255,255,255,.35) !important;
    border-radius:9px !important;
  }

  .pgf-benefits{
    grid-template-columns:1fr 1fr !important;
    padding:13px 0 !important;
  }

  .pgf-benefits>div{
    justify-content:flex-start !important;
    padding:4px 6px !important;
    text-align:left !important;
  }

  .pgf-footer{
    padding:24px 17px 16px !important;
    border-radius:0 0 13px 13px !important;
  }

  .pgf-grid{
    grid-template-columns:1fr 1fr !important;
    gap:26px 22px !important;
  }

  .pgf-brand{
    grid-column:1 / -1 !important;
  }

  .pgf-col:last-child{
    grid-column:auto !important;
  }

  .pgf-legal{
    flex-direction:column !important;
    gap:8px !important;
  }

  .pgf-company{
    white-space:normal !important;
  }

  .pgf-affiliate{
    align-items:flex-start !important;
    text-align:left !important;
  }
}

@media(max-width:440px){
  .pgf-benefits,
  .pgf-grid{
    grid-template-columns:1fr !important;
  }

  .pgf-brand,
  .pgf-col:last-child{
    grid-column:auto !important;
  }

  .pgf-col>a{
    width:100% !important;
  }
}
