/* ==========================================================================
   QPair — Quality Plus Air Courier
   Personalização sobre o template base (cores da marca, formulários e ajustes)
   ========================================================================== */

:root {
   --qp-vinho: #8b2226;
   --qp-vinho-claro: #a72a2f;
   --qp-vinho-escuro: #5e1518;
   --qp-cinza: #2f3237;
   --qp-cinza-claro: #6b7280;
   --qp-fundo: #f7f7f9;
   --qp-header: #670001;   /* cor exata do fundo da logo */
}

/* ===== Cor da marca no lugar do laranja do template ===== */
.theme-bg,
#scrollUp, #back-top,
.categories-area .single-cat::before,
.team-area .single-team:hover .team-caption,
.blog_item_img .blog_item_date,
.mobile_menu .slicknav_menu .slicknav_btn .slicknav_icon-bar {
   background: var(--qp-vinho) !important;
}

.theme-color,
.section-tittle span,
.our-info-area .single-info .info-icon span,
.categories-area .single-cat .cat-icon span,
.slider-area .hero__caption h1 span,
.header-area .header-top .header-info-right .header-social li a:hover,
.main-header .main-menu ul ul.submenu > li > a:hover,
.mobile_menu .slicknav_menu .slicknav_nav a:hover,
.team-area .single-team .team-caption h3 a:hover,
.footer-area .footer-top .single-footer-caption .footer-tittle ul li a:hover,
.footer-area .footer-bottom .footer-copy-right p a,
.footer-area .footer-heading .contact-number a,
.home-blog-area .home-blog-single .blog-caption .blog-cap h3 a:hover {
   color: var(--qp-vinho) !important;
}

.main-header .main-menu ul ul.submenu { border-top: 5px solid var(--qp-vinho); }
.hero-caption span::before { background: var(--qp-vinho); }

.btn,
.submit-btn,
.slider-area form.search-box .search-form a,
.contact-section .btn_2,
.button-contactForm {
   background: var(--qp-vinho) !important;
   border-color: var(--qp-vinho) !important;
   color: #fff !important;
}

.btn:hover,
.submit-btn:hover,
.slider-area form.search-box .search-form a:hover,
.contact-section .btn_2:hover,
.button-contactForm:hover {
   background: var(--qp-vinho-escuro) !important;
   border-color: var(--qp-vinho-escuro) !important;
   color: #fff !important;
}

/* O template anima um preenchimento laranja (#e0581e) no hover — troca pelo vinho escuro */
.btn::before { background: var(--qp-vinho-escuro) !important; }

