@import url("https://fonts.googleapis.com/css2?family=Dancing+Script:wght@400;500;600;700&family=Open+Sans:wght@400;600;700&display=swap");
/* @import url("https://fonts.googleapis.com/css2?family=Dancing+Script:wght@400;500;600;700&family=Open+Sans:wght@400;600;700&display=swap"); TAN meringue */

/* 2. Add your local TAN Meringue Font */
@font-face {
    font-family: 'TAN Meringue';
    /* Adjust path based on your static folder structure */
    src: url('../fonts/TAN-MERINGUE.otf') format('opentype'),
         url('../fonts/TAN-MERINGUE.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

body {
  font-family: "Open Sans", sans-serif;
  color: #0c0c0c;
  background-color: #ffffff;
  overflow-x: hidden;
}

.layout_padding {
  padding: 90px 0;
}

.layout_padding2 {
  padding: 75px 0;
}

.layout_padding2-top {
  padding-top: 75px;
}

.layout_padding2-bottom {
  padding-bottom: 75px;
}

.layout_padding-top {
  padding-top: 90px;
}

.layout_padding-bottom {
  padding-bottom: 90px;
}

h1,
h2 {
  font-family: 'TAN Meringue', cursive;
}

.heading_container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
    color: #c88e9a;

}

.heading_container h2 {
  position: relative;
  margin-bottom: 0;
  font-size: 2.5rem;
  font-weight: bold;
}

.heading_container h2 span {
  color: #fa7d09;
}

.heading_container p {
  margin-top: 10px;
  margin-bottom: 0;
}

.heading_container.heading_center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
}

a,
a:hover,
a:focus {
  text-decoration: none;
}

a:hover,
a:focus {
  color: initial;
}

.btn,
.btn:focus {
  outline: none !important;
  -webkit-box-shadow: none;
          box-shadow: none;
}

/*header section*/
.hero_area {
  position: relative;
  min-height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  background-color: #f2bfc5;
}

.sub_page .hero_area {
  min-height: auto;
}

.sub_page .hero_area .hero_bg_box {
  display: none;
}

.header_section {
  padding: 15px 0;
}

/* margarita logo navbar */
.nav-logo {
    /* Set the height to fit your navbar (usually 30px to 50px) */
    height: 50px;
    width: auto;
    
    /* Ensures the image doesn't get distorted */
    object-fit: contain;
    
    /* Optional: adds a little breathing room around the logo */
    /* vertical-align: middle;
    padding: 5px 0; */

    /* The higher the pixel value, the rounder the corners */
    border-radius: 50px; 
    /* Optional: adds a subtle border to define the edges */
    /* border: 2px solid #ffffff; */
}

.header_section .container-fluid {
  padding-right: 25px;
  padding-left: 25px;
}

.navbar-brand {
  font-family: 'TAN Meringue', cursive;
}

.navbar-brand span {
  font-weight: bold;
  font-size: 22px; /*32px*/
  color: #c88e9a;
}

.custom_nav-container {
  padding: 0;
}

.custom_nav-container .navbar-nav {
  margin-left: auto;
}

