/* Mobile chapter layouts. Artwork stays original; only its container adapts. */
.motion-viewport{position:fixed;inset:0 auto auto 0;width:0;height:100vh;height:100svh;visibility:hidden;pointer-events:none;contain:strict}
#plans .plan-card-billing{display:none}
.mobile-list-toggle{display:none}
@media(max-width:900px){
 :root{--section-title-size:clamp(1.875rem,6.6vw,2.625rem);--subheading-size:clamp(1.375rem,4.8vw,1.75rem);--section-space:clamp(32px,6vw,48px);--page-gutter:clamp(16px,4.3vw,28px);--header-height:65px;--section-content-gap:24px;--section-group-gap:32px}
 html{scroll-padding-top:84px}
 .site-header{backdrop-filter:none;background:#0b1117fa}
 .header-inner{height:auto;min-height:64px;gap:10px;padding-block:8px}
 #main-nav{top:calc(var(--header-height) - 1px);max-height:calc(100svh - var(--header-height));overflow-y:auto;overscroll-behavior:contain;padding:12px var(--page-gutter) max(20px,env(safe-area-inset-bottom))}
 .site-header .brand{min-width:0}
 .site-header .brand-name{overflow-wrap:anywhere}
 .site-header .header-cta{min-height:44px}
 .site-header .header-cta{flex-shrink:0;margin-left:auto}
 .section h2,.community-copy h2{font-size:var(--section-title-size);line-height:1.13;text-wrap:pretty;overflow-wrap:break-word}
 .section-kicker{gap:10px}
 .section .section-intro,.section .heading-note{line-height:1.6}
 .section .eyebrow,.section-kicker>.eyebrow{font-size:.75rem;line-height:1.5}
 .section-heading{display:block}
 .section-heading .heading-note{font-size:1rem;padding:0;margin:16px 0 0;max-width:none}
 .section-heading .heading-note br{display:none}
 .button{max-width:100%;white-space:normal;line-height:1.4;min-height:48px}
 .button>span[aria-hidden]{flex:none}
 .room-hero--original>.room-frame{border-radius:0}
 .room-hero--original>.room-mobile-navigation{width:calc(100% - 2 * var(--page-gutter));gap:8px;justify-content:center}
 .room-hero--original>.room-introduction{padding-inline:var(--page-gutter)}
 .room-purchase-actions{max-width:100%}

 /* Keep every chapter visible while the scene is pinned to the phone viewport. */
 #inside.club-scroll-enabled .club-scroll-pin{padding-block:8px 12px}
 #inside.club-scroll-enabled .section-heading{margin-bottom:10px}
 #inside.club-scroll-enabled .section-heading .eyebrow{margin-bottom:4px}
 #inside.club-scroll-enabled .section-heading h2{font-size:clamp(1.25rem,5.2vw,1.75rem);line-height:1.12}
 .club-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;overflow:visible;border:0;padding:0 0 3px}
 .club-tab,.club-tab:last-child{grid-column:auto;min-width:0;font-size:.875rem;gap:6px;min-height:44px;padding:7px 9px;border:1px solid #344450;border-radius:8px;line-height:1.2;white-space:normal;overflow:hidden}
 .club-tab>span{position:relative;z-index:1}
 .club-tab:before{content:'';position:absolute;inset:0;background:var(--lime);opacity:.16;transform:scaleX(var(--club-fill,0));transform-origin:left center;pointer-events:none}
 .club-tab:after{display:block;inset:auto 8px -1px;height:3px;background:var(--lime)}
 .club-tab[aria-selected=true]{border-color:var(--lime);background:#19251c}
 .club-tab[aria-selected=true]:before{opacity:.24}
 .club-tab[aria-selected=true]:after{background:var(--lime)}
 .club-tab-index{font-size:.75rem}
 #inside.club-scroll-enabled .club-tab{min-height:44px;padding:8px 12px}
 #club-panels{touch-action:pan-y pinch-zoom}
 .club-stage{display:flex;flex-direction:column;padding-bottom:18px}
 .club-stage .club-panels{margin:0;order:0}
 .club-stage .club-navigation{order:1;position:static;display:flex;align-items:center;justify-content:space-between;gap:22px;pointer-events:auto;padding:0;margin-top:18px}
 .club-stage .club-navigation button{position:static;transform:none;inset:auto;width:44px;height:44px}
 #inside.club-scroll-enabled .club-stage{padding-bottom:0}
 #inside.club-scroll-enabled .club-stage .club-navigation{margin-top:6px}
 #inside.club-scroll-enabled:not(.club-scroll-static) .club-stage .club-navigation{display:none}
 .club-panel{grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr;gap:8px;padding:20px 0 0;min-height:0}
 #inside.club-scroll-enabled .club-panel{padding-top:10px;gap:6px}
 #inside.club-scroll-enabled .club-object{height:var(--club-media-height,186px)}
 #inside.club-scroll-enabled .club-photo-frame{max-width:min(100%,calc(var(--club-media-height,22svh) * 1.6))}
 .club-object{height:clamp(170px,44vw,250px);aspect-ratio:auto;max-width:380px}
 .club-object img{height:100%;width:100%;max-width:none}
 .club-object figcaption{inset:auto 0 -8px;font-size:.75rem}
 .club-panel-copy{padding:12px 0 0;max-width:none}
 #inside.club-scroll-enabled .club-panel-copy{padding-top:6px}
 .club-panel-copy h3{font-size:clamp(1.75rem,6.4vw,2.25rem);margin:10px 0 14px;line-height:1.15}
 .club-description{font-size:1rem;line-height:1.6}
 .club-detail{font-size:.875rem;line-height:1.6;margin-top:14px}
 .club-panel-copy .text-link{margin-top:14px}
 #inside.club-scroll-enabled .club-panel-copy h3{margin:4px 0 8px}
 #inside.club-scroll-enabled .club-description{line-height:1.45}
 #inside.club-scroll-enabled .club-detail{margin-top:6px;line-height:1.45}
 #inside.club-scroll-enabled .club-panel-copy .text-link{margin-top:6px}
 .club-files{height:clamp(170px,44vw,250px);aspect-ratio:auto;padding:0;justify-content:center}
 .club-files>div{padding:12px 0}
 .club-files strong{font-size:1.75rem}
 #inside.club-scroll-enabled .club-files{height:auto;min-height:var(--club-media-height,140px);padding:0;aspect-ratio:auto;display:flex;flex-direction:column;justify-content:center}
 #inside.club-scroll-enabled .club-files>div{padding:4px 0}
 #inside.club-scroll-enabled .club-files strong{font-size:1.5rem;line-height:1.2}

 .audience-cards article{grid-template-columns:112px minmax(0,1fr);gap:16px;padding:24px 0}
 .audience-cards h3{font-size:var(--subheading-size)}
 .audience-cards p{font-size:1rem;line-height:1.6}
 .community-scene{gap:24px}
 .community-feature .community-caption h3{font-size:var(--subheading-size)}
 .community-stories{gap:28px;grid-auto-rows:auto}
 .community-story{grid-template-columns:minmax(0,36%) minmax(0,1fr);gap:18px;align-items:center}
 .community-story .community-media{aspect-ratio:3/2;min-height:0}
 .community-story .community-caption{padding:0}
 .community-story .community-caption h3{font-size:1.375rem}
 .community-story .community-caption p{font-size:1rem;line-height:1.5}
 .community-placeholder{overflow-wrap:anywhere}

 /* Heading and conversation pin together; terms remain in natural flow below. */
 #mentor{--mentor-inset:0;margin-block:var(--section-space)}
 #mentor .mentor-screen{padding:0}
 #mentor.mentor-pinned{height:auto}
 #mentor.mentor-pinned .mentor-pin{position:static}
 #mentor.mentor-pinned .mentor-scroll-stage{height:calc(var(--mentor-panel-height) + var(--mentor-runway))}
 #mentor.mentor-pinned .mentor-mobile-pin{position:sticky;top:var(--mentor-pin-top);background:var(--bg)}
 #mentor.mentor-interactive #mentor-title{font-size:clamp(1.375rem,5.4vw,1.75rem);line-height:1.14;margin:0 0 12px}
 #mentor.mentor-interactive .mentor-workflow{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;min-width:0;background:var(--bg);padding:8px 0}
 #mentor.mentor-interactive .mentor-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
 #mentor.mentor-interactive .mentor-action{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:68px;padding:8px;border:1px solid #293b49;border-radius:10px}
 #mentor.mentor-interactive .mentor-action-number{font-size:.75rem;line-height:1;padding:0 4px}
 #mentor.mentor-interactive .mentor-action strong{font-size:.875rem;line-height:1.2;letter-spacing:0}
 #mentor.mentor-interactive .mentor-action-description{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%)}
 #mentor.mentor-interactive .mentor-action[aria-pressed=true]{border-color:#769d24;background:#243814}
 #mentor.mentor-interactive .mentor-examples{padding:12px;border-radius:12px}
 #mentor.mentor-interactive .mentor-example-heading{font-size:.875rem;letter-spacing:0;margin-bottom:12px;gap:10px}
 #mentor.mentor-interactive .mentor-scene{padding:0;border:0;background:transparent}
 #mentor.mentor-interactive .mentor-message-row{gap:6px}
 #mentor.mentor-interactive .mentor-avatar{width:30px;height:30px;flex-basis:30px}
 #mentor.mentor-interactive .mentor-message{max-width:calc(100% - 36px);padding:10px 12px;font-size:1rem;line-height:1.35}
 #mentor.mentor-interactive .mentor-message-author,#mentor.mentor-interactive .mentor-message-file{font-size:.875rem}
 #mentor.mentor-interactive .mentor-message p{margin-top:4px}
 #mentor.mentor-interactive .mentor-message-file{margin-top:6px;padding-block:3px}
 #mentor.mentor-interactive .mentor-messages{gap:10px}
 #mentor.mentor-interactive .mentor-message-plan{font-size:1rem;line-height:1.35;margin-top:8px;padding-left:0}
 #mentor.mentor-interactive .mentor-message-plan li+li{margin-top:6px}
 #mentor.mentor-interactive .mentor-outcome{font-size:.875rem;line-height:1.35;margin-top:10px}
 #mentor .mentor-footer{margin-top:24px;padding-top:20px}
 #mentor .mentor-terms{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
 #mentor .mentor-join{min-width:0}
 #mentor .mentor-join>.button{flex:1;justify-content:space-between;font-size:.875rem}
 #mentor .mentor-join>img{width:40px;height:40px}
 /* Leave breathing room after the curator CTA without a chapter divider. */
 #mentor .mentor-footer{padding-bottom:32px}
 main>#opportunities>.section{border-top:0;position:relative}
 main>#opportunities>.section:before{content:none}

 /* Each step has a reserved place: the completed route stays readable. */
 .opportunity-route{padding-top:0;margin-top:32px}
 .opportunity-route-pin{padding-block:12px;background:var(--bg)}
 .opportunity-route-heading{margin-bottom:16px}
 .opportunity-route-steps{grid-template-columns:minmax(0,1fr);gap:14px}
 .opportunity-route-steps li{position:relative;padding:12px 0 0 34px}
 .opportunity-route-steps li>span{position:absolute;left:0;top:14px;margin:0;font-size:.875rem}
 .opportunity-route-steps h3{font-size:1.375rem;line-height:1.2;margin-bottom:5px}
 .opportunity-route-steps p{font-size:1rem;line-height:1.4}
 .opportunity-route.route-pinned{height:calc(var(--route-panel-height) + var(--route-runway))}
 .route-pinned .opportunity-route-pin{position:sticky;top:var(--route-pin-top)}
 .route-pinned .opportunity-route-steps>li>.context-route-line{display:block;transform:scaleX(var(--route-progress,0));transform-origin:left center}
 .opportunity-feedback{grid-template-columns:minmax(0,1fr);gap:18px;padding:22px 18px}
 .opportunity-feedback h3{font-size:var(--subheading-size)}
 .opportunity-feedback p{font-size:1rem;line-height:1.6}
 .status-list>span{line-height:1.5;font-size:.875rem}
 .opportunity-access-note{overflow-wrap:break-word}

 .nest-intro{grid-template-columns:minmax(0,1fr);gap:18px}
 .nest-intro .bio-lead{font-size:1.5rem;line-height:1.35}
 .nest-intro>p:not(.bio-lead){font-size:1rem;line-height:1.65}
 .nest-discography #track-list{display:flex;flex-direction:column;grid-template-columns:none;grid-auto-flow:row;gap:12px;overflow:visible;width:100%;padding:0;scroll-snap-type:none}
 .nest-discography .inline-track{width:100%;min-width:0;min-height:116px;padding:16px;scroll-snap-align:none;border-radius:12px}
 .nest-discography .track{grid-template-columns:44px minmax(0,1fr);padding:0;gap:8px 12px;min-width:0;min-height:0}
 .nest-discography .track-info{min-width:0;gap:10px}
 .nest-discography .track strong{font-size:1.375rem}
 .nest-discography .track small{font-size:.75rem}
 .nest-credit-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));columns:auto;gap:24px 16px;align-items:start;scroll-margin-top:84px}
 .nest-credit-column{display:contents}
 .nest-credit-group{min-width:0;font-size:.875rem;line-height:1.4;margin:0}
 .nest-credit-group dt{margin-bottom:8px}
 .nest-credit-group dd{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
 .nest-credit-song{align-items:center;gap:7px;min-height:30px;font-size:.875rem;line-height:1.4}
 .nest-credit-cover{width:26px;height:26px;flex-basis:26px}
 .results-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px;align-items:start;scroll-margin-top:84px}
 .result-card{padding-top:16px}
 .result-card h3{font-size:clamp(1rem,4.4vw,1.25rem);line-height:1.25;letter-spacing:-.02em}
 .result-track{display:grid;grid-template-columns:30px minmax(0,1fr);gap:8px;padding:12px 0;align-items:start}
 .result-cover{width:30px;height:30px}
 .result-track-copy strong{font-size:.875rem;line-height:1.35}
 .result-track-copy>span{font-size:.75rem;line-height:1.4}
 .result-track-open{display:none}
 .mobile-list-toggle{display:flex;align-items:center;justify-content:center;min-height:48px;width:100%;margin-top:24px;padding:12px 16px;border:1px solid #526578;border-radius:8px;background:#111b26;color:var(--text);font-size:.875rem;line-height:1.4;cursor:pointer}
 .mobile-list-toggle[hidden]{display:none}

 #plans .plans-screen{gap:20px}
 #plans .plans-heading{gap:12px}
 #plans .plans-heading>p:not(.eyebrow){font-size:.875rem;line-height:1.6}
 #plans .billing-control button{min-height:44px}
 #plans .plan-tools{display:none}
 #plans .plan-cards{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;padding:0;overflow:visible;scroll-snap-type:none;align-items:start}
 #plans .plan-card,#plans .plan-card:first-child,#plans .plan-card:last-child{width:100%;grid-template-rows:repeat(5,auto);gap:14px;padding:18px;scroll-snap-align:none}
 #plans .plan-card .plan-card-billing{display:flex;width:100%;justify-self:stretch;gap:4px;padding:4px;margin:0 0 4px}
 #plans .plan-card-billing button{flex:1;min-width:0;justify-content:center;min-height:44px;padding:8px 10px;font-size:.875rem;white-space:nowrap}
 #plans .plan-card-billing button>span{padding:2px 4px}
 #plans .scroll-carousel-controls{display:none!important}
 #plans .plan-card-header{min-height:0;grid-template-columns:minmax(0,1fr) 56px}
 #plans .plan-name{font-size:1.5rem;line-height:1.15}
 #plans .plan-mascot-stage{height:56px}
 #plans .plan-mascot-viewport{width:56px;height:56px}
 #plans .plan-card>.button{min-height:48px}
 #plans .plan-contents{gap:10px}
 #plans .plan-benefit-panel{padding:10px}
 #plans .plan-benefit-heading{flex-wrap:wrap;gap:6px}
 #plans .plan-benefit-heading h4{font-size:1rem}
 #plans .plan-features{gap:7px}
 #plans .plan-features li{font-size:1rem;line-height:1.4;flex-wrap:wrap;gap:4px 8px}
 #plans .plan-features li>span{flex:1 1 130px}
 #plans .plan-value{font-size:.75rem}
 #plans .plan-feature-caption{font-size:.875rem;line-height:1.5}
 #plans .comparison summary{min-height:48px;font-size:.875rem}
 #plans .subscription-note{align-items:flex-start;padding-top:12px}
 #plans .subscription-note p{font-size:.875rem;line-height:1.5}
 .table-scroll{max-width:100%;overscroll-behavior-x:contain}
 .onboarding-grid{grid-template-columns:minmax(0,1fr);gap:0}
 .onboarding-grid article{position:relative;padding:22px 0 24px 36px}
 .onboarding-grid .step-number{position:absolute;left:0;top:26px;font-size:.875rem}
 .onboarding-grid h3{font-size:1.375rem;min-height:0;margin:0}
 .onboarding-grid p{margin-top:10px;font-size:1rem;line-height:1.6}
 .faq-section{grid-template-columns:minmax(0,1fr);gap:24px}
 .faq-list summary{font-size:1.25rem;line-height:1.35;padding:20px 0;gap:16px}
 .faq-list details>p{font-size:1rem;line-height:1.65;padding-right:0}
 .closing-surface{padding-inline:0;min-width:0}
 .closing-surface p:not(.eyebrow){font-size:1rem;line-height:1.6}
 .closing-surface .closing-note{font-size:.875rem!important}
 .closing-action{flex-wrap:wrap;gap:16px}
 .closing-action .button{font-size:.875rem;min-height:48px}
 .site-footer{font-size:.875rem;line-height:1.5;overflow-wrap:anywhere}
 dialog{max-height:calc(100svh - 24px);overflow-y:auto;overscroll-behavior:contain}
 .archive-inline-controls button{width:44px;height:44px}
 .archive-inline-controls input{height:44px}
}
@media(max-width:600px){
 .club-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
 .club-tab:last-child{grid-column:1 / -1}
 .nest-credit-list,.results-grid{grid-template-columns:minmax(0,1fr)}
 .community-story{grid-template-columns:minmax(0,1fr);gap:12px}
 .community-story .community-media{aspect-ratio:3/2;width:100%}
 .community-story .community-caption h3{font-size:1.5rem}
 .community-story .community-placeholder{min-height:180px}
 .community-action{margin-top:4px}
 .connection-card{flex-basis:96%}
 .nest-archive-carousel{--archive-height:clamp(250px,48svh,370px)}
 .nest-memory{flex-basis:94%}
 #mentor .mentor-terms{grid-template-columns:minmax(0,1fr)}
 .site-footer{grid-template-columns:minmax(0,1fr)}
 .site-footer>span,.site-footer>a:last-child{text-align:left}
}
@media(min-width:741px) and (max-width:900px){
 .audience-character{grid-column:1;grid-row:1 / 4}
 .audience-cards h3{grid-column:2;grid-row:1;align-self:end}
 .audience-cards p{grid-column:2;grid-row:2;align-self:start}
 .audience-cards .text-link{grid-column:2;grid-row:3}
}
@media(max-width:360px){
 .header-inner{gap:8px}
 .site-header .brand-name{max-width:122px;font-size:13px;line-height:1.1;white-space:normal}
 .site-header .header-cta{padding-inline:8px}
 #mentor.mentor-interactive .mentor-examples{padding:10px}
 #mentor.mentor-interactive .mentor-avatar{width:26px;height:26px;flex-basis:26px}
 #mentor.mentor-interactive .mentor-message{max-width:calc(100% - 32px);padding:8px 10px}
 #mentor.mentor-interactive .mentor-action{padding:7px 6px}
 #plans .plan-card,#plans .plan-card:first-child,#plans .plan-card:last-child{padding:12px}
 #plans .plan-card-header{grid-template-columns:minmax(0,1fr) 44px}
 #plans .plan-name{font-size:1.25rem}
 #plans .plan-mascot-viewport{width:44px;height:44px}
 .audience-cards article{grid-template-columns:92px minmax(0,1fr)}
}
@media print{
 .opportunity-route.route-pinned,#mentor.mentor-pinned .mentor-scroll-stage{height:auto!important}
 .route-pinned .opportunity-route-pin,#mentor.mentor-pinned .mentor-mobile-pin{position:static!important}
 .opportunity-route-steps li{opacity:1!important;transform:none!important}
}
