:root{--color-paper:oklch(97% .012 95);--color-paper-2:oklch(94% .016 95);--color-paper-3:oklch(91% .02 95);--color-ink:oklch(20% .012 250);--color-ink-2:oklch(38% .01 250);--color-rule:oklch(82% .012 95);--color-rule-2:oklch(76% .014 95);--color-accent:oklch(86% .18 95);--color-accent-deep:oklch(76% .2 95);--color-accent-2:oklch(66% .18 235);--color-accent-2-deep:oklch(56% .2 235);--color-accent-3:oklch(68% .24 18);--color-accent-3-deep:oklch(58% .26 18);--color-mint:oklch(80% .16 150);--color-lavender:oklch(74% .16 305);--color-focus:oklch(60% .18 235);--color-icon-pear:oklch(86% .18 95/.2);--color-icon-cyan:oklch(66% .18 235/.15);--color-icon-coral:oklch(68% .24 18/.15);--font-display:"Plus Jakarta Sans", system-ui, sans-serif;--font-body:"Plus Jakarta Sans", system-ui, sans-serif;--font-label:"JetBrains Mono", ui-monospace, monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-md:1.25rem;--text-lg:1.5rem;--text-xl:1.875rem;--text-2xl:2.25rem;--text-3xl:3rem;--text-4xl:3.75rem;--text-display:clamp(2.75rem, 5vw + 1rem, 5.25rem);--text-display-s:clamp(2.25rem, 4vw + .5rem, 3.5rem);--space-3xs:.125rem;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--space-3xl:6rem;--space-4xl:9rem;--radius-sm:8px;--radius-md:12px;--radius-card:20px;--radius-pill:999px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-snap:cubic-bezier(.22, 1, .36, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--shadow-card:0 12px 32px -16px oklch(20% .012 250/.12);--shadow-lift:0 16px 40px -12px oklch(20% .012 250/.18);--shadow-btn-edge:oklch(76% .2 95/.45);--z-base:1;--z-raised:10;--z-dropdown:100;--z-sticky:200;--z-modal:400;--z-toast:500;--page-max:72rem;--page-gutter:clamp(1rem, 4vw, 2rem);--section-gap:clamp(4rem, 8vw, 8rem)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;overflow-x:clip}[id]{scroll-margin-top:5rem}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-base);-webkit-font-smoothing:antialiased;font-feature-settings:"ss01" on, "cv11" on;font-variant-numeric:tabular-nums;line-height:1.6;overflow-x:clip}img{max-width:100%;height:auto;display:block}.shell{max-width:var(--page-max);padding-inline:var(--page-gutter);margin-inline:auto}.btn{--btn-face:var(--color-accent);--btn-ink:var(--color-ink);--btn-edge:var(--color-accent-deep);--btn-cast:var(--shadow-btn-edge);font-family:var(--font-body);font-weight:600;font-size:var(--text-base);border-radius:var(--radius-pill);color:var(--btn-ink);background:var(--btn-face);cursor:pointer;isolation:isolate;box-shadow:0 4px 0 0 var(--btn-edge), 0 6px 12px -3px var(--btn-cast);white-space:nowrap;border:0;justify-content:center;align-items:center;gap:.5em;padding:.8rem 1.4rem;text-decoration:none;transition:transform .14s cubic-bezier(.2,.7,.3,1),box-shadow .14s cubic-bezier(.2,.7,.3,1),background-color .16s;display:inline-flex;position:relative;transform:translateY(0)}.btn:hover{box-shadow:0 6px 0 0 var(--btn-edge), 0 12px 22px -4px var(--btn-cast);transform:translateY(-2px)}.btn:active{box-shadow:0 1px 0 0 var(--btn-edge), 0 2px 6px -2px var(--btn-cast);transition-duration:70ms;transform:translateY(3px)}.btn:focus-visible{outline:3px solid color-mix(in oklch, var(--btn-edge) 70%, var(--color-focus));outline-offset:3px}.btn--soft{--btn-face:var(--color-paper-2);--btn-edge:var(--color-rule-2);--btn-cast:oklch(20% .012 250/.06);box-shadow:0 2px 8px -4px var(--btn-cast)}.btn--soft:hover{box-shadow:0 4px 12px -4px var(--btn-cast)}.btn--outline{--btn-face:transparent;--btn-edge:transparent;--btn-cast:transparent;border:2px solid var(--color-rule-2);box-shadow:none}.btn--outline:hover{border-color:var(--color-accent-2);box-shadow:none}.btn--cyan{--btn-face:var(--color-accent-2);--btn-edge:var(--color-accent-2-deep);--btn-cast:oklch(56% .18 235/.4)}.btn--coral{--btn-face:var(--color-accent-3);--btn-edge:var(--color-accent-3-deep);--btn-cast:oklch(58% .24 18/.4)}.section-head{margin-bottom:var(--space-xl)}.section-head__label{font-family:var(--font-label);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--color-ink-2);opacity:.75;margin-bottom:var(--space-xs)}.section-head__title{font-family:var(--font-display);font-weight:700;font-size:var(--text-display-s);letter-spacing:-.025em;overflow-wrap:break-word;hyphens:auto;min-width:0;line-height:1.1}.products{padding-block:var(--section-gap)}.products--band{background:var(--color-paper-2)}.products--band>.shell{max-width:var(--page-max);padding-inline:var(--page-gutter);margin-inline:auto}.product-grid{gap:var(--space-xl) var(--space-lg);grid-template-columns:1fr;display:grid}@media (width>=40rem){.product-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=60rem){.product-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr))}}.product-grid>div{display:grid}.product{gap:var(--space-md);background:var(--color-paper);border-radius:var(--radius-card);height:100%;padding:var(--space-lg);box-shadow:var(--shadow-card);transition:transform .22s var(--ease-spring), box-shadow .22s;display:grid;position:relative}.product:hover{box-shadow:var(--shadow-lift);transform:translateY(-4px)}.product__image{margin:calc(-1 * var(--space-lg)) calc(-1 * var(--space-lg)) 0;border-radius:var(--radius-card) var(--radius-card) 0 0;background:var(--color-paper-3);overflow:hidden}.gallery{position:relative}.gallery__scroller{scroll-snap-type:x mandatory;scrollbar-width:none;display:flex;overflow-x:auto}.gallery__scroller::-webkit-scrollbar{display:none}.gallery__slide{scroll-snap-align:start;cursor:zoom-in;background:0 0;border:0;flex:0 0 100%;min-width:0;padding:0}.gallery__slide img{object-fit:cover;width:100%;height:200px;transition:transform var(--dur-long) var(--ease-out);display:block}.product:hover .gallery__slide img{transform:scale(1.05)}.gallery__arrow{border-radius:var(--radius-pill);width:2rem;height:2rem;color:var(--color-ink);box-shadow:var(--shadow-card);cursor:pointer;opacity:0;transition:opacity var(--dur-short), background var(--dur-short);background:oklch(97% .012 95/.85);border:0;place-items:center;font-size:1.25rem;line-height:1;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.gallery__arrow--prev{left:var(--space-xs)}.gallery__arrow--next{right:var(--space-xs)}.gallery:hover .gallery__arrow,.gallery__arrow:focus-visible{opacity:1}.gallery__arrow:hover{background:var(--color-paper)}.gallery__arrow:disabled,.gallery:hover .gallery__arrow:disabled{opacity:.25;cursor:default}@media (hover:none){.gallery__arrow{opacity:.85}.gallery__arrow:disabled{opacity:.25}}.gallery__dots{left:50%;bottom:var(--space-xs);gap:var(--space-2xs);padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-pill);backdrop-filter:blur(4px);background:oklch(20% .012 250/.35);display:flex;position:absolute;transform:translate(-50%)}.gallery__dot{border-radius:var(--radius-pill);cursor:pointer;width:.5rem;height:.5rem;transition:background var(--dur-short), transform var(--dur-short);background:oklch(97% .012 95/.55);border:0;padding:0}.gallery__dot--active{background:var(--color-accent);transform:scale(1.25)}.lightbox{z-index:var(--z-modal);backdrop-filter:blur(6px);cursor:zoom-out;animation:lightbox-fade var(--dur-short) var(--ease-out);background:oklch(20% .012 250/.88);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}@keyframes lightbox-fade{0%{opacity:0}to{opacity:1}}.lightbox__image{object-fit:contain;border-radius:var(--radius-md);max-width:min(92vw,72rem);max-height:88vh;box-shadow:var(--shadow-lift);cursor:default;animation:lightbox-zoom var(--dur-short) var(--ease-spring)}@keyframes lightbox-zoom{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.lightbox__close{top:var(--space-md);right:var(--space-md);border-radius:var(--radius-pill);width:2.75rem;height:2.75rem;color:var(--color-paper);cursor:pointer;transition:background var(--dur-short);background:oklch(97% .012 95/.15);border:0;place-items:center;font-size:1.5rem;line-height:1;display:grid;position:absolute}.lightbox__close:hover{background:oklch(97% .012 95/.3)}.lightbox__arrow{border-radius:var(--radius-pill);width:2.75rem;height:2.75rem;color:var(--color-paper);cursor:pointer;transition:background var(--dur-short);background:oklch(97% .012 95/.15);border:0;place-items:center;font-size:1.75rem;line-height:1;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.lightbox__arrow:hover{background:oklch(97% .012 95/.3)}.lightbox__arrow--prev{left:var(--space-md)}.lightbox__arrow--next{right:var(--space-md)}.lightbox__counter{bottom:var(--space-md);font-family:var(--font-label);font-size:var(--text-xs);color:var(--color-paper);padding:var(--space-2xs) var(--space-sm);border-radius:var(--radius-pill);background:oklch(97% .012 95/.15);position:absolute;left:50%;transform:translate(-50%)}.product__tag{font-family:var(--font-label);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent-2);margin-bottom:var(--space-xs)}.product__name{font-family:var(--font-display);font-weight:600;font-size:var(--text-xl);letter-spacing:-.015em;overflow-wrap:break-word;hyphens:auto;min-width:0;line-height:1.2}.product__short-desc{font-size:var(--text-sm);color:var(--color-ink-2);margin-bottom:var(--space-sm);line-height:1.5}.product__specs{gap:var(--space-xs);font-size:var(--text-sm);color:var(--color-ink-2);display:grid}.product__spec{align-items:baseline;gap:var(--space-xs);flex-wrap:wrap;display:flex}.product__spec-label{font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink-2);opacity:.7;min-width:8ch;font-size:11px}.product__pricing{margin-top:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid var(--color-rule)}.product__price-row{font-size:var(--text-sm);padding-block:var(--space-3xs);justify-content:space-between;align-items:baseline;gap:var(--space-xs);display:flex}.product__price-row span:first-child{overflow-wrap:anywhere;min-width:0;color:var(--color-ink-2);flex-shrink:1}.product__price{font-family:var(--font-display);font-weight:600;font-size:var(--text-lg);color:var(--color-ink)}.product__cta{padding-top:var(--space-md);margin-top:auto}.product:nth-child(4n+1){--card-tint:oklch(86% .18 95/.06)}.product:nth-child(4n+2){--card-tint:oklch(66% .18 235/.06)}.product:nth-child(4n+3){--card-tint:oklch(68% .24 18/.06)}.product:nth-child(4n){--card-tint:oklch(80% .16 150/.06)}.product{background:linear-gradient(var(--card-tint), var(--card-tint)), var(--color-paper)}.product:hover{background:linear-gradient(color-mix(in oklch, var(--card-tint) 200%, transparent), color-mix(in oklch, var(--card-tint) 200%, transparent)), var(--color-paper)}.info{padding-block:var(--section-gap)}.info__grid{gap:var(--space-xl);grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));display:grid}.info__card{background:var(--color-paper-2);border-radius:var(--radius-card);padding:var(--space-xl)}.info__card h3{font-family:var(--font-display);font-weight:600;font-size:var(--text-lg);margin-bottom:var(--space-md)}.info__card p{font-size:var(--text-sm);color:var(--color-ink-2);line-height:1.7}.info__card p+p{margin-top:var(--space-sm)}.contact{padding-block:var(--section-gap);background:var(--color-paper-2)}.contact__grid{gap:var(--space-lg);grid-template-columns:1fr;display:grid}@media (width>=40rem){.contact__grid{grid-template-columns:repeat(2,1fr)}}.contact__item{align-items:flex-start;gap:var(--space-md);padding:var(--space-lg);background:var(--color-paper);border-radius:var(--radius-card);color:var(--color-ink);transition:transform .22s var(--ease-spring), box-shadow .22s;box-shadow:var(--shadow-card);min-width:0;text-decoration:none;display:flex}.contact__item:hover{box-shadow:var(--shadow-lift);transform:translateY(-4px)}.contact__icon{border-radius:var(--radius-md);flex-shrink:0;place-items:center;width:48px;height:48px;display:grid}.contact__icon--pear{background:var(--color-icon-pear)}.contact__icon--cyan{background:var(--color-icon-cyan)}.contact__icon--coral{background:var(--color-icon-coral)}.contact__icon svg{width:24px;height:24px;stroke:var(--color-ink);fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.contact__label{font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;color:var(--color-ink-2);opacity:.7;margin-bottom:var(--space-3xs);font-size:11px}.contact__value{font-family:var(--font-display);font-weight:600;font-size:var(--text-md);overflow-wrap:break-word;min-width:0}.character{top:var(--space-xl);right:var(--space-xl);background:var(--color-accent);width:80px;height:80px;animation:pulse 4s var(--ease-in-out) infinite;border-radius:50%;place-items:center;font-size:2.5rem;display:grid;position:absolute;box-shadow:0 8px 24px -8px oklch(86% .18 95/.5)}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.reveal{opacity:0;animation:reveal var(--dur-long) var(--ease-out) forwards;animation-delay:calc(var(--i,0) * 80ms);animation-play-state:paused;transform:translateY(12px)}.reveal.is-visible{animation-play-state:running}@keyframes reveal{to{opacity:1;transform:none}}.star-burst{background:linear-gradient(90deg, transparent 47%, var(--color-accent-3) 47% 53%, transparent 53%), linear-gradient(0deg, transparent 47%, var(--color-accent-3) 47% 53%, transparent 53%);pointer-events:none;width:24px;height:24px;z-index:var(--z-toast);animation:.42s ease-out forwards star-burst;position:fixed}@keyframes star-burst{0%{opacity:1;transform:scale(0)rotate(0)}60%{opacity:.9;transform:scale(1.2)rotate(35deg)}to{opacity:0;transform:scale(1.4)rotate(45deg)}}@media (width<=40rem){.product-grid{grid-template-columns:1fr}.footer__meta{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.15s!important;animation-duration:.15s!important;animation-iteration-count:1!important}.reveal{animation:.15s linear forwards reveal-reduced}@keyframes reveal-reduced{to{opacity:1;transform:none}}.footer__track,.hero__scroll,.character{animation:none}}.nav.svelte-1jnx671{z-index:var(--z-sticky);background:0 0;border-bottom:1px solid #0000;transition:background .24s,border-color .24s,box-shadow .24s;position:fixed;inset:0 0 auto}.nav.is-scrolled.svelte-1jnx671,.nav.menu-open.svelte-1jnx671{background:color-mix(in oklch, var(--color-paper) 72%, transparent);backdrop-filter:blur(18px)saturate(160%);border-bottom-color:var(--color-rule);box-shadow:0 8px 28px -18px oklch(20% .012 250/.4)}.nav__inner.svelte-1jnx671{max-width:var(--page-max);padding-inline:var(--page-gutter);grid-template-columns:1fr auto 1fr;align-items:center;height:64px;margin:0 auto;display:grid}.nav__brand.svelte-1jnx671{justify-self:start;align-items:center;text-decoration:none;display:flex}.nav__logo.svelte-1jnx671{object-fit:contain;width:auto;height:40px}.nav__center.svelte-1jnx671{justify-self:center;gap:var(--space-lg);display:flex}.nav__link.svelte-1jnx671{font-family:var(--font-body);font-weight:500;font-size:var(--text-sm);color:var(--color-ink-2);transition:color var(--dur-micro) var(--ease-out);white-space:nowrap;text-decoration:none}.nav__link.svelte-1jnx671:hover{color:var(--color-ink)}.nav__right.svelte-1jnx671{justify-self:end;align-items:center;gap:var(--space-sm);display:flex}.nav__hamburger.svelte-1jnx671{cursor:pointer;padding:var(--space-xs);background:0 0;border:none;display:none}.nav__hamburger.svelte-1jnx671 span:where(.svelte-1jnx671){background:var(--color-ink);width:20px;height:2px;transition:transform var(--dur-short) var(--ease-out), opacity var(--dur-micro);border-radius:2px;margin:4px 0;display:block}.nav.menu-open.svelte-1jnx671 .nav__hamburger:where(.svelte-1jnx671) span:where(.svelte-1jnx671):first-child{transform:translateY(6px)rotate(45deg)}.nav.menu-open.svelte-1jnx671 .nav__hamburger:where(.svelte-1jnx671) span:where(.svelte-1jnx671):nth-child(2){opacity:0}.nav.menu-open.svelte-1jnx671 .nav__hamburger:where(.svelte-1jnx671) span:where(.svelte-1jnx671):nth-child(3){transform:translateY(-6px)rotate(-45deg)}.nav__mobile.svelte-1jnx671{display:none}@media (width<=56rem){.nav__inner.svelte-1jnx671{grid-template-columns:auto 1fr}.nav__center.svelte-1jnx671{display:none}.nav__hamburger.svelte-1jnx671{display:block}.nav__mobile.svelte-1jnx671{padding:var(--space-sm) var(--page-gutter) var(--space-lg);gap:var(--space-2xs);background:color-mix(in oklch, var(--color-paper) 72%, transparent);backdrop-filter:blur(18px)saturate(160%);border-bottom:1px solid var(--color-rule);animation:svelte-1jnx671-menu-in var(--dur-short) var(--ease-out);flex-direction:column;display:flex}.nav__mobile[hidden].svelte-1jnx671{display:none}.nav__mobile-link.svelte-1jnx671{font-family:var(--font-display);font-weight:600;font-size:var(--text-lg);color:var(--color-ink);padding:var(--space-sm) 0;border-bottom:1px solid var(--color-rule);text-decoration:none}.nav__mobile-link.svelte-1jnx671:last-child{border-bottom:none}.nav__mobile-link.svelte-1jnx671:active{color:var(--color-accent-2)}@keyframes svelte-1jnx671-menu-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}}.footer.svelte-1sr6y3t{padding-block:var(--space-xl) var(--space-2xl);overflow:hidden}.footer__marquee.svelte-1sr6y3t{border-top:2px solid var(--color-ink);border-bottom:2px solid var(--color-ink);padding-block:var(--space-md);overflow:hidden}.footer__track.svelte-1sr6y3t{white-space:nowrap;animation:32s linear infinite svelte-1sr6y3t-marquee;display:flex}.footer__track.svelte-1sr6y3t span:where(.svelte-1sr6y3t){font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;padding-inline-end:var(--space-2xl);font-size:clamp(1rem,2.5vw,1.5rem);font-weight:700}@keyframes svelte-1sr6y3t-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.footer__meta.svelte-1sr6y3t{max-width:var(--page-max);padding-inline:var(--page-gutter);margin-inline:auto;margin-top:var(--space-xl);justify-content:space-between;align-items:center;gap:var(--space-md);font-size:var(--text-sm);color:var(--color-ink-2);flex-wrap:wrap;display:flex}.footer__links.svelte-1sr6y3t{gap:var(--space-lg);display:flex}.footer__links.svelte-1sr6y3t a:where(.svelte-1sr6y3t){color:var(--color-ink-2);transition:color var(--dur-micro) var(--ease-out);text-decoration:none}.footer__links.svelte-1sr6y3t a:where(.svelte-1sr6y3t):hover{color:var(--color-ink)}
