/* ==========================================================
   RESTAURANTE UNIVERSITÁRIO - UEM
   RU GLOBAL CSS

   Arquivo único de estilos para o Collective Cover.
   O index.html deve carregar Poppins e Font Awesome.
   Não inserir <style> nos tiles depois da migração.
   ========================================================== */

:root{
  --ru-global-azul:#004680;
  --ru-global-verde:#00a859;
  --ru-global-cinza:#64748b;
  --ru-global-texto:#263746;
  --ru-global-borda:#dfe7ee;
  --ru-global-branco:#ffffff;
  --ru-global-container:1180px;
}

/* ==========================================================
   01 BANNER
   Fonte: banner.txt
   ========================================================== */

:root{
    --azul-uem:#005baa;
    --verde-uem:#008f5a;
  }

  .banner-prh-uem{
    position:relative;

    width:100%;
    min-height:260px;

    overflow:hidden;

    background-image:
      linear-gradient(
        90deg,
        rgba(255,255,255,0.08) 0%,
        rgba(255,255,255,0.05) 35%,
        rgba(255,255,255,0.10) 55%,
        rgba(255,255,255,0.18) 100%
      ),
      url('/ru/imagens/ru_banner2.png');

    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;

    background-color:#f4f7fa;

    display:flex;
    align-items:center;
    justify-content:space-between;

    box-sizing:border-box;

    padding:28px 4vw 28px 3vw;

    font-family:'Poppins', Arial, sans-serif;
  }

  /* =====================================
     LINHA DECORATIVA INFERIOR
  ===================================== */

  .banner-prh-uem::before{
    content:"";

    position:absolute;
    bottom:0;
    left:0;

    width:100%;
    height:1px;

    background:
      linear-gradient(
        90deg,
        var(--azul-uem) 0%,
        var(--azul-uem) 45%,
        var(--verde-uem) 100%
      );

    z-index:3;

    pointer-events:none;
  }

  /* =====================================
     CONTEÚDO
  ===================================== */

  .banner-prh-conteudo{
    position:relative;
    z-index:2;

    width:66%;

    display:flex;
    align-items:center;

    gap:34px;
  }

  /* =====================================
     LOGO UEM
  ===================================== */

  .banner-uem-logo{
    display:flex;
    align-items:center;
    justify-content:center;

    flex-shrink:0;
  }

  .banner-uem-logo img{
    width:min(85px, 7vw);
    max-width:85px;

    height:auto;

    display:block;
  }

  /* =====================================
     TEXTO
  ===================================== */

  .banner-prh-texto{
    width:100%;
  }

  .banner-prh-texto .banner-prh-subtitulo{
    display:block;

    margin:0 0 6px;

    font-size:clamp(1.05rem, 1.5vw, 1.3rem);

    font-weight:600;

    letter-spacing:.4px;

    color:var(--azul-uem);

    text-shadow:
      0 2px 6px rgba(255,255,255,.65),
      0 1px 2px rgba(255,255,255,.55);
  }

  .banner-prh-texto h1{
    margin:0;

    white-space:nowrap;

    font-size:clamp(1.8rem, 3.4vw, 3.4rem);

    font-weight:800;

    line-height:1.04;

    letter-spacing:-1px;

    color:var(--azul-uem);

    text-shadow:
      0 2px 6px rgba(255,255,255,.65),
      0 1px 2px rgba(255,255,255,.55);
  }

  .banner-prh-texto h1 .verde{
    color:var(--verde-uem);
  }

  /* =====================================
     ÁREA LOGO DIREITA
  ===================================== */

  .banner-right-logo{
    position:relative;
    z-index:2;

    display:flex;

    align-items:center;
    justify-content:center;

    flex-shrink:0;

    padding:14px 22px;

    background:rgba(255,255,255,0.55);

    border-radius:18px;

    border:1px solid rgba(255,255,255,0.6);
  }

  .banner-right-logo img{
    width:min(150px, 11vw);
    max-width:150px;

    height:auto;

    display:block;
  }

  /* =====================================
     TABLET
  ===================================== */

  @media (max-width:1024px){

    .banner-prh-uem{
      min-height:260px;

      background-position:65% center;
    }

    .banner-prh-conteudo{
      width:70%;

      gap:26px;
    }

    .banner-uem-logo img{
      width:70px;
    }

    .banner-prh-texto .banner-prh-subtitulo{
      font-size:clamp(.9rem, 1.3vw, 1.1rem);
    }

    .banner-prh-texto h1{
      font-size:clamp(1.5rem, 3vw, 2.6rem);
    }

    .banner-right-logo img{
      width:110px;
    }

  }

  /* =====================================
     MOBILE
  ===================================== */

  @media (max-width:768px){

    .banner-prh-uem{
      min-height:auto;

      padding:34px 22px;

      background-position:70% center;

      flex-direction:column;

      gap:22px;
    }

    .banner-prh-conteudo{
      width:100%;

      flex-direction:column;

      align-items:center;

      text-align:center;

      gap:16px;
    }

    .banner-uem-logo img{
      width:60px;
    }

    .banner-prh-texto .banner-prh-subtitulo{
      font-size:1rem;
    }

    .banner-prh-texto h1{
      white-space:normal;

      font-size:2rem;

      line-height:1.15;
    }

    .banner-right-logo{
      padding:10px 18px;
    }

    .banner-right-logo img{
      width:100px;
    }

  }

  /* =====================================
     MOBILE PEQUENO
  ===================================== */

  @media (max-width:480px){

    .banner-uem-logo img{
      width:50px;
    }

    .banner-prh-texto .banner-prh-subtitulo{
      font-size:.85rem;
    }

    .banner-prh-texto h1{
      font-size:1.6rem;
    }

    .banner-right-logo img{
      width:85px;
    }

  }

/* ==========================================================
   02 MENU
   Fonte: menu.txt
   ========================================================== */

:root{
  --azul-uem:#004587;
  --verde-uem:#00a859;
}

/* =====================================
   ISOLAMENTO
===================================== */

.menu-wrapper-ru,
.menu-wrapper-ru *{
  box-sizing:border-box;
}

.plone-breadcrumb{
  display:none;
}

/* =====================================
   WRAPPER
===================================== */

.menu-wrapper-ru{
  width:100%;
  padding:2px 18px;

  position:relative;
  z-index:1000;

  border:1px solid rgba(0,168,89,.12);
  border-radius:0;

  background:rgba(217,241,240,.58);

  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);

  box-shadow:
    0 8px 24px rgba(0,168,89,.06);
}

/* =====================================
   GRID
===================================== */

.menu-grid-ru{
  width:100%;
  min-height:46px;

  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:20px;
}

/* =====================================
   MENU
===================================== */

.menu-pulldown-ru{
  flex:1 1 auto;
  min-width:0;

  font-family:"Poppins",Arial,sans-serif;
}

.menu-pulldown-ru ul{
  margin:0;
  padding:0;

  list-style:none;
}

/* MENU PRINCIPAL */

.menu-pulldown-ru > ul{
  display:flex;
  align-items:stretch;
  justify-content:flex-start;
  flex-wrap:wrap;
}

/* ITEM */

.menu-pulldown-ru li{
  position:relative;
}

/* =====================================
   LINKS PRINCIPAIS
===================================== */

.menu-pulldown-ru a,
.menu-pulldown-ru button{
  min-height:46px;
  padding:10px 20px;

  display:flex;
  align-items:center;

  gap:8px;

  appearance:none;
  -webkit-appearance:none;

  border:0;
  background:transparent;

  color:var(--azul-uem);

  font-family:"Poppins",Arial,sans-serif;
  font-size:14px;
  font-weight:600;
  line-height:1.4;

  text-align:left;
  text-decoration:none !important;

  cursor:pointer;

  transition:
    color .25s ease,
    background-color .25s ease;
}

/* =====================================
   INÍCIO

   Ícone mais próximo do texto
===================================== */

.menu-pulldown-ru > ul > li:first-child > a{
  gap:3px;
}

.menu-pulldown-ru a:hover,
.menu-pulldown-ru button:hover{
  color:var(--verde-uem);

  text-decoration:none !important;
}

/* =====================================
   ÍCONES PRINCIPAIS
===================================== */

.menu-pulldown-ru > ul > li > a > i:first-child,
.menu-pulldown-ru > ul > li > button > i:first-child{
  color:var(--verde-uem);

  font-size:13px;
}

/* =====================================
   SETA
===================================== */

.menu-seta-ru{
  margin-left:3px;

  color:var(--azul-uem);

  font-size:9px;

  transition:
    transform .25s ease;
}

.menu-pulldown-ru > ul > li:hover
.menu-seta-ru,

.menu-pulldown-ru > ul > li:focus-within
.menu-seta-ru,

.menu-pulldown-ru > ul > li.submenu-aberto
.menu-seta-ru{
  transform:rotate(180deg);
}

/* =====================================
   SUBMENU
===================================== */

.menu-pulldown-ru li ul{
  min-width:280px;

  padding:6px 0;

  display:none;

  position:absolute;
  top:100%;
  left:0;

  z-index:9999;

  overflow:hidden;

  border:
    1px solid
    rgba(0,69,135,.08);

  border-radius:12px;

  background:#fff;

  box-shadow:
    0 12px 24px
    rgba(0,69,135,.10);
}

/* MOSTRA SUBMENU */

.menu-pulldown-ru li:hover > ul,
.menu-pulldown-ru li:focus-within > ul,
.menu-pulldown-ru li.submenu-aberto > ul{
  display:block;
}

/* =====================================
   LINKS DO SUBMENU
===================================== */

.menu-pulldown-ru li ul li a{
  min-height:auto;

  padding:11px 15px;

  display:flex;
  align-items:center;

  gap:10px;

  border-bottom:
    1px solid
    rgba(0,69,135,.08);

  color:var(--azul-uem);

  font-size:12px;
  font-weight:500;

  text-align:left;
}

