/* template.css overrides
================================*/
.banner { padding-top: 41.667%; }
.banner-img {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  max-height: 300px;
  background: url(../imgs/hero.jpg) no-repeat 0 0;
  background-size: 289.722222%;
}
.header2021-logo-img > img { width: 102px !important; height: auto; }
.price { margin: 0 0 0.825em 0; }
.price-save-dollar,.price-save-label,.price-save-percent { position: relative; background: #cc4e00; color: #fff; font-weight: 700; font-size: 14px; }
.price-save-percent:after { left: 100%; border-bottom: 19px solid #cc4e00; border-right: 10px solid transparent; margin-bottom: 0; }
.price-save-label { padding: 2px 0 1px 6px; }
.price-save-dollar { padding: 2px 0 1px 2px; }
.price-save-percent { padding: 2px 6px 1px 2px; }
.price-save-label:before,.price-save-percent:after { content: ''; position: absolute; bottom: 0; width: 0; height: 0; }
.item-cell { border-bottom: none; }
.item-promo { margin-top: 1em; }
.item-promo-code { border-color: #888; }
.item-promo-title span { color: #333; }
.item-promo-info { color: #cc4e00; }
.item-promo-code { padding: 1.5em 5px 1em 5px; height: auto; color: #cc4e00; }
.item-promo-code-save { display: inline; }
li.mir { display: none; }
.instantSavings, .mir { display: block; }
.finalPrice { font-size: 1.6em; }
.instantSavings { font-size: 0.925em; }
.finalPrice, .instantSavings { color: #000; }
.shipping { visibility: hidden; }
.mir { font-size: 1em; margin: 0; color: #016B04; }
.header .logo { width: 125px; }
.items-grid:after { background: none; }
.item-title a { font-size: 14px; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; line-clamp: 2; -webkit-box-orient: vertical; }
.item-container:hover { opacity: 1; filter: alpha(opacity=100); transition: all 0.2s ease-in-out; }

/* CSS Custom Properties — design tokens
================================*/
:root {
  --ne-logo-blue:   #09144F;
  --ne-blue:        #002D6A;
  --ne-light-blue:  #084BA6;
  --ne-yellow:      #FA9D28;
  --ne-lt-orange:   #FF8500;
  --ne-orange:      #F06C00;
  --ne-navy:        #00283A;
  --bg-dark-1:      #0a0a0f;
  --bg-dark-2:      #0d0d14;
  --bg-dark-3:      #111118;
  --bg-light-1:     #f5f5f7;
  --bg-light-2:     #fafafa;
  --bg-light-3:     #f0f0f0;
  --surface-dark-1: #0f1a2e;
  --surface-dark-2: #0d1b33;
  --text-primary:   #f0f0f0;
  --text-secondary: #9e9e9e;
  --gray-bg:        #F2F2F2;
  --gray-line:      #E8E8E8;
  --gray-border:    #D1D1D1;
  --gray-aux-light: #6E6E6E;
  --gray-body:      #212121;
  --ngg-orange:     #FA9D28;
  --ngg-darkorange: #FF8500;
  --ngg-btn-txt:    #212121;
  --ngg-opensans:   'Open Sans', sans-serif;
  --ngg-montserrat: 'Montserrat', sans-serif;
  --sp-1:  8px;
  --sp-2:  16px;
  --sp-3:  24px;
  --sp-4:  32px;
  --sp-6:  48px;
  --sp-8:  64px;
  --sp-section:    40px;
  --sp-section-lg: 64px;
}

/* Newegg button standards
================================*/
.btn-primary, .button.button-primary, .ngg-shopall, .ngg-buynow {
  text-transform: none; font-family: var(--ngg-opensans); border: 0;
  background-color: var(--ngg-orange); color: var(--ngg-btn-txt);
}
.ngg-btn { border: 0; background: none; width: 100%; margin: 3% auto; text-align: center; }
.ngg-item-btn { margin: auto; text-align: center; }
.ngg-item-btn a { border-radius: 35px; width: 100%; letter-spacing: 0; font-size: 14px; }
.ngg-shopall, .ngg-buynow { border-radius: 30px; text-align: center; transition: 0.5s; font-weight: 700; font-family: var(--ngg-opensans); }
.ngg-shopall { border-radius: 50px; background-color: var(--ngg-orange); color: var(--ngg-btn-txt); border: 0; padding: 10px 4%; font-weight: 700; text-transform: none; font-size: clamp(1rem, 2vw, 1.5rem); }
.ngg-buynow { padding: 10px 8%; }
.ngg-shopall:hover, .ngg-buynow:hover, .ngg-item-btn a:hover { background-color: var(--ngg-darkorange); transition: 0.35s; }
.btn-primary:hover, .btn-primary:active, .button.button-primary:hover, .button.button-primary:active { background: var(--ngg-darkorange); color: var(--ngg-btn-txt); }

/* Global base — scoped to .section-inner only
   CRITICAL: Never apply color, font, or inherited rules to bare body, *, a, p, h1-h6.
   Newegg header and footer live outside .section-inner and must never be overridden.
   body may only receive background, margin, and padding.
================================*/
body { background: var(--bg-dark-1); margin: 0; }
.section-inner {
  max-width: 1920px; margin: 0 auto; overflow: hidden;
  font-size: 14px; font-family: var(--ngg-opensans); color: var(--text-primary);
}
.section-inner * { font-size: max(14px, inherit); }
img { max-width: 100%; display: block; }
a { text-decoration: none; }

/* Hero height cap — never exceeds 400px
================================*/
.lp-hero { max-height: 400px; overflow: hidden; position: relative; width: 100%; }
.lp-hero-bg { width: 100%; height: 400px; background-size: cover; background-position: center; background-repeat: no-repeat; }

/* Scroll reveal
================================*/
.reveal { opacity: 1; transform: none; }
.will-reveal { opacity: 0; transform: translateY(20px); transition: opacity 0.55s ease-out, transform 0.55s ease-out; }
.will-reveal.visible { opacity: 1; transform: none; }
@keyframes fadeUp { to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
  .will-reveal { opacity: 1; transform: none; }
}

/* Disclaimer */
.disclaimer { font-size: 12px; color: var(--text-secondary); text-align: center; padding: var(--sp-2) clamp(24px, 6vw, 80px); }

/* Responsive breakpoints
================================*/
@media only screen and (max-width: 550px) {
  .items-grid .item-cell { width: 90%; text-align: center; border-bottom: 1px solid #333; padding-bottom: 8%; }
  .item-img > img { max-width: 300px; }
  .items-grid .item-title { height: auto; }
  .lp-hero { max-height: 200px; }
  .lp-hero-bg { height: 200px; }
}
@media only screen and (min-width: 375px) {}
@media only screen and (min-width: 481px) {}
@media only screen and (min-width: 641px) {
  .banner { padding-top: 21.96%; }
  .banner-img { background-position: 100% 0; background-size: 152.7086383601757%; }
  .items-grid .item-cell { width: 19%; margin: 0; }
}
@media only screen and (min-width: 769px) {}
@media only screen and (min-width: 1025px) {}
@media only screen and (min-width: 1440px) {}

/* ── PAGE-SPECIFIC STYLES BELOW THIS LINE ──────────── */

/* Project #26-1002 — ASUS Agent Computer
   ASUS vendor module (#ASUS-ProductOverview), moved from the vendor's inline <style>.
   Edits vs vendor source: Roboto → Montserrat/Open Sans, white → --bg-light-2,
   .btn → Newegg orange standard. Everything else is the vendor's CSS unchanged.
================================*/
:root { --ngg-save: #cc4e00; }
body { background: var(--bg-light-2); }

:root {
  --asus-color-text-primary: #333333;
  --asus-color-text-secondary: #000000;
  --asus-color-link: #0082fc;
  --asus-color-link-hover: #0066cc;
  --asus-color-background: var(--bg-light-2);
  --asus-font-family-primary: var(--ngg-opensans);
  --asus-font-family-secondary: var(--ngg-opensans);
  --asus-font-family-display: var(--ngg-montserrat);
  --asus-font-size-base: 12px;
  --asus-font-size-h1: 2.6666em;
  --asus-font-size-h2: 2em;
  --asus-font-size-h3: 1.5em;
  --asus-font-size-text: 1.25em;
  --asus-font-size-note: 1em;
  --asus-font-weight-light: 300;
  --asus-font-weight-normal: 400;
  --asus-font-weight-medium: 500;
  --asus-font-weight-bold: bold;
  --asus-line-height-tight: 1.2;
  --asus-line-height-normal: 1.3;
  --asus-line-height-relaxed: 1.5;
  --asus-spacing-0: 0;
  --asus-spacing-xs: 5px;
  --asus-spacing-sm: 10px;
  --asus-spacing-md: 20px;
  --asus-spacing-lg: 30px;
  --asus-spacing-xl: 40px;
  --asus-spacing-xxl: 50px;
  --asus-spacing-xxxl: 100px;
  --asus-container-max-width: 1000px;
  --asus-container-padding: 0;
  --asus-image-max-width-small: 400px;
  --asus-image-max-width-medium: 600px;
  --asus-image-max-width-large: 800px;
  --asus-transition-speed: 0.3s;
  --asus-transition-easing: ease;
}
#ASUS-ProductOverview {
  font-family: var(--asus-font-family-primary);
  font-size: var(--asus-font-size-base);
  font-weight: var(--asus-font-weight-normal);
  color: var(--asus-color-text-primary);
  text-align: center;
  width: 100%;
  max-width: var(--asus-container-max-width);
  padding: var(--asus-container-padding);
  background-color: var(--asus-color-background);
  margin: 0 auto;
}
#ASUS-ProductOverview *, #ASUS-ProductOverview *::before, #ASUS-ProductOverview *::after {
  margin: 0;
  padding: 0;
  border: 0;
  box-sizing: border-box;
}
#ASUS-ProductOverview li {list-style: none;}
#ASUS-ProductOverview img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
}
#ASUS-ProductOverview p {
  margin: 0;
  padding: 0;
}
#ASUS-ProductOverview b, #ASUS-ProductOverview strong {
  font-weight: var(--asus-font-weight-bold);
}
#ASUS-ProductOverview sup, #ASUS-ProductOverview sub {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
#ASUS-ProductOverview sup { top: -0.5em; }
#ASUS-ProductOverview sub { bottom: -0.25em; }
#ASUS-ProductOverview a {
  color: var(--asus-color-link);
  text-decoration: none;
  transition: color var(--asus-transition-speed) var(--asus-transition-easing);
}
#ASUS-ProductOverview a:hover {
  color: var(--asus-color-link-hover);
  text-decoration: underline;
}

/* Typography */
#ASUS-ProductOverview .title-h1 {
  font-family: var(--asus-font-family-display);
  color: var(--asus-color-text-primary);
  font-size: var(--asus-font-size-h1);
  font-weight: var(--asus-font-weight-medium);
  line-height: var(--asus-line-height-tight);
}
#ASUS-ProductOverview .title-h2 {
  font-family: var(--asus-font-family-display);
  color: var(--asus-color-text-secondary);
  font-size: var(--asus-font-size-h2);
  font-weight: var(--asus-font-weight-normal);
  line-height: var(--asus-line-height-tight);
}
#ASUS-ProductOverview .title-h3 {
  font-family: var(--asus-font-family-secondary);
  color: var(--asus-color-text-primary);
  font-size: var(--asus-font-size-h3);
  font-weight: var(--asus-font-weight-bold);
  line-height: var(--asus-line-height-tight);
}
#ASUS-ProductOverview .text {
  color: var(--asus-color-text-primary);
  font-size: var(--asus-font-size-text);
  font-weight: var(--asus-font-weight-normal);
  line-height: var(--asus-line-height-normal);
}
#ASUS-ProductOverview .text-note {
  font-size: var(--asus-font-size-note);
  font-weight: var(--asus-font-weight-normal);
  line-height: var(--asus-line-height-relaxed);
}

