.elementor-30 .elementor-element.elementor-element-4724df6{--display:flex;--position:fixed;--min-height:0px;--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:space-between;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:32px;--padding-right:32px;top:0px;--z-index:999;}body:not(.rtl) .elementor-30 .elementor-element.elementor-element-4724df6{left:0px;}body.rtl .elementor-30 .elementor-element.elementor-element-4724df6{right:0px;}.elementor-30 .elementor-element.elementor-element-0d4d455{--display:flex;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#EAEAEA17;--border-color:#EAEAEA17;--padding-top:64px;--padding-bottom:64px;--padding-left:64px;--padding-right:64px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;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--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.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 ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-30 .elementor-element.elementor-element-7cc354f.elementor-element{--align-self:center;}.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-text-font-family ), Sans-serif;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 );}.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu--dropdown a, .elementor-30 .elementor-element.elementor-element-7cc354f .elementor-menu-toggle{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu--dropdown{background-color:#02010100;}.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu--dropdown a:hover,
					.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu--dropdown a:focus,
					.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu--dropdown a.highlighted,
					.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-menu-toggle:hover,
					.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-menu-toggle:focus{color:var( --e-global-color-accent );}.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu--dropdown a:hover,
					.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu--dropdown a:focus,
					.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu--dropdown a.highlighted{background-color:#02010100;}.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu--dropdown a.elementor-item-active{color:var( --e-global-color-accent );background-color:#02010100;}.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu--dropdown .elementor-item, .elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:"Oswald", Sans-serif;font-size:48px;font-weight:700;text-transform:uppercase;letter-spacing:-0.028em;}.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu--dropdown a{padding-left:0px;padding-right:0px;padding-top:12px;padding-bottom:12px;}.elementor-30 .elementor-element.elementor-element-7d5ae70{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:2400px){.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-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(max-width:1366px){.elementor-30 .elementor-element.elementor-element-4724df6{--padding-top:0px;--padding-bottom:0px;--padding-left:32px;--padding-right:32px;}.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-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(max-width:1024px){.elementor-30 .elementor-element.elementor-element-0d4d455{--padding-top:32px;--padding-bottom:32px;--padding-left:32px;--padding-right:32px;}.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-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-30 .elementor-element.elementor-element-7cc354f.elementor-element{--align-self:center;}.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu--dropdown a{padding-left:0px;padding-right:0px;padding-top:16px;padding-bottom:16px;}}@media(max-width:767px){.elementor-30 .elementor-element.elementor-element-4724df6{--justify-content:space-between;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-30 .elementor-element.elementor-element-0d4d455{border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:32px;--padding-bottom:32px;--padding-left:32px;--padding-right:32px;}.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-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-30 .elementor-element.elementor-element-7cc354f > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-30 .elementor-element.elementor-element-7cc354f.elementor-element{--align-self:center;}.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu--main .elementor-item{padding-top:16px;padding-bottom:16px;}.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu--dropdown .elementor-item, .elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:32px;}.elementor-30 .elementor-element.elementor-element-7cc354f .elementor-nav-menu--dropdown a{padding-left:0px;padding-right:0px;padding-top:12px;padding-bottom:12px;}}/* Start custom CSS for html, class: .elementor-element-ae0e1f9 *//* 05 · Header · botão Reservar */
/* lateral de largura fixa — idêntica no arquivo 07 */
.mg-nav-side{display:flex;align-items:center;width:148px}
.mg-nav-side--start{justify-content:flex-start}
.mg-nav-side--end{justify-content:flex-end}
@media (max-width:768px){
  .mg-nav-side{width:112px}
}

@media (max-width:359px){
  .mg-nav-side{width:100px}
}

/* ---------- botão ---------- */
a.mg-nav-cta,
a.mg-nav-cta:visited{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:44px;
  padding:0 22px;
  border:1px solid rgba(253,228,218,.5) !important;
  border-radius:0;
  background:transparent !important;
  color:#FDE4DA !important;
  font-family:'Sora',sans-serif;
  font-size:15px;
  font-weight:400;
  line-height:1;
  letter-spacing:.01em;
  text-decoration:none !important;
  white-space:nowrap;
  overflow:hidden;
  isolation:isolate;
  box-shadow:none;
  transition:border-color .5s cubic-bezier(.22,1,.36,1), color .5s cubic-bezier(.22,1,.36,1);
}

/* fundo do hover — sobe de baixo */
a.mg-nav-cta::before{
  content:'';
  position:absolute;
  inset:0;
  z-index:-1;
  background:#FDE4DA;
  clip-path:inset(100% 0 0 0);
  transition:clip-path .55s cubic-bezier(.65,0,.35,1);
}

/* texto que rola */
.mg-nav-cta__roll{display:block;height:1.2em;line-height:1.2em;overflow:hidden}
.mg-nav-cta__roll > span{display:block;transition:transform .55s cubic-bezier(.65,0,.35,1)}
.mg-nav-cta__roll > span::after{content:attr(data-t);display:block}

/* hover, foco de teclado e clique */
a.mg-nav-cta:hover,
a.mg-nav-cta:focus-visible,
a.mg-nav-cta:active{
  color:#2F4F3E !important;
  border-color:#FDE4DA !important;
  background:transparent !important;
}
a.mg-nav-cta:hover::before,
a.mg-nav-cta:focus-visible::before,
a.mg-nav-cta:active::before{clip-path:inset(0 0 0 0)}
a.mg-nav-cta:hover .mg-nav-cta__roll > span,
a.mg-nav-cta:focus-visible .mg-nav-cta__roll > span{transform:translateY(-50%)}

a.mg-nav-cta:focus{outline:none}
a.mg-nav-cta:focus-visible{outline:1px solid #FDE4DA;outline-offset:3px}

/* ---------- header rolado (fundo creme): tudo em verde-mata ---------- */
.mg-header.scrolled a.mg-nav-cta,
.mg-header.scrolled a.mg-nav-cta:visited{
  color:#2F4F3E !important;
  border-color:rgba(47,79,62,.42) !important;
}
.mg-header.scrolled a.mg-nav-cta::before{background:#2F4F3E}
.mg-header.scrolled a.mg-nav-cta:hover,
.mg-header.scrolled a.mg-nav-cta:focus-visible,
.mg-header.scrolled a.mg-nav-cta:active{
  color:#FDE4DA !important;
  border-color:#2F4F3E !important;
}
.mg-header.scrolled a.mg-nav-cta:focus-visible{outline-color:#2F4F3E}

/* ---------- mobile ---------- */
@media (max-width:768px){
  a.mg-nav-cta,
  a.mg-nav-cta:visited{height:40px;padding:0 16px;font-size:14px}
}
@media (max-width:359px){
  a.mg-nav-cta,
  a.mg-nav-cta:visited{height:38px;padding:0 12px;font-size:13px}
}

@media (prefers-reduced-motion:reduce){
  a.mg-nav-cta,
  a.mg-nav-cta::before,
  .mg-nav-cta__roll > span{transition:none}
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-24d7e95 *//* 09 · Header · logo */
a.mg-logo{
  position:relative;
  display:inline-block;
  line-height:0;
  text-decoration:none !important;
  transition:opacity .4s cubic-bezier(.22,1,.36,1);
}
a.mg-logo:hover{opacity:.85}
a.mg-logo:focus{outline:none}
a.mg-logo:focus-visible{outline:1px solid #FDE4DA;outline-offset:6px}

a.mg-logo img.mg-logo__img{
  display:block;
  height:70px !important;
  width:auto !important;
  
  max-width:var(--mg-logo-max, none) !important;
  object-fit:contain;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  transition:opacity .5s cubic-bezier(.22,1,.36,1), height .5s cubic-bezier(.22,1,.36,1);
}

/* a verde fica exatamente por cima da aurora */
a.mg-logo img.mg-logo__img--verde{
  position:absolute;
  top:0;
  left:0;
  opacity:0;
}

/* header rolado (fundo aurora) ou sobre seção clara: troca pra verde */
.mg-header.scrolled a.mg-logo img.mg-logo__img--aurora,
.mg-header.is-light a.mg-logo img.mg-logo__img--aurora{opacity:0}
.mg-header.scrolled a.mg-logo img.mg-logo__img--verde,
.mg-header.is-light a.mg-logo img.mg-logo__img--verde{opacity:1}
.mg-header.scrolled a.mg-logo:focus-visible,
.mg-header.is-light a.mg-logo:focus-visible{outline-color:#2F4F3E}

/* header rolado: logo menor */
.mg-header.scrolled a.mg-logo img.mg-logo__img{height:48px !important}

@media (max-width:768px){
  /* tela − respiro lateral (2×20) − laterais (2×112) − folga (24) */
  a.mg-logo{--mg-logo-max:calc(100vw - 40px - 224px - 24px)}
  a.mg-logo img.mg-logo__img{height:56px !important}
  .mg-header.scrolled a.mg-logo img.mg-logo__img{height:40px !important}
}
/* celulares estreitos (abaixo de 360px) */
@media (max-width:359px){
  a.mg-logo{--mg-logo-max:calc(100vw - 40px - 200px - 28px)}
  a.mg-logo img.mg-logo__img{height:48px !important}
  .mg-header.scrolled a.mg-logo img.mg-logo__img{height:36px !important}
}

@media (prefers-reduced-motion:reduce){
  a.mg-logo,
  a.mg-logo img.mg-logo__img{transition:none}
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e5bd467 *//* 07 · Header · botão Menu */
/* lateral de largura fixa — idêntica no arquivo 05 */
.mg-nav-side{display:flex;align-items:center;width:148px}
.mg-nav-side--start{justify-content:flex-start}
.mg-nav-side--end{justify-content:flex-end}
@media (max-width:768px){
  .mg-nav-side{width:112px}
}
/* celulares estreitos (abaixo de 360px) — idêntico no arquivo 05 */
@media (max-width:359px){
  .mg-nav-side{width:100px}
}

/* ---------- reset do botão (mata o rosa) ---------- */
button.mg-menu-btn,
button.mg-menu-btn:hover,
button.mg-menu-btn:focus,
button.mg-menu-btn:focus-visible,
button.mg-menu-btn:active{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  color:#FDE4DA !important;
  text-decoration:none !important;
}

/* ---------- botão ---------- */
button.mg-menu-btn{
  transition:color .5s cubic-bezier(.22,1,.36,1);
  display:inline-flex;
  align-items:center;
  gap:14px;
  height:44px;
  margin:0;
  font-family:'Sora',sans-serif;
  font-size:15px;
  font-weight:400;
  line-height:1;
  letter-spacing:.01em;
  text-transform:none;
  cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}
button.mg-menu-btn:focus{outline:none}
button.mg-menu-btn:focus-visible{outline:1px solid #FDE4DA;outline-offset:6px}

.mg-menu-btn__label{display:block;transition:opacity .45s cubic-bezier(.22,1,.36,1)}
button.mg-menu-btn:hover .mg-menu-btn__label{opacity:.72}

/* ---------- ícone ---------- */
.mg-menu-btn__icon{position:relative;display:block;width:24px;height:13px}
.mg-menu-btn__icon i{
  position:absolute;
  right:0;
  height:1.5px;
  background:currentColor;
  transition:width .5s cubic-bezier(.22,1,.36,1);
}
.mg-menu-btn__icon i:nth-child(1){top:0;width:24px}
.mg-menu-btn__icon i:nth-child(2){top:50%;width:14px;margin-top:-.75px;transition-delay:.04s}
.mg-menu-btn__icon i:nth-child(3){bottom:0;width:24px;transition-delay:.08s}

button.mg-menu-btn:hover .mg-menu-btn__icon i:nth-child(1),
button.mg-menu-btn:focus-visible .mg-menu-btn__icon i:nth-child(1){width:14px}
button.mg-menu-btn:hover .mg-menu-btn__icon i:nth-child(2),
button.mg-menu-btn:focus-visible .mg-menu-btn__icon i:nth-child(2){width:24px}

/* ---------- header rolado (fundo aurora): verde-mata ---------- */
.mg-header.scrolled button.mg-menu-btn,
.mg-header.scrolled button.mg-menu-btn:hover,
.mg-header.scrolled button.mg-menu-btn:focus,
.mg-header.scrolled button.mg-menu-btn:focus-visible,
.mg-header.scrolled button.mg-menu-btn:active{
  color:#2F4F3E !important;
}
.mg-header.scrolled button.mg-menu-btn:focus-visible{outline-color:#2F4F3E}

/* ---------- mobile ---------- */
@media (max-width:768px){
  button.mg-menu-btn{height:40px;gap:12px;font-size:14px}
}
@media (max-width:359px){
  button.mg-menu-btn{height:38px;gap:9px;font-size:13px}
  .mg-menu-btn__icon{width:20px;height:11px}
  .mg-menu-btn__icon i:nth-child(1),
  .mg-menu-btn__icon i:nth-child(3){width:20px}
  .mg-menu-btn__icon i:nth-child(2){width:12px}
}

@media (prefers-reduced-motion:reduce){
  .mg-menu-btn__icon i,
  .mg-menu-btn__label{transition:none}
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7b34c19 *//* 12 · Menu · botão fechar */
/* o widget sai do fluxo do painel */
.elementor-widget:has(> .elementor-widget-container > #close-button),
.elementor-widget:has(> #close-button){
  position:static !important;
  width:0 !important;
  height:0 !important;
  margin:0 !important;
  padding:0 !important;
}

/* ---------- reset do botão (mata o rosa) ---------- */
button.mg-close-btn,
button.mg-close-btn:hover,
button.mg-close-btn:focus,
button.mg-close-btn:focus-visible,
button.mg-close-btn:active{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  color:#2F4F3E !important;
  text-decoration:none !important;
}

/* ---------- botão ---------- */
button.mg-close-btn,
#popup-overlay > button.mg-close-btn{
  position:absolute;
  top:28px;
  right:40px;
  z-index:2;
  display:inline-flex;
  align-items:center;
  gap:14px;
  height:44px;
  margin:0;
  font-family:'Sora',sans-serif;
  font-size:15px;
  font-weight:400;
  line-height:1;
  letter-spacing:.01em;
  text-transform:none;
  cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}
button.mg-close-btn:focus{outline:none}
button.mg-close-btn:focus-visible{outline:1px solid #2F4F3E;outline-offset:6px}

.mg-close-btn__label{display:block;transition:opacity .45s cubic-bezier(.22,1,.36,1)}
button.mg-close-btn:hover .mg-close-btn__label{opacity:.65}

/* ---------- ícone ---------- */
.mg-close-btn__icon{
  position:relative;
  display:block;
  width:18px;
  height:18px;
  transition:transform .6s cubic-bezier(.22,1,.36,1);
}
.mg-close-btn__icon i{
  position:absolute;
  top:50%;
  left:-2px;
  width:22px;
  height:1.5px;
  margin-top:-.75px;
  background:currentColor;
}
.mg-close-btn__icon i:nth-child(1){transform:rotate(45deg)}
.mg-close-btn__icon i:nth-child(2){transform:rotate(-45deg)}

button.mg-close-btn:hover .mg-close-btn__icon,
button.mg-close-btn:focus-visible .mg-close-btn__icon{transform:rotate(90deg)}

/* ---------- painel em tela cheia ---------- */
@media (max-width:1024px){
  button.mg-close-btn,
  #popup-overlay > button.mg-close-btn{top:26px;right:40px}
}
@media (max-width:767px){
  /* mesma altura e margem do botão Menu no header de 76px */
  button.mg-close-btn,
  #popup-overlay > button.mg-close-btn{top:18px;right:20px;height:40px;gap:12px;font-size:14px}
}

@media (prefers-reduced-motion:reduce){
  .mg-close-btn__icon,
  .mg-close-btn__label{transition:none}
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-bdf6246 *//* 14 · Menu · divisor */
.mg-popup-divider{
  position:relative;
  width:100%;
  height:1px;
  margin:clamp(12px, 3vh, 32px) 0;   /* encolhe em tela baixa */
}
.mg-popup-divider::before{
  content:'';
  position:absolute;
  inset:0;
  background:rgba(47,79,62,.2);
  transform:scaleX(0);
  transform-origin:0 50%;
  transition:transform .9s cubic-bezier(.16,1,.3,1);
}
#popup-overlay.active .mg-popup-divider::before{
  transform:scaleX(1);
  transition-delay:.8s;    /* depois do fundo e do painel */
}
#popup-overlay.closing .mg-popup-divider::before{transition-delay:0s}

/* fora do popup (ou no editor) a linha fica sempre visível */
body.elementor-editor-active .mg-popup-divider::before,
.mg-popup-divider:not(#popup-overlay .mg-popup-divider)::before{transform:scaleX(1)}

@media (max-width:767px){
  .mg-popup-divider{margin:clamp(12px, 2.8vh, 24px) 0}
}

@media (prefers-reduced-motion:reduce){
  .mg-popup-divider::before{transition:none;transform:scaleX(1)}
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6a3d00b *//* 16 · Menu · endereço e contato */
.mg-popup-info{
  display:grid;
  grid-template-columns:minmax(0, 1fr);
  gap:clamp(10px, 2.4vh, 22px);      /* encolhe em tela baixa */
  width:100%;
  font-family:'Sora',sans-serif;
}

.mg-popup-info__col{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:clamp(2px, .6vh, 6px);
  min-width:0;
}

p.mg-popup-info__label{
  margin:0 0 4px;
  font-size:12px;
  font-weight:500;
  line-height:1.4;
  letter-spacing:.01em;
  color:#824837;
}

.mg-popup-info__text,
p.mg-popup-info__text{
  margin:0;
  font-size:14px;
  font-weight:400;
  line-height:1.5;
  letter-spacing:0;
  color:#3D3D3D;
}
@media (max-height:700px){
  .mg-popup-info__text,
  p.mg-popup-info__text{font-size:13px}
}

/* contatos: texto com cara de texto, mas clicável */
a.mg-popup-info__contact,
a.mg-popup-info__contact:link,
a.mg-popup-info__contact:visited{
  display:block;
  color:#3D3D3D !important;
  text-decoration:none !important;
  background:transparent !important;
  white-space:nowrap;
  transition:color .3s ease;
}
a.mg-popup-info__contact:hover,
a.mg-popup-info__contact:focus,
a.mg-popup-info__contact:active{
  color:#2F4F3E !important;
  background:transparent !important;
}

/* "Ver no mapa": link com linha que recolhe no hover */
a.mg-popup-info__link,
a.mg-popup-info__link:link,
a.mg-popup-info__link:visited{
  display:inline-block;
  margin-top:4px;
  padding-bottom:3px;
  font-size:13px;
  font-weight:500;
  line-height:1.4;
  color:#2F4F3E !important;
  text-decoration:none !important;
  background:linear-gradient(currentColor, currentColor) 100% 100% / 100% 1px no-repeat;
  transition:background-size .5s cubic-bezier(.22,1,.36,1);
}
a.mg-popup-info__link:hover,
a.mg-popup-info__link:focus,
a.mg-popup-info__link:active{
  color:#2F4F3E !important;
  background-size:0% 1px;
}

.mg-popup-info a:focus{outline:none}
.mg-popup-info a:focus-visible{outline:1px solid #2F4F3E;outline-offset:3px}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-003a3df *//* 18 · Menu · redes sociais */
.mg-popup-social{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:16px;
  width:100%;
  font-family:'Sora',sans-serif;
}

p.mg-popup-social__label{
  margin:0;
  font-size:12px;
  font-weight:500;
  line-height:1.4;
  letter-spacing:.01em;
  color:#824837;
}

ul.mg-popup-social__list{
  display:flex;
  align-items:center;
  gap:24px;
  margin:0;
  padding:0;
  list-style:none;
}
ul.mg-popup-social__list li{margin:0;padding:0}

a.mg-popup-social__link,
a.mg-popup-social__link:link,
a.mg-popup-social__link:visited{
  display:inline-flex;
  align-items:center;
  gap:9px;
  font-size:14px;
  font-weight:400;
  line-height:1;
  color:#2F4F3E !important;
  text-decoration:none !important;
  background:transparent !important;
}
a.mg-popup-social__link:hover,
a.mg-popup-social__link:focus,
a.mg-popup-social__link:active{
  color:#2F4F3E !important;
  background:transparent !important;
}

.mg-popup-social__link svg{
  width:19px;
  height:19px;
  flex-shrink:0;
  fill:none;
  stroke:currentColor;
  stroke-width:1.5;
  stroke-linejoin:round;
  transition:transform .5s cubic-bezier(.22,1,.36,1);
}
.mg-popup-social__link svg .dot{fill:currentColor;stroke:none}

.mg-popup-social__link span{
  padding-bottom:2px;
  background:linear-gradient(currentColor, currentColor) 0 100% / 0% 1px no-repeat;
  transition:background-size .5s cubic-bezier(.22,1,.36,1);
}
a.mg-popup-social__link:hover svg,
a.mg-popup-social__link:focus-visible svg{transform:translateY(-2px)}
a.mg-popup-social__link:hover span,
a.mg-popup-social__link:focus-visible span{background-size:100% 1px}

a.mg-popup-social__link:focus{outline:none}
a.mg-popup-social__link:focus-visible{outline:1px solid #2F4F3E;outline-offset:4px}

@media (max-width:380px){
  .mg-popup-social{flex-direction:column;align-items:flex-start;gap:12px}
}

@media (prefers-reduced-motion:reduce){
  .mg-popup-social__link svg,
  .mg-popup-social__link span{transition:none}
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0d4d455 *//* 10 · Menu · popup */
.mg-popup-backdrop{
  position:fixed;
  inset:0;
  z-index:999;                      /* abaixo do painel (1000) */
  background:rgba(8,20,13,.5);
  -webkit-backdrop-filter:blur(6px);
  backdrop-filter:blur(6px);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  /* fechando: espera o painel sumir (.25s) e só então apaga */
  transition:opacity .45s ease .25s, visibility 0s linear .7s;
}
body.mg-menu-open .mg-popup-backdrop{
  opacity:1;
  visibility:visible;
  pointer-events:auto;              /* clique no fundo: o JS fecha */
  /* abrindo: aparece na hora — o painel espera por ele */
  transition:opacity .5s ease, visibility 0s;
}

body.mg-menu-open{overflow:hidden !important}

#popup-overlay{
  position:fixed !important;
  top:8px;
  right:8px;
  bottom:8px;
  left:auto;
  z-index:1000 !important;
  width:clamp(440px, 32vw, 580px) !important;
  max-width:none !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  
  padding:clamp(72px, 13vh, 120px) 64px clamp(24px, 5vh, 48px) !important;
  box-sizing:border-box;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  gap:0 !important;
  background:#E9E1D6 !important;
  background-image:none !important;
  color:#2F4F3E;
  text-align:left;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:none;

  /* ESCONDIDO — !important: nada do painel do Elementor abre ele */
  visibility:hidden !important;
  pointer-events:none !important;
  opacity:0;
  clip-path:inset(0% 0% 28% 28%) !important;     /* recorte leve, preso no canto superior direito */
  transform:scale(.97);
  transform-origin:100% 0%;
  transition:
    opacity    .5s  cubic-bezier(.16,1,.3,1),
    clip-path  .45s cubic-bezier(.4,0,.2,1),
    transform  .45s cubic-bezier(.4,0,.2,1),
    visibility 0s linear .5s;
}
#popup-overlay::-webkit-scrollbar{width:0}

#popup-overlay.active{
  visibility:visible !important;
  pointer-events:auto !important;
  opacity:1;
  clip-path:inset(0% 0% 0% 0%) !important;
  transform:scale(1);
  transition:
    opacity    .7s cubic-bezier(.16,1,.3,1) .3s,
    clip-path  1s  cubic-bezier(.16,1,.3,1) .3s,
    transform  1s  cubic-bezier(.16,1,.3,1) .3s,
    visibility 0s;
}
#popup-overlay.active.closing{
  opacity:0;
  clip-path:inset(0% 0% 10% 10%) !important;
  transform:scale(.985);
  transition:
    opacity   .4s cubic-bezier(.4,0,.2,1),
    clip-path .45s cubic-bezier(.4,0,.2,1),
    transform .45s cubic-bezier(.4,0,.2,1);
}

/* se o container estiver em Boxed, o Elementor põe um .e-con-inner no meio */
#popup-overlay > .e-con-inner{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  width:100% !important;
  max-width:none !important;
  min-height:100%;
  margin:0 !important;
  padding:0 !important;
  gap:0 !important;
  background:transparent !important;
}
/* os widgets ocupam a largura do painel */
#popup-overlay > .elementor-element,
#popup-overlay > .e-con-inner > .elementor-element{width:100%;max-width:100%}

#popup-overlay .elementor-nav-menu > li,
#popup-overlay .elementor-nav-menu > ul > li,
#popup-overlay .elementor-widget-html{
  opacity:0;
  transform:translateY(10px);
  transition:
    opacity   .8s cubic-bezier(.16,1,.3,1),
    transform 1s  cubic-bezier(.16,1,.3,1);
}
#popup-overlay.active .elementor-nav-menu > li,
#popup-overlay.active .elementor-nav-menu > ul > li,
#popup-overlay.active .elementor-widget-html{
  opacity:1;
  transform:none;
}
#popup-overlay.active .elementor-nav-menu > li:nth-child(1){transition-delay:.52s}
#popup-overlay.active .elementor-nav-menu > li:nth-child(2){transition-delay:.57s}
#popup-overlay.active .elementor-nav-menu > li:nth-child(3){transition-delay:.62s}
#popup-overlay.active .elementor-nav-menu > li:nth-child(4){transition-delay:.67s}
#popup-overlay.active .elementor-nav-menu > li:nth-child(5){transition-delay:.72s}
#popup-overlay.active .elementor-nav-menu > li:nth-child(6){transition-delay:.77s}
#popup-overlay.active .elementor-nav-menu > li:nth-child(7){transition-delay:.82s}
#popup-overlay.active .elementor-nav-menu > li:nth-child(n+8){transition-delay:.87s}
#popup-overlay.active .elementor-widget-html{transition-delay:.85s}
/* blocos do rodapé do painel, em sequência depois dos itens */
#popup-overlay.active .elementor-widget-html:has(.mg-popup-info){transition-delay:.92s}
#popup-overlay.active .elementor-widget-html:has(.mg-popup-social){transition-delay:1.02s}
#popup-overlay.active .elementor-widget-html:has(.mg-nav-cta){transition-delay:1.1s}

#popup-overlay .elementor-widget-html:has(#close-button),
#popup-overlay.active .elementor-widget-html:has(#close-button),
#popup-overlay.closing .elementor-widget-html:has(#close-button){transform:none !important}
#popup-overlay.active .elementor-widget-html:has(#close-button){transition-delay:.5s}

/* na saída, tudo some junto e rápido */
#popup-overlay.closing .elementor-nav-menu > li,
#popup-overlay.closing .elementor-nav-menu > ul > li,
#popup-overlay.closing .elementor-widget-html{
  opacity:0;
  transform:none;
  transition:opacity .25s ease;
  transition-delay:0s !important;
}

/* o hambúrguer e o dropdown do próprio widget não são usados aqui */
#popup-overlay .elementor-menu-toggle{display:none !important}
#popup-overlay nav.elementor-nav-menu--dropdown{display:none !important}
#popup-overlay nav.elementor-nav-menu--main{display:block !important}

#popup-overlay .elementor-widget-nav-menu{width:100% !important}

/* anti-vazamento */
#popup-overlay .elementor-widget-container,
#popup-overlay .elementor-nav-menu--main,
#popup-overlay .elementor-nav-menu,
#popup-overlay nav{
  flex-wrap:nowrap !important;
  max-height:none !important;
  height:auto !important;
  overflow:visible !important;
}

/* lista: coluna alinhada à esquerda */
#popup-overlay .elementor-nav-menu,
#popup-overlay .elementor-nav-menu > ul{
  display:flex !important;
  flex-direction:column !important;
  flex-wrap:nowrap !important;
  align-items:flex-start !important;
  width:100% !important;
  list-style:none !important;
  padding:0 !important;
  margin:0 !important;
}
#popup-overlay .elementor-nav-menu > li,
#popup-overlay .elementor-nav-menu > ul > li{
  width:100% !important;
  display:block !important;
  position:relative !important;
  flex:0 0 auto !important;
  text-align:left !important;
  border:0 !important;
}

/* itens principais */
#popup-overlay .elementor-nav-menu > li > a,
#popup-overlay .elementor-nav-menu > li > a:link,
#popup-overlay .elementor-nav-menu > li > a:visited,
#popup-overlay .elementor-nav-menu > ul > li > a,
#popup-overlay .elementor-nav-menu > ul > li > a:link,
#popup-overlay .elementor-nav-menu > ul > li > a:visited{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:12px !important;
  position:relative !important;
  padding:clamp(2px, .55vh, 5px) 0 !important;
  margin:0 !important;
  font-family:'Sora',sans-serif !important;
  
  font-size:clamp(18px, min(1.7vw, 3.2vh), 26px) !important;
  font-weight:400 !important;
  letter-spacing:-.02em !important;
  text-transform:none !important;
  line-height:1.28 !important;
  color:#2F4F3E !important;
  background:transparent !important;
  border:none !important;
  text-decoration:none !important;
  opacity:1;
  transform:translateX(0);
  transition:opacity .4s cubic-bezier(.22,1,.36,1), transform .6s cubic-bezier(.22,1,.36,1) !important;
}
#popup-overlay .elementor-nav-menu > li > a:hover,
#popup-overlay .elementor-nav-menu > li > a:focus,
#popup-overlay .elementor-nav-menu > li > a:active,
#popup-overlay .elementor-nav-menu > ul > li > a:hover,
#popup-overlay .elementor-nav-menu > ul > li > a:focus,
#popup-overlay .elementor-nav-menu > ul > li > a:active{
  color:#2F4F3E !important;
  background:transparent !important;
}

#popup-overlay .elementor-nav-menu a::before{display:none !important}
#popup-overlay .elementor-nav-menu li:not(.menu-item-has-children) > a::after{display:none !important}

/* hover: o item fica aceso, os outros apagam */
@media (hover:hover) and (pointer:fine){
  #popup-overlay .elementor-nav-menu:hover > li > a,
  #popup-overlay .elementor-nav-menu > ul:hover > li > a{opacity:.35}
  #popup-overlay .elementor-nav-menu > li:hover > a,
  #popup-overlay .elementor-nav-menu > li > a:focus-visible,
  #popup-overlay .elementor-nav-menu > ul > li:hover > a,
  #popup-overlay .elementor-nav-menu > ul > li > a:focus-visible{opacity:1 !important;transform:translateX(6px)}
}

/* página atual: ponto laranja antes do texto */
#popup-overlay .elementor-nav-menu > li > a.elementor-item-active::before,
#popup-overlay .elementor-nav-menu > li > a[aria-current="page"]::before,
#popup-overlay .elementor-nav-menu > ul > li > a.elementor-item-active::before,
#popup-overlay .elementor-nav-menu > ul > li > a[aria-current="page"]::before{
  content:'' !important;
  display:block !important;
  position:static !important;
  width:6px !important;
  height:6px !important;
  border-radius:50% !important;
  background:#F26538 !important;
  opacity:1 !important;
  transform:none !important;
}

/* chevron do item-pai */
#popup-overlay .menu-item-has-children > a::after{
  content:'' !important;
  display:block !important;
  width:7px !important;
  height:7px !important;
  border-right:1px solid currentColor !important;
  border-bottom:1px solid currentColor !important;
  transform:translateY(-3px) rotate(45deg) !important;
  transition:transform .35s cubic-bezier(.22,1,.36,1) !important;
  opacity:.6 !important;
  pointer-events:none !important;
  flex-shrink:0 !important;
  position:static !important;
  background:none !important;
}
#popup-overlay li.submenu-open > a::after{
  transform:translateY(1px) rotate(225deg) !important;
}
#popup-overlay .menu-item-has-children > a .sub-arrow{
  display:none !important;
  visibility:hidden !important;
  width:0 !important;
  height:0 !important;
  overflow:hidden !important;
}

/* submenu: acordeão */
#popup-overlay .sub-menu{
  list-style:none !important;
  padding:0 !important;
  margin:0 !important;
  max-height:0 !important;
  overflow:hidden !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  position:static !important;
  opacity:1 !important;
  transform:none !important;
  pointer-events:auto !important;
  transition:max-height .45s cubic-bezier(.22,1,.36,1),
             padding    .45s cubic-bezier(.22,1,.36,1) !important;
}
#popup-overlay li.submenu-open > .sub-menu{
  max-height:600px !important;
  padding:4px 0 14px 2px !important;
}
#popup-overlay .sub-menu li{
  margin:0 !important;
  padding:0 !important;
  width:100% !important;
  display:block !important;
  border:0 !important;
}
#popup-overlay .sub-menu a,
#popup-overlay .sub-menu a:link,
#popup-overlay .sub-menu a:visited{
  display:block !important;
  padding:5px 0 !important;
  font-family:'Sora',sans-serif !important;
  font-size:15px !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  line-height:1.3 !important;
  color:rgba(47,79,62,.62) !important;
  border:none !important;
  background:transparent !important;
  text-decoration:none !important;
  transition:color .25s ease !important;
}
#popup-overlay .sub-menu a:hover,
#popup-overlay .sub-menu a:focus,
#popup-overlay .sub-menu a:active,
#popup-overlay .sub-menu a.elementor-item-active,
#popup-overlay .sub-menu a.highlighted,
#popup-overlay .sub-menu a[aria-current="page"]{
  color:#2F4F3E !important;
  background:transparent !important;
}