.menu-pulldown-ru li ul li:last-child a{
  border-bottom:0;
}

.menu-pulldown-ru li ul li a:hover{
  background:
    rgba(0,168,89,.08);

  color:
    var(--verde-uem);
}

.menu-pulldown-ru li ul li a i{
  width:18px;

  color:
    var(--verde-uem);

  font-size:12px;

  text-align:center;
}

/* =====================================
   ÁREA DIREITA
===================================== */

.menu-right-ru{
  flex:0 0 auto;

  display:flex;
  align-items:center;

  gap:10px;
}

/* =====================================
   BOTÕES REDONDOS
===================================== */

.icon-pill-ru{
  width:38px;
  height:38px;

  display:inline-flex !important;

  align-items:center;
  justify-content:center;

  border:
    1px solid
    rgba(0,69,135,.10);

  border-radius:50%;

  background:
    rgba(255,255,255,.55);

  text-decoration:none !important;

  transition:
    border-color .25s ease,
    background-color .25s ease,
    transform .25s ease;
}

.icon-pill-ru i{
  color:
    var(--azul-uem);

  font-size:18px;

  transition:
    color .25s ease,
    transform .25s ease;
}

.icon-pill-ru:hover{
  text-decoration:none !important;
}

.icon-pill-ru:focus-visible{
  outline:
    3px solid
    rgba(0,168,89,.25);

  outline-offset:3px;
}

/* =====================================
   INSTAGRAM
===================================== */

.icon-pill-ru.instagram:hover{
  border-color:
    rgba(225,48,108,.18);

  background:
    rgba(225,48,108,.08);
}

.icon-pill-ru.instagram:hover i{
  background:
    linear-gradient(
      45deg,
      #f09433 0%,
      #e6683c 25%,
      #dc2743 50%,
      #cc2366 75%,
      #bc1888 100%
    );

  -webkit-background-clip:text;
  background-clip:text;

  -webkit-text-fill-color:transparent;

  color:transparent;

  transform:scale(1.1);
}

/* =====================================
   BUSCA
===================================== */

.icon-pill-ru.busca:hover{
  border-color:
    rgba(0,168,89,.22);

  background:
    rgba(0,168,89,.10);
}

.icon-pill-ru.busca:hover i{
  color:
    var(--verde-uem);

  transform:
    scale(1.08);
}

/* =====================================
   BOTÃO MOBILE
===================================== */

.menu-mobile-toggle-ru{
  display:none;

  width:38px;
  height:38px;

  padding:0;

  align-items:center;
  justify-content:center;

  appearance:none;
  -webkit-appearance:none;

  border:
    1px solid
    rgba(0,69,135,.10);

  border-radius:50%;

  background:
    rgba(255,255,255,.55);

  color:
    var(--azul-uem);

  font-size:18px;

  cursor:pointer;
}

.menu-mobile-toggle-ru:focus-visible{
  outline:
    3px solid
    rgba(0,168,89,.25);

  outline-offset:3px;
}

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

@media(max-width:768px){

  .menu-wrapper-ru{
    padding:5px 8px;
  }

  .menu-grid-ru{
    min-height:46px;

    flex-wrap:wrap;

    gap:4px;
  }

  .menu-mobile-toggle-ru{
    display:inline-flex;
  }

  .menu-pulldown-ru{
    order:3;

    width:100%;

    flex-basis:100%;

    display:none;
  }

  .menu-pulldown-ru.menu-aberto{
    display:block;
  }

  .menu-pulldown-ru > ul{
    width:100%;

    flex-direction:column;
    align-items:stretch;
  }

  .menu-pulldown-ru > ul > li{
    width:100%;
  }

  .menu-pulldown-ru > ul > li > a,
  .menu-pulldown-ru > ul > li > button{
    width:100%;

    min-height:44px;

    padding:10px 14px;

    justify-content:flex-start;

    border-bottom:
      1px solid
      rgba(0,69,135,.08);
  }

  /* mantém Início compacto no mobile */

  .menu-pulldown-ru > ul > li:first-child > a{
    gap:3px;
  }

  .menu-seta-ru{
    margin-left:auto;
  }

  .menu-pulldown-ru li ul{
    width:100%;
    min-width:0;

    padding:0;

    display:none;

    position:static;

    border:0;
    border-radius:0;

    background:
      rgba(255,255,255,.46);

    box-shadow:none;
  }

  /*
   * No celular, o submenu abre somente
   * quando o item recebe a classe.
   */

  .menu-pulldown-ru li:hover > ul{
    display:none;
  }

  .menu-pulldown-ru li.submenu-aberto > ul{
    display:block;
  }

  .menu-pulldown-ru li ul li a{
    padding:
      10px
      20px
      10px
      28px;
  }

  .menu-right-ru{
    margin-left:auto;
  }

}

@media(max-width:430px){

  .menu-pulldown-ru a,
  .menu-pulldown-ru button{
    font-size:13px;
  }

  .icon-pill-ru,
  .menu-mobile-toggle-ru{
    width:36px;
    height:36px;
  }

  .icon-pill-ru i,
  .menu-mobile-toggle-ru{
    font-size:17px;
  }

}

/* ==========================================================
   03 CARDAPIO TITULO
   Fonte: cardapio titulo.txt
   ========================================================== */

:root{
  --ru-azul:#004680;
  --ru-verde:#00a859;
  --ru-cinza:#64748b;
  --ru-branco:#ffffff;
}

/* ISOLAMENTO */

.valores-ru-topo,
.valores-ru-topo *{
  box-sizing:border-box;
}

.valores-ru-topo{
  width:100%;
  padding:28px 18px 0;

  background:
    linear-gradient(
      135deg,
      #f8fbfd 0%,
      #ffffff 48%,
      #f3faf6 100%
    );

  font-family:"Poppins",Arial,sans-serif;
}

.valores-ru-topo-container{
  width:100%;
  max-width:1100px;
  margin:0 auto;
}

/* CABEÇALHO */

.valores-ru-cabecalho{
  padding:25px 30px;

  position:relative;
  overflow:hidden;

  border:1px solid rgba(0,70,128,.10);
  border-radius:19px;
  background:var(--ru-branco);

  box-shadow:0 8px 25px rgba(15,23,42,.055);
}

.valores-ru-cabecalho::before{
  content:"";

  position:absolute;
  top:0;
  bottom:0;
  left:0;

  width:5px;

  background:
    linear-gradient(
      180deg,
      var(--ru-azul),
      var(--ru-verde)
    );
}

.valores-ru-cabecalho::after{
  content:"";

  position:absolute;
  top:-150px;
  right:-125px;

  width:280px;
  height:280px;

  border:48px solid rgba(0,168,89,.04);
  border-radius:50%;

  pointer-events:none;
}

.valores-ru-cabecalho h1{
  position:relative;
  z-index:2;

  margin:0;

  color:var(--ru-azul);

  font-size:clamp(27px,3.5vw,39px);
  font-weight:800;
  letter-spacing:-1px;
  line-height:1.1;
}

.valores-ru-cabecalho p{
  position:relative;
  z-index:2;

  max-width:720px;
  margin:8px 0 0;

  color:var(--ru-cinza);

  font-size:12px;
  line-height:1.6;
}

@media(max-width:700px){

  .valores-ru-topo{
    padding:22px 13px 0;
  }

  .valores-ru-cabecalho{
    padding:22px 20px;
  }

}

@media(max-width:450px){

  .valores-ru-cabecalho h1{
    font-size:26px;
  }

}

/* ==========================================================
   04 CARDAPIO
   Fonte: cardapio.txt
   ========================================================== */

:root{
  --azul-uem:#004680;
  --azul-uem-hover:#00558f;

  --verde-uem:#00a859;
  --verde-escuro:#087443;

  --tradicional-fundo:#f6f9fc;
  --tradicional-borda:#dfeaf2;

  --vegetariano-fundo:#f5faf7;
  --vegetariano-borda:#dcece3;

  --branco:#ffffff;
  --cinza-fundo:#f7f9fa;
  --borda:#e3e9ed;

  --laranja:#e97816;
  --vermelho:#c62828;

  --texto:#303840;
  --texto-suave:#65717c;
}


/* =========================================
   ISOLAMENTO
========================================= */

.ru-cardapio,
.ru-cardapio *{
  box-sizing:border-box;
}


/* =========================================
   CONTAINER PRINCIPAL
========================================= */

.ru-cardapio{
  width:100%;
  max-width:1180px;

  margin:14px auto 35px;
  padding:28px 30px 30px;

  font-family:"Poppins",Arial,sans-serif;
  color:var(--texto);

  background:#ffffff;

  border:1px solid #e5eaee;
  border-radius:18px;

  box-shadow:0 8px 25px rgba(15,23,42,.045);
}


/* =========================================
   AVISO
========================================= */

.ru-aviso{
  margin-bottom:22px;
  padding:15px 18px;

  display:flex;
  align-items:center;
  gap:13px;

  background:#fffaf2;

  border:1px solid #f1e2ca;
  border-left:4px solid var(--laranja);
  border-radius:11px;
}


.ru-aviso-icone{
  width:34px;
  height:34px;

  flex:0 0 34px;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:50%;

  background:#fff0d8;
  color:var(--laranja);

  font-size:14px;
}


.ru-aviso-texto{
  flex:1;

  margin:0;

  color:#5a5043;

  font-size:12px;
  line-height:1.6;
}


.ru-aviso-texto strong{
  color:#a84918;
}


.ru-aviso-texto .destaque{
  color:var(--vermelho);
  font-weight:700;
}


/* =========================================
   MESMA GRADE PARA CABEÇALHO E DIAS
========================================= */

.ru-grade{
  display:grid;

  grid-template-columns:
    140px
    minmax(0,1fr)
    minmax(0,1fr);
}


/* =========================================
   CABEÇALHO DAS COLUNAS
========================================= */