/* Content Width Container */
#ASUS-ProductOverview .content-width {
  width: 90%;
  margin: 0 auto;
}

/* Layout */
#ASUS-ProductOverview .section__item {
  position: relative;
  display: block;
  width: 100%;
  padding: var(--asus-spacing-md) var(--asus-spacing-sm);
}
#ASUS-ProductOverview .section__item--hero {
  padding: var(--asus-spacing-md) var(--asus-spacing-sm) var(--asus-spacing-0);
}
#ASUS-ProductOverview .grid {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin: var(--asus-spacing-sm) 0;
  gap: var(--asus-spacing-sm);
}
#ASUS-ProductOverview .grid__item {
  flex: 1;
  min-width: 0;
  padding: 0;
}
#ASUS-ProductOverview .grid__content {
  width: 95%;
  margin: 0 auto;
}
#ASUS-ProductOverview .grid--2col .grid__item {flex-basis: calc(50% - (var(--asus-spacing-sm) / 2)); }
#ASUS-ProductOverview .grid--3col .grid__item {flex-basis: calc(33.333% - (var(--asus-spacing-sm) * 2 / 3)); }
#ASUS-ProductOverview .grid--4col .grid__item {flex-basis: calc(25% - (var(--asus-spacing-sm) * 3 / 4)); }

