.elementor-1145 .elementor-element.elementor-element-d3f1245{--display:flex;--min-height:100px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;border-style:solid;--border-style:solid;border-width:0px 0px 1px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:1px;--border-left-width:0px;border-color:#E8E8E8;--border-color:#E8E8E8;--border-radius:0px 0px 0px 0px;}.elementor-1145 .elementor-element.elementor-element-d3f1245:not(.elementor-motion-effects-element-type-background), .elementor-1145 .elementor-element.elementor-element-d3f1245 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-edb2319 );}.elementor-1145 .elementor-element.elementor-element-5ee1442{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-1145 .elementor-element.elementor-element-b2a7909{--display:flex;}.elementor-widget-image .widget-image-caption{font-family:var( --e-global-typography-text-font-family ), Poppins;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-1145 .elementor-element.elementor-element-f2a1d4f{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:center;--gap:15px 15px;--row-gap:15px;--column-gap:15px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Poppins;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Poppins;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-menu-toggle{margin:0 auto;}.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu .elementor-item{font-family:"Raleway", Poppins;font-size:14px;font-weight:400;line-height:1.5em;}.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-8ca85c4 );fill:var( --e-global-color-8ca85c4 );}.elementor-1145 .elementor-element.elementor-element-3832845{--e-nav-menu-horizontal-menu-item-margin:calc( 15px / 2 );}.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:15px;}.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--dropdown a, .elementor-1145 .elementor-element.elementor-element-3832845 .elementor-menu-toggle{color:var( --e-global-color-8ca85c4 );fill:var( --e-global-color-8ca85c4 );}.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--dropdown{background-color:var( --e-global-color-edb2319 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-af01621 );border-radius:0px 0px 5px 5px;}.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--dropdown a:hover,
					.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--dropdown a:focus,
					.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--dropdown a.highlighted,
					.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-menu-toggle:hover,
					.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-menu-toggle:focus{color:var( --e-global-color-primary );}.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--dropdown a:hover,
					.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--dropdown a:focus,
					.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--dropdown a.highlighted{background-color:var( --e-global-color-edb2319 );}.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--dropdown .elementor-item, .elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:"Raleway", Poppins;font-size:14px;font-weight:400;}.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--dropdown li:first-child a{border-top-left-radius:0px;border-top-right-radius:0px;}.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--dropdown li:last-child a{border-bottom-right-radius:5px;border-bottom-left-radius:5px;}.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--dropdown a{padding-left:20px;padding-right:20px;}.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--dropdown li:not(:last-child){border-style:none;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-1145 .elementor-element.elementor-element-aadc5e4 .elementor-icon-wrapper{text-align:center;}.elementor-1145 .elementor-element.elementor-element-aadc5e4 .elementor-icon{font-size:25px;}.elementor-1145 .elementor-element.elementor-element-aadc5e4 .elementor-icon svg{height:25px;}.elementor-widget-button .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Poppins;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-1145 .elementor-element.elementor-element-21c25b9 .elementor-button{background-color:var( --e-global-color-primary );font-family:"Lato", Poppins;font-size:14px;font-weight:400;line-height:1.4em;letter-spacing:0.02em;}.elementor-1145 .elementor-element.elementor-element-21c25b9 .elementor-button:hover, .elementor-1145 .elementor-element.elementor-element-21c25b9 .elementor-button:focus{background-color:var( --e-global-color-primary );}.elementor-1145 .elementor-element.elementor-element-be072c9{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:center;}.elementor-1145 .elementor-element.elementor-element-fb27254 .elementor-icon-wrapper{text-align:center;}.elementor-1145 .elementor-element.elementor-element-fb27254.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-1145 .elementor-element.elementor-element-fb27254.elementor-view-framed .elementor-icon, .elementor-1145 .elementor-element.elementor-element-fb27254.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-1145 .elementor-element.elementor-element-fb27254.elementor-view-framed .elementor-icon, .elementor-1145 .elementor-element.elementor-element-fb27254.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-1145 .elementor-element.elementor-element-942a3a7{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-end;}.elementor-1145 .elementor-element.elementor-element-942a3a7:not(.elementor-motion-effects-element-type-background), .elementor-1145 .elementor-element.elementor-element-942a3a7 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#02010100;}.elementor-1145 .elementor-element.elementor-element-ed4051a{--display:flex;}.elementor-1145 .elementor-element.elementor-element-ed4051a:not(.elementor-motion-effects-element-type-background), .elementor-1145 .elementor-element.elementor-element-ed4051a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#02010100;}.elementor-widget-search .elementor-pagination{font-family:var( --e-global-typography-primary-font-family ), Poppins;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-1145 .elementor-element.elementor-element-1337900 .e-search-input{font-family:var( --e-global-typography-text-font-family ), Poppins;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-1145 .elementor-element.elementor-element-1337900{--e-search-input-color:var( --e-global-color-8ca85c4 );}.elementor-1145 .elementor-element.elementor-element-512cf64{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1145 .elementor-element.elementor-element-eda9cb9{--display:flex;}.elementor-1145 .elementor-element.elementor-element-e90c5fc .e-search-input{background-color:#BBBBBB26;border-style:solid;border-color:#8888881A;}.elementor-1145 .elementor-element.elementor-element-e90c5fc .e-search-submit{background-color:var( --e-global-color-edb2319 );}.elementor-1145 .elementor-element.elementor-element-e90c5fc{padding:0px 0px 0px 0px;--e-search-icon-submit-color:var( --e-global-color-primary );}.elementor-1145 .elementor-element.elementor-element-77ef87d .elementor-nav-menu .elementor-item{font-family:"Raleway", Poppins;font-size:14px;font-weight:400;line-height:1.5em;}.elementor-1145 .elementor-element.elementor-element-77ef87d .elementor-nav-menu--dropdown{background-color:var( --e-global-color-edb2319 );}.elementor-1145 .elementor-element.elementor-element-77ef87d .elementor-nav-menu--dropdown a:hover,
					.elementor-1145 .elementor-element.elementor-element-77ef87d .elementor-nav-menu--dropdown a:focus,
					.elementor-1145 .elementor-element.elementor-element-77ef87d .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-1145 .elementor-element.elementor-element-77ef87d .elementor-nav-menu--dropdown a.highlighted,
					.elementor-1145 .elementor-element.elementor-element-77ef87d .elementor-menu-toggle:hover,
					.elementor-1145 .elementor-element.elementor-element-77ef87d .elementor-menu-toggle:focus{color:var( --e-global-color-primary );}.elementor-1145 .elementor-element.elementor-element-77ef87d .elementor-nav-menu--dropdown a:hover,
					.elementor-1145 .elementor-element.elementor-element-77ef87d .elementor-nav-menu--dropdown a:focus,
					.elementor-1145 .elementor-element.elementor-element-77ef87d .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-1145 .elementor-element.elementor-element-77ef87d .elementor-nav-menu--dropdown a.highlighted{background-color:var( --e-global-color-edb2319 );}.elementor-1145 .elementor-element.elementor-element-77ef87d .elementor-nav-menu--dropdown .elementor-item, .elementor-1145 .elementor-element.elementor-element-77ef87d .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-text-font-family ), Poppins;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-1145 .elementor-element.elementor-element-28fa7bc .elementor-button{background-color:var( --e-global-color-primary );font-family:"Lato", Poppins;font-size:14px;font-weight:400;line-height:1.4em;letter-spacing:0.02em;}.elementor-1145 .elementor-element.elementor-element-28fa7bc .elementor-button:hover, .elementor-1145 .elementor-element.elementor-element-28fa7bc .elementor-button:focus{background-color:var( --e-global-color-secondary );}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:991px){.elementor-1145 .elementor-element.elementor-element-d3f1245{--justify-content:center;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu .elementor-item{font-size:14px;line-height:1.5em;letter-spacing:0.02em;}.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--dropdown .elementor-item, .elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:14px;letter-spacing:0.02em;}.elementor-1145 .elementor-element.elementor-element-21c25b9 .elementor-button{font-size:14px;line-height:1.5em;letter-spacing:0.02em;}.elementor-widget-search .elementor-pagination{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-1145 .elementor-element.elementor-element-1337900 .e-search-input{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-1145 .elementor-element.elementor-element-512cf64{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-block-start:30px;--padding-block-end:30px;--padding-inline-start:0px;--padding-inline-end:0px;}.container-fluid .e-parent.e-con-full .e-con-boxed.elementor-element-512cf64{--padding-inline-start:0px;--padding-inline-end:0px;}.elementor-1145 .elementor-element.elementor-element-eda9cb9{--gap:15px 15px;--row-gap:15px;--column-gap:15px;}.elementor-1145 .elementor-element.elementor-element-e90c5fc .e-search-input{border-radius:100px 100px 100px 100px;}.elementor-1145 .elementor-element.elementor-element-e90c5fc{--e-search-input-padding-block-start:0px;--e-search-input-padding-inline-start:0px;--e-search-input-padding-block-end:0px;--e-search-input-padding-inline-end:0px;--e-search-submit-margin-inline-start:10px;--e-search-icon-submit-size:25px;--e-search-submit-icon-gap:0px;}.elementor-1145 .elementor-element.elementor-element-77ef87d{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-1145 .elementor-element.elementor-element-77ef87d .elementor-nav-menu .elementor-item{font-size:14px;line-height:1.5em;letter-spacing:0.02em;}.elementor-1145 .elementor-element.elementor-element-77ef87d .elementor-nav-menu--dropdown .elementor-item, .elementor-1145 .elementor-element.elementor-element-77ef87d .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-text-font-size );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-1145 .elementor-element.elementor-element-28fa7bc .elementor-button{font-size:14px;line-height:1.5em;letter-spacing:0.02em;}}@media(max-width:767px){.elementor-1145 .elementor-element.elementor-element-d3f1245{--width:100%;}.elementor-1145 .elementor-element.elementor-element-5ee1442{--width:90%;}.elementor-1145 .elementor-element.elementor-element-b2a7909{--width:50%;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-1145 .elementor-element.elementor-element-f2a1d4f{--width:50%;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu .elementor-item{font-size:12px;line-height:1.4em;letter-spacing:0.02em;}.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--dropdown .elementor-item, .elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:12px;letter-spacing:0.02em;}.elementor-1145 .elementor-element.elementor-element-21c25b9 .elementor-button{font-size:12px;line-height:1.4em;letter-spacing:0.02em;}.elementor-1145 .elementor-element.elementor-element-be072c9{--width:50%;}.elementor-widget-search .elementor-pagination{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-1145 .elementor-element.elementor-element-1337900 .e-search-input{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-1145 .elementor-element.elementor-element-512cf64{--justify-content:center;--padding-block-start:30px;--padding-block-end:30px;--padding-inline-start:0px;--padding-inline-end:0px;}.container-fluid .e-parent.e-con-full .e-con-boxed.elementor-element-512cf64{--padding-inline-start:0px;--padding-inline-end:0px;}.elementor-1145 .elementor-element.elementor-element-eda9cb9{--width:90%;}.elementor-1145 .elementor-element.elementor-element-e90c5fc{padding:0px 0px 0px 0px;}.elementor-1145 .elementor-element.elementor-element-e90c5fc .e-search-input{border-width:1px 1px 1px 1px;}.elementor-1145 .elementor-element.elementor-element-77ef87d{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-1145 .elementor-element.elementor-element-77ef87d .elementor-nav-menu .elementor-item{font-size:12px;line-height:1.4em;letter-spacing:0.02em;}.elementor-1145 .elementor-element.elementor-element-77ef87d .elementor-nav-menu--dropdown .elementor-item, .elementor-1145 .elementor-element.elementor-element-77ef87d .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-text-font-size );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-1145 .elementor-element.elementor-element-28fa7bc .elementor-button{font-size:12px;line-height:1.4em;letter-spacing:0.02em;}}@media(min-width:768px){.elementor-1145 .elementor-element.elementor-element-5ee1442{--width:90%;}.elementor-1145 .elementor-element.elementor-element-b2a7909{--width:184px;}.elementor-1145 .elementor-element.elementor-element-f2a1d4f{--width:100%;}.elementor-1145 .elementor-element.elementor-element-be072c9{--width:100%;}.elementor-1145 .elementor-element.elementor-element-ed4051a{--width:90%;}}@media(max-width:991px) and (min-width:768px){.elementor-1145 .elementor-element.elementor-element-512cf64{--width:100%;}.elementor-1145 .elementor-element.elementor-element-eda9cb9{--width:90%;}}/* Start custom CSS for nav-menu, class: .elementor-element-3832845 *//* =========================================================
   MENU – FIX: remover dependência do .sub-arrow no top-level
   ========================================================= */

/* 0) Mantém o sub-arrow do Elementor escondido (para não duplicar setas) */
.elementor-1145 .elementor-element.elementor-element-3832845 .sub-arrow svg{
  display: none !important;
}
.elementor-1145 .elementor-element.elementor-element-3832845 .sub-arrow{
  display: none !important;
}

/* 1) TOP LEVEL: criar caret estável no próprio <a> (não depende de JS) */
.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu > li.menu-item-has-children{
  position: relative !important;          /* referência para o caret */
}

/* Reserva espaço para a seta e desenha-a como background */
.elementor-1145 .elementor-element.elementor-element-3832845 .elementor-nav-menu > li.menu-item-has-children > a.elementor-item{
  padding-right: 18px !important;         /* reserva espaço da seta */
  background-image: url("https://estrategor.pt/wp-content/uploads/2026/01/caret-down-2.svg");
  background-repeat: no-repeat;
  background-position: right 0px center;
  background-size: 14px 14px;
}

/* =========================================================
   SUBMENUS: mantém o teu comportamento, mas remove mixed content
   ========================================================= */

ul.sub-menu.elementor-nav-menu--dropdown{
  min-width: 20em !important;
}

/* ============================================
   MENU – underline Elementor (fino e curto)
   ============================================ */

.elementor-nav-menu--main.e--pointer-underline
.elementor-nav-menu > li > a.elementor-item{
  display: inline-flex !important;
  width: fit-content !important;
}

/* garante que não fica a esticar por flex */
.elementor-nav-menu--main.e--pointer-underline
.elementor-nav-menu > li{
  display: flex;
}

/* cor do underline nativo + base da animação */
.elementor-nav-menu--main.e--pointer-underline 
.elementor-item::before,
.elementor-nav-menu--main.e--pointer-underline 
.elementor-item::after{
  background-color: #7AC943 !important;
  transform-origin: center;
}

/* underline (estado base escondido) */
.elementor-nav-menu--main.e--pointer-underline 
.elementor-item::after{
  height: 1px !important;
  bottom: 12px !important;
  transform: scaleX(0);
  transition: transform .25s cubic-bezier(.4,0,.2,1);
}

/* hover – cresce do centro para os lados */
.elementor-nav-menu--main.e--pointer-underline 
.elementor-item:hover::after{
  transform: scaleX(1);
}

/* apenas links de 1º nível */
.elementor-nav-menu--main 
> .elementor-nav-menu 
> li 
> a.elementor-item{
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* garante que sub-menus continuam com padding */
.elementor-nav-menu--main 
.sub-menu 
a.elementor-sub-item{
  padding-left: initial;
  padding-right: initial;
}

.elementor-nav-menu--main.elementor-nav-menu__container{
  position: relative;
}

/* submenu de 1º nível: ancorar ao fundo do NAV */
.elementor-nav-menu--main.elementor-nav-menu__container
> .elementor-nav-menu
> li
> .sub-menu.elementor-nav-menu--dropdown{
  top: calc(100% + 26px) !important;
  left: 0 !important;
  margin-top: 0 !important;
}

/* =========================================================
   DROPDOWN – evitar sobreposição na saída do hover
   ========================================================= */

.elementor-nav-menu--main .sub-menu a.elementor-sub-item{
  position: relative;
  display: inline-block !important;
  padding-left: 0 !important;
  transition: padding-left 0.25s cubic-bezier(.4,0,.2,1) 0.14s !important;
  will-change: padding-left;
}

/* Ícone à esquerda no dropdown (fora do hover) — FIX: https */
.elementor-nav-menu--main .sub-menu a.elementor-sub-item::before{
  content: "";
  position: absolute;
  left: -2px;
  top: 50%;
  width: 14px;
  height: 14px;
  background: url("https://estrategor.pt/wp-content/uploads/2026/01/caret-right.svg") center/contain no-repeat;
  opacity: 0;
  transform: translateY(-50%);
  transition: none !important;
}

/* hover (entrada) */
.elementor-nav-menu--main .sub-menu a.elementor-sub-item:hover,
.elementor-nav-menu--main .sub-menu a.elementor-sub-item.highlighted{
  padding-left: 18px !important;
  transition-delay: 0s !important;
}

.elementor-nav-menu--main .sub-menu a.elementor-sub-item:hover::before{
  opacity: 1;
  transform: translateY(-50%);
  transition: opacity 0.18s ease 0s !important;
}

/* padding esquerdo do submenu */
.elementor-nav-menu--main .sub-menu.elementor-nav-menu--dropdown{
  padding-left: 10px !important;
}

/* =========================================================
   SUBMENUS com submenus (níveis dentro do dropdown)
   ========================================================= */

/* Trocar o ícone da direita apenas nos itens do dropdown que têm filhos */
.elementor-nav-menu--main .sub-menu .menu-item-has-children > a .sub-arrow svg{
  display: none !important;
}

.elementor-nav-menu--main .sub-menu .menu-item-has-children > a .sub-arrow{
  padding: 0 !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.elementor-nav-menu--main .sub-menu .menu-item-has-children > a .sub-arrow::before{
  content: "";
  width: 14px;
  height: 14px;
  background: url("https://estrategor.pt/wp-content/uploads/2026/01/caret-right.svg") center/contain no-repeat;
  display: block;
  opacity: 1;
  transition: none !important;
}

/* No hover/highlighted, o ícone da direita desaparece */
.elementor-nav-menu--main .sub-menu .menu-item-has-children > a:hover .sub-arrow::before,
.elementor-nav-menu--main .sub-menu .menu-item-has-children > a.highlighted .sub-arrow::before{
  opacity: 0;
}

/* centrar com o texto */
.elementor-nav-menu--main .sub-menu .menu-item-has-children > a{
  display: flex !important;
  align-items: center !important;
  gap: 10px;
}

.elementor-nav-menu--main .sub-menu .menu-item-has-children > a .sub-arrow{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 14px;
  height: 14px;
  padding: 0 !important;
}

.elementor-nav-menu--main .sub-menu .menu-item-has-children > a .sub-arrow::before{
  width: 14px;
  height: 14px;
  display: block;
}

/* =========================================================
   Sub-submenu (nível 2): abrir ao lado do item pai
   ========================================================= */

.elementor-nav-menu--main .sub-menu .menu-item-has-children{
  position: relative;
}

.elementor-nav-menu--main .sub-menu .menu-item-has-children > .sub-menu{
  position: absolute !important;
  top: 0 !important;
  left: 100% !important;
  margin-left: 0px !important;
  z-index: 9999 !important;
}

.elementor-nav-menu--main .sub-menu .menu-item-has-children > .sub-menu{
  top: calc(100% - 2%) !important; 
}

/* =========================================================
   FIX: SmartMenus highlighted não deve “pausar” ao sair do hover
   ========================================================= */

.elementor-nav-menu--main .sub-menu .menu-item-has-children > a.elementor-sub-item.highlighted:not(:hover){
  padding-left: 0 !important;
}

.elementor-nav-menu--main .sub-menu .menu-item-has-children > a.elementor-sub-item{
  transition-delay: 0s !important;
}

.elementor-nav-menu--main .sub-menu .menu-item-has-children > a.elementor-sub-item.highlighted:not(:hover)::before{
  opacity: 0 !important;
}

/* =========================================================
   Item ativo: esconder underline só quando NÃO está hovered
   ========================================================= */

.elementor-nav-menu--main.e--pointer-underline
.elementor-nav-menu > li.current-menu-item > a.elementor-item:not(:hover)::before,
.elementor-nav-menu--main.e--pointer-underline
.elementor-nav-menu > li.current-menu-item > a.elementor-item:not(:hover)::after,
.elementor-nav-menu--main.e--pointer-underline
.elementor-nav-menu > li.current_page_item > a.elementor-item:not(:hover)::before,
.elementor-nav-menu--main.e--pointer-underline
.elementor-nav-menu > li.current_page_item > a.elementor-item:not(:hover)::after,
.elementor-nav-menu--main.e--pointer-underline
.elementor-nav-menu > li.current-menu-ancestor > a.elementor-item:not(:hover)::before,
.elementor-nav-menu--main.e--pointer-underline
.elementor-nav-menu > li.current-menu-ancestor > a.elementor-item:not(:hover)::after,
.elementor-nav-menu--main.e--pointer-underline
.elementor-nav-menu > li > a.elementor-item.elementor-item-active:not(:hover)::before,
.elementor-nav-menu--main.e--pointer-underline
.elementor-nav-menu > li > a.elementor-item.elementor-item-active:not(:hover)::after{
  opacity: 0 !important;
  transform: scaleX(0) !important;
}

.elementor-nav-menu--main.e--pointer-underline
.elementor-nav-menu > li > a.elementor-item:focus:not(:hover)::before,
.elementor-nav-menu--main.e--pointer-underline
.elementor-nav-menu > li > a.elementor-item:focus:not(:hover)::after,
.elementor-nav-menu--main.e--pointer-underline
.elementor-nav-menu > li > a.elementor-item:focus-visible:not(:hover)::before,
.elementor-nav-menu--main.e--pointer-underline
.elementor-nav-menu > li > a.elementor-item:focus-visible:not(:hover)::after{
  opacity: 0 !important;
  transform: scaleX(0) !important;
}

/* Sub-menu do sub-menu: remover radius do lado esquerdo */
.elementor-nav-menu--main .sub-menu .sub-menu{
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}

/* Reserva de espaço à direita para o underline não ir até à seta */
.elementor-nav-menu--main.e--pointer-underline{
  --arrow-space: 20px;
}

.elementor-nav-menu--main.e--pointer-underline .elementor-item::before,
.elementor-nav-menu--main.e--pointer-underline .elementor-item::after{
  width: calc(100% - var(--arrow-space)) !important;
  left: 0 !important;
}

.elementor-element-3832845.main-nav .elementor-item {
    font-weight: 600 !important;
}/* End custom CSS */
/* Start custom CSS for icon, class: .elementor-element-aadc5e4 */.elementor-1145 .elementor-element.elementor-element-aadc5e4{
    width: 30px !important;
}
.elementor-1145 .elementor-element.elementor-element-aadc5e4 .elementor-icon-wrapper {
    height: 25px;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-21c25b9 */.elementor-1145 .elementor-element.elementor-element-21c25b9 a{
    width: 110px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* =========================================================
   BUTTONS (.btn-ani)
   SVG à direita + texto mexe + fade in/out
   ========================================================= */

.elementor-1145 .elementor-element.elementor-element-21c25b9.btn-ani{
  --ani-pad: 7.5px;    /* margem base esquerda/direita */
  --ani-icon: 14px;   /* tamanho do svg */
  --ani-gap: 5px;     /* espaço entre texto e svg */
}

/* botão base */
.elementor-1145 .elementor-element.elementor-element-21c25b9.btn-ani .elementor-button{
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

/* conteúdo (texto) */
.elementor-1145 .elementor-element.elementor-element-21c25b9.btn-ani .elementor-button .elementor-button-content-wrapper{
  display: inline-flex;
  align-items: center;
  transition: transform 0.25s cubic-bezier(.4,0,.2,1) 0.14s;
  will-change: transform;
}

/* SVG (estado normal) */
.elementor-1145 .elementor-element.elementor-element-21c25b9.btn-ani .elementor-button::after{
  content: "";
  position: absolute;
right: calc(var(--ani-pad) + 0px);   /* mesma margem que à esquerda */
  top: 50%;
  width: var(--ani-icon);
  height: var(--ani-icon);
  background: url("http://estrategor.way.pt/wp-content/uploads/2025/12/caret-right-1.svg") center/contain no-repeat;

  opacity: 0;
  transform: translateY(-50%);
  pointer-events: none;

  transition: opacity 0.18s ease;
}

/* =========================
   DESKTOP: hover normal
   ========================= */
@media (hover: hover) and (pointer: fine){

  /* HOVER: reservar espaço à direita para o SVG */
  .elementor-1145 .elementor-element.elementor-element-21c25b9.btn-ani .elementor-button:hover{
    padding-right: calc(var(--ani-pad) + var(--ani-gap) + var(--ani-icon)) !important;
  }

  /* HOVER: texto desloca-se (subtil) */
  .elementor-1145 .elementor-element.elementor-element-21c25b9.btn-ani .elementor-button:hover .elementor-button-content-wrapper{
    transform: translateX(calc((var(--ani-gap) + var(--ani-icon)) * -0.5));
  }

  /* HOVER: SVG aparece */
  .elementor-1145 .elementor-element.elementor-element-21c25b9.btn-ani .elementor-button:hover::after{
    opacity: 1;
  }
}

/* =========================
   TOUCH: usar :active (não fica preso ao voltar atrás)
   ========================= */
@media (hover: none) and (pointer: coarse){

  /* remove efeito "sticky hover" */
  .elementor-1145 .elementor-element.elementor-element-21c25b9.btn-ani .elementor-button:hover{
    padding-right: 0 !important;
  }
  .elementor-1145 .elementor-element.elementor-element-21c25b9.btn-ani .elementor-button:hover .elementor-button-content-wrapper{
    transform: none !important;
  }
  .elementor-1145 .elementor-element.elementor-element-21c25b9.btn-ani .elementor-button:hover::after{
    opacity: 0 !important;
  }

  /* anima só enquanto está a tocar */
  .elementor-1145 .elementor-element.elementor-element-21c25b9.btn-ani .elementor-button:active{
    padding-right: calc(var(--ani-pad) + var(--ani-gap) + var(--ani-icon)) !important;
  }
  .elementor-1145 .elementor-element.elementor-element-21c25b9.btn-ani .elementor-button:active .elementor-button-content-wrapper{
    transform: translateX(calc((var(--ani-gap) + var(--ani-icon)) * -0.5));
  }
  .elementor-1145 .elementor-element.elementor-element-21c25b9.btn-ani .elementor-button:active::after{
    opacity: 1;
  }

  /* alguns browsers mantêm focus: força reset */
  .elementor-1145 .elementor-element.elementor-element-21c25b9.btn-ani .elementor-button:focus,
  .elementor-1145 .elementor-element.elementor-element-21c25b9.btn-ani .elementor-button:focus-visible{
    padding-right: 0 !important;
  }
  .elementor-1145 .elementor-element.elementor-element-21c25b9.btn-ani .elementor-button:focus .elementor-button-content-wrapper,
  .elementor-1145 .elementor-element.elementor-element-21c25b9.btn-ani .elementor-button:focus-visible .elementor-button-content-wrapper{
    transform: none !important;
  }
  .elementor-1145 .elementor-element.elementor-element-21c25b9.btn-ani .elementor-button:focus::after,
  .elementor-1145 .elementor-element.elementor-element-21c25b9.btn-ani .elementor-button:focus-visible::after{
    opacity: 0 !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f2a1d4f *//* Acelerar animações do menu Elementor */
.animated.animated-fast {
animation-duration: .01s !important;
}
@media (max-width: 1024px){
  .elementor-1145 .elementor-element.elementor-element-f2a1d4f{
    display: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for icon, class: .elementor-element-fb27254 *//* =========================================================
   TOGGLE MOBILE (ESTÁVEL) — ÍCONE NO ::before
   Resolve “seta fantasma” em cliques subsequentes no iOS
   ========================================================= */

/* base do botão */
.elementor-location-header .mobile-menu-toggle{
  width: 30px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;

  /* não deixar o Elementor “desenhar” nada por trás */
  background: none !important;
  border: 0 !important;

  position: relative !important;
  overflow: hidden !important;

  /* iOS: evita highlights/artefactos */
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  outline: none !important;
}

/* esconder o SVG interno SEMPRE */
.elementor-location-header .mobile-menu-toggle svg{
  display: none !important;
}

/* matar pseudo-elementos gerados pelo widget nos filhos (onde a seta aparece) */
.elementor-location-header .mobile-menu-toggle *::before,
.elementor-location-header .mobile-menu-toggle *::after{
  content: none !important;
  display: none !important;
  background: none !important;
  background-image: none !important;
  -webkit-mask: none !important;
  mask: none !important;
}

/* desenhar hamburger no ::before (controlado por nós) */
.elementor-location-header .mobile-menu-toggle::before{
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: url("http://estrategor.way.pt/wp-content/uploads/2026/01/list.svg") center/contain no-repeat !important;
}

/* garantir que não existe ::after “perdido” */
.elementor-location-header .mobile-menu-toggle::after{
  content: none !important;
  display: none !important;
}

/* quando o header abre, trocar para X */
.elementor-location-header.is-open .mobile-menu-toggle::before{
  background-image: url("http://estrategor.way.pt/wp-content/uploads/2026/01/x.svg") !important;
}

/* extra: estados que no iOS podem ficar presos */
.elementor-location-header .mobile-menu-toggle:focus,
.elementor-location-header .mobile-menu-toggle:active{
  outline: none !important;
}/* End custom CSS */
/* Start custom CSS for search, class: .elementor-element-1337900 *//* ========= HEADER SEARCH DROPDOWN — FINAL ========= */

/* DROPDOWN (sem faixa full width) */
.header-search-dropdown{
  background: transparent !important;
  box-shadow: none !important;
  border-top: 0 !important;
  padding: 0 !important;
}

/* INNER container alinhado igual ao header */
.header-search-inner{
  width: 90% !important;              /* ✅ igual ao header */
  margin: 0 auto !important;
  padding: 0 !important;
}

/* FORM (caixa branca com padding 10px) */
.header-search-dropdown form,
.header-search-dropdown .elementor-search-form,
.header-search-dropdown .searchform{
  width: 420px !important;            /* 🔧 ajusta se quiseres */
  margin-left: 65% !important;       /* alinha à direita dentro dos 90% */
  margin-right: 0 !important;

  padding: 10px !important;

  background: #ffffff !important;
  border: 1px solid #E8E8E8 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;

  min-height: 0 !important;
  height: auto !important;
}

/* CONTAINER interno do Elementor */
.header-search-dropdown .elementor-search-form__container{
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;

  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;

  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* INPUT */
.header-search-dropdown input[type="search"],
.header-search-dropdown input[type="text"],
.header-search-dropdown .elementor-search-form__input{
  height: 30px !important;
  min-height: 30px !important;
  max-height: 30px !important;
  line-height: 30px !important;

  background-color: #BBBBBB15 !important;
  border: 1px solid #88888810 !important;
  border-radius: 999px !important;

  padding: 0 15px !important;
  margin: 0 !important;

  flex: 1 1 auto !important;
  width: 100% !important;

  outline: none !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

/* BOTÃO submit */
.header-search-dropdown button[type="submit"],
.header-search-dropdown input[type="submit"],
.header-search-dropdown .elementor-search-form__submit,
.header-search-dropdown .search-submit{
  width: 20px !important;
  min-width: 20px !important;
  height: 20px !important;

  padding: 0 !important;
  margin: 0 !important;

  border: 0 !important;
  border-radius: 0 !important;

  background: url('http://estrategor.way.pt/wp-content/uploads/2026/01/arrow-right.svg') no-repeat center center !important;
  background-size: 16px !important;

  box-shadow: none !important;
  cursor: pointer !important;

  background-color: transparent !important;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
}

/* esconder texto */
.header-search-dropdown button[type="submit"] span,
.header-search-dropdown .elementor-search-form__submit span{
  display: none !important;
}

/* esconder ícones */
.header-search-dropdown button[type="submit"] i,
.header-search-dropdown button[type="submit"] svg,
.header-search-dropdown .elementor-search-form__submit i,
.header-search-dropdown .elementor-search-form__submit svg{
  display: none !important;
}

/* remover margens do widget */
.header-search-dropdown .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}

/* remover min-height herdado */
.header-search-dropdown input{
  min-height: 0 !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d3f1245 */.elementor-1145 .elementor-element.elementor-element-d3f1245 {
    height: 100px !important;
}/* End custom CSS */
/* Start custom CSS for search, class: .elementor-element-e90c5fc */.elementor-1145 .elementor-element.elementor-element-e90c5fc button{
    padding: 0px !important;
}

.elementor-1145 .elementor-element.elementor-element-e90c5fc {
    height: 30px;
}

.elementor-1145 .elementor-element.elementor-element-e90c5fc .e-search-input {
    height: 30px !important;
}

.elementor-1145 .elementor-element.elementor-element-e90c5fc .e-search-input-wrapper input {
    padding: 10px;
}/* End custom CSS */
/* Start custom CSS for nav-menu, class: .elementor-element-77ef87d *//* ============================================
   MOBILE MENU – trocar caret para DOWN
   ============================================ */

/* esconder o SVG original */
.mobile-menu-panel .sub-arrow svg{
  display: none !important;
}

/* inserir novo caret-down */
.mobile-menu-panel .sub-arrow::before{
  content: "";
  width: 14px;
  height: 14px;
  background-image: url("http://estrategor.way.pt/wp-content/uploads/2026/01/caret-down-2.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  display: inline-block;
}

.elementor-1145 .elementor-element.elementor-element-77ef87d .elementor-sub-item {
    padding: 5px 0px;
}

.mobile-menu-panel .menu-accordion ul.sub-menu.elementor-nav-menu--dropdown{
  padding-bottom: 15px !important;
  box-sizing: border-box;
}

/* em vez de depender do padding-bottom do UL (que o iOS “pisca”) */
.mobile-menu-panel .menu-accordion ul.sub-menu.elementor-nav-menu--dropdown{
  padding-bottom: 0 !important;
}

/* espaço garantido no fim do submenu */
.mobile-menu-panel .menu-accordion ul.sub-menu.elementor-nav-menu--dropdown > li:last-child{
  margin-bottom: 15px !important;
}
@media (max-width: 1024px){

  /* garante que nada “extra” aparece no botão */
  .elementor-menu-toggle,
  .elementor-menu-toggle *{
    -webkit-appearance: none !important;
    appearance: none !important;
  }

  /* remove qualquer pseudo-elemento/ícone estranho (inclui essa seta) */
  .elementor-menu-toggle::before,
  .elementor-menu-toggle::after,
  .elementor-menu-toggle *::before,
  .elementor-menu-toggle *::after{
    content: none !important;
    display: none !important;
  }

  /* escondemos os ícones internos do Elementor (onde a seta está a aparecer) */
  .elementor-menu-toggle i,
  .elementor-menu-toggle svg{
    display: none !important;
  }

  /* desenhamos nós o hamburger/X */
  .elementor-menu-toggle{
    position: relative !important;
    width: 44px !important;
    height: 44px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  .elementor-menu-toggle::before{
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: url("https://estrategor.pt/wp-content/uploads/2026/02/hamburger.svg") center/24px 24px no-repeat !important;
  }

  /* quando o menu está aberto, o Elementor mete .elementor-active */
  .elementor-menu-toggle.elementor-active::before{
    background-image: url("https://estrategor.pt/wp-content/uploads/2026/02/close.svg") !important;
  }
}
@media (max-width: 1024px){
  /* mantém apenas os ícones esperados do toggle */
  .elementor-menu-toggle i:not(.eicon-menu-bar):not(.eicon-close){
    display: none !important;
  }

  /* se a seta for SVG injetado no toggle */
  .elementor-menu-toggle svg{
    display: none !important;
  }
}

/* =========================================
   REMOVER COR VERDE DOS ITENS ACTIVE
   APENAS NO MENU MOBILE
   ========================================= */

.mobile-menu-panel .elementor-nav-menu a.elementor-item-active,
.mobile-menu-panel .elementor-nav-menu li.current-menu-item > a,
.mobile-menu-panel .elementor-nav-menu li.current_page_item > a,
.mobile-menu-panel .elementor-nav-menu li.current-menu-ancestor > a,
.mobile-menu-panel .elementor-nav-menu li.current_page_ancestor > a{
  color: #000 !important;        /* volta à cor normal */
  background: none !important;      /* remove fundo se existir */
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-28fa7bc */.elementor-1145 .elementor-element.elementor-element-28fa7bc a{
    width: 96px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-512cf64 *//* O header tem de ser referência para o painel */
.elementor-location-header{
  position: relative;
  z-index: 9999;
}

/* Painel fechado por defeito */
.mobile-menu-panel{
  display: none;
  background: #fff;
  width: 100%;

  /* ✅ isto impede empurrar o conteúdo */
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;         /* aparece por baixo do header */
  z-index: 99999;
}

/* Quando aberto */
.is-open .mobile-menu-panel{
  display: block;
}

/* Separadores do menu (vertical) */
.mobile-menu-panel .elementor-nav-menu > li{
  border-bottom: 1px solid #e8e8e8;
}

.mobile-menu-panel .elementor-nav-menu > li > a{
  padding: 16px 0;
}

/* Centrar conteúdo do painel mobile */
.mobile-menu-panel > .e-con,
.mobile-menu-panel > .elementor-container{
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
}
/* ============================================
   BLOQUEAR SCROLL DA PÁGINA QUANDO MENU ABERTO
   (sem mexer na estrutura)
   ============================================ */
body:has(.elementor-location-header.is-open){
  overflow: hidden !important;
}

/* ============================================
   SCROLL REAL DENTRO DO MENU
   ============================================ */
.mobile-menu-panel{
  max-height: calc(100vh - 140px);
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
}

/* ============================================
   GARANTIR QUE OS SUBMENUS EMPURRAM ALTURA
   ============================================ */
.mobile-menu-panel .sub-menu{
  position: static !important;
}

/* bloquear scroll da página por trás sem partir o scroll do menu */
html:has(.elementor-location-header.is-open),
body:has(.elementor-location-header.is-open){
  overflow: hidden !important;
  height: auto !important;   /* <- não usar 100vh aqui */
}

/* (recomendado) garantir que o menu continua a poder scrollar */
.is-open .mobile-menu-panel{
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
}

/* Remover bullet padrão */
.mobile-menu-panel .sub-menu{
  list-style: none;
  padding-left: 0;
}

/* Apenas padding lateral de 5px + espaço para o hífen */
.mobile-menu-panel .sub-menu li{
  position: relative;
  padding-left: 15px;   /* 5px lateral real + espaço do hífen */
  padding-right: 5px;   /* 5px lateral direito */
}

/* Hífen verde centrado verticalmente */
.mobile-menu-panel .sub-menu li::before{
  content: "-";
  position: absolute;
  left: 5px;            /* começa a 5px da margem */
  top: 50%;
  transform: translateY(-50%);
  color: #64A709;
  font-weight: 400;
}/* End custom CSS */
/* Start custom CSS *//* Header como referência */
.site-header{
  position: relative;
  z-index: 9999;
}

/* Dropdown */
.header-search-dropdown{
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  background: #fff;
  box-shadow: 0 20px 50px rgba(0,0,0,.12);

  opacity: 0;
  transform: translateY(-10px);
  pointer-events: none;
  transition: all .25s ease;
}

/* Estado aberto */
body.search-open .header-search-dropdown{
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

/* alinhamento com container 90% */
.header-search-inner{
  width: 90%;
  margin: 0 auto;
  padding: 24px 0;
}

/* Estilo do campo */
.header-search-dropdown form{
  position: relative;
}

.header-search-dropdown input[type="search"],
.header-search-dropdown input[type="text"]{
  width: 100%;
  height: 60px;
  border-radius: 100px;
  border: 1px solid #e8e8e8;
  padding: 0 70px 0 25px;
  font-size: 16px;
  outline: none;
}

/* Botão seta */
.header-search-dropdown button[type="submit"]{
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  background: transparent;
  border: none;
  cursor: pointer;
}/* End custom CSS */