.ru-colunas-header{
  margin-bottom:10px;

  overflow:hidden;

  background:#fff;

  border:1px solid var(--borda);
  border-radius:11px;
}


.ru-coluna{
  min-height:52px;

  padding:10px 15px;

  display:flex;
  align-items:center;
  justify-content:center;

  text-align:center;

  font-size:12px;
  font-weight:600;

  letter-spacing:.6px;
  text-transform:uppercase;
}


/* DATA */

.ru-coluna.data{
  background:var(--azul-uem);
  color:#fff;
}


/* TRADICIONAL */

.ru-coluna.tradicional{
  gap:8px;

  color:var(--azul-uem);

  background:#f1f6fa;

  border-left:1px solid var(--tradicional-borda);
}


/* VEGETARIANO */

.ru-coluna.vegetariano{
  gap:8px;

  color:var(--verde-escuro);

  background:#f0f8f3;

  border-left:1px solid var(--vegetariano-borda);
}


/* ÍCONES DO CABEÇALHO */

.ru-coluna span{
  width:28px;
  height:28px;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:50%;

  background:#fff;

  font-size:11px;
}


.ru-coluna.tradicional span{
  color:var(--azul-uem);
}


.ru-coluna.vegetariano span{
  color:var(--verde-uem);
}


/* =========================================
   LISTA DOS DIAS
========================================= */

.ru-dias{
  display:flex;
  flex-direction:column;

  gap:9px;
}


/* =========================================
   LINHA DE CADA DIA
========================================= */

.ru-dia{
  overflow:hidden;

  background:#fff;

  border:1px solid var(--borda);
  border-radius:11px;

  transition:
    border-color .25s ease,
    box-shadow .25s ease;
}


.ru-dia:hover{
  border-color:#cad5dd;

  box-shadow:0 4px 13px rgba(15,23,42,.045);
}


/* =========================================
   DATA - DESTAQUE AZUL
========================================= */

.ru-data{
  min-height:94px;

  padding:16px;

  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;

  background:var(--azul-uem);

  color:#fff;

  border-right:1px solid rgba(255,255,255,.15);
}


.ru-data i{
  color:rgba(255,255,255,.75);

  font-size:14px;
}


.ru-data strong{
  color:#fff;

  font-size:18px;
  font-weight:600;
}


/* =========================================
   OPÇÕES
========================================= */

.ru-opcao{
  min-height:94px;

  padding:18px 24px;

  display:flex;
  align-items:center;
  justify-content:flex-start;
}


/* =========================================
   TRADICIONAL
========================================= */

.ru-opcao.tradicional{
  background:var(--tradicional-fundo);

  border-left:1px solid var(--tradicional-borda);
}


/* =========================================
   VEGETARIANO
========================================= */

.ru-opcao.vegetariano{
  background:var(--vegetariano-fundo);

  border-left:1px solid var(--vegetariano-borda);
}


/* =========================================
   PRATOS
========================================= */

.ru-prato{
  width:100%;

  margin:0;
  padding:0;

  list-style:none;
}


.ru-prato li{
  position:relative;

  margin:4px 0;
  padding-left:16px;

  color:#343c42;

  font-size:14px;
  font-weight:400;
  line-height:1.5;
}


.ru-prato li::before{
  content:"";

  width:5px;
  height:5px;

  position:absolute;

  top:8px;
  left:0;

  border-radius:50%;
}


.ru-opcao.tradicional .ru-prato li::before{
  background:var(--azul-uem);
}


.ru-opcao.vegetariano .ru-prato li::before{
  background:var(--verde-uem);
}


/* =========================================
   RODAPÉ
========================================= */

.ru-cardapio-rodape{
  margin-top:20px;
  padding-top:15px;

  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;

  border-top:1px solid #edf0f2;

  color:#69757d;

  font-size:12px;
}


.ru-cardapio-rodape i{
  color:var(--verde-uem);
}


/* =========================================
   RESPONSIVO - TABLET
========================================= */

@media(max-width:800px){

  .ru-grade{
    grid-template-columns:
      115px
      minmax(0,1fr)
      minmax(0,1fr);
  }


  .ru-opcao{
    padding:16px 17px;
  }


  .ru-prato li{
    font-size:13px;
  }

}


/* =========================================
   RESPONSIVO - CELULAR
========================================= */

@media(max-width:580px){

  .ru-cardapio{
    margin:14px auto 25px;
    padding:20px 15px;

    border-radius:14px;
  }


  .ru-aviso{
    align-items:flex-start;

    padding:14px;
  }


  .ru-colunas-header{
    display:none;
  }


  .ru-grade{
    display:block;
  }


  .ru-dia{
    display:block;
  }


  .ru-data{
    min-height:auto;

    padding:12px 15px;

    justify-content:flex-start;

    border-right:none;
  }


  .ru-data strong{
    font-size:16px;
  }


  .ru-opcao{
    min-height:auto;

    position:relative;

    padding:38px 17px 15px;
  }


  .ru-opcao.tradicional{
    border-left:none;
  }


  .ru-opcao.vegetariano{
    border-left:none;

    border-top:1px solid var(--vegetariano-borda);
  }


  .ru-opcao.tradicional::before{
    content:"Tradicional";

    position:absolute;

    top:11px;
    left:17px;

    color:var(--azul-uem);

    font-size:10px;
    font-weight:600;

    letter-spacing:.7px;
    text-transform:uppercase;
  }


  .ru-opcao.vegetariano::before{
    content:"Vegetariano";

    position:absolute;

    top:11px;
    left:17px;

    color:var(--verde-escuro);

    font-size:10px;
    font-weight:600;

    letter-spacing:.7px;
    text-transform:uppercase;
  }

}

/* ==========================================================
   05 VALORES TITULO
   Fonte: valores titulo.txt
   ========================================================== */

:root{
  --ru-azul:#004680;
  --ru-verde:#00a859;
  --ru-cinza:#64748b;
  --ru-branco:#ffffff;
}

/* ISOLAMENTO */

.valores-ru-topo,
.valores-ru-topo *{
  box-sizing:border-box;
}

.valores-ru-topo{
  width:100%;
  padding:28px 18px 0;

  background:
    linear-gradient(
      135deg,
      #f8fbfd 0%,
      #ffffff 48%,
      #f3faf6 100%
    );

  font-family:"Poppins",Arial,sans-serif;
}

.valores-ru-topo-container{
  width:100%;
  max-width:1100px;
  margin:0 auto;
}

/* CABEÇALHO */

.valores-ru-cabecalho{
  padding:25px 30px;

  position:relative;
  overflow:hidden;

  border:1px solid rgba(0,70,128,.10);
  border-radius:19px;
  background:var(--ru-branco);

  box-shadow:0 8px 25px rgba(15,23,42,.055);
}

.valores-ru-cabecalho::before{
  content:"";

  position:absolute;
  top:0;
  bottom:0;
  left:0;

  width:5px;

  background:
    linear-gradient(
      180deg,
      var(--ru-azul),
      var(--ru-verde)
    );
}

.valores-ru-cabecalho::after{
  content:"";

  position:absolute;
  top:-150px;
  right:-125px;

  width:280px;
  height:280px;

  border:48px solid rgba(0,168,89,.04);
  border-radius:50%;

  pointer-events:none;
}

.valores-ru-cabecalho h1{
  position:relative;
  z-index:2;

  margin:0;

  color:var(--ru-azul);

  font-size:clamp(27px,3.5vw,39px);
  font-weight:800;
  letter-spacing:-1px;
  line-height:1.1;
}

.valores-ru-cabecalho p{
  position:relative;
  z-index:2;

  max-width:720px;
  margin:8px 0 0;

  color:var(--ru-cinza);

  font-size:12px;
  line-height:1.6;
}

@media(max-width:700px){

  .valores-ru-topo{
    padding:22px 13px 0;
  }

  .valores-ru-cabecalho{
    padding:22px 20px;
  }

}

@media(max-width:450px){

  .valores-ru-cabecalho h1{
    font-size:26px;
  }

}

/* ==========================================================
   06 VALORES
   Fonte: valores.txt
   ========================================================== */

:root{
  --ru-azul:#004680;
  --ru-verde:#00a859;
  --ru-laranja:#f28c00;
  --ru-vermelho:#c74747;

  --ru-azul-claro:#eef5fb;
  --ru-verde-claro:#edf8f3;
  --ru-laranja-claro:#fff6e8;
  --ru-vermelho-claro:#fff1f1;

  --ru-texto:#263746;
  --ru-cinza:#64748b;
  --ru-borda:#dfe7ee;
  --ru-branco:#ffffff;
}

/* ISOLAMENTO */

.valores-ru-conteudo,
.valores-ru-conteudo *{
  box-sizing:border-box;
}

.valores-ru-conteudo{
  width:100%;
  padding:19px 18px 40px;

  background:
    linear-gradient(
      135deg,
      #f8fbfd 0%,
      #ffffff 48%,
      #f3faf6 100%
    );

  color:var(--ru-texto);
  font-family:"Poppins",Arial,sans-serif;
}

.valores-ru-conteudo-container{
  width:100%;
  max-width:1100px;
  margin:0 auto;
}

/* LAYOUT */

.valores-ru-grid{
  display:grid;
  grid-template-columns:
    minmax(0,1.45fr)
    minmax(290px,.75fr);

  gap:17px;
  align-items:stretch;
}

/* CARD BASE */

.valores-ru-card{
  overflow:hidden;

  display:flex;
  flex-direction:column;

  border:1px solid var(--ru-borda);
  border-radius:17px;
  background:var(--ru-branco);

  box-shadow:0 6px 20px rgba(15,23,42,.045);
}

.valores-ru-card-cabecalho{
  padding:16px 18px 13px;

  display:flex;
  align-items:center;
  gap:11px;

  border-bottom:1px solid #edf1f4;
}

.valores-ru-card-icone{
  flex:0 0 43px;

  width:43px;
  height:43px;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:12px;

  font-size:18px;
}