/* Images */
#ASUS-ProductOverview .image {
  max-width: 100%;
  margin: 0 auto;
}
#ASUS-ProductOverview .image--small { max-width: var(--asus-image-max-width-small); }
#ASUS-ProductOverview .image--medium { max-width: var(--asus-image-max-width-medium); }
#ASUS-ProductOverview .image--large { max-width: var(--asus-image-max-width-large); }

/* Lists */
#ASUS-ProductOverview .list {
  display: inline-block;
  width: 100%;
  list-style-type: disc;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 0;
  margin-inline-end: 0;
  padding-inline-start: 25px;
  text-align: left;
}
#ASUS-ProductOverview .list-faq {
  padding-left: 0;
}
#ASUS-ProductOverview .list__item {
  margin-bottom: var(--asus-spacing-xs);
  font-weight: var(--asus-font-weight-normal);
  font-size: var(--asus-font-size-text);
  line-height: var(--asus-line-height-normal);
}

/* Spacing Utilities */
#ASUS-ProductOverview .pt-0 { padding-top: var(--asus-spacing-0) !important; }
#ASUS-ProductOverview .pt-10 { padding-top: var(--asus-spacing-sm) !important; }
#ASUS-ProductOverview .pt-20 { padding-top: var(--asus-spacing-md) !important; }
#ASUS-ProductOverview .pt-30 { padding-top: var(--asus-spacing-lg) !important; }
#ASUS-ProductOverview .pt-50 { padding-top: var(--asus-spacing-xxl) !important; }
#ASUS-ProductOverview .pb-0 { padding-bottom: var(--asus-spacing-0) !important; }
#ASUS-ProductOverview .pb-10 { padding-bottom: var(--asus-spacing-sm) !important; }
#ASUS-ProductOverview .pb-20 { padding-bottom: var(--asus-spacing-md) !important; }
#ASUS-ProductOverview .pb-30 { padding-bottom: var(--asus-spacing-lg) !important; }
#ASUS-ProductOverview .pb-40 { padding-bottom: var(--asus-spacing-xl) !important; }
#ASUS-ProductOverview .pb-50 { padding-bottom: var(--asus-spacing-xxl) !important; }
#ASUS-ProductOverview .mt-0 { margin-top: var(--asus-spacing-0) !important; }
#ASUS-ProductOverview .mt-10 { margin-top: var(--asus-spacing-sm) !important; }
#ASUS-ProductOverview .mt-20 { margin-top: var(--asus-spacing-md) !important; }
#ASUS-ProductOverview .mb-0 { margin-bottom: var(--asus-spacing-0) !important; }
#ASUS-ProductOverview .mb-10 { margin-bottom: var(--asus-spacing-sm) !important; }
#ASUS-ProductOverview .mb-20 { margin-bottom: var(--asus-spacing-md) !important; }

