/* FX CONF v9 (hook em etiquetas, balanco) / v8 (11/10/2026) - secao Confraternizacao (codigo isolado). Trava por position:sticky (nao depende do pin do GSAP): a secao tem 250vh e o palco fica colado no topo enquanto a rolagem conduz a animacao. */
html:has(.fxc){scroll-behavior:auto!important}
.fxc{position:relative;background:#fff;padding:0!important;margin:0;height:320vh}
.fxc-stage{position:sticky;top:0;height:100vh;min-height:100vh;display:flex!important;flex-direction:column;justify-content:center;align-items:center;gap:clamp(1.4rem,3.4vh,2.6rem);padding:calc(74px + 1.2vh) 4vw 5vh!important;box-sizing:border-box;overflow:hidden}
.fxc-title{width:78vw;max-width:1240px;margin-left:auto!important;margin-right:auto!important;text-align:center}
.fxc-title .elementor-heading-title{display:block;font-family:'Marcellus',serif;font-weight:400;font-size:clamp(1.9rem,3.2vw,2.9rem);line-height:1.12;color:#0A0A0A;text-align:center;margin:0}
.fxc-row{display:grid!important;grid-template-columns:minmax(0,45fr) minmax(0,25.31fr) minmax(0,27fr);column-gap:clamp(1rem,1.9vw,1.9rem);row-gap:1.2rem;width:78vw;max-width:1240px;align-items:stretch;padding:0!important;margin-left:auto!important;margin-right:auto!important}
.fxc-video,.fxc-sq,.fxc-card{border-radius:22px;box-shadow:0 34px 60px -26px rgba(10,10,10,.34),0 14px 26px -14px rgba(10,10,10,.22);min-width:0}
.fxc-video{position:relative;aspect-ratio:16/9;align-self:start;overflow:hidden;border:2px solid #FF7004;background:#0A0A0A;container-type:inline-size;padding:0!important}
.fxc-video .elementor-widget-html,.fxc-video .elementor-widget-container{position:absolute;inset:0;width:100%;height:100%;margin:0}
.fxc-video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.fxc-sq{display:flex!important;flex-direction:column;justify-content:center;gap:.5rem;padding:clamp(1rem,1.7vw,1.6rem)!important;box-sizing:border-box}
.fxc-card{display:flex!important;flex-direction:column;justify-content:center;gap:.3rem;padding:clamp(.6rem,.95vw,1rem) clamp(.8rem,1.1vw,1.1rem)!important;box-sizing:border-box;overflow:hidden}
.fxc-card{background:#fff;border:2px solid #FF7004}
.fxc-sq{background:#FF7004;border:2px solid #FF7004;color:#0A0A0A}
.fxc-col{display:grid!important;grid-template-rows:1fr 1fr;gap:1.2rem;min-width:0;padding:0!important}
.fxc-sq .elementor-heading-title,.fxc-card .elementor-heading-title{font-family:'Marcellus',serif;font-weight:400;margin:0;line-height:1.12;color:#0A0A0A}
.fxc-sq .elementor-heading-title{font-size:clamp(1.5rem,2.4vw,2.2rem)}
.fxc-card .elementor-heading-title{font-size:clamp(1rem,1.2vw,1.25rem)}
.fxc-sq p,.fxc-card p{margin:0;font-family:'DM Sans',sans-serif;line-height:1.5;color:#2B2B2B;max-width:none}
.fxc-sq p{color:#0A0A0A;font-size:clamp(.95rem,1.15vw,1.08rem)}
.fxc-card p{font-size:clamp(.78rem,.88vw,.92rem);line-height:1.42}
.fxc-sq .elementor-widget-button{margin:.6rem 0 0!important;display:block}
.fxc-sq .elementor-button{background:#0A0A0A;color:#fff;border-radius:999px;padding:.95rem 1.5rem;font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(.9rem,1.05vw,1rem);box-shadow:0 12px 22px -10px rgba(10,10,10,.5)}
.fxc-sq .elementor-button:hover{background:#fff;color:#0A0A0A}
/* marcador sobre o deck (tamanhos em cqw = largura do video) */
.fxc-pin{position:absolute;left:36%;top:33%;width:0;height:0;pointer-events:none;opacity:0;z-index:3}
.fxc-pop{position:absolute;left:0;top:0;width:0;height:0}
.fxc-shadow{position:absolute;left:-3cqw;top:-.7cqw;width:6cqw;height:1.7cqw;border-radius:50%;background:radial-gradient(ellipse at center,rgba(0,0,0,.6),rgba(0,0,0,0) 70%)}
.fxc-ring{position:absolute;left:-3.4cqw;top:-1.7cqw;width:6.8cqw;height:3.4cqw;border:.4cqw solid rgba(255,255,255,.95);border-radius:50%;opacity:0}
.fxc-svg{position:absolute;left:-5cqw;bottom:-.5cqw;width:10cqw;overflow:visible;transform-origin:50% 96%;filter:drop-shadow(0 .8cqw .9cqw rgba(0,0,0,.4))}
.fxc-tag{position:absolute;left:5.4cqw;bottom:7.2cqw;white-space:nowrap;background:#fff;color:#0A0A0A;font-family:'DM Sans',sans-serif;font-weight:700;font-size:2.3cqw;line-height:1;padding:1.1cqw 2cqw;border-radius:999px;box-shadow:0 1cqw 2cqw rgba(0,0,0,.32);transform-origin:0 100%}
.fxc-tag:before{content:'';display:inline-block;width:1.3cqw;height:1.3cqw;border-radius:50%;background:#FF7004;margin-right:1cqw;vertical-align:.1cqw}
/* estatico (editor, movimento reduzido) */
.fxc-static{height:auto!important}
.fxc-static .fxc-stage{position:relative;height:auto;min-height:0;padding:8vh 4vw!important}
/* celular e tablet: empilha, sem trava */
@media(max-width:1179px){
  .fxc{height:auto!important}
  .fxc-stage{position:relative;height:auto;min-height:0;padding:9vh 5vw!important}
  .fxc-row,.fxc-title{width:100%}
  .fxc-row{grid-template-columns:1fr;column-gap:1rem;row-gap:1rem}
  .fxc-col{grid-template-rows:auto;gap:1rem}
  .fxc-sq{min-height:0}
  .fxc-m .fxc-rv{opacity:0;transform:translateY(34px);transition:opacity .7s ease,transform .7s ease}
  .fxc-m .fxc-rv.is-in{opacity:1;transform:none}
}
/* v9 */
.fxc-sq{container-type:inline-size;position:relative;overflow:hidden;align-items:flex-start}
.fxc-sq .elementor-widget{position:relative;z-index:1;width:100%}
.fxc-bg{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.fxc-hook .elementor-heading-title{font-family:'Marcellus',serif;font-size:clamp(1.4rem,2.2vw,2rem);line-height:1.12}
.fxc-js .fxc-hook .elementor-heading-title{display:flex;flex-direction:column;align-items:flex-start;gap:2.4cqw;font-size:0;line-height:1}
.fxc-tg{display:inline-block;font-family:'Barlow Condensed',sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:.01em;line-height:1;padding:1.5cqw 3cqw;border:.7cqw solid #fff;box-shadow:0 1.2cqw 2.4cqw rgba(0,0,0,.28);white-space:nowrap;opacity:0}
.fxc-tg1{background:#fff;color:#0A0A0A;font-size:11.5cqw}
.fxc-tg2{background:#2B2B2B;color:#fff;font-size:9.4cqw}
.fxc-tg3{background:#fff;color:#0A0A0A;font-size:8cqw}
.fxc-tg4{background:#fff;color:#FF7004;font-family:'DM Serif Display',serif;font-style:italic;font-weight:400;text-transform:none;font-size:10cqw}
.fxc-static.fxc-js .fxc-tg,.fxc-m .fxc-tg{opacity:1}
.fxc-static.fxc-js .fxc-tg1{transform:rotate(-1.8deg)}.fxc-static.fxc-js .fxc-tg2{transform:rotate(1.5deg)}.fxc-static.fxc-js .fxc-tg3{transform:rotate(-1.2deg)}.fxc-static.fxc-js .fxc-tg4{transform:rotate(2deg)}
.fxc-col{grid-template-rows:.85fr 1.15fr!important}
.fxc-actions{display:flex!important;flex-direction:row;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;padding:0!important;margin-top:.2rem}
.fxc-actions .elementor-widget-button{margin:0!important;display:inline-block}
.fxc-card .elementor-button{background:#0A0A0A;color:#fff;border-radius:999px;padding:.55rem 1rem;font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(.74rem,.82vw,.86rem);line-height:1.1}
.fxc-card .elementor-button:hover{background:#FF7004;color:#0A0A0A}
.fxc-card .fxc-link .elementor-button{background:transparent;color:#FF7004;padding:0;box-shadow:none;text-decoration:underline;text-underline-offset:3px}
.fxc-card .fxc-link .elementor-button:hover{background:transparent;color:#0A0A0A}/* v10 */
.fxc-sq,.fxc-col{height:0;min-height:100%;container-type:inline-size}
.fxc-col{overflow:hidden}
.fxc-tg1{font-size:14cqw}.fxc-tg2{font-size:11.5cqw}.fxc-tg3{font-size:10cqw}.fxc-tg4{font-size:12cqw}
.fxc-card{padding:3.4cqw 4.2cqw!important;gap:1.2cqw;overflow:visible}
.fxc-card .elementor-heading-title{font-size:max(1rem,6.2cqw)!important}
.fxc-card p{font-size:max(11.5px,4.3cqw)!important;line-height:1.36!important}
.fxc-card .elementor-button{padding:2cqw 4.2cqw;font-size:max(11px,3.8cqw)!important}
.fxc-actions{gap:1.6cqw 3.6cqw;margin-top:.6cqw}
@media(max-width:1179px){
  .fxc-sq,.fxc-col{height:auto;min-height:0}
  .fxc-col{overflow:visible}
  .fxc-sq{aspect-ratio:1/1}
  .fxc-card{padding:1rem 1.2rem!important}
}/* v11 */
.fxc-title .elementor-heading-title{font-size:clamp(1.9rem,min(4.2vw,6.4vh),3.8rem)!important;line-height:1.06!important}
.fxc-title .fxc-aqui{color:#FF7004;background:linear-gradient(transparent 64%,rgba(255,112,4,.22) 0);padding:0 .08em}
.fxc-cta{display:flex!important;flex-direction:column;align-items:center;gap:.6rem;padding:0!important;width:78vw;max-width:1240px;margin-left:auto!important;margin-right:auto!important}
.fxc-cta .elementor-widget-button{margin:0!important}
.fxc-cta .elementor-button{background:#FF7004;color:#0A0A0A;border-radius:999px;padding:1.05rem 2.3rem;font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(1rem,1.2vw,1.15rem);line-height:1.1;box-shadow:0 18px 30px -14px rgba(255,112,4,.7),0 0 0 0 rgba(255,112,4,.5);animation:fxcPulse 2.6s infinite}
.fxc-cta .elementor-button:after{content:'\2192';margin-left:.7rem;display:inline-block;transition:transform .25s}
.fxc-cta .elementor-button:hover{background:#0A0A0A;color:#fff;animation:none}
.fxc-cta .elementor-button:hover:after{transform:translateX(5px)}
.fxc-cta p{font-family:'DM Sans',sans-serif;font-size:clamp(.82rem,.92vw,.92rem);color:#4a4a4a;margin:0;text-align:center;max-width:none}
@keyframes fxcPulse{0%{box-shadow:0 18px 30px -14px rgba(255,112,4,.7),0 0 0 0 rgba(255,112,4,.5)}70%{box-shadow:0 18px 30px -14px rgba(255,112,4,.7),0 0 0 16px rgba(255,112,4,0)}100%{box-shadow:0 18px 30px -14px rgba(255,112,4,.7),0 0 0 0 rgba(255,112,4,0)}}
@media (prefers-reduced-motion:reduce){.fxc-cta .elementor-button{animation:none}}
@media(max-width:1179px){.fxc-cta{width:100%}.fxc-cta .elementor-button{width:100%;text-align:center}}/* v13: vidro nos cartoes e luzes suaves laranja atras (para o vidro ter o que desfocar) */
.fxc-stage{background-image:radial-gradient(560px 380px at 12% 20%,rgba(255,112,4,.16),transparent 70%),radial-gradient(600px 400px at 88% 84%,rgba(255,112,4,.14),transparent 70%)}
.fxc .fxc-card{background:linear-gradient(180deg,rgba(255,255,255,.62),rgba(255,255,255,.34))!important;-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);border:1.5px solid rgba(43,43,43,.18)!important;box-shadow:0 18px 30px -20px rgba(43,43,43,.5)}/* v15: CTA numa linha so no desktop */
@media(min-width:1180px){.fxc-cta .elementor-button{white-space:nowrap}}/* v16: no empilhado (< 1180 px) os cartoes usam rem (as unidades cqw ficavam gigantes com a coluna larga) */
@media(max-width:1179px){
  .fxc .fxc-card .elementor-heading-title{font-size:1.25rem!important}
  .fxc .fxc-card p{font-size:1rem!important;line-height:1.5!important}
  .fxc .fxc-card .elementor-button{font-size:.92rem!important;padding:.7rem 1.2rem}
  .fxc-actions{gap:.6rem 1.2rem}
}/* v17: o corte (overflow) da coluna escondia o balanco dos 2 cartoes; sem luzes de fundo (Milton vai escolher um fundo) */
.fxc .fxc-col{overflow:visible!important}
.fxc .fxc-stage{background-image:none!important}
/* v18: fundo de parede com sombra de janela (confraternizacao-bg.webp), que acompanha o mouse; cartoes com o mesmo vidro dos outros blocos */
.fxc-stage{background-image:none!important;background-color:#e9ebea}
.fxc-stage:before{content:'';position:absolute;inset:-12%;z-index:-1;pointer-events:none;background:url('https://floripaxperience.com.br/wp-content/uploads/fx-home/confraternizacao-bg.webp') center/cover no-repeat;transform:translate3d(calc(var(--bx,0)*1%),calc(var(--by,0)*1%),0);will-change:transform}
.fxc .fxc-card{background:linear-gradient(180deg,rgba(255,255,255,.42),rgba(255,255,255,.2))!important;-webkit-backdrop-filter:blur(12px) saturate(140%);backdrop-filter:blur(12px) saturate(140%);border:1.5px solid rgba(43,43,43,.2)!important;box-shadow:0 18px 30px -20px rgba(43,43,43,.5)}
/* v19: fundo FIXO cobrindo toda a area; so a sombra de janela anda com o mouse */
.fxc-stage:before{inset:0!important;transform:none!important;will-change:auto!important}
.fxc-stage:after{content:'';position:absolute;inset:-10%;z-index:-1;pointer-events:none;background:linear-gradient(calc(112deg + var(--sa,0)*1deg),transparent calc(var(--sp,50)*1% - 16%),rgba(10,10,10,.3) calc(var(--sp,50)*1%),transparent calc(var(--sp,50)*1% + 16%))}
/* v20: as 4 caixas ocupam a mesma margem da faixa de agencias (6vw de cada lado = 88vw); titulo e botao so mudam de posicao */
@media(min-width:1180px){.fxc-row,.fxc-title,.fxc-cta{width:88vw!important;max-width:none!important}}
/* v21: alinhado a linha do rodape/faixa de agencias (6vw medido sem a barra de rolagem) */
@media(min-width:1180px){.fxc-row,.fxc-title,.fxc-cta{width:calc(100% - 4vw)!important;max-width:none!important}}

/* v22: card de cima vira o convite da confraternizacao (mais texto); card de baixo enxuto; link laranja com contraste */
@media(min-width:1180px){.fxc-col{grid-template-rows:1.32fr .68fr!important}}
.fxc-pitch .elementor-heading-title{font-size:max(.95rem,5.3cqw)!important;line-height:1.1!important}
.fxc-pitch p{font-size:max(11px,3.75cqw)!important;line-height:1.36!important;color:#141414!important}
.fxc-card .fxc-link .elementor-button{color:#A83F00!important;font-weight:700!important}
.fxc-card .fxc-link .elementor-button:hover{color:#0A0A0A!important}
/* v23: 5a etiqueta = localizador RIBEIRAO DA ILHA (destaque grafite com pin laranja); as 4 anteriores encolhem ~10% para caber */
.fxc-tg1{font-size:12.6cqw}.fxc-tg2{font-size:10.4cqw}.fxc-tg3{font-size:9cqw}.fxc-tg4{font-size:10.8cqw}
.fxc-js .fxc-hook .elementor-heading-title{gap:2cqw}
.fxc-tg5{background:#0A0A0A;color:#fff;font-size:8.6cqw;letter-spacing:.07em;display:inline-flex;align-items:center;gap:1.6cqw;padding:1.4cqw 3cqw 1.4cqw 2.4cqw}
.fxc-tg5:before{content:"";width:1em;height:1em;flex:0 0 auto;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23FF7004' d='M12 2C8.1 2 5 5.1 5 9c0 5.2 7 13 7 13s7-7.8 7-13c0-3.9-3.1-7-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z'/></svg>") center/contain no-repeat}
.fxc-static.fxc-js .fxc-tg5{transform:rotate(-1.5deg)}

/* v24: um unico cartao (convite) ocupa a coluna toda, com o botao dentro; "Como funciona" e o CTA solto sairam */
.fxc-col{grid-template-rows:1fr!important}
.fxc-pitch{justify-content:flex-start;gap:2.6cqw}
.fxc-pitch .elementor-heading-title{font-size:max(1.05rem,6.2cqw)!important;line-height:1.1!important}
.fxc-pitch p{font-size:max(12px,4.3cqw)!important;line-height:1.42!important;color:#141414!important;margin:0 0 1.6cqw!important}
.fxc-pitch .elementor-widget-button{margin-top:auto!important;width:100%}
.fxc-cardcta .elementor-button{display:flex;align-items:center;justify-content:center;width:100%;box-sizing:border-box;background:#FF7004!important;color:#0A0A0A!important;font-weight:700!important;border-radius:999px;padding:3cqw 4cqw!important;font-size:max(12px,4cqw)!important;line-height:1.15;text-align:center;white-space:normal;box-shadow:0 14px 24px -12px rgba(255,112,4,.75);animation:fxcPulse 2.6s infinite}
.fxc-cardcta .elementor-button:after{content:'\2192';margin-left:.6rem;display:inline-block;transition:transform .25s}
.fxc-cardcta .elementor-button:hover{background:#0A0A0A!important;color:#fff!important;animation:none}
.fxc-cardcta .elementor-button:hover:after{transform:translateX(5px)}
@media (prefers-reduced-motion:reduce){.fxc-cardcta .elementor-button{animation:none}}
/* v25: texto longo cabe no unico cartao (altura da coluna = altura do video) */
@media(min-width:1180px){.fxc-card.fxc-pitch{padding:3cqw 4cqw!important;gap:2cqw!important}.fxc-pitch .elementor-heading-title{font-size:max(.95rem,5.3cqw)!important}.fxc-pitch p{font-size:max(11px,3.62cqw)!important;line-height:1.36!important;margin:0 0 1.2cqw!important}.fxc-cardcta .elementor-button{padding:2.4cqw 3.4cqw!important;font-size:max(11px,3.5cqw)!important}}

/* v26: aproveita a folga: letras um pouco maiores */
@media(min-width:1180px){.fxc-pitch .elementor-heading-title{font-size:max(.98rem,5.8cqw)!important}.fxc-pitch p{font-size:max(11.5px,3.95cqw)!important}.fxc-cardcta .elementor-button{font-size:max(11.5px,3.8cqw)!important}}