#popup-overlay .mg-popup-secondary{margin-top:40px !important}
#popup-overlay .mg-popup-secondary .elementor-nav-menu > li > a,
#popup-overlay .mg-popup-secondary .elementor-nav-menu > li > a:link,
#popup-overlay .mg-popup-secondary .elementor-nav-menu > li > a:visited,
#popup-overlay .mg-popup-secondary .elementor-nav-menu > ul > li > a,
#popup-overlay .mg-popup-secondary .elementor-nav-menu > ul > li > a:link,
#popup-overlay .mg-popup-secondary .elementor-nav-menu > ul > li > a:visited{
  font-size:14px !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
  line-height:1.5 !important;
  padding:3px 0 !important;
  color:#3D3D3D !important;
}
#popup-overlay .mg-popup-secondary .elementor-nav-menu > li > a:hover,
#popup-overlay .mg-popup-secondary .elementor-nav-menu > li > a:focus,
#popup-overlay .mg-popup-secondary .elementor-nav-menu > ul > li > a:hover,
#popup-overlay .mg-popup-secondary .elementor-nav-menu > ul > li > a:focus{
  color:#3D3D3D !important;
}
#popup-overlay .mg-popup-secondary .elementor-nav-menu > li > a::before{width:6px !important;height:6px !important}

