/* ==========================================================================
   FlyLeone — Design System (restyle 2026)
   Palette: deep navy + sky blue. No ochre, no orange.
   ========================================================================== */
:root{
  --fly-ink:#05131F;
  --fly-ink-2:#0A2135;
  --fly-navy:#0B2E49;
  --fly-sky:#3AA8E0;
  --fly-sky-2:#8FDBF7;
  --fly-sky-3:#1B7CB4;
  --fly-paper:#F2F6FA;
  --fly-white:#FFFFFF;
  --fly-text:#0A1D2C;
  --fly-muted:#5B7186;
  --fly-line:rgba(8,33,53,.10);
  --fly-line-dark:rgba(255,255,255,.13);
  --fly-max:1240px;
  --fly-r:24px;
  --fly-shadow:0 40px 80px -40px rgba(5,19,31,.55);
  --fly-shadow-sm:0 18px 40px -24px rgba(5,19,31,.32);
  --fly-ease:cubic-bezier(.22,.61,.36,1);
}

body{ -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; }
body.page #Content .entry-content{ padding-bottom:0 !important; margin-bottom:0 !important; }

/* ---------- layout ---------- */
.elementor-section.elementor-section-boxed > .elementor-container{ max-width:var(--fly-max); }
.elementor-top-section > .elementor-container{ padding-left:24px; padding-right:24px; }
#fly-about, #servizi, #destinazioni, #fly-steps, #contatti{ padding:clamp(70px,7.6vw,116px) 0 !important; }
.fly-sec--tight{ padding:clamp(48px,5vw,72px) 0 !important; }
#servizi{ background:radial-gradient(120% 110% at 82% 0%,#0E3A5C 0%,#071B2B 46%,#05131F 100%) !important; color:#fff; position:relative; overflow:hidden; }
#servizi:after{ content:""; position:absolute; inset:0; pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:70px 70px;
  -webkit-mask-image:radial-gradient(75% 65% at 50% 0%,#000 0%,transparent 100%);
  mask-image:radial-gradient(75% 65% at 50% 0%,#000 0%,transparent 100%); }
#servizi > .elementor-container{ position:relative; z-index:2; }
#fly-about, #destinazioni{ background:var(--fly-paper) !important; }

/* ---------- typography ---------- */
.fly-eyebrow{ display:inline-flex; align-items:center; gap:12px; font-family:Poppins,sans-serif !important;
  font-size:11px !important; font-weight:500 !important; letter-spacing:.3em !important; text-transform:uppercase;
  color:var(--fly-sky-3) !important; margin:0 0 18px !important; line-height:1 !important; }
.fly-eyebrow:before{ content:""; width:30px; height:1px; background:currentColor; opacity:.55; }
.fly-eyebrow--light{ color:var(--fly-sky-2) !important; }

.fly-h2 .elementor-heading-title, .fly-h2.elementor-widget-heading .elementor-heading-title{
  font-family:Poppins,sans-serif; font-weight:300; font-size:clamp(27px,3vw,44px); line-height:1.1;
  letter-spacing:-.025em; color:var(--fly-text); margin:0; }
.fly-h2 strong, .fly-h2 b{ font-weight:600; }
.fly-h2--light .elementor-heading-title{ color:#fff !important; }
.fly-h3 .elementor-heading-title{ font-family:Poppins,sans-serif; font-weight:600; font-size:20px; line-height:1.3; letter-spacing:-.01em; color:var(--fly-text); margin:0 0 10px; }
.fly-lead{ font-family:Roboto,sans-serif; font-size:16.5px; line-height:1.75; color:var(--fly-muted); }
.fly-lead p{ margin:0 0 14px; }
.fly-lead--light, .fly-lead--light p{ color:rgba(255,255,255,.72) !important; }

/* ---------- buttons ---------- */
.elementor-widget-button.fly-btn{ margin:0; }
.fly-btn .elementor-button{ display:inline-flex; align-items:center; gap:12px; border-radius:999px; padding:17px 30px;
  font-family:Poppins,sans-serif; font-size:14px; font-weight:500; letter-spacing:.02em; line-height:1;
  border:0; transition:transform .3s var(--fly-ease),box-shadow .3s var(--fly-ease),background .3s var(--fly-ease); }
.fly-btn .elementor-button .elementor-button-icon svg, .fly-btn .elementor-button i{ font-size:13px; transition:transform .3s var(--fly-ease); }
.fly-btn .elementor-button:hover .elementor-button-icon{ transform:translateX(4px); }
.fly-btn--primary .elementor-button{ background:linear-gradient(135deg,#45B6EA 0%,#1B7CB4 100%); color:#fff !important;
  box-shadow:0 22px 44px -20px rgba(27,124,180,.9), inset 0 1px 0 rgba(255,255,255,.28); }
.fly-btn--primary .elementor-button:hover{ transform:translateY(-2px);
  box-shadow:0 28px 52px -20px rgba(27,124,180,.95), inset 0 1px 0 rgba(255,255,255,.4); }
.fly-btn--ghost .elementor-button{ background:rgba(255,255,255,.07); color:#fff !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.3); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); }
.fly-btn--ghost .elementor-button:hover{ background:rgba(255,255,255,.15); box-shadow:inset 0 0 0 1px rgba(255,255,255,.55); transform:translateY(-2px); }
.fly-btn--outline .elementor-button{ background:transparent; color:var(--fly-text) !important; box-shadow:inset 0 0 0 1px rgba(8,33,53,.18); }
.fly-btn--outline .elementor-button:hover{ background:var(--fly-text); color:#fff !important; box-shadow:none; transform:translateY(-2px); }

/* ---------- header ---------- */
#mfn-header-template{ background:rgba(255,255,255,.9) !important;
  -webkit-backdrop-filter:blur(22px) saturate(180%); backdrop-filter:blur(22px) saturate(180%);
  border-bottom:1px solid rgba(8,33,53,.07); transition:box-shadow .35s var(--fly-ease),background .35s var(--fly-ease); }
#mfn-header-template.is-stuck{ box-shadow:0 20px 44px -34px rgba(5,19,31,.6); background:rgba(255,255,255,.96) !important; }
#mfn-header-template .mcb-section-inner{ display:flex; align-items:center; justify-content:space-between; gap:28px;
  max-width:var(--fly-max); margin:0 auto; padding:0 24px; min-height:84px; }
#mfn-header-template .mcb-wrap{ width:auto !important; flex:0 0 auto !important; float:none !important; }
#mfn-header-template .mcb-wrap-inner{ display:flex; align-items:center; }
#mfn-header-template .mcb-column{ width:auto !important; }
#mfn-header-template .image_frame{ border:0 none !important; background:none !important; margin:0; }
#mfn-header-template .image_frame .image_wrapper img{ max-height:44px; width:auto; }
#mfn-header-template .image_links{ display:none !important; }
#mfn-header-template .mcb-background-overlay{ display:none; }

#menu-main-menu{ display:flex !important; align-items:center; gap:4px; margin:0; padding:0; list-style:none; float:none !important; }
#menu-main-menu > li{ position:relative; float:none !important; }
#menu-main-menu > li > a{ display:inline-flex; align-items:center; gap:7px; padding:11px 16px; border-radius:999px;
  font-family:Poppins,sans-serif; font-size:14px; font-weight:500; letter-spacing:.005em; color:var(--fly-text) !important;
  transition:color .25s var(--fly-ease),background .25s var(--fly-ease); }
#menu-main-menu > li > a:hover{ color:var(--fly-sky-3) !important; background:rgba(58,168,224,.09); }
#menu-main-menu > li.current-menu-item > a,
#menu-main-menu > li.current_page_item > a{ color:var(--fly-sky-3) !important; }
#menu-main-menu > li:last-child > a{ background:linear-gradient(135deg,#45B6EA 0%,#1B7CB4 100%); color:#fff !important;
  padding:13px 24px; box-shadow:0 14px 28px -14px rgba(27,124,180,.95), inset 0 1px 0 rgba(255,255,255,.28);
  transition:transform .3s var(--fly-ease),box-shadow .3s var(--fly-ease); }
#menu-main-menu > li:last-child > a:hover{ transform:translateY(-1px);
  box-shadow:0 18px 32px -14px rgba(27,124,180,1), inset 0 1px 0 rgba(255,255,255,.4); color:#fff !important; }
#menu-main-menu .sub-menu{ position:absolute; top:calc(100% + 14px); left:50%; transform:translate(-50%,10px);
  min-width:262px; background:#fff; border:1px solid var(--fly-line); border-radius:18px;
  box-shadow:0 36px 64px -34px rgba(5,19,31,.5); padding:10px; margin:0; list-style:none;
  opacity:0; visibility:hidden; transition:opacity .25s var(--fly-ease),transform .25s var(--fly-ease),visibility .25s; z-index:60; }
#menu-main-menu > li:hover > .sub-menu{ opacity:1; visibility:visible; transform:translate(-50%,0); }
#menu-main-menu .sub-menu li{ float:none !important; }
#menu-main-menu .sub-menu li a{ display:block; padding:11px 15px; border-radius:12px; font-family:Roboto,sans-serif;
  font-size:14px; font-weight:400; color:var(--fly-text) !important; transition:background .2s,color .2s; }
#menu-main-menu .sub-menu li a:hover{ background:var(--fly-paper); color:var(--fly-sky-3) !important; }
#mfn-header-template .mfn-header-menu-toggle{ display:none; }

/* ---------- link-buttons (html widget) ---------- */
.fly-btns{ display:flex; flex-wrap:wrap; gap:14px; margin-top:32px; }
.fly-btn{ display:inline-flex; align-items:center; gap:12px; padding:17px 30px; border-radius:999px;
  font-family:Poppins,sans-serif; font-size:14px; font-weight:500; letter-spacing:.02em; line-height:1;
  text-decoration:none !important; transition:transform .3s var(--fly-ease),box-shadow .3s var(--fly-ease),background .3s var(--fly-ease); }
.fly-btn svg{ width:16px; height:16px; flex:0 0 auto; transition:transform .3s var(--fly-ease); }
.fly-btn:hover svg{ transform:translateX(4px); }
.fly-btn--primary{ background:linear-gradient(135deg,#45B6EA 0%,#1B7CB4 100%); color:#fff !important;
  box-shadow:0 22px 44px -20px rgba(27,124,180,.9), inset 0 1px 0 rgba(255,255,255,.28); }
.fly-btn--primary:hover{ transform:translateY(-2px); box-shadow:0 28px 52px -20px rgba(27,124,180,.95), inset 0 1px 0 rgba(255,255,255,.4); }
.fly-btn--ghost{ background:rgba(255,255,255,.08); color:#fff !important; box-shadow:inset 0 0 0 1px rgba(255,255,255,.32);
  -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); }
.fly-btn--ghost:hover{ background:rgba(255,255,255,.16); box-shadow:inset 0 0 0 1px rgba(255,255,255,.55); transform:translateY(-2px); }
.fly-btn--outline{ color:var(--fly-text) !important; box-shadow:inset 0 0 0 1px rgba(8,33,53,.16); background:#fff; }
.fly-btn--outline:hover{ background:var(--fly-ink); color:#fff !important; transform:translateY(-2px); box-shadow:0 18px 34px -20px rgba(5,19,31,.7); }
.fly-btn--sm{ padding:13px 22px; font-size:13px; }

/* ---------- HERO ---------- */
#fly-hero{ position:relative; isolation:isolate; min-height:min(88vh,820px); display:flex; align-items:center;
  background-color:#05131F !important; background-size:cover !important; background-position:72% 50% !important; }
#fly-hero:before{ content:""; position:absolute; inset:0; z-index:1; pointer-events:none; opacity:1 !important;
  background:
    radial-gradient(120% 90% at 88% 12%, rgba(58,168,224,.20) 0%, rgba(6,23,38,0) 58%),
    linear-gradient(96deg, rgba(5,19,31,.95) 0%, rgba(5,19,31,.86) 34%, rgba(5,19,31,.42) 62%, rgba(5,19,31,.06) 100%),
    linear-gradient(180deg, rgba(5,19,31,.6) 0%, rgba(5,19,31,0) 26%, rgba(5,19,31,0) 62%, rgba(5,19,31,.72) 100%); }
#fly-hero:after{ content:""; position:absolute; left:0; right:0; bottom:0; height:1px; z-index:2;
  background:linear-gradient(90deg,transparent,rgba(143,219,247,.5),transparent); }
