/* Chinafun V13: original travel-booking hero and responsive airport autocomplete. */
:root{--cf13-blue:#155ee8;--cf13-blue-deep:#0a3d9f;--cf13-ink:#12263f;--cf13-muted:#687a91;--cf13-line:#dce6f2;--cf13-teal:#078b79}
html,body{width:100%!important;max-width:100%!important;overflow-x:clip!important}
body .elementor .cf8-site-header,body .elementor .cf8-hero,body .elementor .cf8-booking-section,body .elementor .cf8-how-section,body .elementor .cf8-benefits-section,body .elementor .cf8-faq-section,body .elementor .cf8-footer{--width:100%!important;--flex-grow:0!important;--flex-shrink:1!important;width:100%!important;max-width:100%!important;min-width:0!important;flex:0 0 100%!important;box-sizing:border-box!important}
body .elementor .cf8-site-header{position:relative!important;z-index:20!important;background:#fff!important;padding:14px 24px!important;border-bottom:1px solid #edf1f7!important;box-shadow:0 3px 18px rgba(13,43,88,.035)!important}
body .elementor .cf8-header-inner,body .elementor .cf8-header-inner>.e-con-inner{width:100%!important;max-width:1200px!important;margin:0 auto!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:20px!important}
.cf8-brand h3 .cf8-brand-dot{color:var(--cf13-blue)!important}.cf8-brand h3{font-size:25px!important;letter-spacing:-.8px!important;font-weight:850!important;color:var(--cf13-ink)!important;margin:0!important}.cf8-brand p{font-size:9px!important;letter-spacing:1.1px!important;color:#7d8ba0!important;margin:2px 0 0!important;font-weight:750!important}.cf8-header-nav{display:flex!important;flex-direction:row!important;align-items:center!important;gap:22px!important}.cf8-header-nav .elementor-button{background:transparent!important;color:#4e617a!important;border:0!important;padding:10px 0!important;font-size:13px!important;font-weight:700!important}.cf8-header-nav .elementor-button:hover{color:var(--cf13-blue)!important}.cf8-header-cta .elementor-button{background:var(--cf13-blue)!important;color:#fff!important;border-radius:11px!important;padding:13px 18px!important;font-size:13px!important;font-weight:800!important;box-shadow:0 8px 18px rgba(21,94,232,.18)!important}
body .elementor .cf8-hero{position:relative!important;isolation:isolate!important;overflow:hidden!important;padding:66px 24px 140px!important;background:linear-gradient(118deg,#0b47b8 0%,#1765df 47%,#54a8f2 100%)!important;color:#fff!important}
body .elementor .cf8-hero:before{content:""!important;position:absolute!important;z-index:-1!important;inset:0!important;pointer-events:none!important;background:radial-gradient(ellipse at 8% 100%,rgba(255,255,255,.19),transparent 38%),radial-gradient(ellipse at 88% 10%,rgba(151,213,255,.30),transparent 28%),linear-gradient(180deg,rgba(5,39,118,.05),rgba(4,38,113,.25))!important}
body .elementor .cf8-hero:after{content:"✈"!important;position:absolute!important;z-index:-1!important;right:8%!important;top:10%!important;font-size:clamp(130px,20vw,260px)!important;line-height:1!important;font-weight:300!important;color:rgba(255,255,255,.075)!important;transform:rotate(-12deg)!important;pointer-events:none!important}
body .elementor .cf8-hero-inner,body .elementor .cf8-hero-inner>.e-con-inner{width:100%!important;max-width:1200px!important;margin:0 auto!important;display:flex!important;flex-direction:column!important;align-items:center!important;gap:0!important;position:relative!important;z-index:1!important}
body .elementor .cf8-hero-copy,body .elementor .cf8-hero-copy>.e-con-inner{width:100%!important;max-width:900px!important;margin:0 auto!important;display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;gap:0!important}
.cf8-eyebrow{margin-bottom:13px!important}.cf8-eyebrow p{display:inline-flex!important;align-items:center!important;gap:8px!important;padding:7px 13px!important;margin:0!important;border:1px solid rgba(255,255,255,.35)!important;border-radius:999px!important;background:rgba(255,255,255,.13)!important;color:#fff!important;font-size:11px!important;font-weight:800!important;letter-spacing:1.25px!important}.cf8-eyebrow-dot{width:7px!important;height:7px!important;border-radius:50%!important;background:#8df0c9!important;display:inline-block!important}
body .elementor .cf8-hero .elementor-heading-title{font-size:clamp(39px,5.1vw,66px)!important;line-height:1.04!important;letter-spacing:-2.6px!important;font-weight:900!important;color:#fff!important;margin:0!important;max-width:900px!important}.cf8-hero .cf8-highlight{color:#c9f7ff!important}.cf8-hero-copy .cf8-hero-description,.cf8-hero-copy .elementor-widget-text-editor p:not(.cf8-hero-description){max-width:760px!important;color:rgba(255,255,255,.88)!important;font-size:16px!important;line-height:1.7!important;margin:18px auto 0!important}
.cf8-trust-points{margin-top:24px!important}.cf8-trust-points p{display:flex!important;justify-content:center!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;margin:0!important}.cf8-trust-points span{display:inline-flex!important;align-items:center!important;gap:7px!important;border:1px solid rgba(255,255,255,.26)!important;border-radius:999px!important;padding:9px 13px!important;background:rgba(7,38,105,.18)!important;color:#fff!important;font-size:12px!important;font-weight:650!important}
body .elementor .cf8-booking-section{position:relative!important;z-index:5!important;margin-top:-91px!important;padding:0 24px 70px!important;background:transparent!important}
body .elementor .cf8-booking-inner,body .elementor .cf8-booking-inner>.e-con-inner{width:100%!important;max-width:1200px!important;margin:0 auto!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important}
body .elementor .cf8-booking-intro{display:none!important}
body .elementor .cf8-booking-widget-wrap,body .elementor .cf8-booking-widget-wrap>.e-con-inner,body .elementor .cf8-booking-widget-wrap .elementor-widget-shortcode,body .elementor .cf8-booking-widget-wrap .elementor-widget-container,body .elementor .cf8-booking-widget-wrap .elementor-shortcode{--width:100%!important;width:100%!important;max-width:100%!important;min-width:0!important;flex:0 1 auto!important;display:block!important;margin:0 auto!important;box-sizing:border-box!important}
body .elementor .cf8-booking-widget-wrap .cf7-widget,body .elementor .cf7-widget{width:100%!important;max-width:1200px!important;min-width:0!important;margin:0 auto!important;padding:clamp(24px,3vw,38px)!important;border:1px solid rgba(18,53,98,.08)!important;border-radius:23px!important;background:#fff!important;box-shadow:0 22px 70px rgba(10,43,100,.16),0 3px 12px rgba(10,43,100,.04)!important;font-size:15px!important;line-height:1.55!important;box-sizing:border-box!important}
body .elementor .cf7-widget .cf7-form-intro{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;border-bottom:1px solid #e8eef7!important;padding-bottom:22px!important;margin-bottom:20px!important}.cf7-widget .cf7-form-intro h2{font-size:clamp(23px,2vw,29px)!important;letter-spacing:-.8px!important;color:var(--cf13-ink)!important}.cf7-widget .cf7-form-intro p{font-size:13px!important;color:var(--cf13-muted)!important}.cf7-widget .cf7-live-note{background:#edf9f5!important;color:#087864!important;border:1px solid #d5f0e7!important}
.cf7-widget .cf7-section-caption{margin-top:21px!important}.cf7-widget .cf7-section-caption>span{background:#eaf1ff!important;color:#155ee8!important}.cf7-widget .cf7-direction span{border-radius:13px!important;min-height:66px!important}.cf7-widget .cf7-direction input:checked+span{border-color:#155ee8!important;background:#f1f6ff!important;box-shadow:inset 0 0 0 1px #155ee8!important}.cf7-widget .cf7-field input,.cf7-widget .cf7-field select{min-height:49px!important;border-radius:11px!important;font-size:14px!important;border-color:#d8e3f1!important}.cf7-widget .cf7-field input:focus,.cf7-widget .cf7-field select:focus{border-color:#3277ef!important;box-shadow:0 0 0 3px rgba(50,119,239,.13)!important}.cf7-widget .cf7-tier{border-radius:16px!important;min-height:185px!important}.cf7-widget .cf7-tier[data-tier=best].is-selected{border-color:#0c8b78!important;background:#f2fbf8!important;box-shadow:inset 0 0 0 1px #0c8b78!important}.cf7-widget .cf7-tier[data-tier=best] .cf7-recommended{background:#0c8b78!important}.cf7-widget .cf7-checkout:not(:disabled){background:#155ee8!important}.cf7-widget .cf7-checkout:not(:disabled):hover{background:#104dc5!important}.cf7-widget .cf7-paybar{border-radius:15px!important;background:linear-gradient(110deg,#0d2e55,#123d71)!important}.cf7-widget .cf7-agree a{color:#155ee8!important}
/* Searchable city/airport autocomplete. */
.cf7-autocomplete-wrap{position:relative!important;width:100%!important;min-width:0!important}.cf7-autocomplete-wrap .cf7-location-search{width:100%!important;display:block!important;padding-right:42px!important;background:#fff!important}.cf7-autocomplete-wrap .cf7-location-search-icon{position:absolute!important;right:14px!important;top:11px!important;font-size:23px!important;line-height:24px!important;color:#58749b!important;pointer-events:none!important}.cf7-native-select{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}.cf7-location-field,.cf7-airport-field{grid-column:span 3!important;position:relative!important}.cf7-location-field:focus-within{z-index:40!important}.cf8-booking-section,.cf8-booking-inner,.cf8-booking-widget-wrap,.cf7-widget,.cf7-order-form,.cf7-fields{overflow:visible!important}.cf7-field-help{display:block!important;margin-top:6px!important;font-size:10px!important;line-height:1.4!important;color:#7b8da3!important;font-weight:500!important}.cf7-location-suggestions{position:absolute!important;top:calc(100% + 8px)!important;left:0!important;right:0!important;z-index:10000!important;max-height:330px!important;overflow-y:auto!important;padding:7px!important;border:1px solid #dbe5f2!important;border-radius:15px!important;background:#fff!important;box-shadow:0 22px 50px rgba(17,42,82,.19)!important}.cf7-location-suggestions[hidden]{display:none!important}.cf7-suggestion{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;width:100%!important;text-align:left!important;border:0!important;border-radius:10px!important;background:#fff!important;padding:12px 11px!important;color:#142a44!important;cursor:pointer!important;min-height:58px!important}.cf7-suggestion:hover,.cf7-suggestion[aria-selected=true]{background:#f0f6ff!important}.cf7-suggestion-copy{display:flex!important;flex-direction:column!important;gap:3px!important;min-width:0!important}.cf7-suggestion-title{font-size:13px!important;font-weight:800!important;line-height:1.3!important;color:#172e4a!important}.cf7-suggestion-subtitle{font-size:11px!important;line-height:1.45!important;color:#71839a!important;white-space:normal!important}.cf7-suggestion-kind{flex:none!important;align-self:center!important;border-radius:6px!important;background:#edf4ff!important;color:#2365cc!important;padding:5px 7px!important;font-size:9px!important;font-weight:850!important;letter-spacing:.45px!important}.cf7-suggestions-heading{padding:9px 11px 8px!important;color:#7b8da3!important;font-size:9px!important;font-weight:850!important;letter-spacing:1px!important;text-transform:uppercase!important;border-bottom:1px solid #eef2f8!important;margin-bottom:4px!important}.cf7-suggestion-empty{padding:16px 12px!important;font-size:12px!important;color:#71839a!important;line-height:1.5!important}
body .elementor .cf8-how-section{padding:72px 24px!important;background:#fff!important}.cf8-content-inner,.cf8-content-inner>.e-con-inner{width:100%!important;max-width:1160px!important;margin:0 auto!important}.cf8-section-heading{text-align:center!important;margin:0 auto 28px!important;max-width:760px!important}.cf8-section-heading h2{font-size:clamp(29px,3.2vw,40px)!important;letter-spacing:-1.3px!important;color:var(--cf13-ink)!important;font-weight:850!important}.cf8-section-heading p{font-size:14px!important;line-height:1.7!important;color:var(--cf13-muted)!important}.cf8-kicker{font-size:10px!important;font-weight:850!important;letter-spacing:1.8px!important;color:#1766d8!important}.cf8-steps-grid,.cf8-steps-grid>.e-con-inner{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;width:100%!important;max-width:100%!important}.cf8-step-card,.cf8-step-card>.e-con-inner{padding:24px!important;border:1px solid #e3eaf4!important;border-radius:17px!important;background:#fff!important;box-shadow:0 10px 28px rgba(17,45,86,.045)!important}.cf8-step-number{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:36px!important;height:36px!important;border-radius:11px!important;background:#eaf2ff!important;color:#155ee8!important;font-size:12px!important;font-weight:900!important}.cf8-step-card h3{font-size:18px!important;color:var(--cf13-ink)!important;font-weight:850!important;margin:16px 0 7px!important}.cf8-step-card p{font-size:13px!important;line-height:1.7!important;color:var(--cf13-muted)!important}
body .elementor .cf8-benefits-section{padding:70px 24px!important;background:#0c2748!important;color:#fff!important}.cf8-benefits-inner,.cf8-benefits-section>.e-con-inner{width:100%!important;max-width:1160px!important;margin:0 auto!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:44px!important;align-items:center!important}.cf8-benefits-copy h2{font-size:clamp(30px,3.4vw,43px)!important;line-height:1.1!important;color:#fff!important;letter-spacing:-1.3px!important}.cf8-benefits-copy p:not(.cf8-kicker){color:#c8d8ec!important;font-size:14px!important;line-height:1.8!important}.cf8-kicker-light{color:#8bdcff!important}.cf8-benefit-list,.cf8-benefit-list>.e-con-inner{display:flex!important;flex-direction:column!important;gap:12px!important}.cf8-benefit-row,.cf8-benefit-row>.e-con-inner{display:flex!important;flex-direction:row!important;gap:12px!important;align-items:flex-start!important;padding:16px!important;border-radius:14px!important;border:1px solid rgba(255,255,255,.12)!important;background:rgba(255,255,255,.065)!important}.cf8-benefit-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:28px!important;height:28px!important;border-radius:50%!important;background:#c8f5e8!important;color:#08745f!important;font-weight:900!important;flex:none!important}.cf8-benefit-row p{color:#d4e0f0!important;font-size:13px!important;line-height:1.6!important}.cf8-benefit-row strong{color:#fff!important}
body .elementor .cf8-faq-section{padding:72px 24px!important;background:#f5f8fc!important}.cf8-faq-inner,.cf8-faq-inner>.e-con-inner{width:100%!important;max-width:880px!important;margin:0 auto!important}.cf8-faq-inner .elementor-accordion .elementor-accordion-item{border:1px solid #e0e8f3!important;border-radius:12px!important;overflow:hidden!important;margin-bottom:10px!important;background:#fff!important}.cf8-faq-inner .elementor-tab-title{padding:18px 20px!important;font-size:14px!important;font-weight:750!important;color:var(--cf13-ink)!important}.cf8-faq-inner .elementor-tab-content{padding:0 20px 18px!important;color:var(--cf13-muted)!important;font-size:13px!important;line-height:1.7!important}.cf8-footer{background:#091a31!important;color:#c3d2e4!important;padding:32px 24px 25px!important}.cf8-footer-inner,.cf8-footer-inner>.e-con-inner{width:100%!important;max-width:1160px!important;margin:0 auto!important;display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:space-between!important;gap:18px!important}.cf8-footer-brand h3{color:#fff!important;font-size:24px!important}.cf8-footer-brand p{color:#b5c5da!important;font-size:12px!important}.cf8-footer-links .elementor-button{color:#d1deee!important;background:transparent!important;font-size:12px!important}.cf8-footer-note{width:100%!important;flex-basis:100%!important;border-top:1px solid rgba(255,255,255,.12)!important;padding-top:15px!important;color:#93a9c4!important;font-size:11px!important}
@media(max-width:900px){body .elementor .cf8-hero{padding:58px 22px 124px!important}.cf8-hero .elementor-heading-title{letter-spacing:-1.8px!important}.cf8-steps-grid,.cf8-steps-grid>.e-con-inner{grid-template-columns:1fr!important}.cf8-benefits-inner,.cf8-benefits-section>.e-con-inner{grid-template-columns:1fr!important;gap:26px!important}.cf7-widget .cf7-tier{padding:16px 12px!important}.cf7-widget .cf7-tier-price{font-size:21px!important}}
@media(max-width:767px){body .elementor .cf8-site-header{padding:12px 16px!important}.cf8-header-inner,.cf8-header-inner>.e-con-inner{gap:10px!important}.cf8-brand h3{font-size:22px!important}.cf8-brand p{font-size:8px!important;letter-spacing:.6px!important}.cf8-header-nav{display:none!important}.cf8-header-cta .elementor-button{padding:11px 13px!important;font-size:11px!important}.body .elementor .cf8-hero{padding:47px 17px 110px!important}body .elementor .cf8-hero{padding:47px 17px 110px!important}.cf8-hero .elementor-heading-title{font-size:clamp(36px,9vw,49px)!important;letter-spacing:-1.7px!important;line-height:1.05!important}.cf8-hero-copy .cf8-hero-description,.cf8-hero-copy .elementor-widget-text-editor p:not(.cf8-hero-description){font-size:14px!important;line-height:1.65!important}.cf8-trust-points p{gap:7px!important}.cf8-trust-points span{font-size:10px!important;padding:8px 10px!important}.body .elementor .cf8-booking-section{margin-top:-72px!important;padding:0 14px 54px!important}body .elementor .cf8-booking-section{margin-top:-72px!important;padding:0 14px 54px!important}.cf8-booking-widget-wrap .cf7-widget,.cf7-widget{padding:22px 17px!important;border-radius:19px!important}body .elementor .cf7-widget .cf7-form-intro{align-items:flex-start!important;flex-direction:column!important;padding-bottom:16px!important;margin-bottom:16px!important}body .elementor .cf7-widget .cf7-form-intro h2{font-size:23px!important}.cf7-fields{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px!important}.cf7-fields .cf7-field,.cf7-fields .cf7-field.cf7-address,.cf7-fields .cf7-more{grid-column:span 2!important}.cf7-fields .cf7-location-field,.cf7-fields .cf7-airport-field{grid-column:span 2!important}.cf7-location-suggestions{max-height:270px!important}.cf7-suggestion{min-height:56px!important;padding:11px 9px!important}.cf7-widget .cf7-tiers{grid-template-columns:1fr!important;gap:10px!important}.cf7-widget .cf7-tier{min-height:0!important;display:grid!important;grid-template-columns:40px minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;align-items:center!important;column-gap:11px!important;row-gap:3px!important;padding:13px!important}.cf7-widget .cf7-tier-icon{grid-row:1/3!important;width:39px!important;height:39px!important}.cf7-widget .cf7-tier-head{grid-column:2!important;grid-row:1!important}.cf7-widget .cf7-tier-price{grid-column:3!important;grid-row:1/3!important;font-size:18px!important;text-align:right!important}.cf7-widget .cf7-tier-bottom{grid-column:2!important;grid-row:2!important;border:0!important;padding:0!important}.cf7-widget .cf7-paybar{flex-direction:column!important;align-items:stretch!important;padding:16px!important;gap:12px!important}.cf7-widget .cf7-checkout{width:100%!important}.cf8-how-section,.cf8-faq-section{padding:52px 17px!important}.cf8-section-heading h2{font-size:30px!important}.cf8-step-card,.cf8-step-card>.e-con-inner{padding:21px!important}.cf8-benefits-section{padding:52px 17px!important}.cf8-footer{padding:27px 17px 22px!important}.cf8-footer-inner,.cf8-footer-inner>.e-con-inner{flex-direction:column!important;align-items:flex-start!important;gap:13px!important}.cf8-footer-links{flex-wrap:wrap!important;gap:10px!important}}
@media(max-width:380px){.cf8-hero .elementor-heading-title{font-size:34px!important}.cf8-eyebrow p{font-size:9px!important;letter-spacing:.7px!important}.cf8-trust-points span{font-size:9px!important}.cf7-widget{padding:18px 12px!important}.cf7-widget .cf7-direction{gap:5px!important}.cf7-widget .cf7-direction span{padding:9px 5px!important}.cf7-widget .cf7-direction b{font-size:10px!important}.cf7-widget .cf7-direction small{font-size:8px!important}}
@media(prefers-reduced-motion:reduce){.cf7-suggestion,.cf7-tier,.cf7-direction span{transition:none!important}}
