/* Components extend the existing catalogue palette and typography. */
#memoryRequest .cta-side{display:block;min-height:0}
/* The following content section owns the gap below the equipment switch. */
.catalog-kind-switch{display:flex;width:fit-content;gap:5px;padding:5px;margin:6px 0 0;border:1px solid #c5d0dc;border-radius:14px;background:#f5f8fc}
.catalog-kind-switch a{padding:10px 22px;border-radius:10px;font-weight:600;color:var(--secondary);text-decoration:none}
.catalog-kind-switch a[aria-current=page]{background:#0b1626;color:#fff;box-shadow:0 3px 10px #0b16261a}
.catalog-kind-switch a:hover{color:#1766c2}.catalog-kind-switch a[aria-current=page]:hover{color:#fff}
.components-hero{padding-bottom:26px}.components-hero:not(.components-catalog-hero) h1{font-size:clamp(30px,4vw,52px);line-height:1.08;letter-spacing:-.03em;overflow-wrap:anywhere;margin:8px 0 16px}
.components-catalog-hero{padding-bottom:0}.components-catalog-hero .cat-hero>div:first-child{max-width:760px;min-width:0}
.components-section{padding:24px 0 70px}.component-category-grid{display:grid;gap:24px}
.component-category{display:grid;grid-template-columns:1.15fr 1fr;gap:20px;background:#fff;border:1px solid #c5d0dc;border-radius:24px;overflow:hidden;color:var(--text);text-decoration:none;box-shadow:var(--shadow-card);transition:border-color .2s}
.component-category:hover{border-color:#2783de}.category-copy{padding:38px}.component-eyebrow{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#53667f}.category-copy h2{font-size:32px;line-height:1.15;margin:14px 0}.category-copy p{max-width:52ch;color:var(--secondary)}
.category-visual{background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:25px}.category-visual img{width:100%;height:auto;object-fit:contain}.category-visual>span{font-size:11px;color:#73839a}
.component-tags{display:flex;gap:6px;flex-wrap:wrap}.component-tags>span{display:inline-flex;padding:5px 9px;border:1px solid #d2ddea;background:#f3f7fc;border-radius:8px;font-size:12px;font-weight:600;color:#365475}
.category-copy .component-tags{margin-top:24px}.category-bottom{display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap;margin-top:30px;font-size:14px}.category-bottom>span{color:var(--secondary)}.category-bottom>b{color:#1766c2}
.component-help{display:flex;align-items:center;gap:30px;justify-content:space-between;margin-top:30px;padding:30px;background:#f5f8fc;border:1px solid #c5d0dc;border-radius:20px}.component-help h2{font-size:23px;margin-bottom:10px}.component-help p{max-width:72ch;color:var(--secondary)}.component-help>.btn{flex:none}
.memory-filter-form{padding:24px;border:1px solid #c5d0dc;border-radius:20px;background:#fff;box-shadow:var(--shadow-card)}
.memory-search-row{display:flex;gap:12px}.memory-search{flex:1;position:relative}.memory-search input{width:100%;padding:0 42px 0 16px;min-height:48px;border:1px solid #bdcbdc;border-radius:12px;background:#f7f9fc;font:inherit;min-width:0}.memory-search>span[aria-hidden]{position:absolute;right:15px;top:4px;font-size:28px;color:#53667f}.memory-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:24px}.memory-filters label>span{display:block;font-size:12px;font-weight:600;color:#576980;margin-bottom:7px}.memory-filters select{width:100%;height:44px;border:1px solid #c5d0dc;border-radius:9px;padding:0 10px;color:var(--text);background:#fff;font:inherit;font-size:14px}.memory-filter-footer{display:flex;gap:14px;align-items:center;justify-content:space-between;margin-top:20px;padding-top:18px;border-top:1px solid #e0e6ef;font-size:12px;color:var(--secondary)}.memory-filter-footer>div{display:flex;align-items:center;gap:20px}.memory-filter-footer a{color:#1766c2}
.memory-results-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin:34px 0 20px}.memory-results-head h2{font-size:24px}.memory-results-head p{font-size:14px;color:var(--secondary);font-variant-numeric:tabular-nums}
.memory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.memory-card{min-width:0;display:flex;flex-direction:column;background:#fff;border:1px solid #c5d0dc;border-radius:20px;box-shadow:var(--shadow-card);overflow:hidden;transition:transform .2s,border-color .2s}.memory-card:hover{border-color:#2783de;transform:translateY(-2px)}.memory-card-main{display:block;color:inherit;text-decoration:none;flex:1}.memory-art{position:relative;padding:42px 24px 12px;background:linear-gradient(145deg,#fbfcfe,#edf3fa)}.memory-art img{display:block;width:100%;height:130px;object-fit:contain}.memory-vendor{position:absolute;left:20px;top:16px;font-size:13px;font-weight:700;color:#617690}.memory-card-body{padding:20px}.memory-card h3{font-size:18px;line-height:1.35;overflow-wrap:anywhere;margin:14px 0 6px}.memory-card-sub{font-size:14px;color:#53667f;margin-bottom:18px}.memory-card-specs{display:grid;grid-template-columns:1fr 1fr;gap:12px}.memory-card-specs dt{font-size:11px;color:#62748b;margin-bottom:3px}.memory-card-specs dd{font-size:13px;font-weight:600;overflow-wrap:anywhere}.memory-card-footer{padding:0 20px 20px;display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap}.memory-card-footer strong{font-size:16px}.memory-card-footer .btn{font-size:12px;padding:10px 12px;min-height:38px}.memory-pagination{display:flex;gap:20px;justify-content:center;align-items:center;margin-top:32px;color:var(--secondary);font-size:14px}
/* Product spacing: 8px base, 24px panels/gutters, 32px between sections. */
.memory-detail-hero,.memory-detail-section,#memoryRequest{--memory-panel-pad:24px;--memory-panel-gap:24px;--memory-section-gap:32px}
.components-hero.memory-detail-hero{padding-bottom:var(--memory-section-gap)}
.memory-detail-hero .breadcrumbs{margin-bottom:24px}
.memory-detail-hero .overline,.memory-spec-heading .overline{margin:0}
.components-hero.memory-detail-hero h1{font-size:clamp(27px,3.2vw,42px);line-height:1.18;max-width:1050px;margin:8px 0 16px}
.components-section.memory-detail-section{padding:0}
.memory-product-meta{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 24px;color:#62748b;font-size:14px}
.memory-product-meta b{color:#28394d;font-weight:600;overflow-wrap:anywhere}
.memory-product-meta a{color:#1766c2;text-decoration:none;font-size:13px}
.memory-product-top,.memory-full-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--memory-panel-gap);align-items:stretch}
.memory-gallery,.memory-offer{min-width:0;background:#fff;border:1px solid #c5d0dc;border-radius:20px;box-shadow:0 5px 20px #213b5707;padding:var(--memory-panel-pad)}
.memory-gallery{display:flex;flex-direction:column;gap:24px;overflow:hidden}
.memory-gallery-head{display:flex;justify-content:space-between;gap:16px;font-size:13px;color:#6c7f95}
.memory-gallery-head>span:first-child{font-weight:700;color:#365475}
.memory-product-image{flex:1;min-height:224px;display:flex;flex-direction:column;justify-content:center}
.memory-product-image img{display:block;width:100%;height:auto;max-height:230px;object-fit:contain}
.memory-product-image>span{font-size:11px;line-height:1.5;color:#728299;text-align:center;margin-top:16px}
.memory-highlights{display:grid;grid-template-columns:1fr 1fr 1.3fr;margin:0;border-top:1px solid #e0e7f0;padding-top:24px;gap:16px}
.memory-highlights>div{min-width:0}
.memory-highlights dt{color:#728299;font-size:12px;margin-bottom:8px}
.memory-highlights dd{font-size:20px;line-height:1.25;font-weight:700;letter-spacing:-.02em;overflow-wrap:anywhere;margin:0}
.memory-offer{display:flex;flex-direction:column;gap:24px}
.memory-price-block{display:grid;gap:8px}
.memory-offer-label{font-size:12px;color:#6b7e94}
.memory-price{font-size:clamp(28px,3vw,40px);line-height:1.2;letter-spacing:-.035em;font-weight:750;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.memory-price,.memory-price-note,.memory-stock{margin:0}
.memory-price-note{font-size:12px;color:#6b7e94;line-height:1.5;max-width:48ch}
.memory-stock{display:flex;align-items:center;gap:8px;font-size:12px;color:#53667f}
.memory-stock:before{content:"";width:6px;height:6px;flex:none;border-radius:50%;background:#8499b1}
.memory-offer-guidance{border-top:1px solid #e0e7f0;padding-top:24px}
.memory-offer-guidance b{font-size:14px;font-weight:650}
.memory-offer-guidance p{font-size:13px;line-height:1.65;color:#62748b;margin:8px 0 0}
.memory-offer-actions{display:grid;gap:12px}
.memory-offer-actions>.btn{width:100%;min-height:48px}
.memory-contact-row{display:flex;gap:12px;margin:0}
.memory-contact-row>.btn{flex:1;min-width:0;font-size:14px;min-height:48px}
.memory-offer>small{display:block;font-size:11px;line-height:1.6;color:#728299}
.memory-spec-section{padding:0;margin-top:var(--memory-section-gap);scroll-margin-top:100px}
.memory-spec-heading{display:grid;gap:12px;margin-bottom:24px}
.memory-spec-heading h2{font-size:28px;line-height:1.2;margin:8px 0 0}
.memory-spec-heading p{font-size:13px;line-height:1.6;color:#6b7e94;margin:0;max-width:80ch}
.memory-spec-card{display:flex;flex-direction:column;padding:0;min-width:0;background:#fff;border:1px solid #c5d0dc;border-radius:20px;overflow:hidden}
.memory-spec-card h3{font-size:15px;line-height:1.4;margin:0;padding:16px var(--memory-panel-pad);background:#f5f8fc;border-bottom:1px solid #e0e7f0}
.memory-spec-card dl{padding:0 var(--memory-panel-pad) 8px;margin:0}
.memory-spec-card dl>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;padding:12px 0;min-height:48px;border-bottom:1px solid #e5ebf2;font-size:13px;line-height:1.5;align-items:baseline}
.memory-spec-card dl>div:last-child{border-bottom:0}
.memory-full-specs dt{color:#6b7e94}
.memory-full-specs dd{font-weight:600;overflow-wrap:anywhere;margin:0}
#memoryRequest.cta-section{padding:var(--memory-section-gap) 0 64px}
#memoryRequest .cta-band{padding:32px;gap:32px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
#memoryRequest .overline{margin:0 0 8px}
#memoryRequest h2{margin:0 0 16px}
#memoryRequest .cta-band>div>p{margin:0}
#memoryRequest .cta-form{margin-top:24px;padding-top:24px}
#memoryRequest .cta-form-grid{gap:16px}
#memoryRequest .cta-form-foot{margin-top:16px}
#memoryRequest .contact-card{padding:24px}
.component-message{padding:40px 24px;background:#fff;border:1px solid #c5d0dc;border-radius:20px;text-align:center}.component-message p{margin:15px auto 24px;max-width:65ch;color:var(--secondary)}
.memory-art{background:#fff;border-bottom:1px solid #e2e9f1}.memory-image-label{position:absolute;right:20px;top:17px;font-size:10px;color:#728299}
.memory-vendor{max-width:calc(100% - 125px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.memory-card h3{font-size:17px;line-height:1.4;margin-bottom:20px}.memory-card-mpn{display:block;font-size:12px;font-weight:500;color:#63758d;margin-top:8px;letter-spacing:0}
.memory-card-footer small{display:block;font-size:11px;color:#63758d;margin-top:4px}.memory-catalog-note{font-size:13px;color:var(--secondary);margin:-6px 0 22px;max-width:88ch}
@media(max-width:1050px){.memory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.component-help{align-items:start;flex-direction:column}.category-copy{padding:28px}.category-copy h2{font-size:27px}.memory-highlights dd{font-size:17px}}
@media(max-width:900px){
  .memory-detail-hero,.memory-detail-section,#memoryRequest{--memory-panel-gap:16px;--memory-section-gap:24px}
  .memory-product-top,.memory-full-specs{grid-template-columns:1fr}
  .memory-product-image{min-height:192px}.memory-product-image img{max-height:200px}
  .memory-spec-heading{margin-bottom:16px}
  #memoryRequest .cta-band{grid-template-columns:1fr;gap:24px;padding:24px}
}
@media(max-width:700px){.catalog-kind-switch{width:100%}.catalog-kind-switch a{flex:1;text-align:center;padding:10px;font-size:14px}.component-category{grid-template-columns:1fr;gap:0}.category-copy{padding:25px}.category-visual{grid-row:1;padding:20px}.category-visual img{height:150px}.category-bottom{margin-top:22px}.component-help{padding:24px}.component-help>.btn{width:100%;font-size:14px}.memory-filter-form{padding:18px}.memory-search-row{flex-direction:column}.memory-search input{font-size:14px}.memory-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px}.memory-filters select{font-size:12px}.memory-filter-footer{flex-direction:column;align-items:stretch}.memory-filter-footer>div{justify-content:space-between}.memory-grid{grid-template-columns:1fr;gap:18px}.memory-art img{height:120px}.memory-art{padding-top:36px}.memory-results-head{display:block}.memory-results-head p{margin-top:8px}.memory-card-body{padding:18px}.memory-card-footer{padding:0 18px 18px}.memory-card-specs{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.memory-card-specs dd{font-size:11px}.memory-card-specs dt{font-size:10px}.components-section{padding-bottom:45px}}
@media(max-width:640px){.components-section{padding-top:16px}}
@media(max-width:600px){
  .memory-detail-hero,.memory-detail-section,#memoryRequest{--memory-panel-pad:20px}
  .memory-gallery,.memory-offer{gap:20px}
  .memory-gallery-head,.memory-product-meta{font-size:12px}
  .memory-product-image{min-height:160px}.memory-product-image>span{font-size:10px}
  .memory-highlights{padding-top:20px;gap:12px}.memory-highlights dt{font-size:10px}.memory-highlights dd{font-size:16px}
  .memory-price{font-size:32px}.memory-spec-heading h2{font-size:24px}
  .memory-spec-card h3{font-size:14px}.memory-spec-card dl>div{font-size:12px}
  #memoryRequest.cta-section{padding-bottom:40px}
  #memoryRequest .cta-band,#memoryRequest .contact-card{padding:20px}
}
@media(prefers-reduced-motion:reduce){.memory-card,.component-category{transition:none}.memory-card:hover{transform:none}}