/* Width Utilities */
#ASUS-ProductOverview .w-full { width: 100% !important; }
#ASUS-ProductOverview .w-90 { width: 90% !important; }
#ASUS-ProductOverview .w-95 { width: 95% !important; }
#ASUS-ProductOverview .w-96 { width: 96% !important; }

/* Margin Auto Utilities */
#ASUS-ProductOverview .mx-auto { margin-left: auto !important; margin-right: auto !important; }
#ASUS-ProductOverview .ml-auto { margin-left: auto !important; }
#ASUS-ProductOverview .mr-auto { margin-right: auto !important; }

/* Text Alignment Utilities */
#ASUS-ProductOverview .text-left { text-align: left !important; }
#ASUS-ProductOverview .text-center { text-align: center !important; }
#ASUS-ProductOverview .text-right { text-align: right !important; }

/* Misc Utilities */
#ASUS-ProductOverview .nowrap { white-space: nowrap; }

/* Grid Modifiers */
#ASUS-ProductOverview .grid--middle { align-items: center; }
#ASUS-ProductOverview .grid--reverse { flex-direction: row-reverse; }
#ASUS-ProductOverview .grid--center { justify-content: center; }
#ASUS-ProductOverview .grid--center .grid__item { flex-grow: 0; }

/* Button */
#ASUS-ProductOverview .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.4em;
  min-width: 10em;
  min-height: 44px;
  padding: 0.75em 1.5em;
  border: 0;
  border-radius: 2em;
  color: var(--ngg-btn-txt);
  background-color: var(--ngg-orange);
  font-family: var(--ngg-opensans);
  font-stretch: normal;
  text-transform: none;
  letter-spacing: 0;
  font-size: 1.1666em;
  font-weight: var(--asus-font-weight-medium);
  line-height: var(--asus-line-height-tight);
  text-align: center;
  text-decoration: none;
}
#ASUS-ProductOverview .btn:hover {
  color: var(--ngg-btn-txt);
  background-color: var(--ngg-darkorange);
  text-decoration: none;
}