.valores-ru-card-cabecalho h2{
  margin:0;

  color:var(--ru-azul);

  font-size:16px;
  font-weight:700;
  line-height:1.3;
}

.valores-ru-card-cabecalho p{
  margin:2px 0 0;

  color:var(--ru-cinza);

  font-size:9px;
  line-height:1.5;
}

/* ALMOÇO E JANTAR */

.valores-ru-refeicoes{
  height:100%;
}

.valores-ru-refeicoes .valores-ru-card-icone{
  background:var(--ru-azul-claro);
  color:var(--ru-azul);
}

.valores-ru-lista{
  padding:15px;

  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.valor-item{
  min-height:106px;
  padding:15px;

  display:flex;
  flex-direction:column;
  justify-content:space-between;

  border:1px solid var(--ru-borda);
  border-radius:13px;
  background:#fff;

  transition:
    border-color .25s ease,
    box-shadow .25s ease,
    background-color .25s ease;
}

.valor-item:hover{
  border-color:var(--ru-verde);
  background:#fbfefc;

  box-shadow:0 7px 18px rgba(0,143,90,.07);
}

.valor-item-categoria{
  color:var(--ru-texto);

  font-size:11px;
  font-weight:700;
  line-height:1.4;
}

.valor-item-categoria small{
  display:block;
  margin-top:3px;

  color:var(--ru-cinza);

  font-size:9px;
  font-weight:500;
  line-height:1.4;
}

.valor-item-preco{
  margin-top:12px;

  color:var(--ru-verde);

  font-size:25px;
  font-weight:800;
  letter-spacing:-.6px;
  line-height:1;
}

/* FORMAS DE PAGAMENTO */

.formas-inline{
  margin:0 15px 15px;
  margin-top:auto;
  padding-top:14px;

  border-top:1px solid #edf1f4;
}

.formas-titulo{
  margin-bottom:11px;

  display:flex;
  align-items:center;
  gap:8px;

  color:var(--ru-azul);

  font-size:12px;
  font-weight:700;
}

.formas-titulo i{
  color:var(--ru-verde);
}

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

.forma-item{
  min-height:58px;
  padding:8px 6px;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;

  border:1px solid var(--ru-borda);
  border-radius:10px;
  background:#fff;

  color:var(--ru-azul);
  text-align:center;

  transition:
    border-color .25s ease,
    background-color .25s ease,
    color .25s ease;
}

.forma-item:hover{
  border-color:var(--ru-verde);
  background:#f7fcf9;
  color:var(--ru-verde);
}

.forma-item i{
  font-size:16px;
}

.forma-item span{
  font-size:8.5px;
  font-weight:700;
  line-height:1.3;
}

.formas-info{
  margin-top:10px;
  padding:8px 10px;

  display:flex;
  align-items:flex-start;
  gap:7px;

  border:1px solid rgba(0,70,128,.09);
  border-radius:9px;
  background:#f6f9fc;

  color:var(--ru-cinza);

  font-size:8.5px;
  line-height:1.5;
}

.formas-info i{
  margin-top:2px;
  color:var(--ru-azul);
}

/* COLUNA DIREITA */

.valores-ru-lateral{
  height:100%;

  display:grid;
  grid-template-rows:auto 1fr;
  gap:17px;
}

/* CAFÉ DA MANHÃ */

.valores-ru-cafe .valores-ru-card-icone{
  background:var(--ru-laranja-claro);
  color:var(--ru-laranja);
}

.valores-ru-cafe-conteudo{
  padding:16px 18px 18px;
  text-align:center;
}

.valores-ru-cafe-exclusivo{
  margin:0 0 8px;

  color:var(--ru-cinza);

  font-size:9px;
  font-weight:600;
  letter-spacing:.3px;
  text-transform:uppercase;
}

.valores-ru-cafe-preco{
  display:inline-flex;
  align-items:baseline;
  gap:5px;

  color:var(--ru-laranja);
}

.valores-ru-cafe-preco span{
  font-size:14px;
  font-weight:700;
}

.valores-ru-cafe-preco strong{
  font-size:35px;
  font-weight:800;
  letter-spacing:-1px;
  line-height:1;
}

/* IDENTIFICAÇÃO */

.valores-ru-identificacao{
  height:100%;

  border-color:#f0d6d6;

  background:
    linear-gradient(
      145deg,
      #fff 0%,
      #fff8f8 100%
    );
}

.valores-ru-identificacao .valores-ru-card-icone{
  background:var(--ru-vermelho-claro);
  color:var(--ru-vermelho);
}

.valores-ru-identificacao-conteudo{
  flex:1 1 auto;

  padding:15px 18px 18px;

  display:flex;
  flex-direction:column;
}

.identificacao-lista{
  margin:0 0 10px;
  padding:0;

  list-style:none;
}

.identificacao-lista li{
  padding:6px 0;

  display:flex;
  align-items:center;
  gap:9px;

  border-bottom:1px solid rgba(199,71,71,.10);

  color:var(--ru-texto);

  font-size:11px;
  line-height:1.5;
}

.identificacao-lista li:last-child{
  border-bottom:0;
}

.identificacao-lista i{
  width:17px;

  color:var(--ru-vermelho);
  text-align:center;
}

.identificacao-aviso{
  margin:0;
  margin-top:auto;
  padding:10px 11px;

  border-left:4px solid #d95d5d;
  border-radius:0 9px 9px 0;

  background:var(--ru-vermelho-claro);
  color:#6b3a3a;

  font-size:9.5px;
  line-height:1.5;
}

/* RESPONSIVO */

@media(max-width:900px){

  .valores-ru-grid{
    grid-template-columns:1fr;
  }

  .valores-ru-lateral{
    height:auto;

    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:1fr;
  }

}

@media(max-width:700px){

  .valores-ru-conteudo{
    padding:14px 13px 32px;
  }

  .valores-ru-lateral{
    grid-template-columns:1fr;
    grid-template-rows:auto;
    gap:14px;
  }

  .valores-ru-lista{
    grid-template-columns:1fr;
  }

  .formas-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

}

@media(max-width:450px){

  .valores-ru-card-cabecalho{
    padding:15px 15px 12px;
  }

  .valores-ru-lista,
  .valores-ru-cafe-conteudo,
  .valores-ru-identificacao-conteudo{
    padding-left:14px;
    padding-right:14px;
  }

  .formas-inline{
    margin-left:14px;
    margin-right:14px;
  }

}

/* ==========================================================
   07 FUNCIONAMENTO
   Fonte: funcionamento.txt
   ========================================================== */

:root{
  --azul-uem:#005baa;
  --verde-uem:#008f5a;
  --azul-claro:#f4f8fc;
  --verde-claro:#f3fcf8;
  --texto:#444;
  --borda:#dfeaf5;
}

/* =====================================
   ISOLAMENTO
===================================== */

.card-unico-ru,
.card-unico-ru *{
  box-sizing:border-box;
}

/* =====================================
   BLOCO PRINCIPAL
===================================== */

.card-unico-ru{
  width:100%;
  margin:40px auto;
  padding:30px 28px;

  border:1px solid var(--borda);
  border-radius:18px;
  background:#fff;

  box-shadow:0 6px 20px rgba(0,0,0,.05);

  font-family:"Poppins",Arial,sans-serif;
}

/* =====================================
   TÍTULO PRINCIPAL
===================================== */

.titulo-funcionamento{
  margin:0 0 28px;

  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;

  color:var(--azul-uem);

  font-size:22px;
  font-weight:700;
  line-height:1.3;
  text-align:center;
}

.titulo-funcionamento i{
  color:var(--verde-uem);
  font-size:21px;
}

/* =====================================
   GRID
===================================== */

.bloco-unificado{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
}

/* =====================================
   ITEM
===================================== */

.info-centro{
  min-width:0;
  min-height:245px;
  padding:24px 18px;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;

  border:1px solid var(--borda);
  border-radius:16px;
  background:#fff;

  text-align:center;

  box-shadow:0 5px 16px rgba(0,0,0,.035);

  transition:
    border-color .25s ease,
    box-shadow .25s ease,
    background-color .25s ease;
}

.info-centro:hover{
  border-color:var(--verde-uem);
  background:#fbfefc;

  box-shadow:0 9px 22px rgba(0,143,90,.08);
}

/* =====================================
   TÍTULO DE CADA ITEM
===================================== */

.section-title{
  min-height:42px;
  margin:0 0 16px;

  display:flex;
  align-items:center;
  justify-content:center;

  color:#4d6d92;

  font-size:13px;
  font-weight:700;
  letter-spacing:1.4px;
  line-height:1.4;
  text-transform:uppercase;
}

/* =====================================
   ÍCONE PRINCIPAL
===================================== */

.icone-principal{
  width:64px;
  height:64px;
  margin-bottom:16px;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:16px;
  background:var(--azul-claro);

  color:var(--azul-uem);
  font-size:28px;

  transition:
    color .25s ease,
    background-color .25s ease;
}

.info-centro:hover .icone-principal{
  background:var(--verde-uem);
  color:#fff;
}

/* =====================================
   TEXTOS
===================================== */

.info-centro p{
  margin:0;

  color:var(--texto);

  font-size:14px;
  line-height:1.65;
}

.info-centro strong{
  color:var(--azul-uem);
  font-weight:700;
}

/* =====================================
   LINHAS DE HORÁRIO
===================================== */

.horario-grupo{
  width:100%;
}

.horario-item{
  padding:10px 0;
}

.horario-item + .horario-item{
  border-top:1px solid #edf1f4;
}

.horario-rotulo{
  display:block;
  margin-bottom:4px;

  color:var(--verde-uem);

  font-size:12px;
  font-weight:700;
  letter-spacing:.4px;
  text-transform:uppercase;
}

.horario-valor{
  display:block;

  color:var(--azul-uem);

  font-size:14px;
  font-weight:700;
  line-height:1.55;
}

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

@media(max-width:1100px){

  .bloco-unificado{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

}

@media(max-width:700px){

  .card-unico-ru{
    padding:25px 20px;
  }

  .bloco-unificado{
    gap:18px;
  }

}

@media(max-width:520px){

  .card-unico-ru{
    margin:30px auto;
    padding:22px 15px;
  }

  .titulo-funcionamento{
    font-size:19px;
  }

  .bloco-unificado{
    grid-template-columns:1fr;
  }

  .info-centro{
    min-height:auto;
    padding:22px 16px;
  }

}

/* ==========================================================
   08 CONTATOS
   Fonte: contatos.txt
   ========================================================== */

:root{
  --contato-azul:#005baa;
  --contato-verde:#008f5a;

  --contato-azul-claro:#eef5fb;
  --contato-verde-claro:#edf8f3;

  --contato-texto:#334155;
  --contato-cinza:#64748b;
  --contato-borda:#dfe7ee;
  --contato-branco:#ffffff;
  --contato-fundo-suave:#f7fafc;
}

/* =====================================
   ISOLAMENTO
===================================== */

.contatos-pulldown,
.contatos-pulldown *{
  box-sizing:border-box;
}

.contatos-pulldown{
  width:100%;
  padding:28px 18px 44px;

  background:
    linear-gradient(
      135deg,
      #f8fbfd 0%,
      #ffffff 48%,
      #f3faf6 100%
    );

  color:var(--contato-texto);
  font-family:"Poppins",Arial,sans-serif;
}

.contatos-pulldown-container{
  width:100%;
  max-width:1100px;
  margin:0 auto;
}

/* =====================================
   BOTÃO PRINCIPAL
===================================== */

.contatos-pulldown-botao{
  width:100%;
  min-height:140px;
  padding:25px 70px 25px 30px;

  display:block;

  position:relative;
  overflow:hidden;

  appearance:none;
  -webkit-appearance:none;

  border:1px solid rgba(0,70,128,.10);
  border-radius:19px;

  background:var(--contato-branco);
  color:inherit;

  font-family:"Poppins",Arial,sans-serif;
  text-align:left;

  cursor:pointer;

  box-shadow:
    0 8px 25px rgba(15,23,42,.055);

  transition:
    border-color .25s ease,
    box-shadow .25s ease,
    background-color .25s ease;
}

.contatos-pulldown-botao::before{
  content:"";

  position:absolute;
  top:0;
  bottom:0;
  left:0;

  width:5px;

  background:
    linear-gradient(
      180deg,
      var(--contato-azul),
      var(--contato-verde)
    );
}

.contatos-pulldown-botao::after{
  content:"";

  position:absolute;
  top:-150px;
  right:-125px;

  width:280px;
  height:280px;

  border:48px solid rgba(0,143,90,.04);
  border-radius:50%;

  pointer-events:none;
}

.contatos-pulldown-botao:hover{
  border-color:rgba(0,143,90,.30);

  box-shadow:
    0 10px 28px rgba(0,143,90,.08);
}

.contatos-pulldown-botao:focus-visible{
  outline:3px solid rgba(0,143,90,.25);
  outline-offset:3px;
}

/* =====================================
   TÍTULO E SUBTÍTULO
===================================== */

.contatos-pulldown-titulo{
  position:relative;
  z-index:2;

  display:block;

  color:var(--contato-azul);

  font-size:clamp(27px,3.5vw,39px);
  font-weight:800;
  letter-spacing:-1px;
  line-height:1.1;
}

.contatos-pulldown-subtitulo{
  position:relative;
  z-index:2;

  max-width:720px;
  margin-top:8px;

  display:block;

  color:var(--contato-cinza);

  font-size:12px;
  font-weight:400;
  line-height:1.6;
}

/* =====================================
   SETA
===================================== */

.contatos-pulldown-seta{
  width:40px;
  height:40px;

  display:flex;
  align-items:center;
  justify-content:center;

  position:absolute;
  top:50%;
  right:22px;
  z-index:3;

  border:1px solid rgba(0,70,128,.10);
  border-radius:50%;

  background:#f5f9fc;
  color:var(--contato-verde);

  font-size:15px;

  transform:translateY(-50%);

  transition:
    transform .28s ease,
    background-color .25s ease,
    color .25s ease;
}

.contatos-pulldown.aberto
.contatos-pulldown-seta{
  background:var(--contato-verde);
  color:#fff;

  transform:
    translateY(-50%)
    rotate(180deg);
}

/* =====================================
   PAINEL RECOLHÍVEL
===================================== */

.contatos-pulldown-painel{
  max-height:0;
  margin-top:0;

  overflow:hidden;

  opacity:0;
  visibility:hidden;

  transition:
    max-height .55s ease,
    margin-top .35s ease,
    opacity .3s ease,
    visibility .3s ease;
}

.contatos-pulldown.aberto
.contatos-pulldown-painel{
  max-height:2400px;
  margin-top:18px;

  opacity:1;
  visibility:visible;
}

/* =====================================
   CONTEÚDO DO PAINEL
===================================== */

.contatos-pulldown-conteudo{
  padding:24px;

  border:1px solid var(--contato-borda);
  border-radius:17px;

  background:var(--contato-branco);

  box-shadow:
    0 8px 24px rgba(15,23,42,.05);
}

.contato-ru-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}

/* =====================================
   GRUPOS
===================================== */

.contato-ru-grupo{
  min-width:0;
  padding:18px;

  border:1px solid #e9eef2;
  border-radius:13px;

  background:var(--contato-fundo-suave);
}

.contato-ru-grupo-titulo{
  margin:0 0 13px;

  display:flex;
  align-items:center;
  gap:8px;

  color:var(--contato-verde);

  font-size:12px;
  font-weight:700;
  letter-spacing:.7px;
  line-height:1.4;
  text-transform:uppercase;
}

.contato-ru-grupo-titulo i{
  font-size:13px;
}

.contato-ru-pessoa + .contato-ru-pessoa{
  margin-top:15px;
  padding-top:15px;

  border-top:1px solid #e2e8ee;
}

.contato-ru-nome{
  margin:0 0 7px;

  color:var(--contato-texto);

  font-size:13px;
  font-weight:700;
  line-height:1.45;
}

.contato-ru-linha{
  margin:4px 0 0;

  display:flex;
  align-items:flex-start;
  gap:8px;

  color:var(--contato-cinza);

  font-size:12px;
  line-height:1.5;
}

.contato-ru-linha i{
  width:14px;
  margin-top:3px;

  color:var(--contato-azul);

  font-size:11px;
  text-align:center;
}

.contato-ru-linha a{
  color:var(--contato-azul) !important;

  text-decoration:none !important;
  word-break:break-word;
}

.contato-ru-linha a:hover{
  color:var(--contato-verde) !important;

  text-decoration:none !important;
}

/* =====================================
   E-MAILS GERAIS
===================================== */

.contato-ru-emails{
  grid-column:1 / -1;

  padding:17px 18px;

  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px 18px;

  border:1px solid rgba(0,91,170,.12);
  border-radius:13px;

  background:#f3f8fc;
}

.contato-ru-emails-titulo{
  display:flex;
  align-items:center;
  gap:7px;

  color:var(--contato-azul);

  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
}

.contato-ru-email-link{
  display:inline-flex;
  align-items:center;
  gap:7px;

  color:var(--contato-azul) !important;

  font-size:12px;
  font-weight:600;
  text-decoration:none !important;
}

.contato-ru-email-link:hover{
  color:var(--contato-verde) !important;

  text-decoration:none !important;
}

.contato-ru-email-link:focus-visible,
.contato-ru-linha a:focus-visible{
  outline:3px solid rgba(0,143,90,.22);
  outline-offset:3px;
}

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

@media(max-width:760px){

  .contato-ru-grid{
    grid-template-columns:1fr;
  }

  .contato-ru-emails{
    grid-column:auto;
  }

}

@media(max-width:600px){

  .contatos-pulldown{
    padding:22px 13px 34px;
  }

  .contatos-pulldown-botao{
    min-height:auto;
    padding:22px 65px 22px 20px;
  }

  .contatos-pulldown-conteudo{
    padding:16px;
  }

}

@media(max-width:480px){

  .contatos-pulldown-titulo{
    font-size:26px;
  }

  .contatos-pulldown-seta{
    width:36px;
    height:36px;
    right:15px;
  }

  .contato-ru-grupo{
    padding:16px;
  }

  .contato-ru-emails{
    align-items:flex-start;
    justify-content:flex-start;
    flex-direction:column;
  }

}

/* ==========================================================
   09 FORNECEDORES
   Fonte: fornecedores.txt
   ========================================================== */

:root{
  --forn-azul:#004680;
  --forn-verde:#00a859;
  --forn-laranja:#f28c00;
  --forn-vermelho:#c74747;

  --forn-azul-claro:#eef5fb;
  --forn-verde-claro:#edf8f3;
  --forn-laranja-claro:#fff7e9;
  --forn-vermelho-claro:#fff2f2;

  --forn-texto:#263746;
  --forn-cinza:#64748b;
  --forn-borda:#dfe7ee;
  --forn-branco:#ffffff;
}

/* =====================================
   ISOLAMENTO
===================================== */

.fornecedores-pulldown,
.fornecedores-pulldown *{
  box-sizing:border-box;
}

.fornecedores-pulldown{
  width:100%;
  padding:28px 18px 44px;

  background:
    linear-gradient(
      135deg,
      #f8fbfd 0%,
      #ffffff 48%,
      #f3faf6 100%
    );

  color:var(--forn-texto);
  font-family:"Poppins",Arial,sans-serif;
}

.fornecedores-pulldown-container{
  width:100%;
  max-width:1100px;
  margin:0 auto;
}

/* =====================================
   BOTÃO PRINCIPAL
===================================== */

.fornecedores-pulldown-botao{
  width:100%;
  min-height:140px;
  padding:25px 70px 25px 30px;

  display:block;

  position:relative;
  overflow:hidden;

  appearance:none;
  -webkit-appearance:none;

  border:1px solid rgba(0,70,128,.10);
  border-radius:19px;
  background:var(--forn-branco);

  color:inherit;
  font-family:"Poppins",Arial,sans-serif;
  text-align:left;

  cursor:pointer;

  box-shadow:0 8px 25px rgba(15,23,42,.055);

  transition:
    border-color .25s ease,
    box-shadow .25s ease,
    background-color .25s ease;
}

.fornecedores-pulldown-botao::before{
  content:"";

  position:absolute;
  top:0;
  bottom:0;
  left:0;

  width:5px;

  background:
    linear-gradient(
      180deg,
      var(--forn-azul),
      var(--forn-verde)
    );
}

.fornecedores-pulldown-botao::after{
  content:"";

  position:absolute;
  top:-150px;
  right:-125px;

  width:280px;
  height:280px;

  border:48px solid rgba(0,168,89,.04);
  border-radius:50%;

  pointer-events:none;
}

.fornecedores-pulldown-botao:hover{
  border-color:rgba(0,168,89,.30);
  background:#fff;

  box-shadow:0 10px 28px rgba(0,143,90,.08);
}

.fornecedores-pulldown-botao:focus-visible{
  outline:3px solid rgba(0,168,89,.25);
  outline-offset:3px;
}

/* =====================================
   TEXTO DO BOTÃO
===================================== */

.fornecedores-pulldown-titulo{
  position:relative;
  z-index:2;

  display:block;

  color:var(--forn-azul);

  font-size:clamp(27px,3.5vw,39px);
  font-weight:800;
  letter-spacing:-1px;
  line-height:1.1;
}

.fornecedores-pulldown-subtitulo{
  position:relative;
  z-index:2;

  max-width:760px;
  margin-top:8px;

  display:block;

  color:var(--forn-cinza);

  font-size:12px;
  font-weight:400;
  line-height:1.6;
}

/* =====================================
   SETA
===================================== */

.fornecedores-pulldown-seta{
  width:40px;
  height:40px;

  display:flex;
  align-items:center;
  justify-content:center;

  position:absolute;
  top:50%;
  right:22px;
  z-index:3;

  border:1px solid rgba(0,70,128,.10);
  border-radius:50%;

  background:#f5f9fc;
  color:var(--forn-verde);

  font-size:15px;

  transform:translateY(-50%);
  transition:
    transform .28s ease,
    background-color .25s ease,
    color .25s ease;
}

.fornecedores-pulldown.aberto
.fornecedores-pulldown-seta{
  background:var(--forn-verde);
  color:#fff;

  transform:
    translateY(-50%)
    rotate(180deg);
}

/* =====================================
   PAINEL
===================================== */

.fornecedores-pulldown-painel{
  max-height:0;
  margin-top:0;

  overflow:hidden;

  opacity:0;
  visibility:hidden;

  transition:
    max-height .55s ease,
    margin-top .35s ease,
    opacity .3s ease,
    visibility .3s ease;
}

.fornecedores-pulldown.aberto
.fornecedores-pulldown-painel{
  max-height:2500px;
  margin-top:18px;

  opacity:1;
  visibility:visible;
}

/* =====================================
   GRID
===================================== */

.fornecedores-ru-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  align-items:stretch;
}

