/* Phone experience: one compact shell, thumb-sized actions, and progressive filters. */
.mobile-menu-button,.mobile-header-account,.mobile-bottom-nav,.mobile-filter-toggle,.mobile-filter-head,.mobile-filter-done,.mobile-filter-scrim{display:none}
.mobile-menu{padding:0;border:0;background:transparent}

@media(min-width:761px) and (max-width:1050px){
 .site-header .wrap{min-height:76px;align-items:center;flex-direction:row;flex-wrap:nowrap;padding:0}
 .site-nav{display:none}
 .mobile-menu-button{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-left:auto;padding:0;border:0;background:transparent;color:var(--ink);font-size:12px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
 .mobile-menu-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
 body.home-route .mobile-menu-button{color:#fff}
}


/* One menu system for phone and tablet: tools, destinations, then account. */
@media(max-width:1050px){
 html.mobile-menu-open,body.mobile-menu-open{overflow:hidden}
 .site-header .mobile-header-cart{display:grid}
 .mobile-header-account{display:grid;place-items:center;flex:none;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:var(--paper);color:var(--ink)}
 .mobile-header-account svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
 .mobile-header-account:hover{border-color:var(--orange);color:var(--orange)}
 .mobile-header-account:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
 body.home-route .mobile-header-account{border-color:rgba(255,255,255,.72);background:rgba(8,9,11,.45);color:#fff}
 body.home-route .mobile-header-account:hover{border-color:var(--orange);color:var(--orange)}
 .mobile-menu[open]{position:fixed;inset:0;z-index:100;display:grid;place-items:center;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;background:rgba(7,9,13,.68)}
 .mobile-menu::backdrop{background:rgba(7,9,13,.68)}
 .mobile-menu-sheet{display:flex;flex-direction:column;width:min(640px,calc(100% - 32px));max-height:min(90dvh,800px);overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--paper);color:var(--ink)}
 .mobile-menu-sheet>header{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;min-height:74px;padding:0 26px;border-bottom:1px solid var(--line)}
 .mobile-menu-sheet>header strong{font:750 28px/1 var(--body);letter-spacing:-.04em}
 .mobile-menu-sheet>header button{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:5px;background:transparent;color:var(--ink);cursor:pointer}
 .mobile-menu-sheet>header svg,.mobile-menu-search svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
 .mobile-menu-content{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:22px 26px 28px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
 .mobile-menu-search{display:flex;align-items:center;gap:13px;width:100%;min-height:54px;padding:12px 15px;border:1px solid var(--line);border-radius:5px;background:var(--ground);color:var(--ink);font:650 16px/1.2 var(--body);text-align:left;cursor:pointer}
 .mobile-menu-search svg{color:var(--coral)}
 .mobile-menu-search span:last-child{margin-left:auto;color:var(--muted);font-size:19px;font-weight:400}
 .mobile-menu-tools{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0 25px}
 .mobile-menu-tools .theme-toggle,.mobile-menu-tools [data-install-app]{display:inline-flex;align-items:center;justify-content:flex-start;gap:10px;width:auto;height:44px;min-height:44px;padding:0 13px;border:1px solid var(--line);border-radius:5px;background:transparent;color:var(--muted);font:600 13px/1 var(--body);white-space:nowrap;cursor:pointer}
 .mobile-menu-tools .theme-toggle::before{width:15px;height:15px;flex:none}
 .mobile-menu-tools [data-install-app][hidden]{display:none}
 .mobile-menu-main{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;border-top:1px solid var(--line)}
 .mobile-menu-main a{display:flex;align-items:center;min-width:0;min-height:62px;padding:8px 0;border-bottom:1px solid var(--line);color:var(--ink);font:720 19px/1.15 var(--body);letter-spacing:-.02em;text-decoration:none}
 .mobile-menu-secondary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;margin-top:20px}
 .mobile-menu-secondary::before{grid-column:1/-1;margin-bottom:3px;color:var(--muted);content:'MORE';font:750 10px/1.2 var(--body);letter-spacing:.14em}
 .mobile-menu-secondary a{display:flex;align-items:center;min-width:0;min-height:46px;padding:5px 0;color:var(--muted);font:600 14px/1.2 var(--body);text-decoration:none}
 .mobile-menu-main a:hover,.mobile-menu-secondary a:hover,.mobile-menu-sheet button:hover{color:var(--coral)}
 .mobile-menu-sheet :is(a,button):focus-visible{outline:2px solid var(--coral);outline-offset:2px}
 .mobile-menu-footer{flex:0 0 auto;padding:15px 26px calc(15px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--paper)}
 .mobile-account-link{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px}
}

@media(max-width:760px){
 :root{--mobile-gutter:16px;--mobile-header:64px;--mobile-nav:66px;--yv-gutter:16px}
 html{scroll-padding-top:calc(var(--mobile-header) + 76px)}
 body{padding-bottom:calc(var(--mobile-nav) + env(safe-area-inset-bottom));font-size:16px}
 body.mobile-menu-open,body.mobile-filters-open{overflow:hidden}
 .wrap{width:calc(100% - (2 * var(--mobile-gutter)))}
 .btn{min-height:46px;padding:11px 17px;border-radius:5px;font-size:14px}
 h1,h2,h3{letter-spacing:-.035em}

 /* Mobile shell */
 .site-header{position:sticky!important;top:0;z-index:70;border-bottom:1px solid var(--line);background:var(--paper)}
 .site-header .wrap{width:calc(100% - 32px)!important;min-height:var(--mobile-header)!important;padding:0!important;gap:16px!important;align-items:center!important;flex-direction:row!important;flex-wrap:nowrap!important}
 .brand .brand-wordmark{width:128px!important;height:auto}
 .site-nav{display:none!important}
 @media(max-width:380px){.site-header .wrap{gap:8px!important}.brand .brand-wordmark{width:112px!important}.mobile-menu-button span{display:none}.mobile-menu-button{width:44px;justify-content:center}.mobile-header-cart,.mobile-header-account{width:40px;height:40px}}
 .mobile-menu-button{display:inline-flex;align-items:center;gap:7px;min-height:44px;margin-left:auto;padding:0;border:0;background:transparent;color:var(--ink);font-size:12px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
 .mobile-menu-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
 .mobile-bottom-nav{position:fixed;right:0;bottom:0;left:0;z-index:70;display:grid;grid-template-columns:repeat(5,1fr);height:calc(var(--mobile-nav) + env(safe-area-inset-bottom));padding:4px 6px env(safe-area-inset-bottom);border-top:1px solid var(--line);background:var(--paper)}
 .mobile-bottom-nav a,.mobile-bottom-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;min-height:54px;padding:3px;border:0;background:transparent;color:var(--muted);font:650 11px/1 var(--body);text-decoration:none}
 .mobile-bottom-nav svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
 .mobile-bottom-nav [aria-current=page]{color:var(--blue)}
 .mobile-bottom-nav [aria-current=page] svg{stroke-width:2.25}

 .mobile-menu[open]{height:100dvh}
 .mobile-menu-sheet{width:100%;height:100dvh;max-height:none;border:0;border-radius:0;box-shadow:none}
 .mobile-menu-sheet>header{min-height:68px;padding:0 20px}
 .mobile-menu-content{padding:20px 20px 24px}
 .mobile-menu-main{column-gap:16px}
 .mobile-menu-main a{min-height:60px;font-size:clamp(16px,5vw,19px)}
 .mobile-menu-secondary{column-gap:16px}
 .mobile-menu-footer{padding-right:20px;padding-left:20px}

 /* Shared page rhythm */
 .library-head{gap:18px}
 .library-head .btn{width:auto!important;align-self:flex-start;margin:0!important}
 .back-link{min-height:44px;padding:10px 0}
 .site-footer{padding:42px 0 34px!important}
 .editorial-footer{grid-template-columns:1fr 1fr!important;gap:32px 24px!important;width:calc(100% - 40px)!important}
 .footer-brand,.footer-legal{grid-column:1/-1}
 .footer-brand .brand-wordmark{width:145px!important}

 /* Homepage */
 .concept-home{overflow:hidden}
 .brand-hero{display:block!important;min-height:100svh!important}
 .brand-hero-shade{background:linear-gradient(180deg,rgba(4,6,10,.58) 0%,rgba(4,6,10,.25) 38%,rgba(4,6,10,.4) 70%,rgba(4,6,10,.86) 100%)}
 .brand-hero-copy{top:50%;right:16px;bottom:auto;left:16px;width:auto;transform:translateY(-48%)}
 .brand-hero h1{max-width:9ch;white-space:normal;font-size:clamp(4rem,18vw,6.2rem);line-height:.78;letter-spacing:-.05em}
 .brand-hero-promise{max-width:27ch;margin:24px auto 0;font-size:clamp(1.28rem,5.7vw,1.5rem);line-height:1.22}
 .brand-hero-actions{flex-direction:row;align-items:center;justify-content:center;gap:20px;margin-top:24px}
 .brand-hero-actions a:first-child{padding:12px 14px}
 .brand-hero-video-meta{right:16px;bottom:14px;left:16px;gap:10px;font-size:9px;line-height:1.35}
 .brand-hero-video-meta a{max-width:72%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .brand-hero-actions a:last-child,.section-head>a{display:inline-flex;min-height:44px;align-items:center}
 /* Search and filters: no sideways-scrolling form controls. */
 .catalog-search{top:var(--mobile-header);z-index:80;margin:0 -16px;padding:9px 16px 10px!important;background:var(--paper)}
 .catalog-search>label{margin-bottom:4px;font-size:11px;line-height:1.25}
 .search-line{grid-template-columns:minmax(0,1fr) auto!important;gap:6px}
 .search-line input{height:46px!important;padding:8px 11px!important;font-size:16px!important}
 .search-line .btn{min-width:62px!important;height:46px!important;padding:8px 11px!important}
 .mobile-filter-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:44px;margin-top:7px;padding:8px 0;border:0;border-top:1px solid var(--line);background:transparent;color:var(--ink);font-size:13px;font-weight:700}
 .mobile-filter-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
 .mobile-filter-toggle .mobile-filter-label{display:flex;align-items:center;gap:6px}
 .mobile-filter-toggle .mobile-filter-count{display:inline-grid;place-items:center;min-width:21px;height:21px;margin-left:6px;border-radius:50%;background:var(--blue-action,var(--blue));color:#fff;font-size:10px}
 .catalog-filters,.yoyo-filters{position:fixed;right:0;bottom:0;left:0;z-index:92;display:block!important;max-height:82dvh;margin:0!important;padding:0 18px calc(18px + env(safe-area-inset-bottom))!important;overflow:auto!important;border-radius:18px 18px 0 0;background:var(--paper);transform:translateY(110%);transition:transform .25s cubic-bezier(.2,.8,.2,1)}
 .catalog-filters.is-open,.yoyo-filters.is-open{transform:none}
 .catalog-filters label,.yoyo-filters label{display:block!important;width:100%;margin:0 0 13px;font-size:12px!important}
 .catalog-filters select,.yoyo-filters select{width:100%;height:48px!important;margin-top:4px;padding:8px 10px}
 .mobile-filter-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;min-height:62px;margin-bottom:14px;border-bottom:1px solid var(--line);background:var(--paper)}
 .mobile-filter-head strong{font:500 23px/1 var(--display);letter-spacing:-.035em}
 .mobile-filter-head button{min-width:44px;min-height:44px;border:0;background:transparent;color:var(--blue);font-size:13px;font-weight:700}
 .mobile-filter-done{display:block;width:100%;min-height:48px;margin-top:4px;border:0;background:var(--blue-action,var(--blue));color:#fff;font-weight:700}
 .mobile-filter-scrim{position:fixed;inset:0;z-index:91;display:block;width:100%;height:100%;padding:0;border:0;background:rgba(16,17,20,.45)}
 .catalog-summary{min-height:22px;margin-top:3px!important}.catalog-summary span{display:none!important}.catalog-summary strong{font-size:12px}
 .catalog-row{grid-template-columns:1fr!important;gap:10px;padding:16px 0}.catalog-row h2{font-size:18px}.catalog-row p{font-size:12px}
 .catalog-more-trigger{margin-bottom:36px}
 .saved-tricks{padding-top:30px}

 /* Competition and gear results */
 .competition-featured{gap:16px;margin-bottom:18px;padding:17px 0}
 .competition-featured>div:first-child strong{font-size:24px}
 .competition-featured>div:first-child small{font-size:12px}.competition-collection-actions{gap:6px}.competition-collection-actions .btn{font-size:12px}
 .competition-grid{grid-template-columns:1fr;gap:26px;padding-top:26px}.competition-card-copy{padding-top:10px}.competition-card-copy h2{font-size:19px}
 .competition-archive-note{grid-template-columns:1fr;gap:14px;margin-bottom:40px;padding:24px 0}.competition-archive-note h2{grid-row:auto;font-size:28px}
 .competition-detail{padding-top:4px}.competition-detail-head{padding:12px 0 24px}.competition-detail-head h1{font-size:42px}.competition-study-guide{grid-template-columns:1fr;gap:24px;padding:28px 0}.competition-study-guide h2{font-size:34px}
 .yoyo-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:26px 12px;padding-top:26px}.yoyo-card-body{padding-top:10px}.yoyo-card h2{font-size:16px}.yoyo-brand{font-size:10px}.yoyo-facts{min-height:0;margin:5px 0 10px;font-size:11px}.yoyo-card-foot{display:block;padding-top:8px;font-size:11px}.yoyo-card-foot strong{display:block;margin-top:5px;font-size:13px}.stock{min-height:24px;padding:2px 6px;font-size:10px}.catalog-credit{font-size:11px}

 /* Trick reading puts the video and the move list first. */
 .editorial-reader{padding-top:4px!important}
 .editorial-trick-head{display:block;padding:10px 0 24px}
 .editorial-trick-head .editorial-breadcrumb{font-size:12px}
 .editorial-trick-head h1{max-width:100%;margin-top:8px;font-size:clamp(3rem,15vw,4rem);line-height:.88;letter-spacing:-.045em;overflow-wrap:anywhere}
 .editorial-trick-meta{gap:7px 12px;margin-top:14px;padding:0;font-size:10px}
 .editorial-trick-head>p:last-child{margin-top:14px;font-size:15px;line-height:1.5}
 .editorial-reader .trick-sheet{padding:25px 0 42px}.reader-controls{display:grid;grid-template-columns:1fr;margin-bottom:8px}.reader-choice{display:grid;grid-template-columns:1fr 1fr;width:100%}.reader-choice legend{grid-column:1/-1}.trick-sheet .reader-choice label{justify-content:center;padding:7px 8px;font-size:13px}.trick-sheet .explanation-toggle{margin:0}.sheet-body{gap:10px}.notation-key{padding:9px 12px!important}.notation-key summary{font-size:15px}.trick-step{padding:7px 0}.trick-step h2{align-items:flex-start;font-size:15px!important}.trick-step .step-explanation{margin-left:30px;font-size:13px}
 .source-head{padding:18px 0 24px}.source-head h1{margin:16px 0 12px;font-size:42px}.source-notice{padding:20px 0}

 /* Accounts, pricing, community, editorial, and creator tools. */
 .auth-page{padding:30px 0 48px}.auth-intro{gap:18px;padding-bottom:26px}.auth-intro h1{max-width:100%;font-size:clamp(2.75rem,14vw,3.85rem);line-height:.9;letter-spacing:-.045em;white-space:normal;overflow-wrap:normal}.auth-intro>div{font-size:15px}.auth-signup .signup-layout{display:flex!important;flex-direction:column}.auth-signup .signin-panel{order:-1}.signup-plan,.signup-plan.is-pro{padding:22px 0}.signup-plan.is-pro{margin:0 -16px;padding:24px 16px}.signup-plan h2 strong{font-size:2.6rem}.signup-plan ul{margin-top:20px}.signup-plan li{margin:9px 0;font-size:14px}.auth-panel.signin-panel{padding:26px 0}.price-plan{padding:24px 0}.price-plan.pro-plan{margin:0 -16px;padding:24px 16px}
 .culture-head,.community-hero,.designer-head{gap:13px;padding:30px 0 26px}.culture-head h1,.community-hero h1,.designer-head h1{font-size:clamp(2.9rem,14vw,3.7rem);line-height:.9}.culture-head>p:last-child,.community-hero>p:last-child,.designer-head>p:last-child{font-size:15px}.scene-feed-tools{top:var(--mobile-header)}.scene-embed{min-height:430px}.scene-embed iframe{height:620px}.story-feature>div{padding:26px 0}.story-feature h2{font-size:38px}.story-page{padding-top:10px}.story-page>header{padding:32px 0 28px}.story-page>header h1{font-size:48px}.story-page>header>div{font-size:17px}.story-page>section{padding:30px 0}.story-page>section h2{font-size:31px}.story-page>section p{font-size:16px;line-height:1.65}
 .forum-new{margin:28px 0;padding:20px 16px}.forum-feed{margin-top:38px}.forum-feed-head h2{font-size:32px}.forum-thread-row{padding:20px 0}.thread-head{padding:30px 0 24px}.thread-head h1{font-size:45px}.thread-post{padding:26px 0}.thread-post>p{font-size:17px}.reply-form{padding:20px 16px}.reviews-block{margin-top:42px;padding-top:34px}.reviews-head h2{font-size:34px}.review-form{padding:20px 16px}.review-score>strong{font-size:40px}
 .designer-layout{padding:28px 0 44px}.designer-spec-strip{font-size:11px}.designer-spec-strip strong{font-size:16px}.designer-controls>h2{font-size:28px}
 .creator-page,.creator-index{padding-top:10px}.creator-hero{padding-bottom:32px}.creator-copy h1{font-size:48px}.creator-feature{padding:32px 0}.creator-video-grid{gap:28px}.creator-video-card .scene-embed,.creator-video-grid .scene-embed{min-height:430px}
}

@media(max-width:350px){
 .brand-hero h1{font-size:3.55rem}.brand-hero-actions{align-items:center;flex-direction:column;gap:4px;margin-top:16px}
 .yoyo-grid{grid-template-columns:1fr!important}
}

@media(min-width:1051px){.mobile-menu-button,.mobile-bottom-nav,.mobile-menu{display:none!important}}
@media(min-width:761px) and (max-width:1050px){.mobile-bottom-nav{display:none!important}.mobile-menu:not([open]){display:none}}
@media(prefers-reduced-motion:reduce){.catalog-filters,.yoyo-filters{transition:none}}