/* Product Card */
#ASUS-ProductOverview .card { display: block; }
#ASUS-ProductOverview .card img { margin: 0 auto; }

/* Responsive Design */
@media only screen and (max-width: 768px) {
  #ASUS-ProductOverview .title-h1 {font-size: 2.1666em; }
  #ASUS-ProductOverview .title-h2 {font-size: 1.6666em; }
  #ASUS-ProductOverview .title-h3 {font-size: 1.3333em; }
  #ASUS-ProductOverview .text {font-size: 1.25em; line-height: var(--asus-line-height-tight); }
  #ASUS-ProductOverview .content-width {width: 100%; padding-inline: var(--asus-spacing-xs); }
  #ASUS-ProductOverview .grid__content {width: 100%; padding-inline: 0; }
  #ASUS-ProductOverview .section__item--hero {padding: var(--asus-spacing-md) 0 0; }
  #ASUS-ProductOverview .section__item {padding: 0 0 var(--asus-spacing-lg); }
  #ASUS-ProductOverview .grid {gap: var(--asus-spacing-xs); }
  #ASUS-ProductOverview .grid__item {flex-basis: 100% !important; }
  #ASUS-ProductOverview .grid--reverse {flex-direction: row; }
  #ASUS-ProductOverview .grid--4col .grid__item {flex-basis: calc(50% - (var(--asus-spacing-xs) / 2)) !important; }
}
@media only screen and (max-width: 480px) {
  #ASUS-ProductOverview .grid--4col .grid__item {flex-basis: 100% !important; }
}

/* Newegg integration layer — scoped to the ASUS module
================================*/
/* template.css resets p/div/a/li to font-family: sans-serif; re-inherit the module font */
#ASUS-ProductOverview * { font-family: inherit; }
#ASUS-ProductOverview .fa { font-family: FontAwesome; }

/* Hero cap: never taller than 400px (200px ≤550px) */
#ASUS-ProductOverview .asus-kv { max-height: 100%; object-fit: cover; }

/* Accessible focus */
#ASUS-ProductOverview a:focus-visible { outline: 3px solid var(--ne-yellow); outline-offset: 3px; }

/* Featured SKU cards: equal-height columns, CTA pinned to the bottom */
#ASUS-ProductOverview .card.item-container { display: flex; flex-direction: column; height: 100%; }
#ASUS-ProductOverview .card .title-h3 { min-height: 3.6em; }
#ASUS-ProductOverview .card .title-h3 a { color: inherit; }
#ASUS-ProductOverview .card .title-h3 a:hover { color: var(--asus-color-link-hover); }
#ASUS-ProductOverview .card .item-img { display: block; }
#ASUS-ProductOverview .card .item-img img { aspect-ratio: 1 / 1; object-fit: contain; mix-blend-mode: multiply; }
#ASUS-ProductOverview .grid__item > a > img { mix-blend-mode: multiply; }
#ASUS-ProductOverview .card .item-info { margin-top: auto; padding-top: var(--asus-spacing-sm); font-size: 16px; }
#ASUS-ProductOverview .ngg-item-btn { width: 100%; margin: var(--asus-spacing-md) 0 0; }
#ASUS-ProductOverview .ngg-item-btn a { width: auto; font-size: 14px; font-weight:bold; }

/* Live pricing: restore template spacing the vendor reset zeroes out */
#ASUS-ProductOverview .price { margin: 0 0 0.5em; color: var(--gray-body); }
#ASUS-ProductOverview .price-save-label { padding: 2px 0 1px 6px; }
#ASUS-ProductOverview .price-save-dollar { padding: 2px 0 1px 2px; }
#ASUS-ProductOverview .price-save-percent { padding: 2px 6px 1px 2px; }
#ASUS-ProductOverview .price-save-label,
#ASUS-ProductOverview .price-save-dollar,
#ASUS-ProductOverview .price-save-percent { background: var(--ngg-save); }
#ASUS-ProductOverview .price-save-percent::after { border-bottom: 19px solid var(--ngg-save); border-right: 10px solid transparent; }
#ASUS-ProductOverview .soldout { font-weight: 700; color: var(--ngg-save); }

@media only screen and (max-width: 550px) {
  
}
@media only screen and (max-width: 480px) {
  #ASUS-ProductOverview .card .title-h3 { min-height: 0; }
}
