.elementor-2291 .elementor-element.elementor-element-66483d4 > .elementor-container{min-height:100px;}.elementor-2291 .elementor-element.elementor-element-66483d4{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-2291 .elementor-element.elementor-element-8695c8b:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-2291 .elementor-element.elementor-element-8695c8b > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://dreamsboutique.pt/wp-content/uploads/2023/02/206.jpg");background-position:top center;background-repeat:no-repeat;background-size:cover;}.elementor-bc-flex-widget .elementor-2291 .elementor-element.elementor-element-8695c8b.elementor-column .elementor-widget-wrap{align-items:flex-start;}.elementor-2291 .elementor-element.elementor-element-8695c8b.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:flex-start;align-items:flex-start;}.elementor-2291 .elementor-element.elementor-element-8695c8b > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-2291 .elementor-element.elementor-element-8695c8b > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-2291 .elementor-element.elementor-element-6588710{--spacer-size:100vh;}.elementor-bc-flex-widget .elementor-2291 .elementor-element.elementor-element-b608e4a.elementor-column .elementor-widget-wrap{align-items:flex-start;}.elementor-2291 .elementor-element.elementor-element-b608e4a.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:flex-start;align-items:flex-start;}.elementor-2291 .elementor-element.elementor-element-b608e4a.elementor-column > .elementor-widget-wrap{justify-content:flex-start;}.elementor-2291 .elementor-element.elementor-element-b608e4a > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-2291 .elementor-element.elementor-element-b608e4a > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-2291 .elementor-element.elementor-element-99a4061{width:auto;max-width:auto;z-index:100;}.elementor-2291 .elementor-element.elementor-element-99a4061 > .elementor-widget-container{margin:50px 80px 25px 80px;padding:0px 0px 0px 0px;}.elementor-2291 .elementor-element.elementor-element-f310177{width:100%;max-width:100%;}.elementor-2291 .elementor-element.elementor-element-f310177 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-2291 .elementor-element.elementor-element-bde2e76 > .elementor-container{min-height:100px;}.elementor-2291 .elementor-element.elementor-element-bde2e76{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-2291 .elementor-element.elementor-element-bde2e76 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-bc-flex-widget .elementor-2291 .elementor-element.elementor-element-44e7754.elementor-column .elementor-widget-wrap{align-items:flex-start;}.elementor-2291 .elementor-element.elementor-element-44e7754.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:flex-start;align-items:flex-start;}.elementor-2291 .elementor-element.elementor-element-44e7754.elementor-column > .elementor-widget-wrap{justify-content:flex-start;}.elementor-2291 .elementor-element.elementor-element-44e7754 > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-2291 .elementor-element.elementor-element-44e7754 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-2291 .elementor-element.elementor-element-c9ec20a{width:auto;max-width:auto;z-index:100;}.elementor-2291 .elementor-element.elementor-element-c9ec20a > .elementor-widget-container{margin:50px 80px 25px 80px;padding:0px 0px 0px 0px;}.elementor-2291 .elementor-element.elementor-element-9997222{width:100%;max-width:100%;}.elementor-2291 .elementor-element.elementor-element-9997222 > .elementor-widget-container{margin:0px 0px 0px 0px;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-2291 .elementor-element.elementor-element-bde2e76{margin-top:0px;margin-bottom:0px;}.elementor-2291 .elementor-element.elementor-element-c9ec20a{width:auto;max-width:auto;}.elementor-2291 .elementor-element.elementor-element-c9ec20a > .elementor-widget-container{margin:45px 30px 10px 30px;}}@media(min-width:768px){.elementor-2291 .elementor-element.elementor-element-8695c8b{width:45%;}.elementor-2291 .elementor-element.elementor-element-b608e4a{width:55%;}}@media(max-width:1024px) and (min-width:768px){.elementor-2291 .elementor-element.elementor-element-8695c8b{width:100%;}.elementor-2291 .elementor-element.elementor-element-b608e4a{width:100%;}.elementor-2291 .elementor-element.elementor-element-44e7754{width:100%;}}/* Start custom CSS for castella_core_section_title, class: .elementor-element-c9ec20a */@media (max-width: 1024px) {
  #qodef-page-mobile-header {
    position: relative !important;
    z-index: 999999 !important;
    background: #fff !important;
  }

  #qodef-page-mobile-header-inner {
    position: relative !important;
    z-index: 999999 !important;
    background: #fff !important;
  }

  .qodef-mobile-header-navigation {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 999998 !important;
    background: #fff !important;
  }

  .elementor-element-c9ec20a {
    position: relative !important;
    z-index: 0 !important;
  }

  .elementor-element-c9ec20a .qodef-m-image {
    position: absolute !important;
    z-index: 0 !important;
    pointer-events: none !important;
  }
}

@media (max-width: 768px) {
  .elementor-element-c9ec20a .qodef-m-title-holder {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    width: 100%;
  }

  .elementor-element-c9ec20a h2.qodef-m-title {
    font-size: 36px !important;
    
  }
}/* End custom CSS */
/* Start custom CSS *//* =========================
   ATENDIMENTO (page-id-2291)
   FIXO no ecrã + scroll só no BUK
   ========================= */

/* Ajusta este valor ao offset real do teu menu/header */
:root{
  --header-offset: 110px;
}

