/* Product store: built on the same style-v6 tokens as About / Services / Trainings */
.store-page{padding-top:120px;padding-bottom:90px;min-height:70vh;color:var(--text-secondary)}
.store-page--list{padding-top:0}
.store-container{width:min(1200px,calc(100% - 48px));margin:0 auto}
.section-eyebrow,.store-kicker{font-family:var(--font-heading);font-size:.78rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--accent-cyan)}
.store-content{padding-top:20px;padding-bottom:40px}
.store-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px;flex-wrap:wrap}
.store-toolbar h2{font-size:1.65rem;margin-top:4px;color:var(--text-primary)}
.result-count{color:var(--text-muted);font-size:.9rem}
.store-search-note{font-size:.9rem;color:var(--text-muted)}

.store-card{display:grid;grid-template-columns:minmax(280px,.88fr) minmax(0,1.12fr);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:var(--shadow-md);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);transition:transform var(--transition-normal),box-shadow var(--transition-normal),border-color var(--transition-normal)}
.store-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:rgba(14,165,233,.25)}
.store-card-image{background:linear-gradient(135deg,rgba(14,165,233,.08),rgba(124,58,237,.08));display:flex;align-items:center;justify-content:center;padding:42px;min-height:360px}
.store-card-image img{width:100%;max-height:300px;object-fit:contain}
.store-card-content{padding:34px 36px;display:flex;flex-direction:column;align-items:flex-start}
.store-badges{display:flex;gap:8px;flex-wrap:wrap}
.store-badges span{font-size:.75rem;font-weight:600;color:var(--accent-blue);background:rgba(14,165,233,.08);border:1px solid rgba(14,165,233,.2);padding:6px 12px;border-radius:50px}
.store-card h3{font-size:1.55rem;line-height:1.28;margin:17px 0 10px;color:var(--text-primary)}
.store-card h3 a{color:var(--text-primary)}
.store-card h3 a:hover{color:var(--accent-purple)}
.store-card-content>p{color:var(--text-secondary);line-height:1.75;margin:0 0 14px}
.store-card-content ul{padding-left:20px;color:var(--text-secondary);line-height:1.85;font-size:.95rem}
.store-card-bottom{display:flex;justify-content:space-between;align-items:center;gap:18px;border-top:1px solid var(--glass-border);padding-top:22px;margin-top:auto;width:100%;flex-wrap:wrap}
.store-card-bottom strong{font-family:var(--font-heading);font-size:1.6rem;color:var(--text-primary);display:block}
.store-card-bottom small{display:block;color:var(--text-muted);font-size:.78rem;margin-top:3px}
.store-primary{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:var(--gradient-primary);color:#fff;border:0;border-radius:var(--border-radius-sm);padding:13px 20px;font-family:var(--font-heading);font-weight:600;min-height:48px;cursor:pointer;text-decoration:none;transition:transform .2s,box-shadow .2s}
.store-primary:hover{transform:translateY(-2px);box-shadow:0 0 25px rgba(0,242,254,.4);color:#fff}
.store-primary span{font-size:1.05rem}
.store-assurance{display:flex;gap:24px;flex-wrap:wrap;padding:22px 4px;color:var(--text-muted);font-size:.9rem}

.breadcrumbs{padding-top:24px;display:flex;gap:10px;align-items:center;color:var(--text-muted);font-size:.88rem;flex-wrap:wrap}
.breadcrumbs a{color:var(--accent-blue)}
.product-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:54px;padding-top:30px}
.detail-gallery{min-width:0}
.detail-main-image{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--border-radius-lg);min-height:420px;display:flex;align-items:center;justify-content:center;padding:35px;box-shadow:var(--shadow-md)}
.detail-main-image img{width:100%;height:350px;object-fit:contain}
.image-caption{font-size:.8rem;color:var(--text-muted);margin:10px 3px 18px}
.detail-highlights{display:flex;gap:10px;flex-wrap:wrap}
.detail-highlights span{background:rgba(14,165,233,.08);color:var(--accent-blue);border:1px solid rgba(14,165,233,.18);border-radius:8px;padding:9px 11px;font-size:.8rem;font-weight:600}
.detail-info{padding:8px 0}
.detail-info h1{font-size:clamp(1.9rem,3vw,2.65rem);line-height:1.18;color:var(--text-primary);margin:18px 0 12px;letter-spacing:-.5px}
.detail-rating{font-size:.9rem;color:var(--text-muted)}
.detail-lead{font-size:1.02rem;line-height:1.8;color:var(--text-secondary);margin:20px 0}
.detail-price{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;padding:18px 0;border-top:1px solid var(--glass-border);border-bottom:1px solid var(--glass-border)}
.detail-price strong{font-family:var(--font-heading);font-size:2.1rem;color:var(--text-primary)}
.detail-price span{font-size:.85rem;color:var(--text-muted)}
.availability{padding:17px 0;color:#15803d;font-weight:600;font-size:.92rem}
.availability i{display:inline-block;width:8px;height:8px;background:#22c55e;border-radius:50%;margin-right:7px}
.availability small{display:block;color:var(--text-muted);font-weight:400;margin:5px 0 0 15px}
.detail-purchase{display:grid;gap:11px}
.buy-wide{width:100%;font-size:1rem}
.store-secondary{display:flex;justify-content:center;align-items:center;border:1px solid var(--glass-border);background:var(--bg-primary);color:var(--text-primary);border-radius:var(--border-radius-sm);min-height:46px;font-family:var(--font-heading);font-weight:600;transition:border-color .2s,box-shadow .2s}
.store-secondary:hover{border-color:var(--accent-cyan);box-shadow:0 0 15px rgba(14,165,233,.15);color:var(--text-primary)}
.payment-note{font-size:.8rem;line-height:1.6;color:var(--text-muted);text-align:center;margin:0}
.detail-service-notes{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}
.detail-service-notes div{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);padding:14px}
.detail-service-notes b,.detail-service-notes span{display:block}
.detail-service-notes b{font-size:.88rem;color:var(--text-primary);margin-bottom:5px}
.detail-service-notes span{font-size:.82rem;line-height:1.5;color:var(--text-muted)}
.detail-thumbnails{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px}
.thumb{border:1px solid var(--glass-border);background:var(--bg-primary);border-radius:var(--border-radius-sm);padding:7px;cursor:pointer;min-width:0;transition:border-color .2s,box-shadow .2s}
.thumb img{width:100%;height:78px;object-fit:contain}
.thumb.active,.thumb:hover{border-color:var(--accent-cyan);box-shadow:0 0 0 2px rgba(14,165,233,.12)}
.thumb:focus-visible{outline:3px solid var(--accent-cyan);outline-offset:2px}

.specs-section{padding-top:82px}
.specs-section h2{font-size:2rem;margin:10px 0;color:var(--text-primary)}
.spec-intro{color:var(--text-muted);margin-bottom:22px}
.spec-table-wrap{overflow-x:auto;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm)}
.spec-table{width:100%;border-collapse:collapse;font-size:.92rem}
.spec-table th,.spec-table td{padding:15px 18px;border-bottom:1px solid var(--glass-border);text-align:left;vertical-align:top;line-height:1.55}
.spec-table th{width:32%;background:var(--bg-secondary);color:var(--text-primary);font-weight:600}
.spec-table td{color:var(--text-secondary)}
.spec-table tr:last-child th,.spec-table tr:last-child td{border-bottom:0}
.sku-note{margin-top:20px;background:#fffbeb;border:1px solid #fde68a;border-radius:var(--border-radius-sm);padding:18px 20px;color:#78350f;line-height:1.7;font-size:.92rem}

@media(max-width:800px){
  .store-container{width:min(100% - 30px,650px)}
  .store-card,.product-detail{grid-template-columns:1fr}
  .store-card-image{min-height:260px;padding:28px}
  .store-card-content{padding:26px 23px}
  .store-card-bottom{align-items:flex-start;flex-direction:column}
  .store-primary{width:100%}
  .product-detail{gap:28px;padding-top:20px}
  .detail-main-image{min-height:300px}
  .detail-main-image img{height:260px}
  .specs-section{padding-top:55px}
  .store-toolbar{align-items:flex-start;flex-direction:column;gap:8px}
}
@media(max-width:480px){
  .store-card h3{font-size:1.3rem}
  .detail-info h1{font-size:1.8rem}
  .detail-service-notes{grid-template-columns:1fr}
  .spec-table th,.spec-table td{padding:12px;font-size:.83rem}
  .spec-table th{width:40%}
  .store-assurance{gap:10px;flex-direction:column}
}