.boxed-btn { color: var(--qp-vinho) !important; border: 1px solid var(--qp-vinho); }
.boxed-btn:hover { background: var(--qp-vinho); border: 1px solid var(--qp-vinho); color: #fff !important; }
.border-btn::before { background: var(--qp-vinho); }

.h1-testimonial-active button.slick-arrow:hover { border: 1px solid var(--qp-vinho); color: var(--qp-vinho); }

/* ===== Títulos em cinza (o template usa um roxo-azulado #2c234d) ===== */
h1, h2, h3, h4, h5, h6 { color: var(--qp-cinza); }
.categories-area .single-cat .cat-cap a,
.categories-area .single-cat .cat-cap h5,
.categories-area .single-cat .cat-cap h5 > a { color: var(--qp-cinza); }
.contact-info .media-body h3,
.contact-info .media-body h3 a { color: var(--qp-cinza); }
.contact-title { color: var(--qp-cinza); }

/* ===== Cabeçalho ===== */
/* Fundo na mesma cor do fundo da logo, para o logotipo se integrar à barra */
.header-area { background: var(--qp-header); }
.header-area .header-top { border-bottom: 1px solid rgba(255, 255, 255, .14); }
.header-sticky.sticky-bar { background: var(--qp-header); }
.main-header .main-menu ul ul.submenu { background: var(--qp-header); }
.logo img { background: transparent; }

.header-area .header-top .header-info-left ul li i,
.header-area .header-top .header-info-right .header-social li a i {
   margin-right: 5px;
   color: #fff;
}
.header-area .header-top .header-info-left ul li,
.header-area .header-top .header-info-right .header-social li a { color: rgba(255, 255, 255, .88); }
.header-area .header-top .header-info-right .header-social li { margin-left: 22px; }
.header-area .header-top .header-info-right .header-social li a { font-size: 14px; }
.header-area .header-top .header-info-left ul li a { color: #fff; }
.header-area .header-top .header-info-left ul li a:hover { color: #ddd; }
.main-header .main-menu ul li a { padding: 30px 9px; font-size: 13.5px; white-space: nowrap; }
.main-header .main-menu ul li { margin-left: 0; }
.main-header .main-menu ul ul.submenu li a { padding: 10px 15px; white-space: normal; }
.header-right-btn .btn.header-btn { font-size: 12px; padding: 21px 22px; letter-spacing: .5px; white-space: nowrap; }
.header-right-btn { flex-shrink: 0; }
.main-menu { min-width: 0; }
.menu-wrapper { flex-wrap: nowrap; }
.logo img { max-height: 42px; width: auto; }
.header-area .header-bottom { padding: 8px 0; }

@media (min-width: 992px) and (max-width: 1199px) {
   .main-header .main-menu ul li a { padding: 30px 6px; font-size: 12.5px; }
   .header-right-btn { display: none !important; }
}

/* Menu sobre o header vinho: destaque em branco, não em vinho */
.main-header .main-menu ul li > a { color: rgba(255, 255, 255, .82); position: relative; }
.main-header .main-menu ul li:hover > a,
.main-header .main-menu ul li > a.ativo { color: #fff !important; }
.main-header .main-menu ul li > a.ativo::after {
   content: "";
   position: absolute;
   left: 9px;
   right: 9px;
   bottom: 21px;
   height: 2px;
   background: #fff;
}
.main-header .main-menu ul ul.submenu > li > a { color: rgba(255, 255, 255, .82) !important; }
.main-header .main-menu ul ul.submenu > li > a:hover { color: #fff !important; }
.main-header .main-menu ul ul.submenu { border-top: 3px solid #fff; }

/* Botão de cotação: contorno vazado; no hover preenche de branco */
.header-right-btn .btn.header-btn {
   background: transparent !important;
   color: #fff !important;
   border: 2px solid #fff !important;
   font-weight: 700;
   padding: 17px 20px;
}
.header-right-btn .btn.header-btn::before { background: #fff !important; }
.header-right-btn .btn.header-btn:hover {
   background: transparent !important;
   color: var(--qp-header) !important;
   border-color: #fff !important;
}

/* Menu mobile (slicknav): barras e itens em branco sobre o header vinho */
.mobile_menu .slicknav_menu { background: transparent; padding: 6px 0; }
.mobile_menu .slicknav_menu .slicknav_btn { background: transparent; margin: 5px 0; }
.mobile_menu .slicknav_menu .slicknav_btn .slicknav_icon-bar {
   background-color: #fff !important;
   box-shadow: none;
   width: 26px;
   height: 3px;
   border-radius: 2px;
}
.mobile_menu .slicknav_menu .slicknav_nav { background: rgba(0, 0, 0, .18); border-radius: 4px; margin-top: 6px; }
.mobile_menu .slicknav_menu .slicknav_nav a { color: rgba(255, 255, 255, .88); }
.mobile_menu .slicknav_menu .slicknav_nav a:hover { color: #fff !important; background: rgba(255, 255, 255, .1); border-radius: 3px; }
.mobile_menu .slicknav_menu .slicknav_nav .slicknav_row:hover { background: rgba(255, 255, 255, .1); border-radius: 3px; }
.mobile_menu .slicknav_menu .slicknav_nav .slicknav_arrow { color: #fff; }

/* Botão das três barras: fica ao lado do logo, centralizado na altura.
   O template usava offset fixo (top: -34px) numa coluna separada — trocado
   por flex na mesma linha do logo, que acompanha qualquer altura de header. */
@media (max-width: 991px) {
   .mobile_menu {
      position: static;
      width: auto;
      display: flex;
      align-items: center;
   }
   .mobile_menu .slicknav_menu { margin: 0 !important; padding: 0; position: static; }
   .mobile_menu .slicknav_menu .slicknav_btn {
      top: 0 !important;
      margin: 0 !important;
      float: none;
      padding: 8px 4px;
      display: flex;
      flex-direction: column;
      justify-content: center;
   }
   /* o menu aberto desce a partir da barra, sem deslocar o botão nem o logo */
   .mobile_menu .slicknav_menu .slicknav_nav {
      position: absolute;
      top: 100%;
      right: 15px;
      left: 15px;
      margin-top: 10px !important;
      padding: 10px 14px;
      background: var(--qp-header);
      border: 1px solid rgba(255, 255, 255, .16);
      border-radius: 5px;
      box-shadow: 0 12px 28px rgba(0, 0, 0, .32);
      z-index: 999;
   }
   .header-area .header-bottom .container { position: relative; }
}

/* Seletor de idioma no topo (bandeiras) */
.header-area .header-top .header-info-right .header-social li.seletor-idioma {
   margin-left: 26px;
   display: inline-flex;
   align-items: center;
   gap: 9px;
}
.header-area .header-top .header-info-right .header-social li.seletor-idioma a {
   display: inline-flex;
   padding: 0;
   line-height: 0;
   border-radius: 2px;
   overflow: hidden;
   opacity: .5;
   filter: grayscale(65%);
   transition: .25s;
   outline: 1px solid rgba(255, 255, 255, .28);
}
.header-area .header-top .header-info-right .header-social li.seletor-idioma a:hover { opacity: .85; filter: grayscale(0); }
.header-area .header-top .header-info-right .header-social li.seletor-idioma a.ativo {
   opacity: 1;
   filter: none;
   outline: 2px solid #fff;
}
.header-area .header-top .header-info-right .header-social li.seletor-idioma img { display: block; width: 24px; height: 16px; }

/* ===== Preloader (sem logo, spinner na cor da marca) ===== */
.preloader { background-color: #ffffff; }
.preloader .preloader-circle {
   width: 62px;
   height: 62px;
   border-width: 3px;
   border-top-color: var(--qp-vinho);
   border-right-color: rgba(139, 34, 38, .18);
   border-bottom-color: rgba(139, 34, 38, .18);
   border-left-color: rgba(139, 34, 38, .18);
   box-shadow: none;
}
.preloader .preloader-img { display: none; }

/* ===== Faixa de chamada (sem imagem de fundo, texto em cinza) ===== */
.faixa-cta { background: #fff; border-top: 1px solid #ececf1; }
.faixa-cta .section-tittle span { color: var(--qp-vinho) !important; }
.faixa-cta .section-tittle h2 { color: var(--qp-cinza); }
.faixa-cta .section-tittle p { color: var(--qp-cinza-claro); font-size: 16px; line-height: 28px; }

/* ===== Pares de botões (faixa de chamada e 404) ===== */
.cta-botoes {
   display: flex;
   flex-wrap: wrap;
   gap: 14px;
   justify-content: center;
}
.cta-botoes .btn {
   margin: 0;
   min-width: 232px;
   text-align: center;
}

@media (max-width: 575px) {
   .cta-botoes { flex-direction: column; align-items: stretch; }
   .cta-botoes .btn { width: 100%; min-width: 0; padding-left: 12px; padding-right: 12px; }
}

/* ===== Banner principal (home) ===== */
.slider-area .single-slider.hero-home {
   min-height: 520px;
   background-repeat: no-repeat;
   background-position: center center;
   background-size: cover;
   position: relative;
}
/* Véu escuro para o texto ficar legível sobre a foto */
.slider-area .single-slider.hero-home::before {
   content: "";
   position: absolute;
   inset: 0;
   background: linear-gradient(90deg, rgba(20, 12, 14, .78) 0%, rgba(20, 12, 14, .55) 45%, rgba(20, 12, 14, .18) 100%);
}
.slider-area .single-slider.hero-home > .container { position: relative; z-index: 2; }
.slider-area .single-slider.hero-home .hero__caption { padding-top: 0; }
.slider-area .single-slider.hero-home .hero__caption h1 { font-size: 50px; line-height: 1.14; margin-bottom: 26px; max-width: 560px; }
.slider-area .single-slider.hero-home .hero-pera p { margin-bottom: 0; }

/* Palavra em destaque com contorno branco (paint-order deixa o traço por fora,
   sem afinar a letra) */
.slider-area .single-slider.hero-home .hero__caption h1 span {
   -webkit-text-stroke: 1.5px #fff;
   paint-order: stroke fill;
}

/* Botão do rastreio no banner (o template estiliza um <a>; aqui é um <button>) */
.slider-area form.search-box .search-form button {
   width: 100%;
   height: 60px;
   background: var(--qp-vinho);
   border: none;
   font-size: 17px;
   line-height: 1.2;
   text-align: center;
   color: #fff;
   display: block;
   padding: 15px;
   text-transform: uppercase;
   font-family: "Barlow", sans-serif;
   font-weight: 600;
   letter-spacing: .5px;
   border-top-right-radius: 5px;
   border-bottom-right-radius: 5px;
   cursor: pointer;
   transition: .3s;
}
.slider-area form.search-box .search-form button:hover { background: var(--qp-vinho-escuro); }
.slider-area form.search-box .search-form button i { margin-right: 6px; font-size: 15px; }
.slider-area form.search-box { max-width: 660px; }
.slider-area form.search-box .input-form { width: 62%; }
.slider-area form.search-box .search-form { width: 38%; }

@media (max-width: 991px) {
   .slider-area .single-slider.hero-home { min-height: 440px; }
   .slider-area .single-slider.hero-home .hero__caption h1 { font-size: 40px; }
}
@media (max-width: 767px) {
   .slider-area .single-slider.hero-home { min-height: 420px; }
   .slider-area .single-slider.hero-home .hero__caption h1 { font-size: 31px; }
   .slider-area .single-slider.hero-home::before { background: rgba(20, 12, 14, .68); }
   .slider-area form.search-box .input-form,
   .slider-area form.search-box .search-form { width: 100%; }
   .slider-area form.search-box .search-form button { border-radius: 5px; }
}

/* ===== Banner das páginas internas ===== */
.slider-area .slider-height2 {
   min-height: 340px;
   background-position: center 62%;
   background-size: cover;
}
.slider-area .hero-cap h2 { font-size: 44px; line-height: 1.15; }
.slider-area .hero-cap .breadcrumb { margin-top: 12px; }
.slider-area .hero-cap .breadcrumb a,
.slider-area .hero-cap .breadcrumb .active { font-size: 15px; }
.slider-area .hero-cap .breadcrumb > .active { color: #cfcfd6; }

@media (max-width: 991px) {
   .slider-area .slider-height2 { min-height: 280px; }
   .slider-area .hero-cap h2 { font-size: 33px; }
}
@media (max-width: 767px) {
   .slider-area .slider-height2 { min-height: 240px; }
   .slider-area .hero-cap h2 { font-size: 26px; }
}

/* ===== Espaçamento das seções (o template usa 195px, alto demais) ===== */
.section-padding30 { padding-top: 95px; padding-bottom: 80px; }
.about-low-area.section-padding30 { padding-top: 95px; padding-bottom: 60px; }

@media (max-width: 991px) {
   .section-padding30 { padding-top: 65px; padding-bottom: 50px; }
}
@media (max-width: 767px) {
   .section-padding30 { padding-top: 50px; padding-bottom: 35px; }
}

/* ===== Barra de informações da home ===== */
.our-info-area .single-info .info-caption span { color: var(--qp-cinza); font-weight: 600; }
.our-info-area .single-info .info-caption span a { color: var(--qp-cinza); }
.our-info-area .single-info .info-caption span a:hover { color: var(--qp-vinho); }

/* Ilustrações das seções institucionais */
.about-img img,
.about-font-img img { max-width: 100%; height: auto; display: block; }
.about-img .about-font-img { text-align: center; }

/* ===== Cards de serviço (altura igual e ícones padronizados) ===== */
.grade-servicos > [class*="col-"] { display: flex; }
.categories-area .single-cat {
   width: 100%;
   display: flex;
   flex-direction: column;
   padding: 42px 30px 34px;
}

/* Caixa fixa do ícone: todos ocupam o mesmo espaço, independentemente do glifo */
.categories-area .single-cat .cat-icon {
   height: 66px;
   display: flex;
   align-items: center;
   justify-content: center;
   margin-bottom: 22px;
}
.categories-area .single-cat .cat-icon i,
.categories-area .single-cat .cat-icon span {
   font-size: 42px;
   line-height: 1;
   color: var(--qp-vinho);
   display: inline-block;
}

/* Título com altura reservada para 2 linhas: os textos começam na mesma altura */
.categories-area .single-cat .cat-cap { display: flex; flex-direction: column; flex: 1; }
.categories-area .single-cat .cat-cap h5,
.categories-area .single-cat .cat-cap h5 > a {
   font-size: 22px;
   font-weight: 700;
   line-height: 1.32;
   margin-bottom: 0;
}
.categories-area .single-cat .cat-cap h5 {
   min-height: 60px;
   display: flex;
   align-items: flex-start;
   justify-content: center;
   margin-bottom: 18px;
}
.categories-area .single-cat .cat-cap h5 > a { display: block; }

/* No hover o card fica vinho: ícone e textos passam a branco */
.categories-area .single-cat:hover .cat-icon i,
.categories-area .single-cat:hover .cat-icon span,
.categories-area .single-cat:hover .cat-cap h5,
.categories-area .single-cat:hover .cat-cap h5 > a { color: #fff !important; }
.categories-area .single-cat .cat-cap p {
   text-align: left;
   margin-bottom: 0;
   font-size: 15px;
   line-height: 27px;
}

@media (max-width: 1199px) {
   .categories-area .single-cat .cat-cap h5,
   .categories-area .single-cat .cat-cap h5 > a { font-size: 19px; }
   .categories-area .single-cat .cat-cap h5 { min-height: 78px; }
}
@media (max-width: 767px) {
   .grade-servicos > [class*="col-"] { display: block; }
   .categories-area .single-cat .cat-cap h5 { min-height: 0; }
}

/* ===== Página de rastreamento ===== */
.rastreio-box {
   background: #fff;
   border: 1px solid #e6e6ec;
   border-radius: 6px;
   padding: 34px 30px;
   box-shadow: 0 6px 24px rgba(0, 0, 0, .05);
}
.rastreio-box label { font-size: 14px; font-weight: 600; color: var(--qp-cinza); display: block; margin-bottom: 6px; }
.rastreio-box .form-control { height: 52px; font-size: 15px; padding: 8px 16px; }
.rastreio-box .form-group { margin-bottom: 0; }

/* Resultado */
.rastreio-resultado { margin-top: 26px; }
.rastreio-card {
   background: #fff;
   border: 1px solid #e6e6ec;
   border-radius: 6px;
   box-shadow: 0 6px 24px rgba(0, 0, 0, .05);
   overflow: hidden;
}
.rastreio-card-topo {
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 16px;
   flex-wrap: wrap;
   padding: 22px 30px;
   background: var(--qp-vinho);
   color: #fff;
}
.rastreio-card-topo .rastreio-rotulo { color: rgba(255, 255, 255, .75); }
.rastreio-awb { display: block; font-size: 25px; font-weight: 700; letter-spacing: .5px; line-height: 1.2; }

.rastreio-rotulo {
   display: block;
   font-size: 11.5px;
   font-weight: 600;
   text-transform: uppercase;
   letter-spacing: .7px;
   color: var(--qp-cinza-claro);
   margin-bottom: 4px;
}

.rastreio-status {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   font-size: 13px;
   font-weight: 700;
   text-transform: uppercase;
   letter-spacing: .6px;
   padding: 9px 18px;
   border-radius: 40px;
   background: rgba(255, 255, 255, .16);
   color: #fff;
}
.rastreio-status.entregue { background: #2e9e52; }
.rastreio-status.transito { background: #1f6dbf; }

.rastreio-dados {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 26px 30px;
   padding: 30px;
}
.rastreio-dado.largo { grid-column: 1 / -1; }
.rastreio-dado strong { font-size: 15.5px; color: var(--qp-cinza); font-weight: 600; line-height: 1.45; display: block; }

/* Linha do tempo das ocorrências */
.rastreio-linha-tempo { list-style: none; margin: 0; padding: 30px 30px 12px; }
.rastreio-linha-tempo li {
   position: relative;
   padding: 0 0 24px 30px;
   border-left: 2px solid #e6e6ec;
}
.rastreio-linha-tempo li:last-child { border-left-color: transparent; padding-bottom: 8px; }
.rastreio-linha-tempo li::before {
   content: "";
   position: absolute;
   left: -8px;
   top: 3px;
   width: 14px;
   height: 14px;
   border-radius: 50%;
   background: #fff;
   border: 3px solid #d6d6de;
}
.rastreio-linha-tempo li.atual::before { border-color: var(--qp-vinho); box-shadow: 0 0 0 4px rgba(139, 34, 38, .13); }
.rastreio-linha-tempo .rastreio-data {
   display: block;
   font-size: 12.5px;
   color: var(--qp-cinza-claro);
   margin-bottom: 3px;
}
.rastreio-linha-tempo .rastreio-evento { font-size: 15.5px; color: var(--qp-cinza); font-weight: 600; line-height: 1.45; }
.rastreio-linha-tempo li.atual .rastreio-evento { color: var(--qp-vinho); }

.rastreio-atualizacao {
   font-size: 12.5px;
   color: var(--qp-cinza-claro);
   margin: 0;
   padding: 14px 30px;
   border-top: 1px solid #eeeef3;
   background: #fafafc;
}

.rastreio-aviso {
   background: #fdf2f2;
   border-left: 4px solid var(--qp-vinho);
   padding: 18px 22px;
   color: var(--qp-vinho-escuro);
   border-radius: 4px;
   line-height: 25px;
}
.rastreio-aviso a { color: var(--qp-vinho-escuro); font-weight: 700; }

@media (max-width: 991px) {
   .rastreio-dados { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 575px) {
   .rastreio-dados { grid-template-columns: 1fr; padding: 24px 20px; }
   .rastreio-card-topo { padding: 18px 20px; }
   .rastreio-linha-tempo { padding: 24px 20px 8px; }
   .rastreio-atualizacao { padding: 12px 20px; }
}

/* ===== Formulários (cotação, coleta, ouvidoria, contato) ===== */
.form-qpair { background: #fff; padding: 40px 38px; border-radius: 6px; box-shadow: 0 6px 24px rgba(0, 0, 0, .05); }
.form-qpair .form-grupo-titulo {
   font-size: 17px;
   font-weight: 700;
   color: var(--qp-vinho);
   border-bottom: 2px solid #eee;
   padding-bottom: 10px;
   margin: 12px 0 24px;
}
.form-qpair label { font-size: 14px; font-weight: 600; color: var(--qp-cinza); margin-bottom: 6px; display: block; }
.form-qpair label .obrig { color: var(--qp-vinho); }
/* ===== Campos de formulário (borda cinza em todo o site) ===== */
.form-qpair .form-control,
.rastreio-box .form-control,
.form-qpair select,
.form-qpair input[type="text"],
.form-qpair input[type="email"],
.form-qpair input[type="tel"],
.form-qpair input[type="number"],
.form-qpair textarea,
.questionario-item textarea,
.questionario-item input[type="text"] {
   height: 48px;
   border: 1px solid #c3c3cd;
   border-radius: 4px;
   font-size: 14.5px;
   padding: 8px 14px;
   width: 100%;
   background: #fff;
   color: #1b1b1b;
   transition: border-color .2s, box-shadow .2s;
   appearance: none;
   -webkit-appearance: none;
}

.form-qpair textarea,
.form-qpair textarea.form-control,
.questionario-item textarea { height: auto; padding: 12px 14px; line-height: 24px; }

/* Seta própria do select (o appearance foi removido para padronizar a borda) */
.form-qpair select,
.form-qpair select.form-control {
   background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%236b7280' d='M1.4 0 6 4.6 10.6 0 12 1.4 6 7.4 0 1.4Z'/%3E%3C/svg%3E");
   background-repeat: no-repeat;
   background-position: right 14px center;
   padding-right: 36px;
   cursor: pointer;
}

.form-qpair .form-control:hover,
.rastreio-box .form-control:hover,
.form-qpair select:hover,
.form-qpair textarea:hover { border-color: #9a9aa8; }

.form-qpair .form-control:focus,
.rastreio-box .form-control:focus,
.form-qpair select:focus,
.form-qpair textarea:focus,
.questionario-item textarea:focus {
   border-color: var(--qp-vinho);
   outline: none;
   box-shadow: 0 0 0 3px rgba(139, 34, 38, .11);
}

.form-qpair .form-control::placeholder,
.rastreio-box .form-control::placeholder,
.form-qpair textarea::placeholder { color: #9a9aa8; }

/* Dica ao lado do rótulo (ex.: CEP) */
.form-qpair label .dica {
   font-weight: 400;
   font-size: 12px;
   color: var(--qp-cinza-claro);
   margin-left: 6px;
}
@media (max-width: 1199px) {
   .form-qpair label .dica { display: block; margin-left: 0; margin-top: 2px; }
}

/* Bloco final: captcha e botão de envio lado a lado, alinhados pelo centro */
.form-envio {
   display: flex;
   align-items: center;
   flex-wrap: wrap;
   gap: 20px;
}
.form-envio .btn { margin: 0; }
.form-envio .g-recaptcha { line-height: 0; }

@media (max-width: 575px) {
   .form-envio { gap: 16px; }
   .form-envio .btn { width: 100%; }
}

/* Aviso da busca de CEP */
.cep-aviso {
   display: block;
   margin-top: 6px;
   font-size: 12.5px;
   font-weight: 500;
   line-height: 1.4;
   min-height: 17px;
}
.cep-aviso.carregando { color: var(--qp-cinza-claro); }
.cep-aviso.carregando::before {
   content: "";
   display: inline-block;
   width: 11px;
   height: 11px;
   margin-right: 6px;
   border: 2px solid #c3c3cd;
   border-top-color: var(--qp-vinho);
   border-radius: 50%;
   vertical-align: -1px;
   animation: qpGira .7s linear infinite;
}
.cep-aviso.ok { color: #2e9e52; }
.cep-aviso.erro { color: var(--qp-vinho); }

@keyframes qpGira { to { transform: rotate(360deg); } }

/* Caixas de seleção e opções na cor da marca */
.form-qpair input[type="checkbox"],
.form-qpair input[type="radio"],
.questionario-item input[type="radio"] { accent-color: var(--qp-vinho); width: 16px; height: 16px; }
.form-qpair .form-group { margin-bottom: 20px; }
.form-qpair .aceite { font-size: 13.5px; font-weight: 400; color: var(--qp-cinza-claro); display: flex; gap: 9px; align-items: flex-start; }
.form-qpair .aceite input { margin-top: 3px; }
.form-qpair .aceite a { color: var(--qp-vinho); text-decoration: underline; }

.form-aviso { padding: 16px 20px; border-radius: 4px; margin-bottom: 26px; font-size: 15px; }
.form-aviso.ok { background: #eaf7ee; border-left: 4px solid #2e9e52; color: #1d6b37; }
.form-aviso.erro { background: #fdf2f2; border-left: 4px solid var(--qp-vinho); color: var(--qp-vinho-escuro); }

/* ===== Blocos de conteúdo (empresa, informações, legais) ===== */
.conteudo-texto { color: #1b1b1b; font-size: 16px; line-height: 30px; }
.conteudo-texto p { margin-bottom: 18px; text-align: justify; color: #1b1b1b; }
.conteudo-texto li { color: #1b1b1b; }
/* O template define .about-low-area .about-caption p em cinza claro — mais específico */
.about-low-area .about-caption .conteudo-texto p,
.about-low-area .about-caption .conteudo-texto li {
   color: #1b1b1b;
   line-height: 30px;
   margin-bottom: 18px;
   padding-right: 0;
}
.conteudo-texto h3 {
   font-size: 21px;
   color: #000;
   margin: 34px 0 16px;
   padding-left: 14px;
   border-left: 4px solid var(--qp-vinho);
}
.conteudo-texto ul { padding-left: 20px; margin-bottom: 20px; }
.conteudo-texto ul li { list-style: disc; margin-bottom: 9px; }
.conteudo-texto a { color: var(--qp-vinho); text-decoration: underline; }

/* Lista de documentos das informações importantes */
.lista-documentos { margin-top: 10px; }
.lista-documentos a {
   display: flex;
   align-items: center;
   gap: 14px;
   background: #fff;
   border: 1px solid #e6e6ec;
   border-left: 4px solid var(--qp-vinho);
   border-radius: 4px;
   padding: 18px 22px;
   margin-bottom: 14px;
   color: var(--qp-cinza);
   font-weight: 600;
   font-size: 16px;
   transition: .3s;
}
.lista-documentos a:hover { background: var(--qp-vinho); color: #fff; border-color: var(--qp-vinho); }
.lista-documentos a i { font-size: 19px; }

/* Aviso de itens proibidos */
.aviso-proibido {
   background: #fdf2f2;
   border: 1px solid #f0d4d4;
   border-left: 5px solid var(--qp-vinho);
   padding: 24px 28px;
   border-radius: 4px;
   color: var(--qp-vinho-escuro);
   font-size: 16px;
   line-height: 28px;
}

/* ===== Questionário de satisfação ===== */
.questionario-item { background: #fff; border: 1px solid #e9e9ef; border-radius: 5px; padding: 24px 26px; margin-bottom: 20px; }
.questionario-item .pergunta { font-weight: 700; color: var(--qp-cinza); font-size: 16px; margin-bottom: 6px; }
.questionario-item .ajuda { font-size: 13.5px; color: var(--qp-cinza-claro); margin-bottom: 16px; display: block; }
.questionario-item .opcoes { display: flex; flex-wrap: wrap; gap: 22px; }
.questionario-item .opcoes label { font-weight: 400; font-size: 15px; color: #555; display: flex; align-items: center; gap: 7px; margin: 0; }

/* ===== Rodapé ===== */
.footer-area .footer-top .single-footer-caption .footer-tittle ul.footer-contato li {
   color: #b7b7c2;
   font-size: 14px;
   line-height: 23px;
   margin-bottom: 13px;
   display: flex;
   gap: 10px;
}
.footer-area .footer-top .single-footer-caption .footer-tittle ul.footer-contato li i { color: var(--qp-vinho-claro); margin-top: 4px; }
.footer-area .footer-top .single-footer-caption .footer-tittle ul.footer-contato li a { color: #b7b7c2; }
/* Rodapé mais compacto (o template usa 105px/50px) */
.footer-area .footer-top.footer-padding { padding-top: 58px; padding-bottom: 10px; }
.footer-area .footer-top .single-footer-caption { margin-bottom: 26px !important; }
.footer-area .footer-top .single-footer-caption .footer-tittle h4 { font-size: 16px; margin-bottom: 20px; }
.footer-area .footer-top .single-footer-caption .footer-tittle ul li { margin-bottom: 9px; font-size: 14.5px; }
.footer-area .footer-top .single-footer-caption .footer-pera p.info1 { font-size: 13.5px; line-height: 23px; margin-bottom: 0; }
.footer-area .footer-bottom { padding-top: 16px; padding-bottom: 26px; }
.footer-area .footer-bottom .footer-copy-right p { font-size: 14px; line-height: 1.7; margin-bottom: 6px; }
.footer-social { margin-top: 16px; }
.footer-area .footer-bottom .footer-copy-right p i { color: inherit; font-size: 12px; }

/* O template capitaliza tudo — atrapalha e-mail e siglas */
.footer-area .footer-top .single-footer-caption .footer-tittle ul li { text-transform: none; }
.footer-area .footer-bottom .footer-copy-right p.links-legais { margin-top: 12px; font-size: 13.5px; }
.footer-area .footer-bottom .footer-copy-right p.links-legais a { margin: 0 10px; color: #b7b7c2 !important; }
.footer-area .footer-bottom .footer-copy-right p.links-legais a:hover { color: #fff !important; }
.footer-area .footer-heading .contact-number { font-size: 26px; font-weight: 700; }

/* ===== WhatsApp flutuante ===== */
.whatsapp-flutuante {
   position: fixed;
   right: 24px;
   bottom: 96px;
   width: 56px;
   height: 56px;
   background: #25d366;
   color: #fff;
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 29px;
   z-index: 1000;
   box-shadow: 0 4px 14px rgba(0, 0, 0, .25);
   transition: .3s;
}
.whatsapp-flutuante:hover { background: #1eb955; color: #fff; transform: scale(1.06); }

/* ===== Banner de cookies ===== */
.cookie-banner {
   position: fixed;
   left: 0;
   right: 0;
   bottom: 0;
   background: #ffffff;
   border-top: 3px solid var(--qp-vinho);
   box-shadow: 0 -4px 22px rgba(0, 0, 0, .13);
   padding: 20px 26px;
   z-index: 2000;
   display: flex;
   flex-wrap: wrap;
   gap: 18px;
   align-items: center;
   justify-content: space-between;
}
.cookie-banner .cookie-texto { flex: 1 1 440px; }
.cookie-banner p { margin: 0; font-size: 14px; color: #4b4b55; line-height: 22px; }
.cookie-banner a { color: var(--qp-vinho); text-decoration: underline; }
.cookie-opcao { display: block; font-size: 13.5px; color: #4b4b55; margin-top: 9px; }
.cookie-opcao input { margin-right: 8px; }
.cookie-acoes { display: flex; gap: 10px; flex-wrap: wrap; }
.cookie-btn {
   border: 1px solid var(--qp-vinho);
   background: #fff;
   color: var(--qp-vinho);
   padding: 9px 20px;
   border-radius: 3px;
   font-size: 13.5px;
   font-weight: 600;
   cursor: pointer;
   transition: .25s;
}
.cookie-btn:hover { background: #f7eaea; }
.cookie-btn-cheio { background: var(--qp-vinho); color: #fff; }
.cookie-btn-cheio:hover { background: var(--qp-vinho-escuro); color: #fff; }

/* ===== Página 404 ===== */
.erro-404 { text-align: center; padding: 110px 0; }
.erro-404 h1 { font-size: 92px; color: var(--qp-vinho); font-weight: 700; line-height: 1; }
.erro-404 h2 { font-size: 27px; color: var(--qp-cinza); margin: 18px 0 14px; }
.erro-404 p { color: var(--qp-cinza-claro); margin-bottom: 30px; }

/* ===== Ajustes gerais ===== */
.section-padding-md { padding: 80px 0; }
.bg-claro { background: var(--qp-fundo); }
.mapa-contato iframe { width: 100%; height: 420px; border: 0; display: block; border-radius: 6px; }

@media (max-width: 767px) {
   .form-qpair { padding: 26px 20px; }
   .cookie-banner { padding: 16px 18px; }
   .whatsapp-flutuante { right: 16px; bottom: 82px; width: 50px; height: 50px; font-size: 26px; }
   .erro-404 h1 { font-size: 66px; }
   .rastreio-resultado { overflow-x: auto; }
}
