/* Shared responsive shell. No horizontal overflow clipping is used to mask layout. */
@font-face{font-family:Satoshi;src:url('./assets/fonts/satoshi-variable.woff2') format('woff2');font-weight:300 900;font-display:swap}
@font-face{font-family:'Cabinet Grotesk';src:url('./assets/fonts/cabinet-grotesk-variable.woff2') format('woff2');font-weight:100 900;font-display:swap}
body{font-family:Satoshi,sans-serif!important}body h1,body h2,body h3{font-family:'Cabinet Grotesk',Satoshi,sans-serif!important}
.trial-subject-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}.trial-subject-link,.trial-subject-link:visited{display:flex;flex-direction:column;gap:8px;min-height:110px;padding:18px;border:1px solid #8baba0;border-radius:10px;background:#e1f1db;color:#10243e;text-decoration:none;box-shadow:3px 3px 0 #bdc7b6}.trial-subject-link strong{font-size:22px}.trial-subject-link small{font-size:14px}.trial-subject-link[data-subject=Physics]{background:#fff2ab}.trial-subject-link[data-subject=Chemistry],.trial-subject-link[data-subject=Science]{background:#daf0fb}.trial-subject-link[data-subject=Mathematics]{background:#ece1f7}.trial-subject-link[hidden]{display:none!important}@media(max-width:480px){.trial-subject-links{grid-template-columns:1fr}}
html,body{overflow-x:visible!important;max-width:100%;min-width:0;scroll-padding-top:24px}
*,*::before,*::after{box-sizing:border-box}body{margin:0}main,section,article,header,footer,nav,form,fieldset,div{min-width:0}img,svg,canvas,video{max-width:100%}button,input,select,textarea{font:inherit;max-width:100%}input,select,textarea{min-width:0}a,a:visited{color:var(--site-link,#174b62);text-underline-offset:4px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #a4492f;outline-offset:3px}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait}
.site-header{position:relative!important;inset:auto!important;display:flex!important;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:14px clamp(16px,4vw,48px)!important;width:100%!important;height:auto!important;background:#faf6eb!important;color:#10243e!important;border-bottom:1px solid #d8d1bf;z-index:40;font-family:'Satoshi',sans-serif}
.site-brand{display:flex;align-items:center;gap:10px;min-height:44px;text-decoration:none;color:#10243e!important;font-weight:850;letter-spacing:.05em;font-size:18px}.site-brand img{width:40px;height:40px;object-fit:contain}.site-menu-toggle{display:none;min-width:70px;min-height:44px;padding:8px 14px;border:1px solid #89949b;border-radius:7px;background:#fffdf7;color:#10243e}.site-nav{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.site-nav a,.site-nav button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 12px;border-radius:6px;color:#174b62!important;font:inherit;font-size:14px;text-decoration:none;border:0;background:transparent;white-space:normal}.site-nav [aria-current=page]{background:#e7edce;color:#10243e!important;font-weight:800}.site-nav a:hover,.site-nav button:hover{background:#e9eee7}.site-nav [hidden]{display:none!important}
.site-footer{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;gap:4px!important;padding:24px clamp(16px,4vw,48px)!important;margin:32px 0 0!important;width:100%!important;color:#10243e!important;background:#faf6eb!important;border-top:1px solid #d8d1bf;line-height:1.5}.site-footer a,.site-footer button{display:flex;align-items:center;min-height:44px;max-width:100%;padding:8px 0;color:#174b62!important;background:none;border:0;font:inherit;white-space:normal;overflow-wrap:anywhere;text-align:left}
.site-main{width:min(100% - 32px,1100px);margin:32px auto;line-height:1.6}.site-main>h1{font-size:clamp(28px,5vw,46px);line-height:1.15}.site-card,.trial-card{background:#fffdf7;color:#10243e;border:1px solid #c7c8bc;border-radius:16px;padding:clamp(16px,3vw,28px);margin:20px 0}.site-actions{display:flex;flex-wrap:wrap;gap:12px}.site-actions a,.site-actions button,.site-main button,.site-main select,.portal-tools button,#packetReload,#packetBoard,#packetSubject,#labsSubject{min-height:44px;padding:10px 14px;border:1px solid #8c9996;border-radius:7px;background:#fffdf7;color:#10243e}.site-actions .primary-link,.site-main button[type=submit]{background:#dff04f;color:#10243e;font-weight:750;text-decoration:none}.site-notice{border-left:4px solid #4c806c;background:#eff4e8;color:#10243e;padding:16px;line-height:1.6}.site-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:14px}.site-choices label{display:grid;gap:6px}.trial-options{display:grid;gap:12px}.trial-options button{text-align:left;white-space:normal;min-height:52px}.trial-options [aria-pressed=true]{background:#e5ecc7;border:2px solid #345e4e}.trial-review article{border-top:1px solid #c6cdbf;padding:18px 0}.trial-review li{margin:12px 0}.trial-review p{overflow-wrap:anywhere}
/* Account dialog layout is shared from Round7 src/account.css. */
.labs-shell{margin-top:30px!important;padding-top:8px!important;width:min(100% - 32px,1100px)!important}.labs-filters,.board-bar,.packet-filters{display:flex!important;flex-wrap:wrap!important;align-items:flex-end!important;justify-content:flex-start!important;gap:16px!important}.labs-filters label,.packet-filters label{display:grid;gap:6px;max-width:100%}.labs-filters select{outline:none!important}.packet-card{overflow-wrap:anywhere}.packet-card>a,.packet-card>button{display:inline-flex;align-items:center;min-height:44px;margin:6px 10px 6px 0}.packet-card table{width:100%;table-layout:fixed;overflow-wrap:anywhere}.packet-card td{padding:8px}.site-access-banner{margin:16px 0}.web-tour-tip{width:min(380px,calc(100vw - 32px))!important;left:16px!important;max-height:65dvh;overflow-y:auto}.web-tour-tip button{min-height:44px}.site-lab-frame{display:block;width:100%;height:1100px;border:0;border-radius:12px;background:#0c161d}.lab-catalogue{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:18px}.lab-catalogue a{display:block;min-height:44px;padding:12px 0}
/* Apply opacity once, inside the scene renderer. Cards remain opaque for reading. */
body{background-color:#f7f2e8}.environment-scene,.environment-art,.surroundings-layer,.ignite-env-stage{opacity:1!important;pointer-events:none!important}
.environment-controls,.surroundings-controls,[data-surroundings-toggle],#surroundingsToggle,.ignite-env-toolbar,.ignite-env-dashboard-picker,.ignite-env-explorer{display:none!important}
#trialStage>button{margin-top:18px}.ignite-env-svg .organism .interior{opacity:.25}.ignite-env-svg .organism .surface{opacity:1}
#trialRoot{background:transparent;border-color:transparent}
.site-main a:not(.trial-subject-link){background-color:#fffdf7;border-radius:3px}
#enrolmentForm fieldset{border:0;padding:0;margin:20px 0;min-width:0}#enrolmentForm legend{font-weight:750;margin-bottom:16px}#enrolmentForm input,#enrolmentForm select{width:100%;min-height:48px;padding:10px 12px;border:1px solid #899893;border-radius:7px;background:#fffdf7;color:#10243e}#enrolmentForm .enrolment-consent{display:flex;gap:12px;align-items:flex-start;margin:24px 0}#enrolmentForm input[type=checkbox]{width:24px;min-width:24px;height:24px;min-height:24px;margin-top:4px}#enrolmentForm [aria-invalid=true]{outline:2px solid #a4492e;outline-offset:2px}#enrolmentReceipt{padding:20px;background:#e1eedc;border-radius:12px}#enrolmentForm button{background:#dff04f;font-weight:750;min-height:48px}#packetCards{scroll-margin-top:24px}
.ignite-contact-page #labsMain.site-contact{background:transparent!important;padding:0!important;border-radius:0;margin:clamp(24px,4vw,56px) auto;min-height:calc(100svh - 390px)}
.site-contact h1{font-size:clamp(34px,5vw,56px);line-height:1.1;margin:12px 0 20px}.site-contact .contact-intro{max-width:700px}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));gap:20px;align-items:stretch;margin-top:24px}.contact-grid .site-card{margin:0}.contact-grid h2{font-size:26px;margin-top:0}.contact-grid p{overflow-wrap:anywhere}.contact-grid #support-address a{font-weight:750;overflow-wrap:anywhere;max-width:100%}.contact-grid .primary-link{display:inline-flex;gap:8px;align-items:center;min-height:48px;padding:10px 16px!important;background:#dff04f!important;color:#10243e;font-weight:800;text-decoration:none;border:1px solid #77854a;border-radius:7px}
.firebase-account-card #authSkip{min-height:44px;margin:0 0 4px;padding:8px 0;color:#174b62;text-decoration:underline;background:transparent;border:0;box-shadow:none;font:750 15px Satoshi,sans-serif}.firebase-account-card #authPromptHint{margin:0 0 16px}.firebase-account-card #authPhoneRecovery{margin-top:18px;padding-top:18px;border-top:1px solid #ccd2c7}.firebase-account-card [hidden]{display:none!important}
.ignite-env-svg .drifter{animation:ambient-drift var(--duration,24s) ease-in-out infinite alternate;transform-box:fill-box;transform-origin:center}
.ignite-env-svg .specimen-drift{animation:ambient-specimen 26s ease-in-out infinite alternate;transform-box:fill-box;transform-origin:center}
@keyframes ambient-drift{to{transform:translate(var(--dx,10px),var(--dy,-12px)) rotate(1deg)}}
@keyframes ambient-specimen{to{transform:translate(6px,-7px)}}
body[data-env-static=true] .ignite-env-svg *,body:has(dialog[open]) .ignite-env-svg *{animation-play-state:paused!important}
@media(max-width:900px){.site-menu-toggle{display:block}.site-nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:3px}.site-nav.is-open{display:flex}.site-nav a,.site-nav button{justify-content:flex-start}.site-header{padding:12px 16px!important}.site-main{margin:24px auto}.hero-inner,.hero-grid,.landing-grid,.demo-formats{grid-template-columns:1fr!important}.hero-art{max-width:100%;width:100%}.lab-catalogue{grid-template-columns:1fr}.labs-shell{margin-top:24px!important}.site-lab-frame{height:1200px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
