/* v6.12.14 | lossless display variants; original masters preserved */
/* Prevent Safari flex/grid intrinsic sizing from compressing the actual game icon. */
.site-header .site-brand{display:inline-flex;align-items:center;min-width:0;max-width:100%;gap:11px}
.site-header .site-brand>img{display:block!important;flex:0 0 40px!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;aspect-ratio:1 / 1;object-fit:cover!important;border-radius:8px}
.site-header .site-brand .brand-wordmark{flex:0 1 auto;min-width:0}
.site-header .site-brand .brand-wordmark strong{letter-spacing:.09em}
/* The footer emblem is a fixed square; long brand copy must shrink instead of the emblem. */
.site-footer .footer-identity{min-width:0;align-items:flex-start}
.site-footer .footer-mark{flex:0 0 42px;width:42px;min-width:42px;height:42px}
.site-footer .footer-mark img{display:block;width:42px;height:42px;min-width:42px;max-width:42px;aspect-ratio:1/1;object-fit:contain}
.site-footer .brand-footer-copy{flex:1 1 0;min-width:0}
/* Title image has different proportions to previous typeset H1. Keep a readable fallback subtitle. */
.page-home .restored-first-hero .brand-home-title{margin:0 0 20px;max-width:100%;line-height:1.2}
.page-home .restored-first-hero .brand-home-logo{display:block;width:min(400px,100%);max-width:100%;height:auto;max-height:none;aspect-ratio:800/474;object-fit:contain;object-position:left center}
.page-home .restored-first-hero .brand-home-title small{margin:0 0 0 3px;font-size:11px;letter-spacing:.14em;color:#d5bea0;line-height:1.6}
.page-home .restored-first-hero .v4-hero-proclamation{letter-spacing:.09em}
/* Official studio mark is the heading itself; don't repeat the full name as a second large title. */
.brand-studio-showcase{padding:clamp(60px,7vw,100px) 0}
.brand-studio-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(25px,5vw,78px)}
.brand-studio-logo{width:100%;min-width:0}
.brand-studio-logo img{display:block;width:100%;height:auto;max-width:650px;max-height:none;object-fit:contain}
.brand-studio-content h2{font:500 clamp(26px,2.8vw,43px)/1.55 var(--serif,serif);letter-spacing:.06em;margin:8px 0 17px}
.brand-studio-content .eyebrow{color:#a6bfdf;letter-spacing:.16em;margin-bottom:9px}
.brand-studio-content p:not(.eyebrow){max-width:520px;line-height:2;letter-spacing:.018em}
.brand-studio-content small{font-size:11px;line-height:1.85;color:#9eafbd}
/* Cloud-white studio treatment: the backdrop belongs to the page, never to the logo pixels. */
.brand-studio-showcase.section-dark{position:relative;isolation:isolate;background-color:#fbfcff;background-image:var(--studio-scenery),radial-gradient(ellipse at 14% 35%,rgba(247,200,216,.2),transparent 50%),radial-gradient(ellipse at 76% 10%,rgba(167,216,255,.27),transparent 62%);background-size:100% 100%,auto,auto;background-repeat:no-repeat;border-block:1px solid #dbe6f2}
.brand-studio-showcase .brand-studio-content h2{color:#153f6c}
.brand-studio-showcase .brand-studio-content .eyebrow{color:#416b98}
.brand-studio-showcase .brand-studio-content p:not(.eyebrow){color:#405874}
.brand-studio-showcase .brand-studio-content small{color:#52647d}
.brand-studio-showcase .brand-studio-logo img{filter:none}
.site-footer .brand-footer-studio{display:flex!important;align-items:center;gap:10px;box-sizing:border-box;width:min(260px,100%);padding:0!important;border:0!important;background:transparent;box-shadow:none}
.site-footer .brand-footer-studio img{display:block;flex:0 0 56px;width:56px;height:56px;object-fit:contain;filter:none}
.site-footer .brand-footer-studio-copy{display:block;min-width:0}
.site-footer .brand-footer-studio-copy strong{display:block;font:500 17px/1.6 var(--serif,serif);color:#e2edfa;letter-spacing:.09em}
.site-footer .brand-footer-studio-copy small{display:block;margin:2px 0 0;font:500 9px/1.6 var(--sans,system-ui);color:#a7c2df;letter-spacing:.14em}
.site-footer .brand-footer-studio:focus-visible{outline:2px solid #a7d8ff;outline-offset:4px}
/* Floating mystery teaser must never cover hero controls; returns after hero in scroll mode. */
.page-home .v55-dock{opacity:0;pointer-events:none;transform:translateY(14px)}
.page-home.brand-hero-passed .v55-dock{opacity:1;pointer-events:auto;transform:none}
.page-home.brand-hero-passed .v55-dock:hover{transform:translateY(-2px)}
@media(max-width:700px){
 .site-header .site-brand{gap:10px}
 .site-header .site-brand>img{flex-basis:38px!important;width:38px!important;min-width:38px!important;max-width:38px!important;height:38px!important;min-height:38px!important}
 .site-header .site-brand .brand-wordmark strong{font-size:17px;letter-spacing:.07em}
 .site-header .site-brand .brand-wordmark small{font-size:8px;letter-spacing:.06em}
 .page-home .restored-first-hero .v4-hero-content{padding-top:clamp(218px,33svh,292px);padding-bottom:116px;min-height:0}
 .page-home .restored-first-hero .v4-hero-left{max-width:100%}
 .page-home .restored-first-hero .brand-home-title{margin:0 0 15px}
 .page-home .restored-first-hero .brand-home-logo{width:min(260px,90%);max-height:none;height:auto}
 .page-home .restored-first-hero .brand-home-title small{font-size:9px;letter-spacing:.08em;margin:0 0 0 2px}
 .page-home .restored-first-hero .v4-hero-proclamation{font-size:clamp(21px,5.6vw,27px);margin-bottom:10px;line-height:1.55}
 .page-home .restored-first-hero .v4-hero-copy{font-size:12px;line-height:1.8;margin-bottom:15px;max-width:100%}
 .page-home .restored-first-hero .v4-hero-actions{display:flex;align-items:center;gap:13px;flex-wrap:wrap}
 .page-home .restored-first-hero .v4-gold-button{min-width:0;padding-inline:17px}
 .page-home .restored-first-hero .v4-status-line{line-height:1.7}
 .brand-studio-showcase{padding:54px 0 65px}
 .brand-studio-layout{grid-template-columns:minmax(0,1fr);gap:19px}
 .brand-studio-logo{width:100%;max-width:485px;margin:0 auto}
 .brand-studio-logo img{max-width:100%;height:auto}
 .brand-studio-content{padding-top:0}
 .brand-studio-content h2{font-size:clamp(25px,7vw,34px);margin:10px 0 16px}
 .brand-studio-content .eyebrow{font-size:10px;margin:0}
 .brand-studio-content>p:not(.eyebrow){font-size:13px;line-height:2.05}
 .page-home.brand-hero-passed .v55-dock{left:12px;width:48px;min-width:48px;max-width:48px;justify-content:center;min-height:48px;gap:0;padding:5px}
 .page-home .v55-dock .v55-dock-label,.page-home .v55-dock .v55-dock-arrow{display:none}
 .page-home .v55-dock .v55-dock-seal{width:36px;height:36px}
}

@media(max-width:370px){
 .page-home .restored-first-hero .v4-hero-content{padding-top:clamp(204px,32svh,255px)}
 .page-home .restored-first-hero .brand-home-logo{width:min(235px,91%)}
 .site-header .site-brand .brand-wordmark strong{font-size:16px}
}
@media(prefers-reduced-motion:reduce){.page-home .v55-dock{transition:none!important}}

@media(min-width:701px) and (max-width:1100px){
 .page-home .restored-first-hero .v4-hero-content{width:calc(100% - 72px)!important;margin-inline:auto!important}
 .page-home .restored-first-hero .v4-hero-left{width:min(60%,540px);max-width:540px}
 .page-home .restored-first-hero .brand-home-logo{width:min(340px,100%)}
}

/* v6.12.15 | Footer brands and all five navigation groups share a clear grid. */
.footer-in-view .v55-dock{visibility:hidden!important;pointer-events:none!important}
.site-footer .footer-top{display:grid;grid-template-columns:280px minmax(0,1fr);align-items:start;gap:clamp(38px,5vw,80px);padding-bottom:36px}
.site-footer .footer-identity{display:flex;flex-direction:column;align-items:stretch;gap:24px;min-width:0}
.site-footer .footer-game-summary,.site-footer .footer-studio-summary{min-width:0}
.site-footer .footer-game-brand{display:flex;align-items:center;gap:13px}
.site-footer .footer-game-brand .brand-footer-copy>strong{font-size:23px;line-height:1.5}
.site-footer .footer-game-brand .brand-footer-copy>small{display:block;margin-top:4px;font-size:9px;line-height:1.7}
.site-footer .footer-manifesto{margin:17px 0 0;font-size:12px;line-height:1.95}
.site-footer .brand-footer-studio{width:100%;margin:0}
.site-footer .brand-footer-parent{margin:9px 0 0;font-size:11px;line-height:1.8}
.site-footer .footer-links{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;gap:20px}
.site-footer .footer-links>div{display:flex;flex-direction:column;min-width:0;gap:4px}
.site-footer .footer-links small{display:block;margin:0 0 11px;font-size:10px;line-height:1.8;letter-spacing:.08em}
.site-footer .footer-links a{display:block;width:fit-content;max-width:100%;font-size:12px;line-height:1.8;min-height:25px;padding:2px 0;overflow-wrap:anywhere}
.site-footer .footer-links a:focus-visible{outline:2px solid #c5a77c;outline-offset:4px}
@media(max-width:1100px){
 .site-footer .footer-top{grid-template-columns:minmax(0,1fr);gap:32px}
 .site-footer .footer-identity{display:grid;grid-template-columns:1fr 1fr;gap:32px}
 .site-footer .footer-studio-summary{align-self:center}
}
@media(max-width:760px){
 .site-footer .footer-top{gap:30px;padding-bottom:28px}
 .site-footer .footer-identity{display:flex;gap:22px}
 .site-footer .footer-studio-summary{align-self:stretch}
 .site-footer .footer-game-brand .brand-footer-copy>strong{font-size:21px}
 .site-footer .footer-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 20px}
 .site-footer .footer-links small{margin-bottom:7px}
 .site-footer .footer-links a{min-height:30px}
 .site-footer .footer-links .footer-about-links{grid-column:1/-1;display:flex;flex-direction:row;flex-wrap:wrap;gap:4px 20px;padding:20px 60px 0 0;border-top:1px solid rgba(197,167,124,.16)}
 .site-footer .footer-about-links small{flex:0 0 100%;margin-bottom:7px}
}

/* v6.12.16 | Compact mobile footer with accessible expandable navigation. */
.site-footer .footer-nav-toggle{display:none}
.site-footer .footer-nav-items{display:flex;flex-direction:column;gap:4px}
@media(max-width:760px){
 .site-footer{padding-top:28px}
 .site-footer .footer-top,.site-footer .footer-company,.site-footer .footer-bottom{width:min(calc(100% - 36px),560px)}
 .site-footer .footer-top{gap:20px;padding-bottom:24px}
 .site-footer .footer-identity{gap:14px}
 .site-footer .footer-manifesto{margin-top:11px;font-size:11px;line-height:1.85}
 .site-footer .footer-studio-summary{padding-top:14px;border-top:1px solid rgba(197,167,124,.14)}
 .site-footer .brand-footer-studio{gap:10px}
 .site-footer .brand-footer-studio img{flex-basis:44px;width:44px;height:44px}
 .site-footer .brand-footer-studio-copy strong{font-size:16px;line-height:1.5}
 .site-footer .brand-footer-studio-copy small{font-size:8px;margin-top:2px}
 .site-footer .brand-footer-parent{font-size:10px;margin-top:5px}
 .site-footer .footer-links.footer-mobile-ready{grid-template-columns:minmax(0,1fr);gap:0}
 .site-footer .footer-mobile-ready>div,.site-footer .footer-mobile-ready .footer-about-links{display:block;padding:0;border-top:0;border-bottom:1px solid rgba(197,167,124,.14)}
 .site-footer .footer-mobile-ready>div>small{display:none}
 .site-footer .footer-mobile-ready .footer-nav-toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:48px;padding:12px 0;border:0;background:transparent;color:#c5a77c;font:500 12px/1.8 var(--sans,system-ui);letter-spacing:.06em;text-align:left;cursor:pointer}
 .site-footer .footer-nav-toggle::after{content:'+';font:400 20px/1 var(--sans,system-ui);color:#ab9370}
 .site-footer .footer-nav-toggle[aria-expanded=true]::after{content:'−'}
 .site-footer .footer-nav-toggle:focus-visible{outline:2px solid #c5a77c;outline-offset:2px}
 .site-footer .footer-mobile-ready .footer-nav-items{display:none}
 .site-footer .footer-mobile-ready .footer-nav-expanded .footer-nav-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px;padding:0 0 14px}
 .site-footer .footer-mobile-ready .footer-nav-items a{box-sizing:border-box;width:100%;min-height:42px;padding:10px 9px;border-radius:4px;background:rgba(255,255,255,.025);font-size:12px;line-height:1.8}
}

/* v6.12.17 | Mobile hero follows its content instead of reserving an empty viewport. */
@media(max-width:700px){
 .page-home .restored-first-hero{display:block;height:auto;min-height:0;max-height:none}
 .page-home .restored-first-hero .v4-hero-scene{background-size:auto 100%;background-position:52% top}
 .page-home .restored-first-hero .v4-hero-content{width:calc(100% - 40px)!important;max-width:480px;min-height:0;padding:clamp(170px,25svh,218px) 0 24px;margin-inline:auto}
 .page-home .restored-first-hero .v4-hero-left{width:100%;max-width:none}
 .page-home .restored-first-hero .v4-eyebrow{margin-bottom:10px}
 .page-home .restored-first-hero .brand-home-title{margin-bottom:17px}
 .page-home .restored-first-hero .v4-hero-proclamation{font-size:clamp(23px,6vw,28px);line-height:1.5;margin-bottom:12px}
 .page-home .restored-first-hero .v4-hero-proclamation br,.page-home .restored-first-hero .v4-hero-copy br{display:block}
 .page-home .restored-first-hero .v4-hero-copy{font-size:12px;line-height:1.9;margin-bottom:20px}
 .page-home .restored-first-hero .v4-hero-actions{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:12px;max-width:340px;width:100%;align-items:stretch}
 .page-home .restored-first-hero .v4-gold-button{min-width:0;min-height:46px;justify-content:space-between;padding-inline:13px;font-size:11px;white-space:nowrap}
 .page-home .restored-first-hero .v4-ghost-link{display:flex;align-items:center;justify-content:center;min-height:46px;padding:0;font-size:11px;white-space:nowrap}
 .page-home .restored-first-hero .v4-status-line{margin-top:14px;max-width:100%;font-size:9px;line-height:1.8}
 .page-home .restored-first-hero .v4-hero-bottom{position:relative;left:auto;right:auto;bottom:auto;box-sizing:border-box;width:calc(100% - 40px);max-width:480px;margin:0 auto;padding:15px 0 20px;border-top:1px solid rgba(213,190,160,.18);font-size:8px;min-height:44px}
 .page-home .restored-first-hero .v4-hero-bottom a{display:inline-flex;align-items:center;min-height:28px}
}
