ZayDen Ryūmon - Keyboard Ribbon for Mechanical Keyboard
/* ── SCOPED RESET & VARIABLES ── */ .ryumon-wrapper { --gold: #B8952A; --gold-light: #D4AF5A; --ink: #0C0B09; --ivory: #F2EDE4; --ivory-dim: #E2DAD0; --muted: #8A8278; --teal: #1B 8B87; --teal-light: #4EC5C1; --crimson: #9B1C1C; --crimson-light: #C0392B; --shadow-ink: #1A1714; background: var(--ink); color: var(--ivory); font-family: 'DM Sans', sans-serif; font-weight: 300; line-height: 1.7; overflow-x: hidden; width: 100%; } .ryumon-wrapper *, .ryumon-wrapper *::before, .ryumon-wrapper *::after { box-sizing: border-box; margin: 0; padding: 0; } /* ── OPENING RITUAL ── */ .ryumon-wrapper .ritual-open { height: 100vh; display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative; overflow: hidden; } .ryumon-wrapper .ritual-open::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse 60% 50% at 50% 60%, rgba(184,149,42,0.08) 0%, transparent 70%); pointer-events: none; } .ryumon-wrapper .kamon { width: 80px; height: 80px; border: 1px solid var(--gold); border-radius: 50%; display: flex; align-items: center; justify-content: center; margin-bottom: 2.5rem; position: relative; animation: kamon-spin 20s linear infinite; } .ryumon-wrapper .kamon::before { content: ''; position: absolute; inset: 6px; border: 1px solid rgba(184,149,42,0.35); border-radius: 50%; } .ryumon-wrapper .kamon-inner { width: 28px; height: 28px; border: 1px solid var(--gold); border-radius: 50%; position: relative; } .ryumon-wrapper .kamon-inner::after { content: ''; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 8px; height: 8px; background: var(--gold); border-radius: 50%; } @keyframes kamon-spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } .ryumon-wrapper .brand-name { font-family: 'Cormorant Garamond', serif; font-size: clamp(3.5rem, 8vw, 7rem); font-weight: 300; letter-spacing: 0.35em; color: var(--ivory); line-height: 1; text-transform: uppercase; margin-bottom: 1rem; } .ryumon-wrapper .brand-tagline { font-size: 0.7rem; letter-spacing: 0.4em; color: var(--gold); text-transform: uppercase; margin-bottom: 3rem; } .ryumon-wrapper .gold-rule { width: 1px; height: 60px; background: linear-gradient(to bottom, transparent, var(--gold), transparent); margin: 0 auto; animation: pulse-line 3s ease-in-out infinite; } @keyframes pulse-line { 0%, 100% { opacity: 0.4; } 50% { opacity: 1; } } /* ── MANIFESTO ── */ .ryumon-wrapper .manifesto { max-width: 720px; margin: 0 auto; padding: 8rem 2rem; text-align: center; } .ryumon-wrapper .manifesto-label { font-size: 0.65rem; letter-spacing: 0.5em; color: var(--gold); text-transform: uppercase; display: block; margin-bottom: 2.5rem; } .ryumon-wrapper .manifesto-text { font-family: 'Cormorant Garamond', serif; font-size: clamp(1.5rem, 3vw, 2.2rem); font-weight: 300; font-style: italic; line-height: 1.6; color: var(--ivory); margin-bottom: 3rem; } .ryumon-wrapper .manifesto-body { font-size: 0.9rem; color: var(--muted); letter-spacing: 0.03em; max-width: 480px; margin: 0 auto; line-height: 1.9; } /* ── HORIZONTAL GOLD DIVIDER ── */ .ryumon-wrapper .horizon { display: flex; align-items: center; gap: 1.5rem; padding: 0 4rem; overflow: hidden; } .ryumon-wrapper .horizon-line { flex: 1; height: 1px; background: linear-gradient(to right, transparent, var(--gold), transparent); opacity: 0.3; } .ryumon-wrapper .horizon-glyph { font-family: 'Cormorant Garamond', serif; font-size: 1.2rem; color: var(--gold); opacity: 0.6; letter-spacing: 0.2em; } /* ── SPIRIT CHAPTERS ── */ .ryumon-wrapper .chapter { display: grid; grid-template-columns: 1fr 1fr; min-height: 100vh; position: relative; overflow: hidden; } .ryumon-wrapper .chapter:nth-child(even) .chapter-image { order: 2; } .ryumon-wrapper .chapter:nth-child(even) .chapter-text { order: 1; } .ryumon-wrapper .chapter-image { position: relative; overflow: hidden; } .ryumon-wrapper .chapter-image img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.8s ease; } .ryumon-wrapper .chapter:hover .chapter-image img { transform: scale(1.03); } .ryumon-wrapper .chapter-image-overlay { position: absolute; inset: 0; pointer-events: none; } .ryumon-wrapper .chapter--teal .chapter-image-overlay { background: linear-gradient(135deg, rgba(27,139,135,0.18) 0%, transparent 60%); } .ryumon-wrapper .chapter--crimson .chapter-image-overlay { background: linear-gradient(135deg, rgba(155,28,28,0.2) 0%, transparent 60%); } .ryumon-wrapper .chapter--shadow .chapter-image-overlay { background: linear-gradient(135deg, rgba(12,11,9,0.25) 0%, transparent 60%); } .ryumon-wrapper .chapter-text { display: flex; flex-direction: column; justify-content: center; padding: clamp(3rem, 6vw, 6rem) clamp(2.5rem, 5vw, 5rem); position: relative; } .ryumon-wrapper .chapter--teal .chapter-text::before { content: ''; position: absolute; left: 0; top: 10%; bottom: 10%; width: 1px; background: linear-gradient(to bottom, transparent, var(--teal-light), transparent); } .ryumon-wrapper .chapter--crimson .chapter-text::before { content: ''; position: absolute; right: 0; top: 10%; bottom: 10%; width: 1px; background: linear-gradient(to bottom, transparent, var(--crimson-light), transparent); } .ryumon-wrapper .chapter--shadow .chapter-text::before { content: ''; position: absolute; left: 0; top: 10%; bottom: 10%; width: 1px; background: linear-gradient(to bottom, transparent, var(--gold-light), transparent); } .ryumon-wrapper .spirit-number { font-size: 0.62rem; letter-spacing: 0.5em; color: var(--muted); text-transform: uppercase; margin-bottom: 1.2rem; } .ryumon-wrapper .spirit-name { font-family: 'Cormorant Garamond', serif; font-size: clamp(2.8rem, 5vw, 4.5rem); font-weight: 300; line-height: 1.05; margin-bottom: 0.6rem; letter-spacing: -0.01em; } .ryumon-wrapper .chapter--teal .spirit-name { color: var(--teal-light); } .ryumon-wrapper .chapter--crimson .spirit-name { color: #E87070; } .ryumon-wrapper .chapter--shadow .spirit-name { color: var(--gold-light); } .ryumon-wrapper .spirit-subtitle { font-family: 'Cormorant Garamond', serif; font-size: 1rem; font-style: italic; color: var(--muted); margin-bottom: 2.5rem; letter-spacing: 0.05em; } .ryumon-wrapper .spirit-lore { font-size: 0.88rem; color: #B5AFA7; line-height: 1.9; max-width: 400px; margin-bottom: 2.5rem; } .ryumon-wrapper .spirit-details { display: grid; grid-template-columns: 1fr 1fr; gap: 1.2rem; margin-bottom: 2.5rem; } .ryumon-wrapper .detail-item { border-top: 1px solid rgba(255,255,255,0.08); padding-top: 0.8rem; } .ryumon-wrapper .detail-label { font-size: 0.62rem; letter-spacing: 0.4em; color: var(--muted); text-transform: uppercase; display: block; margin-bottom: 0.3rem; } .ryumon-wrapper .detail-value { font-size: 0.85rem; color: var(--ivory-dim); font-weight: 400; } .ryumon-wrapper .cta-btn { display: inline-flex; align-items: center; gap: 1rem; padding: 1rem 2rem; border: 1px solid currentColor; background: transparent; font-family: 'DM Sans', sans-serif; font-size: 0.7rem; letter-spacing: 0.35em; text-transform: uppercase; text-decoration: none; cursor: pointer; transition: background 0.3s, color 0.3s; position: relative; overflow: hidden; } .ryumon-wrapper .cta-btn::after { content: ''; position: absolute; inset: 0; background: currentColor; transform: scaleX(0); transform-origin: left; transition: transform 0.35s ease; z-index: 0; } .ryumon-wrapper .cta-btn:hover::after { transform: scaleX(1); } .ryumon-wrapper .cta-btn span { position: relative; z-index: 1; transition: color 0.35s; } .ryumon-wrapper .cta-btn:hover span { color: var(--ink); } .ryumon-wrapper .chapter--teal .cta-btn { color: var(--teal-light); } .ryumon-wrapper .chapter--crimson .cta-btn { color: #E87070; } .ryumon-wrapper .chapter--shadow .cta-btn { color: var(--gold-light); } .ryumon-wrapper .btn-arrow { position: relative; z-index: 1; font-size: 1rem; transition: transform 0.3s, color 0.35s; } .ryumon-wrapper .cta-btn:hover .btn-arrow { transform: translateX(4px); color: var(--ink); } /* ── CRAFT SECTION ── */ .ryumon-wrapper .craft { padding: 8rem 2rem; max-width: 1100px; margin: 0 auto; } .ryumon-wrapper .craft-header { text-align: center; margin-bottom: 5rem; } .ryumon-wrapper .craft-pillars { display: grid; grid-template-columns: repeat(3, 1fr); gap: 3rem; } .ryumon-wrapper .pillar { text-align: center; } .ryumon-wrapper .pillar-icon { width: 48px; height: 48px; border: 1px solid rgba(184,149,42,0.3); border-radius: 50%; display: flex; align-items: center; justify-content: center; margin: 0 auto 1.5rem; } .ryumon-wrapper .pillar-icon svg { width: 20px; height: 20px; stroke: var(--gold); fill: none; stroke-width: 1.2; stroke-linecap: round; stroke-linejoin: round; } .ryumon-wrapper .pillar-title { font-family: 'Cormorant Garamond', serif; font-size: 1.25rem; font-weight: 400; color: var(--ivory); margin-bottom: 0.8rem; letter-spacing: 0.05em; } .ryumon-wrapper .pillar-text { font-size: 0.83rem; color: var(--muted); line-height: 1.8; } /* ── TRIO GALLERY ── */ .ryumon-wrapper .trio { padding: 0 2rem 8rem; max-width: 1100px; margin: 0 auto; } .ryumon-wrapper .trio-header { text-align: center; margin-bottom: 4rem; } .ryumon-wrapper .trio-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2px; } .ryumon-wrapper .trio-card { position: relative; aspect-ratio: 1; overflow: hidden; cursor: pointer; } .ryumon-wrapper .trio-card img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.7s ease; display: block; } .ryumon-wrapper .trio-card:hover img { transform: scale(1.06); } .ryumon-wrapper .trio-card-caption { position: absolute; bottom: 0; left: 0; right: 0; padding: 2rem 1.5rem 1.5rem; background: linear-gradient(to top, rgba(12,11,9,0.85) 0%, transparent 100%); transform: translateY(100%); transition: transform 0.4s ease; } .ryumon-wrapper .trio-card:hover .trio-card-caption { transform: translateY(0); } .ryumon-wrapper .trio-card-name { font-family: 'Cormorant Garamond', serif; font-size: 1.4rem; font-weight: 300; color: var(--ivory); display: block; margin-bottom: 0.2rem; } .ryumon-wrapper .trio-card-sub { font-size: 0.7rem; letter-spacing: 0.3em; color: var(--muted); text-transform: uppercase; } /* ── PROMISE SECTION ── */ .ryumon-wrapper .promise { background: var(--shadow-ink); padding: 6rem 2rem; text-align: center; border-top: 1px solid rgba(184,149,42,0.12); border-bottom: 1px solid rgba(184,149,42,0.12); } .ryumon-wrapper .promise-inner { max-width: 680px; margin: 0 auto; } .ryumon-wrapper .promise-quote { font-family: 'Cormorant Garamond', serif; font-size: clamp(1.6rem, 3.5vw, 2.6rem); font-weight: 300; font-style: italic; line-height: 1.5; color: var(--ivory); margin-bottom: 2rem; } .ryumon-wrapper .promise-badges { display: flex; justify-content: center; flex-wrap: wrap; gap: 2rem; margin-top: 3rem; } .ryumon-wrapper .badge { display: flex; flex-direction: column; align-items: center; gap: 0.5rem; } .ryumon-wrapper .badge-icon { width: 36px; height: 36px; border: 1px solid rgba(184,149,42,0.4); border-radius: 50%; display: flex; align-items: center; justify-content: center; } .ryumon-wrapper .badge-icon svg { width: 16px; height: 16px; stroke: var(--gold); fill: none; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; } .ryumon-wrapper .badge-label { font-size: 0.65rem; letter-spacing: 0.3em; color: var(--muted); text-transform: uppercase; } /* ── SECTION LABEL ── */ .ryumon-wrapper .section-eyebrow { font-size: 0.62rem; letter-spacing: 0.5em; color: var(--gold); text-transform: uppercase; display: block; margin-bottom: 1.5rem; } .ryumon-wrapper .section-title { font-family: 'Cormorant Garamond', serif; font-size: clamp(2rem, 4vw, 3rem); font-weight: 300; color: var(--ivory); line-height: 1.15; margin-bottom: 1rem; } /* ── SCROLL REVEAL ── */ .ryumon-wrapper .reveal { opacity: 0; transform: translateY(28px); transition: opacity 0.8s ease, transform 0.8s ease; } .ryumon-wrapper .reveal.visible { opacity: 1; transform: translateY(0); } .ryumon-wrapper .reveal-delay-1 { transition-delay: 0.1s; } .ryumon-wrapper .reveal-delay-2 { transition-delay: 0.22s; } .ryumon-wrapper .reveal-delay-3 { transition-delay: 0.34s; } .ryumon-wrapper .reveal-delay-4 { transition-delay: 0.46s; } /* ── RESPONSIVE ── */ @media (max-width: 800px) { .ryumon-wrapper .chapter { grid-template-columns: 1fr; min-height: auto; } .ryumon-wrapper .chapter:nth-child(even) .chapter-image { order: 0; } .ryumon-wrapper .chapter:nth-child(even) .chapter-text { order: 1; } .ryumon-wrapper .chapter--teal .chapter-text::before, .ryumon-wrapper .chapter--crimson .chapter-text::before, .ryumon-wrapper .chapter--shadow .chapter-text::before { display: none; } .ryumon-wrapper .chapter-image { height: 60vw; } .ryumon-wrapper .craft-pillars { grid-template-columns: 1fr; gap: 2rem; } .ryumon-wrapper .trio-grid { grid-template-columns: 1fr; } .ryumon-wrapper .trio-card { aspect-ratio: 4/3; } .ryumon-wrapper .spirit-details { grid-template-columns: 1fr; } } @media (max-width: 500px) { .ryumon-wrapper .manifesto { padding: 5rem 1.5rem; } .ryumon-wrapper .chapter-text { padding: 2.5rem 1.5rem; } .ryumon-wrapper .craft { padding: 4rem 1.5rem; } .ryumon-wrapper .trio { padding: 0 1.5rem 4rem; } .ryumon-wrapper .ritual-open { height: auto; min-height: 75vh; padding: 6rem 1rem 2rem; } .ryumon-wrapper .kamon { width: 60px; height: 60px; margin-bottom: 1.5rem; } .ryumon-wrapper .brand-tagline { margin-bottom: 2rem; text-align: center; line-height: 1.6; } .ryumon-wrapper .gold-rule { height: 40px; } } @media (prefers-reduced-motion: reduce) { .ryumon-wrapper .kamon { animation: none; } .ryumon-wrapper .gold-rule { animation: none; } .ryumon-wrapper .reveal { opacity: 1; transform: none; transition: none; } } Ryūmon Sacred Keyboard Ribbons · Limited Edition The Craft Every keystroke deserves a ceremony. Every desk, an altar. Born from the tradition of Japanese washi fabric art, each Ryūmon ribbon is hand-finished with a single strip of pattern silk, crystal charms, and a silk tassel dyed in the spirit of its namesake. These are not accessories. They are invocations — placed once, felt always. 龍 Chapter I Umigami Spirit of the Endless Sea In old Japanese myth, Umigami — the ocean god — does not roar. It breathes. Its breath becomes the wave, the wave becomes the shore. This ribbon carries its pattern: Nami-style silk, gold-threaded crests, and a gradient tassel that fades from the cold depth of the sea to the warmth of coral. The crystal charm ring catches light the way still water catches the sky. Fabric Nami wave silk — teal & white Charm Iridescent crystal ring Tassel Ombré silk — ocean to coral Mount White leather double-stud Claim Umigami → Chapter II Kasai Sovereign of Sacred Fire Kasai does not destroy. It purifies. The crimson spiral silk pattern echoes the thunder-cloud motifs of Heian-era battle banners — fire that carries intention. Its jade bi disc pendant is carved with the spiral of eternity, and the crimson tassel hangs like a declaration: I am the one at this keyboard, and I am awake. Fabric Thunder cloud silk — crimson & black Charm Carved jade bi disc — fire motif Tassel Pure crimson silk Mount White leather double-stud Claim Kasai → Chapter III Ryūjin Dragon God of the Deep Ryūjin rules from the palace beneath the sea, where silence has weight and gold runs in the dark like veins of lightning. This ribbon is made for those who do not need to be seen to be powerful. Black silk laced with gold ink — a pattern that moves with you. Its silver dragon pendant coils around the charm ring with jaw open, tail curled: sovereign, still, absolute. Fabric Kujira silk — black & gilded Charm Sterling silver dragon pendant Tassel Obsidian black silk Mount Ivory leather double-stud Claim Ryūjin → Why Ryūmon The details thatmake the difference Hand-Finished Each ribbon is assembled individually — no production lines, no shortcuts. The tassel is tied, the charm is hung, and the stud is set by hand, one at a time. Myth-Sourced Design Every pattern draws from classical Japanese textile traditions — nami waves, kumo clouds, and kinrande brocade — updated for the modern mechanical keyboard desk. Ships Worldwide — Free Every order ships free, worldwide, in protective packaging. Each ribbon arrives in a black envelope with a wax seal and a hand-signed origin card. 波 The Three Spirits Choose your invocation Umigami Ocean Spirit Kasai Fire Sovereign Ryūjin Dragon God The Ryūmon Promise "An object you reach for a hundred times a day should feel like it was made for you alone." These ribbons are made in limited runs. When a spirit sells out, it does not return until the next season's crafting cycle. Each one you own is one fewer left in the world. Hand-Finished Limited Edition Ships Worldwide Made With Care Until we meet again The keyboard is the instrument. The ribbon is the soul. 龍門 const reveals = document.querySelectorAll('.ryumon-wrapper .reveal'); const io = new IntersectionObserver((entries) => { entries.forEach(e => { if (e.isIntersecting) { e.target.classList.add('visible'); io.unobserve(e.target); } }); }, { threshold: 0.12, rootMargin: '0px 0px -40px 0px' }); reveals.forEach(el => io.observe(el));
More you might like
Gaming PC Ryzen 5 3600 6 core RAM 16GB SSD 500GB NVME 500GB
Related
GTR Gaming Infinity Gaming PC Bundle | AMD Ryzen 5 3400G |
Related
Nemisis Pro Black Gaming PC Bundle – Ryzen 3 3100, RX 560 4G
Related