#popup-overlay .elementor-widget-html:has(.mg-nav-cta){margin-top:auto !important;padding-top:clamp(10px, 4vh, 40px)}
#popup-overlay a.mg-nav-cta,
#popup-overlay a.mg-nav-cta:visited{
  height:clamp(40px, 6vh, 52px);
  padding:0 30px;
  font-size:16px;
  color:#2F4F3E !important;
  border-color:rgba(47,79,62,.4) !important;
}
#popup-overlay a.mg-nav-cta::before{background:#2F4F3E}
#popup-overlay a.mg-nav-cta:hover,
#popup-overlay a.mg-nav-cta:focus-visible,
#popup-overlay a.mg-nav-cta:active{
  color:#FDE4DA !important;
  border-color:#2F4F3E !important;
}
#popup-overlay a.mg-nav-cta:focus-visible{outline-color:#2F4F3E}

@media (max-width:1024px){
  #popup-overlay{
    top:0;
    right:0;
    bottom:0;
    width:100% !important;
    padding:clamp(84px, 13vh, 120px) 40px clamp(24px, 4vh, 40px) !important;
  }
}
/* tablet: painel em tela cheia, itens maiores que no celular */
@media (min-width:768px) and (max-width:1024px){
  #popup-overlay .elementor-nav-menu > li > a,
  #popup-overlay .elementor-nav-menu > li > a:link,
  #popup-overlay .elementor-nav-menu > li > a:visited,
  #popup-overlay .elementor-nav-menu > ul > li > a,
  #popup-overlay .elementor-nav-menu > ul > li > a:link,
  #popup-overlay .elementor-nav-menu > ul > li > a:visited{
    font-size:clamp(20px, min(3.4vw, 3.2vh), 30px) !important;
  }
}
@media (max-width:767px){
  #popup-overlay{padding:clamp(72px, 12vh, 104px) 20px clamp(20px, 3.5vh, 32px) !important}
  #popup-overlay .elementor-nav-menu > li > a,
  #popup-overlay .elementor-nav-menu > li > a:link,
  #popup-overlay .elementor-nav-menu > li > a:visited,
  #popup-overlay .elementor-nav-menu > ul > li > a,
  #popup-overlay .elementor-nav-menu > ul > li > a:link,
  #popup-overlay .elementor-nav-menu > ul > li > a:visited{
    font-size:clamp(18px, 3.3vh, 24px) !important;
  }
  #popup-overlay .sub-menu a,
  #popup-overlay .sub-menu a:link,
  #popup-overlay .sub-menu a:visited{font-size:15px !important}
  #popup-overlay .mg-popup-secondary{margin-top:32px !important}
}

