:root{--tv-ink:#171717;--tv-muted:#625f5b;--tv-paper:#fff;--tv-warm:#bca891;--tv-line:#e4dfd7}
@property --tv-border-angle{syntax:'<angle>';inherits:false;initial-value:0deg}
.tv-glow{position:relative;isolation:isolate;border:1px solid var(--tv-line);border-radius:12px}
.tv-glow::before{content:'';position:absolute;inset:0;padding:1px;border-radius:inherit;background:conic-gradient(from var(--tv-border-angle),#d9d2c880 0deg,#d9d2c850 110deg,#bca891 155deg,#ffffff 178deg,#8d806e 200deg,#d9d2c850 230deg,#d9d2c880 360deg);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;z-index:6;animation:tv-border-orbit 14s linear infinite}
@keyframes tv-border-orbit{to{--tv-border-angle:360deg}}
body{color:var(--tv-ink)}
body .header-main,body .header-inner,body.home .header-main,body.home .header-inner{height:auto;min-height:100px}
body .header-nav{flex-wrap:wrap;align-content:center;gap:0 12px}
body .header-nav>li{margin:0}body .header-nav>li>a{font-size:12px;padding:8px 0;min-height:32px;color:var(--tv-ink)}
body #logo{width:192px;max-width:192px}body #logo img{width:100%;height:auto;max-height:none;padding:0}
.htw-announcement-thorne-us-home{font-size:14px;line-height:1.5;letter-spacing:.015em;background:#171717!important;color:#fff!important;padding:11px 18px!important;text-wrap:balance}
body .htw-page-thorne-us-home .sale-strip{display:none!important}
.htw-page-thorne-us-home .wellness>.tv-section{margin-top:30px!important;margin-bottom:30px!important}
.htw-page-thorne-us-home .wellness>.wellness-hero{margin-top:18px!important}
.htw-page-thorne-us-home .section-wrap.tv-section{padding:64px 36px}
.htw-page-thorne-us-home .best-sellers .section-heading{max-width:100%;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:34px!important}
.htw-page-thorne-us-home .best-sellers .section-heading>div{display:grid;gap:12px}
.htw-page-thorne-us-home .best-sellers .section-heading .eyebrow{margin:0!important}
.htw-page-thorne-us-home .best-sellers .section-heading p:not(.eyebrow){color:var(--tv-muted);font-size:16px}
.htw-page-thorne-us-home .best-sellers .section-heading .wp-block-button__link{white-space:nowrap}
.htw-page-thorne-us-home .hero-copy{max-width:700px}
.htw-page-thorne-us-home .hero-copy .hero-offer{font-size:clamp(42px,4vw,58px);letter-spacing:-.035em}
.htw-page-thorne-us-home .hero-copy .offer-scope{font-size:18px;font-weight:600;letter-spacing:.01em;margin-top:-10px!important}
.htw-page-thorne-us-home .hero-copy .hero-shipping{font-size:15px!important;letter-spacing:.01em}
.htw-page-thorne-us-home .category-card figure a{display:block;border-radius:8px;overflow:hidden}
.htw-page-thorne-us-home .category-card figure img{transition:transform .4s ease}
.htw-page-thorne-us-home .category-card figure a:hover img{transform:scale(1.025)}
.htw-page-thorne-us-home .wellness a:not(.wp-block-button__link){text-underline-offset:5px}
/* Native catalogue cards: stable images and full, centred text. */
.products .product-small.col{display:flex}
.products .product-small.col>.col-inner{width:100%;height:100%}
.pcp-card .pcp-surface{padding:0!important;background:#fff!important;box-shadow:0 8px 26px #17171706;overflow:visible}
.pcp-card .product-small.box{height:100%;display:flex;flex-direction:column;border-radius:inherit}
.pcp-card .box-image{width:100%;border-radius:12px 12px 0 0;background:#fff;margin:0!important}
.pcp-card .pcp-frame{aspect-ratio:1 / 1;overflow:hidden}
.pcp-card .pcp-frame .image-zoom,.pcp-card .pcp-frame .image-zoom>a{height:100%;width:100%}
.pcp-card .pcp-frame img{display:block;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%;object-fit:contain!important;padding:26px 22px 16px;aspect-ratio:auto}
.pcp-card .box-text-products{padding:18px 18px 24px!important;display:flex;flex-direction:column;gap:12px;align-items:center;flex:1;background:transparent!important;text-align:center!important}
.pcp-card .title-wrapper,.pcp-card .price-wrapper,.pcp-card .pcp-actions{width:100%;text-align:center!important;margin:0!important}
.pcp-card .pcp-title{margin:0!important;min-height:2.8em;font-size:15px;line-height:1.45;font-weight:500;text-align:center!important}
.pcp-card .pcp-title a{color:var(--tv-ink);display:block;overflow:visible!important;white-space:normal!important;text-overflow:clip;-webkit-line-clamp:unset;text-transform:none;line-height:1.45}
.pcp-card .pcp-price{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:6px;line-height:1.45;color:var(--tv-ink);font-size:16px;min-height:24px}
.pcp-card .pcp-price del{font-size:13px;color:#777;opacity:1;font-weight:400}
.pcp-card .pcp-price ins{text-decoration:none;color:var(--tv-ink);font-weight:600;background:none}
.pcp-card .pcp-actions{margin-top:auto!important;display:flex;justify-content:center;padding-top:3px}
.pcp-card .pcp-actions .button,.product-summary .single_add_to_cart_button,.product-summary .button,.woocommerce .button:not(.wc-forward.checkout-button){background:transparent!important;color:var(--tv-ink)!important;border:1px solid var(--tv-ink)!important;border-radius:3px;box-shadow:none!important;text-shadow:none!important;min-height:44px;padding:11px 18px;margin:0;text-transform:none;font-size:13px;line-height:1.5;letter-spacing:.02em;transition:background .2s,color .2s}
.pcp-card .pcp-actions .button:hover,.product-summary .single_add_to_cart_button:hover,.woocommerce .button:not(.wc-forward.checkout-button):hover{background:var(--tv-ink)!important;color:#fff!important}
.pcp-card .pcp-actions .button:focus-visible,.product-summary button:focus-visible{outline:2px solid #7f6b50;outline-offset:3px}
.pcp-card .badge-container,.product-gallery .badge-container{top:12px!important;left:12px!important;margin:0!important;z-index:7}
.pcp-card .badge,.product-gallery .badge{width:auto!important;height:auto!important;min-width:0;min-height:0;margin:0;display:block}
.pcp-card .badge-inner,.product-gallery .badge-inner,.onsale.tv-sale-badge{background:#171717!important;color:#fff!important;border:1px solid #171717!important;border-radius:3px!important;padding:7px 10px!important;height:auto!important;min-height:0;width:auto!important;line-height:1.25!important;font-size:11px!important;font-weight:600!important;white-space:nowrap;box-shadow:none}
.pcp-card .badge-inner .onsale,.product-gallery .badge-inner .onsale{color:#fff!important;background:transparent!important;display:inline;border:0;padding:0}
.pcp-card .pcp-controls{padding-inline:10px;margin:4px auto 6px;max-width:100%}
.pcp-card .pcp-thumbnails{max-width:calc(100% - 48px)}
.pcp-card .pcp-thumb,.pcp-card .pcp-reset{background:#fff!important;border-color:#d6cec2!important;color:#171717!important}
.pcp-card .image-tools .quick-view{background:#f5f2ed;color:#171717;text-transform:none;font-size:12px}
/* Product detail content and real native gallery controls. */
.product-summary{text-align:center!important}
.product-summary :is(h1,.price,.product-short-description,.product_meta,.breadcrumbs,.woocommerce-product-rating){text-align:center;margin-left:auto;margin-right:auto}
.product-summary .is-divider{margin:18px auto}
.product-summary .price{justify-content:center;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.product-summary .price ins{background:none;text-decoration:none;color:#171717}
.product-summary .price del{color:#777;font-size:.75em;opacity:1}
.product-summary .variations th,.product-summary .variations td{text-align:center!important}
.product-summary .variable-items-wrapper{justify-content:center}
.product-summary .variations .value select{margin-left:auto;margin-right:auto}
.product-summary form.cart:not(.variations_form),.product-summary .woocommerce-variation-add-to-cart{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px}
.product-summary .quantity{margin:0!important}
.product-summary .product_meta>span{display:block;padding:4px 0}
.tv-detail-block{padding:26px;background:#fff;margin-bottom:28px}
.product-gallery.tv-detail-block{padding:20px}
.product-gallery-slider .woocommerce-product-gallery__image img{display:block;width:100%!important;height:480px!important;object-fit:contain!important;margin:auto;padding:24px}
.product-gallery-slider .flickity-viewport{min-height:480px}
.product-thumbnails img{height:64px!important;object-fit:contain!important}
.product-gallery .flickity-prev-next-button{background:#fff9;border:1px solid #d6cec2;border-radius:50%;width:44px;height:44px;opacity:1!important;box-shadow:none}
.product-gallery .flickity-prev-next-button svg{width:20px;height:20px;color:#171717}
.tv-commerce-block,.tv-page-block{padding:30px;background:#fff}
.tv-footer-block{padding:22px}
.footer-wrapper{border-top:1px solid var(--tv-line);background:#faf9f7}
.footer-wrapper .widget-title{font-weight:600;letter-spacing:.06em;color:#171717}
@media(min-width:850px){.product-main .product-summary.tv-detail-block{padding:30px 36px}}
@media(max-width:849px){body #logo{width:172px;max-width:172px}body .header-main,body .header-inner,body.home .header-main,body.home .header-inner{min-height:74px}.htw-announcement-thorne-us-home{font-size:12px;padding:10px 16px!important}.htw-page-thorne-us-home .section-wrap.tv-section{padding:42px 22px}.htw-page-thorne-us-home .best-sellers .section-heading{align-items:flex-start;flex-direction:column;gap:20px}.tv-detail-block{padding:22px}.product-gallery-slider .woocommerce-product-gallery__image img{height:380px!important;padding:18px}.product-gallery-slider .flickity-viewport{min-height:380px}}
@media(max-width:600px){.htw-page-thorne-us-home .wellness>.tv-section{margin-top:22px!important;margin-bottom:22px!important}.htw-page-thorne-us-home .section-wrap.tv-section{margin-inline:18px!important;padding:36px 14px}.htw-page-thorne-us-home .wellness-hero{min-height:650px}.htw-page-thorne-us-home .hero-copy{padding:28px 24px;gap:14px}.htw-page-thorne-us-home .hero-copy h1{font-size:43px}.htw-page-thorne-us-home .hero-copy .hero-offer{font-size:45px}.htw-page-thorne-us-home .hero-copy .offer-scope{font-size:16px}.htw-page-thorne-us-home .hero-copy .hero-shipping{font-size:14px!important}.htw-page-thorne-us-home .best-sellers .products{margin-left:-5px!important;margin-right:-5px!important}.htw-page-thorne-us-home .best-sellers .products>.col{padding:0 5px 16px}.pcp-card .pcp-frame img{padding:24px 12px 12px}.pcp-card .box-text-products{padding:12px 9px 16px!important;gap:10px}.pcp-card .pcp-title{font-size:13px;min-height:3em}.pcp-card .pcp-price{font-size:14px;gap:4px}.pcp-card .pcp-price del{font-size:11px}.pcp-card .pcp-actions .button{font-size:11px;padding:10px 8px;min-height:44px;letter-spacing:0}.pcp-card .badge-inner{font-size:10px!important;padding:5px 7px!important}.pcp-card .badge-container{top:9px!important;left:9px!important}.tv-commerce-block,.tv-page-block{padding:22px 16px}.product-gallery-slider .woocommerce-product-gallery__image img{height:330px!important}.product-gallery-slider .flickity-viewport{min-height:330px}.tv-footer-block{padding:18px}.tv-glow{border-radius:10px}}
@media(prefers-reduced-motion:reduce){.tv-glow::before{animation:none!important}.pcp-surface,.htw-page-thorne-us-home .category-card img{transition:none!important;transform:none!important}}
/* Keep native gallery arrows legible against light product media. */
.product-gallery .flickity-prev-next-button{display:flex;align-items:center;justify-content:center}
.product-gallery .flickity-prev-next-button svg{position:static!important;display:block;margin:auto;width:20px!important;height:20px!important;opacity:1}
.product-gallery .flickity-prev-next-button .arrow{fill:#171717!important;stroke:#171717;stroke-width:.4}

/* Restore decorative borders across content while keeping the site footer plain. */
.footer-wrapper .tv-glow,#footer .tv-glow,.absolute-footer .tv-glow{border:0!important;border-radius:0!important;box-shadow:none!important}
.footer-wrapper .tv-glow::before,#footer .tv-glow::before,.absolute-footer .tv-glow::before{content:none!important;display:none!important;animation:none!important}

/* Product tabs need stronger specificity than the native zero-padding rule. */
.product-footer .woocommerce-tabs.tv-detail-block{padding:34px 36px!important;margin-top:30px!important;margin-bottom:30px!important}
.product-footer .woocommerce-tabs .tabs{justify-content:center!important;text-align:center!important;flex-wrap:wrap;gap:0 24px;margin:0!important;padding:0 12px!important}
.product-footer .woocommerce-tabs .tabs>li{margin:0!important}
.product-footer .woocommerce-tabs .tabs>li>a{padding:12px 5px;min-height:44px}
.product-footer .woocommerce-tabs .tab-panels{padding:22px 10px 6px!important}
.product-footer .woocommerce-tabs .woocommerce-Tabs-panel{text-align:center!important}
.product-footer .woocommerce-tabs .woocommerce-Tabs-panel>:is(p,ul,ol,table){max-width:980px;margin-left:auto;margin-right:auto}
.product-footer .related.tv-detail-block,.product-footer .up-sells.tv-detail-block{padding:30px 26px!important}
.product-section-title-related,.product-section-title-upsell{text-align:center!important;margin-bottom:22px!important}
/* All verified Flatsome native cards, including related/category carousel rows. */
.product-small.col .box-text-products,.product-small.col .title-wrapper,.product-small.col .product-title,.product-small.col .price-wrapper,.product-small.col .add-to-cart-button{text-align:center!important}
.product-small.col .add-to-cart-button{display:flex;justify-content:center}
.product-small.col .price{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px}
.product-small.col .badge-inner.on-sale{background:#171717!important;color:#fff!important;border-color:#171717!important;text-align:center!important}
.product-small.col .badge-inner.on-sale .onsale{color:#fff!important;background:transparent!important;font-size:inherit!important;line-height:inherit!important;opacity:1!important;visibility:visible!important;display:inline!important}
@media(max-width:849px){.product-footer .woocommerce-tabs.tv-detail-block{padding:26px 20px!important}.product-footer .woocommerce-tabs .tab-panels{padding:18px 2px 2px!important}.product-footer .related.tv-detail-block{padding:25px 16px!important}}
@media(max-width:600px){.product-footer .woocommerce-tabs.tv-detail-block{padding:24px 18px!important}.product-footer .woocommerce-tabs .tabs{gap:0 16px;padding:0!important}.product-footer .woocommerce-tabs .woocommerce-Tabs-panel{font-size:15px;line-height:1.75}}

.pcp-card.product-small.col{display:flex}
.product-footer .woocommerce-tabs table :is(th,td){text-align:center}

/* Native Flickity buttons retain their events/labels; draw legible decorative chevrons. */
.product-gallery-slider .flickity-prev-next-button{display:flex!important;align-items:center;justify-content:center;padding:0!important;width:44px;height:44px;background:#fff!important;border:1px solid #171717!important;opacity:1!important}
.product-gallery-slider .flickity-prev-next-button svg{display:none!important}
.product-gallery-slider .flickity-prev-next-button::after{content:''!important;display:block!important;position:static!important;width:11px!important;height:11px!important;margin:0!important;padding:0!important;border:0!important;border-top:2px solid #171717!important;border-right:2px solid #171717!important;background:transparent!important;opacity:1!important;pointer-events:none;box-sizing:border-box}
.product-gallery-slider .flickity-prev-next-button.previous::after{transform:translateX(2px) rotate(-135deg)!important}
.product-gallery-slider .flickity-prev-next-button.next::after{transform:translateX(-2px) rotate(45deg)!important}
.product-gallery-slider .flickity-prev-next-button:hover{background:#171717!important}
.product-gallery-slider .flickity-prev-next-button:hover::after{border-top-color:#fff!important;border-right-color:#fff!important}
.product-gallery-slider .flickity-prev-next-button:disabled{opacity:.3!important;pointer-events:none;cursor:default}

/* Keep controls legible after click/focus as well as at rest. */
.product-gallery-slider .flickity-prev-next-button:is(:hover,:focus,:focus-visible,:active){background:#fff!important;box-shadow:none!important}
.product-gallery-slider .flickity-prev-next-button::before{content:none!important;display:none!important;box-shadow:none!important}
.product-gallery-slider .flickity-prev-next-button:is(:hover,:focus,:focus-visible,:active)::after{border-top-color:#171717!important;border-right-color:#171717!important}
.product-gallery-slider .flickity-prev-next-button:focus-visible{outline:2px solid #bca891!important;outline-offset:2px}

/* Product detail layout from the supplied reference, retaining this store's palette. */
body.single-product .shop-container{max-width:1280px;margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px}
body.single-product .product-main{max-width:1240px;margin:0 auto;padding-top:12px}
body.single-product .product-main>.row.content-row{width:100%;max-width:none;margin-left:0!important;margin-right:0!important;gap:44px;align-items:flex-start}
body.single-product .product-main>.content-row>.product-gallery{flex:0 0 calc(56% - 22px);max-width:calc(56% - 22px);padding:0!important;margin:0!important}
body.single-product .product-main>.content-row>.product-summary{flex:1 1 0;max-width:none;min-width:0;padding:10px 0 0!important;margin:0!important;text-align:left!important}
body.single-product .product-main :is(.product-gallery,.product-summary).tv-glow,body.single-product .product-footer .woocommerce-tabs.tv-glow{border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent}
body.single-product .product-main :is(.product-gallery,.product-summary).tv-glow::before,body.single-product .product-footer .woocommerce-tabs.tv-glow::before{content:none!important;display:none!important;animation:none!important}
body.single-product .product-summary :is(h1,.price-wrapper,.price,.product-short-description,.product_meta,.woocommerce-product-rating){text-align:left!important;margin-left:0!important;margin-right:0!important}
body.single-product .product-summary h1{font-size:30px;line-height:1.22}
body.single-product .product-summary .price{justify-content:flex-start!important}
body.single-product .product-summary .is-divider{margin:18px 0!important}
body.single-product .product-summary form.cart:not(.variations_form),body.single-product .product-summary .woocommerce-variation-add-to-cart{justify-content:flex-start!important;gap:10px}
body.single-product .product-summary form.cart{margin-top:22px}
body.single-product .product-summary .product_meta>span{text-align:left}
body.single-product .product-gallery-slider .woocommerce-product-gallery__image img{height:540px!important;padding:18px}
body.single-product .product-gallery-slider .flickity-viewport{min-height:540px}
/* Use the existing native selects: the original variation handlers remain attached. */
body.single-product .variations_form .variable-items-wrapper,body.single-product .variations_form .woo-selected-variation-item-name{display:none!important}
body.single-product .product-summary table.variations,body.single-product .product-summary table.variations :is(tbody,tr,th,td){display:block;width:100%;text-align:left!important;border:0}
body.single-product .product-summary table.variations tr{margin-bottom:15px}
body.single-product .product-summary table.variations th.label{padding:0 0 7px!important}
body.single-product .product-summary table.variations td.value{padding:0!important}
body.single-product .product-summary .variations_form select[name^='attribute_']{display:block!important;visibility:visible!important;appearance:auto!important;-webkit-appearance:menulist!important;opacity:1!important;width:100%;max-width:360px;min-height:44px;height:44px;margin:0!important;padding:8px 12px;border:1px solid #171717;border-radius:2px;color:#171717;background-color:#fff;background-image:none!important;box-shadow:none;font:inherit;font-size:14px;text-align:left!important;color-scheme:light}
body.single-product .product-summary .variations_form select[name^='attribute_']:focus{outline:1px solid #171717;outline-offset:2px}
body.single-product .product-summary .reset_variations{display:inline-block;margin-top:8px;color:#171717;text-underline-offset:3px}
/* The reference uses a simple description divider rather than a framed panel. */
body.single-product .product-footer{max-width:1240px;margin-left:auto;margin-right:auto}
body.single-product .product-footer .woocommerce-tabs.tv-detail-block{padding:0!important;margin-top:42px!important;margin-bottom:32px!important;border-top:1px solid #e6e6e6!important}
body.single-product .product-footer .woocommerce-tabs .tabs{justify-content:flex-start!important;text-align:left!important;padding:0!important;gap:0 22px}
body.single-product .product-footer .woocommerce-tabs .tab-panels{padding:20px 0 4px!important}
body.single-product .product-footer .woocommerce-tabs .woocommerce-Tabs-panel{text-align:left!important}
body.single-product .product-footer .woocommerce-tabs .woocommerce-Tabs-panel>:is(p,ul,ol,table){max-width:none;margin-left:0;margin-right:0}
@media(max-width:849px){body.single-product .shop-container{padding-left:18px;padding-right:18px}body.single-product .product-main>.row.content-row{flex-direction:column;gap:28px}body.single-product .product-main>.content-row>:is(.product-gallery,.product-summary){flex:0 0 auto;max-width:100%;width:100%}body.single-product .product-main>.content-row>.product-summary{padding:0!important}body.single-product .product-summary h1{font-size:27px}body.single-product .product-gallery-slider .woocommerce-product-gallery__image img{height:420px!important;padding:14px}body.single-product .product-gallery-slider .flickity-viewport{min-height:420px}body.single-product .product-summary .variations_form select[name^='attribute_']{max-width:none}body.single-product .product-footer .woocommerce-tabs.tv-detail-block{margin-top:32px!important}}
@media(max-width:600px){body.single-product .product-summary h1{font-size:26px}body.single-product .product-gallery-slider .woocommerce-product-gallery__image img{height:360px!important}body.single-product .product-gallery-slider .flickity-viewport{min-height:360px}}

/* Place Buy now on its own row without altering native purchase actions. */
body.single-product .product-summary form.cart:not(.variations_form),body.single-product .product-summary .woocommerce-variation-add-to-cart{display:grid!important;grid-template-columns:max-content max-content;justify-content:start!important;align-items:center;gap:12px 10px}
body.single-product .product-summary form.cart:not(.variations_form)>.quantity,body.single-product .product-summary .woocommerce-variation-add-to-cart>.quantity{grid-column:1;grid-row:1}
body.single-product .product-summary form.cart:not(.variations_form)>.single_add_to_cart_button,body.single-product .product-summary .woocommerce-variation-add-to-cart>.single_add_to_cart_button{grid-column:2;grid-row:1}
body.single-product .product-summary .ux-buy-now-button{grid-column:1 / -1;grid-row:2;justify-self:start;margin:0!important}