/* =====================================
   CARD BASE
===================================== */

.fornecedores-card{
  min-width:0;
  overflow:hidden;

  display:flex;
  flex-direction:column;

  border:1px solid var(--forn-borda);
  border-radius:17px;
  background:var(--forn-branco);

  box-shadow:0 6px 20px rgba(15,23,42,.045);
}

.fornecedores-card-largo{
  grid-column:1 / -1;
}

.fornecedores-card-cabecalho{
  padding:16px 18px 13px;

  display:flex;
  align-items:center;
  gap:11px;

  border-bottom:1px solid #edf1f4;
}

.fornecedores-card-icone{
  flex:0 0 43px;

  width:43px;
  height:43px;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:12px;

  font-size:18px;
}

.fornecedores-card-cabecalho h2{
  margin:0;

  color:var(--forn-azul);

  font-size:16px;
  font-weight:700;
  line-height:1.3;
}

.fornecedores-card-cabecalho p{
  margin:2px 0 0;

  color:var(--forn-cinza);

  font-size:9px;
  line-height:1.5;
}

.fornecedores-card-conteudo{
  flex:1 1 auto;
  padding:16px 18px 18px;
}

/* =====================================
   ENTREGA
===================================== */

.card-entrega .fornecedores-card-icone{
  background:var(--forn-azul-claro);
  color:var(--forn-azul);
}

