/* Shared responsive, print and bidirectional corrections. */
[hidden]{display:none!important}
html{scroll-padding-top:110px}
body{overflow-x:clip}
button,a,input,select,textarea{touch-action:manipulation}
button:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:3px solid #38bdf8;outline-offset:4px}
input,textarea,select{max-width:100%;font:inherit}
input[type=email],.template-preview-box{unicode-bidi:plaintext}
input[type=email]{direction:ltr;text-align:start}
[dir=rtl] input[type=email]{text-align:right}
[dir=rtl] .terms-card-header,[dir=rtl] .policy-card-header,[dir=rtl] .tile button{text-align:right}
[dir=rtl] .terms-card-content,[dir=rtl] .policy-card-content{text-align:start}
[dir=rtl] ul,[dir=rtl] ol{padding-inline-start:1.5em;padding-inline-end:0}
[dir=rtl] .terms-card-content ul,[dir=rtl] .policy-card-content ul{padding-inline-start:22px}
[dir=rtl] .hero h1,[dir=rtl] .hero-title{letter-spacing:normal}
[dir=rtl] .circuit-board,[dir=rtl] #circuitBoard,[dir=rtl] .world-preview-box{direction:ltr}
[dir=rtl] .template-preview-box{direction:rtl;text-align:start}
.template-preview-box{white-space:pre-wrap;overflow-wrap:anywhere}
.site-header .shell,.nav-inner,.header-inner,.topin{min-width:0}
[data-language-select]{max-width:170px;min-height:40px}
#languageLoadError{position:fixed;top:0;inset-inline:0;z-index:1000;background:#7f1d1d;color:white;padding:12px;text-align:center}
.policy-card-header,.terms-card-header{cursor:pointer}
#demoSubmitNotice{overflow-wrap:anywhere}
#independentDemoForm button:disabled{opacity:.65;cursor:wait}
@media(max-width:760px){
  .shell,.wrap{max-width:100%;padding-inline:18px}
  h1,h2,h3,p,a,button{overflow-wrap:break-word}
  .site-header .shell,.nav-inner,.header-inner,.topin{gap:10px;flex-wrap:wrap}
  [data-language-select]{max-width:140px;font-size:13px}
  .toplinks{gap:12px;flex-wrap:wrap}
  .hero-content,.hero-copy,.hero-text,.hero-layout,.hero-grid,.terms-layout,.policy-layout{min-width:0}
  .hero h1,.hero-title{font-size:clamp(32px,9vw,52px);line-height:1.15}
  .policy-card,.terms-card,.panel,.form-card,.form-embed-shell{min-width:0}
  .terms-card-header,.policy-card-header{gap:10px}
  .terms-card-header h2,.policy-card-header h2{font-size:20px}
  .hero-meta,.trust-bar,.toolbar,.terms-toolbar,.policy-toolbar,.nav-actions{flex-wrap:wrap}
  .input-glass{min-width:0;width:100%}
  .btn,.btn-nav-outline,.btn-action-primary,.btn-action-secondary{white-space:normal;text-align:center}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{
  .terms-card,.policy-card{display:block!important;break-inside:avoid}
  .terms-card-content,.policy-card-content{display:block!important;max-height:none!important;opacity:1!important;overflow:visible!important}
  nav,.site-header,.top,.terms-toolbar,.policy-toolbar,.toolbar,.mobile-drawer,#languageLoadError,[data-language-select]{display:none!important}
  body{overflow:visible!important;background:white!important;color:black!important}
  main,.terms-layout,.policy-layout{display:block!important;width:100%!important}
  .terms-card,.policy-card{background:white!important;color:black!important;border:1px solid #ddd!important;box-shadow:none!important}
  .terms-card p,.policy-card p,.terms-card li,.policy-card li{color:black!important}
}
/* Keep decorative lighting inside the page bounds. */
.glow-bg{max-width:70vw}
.glow-2{right:0!important}
@media(max-width:760px){
  .shell{width:calc(100% - 36px);padding-inline:0}
  .hero-grid,.worlds-stage-grid,.showcase-split,.demo-grid-dual,.hero-layout{grid-template-columns:minmax(0,1fr)}
  .hero-grid>*,.worlds-stage-grid>*,.showcase-split>*,.demo-grid-dual>*,.hero-layout>*{min-width:0}
  .mascot-3d-card{width:min(340px,100%);height:320px}
  .hero-mascot-stage{min-width:0;overflow:hidden}
  .kicker-pill,.hero-lead,.hero-note{max-width:100%}
  .kicker-pill{white-space:normal}
  .nav-inner{height:auto;min-height:80px;padding-block:10px}
}
.policy-layout-grid>*,.terms-layout-grid>*{min-width:0}
.policy-card-content,.terms-card-content{overflow-wrap:anywhere}
@media(max-width:760px){
  .policy-layout-grid,.terms-layout-grid{grid-template-columns:minmax(0,1fr)}
  .section-title-wrap{min-width:0;flex-wrap:wrap}
  .section-title-wrap h2{overflow-wrap:anywhere}
  #cockpitCard{transform:none!important;max-width:100%}
  .cockpit-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}
  .cockpit-tab-btn{min-width:0;white-space:normal;padding:10px 8px}
  .cockpit-screen-body{padding:16px}
  .world-btn.active,.world-btn:hover{transform:none}
}
@media(max-width:760px){
  .school-plans-grid{grid-template-columns:minmax(0,1fr)}
  .school-plan-card{min-width:0;overflow-wrap:anywhere;padding:28px 20px}
  .school-plan-card>*{min-width:0;max-width:100%}
  .sp-plan-price{flex-wrap:wrap}
  .btn-school-blue,.btn-school-outline{white-space:normal;overflow-wrap:anywhere;min-width:0}
  .nav-links{flex-wrap:wrap;max-width:100%;gap:10px}
  .btn-nav-outline{max-width:100%;min-width:0}
}
@media(max-width:1100px){
  .site-nav .nav-inner{height:auto;min-height:80px;flex-wrap:wrap;padding-block:10px}
  .site-nav .nav-links{min-width:0;flex:1 1 100%;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-start}
  .site-nav .nav-links a,.site-nav .nav-links button{max-width:100%;white-space:normal}
}
.sp-plan-features li span[data-i18n]{color:inherit;font-weight:inherit}
@media(min-width:761px){
  .cockpit-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
  .cockpit-tab-btn{white-space:normal;min-width:0;padding-inline:8px}
}
@media(max-width:760px){
  html[lang] .hero-heading{font-size:clamp(30px,8.2vw,48px);line-height:1.15;hyphens:auto}
}
@media(max-width:520px){
  .site-header .nav-actions>.btn,.site-nav .nav-actions>.btn{display:none}
}
