/* Company pages share the HoloCozy layout language, with appropriate artwork. */
.company-visual{--cv-ink:#28213e;--cv-muted:#675e78;--cv-paper:#f3eefb;--cv-dark:#251e3d;--cv-line:#ddd4e8;color:var(--cv-ink);background:white;font-size:16px;line-height:1.8}
.company-visual main{outline:0;min-height:55vh;overflow-wrap:anywhere}
.company-visual h1,.company-visual h2,.company-visual h3{font-family:var(--sans);letter-spacing:.005em;color:var(--cv-ink);font-weight:700;line-height:1.45}
.company-visual p{color:var(--cv-muted)}
.company-visual h1{font-size:clamp(38px,4.2vw,66px)}
.company-visual h2{font-size:clamp(27px,2.5vw,38px);margin:0 0 30px}
.company-visual h3{font-size:25px;margin:0 0 16px}
.cv-wrap{width:min(1480px,calc(100% - 96px));margin-inline:auto}
.company-visual .company-banner{padding:64px 0}
.company-visual .company-banner-dark{color:#fff;background:linear-gradient(130deg,#251e3d,#39294e)}
.company-visual .company-banner h1{margin:0 0 24px}
.company-visual .company-banner:not(.company-banner-grid) h1:only-child{margin-bottom:0}
.company-visual .company-banner-dark h1,.company-visual .company-banner-dark h2{color:#fff}
.company-banner-grid{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.5fr);gap:48px;align-items:center}
.company-visual .company-lead{font-size:18px;line-height:1.9;margin:0;max-width:510px}
.company-visual .company-banner-dark p{color:#e1d9ec}
.company-visual .company-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;align-items:flex-start}
.company-visual .btn{font-size:15px;line-height:1.5;min-height:52px;padding:13px 19px;white-space:normal;max-width:100%;text-align:center}
.company-visual .company-banner-dark .btn-outline{color:white;background:transparent;border-color:#9689ac}
.company-visual .company-banner-dark .btn-outline:hover{background:#ffffff12;border-color:#fff}
.company-visual .btn .steam-logo{width:72px;height:22px;object-fit:contain}
.company-hero-media{min-width:0}
.company-hero-media img,.company-hero-video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;border-radius:8px;background:#171221;border:0;box-shadow:0 24px 64px #08051255}
.company-banner-art img{width:100%;aspect-ratio:16/9;object-fit:contain;border-radius:8px;box-shadow:0 24px 64px #08051255}
.company-home-art{display:grid;gap:18px;min-width:0}
.company-home-art>div{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.company-home-art img{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;border-radius:6px;background:#171221}
.company-home-art .company-home-feature{display:block}
.company-home-intro{font-size:16px;line-height:1.9;max-width:470px}
.company-home-intro p{margin:0 0 15px}
.company-home-intro p:last-child{margin-bottom:0}
.company-page-home .company-banner h1{font-size:clamp(43px,4.3vw,68px)}
.company-page-home .company-banner-grid{grid-template-columns:minmax(300px,.9fr) minmax(0,1.3fr)}
.company-page-home .company-home-art{padding-block:0}
.company-services,.company-awards,.company-news,.company-project-list,.company-story,.company-gallery,.company-related{padding:68px 0}
.company-services,.company-project-list,.company-gallery{background:#f3eefb}
.company-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px}
.company-service-grid article{border-top:3px solid #dc3829;padding-top:25px}
.company-service-grid p{font-size:16px;line-height:1.9}
.company-awards ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 44px;padding:0;list-style:none;margin:0}
.company-awards li{border-top:1px solid #ddd4e8;padding-top:20px}
.company-awards time{display:block;font-size:31px;color:#dc3829;font-weight:700;margin-bottom:12px;line-height:1.3}
.company-awards p{font-size:16px;line-height:1.8}
.company-news{background:#faf7f1}
.company-news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;align-items:start}
.company-news-item{min-width:0;background:#fff;border-radius:8px;overflow:hidden}
.company-news-item>img{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#ece6f2}
.company-news-item>div{padding:25px 26px 28px}
.company-news-item time{font-size:14px;color:#7a6e87;display:block;margin-bottom:12px}
.company-news-item h3{font-size:23px;line-height:1.6;margin-bottom:16px}
.company-news-description{font-size:15px;line-height:1.85}
.company-news-item .btn{margin-top:20px;font-size:14px;min-height:45px}
.company-visual .migration-pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:38px}
.company-visual .migration-pagination button{display:grid;place-items:center;width:44px;height:44px;border:1px solid #cbbfd8;background:white;border-radius:4px;font-size:16px;color:#28213e;cursor:pointer;padding:0}
.company-visual .migration-pagination button[aria-current=page]{background:#dc3829;border-color:#dc3829;color:#fff}
.company-visual .portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.company-visual .portfolio-card{display:flex;flex-direction:column;border-radius:8px;overflow:hidden;background:#fff;min-width:0}
.company-visual .portfolio-picture{display:flex;align-items:center;background:#e9e2f3;aspect-ratio:16/9;padding:0}
.company-visual .portfolio-picture img{width:100%;height:100%;object-fit:contain;display:block}
.company-visual .portfolio-copy{padding:25px 26px 28px;flex:1}
.company-visual .portfolio-copy h2{font-size:25px;line-height:1.55;margin-bottom:16px}
.company-visual .portfolio-description{font-size:15px;line-height:1.9;margin:0}
.company-visual .portfolio-copy a:hover{color:#dc3829}
.company-story .cv-wrap{display:grid;grid-template-columns:minmax(210px,.5fr) minmax(0,1.5fr);gap:64px}
.company-prose{font-size:17px;line-height:1.95;color:#675e78;max-width:920px}
.company-prose p{margin-bottom:20px;line-height:1.95}
.company-prose p:last-child{margin-bottom:0}
.company-prose h2{font-size:29px;margin:36px 0 20px}
.company-prose h3{font-size:22px;margin:28px 0 15px}
.company-prose ul,.company-prose ol{padding-left:25px;margin:20px 0 28px}
.company-prose li{padding-left:6px;margin-bottom:10px}
.company-prose li p{margin:0}
.company-prose a{color:#dc3829;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.company-gallery-stage{padding:0;border:0;display:block;width:100%;background:#e5dfed;position:relative;border-radius:8px;overflow:hidden}
.company-gallery-stage>img{display:block;width:100%;height:auto;aspect-ratio:16/9;max-height:850px;object-fit:contain}
.company-gallery-stage>span{position:absolute;right:20px;bottom:20px;border-radius:50%;background:#251e3ddb;color:white;width:40px;height:40px;display:grid;place-items:center;font-size:26px}
.company-gallery-controls{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:18px 0 20px;color:#675e78}
.company-gallery-controls button{width:44px;height:44px;border-radius:50%;background:white;border:1px solid #bdb0cd;font-size:24px;line-height:1;color:#28213e}
.company-gallery-controls [data-cv-counter]{margin-right:10px;font-variant-numeric:tabular-nums}
.company-thumbs{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:16px}
.company-thumbs button{display:block;min-width:0;padding:4px;border:2px solid transparent;border-radius:5px;background:#e6dff0}
.company-thumbs button[aria-current=true]{border-color:#dc3829}
.company-thumbs img{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
.company-related h2{margin-bottom:0}
.company-lightbox{padding:18px;position:fixed;border:0;border-radius:8px;background:#fff;width:min(1400px,calc(100% - 32px));max-height:96dvh;color:#28213e}
.company-lightbox::backdrop{background:#191329dd}
.company-lightbox img{width:100%;height:auto;max-height:80dvh;object-fit:contain;background:#ece7f5}
.company-lightbox [data-photo-close]{display:block;margin:0 0 14px auto;font-size:25px;width:38px;height:38px;border:0;border-radius:50%;background:#eee8f5}
.company-lightbox p{margin-top:12px;font-size:15px;color:#675e78}
.company-profile-list{padding:48px 0;background:#f3eefb}
.company-profile-list>.cv-wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;max-width:1160px}
.company-profile-card{background:#e8e0f2;border-radius:8px;overflow:hidden;min-width:0}
.company-profile-card button{width:100%;background:transparent;border:0;padding:0;text-align:left}
.company-profile-card img{width:100%;height:440px;object-fit:contain;object-position:50% 100%;transition:transform .2s}
.company-profile-card button:hover img{transform:scale(1.025)}
.company-profile-name{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:20px 25px;background:white;font-size:25px;font-weight:700;color:#28213e;line-height:1.5}
.company-profile-card button[aria-expanded=true] .company-profile-name{box-shadow:inset 0 -4px #dc3829}
.company-profile-name>span{color:#dc3829}
.company-profile-body{padding:64px 0;scroll-margin-top:90px}
.company-profile-detail{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:72px}
.company-profile-detail .company-actions{margin-top:0}
.company-profile-videos{display:grid;gap:12px;margin-top:28px}
.company-profile-videos .btn{justify-content:space-between}
.company-document{padding:60px 40px 80px}
.company-document .company-prose{max-width:960px;margin-inline:auto}
.company-document .company-prose>h2:first-child{margin-top:0}
.company-document .company-prose>h2{border-top:1px solid #ddd4e8;padding-top:28px;margin-top:36px}
.company-identity-art{display:flex;align-items:center;justify-content:center}
.company-identity-art img{width:210px;height:260px;object-fit:contain}
.company-page-document .company-banner-grid,.company-page-contact .company-banner-grid{grid-template-columns:minmax(0,1.7fr) minmax(200px,.6fr)}
.company-email{display:inline-block;font-size:clamp(20px,2.2vw,32px);line-height:1.7;color:#fff;overflow-wrap:anywhere;max-width:100%}
.company-email:hover{color:#fff;text-decoration:underline;text-underline-offset:8px}
.company-contact-options{padding:64px 0;background:#f3eefb}
.company-contact-options>.cv-wrap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.company-contact-options article{border-top:3px solid #dc3829;padding-top:26px;display:flex;flex-direction:column;align-items:flex-start}
.company-contact-options h2{font-size:26px;margin-bottom:20px;line-height:1.6}
.company-contact-options .company-prose{font-size:16px;line-height:1.9;flex:1}
.company-contact-options .btn{margin-top:28px}
.company-visual .ng-footer{margin-top:0}
.press-visual .press-hero{background:linear-gradient(130deg,#251e3d,#39294e);color:white}
.press-visual .press-hero .wrap{width:min(1480px,calc(100% - 96px))}
.press-visual .press-hero .hero-grid{grid-template-columns:minmax(300px,.72fr) minmax(0,1.5fr);gap:48px}
.press-visual .press-hero h1{color:white}
.press-visual .press-heading,.press-visual .press-lead{color:#e1d9ec}
.press-visual .press-hero .btn-outline,.press-visual .pack-button{background:transparent;color:white;border-color:#9689ac}
.press-visual .press-key img{border-radius:8px}
.press-visual .press-features article{display:block;border-top:1px solid #ddd4e8;padding-top:22px}
.press-visual .press-features h3{font-size:22px;margin-bottom:10px}
.press-visual .press-features p,.press-visual .facts-card dt,.press-visual .press-shot figcaption,.press-visual .press-art-grid p{font-size:14px;line-height:1.8}
.press-visual .press-layout{width:min(1480px,calc(100% - 96px));grid-template-columns:300px minmax(0,1fr);gap:56px}
.press-visual .press-contents{font-size:14px;margin-inline:10px}
.press-visual .press-main h2{font-size:32px}
.press-visual .press-shot-grid{gap:28px}
.press-visual .press-main>section>p:not(.eyebrow){font-size:16px}
@media(max-width:1100px){
 .cv-wrap{width:calc(100% - 64px)}.company-banner-grid{gap:32px;grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr)}
 .company-visual .company-banner{padding:48px 0}.company-visual .company-lead{font-size:16px}
 .company-service-grid,.company-news-grid,.company-visual .portfolio-grid{gap:24px}.company-service-grid h3{font-size:23px}
 .company-story .cv-wrap{grid-template-columns:minmax(180px,.5fr) minmax(0,1.5fr);gap:40px}
 .company-profile-detail{gap:40px}.company-profile-card img{height:360px}
 .company-contact-options>.cv-wrap{gap:26px}.company-contact-options h2{font-size:23px}
 .company-page-home .company-banner-grid{grid-template-columns:minmax(280px,1fr) minmax(0,1fr)}
 .company-home-art>div{gap:12px}.company-home-intro{font-size:15px}
 .press-visual .press-layout{width:calc(100% - 64px);grid-template-columns:250px minmax(0,1fr);gap:35px}
 .press-visual .press-hero .wrap{width:calc(100% - 64px)}.press-visual .press-hero .hero-grid{grid-template-columns:1fr 1.2fr;gap:32px}
}
@media(max-width:760px){
 .cv-wrap{width:calc(100% - 40px)}.company-visual h1{font-size:38px}.company-visual h2{font-size:29px;margin-bottom:24px}.company-visual h3{font-size:24px}
 .company-visual .company-banner{padding:32px 0 36px}.company-visual .company-banner h1{margin-bottom:22px}
 .company-banner-grid,.company-page-home .company-banner-grid,.company-page-contact .company-banner-grid,.company-page-document .company-banner-grid{display:flex;flex-direction:column;align-items:stretch;gap:28px}
 .company-banner-grid>div:first-child{display:contents}.company-banner-grid h1{order:0}.company-hero-media,.company-home-art{order:1}.company-visual .company-lead,.company-home-intro{order:2}.company-banner-grid .company-actions{order:3}.company-banner-grid .company-email{order:1}
 .company-visual .company-lead{font-size:16px;max-width:none}.company-visual .company-actions{flex-direction:column;align-items:stretch;margin-top:24px}
 .company-visual .btn{width:100%;min-height:52px;justify-content:center}
 .company-hero-media{margin-inline:-20px}.company-hero-media img,.company-hero-video{border-radius:0;box-shadow:none}
 .company-page-home .company-banner h1{font-size:46px}.company-home-intro{max-width:none}
 .company-home-art{gap:12px}.company-home-art>div{gap:12px}
 .company-services,.company-awards,.company-news,.company-project-list,.company-story,.company-gallery,.company-related{padding:42px 0}
 .company-service-grid,.company-news-grid,.company-visual .portfolio-grid{grid-template-columns:1fr;gap:28px}
 .company-service-grid article{padding-top:20px}.company-service-grid p{font-size:16px}
 .company-awards ul{grid-template-columns:1fr;gap:24px}.company-awards time{font-size:28px}.company-awards p{font-size:16px}
 .company-news-item>div,.company-visual .portfolio-copy{padding:23px}.company-news-item h3{font-size:23px}
 .company-visual .migration-pagination{gap:8px;margin-top:28px}.company-visual .migration-pagination button{width:37px;height:40px}
 .company-story .cv-wrap{display:block}.company-prose{font-size:16px;line-height:1.95}.company-prose h2{font-size:26px}.company-prose h3{font-size:22px}
 .company-gallery-stage{width:calc(100% + 40px);margin-inline:-20px;border-radius:0}.company-gallery-stage>img{max-height:500px}
 .company-gallery-controls{padding-block:16px}.company-thumbs{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.company-thumbs button{padding:2px}
 .company-gallery-stage>span{width:32px;height:32px;font-size:22px;right:12px;bottom:12px}
 .company-profile-list{padding:28px 0}.company-profile-list>.cv-wrap{grid-template-columns:1fr;gap:24px}
 .company-profile-card img{height:380px}.company-profile-name{font-size:24px;padding:18px 20px}
 .company-profile-body{padding:40px 0}.company-profile-detail{grid-template-columns:1fr;gap:28px}
 .company-profile-detail aside>.company-actions{margin-top:0}.company-profile-videos{gap:10px}
 .company-document{padding:40px 24px 54px}.company-document .company-prose>h2{padding-top:24px}
 .company-identity-art{display:none}.company-email{font-size:23px;line-height:1.8}
 .company-contact-options{padding:40px 0}.company-contact-options>.cv-wrap{grid-template-columns:1fr;gap:36px}.company-contact-options h2{font-size:26px}
 .company-lightbox{padding:12px}.company-lightbox img{max-height:76dvh}
 .press-visual .press-layout{width:calc(100% - 40px);grid-template-columns:minmax(0,1fr);gap:36px}
 .press-visual .press-hero .wrap{width:calc(100% - 40px)}.press-visual .press-hero .hero-grid{grid-template-columns:minmax(0,1fr);gap:30px}
 .press-visual .press-main h2{font-size:29px}.press-visual .press-shot-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.company-profile-card img{transition:none}}
