/* Mobile review: shared controls and bounded layout corrections, 2026-10-13. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body.sw-mobile-reviewed main :is(h1,h2,h3,h4,p,li,dd){overflow-wrap:anywhere}
body.sw-mobile-reviewed main :is(section,article,figure,[role="tabpanel"])>div{min-width:0}
body.sw-mobile-reviewed :is(.action,.primary,.pf-button,.gj-button,.text-link,.pf-text-link,.gj-text-link){max-width:100%}
body.sw-mobile-reviewed :is(.action,.primary,.pf-button,.gj-button)>span[aria-hidden="true"]{flex-shrink:0}
.pf3-lightbox{max-height:90vh;max-height:90dvh}

@media(max-width:1000px){
  body.sw-mobile-reviewed .nav{display:grid;grid-template-columns:minmax(0,1fr) auto 44px;gap:12px;align-items:center;padding-top:14px;padding-bottom:14px;min-height:72px}
  body.sw-mobile-reviewed .nav .brand{display:block;min-width:0;width:min(100%,150px)}
  body.sw-mobile-reviewed .nav .brand img{display:block;width:100%;max-width:150px;height:auto}
  body.sw-mobile-reviewed .nav>.primary{margin:0;min-width:0;min-height:44px;padding:10px 14px;font-size:13px;line-height:1.35}
  body.sw-mobile-reviewed .nav .menu-toggle{display:flex;width:44px;height:44px;min-width:44px;min-height:44px;padding:11px;justify-self:end}
  body.sw-mobile-reviewed .nav nav{grid-column:1/-1;min-width:0;max-height:calc(100vh - 180px);max-height:calc(100svh - 180px);overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin}
  body.sw-mobile-reviewed .nav nav>a,body.sw-mobile-reviewed .nav nav summary,body.sw-mobile-reviewed .nav .submenu>a{min-height:44px;line-height:1.5}
  body.sw-mobile-reviewed .marketplace-strip-cta,body.sw-mobile-reviewed .marketplace-signin{min-height:44px;display:inline-flex;align-items:center}
  body.sw-mobile-reviewed footer .footer-groups a{display:flex;align-items:center;min-height:44px;padding-top:10px;padding-bottom:10px}
  body.sw-mobile-reviewed :is(.pf-text-link,.gj-text-link,.text-link,.growth-booking-link,.public-source){min-height:44px;display:inline-flex;align-items:center}
  body.sw-mobile-reviewed :is(.nav,.marketplace-strip,.pf-mobile-cta,.mobile-conversion){padding-left:max(var(--gutter),env(safe-area-inset-left));padding-right:max(var(--gutter),env(safe-area-inset-right))}
  .pf3-page .pf3-share input{font-size:16px;min-width:0;min-height:44px}
  .pf3-page .pf3-share button{font-size:13px;min-height:44px}
  .pf3-lightbox-header{gap:12px}
  .pf3-lightbox-header h2{min-width:0;overflow-wrap:anywhere}
  .pf3-lightbox-header button{flex-shrink:0}
}

@media(max-width:900px){
  #ak-booking .pf-journey-tabs,#ga-journey .pf-journey-tabs{display:flex;max-width:100%;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scroll-padding-inline:12px;scroll-snap-type:x proximity}
  #ak-booking .pf-journey-tabs button,#ga-journey .pf-journey-tabs button{flex:1 0 136px;min-width:136px;min-height:74px;flex-direction:column;align-items:flex-start;gap:6px;padding:14px 16px;font-size:14px;line-height:1.4;scroll-snap-align:start}
  #ak-booking .pf-journey-tabs button>span,#ga-journey .pf-journey-tabs button>span{font-size:11px}
  .gj-hub .gj-hero-copy{grid-template-columns:minmax(0,1fr);gap:0}
  .gj-hub .gj-hero h1{margin-bottom:24px;max-width:760px}
  .gj-hub .gj-hero-intro{max-width:700px}
  .booking-options{grid-template-columns:minmax(0,1fr)}
  .booking-card{padding:30px}
  .booking-card p{max-width:640px}
  .booking-calendar-header{flex-wrap:wrap;gap:18px}
}

@media(max-width:760px){
  body.sw-mobile-reviewed main .mobile-readable{font-size:15px!important;line-height:1.75!important}
  body.sw-mobile-reviewed main :is(h1,h2,h3,h4){hyphens:auto;-webkit-hyphens:auto}
  body.sw-mobile-reviewed .nav{gap:8px}
  body.sw-mobile-reviewed .nav>.primary{padding:10px;font-size:12px;white-space:normal;text-align:center}
  body.sw-mobile-reviewed .nav .brand{width:min(100%,140px)}
  body.sw-mobile-reviewed .marketplace-strip{display:flex;flex-wrap:wrap;gap:0 14px;padding-top:3px;padding-bottom:3px}
  body.sw-mobile-reviewed .marketplace-strip-copy{width:auto;max-width:none;margin:0;font-size:11px;line-height:1.5;white-space:nowrap}
  body.sw-mobile-reviewed .marketplace-strip-actions{width:auto;min-width:0;flex:1;flex-wrap:wrap;justify-content:flex-end;gap:0 14px}
  body.sw-mobile-reviewed .marketplace-strip-cta,body.sw-mobile-reviewed .marketplace-signin{font-size:12px;gap:7px;white-space:nowrap}
  body.sw-mobile-reviewed .pf-mobile-cta{gap:12px;padding-bottom:max(12px,env(safe-area-inset-bottom))}
  body.sw-mobile-reviewed .pf-mobile-cta>a{min-height:44px;font-size:13px;gap:12px;padding:10px 14px;white-space:normal}
  body.sw-mobile-reviewed .pf-mobile-cta>span{min-width:0;font-size:12px;max-width:130px}
  body.sw-mobile-reviewed :is(.pf-next-step,.in-next-offer){min-height:44px;font-size:14px;line-height:1.4;padding:12px 16px}
  #ak-booking .pf-journey-panel,#ga-journey .pf-journey-panel{min-height:0;grid-template-columns:minmax(0,1fr);gap:25px}
  #in-booking .in-offer-tabs button{min-width:0;font-size:14px;line-height:1.45;overflow-wrap:anywhere;hyphens:auto}
  .pricing-page .comparison-scroll{max-width:100%;min-width:0;overflow-x:auto}
  .pricing-page .comparison-table{min-width:680px;width:680px}
  .pricing-page .comparison-table col:first-child{width:168px}
  .pricing-page .comparison-table col:not(:first-child){width:170px}
  .pricing-page .comparison-table tbody th,.pricing-page .comparison-table td{font-size:13px;line-height:1.6}
  .pricing-page .comparison-table .comparison-detail{font-size:12px;line-height:1.6}
  .pricing-page .scroll-hint{font-size:13px;line-height:1.5}
  body.sw-mobile-reviewed .demo-request .demo-heading h1{font-size:clamp(32px,8.6vw,45px);line-height:1.12}
  .booking-card{padding:26px 22px}
  .booking-card h2{font-size:clamp(27px,7vw,34px);line-height:1.2}
  .booking-meta{flex-wrap:wrap;gap:8px 16px;font-size:11px;line-height:1.5}
  .booking-meta>span:last-child{white-space:nowrap}
  .booking-contact a,.booking-calendar-header a{display:inline-flex;align-items:center;min-height:44px}
  .booking-calendar{padding-left:0;padding-right:0}
  .booking-calendar-header,.calendar-status{padding-left:var(--gutter);padding-right:var(--gutter)}
  .booking-frame{max-width:100%;border-left:0;border-right:0}
  body.sw-mobile-reviewed.sw-demo-page{padding-bottom:env(safe-area-inset-bottom,0px)}
}

@media(max-width:540px){
  body.sw-mobile-reviewed .marketplace-strip .lang{display:none}
  body.sw-mobile-reviewed .nav .brand{max-width:128px}
  .pf3-page .pf3-share>div{flex-direction:column}
  .pf3-page .pf3-share button{width:100%;font-size:14px}
  .pf3-lightbox-header{flex-wrap:wrap}
  .pf3-lightbox-header h2{flex:1 1 130px}
  .gj-hub .gj-final-review .gj-button>span:first-child{font-size:14px;line-height:1.45}
  .gj-hub .gj-hero-routes .gj-button{font-size:14px;line-height:1.45}
  .company-v11 .company-demo .primary{min-width:0;width:100%;white-space:normal}
}

@media(prefers-reduced-motion:reduce){
  .pf-journey-tabs{scroll-behavior:auto;scroll-snap-type:none!important}
}