#fly-hero > .elementor-container{ position:relative; z-index:3; padding-top:clamp(120px,13vh,170px); padding-bottom:clamp(120px,14vh,180px); }
.fly-hero-h1 .elementor-heading-title, .fly-hero-h1.elementor-widget-heading .elementor-heading-title{
  font-family:Poppins,sans-serif !important; font-weight:300 !important; font-size:clamp(38px,5.1vw,70px) !important;
  line-height:1.02 !important; letter-spacing:-.03em !important; color:#fff !important; margin:0 !important; }
.fly-hero-h1 .elementor-heading-title strong, .fly-hero-h1 .elementor-heading-title b{ font-weight:600; }
.fly-hero-h1 .elementor-heading-title em{ font-style:normal;
  background:linear-gradient(100deg,#BDEBFA 0%,#62C5EE 55%,#2E93CB 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.fly-hero-lead{ max-width:552px; margin-top:26px; }
.fly-hero-lead p{ font-family:Roboto,sans-serif; font-size:clamp(15.5px,1.15vw,18px); line-height:1.7; color:rgba(255,255,255,.76) !important; margin:0; }
.fly-hero-note{ display:flex; flex-wrap:wrap; align-items:center; gap:26px; margin-top:34px; padding-top:26px;
  border-top:1px solid rgba(255,255,255,.14); max-width:600px; }
.fly-hero-note span{ display:inline-flex; align-items:center; gap:9px; font-family:Roboto,sans-serif; font-size:13px; color:rgba(255,255,255,.72); }
.fly-hero-note svg{ width:15px; height:15px; color:#8FDBF7; }
.fly-scroll{ position:absolute; left:50%; bottom:26px; transform:translateX(-50%); z-index:3; width:26px; height:42px;
  border-radius:14px; box-shadow:inset 0 0 0 1px rgba(255,255,255,.35); display:grid; place-items:center; }
.fly-scroll:after{ content:""; width:3px; height:8px; border-radius:2px; background:#8FDBF7; animation:flyScroll 2s infinite; }
@keyframes flyScroll{ 0%{ transform:translateY(-5px); opacity:0 } 40%{ opacity:1 } 100%{ transform:translateY(6px); opacity:0 } }

/* ---------- TRUST BAR ---------- */
#fly-trust{ padding:0 !important; background:transparent !important; position:relative; z-index:8; }
.fly-trust{ position:relative; margin-top:-64px; display:grid; grid-template-columns:repeat(4,1fr);
  background:rgba(255,255,255,.93); -webkit-backdrop-filter:blur(22px) saturate(160%); backdrop-filter:blur(22px) saturate(160%);
  border:1px solid rgba(255,255,255,.85); border-radius:26px; padding:8px;
  box-shadow:0 44px 80px -46px rgba(5,19,31,.7), 0 2px 0 rgba(255,255,255,.6) inset; }
.fly-trust-item{ position:relative; display:flex; align-items:center; gap:14px; padding:22px 24px; }
.fly-trust-item + .fly-trust-item:before{ content:""; position:absolute; left:0; top:22%; height:56%; width:1px; background:var(--fly-line); }
.fly-trust-ic{ display:grid; place-items:center; width:44px; height:44px; flex:0 0 auto; border-radius:14px;
  background:linear-gradient(160deg,rgba(58,168,224,.16),rgba(58,168,224,.05)); color:var(--fly-sky-3); }
.fly-trust-ic svg{ width:21px; height:21px; }
.fly-trust-item strong{ display:block; font-family:Poppins,sans-serif; font-size:14.5px; font-weight:600; letter-spacing:-.01em; color:var(--fly-text); line-height:1.25; }
.fly-trust-item span{ display:block; font-family:Roboto,sans-serif; font-size:12.5px; line-height:1.45; color:var(--fly-muted); margin-top:3px; }

/* ---------- ABOUT ---------- */
.fly-about-media{ position:relative; }
.fly-about-media .elementor-widget-container{ position:relative; }
.fly-about-media img{ width:100%; height:clamp(340px,40vw,520px); object-fit:cover; border-radius:28px;
  box-shadow:0 50px 80px -50px rgba(5,19,31,.75); display:block; }
#fly-about-media-col{ position:relative; }
.fly-inset{ position:absolute; left:-26px; bottom:34px; background:#fff; border-radius:18px; padding:16px 22px;
  box-shadow:0 30px 60px -30px rgba(5,19,31,.55); border:1px solid rgba(255,255,255,.9); display:flex; align-items:center; gap:13px; }
.fly-inset-ic{ width:36px; height:36px; border-radius:11px; display:grid; place-items:center; color:#fff;
  background:linear-gradient(140deg,#45B6EA,#1B7CB4); }
.fly-inset-ic svg{ width:18px; height:18px; }
.fly-inset strong{ display:block; font-family:Poppins,sans-serif; font-size:13.5px; font-weight:600; color:var(--fly-text); line-height:1.2; }
.fly-inset span{ display:block; font-family:Roboto,sans-serif; font-size:11.5px; color:var(--fly-muted); margin-top:2px; }
.fly-points{ display:grid; gap:18px; margin-top:30px; }
.fly-point{ display:flex; gap:15px; align-items:flex-start; }
.fly-point-ic{ width:38px; height:38px; flex:0 0 auto; border-radius:12px; display:grid; place-items:center;
  color:var(--fly-sky-3); background:linear-gradient(160deg,rgba(58,168,224,.15),rgba(58,168,224,.04));
  box-shadow:inset 0 0 0 1px rgba(58,168,224,.16); }
.fly-point-ic svg{ width:18px; height:18px; }
.fly-point h4{ margin:0 0 4px; font-family:Poppins,sans-serif; font-size:15px; font-weight:600; letter-spacing:-.01em; color:var(--fly-text); }
.fly-point p{ margin:0; font-family:Roboto,sans-serif; font-size:14px; line-height:1.6; color:var(--fly-muted); }
#fly-about-text{ padding-right:26px; }

/* ---------- section head ---------- */
.fly-head{ max-width:720px; margin-bottom:clamp(34px,4vw,54px); }
.fly-head--center{ margin-left:auto; margin-right:auto; text-align:center; }
.fly-head--center .fly-eyebrow{ justify-content:center; }
.fly-head--center .fly-eyebrow:before{ display:none; }
.fly-head .fly-sub{ margin:16px 0 0; font-family:Roboto,sans-serif; font-size:16px; line-height:1.7; color:var(--fly-muted); }
.fly-head--light .fly-sub{ color:rgba(255,255,255,.64); }

/* ---------- SERVICES ---------- */
.fly-svc-lg-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.fly-svc-sm-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:16px; }
.fly-svc{ position:relative; display:flex; flex-direction:column; text-decoration:none !important; overflow:hidden;
  transition:transform .4s var(--fly-ease), box-shadow .4s var(--fly-ease), border-color .4s var(--fly-ease); }
.fly-svc--lg{ min-height:352px; justify-content:flex-end; padding:28px; border-radius:24px; isolation:isolate;
  background-size:cover; background-position:center; box-shadow:inset 0 0 0 1px rgba(255,255,255,.16); }
.fly-svc--lg:before{ content:""; position:absolute; inset:0; z-index:-1; transition:opacity .4s var(--fly-ease);
  background:linear-gradient(180deg,rgba(5,19,31,.10) 0%,rgba(5,19,31,.52) 46%,rgba(5,19,31,.95) 100%); }
.fly-svc--lg:after{ content:""; position:absolute; inset:0; z-index:-1; opacity:0; transition:opacity .4s var(--fly-ease);
  background:linear-gradient(180deg,rgba(27,124,180,.25) 0%,rgba(9,38,60,.72) 55%,rgba(5,19,31,.97) 100%); }
.fly-svc--lg:hover{ transform:translateY(-5px); box-shadow:inset 0 0 0 1px rgba(143,219,247,.5), 0 40px 70px -40px rgba(0,0,0,.8); }
.fly-svc--lg:hover:after{ opacity:1; }
.fly-svc-tag{ position:absolute; top:22px; left:24px; font-family:Poppins,sans-serif; font-size:11px; font-weight:500;
  letter-spacing:.2em; color:rgba(255,255,255,.6); }
.fly-svc--lg h3{ margin:0 0 10px; font-family:Poppins,sans-serif; font-size:23px; font-weight:600; letter-spacing:-.02em; color:#fff; line-height:1.2; }
.fly-svc--lg p{ margin:0; font-family:Roboto,sans-serif; font-size:14px; line-height:1.6; color:rgba(255,255,255,.72); max-width:290px; }
.fly-svc-more{ display:inline-flex; align-items:center; gap:9px; margin-top:20px; font-family:Poppins,sans-serif;
  font-size:12.5px; font-weight:500; letter-spacing:.04em; color:#8FDBF7; }
.fly-svc-more svg{ width:15px; height:15px; transition:transform .3s var(--fly-ease); }
.fly-svc:hover .fly-svc-more svg{ transform:translateX(5px); }

.fly-svc--sm{ flex-direction:row; align-items:flex-start; gap:15px; padding:24px; border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.022));
  border:1px solid rgba(255,255,255,.10); }
.fly-svc--sm:hover{ transform:translateY(-4px); border-color:rgba(58,168,224,.5);
  background:linear-gradient(180deg,rgba(58,168,224,.17),rgba(255,255,255,.03)); box-shadow:0 34px 60px -40px rgba(0,0,0,.9); }
.fly-svc-ic{ width:42px; height:42px; flex:0 0 auto; border-radius:12px; display:grid; place-items:center;
  color:#9FE1F9; background:rgba(58,168,224,.13); box-shadow:inset 0 0 0 1px rgba(58,168,224,.26); transition:background .3s,color .3s; }
.fly-svc-ic svg{ width:20px; height:20px; }
.fly-svc--sm:hover .fly-svc-ic{ background:rgba(58,168,224,.28); color:#fff; }
.fly-svc--sm h3{ margin:0 0 6px; font-family:Poppins,sans-serif; font-size:15.5px; font-weight:600; letter-spacing:-.01em; color:#fff; line-height:1.3; }
.fly-svc--sm p{ margin:0; font-family:Roboto,sans-serif; font-size:13px; line-height:1.55; color:rgba(255,255,255,.60); }
.fly-svc--sm .fly-svc-body{ min-width:0; }

/* ---------- DESTINATIONS ---------- */
.fly-dest-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.fly-dest{ position:relative; display:block; border-radius:22px; overflow:hidden; aspect-ratio:4/5; text-decoration:none !important;
  background:#0B2E49; box-shadow:0 26px 50px -34px rgba(5,19,31,.6); }
.fly-dest img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .8s var(--fly-ease); }
.fly-dest:after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(5,19,31,0) 34%,rgba(5,19,31,.30) 58%,rgba(5,19,31,.88) 100%); transition:opacity .4s; }
.fly-dest:hover img{ transform:scale(1.07); }
.fly-dest:hover{ box-shadow:0 36px 60px -30px rgba(5,19,31,.7); }
.fly-dest-meta{ position:absolute; left:20px; right:20px; bottom:18px; z-index:2; color:#fff; }
.fly-dest-meta strong{ display:block; font-family:Poppins,sans-serif; font-size:19px; font-weight:600; letter-spacing:-.02em; line-height:1.2; }
.fly-dest-meta em{ display:block; font-style:normal; font-family:Roboto,sans-serif; font-size:12px; letter-spacing:.1em;
  text-transform:uppercase; color:rgba(255,255,255,.7); margin-top:5px; }
.fly-dest-pill{ position:absolute; top:14px; left:14px; z-index:2; display:inline-flex; align-items:center; gap:6px;
  padding:7px 12px; border-radius:999px; font-family:Poppins,sans-serif; font-size:10.5px; font-weight:500; letter-spacing:.1em;
  text-transform:uppercase; color:#fff; background:rgba(5,19,31,.42); box-shadow:inset 0 0 0 1px rgba(255,255,255,.26);
  -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); }
.fly-dest-arrow{ position:absolute; top:14px; right:14px; z-index:2; width:34px; height:34px; border-radius:50%;
  display:grid; place-items:center; color:#fff; background:rgba(255,255,255,.14); box-shadow:inset 0 0 0 1px rgba(255,255,255,.25);
  opacity:0; transform:translateY(-4px); transition:.35s var(--fly-ease); }
.fly-dest-arrow svg{ width:15px; height:15px; }
.fly-dest:hover .fly-dest-arrow{ opacity:1; transform:translateY(0); }

/* ---------- SARDINIA ---------- */
#fly-sardinia{ position:relative; isolation:isolate; min-height:min(78vh,660px); display:flex; align-items:center;
  background-size:cover !important; background-position:center 40% !important; }
#fly-sardinia:before{ content:""; position:absolute; inset:0; z-index:1; opacity:1 !important;
  background:linear-gradient(96deg,rgba(5,19,31,.92) 0%,rgba(5,19,31,.78) 40%,rgba(5,19,31,.28) 72%,rgba(5,19,31,.12) 100%); }
#fly-sardinia > .elementor-container{ position:relative; z-index:3; padding-top:clamp(60px,7vw,90px); padding-bottom:clamp(60px,7vw,90px); }
.fly-panel{ background:rgba(7,27,43,.55); border:1px solid rgba(255,255,255,.16); border-radius:28px;
  padding:clamp(26px,3vw,44px); -webkit-backdrop-filter:blur(24px) saturate(150%); backdrop-filter:blur(24px) saturate(150%);
  box-shadow:0 50px 90px -50px rgba(0,0,0,.9), inset 0 1px 0 rgba(255,255,255,.14); max-width:560px; }
.fly-routes{ display:flex; flex-wrap:wrap; gap:8px; margin-top:26px; }
.fly-route{ display:inline-flex; align-items:center; gap:7px; padding:9px 15px; border-radius:999px;
  font-family:Poppins,sans-serif; font-size:12.5px; font-weight:500; color:#fff; background:rgba(255,255,255,.08);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.18); }
.fly-route svg{ width:13px; height:13px; color:#8FDBF7; }

/* ---------- STEPS ---------- */
.fly-steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; position:relative; }
.fly-step{ position:relative; padding:34px 30px 32px; border-radius:22px; background:#fff;
  border:1px solid rgba(8,33,53,.08); box-shadow:0 26px 50px -40px rgba(5,19,31,.5); transition:.4s var(--fly-ease); overflow:hidden; }
.fly-step:after{ content:""; position:absolute; left:0; right:0; top:0; height:2px; opacity:0;
  background:linear-gradient(90deg,#45B6EA,#1B7CB4); transition:opacity .4s; }
.fly-step:hover{ transform:translateY(-5px); box-shadow:0 40px 70px -44px rgba(5,19,31,.55); }
.fly-step:hover:after{ opacity:1; }
.fly-step-num{ font-family:Poppins,sans-serif; font-size:44px; font-weight:300; line-height:1;
  color:transparent; -webkit-text-stroke:1px rgba(27,124,180,.45); letter-spacing:-.02em; }
.fly-step h3{ margin:20px 0 9px; font-family:Poppins,sans-serif; font-size:17px; font-weight:600; letter-spacing:-.01em; color:var(--fly-text); }
.fly-step p{ margin:0; font-family:Roboto,sans-serif; font-size:14px; line-height:1.65; color:var(--fly-muted); }
.fly-step-ic{ position:absolute; right:26px; top:32px; width:38px; height:38px; border-radius:12px; display:grid; place-items:center;
  color:var(--fly-sky-3); background:linear-gradient(160deg,rgba(58,168,224,.14),rgba(58,168,224,.04)); }
.fly-step-ic svg{ width:18px; height:18px; }

/* ---------- CTA ---------- */
#contatti{ position:relative; overflow:hidden; isolation:isolate;
  background:radial-gradient(120% 150% at 18% 0%,#0E3A5C 0%,#071B2B 48%,#05131F 100%) !important; }
#contatti:before{ content:""; position:absolute; right:-12%; top:-40%; width:58%; height:180%; z-index:0; pointer-events:none;
  background:radial-gradient(closest-side,rgba(58,168,224,.26),rgba(58,168,224,0) 72%); }
#contatti:after{ content:""; position:absolute; left:0; right:0; top:0; height:1px;
  background:linear-gradient(90deg,transparent,rgba(143,219,247,.45),transparent); }
#contatti > .elementor-container{ position:relative; z-index:2; }
#contatti h2.elementor-heading-title{ font-family:Poppins,sans-serif !important; font-weight:300 !important;
  font-size:clamp(28px,3.4vw,48px) !important; line-height:1.08 !important; letter-spacing:-.03em !important; color:#fff !important; margin:0 !important; }
.fly-cta-meta{ display:flex; flex-wrap:wrap; gap:12px 30px; margin-top:26px; }
.fly-cta-meta a, .fly-cta-meta span{ display:inline-flex; align-items:center; gap:9px; font-family:Roboto,sans-serif;
  font-size:14px; color:rgba(255,255,255,.72) !important; text-decoration:none !important; }
.fly-cta-meta svg{ width:15px; height:15px; color:#8FDBF7; }
.fly-cta-meta a:hover{ color:#fff !important; }

/* ---------- FOOTER ---------- */
#Footer{ background:#05131F !important; color:rgba(255,255,255,.62); position:relative; }
#Footer:before{ content:""; position:absolute; left:0; right:0; top:0; height:1px;
  background:linear-gradient(90deg,transparent,rgba(58,168,224,.45),transparent); }
#Footer .widgets_wrapper{ padding:clamp(58px,6vw,86px) 0 44px; }
#Footer .widgets_wrapper .container{ max-width:var(--fly-max); }
#Footer h4, #Footer .wp-block-heading{ font-family:Poppins,sans-serif !important; font-size:11px !important; font-weight:500 !important;
  letter-spacing:.26em !important; text-transform:uppercase; color:#8FDBF7 !important; margin:0 0 22px !important; }
#Footer .textwidget, #Footer .widget_text, #Footer .widget_block p, #Footer .textwidget p{
  font-family:Roboto,sans-serif; font-size:13.5px; line-height:1.85; color:rgba(255,255,255,.60) !important; }
#Footer .textwidget div[style], #Footer .textwidget span[style]{ color:inherit !important; }
#Footer .textwidget span[style]{ color:#3AA8E0 !important; }
#Footer .textwidget ul{ list-style:none; margin:0; padding:0; }
#Footer .textwidget li{ margin:0 0 9px !important; }
#Footer .textwidget hr{ display:none; }
#Footer a{ color:rgba(255,255,255,.76) !important; text-decoration:none !important; transition:color .2s; }
#Footer a:hover{ color:#8FDBF7 !important; }
#Footer b, #Footer strong{ color:rgba(255,255,255,.92); font-weight:600; }
#Footer .column{ margin-bottom:28px; }
#Footer .iubenda-embed{ font-family:Roboto,sans-serif; font-size:12.5px; color:rgba(255,255,255,.5) !important; }
#Footer .footer_copy{ border-top:1px solid rgba(255,255,255,.08); padding:24px 0; }
#Footer .footer_copy .container{ max-width:var(--fly-max); }
#Footer .copyright, #Footer .footer_copy{ font-family:Roboto,sans-serif; font-size:12.5px; color:rgba(255,255,255,.42) !important; }
#Footer .footer_copy a{ color:rgba(255,255,255,.55) !important; }
#Footer .social{ display:flex; gap:10px; }
#Footer .social a, #Footer .widget .social a{ width:36px; height:36px; border-radius:50%; display:grid; place-items:center;
  background:rgba(255,255,255,.06); box-shadow:inset 0 0 0 1px rgba(255,255,255,.12); transition:.3s var(--fly-ease); }
#Footer .social a:hover{ background:linear-gradient(140deg,#45B6EA,#1B7CB4); box-shadow:none; transform:translateY(-2px); }
#Footer .social a i{ font-size:14px; color:#fff !important; }
.gtranslate_wrapper{ display:inline-flex !important; }
.gtranslate_wrapper select{ background:rgba(255,255,255,.06) !important; color:rgba(255,255,255,.7) !important;
  border:1px solid rgba(255,255,255,.14) !important; border-radius:999px !important; padding:7px 12px !important;
  font-family:Roboto,sans-serif; font-size:12px; }

/* ---------- responsive ---------- */
@media (max-width:1100px){
  .fly-svc-lg-grid{ grid-template-columns:1fr 1fr; }
  .fly-svc-sm-grid{ grid-template-columns:1fr 1fr; }
  .fly-dest-grid{ grid-template-columns:repeat(3,1fr); }
  .fly-trust{ grid-template-columns:1fr 1fr; }
  .fly-trust-item:nth-child(3):before{ display:none; }
  .fly-steps{ grid-template-columns:1fr; }
  #fly-about-text{ padding-right:0; }
  .fly-inset{ left:auto; right:16px; bottom:-18px; }
}
@media (max-width:860px){
  #fly-hero{ min-height:auto; background-position:62% 50% !important; }
  #fly-hero > .elementor-container{ padding-top:120px; padding-bottom:150px; }
  .fly-svc-lg-grid, .fly-svc-sm-grid{ grid-template-columns:1fr; }
  .fly-dest-grid{ grid-template-columns:1fr 1fr; }
  .fly-trust{ margin-top:-52px; grid-template-columns:1fr; padding:6px; }
  .fly-trust-item{ padding:16px 20px; }
  .fly-trust-item + .fly-trust-item:before{ left:20px; right:20px; top:0; width:auto; height:1px; }
  .fly-panel{ max-width:100%; }
  .fly-about-media img{ height:auto; aspect-ratio:4/3; }
  .fly-inset{ position:static; margin-top:14px; display:inline-flex; }
}
@media (max-width:520px){
  .fly-btns .fly-btn{ flex:1 1 100%; justify-content:center; }
  .fly-dest-grid{ grid-template-columns:1fr; }
  .fly-dest{ aspect-ratio:16/10; }
}

/* ---------- motion ---------- */
html{ scroll-behavior:smooth; scroll-padding-top:96px; }
.fly-reveal{ opacity:0; transform:translateY(20px); transition:opacity .7s var(--fly-ease),transform .7s var(--fly-ease); }
.fly-reveal.is-in{ opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  .fly-reveal{ opacity:1 !important; transform:none !important; }
  .fly-scroll:after{ animation:none; }
}
/* ---------- fixes ---------- */
body.page-id-261 .elementor-element-261{ padding:0; }
.fly-anchor{ display:block; position:relative; top:-100px; height:0; }
img{ max-width:100%; }

/* ---------- extra components ---------- */
.fly-hero-h1{ max-width:780px; }
#fly-hero .elementor-widget-heading{ margin-bottom:0; }
.fly-panel h2.fly-panel-h2{ font-family:Poppins,sans-serif; font-weight:300; font-size:clamp(25px,2.9vw,38px); line-height:1.12;
  letter-spacing:-.025em; color:#fff; margin:0 0 16px; }
.fly-panel h2.fly-panel-h2 strong{ font-weight:600; }
.fly-panel-p{ margin:0; font-family:Roboto,sans-serif; font-size:15.5px; line-height:1.75; color:rgba(255,255,255,.78); }
.fly-btns--center{ justify-content:center; }
.fly-cta-meta--center{ justify-content:center; }
.fly-dest-cta{ margin-top:28px; display:flex; justify-content:center; }
.fly-head .fly-h2{ margin-bottom:0; }
.fly-head-sub{ margin-top:16px; }
.fly-head--center{ max-width:760px; margin-left:auto; margin-right:auto; }
.fly-head--center .elementor-heading-title{ text-align:center; }
.fly-head--center .fly-lead p{ text-align:center; }
.fly-head--center .fly-eyebrow{ justify-content:center; display:flex; }
.fly-svc-body{ display:block; }
#fly-about, #servizi, #destinazioni, #fly-steps, #contatti .elementor-widget-html{ margin-bottom:0; }
.fly-hero-note span svg{ color:#8FDBF7; }
.fly-hero-note span{ white-space:nowrap; }

/* ---------- BeTheme containment fix + final ---------- */
body.page-id-261 .sections_group .section_wrapper{ max-width:100% !important; padding-left:0 !important; padding-right:0 !important; }
body.page-id-261 .the_content_wrapper.is-elementor{ max-width:100% !important; padding-left:0 !important; padding-right:0 !important; }
body.page-id-261 .sections_group .entry-content{ padding:0 !important; }
#mfn-header-template .mcb-section{ height:auto !important; overflow:visible !important; }
#mfn-header-template .image_frame img{ max-height:48px; }
.fly-h2{ max-width:780px; }
.fly-head-sub{ max-width:640px; margin-left:auto; margin-right:auto; }
#fly-steps .fly-h2, #contatti .fly-h2, #fly-steps .fly-lead, #contatti .fly-lead{ margin-left:auto; margin-right:auto; }
#contatti{ padding-bottom:clamp(70px,7vw,110px) !important; }
#fly-trust{ margin-bottom:0; }

/* ---------- footer social + fine tuning ---------- */
#Footer .icon_bar{ display:inline-flex !important; align-items:center; justify-content:center; width:40px; height:40px;
  margin:0 8px 8px 0; border-radius:12px; background:rgba(255,255,255,.06) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.14); position:relative; overflow:hidden; text-decoration:none;
  transition:transform .3s var(--fly-ease),background .3s var(--fly-ease); }
#Footer .icon_bar .t{ display:flex !important; align-items:center; justify-content:center; position:static !important;
  transform:none !important; background:none !important; width:100%; height:100%; }
#Footer .icon_bar .b{ display:none !important; }
#Footer .icon_bar i{ color:#fff !important; font-size:15px !important; line-height:1; }
#Footer .icon_bar:hover{ background:linear-gradient(140deg,#45B6EA,#1B7CB4) !important; box-shadow:none; transform:translateY(-2px); }
#block-20 > b{ display:block; font-family:Poppins,sans-serif; font-size:11px; font-weight:500; letter-spacing:.26em;
  text-transform:uppercase; color:#8FDBF7; margin:0 0 16px; }
#block-20 > br{ display:none; }
#Footer .iubenda-embed{ margin-right:10px; font-size:12px; color:rgba(255,255,255,.55) !important; }
#Footer .iubenda-embed:hover{ color:#8FDBF7 !important; }

#fly-steps .fly-eyebrow, #contatti .fly-eyebrow{ display:flex !important; justify-content:center; }
#fly-steps .elementor-widget-html, #contatti .elementor-widget-html{ text-align:center; }
.fly-step{ min-height:238px; display:flex; flex-direction:column; }
.fly-step-num{ font-size:52px; }
.fly-step h3{ margin-top:auto; }
.fly-svc-tag{ background:rgba(5,19,31,.45); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px);
  padding:7px 12px; border-radius:999px; box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);
  font-size:10.5px; letter-spacing:.16em; color:rgba(255,255,255,.85); }
.fly-dest:before{ content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(180deg,rgba(11,46,73,.10),rgba(11,46,73,.30)); mix-blend-mode:multiply; }

/* ---------- MOBILE HEADER + NAV ---------- */
@media (max-width:1024px){
  #mfn-header-template{ display:block !important; position:relative; z-index:900; }
  #mfn-header-template .mcb-header-section{ display:block !important; height:auto !important; overflow:visible !important; }
  #mfn-header-template .mcb-header-section.hide-mobile,
  #mfn-header-template .mcb-header-section.hide-tablet,
  #mfn-header-template .mcb-column.hide-mobile,
  #mfn-header-template .mcb-column.hide-tablet{ display:block !important; }
  #mfn-header-template .mcb-section-inner{ min-height:70px; padding:0 18px; }
  #mfn-header-template .image_frame img{ max-height:38px; }
  .fly-burger{ display:grid; position:fixed; top:14px; right:16px; z-index:100000; width:46px; height:46px; border:0;
    border-radius:14px; background:linear-gradient(135deg,#45B6EA,#1B7CB4); place-items:center; cursor:pointer;
    box-shadow:0 14px 26px -14px rgba(27,124,180,.95), inset 0 1px 0 rgba(255,255,255,.3); }
  .fly-burger span{ display:block; width:19px; height:2px; border-radius:2px; background:#fff; margin:2.5px 0;
    transition:transform .3s var(--fly-ease),opacity .3s var(--fly-ease); }
  body.fly-nav-open .fly-burger span:nth-child(1){ transform:translateY(6.5px) rotate(45deg); }
  body.fly-nav-open .fly-burger span:nth-child(2){ opacity:0; }
  body.fly-nav-open .fly-burger span:nth-child(3){ transform:translateY(-6.5px) rotate(-45deg); }
  #menu-main-menu{ position:fixed !important; top:0; right:0; left:0; width:100%; height:100vh; height:100dvh;
    background:#fff; z-index:99999; display:flex !important; flex-direction:column; align-items:stretch;
    justify-content:flex-start; gap:0; padding:92px 22px 44px; margin:0; overflow:auto;
    transform:translateY(-102%); transition:transform .45s var(--fly-ease); }
  body.fly-nav-open #menu-main-menu{ transform:translateY(0); }
  #menu-main-menu > li{ width:100%; }
  #menu-main-menu > li > a{ display:flex !important; width:100%; justify-content:space-between; align-items:center;
    padding:16px 2px !important; font-size:18px !important; border-bottom:1px solid var(--fly-line); border-radius:0 !important;
    background:none !important; box-shadow:none !important; color:var(--fly-text) !important; }
  #menu-main-menu > li > a:hover{ color:var(--fly-sky-3) !important; }
  #menu-main-menu .sub-menu{ position:static !important; transform:none !important; opacity:1 !important; visibility:visible !important;
    box-shadow:none !important; border:0 !important; padding:4px 0 8px 16px !important; min-width:0 !important; width:100% !important;
    background:transparent !important; display:block !important; }
  #menu-main-menu .sub-menu li a{ padding:9px 0 !important; font-size:14.5px !important; color:var(--fly-muted) !important; }
  #menu-main-menu > li:last-child{ margin-top:22px; }
  #menu-main-menu > li:last-child > a{ justify-content:center !important; border:0 !important; padding:17px 22px !important;
    background:linear-gradient(135deg,#45B6EA 0%,#1B7CB4 100%) !important; color:#fff !important; }
  body.fly-nav-open{ overflow:hidden; }
  #fly-hero .elementor-heading-title{ font-size:clamp(30px,9vw,44px) !important; }
  .fly-eyebrow{ font-size:10px !important; letter-spacing:.22em !important; }
}

/* ---------- language switcher ---------- */
.gt_switcher_wrapper{ top:auto !important; bottom:22px !important; right:auto !important; left:22px !important; z-index:8000 !important; }
.gt_switcher_wrapper .gt_switcher-popup{ display:inline-flex !important; align-items:center; gap:7px; padding:8px 15px !important;
  border-radius:999px !important; background:rgba(5,19,31,.72) !important; color:#fff !important;
  font-family:Poppins,sans-serif !important; font-size:11.5px !important; font-weight:500 !important; letter-spacing:.04em;
  box-shadow:0 14px 30px -16px rgba(0,0,0,.7), inset 0 0 0 1px rgba(255,255,255,.18);
  -webkit-backdrop-filter:blur(16px); backdrop-filter:blur(16px); text-decoration:none !important; }
.gt_switcher_wrapper .gt_switcher-popup img{ width:15px !important; height:auto; border-radius:2px; }
.gt_switcher_wrapper .gt_switcher-popup:hover{ background:rgba(27,124,180,.9) !important; }
@media (max-width:1024px){ .gt_switcher_wrapper{ bottom:16px !important; left:16px !important; } }

/* ---------- mobile nav refinements ---------- */
@media (max-width:1024px){
  #mfn-header-template{ position:relative; z-index:100001; }
  #menu-main-menu{ padding-top:86px; }
  #menu-main-menu > li{ display:block !important; width:100% !important; }
  #menu-main-menu > li > a{ width:100% !important; }
  #menu-main-menu .sub-menu{ padding:2px 0 10px 0 !important; }
  #menu-main-menu .sub-menu li{ display:block !important; }
  #menu-main-menu .sub-menu li a{ padding-left:16px !important; border-left:1px solid var(--fly-line); }
  .fly-burger{ position:fixed; }
  .fly-burger span{ position:absolute; left:50%; top:50%; margin:0;
    transform:translate(-50%,-50%); }
  .fly-burger span:nth-child(1){ transform:translate(-50%,calc(-50% - 6px)); }
  .fly-burger span:nth-child(3){ transform:translate(-50%,calc(-50% + 6px)); }
  body.fly-nav-open .fly-burger span:nth-child(1){ transform:translate(-50%,-50%) rotate(45deg); }
  body.fly-nav-open .fly-burger span:nth-child(3){ transform:translate(-50%,-50%) rotate(-45deg); }
  body.fly-nav-open .fly-burger span:nth-child(2){ opacity:0; transform:translate(-50%,-50%) scaleX(.3); }
}

@media (max-width:1024px){
  #menu-main-menu{ top:69px !important; height:calc(100vh - 69px) !important; height:calc(100dvh - 69px) !important;
    padding:22px 22px 44px !important; transform:translateY(-130%) !important; border-top:1px solid var(--fly-line); }
  body.fly-nav-open #menu-main-menu{ transform:translateY(0) !important; }
}

@media (max-width:1024px){
  .fly-burger{ z-index:100002 !important; top:12px !important; }
  #mfn-header-template .image_frame img{ max-height:40px; }
}

@media (max-width:1024px){
  .fly-burger{ box-sizing:border-box !important; padding:0 !important; width:46px !important; height:46px !important; }
}

@media (max-width:1024px){
  #fly-hero .elementor-heading-title{ font-size:clamp(27px,8vw,38px) !important; }
  .gt_switcher_wrapper .gt_switcher-popup{ padding:6px 11px !important; font-size:10.5px !important; opacity:.9; }
  .gt_switcher_wrapper{ bottom:14px !important; left:14px !important; }
  .fly-hero-note{ gap:14px !important; }
}
@media (max-width:420px){
  #fly-hero .elementor-heading-title{ font-size:clamp(26px,7.6vw,34px) !important; }
}

/* ---------- polish steps ---------- */
.fly-step{ min-height:212px; }
.fly-step-num{ -webkit-text-stroke:1.4px rgba(27,124,180,.55); font-size:46px; }
.fly-step h3{ margin:16px 0 8px; }

/* ============ FIX 2026-11-11 ============ */
/* 1. full-bleed reale */
body.page-id-261 .the_content_wrapper.is-elementor{ margin-left:0 !important; margin-right:0 !important; max-width:100% !important; padding:0 !important; }
body.page-id-261 .elementor.elementor-261{ width:100% !important; max-width:100% !important; margin:0 !important; }
body.page-id-261 .sections_group .section_wrapper{ max-width:100% !important; padding-left:0 !important; padding-right:0 !important; }
body.page-id-261 #fly-hero, body.page-id-261 #fly-trust, body.page-id-261 #fly-about, body.page-id-261 #servizi,
body.page-id-261 #destinazioni, body.page-id-261 #fly-sardinia, body.page-id-261 #fly-steps, body.page-id-261 #contatti{ width:100% !important; }

/* 2. tendina desktop: area di passaggio mouse */
#menu-main-menu .sub-menu{ top:calc(100% + 10px) !important; }
#menu-main-menu .sub-menu:before{ content:""; position:absolute; left:-14px; right:-14px; top:-16px; height:18px; }
#menu-main-menu > li{ padding-bottom:0; }
#menu-main-menu > li:after{ content:""; position:absolute; left:0; right:0; top:100%; height:12px; }

/* 3. icone piene nel riquadro */
.fly-trust-ic svg{ width:26px; height:26px; }
.fly-trust-ic{ border-radius:13px; }
.fly-svc-ic svg{ width:24px; height:24px; }
.fly-svc-ic{ border-radius:13px; }
.fly-point-ic svg{ width:21px; height:21px; }
.fly-step-ic svg{ width:21px; height:21px; }
.fly-inset-ic svg{ width:21px; height:21px; }
.fly-route svg{ width:15px; height:15px; }
.fly-hero-note svg{ width:16px; height:16px; }
.fly-cta-meta svg{ width:16px; height:16px; }

/* 4. via il menu mobile del plugin (doppio logo/hamburger) */
#mobmenu, .mob-menu-header-holder, #mobmenuleft, #mobmenuright, #mobmenu-overlay,
.mobmenu-content, .mobmenu-overlay, .mob-menu-slideout-overlay, .mobmenu-left-alignment,
#mobmenu-container, .mobmenu-bar{ display:none !important; }
body.mob-menu-slideout, body.mob-menu-slideout-open{ padding-top:0 !important; }

@media (max-width:1024px){
  /* header mobile unico */
  #mfn-header-template{ overflow:visible !important; }
  #menu-main-menu.fly-menu-moved{ position:fixed !important; top:69px !important; left:0 !important; right:0 !important;
    width:100% !important; z-index:100003 !important; }
  .fly-burger{ z-index:100004 !important; }

  /* footer compatto */
  #Footer .widgets_wrapper{ padding:34px 0 14px !important; }
  #Footer .widgets_wrapper .container{ padding:0 20px; }
  #Footer .column{ margin-bottom:16px; }
  #Footer h4, #Footer .wp-block-heading{ margin:0 0 12px !important; }
  #Footer .textwidget, #Footer .widget_text, #Footer .widget_block p, #Footer .widget_text p{ font-size:13px; line-height:1.7; }
  #Footer .textwidget li{ margin:0 0 6px !important; }
  #Footer .footer_copy{ padding:14px 0 !important; }
  #Footer .footer_copy .container{ padding:0 20px; }
  #block-20 > b{ margin-bottom:10px; }
  #Footer .icon_bar{ width:36px; height:36px; margin:0 6px 4px 0; }
}

