/* Shared layout constraints for narrow screens, without hiding page content. */
html,body{width:100%;max-width:100%;margin:0}*,*::before,*::after{box-sizing:border-box}
main,section,article,aside,header,footer,nav,div,form{min-width:0}
img,video,iframe,svg{max-width:100%}p,h1,h2,h3,h4,a,label,small,.notice,.source-note{overflow-wrap:anywhere}
input,select,textarea{max-width:100%;min-width:0}pre{max-width:100%;overflow:auto}
@media(max-width:750px){
 nav{flex-wrap:wrap;gap:12px;padding:15px 18px}nav>.logo{max-width:100%;font-size:18px;letter-spacing:-.6px}nav>a:not(.logo){font-size:12px}nav .navlinks{display:none}
 main{width:100%;padding-left:18px!important;padding-right:18px!important}
 .hero,.layout,.cards,.learning,.bottom-grid,.mock-grid,.hub-grid,.story-directory,.completed-profiles,.creative-gallery,.study-layout,.manager-grid,.restaurant-spotlight{grid-template-columns:minmax(0,1fr)!important}
 .hero{gap:25px}.hero h1{font-size:clamp(34px,9vw,46px);letter-spacing:-1.7px}.academy-hero h1,.editorial-page h1{font-size:clamp(30px,8.5vw,42px)!important;letter-spacing:-1.2px}
 .section-head{flex-wrap:wrap;align-items:flex-start}.section-head h2,.learning h2{font-size:28px}.actions,.tool-actions,.academy-nav,.pagination{flex-wrap:wrap;gap:10px}
 .manager-form,.study-panel{padding:20px!important}.step-nav{position:static!important;max-height:none!important;width:100%}.step-nav button{white-space:normal}
 .restaurant-spotlight{padding:24px!important;gap:18px}.cube-showcase{--cube-size:min(220px,50vw)}.cube-scene{margin-top:25px;margin-bottom:35px}
 .face-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson{grid-template-columns:25px minmax(0,1fr) auto;gap:8px}
 .mock-feature,.story-entry,.editor,.hub-card,.manager-form,.study-panel{width:100%;max-width:100%}.feature-image{max-width:100%}.floating{left:12px;right:12px;width:auto;text-align:center}
 .banner{padding:24px;display:block}.banner .btn{margin-top:16px}footer{padding:25px 18px;display:flex;flex-wrap:wrap;gap:12px}
 dialog{max-width:calc(100vw - 24px);padding:22px}.manager-form input,.manager-form textarea{font-size:16px}.digital-ad{width:100%;margin:24px 0}
 #message{top:0;position:relative}.manager-grid{gap:20px}.profile-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
}
.filters{min-width:0}.filters select,.filters input{min-width:0!important;max-width:100%!important}.filters select{width:100%}
@media(min-width:751px){.filters select{width:auto;max-width:280px!important}}

.submission-feedback:not(:empty){padding:14px;background:#e8f4fb;border:1px solid #abc5e0;border-radius:5px;line-height:1.6;margin:16px 0 0;overflow-wrap:anywhere}form button:disabled{opacity:.65;cursor:wait}
/* Approved Local Connection / 2GTHR brand lockup. */
nav{flex-wrap:wrap}
nav>.brand-lockup.logo{display:flex;align-items:center;flex-wrap:wrap;gap:13px;margin-right:auto;min-width:0;max-width:100%;letter-spacing:normal;text-decoration:none}
nav>.brand-lockup.logo span{display:inline;background:none;color:inherit;border-radius:0;width:auto;height:auto;margin:0}
nav>.brand-lockup.logo .brand-title{font-family:Manrope,Arial,sans-serif;font-size:26px;font-weight:700;letter-spacing:-.8px;line-height:1.2;white-space:nowrap}
nav>.brand-lockup.logo .brand-byline{display:inline-flex;align-items:center;gap:8px}
nav>.brand-lockup.logo .brand-by{font-family:Arial,sans-serif;font-size:13px;font-weight:400;color:#596a82;letter-spacing:normal}
nav>.brand-lockup.logo .brand-logo{display:block;width:76px;height:auto;max-width:100%;flex-shrink:0}
@media(max-width:750px){nav>.brand-lockup.logo{flex-direction:column;align-items:flex-start;gap:4px}nav>.brand-lockup.logo .brand-title{font-size:24px}nav>.brand-lockup.logo .brand-logo{width:64px}}
/* Approved integrated logo and its navy / blue / cyan / green palette. */
:root{--ink:#081d40;--green:#0064d9;--lime:#bfeefa;--paper:#f6f9fd;--line:#dce5f0;--muted:#596a82;--brand-green:#239a3d;--brand-cyan:#087f9d}
nav>.brand-lockup.logo{display:block;flex:0 1 350px;width:350px;line-height:0}
nav>.brand-lockup.logo .full-brand-logo{display:block;width:350px;max-width:100%;height:auto}
nav{padding-top:10px;padding-bottom:10px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #087f9d;outline-offset:3px}
.hero h1 em{color:#087f9d}.dot{color:#239a3d}.btn:hover{filter:brightness(.94)}
@media(max-width:750px){nav>.brand-lockup.logo{flex-basis:270px;width:270px}nav>.brand-lockup.logo .full-brand-logo{width:270px}.floating{color:#081d40}}
