/* Product page (Blocksy single product + Turbo Puls sections). Type and colours follow concept A. */
.single-product{--tp-graphite:#13204b;--tp-deep:#0a1230;--tp-amber:#fdb71a;--tp-display:"Fira Sans Extra Condensed","Arial Narrow",sans-serif;--tp-body:"Fira Sans",Arial,sans-serif}
.single-product .entry-summary,.single-product .tp-secs{font-family:var(--tp-body)}

/* summary column */
.single-product .product_title{font:800 clamp(48px,6vw,92px)/.9 var(--tp-display);text-transform:none;letter-spacing:-.005em;color:var(--tp-graphite);margin:6px 0 14px;overflow-wrap:anywhere}
.single-product .tp-chip{display:inline-flex;align-items:center;gap:10px;font:600 15px var(--tp-body);color:var(--tp-graphite);margin:0}
.single-product .tp-chip i{width:14px;height:14px;background:var(--cat);flex:none;border-radius:2px}
.single-product .woocommerce-product-details__short-description{font-size:clamp(18px,1.6vw,22px);line-height:1.45;color:#4a5272}
.single-product .tp-pack{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:18px 0 0;padding:0}
.single-product .tp-pack li{border:1.5px solid var(--tp-graphite);border-radius:3px;padding:3px 12px;font-weight:600;font-size:15px;color:var(--tp-graphite)}
.single-product .woocommerce-product-details__short-description{display:flex;flex-wrap:wrap;align-items:center;gap:0 12px}
.single-product .woocommerce-product-details__short-description>p:first-child,.single-product .woocommerce-product-details__short-description>.tp-pack{flex:0 0 100%}
.single-product .entry-summary .tp-tds,.single-product .entry-summary .tp-where{margin:22px 0 0}
.single-product .tp-btn{font-family:var(--tp-body);text-transform:none;letter-spacing:0;font-size:17px;font-weight:600;border-radius:3px;padding:13px 26px}
.single-product .tp-btn-ghost{background:transparent;color:var(--tp-graphite)!important;border-color:var(--tp-graphite)}
.single-product .tp-btn-ghost:hover{background:var(--tp-graphite);color:#fff!important;border-color:var(--tp-graphite)}
.single-product .product_meta{display:none}

/* gallery: product photos keep their proportions on a clean stage */


/* sections: full-width bands inside Blocksy's container */
.single-product .tp-secs{margin-top:clamp(40px,5vw,72px)}
.single-product .tp-sec{width:100vw;margin-left:calc(50% - 50vw);padding:clamp(48px,6vw,88px) 20px;background:#fff;color:var(--tp-deep)}
.single-product .tp-sec.tp-light{background:#f3f3f1}
.single-product .tp-in{max-width:1290px;margin:0 auto}
.single-product .tp-sec h2{font:800 clamp(34px,4.4vw,60px)/.95 var(--tp-display);text-transform:none;color:var(--tp-graphite);margin:0 0 6px}
.single-product .tp-two{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,6vw,100px);align-items:start}
@media(max-width:900px){.single-product .tp-two{grid-template-columns:1fr}}
.single-product .tp-prose{margin-top:22px;max-width:68ch}
.single-product .tp-prose p{margin:0 0 1em;font-size:19px;line-height:1.55;color:#2b3560}
.single-product .tp-ben{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:14px}
.single-product .tp-ben li{position:relative;padding-left:30px;font-size:19px;line-height:1.45;color:#2b3560}
.single-product .tp-ben li:before{content:"";position:absolute;left:0;top:.5em;width:14px;height:14px;background:var(--cat);border-radius:2px}
.single-product .tp-spec-table{margin:26px 0 0;width:100%;max-width:900px;border-collapse:collapse;border:0;border-top:2px solid var(--tp-deep)}
.single-product .tp-spec-table th,.single-product .tp-spec-table td{text-align:left;vertical-align:top;padding:16px 4px;border:0;border-bottom:1px solid #cfcdc6;font-size:19px;background:none}
.single-product .tp-spec-table th{width:34%;font-weight:500;font-size:16px;color:#4a5272;text-transform:none}
.single-product .tp-spec-table td{font-weight:600}
@media(max-width:560px){.single-product .tp-spec-table th,.single-product .tp-spec-table td{display:block;width:100%;padding:8px 0}.single-product .tp-spec-table th{padding-bottom:0;border-bottom:0}}
.single-product .tp-tags{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}
.single-product .tp-tags li{border:2px solid var(--tp-deep);border-radius:3px;padding:2px 10px;font-weight:600;font-size:16px;line-height:1.5;background:#fff;margin:0}
.single-product .tp-tags li.tp-spec{background:var(--tp-deep);color:#fff}
.single-product .tp-big{margin-top:24px}.single-product .tp-big li{font-size:18px;padding:5px 14px}
.single-product .tp-note{margin:20px 0 0;font-size:15px;color:#4a5272;max-width:70ch}

/* related products row from WooCommerce */
.single-product .related,.single-product .up-sells{margin-top:clamp(40px,5vw,72px);margin-bottom:clamp(48px,6vw,88px)}.single-product .related>h2,.single-product .up-sells>h2{font:800 clamp(34px,4.4vw,60px)/.95 var(--tp-display);text-transform:none;color:var(--tp-graphite)}
.single-product ul.products li.product .woocommerce-loop-product__title{font:800 28px/1 var(--tp-display);text-transform:none;color:var(--tp-graphite)}

/* partner band: light stage, three cartons left, text right (as on the static pages) */
.single-product .tp-band{--h:clamp(150px,16vw,230px);background:#f3f3f1;margin-top:clamp(40px,5vw,72px);padding-bottom:0;border-top:6px solid var(--tp-amber)}
.single-product .tp-band .tp-in{display:flex;align-items:flex-end;gap:clamp(28px,5vw,80px)}
.single-product .tp-shelf{flex:0 0 auto;display:flex;align-items:flex-end;height:var(--h);margin-bottom:-5px}
.single-product .tp-shelf img{display:block;height:var(--h);width:auto;max-width:none;filter:drop-shadow(0 10px 8px rgba(10,18,48,.28))}
.single-product .tp-shelf img+img{margin-left:calc(var(--h)*-.12)}
.single-product .tp-bandtext{flex:1 1 0;min-width:0;padding-bottom:40px}
.single-product .tp-band h2{max-width:none;font-size:clamp(34px,3.7vw,58px);line-height:.98;margin:0 0 28px;color:var(--tp-deep)}
.single-product .tp-btn-red{background:#d62f3b;border-color:#d62f3b;color:#fff!important}
.single-product .tp-btn-red:hover{background:var(--tp-deep);border-color:var(--tp-deep)}
@media(max-width:900px){.single-product .tp-band{--h:calc((100vw - 40px)/3.2)}.single-product .tp-band .tp-in{flex-direction:column;align-items:flex-start;gap:28px}.single-product .tp-bandtext{order:1;padding-bottom:0}.single-product .tp-shelf{order:2;align-self:center}}

/* TranslatePress floating language box duplicates the EN/UA switch in the header */
nav.trp-floating-switcher,#trp-floater-ls{display:none!important}
/* the band sits flush on the footer */
.single-product .ct-container-full[data-vertical-spacing]{padding-bottom:0!important}

/* gallery: square stage, whole can visible, bigger thumbnails with an active state */
.single-product .woocommerce-product-gallery .flexy-items .ct-media-container{aspect-ratio:1/1!important;height:auto!important;background:#f3f3f1;border-bottom:5px solid var(--cat,#ef424c)}
.single-product .woocommerce-product-gallery .flexy-items .ct-media-container img{width:100%!important;height:100%!important;object-fit:contain!important;padding:4%}

/* key figures next to the photo */
.single-product .tp-kpi{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;list-style:none;margin:22px 0 0;padding:0}
.single-product .tp-kpi li{margin:0;padding:10px 14px 12px;background:#f3f3f1;border-left:4px solid var(--cat,#ef424c);border-radius:0 3px 3px 0}
.single-product .tp-kpi span{display:block;font:500 13px/1.2 var(--tp-body);color:#4a5272}
.single-product .tp-kpi b{display:block;font:800 clamp(28px,2.6vw,40px)/1.05 var(--tp-display);color:var(--tp-graphite);overflow-wrap:anywhere}

/* actions: "Where to buy" is the primary action, the data sheet is secondary */
.single-product .woocommerce-product-details__short-description>p:first-child{order:0}
.single-product .woocommerce-product-details__short-description>.tp-pack{order:1}
.single-product .woocommerce-product-details__short-description>.tp-xm{order:1;flex:0 0 100%;margin:12px 0 0;align-self:flex-start;background:#fdb71a;color:#0a1230;font:600 12px/1 var(--tp-body);letter-spacing:.06em;text-transform:uppercase;padding:7px 10px;border-radius:3px;width:max-content;max-width:100%}
.single-product .woocommerce-product-details__short-description>.tp-kpi{order:2;flex:0 0 100%}
.single-product .woocommerce-product-details__short-description>.tp-meets{order:3;flex:0 0 100%}
.single-product .woocommerce-product-details__short-description>.tp-where{order:4}
.single-product .woocommerce-product-details__short-description>.tp-tds{order:5}
.single-product .tp-tds .tp-btn{background:transparent;color:var(--tp-graphite)!important;border-color:var(--tp-graphite)}
.single-product .tp-tds .tp-btn:hover{background:var(--tp-graphite);color:#fff!important}
.single-product .tp-where .tp-btn{background:#d62f3b;border-color:#d62f3b;color:#fff!important}
.single-product .tp-where .tp-btn:hover{background:var(--tp-deep);border-color:var(--tp-deep)}


/* approvals table: manufacturer | codes */
.single-product .tp-ap{margin-top:24px}
.single-product .tp-ap th{width:30%;font-weight:600;color:var(--tp-graphite);font-size:18px}
.single-product .tp-ap+.tp-big{margin-top:26px}

/* thumbnails: only cosmetic rules here; sizing and layout stay with Blocksy so its slider keeps working */
.single-product .flexy-pills li{opacity:.7;transition:opacity .2s}
.single-product .flexy-pills li:hover,.single-product .flexy-pills li.active{opacity:1}
.single-product .flexy-pills li.active .ct-media-container{outline:2px solid var(--tp-graphite);outline-offset:-2px}

/* the manufacturers' specifications the oil meets: visible on the first screen */
.single-product .tp-meets{margin:18px 0 0}
.single-product .tp-meets-h{margin:0 0 8px!important;font:600 14px/1.2 var(--tp-body);color:#4a5272;letter-spacing:.02em}
.single-product .tp-meets ul{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}
.single-product .tp-meets li{margin:0;border:1.5px solid #bdb9b0;background:#fff;border-radius:3px;padding:3px 10px;font:600 15px/1.4 var(--tp-body);color:var(--tp-deep)}

.single-product .tp-meets-n{margin:8px 0 0!important;font-size:14px;line-height:1.4;color:#4a5272}

/* thumbnails show the whole can on the same light stage as the main photo */
.single-product .flexy-pills .ct-media-container{aspect-ratio:1/1;background:#f3f3f1;display:block}
.single-product .flexy-pills .ct-media-container img{width:100%!important;height:100%!important;object-fit:contain!important;padding:6%;aspect-ratio:auto!important}

/* desktop: photo and thumbnails fit in the first screen (stage height follows the window height) */
@media(min-width:1000px){
 .single-product .ct-container-full[data-vertical-spacing]{padding-top:20px}
 .single-product .woocommerce-product-gallery{width:clamp(380px,calc(100vh - 282px),625px)!important;max-width:100%!important}
 .single-product .woocommerce-product-gallery .flexy-pills{margin-top:12px}
 .single-product .woocommerce-product-gallery .flexy-pills ol{gap:10px}
 .single-product .woocommerce-product-gallery .flexy-pills li{flex:0 0 72px!important;width:72px!important;max-width:72px}
}

/* tablet: one column, but the photo stays a reasonable size so the title and key figures show up on the first screen */
@media(min-width:600px) and (max-width:999px){
 .single-product .woocommerce-product-gallery{width:min(100%,460px)!important}
}

/* photo viewer (tp-lightbox.js) */
.single-product .ct-product-gallery-container{position:relative}
.single-product .ct-product-gallery-container .ct-media-container{cursor:zoom-in}
.single-product .woocommerce-product-gallery .zoomImg{display:none!important} /* no hover zoom (see tp-product.php) */
.tp-zoom{position:absolute;top:12px;right:12px;z-index:5;width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:50%;background:rgba(255,255,255,.92);color:var(--tp-graphite,#13204b);box-shadow:0 2px 8px rgba(10,18,48,.25);cursor:pointer;transition:background .2s,transform .2s}
.tp-zoom:hover,.tp-zoom:focus-visible{background:#fff;transform:scale(1.08)}
.tp-zoom svg,.tp-lb button svg{width:24px;height:24px}
.tp-lb{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:56px 72px;background:rgba(10,18,48,.97)}
.tp-lb>img{max-width:calc(100vw - 144px);max-height:calc(100vh - 112px);max-height:calc(100dvh - 112px);width:auto;height:auto;object-fit:contain;background:#fff;border-radius:3px;cursor:default}
.tp-lb button{position:absolute;display:grid;place-items:center;width:48px;height:48px;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;cursor:pointer;transition:background .2s}
.tp-lb button:hover,.tp-lb button:focus-visible{background:#ef424c}
.tp-lb-x{top:14px;right:14px}.tp-lb-p{left:14px;top:50%;margin-top:-24px}.tp-lb-nx{right:14px;top:50%;margin-top:-24px}
.tp-lb-n{position:absolute;left:0;right:0;bottom:16px;text-align:center;color:#b3bcd8;font:600 14px "Fira Sans",Arial,sans-serif}
.tp-lb-open{overflow:hidden}
@media(max-width:700px){.tp-lb{padding:64px 12px}.tp-lb>img{max-width:calc(100vw - 24px);max-height:calc(100vh - 128px);max-height:calc(100dvh - 128px)}.tp-lb-p{left:8px}.tp-lb-nx{right:8px}}
