/* THIEN HA DESIGN V4 - wide editorial layout and structural fixes */
:root{--shell:min(1680px,calc(100vw - clamp(32px,7vw,136px)));--safe-leading:1.02}
body{overflow-x:hidden}
.site-header{width:var(--shell)!important;max-width:none!important;margin:0 auto!important;display:grid!important;grid-template-columns:auto minmax(420px,1fr) auto!important;align-items:center!important;gap:clamp(26px,4vw,72px)!important;min-height:76px!important;padding:0!important;position:relative!important}
.site-header nav{justify-self:end!important;width:auto!important;display:flex!important;align-items:center!important;gap:4px!important;position:static!important}
.head-tools{position:static!important;inset:auto!important;grid-column:3!important;grid-row:1!important;align-self:center!important;margin:0!important;z-index:2!important}
.account-link.identity{min-width:0!important;max-width:260px!important;padding:9px 12px!important;display:grid!important;grid-template-columns:minmax(0,1fr) 30px!important;column-gap:10px!important;align-items:center!important}
.account-link.identity span,.account-link.identity small{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.account-link.identity:before{content:"";width:16px;height:16px;display:block;grid-row:1/3;grid-column:2;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff7942' stroke-width='1.8'%3E%3Ccircle cx='12' cy='8' r='3.5'/%3E%3Cpath d='M5 20c.7-4 3-6 7-6s6.3 2 7 6'/%3E%3C/svg%3E")}
.site-header nav a[href="/admin"]:before{content:"";width:15px;height:15px;display:inline-block;vertical-align:-3px;margin-right:7px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff7942' stroke-width='1.8'%3E%3Cpath d='M4 21v-2a4 4 0 0 1 4-4h4'/%3E%3Ccircle cx='10' cy='7' r='4'/%3E%3Cpath d='m17 14 .7 1.5 1.6.2-1.2 1.2.3 1.6-1.4-.8-1.4.8.3-1.6-1.2-1.2 1.6-.2z'/%3E%3C/svg%3E")}
main,.got-wrap,.project-list,.page-intro,.downloads-page,.support-page,.account-page,.admin-page{width:var(--shell)!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important}
.hero,.home-hero{width:var(--shell)!important;max-width:none!important;margin-inline:auto!important}
.hero h1,.home-hero h1,.page-intro h1,.section-heading h2,.got-heading h2,.got-hero h1,.project-hero h1{line-height:var(--safe-leading)!important;letter-spacing:-.052em!important;text-wrap:balance!important;padding-block:.05em!important}
.hero h1,.home-hero h1{font-size:clamp(64px,7.5vw,138px)!important;max-width:10.5ch!important}
.page-intro h1,.section-heading h2{font-size:clamp(48px,5.5vw,92px)!important;max-width:15ch!important}
.project-list{gap:18px!important}.project-list article{grid-template-columns:72px minmax(0,1fr) auto!important;padding:30px 34px!important}.project-list h2{line-height:1.12!important}
.project-kind{display:inline-flex;align-items:center;gap:8px;color:#54dfe4;font:700 11px/1.2 "IBM Plex Mono",monospace;letter-spacing:.12em;text-transform:uppercase}

/* Game project hero: full-bleed visual with readable overlay */
.got-page{width:100%!important;max-width:none!important}.got-page .got-wrap{width:var(--shell)!important}
.got-hero{position:relative!important;width:var(--shell)!important;min-height:min(760px,78vh)!important;margin:24px auto 0!important;border:1px solid #21404b!important;border-radius:28px!important;overflow:hidden!important;background:#06151c!important}
.got-hero-grid{display:block!important;width:100%!important;min-height:inherit!important;position:relative!important;padding:0!important}
.got-hero-art{position:absolute!important;inset:0!important;margin:0!important;width:100%!important;height:100%!important;z-index:0!important}
.got-hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,12,17,.96) 0%,rgba(3,12,17,.84) 38%,rgba(3,12,17,.22) 72%,rgba(3,12,17,.08) 100%)}
.got-hero-art img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;display:block!important}
.got-hero-copy{position:relative!important;z-index:1!important;display:flex!important;flex-direction:column!important;justify-content:flex-end!important;min-height:inherit!important;max-width:880px!important;padding:clamp(44px,6vw,96px)!important}
.got-hero h1{font-size:clamp(58px,6.8vw,124px)!important;max-width:10.5ch!important;margin:18px 0 28px!important}
.got-hero-copy>p{max-width:680px!important;font-size:clamp(16px,1.25vw,21px)!important}
.got-section{width:100%!important}.got-section>.got-wrap{padding-inline:0!important}.got-heading{max-width:920px!important}

/* Commerce catalog */
.commerce-page{padding-block:54px 100px}.commerce-intro{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.7fr);gap:40px;align-items:end;margin-bottom:44px}.commerce-intro h1{font-size:clamp(52px,6vw,104px);line-height:1;letter-spacing:-.055em;margin:12px 0}.commerce-intro p{max-width:720px;color:#9cb0b6;font-size:18px}.commerce-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.commerce-flow span{border:1px solid #21404b;border-radius:14px;padding:16px;color:#9cb0b6;font:600 11px "IBM Plex Mono",monospace}.commerce-flow b{display:block;color:#ff7942;font-size:18px;margin-bottom:6px}.commerce-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;align-items:start}.commerce-main{display:grid;gap:22px}.commerce-step{border:1px solid #21404b;border-radius:22px;padding:28px;background:#08171d}.commerce-step>header{display:flex;gap:18px;align-items:flex-start;margin-bottom:22px}.commerce-step>header b{color:#ff7942;font:700 13px "IBM Plex Mono",monospace}.commerce-step h2{font-size:28px;line-height:1.15;margin:0 0 6px}.commerce-step header p{margin:0;color:#8fa6ad}.project-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}.project-choice{cursor:pointer}.project-choice input{position:absolute;opacity:0}.project-choice span{display:block;padding:20px;border:1px solid #294751;border-radius:15px;min-height:112px;transition:.2s}.project-choice strong{display:block;font-size:18px;margin-bottom:8px}.project-choice small{color:#8fa6ad}.project-choice input:checked+span{border-color:#ff7942;background:#142129;box-shadow:inset 4px 0 #ff7942}.hardware-picker{display:grid;gap:10px}.hardware-choice{display:flex;gap:10px;align-items:center;border:1px solid #294751;border-radius:12px;padding:14px}.offer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px}.offer-card{position:relative;border:1px solid #294751;border-radius:16px;padding:20px;background:#0a1b22}.offer-card[hidden],.commerce-step[hidden]{display:none!important}.offer-type{color:#54dfe4;font:700 10px "IBM Plex Mono",monospace;letter-spacing:.12em;text-transform:uppercase}.offer-card h3{font-size:20px;line-height:1.16;margin:12px 0 8px}.offer-card p{color:#8fa6ad;min-height:3.3em}.offer-add{display:flex;gap:10px;align-items:center;margin-top:16px}.offer-add button{flex:1}.commerce-cart{position:sticky;top:96px;border:1px solid #294751;border-radius:22px;padding:24px;background:#07151b}.commerce-cart h2{font-size:24px}.cart-list{display:grid;gap:10px;margin:18px 0}.cart-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding-bottom:10px;border-bottom:1px solid #1e3640}.cart-line small{color:#8fa6ad}.cart-total{display:flex;justify-content:space-between;font-size:22px;margin:20px 0}.current-entitlements{margin-top:22px;border-top:1px solid #294751;padding-top:18px}.entitlement-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:12px 0;border-bottom:1px solid #1e3640}.entitlement-row form{margin:0}
@media(max-width:1050px){.site-header{grid-template-columns:auto 1fr auto!important}.site-header nav{position:absolute!important;top:76px!important;left:0!important;right:0!important}.commerce-grid,.commerce-intro{grid-template-columns:1fr}.commerce-cart{position:static}.got-hero{min-height:700px!important}}
@media(max-width:720px){:root{--shell:calc(100vw - 28px)}.site-header{grid-template-columns:auto auto!important}.head-tools{grid-column:2!important}.site-header nav{display:none!important}.site-header.nav-open nav{display:flex!important}.hero h1,.home-hero h1,.got-hero h1{font-size:clamp(48px,15vw,78px)!important;line-height:1.04!important}.got-hero-copy{padding:34px 24px!important}.project-list article{grid-template-columns:1fr!important}.commerce-flow{grid-template-columns:1fr}.commerce-step{padding:20px}}