.entrega-horarios{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.entrega-horario{
  padding:15px 12px;

  border:1px solid var(--forn-borda);
  border-radius:12px;
  background:#fbfdff;

  text-align:center;
}

.entrega-horario span{
  display:block;
  margin-bottom:4px;

  color:var(--forn-verde);

  font-size:9px;
  font-weight:700;
  letter-spacing:.5px;
  text-transform:uppercase;
}

.entrega-horario strong{
  color:var(--forn-azul);

  font-size:15px;
  font-weight:700;
  line-height:1.4;
}

.entrega-observacao{
  margin:12px 0 0;
  padding:11px 12px;

  display:flex;
  align-items:flex-start;
  gap:8px;

  border-left:4px solid var(--forn-laranja);
  border-radius:0 9px 9px 0;

  background:var(--forn-laranja-claro);
  color:#725321;

  font-size:10px;
  line-height:1.55;
}

.entrega-observacao i{
  margin-top:2px;
  color:var(--forn-laranja);
}

/* =====================================
   ENDEREÇO
===================================== */

.card-endereco .fornecedores-card-icone{
  background:var(--forn-verde-claro);
  color:var(--forn-verde);
}

.fornecedores-endereco{
  margin:0;

  color:var(--forn-texto);

  font-size:12px;
  line-height:1.75;
}

.fornecedores-endereco strong{
  color:var(--forn-azul);
}

.fornecedores-endereco a{
  color:var(--forn-azul) !important;
  text-decoration:none !important;
}

.fornecedores-endereco a:hover{
  color:var(--forn-verde) !important;
}

.fornecedores-acoes{
  margin-top:15px;

  display:flex;
  flex-wrap:wrap;
  gap:9px;
}

/* =====================================
   BOTÕES
===================================== */

.fornecedores-botao{
  min-height:38px;
  padding:8px 14px;

  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;

  border:1px solid var(--forn-azul);
  border-radius:999px;

  background:var(--forn-azul);
  color:#fff !important;

  font-size:10px;
  font-weight:700;
  text-decoration:none !important;

  transition:
    background-color .25s ease,
    border-color .25s ease;
}

.fornecedores-botao:hover{
  border-color:var(--forn-verde);
  background:var(--forn-verde);

  color:#fff !important;
  text-decoration:none !important;
}

.fornecedores-botao-secundario{
  background:#fff;
  color:var(--forn-azul) !important;
}

.fornecedores-botao-secundario:hover{
  color:#fff !important;
}

.fornecedores-botao:focus-visible{
  outline:3px solid rgba(0,168,89,.24);
  outline-offset:3px;
}

/* =====================================
   DOCUMENTAÇÃO
===================================== */

.card-documentacao .fornecedores-card-icone{
  background:var(--forn-vermelho-claro);
  color:var(--forn-vermelho);
}

.documentacao-alerta{
  margin:0;
  padding:14px 15px;

  display:flex;
  align-items:flex-start;
  gap:10px;

  border:1px solid rgba(199,71,71,.18);
  border-radius:12px;

  background:var(--forn-vermelho-claro);
  color:#6b3a3a;

  font-size:11px;
  font-weight:600;
  line-height:1.65;
}

.documentacao-alerta i{
  flex:0 0 auto;
  margin-top:2px;

  color:var(--forn-vermelho);
  font-size:16px;
}

.documentacao-paragrafos{
  margin-top:13px;

  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:11px;
}

.documentacao-paragrafo{
  padding:14px;

  border:1px solid var(--forn-borda);
  border-radius:12px;

  background:#fff;
  color:var(--forn-cinza);

  font-size:10px;
  line-height:1.65;
}

.documentacao-paragrafo strong{
  display:inline-block;
  margin-bottom:3px;

  color:var(--forn-verde);

  font-size:12px;
}

/* =====================================
   PAGAMENTOS
===================================== */

.card-pagamentos .fornecedores-card-icone{
  background:var(--forn-verde-claro);
  color:var(--forn-verde);
}

.pagamentos-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
}

.pagamentos-texto{
  color:var(--forn-cinza);

  font-size:11px;
  line-height:1.65;
}

.pagamentos-texto strong{
  color:var(--forn-azul);
}

.pagamentos-botao{
  min-width:220px;
}

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

@media(max-width:800px){

  .fornecedores-ru-grid{
    grid-template-columns:1fr;
  }

  .fornecedores-card-largo{
    grid-column:auto;
  }

  .documentacao-paragrafos{
    grid-template-columns:1fr;
  }

  .pagamentos-layout{
    grid-template-columns:1fr;
  }

  .pagamentos-botao{
    min-width:0;
    width:max-content;
  }

}

@media(max-width:600px){

  .fornecedores-pulldown{
    padding:22px 13px 34px;
  }

  .fornecedores-pulldown-botao{
    min-height:auto;
    padding:22px 65px 22px 20px;
  }

  .entrega-horarios{
    grid-template-columns:1fr;
  }

}

@media(max-width:450px){

  .fornecedores-pulldown-titulo{
    font-size:26px;
  }

  .fornecedores-pulldown-seta{
    width:36px;
    height:36px;
    right:15px;
  }

  .fornecedores-acoes{
    flex-direction:column;
  }

  .fornecedores-botao,
  .pagamentos-botao{
    width:100%;
  }

}

