/* Customer-facing mobile presentation. Desktop layouts remain in styles.css. */
.mobile-apply-bar{display:none}
@media(max-width:640px){
 .customer-mobile{background:#f5f7fb;color:#182d48}
 .customer-mobile .site-header{padding:10px 16px;min-height:72px;gap:12px;flex-wrap:nowrap}
 .customer-mobile .site-header .brand{min-width:0;flex:1;gap:8px}
 .customer-mobile .site-header .brand .brand-image{width:44px!important;height:44px!important}
 .customer-mobile .site-header .brand .brand-name{font-size:12px;min-width:0;overflow-wrap:anywhere;line-height:1.35}
 .customer-mobile .site-header .header-apply{display:inline-flex;align-items:center;justify-content:center;max-width:116px;min-height:44px;padding:10px 13px;font-size:12px!important;line-height:1.3;border-radius:12px}
 .customer-mobile a:focus-visible,.customer-mobile button:focus-visible{outline:3px solid #377fce;outline-offset:3px}
 .home-page.customer-mobile{padding-bottom:calc(98px + env(safe-area-inset-bottom,0px))}
 .home-page.customer-mobile .landing-hero.entry-hero{padding:46px 22px 38px;min-height:calc(100svh - 140px);align-items:center;background-position:62% center;background-image:linear-gradient(90deg,#7c0000d9,#85000091),url('/china-landmarks-hero-20261108.webp')}
 .home-page.customer-mobile .entry-hero .landing-copy>.entry-badge{font-size:11px;letter-spacing:.02em;padding:8px 12px;margin-bottom:20px}
 .home-page.customer-mobile .entry-hero .landing-copy h1{font-size:clamp(29px,7.8vw,38px);line-height:1.13;letter-spacing:-.025em;margin-bottom:22px;text-wrap:balance}
 .home-page.customer-mobile .entry-hero .landing-copy>p:not(.entry-badge){font-size:15px;line-height:1.65;color:#fff4ee}
 .home-page.customer-mobile .entry-hero .landing-actions{margin-top:26px;gap:12px}
 .home-page.customer-mobile .entry-hero .landing-actions a{min-height:54px;font-size:15px;border-radius:14px}
 .home-page.customer-mobile .entry-hero .landing-actions .primary-button{box-shadow:0 8px 24px #4c00002b}
 .home-page.customer-mobile .entry-hero .landing-actions .secondary-button{min-height:48px;font-size:13px;background:#6500004d;border-color:#ffffff8c}
 .home-page.customer-mobile .page-shell>section:not(.entry-hero){width:calc(100% - 32px)}
 .home-page.customer-mobile .process-section{margin-top:20px;padding:26px 0}
 .home-page.customer-mobile .process-heading h2,.home-page.customer-mobile .service-explainer h2,.home-page.customer-mobile .faq-heading h2{font-size:25px;line-height:1.22;letter-spacing:-.025em}
 .home-page.customer-mobile .process-grid{gap:12px}
 .home-page.customer-mobile .process-card{padding:20px;border-radius:18px;background:#fff;border:1px solid #e1e8f1;box-shadow:0 5px 18px #193b5c05}
 .home-page.customer-mobile .process-card h3{font-size:17px;margin-top:12px}
 .home-page.customer-mobile .process-card p,.home-page.customer-mobile .service-explainer p,.home-page.customer-mobile .support-trust p{font-size:14px;line-height:1.75}
 .home-page.customer-mobile .service-explainer{padding:24px 20px;border-radius:20px;background:#fff}
 .home-page.customer-mobile .service-points{gap:16px;font-size:13px}
 .home-page.customer-mobile .price-disclosure{padding:18px 16px;align-items:start;border-radius:16px}
 .home-page.customer-mobile .price-disclosure p{font-size:12px;line-height:1.75}
 .home-page.customer-mobile .support-trust>div{padding:22px;border-radius:18px}
 .home-page.customer-mobile .support-trust h2{font-size:18px}
 .home-page.customer-mobile .support-trust a{display:inline-flex;align-items:center;min-height:44px;font-size:13px}
 .home-page.customer-mobile .faq-section{margin-top:32px}
 .home-page.customer-mobile .faq-heading p{font-size:14px}
 .home-page.customer-mobile .faq-item{border-radius:14px;margin-bottom:10px;background:#fff;border:1px solid #e0e7f0}
 .home-page.customer-mobile .faq-item summary{padding:18px 40px 18px 16px;font-size:14px;line-height:1.5;min-height:56px}
 .home-page.customer-mobile .faq-answer{padding:0 16px 16px}
 .home-page.customer-mobile .faq-answer p{font-size:14px;line-height:1.75}
 .home-page.customer-mobile .mobile-apply-bar{position:fixed;display:flex;z-index:80;left:0;right:0;bottom:0;gap:12px;align-items:center;justify-content:space-between;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid #e6e9ee;box-shadow:0 -8px 30px #1b294b10}
 .mobile-apply-bar>div{display:grid;gap:3px;min-width:0}.mobile-apply-bar strong{font-size:12px;color:#233956}.mobile-apply-bar>div>span{font-size:10px;color:#596c83;line-height:1.4}
 .mobile-apply-bar>a{display:inline-flex;gap:8px;align-items:center;justify-content:center;min-height:48px;padding:12px 16px;white-space:nowrap;background:#ffdc3d;color:#6c240e;border-radius:13px;font-size:12px;font-weight:750;text-decoration:none}
 .home-page.customer-mobile .support-chat{bottom:calc(96px + env(safe-area-inset-bottom,0px))}
 .home-page.customer-mobile:has(.support-chat-panel:not([hidden])) .mobile-apply-bar{display:none}
 .home-page.customer-mobile:has(.support-chat-panel:not([hidden])) .support-chat{bottom:calc(12px + env(safe-area-inset-bottom,0px))}
 .home-page.customer-mobile .support-chat-panel{max-height:calc(100dvh - 170px)}
 .apply-page.customer-mobile .page-shell,.apply-page.customer-mobile.is-payment-step .page-shell{width:auto;margin:22px 14px 40px;padding:0}
 .apply-page.customer-mobile .mobile-application-progress{display:block!important;margin:0 4px 22px}
 .apply-page.customer-mobile .mobile-application-progress h1{font-size:24px;line-height:1.25;margin-bottom:14px}
 .apply-page.customer-mobile .mobile-progress-bars{height:6px;gap:7px}
 .apply-page.customer-mobile .mobile-progress-bars span.is-current,.apply-page.customer-mobile .mobile-progress-bars span.is-done{background:#b51f28}
 .apply-page.customer-mobile #mobile-step-label{font-size:13px;color:#536780;margin-top:10px}
 .apply-page.customer-mobile .main-card,.apply-page.customer-mobile.is-payment-step .main-card{padding:20px 16px;border:1px solid #e0e7f1;border-radius:20px;background:#fff;box-shadow:0 8px 28px #17385806}
 .apply-page.customer-mobile .main-card .section-title h2{font-size:20px;line-height:1.3}
 .apply-page.customer-mobile .main-card .section-title p{font-size:13px;line-height:1.6}
 .apply-page.customer-mobile .traveler-card{padding:18px 12px;border-radius:15px;background:#fafcff;margin-top:20px}
 .apply-page.customer-mobile .traveler-heading{font-size:14px;margin-bottom:22px}
 .apply-page.customer-mobile .traveler-grid,.apply-page.customer-mobile .field-grid{gap:22px}
 .apply-page.customer-mobile .traveler-card label,.apply-page.customer-mobile .field-grid>label{font-size:14px;gap:8px}
 .apply-page.customer-mobile input:not([type=checkbox]):not([type=radio]),.apply-page.customer-mobile select,.apply-page.customer-mobile .search-select-trigger{min-height:50px;height:50px;border-radius:11px;background:#fff;font-size:16px}
 .apply-page.customer-mobile .date-parts{gap:6px}
 .apply-page.customer-mobile .date-parts select{padding:0 6px}
 .apply-page.customer-mobile .phone-row{grid-template-columns:minmax(94px,.75fr) minmax(0,1.25fr);gap:10px}
 .apply-page.customer-mobile .traveler-card .gender-row{display:none!important}
 .apply-page.customer-mobile .gender-mobile-select{display:block!important}
 .apply-page.customer-mobile .privacy-note,.apply-page.customer-mobile .form-error,.apply-page.customer-mobile .entry-policy-help{font-size:12px;line-height:1.65}
 .apply-page.customer-mobile .form-actions{gap:12px;padding-top:22px;margin-top:24px}
 .apply-page.customer-mobile .main-card .form-actions .primary-button{min-height:54px;font-size:16px;border-radius:13px;background:#a91c27;border-color:#a91c27;color:#fff}
 .apply-page.customer-mobile .main-card .form-actions .secondary-button,.apply-page.customer-mobile #add-traveler{min-height:48px;font-size:14px;border-radius:12px}
 .apply-page.customer-mobile .search-select-menu{border-radius:12px;box-shadow:0 10px 30px #152e4c24}
 .apply-page.customer-mobile .search-select-option{padding:13px 12px;font-size:16px;min-height:44px}
 .customer-mobile .status-card,.customer-mobile .contact-shell{padding:24px 18px;border-radius:20px;border:1px solid #dde6f1;background:#fff;box-shadow:0 8px 28px #183a5806}
 .customer-mobile .status-heading h1,.customer-mobile .contact-shell h1{font-size:28px;line-height:1.2;letter-spacing:-.025em}
 .customer-mobile .status-heading p,.customer-mobile .contact-intro{font-size:15px;line-height:1.65}
 .customer-mobile .status-card input,.customer-mobile .contact-form input,.customer-mobile .contact-form select{font-size:16px;min-height:50px;border-radius:11px}
 .customer-mobile .status-submit,.customer-mobile .contact-form .primary-button{min-height:52px;font-size:16px;border-radius:12px}
 .customer-mobile .legal-shell,.customer-mobile .guide-shell article{border-radius:18px;padding:24px 20px;overflow-wrap:anywhere}
 .customer-mobile .legal-shell p,.customer-mobile .legal-shell li,.customer-mobile .guide-shell p,.customer-mobile .guide-shell li{font-size:15px;line-height:1.8}
 .customer-mobile .site-footer-rich{padding:30px 20px 20px}
 .customer-mobile .site-footer-rich .footer-main{gap:28px 16px}
 .customer-mobile .footer-column a{display:flex;align-items:center;min-height:44px;font-size:13px}
 .customer-mobile .footer-brand-column>p,.customer-mobile .footer-disclaimer{font-size:12px;line-height:1.8}
}
@media(max-width:360px){.home-page.customer-mobile .landing-hero.entry-hero{padding-left:18px;padding-right:18px}.home-page.customer-mobile .entry-hero .landing-copy h1{font-size:29px}.mobile-apply-bar>div{display:none}.mobile-apply-bar>a{width:100%;font-size:14px}.customer-mobile .site-header{padding-left:12px;padding-right:12px}}
