*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--bg: #fafaf7;--surface: #f0ede8;--text: #1a1816;--text-muted: #78736d;--accent: #1a6b5a;--accent-soft: rgba(26, 107, 90, .07);--border: #e0dcd6;--font-display: "Bricolage Grotesque", system-ui, sans-serif;--font-body: "DM Sans", system-ui, sans-serif;color-scheme:light}html{scroll-behavior:smooth}html,body,#root{height:100%}body{font-family:var(--font-body);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}a{color:inherit}.grain{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9999;opacity:.028;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:200px 200px}.nav{position:sticky;top:0;z-index:100;background:#fafaf7e0;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}.nav-inner{max-width:960px;margin:0 auto;padding:.95rem 2rem;display:flex;align-items:center;justify-content:space-between}.nav-logo{font-family:var(--font-display);font-weight:700;font-size:1.2rem;color:var(--text);text-decoration:none;letter-spacing:-.025em}.nav-links{display:flex;gap:2rem}.nav-links a{font-size:.85rem;font-weight:500;color:var(--text-muted);text-decoration:none;transition:color .2s ease}.nav-links a:hover{color:var(--text)}.hero{padding:5.5rem 2rem 4.5rem;background:linear-gradient(180deg,#f2efea 0%,var(--bg) 100%)}.hero-inner{max-width:960px;margin:0 auto}.badge-icon{width:12px;height:12px;margin-right:.4rem;vertical-align:-1px}.hero-badge{display:inline-flex;align-items:center;font-size:.7rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:1.75rem;padding:.4rem .9rem;border:1px solid rgba(26,107,90,.2);border-radius:100px;background:var(--accent-soft);animation:fadeUp .6s cubic-bezier(.16,1,.3,1) both}.hero-title{font-family:var(--font-display);font-size:clamp(2.4rem,5.5vw,4rem);font-weight:800;line-height:1.1;letter-spacing:-.035em;color:var(--text);margin-bottom:1.5rem;animation:fadeUp .7s cubic-bezier(.16,1,.3,1) .08s both}.hero-sub{font-size:clamp(1rem,1.8vw,1.15rem);line-height:1.7;color:var(--text-muted);max-width:500px;animation:fadeUp .7s cubic-bezier(.16,1,.3,1) .16s both}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.divider{border:none;border-top:1px solid var(--border);max-width:960px;margin:0 auto}.section{padding:4rem 2rem}.section-inner{max-width:960px;margin:0 auto;display:grid;grid-template-columns:180px 1fr;gap:3rem;align-items:start}.section-label{font-size:.7rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);padding-top:.35rem}.section-body p{font-size:1.02rem;line-height:1.78;color:var(--text-muted)}.section-body p+p{margin-top:1rem}.js .fade-target{opacity:0;transform:translateY(20px);transition:opacity .55s ease,transform .55s ease}.js .fade-target.visible{opacity:1;transform:translateY(0)}.product-list{display:flex;flex-direction:column;gap:.75rem}.product-card{display:block;padding:1.75rem;border-radius:12px;background:var(--surface);border:1px solid var(--border);text-decoration:none;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.product-card:hover{transform:translateY(-2px);border-color:#1a6b5a4d;box-shadow:0 8px 30px #0000000d}.product-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.65rem}.product-name{font-family:var(--font-display);font-size:1.2rem;font-weight:700;color:var(--text);letter-spacing:-.015em}.product-link{display:inline-block;font-size:.85rem;font-weight:500;color:var(--accent);white-space:nowrap;transition:transform .2s ease}.product-card:hover .product-link{transform:translate(3px)}.product-desc{font-size:.95rem;line-height:1.72;color:var(--text-muted)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin:1.5rem 0 1.25rem}.contact-card{display:flex;flex-direction:column;gap:.3rem;padding:1.2rem;border-radius:10px;background:var(--surface);border:1px solid var(--border);text-decoration:none;transition:border-color .2s ease}.contact-card:hover{border-color:var(--accent)}.contact-type{font-size:.68rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.contact-val{font-size:.95rem;font-weight:500;color:var(--text)}.footer{border-top:1px solid var(--border);margin-top:1rem}.footer-inner{max-width:960px;margin:0 auto;padding:1.75rem 2rem;display:flex;justify-content:space-between;align-items:center}.footer-copy{font-size:.8rem;color:var(--text-muted)}.footer-links{display:flex;gap:1.5rem}.footer-links a{font-size:.8rem;color:var(--text-muted);text-decoration:none;transition:color .2s ease}.footer-links a:hover{color:var(--text)}@media(prefers-reduced-motion:reduce){.js .fade-target{opacity:1;transform:none;transition:none}.hero-badge,.hero-title,.hero-sub{animation:none}}@media(max-width:768px){.section-inner{grid-template-columns:1fr;gap:1rem}.hero{padding:4rem 1.5rem 3.5rem}.section{padding:3rem 1.5rem}.nav-inner{padding:.85rem 1.5rem}.contact-grid{grid-template-columns:1fr}.footer-inner{flex-direction:column;gap:.75rem;text-align:center;padding:1.5rem}.divider{margin:0 1.5rem}}@media(max-width:480px){.hero-title{font-size:2rem}.nav-links{gap:1.25rem}.nav-links a{font-size:.78rem}.hero-badge{font-size:.65rem}}
