/* Kahroba-inspired, independently designed, and strictly scoped to ONSS product pages. */
.onss-single{--os-gold:#b48a47;--os-ink:#252321;--os-muted:#79716a;--os-line:#eee7dc;--os-sand:#faf7f1;direction:rtl;text-align:right;background:#fbfaf8;color:var(--os-ink);font-family:inherit;padding:28px 16px 76px;min-height:55vh;line-height:1.9;font-size:14px}
.onss-single *{box-sizing:border-box}.onss-single a{color:inherit;text-decoration:none}.onss-single img{max-width:100%}.onss-single__container{max-width:1300px;margin:0 auto}.onss-single__crumb{display:flex;flex-wrap:wrap;align-items:center;gap:10px;color:#938b80;font-size:12px;margin:0 0 26px}.onss-single__crumb span[aria-current]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:380px;color:#62594d}.onss-single__crumb a:hover{color:var(--os-gold)}
.onss-single__hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) minmax(278px,.87fr);align-items:start;gap:24px}.onss-single__hero>*{min-width:0}
.onss-single__stage{position:relative;display:grid;place-items:center;overflow:hidden;aspect-ratio:1/1.05;background:linear-gradient(160deg,#fff,#fcfaf6);border:1px solid var(--os-line);border-radius:23px}
.onss-single__stage .onss-single__main-image,.onss-single__stage .onss-single__empty-photo>img{display:block;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;padding:22px!important;margin:0!important;object-fit:contain!important;object-position:center!important;aspect-ratio:auto!important;transform:none!important;border:0!important;border-radius:0!important;background:transparent!important}
.onss-single__empty-photo{height:100%;width:100%;display:grid;place-items:center}.onss-single__zoom{position:absolute;z-index:2;top:14px;left:14px;display:grid;place-items:center;width:41px;height:41px;border:1px solid #e6dccd;border-radius:50%;font-size:24px;line-height:1;color:#7d643a;background:#fffefa;cursor:pointer;box-shadow:0 5px 15px #24150810}
.onss-single__sale{position:absolute;right:16px;top:15px;z-index:1;border-radius:999px;padding:5px 13px;background:#fff0cd;color:#886122;font-size:12px}.onss-single__thumbs{display:flex;gap:11px;overflow-x:auto;scrollbar-width:thin;padding:13px 1px 5px}
.onss-single__thumb{flex:0 0 76px;width:76px;height:76px;display:grid;place-items:center;overflow:hidden;border-radius:13px;border:1px solid #e9e1d5!important;background:#fff!important;padding:4px!important;box-shadow:none!important;cursor:pointer}.onss-single__thumb.is-active,.onss-single__thumb:hover{border-color:#c49b5b!important;box-shadow:0 0 0 2px #ecd9b7!important}.onss-single__thumb img{height:100%!important;width:100%!important;object-fit:contain!important;object-position:center!important;transform:none!important;margin:0!important}
.onss-single__gallery-hint{font-size:11px;color:#968f86;margin:7px 0 0}.onss-single__details{padding:12px 0}.onss-single__eyebrow{font-size:12px;font-weight:800;color:#b58c4a;margin-bottom:8px}.onss-single__sparkle{font-size:24px;vertical-align:middle;margin-left:5px}.onss-single h1{font-family:inherit!important;font-size:clamp(21px,2.1vw,30px)!important;line-height:1.65!important;color:var(--os-ink)!important;margin:0 0 15px!important;font-weight:850!important}.onss-single__cats{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:18px}.onss-single__cats a{padding:4px 10px;background:#f8f2e7;border:1px solid #efe4d1;border-radius:999px;color:#886a3d;font-size:11px}
.onss-single__intro{font-size:13px;line-height:2.2;color:#6f6861;margin:0 0 20px}.onss-single__intro p{margin:0 0 9px}.onss-single__quickfacts{display:grid;gap:10px;margin:20px 0}.onss-single__quickfacts>div{display:flex;align-items:start;justify-content:space-between;gap:10px;border-bottom:1px solid #eae5df;padding-bottom:10px}.onss-single__quickfacts span{color:#888076;font-size:12px}.onss-single__quickfacts strong{font-weight:750;color:#3b342c;font-size:13px;text-align:left}
.onss-single__assurance{display:flex;align-items:start;gap:11px;background:#fff;border:1px solid #ece7db;border-radius:15px;padding:13px;margin-top:24px}.onss-single__assurance>span{width:25px;height:25px;flex:0 0 25px;display:grid;place-items:center;border-radius:50%;background:#f3e9d5;color:#876326}.onss-single__assurance p{font-size:12px;margin:0;color:#7d7265;line-height:1.95}
.onss-single__buy-inner{position:sticky;top:26px;background:#fff;border:1px solid #ebe3d8;border-radius:22px;box-shadow:0 18px 45px #281b0e0d;padding:21px 20px 22px}.onss-single__buy-heading{display:flex;align-items:center;gap:11px;padding-bottom:15px;border-bottom:1px solid #f0e9df}.onss-single__buy-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#f6e7c9;color:#b3863d;font-size:20px}.onss-single__buy-heading div{display:grid;gap:1px}.onss-single__buy-heading span{font-weight:800;font-size:14px}.onss-single__buy-heading small{color:#968b7c;font-size:11px}
.onss-single__price{margin:18px 0 12px;color:#a77a30;font-weight:850;font-size:clamp(19px,2.1vw,27px);line-height:1.75}.onss-single__price .amount,.onss-single__price bdi{font-weight:850}.onss-single__price del{display:block;font-size:13px;color:#968d7f}.onss-single__price--quiet{color:#746b61;font-size:16px}.onss-single__availability{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:700;margin:7px 0}.onss-single__availability span{font-size:10px}.onss-single__availability.is-available{color:#42836a}.onss-single__availability.is-unknown{color:#a87b31}.onss-single__availability.is-unavailable{color:#98746e}.onss-single__updated{margin:13px 0;color:#90877d;font-size:11px}.onss-single__cart{margin:18px 0 0}.onss-single__cart form.cart{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0}.onss-single__cart .quantity{flex:0 0 auto}.onss-single__cart input.qty{max-width:80px;min-height:48px;border:1px solid #e8ddcb!important;border-radius:10px!important;background:#fffdfa!important;color:#41372a;text-align:center}.onss-single__cart .single_add_to_cart_button{border:0!important;border-radius:12px!important;background:linear-gradient(110deg,#bc914c,#e4ca8c)!important;color:#35260d!important;font-weight:850!important;font-size:14px!important;min-height:48px!important;flex:1!important;white-space:normal;box-shadow:0 6px 15px #bb935030!important}.onss-single__cart .variations_form{display:block!important}.onss-single__cart .variations{margin:0 0 12px;width:100%}.onss-single__cart .variations select{width:100%;min-height:44px}.onss-single__cart .single_variation_wrap{display:block}.onss-single__cart .single_variation_wrap .woocommerce-variation-add-to-cart{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.onss-single__cannot-order{margin:0;background:#faf6ef;border:1px solid #efe4d4;border-radius:12px;color:#796b5a;padding:12px;font-size:12px;line-height:2;text-align:center}.onss-single__buy-footnote{font-size:11px;color:#998e81;text-align:center;line-height:1.9;margin:18px 0 0}
.onss-single__lower{display:grid;gap:22px;margin-top:36px}.onss-single__section,.onss-single__related{background:#fff;border:1px solid #f0e8df;border-radius:21px;padding:26px 29px}.onss-single__section-title{margin-bottom:20px}.onss-single__section-title>span{font-size:12px;color:#b58c4c;font-weight:750}.onss-single__section-title h2{font-size:22px!important;color:#292621!important;font-weight:800!important;margin:2px 0 0!important}.onss-single__description{font-size:14px;color:#6c635b;line-height:2.15;margin-bottom:22px}.onss-single__description p{margin:0 0 12px}.onss-single__spec-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;margin:0}.onss-single__spec-grid>div{display:flex;align-items:baseline;justify-content:space-between;gap:10px;border-bottom:1px solid #f1ede7;padding:13px 0}.onss-single__spec-grid dt{color:#84796a;font-size:13px}.onss-single__spec-grid dd{color:#332c27;font-weight:750;font-size:13px;margin:0;text-align:left}
.onss-single__related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.onss-single__related-item{border:1px solid #eee9e0;border-radius:17px;overflow:hidden;background:#fff}.onss-single__related-photo{aspect-ratio:1/1;display:grid;place-items:center;background:#faf8f4;overflow:hidden}.onss-single__related-photo img{width:100%!important;height:100%!important;object-fit:contain!important;padding:14px!important;transform:none!important;max-width:100%!important;max-height:100%!important}.onss-single__related-item h3{font-size:13px!important;font-weight:750!important;line-height:1.9!important;margin:12px 12px 4px!important;min-height:52px}.onss-single__related-price{padding:0 12px 15px;color:#aa7e37;font-size:14px;font-weight:800}
.onss-single__lightbox{border:0;border-radius:20px;padding:16px;max-width:min(92vw,850px);max-height:92vh;overflow:hidden;background:#fff;box-shadow:0 25px 80px #0005}.onss-single__lightbox::backdrop{background:#17130fc9}.onss-single__lightbox img{display:block;width:100%;height:80vh;max-height:80vh;object-fit:contain}.onss-single__lightbox-close{position:absolute;top:8px;left:8px;z-index:2;background:#fff;border:1px solid #ddd;width:38px;height:38px;border-radius:50%;font-size:25px;line-height:1;cursor:pointer}
.onss-single :is(button,a,input,select):focus-visible{outline:3px solid #af8243!important;outline-offset:3px!important}
@media(max-width:1120px){.onss-single__hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.onss-single__buy{grid-column:1/-1}.onss-single__buy-inner{position:static}.onss-single__related-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.onss-single{padding:15px 12px 42px}.onss-single__hero{display:flex;flex-direction:column;gap:21px}.onss-single__hero>*{width:100%}.onss-single__stage{aspect-ratio:1/1;border-radius:17px}.onss-single__stage .onss-single__main-image{padding:18px!important}.onss-single__details{padding:0}.onss-single h1{font-size:22px!important}.onss-single__buy-inner{padding:18px}.onss-single__lower{margin-top:22px}.onss-single__section,.onss-single__related{padding:17px;border-radius:15px}.onss-single__spec-grid{grid-template-columns:1fr}.onss-single__related-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.onss-single__related-item h3{font-size:12px!important;margin:10px!important;min-height:44px}.onss-single__related-price{font-size:12px;padding:0 10px 12px}.onss-single__gallery-hint{font-size:10px}}
@media(prefers-reduced-motion:reduce){.onss-single *{scroll-behavior:auto!important;transition:none!important}}


/* 2.1.1 visual refinement: cleaner single-product hero, sharper full images, black cart icon, clearer assurance text */
.onss-single__eyebrow{gap:0;background:transparent;border:0;padding:0;color:#b48a47;font-size:13px;font-weight:800;letter-spacing:.01em}
.onss-single__eyebrow .onss-single__sparkle{display:none!important}
.onss-single__stage{background:#fff;border-color:#eee7dc;box-shadow:0 10px 30px rgba(36,21,8,.04)}
.onss-single__stage .onss-single__main-image,.onss-single__stage .onss-single__empty-photo>img{padding:14px!important}
.onss-single__main-image{image-rendering:auto;filter:none}
.onss-single__gallery-hint{display:none!important}
.onss-single__assurance{background:#fffdf9;border-color:#eee2cf;color:#5f564b}
.onss-single__assurance span{background:#f3ead8;color:#1d1d1d}
.onss-single__cart .single_add_to_cart_button,.onss-single__cart .single_add_to_cart_button *{color:#111!important;fill:#111!important;stroke:#111!important}
.onss-single__cart .single_add_to_cart_button::before,.onss-single__cart .single_add_to_cart_button::after,.onss-single__cart .single_add_to_cart_button svg,.onss-single__cart .single_add_to_cart_button i{color:#111!important;fill:#111!important;stroke:#111!important;opacity:1!important}
.onss-single__buy-heading .onss-single__buy-mark{color:#111!important}



/* 2.1.2 readability fix for assurance box */
.onss-single__assurance{padding:15px 16px!important}
.onss-single__assurance p{font-size:14px!important;line-height:2!important;color:#111111!important;font-weight:600!important;letter-spacing:0!important}
.onss-single__assurance span{color:#111111!important;border:1px solid #e5d8c1!important}

/* 2.1.3: Prevent the gallery from exceeding its grid track at desktop zoom levels.
   A fixed 560px minimum height combined with aspect-ratio caused the image stage
   to grow wider than the gallery and cover the product title/details. */
.onss-single__hero{min-width:0;align-items:start}
.onss-single__gallery,.onss-single__details,.onss-single__buy{min-width:0;max-width:100%;width:100%;position:relative}
.onss-single__gallery{overflow:visible}
.onss-single__stage{box-sizing:border-box!important;min-width:0!important;min-height:0!important;width:100%!important;max-width:100%!important;height:auto!important;aspect-ratio:1 / 1.05!important;overflow:hidden!important}
.onss-single__stage .onss-single__main-image{box-sizing:border-box!important;min-width:0!important;width:100%!important;height:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center!important}
.onss-single__details{overflow-wrap:anywhere}
@media(max-width:700px){.onss-single__stage{aspect-ratio:1 / 1!important}}


/* 2.1.4: single-product gallery should follow 400x600 portrait ratio and inherit the site background */
.onss-single{background:transparent!important}
.onss-single__gallery{display:flex;flex-direction:column;align-items:center}
.onss-single__stage{width:min(100%,400px)!important;max-width:400px!important;aspect-ratio:400 / 600!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;margin-inline:auto!important}
.onss-single__stage .onss-single__main-image,.onss-single__stage .onss-single__empty-photo>img{padding:0!important;background:transparent!important;object-fit:contain!important;object-position:center!important}
.onss-single__thumb,.onss-single__thumb img{background:transparent!important}
.onss-single__thumb{width:64px;height:96px;flex-basis:64px;border-color:#e8dece!important}
.onss-single__zoom{background:rgba(255,255,255,.92)!important}
.onss-single__section,.onss-single__related{background:#fff}
@media(max-width:1120px){.onss-single__stage{width:min(100%,400px)!important;max-width:400px!important}}
@media(max-width:700px){.onss-single__stage{width:min(100%,340px)!important;max-width:340px!important;aspect-ratio:400 / 600!important}}
