/* ============================================================
   MAGNETAR-ENERGO — REVISION 07
   HARD MOBILE-ONLY OVERRIDE
   The phone layout is used at EVERY viewport width.
   This file has a new URL on purpose, to bypass cached core.css.
   ============================================================ */

:root{--mobile-site-width:560px}
*{box-sizing:border-box;min-width:0}
html{width:100%;max-width:100%;overflow-x:hidden;background:#edf3f7}
body{
  width:100%;max-width:100%;margin:0!important;padding:0!important;
  overflow-x:hidden!important;background:#edf3f7!important;
}
img,video,iframe,svg,canvas{max-width:100%!important}
img,video,svg,canvas{height:auto}

/* Corporate pages: always one centered phone canvas. */
.site{
  width:100%!important;
  max-width:var(--mobile-site-width)!important;
  min-height:100vh;
  margin:0 auto!important;
  background:#fff!important;
  overflow:hidden!important;
  box-shadow:0 0 30px rgba(10,40,85,.08);
}
.site .wrap{
  width:calc(100% - 24px)!important;
  max-width:536px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* There is no desktop navigation at any width. */
.site .main-nav{display:none!important}
.site .menu-btn{display:block!important;flex:0 0 auto!important;margin-left:0!important;font-size:23px!important}
.site .mobile-nav{display:none!important}
.site .mobile-nav.open{display:block!important}
.site .header-row{min-height:60px!important;gap:6px!important}
.site .brand{min-width:0!important;max-width:calc(100% - 132px)!important;gap:8px!important}
.site .brand img{width:35px!important;height:40px!important;flex:0 0 auto!important;object-fit:contain!important}
.site .brand-title{font-size:12px!important;line-height:1.05!important;white-space:normal!important;overflow-wrap:anywhere!important}
.site .brand-sub{display:none!important}
.site .langs{flex:0 0 auto!important;margin-left:auto!important}
.site .langs a{min-width:27px!important;height:27px!important;font-size:9px!important}

/* Phone hero at every viewport width. */
.site .hero-grid{display:block!important;min-height:0!important;padding:34px 0 32px!important}
.site .hero-copy{
  width:100%!important;max-width:100%!important;margin:0 auto!important;
  padding:0!important;text-align:center!important
}
.site .hero-copy .eyebrow{width:100%!important;justify-content:center!important;font-size:10px!important;letter-spacing:.8px!important;margin-bottom:11px!important}
.site .hero-copy .hero-kicker{
  width:100%!important;max-width:100%!important;margin:0 auto 12px!important;
  padding:0 2px!important;font-size:16px!important;line-height:1.28!important;
  overflow-wrap:anywhere!important
}
.site .hero-copy h1,
.site h1{
  width:100%!important;max-width:100%!important;margin-left:auto!important;margin-right:auto!important;
  font-size:38px!important;line-height:1.02!important;letter-spacing:-.7px!important;
  overflow-wrap:anywhere!important;word-break:normal!important;hyphens:auto!important
}
.site .hero-copy .lead,
.site .lead{
  width:100%!important;max-width:100%!important;padding:0 1px!important;
  font-size:16px!important;line-height:1.48!important;overflow-wrap:anywhere!important
}
.site .hero-copy .actions{
  width:100%!important;display:grid!important;grid-template-columns:1fr!important;
  gap:9px!important;margin-top:20px!important
}
.site .hero-copy .btn{width:100%!important;min-height:48px!important;padding:12px 13px!important}

/* All former desktop sections are permanently mobile. */
.site .section{padding:48px 0!important}
.site .section-head{width:100%!important;max-width:100%!important;margin:0 auto 22px!important;padding:0 2px!important}
.site .section-head h2{
  width:100%!important;font-size:32px!important;line-height:1.08!important;
  letter-spacing:-.45px!important;overflow-wrap:anywhere!important
}
.site .section-head p{font-size:14px!important;line-height:1.48!important}
.site .cards3,
.site .system-grid,
.site .research-grid,
.site .about-strip,
.site .content-grid,
.site .footer-grid{
  display:grid!important;grid-template-columns:1fr!important;gap:14px!important
}
.site .partner-box{display:grid!important;grid-template-columns:1fr!important;gap:16px!important;padding:22px!important}
.site .partner-box h2{font-size:30px!important;line-height:1.08!important}
.site .product-card{min-height:0!important;padding:21px!important}
.site .product-card h3{font-size:27px!important;line-height:1.08!important}
.site .product-card p{min-height:0!important;font-size:14px!important;line-height:1.48!important}
.site .product-icon{height:auto!important;min-height:0!important;max-height:none!important}
.site .product-icon img{width:100%!important;height:auto!important;object-fit:contain!important}
.site .system-map{padding:9px!important;border-radius:19px!important}
.site .system-picture img{width:100%!important;height:auto!important;border-radius:13px!important}
.site .system-grid{gap:20px!important}
.site .system-copy h2{font-size:32px!important;line-height:1.08!important;margin-bottom:12px!important}
.site .system-copy .lead{font-size:14px!important;line-height:1.48!important;text-align:left!important}
.site .bullets{gap:12px!important;margin-top:18px!important}
.site .bullet{font-size:14px!important;line-height:1.45!important}

/* Inner corporate pages: no desktop sidebar / multi-column version. */
.site .page-hero{padding:38px 0 28px!important}
.site .page-hero h1,
.site .stub-card h1{font-size:38px!important;line-height:1.04!important;overflow-wrap:anywhere!important;hyphens:auto!important}
.site .breadcrumbs{max-width:100%!important;overflow-wrap:anywhere!important}
.site .prose,
.site .side-card,
.site .about-card,
.site .research-card,
.site .stub-card{width:100%!important;max-width:100%!important;padding:20px!important;overflow:hidden!important}
.site .prose h2{font-size:30px!important;line-height:1.1!important}
.site .prose h3{font-size:22px!important;line-height:1.15!important}
.site .prose p,
.site .prose li,
.site .side-card p{font-size:14px!important;line-height:1.55!important;overflow-wrap:anywhere!important}
.site .side-card{position:static!important;top:auto!important}
.site .footer-grid{padding:34px 0 24px!important}

/* Root language gateway is also phone-only. */
.lang-gateway{
  width:100%!important;max-width:var(--mobile-site-width)!important;min-height:100vh!important;
  margin:0 auto!important;padding:28px 0!important;overflow:hidden!important
}
.gateway-box{width:calc(100% - 24px)!important;max-width:536px!important;margin-left:auto!important;margin-right:auto!important}
.gateway-box h1{font-size:36px!important;line-height:1.04!important;overflow-wrap:anywhere!important}
.gateway-langs{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;margin-top:22px!important}

/* PROTECT: keep exactly its mobile landing logic on desktop too. */
body > .mag-header,
body > .mag-footer,
body > main.page{
  width:100%!important;max-width:var(--mobile-site-width)!important;margin-left:auto!important;margin-right:auto!important
}
.mag-header,.mag-footer{overflow:hidden!important}
.mag-wrap{width:calc(100% - 18px)!important;max-width:542px!important;margin-left:auto!important;margin-right:auto!important}
.mag-header-row{min-height:57px!important;gap:6px!important}
.mag-main-nav{display:none!important}
.mag-menu-btn{display:block!important;flex:0 0 auto!important;margin-left:0!important;font-size:21px!important}
.mag-brand{min-width:0!important;max-width:calc(100% - 126px)!important;gap:8px!important}
.mag-brand img{width:30px!important;height:35px!important;flex:0 0 auto!important;object-fit:contain!important}
.mag-brand-name{font-size:10px!important;white-space:normal!important;line-height:1.05!important;overflow-wrap:anywhere!important}
.mag-brand-sub{display:none!important}
.mag-langs{flex:0 0 auto!important;margin-left:auto!important}
.mag-langs a{min-width:25px!important;height:25px!important;font-size:8px!important}
.mag-mobile-nav{display:none!important}
.mag-mobile-nav.open{display:block!important}
.mag-footer-grid{display:grid!important;grid-template-columns:1fr!important;gap:18px!important;padding:34px 0 24px!important}
.mag-footer .mag-langs{display:none!important}

/* Protect content itself is the existing phone landing: preserve it. */
main.page{overflow:hidden!important;background:#fff!important;box-shadow:0 0 30px rgba(10,40,85,.08)!important}
main.page .section{width:100%!important}
main.page .hero-copy{width:100%!important}

/* Very narrow phones. */
@media(max-width:360px){
  .site .wrap,.gateway-box{width:calc(100% - 20px)!important}
  .site .hero-copy h1,.site h1,.site .page-hero h1,.site .stub-card h1{font-size:28px!important}
  .site .hero-copy .hero-kicker{font-size:14px!important}
  .site .hero-copy .lead,.site .lead{font-size:14px!important}
  .site .brand-title{font-size:11px!important}
}

/* Wide screens still show the SAME phone version; only gray gutters appear. */
@media(min-width:561px){
  body{padding:18px 0!important}
  .site,.lang-gateway,body > .mag-header,body > main.page,body > .mag-footer{border-radius:22px!important}
  body > .mag-header{border-radius:22px 22px 0 0!important}
  body > main.page{border-radius:0!important}
  body > .mag-footer{border-radius:0 0 22px 22px!important}
}


/* ============================================================
   REVISION 07 — RESEARCH SHOWCASE
   Exact supplied infographics. Mobile layout only at ALL widths.
   ============================================================ */

/* Hard guarantee: desktop presentation never returns. */
html,body{overflow-x:hidden!important}
.site,.lang-gateway,body>.mag-header,body>main.page,body>.mag-footer{
  width:100%!important;
  max-width:var(--mobile-site-width)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.site .main-nav,.mag-main-nav{display:none!important}
.site .menu-btn,.mag-menu-btn{display:block!important}
.site .cards3,.site .system-grid,.site .research-grid,.site .about-strip,.site .content-grid,.site .footer-grid{
  grid-template-columns:minmax(0,1fr)!important;
}

/* Research block follows the supplied mobile reference. */
.site .research-methods-section{
  padding:34px 0 44px!important;
  background:#fff!important;
}
.site .research-methods-wrap{
  width:calc(100% - 12px)!important;
  max-width:548px!important;
}
.site .research-methods-head{
  width:calc(100% - 20px)!important;
  margin:0 auto 16px!important;
  padding:0!important;
  text-align:center!important;
}
.site .research-methods-head .eyebrow{
  justify-content:center!important;
  margin-bottom:8px!important;
  font-size:9px!important;
  letter-spacing:.75px!important;
}
.site .research-methods-head h2{
  margin:0 auto 9px!important;
  font-size:27px!important;
  line-height:1.04!important;
  letter-spacing:-.35px!important;
  text-align:center!important;
  overflow-wrap:anywhere!important;
}
.site .research-methods-head p{
  margin:0 auto!important;
  max-width:500px!important;
  font-size:11.5px!important;
  line-height:1.42!important;
  color:#6f8198!important;
  text-align:center!important;
}
.site .research-showcase{
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  gap:28px!important;
  margin:0!important;
  padding:0!important;
}
.site .research-visual{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid #dbe8f1!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 7px 20px rgba(18,59,98,.07)!important;
}
.site .research-visual picture{
  display:block!important;
  width:100%!important;
}
.site .research-visual img{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
}

/* Narrow phones: preserve the same visual composition without overflow. */
@media(max-width:390px){
  .site .research-methods-wrap{width:calc(100% - 8px)!important}
  .site .research-methods-head{width:calc(100% - 18px)!important}
  .site .research-methods-head h2{font-size:25px!important}
  .site .research-methods-head p{font-size:10.5px!important}
  .site .research-showcase{gap:24px!important}
  .site .research-visual{border-radius:14px!important}
}
@media(max-width:340px){
  .site .research-methods-head h2{font-size:23px!important}
  .site .research-methods-head p{font-size:10px!important}
}

/* Wide monitors still receive the phone canvas, never a desktop grid. */
@media(min-width:561px){
  .site .research-showcase{display:flex!important;flex-direction:column!important}
  .site .research-visual{width:100%!important;max-width:100%!important}
}
