@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&display=swap");:root{color-scheme:dark;--ink:#f0f1f3;--dusk:#b0b4bb;--fog:#1a1c20;--clay:#d2d4d8;--sage:#c2c5cb;--gold:#dedfe2;--card:#23262b;--shadow:0 18px 42px rgba(0,0,0,.35);--glow:0 0 0 transparent;--ring:0 0 0 1px rgba(148,163,184,.18);--chamfer-lg:12px;--chamfer-sm:8px;--chamfer-lg-inner:11px;--chamfer-sm-inner:7px}*{box-sizing:border-box;padding:0;margin:0}body{font-family:IBM Plex Sans,sans-serif;color:var(--ink);background:linear-gradient(180deg,#181a1e,#111214);min-height:100vh;line-height:1.55}body:before{content:"";position:fixed;inset:0;background:linear-gradient(hsla(0,0%,100%,.02) 1px,transparent 0);background-size:100% 32px;opacity:.12;pointer-events:none;z-index:-1}a{color:inherit;text-decoration:none}.page{min-height:100vh;display:flex;flex-direction:column}.container{width:min(1120px,92vw);margin:0 auto}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:rgba(25,27,31,.92);border-bottom:1px solid hsla(0,0%,100%,.08)}.header-inner{display:flex;align-items:center;justify-content:space-between;padding:16px 0}.brand{font-family:IBM Plex Sans,sans-serif;letter-spacing:.02em;text-transform:none;display:inline-flex;align-items:center;gap:12px;color:#f1f2f4}.brand strong{font-size:1rem;letter-spacing:.04em}.brand-mark{width:14px;height:14px;border-radius:2px;background:#c8ccd2;box-shadow:none}.nav{display:flex;gap:18px;font-size:.88rem;text-transform:none;letter-spacing:.03em;color:var(--dusk)}.nav a{position:relative;padding-bottom:4px}.nav a:after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:linear-gradient(90deg,var(--clay),transparent);transition:width .2s ease}.nav a:hover:after{width:100%}.nav-actions{position:relative}.nav-actions,.nav-panel{display:flex;align-items:center;gap:20px}.nav-toggle{--shape-cut:var(--chamfer-sm);--shape-cut-inner:var(--chamfer-sm-inner);--shape-border:hsla(220,4%,59%,.42);--shape-fill:rgba(34,36,41,.62);display:none;flex-direction:column;justify-content:center;gap:4px;width:38px;height:38px;border-radius:0;padding:8px}.nav-toggle span{display:block;height:2px;background:var(--ink);border-radius:999px;transition:transform .2s ease,opacity .2s ease}.nav-toggle--open span:first-child{transform:translateY(6px) rotate(45deg)}.nav-toggle--open span:nth-child(2){opacity:0}.nav-toggle--open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.user-menu{position:relative}.carousel-button,.cta,.ghost,.ghost-link,.nav-toggle,.panel-tabs button,.project-item,.user-toggle{--shape-cut:var(--chamfer-sm);--shape-cut-inner:var(--chamfer-sm-inner);--shape-border:hsla(220,4%,59%,.35);--shape-fill:rgba(34,36,41,.58);position:relative;isolation:isolate;border:none;background:transparent;-webkit-clip-path:polygon(var(--shape-cut) 0,100% 0,100% calc(100% - var(--shape-cut)),calc(100% - var(--shape-cut)) 100%,0 100%,0 var(--shape-cut));clip-path:polygon(var(--shape-cut) 0,100% 0,100% calc(100% - var(--shape-cut)),calc(100% - var(--shape-cut)) 100%,0 100%,0 var(--shape-cut))}.carousel-button:after,.cta:after,.ghost-link:after,.ghost:after,.nav-toggle:after,.panel-tabs button:after,.project-item:after,.user-toggle:after{content:"";position:absolute;inset:1px;pointer-events:none;z-index:-1;background:var(--shape-fill);-webkit-clip-path:polygon(var(--shape-cut-inner) 0,100% 0,100% calc(100% - var(--shape-cut-inner)),calc(100% - var(--shape-cut-inner)) 100%,0 100%,0 var(--shape-cut-inner));clip-path:polygon(var(--shape-cut-inner) 0,100% 0,100% calc(100% - var(--shape-cut-inner)),calc(100% - var(--shape-cut-inner)) 100%,0 100%,0 var(--shape-cut-inner))}.carousel-button:before,.cta:before,.ghost-link:before,.ghost:before,.nav-toggle:before,.panel-tabs button:before,.project-item:before,.user-toggle:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-2;background:var(--shape-border);-webkit-clip-path:polygon(var(--shape-cut) 0,100% 0,100% calc(100% - var(--shape-cut)),calc(100% - var(--shape-cut)) 100%,0 100%,0 var(--shape-cut));clip-path:polygon(var(--shape-cut) 0,100% 0,100% calc(100% - var(--shape-cut)),calc(100% - var(--shape-cut)) 100%,0 100%,0 var(--shape-cut))}.user-toggle{--shape-cut:var(--chamfer-sm);--shape-cut-inner:var(--chamfer-sm-inner);--shape-border:hsla(220,4%,59%,.35);--shape-fill:rgba(32,34,38,.8);border-radius:0;padding:8px 14px;text-transform:none;letter-spacing:.04em;font-size:.82rem;color:var(--dusk)}.user-toggle--active{--shape-border:hsla(220,5%,68%,.76);color:var(--ink)}.user-panel{position:absolute;right:0;top:calc(100% + 12px);width:min(340px,86vw);background:var(--card);border:1px solid hsla(220,4%,59%,.34);border-radius:20px;padding:18px;box-shadow:var(--shadow);z-index:20}.panel-eyebrow{text-transform:uppercase;letter-spacing:.3em;font-size:.65rem;color:var(--dusk)}.panel-tabs{margin-top:14px;display:flex;gap:10px}.panel-tabs button{--shape-cut:var(--chamfer-sm);--shape-cut-inner:var(--chamfer-sm-inner);--shape-border:hsla(220,4%,59%,.35);--shape-fill:rgba(34,36,41,.72);flex:1 1;padding:8px 12px;border-radius:0;text-transform:uppercase;letter-spacing:.18em;font-size:.65rem;color:var(--dusk)}.panel-tabs button.active{--shape-border:hsla(220,5%,68%,.76);--shape-fill:hsla(220,5%,68%,.14);color:var(--ink)}.user-session{margin-top:14px;display:grid;grid-gap:14px;gap:14px}.user-links{display:flex;flex-wrap:wrap;gap:10px}.ghost{--shape-cut:var(--chamfer-sm);--shape-cut-inner:var(--chamfer-sm-inner);--shape-border:hsla(220,4%,59%,.35);--shape-fill:rgba(34,36,41,.62);display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border-radius:0;color:var(--ink);font-weight:600;font-size:.85rem}.main{flex:1 1}.hero{padding:64px 0 24px}.hero-inner h1{font-family:IBM Plex Sans,sans-serif;font-size:clamp(2.2rem,6vw,3.8rem);margin-bottom:12px}.hero-inner p{font-size:1.1rem;color:var(--dusk);max-width:720px}.hero-grid{display:grid;grid-gap:24px;gap:24px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));padding-bottom:48px}.hero-landing{padding:116px 0 92px;position:relative;overflow:hidden;isolation:isolate;border-bottom:1px solid hsla(0,0%,100%,.08);background:linear-gradient(180deg,rgba(41,44,50,.62),rgba(19,20,24,.95))}.hero-landing:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(28,30,34,.62),rgba(18,19,22,.92));opacity:1;z-index:-2}.hero-orb{display:none}.hero-landing__inner{max-width:900px;padding:0;position:relative;z-index:1}@keyframes riseIn{0%{opacity:0;transform:translate3d(0,18px,0)}to{opacity:1;transform:translateZ(0)}}.hero-landing__inner>*{opacity:0;animation:riseIn .72s ease-out forwards}.hero-landing__inner>:nth-child(2){animation-delay:.08s}.hero-landing__inner>:nth-child(3){animation-delay:.16s}.hero-landing__inner>:nth-child(4){animation-delay:.24s}.hero-landing__inner>:nth-child(5){animation-delay:.32s}.hero-kicker{display:inline-flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.36em;font-size:.68rem;color:#d0d3d9;margin-bottom:16px}.hero-kicker:before{content:"";width:8px;height:8px;border-radius:2px;background:#afb3ba;box-shadow:none}.hero-landing__inner h1{font-family:IBM Plex Sans,sans-serif;font-size:clamp(2.2rem,4.7vw,4.35rem);margin:0 0 18px;color:var(--ink);line-height:1.05;max-width:17ch;text-wrap:balance}.hero-landing__subtitle{font-size:1.06rem;color:var(--dusk);line-height:1.74;max-width:62ch}.hero-landing__actions{margin-top:28px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}.hero-landing__stats{margin-top:34px;display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.hero-landing__stat{background:rgba(31,33,38,.85);border:1px solid hsla(0,0%,100%,.08);padding:14px 16px;border-radius:14px;display:grid;grid-gap:4px;gap:4px}.hero-landing__stat strong{font-family:IBM Plex Sans,sans-serif;font-size:1.05rem;letter-spacing:.06em;color:#f2f3f5}.hero-landing__stat span{font-size:.77rem;letter-spacing:.12em;text-transform:uppercase;color:var(--dusk)}.section--labs{padding-top:64px;padding-bottom:26px}.labs-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.lab-card{background:linear-gradient(180deg,rgba(38,40,45,.9),rgba(29,31,35,.95));border:1px solid hsla(0,0%,100%,.08);border-radius:18px;padding:20px;display:grid;grid-gap:10px;gap:10px}.lab-card__tag{font-size:.63rem;letter-spacing:.26em;text-transform:uppercase;color:var(--clay)}.lab-card h3{font-family:IBM Plex Sans,sans-serif;font-size:1.15rem}.lab-card p{color:var(--dusk);line-height:1.65}.hero-card{background:var(--card);border:1px solid rgba(148,163,184,.12);padding:28px;border-radius:28px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:12px}.hero-card--alt{background:linear-gradient(135deg,#3a3d43,#34373c 45%,#2d2f34);color:#f2f4f7}.hero-card--alt .cta{margin-top:auto;background:linear-gradient(135deg,var(--clay),var(--sage));font-weight:600;width:-moz-fit-content;width:fit-content}.cta,.hero-card--alt .cta{padding:12px 18px;border-radius:0;color:#202226}.cta{--shape-cut:var(--chamfer-lg);--shape-cut-inner:var(--chamfer-lg-inner);--shape-border:hsla(220,5%,68%,.78);--shape-fill:linear-gradient(135deg,var(--clay),var(--sage));display:inline-flex;align-items:center;justify-content:center;font-weight:700;box-shadow:var(--glow);text-transform:none;letter-spacing:.04em}.eyebrow{text-transform:uppercase;letter-spacing:.4em;font-size:.7rem;color:rgba(148,163,184,.7)}.hero-card--alt .eyebrow{color:rgba(226,232,240,.6)}.hero-card h2{font-family:IBM Plex Sans,sans-serif;font-size:1.6rem}.hero-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto}.hero-tags span{border:1px solid rgba(148,163,184,.2);padding:6px 12px;border-radius:999px;font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:var(--dusk)}.section{padding:52px 0 84px}.section--compact{padding:16px 0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px}.section--compact .auth-message{margin:0}.verify-link{margin-left:6px;padding:0;border:none;background:none;color:var(--clay);font-weight:600;text-decoration:underline;cursor:pointer}.verify-link:disabled{color:var(--dusk);cursor:default;text-decoration:none}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:26px}.section-heading h2{font-family:IBM Plex Sans,sans-serif;font-size:2rem}.section-heading p{color:var(--dusk);max-width:60ch}.ghost-link{--shape-cut:var(--chamfer-sm);--shape-cut-inner:var(--chamfer-sm-inner);--shape-border:hsla(220,4%,59%,.35);--shape-fill:rgba(34,36,41,.62);display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;color:var(--clay);text-transform:none;letter-spacing:.04em;font-size:.86rem}.carousel-button:hover,.cta:hover,.ghost-link:hover,.ghost:hover,.panel-tabs button:hover,.user-toggle:hover{--shape-border:hsla(220,5%,68%,.7)}.post-grid{display:grid;grid-gap:24px;gap:24px;grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:1024px){.post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.post-grid{grid-template-columns:minmax(0,1fr)}}.posts-pagination{margin-top:28px;gap:12px}.posts-pagination,.posts-pagination__pages{display:flex;align-items:center;justify-content:center;flex-wrap:wrap}.posts-pagination__pages{gap:8px}.posts-pagination__link,.posts-pagination__page{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:8px 12px;border:1px solid rgba(148,163,184,.28);border-radius:10px;color:var(--ink);text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;font-weight:600}.posts-pagination__page{min-width:36px;padding:8px}.posts-pagination__page--active{border-color:hsla(220,5%,68%,.75);color:var(--clay);background:hsla(220,5%,68%,.1)}.posts-pagination__link:hover,.posts-pagination__page:hover{border-color:hsla(220,5%,68%,.65)}.posts-pagination__link--disabled{opacity:.5;pointer-events:none}.section-title{font-family:IBM Plex Sans,sans-serif;font-size:2rem}.section--projects{padding-top:64px;padding-bottom:52px}.projects-list{display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(0,1fr)}.project-item{--shape-cut:var(--chamfer-lg);--shape-cut-inner:var(--chamfer-lg-inner);--shape-border:rgba(148,163,184,.24);--shape-fill:linear-gradient(180deg,rgba(16,20,28,.84),rgba(10,13,19,.92));--project-image:none;min-height:178px;display:flex;align-items:flex-end;overflow:hidden}.project-item:before{z-index:0}.project-item:after{inset:1px;z-index:0;background:linear-gradient(180deg,rgba(16,20,28,.68),rgba(10,13,19,.92)),var(--project-image);background-position:50%;background-repeat:no-repeat;background-size:cover;-webkit-clip-path:polygon(var(--shape-cut-inner) 0,100% 0,100% calc(100% - var(--shape-cut-inner)),calc(100% - var(--shape-cut-inner)) 100%,0 100%,0 var(--shape-cut-inner));clip-path:polygon(var(--shape-cut-inner) 0,100% 0,100% calc(100% - var(--shape-cut-inner)),calc(100% - var(--shape-cut-inner)) 100%,0 100%,0 var(--shape-cut-inner))}.project-item__content{position:relative;z-index:1;width:min(760px,100%);padding:22px 24px}.project-item__meta{font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--clay)}.project-item h3{font-family:IBM Plex Sans,sans-serif;font-size:1.15rem;margin-top:9px}.project-item p{margin-top:10px;color:var(--dusk);line-height:1.6}.product-grid{margin-top:24px;display:grid;grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.product-card{background:var(--card);border-radius:24px;padding:20px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:12px;border:1px solid rgba(148,163,184,.12)}.product-card--link{transition:transform .2s ease,box-shadow .2s ease}.product-card--link:hover{transform:translateY(-2px);box-shadow:0 26px 70px rgba(5,12,28,.6);border-color:hsla(220,5%,68%,.3)}.product-card__thumb{border-radius:18px;background:var(--fog);border:1px solid rgba(148,163,184,.16);height:200px;display:grid;place-items:center;overflow:hidden}.product-card__thumb img{width:100%;height:100%;object-fit:contain;display:block}.product-thumb__placeholder{color:var(--dusk);font-size:.85rem;text-align:center;padding:20px}.product-card__meta{display:flex;justify-content:space-between;font-size:.75rem;text-transform:uppercase;letter-spacing:.2em;color:var(--dusk)}.product-card h3{font-family:IBM Plex Sans,sans-serif;font-size:1.3rem}.product-excerpt{color:var(--dusk);line-height:1.6}.library-grid{margin-top:24px;display:grid;grid-gap:24px;gap:24px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.library-card{background:var(--card);border-radius:24px;padding:14px;border:1px solid rgba(148,163,184,.12);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:14px;color:inherit;text-decoration:none}.library-card--link{transition:transform .2s ease,box-shadow .2s ease}.library-card--link:hover{transform:translateY(-2px);border-color:hsla(220,5%,68%,.3);box-shadow:0 26px 70px rgba(5,12,28,.6)}.library-card__media{position:relative;border-radius:18px;overflow:hidden;background:var(--fog);border:1px solid rgba(148,163,184,.18);min-height:200px;aspect-ratio:16/9;display:grid;place-items:center}.library-card__media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,13,17,0) 40%,rgba(11,13,17,.78));z-index:1;pointer-events:none}.library-card__media img{position:relative;z-index:0;width:100%;height:100%;object-fit:cover;display:block}.library-card__placeholder{color:var(--dusk);font-size:.85rem;text-align:center;padding:20px;z-index:2}.library-card__title{position:absolute;left:12px;right:12px;bottom:12px;z-index:2;display:inline-flex;align-items:center;gap:8px}.library-card__title span{display:inline-block;max-width:100%;background:rgba(12,14,18,.78);border:1px solid hsla(220,5%,68%,.32);border-radius:999px;padding:6px 12px;font-family:IBM Plex Sans,sans-serif;font-size:.85rem;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.library-card__meta{font-size:.7rem;text-transform:uppercase;letter-spacing:.2em;color:var(--dusk)}.library-card__footer,.library-card__meta{display:flex;justify-content:space-between;gap:12px}.library-card__footer{align-items:center}.library-card__tag{border:1px solid rgba(148,163,184,.18);border-radius:999px;padding:4px 12px;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink)}.library-card__link{color:var(--clay)}.library-card__link,.library-card__status{font-size:.7rem;text-transform:uppercase;letter-spacing:.22em}.library-card__status{color:var(--dusk)}.product-card__carousel{display:flex;flex-direction:column;gap:10px;width:100%;min-width:0}.carousel-frame{border-radius:18px;background:var(--fog);border:1px solid rgba(148,163,184,.16);aspect-ratio:16/9;display:grid;place-items:center;overflow:hidden;width:100%;max-width:100%}.carousel-frame img{width:100%;height:100%;object-fit:contain;display:block;max-width:100%}.carousel-placeholder{color:var(--dusk);font-size:.85rem;text-align:center;padding:20px}.carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;text-transform:uppercase;letter-spacing:.2em;font-size:.65rem;color:var(--dusk)}.carousel-thumbs{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px;max-width:100%;min-width:0}.carousel-thumb{border:1px solid rgba(148,163,184,.25);background:var(--card);border-radius:12px;padding:4px;width:64px;height:44px;display:grid;place-items:center;cursor:pointer}.carousel-thumb img{width:100%;height:100%;object-fit:cover;border-radius:8px;display:block}.carousel-thumb--active{border-color:hsla(220,5%,68%,.7);box-shadow:0 6px 18px hsla(220,5%,68%,.2)}.carousel-button{--shape-cut:var(--chamfer-sm);--shape-cut-inner:var(--chamfer-sm-inner);--shape-border:rgba(148,163,184,.25);--shape-fill:rgba(15,19,26,.45);border-radius:0;padding:6px 12px;font-size:.65rem;text-transform:uppercase;letter-spacing:.2em;color:var(--dusk);cursor:pointer}.carousel-button:hover{--shape-border:rgba(226,232,240,.45);color:var(--ink)}.carousel-count{font-size:.65rem}.auth-subtitle{margin-top:8px;color:var(--dusk);font-size:.95rem}.auth-card{background:var(--card);border:1px solid rgba(148,163,184,.12);border-radius:24px;padding:24px;box-shadow:var(--shadow)}.auth-card h2{font-family:IBM Plex Sans,sans-serif;font-size:1.4rem}.contact-grid{display:grid;grid-gap:24px;gap:24px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start}.contact-card{background:var(--card);border:1px solid rgba(148,163,184,.12);border-radius:24px;padding:24px;box-shadow:var(--shadow)}.contact-card h2{font-family:IBM Plex Sans,sans-serif;font-size:1.4rem;margin-top:10px}.contact-email{margin-top:18px;font-size:1rem;font-weight:600}.contact-email a{color:var(--clay)}.contact-form{margin-top:18px;display:grid;grid-gap:14px;gap:14px}.contact-form label{display:grid;grid-gap:8px;gap:8px;font-size:.8rem;text-transform:uppercase;letter-spacing:.16em;color:var(--dusk)}.contact-form input,.contact-form textarea{width:100%;padding:11px 12px;border-radius:12px;border:1px solid rgba(148,163,184,.25);font-family:inherit;background:rgba(15,23,42,.6);color:var(--ink)}.contact-form textarea{resize:vertical;min-height:140px}.contact-form button{width:-moz-fit-content;width:fit-content}.contact-form button:disabled{opacity:.65}.contact-status{margin-top:14px;font-size:.9rem}.contact-status--success{color:var(--sage)}.contact-status--error{color:#ff9b9b}.auth-forms{margin-top:18px;display:grid;grid-gap:16px;gap:16px}.auth-forms h4{font-size:.9rem;text-transform:uppercase;letter-spacing:.2em;color:var(--dusk);margin-bottom:8px}.auth-forms input{width:100%;margin-bottom:10px;padding:10px 12px;border-radius:12px;border:1px solid rgba(148,163,184,.25);font-family:inherit;background:rgba(15,23,42,.6);color:var(--ink)}.auth-forms button{margin-top:4px}.auth-oauth{margin-top:16px;display:grid;grid-gap:12px;gap:12px}.google-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:12px 16px;border-radius:14px;border:1px solid rgba(148,163,184,.35);background:#fff;color:#111827;font-weight:600;font-size:.95rem;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 10px 25px rgba(15,23,42,.12)}.google-button:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(15,23,42,.18)}.google-icon{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center}.google-icon svg{width:100%;height:100%;display:block}.auth-divider{display:flex;align-items:center;gap:12px;color:var(--dusk);font-size:.8rem;text-transform:uppercase;letter-spacing:.2em}.auth-divider:after,.auth-divider:before{content:"";flex:1 1;height:1px;background:rgba(148,163,184,.2)}.auth-resend{margin-top:12px}.auth-resend h4{margin-bottom:6px}.auth-message{margin-top:12px;font-size:.85rem;color:var(--dusk)}.auth-session{margin-top:16px;display:grid;grid-gap:12px;gap:12px}.auth-foot,.auth-note{color:var(--dusk)}.auth-foot{margin-top:16px;font-size:.85rem}.auth-page{display:grid;grid-gap:24px;gap:24px;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:start}.auth-aside{background:linear-gradient(135deg,#0d1724,#17273c 45%,#1f334d);color:#f2f4f7;border-radius:24px;padding:24px;box-shadow:var(--shadow)}.auth-aside h3{font-family:IBM Plex Sans,sans-serif;font-size:1.2rem;margin-bottom:12px}.auth-aside ul{margin:0;padding-left:18px;display:grid;grid-gap:8px;gap:8px}.checkout-grid{display:grid;grid-gap:24px;gap:24px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start}.checkout-summary h2{font-family:IBM Plex Sans,sans-serif;font-size:1.6rem;margin-bottom:16px}.checkout-card{background:var(--card);border:1px solid rgba(148,163,184,.12);border-radius:24px;padding:22px;box-shadow:var(--shadow);display:grid;grid-gap:12px;gap:12px}.account-grid{display:grid;grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.account-card{background:var(--card);border:1px solid rgba(148,163,184,.12);border-radius:24px;padding:22px;box-shadow:var(--shadow)}.account-card h2{font-family:IBM Plex Sans,sans-serif;font-size:1.4rem;margin-bottom:8px}.account-history{display:grid;grid-gap:24px;gap:24px}.history-list{margin-top:16px;display:grid;grid-gap:12px;gap:12px}.history-item{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid rgba(148,163,184,.15)}.history-item--link{text-decoration:none;color:inherit;transition:color .2s ease,transform .2s ease}.history-item--link:hover{color:var(--ink);transform:translateX(2px)}.history-item:last-child{border-bottom:none}.history-title{font-weight:600}.history-meta{margin-top:4px;font-size:.85rem;color:var(--dusk)}.history-right{text-align:right}.history-amount{font-weight:600}.history-link{display:inline-block;margin-top:6px;font-size:.85rem;color:var(--ink);text-decoration:underline;text-underline-offset:3px}.release-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.release-list{margin-top:16px;display:grid;grid-gap:16px;gap:16px}.release-card{border:1px solid rgba(148,163,184,.2);border-radius:18px;padding:16px;background:var(--card)}.release-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.release-meta-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.release-download{margin-top:4px;padding:6px 12px;font-size:.75rem}.release-download[disabled]{opacity:.6;cursor:not-allowed}.release-title{font-weight:600}.release-subtitle{margin-top:4px}.release-date,.release-subtitle{font-size:.85rem;color:var(--dusk)}.release-changelog{margin-top:12px;white-space:pre-wrap;color:var(--ink)}.post-grid--compact{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:1024px){.post-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.post-grid--compact{grid-template-columns:minmax(0,1fr)}}.post-card{background:var(--card);border-radius:24px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;border:1px solid rgba(148,163,184,.12);transition:transform .2s ease,box-shadow .2s ease}.post-card:hover{transform:translateY(-2px);box-shadow:0 24px 60px rgba(5,12,28,.6)}.post-card__image{aspect-ratio:16/9;height:auto;overflow:hidden;background:linear-gradient(120deg,hsla(220,5%,68%,.35),rgba(148,163,184,.4));display:flex;align-items:center;justify-content:center}.post-card__image img{width:100%;height:100%;object-fit:contain}.post-card__image--placeholder{font-family:IBM Plex Sans,sans-serif;color:rgba(226,232,240,.7);font-size:1.1rem}.post-card__body{padding:20px 20px 24px;display:flex;flex-direction:column;gap:10px}.post-card__meta{display:flex;gap:12px;font-size:.75rem;text-transform:uppercase;letter-spacing:.18em;color:var(--dusk)}.post-card h3{font-family:IBM Plex Sans,sans-serif;font-size:1.3rem}.post-card__link{margin-top:auto;color:var(--clay);font-weight:600}.post{padding:16px 0 64px}.product-purchase{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.product-purchase-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.product-legal{font-size:.85rem;color:var(--dusk);line-height:1.5}.product-legal a{color:inherit;text-decoration:underline;text-underline-offset:3px}.policy-overlay{position:fixed;inset:0;background:rgba(16,18,22,.6);display:flex;align-items:center;justify-content:center;padding:24px;z-index:50}.policy-modal{background:var(--card);border:1px solid rgba(148,163,184,.2);border-radius:24px;padding:24px;width:min(880px,100%);max-height:90vh;overflow:hidden;display:flex;flex-direction:column;gap:16px;box-shadow:0 24px 60px rgba(3,7,18,.6)}.policy-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.policy-modal__eyebrow{font-size:.7rem;text-transform:uppercase;letter-spacing:.3em;color:var(--dusk)}.policy-modal__title{font-family:IBM Plex Sans,sans-serif;margin:8px 0 4px}.policy-modal__subtitle{color:var(--dusk);font-size:.9rem}.policy-modal__close{border:1px solid rgba(148,163,184,.25);background:rgba(15,23,42,.7);color:var(--ink);padding:6px 12px;border-radius:999px;font-size:.8rem;cursor:pointer}.policy-modal__content{overflow-y:auto;padding-right:8px;display:grid;grid-gap:12px;gap:12px}.policy-card{border:1px solid rgba(148,163,184,.2);border-radius:18px;padding:16px;background:rgba(15,23,42,.7)}.policy-card__toggle{width:100%;display:flex;justify-content:space-between;align-items:center;border:none;background:transparent;font-size:1rem;font-weight:600;cursor:pointer;color:var(--ink)}.policy-card__chevron{font-size:1.2rem;color:var(--dusk)}.policy-card__body{margin-top:12px;white-space:pre-wrap;font-size:.9rem;color:var(--ink);line-height:1.6}.policy-card__link{display:inline-block;margin-top:10px;font-size:.85rem;color:var(--ink);text-decoration:underline;text-underline-offset:3px}.policy-modal__agree{display:flex;align-items:flex-start;gap:10px;font-size:.9rem;color:var(--ink)}.policy-modal__actions{display:flex;justify-content:flex-end;gap:12px}.policy-modal__links{display:flex;flex-wrap:wrap;gap:12px;font-size:.85rem}.policy-modal__link{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.product-purchase-card{background:var(--card);border:1px solid rgba(148,163,184,.12);border-radius:24px;padding:20px;box-shadow:var(--shadow);display:grid;grid-gap:18px;gap:18px;min-height:420px;margin-bottom:24px}.product-price{display:flex;flex-direction:column;gap:6px}.product-price__label{text-transform:uppercase;letter-spacing:.2em;font-size:.7rem;color:var(--dusk)}.product-price__amount{font-family:IBM Plex Sans,sans-serif;font-size:2.2rem;color:var(--ink)}.product-faq{margin-top:28px}.product-faq h2{margin:0 0 14px;font-family:IBM Plex Sans,sans-serif;font-size:1.35rem}.product-faq__list{display:grid;grid-gap:10px;gap:10px}.product-faq__item{border:1px solid rgba(148,163,184,.18);border-radius:14px;background:var(--card);padding:12px 14px}.product-faq__item summary{cursor:pointer;font-weight:600;color:var(--ink)}.product-faq__item p{margin:10px 0 0;color:var(--ink);line-height:1.7;white-space:pre-wrap}.post-meta{display:flex;gap:16px;text-transform:uppercase;letter-spacing:.2em;font-size:.75rem;color:var(--dusk);margin-bottom:16px}.post-hero{margin:24px 0;border-radius:32px;overflow:hidden;box-shadow:var(--shadow);aspect-ratio:16/9;background:linear-gradient(120deg,hsla(220,5%,68%,.35),hsla(220,4%,49%,.32));display:flex;align-items:center;justify-content:center}.post-hero img{width:100%;height:100%;object-fit:contain}.post-content{font-size:1.05rem;line-height:1.8;color:var(--ink)}.post-content p{margin:0 0 1em}.post-content p:last-child{margin-bottom:0}.post-content ol,.post-content ul{margin:0 0 1em 1.2em}.post-content li{margin-bottom:.4em}.post-content--plain{white-space:pre-wrap}.post-content h2,.post-content h3{font-family:IBM Plex Sans,sans-serif;margin:28px 0 12px}.post-media{margin-top:48px}.post-media h3{font-family:IBM Plex Sans,sans-serif;margin-bottom:16px}.media-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.media-grid img{width:100%;height:180px;object-fit:cover;border-radius:20px;box-shadow:var(--shadow)}.media-card{background:var(--card);border:1px solid rgba(148,163,184,.16);border-radius:20px;padding:16px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px}.empty{padding:24px;border:1px dashed rgba(148,163,184,.3);border-radius:18px;text-align:center;color:var(--dusk)}.site-footer{padding:56px 0 72px;border-top:1px solid hsla(220,4%,49%,.24);background:rgba(6,12,21,.94)}.footer-inner{display:grid;grid-gap:24px;gap:24px;align-items:start;grid-template-columns:minmax(0,1fr)}.footer-title{font-family:IBM Plex Sans,sans-serif;font-size:1.2rem}.footer-copy{color:var(--dusk);max-width:320px}.footer-links{display:flex;flex-wrap:wrap;gap:16px 24px;text-transform:uppercase;letter-spacing:.2em;font-size:.75rem;color:var(--dusk)}.footer-copy a{color:inherit}@media (max-width:720px){.header-inner{padding:14px 0}.nav-toggle{display:inline-flex}.nav-panel{position:absolute;right:0;top:calc(100% + 12px);flex-direction:column;align-items:stretch;gap:16px;padding:16px;background:var(--card);border-radius:18px;box-shadow:var(--shadow);min-width:220px;display:none;z-index:30}.nav-panel.nav-panel--open{display:flex}.nav{flex-direction:column;gap:12px;font-size:.8rem;letter-spacing:.15em}.nav-actions{gap:10px}.user-toggle{width:100%;text-align:left}.user-panel{position:static;width:100%;box-shadow:none;padding:12px 0 0}.auth-page,.checkout-grid,.contact-grid{grid-template-columns:1fr}.hero-inner h1{font-size:2.4rem}.hero-landing__inner h1{max-width:100%;font-size:clamp(2rem,8vw,2.8rem)}.hero-landing__stats,.labs-grid{grid-template-columns:1fr}.product-purchase{align-items:flex-start}.product-price__amount{font-size:1.8rem}.carousel-frame{aspect-ratio:16/9}.product-card__thumb{height:180px}}