/* Cabeça Natal FX. Paleta: #0B0F0D #1F2A1F #3E5A3F #8CA98C #D9C7A3 #B08D57 */
:root{--g0:#0B0F0D;--g1:#1F2A1F;--g2:#3E5A3F;--sage:#8CA98C;--sand:#D9C7A3;--bronze:#B08D57;--ease:cubic-bezier(.2,.7,.2,1)}
html{scroll-behavior:smooth}

/* leitura */
.fusion-text p,.fusion-text li{font-size:1.1875rem;line-height:1.8;color:#2f3a31}
.fusion-text{max-width:74ch;margin-left:auto;margin-right:auto}
.fusion-title h1,.fusion-title h2,.fusion-title h3,.fusion-title h4,.fusion-text h1,.fusion-text h2,.fusion-text h3,.fusion-text h4,.fusion-text h5{font-family:Montserrat,sans-serif!important}
.fusion-title h1,.fusion-title h2,.fusion-title h3{font-weight:800;letter-spacing:-.01em;color:var(--g1)}
.fusion-title h2,.fusion-title h3{position:relative;padding-bottom:.4em}
.fusion-title h2::after,.fusion-title h3::after{content:'';position:absolute;left:50%;bottom:0;width:64px;height:4px;margin-left:-32px;background:var(--bronze);border-radius:4px;transform:scaleX(0);transition:transform .9s var(--ease) .2s}
.fusion-title.fx-in h2::after,.fusion-title.fx-in h3::after,.fusion-title:not(.fx-rv) h2::after{transform:scaleX(1)}
.fx-lead,.fx-lead *{font-size:clamp(1.3rem,2vw,1.7rem)!important;line-height:1.55!important}
.fx-sw{opacity:.18;transition:opacity .4s ease}.fx-sw.on{opacity:1}

/* cabeçalho */
.fusion-logo img,.fusion-logo a{filter:none!important;text-shadow:none!important;box-shadow:none!important}
.fusion-header-wrapper .fusion-header,.fusion-header-wrapper.fusion-is-sticky .fusion-header,.fusion-header-wrapper .fusion-secondary-main-menu{background:#1F2A1F!important;background-image:linear-gradient(180deg,#14201a,#1F2A1F)!important}
.fusion-header-wrapper.fusion-is-sticky .fusion-header{background-color:rgba(31,42,31,.96)!important;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.fusion-header{border-bottom:1px solid rgba(217,199,163,.18)}
.fusion-main-menu > ul > li > a{font-weight:700;font-size:.9rem;text-transform:uppercase;letter-spacing:.1em;color:#fff!important}
.fusion-main-menu > ul > li > a:hover,.fusion-main-menu .current-menu-item > a,.fusion-main-menu .current_page_item > a{color:var(--sand)!important}
.fusion-main-menu .sub-menu{background:rgba(11,15,13,.96)!important;border:0!important;border-radius:0 0 14px 14px;overflow:hidden}
.fusion-main-menu .sub-menu a{color:#efeee6!important}.fusion-main-menu .sub-menu a:hover{background:var(--g2)!important;color:#fff!important}
.fusion-mobile-logo,.fusion-logo img.fusion-mobile-logo{height:84px!important;width:auto!important;max-height:none!important}
.fusion-header .fusion-logo,.fusion-header .fusion-logo a{flex:none!important;max-width:none!important}
.fusion-header .fusion-logo img{max-width:none!important;flex:none!important;width:auto!important;aspect-ratio:1648/488;object-fit:contain!important}
@media (min-width:1025px){
	.fusion-header-wrapper .fusion-header,.fusion-header-wrapper.fusion-is-sticky .fusion-header{height:auto!important;min-height:0!important;padding-top:12px!important;padding-bottom:12px!important}
	.fusion-header .fusion-row{display:flex!important;align-items:center;justify-content:space-between}
	.fusion-header .fusion-logo{float:none!important;margin:0!important;display:flex;align-items:center}
	.fusion-header .fusion-main-menu{float:none!important;margin-left:auto}
	.fusion-main-menu > ul > li > a{height:auto!important;line-height:1.2!important;padding:18px 16px!important}
	.fusion-header .fusion-logo img.fusion-standard-logo,.fusion-header .fusion-logo img.fusion-sticky-logo,.fusion-is-sticky .fusion-logo img.fusion-sticky-logo,.fusion-is-sticky .fusion-logo img.fusion-standard-logo{height:112px!important;width:auto!important}
}

/* botões */
.fusion-button,.fx-btn{position:relative;overflow:hidden;border-radius:999px!important;background:var(--bronze)!important;color:var(--g0)!important;font-weight:800;letter-spacing:.05em;transition:transform .3s var(--ease),box-shadow .3s,background .3s;box-shadow:0 8px 22px rgba(11,15,13,.22);will-change:transform}
.fusion-button:hover,.fx-btn:hover{background:var(--sand)!important;box-shadow:0 14px 30px rgba(11,15,13,.3)}
.fusion-button::after,.fx-btn::after{content:'';position:absolute;top:0;left:-70%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.5),transparent);transform:skewX(-20deg);transition:left .7s}
.fusion-button:hover::after,.fx-btn:hover::after{left:130%}
.fx-btn{display:inline-flex;align-items:center;padding:1em 1.8em;text-decoration:none;font-size:1rem;width:fit-content}
.fx-ghost{background:none;border:2px solid currentColor;color:inherit;border-radius:999px;padding:.9em 1.6em;font:700 1rem Montserrat,sans-serif;cursor:pointer;transition:background .3s,color .3s}.fx-ghost:hover{background:var(--sand);color:var(--g0);border-color:var(--sand)}

/* imagens: cortina ao entrar, zoom, paralaxe */
.fusion-imageframe,.fusion-gallery-image,.fusion-image-wrapper{overflow:hidden;border-radius:8px}
.fusion-imageframe img,.fusion-gallery-image img{transition:transform 1.1s var(--ease),filter .6s;transform:scale(1.12);translate:0 var(--py,0px)}
.fusion-imageframe:hover img,.fusion-gallery-image:hover img{transform:scale(1.2);filter:saturate(1.12)}
.imageframe-1 img,.imageframe-2 img{max-height:340px;width:100%;object-fit:cover}

/* secções escuras com neve a pingar */
.fx-dark{background:var(--g1)!important;color:#fff;position:relative;padding-top:84px!important;padding-bottom:70px!important}
.fx-dark .fusion-text p,.fx-dark .fusion-text li,.fx-dark p{color:#efeee6!important}
.fx-dark .fusion-title h1,.fx-dark .fusion-title h2,.fx-dark .fusion-title h3,.fx-dark h2,.fx-dark h3{color:#fff!important}
.fx-dark .fusion-title,.fx-dark .fusion-title *{color:#fff!important;font-size:clamp(1.7rem,2.8vw,2.5rem)!important;letter-spacing:.14em!important;font-weight:700!important;text-transform:uppercase}
.fx-dark .fusion-title{margin-bottom:26px!important}
.fx-dark h4,.fx-dark h5,.fx-dark h6,.fx-dark h4 span,.fx-dark h5 span,.fx-dark h6 span{color:#fff!important;font-size:clamp(1.7rem,2.8vw,2.5rem)!important;line-height:1.1!important;letter-spacing:.14em!important;font-weight:700!important;text-transform:uppercase;margin:0 0 .3em!important}
.fx-dark::before{content:'';position:absolute;left:0;right:0;top:-1px;height:30px;background:#fff;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 30' preserveAspectRatio='none'%3E%3Cpath d='M0 0h120v10c-8 0-8 14-18 14s-10-10-20-10-10 12-20 12-10-16-20-16S32 24 22 24 8 10 0 10z'/%3E%3C/svg%3E") 0 0/120px 30px repeat-x;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 30' preserveAspectRatio='none'%3E%3Cpath d='M0 0h120v10c-8 0-8 14-18 14s-10-10-20-10-10 12-20 12-10-16-20-16S32 24 22 24 8 10 0 10z'/%3E%3C/svg%3E") 0 0/120px 30px repeat-x;z-index:2;pointer-events:none;animation:fxWave 16s linear infinite}
@keyframes fxWave{to{-webkit-mask-position:120px 0;mask-position:120px 0}}
.fx-drip{position:absolute;top:22px;width:7px;height:10px;border-radius:50% 50% 50% 50%/62% 62% 38% 38%;background:#fff;z-index:3;opacity:0;pointer-events:none;animation:fxDrip 4s ease-in infinite}
@keyframes fxDrip{0%{opacity:0;transform:translateY(0) scale(.5)}12%{opacity:.95;transform:translateY(6px) scale(1)}70%{opacity:.85;transform:translateY(80px)}100%{opacity:0;transform:translateY(120px) scale(.8)}}
.fx .fx-sec{clip-path:inset(6% 3% round 36px);opacity:.35;transition:clip-path 1.3s var(--ease),opacity 1s}
.fx .fx-sec.fx-in{clip-path:inset(0 0 0 0 round 0);opacity:1}
.fx-spot::after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(440px circle at var(--mx,50%) var(--my,50%),rgba(217,199,163,.16),transparent 62%);opacity:0;transition:opacity .5s;z-index:1}
.fx-spot:hover::after{opacity:1}

/* contagem decrescente */
.fusion-countdown .fusion-dash-wrapper{border-radius:14px;padding:18px 10px!important}
.fusion-countdown .fusion-digit,.fusion-countdown .fusion-dash-value{color:var(--sand)!important;font-weight:800;text-shadow:0 0 18px rgba(217,199,163,.6),0 0 40px rgba(217,199,163,.3);animation:fxGlow 2.6s ease-in-out infinite}
@keyframes fxGlow{50%{text-shadow:0 0 8px rgba(217,199,163,.4),0 0 18px rgba(217,199,163,.15)}}

/* título da capa e frase que se escreve */
.fx-split{display:inline-block}.fx-w{display:inline-block;white-space:nowrap}
.fx-c{display:inline-block;opacity:0;transform:translateY(-.7em) rotateX(80deg);transform-origin:50% 100%;animation:fxDrop .9s cubic-bezier(.2,.9,.2,1) forwards;animation-delay:calc(var(--i) * 45ms + .3s);text-shadow:0 0 20px rgba(217,199,163,.5),0 3px 18px rgba(0,0,0,.55)}
@keyframes fxDrop{to{opacity:1;transform:none}}
.fx-hero-title{text-shadow:0 3px 22px rgba(0,0,0,.6)}
.fx-flip{margin:1em auto 2.2em;max-width:30ch;min-height:2.7em;font:600 clamp(1.15rem,2.2vw,1.8rem)/1.35 Montserrat,sans-serif;color:#fff;text-align:center;text-shadow:0 2px 14px rgba(0,0,0,.75);opacity:0;animation:fxIn .8s 1.6s forwards}
.fx-type{color:var(--sand)}
.fx-caret{display:inline-block;width:2px;height:1.05em;margin-left:3px;background:var(--sand);vertical-align:-.15em;animation:fxBlink 1s steps(1) infinite}
@keyframes fxBlink{50%{opacity:0}}@keyframes fxIn{to{opacity:1}}

/* faixa de números */
.fx-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(16px,3vw,48px);background:var(--g1);color:#fff;padding:clamp(40px,6vw,88px) clamp(18px,5vw,80px)}
.fx-fact b{display:block;white-space:nowrap;font:800 clamp(2.6rem,5.6vw,5.6rem)/1 Montserrat,sans-serif;color:var(--sand)}
.fx-fact span{display:block;margin-top:10px;font-size:1.0625rem;color:#d9ddd2;max-width:20ch}

/* mapa e contactos */
.fx-reach{display:grid;grid-template-columns:1.1fr 1fr;min-height:560px;background:var(--g1)}
.fx-reach__map iframe{width:100%;height:100%;min-height:560px;border:0;display:block;filter:grayscale(.35) contrast(1.02)}
.fx-reach__info{padding:clamp(32px,5vw,80px);display:grid;gap:26px;align-content:center;color:#efeee6}
.fx-reach__info h2,.fx-reach__info h3{font-family:Montserrat,sans-serif!important;text-transform:none!important;letter-spacing:0!important}
.fx-reach__info h2{color:#fff!important;font-size:clamp(2rem,3.6vw,3.4rem)!important;font-weight:800!important;margin:0}
.fx-reach__info h3{color:var(--sand)!important;font-size:1.05rem!important;font-weight:700!important;margin:0 0 6px}
.fx-reach__info p{margin:0 0 6px}.fx-reach__info p,.fx-reach__info a{color:#efeee6!important;font-size:1.0625rem;line-height:1.6}

/* popup autocarros */
.fx-pop{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:16px}
.fx-pop[hidden]{display:none}
.fx-pop__bg{position:absolute;inset:0;background:rgba(11,15,13,.72);opacity:0;transition:opacity .5s}
.fx-pop__box{position:relative;max-width:620px;width:100%;max-height:92vh;overflow:auto;background:var(--g1);color:#efeee6;border-radius:20px;padding:clamp(24px,4vw,44px);display:grid;gap:14px;outline:0;opacity:0;transform:translateY(40px) scale(.96);transition:opacity .5s var(--ease),transform .6s var(--ease)}
.fx-pop.is-open .fx-pop__bg{opacity:1}.fx-pop.is-open .fx-pop__box{opacity:1;transform:none}
.fx-pop h2{font:800 clamp(2rem,4vw,3rem)/1 Montserrat,sans-serif;color:#fff;margin:0}
.fx-pop__s{font:700 1.1rem/1.3 Montserrat,sans-serif;color:var(--sand);margin:0}
.fx-pop p,.fx-pop li{margin:0;font-size:1.0625rem;line-height:1.6;color:#efeee6}.fx-pop a{color:#fff}.fx-pop ul{margin:0;padding-left:1.2em;display:grid;gap:8px}
.fx-pop__a{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:8px}
.fx-pop__x{position:absolute;right:10px;top:8px;background:none;border:0;color:#fff;font-size:2rem;line-height:1;cursor:pointer;padding:6px 12px}

/* testemunhos: carrossel próprio */
.fusion-testimonials{display:none!important}
.fx-tsl{max-width:880px;margin:0 auto;position:relative;color:#fff}
.fx-tsl__vp{overflow:hidden;border-radius:18px;touch-action:pan-y;transition:height .5s var(--ease)}
.fx-tsl__tr{display:flex;align-items:flex-start;transition:transform .8s var(--ease)}
.fx-tsl__s{flex:0 0 100%;padding:clamp(22px,3vw,38px);background:rgba(255,255,255,.07);display:grid;gap:14px;text-align:center}
.fx-tsl__q{font:italic 400 clamp(1.2rem,2.1vw,1.7rem)/1.5 'Playfair Display',Georgia,serif;margin:0;color:#f1efe6}
.fx-tsl__a{font:600 1rem Montserrat,sans-serif;color:var(--sand)}.fx-tsl__a span{color:#c9cfc4;font-weight:400}
.fx-tsl__nav{display:flex;justify-content:center;align-items:center;gap:18px;margin-top:22px}
.fx-tsl__b{width:46px;height:46px;border-radius:50%;border:2px solid var(--sand);background:none;color:var(--sand);font-size:1.3rem;cursor:pointer;transition:background .3s,color .3s,transform .3s}.fx-tsl__b:hover{background:var(--sand);color:var(--g0);transform:scale(1.08)}
.fx-tsl__d{display:flex;gap:8px}.fx-tsl__d button{width:10px;height:10px;border-radius:50%;border:0;background:rgba(255,255,255,.3);cursor:pointer;padding:0;transition:background .3s,transform .3s}.fx-tsl__d button.on{background:var(--sand);transform:scale(1.4)}

/* texto longo: ler mais */
.fx-clip{position:relative;overflow:hidden;transition:max-height .8s var(--ease)}
.fx-collapse:not(.open) .fx-clip{max-height:16em}
.fx-collapse:not(.open) .fx-clip::after{content:'';position:absolute;left:0;right:0;bottom:0;height:6em;background:linear-gradient(to bottom,rgba(255,255,255,0),#fff);pointer-events:none}
.fx-more{display:block;margin:14px auto 0;background:none;border:2px solid var(--g2);color:var(--g2);border-radius:999px;padding:.7em 1.5em;font:700 .95rem Montserrat,sans-serif;cursor:pointer;transition:background .3s,color .3s}.fx-more:hover{background:var(--g2);color:#fff}

/* painéis que se expandem */
.fx-acc{display:flex!important;gap:0;flex-wrap:nowrap!important}
.fx-acc > .fusion-layout-column{flex:1 1 0!important;width:auto!important;max-width:none!important;margin:0!important;transition:flex .9s var(--ease),filter .6s;min-height:440px}
.fx-acc:hover > .fusion-layout-column{flex:.72 1 0!important;filter:brightness(.78)}
.fx-acc:hover > .fusion-layout-column:hover{flex:2.3 1 0!important;filter:none}

/* neve, luzes, brilhos, cliques */
.fx-snow{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:99980}
.fx-lights{position:absolute;left:0;top:0;width:100%;height:64px;pointer-events:none;z-index:99985;overflow:hidden}
.fx-lights path{fill:none;stroke:#0B0F0D;stroke-width:2}
.fx-lights circle{animation:fxTwinkle 2.4s ease-in-out infinite;filter:drop-shadow(0 0 6px currentColor)}
@keyframes fxTwinkle{0%,100%{opacity:1}50%{opacity:.35}}
.fx-dot,.fx-ring{display:none!important}
.fx-spark{position:fixed;z-index:100000;width:10px;height:10px;pointer-events:none;color:var(--sand);animation:fxSpark .9s ease-out forwards}
.fx-spark::before{content:'✦';position:absolute;inset:0;font-size:12px;line-height:10px;text-shadow:0 0 8px currentColor}
@keyframes fxSpark{to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.2) rotate(120deg)}}
.fx-bst{position:fixed;z-index:100002;pointer-events:none;color:var(--sand);font-size:16px;line-height:1;text-shadow:0 0 8px currentColor;animation:fxBst 1s ease-out forwards}
@keyframes fxBst{0%{opacity:1;transform:translate(-50%,-50%) scale(.4)}100%{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(1.3) rotate(160deg)}}

/* árvore que acende com o scroll (no sítio do botão de voltar ao topo) */
#toTop,.fusion-top-link,.to-top-container{display:none!important}
.fx-tree{position:fixed;right:22px;bottom:22px;width:66px;height:88px;z-index:99970;background:none;border:0;padding:0;cursor:pointer;perspective:420px;filter:drop-shadow(0 4px 10px rgba(11,15,13,.35));transition:transform .4s var(--ease)}
.fx-tree:hover{transform:scale(1.12)}
.fx-tree svg{width:100%;height:100%;overflow:visible;animation:fxSpin 9s linear infinite;transform-origin:50% 55%}
.fx-tree:hover svg{animation-duration:2.4s}
@keyframes fxSpin{to{transform:rotateY(360deg)}}
.fx-t__b{fill:#2f4a33;stroke:#2f4a33;stroke-width:4;stroke-linejoin:round}
.fx-t__k{fill:#7a5a36}.fx-t__s{fill:#8ca98c;transition:fill .6s,filter .6s}
.fx-tree circle{fill:var(--c);opacity:.18;transition:opacity .5s}
.fx-tree circle.on{opacity:1;filter:drop-shadow(0 0 4px var(--c));animation:fxTwinkle 2.2s ease-in-out infinite;animation-delay:var(--t)}
.fx-tree.full .fx-t__s{fill:#ffd98a;filter:drop-shadow(0 0 10px #ffd98a)}

/* entradas ao rolar e títulos com palavras a subir */
.fx .fx-rv{opacity:0;transform:translateY(34px);transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:calc(var(--fxd,0) * 90ms)}
.fx .fx-rv.fx-in{opacity:1;transform:none}
.fx .fx-rv.fx-img{opacity:1;transform:none;position:relative;transition:transform .4s ease-out}
.fx .fx-img::after{content:'';position:absolute;inset:0;background:var(--g1);transform-origin:top;transition:transform 1.1s var(--ease);transition-delay:calc(var(--fxd,0) * 90ms);z-index:3;pointer-events:none}
.fx .fx-img.fx-in::after{transform:scaleY(0)}
.fx-tw{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.12em}
.fx-tw > span{display:inline-block;transform:translateY(112%);transition:transform .95s var(--ease);transition-delay:calc(var(--w) * 80ms + .1s);background:linear-gradient(110deg,var(--g1) 38%,var(--bronze) 50%,var(--g1) 62%);background-size:260% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:fxShine 7s linear infinite}
.fx-dark .fx-tw > span{background-image:linear-gradient(110deg,#fff 38%,var(--sand) 50%,#fff 62%)}
.fx-in .fx-tw > span,.fusion-title:not(.fx-rv) .fx-tw > span{transform:none}
@keyframes fxShine{from{background-position:160% 0}to{background-position:-60% 0}}

/* formulário de contacto */
.wpcf7 form.wpcf7-form{display:grid;gap:26px;max-width:820px;margin:0 auto;padding:6px 0 10px;text-align:left}
.wpcf7 form.wpcf7-form .fx-f2{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.wpcf7 form.wpcf7-form p{margin:0!important;display:contents}
.wpcf7 form.wpcf7-form br{display:none}
.wpcf7 form.wpcf7-form .wpcf7-form-control-wrap{display:block}
.wpcf7 form.wpcf7-form label{display:grid;gap:10px;margin:0;font:600 .8rem Montserrat,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--g1)}
.wpcf7 form.wpcf7-form input[type=text],.wpcf7 form.wpcf7-form input[type=email],.wpcf7 form.wpcf7-form select,.wpcf7 form.wpcf7-form textarea{width:100%!important;background:#fff!important;border:2px solid #d8d4c8!important;border-radius:12px!important;padding:16px 18px!important;font:400 1.05rem 'Open Sans',sans-serif!important;color:#222!important;height:auto!important;box-shadow:none!important;letter-spacing:0;text-transform:none}
.wpcf7 form.wpcf7-form textarea{min-height:190px!important}
.wpcf7 form.wpcf7-form input:focus,.wpcf7 form.wpcf7-form select:focus,.wpcf7 form.wpcf7-form textarea:focus{border-color:var(--bronze)!important;box-shadow:0 0 0 4px rgba(176,141,87,.22)!important;outline:0}
.wpcf7 input[type=submit]{justify-self:start;background:var(--bronze)!important;color:var(--g0)!important;font:800 1rem Montserrat,sans-serif!important;letter-spacing:.06em;text-transform:none;padding:1em 2.4em!important;border:0!important;border-radius:999px!important;cursor:pointer;transition:transform .3s,background .3s,box-shadow .3s;box-shadow:0 8px 22px rgba(11,15,13,.2)}
.wpcf7 input[type=submit]:hover{background:var(--sand)!important;transform:translateY(-2px)}
.wpcf7-not-valid-tip{display:block;text-transform:none!important;letter-spacing:0!important;font:600 .9rem 'Open Sans',sans-serif!important;color:#9b1c1c!important}
.wpcf7 form.wpcf7-form .wpcf7-response-output{margin:0;padding:14px 16px;border:2px solid var(--g2);border-radius:10px;font-weight:600}
.wpcf7 form.wpcf7-form .wpcf7-acceptance,.wpcf7 form.wpcf7-form .wpcf7-acceptance label{justify-content:flex-start;text-align:left}
.wpcf7-acceptance label{display:flex;gap:10px;align-items:flex-start;font:400 .95rem 'Open Sans',sans-serif;text-transform:none;letter-spacing:0;color:#444}

/* rodapé */
.fusion-footer-widget-area{background:#F4F0E6!important;padding:44px 0!important}
.fusion-footer-widget-area img{border-radius:6px}
.fusion-footer-copyright-area{background:#0B0F0D!important}
.fusion-footer-copyright-area,.fusion-footer-copyright-area a{color:#cfd6c9!important}

@media (max-width:900px){.fx-facts{grid-template-columns:1fr 1fr}.fx-reach{grid-template-columns:1fr}.fx-reach__map iframe{min-height:360px}.fx-acc{flex-direction:column!important}.fx-acc > .fusion-layout-column{min-height:260px}.fx-acc:hover > .fusion-layout-column,.fx-acc:hover > .fusion-layout-column:hover{flex:1 1 0!important;filter:none}}
@media (max-width:640px){.fx-tree{right:12px;bottom:14px;width:48px;height:64px}.wpcf7 form.wpcf7-form .fx-f2{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.fx .fx-rv,.fx .fx-rv.fx-img{opacity:1;transform:none;transition:none}.fx .fx-img::after{display:none}.fx .fx-sec{clip-path:none;opacity:1;transition:none}.fx-c{opacity:1;transform:none;animation:none}.fx-flip{opacity:1;animation:none}.fx-caret{animation:none}.fx-lights circle,.fusion-countdown .fusion-digit,.fx-tw > span,.fx-dark::before,.fx-tree svg{animation:none}.fx-tw > span{transform:none;transition:none}.fx-drip,.fx-bst,.fx-snow,.fx-spark{display:none}.fx-tsl__tr{transition:none}}

/* cookies: sem bolacha flutuante; aviso na paleta */
.cookieadmin_reconsent_wrap{display:none!important}
.cookieadmin_btn{border-radius:999px!important;font-family:Montserrat,sans-serif!important;font-weight:700!important}
#cookieadmin_accept_button,.cookieadmin_accept_btn,#cookieadmin_accept_modal_button{background:#B08D57!important;color:#0B0F0D!important;border-color:#B08D57!important}
.cookieadmin_law_container,.cookieadmin_cookie_modal .cookieadmin_modal{border-radius:18px!important;font-family:'Open Sans',sans-serif}
.fx-legal{display:flex;gap:18px;flex-wrap:wrap;margin-top:6px;font-size:.9rem}
.fx-legal a,.fx-legal button{color:#cfd6c9!important;background:none;border:0;padding:0;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:.2em}
.fx-legal a:hover,.fx-legal button:hover{color:#fff!important}
.cookieadmin_save_btn,#cookieadmin_prf_modal_button{background:#1F2A1F!important;color:#fff!important;border-color:#1F2A1F!important}
.cookieadmin_btn{font-size:.95rem!important}

.fusion-mobile-menu-icons a,.fusion-mobile-menu-icons a:before,.fusion-icon-bars,.fusion-mobile-menu-icons .fusion-icon{color:#D9C7A3!important}
.fusion-mobile-nav-holder,.fusion-mobile-menu-design-modern .fusion-mobile-nav-holder > ul{background:#1F2A1F!important}
.fusion-mobile-nav-item a{color:#fff!important}

/* 404 */
.fx-404{position:relative;min-height:78vh;display:grid;place-items:center;background:var(--g1);color:#fff;padding:90px 20px;text-align:center;overflow:hidden}
.fx-404__in{max-width:760px;display:grid;gap:22px;justify-items:center;position:relative;z-index:2}
.fx-404__num{display:flex;align-items:center;justify-content:center;gap:clamp(4px,1.5vw,18px);margin:0;font:800 clamp(6.5rem,22vw,16rem)/.85 Montserrat,sans-serif;color:var(--sand);text-shadow:0 0 40px rgba(217,199,163,.35)}
.fx-404__w{height:.8em;width:auto;overflow:visible;filter:drop-shadow(0 8px 24px rgba(0,0,0,.4))}
.fx-404__swing{transform-origin:70px 4px;animation:fx404 4.2s ease-in-out infinite}
@keyframes fx404{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}
.fx-404__l circle{animation:fxTwinkle 2s ease-in-out infinite}.fx-404__l circle:nth-child(2n){animation-delay:.6s}.fx-404__l circle:nth-child(3n){animation-delay:1.1s}
.fx-404 h1{font:800 clamp(2rem,5vw,3.6rem)/1.05 Montserrat,sans-serif;color:#fff!important;margin:0}
.fx-404__t{font-size:1.2rem;line-height:1.6;color:#e9ece4;max-width:46ch;margin:0}
.fx-404__a{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:8px}
.fx-404__a .fx-ghost{color:#fff}
@media (prefers-reduced-motion:reduce){.fx-404__swing,.fx-404__l circle{animation:none}}

/* barra de progresso (páginas interiores) */
.fx-prog{position:fixed;left:0;top:0;height:4px;width:100%;transform-origin:left;transform:scaleX(0);background:linear-gradient(90deg,var(--bronze),var(--sand));z-index:100003;pointer-events:none}
/* formulário mais fino */
.wpcf7 form.wpcf7-form{gap:16px;max-width:760px}
.wpcf7 form.wpcf7-form .fx-f2{gap:16px}
.wpcf7 form.wpcf7-form label{gap:6px}
.wpcf7 form.wpcf7-form input[type=text],.wpcf7 form.wpcf7-form input[type=email],.wpcf7 form.wpcf7-form select,.wpcf7 form.wpcf7-form textarea{padding:11px 15px!important;border-radius:10px!important;font-size:1rem!important}
.wpcf7 form.wpcf7-form textarea{min-height:110px!important;height:110px!important;resize:vertical}
.wpcf7 form.wpcf7-form select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%231F2A1F' stroke-width='2'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 16px center!important;padding-right:42px!important}
.wpcf7 form.wpcf7-form .wpcf7-acceptance{margin:0}
.wpcf7 form.wpcf7-form .wpcf7-acceptance .wpcf7-list-item{margin:0}
.wpcf7 form.wpcf7-form .wpcf7-acceptance label{display:flex!important;flex-direction:row!important;align-items:center;gap:10px;text-transform:none;letter-spacing:0;font:400 .95rem 'Open Sans',sans-serif;color:#444}
.wpcf7 form.wpcf7-form .wpcf7-acceptance input[type=checkbox]{width:18px;height:18px;margin:0;flex:none;accent-color:#B08D57}
.wpcf7 form.wpcf7-form input[type=submit]{padding:.85em 2.2em!important;margin-top:0}

/* política de privacidade: só texto, bem arrumado */
.page-id-3 .fusion-text{max-width:70ch;margin:0 auto;padding:clamp(28px,5vw,64px) 0}
.page-id-3 .fusion-text h1{font:800 clamp(2.1rem,4.4vw,3.2rem)/1.1 Montserrat,sans-serif!important;color:#1F2A1F;margin:0 0 .3em;letter-spacing:-.01em}
.page-id-3 .fusion-text .pp-meta{font-size:.95rem;color:#6b7266;margin:0 0 1.4em}
.page-id-3 .fusion-text .pp-lead{font-size:1.25rem;line-height:1.6;color:#2a342b;margin:0 0 1.6em;padding-bottom:1.4em;border-bottom:1px solid #e3dfd2}
.page-id-3 .fusion-text h2{font:700 1.35rem/1.25 Montserrat,sans-serif!important;color:#1F2A1F;margin:2.2em 0 .6em;letter-spacing:0}
.page-id-3 .fusion-text p,.page-id-3 .fusion-text li{font-size:1.0625rem;line-height:1.75;color:#333b34}
.page-id-3 .fusion-text p{margin:0 0 1em}
.page-id-3 .fusion-text ul{margin:0 0 1.2em;padding-left:1.3em}.page-id-3 .fusion-text li{margin-bottom:.45em}
.page-id-3 .fusion-text a{color:#1F2A1F;text-decoration:underline;text-underline-offset:.2em;text-decoration-color:#B08D57}
.page-id-3 .fusion-text a:hover{color:#B08D57}
/* popup do formulário de reserva */
.fx-pop--form .fx-pop__box{max-width:580px;gap:12px}
.fx-pop--form .wpcf7 form.wpcf7-form{gap:14px;max-width:none;padding:0}
.fx-pop--form .wpcf7 form.wpcf7-form label{color:var(--sand)}
.fx-pop--form .wpcf7 form.wpcf7-form textarea{min-height:92px!important;height:92px!important}
.fx-pop--form .wpcf7 form.wpcf7-form .wpcf7-acceptance label{color:#efeee6}
.fx-pop--form .wpcf7-not-valid-tip{color:#ffb3a7!important}
.fx-pop--form .wpcf7 form.wpcf7-form .wpcf7-response-output{border-color:var(--sand);color:#efeee6}
.fx-pop--form .wpcf7 input[type=submit]{padding:.8em 2em!important}
@media (max-width:560px){.fx-pop--form .wpcf7 form.wpcf7-form .fx-f2{grid-template-columns:1fr}}
/* botão lateral dos autocarros */
.fx-bus-tab{position:fixed;left:0;top:50%;transform:translateY(-50%);z-index:99975;display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px 10px;background:var(--bronze);color:var(--g0);border:0;border-radius:0 14px 14px 0;font:800 .85rem Montserrat,sans-serif;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;box-shadow:0 8px 22px rgba(11,15,13,.3);transition:transform .35s var(--ease),background .3s,padding .3s}
.fx-bus-tab span{writing-mode:vertical-rl;white-space:nowrap}
.fx-bus-tab:hover{background:var(--sand);padding-left:16px;transform:translateY(-50%) translateX(2px)}
@media (max-width:640px){.fx-bus-tab{padding:12px 7px;font-size:.72rem;top:56%}}
.wpcf7 input[type=submit][disabled],.wpcf7 input[type=submit].fx-off{opacity:.4;cursor:not-allowed;box-shadow:none!important;transform:none!important;background:var(--bronze)!important;filter:grayscale(.3)}
.wpcf7 input[type=submit][disabled]:hover{background:var(--bronze)!important;transform:none!important}

/* aviso de cookies: barra verde em baixo, botões em linha (não é a caixa branca de origem) */
.cookieadmin_law_container.cookieadmin_box{left:0!important;right:0!important;bottom:0!important;top:auto!important;width:100%!important;max-width:none!important;margin:0!important;border-radius:0!important;box-shadow:0 -12px 40px rgba(11,15,13,.35)!important}
.cookieadmin_law_container .cookieadmin_consent_inside{background:#1F2A1F!important;border:0!important;border-top:3px solid #B08D57!important;border-radius:0!important;max-width:none!important;width:100%!important;padding:18px clamp(18px,4vw,56px) 12px!important;display:grid!important;grid-template-columns:1fr auto;gap:6px 36px;align-items:center;color:#efeee6}
.cookieadmin_law_container #cookieadmin_notice_title{color:#fff!important;font:800 1.15rem/1.2 Montserrat,sans-serif!important;margin:0!important;grid-column:1}
.cookieadmin_law_container #cookieadmin_notice_title::before{content:'\2726';color:#B08D57;margin-right:.55em}
.cookieadmin_law_container .cookieadmin_notice_con{grid-column:1}
.cookieadmin_law_container #cookieadmin_notice{color:#d9ddd2!important;font:400 .95rem/1.55 'Open Sans',sans-serif!important;margin:0!important;max-width:78ch}
.cookieadmin_law_container #cookieadmin_notice b{color:#fff}
.cookieadmin_law_container .cookieadmin_consent_btns{grid-column:2;grid-row:1 / span 2;display:flex!important;flex-direction:row!important;gap:10px;align-items:center;margin:0!important}
.cookieadmin_law_container .cookieadmin_btn{width:auto!important;padding:.75em 1.5em!important;font-size:.92rem!important;white-space:nowrap}
.cookieadmin_law_container #cookieadmin_reject_button{order:1;background:transparent!important;color:#D9C7A3!important;border:1.5px solid rgba(217,199,163,.55)!important}
.cookieadmin_law_container #cookieadmin_customize_button{order:2;background:transparent!important;color:#D9C7A3!important;border:1.5px solid rgba(217,199,163,.55)!important}
.cookieadmin_law_container #cookieadmin_accept_button{order:3;background:#B08D57!important;color:#0B0F0D!important;border:1.5px solid #B08D57!important}
.cookieadmin_law_container #cookieadmin_reject_button:hover,.cookieadmin_law_container #cookieadmin_customize_button:hover{background:rgba(217,199,163,.14)!important}
.cookieadmin_law_container #cookieadmin_accept_button:hover{background:#D9C7A3!important;border-color:#D9C7A3!important}
.cookieadmin_law_container .cookieadmin-poweredby{grid-column:1 / -1;text-align:right;font-size:.7rem;opacity:.55;margin:0!important}
.cookieadmin_law_container .cookieadmin-poweredby a,.cookieadmin_law_container .cookieadmin-poweredby span{color:#d9ddd2!important}
@media (max-width:820px){.cookieadmin_law_container .cookieadmin_consent_inside{grid-template-columns:1fr}.cookieadmin_law_container .cookieadmin_consent_btns{grid-column:1;grid-row:auto;flex-wrap:wrap}.cookieadmin_law_container .cookieadmin_btn{flex:1 1 auto}.cookieadmin_law_container #cookieadmin_accept_button{flex-basis:100%;order:0}.cookieadmin_law_container .cookieadmin-poweredby{text-align:center}}
/* sem barra de scroll nativa (a barra de progresso no topo faz esse papel) */
html{scrollbar-width:none;-ms-overflow-style:none}
html::-webkit-scrollbar,body::-webkit-scrollbar{display:none;width:0;height:0}

/* luzes: só aparecem quando se começa a descer, coladas ao cabeçalho */
.fx-lights{position:fixed!important;top:0;opacity:0;transform:translateY(-100%);transition:opacity .6s ease,transform .7s var(--ease)}
.fx-lights.on{opacity:1;transform:none}
.cookieadmin_law_container #cookieadmin_notice_title::before{content:none!important;display:none!important;margin:0!important}

/* telemóvel: painéis sem texto sobreposto, botão dos autocarros redondo */
@media (max-width:900px){
	.fx-acc{display:block!important}
	.fx-acc > .fusion-layout-column,.fx-acc:hover > .fusion-layout-column,.fx-acc:hover > .fusion-layout-column:hover{flex:none!important;width:100%!important;min-height:300px!important;height:auto!important;filter:none!important;position:relative}
	.fx-acc .fusion-column-wrapper{min-height:300px!important;padding:28px 22px!important;display:flex;flex-direction:column;justify-content:flex-end}
	.fx-acc .fusion-text,.fx-acc .fusion-text *,.fx-acc .fusion-title *{font-size:1.45rem!important;line-height:1.25!important;text-shadow:0 2px 14px rgba(0,0,0,.65)}
	.fx-acc .fusion-text p{margin:0 0 .6em!important}
}
@media (max-width:640px){
	.fx-bus-tab{left:12px;top:auto;bottom:14px;transform:none;width:48px;height:48px;padding:0;border-radius:50%;justify-content:center}
	.fx-bus-tab span{display:none}
	.fx-bus-tab:hover{transform:scale(1.06);padding:0}
	.fx-bus-tab svg{width:24px;height:24px}
}
/* cabeçalho em telemóvel e tablet: fixo e alinhado ao centro */
@media (max-width:1024px){
	.fusion-header-wrapper{position:sticky!important;top:0;z-index:99990;width:100%}
	.fusion-header-wrapper .fusion-header{height:auto!important;padding-top:8px!important;padding-bottom:8px!important}
	.fusion-header .fusion-row{display:flex!important;flex-wrap:wrap;align-items:center;justify-content:space-between;height:auto!important}
	.fusion-header .fusion-logo{margin:0!important;float:none!important;flex:0 0 auto;display:flex;align-items:center}
	.fusion-header .fusion-mobile-menu-icons{position:static!important;float:none!important;margin:0!important;top:auto!important;right:auto!important;height:auto!important;width:auto!important;display:flex!important;align-items:center;transform:none!important}
	.fusion-mobile-menu-icons a{display:flex!important;align-items:center;justify-content:center;width:48px;height:48px;font-size:1.7rem;margin:0!important;padding:0!important;float:none!important}
	.fusion-header .fusion-mobile-nav-holder{flex:0 0 100%;order:3}
}
@media (max-width:640px){.fusion-mobile-logo,.fusion-logo img.fusion-mobile-logo{height:68px!important}}
/* menu móvel: painel verde, links grandes, entrada em escada */
@media (max-width:1024px){
	.fusion-header{position:relative}
	.fusion-header .fusion-mobile-nav-holder{position:absolute!important;left:0!important;right:0!important;top:100%!important;width:100%!important;max-width:100vw!important;margin:0!important;padding:14px clamp(22px,6vw,48px) 26px!important;background:#14201a!important;border:0!important;border-top:1px solid rgba(217,199,163,.22)!important;box-shadow:0 34px 60px rgba(11,15,13,.5);max-height:calc(100vh - 100px);overflow-y:auto;-webkit-overflow-scrolling:touch}
	.fusion-mobile-nav-holder > ul{margin:0!important;padding:0!important;list-style:none;border:0!important;background:none!important}
	.fusion-mobile-nav-holder .fusion-mobile-nav-item{position:relative;background:none!important;border:0!important;margin:0!important;animation:fxMenuIn .55s var(--ease) both}
	.fusion-mobile-nav-holder > ul > li:nth-child(1){animation-delay:.04s}.fusion-mobile-nav-holder > ul > li:nth-child(2){animation-delay:.09s}.fusion-mobile-nav-holder > ul > li:nth-child(3){animation-delay:.14s}.fusion-mobile-nav-holder > ul > li:nth-child(4){animation-delay:.19s}.fusion-mobile-nav-holder > ul > li:nth-child(5){animation-delay:.24s}.fusion-mobile-nav-holder > ul > li:nth-child(6){animation-delay:.29s}.fusion-mobile-nav-holder > ul > li:nth-child(7){animation-delay:.34s}
	.fusion-mobile-nav-holder .fusion-mobile-nav-item > a{display:block!important;padding:13px 52px 13px 0!important;background:none!important;border:0!important;color:#fff!important;font:700 1.5rem/1.15 Montserrat,sans-serif!important;letter-spacing:-.01em;transition:color .25s,padding-left .3s var(--ease)}
	.fusion-mobile-nav-holder .fusion-mobile-nav-item > a:hover,.fusion-mobile-nav-holder .fusion-mobile-nav-item > a:focus-visible{color:#D9C7A3!important;padding-left:8px!important}
	.fusion-mobile-nav-holder .fusion-mobile-current-nav-item > a{color:#D9C7A3!important}
	.fusion-mobile-nav-holder .fusion-mobile-current-nav-item > a::before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;background:#B08D57;margin-right:12px;vertical-align:.12em}
	.fusion-mobile-nav-holder .fusion-open-submenu{position:absolute!important;right:-6px!important;top:2px!important;width:52px!important;height:52px!important;background:none!important;border:0!important;color:#D9C7A3!important;cursor:pointer}
	.fusion-mobile-nav-holder .fusion-open-submenu::before{color:#D9C7A3!important;font-size:1.1rem!important;transition:transform .3s var(--ease)}
	.fusion-mobile-nav-holder .fusion-open-submenu[aria-expanded=true]::before{transform:rotate(180deg)}
	.fusion-mobile-nav-holder .sub-menu{margin:0 0 8px!important;padding:0 0 0 16px!important;background:none!important;border:0!important}
	.fusion-mobile-nav-holder .sub-menu .fusion-mobile-nav-item > a{font:600 1.08rem/1.3 'Open Sans',sans-serif!important;color:#cfd6c9!important;padding:9px 0!important}
	.fusion-mobile-nav-holder .sub-menu .fusion-mobile-nav-item > a:hover{color:#fff!important;padding-left:6px!important}
	.fx-menu-cta{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0!important;padding:18px 0 0!important;border-top:1px solid rgba(217,199,163,.18);animation:fxMenuIn .55s var(--ease) .4s both}
	.fx-menu-cta .fx-btn{padding:.8em 1.5em;font-size:.95rem}
	.fx-menu-cta .fx-ghost{color:#D9C7A3;font-size:.95rem;padding:.75em 1.4em}
	.fx-menu-mail{flex:0 0 100%;margin:6px 0 0;font-size:.95rem;color:#cfd6c9}.fx-menu-mail a{color:#fff;text-underline-offset:.2em}
}
@keyframes fxMenuIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.fusion-mobile-nav-holder .fusion-mobile-nav-item,.fx-menu-cta{animation:none}}
.fx-btn{font-family:Montserrat,sans-serif}
@media (max-width:1024px){
	.fusion-header .fusion-row{position:static!important}
	.fusion-header .fusion-mobile-nav-holder,.fusion-header .fusion-mobile-nav-holder > ul,.fusion-header .fusion-mobile-nav-holder > ul > li{background-color:transparent!important}
	.fusion-header .fusion-mobile-nav-holder{background-color:#14201a!important;box-sizing:border-box}
}
.fx-menu-cta .fx-btn{font:800 .95rem Montserrat,sans-serif!important;color:#0B0F0D!important;text-decoration:none}
.fx-menu-cta .fx-ghost{font:800 .95rem Montserrat,sans-serif!important}

/* cabeçalho móvel: logo mais à esquerda, menu mais à direita, um pouco mais alto */
@media (max-width:1024px){
	.fusion-header-wrapper .fusion-header{padding-left:0!important;padding-right:0!important;padding-top:16px!important;padding-bottom:16px!important}
	.fusion-header .fusion-row{box-sizing:border-box;width:100%!important;max-width:none!important;padding-left:18px!important;padding-right:12px!important}
}
@media (max-width:640px){.fusion-mobile-logo,.fusion-logo img.fusion-mobile-logo{height:72px!important}}
/* o PNG do logo tem margem branca à esquerda e o ícone do menu fica centrado numa caixa de 48px: compensar */
@media (max-width:1024px){
	.fusion-header .fusion-logo{margin-left:-26px!important}
	.fusion-header .fusion-mobile-menu-icons{margin-right:-22px!important}
}
@media (max-width:1024px){.fusion-header .fusion-logo{transform:translateX(-26px)}}

/* compatibilidade: barra de baixo do Chrome/iOS, unidades dinâmicas, safe-area */
:root{--fx-bb:0px;--fx-sb:env(safe-area-inset-bottom,0px)}
html.fx-cios{--fx-bb:64px}
html.fx-lock{overflow:hidden}
.fx-pop{padding:16px 16px calc(16px + var(--fx-bb) + var(--fx-sb))}
.fx-pop__box{max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px - var(--fx-bb) - var(--fx-sb));-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.fx-tree{bottom:calc(22px + var(--fx-bb) + var(--fx-sb))}
@media (max-width:640px){
	.fx-tree{bottom:calc(14px + var(--fx-bb) + var(--fx-sb))}
	.fx-bus-tab{bottom:calc(14px + var(--fx-bb) + var(--fx-sb))}
}
.cookieadmin_law_container .cookieadmin_consent_inside{padding-bottom:calc(12px + var(--fx-bb) + var(--fx-sb))!important}
.cookieadmin_cookie_modal .cookieadmin_modal{max-height:calc(100vh - 24px)!important;max-height:calc(100dvh - 24px - var(--fx-bb) - var(--fx-sb))!important;overflow-y:auto!important}
@media (max-width:1024px){.fusion-header .fusion-mobile-nav-holder{max-height:calc(100vh - 110px);max-height:calc(100dvh - 110px - var(--fx-bb) - var(--fx-sb))}}
.lb{height:100vh;height:100dvh}
.fx-404{min-height:78vh;min-height:78dvh}
.wpcf7 input,.wpcf7 select,.wpcf7 textarea{font-size:16px!important}

/* hero (slider do Avada) um pouco mais alto em tablet e telemóvel */
@media (max-width:1024px){
	#sliders-container .fusion-slider-container,#sliders-container .tfs-slider,#sliders-container .tfs-slider .slides,#sliders-container .tfs-slider .slides > li{height:clamp(400px,66vh,640px)!important;height:clamp(400px,66svh,640px)!important;max-height:none!important;min-height:400px!important}
}

/* vídeo do hero a cobrir a altura nova (o Avada só dimensiona pelo 16:9 da largura) */
@media (max-width:1024px){
	#sliders-container{--fx-h:clamp(400px,66vh,640px);--fx-h:clamp(400px,66svh,640px)}
	#sliders-container .slides > li .background{height:100%!important;width:100%!important;overflow:hidden}
	#sliders-container .slides > li .background > div{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important}
	#sliders-container .slides > li .background > div > div{height:100%!important;width:100%!important;margin:0!important;position:relative;overflow:hidden}
	#sliders-container .slides > li .background iframe{position:absolute!important;top:0!important;left:50%!important;width:calc(var(--fx-h) * 1.7778)!important;height:100%!important;max-width:none!important;margin:0!important;transform:translateX(-50%)!important}
}
/* popup do aviso compacto em ecrãs pequenos: cabe inteiro, sem scroll interno */
@media (max-width:0px){
	.fx-pop{padding:10px 12px calc(10px + var(--fx-bb) + var(--fx-sb))}
	.fx-pop__box{padding:20px 18px 18px;gap:8px;border-radius:16px;max-height:calc(100vh - 20px);max-height:calc(100dvh - 20px - var(--fx-bb) - var(--fx-sb))}
	.fx-pop h2{font-size:1.55rem;padding-right:28px}
	.fx-pop__s{font-size:.98rem}
	.fx-pop p,.fx-pop li{font-size:.9rem;line-height:1.4}
	.fx-pop ul{gap:3px;padding-left:1.1em}
	.fx-pop__a{margin-top:4px;gap:8px}
	.fx-pop .fx-btn{padding:.78em 1.3em;font-size:.88rem}
	.fx-pop .fx-ghost{padding:.68em 1.2em;font-size:.88rem}
	.fx-pop__x{right:4px;top:2px}
}
/* popup do aviso: três escalas conforme a altura visível (generoso, médio, compacto) */
:root{--pp-pad:28px 26px;--pp-gap:12px;--pp-fs:1rem;--pp-lh:1.55;--pp-h2:2rem;--pp-ul:6px;--pp-btn:.9em 1.5em;--pp-btnfs:.95rem}
@media (max-height:759px){html:not(.fx-cios){--pp-pad:22px 20px;--pp-gap:9px;--pp-fs:.95rem;--pp-lh:1.45;--pp-h2:1.7rem;--pp-ul:4px;--pp-btn:.8em 1.35em;--pp-btnfs:.9rem}}
@media (max-height:659px){html:not(.fx-cios){--pp-pad:18px 16px;--pp-gap:7px;--pp-fs:.88rem;--pp-lh:1.38;--pp-h2:1.45rem;--pp-ul:2px;--pp-btn:.72em 1.2em;--pp-btnfs:.85rem}}
@media (max-height:823px){html.fx-cios{--pp-pad:22px 20px;--pp-gap:9px;--pp-fs:.95rem;--pp-lh:1.45;--pp-h2:1.7rem;--pp-ul:4px;--pp-btn:.8em 1.35em;--pp-btnfs:.9rem}}
@media (max-height:723px){html.fx-cios{--pp-pad:18px 16px;--pp-gap:7px;--pp-fs:.88rem;--pp-lh:1.38;--pp-h2:1.45rem;--pp-ul:2px;--pp-btn:.72em 1.2em;--pp-btnfs:.85rem}}
@media (max-width:359px){:root,html.fx-cios{--pp-pad:18px 16px;--pp-gap:7px;--pp-fs:.88rem;--pp-lh:1.38;--pp-h2:1.45rem;--pp-ul:2px;--pp-btn:.72em 1.2em;--pp-btnfs:.85rem}}
.fx-pop:not(.fx-pop--form) .fx-pop__box{padding:var(--pp-pad);gap:var(--pp-gap)}
.fx-pop:not(.fx-pop--form) h2{font-size:var(--pp-h2);padding-right:30px}
.fx-pop:not(.fx-pop--form) p,.fx-pop:not(.fx-pop--form) li{font-size:var(--pp-fs);line-height:var(--pp-lh)}
.fx-pop:not(.fx-pop--form) ul{gap:var(--pp-ul)}
.fx-pop:not(.fx-pop--form) .fx-btn,.fx-pop:not(.fx-pop--form) .fx-ghost{padding:var(--pp-btn);font-size:var(--pp-btnfs)}
/* mapa: sem a barra grande de créditos do OpenStreetMap; crédito discreto próprio */
.fx-reach__map{position:relative;overflow:hidden}
.fx-reach__map iframe{height:calc(100% + 60px)!important;min-height:620px!important;margin-bottom:-60px}
.fx-osm{position:absolute;right:10px;bottom:10px;z-index:2;background:rgba(255,255,255,.82);color:#1F2A1F!important;font:600 .7rem/1 Montserrat,sans-serif;padding:6px 9px;border-radius:6px;text-decoration:none;letter-spacing:.02em}
.fx-osm:hover{background:#fff}
@media (max-width:900px){.fx-reach__map iframe{min-height:420px!important}}
/* ícone do Facebook com a cor da marca */
.fusion-social-networks a.fusion-icon-facebook,.fusion-social-networks a.fusion-icon-facebook:before,.fusion-social-networks .fusion-icon-facebook,.fusion-footer .fusion-social-networks .fusion-social-network-icon.fusion-icon-facebook,.fusion-social-network-icon.fusion-facebook,.fusion-social-network-icon.fusion-facebook:before{color:#1877F2!important}
.fusion-social-networks a.fusion-icon-facebook:hover,.fusion-social-networks a.fusion-icon-facebook:hover:before,.fusion-social-network-icon.fusion-facebook:hover,.fusion-social-network-icon.fusion-facebook:hover:before{color:#0F5FCC!important}
/* o ícone do Facebook não fica tapado pela árvore fixa */
.fusion-footer-copyright-area .fusion-social-links-footer{padding-right:96px!important;box-sizing:border-box}
@media (max-width:640px){.fusion-footer-copyright-area .fusion-social-links-footer{padding-right:68px!important}}

/* Facebook: o logo oficial, e no hover as cores trocam (azul vira branco e branco vira azul) */
.fusion-social-networks a.fusion-facebook{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='199 198 1533 1533'%3E%3Ccircle cx='965.5' cy='964.5' r='766.5' fill='%231877F2'/%3E%3Cpath fill='%23fff' d='M1050 1453H859V1025H704V877H859V715C859 568 946 476 1092 476C1155 476 1227 488 1227 488V638H1150C1070 638 1050 688 1050 745V877H1220L1193 1025H1050Z'/%3E%3C/svg%3E") center/100% 100% no-repeat!important;border:0!important;border-radius:50%!important;box-shadow:none!important;transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.fusion-social-networks a.fusion-facebook:before{display:none!important;content:none!important}
.fusion-social-networks a.fusion-facebook:hover,.fusion-social-networks a.fusion-facebook:focus-visible{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='199 198 1533 1533'%3E%3Ccircle cx='965.5' cy='964.5' r='766.5' fill='%23fff'/%3E%3Cpath fill='%231877F2' d='M1050 1453H859V1025H704V877H859V715C859 568 946 476 1092 476C1155 476 1227 488 1227 488V638H1150C1070 638 1050 688 1050 745V877H1220L1193 1025H1050Z'/%3E%3C/svg%3E")!important;transform:scale(1.1)}

.fusion-social-networks a.fusion-facebook{display:inline-block!important;width:40px!important;height:40px!important;min-width:40px;line-height:40px!important;background-size:contain!important;background-position:center!important;padding:0!important;margin:0!important;font-size:0!important}

/* ícone do Facebook inteiro: o contentor do Avada cortava-o (overflow hidden, 30px) */
.fusion-social-networks,.fusion-social-networks.boxed-icons,.fusion-social-networks-wrapper{overflow:visible!important;width:auto!important;min-width:40px}
@media (max-width:640px){.fusion-footer-copyright-area .fusion-social-links-footer{padding-right:0!important}}

/* contactos: icones verde + anel dourado no hover */
.fusion-content-boxes .fontawesome-icon.circle-yes{background-color:#3E5A3F!important;border-color:#3E5A3F!important;color:#D9C7A3!important;transition:background-color .3s,color .3s}
.fusion-content-boxes .content-box-wrapper:hover .fontawesome-icon.circle-yes,.fusion-content-boxes .link-area-box:hover .fontawesome-icon.circle-yes{background-color:#3E5A3F!important;color:#fff!important}
.fusion-content-boxes .content-box-wrapper:hover .content-box-heading,.fusion-content-boxes .content-box-wrapper:hover .content-box-heading a,.fusion-content-boxes .content-box-wrapper:hover .heading-link .content-box-heading{color:#B08D57!important}
.fusion-content-boxes .icon-hover-animation-pulsate:hover .fontawesome-icon.circle-yes{animation:cnRing 1.6s ease-out infinite!important;box-shadow:0 0 0 0 rgba(176,141,87,.65)!important}
.fusion-content-boxes .icon-hover-animation-pulsate:hover .fontawesome-icon.circle-yes:before,.fusion-content-boxes .icon-hover-animation-pulsate:hover .fontawesome-icon.circle-yes:after{box-shadow:none!important;background:transparent!important;animation:none!important}
.fusion-content-boxes .icon-hover-animation-pulsate:hover .icon,.fusion-content-boxes .icon-hover-animation-pulsate:hover .icon span{box-shadow:none!important;background:transparent!important}
@keyframes cnRing{0%{box-shadow:0 0 0 0 rgba(217,199,163,.9),0 0 0 0 rgba(176,141,87,.6)}70%{box-shadow:0 0 0 18px rgba(217,199,163,0),0 0 0 34px rgba(176,141,87,0)}100%{box-shadow:0 0 0 0 rgba(217,199,163,0),0 0 0 0 rgba(176,141,87,0)}}
/* contactos: forcar hover verde + anel dourado (vence regras geradas do Avada) */
html body .fusion-content-boxes .fusion-content-box-hover .content-box-wrapper .heading .icon i.circle-yes,
html body .fusion-content-boxes .fusion-content-box-hover .content-box-wrapper:hover .heading .icon i.circle-yes,
html body .fusion-content-boxes .fusion-content-box-hover .heading .icon > span,
html body .fusion-content-boxes .fusion-content-box-hover .link-area-box-hover .heading .icon > span{background-color:#3E5A3F!important;border-color:#3E5A3F!important;color:#D9C7A3!important}
html body .fusion-content-boxes .fusion-content-box-hover .icon-hover-animation-pulsate .fontawesome-icon:after,
html body .fusion-content-boxes .fusion-content-box-hover .icon-hover-animation-pulsate .icon span:after,
html body .fusion-content-boxes .fusion-content-box-hover .icon-wrapper-hover-animation-pulsate .icon span:after{box-shadow:0 0 0 2px #D9C7A3!important;border-color:#B08D57!important;background:transparent!important}
html body .fusion-content-boxes .fusion-content-box-hover .link-area-box-hover .heading .content-box-heading,
html body .fusion-content-boxes .fusion-content-box-hover .link-area-box-hover .heading .heading-link .content-box-heading{color:#B08D57!important}
/* contactos: anel dourado animado via ::after */
html body .fusion-content-boxes .icon-hover-animation-pulsate:hover .fontawesome-icon.circle-yes{animation:none!important;box-shadow:none!important}
html body .fusion-content-boxes .fusion-content-box-hover .icon-hover-animation-pulsate:hover .fontawesome-icon:after{content:""!important;position:absolute!important;top:-3px!important;left:-3px!important;right:-3px!important;bottom:-3px!important;width:auto!important;height:auto!important;border-radius:50%!important;border:2px solid #D9C7A3!important;box-shadow:0 0 14px rgba(176,141,87,.7)!important;background:transparent!important;opacity:1!important;animation:cnRing2 1.4s ease-out infinite!important;pointer-events:none}
@keyframes cnRing2{0%{transform:scale(1);opacity:.95}100%{transform:scale(1.7);opacity:0}}