/* 1) Nesta página não existe scroll do documento */
html, body.page-id-2291{
  height: 100%;
  overflow: hidden !important;
}

/* trava wrappers do tema (Qode) */
body.page-id-2291 #qodef-page-wrapper,
body.page-id-2291 #qodef-page-outer,
body.page-id-2291 #qodef-page-inner{
  height: 100%;
  overflow: hidden !important;
}

/* 2) A SECÇÃO fica FIXA no ecrã (isto elimina o “salto”) */
body.page-id-2291 .atendimento-split{
  position: fixed;
  top: var(--header-offset);
  left: 0;
  right: 0;
  bottom: 0;

  height: auto;            /* já não precisa do calc(100vh - offset) */
  overflow: hidden;
  z-index: 1;
}

/* garante que nada fora da secção interfere visualmente */
body.page-id-2291 #qodef-page-inner{
  position: relative;
}

/* 3) Garante alturas 100% dentro do Elementor */
.atendimento-split > .elementor-container,
.atendimento-split .elementor-column,
.atendimento-split .elementor-widget-wrap{
  height: 100%;
}

/* 4) COLUNA ESQUERDA: imagem fixa */
.atendimento-split .col-left{
  position: sticky;
  top: 0;                 /* agora o topo da secção já está no offset */
  height: 100%;
  overflow: hidden;

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

/* 5) COLUNA DIREITA: layout vertical (título + widget) */
.atendimento-split .col-right .elementor-widget-wrap{
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 0;
}

/* widget HTML estica e ocupa o resto */
.atendimento-split .col-right .elementor-widget-html{
  flex: 1 1 auto;
  min-height: 0;
}
.atendimento-split .col-right .elementor-widget-html .elementor-widget-container{
  height: 100%;
  min-height: 0;
}

/* =========================
   TÍTULO (o bloco todo) — centrado e “fixo”
   ========================= */
.atendimento-split .col-right .qodef-section-title{
  position: sticky;
  top: 0;                 /* sticky dentro da secção fixa */
  z-index: 50;

  width: 100%;
  max-width: 100%;
  margin: 0 auto;

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

  text-align: center;
  background: rgba(255,255,255,0.96);

  /* MUITO importante (Qode appear/transform pode deslocar) */
  transform: none !important;
}

/* holders internos */
.atendimento-split .col-right .qodef-section-title .qodef-m-title-holder{
  width: 100%;
  display: flex;
  justify-content: center !important;
  align-items: center !important;
  text-align: center;
  transform: none !important;
}

.atendimento-split .col-right .qodef-section-title .qodef-m-title,
.atendimento-split .col-right .qodef-section-title .qodef-m-subtitle{
  width: 100%;
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  transform: none !important;
}

/* 6) Scroll SÓ no formulário */
.atendimento-split .col-right .atendimento-formScroll{
  flex: 1;
  min-height: 0;
  height: 100%;

  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;

  /* evita que scroll “passe” para o documento */
  overscroll-behavior: contain;

  /* reduz reflows e tentativas de reposicionamento */
  overflow-anchor: none;
  contain: layout paint size;
}

/* 7) Iframe BUK: fixa altura (anti auto-resize que causa saltos) */
.atendimento-split .col-right .buk-iframe{
  width: 100%;
  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;

  border: 0;
  display: block;

  /* mais uma proteção contra “saltos” */
  overflow-anchor: none;
}

/* 8) (Opcional) se o Qode estiver a aplicar animação global */
body.page-id-2291 .qodef--has-appear{
  transform: none !important;
}



/* MOBILE + TABLET: desligar layout fixo/sticky e remover scroll interno */
@media (max-width: 1024px){

  /* Scroll normal na página */
  html, body.page-id-2291{
    overflow: auto !important;
    height: auto !important;
  }

  body.page-id-2291 #qodef-page-wrapper,
  body.page-id-2291 #qodef-page-outer,
  body.page-id-2291 #qodef-page-inner{
    overflow: visible !important;
    height: auto !important;
  }

  /* Secção deixa de ser fixed/viewport-locked */
  body.page-id-2291 .atendimento-split{
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;

    height: auto !important;
    overflow: visible !important;
  }

  /* Coluna esquerda deixa de ser sticky */
  body.page-id-2291 .atendimento-split .col-left{
    position: relative !important;
    top: auto !important;
    height: auto !important;
  }

  /* ✅ TÍTULO: deixar de ser sticky/fixo */
  body.page-id-2291 .atendimento-split .col-right .qodef-shortcode.qodef-section-title{
    position: relative !important;
    top: auto !important;
    z-index: auto !important;
    background: transparent !important;
  }

  /* desfazer o flex que prende alturas */
  body.page-id-2291 .atendimento-split .col-right .elementor-widget-wrap{
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
  }

  body.page-id-2291 .atendimento-split .col-right .elementor-widget-html,
  body.page-id-2291 .atendimento-split .col-right .elementor-widget-html .elementor-widget-container{
    height: auto !important;
    min-height: 0 !important;
    flex: none !important;
  }

  /* remove o scroll interno do widget */
  body.page-id-2291 .atendimento-formScroll{
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    contain: none !important;
  }

  /* iframe com altura confortável (ajusta se necessário) */
  body.page-id-2291 .buk-iframe{
    height: 1200px !important;
    min-height: 1200px !important;
    max-height: none !important;
  }
}/* End custom CSS */