/*
Theme Name: Culturelle
Theme URI: https://culturelle.com.br
Description: Tema filho baseado no Hello Elementor para Culturelle
Author: Victor
Template: hello-elementor
Version: 1.0
*/

:root {
  --swiper-pagination-bullet-horizontal-gap: 2px;
  --swiper-pagination-bullet-vertical-gap: 2px;
  --primary: var(--e-global-color-primary, #25A84A);
  --e-n-carousel-dots-normal-color: var(--primary);
  --container-max-width: var(--content-width, 1248px);
}

body {
  font-family: "Igna Sans", sans-serif;
  color: #495057;
  background-color: #FFFFFF;
  font-size: 1rem;
}

a {
  color: var(--primary);
}

ul, ol {
  margin-bottom: 1rem;
}

[type=button],
[type=submit],
button {
  color: var(--primary);
  border-color: var(--primary);
}

[type=button]:focus,
[type=button]:hover,
[type=submit]:focus,
[type=submit]:hover,
button:focus,
button:hover {
  background-color: var(--primary);
}

.collapse {
  max-height: 0;
  overflow: hidden;
  /* Esconde o conteúdo que não cabe */
  transition: max-height 0.3s ease-in-out;
}

/* Desativa o colapso dentro do editor do Elementor */
.elementor-editor-active .collapse {
  max-height: none !important;
  overflow: visible !important;
}

.wp-child-theme-culturelle .elementor-swiper-button {
    width: 32px;
    height: 32px;
    line-height: 32px;
    background-color: #FAFAFA;
    border-radius: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.wp-child-theme-culturelle .elementor-nav-menu .has-submenu:hover .sub-arrow::before,
.wp-child-theme-culturelle .elementor-nav-menu .has-submenu.highlighted .sub-arrow::before {
  transform: rotate(180deg);
  /* Rotaciona o ícone 180 graus */
}

.wp-child-theme-culturelle .elementor-nav-menu .sub-arrow::before {
  content: '';
  display: inline-block;
  background-image: url(data:image/svg+xml,%3Csvg%20width%3D%2211%22%20height%3D%227%22%20viewBox%3D%220%200%2011%207%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M10.854%201.35378L5.85403%206.35378C5.80759%206.40027%205.75245%206.43715%205.69175%206.46231C5.63105%206.48748%205.56599%206.50043%205.50028%206.50043C5.43457%206.50043%205.36951%206.48748%205.30881%206.46231C5.24811%206.43715%205.19296%206.40027%205.14653%206.35378L0.146528%201.35378C0.0527077%201.25996%200%201.13272%200%201.00003C0%200.867352%200.0527077%200.740104%200.146528%200.646284C0.240348%200.552463%200.367596%200.499756%200.500278%200.499756C0.63296%200.499756%200.760208%200.552463%200.854028%200.646284L5.50028%205.29316L10.1465%200.646284C10.193%200.599829%2010.2481%200.562978%2010.3088%200.537837C10.3695%200.512696%2010.4346%200.499756%2010.5003%200.499756C10.566%200.499756%2010.631%200.512696%2010.6917%200.537837C10.7524%200.562978%2010.8076%200.599829%2010.854%200.646284C10.9005%200.692739%2010.9373%200.747889%2010.9625%200.808586C10.9876%200.869282%2011.0006%200.934336%2011.0006%201.00003C11.0006%201.06573%2010.9876%201.13079%2010.9625%201.19148C10.9373%201.25218%2010.9005%201.30733%2010.854%201.35378Z%22%20fill%3D%22%2325A84A%22%2F%3E%3C%2Fsvg%3E);
  width: 11px;
  height: 7px;
  cursor: pointer;
  transition: transform 0.3s ease;
  /* Adicionando transição para a rotação */
}

.wp-child-theme-culturelle .elementor-nav-menu .sub-arrow .e-font-icon-svg.fa-svg-chevron-down {
  display: none;
}

.wp-child-theme-culturelle [class*="elementor"] .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  border-radius: 4px;
  transition: width 0.3s ease;
  /* A transição suave para o width */
}

.wp-child-theme-culturelle [class*="elementor"] .swiper-pagination-bullet-active {
  background: var(--primary);
  width: 16px !important;
}

.wp-child-theme-culturelle .elementor-menu-toggle {
  padding: 0;
}

.wp-child-theme-culturelle span.elementor-menu-toggle__icon--open {
  line-height: 0;
}

/* -----------------------------
   PLACEHOLDER + BOTÃO SUBMIT
------------------------------*/

/* Deixa a cor do placeholder visível */
.wp-child-theme-culturelle .elementor-field-group .elementor-field-textual::placeholder {
  opacity: 1;
}

/* Botão submit full width no mobile */
.wp-child-theme-culturelle .elementor-field-group .elementor-button[type="submit"] {
  width: 100%;
}

/* Botão com largura fixa no desktop */
@media (min-width: 992px) {
  .wp-child-theme-culturelle .elementor-field-group .elementor-button[type="submit"] {
    width: 396px;
  }
}

/* -----------------------------
   GRUPO DE OPÇÕES
------------------------------*/

/* Espaçamento entre opções (radio/checkbox) */
.wp-child-theme-culturelle .elementor-field-subgroup {
  column-gap: 32px;
  row-gap: 16px;
}

/* Esconde input original (radio e checkbox) */
.wp-child-theme-culturelle .elementor-field-option input[type="radio"],
.wp-child-theme-culturelle .elementor-field-option input[type="checkbox"] {
  opacity: 0;
  position: absolute;
  width: 1px;
  height: 1px;
}

/* Cursor e alinhamento do label */
.wp-child-theme-culturelle .elementor-field-subgroup .elementor-field-option input[type="radio"]+label,
.wp-child-theme-culturelle .elementor-field-subgroup .elementor-field-option input[type="checkbox"]+label {
  cursor: pointer;
  position: relative;
  display: flex;
  align-items: center;
}

.wp-child-theme-culturelle .elementor-field-subgroup .elementor-field-option input[type="checkbox"]+label {
  padding-left: 34px;
  display: inline-block;
  line-height: 1.4;
}

/* Estilo base para o pseudo-elemento do input customizado */
.wp-child-theme-culturelle .elementor-field-subgroup .elementor-field-option input[type="radio"]+label::before,
.wp-child-theme-culturelle .elementor-field-subgroup .elementor-field-option input[type="checkbox"]+label::before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  margin-right: 10px;

  border: 2px solid var(--e-global-color-primary);
  background-color: transparent;
  transition: all 0.2s ease-in-out;
}