body.elementor-editor-active.single-elementor_library #popup-overlay{
  position:relative !important;
  top:auto;
  right:auto;
  bottom:auto;
  margin:0 0 0 auto !important;
  min-height:100vh !important;
  visibility:visible !important;
  pointer-events:auto !important;
  clip-path:none !important;
  transform:none;
}
body.elementor-editor-active.single-elementor_library #popup-overlay .elementor-nav-menu > li,
body.elementor-editor-active.single-elementor_library #popup-overlay .elementor-widget-html{
  opacity:1 !important;
  transform:none !important;
}

/* acessibilidade */
@media (prefers-reduced-motion:reduce){
  .mg-popup-backdrop,
  #popup-overlay,
  #popup-overlay *{
    transition-duration:.01ms !important;
    transition-delay:0s !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4724df6 *//* 03 · Header — container */
.mg-header{
  position:fixed !important;
  top:0;
  left:0;
  right:0;
  z-index:999;
  width:100% !important;
  max-width:none !important;
  min-height:var(--mg-header-h);
  padding-left:0 !important;
  padding-right:0 !important;
}
/* barra do WordPress logado */
body.admin-bar .mg-header{top:32px}
@media (max-width:782px){
  body.admin-bar .mg-header{top:46px}
}

/* padding nunca soma na largura */
.mg-header,
.mg-header > .e-con-inner,
.mg-header > .elementor-container{box-sizing:border-box}

.mg-header,
.mg-header > .e-con-inner,
.mg-header .e-con:has(> .elementor-element .mg-nav-side),
.mg-header .e-con-inner:has(> .elementor-element .mg-nav-side){
  flex-wrap:nowrap !important;
  gap:0 !important;
  column-gap:0 !important;
}

.mg-header > .elementor-element,
.mg-header > .e-con-inner > .elementor-element{
  flex-grow:0 !important;
  flex-shrink:0 !important;
  flex-basis:auto !important;
  width:auto !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

/* o inner limita a largura e NUNCA recebe cor */
.mg-header > .e-con-inner,
.mg-header > .elementor-container{
  width:100% !important;
  max-width:var(--mg-grid) !important;
  margin:0 auto !important;
  padding-left:0 !important;
  padding-right:0 !important;
  background-color:transparent !important;
  background-image:none !important;
}
@media (max-width:1280px){
  .mg-header > .e-con-inner,
  .mg-header > .elementor-container{
    padding-left:var(--mg-pad-x) !important;
    padding-right:var(--mg-pad-x) !important;
  }
}

/* ── Estado padrão: transparente sobre o hero ── */
.mg-header{
  color:var(--mg-aurora);
  background-color:transparent !important;
  background-image:none !important;
  transition:background-color .5s cubic-bezier(.22,1,.36,1),
             backdrop-filter .5s cubic-bezier(.22,1,.36,1),
             min-height .5s cubic-bezier(.22,1,.36,1),
             padding .5s cubic-bezier(.22,1,.36,1),
             box-shadow .5s cubic-bezier(.22,1,.36,1),
             transform .7s cubic-bezier(.22,1,.36,1),
             opacity .6s cubic-bezier(.22,1,.36,1);
}
/* o miolo acompanha a altura do externo, pra centralizar na vertical */
.mg-header > .e-con-inner{
  min-height:inherit;
  transition:min-height .5s cubic-bezier(.22,1,.36,1);
}

/* ── Rolado: vidro creme, mais baixo, de borda a borda ── */
.mg-header.scrolled{
  min-height:72px !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
  color:#2F4F3E;
  background-color:rgba(233,225,214,.9) !important;
  -webkit-backdrop-filter:blur(16px) saturate(1.15);
  backdrop-filter:blur(16px) saturate(1.15);
  box-shadow:0 1px 0 rgba(47,79,62,.1);
}
@media (max-width:768px){
  .mg-header.scrolled{min-height:60px !important}
}
/* navegador sem backdrop-filter: fundo sólido, nunca ilegível */
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .mg-header.scrolled{background-color:#E9E1D6 !important}
}

/* ── Some descendo, volta subindo (só com mg-header--autohide) ── */
.mg-header.is-hidden{transform:translateY(-100%)}

/* Menu aberto: o header perde o vidro.
   O atraso de .3s não é enfeite. O header e a cortina ocupam a mesma
   faixa da tela, e os dois animam ao mesmo tempo: sem o atraso, o
   aurora some enquanto a cortina ainda está quase transparente, e
   por uns 150ms aparece uma barra clara flutuando no meio do nada.
   Com o atraso, o fundo do header só se apaga quando a cortina já
   está escura — e aí ninguém vê, porque ele está por baixo dela
   (os dois estão em z-index 999 e a cortina vem depois no DOM). */
/* NÃO REMOVA ESTA REGRA.
   backdrop-filter num ancestral cria bloco de contenção para
   position:fixed. O painel do menu é fixed e vive dentro do header:
   com o vidro ligado (estado rolado), ele passa a se posicionar
   contra o header em vez da tela, e só aparece o topo dele.
   O vidro sai enquanto o menu está aberto justamente por isso —
   não é decisão estética. */
body.mg-menu-vidro .mg-header{
  transform:none;
  background-color:transparent !important;
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
  /* INSTANTÂNEO na ida. Sem isto, o header herda a transição base de
     .5s e o fundo dele some num fade LENTO antes da cortina aparecer
     — vira um evento separado, lido como "o menu escureceu primeiro".
     Na volta a classe sai e a transição base assume, então o vidro
     reaparece suave, já sem cortina por cima. */
  transition:none;
}

/* ── Links: aurora nos dois estados ── */
.mg-header a,
.mg-header .elementor-nav-menu a{
  color:var(--mg-aurora) !important;
  text-decoration:none;
  transition:color .4s var(--mg-ease), opacity .4s var(--mg-ease);
}
.mg-header a:visited{color:var(--mg-aurora) !important}
.mg-header .elementor-nav-menu a:hover,
.mg-header .elementor-nav-menu a:focus,
.mg-header .elementor-nav-menu a:focus-visible,
.mg-header .elementor-nav-menu a:active{
  color:var(--mg-aurora) !important;
  opacity:.72;
}
/* rolado: links em verde-mata */
.mg-header.scrolled a,
.mg-header.scrolled a:visited,
.mg-header.scrolled .elementor-nav-menu a,
.mg-header.scrolled .elementor-nav-menu a:hover,
.mg-header.scrolled .elementor-nav-menu a:focus,
.mg-header.scrolled .elementor-nav-menu a:active{
  color:#2F4F3E !important;
}

.mg-header .mg-btn{
  --b-bg:var(--mg-aurora); --b-fg:var(--mg-mata); --b-bd:var(--mg-aurora);
  --b-bg-h:#fff;           --b-fg-h:var(--mg-mata); --b-bd-h:#fff;
}
.mg-header a.mg-btn,
.mg-header a.mg-btn:visited{color:var(--b-fg) !important}
.mg-header a.mg-btn:hover,
.mg-header a.mg-btn:focus,
.mg-header a.mg-btn:focus-visible,
.mg-header a.mg-btn:active{color:var(--b-fg-h) !important;opacity:1}
.mg-header .mg-btn--ghost{
  --b-bg:transparent; --b-fg:var(--mg-aurora); --b-bd:rgba(253,228,218,.38);
  --b-bg-h:rgba(253,228,218,.1); --b-fg-h:var(--mg-aurora); --b-bd-h:var(--mg-aurora);
}

body.elementor-editor-active.single-elementor_library .mg-header{
  position:relative !important;
  background-color:var(--mg-mata) !important;
}

@media (prefers-reduced-motion:reduce){
  .mg-header{transition:none}
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7d5ae70 *//* 02 · CSS global: tokens, grade, papéis de cor e componentes */
:root{
  /* cores do manual */
  --mg-mata:#2F4F3E;          /* primária · títulos no claro · botões */
  --mg-verde:#2F8051;         /* símbolo · hover de botão */
  --mg-ink:#3D3D3D;           /* texto no claro */
  --mg-laranja:#F26538;       /* acento */
  --mg-terra:#824837;         /* rótulos no claro */
  --mg-aurora:#FDE4DA;        /* SÓ sobre escuro: texto, logo e botões no hero, texto sobre verde-mata */
  /* ATENÇÃO AO NOME: a variável continua se chamando "creme" porque
     ela é usada em dezenas de lugares, mas o valor agora é a AREIA
     (#E9E1D6). Ela significa "a superfície clara do site", não a cor
     creme antiga (#F5EEE9), que saiu do projeto. */
  --mg-creme:#E9E1D6;         /* superfícies claras: seções, painel do menu, header rolado, loader */
  /* superfícies derivadas (não são cores de marca novas) */
  --mg-manha:#FFF6F1;
  --mg-tarde:#F9CDB9;
  --mg-mata-fundo:#1C4230;    /* rodapé · fundo por trás do hero */

  /* papéis de cor — o padrão é o tom claro */
  --c-text:var(--mg-ink);
  --c-head:var(--mg-mata);
  --c-label:var(--mg-terra);
  --c-line:rgba(61,61,61,.2);
  --c-sun:var(--mg-laranja);
  --c-btn-bg:var(--mg-mata);
  --c-btn-fg:var(--mg-aurora);

  /* tipografia (espelha as Fontes Globais do kit) */
  --mg-font:'Sora',sans-serif;
  --mg-fs-display-xl:clamp(2.9rem, 7.3vw, 7.6rem);
  --mg-fs-display:clamp(2.75rem, 6.1vw, 6.25rem);
  --mg-fs-h2:clamp(2.125rem, 4.4vw, 4.75rem);
  --mg-fs-card:clamp(1.75rem, 2.6vw, 2.5rem);
  --mg-fs-h3:clamp(1.375rem, 1.9vw, 1.875rem);
  --mg-fs-lead:clamp(1.125rem, 1.35vw, 1.3125rem);
  --mg-fs-item:1.1875rem;
  --mg-fs-body:1.0625rem;
  --mg-fs-small:.9375rem;
  --mg-fs-micro:.8125rem;

  /* grade */
  --mg-grid:1280px;
  --mg-pad-x:32px;            /* só abaixo da grade — ver .mg-inner */
  --mg-pad-y:clamp(104px, 13vw, 208px);
  --mg-gap:clamp(16px, 2vw, 32px);
  --mg-header-h:96px;

  --mg-ease:cubic-bezier(.22,1,.36,1);
}
@media (max-width:768px){
  :root{--mg-pad-x:20px;--mg-header-h:76px}
}

html{
  overflow-y:scroll;
  scrollbar-gutter:stable;
}

body{
  color:var(--c-text);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}
::selection{background:var(--mg-laranja);color:#fff}
:focus-visible{outline:2px solid var(--mg-laranja);outline-offset:4px}

.mg-inner{
  width:100%;
  max-width:var(--mg-grid);
  margin-left:auto;
  margin-right:auto;
  box-sizing:border-box;
}
@media (max-width:1280px){
  .mg-inner{padding-left:var(--mg-pad-x);padding-right:var(--mg-pad-x)}
}

.mg-sec{padding-top:var(--mg-pad-y);padding-bottom:var(--mg-pad-y)}
.mg-sec--tight{padding-top:calc(var(--mg-pad-y) * .6);padding-bottom:calc(var(--mg-pad-y) * .6)}

.mg-on-dark{
  --c-text:var(--mg-aurora);
  --c-head:var(--mg-aurora);
  --c-label:var(--mg-aurora);
  --c-line:rgba(253,228,218,.22);
  --c-sun:var(--mg-aurora);
  --c-btn-bg:var(--mg-aurora);
  --c-btn-fg:var(--mg-mata);
  color:var(--c-text);
}
.mg-on-orange{
  --c-text:#fff;
  --c-head:#fff;
  --c-label:#fff;
  --c-line:rgba(255,255,255,.38);
  --c-sun:#fff;
  --c-btn-bg:#fff;
  --c-btn-fg:var(--mg-mata);
  color:var(--c-text);
}

.mg-daypart{
  display:inline-flex;
  align-items:center;
  gap:.8rem;
  margin:0;
  font-family:var(--mg-font);
  font-size:var(--mg-fs-small);
  font-weight:500;
  letter-spacing:-.005em;
  color:var(--c-label);
}
.mg-daypart svg{width:34px;height:19px;overflow:visible;flex-shrink:0}
.mg-daypart .arc{fill:none;stroke:currentColor;stroke-width:1.25;opacity:.45}
.mg-daypart .sun{fill:var(--c-sun);transition:fill .9s var(--mg-ease)}
.mg-daypart--noite .sun{fill:none;stroke:currentColor;stroke-width:1.25}

.mg-btn{
  --b-bg:var(--c-btn-bg);   --b-fg:var(--c-btn-fg);   --b-bd:var(--c-btn-bg);
  --b-bg-h:var(--mg-verde); --b-fg-h:#fff;            --b-bd-h:var(--mg-verde);
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.65rem;
  height:54px;
  padding:0 1.6rem;
  border-radius:999px;
  border:1px solid var(--b-bd);
  background-color:var(--b-bg) !important;
  color:var(--b-fg) !important;
  font-family:var(--mg-font) !important;
  font-size:var(--mg-fs-small);
  font-weight:600;
  letter-spacing:-.005em;
  line-height:1;
  white-space:nowrap;
  text-decoration:none !important;
  cursor:pointer;
  transition:background-color .45s var(--mg-ease), color .45s var(--mg-ease), border-color .45s var(--mg-ease);
}
.mg-btn:visited{background-color:var(--b-bg) !important;color:var(--b-fg) !important}
.mg-btn:hover,
.mg-btn:focus,
.mg-btn:focus-visible,
.mg-btn:active{
  background-color:var(--b-bg-h) !important;
  color:var(--b-fg-h) !important;
  border-color:var(--b-bd-h);
}
.mg-btn:focus{outline:none}
.mg-btn:focus-visible{outline:2px solid var(--mg-laranja);outline-offset:3px}
.mg-btn:active{transform:translateY(1px)}
.mg-btn svg{width:18px;height:18px;flex-shrink:0}

.mg-roll{display:block;height:1.25em;line-height:1.25em;overflow:hidden}
.mg-roll > span{display:block;transition:transform .6s var(--mg-ease)}
.mg-roll > span::after{content:attr(data-t);display:block}
.mg-btn:hover .mg-roll > span,
.mg-btn:focus-visible .mg-roll > span{transform:translateY(-50%)}

/* claro sobre foto ou fundo escuro */
.mg-btn--aurora{
  --b-bg:var(--mg-aurora); --b-fg:var(--mg-mata); --b-bd:var(--mg-aurora);
  --b-bg-h:#fff;           --b-fg-h:var(--mg-mata); --b-bd-h:#fff;
}
/* contorno — herda a cor do lugar onde está */
.mg-btn--ghost{
  --b-bg:transparent; --b-fg:currentColor; --b-bd:color-mix(in srgb, currentColor 38%, transparent);
  --b-bg-h:transparent; --b-fg-h:currentColor; --b-bd-h:currentColor;
}
.mg-btn--sm{height:46px;padding:0 1.25rem}

.mg-link{
  display:inline-block;
  padding-bottom:5px;
  font-family:var(--mg-font) !important;
  font-size:var(--mg-fs-small);
  font-weight:600;
  letter-spacing:-.005em;
  text-decoration:none !important;
  color:var(--c-head) !important;
  background:linear-gradient(currentColor,currentColor) 100% 100% / 100% 1px no-repeat;
  transition:background-size .6s var(--mg-ease), color .9s var(--mg-ease);
}
.mg-link:visited,
.mg-link:active{color:var(--c-head) !important}
.mg-link:hover,
.mg-link:focus,
.mg-link:focus-visible{color:var(--c-head) !important;background-size:0% 1px}

.elementor-widget:has(.mg-w){
  align-self:stretch !important;
  width:100% !important;
  max-width:100% !important;
}
.elementor-widget:has(.mg-w),
.elementor-widget:has(.mg-w) > .elementor-widget-container{
  margin:0 !important;
  padding:0 !important;
}

.mg-mask,
.mg-d2-title__line,
.mg-d3-title__line{
  display:block;
  overflow:hidden;
  padding-top:.14em;    margin-top:-.14em;
  padding-bottom:.16em; margin-bottom:-.16em;
  padding-right:.1em;   margin-right:-.1em;
}
.mg-mask > span{display:block}

.mg-eyebrow{
  display:block;
  margin:0;
  font-family:var(--mg-font);
  font-size:12px;
  font-weight:400;
  line-height:1.4;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--c-label);
}
.mg-eyebrow{margin-bottom:14px}
.mg-eyebrow--centro{text-align:center;margin-bottom:clamp(20px, 2.4vw, 32px)}

.mg-d3-title{
  container-type:inline-size;
  width:100%;
  margin-bottom:clamp(20px, 2.4vw, 28px);
}
.mg-d3-title__h{
  --d3-fs:min(calc(100cqw / var(--d3-div, 11)), var(--d3-max, 1.85rem));
  margin:.14em 0 .16em;   /* devolve o que as máscaras puxam pra fora */
  font-family:var(--mg-font) !important;
  font-weight:400 !important;
  font-size:var(--d3-fs);
  line-height:1.08;
  letter-spacing:-.03em;
  text-transform:none;
  color:var(--c-head);
}
.mg-d3-title__line > span{display:block;white-space:nowrap}
.mg-d3-title__line--indent{padding-left:calc(var(--d3-fs) * 1.15)}

/* editor: nada escondido */
body.elementor-editor-active .mg-d3-title__line > span{transform:none !important}

@media (max-width:767px){
  .mg-d3-title__h{
    --d3-fs:min(calc(100cqw / var(--d3-div-m, var(--d3-div, 11))), var(--d3-max-m, 1.625rem));
  }
  .mg-d3-title__line--indent{padding-left:calc(var(--d3-fs) * .75)}
}

.mg-photo{
  position:relative;
  width:100%;
  margin:0;
  padding:0;
  aspect-ratio:var(--photo-ar, 3 / 4);
  overflow:hidden;
  background-color:rgba(47,79,62,.08);   /* enquanto a foto carrega */
}
.mg-on-dark .mg-photo{background-color:rgba(253,228,218,.07)}

.mg-photo__img{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:50% 50%;
  background-repeat:no-repeat;
  transform:scale(1.3);
}

body.elementor-editor-active .mg-photo__img{transform:none !important}
@media (prefers-reduced-motion:reduce){
  .mg-photo__img{transform:none}
}

/* ── TEXTO DE APOIO ── */
.mg-text p{
  margin:0;
  font-family:var(--mg-font);
  font-size:1rem;
  font-weight:400;
  line-height:1.75;
  color:var(--c-text);
}
.mg-text p + p{margin-top:1.1em}
@media (max-width:767px){ .mg-text p{font-size:.9375rem} }

/* ── CTA EM LINK ── */
.mg-cta{margin-top:clamp(28px, 3.4vw, 40px)}
/* quando o CTA não é o último da seção: no empilhado do mobile ele
   fica colado no que vem embaixo, e o sublinhado encosta na foto */
@media (max-width:767px){
  .mg-cta--fim-de-coluna{padding-bottom:40px}
}

/* ── LISTA DE SERVIÇO ── */
.mg-list{
  margin:clamp(32px, 4vw, 48px) 0 0;
  padding:0;
  list-style:none;
  border-top:1px solid var(--c-line);
}
.mg-list li{
  display:flex;
  justify-content:space-between;
  align-items:baseline;   /* pelo pé da letra: os dois corpos são diferentes */
  gap:20px;
  padding:15px 0;
  border-bottom:1px solid var(--c-line);
  font-family:var(--mg-font);
  font-size:1rem;
  line-height:1.5;
  color:var(--c-head);
}
.mg-list li > span:last-child{
  flex:0 0 auto;
  font-size:.8125rem;
  letter-spacing:.02em;
  color:var(--c-label);
}
.mg-list + .mg-cta{margin-top:clamp(22px, 2.6vw, 28px)}   /* a lista já fecha num filete */
@media (max-width:767px){
  .mg-list li{flex-wrap:wrap;gap:2px 20px;font-size:.9375rem}
  .mg-list li > span:last-child{flex:1 0 100%}
}

.mg-break{
  --photo-ar:auto;
  height:clamp(560px, 92vh, 1200px);
  clip-path:inset(0% 0%);   /* estado seguro: sem JS, aparece aberta */
  will-change:clip-path;
}
@supports (height:1svh){
  .mg-break{height:clamp(560px, 92svh, 1200px)}   /* a barra do celular some ao rolar */
}
.mg-break::before,
.mg-break::after{content:"";position:absolute;left:0;right:0;pointer-events:none}
.mg-break::before{top:0;bottom:0;background:rgba(28,66,48,.16)}
.mg-break::after{bottom:0;height:46%;
  background:linear-gradient(to top, rgba(28,66,48,.58), rgba(28,66,48,0))}

.mg-break__cap{position:absolute;left:0;right:0;bottom:0;z-index:2;margin:0;
  padding:0 0 clamp(28px, 4.4vw, 64px);pointer-events:none}
.mg-break__line{
  display:block;width:100%;max-width:calc(1280px + 64px);margin:0 auto;
  padding:.14em 32px .18em;box-sizing:border-box;overflow:hidden;
}
.mg-break__line > span{
  display:block;font-family:var(--mg-font);font-weight:400;
  font-size:clamp(1.25rem, 2vw, 1.875rem);line-height:1.15;
  letter-spacing:-.025em;color:var(--mg-aurora);
}
body.elementor-editor-active .mg-break{clip-path:none !important}
body.elementor-editor-active .mg-break__line > span{transform:none !important}
@media (max-width:767px){
  .mg-break{height:86vh;min-height:460px}
  @supports (height:1svh){ .mg-break{height:86svh} }
  .mg-break__line{padding-left:20px;padding-right:20px}
  .mg-break::after{height:54%}
}
@media (prefers-reduced-motion:reduce){ .mg-break{clip-path:none} }

/* ────────────────────────────────────────────
   ASSINATURA DAS FOTOS
   O acervo é de ensaios diferentes. Medindo nove fotos: a temperatura
   é consistente (todas quentes, matiz 22°–79°), mas o BRILHO varia de
   0,25 a 0,54 e a SATURAÇÃO de 0,27 a 0,53 — mais que o dobro entre
   as pontas.

   É SÓ O VÉU, de propósito. Havia também um saturate/contrast aqui e
   ele saiu: cada elemento com `filter` vira uma camada própria de
   composição na GPU, e eram 52 na home. Medido na rolagem, ele
   sozinho levava os quadros acima de 32ms de 1% para 7% — e
   contribuía com uns 3 pontos na unificação, contra os 10 do véu.
   Caro demais pelo que entregava.

   Quem aproxima é o véu, porque é mistura: a 10%, toda diferença
   entre duas fotos encolhe 10%. Medido no acervo: dispersão de brilho
   -10%, de saturação -10%, de temperatura -15%. Isto dá o cast comum
   que o olho lê como "mesmo ensaio". NÃO corrige exposição: as 3 ou 4
   fotos que fogem da média precisam de ajuste no próprio arquivo.

   Hero e os dois breaks ficam FORA: já têm véu próprio, e somar os
   dois deixaria aqueles três escuros demais.
   ──────────────────────────────────────────── */
.mg-photo:not(.mg-break)::after,
.mg-rail__shot::after,
.mg-lista__mini::after{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(28,66,48,.10);
  pointer-events:none;
}

.mg-rv{
  opacity:0;
  transform:translateY(28px);
  transition:opacity .9s var(--mg-ease), transform .9s var(--mg-ease);
}
.mg-rv.mg-on{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  body{transition:none}
  .mg-rv{opacity:1;transform:none;transition:none}
  .mg-btn,.mg-roll > span,.mg-link{transition:none}
}

body.elementor-editor-active .mg-rv{
  opacity:1 !important;
  transform:none !important;
}

/* ═══════════════════════════════════════════════
   ALVO DE TOQUE NO CELULAR

   Medido: no celular os links de CTA isolados — "Conheça o Glamping",
   "Ver acomodação", "Falar no WhatsApp" — têm 22 a 24px de altura de
   toque. O mínimo recomendado é 44px, e num dedo a diferença é real:
   erro de clique em link de conversão.

   A correção NÃO usa padding, de propósito: padding empurraria o
   filete do sublinhado pra longe da palavra e mudaria o desenho. Um
   ::after invisível estica só a ÁREA DE CLIQUE, centrado na linha do
   texto. Visualmente nada muda.

   Só no celular: no desktop o ponteiro é preciso e uma área de 44px
   invisível poderia se sobrepor a outro elemento.
   ═══════════════════════════════════════════════ */
@media (max-width:767px){
  .mg-link,
  .mg-rail__more,
  .mg-cta > a{position:relative}

  .mg-link::after,
  .mg-rail__more::after,
  .mg-cta > a::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:50%;
    height:44px;
    transform:translateY(-50%);
    /* sem fundo, sem borda: existe só pra receber o toque */
  }
}

/* ═══════════════════════════════════════════════
   HEADLINE PODE QUEBRAR EM TELA MUITO ESTREITA

   Auditoria: abaixo de 360px algumas headlines vazavam — "Vem ficar
   com a gente," passava 12px em 320. A causa NÃO é o divisor: é o
   PISO do clamp, 24px. Nessa largura o divisor pediria 23px e o piso
   não deixa descer.

   Baixar o piso deixaria o título pequeno demais em toda a faixa de
   celular. Então, só abaixo de 360, a linha passa a poder quebrar.
   Perde-se o controle de onde ela quebra; ganha-se o texto inteiro
   na tela, que importa mais.

   A entrada animada continua: cada linha é uma máscara própria e
   cresce junto se virar duas visuais.
   ═══════════════════════════════════════════════ */
@media (max-width:360px){
  .mg-d3-title__line > span{white-space:normal}
}/* End custom CSS */