@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Manrope:wght@600;700;800&display=swap');
:root { --v2-bg:#05070b; --v2-panel:#09121e; --v2-header-bg:rgba(5,7,11,.94); --v2-line:rgba(127,183,219,.25); --v2-soft-line:rgba(127,183,219,.13); --v2-text:#eff6ff; --v2-muted:#9eb0c6; --v2-secondary:#d9e2ec; --v2-cyan:#29d3ff; --v2-gold:#f4c64d; --v2-search-bg:#07111d; --v2-image-bg:radial-gradient(circle at 50% 52%,rgba(47,116,167,.3),rgba(8,16,28,.92) 68%); --v2-badge-bg:rgba(5,7,11,.86); --v2-email-bg:linear-gradient(125deg,rgba(94,73,22,.28),rgba(8,18,31,.78)); --v2-button-ink:#111820; --v2-media-safe-area:0px; }
html[data-theme="light"] { --v2-bg:#f4f6f8; --v2-panel:#ffffff; --v2-header-bg:rgba(248,250,252,.95); --v2-line:rgba(31,65,87,.22); --v2-soft-line:rgba(31,65,87,.12); --v2-text:#14202b; --v2-muted:#536575; --v2-secondary:#465867; --v2-cyan:#006f8d; --v2-gold:#946700; --v2-search-bg:#ffffff; --v2-image-bg:radial-gradient(circle at 50% 52%,rgba(41,166,204,.2),rgba(225,232,238,.94) 70%); --v2-badge-bg:rgba(255,255,255,.92); --v2-email-bg:linear-gradient(125deg,rgba(244,198,77,.2),rgba(237,243,247,.96)); --v2-button-ink:#111820; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body.v2-preview-body { margin:0; background:var(--v2-bg); color:var(--v2-text); font-family:"DM Sans",sans-serif; }
button,input { font:inherit; } button { cursor:pointer; } [hidden] { display:none !important; }
.v2-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.v2-skip-link { position:fixed; z-index:100; top:.5rem; left:.5rem; padding:.65rem .8rem; background:var(--v2-cyan); color:#041018; font-weight:800; text-decoration:none; transform:translateY(-160%); }.v2-skip-link:focus { transform:translateY(0); }
.v2-header { position:sticky; z-index:10; top:0; border-bottom:1px solid var(--v2-line); background:var(--v2-header-bg); backdrop-filter:blur(14px); }
.v2-social-utility { min-height:30px; display:flex; align-items:center; gap:.32rem; padding:.2rem clamp(.8rem,3vw,3rem); border-bottom:1px solid var(--v2-soft-line); }.v2-social-utility a { width:25px; height:25px; display:grid; place-items:center; border-radius:50%; color:var(--v2-secondary); text-decoration:none; }.v2-social-utility a:hover { color:var(--v2-cyan); }.v2-social-utility a:focus-visible { color:var(--v2-gold); outline:2px solid var(--v2-gold); outline-offset:1px; }.v2-social-utility [data-social-icon] { display:block; font:700 .78rem/1 "Manrope",sans-serif; text-align:center; }
.v2-header-main { min-height:78px; display:grid; grid-template-columns:auto minmax(240px,560px) auto; align-items:center; justify-content:space-between; gap:clamp(1rem,3vw,3rem); padding:.4rem clamp(.8rem,3vw,3rem); }
.v2-brand { display:flex; align-items:center; gap:.7rem; color:var(--v2-text); font:700 .82rem/1 "Manrope",sans-serif; letter-spacing:.055em; text-decoration:none; white-space:nowrap; }.v2-brand img { width:64px; height:64px; object-fit:contain; border-radius:50%; }.v2-brand b { color:var(--v2-gold); }.v2-brand-copy { display:flex; flex-direction:column; align-items:flex-start; gap:.38rem; }.v2-brand-name { font:inherit; letter-spacing:inherit; }.v2-brand-tagline { color:var(--v2-secondary); font:600 .43rem/1 "Manrope",sans-serif; letter-spacing:.15em; word-spacing:.35em; }
.v2-header-actions { display:flex; align-items:center; gap:1rem; }.v2-header-actions button,.v2-header-actions a { border:0; background:transparent; color:var(--v2-muted); font:700 .58rem/1 "Manrope",sans-serif; letter-spacing:.08em; text-decoration:none; }.v2-header-actions button:hover,.v2-header-actions a:hover { color:var(--v2-cyan); }.v2-header-actions button:focus-visible,.v2-header-actions a:focus-visible { color:var(--v2-cyan); outline:2px solid var(--v2-gold); outline-offset:2px; }.v2-join-link { padding:.35rem 0; color:var(--v2-gold) !important; }.v2-theme-toggle { width:34px; height:34px; display:grid; place-items:center; padding:0; border:1px solid var(--v2-line) !important; border-radius:50%; background:var(--v2-panel) !important; color:var(--v2-text) !important; font-size:.9rem !important; line-height:1; }
.v2-discovery-nav { min-height:38px; display:flex; align-items:center; justify-content:center; gap:clamp(1rem,3vw,2.5rem); padding:.25rem .8rem; border-top:1px solid var(--v2-soft-line); overflow-x:auto; }.v2-discovery-nav button,.v2-discovery-nav a { flex:0 0 auto; padding:.35rem 0; border:0; background:transparent; color:var(--v2-muted); font:800 .58rem/1 "Manrope",sans-serif; letter-spacing:.09em; text-decoration:none; }.v2-discovery-nav button[aria-pressed="true"] { color:var(--v2-cyan); }.v2-discovery-nav button:hover,.v2-discovery-nav button:focus-visible,.v2-discovery-nav a:hover,.v2-discovery-nav a:focus-visible { color:var(--v2-text); outline:none; }.v2-discovery-nav span { color:var(--v2-gold); }
.v2-main { width:min(100% - 2rem,1440px); margin:0 auto; }.v2-catalogue { padding:.85rem 0 2.1rem; }.v2-intro { margin-bottom:.65rem; }.v2-eyebrow { color:var(--v2-cyan); font:800 .6rem/1 "Manrope",sans-serif; letter-spacing:.14em; }.v2-intro h1 { margin:.3rem 0 0; font:800 clamp(1.05rem,2vw,1.45rem)/1.12 "Manrope",sans-serif; letter-spacing:-.045em; }
.v2-discovery-tools { display:flex; align-items:center; gap:.45rem; margin-bottom:.6rem; }.v2-filters { min-width:0; display:flex; gap:.28rem; overflow-x:auto; scrollbar-width:thin; padding:2px; }.v2-filters button { min-height:29px; flex:0 0 auto; padding:.3rem .52rem; border:1px solid var(--v2-line); border-radius:999px; background:transparent; color:var(--v2-muted); font:800 .56rem/1 "Manrope",sans-serif; letter-spacing:.04em; }.v2-filters button[aria-pressed="true"] { border-color:var(--v2-cyan); background:rgba(41,211,255,.12); color:var(--v2-cyan); }.v2-filters button:focus-visible,.v2-search input:focus-visible { outline:2px solid var(--v2-gold); outline-offset:2px; }.v2-more-categories { display:none; }
.v2-search { flex:0 0 140px; }.v2-search input { width:100%; min-height:31px; padding:.35rem .5rem; border:1px solid var(--v2-line); border-radius:5px; background:var(--v2-panel); color:var(--v2-text); font-size:.72rem; }.v2-search input::placeholder { color:var(--v2-muted); opacity:.9; }.v2-search--desktop { width:100%; max-width:480px; }.v2-search--desktop input { min-height:40px; padding:.55rem .8rem; border-color:var(--v2-line); border-radius:999px; background-color:var(--v2-search-bg); font-size:.82rem; }.v2-search--mobile { display:none; }
.v2-product-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(170px,1fr)); gap:clamp(.42rem,1vw,.72rem); }.v2-product-card { min-width:0; display:grid; grid-template-rows:auto auto auto; align-content:start; padding:0; border:0; background:transparent; color:var(--v2-text); font:inherit; text-align:left; text-decoration:none; cursor:pointer; }.v2-product-image { position:relative; display:grid; width:100%; aspect-ratio:1; overflow:hidden; place-items:center; padding:var(--v2-media-safe-area); border-radius:5px; background:var(--v2-image-bg); }.v2-product-image img { display:block; width:100%; height:100%; max-width:100%; max-height:100%; object-fit:contain; object-position:50% 50%; }
[data-product-id="ryoko-pro"] .v2-product-image { padding:0; }
[data-product-id="ryoko-pro"] .v2-product-image img { object-fit:cover; object-position:50% 50%; }
.v2-product-badge { position:absolute; z-index:1; top:.38rem; left:.38rem; max-width:calc(100% - .76rem); padding:.24rem .38rem; border:1px solid var(--v2-gold); border-radius:999px; background:var(--v2-badge-bg); color:var(--v2-gold); font:800 .48rem/1 "Manrope",sans-serif; letter-spacing:.04em; text-transform:uppercase; }.v2-product-name,.v2-product-meta { display:block; padding-left:.08rem; padding-right:.08rem; }.v2-product-name { min-height:2.25em; padding-top:.38rem; font:800 .78rem/1.18 "Manrope",sans-serif; }.v2-product-meta { padding-top:.16rem; color:var(--v2-cyan); font:700 .5rem/1.2 "Manrope",sans-serif; letter-spacing:.055em; text-transform:uppercase; }.v2-product-card:hover .v2-product-image,.v2-product-card:focus-visible .v2-product-image { outline:2px solid var(--v2-cyan); outline-offset:2px; }.v2-product-card:focus-visible { outline:none; }.v2-empty { margin:1.5rem 0; color:var(--v2-muted); text-align:center; }
.v2-email { margin:1rem 0 0; padding:clamp(1.25rem,3vw,2rem); border:1px solid var(--v2-gold); border-radius:10px 10px 0 0; background:var(--v2-email-bg); }.v2-email h2 { margin:0; font:800 clamp(1.15rem,2.4vw,1.8rem)/1.08 "Manrope",sans-serif; }.v2-email p { color:var(--v2-muted); }.v2-email-form { display:flex; gap:.5rem; max-width:520px; }.v2-email-form input { min-width:0; flex:1; min-height:44px; padding:.65rem .75rem; border:1px solid var(--v2-line); border-radius:5px; background:var(--v2-search-bg); color:var(--v2-text); }.v2-email-form button { min-height:44px; padding:.65rem .8rem; border:1px solid var(--v2-gold); border-radius:5px; background:var(--v2-gold); color:var(--v2-button-ink); font:800 .67rem/1 "Manrope",sans-serif; letter-spacing:.055em; }
.v2-disclosure { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:.65rem 1rem; margin:0 0 1.25rem; padding:.8rem 1rem; border-top:1px solid var(--v2-line); border-bottom:1px solid var(--v2-line); color:var(--v2-muted); font-size:.72rem; }.v2-disclosure strong { color:var(--v2-gold); font:800 .6rem/1 "Manrope",sans-serif; letter-spacing:.08em; text-transform:uppercase; }.v2-disclosure p { margin:0; }.v2-disclosure a { color:var(--v2-text); font-weight:700; text-decoration:none; white-space:nowrap; }.v2-disclosure a:hover,.v2-disclosure a:focus-visible { color:var(--v2-cyan); }
.v2-footer { margin-top:0; padding:1.25rem max(.65rem,calc((100% - 1320px)/2)); border-top:1px solid var(--v2-line); color:var(--v2-muted); font-size:.72rem; }.v2-footer nav { display:flex; flex-wrap:wrap; gap:.7rem 1rem; }.v2-footer a { color:var(--v2-text); text-decoration:none; }.v2-footer a:hover,.v2-footer a:focus-visible { color:var(--v2-cyan); }.v2-footer p { margin:.75rem 0 0; }
.v2-info-main { width:min(100% - 2rem,1080px); margin:0 auto; padding:clamp(1.5rem,4vw,3.25rem) 0; }.v2-info-hero { max-width:760px; padding-bottom:clamp(1.25rem,3vw,2rem); border-bottom:1px solid var(--v2-line); }.v2-info-hero h1 { margin:.45rem 0 .7rem; font:800 clamp(2rem,5vw,4rem)/1 "Manrope",sans-serif; letter-spacing:-.06em; }.v2-info-hero p { max-width:680px; margin:0; color:var(--v2-muted); font-size:clamp(.95rem,1.8vw,1.15rem); line-height:1.6; }.v2-info-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(220px,300px); gap:clamp(1.5rem,4vw,4rem); padding-top:clamp(1.5rem,4vw,3rem); }.v2-info-article { min-width:0; }.v2-info-article h2 { margin:1.8rem 0 .55rem; color:var(--v2-text); font:800 clamp(1.15rem,2.3vw,1.55rem)/1.15 "Manrope",sans-serif; }.v2-info-article h2:first-child { margin-top:0; }.v2-info-article p,.v2-info-aside p { color:var(--v2-muted); line-height:1.72; }.v2-info-aside { align-self:start; padding:1.1rem; border:1px solid var(--v2-line); border-radius:8px; background:var(--v2-panel); }.v2-info-aside h2 { margin:0 0 .65rem; font:800 1rem/1.2 "Manrope",sans-serif; }.v2-primary-button { display:inline-flex; min-height:42px; align-items:center; justify-content:center; padding:.65rem .85rem; border:1px solid var(--v2-gold); border-radius:5px; background:var(--v2-gold); color:var(--v2-button-ink); font:800 .68rem/1 "Manrope",sans-serif; letter-spacing:.055em; text-decoration:none; }.v2-primary-button:focus-visible { outline:2px solid var(--v2-cyan); outline-offset:2px; }.v2-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }.v2-form-grid label { color:var(--v2-text); font-weight:700; }.v2-form-grid input,.v2-form-grid textarea { width:100%; margin-top:.4rem; padding:.7rem; border:1px solid var(--v2-line); border-radius:5px; background:var(--v2-search-bg); color:var(--v2-text); }.v2-form-grid textarea { min-height:150px; resize:vertical; }.v2-form-wide { grid-column:1/-1; }.v2-honeypot { position:absolute; left:-9999px; }.v2-contact-status { min-height:1.4em; color:var(--v2-muted); }.v2-contact-status.is-success { color:var(--v2-cyan); }.v2-contact-status.is-error { color:#d34b4b; }
.v2-destination-dialog { width:min(92vw,480px); max-height:calc(100dvh - 2rem); padding:0; border:1px solid var(--v2-line); border-radius:10px; background:var(--v2-panel); color:var(--v2-text); box-shadow:0 24px 80px rgba(0,0,0,.48); }.v2-destination-dialog::backdrop { background:rgba(2,6,12,.76); }.v2-destination-panel { position:relative; padding:clamp(1.1rem,4vw,1.65rem); }.v2-destination-panel h2 { margin:.4rem 2.25rem .35rem 0; font:800 clamp(1.35rem,4vw,1.85rem)/1.1 "Manrope",sans-serif; }.v2-destination-panel>p { margin:.2rem 0 1rem; color:var(--v2-muted); }.v2-destination-close-form { position:absolute; top:.75rem; right:.75rem; }.v2-destination-close { width:34px; height:34px; border:1px solid var(--v2-line); border-radius:50%; background:transparent; color:var(--v2-text); font-size:1.15rem; cursor:pointer; }.v2-destination-options { display:grid; gap:.5rem; }.v2-destination-option { display:grid; gap:.18rem; padding:.8rem .9rem; border:1px solid var(--v2-line); border-radius:6px; background:var(--v2-search-bg); color:var(--v2-text); text-decoration:none; }.v2-destination-option strong { font:800 .82rem/1.2 "Manrope",sans-serif; }.v2-destination-detail { color:var(--v2-muted); font-size:.66rem; font-weight:500; line-height:1.45; overflow-wrap:anywhere; }.v2-destination-action { color:var(--v2-cyan); font-size:.72rem; font-weight:700; }.v2-destination-option:hover,.v2-destination-option:focus-visible { border-color:var(--v2-cyan); outline:2px solid transparent; }.v2-destination-back { margin-top:.9rem; padding:.35rem 0; border:0; background:transparent; color:var(--v2-muted); font:700 .7rem/1.2 "DM Sans",sans-serif; cursor:pointer; }.v2-destination-close:focus-visible,.v2-destination-back:focus-visible { outline:2px solid var(--v2-gold); outline-offset:2px; }
.v2-product-main { width:min(100% - 2rem,1080px); margin:0 auto; padding:clamp(1rem,3vw,2rem) 0 0; }
.v2-product-back { display:inline-flex; margin-bottom:1rem; color:var(--v2-muted); font-size:.75rem; font-weight:700; text-decoration:none; }
.v2-product-back:hover,.v2-product-back:focus-visible { color:var(--v2-cyan); }
.v2-product-detail { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.8fr); gap:clamp(1.25rem,4vw,3.25rem); align-items:center; padding-bottom:clamp(1.5rem,4vw,3rem); }
.v2-product-detail-image { position:relative; display:grid; aspect-ratio:1; place-items:center; overflow:hidden; border-radius:8px; background:var(--v2-image-bg); }
.v2-product-detail-image img { display:block; width:100%; height:100%; object-fit:contain; }
.v2-product-detail-badge { position:absolute; z-index:1; top:.75rem; left:.75rem; padding:.3rem .5rem; border:1px solid var(--v2-gold); border-radius:999px; background:var(--v2-badge-bg); color:var(--v2-gold); font:800 .55rem/1 "Manrope",sans-serif; letter-spacing:.05em; text-transform:uppercase; }
.v2-product-detail-copy h1 { margin:.45rem 0 .75rem; font:800 clamp(1.8rem,4vw,3.2rem)/1.02 "Manrope",sans-serif; letter-spacing:-.055em; }
.v2-product-detail-category { color:var(--v2-cyan); font:800 .58rem/1.2 "Manrope",sans-serif; letter-spacing:.08em; text-transform:uppercase; }
.v2-product-compatibility { max-width:900px; margin:0 auto; }
.v2-product-compatibility-disclosure { max-width:38rem; margin:0; color:var(--v2-muted); font-size:.78rem; line-height:1.6; }
.v2-product-detail-description { margin:0 0 .8rem; color:var(--v2-secondary); font-size:clamp(.95rem,1.7vw,1.1rem); line-height:1.6; }
.v2-product-feature-list { display:grid; gap:.45rem; margin:.2rem 0 1rem; padding-left:1.15rem; color:var(--v2-muted); font-size:.85rem; line-height:1.5; }
.v2-product-feature-list li::marker { color:var(--v2-gold); }
.v2-product-merchant,.v2-product-disclaimer { color:var(--v2-muted); line-height:1.55; }
.v2-product-merchant { margin:.4rem 0 .8rem; font-size:.82rem; }
.v2-product-tags { display:flex; flex-wrap:wrap; gap:.35rem; margin:0; padding:0; list-style:none; }
.v2-product-tags li { padding:.3rem .48rem; border:1px solid var(--v2-line); border-radius:999px; color:var(--v2-muted); font-size:.62rem; }
.v2-product-actions { margin:1.1rem 0 .75rem; }
.v2-product-actions .v2-primary-button { min-width:180px; }
.v2-product-disclaimer { margin:.6rem 0 0; font-size:.68rem; }
.v2-not-found { width:min(100% - 2rem,760px); min-height:55vh; margin:0 auto; padding:clamp(3rem,9vw,7rem) 0; }
.v2-not-found h1 { margin:.5rem 0 .75rem; font:800 clamp(2rem,6vw,4rem)/1 "Manrope",sans-serif; letter-spacing:-.055em; }
.v2-not-found p { margin:0 0 1.25rem; color:var(--v2-muted); line-height:1.6; }
@media (min-width:641px) and (max-width:900px) { .v2-header-main { min-height:68px; }.v2-brand img { width:52px; height:52px; }.v2-brand { gap:.55rem; }.v2-brand-tagline { font-size:.38rem; letter-spacing:.11em; word-spacing:.18em; } }
@media (max-width:720px) { .v2-info-main { width:calc(100% - 1.2rem); padding-top:1.25rem; }.v2-info-grid { grid-template-columns:1fr; }.v2-info-aside { padding:1rem; }.v2-form-grid { grid-template-columns:1fr; }.v2-form-wide { grid-column:auto; }.v2-product-main { width:calc(100% - 1.2rem); }.v2-product-detail { grid-template-columns:1fr; gap:1rem; align-items:start; }.v2-product-detail-image { max-width:560px; }.v2-product-detail-copy h1 { font-size:clamp(1.65rem,8vw,2.25rem); }.v2-product-actions .v2-primary-button { width:100%; }.v2-not-found { width:calc(100% - 1.2rem); } }
@media (max-width:640px) { :root { --v2-media-safe-area:.55rem; }.v2-social-utility { min-height:26px; gap:.2rem; padding:.12rem .45rem; flex-wrap:nowrap; overflow:hidden; }.v2-social-utility a { width:23px; height:23px; }.v2-social-utility [data-social-icon] { font-size:.7rem; }.v2-header-main { min-height:61px; display:flex; padding:.38rem .65rem; }.v2-brand { min-width:0; gap:.52rem; font-size:.82rem; }.v2-brand img { width:42px; height:42px; flex:0 0 42px; }.v2-brand-copy { min-width:0; gap:0; }.v2-brand-name { overflow:hidden; text-overflow:ellipsis; }.v2-brand-tagline { display:none; }.v2-header-actions { flex:0 0 auto; gap:.55rem; margin-left:auto; }.v2-header-actions button,.v2-header-actions a { font-size:.5rem; }.v2-theme-toggle { width:32px; height:32px; font-size:.82rem !important; }.v2-search--desktop { display:none; }.v2-discovery-nav { display:none; }.v2-main { width:calc(100% - 1.3rem); }.v2-catalogue { padding-top:.65rem; }.v2-intro { margin-bottom:.5rem; }.v2-eyebrow { display:none; }.v2-intro h1 { margin:0; font-size:1.08rem; }.v2-discovery-tools { flex-direction:column; align-items:stretch; gap:.42rem; margin-bottom:.5rem; }.v2-filters { width:100%; flex-wrap:wrap; gap:.3rem; overflow:visible; }.v2-filters button { min-height:29px; padding:.32rem .5rem; font-size:.52rem; }.v2-more-categories { display:inline-flex !important; align-items:center; gap:.22rem; border-color:var(--v2-gold) !important; color:var(--v2-gold) !important; }.v2-more-categories[aria-expanded="true"] { border-color:var(--v2-cyan) !important; color:var(--v2-cyan) !important; }.v2-search--mobile { display:block; width:100%; flex-basis:auto; }.v2-search--mobile input { min-height:34px; padding:.4rem .58rem; font-size:.72rem; }.v2-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:.38rem; }.v2-product-image { border-radius:3px; }.v2-product-name { padding-top:.3rem; font-size:.72rem; }.v2-product-meta { padding-top:.12rem; font-size:.47rem; }.v2-product-badge { top:.28rem; left:.28rem; font-size:.44rem; }.v2-email-form { flex-direction:column; }.v2-disclosure { grid-template-columns:1fr; gap:.4rem; padding:.75rem .15rem; }.v2-disclosure a { white-space:normal; } }
@media (min-width:1100px) { .v2-product-grid { grid-template-columns:repeat(5,minmax(0,1fr)); } }
@media (max-width:640px) { .v2-product-image { padding:0; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
