:root{--sheet:#fff;--ink:#0b0b0b;--muted:#0b0b0ba6;--hair:#0b0b0b1a}*,:before,:after{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow-x:hidden}body{color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background:#000;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.pageRoot{min-height:100vh;position:relative}.heroFixed{z-index:0;pointer-events:none;background:#000;position:fixed;inset:0;overflow:hidden}.contentSheet,.contentSheet *{pointer-events:auto}:is(.contentSheet,.contentSheet *) .heroFixed{z-index:0}.contentSheet{z-index:1;position:relative}@supports (height:100dvh){.heroFixed{height:100dvh}}.heroVideo{max-width:100%;display:block;position:absolute;top:50%;left:0;transform:translateY(-50%);width:100%!important;height:auto!important}.heroOverlay{pointer-events:none;background:linear-gradient(#0000002e 0%,#00000014 45%,#00000038 100%);place-items:center;width:100%;max-width:100%;display:grid;position:absolute;inset:0}.heroText{text-align:center;color:#fff;padding:0 16px;transform:translateY(-18px)}.heroText h1{letter-spacing:-.02em;margin:0 0 10px;font-size:clamp(28px,4vw,54px)}.heroText p{opacity:.88;margin:0;font-size:clamp(14px,1.6vw,18px)}.sectionHeader{justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.seeAllLink{color:var(--muted);font-size:14px;text-decoration:none;transition:transform .16s,color .16s}.seeAllLink:hover{color:var(--ink);transform:translate(2px)}.scrollArrow{opacity:.9;place-items:center;width:26px;height:44px;animation:1.8s ease-in-out infinite bob;display:grid;position:absolute;bottom:30px;left:50%;transform:translate(-50%)}@keyframes bob{0%,to{transform:translate(-50%)translateY(0)}50%{transform:translate(-50%)translateY(7px)}}.arrowStem{background:#000;border-radius:2px;width:2px;height:22px}.arrowHead{border-bottom:2px solid #000;border-right:2px solid #000;width:10px;height:10px;margin-top:-2px;transform:rotate(45deg)}.contentSheet{--curve:26px;border-top-left-radius:var(--curve);border-top-right-radius:var(--curve);position:relative;overflow:hidden}.contentSheet:before{content:"";z-index:5;pointer-events:none;border-top-left-radius:var(--curve);border-top-right-radius:var(--curve);background:linear-gradient(#2f74c759,#2f74c72e 35%,#2f74c700 100%);height:90px;position:absolute;top:0;left:0;right:0}.section{border-bottom:1px solid var(--hair);padding:42px 0}.centerBlock{text-align:center;place-items:center;display:grid}.sectionTitle{letter-spacing:-.01em;margin:0 0 22px;font-size:22px}.sectionSubtitle{color:var(--muted);margin:0 0 16px;font-size:18px}.blurb{letter-spacing:-.015em;margin:0;font-size:clamp(18px,2.1vw,26px);line-height:1.25}.bigButton{color:var(--ink);cursor:pointer;background:#38b6ff;border:2px solid #0b0b0b2e;border-radius:999px;padding:18px 26px;font-size:18px;transition:transform .18s,box-shadow .18s;box-shadow:0 10px 28px #00000014}.bigButton:hover{transform:translateY(-2px);box-shadow:0 14px 34px #0000001f}.featuredGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}@media (max-width:820px){.featuredGrid{grid-template-columns:1fr}}.featuredCircle{aspect-ratio:1;background-position:50%;background-size:cover;border:1px solid #0b0b0b1a;border-radius:999px;width:100%;text-decoration:none;position:relative;overflow:hidden;transform:translateZ(0);box-shadow:0 16px 40px #00000014}.featuredHover{color:#fff;opacity:0;background:0 0;align-content:center;gap:10px;padding:22px;transition:opacity .18s,background .18s;display:grid;position:absolute;inset:0}.featuredCircle:hover .featuredHover{opacity:1;background:#00000080}.featuredTitle{letter-spacing:-.01em;font-size:20px;font-weight:650}.featuredDesc{opacity:.92;font-size:14px;line-height:1.3}.sectionMicro{color:var(--muted);margin-top:6px;font-size:12px}.categoryImages{grid-template-columns:repeat(4,1fr);align-items:center;gap:10px;display:grid;overflow:hidden}.categoryImages .categoryImgBtn{all:unset;cursor:pointer;place-items:center;display:grid}.categoryImages .categoryImgMask{border-radius:50%!important;width:75px!important;height:75px!important;display:block!important;overflow:hidden!important}.categoryImages .categoryImgMask>img{object-fit:cover!important;object-position:center!important;width:100%!important;max-width:100%!important;height:100%!important;max-height:100%!important;display:block!important;position:static!important}.carouselShell{border:1px solid var(--hair);background:#ffffffe0;border-radius:18px;padding:18px;position:relative;overflow:hidden}.carouselScroller{-webkit-overflow-scrolling:touch;scrollbar-width:none;touch-action:pan-y;overscroll-behavior:contain;touch-action:pan-x pan-y;width:100%;overflow:auto hidden}.carouselScroller::-webkit-scrollbar{display:none}.carouselShell.isPaused .carouselScroller{cursor:grab}.carouselShell.isPaused .carouselScroller:active{cursor:grabbing}.carouselTrack{align-items:flex-start;gap:18px;width:max-content;padding-right:18px;display:inline-flex}.carouselItem{flex:none;justify-items:center;gap:10px;width:150px;display:grid}.miniCircle{background:#fff;border:1px solid #0b0b0b24;border-radius:999px;place-items:center;width:70px;height:70px;display:grid;box-shadow:0 10px 26px #0000000f}.miniIcon{opacity:.9;font-size:20px;transform:translateY(-1px)}.miniTitle{color:var(--muted);text-align:center;font-size:13px;line-height:1.2}.carouselHint{color:var(--muted);margin-top:10px;font-size:12px}.fadeIn{opacity:0;transition:opacity .52s,transform .52s;transform:translateY(16px)}.fadeIn.isVisible{opacity:1;transform:translateY(0)}.sheetInner{max-width:980px;margin:0 auto;padding:64px 18px 120px}.contentSheet{overscroll-behavior:contain;min-height:calc(100vh + 1px)}.timelineSection{padding:42px 0}.timelineHeader{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:22px;display:flex}.timelineSubtle{color:var(--muted);font-size:12px}.timeline{width:100%;max-width:100%;padding:6px 0;position:relative}.timelineLine{background:var(--hair);width:1px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-.5px)}.timelineRow{box-sizing:border-box;grid-template-columns:1fr 44px 1fr;align-items:start;width:100%;max-width:100%;padding:24px 0;display:grid;position:relative}.timelineRow.left .timelineCard{grid-column:1;justify-self:end}.timelineRow.right .timelineCard{grid-column:3;justify-self:start}.timelineDotWrap{pointer-events:none;z-index:10;place-items:center;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.timelineDot{background:#0b0b0b2e;border:1px solid #0b0b0b1f;border-radius:999px;width:10px;height:10px;transition:transform .24s,background .24s}.timelineDot.isActive{background:#0b0b0bd9;transform:scale(1.15)}.timelineCard{border:1px solid var(--hair);transform-origin:50%;box-sizing:border-box;background:#fffffff0;border-radius:18px;width:min(420px,92vw);max-width:92vw;padding:16px 16px 14px;box-shadow:0 12px 30px #0000000f}.timelineCard,.timelineCard *{overflow-wrap:anywhere;word-break:break-word}.timelineCard.isIn{opacity:1;transition:opacity .52s,transform .52s;transform:translateY(0)scale(1)}.timelineCard.isOut{opacity:0;pointer-events:none;transition:opacity .36s,transform .36s;transform:translateY(16px)scale(.99)}.timelineMeta{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.timelineDate{color:var(--muted);font-size:12px}.timelineTags{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.timelineTag{color:#0b0b0bad;background:#ffffffb3;border:1px solid #0b0b0b1f;border-radius:999px;padding:4px 8px;font-size:11px}.timelineCardHeader{margin-bottom:10px}.timelineTitle{letter-spacing:-.01em;margin:0;font-size:16px}.timelineSubtitle{color:var(--muted);margin:6px 0 0;font-size:13px;line-height:1.25}.timelineImageWrap{border:1px solid #0b0b0b1a;border-radius:14px;margin:10px 0;overflow:hidden}.timelineImage{object-fit:cover;width:100%;height:200px;display:block}.timelineDescription p{color:#0b0b0bc7;margin:0;font-size:13px;line-height:1.35}.timelineBullets{color:#0b0b0bc2;margin:10px 0 0;padding-left:18px;font-size:13px;line-height:1.35}.timelineDotImgWrap{background:#fff;border:4px solid #000;border-radius:999px;width:30px;height:30px;transition:transform .24s,border-color .24s;overflow:hidden;box-shadow:0 10px 22px #0000001a}.timelineDotImg{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.timelineRow.left .timelineDotImgWrap.isActive{transform:translate(25px)scale(2.5)}.timelineRow.right .timelineDotImgWrap.isActive{transform:translate(-25px)scale(2.5)}@media (max-width:780px){.timelineLine{left:14px;transform:none}.timelineRow{grid-template-columns:28px 1fr;gap:12px}.timelineDotWrap{grid-column:1;justify-content:start}.timelineRow.left .timelineCard,.timelineRow.right .timelineCard{grid-column:2;justify-self:start}.timelineDotWrap{pointer-events:none;z-index:10;place-items:center;display:grid;position:absolute;top:50%;left:15px;transform:translate(-50%,-50%)}.timelineRow.left .timelineDotImgWrap.isActive,.timelineRow.right .timelineDotImgWrap.isActive{transform:translate(0)scale(1.5)}}.projectsPage{color:#0b0b0beb;background:#fff;max-width:1100px;margin:0 auto;padding:56px 18px 80px}.projectsHeader{margin-bottom:22px}.projectsTitle{letter-spacing:-.02em;margin:0;font-size:34px}.projectsSub{color:#0b0b0b9e;margin:10px 0 18px;font-size:14px}.catRow{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.catBtn{cursor:pointer;background:#ffffffe6;border:1px solid #0b0b0b1a;border-radius:999px;align-items:center;gap:10px;padding:10px 12px;transition:transform .16s,background .16s,border-color .16s,opacity .16s;display:inline-flex}.catBtn:hover{transform:translateY(-1px)}.catIconMask{border:2px solid #2f74c700;border-radius:999px;width:22px;height:22px;transition:border-color .16s,filter .16s,opacity .16s;display:block;overflow:hidden}.catIconMask img{object-fit:cover;width:100%;height:100%;display:block}.catLabel{letter-spacing:-.01em;font-size:13px;line-height:1}.catBtn.isOn{background:#2f74c71a;border-color:#2f74c759}.catBtn.isOn .catIconMask{border-color:#2f74c7b3}.catBtn.isOff{opacity:.55;background:#00000008;border-color:#0b0b0b14}.catBtn.isOff .catIconMask{filter:grayscale();border-color:#0b0b0b24}.productsGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}@media (max-width:920px){.productsGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.productsGrid{grid-template-columns:1fr}}.productCard{color:inherit;background:#ffffffeb;border:1px solid #0b0b0b1a;border-radius:18px;text-decoration:none;transition:transform .18s,box-shadow .18s;display:block;overflow:hidden;box-shadow:0 14px 34px #0000000f}.productCard:hover{transform:translateY(-2px);box-shadow:0 18px 46px #00000017}.productThumb{aspect-ratio:1;background:#0000000a;position:relative;overflow:hidden}.productThumb img{object-fit:cover;width:100%;height:100%;display:block}.productCatBadge{background:#ffffffeb;border:1px solid #0b0b0b1f;border-radius:999px;width:22px;height:22px;position:absolute;top:10px;right:10px;overflow:hidden;box-shadow:0 10px 20px #0000001f}.productCatBadge img{object-fit:cover;width:100%;height:100%;display:block}.productInfo{padding:12px 12px 14px}.productTitle{letter-spacing:-.01em;font-size:14px}.productMeta{color:#0b0b0b99;margin-top:6px;font-size:12px}.miniThumb{object-fit:cover;object-position:center;width:100%;height:100%;display:block;transform:scale(1.02)}.miniWrap{display:inline-block;position:relative}.miniCircle{border-radius:999px;width:56px;height:56px;position:relative;overflow:hidden}.miniCatBadge{pointer-events:auto;z-index:10;display:block;position:absolute;top:4px;right:4px}.miniCatIcon{object-fit:cover;background:#ffffffeb;border:2px solid #0000001f;border-radius:999px;width:28px;height:28px;display:block;box-shadow:0 6px 14px #0000001a}.miniCatLabel{color:#fff;white-space:nowrap;opacity:0;transform-origin:100%;background:#0f0f0ff0;border-radius:10px;padding:6px 8px;font-size:10px;line-height:1;transition:opacity .16s,transform .16s;position:absolute;top:50%;right:calc(100% + 6px);transform:translateY(-50%)}.miniCatBadge:hover .miniCatLabel{opacity:1;transform:translateY(-50%)translate(-2px)}.miniWrap{line-height:0}.miniCatBadge,.miniCatLabel{margin:0}
