Mario Question Mark Box Theme Artisan Keycap
/* ================================================================= */ /* GOOGLE FONTS */ /* ================================================================= */ @import url('http s://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,400;0,600;0,700;0,800;0,900;1,400&family=Press+Start+2P&display=swap'); /* ================================================================= */ /* DESIGN TOKENS — retro gaming · bold · collectible */ /* ================================================================= */ .mrio { /* --- Palette --- */ --mrio-red: #e52521; /* Mario red */ --mrio-red-deep: #a31a18; /* shadowed red */ --mrio-red-soft: #f26461; /* lit red highlight */ --mrio-yellow: #fbd000; /* coin / question block */ --mrio-yellow-2: #d4a800; /* deep coin gold */ --mrio-yellow-3: #ffe55a; /* highlight yellow */ --mrio-blue: #049cd8; /* sky / starman blue */ --mrio-blue-deep: #026ea0; /* deep blue */ --mrio-dark: #3d2b1f; /* Mario outline brown/black */ --mrio-night: #2a1f18; /* darkest surface */ --mrio-night-2: #3a2c23; /* card dark surface */ --mrio-cream: #fffdf5; /* light background */ --mrio-parchment: #fff8e7; /* warm white */ --mrio-text: #3a2c23; /* body text */ --mrio-text-soft: #6b5444; /* secondary text */ --mrio-line: rgba(229,37,33,0.22); --mrio-line-soft: rgba(229,37,33,0.12); --mrio-shadow: 0 18px 50px -18px rgba(61,43,31,0.50); --mrio-shadow-sm: 0 8px 24px -10px rgba(61,43,31,0.38); --mrio-glow-y: 0 0 28px rgba(251,208,0,0.50); --mrio-glow-r: 0 0 24px rgba(229,37,33,0.40); /* --- Typography --- */ --mrio-display: 'Nunito', 'Trebuchet MS', Arial, sans-serif; --mrio-pixel: 'Press Start 2P', monospace; --mrio-body: 'Nunito', 'Trebuchet MS', Arial, sans-serif; /* --- Layout rhythm --- */ --mrio-radius: 14px; --mrio-radius-lg: 20px; --mrio-maxw: 1200px; --mrio-gap: clamp(14px, 2.2vw, 22px); --mrio-section: clamp(44px, 7vw, 78px); /* --- Base --- */ font-family: var(--mrio-body); color: var(--mrio-dark); line-height: 1.7; font-size: 18px; max-width: var(--mrio-maxw); margin: 0 auto; padding: 0 4px; text-align: center; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; box-sizing: border-box; } .mrio *, .mrio *::before, .mrio *::after { box-sizing: border-box; } .mrio p { margin: 0 0 1em; font-size: clamp(16px, 1.6vw, 18px); } .mrio p:last-child { margin-bottom: 0; } .mrio strong { font-weight: 800; } .mrio h1, .mrio h2, .mrio h3, .mrio h4 { margin: 0; line-height: 1.15; } /* ================================================================= */ /* PAGE FRAME */ /* ================================================================= */ .mrio__sheet { position: relative; background: linear-gradient(180deg, #fffdf5 0%, #fff8e7 55%, #fff3d6 100%); border: 2px solid rgba(229,37,33,0.2); border-radius: var(--mrio-radius-lg); overflow: hidden; box-shadow: var(--mrio-shadow); } /* pixel-dot grain texture */ .mrio__sheet::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: 0.35; background-image: radial-gradient(rgba(229,37,33,0.07) 1px, transparent 1px), radial-gradient(rgba(251,208,0,0.06) 1px, transparent 1px); background-size: 20px 20px, 32px 32px; background-position: 0 0, 10px 16px; mix-blend-mode: multiply; } .mrio__inner { position: relative; z-index: 1; padding: clamp(22px, 5vw, 56px); } /* ================================================================= */ /* HERO */ /* ================================================================= */ .mrio__hero { position: relative; text-align: center; padding: clamp(28px, 5.5vw, 58px) clamp(10px, 3vw, 36px) clamp(32px, 5.5vw, 60px); border-radius: var(--mrio-radius); background: radial-gradient(80% 100% at 50% 0%, rgba(251,208,0,0.18), transparent 55%), linear-gradient(160deg, #2a1f18 0%, #1a1410 60%, #2a1f18 100%); color: var(--mrio-cream); overflow: hidden; border: 2px solid rgba(251,208,0,0.30); box-shadow: inset 0 0 60px rgba(0,0,0,0.55), var(--mrio-shadow); } /* floating coin shimmer */ .mrio__coins { position: absolute; inset: 0; pointer-events: none; background-image: radial-gradient(2px 2px at 14% 20%, rgba(251,208,0,0.85), transparent), radial-gradient(1.5px 1.5px at 82% 18%, rgba(251,208,0,0.70), transparent), radial-gradient(2px 2px at 36% 68%, rgba(251,208,0,0.80), transparent), radial-gradient(1.2px 1.2px at 68% 58%, rgba(251,208,0,0.55), transparent), radial-gradient(1.8px 1.8px at 90% 80%, rgba(251,208,0,0.65), transparent), radial-gradient(1.5px 1.5px at 24% 84%, rgba(251,208,0,0.60), transparent), radial-gradient(1px 1px at 55% 30%, rgba(229,37,33,0.50), transparent), radial-gradient(1.2px 1.2px at 8% 55%, rgba(4,156,216,0.45), transparent); animation: mrio-shimmer 5s ease-in-out infinite alternate; } @keyframes mrio-shimmer { 0% { opacity: 0.5; transform: translateY(0); } 100% { opacity: 1; transform: translateY(-4px); } } .mrio__eyebrow { position: relative; z-index: 2; display: inline-flex; align-items: center; gap: 12px; font-family: var(--mrio-pixel); letter-spacing: 0.12em; font-size: clamp(7px, 1.2vw, 9px); color: var(--mrio-yellow); padding: 10px 20px; border: 1px solid rgba(251,208,0,0.45); border-radius: 999px; background: rgba(251,208,0,0.08); margin-bottom: 6px; transition: transform 0.3s ease, background 0.3s ease, box-shadow 0.3s ease; } .mrio__eyebrow::before, .mrio__eyebrow::after { content: "?"; font-size: 10px; } .mrio__eyebrow:hover { transform: translateY(-2px) scale(1.03); background: rgba(251,208,0,0.16); box-shadow: var(--mrio-glow-y); } .mrio__title { position: relative; z-index: 2; font-family: var(--mrio-display); font-weight: 900; line-height: 1.04; margin: clamp(36px, 5.5vw, 54px) 0 0; font-size: clamp(30px, 6vw, 60px); color: var(--mrio-cream); text-shadow: 0 3px 0 rgba(0,0,0,0.45), 0 0 30px rgba(251,208,0,0.22); letter-spacing: -0.01em; } .mrio__title .mrio__yellow { background: linear-gradient(180deg, #ffe55a 0%, #fbd000 50%, #d4a800 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent; } .mrio__subtitle { position: relative; z-index: 2; text-align: center; font-weight: 600; font-size: clamp(16px, 2.2vw, 21px); color: rgba(255,253,245,0.82); max-width: 1200px; margin: clamp(18px, 3vw, 26px) auto 0; } .mrio__hero-rule { position: relative; z-index: 2; display: flex; align-items: center; justify-content: center; gap: 16px; margin: clamp(24px, 4vw, 34px) auto 0; max-width: 1200px; color: var(--mrio-yellow); } .mrio__hero-rule::before, .mrio__hero-rule::after { content: ""; height: 1px; flex: 1; background: linear-gradient(90deg, transparent, rgba(251,208,0,0.7), transparent); } .mrio__hero-rule span { font-family: var(--mrio-pixel); font-size: 9px; letter-spacing: 0.15em; color: var(--mrio-yellow); } .mrio__badges { position: relative; z-index: 2; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: clamp(24px, 4vw, 32px); } .mrio__badge { display: inline-flex; align-items: center; gap: 8px; font-family: var(--mrio-display); font-size: clamp(11px, 1.5vw, 13px); font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--mrio-cream); padding: 10px 18px; border-radius: 999px; border: 1px solid rgba(251,208,0,0.30); background: rgba(255,253,245,0.05); transition: transform 0.3s ease, background 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease; } .mrio__badge span:first-child { font-size: 16px; } .mrio__badge:hover { transform: translateY(-3px); background: rgba(251,208,0,0.14); border-color: var(--mrio-yellow); box-shadow: var(--mrio-glow-y); } /* ================================================================= */ /* SECTION SCAFFOLD */ /* ================================================================= */ .mrio__section { margin-top: var(--mrio-section); } .mrio__head { text-align: center; margin-bottom: clamp(28px, 4vw, 44px); } .mrio__kicker { display: flex; align-items: center; justify-content: center; gap: 14px; font-family: var(--mrio-pixel); letter-spacing: 0.18em; font-size: clamp(7px, 1.1vw, 8px); color: var(--mrio-red); margin-bottom: 14px; text-transform: uppercase; } .mrio__kicker::before, .mrio__kicker::after { content: "★"; font-size: 8px; color: var(--mrio-yellow); } .mrio__h2 { font-family: var(--mrio-display); font-weight: 900; text-align: center; font-size: clamp(26px, 4.6vw, 44px); line-height: 1.1; margin: 0 auto 12px; color: var(--mrio-dark); max-width: 1200px; letter-spacing: -0.01em; transition: text-shadow 0.4s ease; } .mrio__h2:hover { text-shadow: 0 0 22px rgba(229,37,33,0.28); } .mrio__lead { text-align: center; max-width: 1200px; margin: 0 auto; color: var(--mrio-text-soft); font-size: clamp(16px, 1.8vw, 19px); font-weight: 600; } .mrio__divider { display: flex; align-items: center; justify-content: center; gap: 16px; margin: clamp(18px, 3vw, 24px) auto 0; max-width: 1200px; color: var(--mrio-yellow-2); } .mrio__divider::before, .mrio__divider::after { content: ""; height: 2px; flex: 1; background: linear-gradient(90deg, transparent, var(--mrio-yellow-2), transparent); border-radius: 2px; } .mrio__diamond { width: 10px; height: 10px; transform: rotate(45deg); background: var(--mrio-yellow); box-shadow: 0 0 0 4px rgba(251,208,0,0.22); transition: transform 0.4s ease, box-shadow 0.4s ease; } .mrio__divider:hover .mrio__diamond { transform: rotate(225deg) scale(1.3); box-shadow: 0 0 0 6px rgba(251,208,0,0.28); } .mrio__prose { max-width: 1200px; margin: 0 auto; text-align: center; } .mrio__prose p { color: var(--mrio-text); margin: 0 auto 1.1em; font-weight: 600; } .mrio__prose p:last-child { margin-bottom: 0; } /* ================================================================= */ /* FEATURE GRID */ /* ================================================================= */ .mrio__features { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: var(--mrio-gap); } .mrio__feature { position: relative; text-align: left; background: var(--mrio-cream); border: 2px solid rgba(229,37,33,0.15); border-radius: var(--mrio-radius); padding: clamp(20px, 3vw, 28px); overflow: hidden; transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease; } .mrio__feature::after { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, var(--mrio-red), var(--mrio-yellow), var(--mrio-blue)); opacity: 0; transition: opacity 0.35s ease; } .mrio__feature:hover { transform: translateY(-6px); box-shadow: var(--mrio-shadow-sm); border-color: rgba(229,37,33,0.40); } .mrio__feature:hover::after { opacity: 1; } .mrio__feature-icon { display: inline-flex; align-items: center; justify-content: center; width: 54px; height: 54px; border-radius: 14px; font-size: 26px; margin-bottom: 16px; background: linear-gradient(145deg, #2a1f18, #1a1410); border: 2px solid rgba(251,208,0,0.35); box-shadow: inset 0 0 14px rgba(251,208,0,0.15); transition: transform 0.4s ease, box-shadow 0.4s ease; } .mrio__feature:hover .mrio__feature-icon { transform: rotate(-6deg) scale(1.1); box-shadow: inset 0 0 14px rgba(251,208,0,0.28), var(--mrio-glow-y); } .mrio__feature h3 { font-family: var(--mrio-display); font-weight: 800; font-size: clamp(16px, 2vw, 19px); margin: 0 0 8px; color: var(--mrio-dark); } .mrio__feature p { margin: 0; font-size: clamp(14px, 1.5vw, 16px); color: var(--mrio-text-soft); line-height: 1.65; } /* ================================================================= */ /* SPOTLIGHT — dark band */ /* ================================================================= */ .mrio__spotlight { position: relative; text-align: center; border-radius: var(--mrio-radius-lg); overflow: hidden; padding: clamp(30px, 5vw, 58px); background: radial-gradient(80% 120% at 50% 0%, rgba(251,208,0,0.14), transparent 55%), linear-gradient(155deg, #2a1f18, #1a1410); color: var(--mrio-cream); border: 2px solid rgba(251,208,0,0.25); box-shadow: var(--mrio-shadow); } .mrio__spotlight .mrio__kicker { color: var(--mrio-yellow); } .mrio__spotlight .mrio__kicker::before, .mrio__spotlight .mrio__kicker::after { color: var(--mrio-yellow-3); } .mrio__spotlight h2 { font-family: var(--mrio-display); font-weight: 900; text-align: center; font-size: clamp(24px, 4vw, 40px); margin: 0 auto 16px; color: var(--mrio-cream); max-width: 1200px; text-shadow: 0 2px 0 rgba(0,0,0,0.35); } .mrio__spotlight > p { max-width: 1200px; color: rgba(255,253,245,0.82); margin: 0 auto; font-weight: 600; font-size: clamp(15px, 1.7vw, 17.5px); } .mrio__spec-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 14px; margin-top: clamp(26px, 3.5vw, 36px); } .mrio__spec { border: 1px solid rgba(251,208,0,0.24); border-radius: 12px; padding: 18px 18px 16px; background: rgba(255,253,245,0.04); transition: background 0.3s ease, transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease; } .mrio__spec:hover { background: rgba(251,208,0,0.10); transform: translateY(-4px); border-color: var(--mrio-yellow); box-shadow: var(--mrio-glow-y); } .mrio__spec-k { font-family: var(--mrio-pixel); font-size: 8px; letter-spacing: 0.1em; color: var(--mrio-yellow); margin-bottom: 7px; } .mrio__spec-v { font-size: clamp(15px, 1.8vw, 18px); color: var(--mrio-cream); font-weight: 700; } /* ================================================================= */ /* COLOR OPTIONS */ /* ================================================================= */ .mrio__colors { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: var(--mrio-gap); } .mrio__color-card { position: relative; text-align: center; border-radius: var(--mrio-radius); padding: clamp(26px, 3.5vw, 36px) 20px; color: var(--mrio-cream); overflow: hidden; border: 2px solid rgba(255,255,255,0.15); transition: transform 0.4s ease, box-shadow 0.4s ease; } .mrio__color-card::before { content: ""; position: absolute; inset: 0; background: radial-gradient(120% 90% at 50% 0%, rgba(255,255,255,0.18), transparent 55%); pointer-events: none; } .mrio__color-card:hover { transform: translateY(-7px) scale(1.02); box-shadow: var(--mrio-shadow); } .mrio__color-card--red { background: linear-gradient(155deg, #c41f1c, #7a1412); } .mrio__color-card--yellow { background: linear-gradient(155deg, #d4a800, #7a5f00); } .mrio__color-card--blue { background: linear-gradient(155deg, #037eb0, #024d6e); } .mrio__color-glyph { font-size: 36px; margin-bottom: 14px; position: relative; z-index: 1; display: inline-block; transition: transform 0.4s ease; } .mrio__color-card:hover .mrio__color-glyph { transform: scale(1.2) rotate(5deg); } .mrio__color-card h3 { position: relative; z-index: 1; font-family: var(--mrio-display); font-weight: 900; font-size: clamp(18px, 2.2vw, 22px); margin: 0 0 6px; letter-spacing: 0.02em; } .mrio__color-card p { position: relative; z-index: 1; margin: 0; font-size: 14.5px; font-weight: 600; color: rgba(255,253,245,0.82); } /* ================================================================= */ /* SPECS TABLE */ /* ================================================================= */ .mrio__table-wrap { max-width: 1200px; margin: 0 auto; border: 2px solid rgba(229,37,33,0.18); border-radius: var(--mrio-radius); overflow: hidden; background: var(--mrio-cream); } .mrio__table { width: 100%; border-collapse: collapse; text-align: left; font-size: clamp(15px, 1.7vw, 17px); } .mrio__table tr { transition: background 0.25s ease; } .mrio__table tr:hover { background: rgba(251,208,0,0.10); } .mrio__table tr + tr { border-top: 1px solid rgba(229,37,33,0.10); } .mrio__table th, .mrio__table td { padding: 15px 22px; vertical-align: top; } .mrio__table th { width: 42%; font-family: var(--mrio-display); font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; font-size: 0.82em; color: var(--mrio-red); } .mrio__table td { color: var(--mrio-dark); font-weight: 600; } /* ================================================================= */ /* GALLERY — individual framed images */ /* ================================================================= */ .mrio__gallery { display: flex; flex-direction: column; gap: 0; /* slices stitch with no gap */ border-radius: var(--mrio-radius); overflow: hidden; border: 2px solid rgba(229,37,33,0.20); background: var(--mrio-cream); box-shadow: var(--mrio-shadow-sm); transition: transform 0.4s ease, box-shadow 0.4s ease; } .mrio__gallery:hover { transform: translateY(-4px); box-shadow: var(--mrio-shadow); } .mrio__frame { display: block; margin: 0; padding: 0; } .mrio__frame img { width: 100%; display: block; height: auto; margin: 0; vertical-align: top; /* removes baseline hairline gap */ } /* ================================================================= */ /* STEPS — how to order & install */ /* ================================================================= */ .mrio__steps { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: var(--mrio-gap); text-align: left; } .mrio__step { position: relative; background: var(--mrio-cream); border: 2px solid rgba(229,37,33,0.15); border-radius: var(--mrio-radius); padding: clamp(22px, 3vw, 28px); transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease; } .mrio__step:hover { transform: translateY(-5px); box-shadow: var(--mrio-shadow-sm); border-color: rgba(229,37,33,0.45); } .mrio__step-num { font-family: var(--mrio-pixel); font-size: 20px; color: var(--mrio-yellow); line-height: 1; margin-bottom: 12px; display: inline-block; transition: transform 0.35s ease; text-shadow: 2px 2px 0 var(--mrio-yellow-2); } .mrio__step:hover .mrio__step-num { transform: scale(1.12) rotate(-3deg); } .mrio__step h4 { font-family: var(--mrio-display); font-weight: 800; font-size: 16.5px; margin: 0 0 7px; color: var(--mrio-dark); } .mrio__step p { margin: 0; font-size: 15px; color: var(--mrio-text-soft); line-height: 1.65; font-weight: 600; } /* ================================================================= */ /* CARE GUIDE */ /* ================================================================= */ .mrio__care { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: var(--mrio-gap); text-align: left; } .mrio__care-card { background: var(--mrio-cream); border: 2px solid rgba(229,37,33,0.15); border-radius: var(--mrio-radius); padding: clamp(20px, 3vw, 26px); transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease; } .mrio__care-card:hover { transform: translateY(-5px); box-shadow: var(--mrio-shadow-sm); border-color: rgba(251,208,0,0.55); } .mrio__care-num { font-family: var(--mrio-pixel); font-size: 18px; color: var(--mrio-yellow); line-height: 1; margin-bottom: 10px; display: inline-block; text-shadow: 2px 2px 0 var(--mrio-yellow-2); transition: transform 0.35s ease; } .mrio__care-card:hover .mrio__care-num { transform: scale(1.1); } .mrio__care-card h4 { font-family: var(--mrio-display); font-weight: 800; font-size: 16.5px; margin: 0 0 7px; color: var(--mrio-dark); } .mrio__care-card p { margin: 0; font-size: 15px; color: var(--mrio-text-soft); line-height: 1.65; font-weight: 600; } /* ================================================================= */ /* STATS STRIP */ /* ================================================================= */ .mrio__stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: var(--mrio-gap); text-align: center; } .mrio__stat { padding: clamp(22px, 3vw, 30px) 14px; border: 2px solid rgba(229,37,33,0.15); border-radius: var(--mrio-radius); background: var(--mrio-cream); transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease; } .mrio__stat:hover { transform: translateY(-5px); box-shadow: var(--mrio-shadow-sm); border-color: rgba(251,208,0,0.55); } .mrio__stat-num { font-family: var(--mrio-display); font-weight: 900; font-size: clamp(32px, 4.5vw, 46px); background: linear-gradient(180deg, #fbd000 0%, #d4a800 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent; line-height: 1; margin-bottom: 8px; } .mrio__stat-label { font-family: var(--mrio-display); font-weight: 700; font-size: 14.5px; color: var(--mrio-dark); text-transform: uppercase; letter-spacing: 0.08em; } /* ================================================================= */ /* FAQ — CSS-only accordion */ /* ================================================================= */ .mrio__faq { max-width: 1200px; margin: 0 auto; text-align: left; } .mrio__faq details { border: 2px solid rgba(229,37,33,0.15); border-radius: 12px; background: var(--mrio-cream); margin-bottom: 12px; overflow: hidden; transition: border-color 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease; } .mrio__faq details:hover { border-color: rgba(229,37,33,0.40); box-shadow: var(--mrio-shadow-sm); } .mrio__faq details[open] { border-color: rgba(251,208,0,0.55); box-shadow: var(--mrio-shadow-sm); } .mrio__faq summary { list-style: none; cursor: pointer; padding: 18px 22px; font-family: var(--mrio-display); font-weight: 800; font-size: clamp(15px, 1.8vw, 17px); color: var(--mrio-dark); display: flex; align-items: center; justify-content: space-between; gap: 14px; transition: color 0.25s ease; } .mrio__faq summary:hover { color: var(--mrio-red); } .mrio__faq summary::-webkit-details-marker { display: none; } .mrio__faq summary::after { content: "+"; font-family: var(--mrio-pixel); font-size: 14px; color: var(--mrio-yellow); transition: transform 0.3s ease; line-height: 1; } .mrio__faq details[open] summary::after { transform: rotate(45deg); } .mrio__faq-body { padding: 0 22px 20px; color: var(--mrio-text-soft); font-size: 16px; font-weight: 600; line-height: 1.7; } /* ================================================================= */ /* ================================================================= */ /* MIX & MATCH IDEAS — horizontal tips */ /* ================================================================= */ .mrio__tips { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: var(--mrio-gap); text-align: left; } .mrio__tip { position: relative; background: var(--mrio-cream); border: 2px solid rgba(229,37,33,0.14); border-radius: var(--mrio-radius); padding: clamp(20px, 3vw, 28px); transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease; } .mrio__tip:hover { transform: translateY(-5px); box-shadow: var(--mrio-shadow-sm); border-color: rgba(251,208,0,0.55); } .mrio__tip-ic { font-size: 28px; display: inline-block; margin-bottom: 12px; transition: transform 0.4s ease; } .mrio__tip:hover .mrio__tip-ic { transform: scale(1.15) rotate(-5deg); } .mrio__tip h4 { font-family: var(--mrio-display); font-weight: 800; font-size: 16.5px; margin: 0 0 7px; color: var(--mrio-dark); } .mrio__tip p { margin: 0; font-size: 15px; color: var(--mrio-text-soft); line-height: 1.65; font-weight: 600; } /* ================================================================= */ /* PROMISE CARDS */ /* ================================================================= */ .mrio__promise { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: var(--mrio-gap); text-align: left; } .mrio__promise-card { background: var(--mrio-cream); border: 2px solid rgba(229,37,33,0.14); border-radius: var(--mrio-radius); padding: clamp(22px, 3vw, 30px); transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease; } .mrio__promise-card:hover { transform: translateY(-5px); box-shadow: var(--mrio-shadow-sm); border-color: rgba(251,208,0,0.55); } .mrio__promise-ic { font-size: 28px; display: inline-block; margin-bottom: 12px; transition: transform 0.4s ease; } .mrio__promise-card:hover .mrio__promise-ic { transform: scale(1.14) rotate(-6deg); } .mrio__promise-card h4 { font-family: var(--mrio-display); font-weight: 800; font-size: 16.5px; margin: 0 0 8px; color: var(--mrio-dark); } .mrio__promise-card p { margin: 0; font-size: 15px; color: var(--mrio-text-soft); line-height: 1.65; font-weight: 600; } /* ================================================================= */ /* SPLIT PANELS (sound & feel style) */ /* ================================================================= */ .mrio__split { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: var(--mrio-gap); text-align: left; } .mrio__panel { background: var(--mrio-cream); border: 2px solid rgba(229,37,33,0.14); border-radius: var(--mrio-radius); padding: clamp(24px, 3.4vw, 34px); transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease; } .mrio__panel:hover { transform: translateY(-5px); box-shadow: var(--mrio-shadow-sm); border-color: rgba(251,208,0,0.55); } .mrio__panel-ic { font-size: 32px; margin-bottom: 12px; display: inline-block; transition: transform 0.4s ease; } .mrio__panel:hover .mrio__panel-ic { transform: scale(1.12) rotate(-5deg); } .mrio__panel h3 { font-family: var(--mrio-display); font-weight: 800; font-size: clamp(17px, 2.2vw, 21px); margin: 0 0 10px; color: var(--mrio-dark); } .mrio__panel p { margin: 0; color: var(--mrio-text-soft); font-size: 15.5px; line-height: 1.7; font-weight: 600; } /* ================================================================= */ /* GIFT BANNER */ /* ================================================================= */ .mrio__gift { position: relative; text-align: center; border-radius: var(--mrio-radius-lg); overflow: hidden; padding: clamp(30px, 5vw, 52px) clamp(20px, 4vw, 40px); background: linear-gradient(160deg, #fff8e7, #fff3d0); border: 2px solid rgba(251,208,0,0.40); box-shadow: var(--mrio-shadow-sm); } .mrio__gift-ic { font-size: 40px; margin-bottom: 12px; display: inline-block; transition: transform 0.4s ease; } .mrio__gift:hover .mrio__gift-ic { transform: scale(1.16) rotate(-8deg); } .mrio__gift h2 { font-family: var(--mrio-display); font-weight: 900; font-size: clamp(24px, 4vw, 38px); color: var(--mrio-dark); margin: 0 0 12px; } .mrio__gift p { max-width: 1200px; margin: 0 auto; color: var(--mrio-text); font-size: clamp(16px, 1.8vw, 19px); font-weight: 600; } /* ================================================================= */ /* TRUST STRIP */ /* ================================================================= */ .mrio__trust { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 14px; text-align: center; } .mrio__trust-item { padding: 22px 14px; border: 2px solid rgba(229,37,33,0.14); border-radius: 12px; background: var(--mrio-cream); transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease; } .mrio__trust-item:hover { transform: translateY(-5px); box-shadow: var(--mrio-shadow-sm); border-color: rgba(251,208,0,0.55); } .mrio__trust-ic { font-size: 26px; display: inline-block; transition: transform 0.35s ease; } .mrio__trust-item:hover .mrio__trust-ic { transform: scale(1.2) rotate(-5deg); } .mrio__trust-t { font-family: var(--mrio-display); font-weight: 800; font-size: 14.5px; margin: 8px 0 2px; color: var(--mrio-dark); } .mrio__trust-s { font-size: 13px; color: var(--mrio-text-soft); font-weight: 600; } /* ================================================================= */ /* CLOSING CTA */ /* ================================================================= */ .mrio__cta { position: relative; text-align: center; border-radius: var(--mrio-radius-lg); overflow: hidden; padding: clamp(36px, 6vw, 66px) clamp(20px, 4vw, 40px); background: radial-gradient(80% 110% at 50% 0%, rgba(251,208,0,0.16), transparent 55%), linear-gradient(155deg, #2a1f18, #1a1410); color: var(--mrio-cream); border: 2px solid rgba(251,208,0,0.28); box-shadow: var(--mrio-shadow); } .mrio__cta .mrio__coins { opacity: 0.6; } .mrio__cta h2 { position: relative; z-index: 2; font-family: var(--mrio-display); font-weight: 900; font-size: clamp(26px, 5vw, 48px); margin: 0 0 14px; color: var(--mrio-cream); text-shadow: 0 0 28px rgba(251,208,0,0.28); } .mrio__cta p { position: relative; z-index: 2; max-width: 1200px; margin: 0 auto; color: rgba(255,253,245,0.84); font-size: clamp(16px, 2vw, 20px); font-weight: 600; } .mrio__cta-seal { position: relative; z-index: 2; display: inline-flex; align-items: center; gap: 12px; margin-top: clamp(24px, 3.5vw, 32px); font-family: var(--mrio-display); font-weight: 800; letter-spacing: 0.16em; text-transform: uppercase; font-size: clamp(12px, 1.6vw, 14px); color: var(--mrio-yellow); padding: 14px 28px; border: 2px solid rgba(251,208,0,0.45); border-radius: 999px; background: rgba(251,208,0,0.08); cursor: pointer; text-decoration: none; transition: background 0.3s ease, border-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease, color 0.3s ease; } .mrio__cta-seal:hover { background: rgba(251,208,0,0.20); border-color: var(--mrio-yellow); transform: translateY(-3px) scale(1.02); box-shadow: 0 12px 30px -12px rgba(251,208,0,0.65); color: #fff; } .mrio__cta-seal:active { transform: translateY(-1px) scale(0.99); } /* ================================================================= */ /* RESPONSIVE — TABLET */ /* ================================================================= */ @media (max-width: 900px) { .mrio { font-size: 17px; } } /* ================================================================= */ /* RESPONSIVE — MOBILE */ /* ================================================================= */ @media (max-width: 600px) { .mrio { padding: 0; font-size: 16.5px; } .mrio__inner { padding: 18px 14px; } .mrio__features, .mrio__colors, .mrio__steps, .mrio__care, .mrio__stats, .mrio__trust, .mrio__tips, .mrio__promise, .mrio__split, .mrio__spec-grid { grid-template-columns: 1fr; } .mrio__eyebrow { letter-spacing: 0.1em; } .mrio__title { font-size: clamp(26px, 9vw, 38px); } } /* ================================================================= */ /* REDUCED MOTION */ /* ================================================================= */ @media (prefers-reduced-motion: reduce) { .mrio * { animation: none !important; transition: none !important; } } Limited Collectible Mario Question MarkKeycap A single iconic keycap straight out of the Mushroom Kingdom — because every great keyboard deserves at least one hidden power-up. ★ ? ★ 🎮Retro Design 🟥3 Colors 🔗MX Compatible The Power-Up One Key. Infinite Personality. Inspired by the legendary question mark block from one of gaming's most beloved universes, this single keycap brings a touch of retro-gaming magic to any mechanical keyboard. Whether you place it on your spacebar row, an F-key, or make it the star of your escape key — it is guaranteed to spark a smile every single session. Injection-moulded from ABS plastic, it slots right into your existing board with zero fuss. Available in Red, Yellow, and Blue — pick any three colors and note your choices to customer service at checkout. Why You'll Love It Key Features 🎮 Iconic Retro Design The instantly recognizable question mark block, faithfully recreated as a tactile keycap for your keyboard. 🎨 3 Color Options Choose from classic Red, Coin Yellow, and Sky Blue. Pick any three at checkout — mix and match to your heart's content. ⭐ Collector's Statement A novelty keycap that doubles as a display piece — swap it in, show it off, and let your desk tell the story of your love for gaming culture. 🔗 MX-Style Compatible Works with Cherry MX, Gateron, Kailh, and most MX-style switches you already have installed. 🧩 Sold Individually A single statement piece — place it wherever you want to claim your power-up on the board. 🏆 Instant Conversation Starter Desk setups, streaming rigs, office builds — this one key will get noticed and commented on every time. Built to Last Injection-Moulded ABS — Crisp & Consistent Manufactured via a precision injection-moulding process, every keycap is produced with sharp edges, consistent dimensions, and a smooth surface finish. ABS delivers the satisfying click acoustics and the solid mounting feel that keycap collectors expect — built to sit proudly on your board for years to come. Material ABS Plastic Process Injection Moulding Mount MX-Style Stem Backlight Non-Backlit Count Single Piece Pick Your Power Three Colors, One Block Choose any three colors at checkout and note your selection to customer service. 🟥 Red Bold & iconic · classic Mario red 🟡 Yellow The coin block original · golden & bright 🟦 Blue Cool & vivid · Mushroom Kingdom sky The Details Full Specifications Material ABS Plastic Manufacturing Injection Moulding Stem Type MX-Style (cross stem) Backlight Non-Backlit Ergonomics Ergonomic-friendly shape Quantity Single piece (sold individually) Available Colors Red · Yellow · Blue (choose any 3) Compatible Switches Cherry MX, Gateron, Kailh & most MX clones A Closer Look See It in Action Every angle and color, captured up close. Easy Setup Order & Install in 4 Steps No coins required. It is simpler than finding a warp pipe. 01 Choose Your Color Pick any three from Red, Yellow, or Blue and note your selection in the order notes or to customer service. 02 Pull the Old Cap Use a wire keycap puller to lift the existing key from its switch stem cleanly without scratching nearby caps. 03 Press Into Place Align the question mark keycap over the switch stem and press firmly until it clicks securely into position. 04 Collect Your Power-Up Step back, admire the view, and enjoy the most satisfying key on your entire board. Keep It Looking New Care Guide 01 Wipe Regularly A soft, dry microfiber cloth keeps the surface dust-free and the colors vibrant between deeper cleans. A quick wipe after each session keeps oils from building up on the ABS surface. 02 Damp Cloth for Stains For grease or smudges, wipe with a lightly dampened cloth. Dry immediately — avoid soaking the cap or submerging it in water, which can affect the stem channel fit. 03 Use a Puller to Remove Always remove with a wire keycap puller to protect both the cap and the switch stem underneath. Prying with fingernails can scratch the cap or stress the stem housing. 04 Avoid Direct Sunlight Prolonged exposure to direct UV can fade ABS pigments over time. Store your keyboard away from direct sun or window light to keep the colors bold and true for years. Is it compatible with hot-swap keyboards? Yes. Hot-swap compatibility is determined by the switch type, not the keycap. As long as your board uses MX-style sockets, the question mark keycap will seat and remove cleanly just like any standard cap. Can I order all three colors at once? Yes — simply note your preferred colors (Red, Yellow, Blue) in the order notes at checkout or message customer service, and we will fulfil them together in a single shipment where possible. Will it scratch or chip with regular use? Normal keyboard use will not chip or crack the keycap. ABS is durable everyday plastic. To protect the surface, always remove the keycap with a wire keycap puller rather than prying with fingernails or hard tools. Elevate Your Desk The Finishing Touch for Any Setup Great desks have personality. This single key delivers it. 🖥️ Gaming & Streaming Setups Streamers, content creators and competitive players all share one thing: they want a desk that looks as good on camera as it feels to use. One question mark keycap in the right spot speaks louder than any RGB strip ever could. 🏢 Office & Work-from-Home A subtle nod to gaming culture that keeps things professional. It is small enough to blend in but distinctive enough to start the best conversations on your next video call background. At a Glance Why Collectors Love It 3 Color Options 1 Bold Statement Key MX Universal Compatibility ∞ Smiles Guaranteed Questions? Frequently Asked Questions Will this fit my keyboard? Yes — it uses a standard MX-style stem, so it fits Cherry MX, Gateron, Kailh and most MX-compatible switches. How do I choose my colors? Select the listing and add a note at checkout with your three preferred colors (Red, Yellow, Blue). You can also contact customer service directly after ordering to confirm your selection. Is it sold as a single keycap or a set? This listing sells individual keycaps. Each order gives you one question mark keycap per color selected — perfect for accenting specific keys on your board. Does it work with backlit / RGB keyboards? The keycap is non-backlit and made from opaque ABS, so it will not let RGB light shine through. It will still physically fit on any MX-compatible board regardless of lighting. Can I place it on any key position? Absolutely. Escape, F keys, letter keys, numpad — as long as the switch underneath is MX-style, the cap will mount securely. Most collectors place it on the Escape key or a spare F-key for maximum visual impact. Make It Yours Where to Place It Three colors means three chances to customize. Here are the most popular spots. ⌨️ Escape Key The top-left position is the most visible on any board — turn your Escape into a statement piece and make every rage-quit feel a little more legendary. 🎛️ Function Row Drop it on F1, F5, or F12 for a subtle easter egg. Coworkers and viewers will do a double-take every single time they notice it. 🟨 Accent on Number Row Replace a tilde, backtick, or number key for a clever nod to the classic coin block — bonus points if it is the number 1 key. 🎮 Gaming Macro Key Assign your most-used macro or push-to-talk key and make it the most satisfying button press in your entire setup. The Experience Sound & Feel ABS is not just a material — it is a tactile statement. 🔊 Satisfying Click ABS plastic produces a crisp, snappy click on actuation. The injection-moulded construction keeps wall thickness consistent, so every press sounds and feels exactly the same — clean, sharp, and deeply satisfying. 🤚 Smooth Surface Finish The smooth ABS surface gives a slick, frictionless landing that feels effortless under your fingertip. Place it on a high-use key and enjoy the contrast against your surrounding textured keycaps. Shop With Confidence Our Promise to You 📦 Carefully Packed Every keycap is individually wrapped and securely packed to arrive in pristine, ready-to-mount condition — because first impressions on the desk should always be perfect. 🔍 Quality Checked Each piece is inspected for sharp legends, correct colour pigmentation, and a clean stem channel before shipping. Only pieces that meet our standards leave the facility. 💬 Color Support Not sure which colors to pick or how to note your selection? Message us before or after ordering and we will guide you through the process from start to delivery. 🎮 Made for Fans Designed for people who love gaming culture and want their desk to reflect it — one carefully chosen key at a time, with the passion of someone who truly gets it. Does ABS plastic yellow over time? ABS can discolor with prolonged UV exposure. Keep the keycap away from direct sunlight when not in use and it will retain its original color for years. Regular wiping also prevents oils from building up on the surface. Can I use it on a wireless keyboard? Absolutely. Wireless keyboards use exactly the same physical switches and keycap stems as wired boards. If your wireless keyboard uses MX-style switches, this keycap will fit perfectly. How do I tell customer service which colors I want? Add a note at checkout specifying your three color choices (Red, Yellow, Blue), or send a message to customer service directly after placing your order. We will confirm your selection before your order ships. Will the color look the same as in the photos? We do our best to ensure product photos accurately represent the real colors. Red is a bold, classic Mario red; Yellow is a bright coin-gold; Blue is a vivid sky blue. Monitor calibration can slightly affect how colors appear on screen, but the real-world keycaps are vibrant and true to their listed colors. Is this an official licensed Nintendo product? This is a third-party novelty keycap inspired by retro gaming culture. It is not an officially licensed Nintendo product. It is sold as a fan-made collectible accessory for mechanical keyboard enthusiasts. Material Matters Why ABS Plastic? ABS is the material of choice for novelty and artisan-style keycaps worldwide — here is why. 🎨 Vibrant, True Colors ABS accepts pigments deeply and evenly, producing the bold, saturated reds, yellows, and blues that make this keycap immediately recognizable from across the room. 🔩 Injection-Moulding Precision The injection-moulding process gives ABS tight dimensional tolerances, so each keycap clicks onto your switch with a firm, satisfying mount every single time. 🪶 Lightweight & Durable ABS is light enough not to add friction to your keystrokes while being tough enough to handle years of daily presses without cracking, warping, or discoloring under normal use. ✨ Smooth, Glossy Finish The naturally smooth surface of ABS gives the keycap a clean, polished look that photographs beautifully and catches the light in all the right ways on your desk. 🎁 The Perfect Gift for Any Gamer Compact, affordable, and immediately recognizable — a thoughtful treat for keyboard enthusiasts, retro gaming fans, and anyone who appreciates the classics. 🎮 Iconic Design Retro gaming classic 🎨 Your Choice Red, Yellow or Blue 💬 Friendly Support Color queries welcome 📦 Ready to Ship Carefully packed Did You Know? Fun Facts About the Question Block 🍄 Born in 1985 The question mark block made its debut in the original Super Mario Bros. on the Nintendo Famicom — now it lives on your keyboard, four decades later. 🪙 Most Punched Object in Gaming Billions of players have punched a question block from below. Now you can press one from above — a much more civilized way to collect your power-up. 🎯 3 Colors, Endless Combinations Red, Yellow, and Blue are the three primary colors — making this keycap set a small, tactile tribute to both gaming history and color theory at the same time. ⌨️ The Original Power-Up Key Every keyboard has an Escape key — but only yours has a question block. And in gaming, the question block always has something better inside than just "cancel". Claim Your Power-Up Today One key. Three colors. Zero reason not to hit Add to Cart. 🎮 Add to Cart — Press Start
More you might like
Related
Super Mario Glitter Anhänger - Question Mark Box
Related
Super Mario Question Mark Box Soap Dispenser
Related
Jibbitz™ Super Mario Star Question Mark Box
Related