/* WooCommerce: archive, product card, single product, cart and checkout. */

.jhok-archivehead{padding-block:var(--md) var(--sm);border-bottom:1px solid var(--line);margin-bottom:var(--md)}
.jhok-archivehead h1{margin-bottom:12px}
.jhok-crumbs{font-size:12.5px;font-weight:600;letter-spacing:.06em;color:var(--muted);margin-bottom:14px}
.jhok-crumbs a{text-decoration:none;color:var(--muted)}
.jhok-crumbs a:hover{color:var(--ink)}
.jhok-crumbs span{margin-inline:8px;color:var(--line)}

body.jhok.woocommerce .site-content .ast-container,body.jhok.woocommerce-page .site-content .ast-container{max-width:var(--wrap);padding-inline:20px;padding-block:0 var(--xl)}

/* --------------------------------------------------------- product grid */
body.jhok ul.products{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;list-style:none;margin:0 0 var(--md);padding:0}
body.jhok ul.products::before,body.jhok ul.products::after{display:none}
body.jhok ul.products li.product{width:auto!important;float:none!important;margin:0!important;padding:0!important;text-align:left;display:flex;flex-direction:column}
body.jhok ul.products li.product .jhok-pcard__media{display:block;position:relative;border-radius:var(--r-md);overflow:hidden;background:var(--surface);aspect-ratio:1/1}
body.jhok ul.products li.product .jhok-pcard__media img{width:100%;height:100%;object-fit:cover;margin:0;transition:transform .45s var(--ease)}
body.jhok ul.products li.product:hover .jhok-pcard__media img{transform:scale(1.03)}
body.jhok .jhok-pcard__blank{display:block;width:100%;height:100%;background:linear-gradient(150deg,var(--surface),var(--line))}
body.jhok .jhok-flash{position:absolute;top:12px;left:12px;background:var(--ink);color:var(--bg);font-size:10.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:5px 10px;border-radius:var(--r-sm);z-index:2}
body.jhok .jhok-pcard__body{padding-top:16px;display:flex;flex-direction:column;gap:7px;flex:1}
body.jhok .jhok-pcard__title{font-size:22px;line-height:1.18;margin:0}
body.jhok .jhok-pcard__title a{text-decoration:none}
body.jhok .jhok-pcard__desc{font-size:14.5px;color:var(--muted);margin:0}
body.jhok .jhok-pcard__rating{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}
body.jhok ul.products li.product .price{font-family:var(--body);font-weight:600;font-variant-numeric:tabular-nums;font-size:17px;color:var(--ink);margin:2px 0 0}
body.jhok ul.products li.product .price del{opacity:.45;font-weight:400;font-size:14px;margin-right:6px}
body.jhok ul.products li.product .price ins{text-decoration:none}
body.jhok .jhok-from{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-right:5px}
body.jhok ul.products li.product .button{margin-top:auto;align-self:flex-start}

/* ------------------------------------------------------------- buttons */
body.jhok .woocommerce a.button,body.jhok .woocommerce button.button,body.jhok .woocommerce input.button,body.jhok .woocommerce #respond input#submit,body.jhok .woocommerce a.button.alt,body.jhok .woocommerce button.button.alt,body.jhok .woocommerce input.button.alt{display:inline-flex;align-items:center;justify-content:center;background:var(--ink);color:var(--bg);border:1px solid var(--ink);border-radius:var(--r-sm);font-family:var(--body);font-weight:600;font-size:14px;letter-spacing:.02em;padding:14px 24px;min-height:48px;line-height:1;box-shadow:none;text-shadow:none;transition:background .22s var(--ease),transform .22s var(--ease)}
body.jhok .woocommerce a.button:hover,body.jhok .woocommerce button.button:hover,body.jhok .woocommerce input.button:hover,body.jhok .woocommerce a.button.alt:hover,body.jhok .woocommerce button.button.alt:hover{background:var(--ink-deep);border-color:var(--ink-deep);color:var(--bg);transform:translateY(-1px)}
body.jhok .woocommerce .button.jhok-buynow{background:transparent;color:var(--ink);border-color:var(--ink);margin-left:10px}
body.jhok .jhok-buynow{margin-left:10px}

/* ------------------------------------------------------ single product */
body.jhok .woocommerce div.product{padding-top:var(--md)}
body.jhok .woocommerce div.product .woocommerce-product-gallery{width:54%}
body.jhok .woocommerce div.product div.summary{width:42%}
body.jhok .woocommerce div.product .woocommerce-product-gallery__image img{border-radius:var(--r-md)}
body.jhok .woocommerce div.product .product_title{font-size:clamp(30px,3.8vw,46px);line-height:1.06;margin-bottom:12px}
body.jhok .woocommerce div.product p.price,body.jhok .woocommerce div.product span.price{font-family:var(--body);font-weight:600;font-variant-numeric:tabular-nums;font-size:26px;color:var(--ink);margin-bottom:14px}
body.jhok .woocommerce div.product p.price del{opacity:.45;font-weight:400;font-size:19px}
body.jhok .woocommerce div.product .woocommerce-product-details__short-description{font-size:17px;color:var(--muted);margin-bottom:20px}
body.jhok .woocommerce div.product form.cart{margin-bottom:18px}
body.jhok .woocommerce .quantity .qty{border:1px solid var(--line);border-radius:var(--r-sm);min-height:48px;padding:0 8px;font:inherit;font-weight:600;background:var(--surface)}
body.jhok .woocommerce div.product form.cart .variations{margin-bottom:16px}
body.jhok .woocommerce div.product form.cart .variations label{font-weight:600;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
body.jhok .woocommerce div.product form.cart .variations select{border:1px solid var(--line);border-radius:var(--r-sm);padding:12px 14px;background:var(--surface);font:inherit;min-height:48px}
body.jhok .woocommerce div.product .product_meta{font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:16px;margin-top:6px}
.jhok-assure{list-style:none;margin:18px 0 0;padding:18px 20px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);display:grid;gap:11px;font-size:14.5px;color:var(--muted)}
.jhok-assure li{max-width:none;display:flex;align-items:flex-start;gap:11px}
.jhok-assure .jhok-i{color:var(--green);margin-top:2px}