/* ==========================================================
   10 INFORMATIVOS
   Fonte: informativo.txt
   ========================================================== */

:root{
  --inf-azul:#004680;
  --inf-azul-claro:#eef5fb;
  --inf-verde:#008f5a;
  --inf-verde-claro:#edf8f3;
  --inf-texto:#263746;
  --inf-cinza:#64748b;
  --inf-borda:#dfe7ee;
  --inf-branco:#ffffff;
}

/* =====================================
   ISOLAMENTO
===================================== */

.informativos-ru,
.informativos-ru *{
  box-sizing:border-box;
}

.informativos-ru{
  width:100%;
  margin:32px auto 42px;
  padding:24px;

  border:1px solid var(--inf-borda);
  border-radius:20px;

  background:
    linear-gradient(
      135deg,
      #ffffff 0%,
      #fbfdff 55%,
      #f4faf7 100%
    );

  box-shadow:0 9px 28px rgba(15,23,42,.055);

  color:var(--inf-texto);
  font-family:"Poppins",Arial,sans-serif;
}

.informativos-ru-container{
  width:100%;
  max-width:1180px;
  margin:0 auto;
}

/* =====================================
   CABEÇALHO
===================================== */

.informativos-ru-cabecalho{
  margin-bottom:20px;
}

.informativos-ru-selo{
  display:inline-flex;
  align-items:center;
  gap:7px;

  margin-bottom:6px;

  color:var(--inf-verde);

  font-size:10px;
  font-weight:700;
  letter-spacing:1.3px;
  text-transform:uppercase;
}

.informativos-ru-cabecalho h2{
  margin:0;

  color:var(--inf-azul);

  font-size:clamp(24px,2.7vw,34px);
  font-weight:800;
  letter-spacing:-.8px;
  line-height:1.15;
}

.informativos-ru-cabecalho p{
  max-width:720px;
  margin:7px 0 0;

  color:var(--inf-cinza);

  font-size:12px;
  line-height:1.6;
}

/* =====================================
   LAYOUT COMPACTO
===================================== */

.informativos-ru-grid{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);
  gap:20px;
  align-items:stretch;
}

/* =====================================
   DESTAQUE À ESQUERDA
===================================== */

.informativos-ru-preview{
  min-width:0;
  overflow:hidden;

  display:flex;
  flex-direction:column;

  border:1px solid var(--inf-borda);
  border-radius:17px;
  background:#fff;

  box-shadow:0 6px 20px rgba(15,23,42,.045);
}

.informativos-ru-preview-imagem{
  min-height:330px;
  max-height:430px;
  padding:14px;

  display:flex;
  align-items:center;
  justify-content:center;

  overflow:hidden;

  border-bottom:1px solid var(--inf-borda);
  background:#f4f6f8;
}

.informativos-ru-preview-imagem img{
  display:block;

  width:auto;
  height:auto;

  max-width:100%;
  max-height:400px;

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

  opacity:1;

  transition:opacity .2s ease;
}

.informativos-ru-preview-imagem.carregando img{
  opacity:.25;
}

.informativos-ru-preview-conteudo{
  padding:16px 18px 18px;
}

.informativos-ru-preview-data{
  margin-bottom:5px;

  display:flex;
  align-items:center;
  gap:6px;

  color:var(--inf-cinza);

  font-size:9px;
  font-weight:600;
  text-transform:uppercase;
}

.informativos-ru-preview-data i{
  color:var(--inf-verde);
}

.informativos-ru-preview-titulo{
  margin:0;

  color:var(--inf-azul);

  font-size:16px;
  font-weight:700;
  line-height:1.4;
}

.informativos-ru-preview-descricao{
  margin:6px 0 0;

  display:-webkit-box;
  overflow:hidden;

  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;

  color:var(--inf-cinza);

  font-size:11px;
  line-height:1.6;
}

.informativos-ru-preview-link{
  margin-top:11px;

  display:inline-flex;
  align-items:center;
  gap:6px;

  color:var(--inf-verde) !important;

  font-size:10px;
  font-weight:700;
  text-decoration:none !important;
  text-transform:uppercase;
}

.informativos-ru-preview-link:hover{
  color:var(--inf-azul) !important;
  text-decoration:none !important;
}

.informativos-ru-preview-link:focus-visible{
  outline:3px solid rgba(0,143,90,.22);
  outline-offset:3px;
}

/* =====================================
   LISTA À DIREITA
===================================== */

.informativos-ru-lista-wrapper{
  min-width:0;
  overflow:hidden;

  display:flex;
  flex-direction:column;

  border:1px solid var(--inf-borda);
  border-radius:17px;
  background:#fff;

  box-shadow:0 6px 20px rgba(15,23,42,.045);
}

.informativos-ru-lista-cabecalho{
  min-height:55px;
  padding:14px 17px;

  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;

  border-bottom:1px solid var(--inf-borda);
}

.informativos-ru-lista-cabecalho h3{
  margin:0;

  color:var(--inf-azul);

  font-size:14px;
  font-weight:700;
}

.informativos-ru-contagem{
  min-width:27px;
  height:27px;
  padding:0 8px;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:999px;
  background:var(--inf-verde-claro);

  color:var(--inf-verde);

  font-size:10px;
  font-weight:700;
}

.informativos-ru-lista{
  flex:1 1 auto;

  display:flex;
  flex-direction:column;
}

/* =====================================
   ITEM
===================================== */

.informativo-item{
  width:100%;
  min-height:72px;
  padding:10px 13px;

  display:grid;
  grid-template-columns:46px minmax(0,1fr) 18px;
  align-items:center;
  gap:11px;

  appearance:none;
  -webkit-appearance:none;

  border:0;
  border-bottom:1px solid #edf1f4;
  background:#fff;

  color:inherit;
  font:inherit;
  text-align:left;

  cursor:pointer;

  transition:
    background-color .2s ease,
    border-color .2s ease;
}

.informativo-item:last-child{
  border-bottom:0;
}

.informativo-item:hover,
.informativo-item.ativo{
  background:var(--inf-verde-claro);
}

.informativo-item:focus-visible{
  position:relative;
  z-index:2;

  outline:3px solid rgba(0,143,90,.22);
  outline-offset:-3px;
}

/* Miniatura ou ícone neutro */

.informativo-item-miniatura{
  width:46px;
  height:46px;

  overflow:hidden;

  display:flex;
  align-items:center;
  justify-content:center;

  border:1px solid #e3e9ee;
  border-radius:10px;
  background:var(--inf-azul-claro);

  color:var(--inf-azul);
  font-size:16px;
}

.informativo-item-miniatura img{
  width:100%;
  height:100%;

  display:block;

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

  background:#fff;
}

.informativo-item:hover
.informativo-item-miniatura,
.informativo-item.ativo
.informativo-item-miniatura{
  border-color:rgba(0,143,90,.30);
}

.informativo-item-conteudo{
  min-width:0;
}

.informativo-item-titulo{
  margin:0;

  display:-webkit-box;
  overflow:hidden;

  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;

  color:var(--inf-texto);

  font-size:11px;
  font-weight:700;
  line-height:1.4;
}

.informativo-item-data{
  margin-top:3px;

  display:block;

  color:var(--inf-cinza);

  font-size:8.5px;
  line-height:1.4;
}

.informativo-item-seta{
  color:#94a3b8;
  font-size:10px;
}

.informativo-item:hover
.informativo-item-seta,
.informativo-item.ativo
.informativo-item-seta{
  color:var(--inf-verde);
}

/* =====================================
   BOTÃO VER TODOS NA PARTE INFERIOR
===================================== */

.informativos-ru-lista-rodape{
  padding:13px 15px;

  border-top:1px solid var(--inf-borda);
  background:#fafcfd;
}

.informativos-ru-ver-todos{
  width:100%;
  min-height:40px;
  padding:9px 14px;

  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;

  border:1px solid var(--inf-azul);
  border-radius:999px;

  background:#fff;
  color:var(--inf-azul) !important;

  font-size:10px;
  font-weight:700;
  text-decoration:none !important;

  transition:
    color .22s ease,
    border-color .22s ease,
    background-color .22s ease;
}

.informativos-ru-ver-todos:hover{
  border-color:var(--inf-verde);
  background:var(--inf-verde);

  color:#fff !important;
  text-decoration:none !important;
}

.informativos-ru-ver-todos:focus-visible{
  outline:3px solid rgba(0,143,90,.22);
  outline-offset:3px;
}

/* =====================================
   ESTADOS
===================================== */

.informativos-ru-estado{
  min-height:250px;
  padding:30px 20px;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;

  color:var(--inf-cinza);

  font-size:11px;
  line-height:1.6;
  text-align:center;
}

.informativos-ru-estado i{
  color:var(--inf-verde);
  font-size:26px;
}

.informativos-ru-carregando i{
  animation:informativos-girar .9s linear infinite;
}

@keyframes informativos-girar{
  to{
    transform:rotate(360deg);
  }
}

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

@media(max-width:850px){

  .informativos-ru-grid{
    grid-template-columns:1fr;
  }

  .informativos-ru-preview-imagem{
    min-height:300px;
  }

}

@media(max-width:600px){

  .informativos-ru{
    margin:28px auto 36px;
    padding:18px 14px;
  }

  .informativos-ru-cabecalho{
    margin-bottom:17px;
  }

  .informativos-ru-preview-imagem{
    min-height:240px;
    max-height:340px;
    padding:10px;
  }

  .informativos-ru-preview-imagem img{
    max-height:320px;
  }

}

@media(max-width:400px){

  .informativos-ru-preview-imagem{
    min-height:210px;
  }

}

/* ==========================================================
   11 NOTICIAS
   Fonte: noticias.txt
   ========================================================== */

:root{

  --unp-azul:#004680;
  --unp-azul-claro:#eef5fb;

  --unp-verde:#008f5a;
  --unp-verde-claro:#edf8f3;

  --unp-texto:#263746;
  --unp-cinza:#64748b;

  --unp-borda:#dfe7ee;
  --unp-fundo:#ffffff;
  --unp-fundo-imagem:#eef3f7;
  --unp-branco:#ffffff;

}

