diySSD
  • Product
    Catalog
  • Pricing
    Complete Expanded Amazon Best Buy B&H Manufacturer Newegg
  • Blog
    Posts
  • Support
    FAQ News

Product

Catalog

Pricing

Complete Expanded Amazon Best Buy B&H Manufacturer Newegg

Blog

Posts

Support

FAQ News
/* ========================================================================== DIYSSD NAVIGATION - CSS VARIABLES ========================================================================== */ :root { /* Charcoal Scale */ --charcoal-050: #f5f5f5; --charcoal-100: #e6e6e6; --charcoal-200: #cccccc; --charcoal-300: #adadad; --charcoal-500: #7a7a7a; --charcoal-700: #565656; --charcoal-800: #474747; --charcoal-900: #3a3a3a; --charcoal-950: #2c2c2c; /* Accent Colors - WCAG AA Compliant */ --ocean-blue: #245270; --ocean-blue-rgb: 36, 82, 112; --terracotta: #c7522a; --golden-sand: #e5b363; --forest-green: #5d8a66; --dusty-plum: #8b5a8b; /* Accessibility */ --focus-ring-color: var(--ocean-blue); --focus-ring-width: 3px; --focus-ring-offset: 2px; --touch-target-min: 44px; /* Transitions */ --transition-speed: 0.2s; --transition-easing: cubic-bezier(0.4, 0, 0.2, 1); } /* Reduced Motion Support */ @media (prefers-reduced-motion: reduce) { :root { --transition-speed: 0.01ms; } * { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; } } /* ========================================================================== NAVIGATION CONTAINER ========================================================================== */ .diyssd-nav-container { position: relative; width: 100%; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } /* ========================================================================== NAVIGATION BAR - TWO-CHILD FLEXBOX STRUCTURE ========================================================================== */ .diyssd-nav { display: flex; align-items: center; padding: 1rem 1.5rem; background-color: var(--charcoal-050); border-bottom: none; position: relative; z-index: 1000; gap: 2rem; /* Space between logo and menu */ min-height: 70px; } @media (min-width: 1281px) { .diyssd-nav { padding: 1rem 2rem; } } /* Left Container: Logo (grows to fill remaining space) */ .diyssd-nav-left { flex: 1 1 auto; /* Grows and shrinks, takes remaining space */ display: flex; align-items: center; min-width: 0; /* Allows shrinking below content size */ } /* Right Container: Menu (shrinks to content size) */ .diyssd-nav-right { flex: 0 0 auto; /* Doesn't grow or shrink, sizes to content */ display: flex; align-items: center; gap: 1rem; } /* ========================================================================== LOGO ========================================================================== */ .diyssd-logo { display: flex; align-items: center; text-decoration: none; -webkit-tap-highlight-color: transparent; max-width: 100%; /* Constrained by parent container */ } .diyssd-logo:focus { outline: none; } .diyssd-logo:focus-visible { outline: var(--focus-ring-width) solid var(--focus-ring-color); outline-offset: var(--focus-ring-offset); border-radius: 4px; } .diyssd-logo img { height: 50px; /* Back to original size */ width: auto; display: block; max-width: 100%; object-fit: contain; } @media (max-width: 1080px) { .diyssd-logo img { height: 40px; } } /* ========================================================================== DESKTOP MENU ========================================================================== */ .diyssd-desktop-menu { display: none; list-style: none; margin: 0; padding: 0; align-items: center; gap: 0; } @media (min-width: 1081px) { .diyssd-desktop-menu { display: flex; } } .diyssd-menu-item { position: relative; display: flex; align-items: center; } .diyssd-menu-link { display: flex; align-items: center; padding: 0.75rem 1.25rem; /* Restored to original */ color: var(--charcoal-900); text-decoration: none; font-size: 1rem; font-weight: 500; transition: all var(--transition-speed) var(--transition-easing); border-radius: 4px; white-space: nowrap; } @media (min-width: 1281px) { .diyssd-menu-link { padding: 0.75rem 1.5rem; /* Restored to original */ } } .diyssd-menu-link.has-dropdown::after { content: "▾"; margin-left: 0.5rem; font-size: 0.875rem; /* Increased from 0.75rem (12px → 14px) */ transition: transform var(--transition-speed) var(--transition-easing); } .diyssd-menu-link:hover { color: var(--ocean-blue); background-color: var(--charcoal-050); } .diyssd-menu-link:hover.has-dropdown::after { transform: rotate(180deg); } .diyssd-menu-link:focus { outline: none; } .diyssd-menu-link:focus-visible { outline: var(--focus-ring-width) solid var(--focus-ring-color); outline-offset: var(--focus-ring-offset); border-radius: 4px; } .diyssd-menu-link:active { background-color: var(--charcoal-050); transform: scale(0.98); } .diyssd-menu-divider { width: 1px; height: 20px; background-color: var(--charcoal-300); margin: 0 0.25rem; opacity: 0.8; } /* ========================================================================== DROPDOWN MENUS ========================================================================== */ .diyssd-dropdown { position: absolute; top: 100%; left: 50%; transform: translateX(-50%) translateY(8px); background-color: #ffffff; border: 1px solid var(--charcoal-100); border-radius: 8px; box-shadow: 0 4px 12px rgba(44, 44, 44, 0.15), 0 2px 4px rgba(44, 44, 44, 0.08); padding: 0.5rem 0; min-width: 200px; opacity: 0; visibility: hidden; transition: all var(--transition-speed) var(--transition-easing); z-index: 1001; margin-top: 0.5rem; } .diyssd-menu-item:hover .diyssd-dropdown { opacity: 1; visibility: visible; transform: translateX(-50%) translateY(0); } .diyssd-dropdown-link { display: block; padding: 0.75rem 1.5rem; color: var(--charcoal-900); text-decoration: none; font-size: 0.95rem; font-weight: 400; transition: all var(--transition-speed) var(--transition-easing); position: relative; } .diyssd-dropdown-link:hover { background-color: var(--charcoal-050); } .diyssd-dropdown-link:focus { outline: none; } .diyssd-dropdown-link:focus-visible { outline: var(--focus-ring-width) solid var(--focus-ring-color); outline-offset: calc(var(--focus-ring-offset) * -1); } .diyssd-dropdown-link:active { background-color: var(--charcoal-100); } /* Active Link (current page) with Terracotta left border */ .diyssd-dropdown-link.active { color: var(--terracotta); background-color: rgba(199, 82, 42, 0.08); font-weight: 500; padding-left: calc(1.5rem + 3px); } .diyssd-dropdown-link.active::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background-color: var(--terracotta); } /* ========================================================================== MOBILE TOGGLE BUTTON ========================================================================== */ .diyssd-mobile-toggle { display: none; flex-direction: column; justify-content: space-between; width: 28px; height: 22px; background: none; border: none; cursor: pointer; padding: 0; z-index: 1002; -webkit-tap-highlight-color: transparent; transition: transform var(--transition-speed) var(--transition-easing); } @media (max-width: 1080px) { .diyssd-mobile-toggle { display: flex; } } .diyssd-mobile-toggle:focus { outline: none; } .diyssd-mobile-toggle:focus-visible { outline: var(--focus-ring-width) solid var(--focus-ring-color); outline-offset: var(--focus-ring-offset); border-radius: 4px; } .diyssd-mobile-toggle:active { transform: scale(0.95); } .diyssd-mobile-toggle span { display: block; width: 100%; height: 3px; background-color: var(--charcoal-900); border-radius: 2px; transition: all var(--transition-speed) var(--transition-easing); } .diyssd-mobile-toggle.active span:nth-child(1) { transform: translateY(9.5px) rotate(45deg); } .diyssd-mobile-toggle.active span:nth-child(2) { opacity: 0; } .diyssd-mobile-toggle.active span:nth-child(3) { transform: translateY(-9.5px) rotate(-45deg); } /* ========================================================================== MOBILE OVERLAY ========================================================================== */ .diyssd-mobile-overlay { display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.5); z-index: 999; opacity: 0; transition: opacity var(--transition-speed) var(--transition-easing); } @media (max-width: 1080px) { .diyssd-mobile-overlay { display: block; pointer-events: none; } .diyssd-mobile-overlay.active { opacity: 1; pointer-events: auto; } } /* ========================================================================== MOBILE MENU ========================================================================== */ .diyssd-mobile-menu { display: none; position: fixed; top: 0; left: 0; bottom: 0; width: 100%; max-width: 100%; background-color: #ffffff; z-index: 1000; overflow-y: auto; transform: translate3d(-100%, 0, 0); transition: transform var(--transition-speed) var(--transition-easing); will-change: transform; contain: layout style paint; box-shadow: 2px 0 12px rgba(0, 0, 0, 0.1); } @media (max-width: 1080px) { .diyssd-mobile-menu { display: block; } .diyssd-mobile-menu.active { transform: translate3d(0, 0, 0); } } @media (min-width: 641px) and (max-width: 844px) { .diyssd-mobile-menu { width: 75%; max-width: 450px; } } @media (min-width: 845px) and (max-width: 1080px) { .diyssd-mobile-menu { width: 75%; max-width: 500px; } } .diyssd-mobile-header { display: flex; justify-content: flex-end; align-items: center; padding: 0.75rem 1.25rem; border-bottom: 1px solid var(--charcoal-100); } .diyssd-mobile-close { display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; background-color: var(--charcoal-050); border: none; border-radius: 50%; cursor: pointer; font-size: 1.4rem; color: var(--charcoal-900); transition: all var(--transition-speed) var(--transition-easing); -webkit-tap-highlight-color: transparent; } .diyssd-mobile-close:hover { background-color: var(--charcoal-100); color: var(--ocean-blue); } .diyssd-mobile-close:focus { outline: none; } .diyssd-mobile-close:focus-visible { outline: var(--focus-ring-width) solid var(--focus-ring-color); outline-offset: var(--focus-ring-offset); } .diyssd-mobile-close:active { transform: scale(0.95); } .diyssd-mobile-content { padding: 0.5rem 1rem; } .diyssd-mobile-section { margin-bottom: 0.65rem; background-color: rgba(245, 245, 245, 0.4); padding: 0.35rem 0.6rem 0.6rem 0.6rem; /* Reduced top padding: 0.6rem → 0.35rem */ border-radius: 6px; border-top: 2px solid var(--ocean-blue); } .diyssd-mobile-heading { font-size: 0.8rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; color: var(--charcoal-800); margin: 0 0 0.25rem 0; } .diyssd-mobile-divider { height: 1px; background-color: var(--charcoal-200); margin-bottom: 0.25rem; } .diyssd-mobile-link { display: flex; align-items: center; padding: 0.45rem 0.6rem; min-height: var(--touch-target-min); color: var(--charcoal-900); text-decoration: none; font-size: 0.875rem; font-weight: 500; border-radius: 4px; transition: all var(--transition-speed) var(--transition-easing); } .diyssd-mobile-link:hover { color: var(--ocean-blue); background-color: var(--charcoal-050); } .diyssd-mobile-link:focus { outline: none; } .diyssd-mobile-link:focus-visible { outline: var(--focus-ring-width) solid var(--focus-ring-color); outline-offset: calc(var(--focus-ring-offset) * -1); } .diyssd-mobile-link:active { background-color: var(--charcoal-050); transform: translateX(2px); } .diyssd-mobile-link.active { color: var(--terracotta); background-color: rgba(199, 82, 42, 0.08); font-weight: 600; } /* ========================================================================== UTILITY CLASSES ========================================================================== */ body.diyssd-menu-open { overflow: hidden; } @media (prefers-contrast: high) { .diyssd-nav { border-bottom-width: 2px; } .diyssd-menu-link:focus-visible, .diyssd-dropdown-link:focus-visible, .diyssd-mobile-link:focus-visible { outline-width: 4px; } }
/* Global reset for consistent box-sizing */ * { box-sizing: border-box; } /* Container for the entire TOC component */ .toc-embed-wrapper .toc-container { max-width: 800px; margin: 40px auto; } /* Individual collapsible item styling */ .toc-embed-wrapper .toc-item { background: #fff; border-radius: 16px; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); margin-bottom: 18px; overflow: hidden; /* Prevents content from breaking border radius */ transition: box-shadow 0.2s ease; /* Smooth hover effect */ } /* Hover effect for entire item */ .toc-embed-wrapper .toc-item:hover { box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15); } /* Toggle button styling - removes default button appearance */ .toc-embed-wrapper .toc-toggle { background: none; border: none; width: 100%; display: flex; justify-content: space-between; align-items: center; font-size: 1.15rem; font-weight: 500; cursor: pointer; padding: 24px 28px; outline: none; color: #1a1a1a; transition: background-color 0.2s ease; } /* Button hover state */ .toc-embed-wrapper .toc-toggle:hover { background-color: #e6e6e6; } /* Keyboard focus accessibility - only visible when navigating with tab */ .toc-embed-wrapper .toc-toggle:focus-visible { outline: 2px solid #007acc; outline-offset: -2px; } /* Question text styling */ .toc-embed-wrapper .toc-question { flex: 1; /* Takes up remaining space */ font-weight: 400; text-align: left; margin: 0; } /* Plus/minus icon styling */ .toc-embed-wrapper .toc-icon { font-size: 1.8rem; font-weight: 300; transition: transform 0.3s ease, color 0.2s ease; /* Smooth rotation and color change */ margin-left: 20px; color: #666; flex-shrink: 0; /* Prevents icon from shrinking */ width: 24px; text-align: center; } /* Icon state when expanded - rotates 45deg to create X from + */ .toc-embed-wrapper .toc-toggle[aria-expanded="true"] .toc-icon { transform: rotate(45deg); color: #28a745; /* Green color when open */ } /* Answer content container - hidden by default */ .toc-embed-wrapper .toc-answer { padding: 0 28px 24px 28px; font-size: 1rem; color: #444; line-height: 1.6; display: none; /* Hidden by default */ animation: slideDown 0.3s ease-out; /* Smooth entrance animation */ } /* Show class for JavaScript toggle */ .toc-embed-wrapper .toc-answer.show { display: block; } /* Slide down animation for smooth reveal */ @keyframes slideDown { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } } /* Main ordered list styling (1, 2, 3...) */ .toc-embed-wrapper .toc-answer ol { list-style-type: none; /* Remove default numbering */ padding-left: 0; /* Remove default padding */ margin: 0.8em 0; /* Vertical spacing */ counter-reset: main-counter; /* Counter for main items */ } /* Main list items (h2 headers) */ .toc-embed-wrapper .toc-answer > ol > li { counter-increment: main-counter; position: relative; } .toc-embed-wrapper .toc-answer > ol > li::before { content: counter(main-counter) ". "; color: #007acc; font-weight: 600; margin-right: 0.5em; } /* Nested ordered list styling (x.1, x.2, x.3...) */ .toc-embed-wrapper .toc-answer ol ol { list-style-type: none; /* Remove default lettering */ padding-left: 2.2em; /* Additional indentation for hierarchy */ margin: 0.6em 0; /* Tighter spacing for nested items */ counter-reset: sub-counter; /* Counter for sub-items */ } /* Sub-list items (h3 headers) */ .toc-embed-wrapper .toc-answer ol ol li { counter-increment: sub-counter; position: relative; } .toc-embed-wrapper .toc-answer ol ol li::before { content: counter(main-counter) "." counter(sub-counter) " "; color: #28a745; font-weight: 500; margin-right: 0.5em; } /* Main list item spacing */ .toc-embed-wrapper .toc-answer li { margin: 0.6em 0; padding-left: 0.3em; /* Small padding for better text alignment */ } /* Nested list item spacing - tighter than main items */ .toc-embed-wrapper .toc-answer ol ol li { margin: 0.4em 0; } /* TOC link styling */ .toc-embed-wrapper .toc-answer a { text-decoration: none; color: #444; transition: color 0.2s ease; } .toc-embed-wrapper .toc-answer a:hover { color: #007acc; text-decoration: underline; } /* Remove default list marker styling since we're using custom numbering */ /* Empty state styling */ .toc-embed-wrapper .toc-empty { padding: 20px 28px; color: #888; font-style: italic; text-align: center; } /* Responsive design for mobile devices */ @media (max-width: 768px) { .toc-embed-wrapper .toc-container { margin: 20px auto; padding: 0 16px; /* Side padding on mobile */ } .toc-embed-wrapper .toc-toggle { padding: 20px 22px; /* Reduced padding on mobile */ font-size: 1.1rem; /* Slightly smaller font */ } .toc-embed-wrapper .toc-answer { padding: 0 22px 20px 22px; /* Matched reduced padding */ font-size: 0.95rem; /* Smaller text on mobile */ } .toc-embed-wrapper .toc-icon { font-size: 1.6rem; /* Smaller icon on mobile */ margin-left: 16px; } }

Terms & Conditions

Last Updated: December 14, 2024

These Terms and Conditions ("Terms") govern your access to and use of diySSD.com (the "Site"), operated by John Baer ("diySSD," "we," "us," or "our"). By using the Site, you agree to comply with these Terms, along with our Privacy Policy and Cookie Policy.

If you do not agree, you must discontinue use of the Site immediately.

Purpose of the Site

The Site provides educational content, technical resources, and product comparisons related to solid‑state drives (SSDs) and computer storage solutions. Information is provided for educational and informational purposes only, and should not be relied on as official manufacturer advice.

diySSD operates as an independent resource and does not participate in affiliate marketing programs. We do not earn commissions from product purchases made through links on our site. The Site is supported through Google Ads, and you may see third-party advertisements displayed throughout the Site.

Content Creation and AI Assistance

Content on diySSD may be created with the assistance of artificial intelligence tools and automation systems. All AI-generated or AI-assisted content is reviewed and edited by our editorial team to ensure accuracy and quality. Final responsibility for all published content rests with diySSD.

Intellectual Property Rights

All articles, guides, product comparisons, graphics, images, software, and other content provided on the Site ("Materials") are the property of diySSD or its licensors, protected by U.S. and international laws.

You may not copy, reproduce, distribute, or create derivative works without our prior written consent, except for personal and non-commercial use.

Third‑party specifications, logos, pricing, and product data remain the sole property of their respective owners.

Third-Party Advertising

The Site displays advertisements served by Google AdSense and other third-party advertising networks. These advertisers may use cookies, web beacons, and similar technologies to collect information about your visits to this Site and other websites in order to provide relevant advertisements.

diySSD does not control the content of these advertisements or the practices of third-party advertisers. The appearance of advertisements on our Site does not constitute an endorsement or recommendation of any advertised product or service.

For more information about Google's advertising practices and how to opt out of personalized advertising, visit the Google Ad Settings page.

User Conduct

When using the Site, you agree not to:

  • Harass, defame, or threaten others.

  • Use bots, scrapers, or automation tools to extract data.

  • Upload malware, spam, or unauthorized solicitations.

  • Impersonate diySSD staff or misrepresent affiliations.

If you post comments, reviews, or forum content, you grant diySSD a worldwide, non‑exclusive, royalty‑free license to host, display, and distribute that content. You represent that submitted content is lawful and does not infringe third‑party rights.

Pricing and Product Information

Pricing data on the Site are provided as estimates only, based on third‑party sources such as retailers or manufacturers. Product data is from reputable web sources such as retailers or manufacturers.

  • Prices and discounts are not guaranteed to be accurate or current.

  • Product availability, specifications, and features are subject to change by manufacturers without notice.

  • diySSD does not sell products directly and does not guarantee actual purchase terms.

  • Links to external retailers may become outdated or inactive.

  • Users should verify all terms, conditions, specifications, and pricing with the relevant retailer or manufacturer before making a purchase.

Disclaimer of Warranties

The Site and all Materials are provided "as is" and "as available." diySSD makes no warranties of any kind, whether express or implied, including warranties of accuracy, reliability, merchantability, fitness for a particular purpose, or non‑infringement.

We do not guarantee that the Site will be uninterrupted or error‑free, or that it will be free from viruses or harmful components. Your use of the Site is entirely at your own risk.

Limitation of Liability

To the maximum extent permitted under law, diySSD shall not be liable for:

  • Any indirect, incidental, consequential, or punitive damages, including lost profits, data loss, or system failures.

  • Any damages exceeding $100 USD.

Use by Minors

The Site is intended for adults 18 and older.

  • Users under 13 are not permitted.

  • Users aged 13–17 may access the Site only with parental supervision and consent. Parents or guardians are responsible for monitoring activity.

Copyright Policy (DMCA)

We comply with the Digital Millennium Copyright Act (DMCA). If you believe your copyrighted material has been unlawfully used, you may submit a notice to our designated agent with:

  1. Your signature (physical or electronic).

  2. Identification of the copyrighted work.

  3. The location/URL of the infringing material.

  4. Your contact information and a statement of accuracy sworn under penalty of perjury.

Validated complaints will result in removal of content. Users may file counter‑notices if they believe removal was in error, consenting to jurisdiction in the U.S. District Court for the Middle District of Florida.

Indemnification

You agree to indemnify and hold diySSD harmless from claims, damages, or liabilities (including attorney fees) arising from your misuse of the Site or violation of these Terms.

Governing Law and Dispute Resolution

  • These Terms are governed by the laws of Florida, without regard to conflict‑of‑law rules.

  • Disputes must first be resolved through binding arbitration administered by the American Arbitration Association (AAA) in Lee County, Florida.

  • Users may only pursue claims individually, not as a class action.

  • Exceptions: claims eligible for small claims court or disputes involving intellectual property may proceed in state or federal courts located in Florida.

Time Limit to File Claims

Any arbitration demand or legal claim must be filed within 6 months from the date of the event giving rise to the claim. Claims filed after this period are permanently barred.

Privacy and Data Collection

Our collection and use of personal data is governed by our Privacy Policy. By using the Site, you consent to these practices, including the use of cookies and tracking by third‑party partners.

Updates to These Terms

We may revise these Terms from time to time. The latest version will always be posted on the Site with the updated revision date. Your continued use of the Site after updates constitutes acceptance of the revised Terms.

Entire Agreement

These Terms, along with our Privacy Policy and Cookie Policy, form the entire agreement between you and diySSD. If any part is found unenforceable, the remainder still applies.

Contact Information

For questions about these Terms, contact:

john.baer@diyssd.com

About
Privacy
Terms
© 2024, 2025 - All Rights Reserved
Brand Logo Icon | DIY SSD