/*
Theme Name: FlyMe Val Thorens - PageLayer
Theme URI: https://paramoteur-valthorens.com/
Author: FlyMe / Cloudbase Productions
Description: Bilingual PageLayer-ready theme for FlyMe Paramotor Val Thorens.
Version: 2.7.0
Text Domain: flyme
*/
:root{--fly-black:#111315;--fly-white:#fff;--fly-grey:#f3f4f4;--fly-orange:#ef5b2a;--fly-text:#202327}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--fly-text);font-family:Arial,Helvetica,sans-serif;background:#fff}body.admin-bar .fly-nav{top:32px}a{text-decoration:none}.site-main{overflow:hidden}.fly-nav{position:fixed;z-index:9999;top:0;left:0;right:0;background:rgba(10,12,14,.82);backdrop-filter:blur(12px);padding:14px 4vw;display:flex;align-items:center;justify-content:space-between;color:#fff}.fly-brand{display:flex;align-items:center;gap:13px;color:#fff}.fly-brand img{display:block;width:126px;height:auto;filter:brightness(0) invert(1)}.fly-brand-location{font-size:12px;font-weight:800;letter-spacing:.16em;color:#fff;white-space:nowrap}.fly-links{display:flex;gap:24px;align-items:center}.fly-links a{color:#fff!important;font-size:13px;font-weight:700;letter-spacing:.06em;text-shadow:0 1px 2px rgba(0,0,0,.35)}.fly-book{background:var(--fly-orange);padding:12px 18px;border-radius:3px}.fly-lang{opacity:.8}.fly-hero{min-height:94vh;display:flex;align-items:flex-end;background-size:cover;background-position:center;position:relative;padding:130px 6vw 80px;color:#fff}.fly-hero:before,.fly-photo-break:before,.fly-gift:before,.fly-final:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.68))}.fly-hero-inner,.fly-photo-inner,.fly-gift-inner,.fly-final-inner{position:relative;z-index:2;max-width:1120px}.fly-kicker{font-size:13px;font-weight:800;letter-spacing:.2em;text-transform:uppercase}.fly-hero h1{font-size:clamp(48px,7.2vw,104px);line-height:.9;letter-spacing:-.045em;margin:16px 0 24px;max-width:900px}.fly-hero p{font-size:clamp(18px,2vw,25px);line-height:1.45;max-width:700px}.fly-btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.fly-btn{display:inline-block;padding:15px 22px;font-weight:800;letter-spacing:.04em;border-radius:3px;background:var(--fly-orange);color:#fff}.fly-btn.alt{background:#fff;color:#111}.fly-trust{margin-top:25px;font-size:14px;font-weight:700}.fly-section{padding:95px 6vw}.fly-wrap{max-width:1180px;margin:auto}.fly-center{text-align:center}.fly-section h2{font-size:clamp(38px,5vw,66px);line-height:1;letter-spacing:-.035em;margin:0 0 28px;color:#111}.fly-lead{font-size:20px;line-height:1.7;max-width:820px;margin:0 auto}.fly-two{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.fly-two img{width:100%;display:block;border-radius:3px}.fly-dark{background:var(--fly-black);color:#fff}.fly-dark h2{color:#fff}.fly-prices{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:45px}.fly-card{background:#1d2023;padding:30px 24px;border:1px solid #303438;min-height:280px;display:flex;flex-direction:column}.fly-card.pop{border-color:var(--fly-orange);transform:translateY(-8px)}.fly-badge{font-size:11px;font-weight:800;letter-spacing:.12em;color:var(--fly-orange);min-height:16px}.fly-card h3{font-size:22px;margin:14px 0;color:#fff!important}.fly-price{font-size:46px;font-weight:800;margin:10px 0}.fly-card p{line-height:1.6;opacity:.88;flex:1;color:#fff!important}.fly-photo-break,.fly-gift,.fly-final{min-height:68vh;background-size:cover;background-position:center;position:relative;display:flex;align-items:center;padding:90px 6vw;color:#fff}.fly-photo-break h2,.fly-gift h2,.fly-final h2{font-size:clamp(48px,7vw,92px);line-height:.95;letter-spacing:-.04em;margin:0 0 25px;color:#fff;max-width:900px}.fly-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:290px;gap:10px;margin-top:40px}.fly-gallery img{width:100%;height:100%;object-fit:cover}.fly-gallery img:first-child{grid-row:span 2}.fly-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ddd;margin-top:45px}.fly-stat{background:#fff;padding:28px;text-align:center}.fly-stat b{display:block;font-size:38px;color:#111}.fly-stat span{font-size:12px;letter-spacing:.1em;font-weight:800}.fly-reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}.fly-review{background:#fff;border:1px solid #e5e5e5;padding:28px;line-height:1.6}.fly-stars{letter-spacing:.15em;color:#f3a400}.fly-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:45px}.fly-step-num{font-size:70px;font-weight:800;color:#e6e6e6}.fly-step h3{font-size:24px}.fly-faq details{border-top:1px solid #ddd;padding:22px 0}.fly-faq details:last-child{border-bottom:1px solid #ddd}.fly-faq summary{font-weight:800;font-size:18px;cursor:pointer}.fly-faq p{line-height:1.7}.fly-footer{background:#0d0f10;color:#bbb;padding:45px 6vw}.fly-footer .fly-wrap{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}.fly-footer a{color:#fff}.fly-mobile-book{display:none}
@media(max-width:900px){.fly-links a:not(.fly-book):not(.fly-lang){display:none}.fly-two{grid-template-columns:1fr}.fly-prices{grid-template-columns:1fr 1fr}.fly-gallery{grid-template-columns:1fr 1fr}.fly-gallery img:first-child{grid-row:span 1;grid-column:span 2}.fly-reviews,.fly-steps,.fly-stats{grid-template-columns:1fr}.fly-mobile-book{display:block;position:fixed;z-index:9999;left:12px;right:12px;bottom:12px;text-align:center;background:var(--fly-orange);color:#fff;padding:15px;font-weight:800;border-radius:4px;box-shadow:0 5px 25px rgba(0,0,0,.3)}}
@media(max-width:520px){.fly-nav{padding:11px 15px}.fly-brand img{width:92px}.fly-brand-location{display:none}.fly-links{gap:8px}.fly-book{padding:9px 11px;font-size:11px!important}.fly-hero{min-height:88vh;padding:110px 22px 55px}.fly-section{padding:65px 22px}.fly-prices{grid-template-columns:1fr}.fly-card.pop{transform:none}.fly-photo-break,.fly-gift,.fly-final{padding:70px 22px;min-height:60vh}.fly-gallery{grid-auto-rows:190px}.fly-trust{line-height:1.7}.fly-footer{padding-bottom:90px}}

/* v1.1 visibility + PageLayer compatibility */
.fly-nav{background:rgba(8,10,12,.94)!important;border-bottom:1px solid rgba(255,255,255,.10)}
.fly-nav a,.fly-nav span{color:#fff!important}
.fly-dark,.fly-dark h2,.fly-dark h3,.fly-dark p,.fly-dark .fly-price{color:#fff!important}
.fly-card .fly-btn{color:#fff!important}
.fly-card .fly-badge{color:var(--fly-orange)!important}
/* Hide theme/page-title banners when PageLayer or a host theme adds one above our custom hero */
.pagelayer-page-title,.pagelayer-breadcrumb,.page-header,.entry-header,.site-main>.page-title,.site-main>.entry-title{display:none!important}


/* ==========================================================
   V2 — responsive centering, brighter hero, consistent colors
   ========================================================== */
html,body{width:100%;max-width:100%;overflow-x:hidden}
.site-main,.entry-content,.pagelayer-content,.pagelayer-post-content{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}

/* Header / logo */
.fly-nav{min-height:72px;padding:10px clamp(18px,4vw,64px)!important;gap:24px}
.fly-brand{min-width:0;flex:0 1 auto}
.fly-brand img{width:auto!important;height:44px!important;max-width:132px!important;object-fit:contain;filter:none!important}
.fly-brand-location{font-size:12px;letter-spacing:.18em}
.fly-links{margin-left:auto;flex:0 0 auto}

/* Hero: brighter image + all copy white */
.fly-hero{min-height:min(900px,94vh);padding:clamp(120px,13vh,170px) clamp(22px,6vw,92px) clamp(58px,8vh,90px);background-position:center center}
.fly-hero:before{background:linear-gradient(90deg,rgba(5,9,13,.42) 0%,rgba(5,9,13,.22) 52%,rgba(5,9,13,.08) 100%),linear-gradient(0deg,rgba(5,9,13,.32),rgba(5,9,13,.03) 58%)!important}
.fly-hero-inner{width:min(900px,100%)}
.fly-hero,.fly-hero h1,.fly-hero p,.fly-hero strong,.fly-hero .fly-kicker,.fly-hero .fly-trust{color:#fff!important}
.fly-hero h1{text-shadow:0 2px 20px rgba(0,0,0,.22)}
.fly-hero p{font-weight:400;text-shadow:0 1px 10px rgba(0,0,0,.24)}
.fly-hero p strong{font-weight:700}
.fly-hero .fly-btn{color:#fff!important}
.fly-hero .fly-btn.alt{color:#111!important;background:#fff!important}

/* Every content area is centered independently of PageLayer/host CSS */
.fly-section{width:100%;padding-left:clamp(20px,4vw,64px);padding-right:clamp(20px,4vw,64px)}
.fly-wrap{width:100%!important;max-width:1280px!important;margin-left:auto!important;margin-right:auto!important;padding-left:0!important;padding-right:0!important}

/* Price cards: never overflow; responsive 4 / 2 / 1 columns */
.fly-prices{width:100%;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.5vw,22px);align-items:stretch;margin:45px auto 0!important}
.fly-card{min-width:0;width:100%;height:100%;padding:clamp(22px,2vw,30px);overflow-wrap:anywhere}
.fly-card.pop{transform:none!important;box-shadow:0 0 0 1px var(--fly-orange)}
.fly-card h3{font-size:clamp(20px,1.75vw,27px);line-height:1.25;min-height:2.5em;margin:14px 0;color:#fff!important}
.fly-card p{font-size:15px;line-height:1.55;color:#f4f4f4!important;opacity:1!important}
.fly-card .fly-price{color:#fff!important}
.fly-card .fly-btn{width:100%;text-align:center;margin-top:12px}
.fly-dark .fly-kicker{color:#fff!important}

/* Consistent section text */
.fly-dark,.fly-dark h2,.fly-dark h3,.fly-dark p,.fly-dark strong{color:#fff!important}
.fly-photo-break h2,.fly-gift h2,.fly-final h2,.fly-photo-break p,.fly-gift p,.fly-final p{color:#fff!important}

@media(max-width:1100px){
  .fly-prices{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fly-card h3{min-height:auto}
}
@media(max-width:900px){
  .fly-nav{min-height:64px}
  .fly-brand img{height:38px!important;max-width:112px!important}
  .fly-hero{min-height:82vh;background-position:58% center}
}
@media(max-width:680px){
  .fly-prices{grid-template-columns:1fr;max-width:520px}
  .fly-card{min-height:0}
  .fly-card h3{font-size:25px}
  .fly-hero{min-height:80svh;padding-top:100px;background-position:61% center}
  .fly-hero:before{background:linear-gradient(90deg,rgba(5,9,13,.52),rgba(5,9,13,.18)),linear-gradient(0deg,rgba(5,9,13,.42),rgba(5,9,13,.04) 65%)!important}
}
@media(max-width:520px){
  .fly-nav{padding:9px 14px!important}
  .fly-brand img{height:34px!important;max-width:100px!important}
  .fly-lang{display:inline-block!important}
  .fly-hero h1{font-size:clamp(42px,13vw,60px);line-height:.94}
  .fly-hero p{font-size:17px}
  .fly-btns{gap:10px}
  .fly-btns .fly-btn{width:100%;text-align:center}
}

/* =========================================================
   V2.1 — visual polish based on approved hero direction
   ========================================================= */
:root{--fly-orange:#f45a2a;--fly-black:#0b1015;--fly-ink:#101214;--fly-muted:#6c737a;--fly-line:#e8ebee}
.fly-nav{background:rgba(7,15,23,.91)!important;min-height:70px;padding:10px clamp(22px,4vw,58px)!important;border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 8px 30px rgba(0,0,0,.08)}
.fly-brand img{width:105px!important;max-height:48px;object-fit:contain;filter:none!important}.fly-brand-location{font-size:13px!important;letter-spacing:.14em}.fly-links{gap:clamp(16px,2.2vw,30px)!important}.fly-links a{font-size:12px!important}.fly-book{padding:14px 21px!important;border-radius:4px!important;box-shadow:0 6px 18px rgba(244,90,42,.18)}
.fly-hero{min-height:760px!important;height:min(860px,94vh);align-items:center!important;padding:130px clamp(28px,5.5vw,78px) 70px!important;background-position:center 47%!important}
.fly-hero:before{background:linear-gradient(90deg,rgba(4,14,24,.32) 0%,rgba(4,14,24,.17) 48%,rgba(4,14,24,.04) 76%),linear-gradient(0deg,rgba(4,14,24,.32) 0%,rgba(4,14,24,.02) 58%)!important}
.fly-hero-inner{max-width:780px!important}.fly-kicker{letter-spacing:.18em!important;font-size:12px!important}.fly-hero h1{font-size:clamp(54px,6.3vw,88px)!important;line-height:.88!important;letter-spacing:-.055em!important;margin:18px 0 26px!important;text-shadow:0 3px 24px rgba(0,0,0,.18)}
.fly-hero p{font-size:17px!important;line-height:1.55!important;max-width:700px!important}.fly-btn{border-radius:4px!important;padding:16px 23px!important;transition:transform .18s ease,box-shadow .18s ease}.fly-btn:hover{transform:translateY(-2px);box-shadow:0 9px 24px rgba(0,0,0,.14)}.fly-hero .fly-btn:first-child:after{content:'  ›';font-size:22px;vertical-align:-1px}.fly-trust{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-top:24px!important;font-size:13px!important}.fly-trust span{display:inline-flex;align-items:center;gap:7px}.fly-trust span+span:before{content:'';width:1px;height:20px;background:rgba(255,255,255,.5);margin-right:10px}
.fly-section{padding:88px clamp(24px,5vw,72px)!important}.fly-wrap{width:min(1180px,100%)!important}.fly-two{gap:clamp(40px,6vw,78px)!important}.fly-section h2{font-size:clamp(38px,4.2vw,58px)!important}.fly-lead{font-size:17px!important;line-height:1.65!important;color:#23272b}.fly-two img{border-radius:6px!important;box-shadow:0 18px 50px rgba(13,31,45,.12)}
.fly-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px}.fly-benefit{display:flex;gap:12px;align-items:flex-start}.fly-benefit-icon{width:34px;height:34px;flex:0 0 34px;border:2px solid #111;border-radius:50%;display:grid;place-items:center;font-weight:900}.fly-benefit b{display:block;font-size:14px}.fly-benefit small{display:block;color:#7a7f84;margin-top:3px;font-size:12px}
.fly-prices{width:100%!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important}.fly-card{min-width:0!important;border-radius:4px;padding:28px 22px!important}.fly-card h3{font-size:clamp(20px,1.8vw,26px)!important;line-height:1.35;overflow-wrap:anywhere}.fly-price{font-size:44px!important}.fly-card .fly-btn{text-align:center}.fly-card.pop{box-shadow:0 18px 45px rgba(0,0,0,.2)}
.fly-photo-break:before,.fly-gift:before,.fly-final:before{background:linear-gradient(90deg,rgba(3,11,18,.55),rgba(3,11,18,.10))!important}
@media(max-width:980px){.fly-prices{grid-template-columns:repeat(2,minmax(0,1fr))!important}.fly-card.pop{transform:none}.fly-benefits{grid-template-columns:1fr}.fly-hero{height:auto!important;min-height:760px!important;background-position:60% center!important}.fly-hero-inner{max-width:650px!important}}
@media(max-width:720px){.fly-nav{min-height:62px}.fly-brand img{width:90px!important}.fly-links a:not(.fly-book):not(.fly-lang){display:none}.fly-brand-location{font-size:11px!important}.fly-hero{min-height:760px!important;padding:110px 22px 54px!important;background-position:62% center!important}.fly-hero:before{background:linear-gradient(90deg,rgba(4,14,24,.55),rgba(4,14,24,.12)),linear-gradient(0deg,rgba(4,14,24,.50),rgba(4,14,24,.04) 65%)!important}.fly-hero h1{font-size:clamp(44px,13vw,62px)!important}.fly-trust{display:block;line-height:1.8}.fly-trust span{display:flex}.fly-trust span+span:before{display:none}.fly-two{grid-template-columns:1fr!important}.fly-benefits{margin-top:26px}.fly-prices{grid-template-columns:1fr!important}.fly-section{padding:65px 22px!important}}

/* ==========================================================
   V2.2 — hero CTA alignment + refined pictographic icon system
   ========================================================== */
.fly-btns{align-items:stretch!important}
.fly-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;min-height:58px!important;line-height:1.15!important;vertical-align:middle!important}
.fly-btn.alt{padding-top:0!important;padding-bottom:0!important}
.fly-btn-icon{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 19px}
.fly-hero .fly-btn:first-child:after{line-height:1!important;margin-left:1px}
.fly-trust{gap:0!important}
.fly-trust span{gap:8px!important;padding-right:18px;margin-right:18px;white-space:nowrap}
.fly-trust span+span:before{display:none!important}
.fly-trust span:not(:last-child){border-right:1px solid rgba(255,255,255,.48)}
.fly-trust svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 18px}
.fly-benefits{gap:26px!important}
.fly-benefit{align-items:center!important}
.fly-benefit-icon{width:42px!important;height:42px!important;flex:0 0 42px!important;border:1.5px solid #17191b!important;background:#fff}
.fly-benefit-icon svg{width:24px;height:24px;fill:none;stroke:#111;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.fly-benefit b{font-size:14px!important;line-height:1.25}.fly-benefit small{line-height:1.35}
@media(max-width:720px){.fly-btns{display:grid!important;grid-template-columns:1fr!important}.fly-btn{width:100%!important}.fly-trust span{white-space:normal;border-right:0!important;padding-right:0;margin-right:0;margin-bottom:5px}.fly-benefit-icon{width:40px!important;height:40px!important;flex-basis:40px!important}}

/* V2.6 gift voucher choices */
.fly-gift-inner{max-width:1180px;width:100%}
.fly-gift-choices{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:30px;max-width:1180px}
.fly-gift-choice{display:flex;flex-direction:column;justify-content:center;min-height:132px;padding:20px;background:rgba(12,15,18,.84);border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(7px);color:#fff!important;transition:transform .2s ease,border-color .2s ease,background .2s ease}
.fly-gift-choice:hover{transform:translateY(-3px);border-color:var(--fly-orange);background:rgba(12,15,18,.94)}
.fly-gift-choice-name{font-size:14px;font-weight:800;letter-spacing:.04em;color:#fff!important}
.fly-gift-choice-price{font-size:28px;font-weight:800;margin:7px 0;color:#fff!important}
.fly-gift-choice-cta{font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--fly-orange)!important}
@media(max-width:900px){.fly-gift-choices{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.fly-gift-choices{grid-template-columns:1fr 1fr;gap:8px}.fly-gift-choice{min-height:118px;padding:15px}.fly-gift-choice-price{font-size:24px}}

/* v2.7 Vimeo video section */
.fly-video-section{background:#0d0f10;padding:90px 6vw}
.fly-video-wrap{max-width:1180px;margin:0 auto}
.fly-video-player{position:relative;width:100%;aspect-ratio:16/9;background:#000;overflow:hidden;box-shadow:0 18px 55px rgba(0,0,0,.28)}
.fly-video-player iframe{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;border:0!important}
.fly-video-empty{min-height:280px;display:flex;align-items:center;text-align:center;color:#aaa}
.fly-video-empty p{margin:auto;max-width:700px}
@media(max-width:520px){.fly-video-section{padding:55px 22px}}
