/* Studio mobile composition. Other identities and desktop retain their layout. */
.hero-heading-mobile,.card-mobile-action,.mobile-menu-tools{display:none}
@media(max-width:680px){
 .sat-mobile-catalogue{--radius:12px}
 .sat-mobile-catalogue .container{width:calc(100% - 32px)}
 .sat-mobile-catalogue .header-inner{min-height:64px;gap:8px;flex-wrap:wrap;padding-block:8px}
 .sat-mobile-catalogue .brand{font-size:19px;letter-spacing:-.035em}
 .sat-mobile-catalogue .brand small{display:none}
 .sat-mobile-catalogue .brand-mark{font-size:27px}
 .sat-mobile-catalogue .brand-wrap{flex:1;min-width:0}
 .sat-mobile-catalogue .header-search{display:grid;order:2;width:44px;height:44px;padding:10px;flex-shrink:0}
 .sat-mobile-catalogue .menu-toggle{order:3;min-height:44px;background:transparent;border:0;padding:8px;font-size:12px}
 .sat-mobile-catalogue .header-cta{order:4}
 .sat-mobile-catalogue .primary-nav{padding:16px 20px;max-height:calc(100dvh - 80px);overflow:auto}
 .sat-mobile-catalogue .mobile-menu-tools:has([data-sat-toggle]){display:flex;justify-content:space-between;align-items:center;padding-top:16px;margin-top:12px;border-top:1px solid var(--line);font-size:13px}
 .sat-mobile-catalogue .home-introduction{border:0}
 .sat-mobile-catalogue .home-intro-layout{display:flex;flex-direction:column;gap:16px;padding-block:24px 0}
 .sat-mobile-catalogue .compact-hero{padding:0;width:100%;max-width:none}
 .sat-mobile-catalogue .compact-hero>.eyebrow,.sat-mobile-catalogue .compact-hero>p,.sat-mobile-catalogue .search-hint,.sat-mobile-catalogue .hero-browse{display:none}
 .sat-mobile-catalogue .hero-heading-full{display:none}
 .sat-mobile-catalogue .hero-heading-mobile{display:block}
 .sat-mobile-catalogue .compact-hero h1{font-size:30px;line-height:1.12;letter-spacing:-.045em;margin:0 0 18px;max-width:none;overflow-wrap:anywhere}
 .sat-mobile-catalogue .compact-search{max-width:none}
 .sat-mobile-catalogue .hero-search{border-radius:10px;padding:4px;box-shadow:none}
 .sat-mobile-catalogue .hero-search input{font-size:16px;padding:10px 8px}
 .sat-mobile-catalogue .hero-search .button{min-height:44px;padding-inline:14px;border-radius:7px;font-size:12px}
 .sat-mobile-catalogue .featured-review{display:grid;grid-template-columns:96px minmax(0,1fr);gap:14px;width:100%;border:0;border-radius:10px;padding:12px;background:var(--surface);box-shadow:none;min-height:0}
 .sat-mobile-catalogue .featured-image{position:relative;inset:auto;aspect-ratio:1;margin:0;width:96px;height:96px;border-radius:7px;background:var(--bg);align-self:center}
 .sat-mobile-catalogue .featured-image .game-cover{object-fit:contain}
 .sat-mobile-catalogue .featured-copy{position:static;padding:0;min-width:0;background:none;align-self:center}
 .sat-mobile-catalogue .featured-copy .eyebrow{font-size:9px;letter-spacing:.08em;margin-bottom:6px}
 .sat-mobile-catalogue .featured-provider,.sat-mobile-catalogue .featured-copy>p{display:none}
 .sat-mobile-catalogue .featured-copy h2{font-size:18px;line-height:1.3;margin:0;overflow-wrap:anywhere;letter-spacing:-.02em}
 .sat-mobile-catalogue .featured-copy .text-link{font-size:11px;min-height:36px;margin-top:4px}
 .sat-mobile-catalogue .home-section{padding-block:28px}
 .sat-mobile-catalogue .home-section+.home-section{border-top:0}
 .sat-mobile-catalogue .section-heading{margin-bottom:16px;gap:8px;align-items:baseline}
 .sat-mobile-catalogue .section-heading h2{font-size:23px;line-height:1.2;letter-spacing:-.035em}
 .sat-mobile-catalogue .section-heading>.text-link{font-size:11px;min-height:36px}
 .sat-mobile-catalogue .chips{gap:7px;flex-wrap:nowrap;overflow-x:auto;padding:2px 2px 8px;margin-bottom:16px;scrollbar-width:thin}
 .sat-mobile-catalogue .chips .chip{flex-shrink:0;min-height:40px;padding:8px 15px;font-size:12px;border-radius:20px}
 .sat-mobile-catalogue .game-grid{gap:16px 12px;align-items:start}
 .sat-mobile-catalogue .game-card{border:0;border-radius:12px;box-shadow:none;background:var(--surface);height:auto}
 .sat-mobile-catalogue .card-visual{margin:0;border-radius:12px 12px 0 0}
 .sat-mobile-catalogue .card-art{aspect-ratio:4/3;background:var(--bg)}
 .sat-mobile-catalogue .card-art>.game-cover{object-fit:contain;padding:6px}
 .sat-mobile-catalogue .card-body{padding:12px;display:flex;gap:0}
 .sat-mobile-catalogue .card-body h3{order:0;font-size:16px;line-height:1.3;letter-spacing:-.02em;margin:0 0 5px;padding:0;min-height:2.6em}
 .sat-mobile-catalogue .card-provider{order:1;font-size:10px;line-height:1.4;margin:0 0 12px;min-height:1.4em;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
 .sat-mobile-catalogue .card-meta,.sat-mobile-catalogue .card-mechanic{display:none}
 .sat-mobile-catalogue .card-actions{order:2;margin-top:0;border:0;padding:0}
 .sat-mobile-catalogue .has-mobile-primary .card-actions{display:none}
 .sat-mobile-catalogue .card-mobile-action{display:block;order:2;margin-top:auto}
 .sat-mobile-catalogue .card-mobile-action .button{width:100%;min-height:44px;padding:8px 6px;font-size:12px;border-radius:7px}
 .sat-mobile-catalogue .card-mobile-action .button.secondary{color:var(--text);border-color:var(--line);background:transparent}
 .sat-mobile-catalogue .score-pill{top:6px;right:6px;font-size:10px;border-radius:5px}
 .sat-mobile-catalogue .journal-grid,.sat-mobile-catalogue .journal-grid.sa-config-grid{grid-template-columns:minmax(0,1fr);gap:0}
 .sat-mobile-catalogue .journal-card,.sat-mobile-catalogue .journal-card.has-cover{display:grid;grid-template-columns:88px minmax(0,1fr);gap:16px;background:transparent;color:var(--text);border:0;border-bottom:1px solid var(--line);border-radius:0;padding:18px 0;isolation:auto}
 .sat-mobile-catalogue .journal-card.no-cover{grid-template-columns:minmax(0,1fr)}
 .sat-mobile-catalogue .journal-cover{grid-area:auto;aspect-ratio:1;width:88px;min-height:0;position:relative;z-index:auto;border-radius:7px}
 .sat-mobile-catalogue .journal-cover img{position:static;width:100%;height:100%}
 .sat-mobile-catalogue .journal-cover:after{display:none}
 .sat-mobile-catalogue .journal-body,.sat-mobile-catalogue .has-cover .journal-body{grid-area:auto;padding:0;background:transparent;align-self:start;pointer-events:auto}
 .sat-mobile-catalogue .journal-card h2,.sat-mobile-catalogue .journal-card h3{font:650 1.35em/1.35 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:18px;margin:0;letter-spacing:-.02em}
 .sat-mobile-catalogue .journal-body>p{display:none}
 .sat-mobile-catalogue .journal-meta{font-size:10px;margin-bottom:6px;color:var(--muted)}
 .sat-mobile-catalogue .journal-body>.text-link{color:var(--link);font-size:11px;min-height:36px;margin-top:6px}
 .sat-mobile-catalogue .provider-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .sat-mobile-catalogue .provider-card{background:transparent;border:1px solid var(--line);border-radius:9px;padding:12px 10px;min-height:70px;gap:8px}
 .sat-mobile-catalogue .provider-card b{font-size:11px;overflow-wrap:anywhere}
 .sat-mobile-catalogue .provider-logo{object-fit:contain;width:38px;height:30px;flex-shrink:0}
 .sat-mobile-catalogue .provider-arrow,.sat-mobile-catalogue #providers .section-heading>.muted{display:none}
 .sat-mobile-catalogue .site-footer{margin-top:16px}
 /* A manually selected horizontal component still needs enough width in a 2-col grid. */
 .sat-mobile-catalogue.sat-game-layout-compact .game-card{display:flex;gap:0;padding:0}
 .sat-mobile-catalogue.sat-game-layout-compact .card-visual{width:100%}
 .sat-mobile-catalogue.sat-mobile-cols-1 .game-card{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:center}
 .sat-mobile-catalogue.sat-mobile-cols-1 .card-visual{border-radius:8px;margin-left:10px}
 .sat-mobile-catalogue.sat-mobile-cols-1 .card-body h3{min-height:0}
}
@media(max-width:680px){
 .sat-mobile-catalogue .featured-image{min-height:0}
 .sat-mobile-catalogue .card-provider{font-size:11px}
 .sat-mobile-catalogue .section-heading>.text-link{white-space:nowrap}
 .sat-mobile-catalogue .card-art{background:var(--surface)}
}
/* 1.33: wordmarks get a real display area, not an icon-sized slot. */
.provider-grid .provider-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;padding:22px 16px}
.provider-grid .provider-card .provider-logo{display:block;width:160px;max-width:100%;height:68px;object-fit:contain;flex:none;margin:0}
.provider-grid .provider-card .provider-monogram{width:64px;height:64px;display:grid;place-items:center;font-size:28px}
.provider-grid .provider-card .provider-arrow{display:none}
.provider-grid .provider-card>span:not(.provider-monogram){min-width:0;max-width:100%}
.provider-identity .provider-logo{width:220px;max-width:100%;height:100px;object-fit:contain;flex-shrink:0}
.player-name{min-width:0;overflow-wrap:anywhere}
@media(max-width:680px){
 .provider-grid .provider-card,.sat-mobile-catalogue .provider-grid .provider-card{padding:16px 12px;gap:10px;min-height:132px;flex-direction:column;align-items:center;text-align:center}
 .provider-grid .provider-card .provider-logo,.sat-mobile-catalogue .provider-grid .provider-card .provider-logo{width:100%;max-width:180px;height:64px;object-fit:contain;margin:0;flex:none}
 .provider-grid .provider-card b,.sat-mobile-catalogue .provider-grid .provider-card b{font-size:13px;line-height:1.35}
 .provider-grid .provider-card small{font-size:11px;margin-top:4px}
 .provider-identity{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
 .provider-identity .provider-logo{width:220px;height:90px;max-width:100%;object-fit:contain;object-position:left center}
 .provider-identity h1{font-size:32px;line-height:1.15;overflow-wrap:anywhere}
 .game-intro{display:flex;flex-direction:column;align-items:stretch;gap:22px;padding-top:4px}
 .game-intro .intro-cover{width:100%;max-width:440px;aspect-ratio:16/9;height:auto;min-height:0;margin:0 auto;box-shadow:none;border-radius:12px}
 .game-intro .intro-cover>.game-cover{width:100%;height:100%;object-fit:contain;padding:12px}
 .game-intro .intro-copy{width:100%;min-width:0}
 .game-intro .intro-copy h1{font-size:clamp(26px,7vw,32px);line-height:1.2;letter-spacing:-.03em;overflow-wrap:anywhere;margin:0 0 16px}
 .game-intro .intro-copy .lead,.game-intro .intro-stats,.game-intro .intro-actions,.game-intro .intro-copy>.fine-print{margin-left:0;margin-right:0}
 .game-intro .intro-copy .lead{padding-top:0;font-size:15px}
 .game-intro .intro-provider{font-size:13px;margin-bottom:18px}
 .game-intro .intro-stats{flex-wrap:wrap;gap:16px}
 .game-intro .intro-actions{flex-wrap:wrap}
 .player-toolbar{display:flex;flex-wrap:wrap;padding:14px;gap:10px;align-items:center}
 .player-name{flex:1 1 100%;font-size:14px;line-height:1.4;font-weight:650}
 .player-controls{width:100%;justify-content:flex-end;flex-wrap:wrap;gap:8px}
 .player-controls button,.player-controls a{min-height:44px;font-size:12px;padding:8px 12px}
 .player-controls a{max-width:none}
}
