:root{color-scheme:light;--bg: #faf9f6;--bg-soft: #f3f1ed;--bg-dark: #0e0e10;--surface: rgba(0, 0, 0, .025);--surface-hover: rgba(0, 0, 0, .04);--surface-border: rgba(0, 0, 0, .08);--surface-border-hover: rgba(0, 0, 0, .14);--text: #1a1714;--text-secondary: #7a756d;--text-on-dark: #ede9e3;--text-on-dark-secondary: #8a857e;--accent: #a0783c;--accent-hover: #b88d4e;--accent-text: #fff;--accent-soft: rgba(160, 120, 60, .08);--teal: #1a9e78;--cyan: #2e7ebf;--amber: #b87d2f;--lavender: #7b5fbf;--rose: #c45a6e;--radius-sm: 12px;--radius-md: 20px;--radius-lg: 24px;--radius-xl: 32px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .04), 0 4px 12px rgba(0, 0, 0, .03);--shadow-md: 0 4px 16px rgba(0, 0, 0, .05), 0 12px 40px rgba(0, 0, 0, .04);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .06), 0 20px 60px rgba(0, 0, 0, .05);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-smooth: cubic-bezier(.4, 0, .2, 1);font-family:Sora,sans-serif;line-height:1.6;font-weight:400}*,*:before,*:after{box-sizing:border-box;margin:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-width:320px;background:var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}button{border:none;background:none;cursor:pointer;color:inherit;font:inherit}img,svg{display:block}#root{min-height:100vh;overflow-x:hidden}.grain{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9999}.grain:after{content:"";position:absolute;top:-100%;right:-100%;bottom:-100%;left:-100%;width:300%;height:300%;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' 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");opacity:.018}.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease-out),transform .9s var(--ease-out)}.reveal.visible{opacity:1;transform:translateY(0)}h1,h2{font-family:"Instrument Serif",serif;font-weight:400;line-height:1;letter-spacing:-.03em;color:var(--text)}h1 em{font-style:italic;color:var(--accent)}.eyebrow{display:inline-block;margin-bottom:20px;color:var(--accent);text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;font-weight:600;font-family:Sora,sans-serif}.section{width:min(1200px,calc(100% - 48px));margin:0 auto;padding:100px 0}.topbar{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:18px max(calc((100% - 1200px)/2 + 24px),24px);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);background:#faf9f6d1;border-bottom:1px solid var(--surface-border);transition:background .3s var(--ease-smooth)}.brand{display:inline-flex;align-items:center;gap:12px}.river-mark{width:36px;height:12px}.brand-text{font-family:Sora,sans-serif;font-weight:700;font-size:.92rem;letter-spacing:-.02em;color:var(--text)}.nav{display:flex;align-items:center;gap:32px}.nav a{color:var(--text-secondary);font-size:.85rem;font-weight:500;letter-spacing:-.01em;transition:color .25s var(--ease-smooth)}.nav a:hover{color:var(--text)}.nav-cta{padding:10px 20px;border:1.5px solid var(--text);border-radius:999px;color:var(--text)!important;font-weight:600!important;transition:background .25s var(--ease-smooth),color .25s var(--ease-smooth)!important}.nav-cta:hover{background:var(--text)!important;color:var(--bg)!important}.menu-toggle{display:none;width:32px;height:32px;position:relative}.menu-toggle span,.menu-toggle span:before,.menu-toggle span:after{position:absolute;left:4px;right:4px;height:1.5px;background:var(--text);transition:all .3s var(--ease-out)}.menu-toggle span{top:50%;transform:translateY(-50%)}.menu-toggle span:before,.menu-toggle span:after{content:"";position:absolute;left:0;right:0}.menu-toggle span:before{top:-7px}.menu-toggle span:after{top:7px}.menu-toggle span.open{background:transparent}.menu-toggle span.open:before{top:0;transform:rotate(45deg)}.menu-toggle span.open:after{top:0;transform:rotate(-45deg)}.hero{position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding-top:120px;overflow:hidden}.hero-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(800px circle at var(--mx, 50%) var(--my, 50%),rgba(160,120,60,.04),transparent 40%);pointer-events:none;transition:background .15s linear}.hero-content{position:relative;z-index:2}.hero h1{font-size:clamp(3.2rem,8vw,7.5rem);line-height:.95;letter-spacing:-.04em;max-width:14ch}.hero-sub{max-width:540px;margin-top:28px;color:var(--text-secondary);font-size:1.05rem;line-height:1.7}.hero-actions{display:flex;gap:16px;margin-top:40px;flex-wrap:wrap}.hero-river{position:absolute;bottom:8%;left:-5%;right:-5%;pointer-events:none;z-index:1}.hero-river svg{width:110%;height:auto}.river-line{stroke-dasharray:3200;stroke-dashoffset:3200;animation:drawRiver 3s var(--ease-out) .8s forwards}.river-line-2{animation-delay:1.2s;animation-duration:3.5s}@keyframes drawRiver{to{stroke-dashoffset:0}}.section-river{width:min(1200px,calc(100% - 48px));margin:-20px auto;padding:20px 0;pointer-events:none;overflow:hidden}.section-river svg{width:100%;height:60px}.section-river.flip svg{transform:scaleX(-1)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 28px;border-radius:999px;font-size:.88rem;font-weight:600;letter-spacing:-.01em;transition:all .3s var(--ease-out);cursor:pointer}.btn-primary{background:var(--text);color:var(--bg);box-shadow:var(--shadow-sm)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);background:#2a2520}.btn-ghost{border:1.5px solid var(--surface-border);color:var(--text)}.btn-ghost:hover{transform:translateY(-2px);border-color:var(--surface-border-hover);background:var(--surface)}.portfolio{padding-top:40px}.section-header{max-width:680px;margin-bottom:52px}.section-header h2{font-size:clamp(2.2rem,5vw,4rem);line-height:1}.section-desc{margin-top:18px;color:var(--text-secondary);font-size:1rem;max-width:520px}.portfolio-grid{display:flex;flex-direction:column;gap:12px}.product-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:32px;padding:32px 36px;border:1px solid var(--surface-border);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-sm);transition:all .35s var(--ease-out)}.product-card:hover{border-color:var(--surface-border-hover)}.product-card.accent-lavender:hover{border-left:3px solid var(--lavender)}.product-card.accent-teal:hover{border-left:3px solid var(--teal)}.product-card.accent-cyan:hover{border-left:3px solid var(--cyan)}.product-card.accent-amber:hover{border-left:3px solid var(--amber)}.product-card.accent-rose:hover{border-left:3px solid var(--rose)}.product-num{font-family:"Instrument Serif",serif;font-size:3rem;color:#0000000f;line-height:1;transition:color .35s var(--ease-out);-webkit-user-select:none;user-select:none;min-width:64px}.product-card:hover .product-num{color:#0000001a}.product-card.accent-lavender:hover .product-num{color:var(--lavender)}.product-card.accent-teal:hover .product-num{color:var(--teal)}.product-card.accent-cyan:hover .product-num{color:var(--cyan)}.product-card.accent-amber:hover .product-num{color:var(--amber)}.product-card.accent-rose:hover .product-num{color:var(--rose)}.product-header{display:flex;align-items:center;gap:14px;margin-bottom:6px}.product-header h3{margin:0;font-family:Sora,sans-serif;font-weight:600;font-size:1.3rem;letter-spacing:-.02em;color:var(--text)}.product-body p{color:var(--text-secondary);font-size:.9rem;max-width:480px;line-height:1.6}.badge{display:inline-flex;padding:5px 12px;border-radius:999px;font-size:.68rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;background:var(--bg-soft);border:1px solid var(--surface-border);color:var(--text-secondary);white-space:nowrap}.product-arrow{font-size:1.4rem;color:#0000001a;transition:all .35s var(--ease-out)}.product-card:hover .product-arrow{color:var(--text);transform:translate(3px,-3px)}.dna{margin:20px 16px;padding:100px 0;border-radius:var(--radius-xl);background:var(--bg-dark);color:var(--text-on-dark)}.dna-container{width:min(1200px,calc(100% - 64px));margin:0 auto}.dna .eyebrow{color:var(--accent-hover)}.dna .section-header h2{color:var(--text-on-dark)}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.principle-card{padding:32px;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);background:#ffffff0a;transition:all .35s var(--ease-out)}.principle-card:hover{transform:translateY(-4px);background:#ffffff0f;border-color:#ffffff1f}.principle-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;margin-bottom:22px;border-radius:var(--radius-sm);background:#ffffff0f;border:1px solid rgba(255,255,255,.08);color:var(--accent-hover);font-size:1.1rem}.principle-card h3{margin:0 0 10px;font-family:Sora,sans-serif;font-weight:600;font-size:1.3rem;letter-spacing:-.02em;color:var(--text-on-dark)}.principle-card p{color:var(--text-on-dark-secondary);font-size:.9rem;line-height:1.65}.careers{padding-bottom:120px}.careers-inner{text-align:center;max-width:560px;margin:0 auto}.careers h2{font-size:clamp(2.8rem,6vw,5rem);margin-bottom:16px}.careers-desc{color:var(--text-secondary);font-size:1rem;margin-bottom:36px;line-height:1.7}.contact{padding-bottom:120px}.contact-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:64px;align-items:start}.contact-info h2{font-size:clamp(2.2rem,5vw,3.8rem);line-height:1;margin-bottom:16px}.contact-info h2 em{font-style:italic;color:var(--accent)}.contact-desc{color:var(--text-secondary);font-size:1rem;line-height:1.7;max-width:380px;margin-bottom:28px}.contact-email{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:1rem;color:var(--text);padding:10px 0;border-bottom:1.5px solid var(--surface-border);transition:border-color .25s var(--ease-smooth)}.contact-email:hover{border-color:var(--accent)}.contact-form{display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-field{display:flex;flex-direction:column;gap:6px}.form-field label{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary)}.form-field input,.form-field textarea{width:100%;padding:14px 16px;border:1.5px solid var(--surface-border);border-radius:var(--radius-sm);background:#fff;color:var(--text);font-family:Sora,sans-serif;font-size:.92rem;line-height:1.5;transition:border-color .25s var(--ease-smooth),box-shadow .25s var(--ease-smooth);outline:none}.form-field input::placeholder,.form-field textarea::placeholder{color:#b0aaa2}.form-field input:focus,.form-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.form-field textarea{resize:vertical;min-height:120px}.form-error{color:#c0392b;font-size:.85rem;font-weight:500}.contact-form .btn{align-self:flex-start}.contact-form .btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.form-success{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:40px;border:1.5px solid var(--surface-border);border-radius:var(--radius-lg);background:#fff}.form-success-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#e8f5e9;color:#2e7d32;font-size:1.2rem;font-weight:700}.form-success h3{font-family:Sora,sans-serif;font-weight:600;font-size:1.2rem;color:var(--text);margin:0}.form-success p{color:var(--text-secondary);font-size:.92rem}.footer{width:min(1200px,calc(100% - 48px));margin:0 auto;padding:60px 0;border-top:1px solid var(--surface-border)}.footer-top{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px;margin-bottom:48px}.footer-brand-col .brand{margin-bottom:4px}.footer-tagline{color:var(--text-secondary);font-size:.88rem;margin-top:16px;max-width:280px;line-height:1.6}.footer-links{display:flex;flex-direction:column;gap:10px}.footer-links h4{font-family:Sora,sans-serif;font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:var(--text-secondary);margin-bottom:6px}.footer-links a{color:var(--text-secondary);font-size:.88rem;transition:color .25s var(--ease-smooth)}.footer-links a:hover{color:var(--text)}.footer-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:24px;border-top:1px solid var(--surface-border)}.footer-bottom p{color:var(--text-secondary);font-size:.8rem}.footer-legal{display:flex;gap:20px}.footer-legal a{color:var(--text-secondary);font-size:.8rem;transition:color .25s var(--ease-smooth)}.footer-legal a:hover{color:var(--text)}@media (max-width: 1024px){.hero h1{max-width:none}.principles,.footer-top,.contact-layout{grid-template-columns:1fr}.contact-layout{gap:40px}.product-card{grid-template-columns:1fr;gap:12px;padding:24px 28px}.product-num{font-size:2.2rem}.product-arrow{display:none}}@media (max-width: 720px){.nav{position:fixed;top:0;right:0;bottom:0;left:0;flex-direction:column;align-items:center;justify-content:center;gap:28px;background:#faf9f6f7;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);opacity:0;visibility:hidden;transition:all .35s var(--ease-out);z-index:99}.nav.open{opacity:1;visibility:visible}.nav a{font-size:1.2rem;color:var(--text)}.nav-cta{font-size:1rem!important;padding:12px 24px}.menu-toggle{display:block;z-index:101}.section{width:min(100% - 32px,1200px);padding:72px 0}.dna{margin:16px 8px;border-radius:var(--radius-lg);padding:72px 0}.dna-container{width:calc(100% - 40px)}.hero{padding-top:100px;min-height:calc(100vh - 40px)}.hero h1{font-size:clamp(2.6rem,10vw,4.5rem)}.hero-sub{font-size:.95rem}.product-card{padding:20px;border-radius:var(--radius-md)}.form-row{grid-template-columns:1fr}.contact-info h2{font-size:clamp(1.8rem,7vw,2.8rem)}.section-header h2{font-size:clamp(1.9rem,7vw,3rem)}.footer-top{gap:28px}.footer-bottom{flex-direction:column;gap:12px;align-items:flex-start}.careers h2{font-size:clamp(2.2rem,8vw,3.5rem)}.careers-inner{text-align:left}.topbar{padding:16px}}
