/* AdminCP red preview only. Keep readable sizing instead of the legacy vw root. */
.mobile-portal-toggle{display:none}
.portal-layout>*{min-width:0}
@media(max-width:1023px){
 html{font-size:16px!important}
 .page,.page-home,.page-main{width:100%;min-width:0;max-width:100%}
 .header>.container{width:100%;max-width:100%;padding:0 12px;height:64px;display:flex;align-items:center;justify-content:space-between}
 .header-brand{margin:0;flex:0 0 52px}
 .header-brand img{width:58px;height:58px}
 .header-nav{display:flex;flex-wrap:nowrap;gap:5px;margin:0}
 .header-nav .nav-link{font-size:12px;padding:10px 8px;gap:5px;white-space:nowrap}
 .header-nav svg{width:14px;height:14px}
 .section-1{aspect-ratio:auto;height:590px;min-height:0;margin-bottom:0;background-size:auto 100%;background-position:center top}
 .hero-return-title{width:min(65%,480px);bottom:164px}
 .section-1 .cta{width:min(94%,540px);height:140px;bottom:14px;top:auto;left:50%;transform:translateX(-50%);background-size:100% 100%}
 .section-1 .cta>.row{width:100%;margin:0;flex-wrap:nowrap;justify-content:center;gap:14px}
 .section-1 .cta .row>.col-auto{padding:0;flex:0 0 auto}
 .section-1 .btn-app{width:90px;height:90px}
 .section-1 .btn-download-ios,.section-1 .btn-download-android{width:162px;height:auto;min-height:44px}
 .section-1 .btn-download-ios img,.section-1 .btn-download-android img{width:100%;height:auto}
 .section-1 .install-button{width:104px;height:104px;gap:8px}
 .section-1 .install-button span{font-size:15px}
 .section-1 .install-button svg{width:28px;height:28px}
 .cta-play-video{display:none}
 .multi-device-section{width:94%;padding:28px 0;grid-template-columns:1fr;gap:18px}
 .device-copy{padding:0 12px;text-align:center}
 .device-copy h2{font-size:30px;margin:8px 0 12px}
 .device-copy h2>span{font-size:25px}
 .device-copy p{font-size:16px;line-height:1.65}
 .device-divider{margin:14px auto}.device-platforms{justify-content:center}
 .multi-device-section>img{width:min(100%,680px);margin:auto}
 #sec-rank{padding:22px 0 32px;scroll-margin-top:76px}
 .portal-layout{width:96%;max-width:760px;grid-template-columns:minmax(0,1fr);gap:10px;font-size:16px;align-items:start}
 .mobile-portal-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:48px;padding:12px 16px;border:1px solid #977340;background:linear-gradient(100deg,#242533,#0e101b);color:#efdbb7;font:700 16px Beaufort,Georgia,serif;cursor:pointer}
 .mobile-portal-toggle::after{content:'＋';font-size:20px}.mobile-portal-toggle[aria-expanded=true]::after{content:'−'}
 #cms-sidebar{display:none;padding:0;min-height:0}#cms-sidebar.mobile-open{display:flex;flex-direction:column;gap:10px}
 #cms-sidebar .portal-card,#cms-sidebar .portal-menu{flex:none;margin:0;padding-bottom:10px}
 #cms-sidebar input,#cms-sidebar select{font-size:16px;min-height:46px}
 #cms-sidebar summary,#cms-sidebar a{min-height:44px}
 .portal-main{min-width:0;min-height:0;border-width:25px 10px 14px;border-image-width:25px 10px 14px}
 .portal-heading{padding:14px 12px;gap:10px;min-height:0;display:block}
 .portal-heading h2{font-size:19px;line-height:1.45;overflow-wrap:anywhere}
 .portal-heading h2::before{flex-basis:20px;width:20px;height:28px}
 .portal-news-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:0;margin:8px 0 -5px;padding:0}
 .portal-news-tabs button{flex:0 0 auto;font-size:13px;padding:12px 9px;min-height:44px}
 #portal-content{padding:0 12px;min-height:0;flex:none}
 .portal-bulletin{margin:0 -12px;padding:12px;font-size:11px}
 .portal-layout .portal-news-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 10px!important;padding:14px 0!important;min-height:0}
 .portal-news-row .portal-prefix{grid-column:1;width:max-content;max-width:100%;font-size:11px;padding:4px 10px;box-shadow:none}
 .portal-news-row>strong{grid-column:1;grid-row:2;font-size:17px;line-height:1.5;overflow-wrap:anywhere}
 .portal-news-row time{display:block;grid-column:2;grid-row:1;font-size:12px;padding:0}
 #cms-news>a:last-child{display:block;padding:16px 0;min-height:44px}
 #cms-direct-article{font-size:17px;line-height:1.75;padding:8px 0 20px}
 #cms-direct-article h1{font-size:25px!important}#cms-direct-article h2{font-size:23px!important}#cms-direct-article h3{font-size:20px!important}
 #cms-direct-article :is(img,video,iframe){max-width:100%!important}
 .cms-table-scroll{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
 #cms-direct-article :is(td,th){font-size:15px!important;padding:9px 10px!important}
 #cms-content-host{padding:8px 0}#cms-native{display:block;max-width:100%}
 .section-4{height:auto;min-height:0;padding:12px 0 30px}
 .section-4>.container{max-width:100%;padding:0 12px}
 .section-4 .section-title img{width:min(70%,360px)}
 .section-4 .swiper .swiper-slide{width:88vw;max-width:680px}
 .section-4 .swiper .swiper-container{padding:24px 0 48px}
 .section-4 .swiper-buttons .container{width:100%;max-width:100%}
 .ht-footer{padding:28px 16px!important}
 .footer-introduction{max-width:100%;width:auto;font-size:15px;line-height:1.8;margin-bottom:20px;padding-bottom:18px}
 .ht-footer>.container{width:100%;max-width:100%;padding:0;flex-direction:column;text-align:center;gap:18px}
 .ht-footer nav{flex-wrap:wrap;justify-content:center;gap:8px 22px}.ht-footer nav a{padding:10px 0;min-height:44px}
}
@media(max-width:540px){
 .header>.container{padding:0 8px;height:58px}.header-brand{flex-basis:42px}.header-brand img{width:48px;height:48px}
 .header-nav .nav-link{font-size:10px;padding:10px 6px;gap:4px}.header-nav{gap:4px}.header-nav svg{width:12px;height:12px}
 .section-1{height:480px;background-size:auto 390px;background-color:#160609}
 .hero-return-title{width:85%;bottom:145px}
 .section-1 .cta{height:122px;bottom:12px;width:92%;background:none}
 .section-1 .cta>.row{gap:20px}.section-1 .cta .row>.col-auto:first-child{display:none}
 .section-1 .btn-download-ios,.section-1 .btn-download-android{width:158px;min-height:44px}
 .section-1 .install-button{width:104px;height:104px}
 .device-copy h2{font-size:28px}.device-copy h2>span{font-size:23px}
 .device-eyebrow{font-size:11px}.device-copy p{font-size:15px}
 .multi-device-section{padding:24px 0}.device-platforms{font-size:12px}
 .portal-layout{width:96%}.portal-heading h2{font-size:18px}
}
@media(prefers-reduced-motion:reduce){.hero-embers{display:none}.animated{animation:none!important}}

.portal-news-row[hidden]{display:none!important}
@media(max-width:1023px){.portal-main{scroll-margin-top:76px}}

@media(max-width:360px){.header-nav svg{display:none}.header-nav .nav-link{padding:11px 5px}.header-nav{gap:3px}}


/* Keep text intrinsic width from expanding the mobile page. */
@media(max-width:1023px){
.portal-layout,.portal-main,.portal-heading,.portal-news-tabs,#portal-content,#cms-content-host,#cms-native,.multi-device-section,.device-copy,.section-5>.container,.classes-frame,.class-tabs,.class-detail,.class-copy,.class-art,.footer-introduction,.ht-footer>.container{min-width:0;max-width:100%;box-sizing:border-box}
.class-tabs{grid-template-columns:repeat(8,minmax(0,1fr))}.class-tabs button{min-width:0}.class-tabs button>span:last-child{white-space:normal;overflow-wrap:normal}
.footer-introduction p,.device-copy p{white-space:normal;overflow-wrap:break-word;word-break:normal}
.footer-introduction p{font-size:13px;line-height:1.55;margin-bottom:10px}
}
@media(max-width:600px){.class-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.footer-introduction{width:100%;padding-left:16px;padding-right:16px}.device-copy p{font-size:14px;line-height:1.5}}