/* =====================================
   ISOLAMENTO
===================================== */

.noticias-destaque-plone,
.noticias-destaque-plone *{
  box-sizing:border-box;
}

/* =====================================
   BLOCO
===================================== */

.noticias-destaque-plone{

  width:100%;

  margin:32px auto 0;

  padding:24px;

  height:auto;

  min-height:unset;

  align-self:flex-start;

  border:1px solid var(--unp-borda);

  border-radius:20px;

  background:
    linear-gradient(
      135deg,
      #ffffff 0%,
      #fbfdff 55%,
      #f4faf7 100%
    );

  box-shadow:
    0 9px 28px
    rgba(15,23,42,.055);

  color:var(--unp-texto);

  font-family:
    "Poppins",
    Arial,
    sans-serif;

}

/* =====================================
   CONTAINER
===================================== */

.unp-container{

  width:100%;

  max-width:900px;

  margin:0 auto;

}

/* =====================================
   CABEÇALHO
===================================== */

.unp-cabecalho{

  margin-bottom:20px;

}

/* selo */

.unp-selo{

  display:inline-flex;

  align-items:center;

  gap:7px;

  margin-bottom:6px;

  color:var(--unp-verde);

  font-size:10px;

  font-weight:700;

  letter-spacing:1.3px;

  text-transform:uppercase;

}

.unp-selo i{

  font-size:11px;

}

/* título */

.unp-cabecalho h2{

  margin:0;

  color:var(--unp-azul);

  font-size:
    clamp(
      24px,
      2.7vw,
      34px
    );

  font-weight:800;

  letter-spacing:-.8px;

  line-height:1.15;

}

/* subtítulo */

.unp-cabecalho p{

  max-width:720px;

  margin:7px 0 0;

  color:var(--unp-cinza);

  font-size:12px;

  line-height:1.6;

}

/* =====================================
   CARD DA LISTA
===================================== */

.unp-lista-wrapper{

  width:100%;

  overflow:hidden;

  display:flex;

  flex-direction:column;

  height:auto;

  min-height:unset;

  border:1px solid var(--unp-borda);

  border-radius:18px;

  background:#ffffff;

  box-shadow:
    0 6px 20px
    rgba(15,23,42,.045);

}

/* =====================================
   CABEÇALHO INTERNO
===================================== */

.unp-lista-cabecalho{

  min-height:58px;

  padding:14px 18px;

  display:flex;

  align-items:center;

  justify-content:space-between;

  gap:12px;

  border-bottom:
    1px solid
    var(--unp-borda);

  background:#ffffff;

}

.unp-lista-cabecalho h3{

  margin:0;

  color:var(--unp-azul);

  font-size:14px;

  font-weight:700;

}

/* contador */

.unp-contagem{

  min-width:28px;

  height:28px;

  padding:0 8px;

  display:flex;

  align-items:center;

  justify-content:center;

  border-radius:999px;

  background:
    var(--unp-verde-claro);

  color:
    var(--unp-verde);

  font-size:10px;

  font-weight:700;

}

/* =====================================
   LISTA
===================================== */

.unp-lista{

  width:100%;

  display:flex;

  flex-direction:column;

  height:auto;

  min-height:0;

}

/* =====================================
   ITEM
===================================== */

.unp-noticia{

  width:100%;

  min-height:108px;

  padding:12px 15px;

  display:grid;

  grid-template-columns:
    118px
    minmax(0,1fr)
    24px;

  align-items:center;

  gap:14px;

  border-bottom:
    1px solid
    #edf1f4;

  background:#ffffff;

  color:inherit !important;

  text-decoration:none !important;

  transition:
    background-color .22s ease,
    border-color .22s ease;

}

.unp-noticia:last-child{

  border-bottom:0;

}

/* =====================================
   HOVER
===================================== */

.unp-noticia:hover{

  background:
    var(--unp-verde-claro);

  color:inherit !important;

  text-decoration:none !important;

}

.unp-noticia:focus-visible{

  position:relative;

  z-index:2;

  outline:
    3px solid
    rgba(0,143,90,.22);

  outline-offset:-3px;

}

/* =====================================
   IMAGEM
===================================== */

.unp-noticia-imagem{

  position:relative;

  width:118px;

  height:82px;

  overflow:hidden;

  display:flex;

  align-items:center;

  justify-content:center;

  border:
    1px solid
    #e3e9ef;

  border-radius:11px;

  background:
    var(--unp-fundo-imagem);

}

.unp-noticia-imagem img{

  display:block;

  max-width:100%;

  max-height:100%;

  width:auto;

  height:auto;

  object-fit:contain;

  object-position:center;

  transition:
    transform .25s ease;

}

.unp-noticia:hover
.unp-noticia-imagem img{

  transform:scale(1.025);

}

/* imagem padrão */

.unp-noticia-imagem
img.unp-imagem-padrao{

  width:auto;

  height:auto;

  max-width:100%;

  max-height:100%;

  object-fit:contain;

}

/* =====================================
   PLACEHOLDER
===================================== */

.unp-sem-imagem{

  width:100%;

  height:100%;

  display:flex;

  align-items:center;

  justify-content:center;

  background:
    var(--unp-fundo-imagem);

  color:
    var(--unp-azul);

  font-size:25px;

}

/* =====================================
   CONTEÚDO
===================================== */

.unp-noticia-conteudo{

  min-width:0;

  display:flex;

  flex-direction:column;

}

/* =====================================
   DATA
===================================== */

.unp-noticia-data{

  margin-bottom:4px;

  display:flex;

  align-items:center;

  gap:5px;

  color:
    var(--unp-verde);

  font-size:9px;

  font-weight:600;

  line-height:1.35;

}

.unp-noticia-data i{

  font-size:9px;

}

/* =====================================
   TÍTULO
===================================== */

.unp-noticia-titulo{

  margin:0;

  display:-webkit-box;

  overflow:hidden;

  -webkit-box-orient:vertical;

  -webkit-line-clamp:2;

  color:
    var(--unp-texto);

  font-size:13px;

  font-weight:700;

  line-height:1.45;

  transition:
    color .22s ease;

}

.unp-noticia:hover
.unp-noticia-titulo{

  color:
    var(--unp-verde);

}

/* =====================================
   DESCRIÇÃO
===================================== */

.unp-noticia-descricao{

  margin:4px 0 0;

  display:-webkit-box;

  overflow:hidden;

  -webkit-box-orient:vertical;

  -webkit-line-clamp:2;

  color:
    var(--unp-cinza);

  font-size:10px;

  line-height:1.5;

}

/* =====================================
   SETA
===================================== */

.unp-noticia-seta{

  width:24px;

  height:24px;

  display:flex;

  align-items:center;

  justify-content:center;

  color:#94a3b8;

  font-size:11px;

  transition:
    color .22s ease,
    transform .22s ease;

}

.unp-noticia:hover
.unp-noticia-seta{

  color:
    var(--unp-verde);

  transform:
    translateX(2px);

}

/* =====================================
   VER TODAS
===================================== */

.unp-ver-todas-wrapper{

  padding:14px 16px;

  border-top:
    1px solid
    var(--unp-borda);

  background:#fafcfd;

}

.unp-ver-todas{

  width:100%;

  min-height:42px;

  padding:9px 15px;

  display:flex;

  align-items:center;

  justify-content:center;

  gap:8px;

  border:
    1px solid
    var(--unp-azul);

  border-radius:999px;

  background:#ffffff;

  color:
    var(--unp-azul)
    !important;

  font-size:10px;

  font-weight:700;

  text-decoration:none !important;

  transition:
    color .22s ease,
    border-color .22s ease,
    background-color .22s ease;

}

.unp-ver-todas:hover{

  border-color:
    var(--unp-verde);

  background:
    var(--unp-verde);

  color:#ffffff !important;

  text-decoration:none !important;

}

.unp-ver-todas i{

  transition:
    transform .22s ease;

}

.unp-ver-todas:hover i{

  transform:
    translateX(3px);

}

.unp-ver-todas:focus-visible{

  outline:
    3px solid
    rgba(0,143,90,.22);

  outline-offset:3px;

}

/* =====================================
   ESTADOS
===================================== */

.unp-estado{

  min-height:180px;

  padding:30px 20px;

  display:flex;

  flex-direction:column;

  align-items:center;

  justify-content:center;

  gap:10px;

  color:
    var(--unp-cinza);

  font-size:11px;

  line-height:1.6;

  text-align:center;

}

.unp-estado i{

  color:
    var(--unp-verde);

  font-size:25px;

}

.unp-carregando i{

  animation:
    unp-girar
    .9s
    linear
    infinite;

}

@keyframes unp-girar{

  to{
    transform:rotate(360deg);
  }

}

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

@media(max-width:700px){

  .noticias-destaque-plone{

    margin:
      28px
      auto
      0;

    padding:
      18px
      14px;

  }

  .unp-container{

    max-width:100%;

  }

  .unp-cabecalho{

    margin-bottom:17px;

  }

  .unp-noticia{

    grid-template-columns:
      105px
      minmax(0,1fr)
      20px;

    gap:12px;

    padding:12px;

  }

  .unp-noticia-imagem{

    width:105px;

    height:78px;

  }

}

@media(max-width:500px){

  .unp-noticia{

    min-height:88px;

    grid-template-columns:
      80px
      minmax(0,1fr)
      18px;

    gap:10px;

    padding:10px;

  }

  .unp-noticia-imagem{

    width:80px;

    height:68px;

  }

  .unp-noticia-descricao{

    display:none;

  }

}

@media(max-width:380px){

  .unp-noticia{

    grid-template-columns:
      68px
      minmax(0,1fr)
      16px;

  }

  .unp-noticia-imagem{

    width:68px;

    height:62px;

  }

}