body.page-id-261 .the_content_wrapper.is-elementor{ width:100% !important; }
body.page-id-261 .elementor.elementor-261{ width:100% !important; }

/* header sticky sempre visibile (il template non ha una sezione sticky dedicata) */
#mfn-header-template{ z-index:9000; }
#mfn-header-template.is-stuck{ height:auto !important; background:rgba(255,255,255,.96) !important; }
#mfn-header-template.is-stuck .mcb-section,
#mfn-header-template.is-stuck .mcb-header-section{ display:block !important; height:auto !important; }
#mfn-header-template.is-stuck .mcb-section-inner{ min-height:84px; }
@media (max-width:1024px){
  #mfn-header-template{ z-index:100001; }
  #mfn-header-template.is-stuck .mcb-section-inner{ min-height:70px; }
  #mfn-header-template.is-stuck .mcb-column.hide-mobile,
  #mfn-header-template.is-stuck .mcb-header-section.hide-mobile{ display:block !important; }
}

body.admin-bar #mfn-header-template.is-stuck{ top:32px !important; }
@media (max-width:782px){ body.admin-bar #mfn-header-template.is-stuck{ top:46px !important; } }
@media (max-width:1024px){
  #menu-main-menu.fly-menu-moved{ top:var(--fly-hdr, 69px) !important; height:calc(100dvh - var(--fly-hdr, 69px)) !important; }
}

/* header sticky affidabile (override del JS del tema) */
#mfn-header-template{ position:sticky !important; top:0 !important; z-index:9000 !important; }
body.admin-bar #mfn-header-template{ top:32px !important; }
#mfn-header-template.is-stuck{ position:sticky !important; top:0 !important; height:auto !important; }
body.admin-bar #mfn-header-template.is-stuck{ top:32px !important; }
@media (max-width:782px){ body.admin-bar #mfn-header-template, body.admin-bar #mfn-header-template.is-stuck{ top:46px !important; } }
@media (max-width:1024px){
  #mfn-header-template{ position:sticky !important; top:0 !important; }
  #mfn-header-template.is-stuck{ position:sticky !important; top:0 !important; }
}

/* header non sticky: resta in flusso, il menu mobile è sempre raggiungibile dal pulsante fisso */
#mfn-header-template, #mfn-header-template.is-stuck{ position:relative !important; top:0 !important; height:auto !important; z-index:9000 !important; }
#mfn-header-template.is-stuck .mcb-section, #mfn-header-template.is-stuck .mcb-header-section{ display:block !important; height:auto !important; }
@media (max-width:1024px){
  #mfn-header-template, #mfn-header-template.is-stuck{ position:relative !important; top:0 !important; }
  #menu-main-menu.fly-menu-moved{ top:0 !important; height:100vh !important; height:100dvh !important; padding:22px 22px 40px !important; }
  #menu-main-menu.fly-menu-moved:before{ content:""; display:block; height:40px; margin:0 0 22px 2px;
    background:url("https://flyleone.com/wp-content/uploads/2023/03/Senza-titolo-2.webp") left center / auto 38px no-repeat; }
}

@media (max-width:1024px){
  #Footer .widgets_wrapper{ padding:26px 0 6px !important; }
  #Footer .column{ margin-bottom:10px !important; }
  #Footer .widget{ margin-bottom:12px !important; }
  #custom_html-2 .textwidget .column.one-second{ width:50% !important; float:left !important; clear:none !important; }
  #Footer .textwidget, #Footer .widget_text, #Footer .widget_text p, #Footer .widget_block p{ font-size:12.5px !important; line-height:1.6 !important; }
  #Footer .textwidget li{ margin:0 0 4px !important; }
  #Footer h4, #Footer .wp-block-heading{ margin:0 0 8px !important; font-size:10px !important; }
  #Footer .footer_copy{ padding:10px 0 !important; }
  #Footer .footer_copy, #Footer .copyright{ font-size:11.5px !important; }
  #block-20 > b{ margin:0 0 8px !important; }
  #Footer .icon_bar{ width:32px !important; height:32px !important; }
  #Footer .icon_bar i{ font-size:13px !important; }
}

@media (max-width:1024px){
  /* il selettore lingua flottante coprirebbe i contenuti: solo desktop */
  .gt_switcher_wrapper{ display:none !important; }
}

/* icone a piena misura del riquadro */
.fly-trust-ic svg{ width:28px !important; height:28px !important; }
.fly-svc-ic svg{ width:26px !important; height:26px !important; }
.fly-point-ic svg{ width:22px !important; height:22px !important; }
.fly-step-ic svg{ width:22px !important; height:22px !important; }
.fly-inset-ic svg{ width:22px !important; height:22px !important; }

/* pulsante menu: solo mobile */
.fly-burger{ display:none !important; }
@media (max-width:1024px){ .fly-burger{ display:grid !important; } }

/* ---------- footer desktop più compatto ---------- */
#Footer .widgets_wrapper{ padding:54px 0 18px !important; }
#Footer .widgets_wrapper .column{ margin-bottom:18px !important; }
#Footer .footer_copy{ padding:16px 0 !important; }
#Footer .widget{ margin-bottom:14px !important; }

/* ---------- header mobile fisso ---------- */
@media (max-width:1024px){
  body.fly-mobile #mfn-header-template{ position:fixed !important; top:0 !important; left:0 !important; right:0 !important;
    width:100% !important; z-index:100000 !important; background:rgba(255,255,255,.94) !important;
    -webkit-backdrop-filter:blur(20px) saturate(180%); backdrop-filter:blur(20px) saturate(180%);
    box-shadow:0 12px 30px -22px rgba(5,19,31,.55); }
  body.admin-bar.fly-mobile #mfn-header-template{ top:32px !important; }
  .fly-burger{ position:static !important; display:grid !important; flex:0 0 auto; margin-left:10px; top:auto !important; right:auto !important; }
  #menu-main-menu.fly-menu-moved{ top:0 !important; height:100vh !important; height:100dvh !important;
    padding:calc(var(--fly-hdr, 70px) + 22px) 22px 40px !important; }
  #menu-main-menu.fly-menu-moved:before{ display:none !important; }
}
@media (max-width:782px){
  body.admin-bar.fly-mobile #mfn-header-template{ top:46px !important; }
}

