/* DEHAJU Safety Store — Single product page
   Mockup-matched product layout while preserving truthful Merchant-facing data.
   No fabricated ratings, reviews, compare-at pricing, certifications or alternate images. */
:root{
  --sp-orange:#fd6601;
  --sp-orange-dark:#ff7a1a;
  --sp-ink:#111317;
  --sp-muted:#697078;
  --sp-line:#e3e6e8;
  --sp-soft:#fafafa;
  --sp-green:#159447;
}

.product-page{background:#fff;color:var(--sp-ink)}
.product-shell{width:min(1440px,calc(100% - 44px));margin:0 auto;padding:24px 0 42px}

/* Two-column product hero */
.product-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(440px,.92fr);gap:38px;align-items:start}
.product-gallery{min-width:0;display:grid;grid-template-columns:94px minmax(0,1fr);gap:16px}
.product-thumbnails{display:flex;flex-direction:column;gap:10px;align-items:stretch}
.product-thumb{width:94px;height:94px;display:flex;align-items:center;justify-content:center;border:1px solid #eceeef;border-radius:5px;background:#fff;padding:4px;cursor:pointer;overflow:hidden}
.product-thumb[aria-current="true"]{border:2px solid var(--sp-orange)}
.product-thumb img{width:100%;height:100%;object-fit:contain}
.product-gallery-stage{min-width:0}
.product-main-image{position:relative;display:flex;align-items:center;justify-content:center;height:560px;border-radius:3px;background:#fbfbfb;overflow:hidden;cursor:zoom-in}
.product-main-image img{width:94%;height:94%;object-fit:contain;object-position:center;transition:transform .25s ease}
.product-main-image:hover img{transform:scale(1.055)}
.product-zoom-hint{width:max-content;display:flex;align-items:center;justify-content:center;gap:9px;margin:13px auto 0;border:0;background:transparent;color:#5e646a;font:500 12px/1 "Roboto Condensed",Arial,sans-serif;cursor:pointer;padding:6px 8px}
.product-zoom-hint:hover{color:var(--sp-orange)}
.product-zoom-hint svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* Product summary: breadcrumb starts beside the image */
.product-summary{min-width:0;padding:0 4px 0 0}
.product-breadcrumbs{margin:1px 0 17px}
.product-breadcrumbs ol{list-style:none;display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:0;padding:0;color:#6f757b;font-size:12px;font-weight:500}
.product-breadcrumbs li{display:flex;align-items:center;gap:9px;min-width:0}
.product-breadcrumbs li:not(:last-child)::after{content:"›";color:#a5aaaf;font-size:15px;line-height:1}
.product-breadcrumbs a{color:#5d646a}
.product-breadcrumbs a:hover{color:var(--sp-orange)}
.product-breadcrumbs [aria-current="page"]{color:#30353a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.product-summary h1{margin:0;color:#090b0d;font-size:clamp(35px,3.25vw,50px);line-height:1.08;letter-spacing:-.7px;font-weight:700}
.product-seller{margin-top:11px;color:#7a8085;font-size:14px;font-weight:400}
.product-seller strong{color:var(--sp-orange);font-weight:600}
.product-review-summary{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:10px;color:#5d6267;font-size:13px}
.review-stars-empty{color:#fd6601;font-size:21px;line-height:1;letter-spacing:1px}
.review-separator{width:1px;height:16px;background:#d8dcdf}
.write-review-link{border:0;background:transparent;color:var(--sp-orange);font:500 13px/1 "Roboto Condensed",Arial,sans-serif;padding:2px 0;cursor:pointer}
.write-review-link:hover{text-decoration:underline}

.product-price{margin-top:16px;display:flex;align-items:baseline;flex-wrap:wrap;gap:10px;color:#111317;line-height:1;letter-spacing:-.35px}.product-price strong{font-size:37px;font-weight:700}.product-price s{color:#8a9096;font-size:18px;font-weight:600;text-decoration-thickness:1.6px}
.product-status-row{display:flex;align-items:center;flex-wrap:wrap;gap:17px;margin-top:20px;padding:14px 0;border-top:1px solid var(--sp-line);border-bottom:1px solid var(--sp-line);color:#666d73;font-size:13px;font-weight:400}
.product-status-row strong{color:#3b4146;font-weight:600}
.product-stock{display:inline-flex;align-items:center;gap:8px;color:var(--sp-green);font-weight:600}
.product-stock::before{content:"";width:9px;height:9px;border-radius:50%;background:currentColor}
.product-status-divider{width:1px;height:17px;background:#dddfe1}

/* Purchase controls */
.purchase-form{margin-top:16px}
.purchase-config{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:24px;align-items:end}.purchase-config--quantity-only{grid-template-columns:180px}
.purchase-field{min-width:0}
.purchase-label{display:block;margin:0 0 7px;color:#30353a;font-size:13px;font-weight:500}
.product-select{width:100%;height:43px;border:1px solid #d8dcdf;border-radius:4px;background:#fff;padding:0 38px 0 12px;color:#292e33;font:500 14px/1 "Roboto Condensed",Arial,sans-serif;outline:0}
.product-select:focus{border-color:var(--sp-orange);box-shadow:0 0 0 2px rgba(255,90,0,.08)}
.quantity-control{width:142px;height:43px;display:grid;grid-template-columns:42px 58px 42px;border:1px solid #d8dcdf;border-radius:4px;background:#fff;overflow:hidden}
.quantity-control button,.quantity-control input{border:0;background:#fff;text-align:center;color:#24292e;font:500 14px/1 "Roboto Condensed",Arial,sans-serif}
.quantity-control button{cursor:pointer;font-size:18px;color:#737980}
.quantity-control button:hover{color:var(--sp-orange);background:#fafafa}
.quantity-control input{width:58px;border-inline:1px solid #eceeef;outline:0;-moz-appearance:textfield}
.quantity-control input::-webkit-inner-spin-button,.quantity-control input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}

.purchase-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:15px}
.btn{min-height:49px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;border-radius:3px;padding:0 18px;font:600 15px/1 "Roboto Condensed",Arial,sans-serif;letter-spacing:.15px;text-transform:uppercase;cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease}
.btn:hover{transform:translateY(-1px)}
.btn svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.btn-add-cart{background:var(--sp-orange);color:#fff}
.btn-add-cart:hover{background:var(--sp-orange-dark)}
.btn-buy-now{background:#17191b;color:#fff}
.btn-buy-now:hover{background:#050607}
.btn-whatsapp{width:100%;min-height:52px;margin-top:10px;border-color:#25D366;background:#25D366;color:#fff;border-radius:10px;font-weight:700;text-transform:none;font-size:15px;box-shadow:0 8px 22px rgba(37,211,102,.16)}
.btn-whatsapp:hover{background:#1ebe5d;border-color:#1ebe5d;color:#fff}
.btn-whatsapp .icons8-whatsapp{width:22px;height:22px;object-fit:contain;flex:0 0 22px}

.purchase-notice{display:none;margin-top:10px;padding:10px 12px;border:1px solid #bfe2c9;border-radius:3px;background:#f1fbf4;color:#176b31;font-size:12px;font-weight:600}
.purchase-notice.is-visible{display:block}

.product-policy-lines{margin-top:12px;border-top:1px solid #eceeef}
.product-policy-line{display:grid;grid-template-columns:35px minmax(0,1fr);gap:10px;align-items:start;padding:10px 0;color:#30363b}
.product-policy-line+.product-policy-line{border-top:1px solid #eceeef}
.product-policy-line>svg{width:27px;height:27px;fill:none;stroke:#22282d;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;margin-top:1px}
.product-policy-line strong{display:block;color:#2b3035;font-size:13px;font-weight:600;line-height:1.25}
.product-policy-line small{display:block;margin-top:2px;color:#737a80;font-size:11.5px;line-height:1.4;font-weight:400}
.product-policy-line:hover strong{color:var(--sp-orange)}

/* Full-width Description / Reviews box */
.product-details{margin:24px 0 0;border:1px solid #dfe3e6;border-radius:5px;background:#fff;overflow:hidden}
.product-tabs{display:flex;align-items:stretch;gap:22px;overflow-x:auto;border-bottom:1px solid var(--sp-line);padding:0 18px;scrollbar-width:none}
.product-tabs::-webkit-scrollbar{display:none}
.product-tab{position:relative;flex:0 0 auto;min-width:160px;min-height:58px;border:0;background:#fff;padding:0 18px;color:#696f74;font:600 14px/1 "Roboto Condensed",Arial,sans-serif;cursor:pointer;white-space:nowrap;text-transform:uppercase}
.product-tab[aria-selected="true"]{color:var(--sp-orange)}
.product-tab[aria-selected="true"]::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--sp-orange)}
.product-panel{display:none;min-height:250px;padding:27px 27px 31px}
.product-panel.is-active{display:block}
.description-copy{max-width:none;width:100%}
.product-panel p{margin:0;color:#454b50;font-size:14px;line-height:1.7;font-weight:400}
.product-panel p+p{margin-top:18px}
.product-panel ul{margin:18px 0;padding-left:20px;color:#454b50;font-size:14px;line-height:1.8}
.product-panel li+li{margin-top:3px}
.reviews-empty{max-width:620px;padding:8px 0}
.reviews-empty strong{display:block;color:#1d2227;font-size:18px;font-weight:600}
.reviews-empty p{margin-top:8px;color:#687077}

/* Image lightbox */
.product-lightbox{position:fixed;inset:0;z-index:3000;display:none;align-items:center;justify-content:center;padding:34px;background:rgba(9,13,16,.86)}
.product-lightbox.is-open{display:flex}
.product-lightbox__inner{position:relative;width:min(900px,95vw);height:min(820px,90vh);display:flex;align-items:center;justify-content:center;background:#fff;border-radius:4px}
.product-lightbox img{width:94%;height:94%;object-fit:contain;touch-action:none;user-select:none;-webkit-user-drag:none;transform-origin:center center;cursor:grab;will-change:transform}
.lightbox-close{position:absolute;right:12px;top:12px;width:42px;height:42px;border:0;border-radius:50%;background:#111;color:#fff;font-size:25px;line-height:1;cursor:pointer}

@media(max-width:1180px){
  .product-shell{width:min(100% - 30px,1120px)}
  .product-hero{grid-template-columns:minmax(0,1.02fr) minmax(390px,.98fr);gap:28px}
  .product-gallery{grid-template-columns:82px minmax(0,1fr);gap:12px}
  .product-thumb{width:82px;height:82px}
  .product-main-image{height:500px}
  .product-summary h1{font-size:38px}
}

@media(max-width:980px){
  .product-shell{padding-top:20px}
  .product-hero{grid-template-columns:1fr;gap:27px}
  .product-gallery{grid-template-columns:86px minmax(0,1fr);max-width:820px;margin:0 auto;width:100%}
  .product-thumb{width:86px;height:86px}
  .product-main-image{height:560px}
  .product-summary{padding:0}
  .product-summary h1{font-size:40px}
  .header-search{grid-column:1/-1!important;grid-row:2!important}
}

@media(max-width:680px){
  .product-shell{width:calc(100% - 22px);padding:14px 0 30px}
  .product-gallery{grid-template-columns:1fr;gap:9px}
  .product-gallery-stage{order:1}
  .product-thumbnails{order:2;flex-direction:row;gap:8px;overflow-x:auto;padding:0 1px 2px}
  .product-thumb{flex:0 0 70px;width:70px;height:70px}
  .product-main-image{height:365px}
  .product-main-image img{width:97%;height:97%}
  .product-breadcrumbs{margin-bottom:12px}.product-breadcrumbs ol{gap:6px;font-size:11px}.product-breadcrumbs li{gap:6px}
  .product-breadcrumbs [aria-current="page"]{max-width:165px}
  .product-summary h1{font-size:31px;line-height:1.08;letter-spacing:-.35px}
  .product-seller{font-size:12.5px;margin-top:9px}
  .product-review-summary{font-size:12px;margin-top:9px}.review-stars-empty{font-size:18px}.write-review-link{font-size:12px}
  .product-price{font-size:31px;margin-top:15px}
  .product-status-row{gap:12px;font-size:12px;margin-top:16px;padding:12px 0}
  .purchase-config{grid-template-columns:minmax(0,1fr) 132px;gap:12px}
  .purchase-label{font-size:12px}.product-select{height:44px;font-size:16px}.quantity-control{width:132px;height:44px;grid-template-columns:38px 56px 38px}.quantity-control input{width:56px}
  .purchase-actions{gap:8px;margin-top:12px}.btn{min-height:48px;padding-inline:10px;font-size:12px}.btn svg{width:19px;height:19px}.btn-whatsapp{margin-top:8px;font-size:12.5px}
  .product-policy-line{grid-template-columns:31px minmax(0,1fr);padding:10px 0}.product-policy-line>svg{width:24px;height:24px}.product-policy-line strong{font-size:12px}.product-policy-line small{font-size:10.5px}
  .product-details{margin-top:18px}.product-tabs{gap:5px;padding:0 10px}.product-tab{min-width:132px;min-height:51px;padding:0 13px;font-size:12px}.product-panel{min-height:0;padding:21px 18px 24px}.product-panel p,.product-panel ul{font-size:13px;line-height:1.7}.product-panel ul{margin-top:14px}.reviews-empty strong{font-size:16px}
  .product-lightbox{padding:12px}.product-lightbox__inner{height:min(75vh,620px)}
}

@media(max-width:430px){
  .product-summary h1{font-size:28px}
  .purchase-config{grid-template-columns:1fr 122px;gap:9px}
  .quantity-control{width:122px;grid-template-columns:35px 52px 35px}.quantity-control input{width:52px}
  .purchase-actions{grid-template-columns:1fr 1fr}.btn{font-size:11.5px;gap:7px}
}

.product-thumb:focus-visible,.product-zoom-hint:focus-visible,.write-review-link:focus-visible,.product-select:focus-visible,.quantity-control button:focus-visible,.btn:focus-visible,.product-tab:focus-visible{outline:2px solid var(--sp-orange);outline-offset:2px}

@media(max-width:430px){
  .product-breadcrumbs li[aria-current="page"]{display:none}
}

@media(prefers-reduced-motion:reduce){
  .product-main-image img,.btn{transition:none}
}
/* Admin-connected customer reviews */
.reviews-list{display:grid;gap:14px;margin-bottom:24px}.review-item{border:1px solid #e2e5e8;border-radius:9px;padding:18px;background:#fff}.review-item__top{display:flex;align-items:center;justify-content:space-between;gap:15px}.review-item__top span{color:#fd6601;letter-spacing:1px}.review-item h3{margin:9px 0 4px;font-size:16px}.review-item p{margin:0;color:#505963;line-height:1.65}.review-item small{display:block;color:#858c93;margin-top:10px}.review-form-wrap{border-top:1px solid #e4e7ea;padding-top:24px;margin-top:20px}.review-form-wrap h3{margin:0 0 5px}.review-form-wrap>p{margin:0 0 17px;color:#69727b}.review-form{display:grid;gap:16px}.review-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.review-form label{display:grid;gap:6px;font-size:13px;font-weight:700}.review-form label span{font-weight:400;color:#777}.review-form input,.review-form select,.review-form textarea{width:100%;border:1px solid #cfd4da;border-radius:6px;padding:11px 12px;font:inherit;background:#fff}.review-form-full{grid-column:1/-1}.review-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important}.review-form .btn{width:max-content;padding:0 20px}@media(max-width:650px){.review-form-grid{grid-template-columns:1fr}.review-form-full{grid-column:auto}.review-form .btn{width:100%}}

/* Requested product UX refinements — scoped to the single-product page. */
.product-breadcrumbs--mobile{display:none}
.product-main-image:focus-visible{outline:2px solid var(--sp-orange);outline-offset:3px}
.policy-link-text{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;font-weight:600;color:#4b535a}
.product-policy-line:hover .policy-link-text{color:var(--sp-orange)}
.icons8-whatsapp{display:block;object-fit:contain}

.related-products{margin-top:30px;padding-top:6px}
.related-products .product-heading{margin-bottom:18px}
.related-products__grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.related-products .product-card__actions{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:8px}
.related-products .product-card__whatsapp{height:38px}

.product-lightbox__inner{overflow:hidden}
.product-lightbox.is-open{touch-action:none}
.product-lightbox img.is-dragging{cursor:grabbing}

/* Modern review presentation; only approved reviews are rendered by the existing review API. */
.reviews-overview{display:flex;align-items:center;gap:18px;margin:0 0 22px;padding:18px 20px;border:1px solid #e2e5e8;border-radius:9px;background:#fafbfc}
.reviews-overview__score{font-size:38px;line-height:1;font-weight:700;color:#171b1f}
.reviews-overview__meta{display:grid;gap:4px}.reviews-overview__stars{color:#fd6601;font-size:19px;letter-spacing:1px}.reviews-overview__meta small{color:#687077;font-size:12px}
.review-item{box-shadow:0 4px 14px rgba(15,23,42,.035)}
.review-item__top strong{font-size:14px}.review-item__top span{font-size:15px}
.review-form-wrap{padding:24px;border:1px solid #e2e5e8;border-radius:9px;background:#fafbfc}
.review-form-wrap>p{font-size:13px!important}

@media(max-width:1240px){.related-products__grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:980px){
  .product-breadcrumbs--desktop{display:none}
  .product-breadcrumbs--mobile{display:block;grid-column:1/-1;margin:0 0 -10px}
  .purchase-config--quantity-only{grid-template-columns:180px}
  .related-products__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:680px){
  .product-breadcrumbs--mobile{margin:0 0 -14px}
  .purchase-config,.purchase-config--quantity-only{grid-template-columns:132px;gap:12px}
  .product-price strong{font-size:31px}.product-price s{font-size:15px}
  .btn-whatsapp{min-height:50px;font-size:14px;border-radius:9px}
  .related-products{margin-top:22px}.related-products__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .reviews-overview{padding:15px;gap:14px}.reviews-overview__score{font-size:32px}
  .review-form-wrap{padding:18px 15px}
}
@media(max-width:430px){.purchase-config,.purchase-config--quantity-only{grid-template-columns:122px;gap:9px}}


.purchase-notice.is-error{border-color:#edc5bd;background:#fff5f3;color:#962f21}.purchase-notice a{color:inherit;font-weight:800;text-decoration:underline;text-underline-offset:2px}

/* Unified DEHAJU single-product palette. Layout and zoom behaviour are unchanged. */
:root{--sp-orange:#fd6601;--sp-orange-dark:#ff7a1a;--sp-ink:#171b20;--sp-muted:#5b646d;--sp-line:#dde1e5;--sp-soft:#f5f6f7}
.product-thumb,.product-main-image{background:#f1f1f1}

/* DEHAJU safe production fixes — scoped additions only. */
.purchase-config--with-options{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end}
.purchase-field--size{display:grid;gap:7px}.purchase-field--size .product-select{width:100%;min-height:46px;border:1px solid #d9dee2;background:#fff;padding:0 13px;color:inherit;font:inherit}.purchase-field--size .product-select:focus{outline:2px solid currentColor;outline-offset:2px}.customer-review-list{display:grid;gap:14px}.customer-review-item{border:1px solid #e1e5e8;background:#fff;padding:16px}.customer-review-item__head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.customer-review-item__head strong{font-size:14px}.customer-review-item__head .review-stars-empty{flex:0 0 auto}.customer-review-item p{margin:10px 0 0;line-height:1.65}.customer-review-item small{display:block;margin-top:10px;font-size:11px;opacity:.72}@media(max-width:680px){.purchase-config--with-options{grid-template-columns:1fr}.purchase-field--size{width:100%}.customer-review-item{padding:14px}.customer-review-item__head{display:grid;gap:6px}}
