@font-face{font-family:"TBG Outfit";font-style:normal;font-weight:900;font-display:swap;src:url("assets/tbg-outfit-black.ttf") format("truetype")}
/* Shared editorial direction: broad bold headlines, quiet readable controls. */
h1,h2,h3{font-family:"TBG Outfit","Arial Black",Arial,Helvetica,sans-serif;font-weight:900;letter-spacing:-.045em;text-wrap:balance}
.eyebrow{letter-spacing:.13em;font-size:13px;line-height:1.5}
.arcade-intro h1,.shared-cover h1{font-size:clamp(42px,5.6vw,76px);line-height:1.02}
.arcade-tile h3{letter-spacing:-.035em;line-height:1.12}
.arcade-tile p{line-height:1.45}
.arcade-library{align-items:stretch}
.arcade-tile{min-width:0}
.action-game{max-width:540px;margin:auto;text-align:left}
.action-instructions p{font-size:17px;line-height:1.45;margin:8px 0 18px}
.action-field{max-width:400px;margin:auto;border-radius:16px;overflow:hidden;background:var(--sage);border:1px solid #0f5b5830}
.action-field svg{display:block;width:100%;height:auto}
.action-controls{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin:16px 0}
.action-controls button{min-height:48px;flex:1;white-space:nowrap}
.action-game [role=status]{min-height:58px;margin:18px 0 0}
.action-instructions strong{font-size:22px}
.action-game .meta{line-height:1.5}
dialog{overscroll-behavior:contain}
@media(max-width:600px){.action-controls{gap:8px}.action-controls button{font-size:15px;padding:10px}.action-instructions p{font-size:16px}.arcade-stage:has(.action-game){padding:16px}.eyebrow{font-size:12px}.arcade-intro h1,.shared-cover h1{font-size:44px}}

/* Use the same broad headline family as the editable social masters. */
.culture-doors span,.around-grid h3,.host-invitation b{font-family:"TBG Outfit","Arial Black",Arial,Helvetica,sans-serif;letter-spacing:-.045em}
h1,h2,h3{overflow-wrap:break-word}
@media(max-width:600px){.entry-welcome h1{font-size:clamp(38px,10.5vw,60px)}.culture-doors span{font-size:clamp(15px,4.3vw,22px)}.game-head h1{font-size:clamp(32px,9vw,46px)}}

/* Approved showcase study: imagery, paper warmth and deliberate colour fields. */
.editorial-photo{position:relative;overflow:hidden;aspect-ratio:1.45;background:var(--cream);min-width:0}
.editorial-photo svg{display:block;width:100%;height:100%;position:absolute;inset:0}
.editorial-photo>span{position:absolute;bottom:8px;left:10px;background:#f5f0e5ed;color:#183c38;padding:3px 7px;font:12px Arial,sans-serif}
.around-opportunity{background:var(--cream)!important;color:var(--brick)!important;position:relative;overflow:hidden}
.around-opportunity>.editorial-photo{margin:-28px -28px 24px;aspect-ratio:1.7}
.around-opportunity h3{color:var(--brick)}
.around-work{background:var(--sage)!important;color:#153f3b!important;overflow:hidden}
.around-work>.preview-media{width:100%;min-width:0}
.around-work .editorial-photo{aspect-ratio:1.1}
.around-grid h3{line-height:1.04}
.culture-doors a{position:relative;overflow:hidden}
.culture-doors a:before{content:"";position:absolute;width:95px;height:95px;border-radius:50%;right:-58px;top:-45px;background:var(--sand);opacity:.4;pointer-events:none}
.entry-welcome{border-bottom:1px solid #8ca98e55;padding-bottom:32px}
@media(min-width:701px){.around-opportunity>.editorial-photo{margin:-32px -32px 24px}.around-work{display:flex;flex-direction:column;align-items:stretch}.around-work>.preview-media{flex:none}.around-work .editorial-photo{aspect-ratio:1.7}}
@media(max-width:700px){.around-opportunity>.editorial-photo{margin:-26px -26px 22px}.around-work>.preview-media{width:34%;flex:0 0 34%}.around-work .editorial-photo{aspect-ratio:.8}.around-work .editorial-photo>span{font-size:10px;left:4px;right:4px;bottom:4px;padding:3px}}
html[data-theme=dark] .around-opportunity{background:#ece3ce!important;color:#72271f!important}

.world-cover .editorial-photo{min-height:300px;align-self:stretch;border-radius:6px;aspect-ratio:1.25}
.world-cover{position:relative;overflow:hidden}
.world-cover>div:first-child{position:relative;z-index:1}
.world-cover:before{content:"";position:absolute;right:-70px;top:-100px;width:240px;height:240px;border-radius:50%;background:var(--sand);opacity:.35;pointer-events:none}
.quick-dialog h2{font-family:"TBG Outfit","Arial Black",Arial,Helvetica,sans-serif;font-size:clamp(28px,4vw,42px);line-height:1.08}
body{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23877755' opacity='.035' filter='url(%23n)' d='M0 0h160v160H0z'/%3E%3C/svg%3E")}
@media(max-width:700px){.world-cover .editorial-photo{width:100%;min-height:210px;aspect-ratio:1.65}}

@media(min-width:701px){.around-opportunity,.around-work{grid-column:span 6}.around-gathering{grid-column:span 7}.around-play{grid-column:span 5}.around-play{flex-direction:column;align-items:flex-start}.around-play .reaction-preview{width:120px}.around-play .reaction-preview i{height:32px}}
@media(max-width:700px){.around-grid>a{grid-column:1/-1}}
/* Keep fixed navigation clear of controls; press feedback must not change stacking. */
button:active,.btn:active{transform:none}
@media(max-width:700px){html{scroll-padding-bottom:110px}main button,main input,main textarea,main select{scroll-margin-bottom:110px}.mobile-nav{z-index:200}}

@media(min-width:701px){.around-work{justify-content:space-between}.around-work>div:last-child{padding:12px 0 8px}}
@media(min-width:701px){.around-work{justify-content:flex-start}.around-work .editorial-photo{aspect-ratio:1}.around-work>div:last-child{margin-top:20px}}
@media(min-width:701px){.around-work>.preview-media{height:360px!important;flex:0 0 360px}.around-work .editorial-photo{height:100%!important;aspect-ratio:auto}}

/* Rounded geometric display face; practical body and controls remain clean. */
h1,h2,h3,.culture-doors span,.host-invitation b{letter-spacing:-.035em}
.entry-welcome h1,.page-head h1,.game-head h1,.world-cover h1,.arcade-intro h1{letter-spacing:-.035em;word-spacing:.04em}
.culture-doors span,.around-grid h3,.section-top h2{letter-spacing:-.02em;word-spacing:.03em}
/* Comfortable supporting type across phone and desktop surfaces. */
.entry-welcome>div>p:not(.eyebrow){font-size:22px;line-height:1.5}
main .eyebrow,main .around-grid .eyebrow{font-size:14px!important;letter-spacing:.09em;line-height:1.5}
main .meta,main .source-note,main .sample-note,main .detail-context,main .listing-owner,main .board-note,main .board-caption,main small,dialog .meta,dialog small{font-size:15px!important;line-height:1.5}
.culture-doors small{font-size:15px!important;line-height:1.4}
main .arcade-tile p,main .around-grid p,main .activity-body p,main .listing-fact{font-size:17px!important;line-height:1.5}
main .link,main .text-btn,main .around-grid .link{font-size:16px!important}
.prototype-line,footer,footer a,.mobile-nav a{font-size:14px!important}
.editorial-photo>span,.around-work .editorial-photo>span,.visual-label,.concept-tag,.around-gathering figcaption{font-size:13px!important;line-height:1.4}
.weekly-score-mini span,.weekly-score-mini small{font-size:14px!important}
@media(max-width:700px){.entry-welcome>div>p:not(.eyebrow){font-size:20px}.culture-doors small{font-size:14px!important}.mobile-nav a{font-size:13px!important}.board-caption{max-width:130px}.quick-dialog{padding:24px!important}}
.around-opportunity strong span,.score-door small,.listing-owner,.source-details p{font-size:15px!important;line-height:1.5}
/* Owner-curated records reuse the established editorial presentation. */
.managed-content{margin:28px 0 40px}.managed-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.managed-card{display:block;border-radius:22px;overflow:hidden;background:var(--paper,#f5f0e5);color:inherit;border:1px solid #84978a;text-decoration:none}.managed-card>div{padding:22px}.managed-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.managed-card h3{font-size:30px;line-height:1.1;margin:12px 0}.managed-card p{font-size:17px;overflow-wrap:anywhere}.managed-card .meta{font-size:15px}a[hidden]{display:none!important}@media(max-width:700px){.managed-grid{grid-template-columns:1fr}.managed-card h3{font-size:28px}}