.custom_nav-container .navbar-nav .nav-item .nav-link {
  padding: 5px 20px;
  color: #c88e9aff;
  text-align: center;
  text-transform: uppercase;
  border-radius: 5px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.custom_nav-container .navbar-nav .nav-item .nav-link svg {
  width: 17px;
  height: auto;
  fill: #c88e9a;
  margin-bottom: 2px;
}

.custom_nav-container .navbar-nav .nav-item:hover .nav-link, .custom_nav-container .navbar-nav .nav-item.active .nav-link {
  color: #ffffff;
}

.custom_nav-container .navbar-nav .nav-item:hover .nav-link svg, .custom_nav-container .navbar-nav .nav-item.active .nav-link svg {
  fill: #ffffff;
}

.custom_nav-container .nav_search-btn {
  width: 35px;
  height: 35px;
  padding: 0;
  border: none;
  color: #c88e9a;
}

.custom_nav-container .nav_search-btn:hover {
  color: #ffffff;
}

.custom_nav-container .navbar-toggler {
  outline: none;
}

.custom_nav-container .navbar-toggler {
  padding: 0;
  width: 37px;
  height: 42px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.custom_nav-container .navbar-toggler span {
  display: block;
  width: 35px;
  height: 4px;
  background-color: #ffffff;
  margin: 7px 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  position: relative;
  border-radius: 5px;
  transition: all 0.3s;
}

.custom_nav-container .navbar-toggler span::before, .custom_nav-container .navbar-toggler span::after {
  content: "";
  position: absolute;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: #ffffff;
  top: -10px;
  border-radius: 5px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.custom_nav-container .navbar-toggler span::after {
  top: 10px;
}

.custom_nav-container .navbar-toggler[aria-expanded="true"] {
  -webkit-transform: rotate(360deg);
          transform: rotate(360deg);
}

.custom_nav-container .navbar-toggler[aria-expanded="true"] span {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.custom_nav-container .navbar-toggler[aria-expanded="true"] span::before, .custom_nav-container .navbar-toggler[aria-expanded="true"] span::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  top: 0;
}

/* Language Selector Wrapper */
.lang-selector-container {
    display: flex;
    align-items: center;
    margin-left: 15px; /* Space it away from other nav items */
}

.lang-selector-container i {
  color: #c88e9a;
}

/* Default Globe Style */
.nav-globe {
    color: #c88e9a; /* Matches your navbar text */
    margin-right: 8px;
    font-size: 16px;
    transition: color 0.3s ease;
}

/* Change globe color to your theme orange on hover */
/* .lang-selector-container:hover .nav-globe {
    color: #ffffff;
} */

/* The Select Box itself */
.custom-lang-select {
    background-color: transparent;
    color: #c88e9a;
    border: 1px solid rgba(255, 255, 255, 0.5);
    padding: 5px 10px;
    border-radius: 5px;
    font-size: 14px;
    text-transform: uppercase;
    cursor: pointer;
    outline: none;
    transition: all 0.3s;
    appearance: none; /* Removes default browser arrow */
    -webkit-appearance: none;
    -moz-appearance: none;
}

/* Hover effect to match your orange theme */
.custom-lang-select:hover {
    border-color: #ffffff;
    color: #ffffff;
}

/* Styling the dropdown options */
.custom-lang-select option {
    background-color: #c88e9a; /* Matches your footer/pink theme */
    color: #ffffff;
    padding: 10px;
}

/*end header section*/
/* slider section */
.slider_section {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  padding: 45px 0 75px 0;
  background-color: #fff4ed;
}

.slider_section .row {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.slider_section #customCarousel1 {
  width: 100%;
  position: unset;
}

.slider_section .detail-box {
  color: #c88e9a;
}

.slider_section .detail-box h1 {
  font-size: 3.0rem; /*3.5rem*/
  font-weight: bold;
  margin-bottom: 15px;
}

.slider_section .detail-box p {
  font-size: 14px;
}

.slider_section .detail-box a {
  display: inline-block;
  padding: 10px 45px;
  background-color: #ffffff;
  color: #c88e9a;
  margin-top: 10px;
  border: 2px solid #c88e9a;
  border-radius: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;

}

.slider_section .detail-box a:hover {
  background-color: #c88e9a;
  color: #ffffff;
}

.slider_section .carousel-item {
    min-height: 450px; 
    height: auto; /* Permite que o conteúdo cresça se necessário */
    padding-bottom: 30px;
}

/* Ensure the text and image containers align vertically */
.slider_section .row {
    height: 100%;
    align-items: center; 
}

/* Style the image container */
/* 2. Ajuste do contentor da imagem */
.slider_section .img-box {
    height: 400px; 
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    margin-top: 20px; /* Espaço extra para não colar no texto no mobile */
}

/* 3. MEDIA QUERY PARA MOBILE (O segredo da correção) */
@media (max-width: 767px) {
    .slider_section {
        padding: 20px 0 40px 0;
    }

    .slider_section .carousel-item {
        min-height: auto; /* Liberta a altura no mobile */
    }

    .slider_section .detail-box {
        text-align: center;
        margin-bottom: 30px;
    }

    .slider_section .detail-box h1 {
        font-size: 2rem; /* Título mais pequeno para ecrãs pequenos */
    }

    .slider_section .img-box {
        height: 280px; /* Reduzimos a altura da imagem no mobile para caber no ecrã */
        margin-top: 0;
    }
    
    /* Garante que a imagem não tente ser maior que o ecrã */
    .slider_section .img-box img {
        width: auto;
        max-height: 100%;
    }
}

.slider_section .img-box img {
    max-width: 100%;
    max-height: 100%;
    /* 'contain' keeps the whole cake visible regardless of aspect ratio */
    object-fit: contain; 
    /* 'transition' makes it feel premium when sliding */
    transition: transform 0.3s ease;
}

/* .slider_section .img-box img {
  width: 100%;
} */

.slider_section .carousel-indicators {
  position: unset;
  margin: 0;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.slider_section .carousel-indicators li {
  background-color: #ffffff;
  width: 12px;
  height: 12px;
  border-radius: 100%;
  opacity: 1;
}

.slider_section .carousel-indicators li.active {
  width: 20px;
  height: 20px;
  background-color: #c88e9a;
}

.cat_section {
  padding-top: 45px;
}

.cat_section .box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  margin-top: 45px;
}

.cat_section .box .img-box img {
  width: 100%;
  border-radius: 100%;
}

.detail-box {
  color: #c88e9a;

}

.cat_section .box .detail-box {
  margin-top: 15px;
}

.cat_section .box .detail-box h5 {
  margin: 0;
  font-weight: bold;
  font-size: 28px;
  font-family: 'TAN Meringue', cursive;
}

.about_section .heading_container {
  margin-bottom: 15px;
}

.about_section .row {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

/* .about_section .img-box img {
  max-width: 80%;
  border-radius: 50%;
} */

.about_section {
  background-color: #f3d4d8;
}

/* --- Seção About Otimizada --- */

.about_section .img-box {
  position: relative;
  /* Em vez de width fixo, usamos max-width e aspect-ratio */
  width: 100%;
  max-width: 380px; 
  aspect-ratio: 1 / 1; /* Garante que seja sempre um quadrado perfeito */
  margin: 0 auto;      /* Centra a imagem na coluna */
  overflow: hidden;
  border-radius: 50%;
  border: 8px solid #f2bfc5; /* Borda pastel da Margarita Bake */
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

.about_section .img-box img {
  width: 100%;
  height: 100%;
  /* O segredo para não cortar a Karla de forma estranha: */
  object-fit: cover; 
  object-position: center; /* Mantém o rosto centrado */
  display: block;
}

/* --- Ajustes para Mobile --- */
@media (max-width: 767px) {
  .about_section .img-box {
    max-width: 280px; /* Reduz o tamanho no telemóvel para não ocupar o ecrã todo */
    margin-bottom: 30px;
  }
  
  .about_section .detail-box {
    text-align: center; /* Centra o texto no mobile para um look mais limpo */
  }
}


.about_section .detail-box h3 {
  font-weight: bold;
}

.about_section .detail-box p {
  margin-top: 15px;
}

.about_section .detail-box a {
  display: inline-block;
  padding: 10px 45px;
  background-color: #ffffff;
  color: #c88e9a;
  margin-top: 10px;
  border: 2px solid #c88e9a;
  border-radius: 0px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  margin-top: 15px;
}

.about_section .detail-box a:hover {
  background-color: #b35804;
}

.product_section {
  background-color: #fff4ed;
  color: #c88e9a;
}

.product_section .heading_container {
  margin-bottom: 20px;
}

.product_section .box {
  position: relative;
  margin-top: 25px;
  padding: 15px;
  background-color: #ffffff;
  border-radius: 10px;
}

.product_section .box .img-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 215px;
}

.product_section .box .img-box img {
  max-width: 100%;
  max-height: 145px;
}

/* Ensure the category row aligns height properly */
.align-items-stretch {
    display: flex;
    flex-wrap: wrap;
}

/* Category-specific box adjustments */
.category-identity-box {
    background-color: #f2bfc5;
    border-radius: 10px;
    padding: 20px;
    margin-top: 25px; /* Matches your existing .box margin-top */
}

/* Fix for nested rows to remove extra spacing */
.product_section .col-md-9 .row {
    margin-top: 0;
}

/* Make sure the badges match your pink theme */
.badge-info {
    background-color: #c88e9a;
    font-weight: 400;
    padding: 5px 10px;
}

/* Ensure images inside product boxes fit properly */
.product_section .box .img-box img {
    object-fit: contain;
    width: 100%;
    height: 100%;
}

.categories-box {
  font-family: 'TAN Meringue', cursive; color: #c88e9a;
}

.product_section .box .detail-box {
  text-align: center;
}

.product_section .box .detail-box a {
  color: #000000;
  font-weight: 600;
  font-size: 18px;
}

.product_section .box .detail-box h6 {
  margin-top: 10px;
  color: #000000;
}

.product_section .btn-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 45px;
}

.product_section .btn-box a {
  display: inline-block;
  padding: 10px 40px;
  background-color: #ffffff;
  color: #c88e9a;
  margin-top: 10px;
  border: 2px solid #c88e9a;
  border-radius: 5px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.product_section .btn-box a:hover {
    background-color: #c88e9a;
  color: #ffffff;
}

/* Container to control the overall width */
.variant-wrapper.dropdown-layout {
    max-width: 300px; /* Limits width so it doesn't look too big on desktop */
    margin-top: 15px;
    margin-bottom: 20px;
}

/* Label styling to match your bakery brand */
.variant-label {
    font-family: 'Open Sans', sans-serif; /* */
    font-weight: 700;
    color: #444;
    display: block;
    margin-bottom: 8px;
    text-transform: uppercase;
    font-size: 0.85rem;
    letter-spacing: 1px;
}

/* The Select Menu itself */
.custom-bakery-select {
    width: 100%;
    padding: 10px 40px 10px 15px;
    font-family: 'Open Sans', sans-serif; /* */
    font-size: 0.9rem;
    font-weight: 600;
    color: #444;
    border: 2px solid #eee;
    border-radius: 8px;
    background-color: #fff;
    cursor: pointer;
    transition: all 0.3s ease;
    
    /* Removes default browser styling to allow custom arrow */
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    
    /* Custom Pink Arrow Icon using your brand color #c88e9a */
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c88e9a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 12px center;
    background-size: 16px;
}

/* Interaction states using your bakery pink #c88e9a */
.custom-bakery-select:hover, 
.custom-bakery-select:focus {
    outline: none;
    border-color: #c88e9a; /* */
    background-color: #fdf6f7; /* Very light pink tint for feedback */
}

/* Size Guide Link Styling */
.size-guide-link {
    font-size: 0.75rem;
    color: #fa7d09; /* Your primary orange */
    font-weight: 700;
    text-decoration: none;
    transition: color 0.2s;
}

.size-guide-link:hover {
    color: #c88e9a; /* */
    text-decoration: underline;
}

/* client section start */
.client_section .heading_container {
  margin-bottom: 30px;
}

.client_section .box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin: 15px;
}

.client_section .box .img-box {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 105px;
  margin-bottom: -50px;
  margin-left: 25px;
  position: relative;
}

.client_section .box .img-box img {
  border-radius: 100%;
  border: 5px solid #efefef;
}

.client_section .box .detail-box {
  background-color: #ffffff;
  padding: 60px 25px 15px 25px;
  border: 5px solid #efefef;
}

.client_section .box .detail-box h6 {
  font-weight: 600;
  font-size: 18px;
  margin: 15px 0 5px 0;
}

.client_section .box .detail-box p {
  margin-bottom: 0;
  font-size: 15px;
  margin-bottom: 10px;
}

.client_section .owl-carousel .owl-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 45px;
  padding: 0 15px;
}

.client_section .owl-carousel .owl-nav .owl-prev,
.client_section .owl-carousel .owl-nav .owl-next {
  width: 45px;
  height: 45px;
  background-color: #c88e9a;
  color: #ffffff;
  outline: none;
  bottom: 0px;
  font-size: 24px;
  margin: 0 5px;
}

/* client section end */
.contact_section .heading_container {
  margin-bottom: 45px;
}

.contact_section .form_container .form-group {
  margin-bottom: 25px;
}

.contact_section .form_container input {
  width: 100%;
  border: none;
  height: 50px;
  padding-left: 25px;
  background-color: transparent;
  border: 1px solid #ccc;
  outline: none;
  color: #000000;
  border-radius: 5px;
}

.contact_section .form_container input::-webkit-input-placeholder {
  color: #222222;
}

.contact_section .form_container input:-ms-input-placeholder {
  color: #222222;
}

.contact_section .form_container input::-ms-input-placeholder {
  color: #222222;
}

.contact_section .form_container input::placeholder {
  color: #222222;
}

.contact_section .form_container input.message-box {
  height: 120px;
  border-radius: 5px;
}

.contact_section .form_container .btn-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.contact_section .form_container button {
  margin-top: 10px;
  border: none;
  text-transform: uppercase;
  display: inline-block;
  padding: 10px 55px;
  background-color: #ffffff;
  color: #c88e9a;
  border:2px solid #c88e9a;
  border-radius: 0px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.contact_section .form_container button:hover {
    background-color: #c88e9a;
  color: #ffffff;
}

/* footer section*/
.footer_section {
  background-color: #f2bfc5;
  color: #c88e9a;
  padding: 75px 0 40px 0;
  text-align: center;
}

.footer_section h4 {
  font-size: 28px;
}

.faq_section .card-header {
    background-color: transparent;
    border-bottom: 1px solid #eee;
}

.faq_section .btn-link {
    font-family: 'TAN Meringue', cursive; /* Using your premium font */
    color: #c88e9a; /* Your bakery pink */
    font-size: 1.2rem;
    text-decoration: none;
    width: 100%;
    text-align: left;
}

.footer_section h4,
.footer_section .footer-logo {
  font-weight: 600;
  margin-bottom: 20px;
  font-family: 'TAN Meringue', cursive;
}

.footer_section .footer-col {
  margin-bottom: 30px;
}

.footer_section .footer_contact .contact_link_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.footer_section .footer_contact .contact_link_box a {
  margin: 5px 0;
  color: #ffffff;
}

.footer_section .footer_contact .contact_link_box a i {
  margin-right: 5px;
}

.footer_section .footer_contact .contact_link_box a:hover {
    background-color: #c88e9a;
  color: #ffffff;
}

.footer_section .footer-logo {
  display: block;
  font-weight: bold;
  font-size: 32px;
  color: #c88e9a;
}

.footer_section .footer_social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 20px;
  margin-bottom: 10px;
}

.footer_section .footer_social a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #2f2519;
  width: 30px;
  height: 30px;
  border-radius: 100%;
  background-color: #ffffff;
  border-radius: 100%;
  margin: 0 2.5px;
  font-size: 18px;
}

.footer_section .footer_social a:hover {
    background-color: #c88e9a;
  color: #ffffff;
}

.footer_section .map_container {
  width: 100%;
  height: 175px;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

.footer_section .map_container .map {
  height: 100%;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.footer_section .map_container .map #googleMap {
  height: 100%;
}

/* New CSS for the image replacement */
.footer_section .map_container .map img {
  width: 100%;
  height: 100%;
  /* This prevents the image from stretching/squishing */
  object-fit: cover; 
  /* This shifts the image focus to the left side */
  object-position: right center;
  margin-left: 10px;
}

.footer_section .footer-info {
  text-align: center;
  margin-top: 25px;
}

.footer_section .footer-info p {
  color: #ffffff;
  margin: 0;
}

.footer_section .footer-info p a {
  color: inherit;
}

/* FAQ Filter Specific Styles */
.faq-filters {
    margin-bottom: 40px;
    display: flex;
    justify-content: center;
    gap: 10px;
}

.filter-btn {
    background-color: #ffffff;
    border: 2px solid #c88e9a !important; /* Force your theme pink */
    color: #c88e9a !important;
    padding: 10px 30px;
    border-radius: 25px;
    font-family: "Open Sans", sans-serif !important; /* */
    font-weight: 700;
    cursor: pointer;
    transition: all 0.3s ease;
}

.filter-btn.active, 
.filter-btn:hover {
    background-color: #c88e9a !important;
    color: #ffffff !important;
    box-shadow: 0 4px 10px rgba(200, 142, 154, 0.3);
}

.faq-item.hidden {
    display: none !important; /* Essential for the JavaScript to work */
}

.faq-item {
    max-width: 600px;
    margin: 20px auto;
    border-bottom: 1px solid #ddd;
    padding: 10px;
    margin-top: 25px;
    padding: 20px;
    background: #fff;
    border-radius: 10px;
    border-left: 5px solid #c88e9a; /* Adds a nice boutique accent */
}

/* Question styling & Centering */
summary {
  list-style: none; /* Removes default arrow */
  display: flex;
  justify-content: center; /* Centers text horizontally */
  align-items: center;
  cursor: pointer;
  font-weight: bold;
  font-size: 1.2rem;
  text-align: center;
}

/* Creating the Custom Arrow */
summary::after {
  content: '▼'; /* You can use an icon or an image here */
  margin-left: 10px;
  font-size: 0.8rem;
  transition: transform 0.3s ease;
}

/* Rotate arrow when open */
details[open] summary::after {
  transform: rotate(180deg);
}

/* Answer styling */
.faq-content {
  padding: 15px;
  text-align: center; /* Centers the answer text too */
  color: #555;
}

/* Remove qualquer largura fixa que possa vir do CSS antigo */
.faq-container {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow-x: hidden; /* Impede o scroll horizontal da página toda */
}

/* Garante que o texto da resposta quebra linha e não empurra a janela */
.accordion-body {
    word-wrap: break-word;
    overflow-wrap: break-word;
    font-size: 0.95rem; /* Ligeiramente menor para mobile */
}

/* Esconde a barra de scroll feia no slider de categorias */
.overflow-auto::-webkit-scrollbar {
    display: none;
}


/*# sourceMappingURL=style.css.map */