/* =========================================================
   SYNERGIC - Product Pages + eStore + Cart
   ========================================================= */

/* PRODUCT GRID */
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:8px}
.product-tile{background:#fff;border:1px solid #ececec;border-radius:14px;overflow:hidden;transition:all .3s;cursor:pointer;display:flex;flex-direction:column}
.product-tile:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(0,0,0,.1);border-color:#DA121C}
.product-tile img{width:100%;height:160px;object-fit:cover;background:#f0f0f0}
.product-tile .tile-body{padding:20px;flex:1;display:flex;flex-direction:column}
.product-tile h3{font-size:1.05rem;margin-bottom:8px;color:#111}
.product-tile p{font-size:.88rem;color:#666;margin-bottom:14px;flex:1}
.product-tile .tile-link{color:#DA121C;font-weight:600;font-size:.88rem;margin-top:auto}

/* PRODUCT BANNER */
.product-banner{position:relative;min-height:320px;background:linear-gradient(135deg,#1a1a2e 0%,#16213e 40%,#0f3460 100%);display:flex;align-items:center;overflow:hidden}
.product-banner::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.08) 1px,transparent 1px);background-size:24px 24px;opacity:.5}
.product-banner .banner-content{position:relative;z-index:2;padding:64px 0;width:100%}
.product-banner .breadcrumb{color:rgba(255,255,255,.6)}
.product-banner h1{color:#fff;font-size:clamp(1.75rem,3.5vw,2.75rem);margin-bottom:12px}
.product-banner .lead{color:rgba(255,255,255,.8);max-width:680px}
.product-banner .banner-badge{display:inline-block;background:#DA121C;color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:6px 14px;border-radius:20px;margin-bottom:16px}
.product-banner .banner-logo{position:absolute;right:40px;top:50%;transform:translateY(-50%);width:140px;height:140px;object-fit:contain;opacity:.12;z-index:1}

/* PRODUCT DETAIL */
.product-detail-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:48px;align-items:start}
.product-detail-grid h2{margin-bottom:16px;margin-top:32px}
.product-detail-grid h2:first-child{margin-top:0}
.product-feature{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid #f0f0f0}
.product-feature:last-child{border-bottom:none}
.product-feature .feat-icon{flex-shrink:0;width:40px;height:40px;border-radius:10px;background:#fef2f2;color:#DA121C;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.85rem}
.product-feature h4{font-size:.98rem;margin-bottom:4px;color:#111}
.product-feature p{font-size:.88rem;color:#666;margin:0}
.spec-table{width:100%;border-collapse:collapse;margin-top:12px;font-size:.88rem}
.spec-table th,.spec-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #ececec}
.spec-table th{background:#f7f8fa;font-weight:700;color:#111;width:35%}
.spec-table td{color:#555}
.user-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.user-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:#f7f8fa;border:1px solid #ececec;border-radius:30px;font-size:.85rem;font-weight:600;color:#333}
.user-badge::before{content:"";width:8px;height:8px;border-radius:50%;background:#DA121C}

/* eSTORE */
.cart-link{position:relative;display:inline-flex;align-items:center;gap:6px}
.cart-count{background:#DA121C;color:#fff;font-size:.7rem;font-weight:700;padding:2px 7px;border-radius:10px;margin-left:4px}
.store-toolbar{display:flex;gap:16px;flex-wrap:wrap;align-items:center;justify-content:space-between;margin-bottom:32px;padding:16px 0;border-bottom:1px solid #ececec}
.store-filters{display:flex;gap:10px;flex-wrap:wrap}
.filter-btn{padding:8px 18px;border:1.5px solid #ddd;background:#fff;border-radius:30px;font-size:.85rem;font-weight:600;color:#555;cursor:pointer;transition:all .2s}
.filter-btn:hover{border-color:#DA121C;color:#DA121C}
.filter-btn.active{background:#DA121C;color:#fff;border-color:#DA121C}
.store-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.store-card{background:#fff;border:1px solid #ececec;border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:all .25s}
.store-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(0,0,0,.1);border-color:#ddd}
.store-card img{width:100%;height:160px;object-fit:cover;background:#f0f0f0}
.store-card .store-body{padding:20px;flex:1;display:flex;flex-direction:column}
.store-card .store-cat{font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#DA121C;margin-bottom:6px}
.store-card h3{font-size:1.05rem;margin-bottom:8px;color:#111}
.store-card p{font-size:.88rem;color:#666;margin-bottom:14px;flex:1}
.store-card .store-price{font-size:1.15rem;font-weight:800;color:#111;margin-bottom:14px}
.store-card .store-price small{display:block;font-size:.72rem;font-weight:500;color:#888;margin-top:2px}
.store-card .store-actions{display:flex;gap:8px;flex-wrap:wrap}
.btn-cart{background:#DA121C;color:#fff;padding:10px 18px;font-size:.85rem;flex:1;min-width:120px;border:none;border-radius:6px;cursor:pointer;font-weight:600}
.btn-cart:hover{background:#b30e17}
.btn-quote{background:transparent;color:#111;border:1.5px solid #d0d0d0;padding:10px 18px;font-size:.85rem;border-radius:6px;cursor:pointer;font-weight:600}
.btn-quote:hover{border-color:#DA121C;color:#DA121C}

/* CART */
.cart-layout{display:grid;grid-template-columns:1.6fr .9fr;gap:40px;align-items:start}
.cart-table{width:100%;border-collapse:collapse}
.cart-table th{text-align:left;padding:12px 16px;background:#f7f8fa;font-size:.8rem;font-weight:700;color:#555;letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid #ececec}
.cart-table td{padding:16px;border-bottom:1px solid #ececec;vertical-align:middle;font-size:.92rem}
.cart-item-info{display:flex;gap:14px;align-items:center}
.cart-item-info img{width:60px;height:60px;object-fit:cover;border-radius:8px;background:#f0f0f0}
.cart-item-info h4{font-size:.95rem;margin-bottom:2px}
.cart-item-info .cat{font-size:.75rem;color:#888}
.qty-input{width:60px;padding:6px 8px;border:1.5px solid #ddd;border-radius:6px;text-align:center;font-size:.9rem}
.qty-input:focus{outline:none;border-color:#DA121C}
.cart-remove{background:none;border:none;color:#DA121C;cursor:pointer;font-size:.85rem;font-weight:600;padding:4px 8px}
.cart-remove:hover{text-decoration:underline}
.cart-summary{background:#f7f8fa;border:1px solid #ececec;border-radius:14px;padding:28px;position:sticky;top:100px}
.cart-summary h3{margin-bottom:20px;font-size:1.15rem}
.summary-row{display:flex;justify-content:space-between;padding:10px 0;font-size:.92rem;color:#555;border-bottom:1px solid #e5e5e5}
.summary-row.total{font-size:1.15rem;font-weight:800;color:#111;padding-top:16px;border-bottom:none;border-top:2px solid #111;margin-top:10px}
.cart-empty{text-align:center;padding:80px 20px}
.cart-empty h2{margin-bottom:12px}
.cart-empty p{color:#666;margin-bottom:24px}

/* CHECKOUT */
.checkout-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:40px;align-items:start}
.checkout-section{background:#fff;border:1px solid #ececec;border-radius:14px;padding:28px;margin-bottom:24px}
.checkout-section h3{margin-bottom:20px;font-size:1.05rem}
.checkout-section .form{margin-top:0}
.order-item{display:flex;justify-content:space-between;gap:12px;padding:10px 0;font-size:.88rem;border-bottom:1px solid #f0f0f0}
.order-item:last-child{border-bottom:none}
.order-item .name{color:#333}
.order-item .price{color:#111;font-weight:600;white-space:nowrap}
.pay-options{display:grid;gap:10px;margin-top:8px}
.pay-option{display:flex;align-items:center;gap:12px;padding:14px;border:1.5px solid #ddd;border-radius:10px;cursor:pointer;transition:all .2s}
.pay-option:hover{border-color:#DA121C}
.pay-option input{accent-color:#DA121C;width:18px;height:18px}
.pay-option.selected{border-color:#DA121C;background:#fef2f2}
.order-confirm{text-align:center;padding:60px 20px;max-width:640px;margin:0 auto}
.order-confirm .check{width:80px;height:80px;border-radius:50%;background:#DA121C;color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:800;margin:0 auto 24px}
.order-confirm h1{margin-bottom:16px}
.order-confirm .order-id{font-size:.9rem;color:#888;font-family:monospace;background:#f7f8fa;padding:8px 16px;border-radius:8px;display:inline-block;margin:12px 0 24px}

/* RESPONSIVE */
@media (max-width:960px){
  .product-grid,.store-grid{grid-template-columns:repeat(2,1fr)}
  .product-detail-grid,.cart-layout,.checkout-grid{grid-template-columns:1fr;gap:32px}
  .cart-summary{position:static}
  .product-banner .banner-logo{width:100px;height:100px;right:20px;opacity:.08}
}
@media (max-width:680px){
  .product-grid,.store-grid{grid-template-columns:1fr}
  .product-banner{min-height:auto}
  .product-banner .banner-content{padding:44px 0}
  .cart-table th:nth-child(3),.cart-table td:nth-child(3){display:none}
  .store-card .store-actions{flex-direction:column}
  .cart-table{font-size:.85rem}
  .cart-table td{padding:10px}
  .cart-item-info{flex-direction:column;align-items:flex-start}
}