/* LNL 3D Product Detail Experience v2.19.9
   Pure presentation layer over the native OpenCart 4 product page.
   Cart/options/reviews remain native OpenCart functionality. */

body:has(#product-info) main { background:#f6f8fb; }
body:has(#product-info) #content { padding-top:18px; padding-bottom:60px; }
body:has(#product-info) .breadcrumb {
  background:transparent; padding:8px 0 18px; margin:0; font-size:13px;
}
body:has(#product-info) .breadcrumb a { color:#667085; text-decoration:none; }
body:has(#product-info) .breadcrumb li:last-child a { color:#1d4f91; font-weight:700; }

#product-info {
  background:#fff; border:1px solid #e6ebf2; border-radius:22px;
  box-shadow:0 16px 42px rgba(25,45,80,.07);
  padding:34px; margin-bottom:28px;
}
#product-info > .row { align-items:flex-start; }
#product-info .image, #product-info .thumbnail {
  border:0 !important; border-radius:16px; background:#f8fafc;
}
#product-info .image img, #product-info .thumbnail img {
  width:100%; object-fit:contain; border-radius:16px;
}
#product-info .image-additional, #product-info .thumbnails { gap:10px; }
#product-info .image-additional a, #product-info .thumbnails a {
  border:1px solid #e2e8f0 !important; border-radius:10px; overflow:hidden;
}
#product-info h1 {
  font-size:clamp(32px,3.2vw,48px); line-height:1.08; letter-spacing:-.025em;
  color:#172033; font-weight:850; margin:2px 0 12px;
}
#product-info h1:before {
  content:"LNL 3D PRODUCT"; display:block; font-size:11px; letter-spacing:.16em;
  color:#1760c5; font-weight:850; margin-bottom:10px;
}
#product-info ul.list-unstyled { color:#64748b; font-size:14px; }
#product-info ul.list-unstyled li { margin:5px 0; }
#product-info h2, #product-info .price-new {
  font-size:32px; font-weight:900; color:#172033; letter-spacing:-.02em;
}
#product-info .price-old { color:#98a2b3; font-size:18px; }
#product-info hr { border-color:#edf1f6; opacity:1; margin:22px 0; }

#product-info .form-label { font-weight:750; color:#344054; margin-bottom:8px; }
#product-info .form-select, #product-info .form-control {
  border:1px solid #d9e1ec; border-radius:10px; min-height:44px;
}
#product-info #button-cart, #product-info button[id*="cart"] {
  min-height:48px; border-radius:10px; font-weight:850; letter-spacing:.02em;
  padding-left:26px; padding-right:26px;
}
#product-info #button-cart { background:#1257c7; border-color:#1257c7; }
#product-info #button-cart:hover { background:#0d47a8; border-color:#0d47a8; }

.lnl-product-trust {
  display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin:22px 0 4px;
}
.lnl-product-trust div {
  background:#f7faff; border:1px solid #e4ecf7; border-radius:12px; padding:13px 12px;
  color:#344054; font-size:12px; font-weight:750; text-align:center;
}
.lnl-product-trust i { color:#1760c5; margin-right:6px; }

.lnl-product-quote {
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  margin-top:18px; padding:16px 18px; border-radius:13px;
  background:#f7f9fc; border:1px solid #e2e8f0;
}
.lnl-product-quote strong { display:block; color:#172033; font-size:14px; }
.lnl-product-quote span { display:block; color:#667085; font-size:12px; margin-top:2px; }
.lnl-product-quote a {
  white-space:nowrap; text-decoration:none; border:1px solid #1d4f91; color:#1d4f91;
  border-radius:9px; padding:9px 14px; font-weight:800; font-size:12px;
}

/* Native description / specification / review tabs */
body:has(#product-info) .nav-tabs {
  background:#fff; border:1px solid #e5eaf1; border-radius:14px 14px 0 0;
  padding:7px 10px 0; gap:4px; margin-top:28px;
}
body:has(#product-info) .nav-tabs .nav-link {
  border:0; border-bottom:3px solid transparent; color:#667085; font-weight:750;
  padding:13px 17px;
}
body:has(#product-info) .nav-tabs .nav-link.active {
  color:#174f9f; border-bottom-color:#174f9f; background:transparent;
}
body:has(#product-info) .tab-content {
  background:#fff; border:1px solid #e5eaf1; border-top:0;
  border-radius:0 0 14px 14px; padding:30px; margin-bottom:32px;
}
body:has(#product-info) .tab-content h2,
body:has(#product-info) .tab-content h3 {
  color:#172033; font-weight:800;
}
body:has(#product-info) .tab-content p,
body:has(#product-info) .tab-content li { line-height:1.72; color:#4b596b; }
body:has(#product-info) .table {
  --bs-table-bg:transparent; border-color:#e7ecf3;
}
body:has(#product-info) .table td, body:has(#product-info) .table th {
  padding:13px 15px; vertical-align:middle;
}
body:has(#product-info) .table th { color:#344054; font-weight:800; background:#f8fafc; }

/* Related product area / product cards */
body:has(#product-info) #content > h3,
body:has(#product-info) #content > h2 {
  color:#172033; font-weight:850; letter-spacing:-.015em; margin-top:34px;
}
body:has(#product-info) .product-thumb {
  height:100%; background:#fff; border:1px solid #e5eaf1; border-radius:15px;
  overflow:hidden; box-shadow:0 8px 24px rgba(25,45,80,.045);
  transition:transform .18s ease,box-shadow .18s ease;
}
body:has(#product-info) .product-thumb:hover {
  transform:translateY(-3px); box-shadow:0 14px 30px rgba(25,45,80,.09);
}
body:has(#product-info) .product-thumb .image { background:#f8fafc; }
body:has(#product-info) .product-thumb .description { padding:18px; }
body:has(#product-info) .product-thumb h4,
body:has(#product-info) .product-thumb .name { font-weight:800; color:#172033; }

.lnl-product-support {
  margin:38px 0 0; padding:30px 34px; border-radius:18px;
  background:#102a4d; color:#fff; display:flex; align-items:center;
  justify-content:space-between; gap:22px;
}
.lnl-product-support h2 { color:#fff !important; margin:0 0 6px !important; font-size:25px; }
.lnl-product-support p { margin:0; color:#d6e2f2; }
.lnl-product-support-actions { display:flex; gap:10px; flex-wrap:wrap; }
.lnl-product-support a {
  text-decoration:none; border-radius:9px; padding:11px 16px; font-weight:800;
  white-space:nowrap; background:#fff; color:#123a70;
}
.lnl-product-support a:last-child { background:transparent; color:#fff; border:1px solid #8ea6c5; }

@media(max-width:767px){
  #product-info{padding:20px;border-radius:16px}
  #product-info h1{font-size:32px;margin-top:22px}
  .lnl-product-trust{grid-template-columns:1fr}
  .lnl-product-quote,.lnl-product-support{align-items:flex-start;flex-direction:column}
  body:has(#product-info) .tab-content{padding:20px}
}
