.ff-mobile-photo{display:none!important}
@media(max-width:767px){
.ff-mobile-banner,.ff-mobile-card{position:relative!important;isolation:isolate;overflow:hidden!important;background-image:none!important;background-color:#111315!important;padding:0!important;height:auto!important}
.ff-mobile-banner{min-height:240px!important;aspect-ratio:1.65}
.ff-mobile-card{min-height:0!important;aspect-ratio:1.5;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;align-content:flex-start!important;gap:0!important;padding:18px 16px!important;box-sizing:border-box!important}
.ff-mobile-banner>.elementor-background-overlay,.ff-mobile-card>.elementor-background-overlay{display:none!important}
.ff-mobile-photo{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:100%!important;margin:0!important;padding:0!important;z-index:-2!important;pointer-events:none!important}
.ff-mobile-photo img{display:block!important;position:absolute!important;bottom:0!important;left:0!important;width:100%!important;height:auto!important;max-height:100%!important;max-width:100%!important;object-fit:contain!important;object-position:right bottom!important;margin:0!important;border:0!important}
.ff-mobile-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,19,21,.62) 0%,rgba(17,19,21,.23) 39%,transparent 66%)}
.ff-mobile-banner>.elementor-container{position:relative!important;min-height:0!important;height:100%!important;display:block!important;width:100%!important;padding:0!important}
.ff-mobile-banner>.elementor-container>.elementor-column:first-child{width:49%!important;max-width:49%!important;flex-basis:49%!important;min-height:0!important}
.ff-mobile-banner>.elementor-container>.elementor-column:nth-child(2){display:none!important}
.ff-mobile-banner>.elementor-container>.elementor-column:first-child>.elementor-widget-wrap{padding:18px 0 16px 16px!important;min-height:0!important;gap:0!important;align-content:flex-start!important}
.ff-mobile-card>.elementor-element{position:relative!important;flex:0 0 auto!important;width:46%!important;max-width:46%!important;padding:0!important;box-sizing:border-box!important}
.ff-mobile-card>.elementor-widget-heading,.ff-mobile-banner .elementor-widget-heading{display:block!important;visibility:visible!important;margin:0 0 9px!important}
.ff-mobile-card>.elementor-widget-button,.ff-mobile-banner .elementor-widget-button{padding:0!important;margin:6px 0 0!important}
.ff-mobile-banner .elementor-heading-title,.ff-mobile-card .elementor-heading-title{font-family:Arial,Helvetica,sans-serif!important;font-size:clamp(19px,5.6vw,28px)!important;line-height:1.08!important;letter-spacing:-.4px!important;white-space:normal!important;overflow-wrap:normal!important;color:#fff!important}
.ff-mobile-banner h6.elementor-heading-title,.ff-mobile-card h6.elementor-heading-title{font-size:9px!important;line-height:1.35!important;letter-spacing:.5px!important;color:#ff8181!important}
.ff-mobile-banner .elementor-widget-text-editor{display:none!important}
.ff-mobile-banner .elementor-button,.ff-mobile-card .elementor-button{font-size:10px!important;line-height:1.3!important;white-space:normal!important;padding:10px 11px!important;max-width:100%!important;box-sizing:border-box!important}
.ffh-cards>.elementor-container{display:flex!important;flex-wrap:wrap!important}
.ffh-cards>.elementor-container>.elementor-column{width:100%!important;max-width:100%!important;margin:0 0 16px!important}
}

/* v1.2: preserve desktop landscape composition on mobile */
@media(max-width:767px){
.ff-mobile-banner{min-height:0!important;height:auto!important;aspect-ratio:2.97!important;container-type:inline-size}
.ff-mobile-banner>.ff-mobile-photo img{inset:0!important;width:100%!important;height:100%!important;object-fit:contain!important}
.ff-mobile-banner>.elementor-container{position:absolute!important;inset:0!important;height:100%!important;display:flex!important;align-items:center!important}
.ff-mobile-banner>.elementor-container>.elementor-column:first-child{width:48%!important;max-width:48%!important}
.ff-mobile-banner>.elementor-container>.elementor-column:first-child>.elementor-widget-wrap{padding:6px 0 6px 10px!important;gap:0!important}
.ff-mobile-banner .elementor-widget-heading{margin:0 0 4px!important}
.ff-mobile-banner .elementor-heading-title{font-size:clamp(11px,3.6vw,25px)!important;font-size:3.6cqw!important;line-height:1.06!important;letter-spacing:-.2px!important}
.ff-mobile-banner h6.elementor-heading-title{font-size:clamp(5px,1.35vw,10px)!important;font-size:1.35cqw!important;line-height:1.15!important;letter-spacing:0!important}
.ff-mobile-banner .elementor-widget-text-editor{display:block!important;font-size:clamp(5px,1.4vw,10px)!important;font-size:1.4cqw!important;line-height:1.25!important;margin:0 0 3px!important}
.ff-mobile-banner .elementor-widget-text-editor p{margin:0!important}
.ff-mobile-banner .elementor-widget-button{margin:2px 0 0!important}
.ff-mobile-banner .elementor-button{font-size:clamp(6px,1.5vw,11px)!important;font-size:1.5cqw!important;padding:5px 7px!important;line-height:1.15!important}
.ff-mobile-banner .ff-mobile-photo:after{background:linear-gradient(90deg,rgba(17,19,21,.2),transparent 50%)!important}
.ff-mobile-card{aspect-ratio:1.5!important;min-height:0!important}
.ff-mobile-card>.ff-mobile-photo img{inset:0!important;width:100%!important;height:100%!important;object-fit:contain!important}
}

/* v1.3: keep each overlay inside its landscape frame regardless of Elementor widget gaps */
@media(max-width:767px){
.ff-mobile-banner>.elementor-container>.elementor-column:first-child{height:100%!important;align-self:stretch!important}
.ff-mobile-banner>.elementor-container>.elementor-column:first-child>.elementor-widget-wrap{position:relative!important;display:block!important;height:100%!important;width:100%!important;padding:0!important;margin:0!important}
.ff-mobile-banner .elementor-widget-heading,.ff-mobile-banner .elementor-widget-text-editor,.ff-mobile-banner .elementor-widget-button{position:absolute!important;left:8%!important;width:92%!important;max-width:92%!important;min-height:0!important;height:auto!important;margin:0!important;padding:0!important;transform:none!important}
.ff-mobile-banner .elementor-widget-heading>.elementor-widget-container,.ff-mobile-banner .elementor-widget-text-editor>.elementor-widget-container,.ff-mobile-banner .elementor-widget-button>.elementor-widget-container{padding:0!important;margin:0!important;min-height:0!important;height:auto!important}
.ff-mobile-banner .elementor-widget-heading:has(h6){top:8%!important;bottom:auto!important}
.ff-mobile-banner .elementor-widget-heading:not(:has(h6)){top:30%!important;bottom:auto!important}
.ff-mobile-banner .elementor-widget-text-editor{top:65%!important;bottom:auto!important}
.ff-mobile-banner .elementor-widget-button{top:auto!important;bottom:7%!important;display:block!important;visibility:visible!important;opacity:1!important;z-index:3!important}
.ff-mobile-banner .elementor-button-wrapper{margin:0!important;padding:0!important;line-height:1!important}
.ff-mobile-banner .elementor-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;visibility:visible!important;opacity:1!important;margin:0!important;padding:4px 6px!important;min-height:0!important;height:auto!important;background:#e02020!important;color:#fff!important}
.ff-mobile-banner .elementor-heading-title{margin:0!important;padding:0!important}
}