/* ---------- pagine contenuto (servizi aggiuntivi, check-in, organizza) ---------- */
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .content_wrapper{ background:#fff; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-top-section{
  background-image:linear-gradient(180deg,#F4F7FB 0%,#FBFCFE 46%,#FFFFFF 100%) !important;
  padding:clamp(46px,5vw,74px) 0 clamp(56px,6vw,86px) !important; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-top-section > .elementor-container{ max-width:1180px; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-widget-heading h1.elementor-heading-title,
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-widget-heading h2.elementor-heading-title{
  font-family:Poppins,sans-serif !important; font-weight:300 !important; font-size:clamp(28px,3.3vw,44px) !important;
  line-height:1.1 !important; letter-spacing:-.03em !important; color:var(--fly-text) !important;
  text-align:left !important; margin:0 0 14px !important; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-top-section > .elementor-container > .elementor-column > .elementor-widget-wrap > .elementor-widget-heading:after{
  content:""; display:block; width:46px; height:2px; margin-top:18px; border-radius:2px;
  background:linear-gradient(90deg,#45B6EA,#1B7CB4); }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-inner-section{ margin-top:clamp(26px,3vw,42px); }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-inner-section > .elementor-container{ gap:20px; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-inner-column > .elementor-widget-wrap{
  height:100%; background:#fff; border:1px solid rgba(8,33,53,.08); border-radius:20px; padding:20px 20px 24px;
  box-shadow:0 22px 44px -34px rgba(5,19,31,.4); transition:transform .35s var(--fly-ease), box-shadow .35s var(--fly-ease); }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-inner-column > .elementor-widget-wrap:hover{
  transform:translateY(-4px); box-shadow:0 34px 60px -38px rgba(5,19,31,.5); }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-inner-column img{
  width:100% !important; height:172px !important; object-fit:cover; border-radius:14px; display:block; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-inner-column h3{
  font-family:Poppins,sans-serif !important; font-weight:600 !important; font-size:17px !important; line-height:1.35 !important;
  letter-spacing:-.01em; color:var(--fly-text) !important; margin:16px 0 8px !important; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-widget-text-editor,
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-widget-text-editor p{
  font-family:Roboto,sans-serif !important; font-size:14.5px !important; line-height:1.72 !important; color:var(--fly-muted) !important; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-widget-text-editor p{ margin:0 0 10px !important; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content a{ color:var(--fly-sky-3); }
body.page-id-161 #Content .elementor-top-section > .elementor-container > .elementor-column > .elementor-widget-wrap > .elementor-widget-text-editor{
  max-width:640px; font-size:15.5px !important; margin-bottom:6px; }

/* ---------- pagina contatti ---------- */
body.page-id-12 #Content .section_wrapper{ max-width:1100px; }
body.page-id-12 #Content h1, body.page-id-12 #Content h2{
  font-family:Poppins,sans-serif !important; font-weight:300 !important; letter-spacing:-.03em; color:var(--fly-text) !important; }
body.page-id-12 #Content .entry-content{ font-family:Roboto,sans-serif; font-size:15px; line-height:1.75; color:var(--fly-muted); }
body.page-id-12 #Content .wpcf7 input[type=text], body.page-id-12 #Content .wpcf7 input[type=email],
body.page-id-12 #Content .wpcf7 textarea{ border:1px solid rgba(8,33,53,.14) !important; border-radius:12px !important;
  padding:13px 15px !important; background:#fff !important; font-family:Roboto,sans-serif; font-size:14px; }
body.page-id-12 #Content .wpcf7 input[type=submit]{ background:linear-gradient(135deg,#45B6EA,#1B7CB4) !important; color:#fff !important;
  border:0 !important; border-radius:999px !important; padding:15px 30px !important; font-family:Poppins,sans-serif !important;
  font-size:14px !important; font-weight:500 !important; box-shadow:0 18px 34px -18px rgba(27,124,180,.85) !important; }

@media (max-width:1024px){
  #mfn-header-template .mcb-section-inner{ padding-left:18px !important; padding-right:18px !important; }
  #mfn-header-template .mcb-wrap-db9fdc14f{ display:none !important; }
  .fly-burger{ margin-left:auto !important; }
}

/* ---------- contatti: layout ---------- */
body.page-id-12 #Content{ background:#F4F7FB; }
body.page-id-12 #Content .mcb-section{ background:transparent; }
body.page-id-12 #Content .mcb-wrap-inner, body.page-id-12 #Content .mcb-column-inner{ background:transparent; }
body.page-id-12 #Content .mcb-item-b2anvubdf{ padding:clamp(38px,4.6vw,64px) 0 4px !important; }
body.page-id-12 #Content h2.title{
  font-family:Poppins,sans-serif !important; font-weight:300 !important; font-size:clamp(30px,3.4vw,44px) !important;
  letter-spacing:-.03em !important; line-height:1.1 !important; color:var(--fly-text) !important; text-align:left !important; margin:0 !important; }
body.page-id-12 #Content h2.title:after{ content:""; display:block; width:46px; height:2px; margin-top:16px; border-radius:2px;
  background:linear-gradient(90deg,#45B6EA,#1B7CB4); }
body.page-id-12 #Content .mcb-item-ef3b80baa{ border-radius:22px; overflow:hidden; box-shadow:0 34px 64px -44px rgba(5,19,31,.55); }
body.page-id-12 #Content .mcb-item-ef3b80baa iframe{ height:380px !important; width:100% !important; display:block; }
body.page-id-12 #Content .mcb-section-0f959e1e{ padding-bottom:clamp(46px,5vw,80px) !important; }
body.page-id-12 #Content .mcb-section-0f959e1e > .section_wrapper > .mcb-wrap > .mcb-column > .mcb-column-inner{
  background:#fff; border:1px solid rgba(8,33,53,.08); border-radius:20px; padding:24px;
  box-shadow:0 26px 50px -40px rgba(5,19,31,.45); }
body.page-id-12 #Content .mcb-section-0f959e1e p{ font-family:Roboto,sans-serif; font-size:14.5px; line-height:1.75; color:var(--fly-muted); }
body.page-id-12 #Content .mcb-section-0f959e1e p strong, body.page-id-12 #Content .mcb-section-0f959e1e p b{ color:var(--fly-text); }
body.page-id-12 #Content h2:not(.title){ font-family:Poppins,sans-serif !important; font-weight:600 !important; font-size:19px !important;
  letter-spacing:-.01em; color:var(--fly-text) !important; margin:0 0 14px !important; text-align:left !important; }
body.page-id-12 #Content .button, body.page-id-12 #Content .button_size_2{
  display:inline-flex; align-items:center; gap:10px; background:linear-gradient(135deg,#45B6EA,#1B7CB4) !important; color:#fff !important;
  border:0 !important; border-radius:999px !important; padding:14px 26px !important; font-family:Poppins,sans-serif !important;
  font-size:13.5px !important; font-weight:500 !important; box-shadow:0 18px 34px -18px rgba(27,124,180,.85) !important; text-decoration:none !important; }
body.page-id-12 #Content .wpcf7{ max-width:100%; }
body.page-id-12 #Content .wpcf7 p{ margin:0 0 14px; }

@media (max-width:1024px){
  .fly-burger{ position:relative !important; }
  .fly-burger span{ position:absolute !important; left:50%; top:50%; margin:0 !important; }
}

@media (max-width:1024px){
  #menu-main-menu.fly-menu-moved{ z-index:99000 !important; }
  #mfn-header-template{ z-index:100000 !important; }
}

/* ---------- pagine contenuto: correzione sezioni multiple ---------- */
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-top-section{
  background-image:none !important; background-color:transparent !important; padding:0 !important; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-top-section:first-of-type{
  background-image:linear-gradient(180deg,#F4F7FB 0%,#FBFCFE 46%,#FFFFFF 100%) !important;
  padding:clamp(44px,4.8vw,72px) 0 clamp(18px,2vw,26px) !important; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-top-section:last-of-type{
  padding-bottom:clamp(48px,5vw,80px) !important; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-top-section:not(:first-of-type) > .elementor-container{
  max-width:1180px; gap:20px; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-top-section:not(:first-of-type) > .elementor-container > .elementor-top-column > .elementor-widget-wrap{
  height:100%; background:#fff; border:1px solid rgba(8,33,53,.08); border-radius:20px; padding:20px 20px 24px;
  box-shadow:0 22px 44px -34px rgba(5,19,31,.4); transition:transform .35s var(--fly-ease), box-shadow .35s var(--fly-ease); }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-top-section:not(:first-of-type) > .elementor-container > .elementor-top-column > .elementor-widget-wrap:hover{
  transform:translateY(-4px); box-shadow:0 34px 60px -38px rgba(5,19,31,.5); }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-top-section:not(:first-of-type) img{
  width:100% !important; height:172px !important; object-fit:cover; border-radius:14px; display:block; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-top-section:not(:first-of-type) h3{
  font-family:Poppins,sans-serif !important; font-weight:600 !important; font-size:17px !important; line-height:1.35 !important;
  letter-spacing:-.01em; color:var(--fly-text) !important; margin:16px 0 8px !important; }

/* ---------- larghezza piena + pulsanti ---------- */
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .the_content_wrapper,
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .section_wrapper{
  width:100% !important; max-width:100% !important; margin-left:0 !important; margin-right:0 !important; padding-left:0 !important; padding-right:0 !important; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-button{
  display:inline-flex !important; align-items:center; gap:8px; background:linear-gradient(135deg,#45B6EA,#1B7CB4) !important;
  color:#fff !important; border:0 !important; border-radius:999px !important; padding:12px 22px !important;
  font-family:Poppins,sans-serif !important; font-size:12.5px !important; font-weight:500 !important; letter-spacing:.02em;
  box-shadow:0 16px 30px -18px rgba(27,124,180,.9) !important; margin-top:8px; text-decoration:none !important;
  transition:transform .3s var(--fly-ease), box-shadow .3s var(--fly-ease); }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-button:hover{
  transform:translateY(-2px); box-shadow:0 22px 36px -18px rgba(27,124,180,1) !important; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-widget-button{ margin-top:auto; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-top-section:not(:first-of-type) > .elementor-container > .elementor-top-column > .elementor-widget-wrap{
  display:flex; flex-direction:column; }

/* ============ FIX 4 ============ */
/* icone centrate e piene */
.fly-trust-ic, .fly-svc-ic, .fly-point-ic, .fly-step-ic, .fly-inset-ic{
  display:flex !important; align-items:center !important; justify-content:center !important; }
.fly-trust-ic svg, .fly-svc-ic svg, .fly-point-ic svg, .fly-step-ic svg, .fly-inset-ic svg{ display:block; }

/* footer a 4 colonne */
#Footer .widgets_wrapper{ padding:36px 0 10px !important; }
#Footer .widgets_wrapper .container{ display:grid; grid-template-columns:1.05fr 1.35fr 1fr .85fr; gap:26px; align-items:start; }
#Footer .widgets_wrapper .container > .column{ width:auto !important; float:none !important; margin:0 !important; }
#Footer h4, #Footer .wp-block-heading{ margin:0 0 12px !important; }
#Footer .widget{ margin-bottom:0 !important; }
#Footer .fly-legal{ margin-top:26px; }
#Footer .fly-legal b{ display:block; font-family:Poppins,sans-serif; font-size:10px; font-weight:500; letter-spacing:.26em;
  text-transform:uppercase; color:#8FDBF7; margin:0 0 10px; }
#Footer .fly-legal a{ display:inline-block; font-size:12.5px !important; color:rgba(255,255,255,.6) !important; margin:0 14px 6px 0; }
#Footer .footer_copy{ padding:14px 0 !important; }
#Footer .footer_copy .container{ display:flex; justify-content:space-between; align-items:center; }

/* menu mobile: pannello flottante + velo */
@media (max-width:1024px){
  #menu-main-menu.fly-menu-moved{
    position:fixed !important; top:calc(var(--fly-hdr, 75px) + 8px) !important;
    left:12px !important; right:12px !important; width:auto !important; height:auto !important;
    max-height:calc(100dvh - var(--fly-hdr, 75px) - 26px) !important;
    padding:18px 18px 20px !important; border-radius:22px !important; background:#fff !important;
    box-shadow:0 40px 90px -34px rgba(5,19,31,.6), inset 0 0 0 1px rgba(8,33,53,.07) !important;
    overflow:auto; opacity:0; transform:translateY(-10px) scale(.985); pointer-events:none;
    transition:opacity .26s var(--fly-ease), transform .3s var(--fly-ease); }
  body.fly-nav-open #menu-main-menu.fly-menu-moved{ opacity:1; transform:none; pointer-events:auto; }
  #menu-main-menu.fly-menu-moved > li > a{ padding:14px 4px !important; font-size:17px !important; }
  #menu-main-menu.fly-menu-moved .sub-menu{ padding:2px 0 8px 0 !important; }
  #menu-main-menu.fly-menu-moved .sub-menu li a{ padding:8px 0 8px 14px !important; font-size:14px !important; }
  #menu-main-menu.fly-menu-moved > li:last-child{ margin-top:16px; }
  .fly-nav-overlay{ position:fixed; inset:0; background:rgba(5,19,31,.42); -webkit-backdrop-filter:blur(2px);
    backdrop-filter:blur(2px); z-index:98999; opacity:0; pointer-events:none; transition:opacity .28s var(--fly-ease); }
  body.fly-nav-open .fly-nav-overlay{ opacity:1; pointer-events:auto; }
}
@media (max-width:900px){
  #Footer .widgets_wrapper .container{ grid-template-columns:1fr 1fr; gap:20px 24px; }
  #Footer .widgets_wrapper{ padding:28px 0 8px !important; }
  #Footer .footer_copy .container{ flex-direction:column; gap:6px; align-items:flex-start; }
}
@media (max-width:560px){
  #Footer .widgets_wrapper .container{ grid-template-columns:1fr; gap:14px; }
  #Footer .fly-legal{ margin-top:12px; }
}

/* ---------- titoli pagine contenuto: trattamento editoriale ---------- */
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-widget-heading:after{ display:none !important; content:none !important; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .fly-page-eyebrow,
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .fly-page-eyebrow p{ margin:0 0 12px !important; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .fly-eyebrow{
  display:inline-flex !important; align-items:center; gap:12px; font-family:Poppins,sans-serif !important;
  font-size:11px !important; font-weight:500 !important; letter-spacing:.28em !important; text-transform:uppercase;
  color:var(--fly-sky-3) !important; line-height:1 !important; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .fly-eyebrow:before{
  content:""; width:28px; height:1px; background:currentColor; opacity:.5; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-widget-heading h1.elementor-heading-title,
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-widget-heading h2.elementor-heading-title{
  font-weight:600 !important; font-size:clamp(30px,3.9vw,50px) !important; letter-spacing:-.042em !important;
  line-height:1.04 !important; }
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-widget-heading h1 em,
body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-widget-heading h2 em{
  font-style:normal; font-weight:300;
  background:linear-gradient(96deg,#1B7CB4 0%,#45B6EA 52%,#8FDBF7 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent; }
@media (max-width:560px){
  body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-widget-heading h1.elementor-heading-title,
  body:is(.page-id-161,.page-id-535,.page-id-634) #Content .elementor-widget-heading h2.elementor-heading-title{ font-size:clamp(27px,7.6vw,36px) !important; }
}

@media (max-width:560px){
  #Footer .widgets_wrapper{ padding:24px 0 6px !important; }
  #Footer .widgets_wrapper .container{ grid-template-columns:1fr 1fr !important; gap:16px 18px !important; }
  #Footer .widgets_wrapper .container > .column:nth-child(1){ grid-column:1 / -1; }
  #Footer .widgets_wrapper .container > .column:nth-child(4){ grid-column:1 / -1; }
  #Footer .textwidget, #Footer .widget_text, #Footer .widget_text p, #Footer .widget_block p{ font-size:12px !important; line-height:1.6 !important; }
  #Footer .textwidget li{ margin:0 0 3px !important; }
  #Footer .fly-legal{ margin-top:10px; }
  #Footer .footer_copy{ padding:10px 0 !important; }
}

@media (max-width:560px){
  #Footer .widgets_wrapper .container > .column:nth-child(2){ grid-column:1 / -1; }
  #Footer .widgets_wrapper .container > .column:nth-child(3){ grid-column:1; }
  #Footer .widgets_wrapper .container > .column:nth-child(4){ grid-column:2; }
}

/* ---------- chiusura del footer + header più stretto ---------- */
#Footer{ box-shadow:0 60px 0 0 #05131F; }
#Footer .footer_copy{ margin-bottom:0 !important; }
#mfn-header-template .mcb-section-inner{ min-height:68px !important; }
#mfn-header-template .image_frame img{ max-height:38px !important; }
#mfn-header-template .mcb-wrap-inner{ padding-top:0 !important; padding-bottom:0 !important; }
@media (max-width:1024px){
  #mfn-header-template .mcb-section-inner{ min-height:64px !important; }
  #mfn-header-template .image_frame img{ max-height:36px !important; }
}

/* ---------- contatti: griglia e intestazione ---------- */
body.page-id-12 #Content .mcb-item-b2anvubdf .mcb-column-inner > h2.title:before{
  content:"Parliamo del tuo volo"; display:block; margin:0 0 14px; padding-left:40px;
  font-family:Poppins,sans-serif; font-size:11px; font-weight:500; letter-spacing:.28em; text-transform:uppercase;
  color:var(--fly-sky-3); line-height:1;
  background:linear-gradient(currentColor,currentColor) left center/28px 1px no-repeat; }
body.page-id-12 #Content .mcb-section-0f959e1e9 > .section_wrapper > .mcb-wrap > .mcb-wrap-inner{
  display:grid; grid-template-columns:minmax(270px,.82fr) 1.18fr; gap:20px; align-items:start; }
body.page-id-12 #Content .mcb-section-0f959e1e9 .mcb-column{
  float:none !important; width:auto !important; margin:0 !important; padding:0 !important; }
body.page-id-12 #Content .mcb-item-63782f73c{ grid-column:1; grid-row:1; }
body.page-id-12 #Content .mcb-item-f062cb1dd{ grid-column:1; grid-row:2; }
body.page-id-12 #Content .mcb-item-5ddb8870c{ grid-column:2; grid-row:1 / span 2; }
body.page-id-12 #Content .mcb-item-63782f73c > .mcb-column-inner,
body.page-id-12 #Content .mcb-item-5ddb8870c > .mcb-column-inner{
  background:#fff; border:1px solid rgba(8,33,53,.08); border-radius:20px; padding:24px;
  box-shadow:0 26px 50px -40px rgba(5,19,31,.45); }
body.page-id-12 #Content .mcb-item-f062cb1dd > .mcb-column-inner{ border-radius:20px; overflow:hidden; box-shadow:0 26px 50px -40px rgba(5,19,31,.45); }
@media (max-width:860px){
  body.page-id-12 #Content .mcb-section-0f959e1e9 > .section_wrapper > .mcb-wrap > .mcb-wrap-inner{ grid-template-columns:1fr; }
  body.page-id-12 #Content .mcb-item-63782f73c,
  body.page-id-12 #Content .mcb-item-f062cb1dd,
  body.page-id-12 #Content .mcb-item-5ddb8870c{ grid-column:1 !important; grid-row:auto !important; }
}

body.page-id-12 #Content .mcb-section-0f959e1e9 .mcb-wrap,
body.page-id-12 #Content .mcb-section-0f959e1e9 .mcb-wrap-inner{ width:100% !important; float:none !important; max-width:100% !important; }
body.page-id-12 #Content .mcb-section-0f959e1e9 > .section_wrapper{ max-width:1100px; }

/* contatti: griglia sui WRAP (non sulle colonne) */
body.page-id-12 #Content .mcb-section-0f959e1e9 > .section_wrapper{
  display:grid !important; grid-template-columns:minmax(260px,.82fr) 1.18fr; gap:20px; align-items:start;
  max-width:1100px; margin:0 auto; }
body.page-id-12 #Content .mcb-section-0f959e1e9 > .section_wrapper > .mcb-wrap{
  width:auto !important; float:none !important; margin:0 !important; max-width:100% !important; }
body.page-id-12 #Content .mcb-section-0f959e1e9 > .section_wrapper > .mcb-wrap > .mcb-wrap-inner{
  display:block !important; width:100% !important; }
body.page-id-12 #Content .mcb-section-0f959e1e9 .mcb-column{
  float:none !important; width:100% !important; margin:0 0 20px !important; padding:0 !important; display:block !important; }
body.page-id-12 #Content .mcb-item-63782f73c,
body.page-id-12 #Content .mcb-item-f062cb1dd,
body.page-id-12 #Content .mcb-item-5ddb8870c{ grid-column:auto !important; grid-row:auto !important; }
@media (max-width:860px){
  body.page-id-12 #Content .mcb-section-0f959e1e9 > .section_wrapper{ grid-template-columns:1fr; }
}

/* contatti: card indirizzi compatta */
body.page-id-12 #Content .mcb-item-63782f73c .image_frame,
body.page-id-12 #Content .mcb-item-63782f73c hr{ display:none !important; }
body.page-id-12 #Content .mcb-item-63782f73c .column_attr > p:empty{ display:none !important; margin:0 !important; }
body.page-id-12 #Content .mcb-item-63782f73c h5{ font-family:Poppins,sans-serif !important; font-size:11.5px !important; font-weight:600 !important;
  letter-spacing:.16em !important; text-transform:uppercase; color:var(--fly-sky-3) !important; margin:0 0 6px !important; }
body.page-id-12 #Content .mcb-item-63782f73c h5 strong{ font-weight:600 !important; }
body.page-id-12 #Content .mcb-item-63782f73c p{ margin:0 0 18px !important; font-family:Roboto,sans-serif; font-size:13.5px; line-height:1.6; color:var(--fly-muted) !important; }
body.page-id-12 #Content .mcb-item-f062cb1dd .mcb-column-inner{ background:none !important; }

/* header desktop: nessuno spostamento verso il basso */
@media (min-width:1025px){
  #mfn-header-template,
  #mfn-header-template.is-stuck,
  body.admin-bar #mfn-header-template,
  body.admin-bar #mfn-header-template.is-stuck{ top:0 !important; margin-top:0 !important; }
}

/* via la striscia vuota sopra il contenuto */
#Content{ padding-top:0 !important; }

/* ============ FIX 5 ============ */
/* fondo pagina sempre scuro */
html{ background:#05131F !important; }

/* header desktop: eliminato lo scarto di 19px */
@media (min-width:1025px){
  #mfn-header-template, body.admin-bar #mfn-header-template{ margin-top:-19px !important; top:0 !important; }
}

/* contatti: titolo coerente + spaziature */
body.page-id-12 #Content .mcb-item-b2anvubdf{ padding:clamp(24px,2.8vw,38px) 0 0 !important; }
body.page-id-12 #Content .mcb-section-52840848e{ padding:12px 0 0 !important; }
body.page-id-12 #Content .mcb-section-0f959e1e9{ padding:24px 0 clamp(28px,3.2vw,44px) !important; }
body.page-id-12 #Content h2.title em,
body.page-id-12 #Content h2.title .fly-tt{ font-style:normal; }
body.page-id-12 #Content h2.title .fly-tt{ font-weight:600; display:inline; }
body.page-id-12 #Content h2.title em{ font-weight:300;
  background:linear-gradient(96deg,#1B7CB4 0%,#45B6EA 52%,#8FDBF7 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent; }

/* modulo contatti */
body.page-id-12 #Content .wpcf7 input[type=text],
body.page-id-12 #Content .wpcf7 input[type=email],
body.page-id-12 #Content .wpcf7 textarea{
  width:100% !important; background:#F6F9FC !important; border:1px solid rgba(8,33,53,.12) !important;
  border-radius:12px !important; padding:14px 16px !important; font-family:Roboto,sans-serif !important;
  font-size:14px !important; color:var(--fly-text) !important; transition:border-color .2s,box-shadow .2s,background .2s; }
body.page-id-12 #Content .wpcf7 input[type=text]:focus,
body.page-id-12 #Content .wpcf7 input[type=email]:focus,
body.page-id-12 #Content .wpcf7 textarea:focus{
  outline:none !important; background:#fff !important; border-color:#45B6EA !important;
  box-shadow:0 0 0 3px rgba(69,182,234,.16) !important; }
body.page-id-12 #Content .wpcf7 textarea{ min-height:120px; resize:vertical; }
body.page-id-12 #Content .wpcf7 .fly-gdpr{ margin:4px 0 18px !important; }
body.page-id-12 #Content .wpcf7 .fly-gdpr label{ display:flex; align-items:flex-start; gap:10px; cursor:pointer;
  font-family:Roboto,sans-serif; font-size:12.5px; line-height:1.55; color:var(--fly-muted); }
body.page-id-12 #Content .wpcf7 .fly-gdpr a{ color:var(--fly-sky-3); text-decoration:underline; }
body.page-id-12 #Content .wpcf7 .fly-gdpr input[type=checkbox]{
  -webkit-appearance:none; appearance:none; width:18px; height:18px; flex:0 0 auto; margin:1px 0 0;
  border:1.5px solid rgba(8,33,53,.25); border-radius:5px; background:#fff; position:relative; cursor:pointer; transition:.2s; }
body.page-id-12 #Content .wpcf7 .fly-gdpr input[type=checkbox]:checked{
  background:linear-gradient(135deg,#45B6EA,#1B7CB4); border-color:transparent; }
body.page-id-12 #Content .wpcf7 .fly-gdpr input[type=checkbox]:checked:after{
  content:""; position:absolute; left:5px; top:1px; width:5px; height:10px;
  border:solid #fff; border-width:0 2px 2px 0; transform:rotate(42deg); }
body.page-id-12 #Content .wpcf7 .wpcf7-not-valid-tip{ font-size:11.5px; color:#c0392b; margin-top:4px; }

@media (max-width:860px){
  body.page-id-12 #Content .mcb-item-b2anvubdf{ padding:16px 0 0 !important; }
  body.page-id-12 #Content .mcb-section-52840848e{ padding:8px 0 0 !important; }
  body.page-id-12 #Content .mcb-section-0f959e1e9{ padding:16px 0 20px !important; }
  body.page-id-12 #Content .mcb-item-ef3b80baa iframe{ height:260px !important; }
}

@media (max-width:860px){
  body.page-id-12 #Content .mcb-item-b2anvubdf{ padding-bottom:0 !important; }
  body.page-id-12 #Content .mcb-item-63782f73c > .mcb-column-inner,
  body.page-id-12 #Content .mcb-item-5ddb8870c > .mcb-column-inner{ padding:20px !important; }
  body.page-id-12 #Content .mcb-item-63782f73c p{ margin:0 0 12px !important; }
  body.page-id-12 #Content .mcb-item-63782f73c .mcb-column-inner{ margin-bottom:12px !important; }
  body.page-id-12 #Content .wpcf7 p{ margin:0 0 10px !important; }
  body.page-id-12 #Content .wpcf7 textarea{ min-height:96px !important; }
  body.page-id-12 #Content .wpcf7 input[type=text],
  body.page-id-12 #Content .wpcf7 input[type=email]{ padding:12px 14px !important; }
}

/* sfondo: bianco di pagina, scuro solo nell'ultimo tratto sotto il footer */
html{ background:#05131F !important; }
body{ background:#FFFFFF !important; min-height:100vh; }

/* ---------- pagine legali ---------- */
body.page-id-1219, body.page-id-1220{ background:#F4F7FB !important; }
body.page-id-1219 #Content, body.page-id-1220 #Content{ background:#F4F7FB; }
body.page-id-1219 #Content .section_wrapper, body.page-id-1220 #Content .section_wrapper{ max-width:900px; }
body.page-id-1219 #Content .entry-content, body.page-id-1220 #Content .entry-content{
  background:#fff; border:1px solid rgba(8,33,53,.08); border-radius:22px; padding:clamp(24px,3vw,46px);
  box-shadow:0 30px 60px -46px rgba(5,19,31,.5); font-family:Roboto,sans-serif; color:var(--fly-muted); }
body.page-id-1219 #Content h1, body.page-id-1220 #Content h1,
body.page-id-1219 #Content h2, body.page-id-1220 #Content h2,
body.page-id-1219 #Content h3, body.page-id-1220 #Content h3{
  font-family:Poppins,sans-serif !important; color:var(--fly-text) !important; letter-spacing:-.02em; }
body.page-id-1219 #Content h1, body.page-id-1220 #Content h1{ font-weight:600 !important; font-size:clamp(28px,3.4vw,42px) !important; margin:0 0 6px !important; }
body.page-id-1219 #Content h2, body.page-id-1220 #Content h2{ font-weight:600 !important; font-size:19px !important; line-height:1.35 !important;
  margin:36px 0 10px !important; padding-top:20px; border-top:1px solid rgba(8,33,53,.07); }
body.page-id-1219 #Content h3, body.page-id-1220 #Content h3{ font-weight:600 !important; font-size:16px !important; margin:24px 0 8px !important; }
body.page-id-1219 #Content p, body.page-id-1220 #Content p,
body.page-id-1219 #Content li, body.page-id-1220 #Content li{
  font-family:Roboto,sans-serif !important; font-size:15px !important; line-height:1.78 !important; color:var(--fly-muted) !important; }
body.page-id-1219 #Content p, body.page-id-1220 #Content p{ margin:0 0 14px; }
body.page-id-1219 #Content ul, body.page-id-1220 #Content ul{ margin:0 0 16px; padding-left:18px; }
body.page-id-1219 #Content li, body.page-id-1220 #Content li{ margin:0 0 8px; }
body.page-id-1219 #Content a, body.page-id-1220 #Content a{ color:var(--fly-sky-3) !important; text-decoration:underline; }
body.page-id-1219 #Content .fly-legal-updated, body.page-id-1220 #Content .fly-legal-updated{
  font-family:Poppins,sans-serif !important; font-size:11px !important; letter-spacing:.22em; text-transform:uppercase;
  color:var(--fly-sky-3) !important; margin:0 0 26px !important; }
body.page-id-1219 #Content .fly-legal-box, body.page-id-1220 #Content .fly-legal-box{
  background:#F6F9FC; border-left:3px solid #45B6EA; border-radius:0 14px 14px 0; padding:18px 22px; margin:0 0 20px; }
body.page-id-1219 #Content .fly-legal-box p:last-child, body.page-id-1220 #Content .fly-legal-box p:last-child{ margin:0; }
body.page-id-1219 #Content table, body.page-id-1220 #Content table{
  width:100%; border-collapse:collapse; margin:6px 0 22px; font-size:13.5px; }
body.page-id-1219 #Content th, body.page-id-1220 #Content th{
  text-align:left; font-family:Poppins,sans-serif; font-weight:600; font-size:12px; letter-spacing:.04em;
  text-transform:uppercase; color:var(--fly-text); background:#F4F7FB; padding:11px 14px; border-bottom:1px solid rgba(8,33,53,.1); }
body.page-id-1219 #Content td, body.page-id-1220 #Content td{
  padding:11px 14px; border-bottom:1px solid rgba(8,33,53,.06); color:var(--fly-muted); vertical-align:top; }
body.page-id-1219 #Content tr:last-child td, body.page-id-1220 #Content tr:last-child td{ border-bottom:0; }
@media (max-width:640px){
  body.page-id-1219 #Content .entry-content, body.page-id-1220 #Content .entry-content{ padding:20px 18px; border-radius:16px; }
  body.page-id-1219 #Content table, body.page-id-1220 #Content table{ display:block; overflow-x:auto; white-space:nowrap; }
}

/* pagine legali: correzione contenitore */
body.page-id-1219 #Content .section_wrapper, body.page-id-1220 #Content .section_wrapper{
  max-width:100% !important; margin:0 !important; padding:0 !important; }
body.page-id-1219 #Content .entry-content, body.page-id-1220 #Content .entry-content{
  max-width:880px !important; margin:clamp(22px,3.4vw,48px) auto !important; padding:clamp(24px,3vw,44px) !important;
  background:#fff; border:1px solid rgba(8,33,53,.08); border-radius:22px;
  box-shadow:0 30px 60px -46px rgba(5,19,31,.5); }
body.page-id-1219 #Content .fly-legal-h1, body.page-id-1220 #Content .fly-legal-h1{
  font-family:Poppins,sans-serif !important; font-weight:600 !important; color:var(--fly-text) !important;
  font-size:clamp(28px,3.4vw,42px) !important; line-height:1.08 !important; letter-spacing:-.035em !important;
  margin:0 0 4px !important; padding:0 !important; border:0 !important; }

/* ============ FIX 6 ============ */
/* fondo pagina: il body non deve mai mostrare bianco sotto il footer */
html{ background:#05131F !important; }
body{ background:#05131F !important; min-height:100vh; }
#Wrapper{ background:#fff !important; min-height:100vh; }

/* riga copyright sottile */
#Footer .footer_copy{ padding:8px 0 !important; border-top:1px solid rgba(255,255,255,.08); }
#Footer .footer_copy .container{ padding:0 !important; display:flex !important; flex-direction:column; align-items:flex-start; gap:8px; }
#Footer .footer_copy .copyright{ font-size:11.5px !important; line-height:1.4 !important; color:rgba(255,255,255,.45) !important; margin:0 !important; }
#Footer .footer_copy a{ font-size:11.5px !important; }

/* selettore lingua dentro il footer */
#Footer .gt_switcher_wrapper{ position:static !important; display:inline-flex !important; order:-1; margin:0 !important;
  left:auto !important; right:auto !important; bottom:auto !important; top:auto !important; z-index:auto !important; }
#Footer .gt_switcher_wrapper .gt_switcher-popup{
  padding:5px 12px !important; font-size:10.5px !important; border-radius:999px !important;
  background:rgba(255,255,255,.07) !important; color:rgba(255,255,255,.82) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.14) !important; -webkit-backdrop-filter:none !important; backdrop-filter:none !important; }
#Footer .gt_switcher_wrapper .gt_switcher-popup:hover{ background:rgba(69,182,234,.25) !important; }
@media (max-width:560px){
  #Footer .footer_copy{ padding:8px 0 !important; }
  #Footer .footer_copy .container{ gap:6px; }
}

/* riga finale compatta */
#Footer .footer_copy{ padding:10px 0 8px !important; }
#Footer .footer_copy .container{ padding:0 !important; gap:6px !important; display:flex !important; flex-direction:column; align-items:flex-start; }
#Footer .footer_copy .column{ margin:0 !important; padding:0 !important; width:100% !important; float:none !important; }
#Footer .footer_copy .mcb-column-inner{ padding:0 !important; margin:0 !important; }
#Footer .footer_copy .copyright{ margin:0 !important; padding:0 !important; }
#Footer .gt_switcher_wrapper{ margin:0 0 2px 0 !important; }

/* ============ FIX 7 — barra copyright ============ */
#Footer .footer_copy{ padding:0 !important; border-top:1px solid rgba(255,255,255,.09); }
#Footer .footer_copy .container{ max-width:1240px !important; margin:0 auto !important; padding:0 24px !important;
  display:flex !important; align-items:center; min-height:42px; }
#Footer .footer_copy .column{ width:100% !important; margin:0 !important; padding:0 !important; float:none !important; }
#Footer .footer_copy .mcb-column-inner{ padding:0 !important; margin:0 !important; }
#Footer .footer_copy .copyright{ display:flex !important; align-items:center; justify-content:space-between; gap:14px; width:100%;
  margin:0 !important; font-size:11.5px !important; line-height:1.4 !important; color:rgba(255,255,255,.45) !important; }
