*{box-sizing:border-box}html{height:100%}body{color:#222;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:1.125rem;line-height:1.5;margin:0;padding:0;min-height:100vh;display:flex;flex-direction:column}main{flex:1 0 auto;padding-bottom:4rem}.home main{display:flex;flex-direction:column;min-height:0;padding-bottom:0}.home{height:100vh;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.home::-webkit-scrollbar{display:none}a{color:#288d86;text-decoration:none}.site-header{--site-header-height: 72px;position:sticky;top:0;background:#fff;z-index:20}.home .site-header{position:fixed;left:0;right:0;background:rgba(255,255,255,0.85);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:var(--site-header-height, 64px);padding:.5rem 0}.site-brand{font-family:"League Spartan",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;margin:0;font-size:1.25rem}.site-brand__link{color:inherit;text-decoration:none;font-weight:500}.site-nav{font-size:1rem;margin-left:auto}.site-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:1rem;align-items:center}.site-nav a{color:inherit;font-size:1rem}.site-nav a:focus{outline:3px solid Highlight;outline-offset:2px}.site-brand__link:focus{outline:3px solid Highlight;outline-offset:2px}footer.site-footer{margin-bottom:0;flex-shrink:0;width:100%;background:#fafafa}.home footer.site-footer{position:relative;background:rgba(255,255,255,0.85);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.5rem 0;font-size:1rem}.footer-left{text-align:left;display:flex;flex-direction:row;align-items:center;gap:2rem}.footer-human-note{font-size:.95rem;color:#444}.footer-right{display:flex;align-items:center;gap:1.5rem;text-align:right}.footer-location{color:#444}.footer-contact a{color:#288d86;text-decoration:underline;font-weight:500}.social-links{display:flex;align-items:center;gap:1rem}.social-link{display:flex;align-items:center;justify-content:center;color:#000;transition:opacity 150ms ease-in-out}.social-link:hover{opacity:0.6}.social-link:focus{outline:3px solid Highlight;outline-offset:2px}.social-link svg{display:block}@media (max-width: 600px){.footer-inner{flex-direction:column;align-items:flex-start;gap:.5rem}.footer-right{flex-direction:column;align-items:flex-start;gap:.5rem;text-align:left}}.container{max-width:1100px;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}@media (max-width: 768px){.container{padding-left:1rem;padding-right:1rem}}.page-hero{width:100%;background:#fafafa;display:flex;justify-content:center;margin-bottom:1.5rem}.page-hero__img{width:100%;height:auto;display:block;user-select:none;-webkit-user-drag:none;pointer-events:none}.page-title-row{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.page-title-row h1{margin:0}.page-tagline{font-size:1.25rem;color:rgba(2,6,23,0.85);white-space:nowrap}#blob-canvas{position:fixed;top:0;left:0;width:100%;height:100%;display:block;z-index:-1;pointer-events:none}.splash{width:100%;background:transparent;display:block;position:relative;overflow:hidden;min-height:calc(100vh - var(--site-header-height, 64px))}.home .splash{min-height:0;flex:1;padding-top:calc(var(--site-header-height, 64px) * 3);padding-bottom:calc(var(--site-header-height, 64px))}@media (max-height: 700px){.home .splash{padding-top:calc(var(--site-header-height, 64px) * 1);padding-bottom:calc(var(--site-header-height, 64px) * 1)}}.splash::before{content:"";position:absolute;inset:0;pointer-events:none}.splash__inner{display:flex;align-items:center;min-height:inherit;position:relative}.hero{color:#04121a;z-index:2;display:flex;flex-direction:column;gap:2rem;padding:2rem 0;max-width:800px}.hero-title{font-family:"League Spartan",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;margin:0;color:#04121a;font-size:4rem;line-height:1.05;max-width:18ch}.hero-subtitle{margin:0;color:rgba(2,6,23,0.85);max-width:60ch;font-size:1.5rem}.hero-btn{display:inline-block;background:#04121a;color:#fff;padding:.5rem 1rem;border-radius:6px;text-decoration:none;font-weight:700;max-width:fit-content;transition:all 250ms ease-in-out}.hero-btn:hover{opacity:0.85}.hero-btn:active{transform:scale(0.98)}.float-image{float:left;width:40%;max-width:320px;margin:0 2rem 1rem 0;shape-outside:circle(50%);border-radius:6px;box-shadow:0 2px 12px rgba(0,0,0,0.08)}@media (max-width: 700px){.float-image{float:none;display:block;margin:0 auto 1.5rem auto;width:80%;max-width:100%}}.model-viewer-wrapper{width:100%;height:400px;border-radius:8px;overflow:hidden;background:linear-gradient(135deg, #f5f5f5 0%, #e8e8e8 100%);box-shadow:0 2px 12px rgba(0,0,0,0.08)}model-viewer{width:100%;height:100%;--progress-bar-height: 2px}.things-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(300px, 1fr));gap:2rem;margin-top:3rem}.thing-card{display:flex;flex-direction:column;border-radius:8px;overflow:hidden;background:#fff;border:1px solid rgba(34,34,34,0.1);transition:all 250ms ease-in-out}.thing-card:hover{box-shadow:0 4px 24px rgba(0,0,0,0.12);transform:translateY(-2px)}.thing-model{flex:0 0 300px;width:100%;overflow:hidden}.thing-model model-viewer{width:100%;height:100%}.thing-info{flex:1;display:flex;flex-direction:column;padding:1.5rem}.thing-title{margin:0 0 .5rem 0;font-size:1.5rem}.thing-tagline{margin:0 0 1rem 0;color:rgba(2,6,23,0.85);font-size:.95rem;flex:1}.thing-link{display:inline-block;color:#288d86;font-weight:600;text-decoration:none;transition:all 150ms ease-in-out}.thing-link:hover{opacity:0.7}@media (max-width: 768px){.things-grid{grid-template-columns:1fr;gap:1.5rem}.thing-model{flex:0 0 250px}}.waitlist-form-wrapper{max-width:480px;margin:3rem 0}.waitlist-form-wrapper h3{margin:0 0 .25rem 0;font-size:1.5rem}.waitlist-description{margin:0 0 1rem 0;color:rgba(2,6,23,0.85);font-size:1rem}.waitlist-input-group{display:flex;gap:.5rem}.waitlist-input{flex:1;padding:.5rem 1rem;font-size:1rem;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;border:1px solid rgba(34,34,34,0.25);border-radius:6px;outline:none;transition:border-color 150ms ease-in-out}.waitlist-input:focus{border-color:#4ECDC4}.waitlist-input::placeholder{color:rgba(34,34,34,0.4)}.waitlist-btn{padding:.5rem 1.5rem;font-size:1rem;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:700;color:#fff;background:#04121a;border:none;border-radius:6px;cursor:pointer;white-space:nowrap;transition:opacity 250ms ease-in-out}.waitlist-btn:hover{opacity:0.85}.waitlist-btn:active{transform:scale(0.98)}.waitlist-btn:disabled{opacity:0.5;cursor:not-allowed}.waitlist-message{margin:.5rem 0 0;font-size:.95rem;min-height:1.4em}.waitlist-message.success{color:#2da199}.waitlist-message.error{color:#FF6B6B}@media (max-width: 480px){.waitlist-input-group{flex-direction:column}.waitlist-btn{width:100%}}.yt-shorts-feed{display:flex;gap:1.5rem;padding:1.5rem 0 1rem}.yt-shorts-feed__item{flex:1 1 0;min-width:0;aspect-ratio:9 / 16;border-radius:8px;overflow:hidden;background:#04121a;box-shadow:0 2px 12px rgba(0,0,0,0.08)}.yt-shorts-feed__item iframe{width:100%;height:100%;border:none;display:block}.faq-item summary{list-style:none;cursor:pointer}.faq-item summary::-webkit-details-marker{display:none}.faq-item__summary h3{display:flex;align-items:center;gap:.5rem;margin-bottom:0}.faq-item__caret{display:inline-block;width:0.7em;height:0.7em;border-right:0.15em solid currentColor;border-bottom:0.15em solid currentColor;transform:rotate(45deg);transition:transform 0.2s ease;flex-shrink:0;position:relative;top:-0.1em;margin-right:.5rem}.faq-item[open] .faq-item__caret{transform:rotate(-135deg);top:0.15em}@media (max-width: 600px){.yt-shorts-feed{gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.yt-shorts-feed::-webkit-scrollbar{display:none}.yt-shorts-feed__item{flex:0 0 75%;scroll-snap-align:start}}
