/* WhaleShot mobile layout approved 2026-09-16. Desktop remains unchanged. */
@media (max-width: 600px) {
  html,body{max-width:100%;overflow-x:hidden}
  .ws-site-header{background:rgba(255,255,255,.97);backdrop-filter:blur(12px)}
  .ws-mobile-quick-tabs{display:grid;grid-template-columns:1fr 1fr 1fr;padding:4px 10px 10px;gap:5px;background:#fff;border-bottom:1px solid #edf3f7}
  .ws-mobile-quick-tabs a{display:flex;min-height:42px;align-items:center;justify-content:center;border-radius:999px;color:#8797a7;text-decoration:none;font-weight:700;font-size:15px}
  .ws-mobile-quick-tabs a[aria-current="page"]{color:#08243d;background:#eef7fd}
  #wsMemberTrigger{height:44px!important;min-height:44px!important;padding:0 19px!important;border:1px solid #078ed0!important;border-radius:10px!important;background:#078ed0!important;color:#fff!important;font-size:14px!important;font-weight:600!important}
  #wsNavigationToggle{width:46px!important;height:42px!important;border:1px solid #d7e8f0!important;border-radius:12px!important;background:#f8fcfe!important;color:#527589!important}
  #wsMemberDialog{margin:auto!important}

  .hero{min-height:610px!important;padding:0!important;background-position:center,58% top!important;background-size:auto,auto 88%!important;background-repeat:no-repeat!important}
  .hero:after{background-position:center,58% top!important;background-size:auto,auto 88%!important;background-repeat:no-repeat!important}
  .hero>.wrap{display:block!important;min-height:610px!important;padding:32px 22px 30px!important}
  .hero .eyebrow{margin:0 0 14px!important;font-size:12px!important;letter-spacing:.1em!important}
  .hero h1{max-width:360px!important;margin:0!important;font-size:40px!important;line-height:1.13!important;letter-spacing:-.045em!important;text-shadow:0 1px 0 rgba(255,255,255,.78)}
  .hero p{max-width:350px!important;margin:20px 0 0!important;color:#345b75!important;font-size:16px!important;line-height:1.75!important;font-weight:500!important;text-shadow:0 1px 1px rgba(255,255,255,.9)}
  .hero-actions{display:flex!important;gap:10px!important;margin-top:22px!important}
  .hero-actions .button{min-height:47px!important;padding:13px 18px!important;border-radius:12px!important;box-shadow:none!important;font-size:14px!important;white-space:nowrap}
  #heroPrimaryLabel{border:1px solid #0796cf!important;background:#0796cf!important;color:#fff!important}
  #heroSecondaryLabel{border:1px solid #b8e0ef!important;background:#fff!important;color:#087fa7!important}
  .hero-card{display:none!important}

  #models.section{padding:48px 18px!important}
  #models .heading{margin-bottom:20px!important}
  #models .heading h2{font-size:27px!important;line-height:1.25!important}
  #models .heading p{font-size:14px!important;line-height:1.7!important}
  .featured-carousel-viewport{margin:0 -18px!important;padding:2px 18px 18px!important;overflow:hidden!important}
  .featured-carousel-track{gap:12px!important}
  .featured-carousel-track .featured-portrait{flex:0 0 294px!important;width:294px!important;height:380px!important;border-radius:22px!important}
  .featured-portrait .thumb{height:100%!important}
  .featured-portrait-meta{left:18px!important;right:18px!important;bottom:17px!important}

  .why-section{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:20px!important;padding:22px 0!important}
  .why-section>img{order:-1!important;width:100%!important;min-width:0!important;height:235px!important;object-fit:cover!important;border-radius:22px!important}
  .why-section h2{font-size:27px!important}
  .why-section p{font-size:14px!important;line-height:1.75!important}

  #how{padding:48px 18px!important}
  #how>.wrap{padding:0!important}
  #how .heading h2{font-size:27px!important;line-height:1.25!important}
  #how .heading p{font-size:14px!important;line-height:1.7!important}
  #how .steps{display:grid!important;grid-template-columns:1fr!important;gap:13px!important}
  #how .step{padding:17px!important;border:1px solid #e1f0f8!important;border-radius:17px!important;background:#f5faff!important}
  #how .step h3{font-size:17px!important}
  #how .step p{font-size:13px!important;line-height:1.55!important}

  #wsMarketing{padding:48px 18px!important;background:#f7fbfe!important}
  #wsMarketing .wm-head{display:block!important;margin-bottom:20px!important}
  #wsMarketing .wm-head h2{font-size:27px!important;line-height:1.25!important}
  #wsMarketing .wm-head p{margin-top:10px!important;font-size:14px!important;line-height:1.7!important}
  #wsMarketing .wm-columns{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px!important}
  #wsMarketing article{overflow:hidden!important;padding:0!important;border:1px solid #dcecf6!important;border-radius:17px!important;background:#fff!important}
  #wsMarketing article figure{height:142px!important;margin:0!important;order:0!important}
  #wsMarketing article figure img{width:100%!important;height:100%!important;object-fit:cover!important}
  #wsMarketing .wm-brand{position:absolute!important;z-index:2!important;margin:10px!important;height:auto!important}
  #wsMarketing article{position:relative!important;padding-bottom:14px!important}
  #wsMarketing .wm-brand img{width:auto!important;height:auto!important;max-height:none!important}
  #wsMarketing article[data-platform="0"] .wm-brand img{width:62px!important}
  #wsMarketing article[data-platform="1"] .wm-brand img{width:78px!important}
  #wsMarketing article[data-platform="2"] .wm-brand img{width:70px!important}
  #wsMarketing article[data-platform="3"] .wm-brand img:first-child{display:none!important}
  #wsMarketing article[data-platform="3"] .wm-brand img:last-child{width:76px!important}
  #wsMarketing article h3,#wsMarketing article>.wm-tags,#wsMarketing article>p{margin-left:14px!important;margin-right:14px!important}
  #wsMarketing article h3{margin-top:14px!important;margin-bottom:9px!important;font-size:17px!important;line-height:1.35!important}
  #wsMarketing .wm-tags{gap:5px!important;margin-bottom:10px!important}
  #wsMarketing .wm-tags span{padding:4px 7px!important;border-radius:7px!important;font-size:10px!important}
  #wsMarketing article>p{font-size:12px!important;line-height:1.6!important}
  #wsMarketing .wm-foot{margin-top:14px!important;padding:17px!important;border:0!important;border-radius:17px!important;background:#eaf7fd!important}

  .ws-feedback{padding:48px 18px!important;overflow:hidden!important}
  .cta{padding:0 18px 34px!important}
  .cta-box{border-radius:24px!important;padding:30px 22px!important}
  .cta-box .button{min-height:45px!important;border-radius:99px!important;padding:13px 21px!important;box-shadow:none!important}
  .ws-site-footer .ws-footer-qr-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
}

/* 2026-09-16: keep the compact model pager fully visible on narrow phones. */
@media (max-width: 600px) {
  body.demo-models main {
    min-height: auto !important;
    padding-bottom: 28px !important;
  }

  .demo-models .pager[data-compact="true"] {
    width: 100%;
    max-width: 100%;
    justify-content: center;
    gap: 5px;
    overflow: visible;
    padding: 4px 0 8px;
  }

  .demo-models .pager[data-compact="true"] button {
    width: 38px;
    min-width: 38px;
    height: 42px;
    flex: 0 0 38px;
    padding: 0;
    font-size: 14px;
  }

  .demo-models .pager[data-compact="true"] button:first-child,
  .demo-models .pager[data-compact="true"] button:last-child {
    width: 52px;
    min-width: 52px;
    flex-basis: 52px;
    font-size: 0;
  }

  .demo-models .pager[data-compact="true"] button:first-child::after {
    content: "‹";
  }

  .demo-models .pager[data-compact="true"] button:last-child::after {
    content: "›";
  }

  .demo-models .pager[data-compact="true"] button:first-child::after,
  .demo-models .pager[data-compact="true"] button:last-child::after {
    font-size: 24px;
    line-height: 1;
  }

  .demo-models .pager[data-compact="true"] .pager-ellipsis {
    width: 20px;
    min-width: 20px;
    height: 42px;
  }
}

@media (min-width: 601px) {.ws-mobile-quick-tabs{display:none!important}}

/* The home hero's 610px mobile height must not create a blank block on /models. */
@media (max-width: 600px) {
  .demo-models .hero {
    height: auto !important;
    min-height: 0 !important;
  }
  .demo-models .hero > .wrap {
    min-height: 0 !important;
    padding: 28px 22px 34px !important;
  }
}