#Footer .footer_copy .fly-copy-left{ white-space:nowrap; }
#Footer .footer_copy .fly-copy-right{ color:rgba(255,255,255,.58) !important; font-size:11.5px !important; white-space:nowrap; }
#Footer .footer_copy .fly-copy-right:hover{ color:#8FDBF7 !important; }
/* lingua nella colonna legale */
#Footer .fly-legal .gt_switcher_wrapper{ margin-top:14px !important; display:inline-flex !important; }
@media (max-width:560px){
  #Footer .footer_copy .container{ padding:0 18px !important; min-height:40px; }
  #Footer .footer_copy .copyright{ font-size:11px !important; }
  #Footer .footer_copy .fly-copy-right{ font-size:11px !important; }
}

/* ============ FIX 8 ============ */
/* freccia torna su: sopra la barra copyright */
#back_to_top, .footer_button.sticky{ bottom:64px !important; right:22px !important; }
/* barra copyright con margini 1% */
#Footer .footer_copy{ margin:1% 0 !important; }

/* barra copyright: 1% sopra e sotto rispetto alla linea e al fondo pagina */
#Footer .footer_copy{ margin:0 !important; padding:clamp(9px, 1%, 22px) 0 !important; }
#Footer .footer_copy .container{ min-height:0 !important; align-items:center; }
#Footer .footer_copy .copyright{ align-items:center; }