/* Estilo exclusivo do radio: círculo */
.wp-child-theme-culturelle .elementor-field-subgroup .elementor-field-option input[type="radio"]+label::before {
  border-radius: 50%;
}

/* Estilo exclusivo do checkbox: quadrado */
.wp-child-theme-culturelle .elementor-field-subgroup .elementor-field-option input[type="checkbox"]+label::before {
  border-radius: 2px;
  position: absolute;
  left: 0;
}

/* RADIO MARCADO */
.wp-child-theme-culturelle .elementor-field-option input[type="radio"]:checked+label::before {
  border-color: var(--e-global-color-primary);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2325A84A'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}

/* CHECKBOX MARCADO */
.wp-child-theme-culturelle .elementor-field-option input[type="checkbox"]:checked+label::before {
  border-color: var(--e-global-color-primary);
  background-color: var(--e-global-color-primary);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

/* Foco visível para acessibilidade */
.wp-child-theme-culturelle .elementor-field-option input[type="radio"]:focus-visible+label::before,
.wp-child-theme-culturelle .elementor-field-option input[type="checkbox"]:focus-visible+label::before {
  outline: 2px solid var(--e-global-color-primary);
  outline-offset: 2px;
}

/* Select */
.wp-child-theme-culturelle .elementor-field-group .select-caret-down-wrapper svg {
  display: none;
}

.wp-child-theme-culturelle .elementor-field-group .select-caret-down-wrapper::before {
  content: "";
  display: flex;
  width: 24px;
  height: 24px;
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.031 9.53068L12.531 17.0307C12.4614 17.1004 12.3787 17.1557 12.2876 17.1935C12.1966 17.2312 12.099 17.2506 12.0004 17.2506C11.9019 17.2506 11.8043 17.2312 11.7132 17.1935C11.6222 17.1557 11.5394 17.1004 11.4698 17.0307L3.96979 9.53068C3.82906 9.38995 3.75 9.19907 3.75 9.00005C3.75 8.80103 3.82906 8.61016 3.96979 8.46943C4.11052 8.32869 4.30139 8.24963 4.50042 8.24963C4.69944 8.24963 4.89031 8.32869 5.03104 8.46943L12.0004 15.4397L18.9698 8.46943C19.0395 8.39974 19.1222 8.34447 19.2132 8.30676C19.3043 8.26904 19.4019 8.24963 19.5004 8.24963C19.599 8.24963 19.6965 8.26904 19.7876 8.30676C19.8786 8.34447 19.9614 8.39974 20.031 8.46943C20.1007 8.53911 20.156 8.62183 20.1937 8.71288C20.2314 8.80392 20.2508 8.9015 20.2508 9.00005C20.2508 9.0986 20.2314 9.19618 20.1937 9.28722C20.156 9.37827 20.1007 9.46099 20.031 9.53068Z' fill='%2325A84A'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
}

/* .wp-child-theme-culturelle .elementor-field-group .select-caret-down-wrapper {
  right: 30px;
} */

/* Theme CSS*/
body:not([class*=elementor-page-]) .site-main {
  padding-top: 35px;
  padding-bottom: 35px;
}

@media(min-width: 1200px) {
  .page-header .entry-title,
  .site-footer .footer-inner,
  .site-footer:not(.dynamic-footer),
  .site-header .header-inner,
  .site-header:not(.dynamic-header),
  body:not([class*=elementor-page-]) .site-main {
    max-width: var(--container-max-width);
  }
}

/* Produto */