/* --------------------------------------------------------- accordion */
.jhok-acc{border-top:1px solid var(--line);margin-top:var(--lg);padding-top:var(--lg)}
.jhok-acc__in{max-width:880px}
.jhok-acc__h{font-size:clamp(24px,3vw,34px);margin-bottom:var(--sm)}
.jhok-acc__item{border-bottom:1px solid var(--line)}
.jhok-acc__item summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 2px;cursor:pointer;list-style:none;font-family:var(--display);font-size:21px;color:var(--ink)}
.jhok-acc__item summary::-webkit-details-marker{display:none}
.jhok-acc__item summary .jhok-i{color:var(--accent);transition:transform .25s var(--ease)}
.jhok-acc__item[open] summary .jhok-i{transform:rotate(90deg)}
.jhok-acc__body{padding:0 2px 24px;color:var(--muted);font-size:16px}
.jhok-acc__body h3{font-size:18px;color:var(--ink);margin:18px 0 6px}
.jhok-acc__body ul{padding-left:20px;margin-block:10px}
.jhok-acc__body li{margin-bottom:6px}

/* ---------------------------------------------------- cart and checkout */
body.jhok .woocommerce table.shop_table{border:1px solid var(--line);border-radius:var(--r-md);border-collapse:separate;border-spacing:0}
body.jhok .woocommerce table.shop_table th,body.jhok .woocommerce table.shop_table td{border-color:var(--line);font-size:15px}
body.jhok .woocommerce table.shop_table thead th{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600;background:var(--surface)}
body.jhok .woocommerce-cart table.cart img{width:70px;border-radius:var(--r-sm)}
body.jhok .woocommerce .cart-collaterals .cart_totals>h2,body.jhok .woocommerce-checkout h3{font-size:22px;margin-bottom:12px}
body.jhok .woocommerce form .form-row input.input-text,body.jhok .woocommerce form .form-row textarea,body.jhok .woocommerce form .form-row select,body.jhok .select2-container .select2-selection--single{border:1px solid var(--line);border-radius:var(--r-sm);padding:13px 15px;min-height:50px;background:var(--surface);font:inherit;font-size:16px;color:var(--ink)}
body.jhok .woocommerce form .form-row label{font-size:13px;font-weight:600;color:var(--muted)}
body.jhok .woocommerce-checkout #payment{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md)}
body.jhok .woocommerce-checkout #payment ul.payment_methods{border-bottom:1px solid var(--line)}
body.jhok .woocommerce-checkout #payment div.payment_box{background:var(--bg);border-radius:var(--r-sm)}
body.jhok .woocommerce-checkout #payment div.payment_box::before{display:none}
body.jhok .woocommerce-message,body.jhok .woocommerce-info,body.jhok .woocommerce-error{border-top-color:var(--accent);background:var(--surface);border-radius:var(--r-sm);font-size:15px}
body.jhok .woocommerce .woocommerce-result-count,body.jhok .woocommerce .woocommerce-ordering select{font-size:14px;color:var(--muted)}
body.jhok .woocommerce nav.woocommerce-pagination ul{border:0;gap:6px;display:flex}
body.jhok .woocommerce nav.woocommerce-pagination ul li{border:0}
body.jhok .woocommerce nav.woocommerce-pagination ul li a,body.jhok .woocommerce nav.woocommerce-pagination ul li span{border:1px solid var(--line);border-radius:var(--r-sm);padding:10px 14px;font-weight:600}
body.jhok .woocommerce nav.woocommerce-pagination ul li span.current{background:var(--ink);color:var(--bg);border-color:var(--ink)}

@media (max-width:1000px){
  body.jhok ul.products{grid-template-columns:1fr 1fr;gap:26px}
  body.jhok .woocommerce div.product .woocommerce-product-gallery,body.jhok .woocommerce div.product div.summary{width:100%;float:none;margin-bottom:var(--md)}
}
@media (max-width:600px){
  body.jhok ul.products{gap:20px}
  body.jhok .jhok-pcard__title{font-size:19px}
  body.jhok .jhok-buynow{margin-left:0;margin-top:10px;width:100%}
  body.jhok .woocommerce div.product form.cart .button{width:100%}
  .jhok-acc__item summary{font-size:19px}
}

/* native selects, used instead of the enhanced select script */
body.jhok .woocommerce form .form-row select,body.jhok .woocommerce-page form .form-row select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 20px) 22px,calc(100% - 14px) 22px;background-size:6px 6px,6px 6px;background-repeat:no-repeat;padding-right:44px}

/* The shop archive header is printed before Astra opens its primary column,
   so the flex container would set it beside the grid. Stack it instead. */
body.jhok.woocommerce-shop .site-content .ast-container,body.jhok.tax-product_cat .site-content .ast-container,body.jhok.tax-product_tag .site-content .ast-container{display:block}
.jhok-archivehead{width:100%}
body.jhok .woocommerce .woocommerce-result-count{float:none;display:inline-block;margin-bottom:var(--sm)}
body.jhok .woocommerce .woocommerce-ordering{float:right;margin-bottom:var(--sm)}
.jhok-soldout{align-self:flex-start}
body.jhok ul.products li.product .jhok-soldout{align-self:flex-start;width:auto}
