/*DEFAULT*/
body[pagina="index"] .lSSlideOuter .lSPager.lSpg {display:none;}
body {font-family: 'Open Sans', sans-serif;font-size:16px;font-weight:400;color:#666;}
h4 {font-family: 'Open Sans';text-transform: none;letter-spacing: 0;line-height: 1.4;margin-bottom: 5px;}
#cinema_home .lSNext, #cinema_home .lSPrev {display:none;}
.flex {display:flex;flex-wrap:wrap;}
.flex>div {flex:1;}
.breadcrumb li {font-weight:400;}
.breadcrumb li a {font-size:14px;}
.form-input-item input, .form-input-item textarea, .nice-select span {font-weight:400;font-size:16px;padding-bottom:14px;padding-left:0;padding-right:0;}
.nice-select span {position:relative;bottom:10px;}
.bg-brown {background:#faa818;}
.bg-gray {background:#eee;}
.bg-white {background:#fff;}
.btn-4:hover {background:#faa818!important;}
.btn-4:active {border-color:#faa818!important;}
.btn-bordered {border-color:#faa818!important;}
.btn-bordered:hover {background:#faa818!important;}
.form-input-item input, .form-input-item textarea, .nice-select {border-bottom-color:#faa818!important;}

/*HEADER*/
.header-area {background-image:linear-gradient(to bottom, rgba(0,0,0,0.8), transparent);}
.header-area.sticky {background-image:none;}
.has-submenu .submenu-nav {background:#fff;}
.has-submenu .submenu-nav>li a {text-transform:none;display:block;}
.main-menu>li {display:flex;align-items:center;}
.main-menu>li>a {font-weight:600;}
.fa-store{margin-right: 5px;}
.slicknav_menu .slicknav_collapsed .slicknav_arrow {display:none!important;}
.search-box-form-wrap input[type=search] {border-color:#faa818;color:#faa818;}
.search-box-form-wrap .search-note {color:#faa818;}
.main-menu>li>a:after {background:#115389!important;}
.has-submenu .submenu-nav {border-bottom-color:#faa818!important;}
.res-mobile-menu .slicknav_nav {background:#faa818!important}

/*INDEX*/
.banner li {height:100vh;position:relative;}
.banner li a {position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;}
#loja .sp-y, #alimentacao .sp-y, #servico .sp-y {padding:120px 0;}
.sobre p {font-family: 'Open Sans', sans-serif;}
.about .main-title{margin-right: 13%; align-self: center;}
.about.localizacao .main-title{margin-right: 9%;}
.about .text-about{ width: 60%; line-height: 2.5em; border-collapse: separate; border-left: 1px solid #feba12; border-spacing: 100px 0; display: table;}
.about {color:#fff;}
.about h2 {color:#feba12;white-space:nowrap;}
#cinema_home h2{ color: rgba(126,107,75,1); font-weight: 900;}
#mapa {width:100%;height:100%;position:absolute;top:0;left:0;z-index:-1;}
.loja_qtd {font-size:20px;padding-bottom:10vh;color:#aaa;}
.about-creative.localizacao address {line-height:1.9;}

/*CINEMA*/
.fhorario_btn {margin:7px 0 5px;}
.fhorario_btn a { text-align: center;  padding: 10px 15px; color:#000; display: inline-block; vertical-align: middle; margin-right: 10px; height:42px; overflow: hidden;font-size:18px;border:1px solid #000;}
.fhorario_btn a span { padding: 0px; display: block; -webkit-transition: all 300ms ease; -moz-transition: all 300ms ease; -o-transition: all 300ms ease; transition: all 300ms ease; }
.fhorario_btn a span:nth-child(1) { margin-top: -60px; margin-bottom:30px;font-size:16px; }
.fhorario_btn a:hover span:nth-child(1) { margin-top:-3px; }

/*LOCALIZAÇÃO*/
#localizacao iframe {width:100%;height:60vh;display:block;}

/*LOJAS*/
.loja_lista .pricing-item {height:calc(100% - 110px);}
.loja_lista>div .pricing-item .pricing-item-footer {position:relative;margin-bottom:20px;}
.loja_lista>div .pricing-item .pricing-item-footer:last-child {margin-bottom:0;}

/*CONTATO*/
#contato .box_img {position:absolute;width:100%;height:100%;background-image:url(https://upload.madnezz.com.br/e5e29897b97dab2689ff2ef51a2ee10f);background-size:cover;background-position:center;border-radius:4px;}
.form-input-item textarea {height:150px;}
#imagemCaptchaVerify img {width: 100%;position: relative;bottom: 15px;}

/*SHOPPING*/
#galeria .principal img {width:100%;}

/*NOVIDADES*/
#novidade_home.bg-softWhite {background-color: #fdfdfd !important;border-top: 1px solid #eee;}
[pagina="novidade"] .blog-page-content-area {min-height:800px;}
#novidade_busca .row {justify-content:center;}
#novidade_info, .novidade_qtd {display:none;}
.btn-bottom:before {background:#fbae3c;}
.post-item .post-info {color:#45352c;}
.novidade_lista>div a:hover h4 {color:#fbae3c;}
.post-thumb {opacity: 1;background-size: cover;visibility: initial;background-position: center;transform:scale(1.2);transition:all ease .3s;}
.post-thumb:before {background:rgba(255,255,255,0.9);}
.post-item {overflow:hidden;height:calc(100% - 30px);}
.post-item .post-info {transition:all ease .3s;}
.post-item:hover .post-thumb {transform:scale(1);}
.post-item:hover .post-info {transform:scale(1.05);}
.post-item:hover .post-info__action a, .post-item:hover .post-info__title a {color:#45352c;}
.related-post-area .post-item:last-child {margin-bottom:0!important;}

/*TRABALHE CONOSCO*/
input[type="file"] {display:none;}
.box-input {cursor:pointer;}
.anexo {line-height:initial;height:auto;float:left;width:100%;cursor:pointer;text-align:left;border-bottom:2px solid #fbae3c;padding-bottom: 10px;}
.anexo i {float:right;color:#fbae3c;font-size:19px;}
.anexo>span>span {position:relative;bottom:1px;font-weight: 400;font-size: 16px;padding-left: 0;padding-right: 0;}

/*VITRINE*/
.vitrine_menu {overflow: inherit!important;}
:root {--primary-color: #c00c19;}
.vitrine_menu {display:flex;width:calc(100% + 20px);margin-left:-10px;}
.vitrine_filtro {float:none!important;flex:1;margin:0 15px!important;}
.vitrine_filtro [type=text] {text-transform: none!important;margin-top: 4px!important;font-size: 16px!important;}
.vitrine_produto_coracao{display:none!important}
#vitrine {margin: -100px auto 0;width: 1360px;max-width:100%;padding:0 80px;position:relative;}
#vitrine .vitrine_lista {flex-wrap:initial!important;overflow:initial;margin-top:3vh;}
#vitrine .vitrine_produto {clear:initial!important;float:none!important;width:18%;margin:0 20px 0 0;}
#vitrine .vitrine_produto_nome {font-size: 22px;font-family: 'Poiret One',cursive;color: #333;font-weight: 600;min-height: 0;margin-bottom: 20px;}
#vitrine .vitrine_produto_loja {font-family:'Myriad Pro';font-size:16px;letter-spacing:0;color:var(--primary-color);}
#vitrine .swiper-button-prev, #vitrine .swiper-button-next {position:absolute;font-size:24px;transition:0.3s;background: transparent;color: var(--primary-color);border: 2px solid var(--primary-color);border-radius: 50%;width: 50px;height: 50px;display: flex;align-items: center;justify-content: center;top: 50%;margin-top: -25px;}
#vitrine .swiper-button-prev {transform-origin:left;}
#vitrine .swiper-button-next {transform-origin:right;}
#vitrine .swiper-button-prev:active {transform:scale(0.9);}
#vitrine .swiper-button-next:active {transform:scale(0.9);}
.vitrine_produto_imagem {width: 150px;height: 150px!important;display: block;margin: 0 auto 30px;border-radius: 50%;padding: 0!important;background-size:cover!important;}
#index .vitrine_produto_compartilhar {display:none!important;}
#index .vitrine_produto_valor span:last-child {display:none;}
#index .vitrine_produto_botoes li:not(.vitrine_produto_whatsapp) {display:none;}
.vitrine_produto_botoes li a {height:auto!important;}
.vitrine_produto_whatsapp {width:auto!important;height:auto!important;padding-bottom:0!important;}
.vitrine_produto_whatsapp button {border: 2px solid var(--primary-color);border-radius: 40px;padding: 5px 40px;text-transform: uppercase;font-size: 12px;font-family: 'Poiret One',cursive;font-weight: 600;transition:All ease .3s;margin-bottom:20px;}
.vitrine_produto_whatsapp button:hover {background:#eee;}
.vitrine_produto_whatsapp {background:none!important;}
.vitrine_produto_botoes li.vitrine_produto_whatsapp button {margin-bottom:0;}
@media screen and (min-width:1000px){
    [pagina="vitrine"] .vitrine_produto {width:calc(33.33% - 20px);margin:0 20px 30px 0;}
    [pagina="vitrine"] .vitrine_produto:nth-child(3n) {margin-right:0;}
}

/*COMERCIAL*/
.box_contatos {background:#faa818;border-radius:4px;padding:40px;position:relative;margin-right:20px;}
.box_contatos:after {content:'';position:absolute;top:20px;left:100%;width: 0; height: 0; border-top:10px solid transparent;border-bottom:10px solid transparent;border-left:13px solid #faa818;}
.box_contatos h3 {margin-top:0;}
.box_contatos p a {color:#fff!important;}
.box_contatos img {width:150px;max-width:100%;}
.box_contatos * {color:#fff;}
#abra-sua-loja p a {color:#666;}

/*CRYSTAL PRIME*/
#prime ul.steps {display:flex;flex-wrap:wrap;}
#prime ul.steps li {width:calc(33.33% - 27px);margin-right:40px;text-align:center;padding:50px;border-radius:6px;transition:all ease 0.3s;box-shadow: 0 0 50px -20px rgba(0,0,0,0.3);background:#fff;}
#prime ul.steps li:hover {background:#45352c;color:#fff;}
#prime ul.steps li:hover i {color:#45352c;background:#fff;}
@media screen and (min-width:1100px){
    #prime ul.steps li:last-child {margin-right:0;}
    #prime ul.beneficios li:last-child {margin-right:0;}
}
#prime ul.steps li i {background: #45352c;border-radius: 50%;width: 100px;height: 100px;line-height: 100px;color: #fff;font-size: 40px;display: block;margin: 0 auto 20px;transition:all ease 0.3s;}
#prime ul.beneficios {display:flex;flex-wrap:wrap;width:900px;max-width:100%;margin:0 auto;}
#prime ul.beneficios li {width:calc(33.33% - 20px);margin-right:30px;text-align:center;padding:20px;border-radius:6px;transition:all ease 0.3s;}
#prime ul.beneficios li i {border-radius: 50%;width: 100px;height: 100px;line-height: 100px;color: #aaa;font-size:60px;display: block;margin: 0 auto 20px;}
#prime .bg-brown p {color:#fff;}
#prime .cardapio {background-image:url(img/bg_concirerge.jpg);background-size:cover;background-position:center;position:relative;color:#fff;padding:100px 0!important;}
#prime .cardapio:after {content:'';position:absolute;top:0;left:0;width:100%;height:100%;background-color:#45352c;opacity:.8;z-index:1;}
#prime .cardapio h3 {position:relative;z-index:2;color:#fff;font-size:24px;}

/*FOOTER*/
.reveal-footer {position:relative!important;}
.footer-area {background:#258cc5;}
.about-creative {background:#0b5693;}
.widget-item .widget-title {color:#feba12;}
.btn-scroll-top, .btn-scroll-top:hover {background:#feba12;}

/*MOBILE*/
@media screen and (max-width:1200px){
    /*INDEX*/
    .banner li {height:40vh;}
    .about {padding:20px 30px!important;}
    .about .d-flex {flex-wrap:wrap;}
    .about .main-title{margin-right:0; width: 100%; text-align: center;}
    .about h2 {white-space: break-spaces;}
    .about .text-about{ width: 100%; line-height: 2.5em; border-collapse: separate; border-left: none; border-spacing: 25px 0;}
    #contato .form-input-item {margin-top:30px!important;}
    #imagemCaptchaVerify img {width:200px;}

    /*ABRA SUA LOJA*/
    .box_contatos {margin-right:0;margin-bottom:40px;}
    .box_contatos:after {top:100%;left:50%;margin-left:-7px;border-left: 15px solid transparent;border-right: 15px solid transparent;border-top: 20px solid #45352c;border-bottom:none;}
    #abra-sua-loja .row {padding-top:0!important;padding-bottom:0!important;}

    /*CRYSTAL PRIME*/
    #prime ul.steps li {width:100%;margin-bottom:30px;margin-right:0;}
    #prime ul.beneficios li {width:100%;margin-bottom:30px;margin-right:0;}
    #novidade_info .form-input-item .btn-bordered {margin:0 auto 70px;display:block;} 
}

/* ============ CUPONS – ESTILO BASE ============ */
:root{
  --cupom-accent: #0ea5e9;     /* cor de destaque (links/ícones) */
  --cupom-bg: #fff;            /* fundo do card */
  --cupom-text: #222;          /* cor texto */
  --cupom-sub: #666;           /* cor texto secundário */
  --cupom-radius: 14px;        /* raio de borda */
  --cupom-gap: 24px;           /* gap grid */
  --cupom-shadow: 0 6px 18px rgba(0,0,0,.08);
  --header-height: 80px;       /* altura aproximada do header fixo/transparente */
}

/* container utilitário (cobre "container" e o seu "contaniner-master") */
.container, .contaniner-master{
  width: min(1200px, 92%);
  margin: 0 auto;
}

/* espaçamentos verticais básicos */
.pv-50{ padding: 50px 0; }
.mv-30{ margin: 30px 0; }

/* GRID de cupons */
.cupom-lista{
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat( auto-fill, minmax(260px, 1fr) );
  gap: var(--cupom-gap);
}

/* Card base */
.cupom-lista > li{
  background: var(--cupom-bg);
  border-radius: var(--cupom-radius);
  box-shadow: var(--cupom-shadow);
  overflow: hidden;
  transform: translateY(0);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.cupom-lista > li:hover{
  transform: translateY(-3px);
  box-shadow: 0 12px 26px rgba(0,0,0,.12);
}

/* Link interno do card (usa sua classe .eventoclick) */
.cupom-lista .eventoclick{
  display: block;
  color: inherit;
  text-decoration: none;
  outline: none;
}
.cupom-lista .eventoclick:focus-visible{
  outline: 3px solid var(--cupom-accent);
  outline-offset: 3px;
  border-radius: var(--cupom-radius);
}

/* Imagem de capa – você já usa background-image inline */
.cupom-lista .novidade_imagem{
  width: 100%;
  padding-bottom: 56%;        /* 16:9 */
  background-size: cover;
  background-position: center;
  transition: transform .25s ease;
}
.cupom-lista > li:hover .novidade_imagem{
  transform: scale(1.03);
}

/* Conteúdo */
.cupom-lista .titulo{
  margin: 12px 16px 6px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3;
  color: var(--cupom-text);
  display: -webkit-box;
  -webkit-line-clamp: 2;      /* clamp em 2 linhas */
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.cupom-lista .texto{
  margin: 0 16px 16px;
  font-size: .92rem;
  line-height: 1.5;
  color: var(--cupom-sub);
  display: -webkit-box;
  -webkit-line-clamp: 3;      /* clamp em 3 linhas */
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Cursor helper (você já usa .cursor-pointer no <li>) */
.cursor-pointer{ cursor: pointer; }

/* Responsividade */
@media (max-width: 480px){
  :root{ --cupom-gap: 16px; }
  .cupom-lista .titulo{ font-size: 1rem; }
  .cupom-lista .texto { font-size: .9rem; }
}

/* ============ MODAL/BANNER DO CUPOM ============ */
.cupom-modal{
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: none;                    /* será aberto via .is-open */
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(0,0,0,.6);
  backdrop-filter: blur(2px);
}
.cupom-modal.is-open{ display: flex; animation: cm-fade .2s ease; }

.cupom-modal__box{
  position: relative;
  width: min(100%, 920px);
  max-height: 90vh;
  overflow: auto;
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 20px 60px rgba(0,0,0,.3);
  transform: scale(.98);
  animation: cm-pop .2s ease forwards;
}
.cupom-modal__img{
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  display: block;
  background: #f3f4f6;
}
.cupom-modal__content{
  padding: 20px 24px 24px;
}
.cupom-modal__title{
  margin: 0 0 8px;
  font-size: 1.25rem;
  font-weight: 800;
  color: #111;
}
.cupom-modal__text{
  color: #444;
  line-height: 1.65;
}
.cupom-modal__close{
  position: absolute;
  top: 10px; right: 10px;
  width: 40px; height: 40px;
  border-radius: 50%;
  border: 0;
  background: #111;
  color: #fff;
  cursor: pointer;
  font-size: 20px;
  display: grid;
  place-items: center;
}
.cupom-modal__close:hover{ background: #000; }

@keyframes cm-fade{ from{opacity:0} to{opacity:1} }
@keyframes cm-pop { to{ transform: scale(1); } }

/* Bloqueia scroll do body ao abrir modal */
.body--modal-open{ overflow: hidden; }

/* ============ HEADER TRANSPARENTE + PAGE HEADER WRAPPER ============ */

/* Bloco topo da página – usa o HTML que você mandou */
.page-header-wrapper{
  position: relative;
  color: #fff;
  padding: calc(var(--header-height) + 48px) 0 42px; /* compensa header fixo/transparente */
}
.page-header-wrapper.bg-img{
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.page-header-wrapper::after{
  content:'';
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,.45), rgba(0,0,0,.25));
  pointer-events: none;
}
.page-header-wrapper .section-title h2{
  margin: 0 0 10px;
  color: #fff;
  font-weight: 800;
  letter-spacing: .2px;
}

/* Breadcrumb */
.breadcrumb-wrap{ margin-top: 6px; }
.breadcrumb{
  list-style: none;
  margin: 0; padding: 0;
  display: inline-flex; flex-wrap: wrap; gap: 8px;
  color: #fff;
}
.breadcrumb li{ opacity: .9; }
.breadcrumb a{ color: #fff; text-decoration: none; }
.breadcrumb a.active{ opacity: 1; font-weight: 600; }
.breadcrumb li::after{
  content: '›';
  margin: 0 6px;
  opacity: .6;
}
.breadcrumb li:last-child::after{ content: ''; }

/* utilitário para setar bg da page-header-wrapper via atributo data-bg */
.page-header-wrapper.bg-img[data-bg]{
  background-image: attr(data-bg url); /* browsers não padronizam bem; veja o JS abaixo como fallback */
}

/* Ajustes opcionais de tipografia dentro do texto do cupom */
.detalhe-texto p{ margin: .5em 0; }
.detalhe-texto a{ color: var(--cupom-accent); text-decoration: underline; }

/* =======================
   VAGAS — cards e grid
   ======================= */

:root{
  --vaga-accent: #0ea5e9;
  --vaga-radius: 14px;
  --vaga-gap: 24px;
  --vaga-shadow: 0 6px 18px rgba(0,0,0,.08);
}

/* Grid da lista */
.vagas ul{
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat( auto-fill, minmax(280px, 1fr) );
  gap: var(--vaga-gap);
}

/* Se existir Swiper na página, neutraliza largura fixa */
.vagas .swiper-slide{
  width: auto !important;
  flex: 1 1 auto !important;
}

/* Card base */
.vagas_item{
  background: #fff;
  border-radius: var(--vaga-radius);
  box-shadow: var(--vaga-shadow);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  position: relative;
  transform: translateY(0);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.vagas_item:hover{
  transform: translateY(-4px);
  box-shadow: 0 12px 26px rgba(0,0,0,.14);
}

/* Topo do card: logo (quando houver) ou título substituto */
.vagas_logo,
.vagas_item .vaga_titulo{
  width: 100%;
  aspect-ratio: 16 / 9;              /* área visual do topo */
  background-color: #f5f7fb;
  position: relative;
}
.vagas_logo{
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transition: transform .25s ease;
}
.vagas_item:hover .vagas_logo{
  transform: scale(1.04);
}

/* Quando não houver logo e vier um <h5.vaga_titulo> */
.vagas_item .vaga_titulo{
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;                          /* zera margin do <h5> original */
  padding: 16px;
  font-size: 1.05rem;
  font-weight: 800;
  text-transform: capitalize;
  color: #0f172a;
  background: linear-gradient(180deg, #f8fafc, #eef2f7);
}

/* Conteúdo do card */
.vagas_item > p{
  margin: 0;
  padding: 16px 16px 0;
  color: #334155;
}
.vagas_item .tc_head{
  display: block;
  font-size: .98rem;
  line-height: 1.55;
  margin-bottom: 10px;
  color: #0f172a;
}
.vagas_item .tc_head b{
  color: var(--vaga-accent);
  font-weight: 700;
}

/* Descrição com clamp */
.vagas_item .tc_descricao{
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: .95rem;
  line-height: 1.6;
  color: #475569;
}

/* Botão "Candidatar-se" alinhado e com largura cheia do card */
.vagas_item .candidatarse,
.vagas_item button.candidatarse{
  display: block;
  width: calc(100% - 32px);
  margin: 16px auto 16px;
  border-radius: 12px;
  border: 0;
  padding: 12px 16px;
  font-weight: 700;
  text-align: center;
}
.vagas_item .candidatarse:hover{
  filter: brightness(1.02);
  transform: translateY(-1px);
}
.vagas_item .candidatarse:focus-visible{
  outline: 3px solid var(--vaga-accent);
  outline-offset: 2px;
}

/* Ajustes utilitários */
.vagas_item .mb-4{ margin-bottom: 12px !important; }

/* Responsivo */
@media (max-width: 480px){
  :root{ --vaga-gap: 16px; }
  .vagas_item .tc_descricao{ -webkit-line-clamp: 6; }
}

/* Acessibilidade: reduz animações se usuário preferir */
@media (prefers-reduced-motion: reduce){
  .vagas_item, .vagas_logo{ transition: none !important; }
}