/* freccia torna su: sopra la barra, visibile su fondo scuro */
#back_to_top, .footer_button.sticky{ bottom:96px !important; right:24px !important; width:42px !important; height:42px !important;
  border-radius:50% !important; background:rgba(255,255,255,.94) !important; display:grid !important; place-items:center !important;
  box-shadow:0 14px 28px -16px rgba(0,0,0,.6), inset 0 0 0 1px rgba(8,33,53,.06) !important; }
#back_to_top i, #back_to_top svg{ color:var(--fly-sky-3) !important; font-size:16px !important; }
#back_to_top:hover{ background:#fff !important; transform:translateY(-2px); }

/* chiudo lo spazio extra che il tema lascia sotto il footer */
#Wrapper{ overflow:visible !important; }
#Footer{ margin-bottom:-26px !important; }
#Footer .footer_copy{ padding:clamp(9px,1%,20px) 0 clamp(6px,0.6%,14px) !important; }

/* barra copyright: altezza reale del testo, niente cuscini */
#Footer .footer_copy{ padding:clamp(9px,1%,20px) 0 8px !important; }
#Footer .footer_copy .column,
#Footer .footer_copy .mcb-column-inner{ height:auto !important; min-height:0 !important; padding:0 !important; margin:0 !important; }
#Footer .footer_copy .copyright{ line-height:1.35 !important; }
