/*
Theme Name: TBJ BeautyTech
Theme URI: https://www.theblackjourney.com/
Author: Blue Qubit Consulting
Description: Custom WordPress theme foundation for The Black Journey. Visual styling is provisional pending approved brand assets.
Version: 0.8.0
Requires at least: 6.5
Requires PHP: 8.1
Text Domain: tbj
License: GPL-2.0-or-later
*/
:root{--tbj-ink:#242424;--tbj-paper:#fff;--tbj-accent:#806a4d}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--tbj-paper);color:var(--tbj-ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}
a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--tbj-accent);outline-offset:3px}
.tbj-wrap{width:min(1100px,calc(100% - 2rem));margin-inline:auto}
.site-header,.site-footer{padding:1.25rem 0;border-block-end:1px solid #ddd}
.site-footer{border-block-start:1px solid #ddd;border-block-end:0;margin-top:3rem}
.site-header .tbj-wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.site-brand{font-weight:700;text-decoration:none}
.site-nav ul{display:flex;gap:1.25rem;list-style:none;padding:0;margin:0;flex-wrap:wrap}
main{min-height:55vh;padding-block:2rem}
.entry{margin-block:2rem}.entry-title{line-height:1.2}
.woocommerce img{height:auto}
@media(max-width:640px){.site-nav ul{gap:.75rem}}

/* Keyboard access and responsive storefront navigation. */
.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.screen-reader-text:focus{position:fixed;z-index:10000;top:1rem;left:1rem;width:auto;height:auto;padding:.65rem 1rem;margin:0;overflow:visible;clip:auto;background:var(--tbj-paper);color:var(--tbj-ink);border:2px solid var(--tbj-accent);white-space:normal}
.tbj-cart-link{font-weight:600;white-space:nowrap}
.site-nav a{display:inline-block;padding:.35rem 0}
@media(max-width:640px){.site-nav{width:100%;order:3}.site-nav ul{justify-content:flex-start}.tbj-cart-link{margin-left:auto}}

/* BeautyTech storefront v0.2 — design tokens provisional until brand acceptance. */
:root{--tbj-ink:#252018;--tbj-paper:#fffdf8;--tbj-accent:#806a4d;--tbj-sage:#e6e9dd;--tbj-warm:#f3ece1;--tbj-deep:#343f33}
html{scroll-behavior:smooth}
body{background:var(--tbj-paper);color:var(--tbj-ink)}
.site-header{background:var(--tbj-paper);position:relative;z-index:2}
.site-brand{font-size:1.3rem;letter-spacing:.025em}
.site-nav a{text-decoration:none;font-weight:600}
.site-nav a:hover,.site-nav a:focus-visible{text-decoration:underline}
.tbj-hero{background:linear-gradient(135deg,#f3ede3,#e7ebdf);overflow:hidden}
.tbj-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:3rem;align-items:center;min-height:510px;padding-block:4.5rem}
.tbj-eyebrow{font-size:.76rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#5b654c}
.tbj-hero h1{font-family:Georgia,serif;font-size:clamp(2.6rem,5.5vw,5rem);line-height:1.08;letter-spacing:-.035em;max-width:680px;margin:.75rem 0 1.5rem}
.tbj-hero-copy>p:not(.tbj-eyebrow){font-size:1.12rem;max-width:560px}
.tbj-hero-actions{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;margin-top:2rem}
.tbj-button{display:inline-block;background:var(--tbj-deep);color:white;text-decoration:none;border-radius:3px;padding:.9rem 1.5rem;font-weight:700}
.tbj-button:hover{background:#202c20}
.tbj-text-link{font-weight:700;text-underline-offset:.3em}
.tbj-hero-art{min-height:360px;display:grid;place-items:center;position:relative}
.tbj-art-ring{width:min(350px,90%);aspect-ratio:1;border-radius:50%;border:38px solid rgba(98,118,82,.22);box-shadow:0 0 0 26px rgba(255,255,255,.24),inset 0 0 0 15px rgba(255,255,255,.4)}
.tbj-art-center{position:absolute;text-align:center;font-family:Georgia,serif;font-size:clamp(3.2rem,6vw,5rem);font-weight:700;color:var(--tbj-deep)}
.tbj-art-center span{display:block;font-family:system-ui,sans-serif;font-size:.72rem;letter-spacing:.22em}
.tbj-section{padding-block:4.5rem}
.tbj-section h2,.tbj-wellness h2{font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.1rem);line-height:1.16;margin:.5rem 0 1rem}
.tbj-section-intro{max-width:670px;margin-bottom:2rem}
.tbj-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.2rem}
.tbj-product-card{border:1px solid #e4dfd4;background:white;border-radius:5px;overflow:hidden}
.tbj-product-image{aspect-ratio:4/5;background:var(--tbj-warm);display:grid;place-items:center;overflow:hidden}
.tbj-product-image img{width:100%;height:100%;object-fit:contain;background:#f7f1e7}
.tbj-product-placeholder{font-family:Georgia,serif;font-size:3rem;color:var(--tbj-deep)}
.tbj-product-info{padding:1.2rem}
.tbj-product-type,.tbj-availability{font-size:.8rem;color:#59634f;font-weight:700;letter-spacing:.03em}
.tbj-product-info h3{font-size:1.15rem;line-height:1.3;margin:.35rem 0 1rem}
.tbj-availability{margin:0}
.tbj-wellness{background:var(--tbj-sage);padding-block:4rem}
.tbj-wellness-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.tbj-wellness-grid p{max-width:510px}
@media(max-width:850px){.tbj-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tbj-hero-grid{gap:1rem}}
@media(max-width:640px){.tbj-hero-grid,.tbj-wellness-grid{grid-template-columns:1fr}.tbj-hero-grid{padding-block:3rem}.tbj-hero-art{min-height:210px}.tbj-art-ring{width:180px;border-width:20px}.tbj-art-center{font-size:2.6rem}.tbj-section{padding-block:3rem}.tbj-product-grid{gap:.8rem}.tbj-product-info{padding:.8rem}.tbj-product-info h3{font-size:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Brand experience v0.3: responsive, accessible, editor-compatible. */
:root{--tbj-ink:#24251d;--tbj-paper:#fcfaf5;--tbj-deep:#263e31;--tbj-sage:#e9ede4;--tbj-warm:#f4efe5;--tbj-accent:#8d7447}
.site-header{border-color:#e8e3d8}.site-header .tbj-wrap{min-height:68px}.site-brand{font-family:Georgia,serif;font-size:1.45rem}
.tbj-hero{background:radial-gradient(circle at 83% 40%,#dce4d5,transparent 42%),linear-gradient(115deg,#f9f2e6,#e8ede4)}
.tbj-hero-grid{min-height:600px}.tbj-hero h1{font-size:clamp(2.8rem,5.3vw,5.4rem)}
.tbj-hero-copy>p:not(.tbj-eyebrow){font-size:1.18rem;line-height:1.8}
.tbj-button{border-radius:30px;padding:1rem 1.7rem;transition:background-color .2s ease}
.tbj-hero-art{min-height:430px}.tbj-art-ring{width:min(400px,90%);border-color:rgba(82,110,77,.2)}
.tbj-art-center span{font-size:.65rem;letter-spacing:.13em}
.tbj-trust-strip{background:var(--tbj-deep);color:#fff;padding:1.1rem 0}
.tbj-trust-strip .tbj-wrap{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.8rem;letter-spacing:.09em;text-transform:uppercase;font-weight:700}
.tbj-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem;margin-top:2rem}
.tbj-benefits article{padding:1.7rem;background:#f5f1e9;border-radius:8px}
.tbj-benefits h3{font-family:Georgia,serif;font-size:1.5rem;margin:.65rem 0}
.tbj-benefits p{margin-bottom:0}.tbj-step{font-weight:800;letter-spacing:.1em;color:#587056}
.tbj-collection{background:#f5f2ec}.tbj-product-card{border:0;border-radius:10px;box-shadow:0 8px 24px rgba(35,35,24,.06)}
.tbj-product-info{padding:1.4rem}.tbj-product-info h3{font-family:Georgia,serif;font-size:1.4rem}
.tbj-product-info h3 a{text-decoration:none}.tbj-product-info h3 a:hover{text-decoration:underline}
.tbj-product-note{font-size:.9rem;min-height:2.8rem;color:#4b4e44}
.tbj-card-link{font-weight:700;color:var(--tbj-deep);text-underline-offset:.25em}
.tbj-wellness{background:var(--tbj-deep);color:#fff}.tbj-wellness .tbj-eyebrow{color:#d8cba6}
.tbj-wellness-panel{background:#f9f5eb;color:var(--tbj-ink);padding:2.2rem;border-radius:12px}
.tbj-wellness-panel h3{font-family:Georgia,serif;font-size:1.65rem;margin-top:0}
.tbj-wellness-panel li{padding:.45rem 0}.tbj-small{font-size:.78rem}
.tbj-story{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}
.tbj-editor-content{border-top:1px solid #ded8ca}
.woocommerce ul.products li.product{background:#fff;border-radius:8px;overflow:hidden;padding-bottom:1rem}
.woocommerce div.product .product_title{font-family:Georgia,serif}
@media(max-width:850px){.tbj-benefits{grid-template-columns:1fr}.tbj-story{grid-template-columns:1fr;gap:1rem}}
@media(max-width:640px){.tbj-hero-grid{min-height:0}.tbj-hero-art{min-height:220px}.tbj-trust-strip .tbj-wrap{justify-content:center;text-align:center}.tbj-wellness-panel{padding:1.4rem}.tbj-product-info h3{font-size:1.12rem}}

/* Production content foundations: editable editorial photography and videos. */
.tbj-hero-photo{display:block;width:100%;height:440px;object-fit:cover;border-radius:180px 180px 16px 16px;box-shadow:0 20px 60px rgba(20,36,27,.15)}
.tbj-story-photo{display:block;width:100%;max-height:340px;object-fit:cover;border-radius:10px;margin-bottom:1.5rem}
.tbj-video-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:1.5rem;margin-top:2rem}
.tbj-video-frame{position:relative;aspect-ratio:16/9;background:#182b22;border-radius:12px;overflow:hidden}
.tbj-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
@media(max-width:640px){.tbj-hero-photo{height:280px;border-radius:120px 120px 12px 12px}}

.tbj-footer-nav ul{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;list-style:none;padding:0;margin:1.5rem 0 0}
.tbj-footer-nav a{font-weight:600;text-underline-offset:.25em}
.tbj-logo{display:block;width:auto;max-width:220px;max-height:80px;height:auto;object-fit:contain}
.tbj-wellness-panel .tbj-button{font-size:.92rem}

/* Editorial Gutenberg pages: About, FAQs, Contact, Tutorials and policies. */
.tbj-page-main{padding:0;min-height:60vh}
.tbj-page-hero{background:linear-gradient(115deg,#f8f1e5,#e9ede5);padding:clamp(3rem,6vw,6rem) 0}
.tbj-page-title{font:700 clamp(2.7rem,5vw,4.7rem)/1.1 Georgia,serif;letter-spacing:-.03em;margin:.6rem 0}
.tbj-page-summary{font-size:1.2rem;max-width:740px;line-height:1.8}
.tbj-page-layout{padding-block:clamp(2rem,5vw,4.5rem)}
.tbj-page-content{max-width:850px;margin-inline:auto;font-size:1.05rem;line-height:1.85}
.tbj-page-content>h2,.tbj-page-content .wp-block-heading{font-family:Georgia,serif;line-height:1.2}
.tbj-page-content h2{font-size:clamp(1.7rem,3vw,2.6rem);margin-top:2.5rem}
.tbj-page-content h3{font-size:1.35rem;margin-top:1.8rem}
.tbj-page-content img{max-width:100%;height:auto;border-radius:12px}
.tbj-page-content .wp-block-columns{gap:clamp(1rem,3vw,2.5rem)}
.tbj-page-content .wp-block-button__link{background:var(--tbj-deep);border-radius:30px;color:white;font-weight:700}
.tbj-page-content .wp-block-quote{border-left:4px solid var(--tbj-accent);padding-left:1.5rem}
.tbj-page-content details,.tbj-page-content .wp-block-details{padding:1rem 1.25rem;border:1px solid #dcded5;border-radius:8px;margin-block:.75rem;background:white}
.tbj-page-content summary{font-weight:700;cursor:pointer}
.tbj-page-content a{text-underline-offset:.2em}
.tbj-page-featured{margin:0 auto 2.5rem;max-width:900px}
.tbj-page-featured img{display:block;width:100%;height:auto;max-height:460px;object-fit:cover;border-radius:12px}
@media(max-width:640px){.tbj-page-content{font-size:1rem}.tbj-page-hero{padding-block:2.8rem}}

/* v0.5 unified BeautyTech corporate experience. Keep the uploaded logo unmodified. */
.site-header .tbj-wrap{width:min(1400px,calc(100% - 2.5rem));gap:clamp(.75rem,2vw,1.8rem)}
.site-nav{flex:1;min-width:0}
.site-nav ul{justify-content:center;gap:.35rem 1.05rem}
.site-nav a{font-size:.88rem;white-space:nowrap}
.tbj-cart-link{font-size:.9rem}
.tbj-logo{max-height:72px;max-width:165px}
.tbj-hero-product-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:center;width:100%;max-width:500px;transform:rotate(-3deg)}
.tbj-hero-product-photo{display:block;width:100%;height:210px;object-fit:contain;background:#fffaf1;border:1px solid #e4dac8;border-radius:18px;padding:.65rem;box-shadow:0 16px 35px rgba(31,44,32,.12)}
.tbj-hero-product-photo:nth-child(even){transform:translateY(1.4rem)}
.tbj-hero-fallback{display:grid;place-content:center;gap:.5rem;text-align:center;min-height:290px;width:100%;background:#f8f0e0;border:1px solid #dfd0ad;border-radius:20px;font:700 clamp(1.5rem,3vw,2.6rem) Georgia,serif}
.tbj-hero-fallback small{font:600 .8rem system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.tbj-discover-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-top:2rem}
.tbj-discover-grid article{padding:2rem;background:var(--tbj-warm);border-radius:12px;border-top:4px solid var(--tbj-accent)}
.tbj-discover-grid h3{font:700 1.45rem Georgia,serif;margin:0 0 .75rem}
.tbj-discover-grid h3 a{text-decoration:none}
.tbj-discover-grid h3 a:hover{text-decoration:underline}
.tbj-discover-grid p{min-height:4.5rem}
.tbj-page-content .tbj-content-cta{display:inline-block;padding:.85rem 1.4rem;border-radius:30px;background:var(--tbj-deep);color:white;text-decoration:none;font-weight:700}
.tbj-page-content .tbj-content-cta:hover{background:#192a20}
@media(max-width:1100px){.site-header .tbj-wrap{align-items:flex-start}.site-nav{flex-basis:100%;order:3}.site-nav ul{justify-content:flex-start}.tbj-cart-link{margin-left:auto}}
@media(max-width:720px){.tbj-discover-grid{grid-template-columns:1fr}.tbj-discover-grid p{min-height:0}.tbj-hero-product-gallery{max-width:380px}.tbj-hero-product-photo{height:150px}.site-header .tbj-wrap{width:calc(100% - 2rem)}.site-nav ul{gap:.4rem 1rem}.site-nav a{font-size:.85rem}.tbj-logo{max-height:62px}}

/* Gallery: preserve featured product photography and show secondary views below. */
.tbj-product-image:has(.tbj-product-featured){display:flex;flex-direction:column;aspect-ratio:auto;align-items:stretch;justify-content:flex-start}
.tbj-product-featured{aspect-ratio:4/5;display:grid;place-items:center;min-width:0}
.tbj-product-featured img{width:100%;height:100%;object-fit:contain}
.tbj-product-thumbnails{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;padding:.4rem;width:100%;background:#fff}
.tbj-product-thumbnails img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;border:1px solid #e4dfd4;border-radius:3px}

/* TBJ News: featured cover story, chronological archive and readable articles. */
.tbj-news{padding-block:clamp(2rem,5vw,5rem)}
.tbj-news-heading{margin-bottom:2.5rem;max-width:850px}
.tbj-news-heading h1{font:700 clamp(2.5rem,5vw,4.5rem)/1.1 Georgia,serif;margin:.4rem 0}
.tbj-news-heading p{font-size:1.1rem}
.tbj-news-cover{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(1.5rem,4vw,4rem);align-items:center;padding-bottom:3rem;border-bottom:1px solid #e4dfd4;margin-bottom:2.5rem}
.tbj-news-photo{display:block;min-width:0;background:#f1eadf;border-radius:10px;overflow:hidden}
.tbj-news-photo img{display:block;width:100%;height:100%;max-height:470px;object-fit:cover}
.tbj-news-image-placeholder{display:grid;place-items:center;min-height:230px;color:#806a4d;font:700 3rem Georgia,serif}
.tbj-news-copy time,.tbj-news-heading time{color:#6d665b;font-size:.88rem}
.tbj-news-copy h2,.tbj-news-copy h3{font-family:Georgia,serif;line-height:1.2;margin:.65rem 0}
.tbj-news-copy h2{font-size:clamp(2rem,3vw,3rem)}
.tbj-news-copy h3{font-size:1.5rem}
.tbj-news-copy a{text-decoration:none}
.tbj-news-copy a:hover,.tbj-news-read:hover{text-decoration:underline}
.tbj-news-read{font-weight:700}
.tbj-news-history{display:grid;grid-template-columns:minmax(160px,260px) 1fr;gap:1.5rem;padding:1.4rem 0;border-bottom:1px solid #e4dfd4}
.tbj-news-history .tbj-news-photo img{max-height:190px}
.tbj-news-pagination ul{display:flex;list-style:none;gap:1rem;padding:1rem 0}
.tbj-news-pagination .current{font-weight:700}
.tbj-news-single{max-width:950px}
.tbj-news-back{display:inline-block;margin-bottom:2rem}
.tbj-news-hero-image{margin:0 0 2rem}
.tbj-news-hero-image img{display:block;width:100%;height:auto;max-height:560px;object-fit:cover;border-radius:10px}
.tbj-news-source{margin-top:2rem}
@media(max-width:720px){.tbj-news-cover,.tbj-news-history{grid-template-columns:1fr}.tbj-news-history .tbj-news-photo img{max-height:270px}}


/* v10: responsive, keyboard-accessible customer-support footer and contact form. */
.tbj-footer-v10{background:#24382e;color:#f9f6ef;padding:clamp(3rem,5vw,5rem) 0 1.5rem;margin-top:4rem;border:0}
.tbj-footer-v10 .tbj-wrap{width:min(1280px,calc(100% - 2.5rem))}
.tbj-footer-grid{display:grid;grid-template-columns:minmax(220px,1.4fr) repeat(4,minmax(135px,1fr));gap:clamp(1.5rem,3vw,3rem)}
.tbj-footer-grid h2{font:700 1.12rem Georgia,serif;color:#f9f6ef;margin:0 0 1.2rem}
.tbj-footer-intro h2{font-size:1.6rem}
.tbj-footer-grid p{margin:.4rem 0 1rem;overflow-wrap:anywhere}
.tbj-footer-grid ul,.tbj-footer-bottom ul{list-style:none;margin:0;padding:0}
.tbj-footer-grid li{margin:0 0 .65rem}
.tbj-footer-v10 a{color:#f9f6ef;text-decoration:none;text-underline-offset:.25em}
.tbj-footer-v10 a:hover,.tbj-footer-v10 a:focus-visible{text-decoration:underline}
.tbj-footer-contact-cta{display:inline-flex;gap:.5rem;align-items:center;border:1px solid #d6bd85;border-radius:30px;padding:.65rem 1.2rem;margin-top:.7rem;font-weight:700}
.tbj-footer-bottom{border-top:1px solid #66766a;margin-top:3rem;padding-top:1.3rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.86rem}
.tbj-footer-bottom p{margin:0}.tbj-footer-bottom ul{display:flex;gap:1rem 1.5rem;flex-wrap:wrap}
.tbj-contact-panel,.tbj-contact-form{max-width:900px;margin:0 auto 2.5rem;padding:clamp(1.3rem,3vw,2.5rem);border-radius:14px;background:#f4efe5}
.tbj-contact-form{background:#fff;border:1px solid #e1d8c9;min-height:260px}
.tbj-contact-panel h2,.tbj-contact-form h2{font:700 clamp(1.6rem,3vw,2.3rem) Georgia,serif;margin:0 0 1rem}
.tbj-contact-options{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.5rem}
.tbj-contact-options a{display:inline-block;border-radius:30px;padding:.85rem 1.3rem;background:#263e31;color:#fff;font-weight:700;text-decoration:none;overflow-wrap:anywhere}
.tbj-contact-options a:hover,.tbj-contact-options a:focus-visible{text-decoration:underline}
@media(max-width:1150px){.tbj-footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tbj-footer-intro{grid-column:span 3}}
@media(max-width:700px){.tbj-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tbj-footer-intro{grid-column:span 2}.tbj-footer-bottom{display:block}.tbj-footer-bottom nav{margin-top:1rem}}
@media(max-width:430px){.tbj-footer-grid{grid-template-columns:1fr}.tbj-footer-intro{grid-column:auto}.tbj-footer-v10 .tbj-wrap{width:calc(100% - 2rem)}}


/* Rev13: compact, keyboard-operable mobile menu; no-JS fallback keeps links visible. */
.tbj-menu-toggle{display:none;border:1px solid var(--tbj-accent);background:transparent;color:var(--tbj-ink);padding:.6rem 1rem;border-radius:4px;font:inherit;font-weight:700;cursor:pointer}
@media(max-width:640px){
  .tbj-js .tbj-menu-toggle:not([hidden]){display:inline-flex;align-items:center;justify-content:center;margin-left:auto}
  .tbj-js .site-nav{width:100%;order:3}
  .tbj-js .site-nav ul{display:none;flex-direction:column;gap:0;margin:.5rem 0 0;padding:0}
  .tbj-js .tbj-menu-toggle[aria-expanded="true"] + .site-nav ul{display:flex}
  .tbj-js .site-nav li a{display:block;padding:.7rem .25rem;min-height:44px}
  .woocommerce div.product .woocommerce-tabs ul.tabs{display:flex;flex-wrap:wrap;gap:.35rem;padding:0;margin:0 0 1rem}
  .woocommerce div.product .woocommerce-tabs ul.tabs li{float:none;display:block;margin:0;flex:1 1 auto;min-width:0}
  .woocommerce div.product .woocommerce-tabs ul.tabs li a{display:block;padding:.6rem .7rem;text-align:center;white-space:normal}
}


/* Rev13 product purchase panel — restrained TBJ gold/ivory editorial styling.
   Presentation only: WooCommerce stock and MU checkout lock remain authoritative. */
.single-product .woocommerce div.product .summary{
  background:#fffdf9;
  border:1px solid #e8dfd0;
  border-radius:16px;
  padding:clamp(1.25rem,2.6vw,2.25rem);
  box-shadow:0 12px 36px rgba(50,38,22,.055);
}
.single-product .woocommerce div.product .summary .product_title{
  font-family:Georgia,serif;
  font-size:clamp(1.9rem,3vw,2.65rem);
  line-height:1.16;
  margin:0 0 .75rem;
}
.single-product .woocommerce div.product .summary > .price{
  color:#80652d;
  font-weight:650;
  font-size:1.18rem;
  margin:.4rem 0 1.35rem;
}
.single-product .woocommerce div.product form.cart.variations_form{
  border-top:1px solid #e9e1d5;
  padding-top:1.2rem;
  margin-top:1rem;
}
.single-product .woocommerce div.product form.cart .variations{
  width:100%;
  margin:0 0 1.2rem;
}
.single-product .woocommerce div.product form.cart .variations tr{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.45rem .8rem;
  margin-bottom:.65rem;
}
.single-product .woocommerce div.product form.cart .variations td,
.single-product .woocommerce div.product form.cart .variations th{
  display:block;
  padding:0;
  vertical-align:middle;
}
.single-product .woocommerce div.product form.cart .variations label{
  font-weight:750;
  font-size:.93rem;
}
.single-product .woocommerce div.product form.cart .variations select{
  min-height:44px;
  width:min(100%,340px);
  max-width:100%;
  padding:.65rem 2.1rem .65rem .85rem;
  border:1px solid #bcb19d;
  border-radius:7px;
  background-color:#fff;
  color:#28231b;
  font:inherit;
}
.single-product .woocommerce div.product form.cart .reset_variations{
  font-size:.88rem;
  text-underline-offset:.2em;
}
.single-product .woocommerce div.product .woocommerce-variation-price{
  font-size:1.22rem;
  font-weight:700;
  color:#80652d;
  margin:.75rem 0;
}
.single-product .woocommerce div.product .stock.out-of-stock{
  display:inline-block;
  color:#963c34;
  background:#fff1ed;
  border:1px solid #edcec8;
  border-radius:20px;
  padding:.32rem .8rem;
  font-size:.85rem;
  font-weight:750;
  margin:.5rem 0 1rem;
}
.single-product .woocommerce div.product form.cart .quantity .qty{
  min-height:44px;
  border:1px solid #bcb19d;
  border-radius:6px;
}
.single-product .woocommerce div.product form.cart .single_add_to_cart_button{
  min-height:44px;
  border-radius:7px;
  background:#3a4937;
  color:#fff;
  padding:.7rem 1.3rem;
}
.single-product .woocommerce div.product form.cart .single_add_to_cart_button:disabled,
.single-product .woocommerce div.product form.cart .single_add_to_cart_button.disabled{
  background:#e2ded6;
  color:#6b645a;
  opacity:1;
  cursor:not-allowed;
}
.single-product .woocommerce div.product .product_meta{
  margin-top:1.5rem;
  padding-top:1rem;
  border-top:1px solid #e9e1d5;
  color:#635b50;
  font-size:.88rem;
  line-height:1.9;
}
.single-product .woocommerce div.product .product_meta a{text-underline-offset:.2em}
@media(max-width:640px){
  .single-product .woocommerce div.product .summary{padding:1.2rem;border-radius:12px}
  .single-product .woocommerce div.product form.cart .variations tr{align-items:stretch}
  .single-product .woocommerce div.product form.cart .variations td.value{flex:1 1 100%}
  .single-product .woocommerce div.product form.cart .variations select{width:100%}
}


/* Rev13: portrait product video is supporting editorial media, not a full-width hero.
   Keep the complete frame and native playback controls; do not crop or replace assets. */
.single-product .woocommerce .woocommerce-Tabs-panel--description .wp-video,
.single-product .woocommerce .woocommerce-Tabs-panel--description .wp-video-shortcode,
.single-product .woocommerce .woocommerce-Tabs-panel--description > video,
.single-product .woocommerce .woocommerce-Tabs-panel--description > p > video{
  display:block;
  width:min(100%,360px)!important;
  max-width:100%;
  height:auto;
  margin:1.4rem auto 1.75rem;
  border-radius:12px;
  overflow:hidden;
  background:#1e1b17;
  box-shadow:0 10px 30px rgba(31,25,19,.12);
}
.single-product .woocommerce .woocommerce-Tabs-panel--description .wp-video .mejs-container,
.single-product .woocommerce .woocommerce-Tabs-panel--description .wp-video video{
  max-width:100%!important;
}
.single-product .woocommerce .woocommerce-Tabs-panel--description{
  max-width:960px;
  margin-inline:auto;
  line-height:1.75;
}
.single-product .woocommerce .woocommerce-Tabs-panel--description h2,
.single-product .woocommerce .woocommerce-Tabs-panel--description h3{
  font-family:Georgia,serif;
  line-height:1.25;
  margin-top:1.7rem;
}
@media(max-width:640px){
  .single-product .woocommerce .woocommerce-Tabs-panel--description .wp-video,
  .single-product .woocommerce .woocommerce-Tabs-panel--description .wp-video-shortcode,
  .single-product .woocommerce .woocommerce-Tabs-panel--description > video,
  .single-product .woocommerce .woocommerce-Tabs-panel--description > p > video{
    width:min(100%,320px)!important;
    margin:1rem auto 1.4rem;
  }
}

/* Rev14: support the actual WordPress content video markup (nested blocks and
   mediaelement wrappers) without constraining product gallery or overlay video. */
body.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description video,
body.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .wp-video,
body.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .wp-block-video,
body.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .mejs-container,
body.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .wp-video-shortcode,
body.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description iframe {
  display:block;
  width:min(100%,360px)!important;
  max-width:100%!important;
  margin-inline:auto;
  border-radius:10px;
}
body.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .wp-block-video,
body.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .wp-video {
  margin-block:1.5rem;
}
@media(max-width:640px){
  body.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description video,
  body.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .wp-video,
  body.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .wp-block-video,
  body.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .mejs-container,
  body.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .wp-video-shortcode,
  body.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description iframe {
    width:min(100%,320px)!important;
  }
}

/* Rev15 — shared, responsive editorial product detail system for all four oils.
   Use selectors that match WooCommerce's body.woocommerce markup as well as
   sites with a nested .woocommerce wrapper. No product or commerce data changes. */
body.single-product main.tbj-wrap{width:min(1220px,calc(100% - 2.5rem));padding-block:clamp(1.5rem,3vw,3rem)}
body.single-product div.product{--tbj-product-border:#e6dcc9;--tbj-product-forest:#263d32}
body.single-product div.product .woocommerce-product-gallery{border-radius:16px;overflow:hidden;background:#f7f3eb;border:1px solid var(--tbj-product-border);padding:.65rem;margin-bottom:1.75rem}
body.single-product div.product .woocommerce-product-gallery__image img{display:block;border-radius:9px}
body.single-product div.product .flex-control-thumbs{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;padding:.7rem 0 0!important;margin:0!important;list-style:none}
body.single-product div.product .flex-control-thumbs li{float:none!important;width:100%!important}
body.single-product div.product .flex-control-thumbs img{width:100%;aspect-ratio:1;object-fit:cover;border:2px solid transparent;border-radius:8px;opacity:.8}
body.single-product div.product .flex-control-thumbs img.flex-active{border-color:#a9894e;opacity:1}
body.single-product div.product .summary{
  background:#fff!important;border:1px solid var(--tbj-product-border)!important;
  border-radius:18px!important;padding:clamp(1.4rem,3vw,2.6rem)!important;
  box-shadow:0 14px 36px rgba(45,36,22,.06);
}
body.single-product div.product .summary .product_title{font:700 clamp(2rem,3.2vw,2.9rem)/1.14 Georgia,serif;margin:0 0 1rem;color:#24251f}
body.single-product div.product .summary > .price{font-size:1.2rem;font-weight:700;color:#84692e;margin-bottom:1.5rem}
body.single-product div.product .summary form.cart.variations_form{border-top:1px solid var(--tbj-product-border);padding-top:1.3rem}
body.single-product div.product .summary form.cart .variations{width:100%;margin-bottom:1.2rem}
body.single-product div.product .summary form.cart .variations select{width:100%;max-width:100%;min-height:48px;border:1px solid #b8ad9b;border-radius:8px;padding:.65rem;background:#fff;color:#292821}
body.single-product div.product .summary form.cart .variations label{font-size:.95rem;font-weight:750}
body.single-product div.product .summary .woocommerce-variation-price{font-size:1.3rem;font-weight:750;margin:.85rem 0;color:#84692e}
body.single-product div.product .summary .stock.out-of-stock{display:inline-block;background:#fff1eb;color:#923b2f;border:1px solid #edd0c8;border-radius:24px;padding:.4rem .85rem;font-size:.85rem;font-weight:700}
body.single-product div.product .summary .quantity .qty{min-height:46px;border:1px solid #b8ad9b;border-radius:7px}
body.single-product div.product .summary .single_add_to_cart_button{min-height:46px;border-radius:7px;padding:.7rem 1.3rem}
body.single-product div.product .summary .single_add_to_cart_button:disabled,
body.single-product div.product .summary .single_add_to_cart_button.disabled{background:#e4e0d9!important;color:#615d56!important;opacity:1!important;cursor:not-allowed}
body.single-product div.product .summary .product_meta{border-top:1px solid var(--tbj-product-border);padding-top:1.1rem;margin-top:1.5rem;color:#665f53;font-size:.88rem;line-height:1.8}
body.single-product div.product .tbj-gallery-video-item{margin-top:.85rem}
body.single-product div.product .tbj-gallery-video-trigger{display:inline-flex;align-items:center;gap:.4rem;min-height:44px;border-radius:24px;padding:.7rem 1.1rem;font-weight:700;background:#fffaf1}
body.single-product div.product .woocommerce-tabs{clear:both;padding-top:clamp(1.8rem,4vw,3.5rem)}
body.single-product div.product .woocommerce-tabs ul.tabs{border-bottom:1px solid #ded4c4;padding:0;margin:0 0 1.4rem}
body.single-product div.product .woocommerce-tabs ul.tabs li{border-radius:9px 9px 0 0}
body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel{
  background:#fff;border:1px solid var(--tbj-product-border);border-radius:16px;
  padding:clamp(1.3rem,3.5vw,3.25rem);box-shadow:0 8px 24px rgba(45,36,22,.035);
  max-width:none;margin:0;line-height:1.8;overflow:hidden;
}
body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel--description > h2:first-child{
  font:700 clamp(1.6rem,2.5vw,2.2rem)/1.2 Georgia,serif;
  border-bottom:1px solid #e9e0d2;padding-bottom:1rem;margin:0 0 1.5rem;
}
body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel--description video,
body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel--description .wp-video,
body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel--description .wp-block-video,
body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel--description .mejs-container{
  width:min(100%,360px)!important;max-width:100%!important;
  border-radius:12px;margin:1.5rem auto 2rem!important;display:block;
  box-shadow:0 14px 30px rgba(31,25,19,.13);
}
body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel--description h2:not(:first-child),
body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel--description h3{margin-top:2rem;font-family:Georgia,serif}
body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel--description p{max-width:78ch}
body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel--description ul{padding-left:1.5rem}
@media(max-width:767px){
 body.single-product main.tbj-wrap{width:calc(100% - 1.5rem);padding-block:1.2rem}
 body.single-product div.product .woocommerce-product-gallery{padding:.35rem;border-radius:11px}
 body.single-product div.product .summary{padding:1.3rem!important;border-radius:13px!important}
 body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel{padding:1.25rem;border-radius:12px}
 body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel--description video,
 body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel--description .wp-video,
 body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel--description .wp-block-video,
 body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel--description .mejs-container{width:min(100%,320px)!important}
}

/* Rev16: tighten the size selector without sacrificing touch accessibility.
   Select width is based on the longest known variation label (200 mL), not the
   full purchase card; native dropdown remains keyboard/touch accessible. */
body.single-product div.product .summary form.cart .variations td.value select,
body.single-product div.product .summary form.cart .variations select {
  width:clamp(160px,42%,220px)!important;
  max-width:100%!important;
  min-height:46px;
}
body.single-product div.product .summary form.cart .variations td.value{min-width:0}
body.single-product div.product .summary form.cart .variations .reset_variations{display:inline-block;margin-inline-start:.7rem}
@media(max-width:640px){
  body.single-product div.product .summary form.cart .variations td.value select,
  body.single-product div.product .summary form.cart .variations select{width:min(100%,200px)!important}
}

/* Rev16: native controls own their video chrome. Remove styling applied
   directly to <video> that adds a second black frame around the browser's
   native player; keep the centered media footprint and rounded story wrapper.
   The MP4, poster, and native controls are untouched. */
body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel--description video,
body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel--description .wp-video-shortcode {
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  overflow:visible!important;
  margin:0 auto!important;
  display:block;
  height:auto;
}
body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel--description .wp-video,
body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel--description .wp-block-video,
body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel--description .mejs-container{
  background:transparent!important;
  box-shadow:none!important;
  border-radius:10px;
  overflow:hidden;
}

/* Rev16: one consistent desktop product heading line for all four oils.
   Size for the longest Rosemary/Moringa titles within the purchase card,
   while allowing natural wrapping on narrow/mobile screens. */
@media(min-width:1024px){
  body.single-product div.product .summary .product_title{
    font-size:clamp(1.5rem,2.05vw,2rem)!important;
    line-height:1.18!important;
    white-space:nowrap;
    letter-spacing:-.025em;
  }
}
@media(max-width:1023px){
  body.single-product div.product .summary .product_title{
    font-size:clamp(1.65rem,3.2vw,2rem)!important;
    line-height:1.2!important;
    overflow-wrap:normal;
  }
}

/* Rev17: keep short 50/100/200 mL choices compact on desktop.
   WooCommerce native selector stays accessible and mobile-friendly. */
@media(min-width:641px){
 body.single-product div.product .summary form.cart .variations td.value select,
 body.single-product div.product .summary form.cart .variations select{
   width:156px!important;
   min-width:156px!important;
   max-width:156px!important;
   min-height:46px;
 }
}


/* Rev20: keep all three WooCommerce tabs on one compact mobile row.
   Scope limited to product pages; tab behavior and labels remain native. */
@media (max-width:640px) {
  body.single-product div.product .woocommerce-tabs ul.tabs {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1.65fr) minmax(0,1fr);
    gap:.3rem;
    align-items:stretch;
  }
  body.single-product div.product .woocommerce-tabs ul.tabs li {
    float:none;
    min-width:0;
    margin:0;
    padding:0;
    display:flex;
    align-items:stretch;
    justify-content:center;
  }
  body.single-product div.product .woocommerce-tabs ul.tabs li a {
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-width:0;
    min-height:44px;
    padding:.5rem .25rem;
    font-size:clamp(.7rem,2.8vw,.88rem);
    line-height:1.25;
    white-space:normal;
    overflow-wrap:break-word;
    text-align:center;
  }
}

/* Rev20: separate the selected-variation price from the parent price range.
   Preserve WooCommerce's own visibility, currency, and pricing logic. */
body.single-product div.product .summary > .price {
  font-size:1.05rem;
  color:#77684e;
  font-weight:600;
}
body.single-product div.product .summary .single_variation .woocommerce-variation-price {
  margin:.9rem 0 1.1rem;
  font-size:1.45rem;
  font-weight:800;
  color:#8b7418;
}


/* BeautyTech-first hero and removable 2026 seasonal campaign. */
.tbj-hero-copy .tbj-eyebrow{letter-spacing:.12em}
.tbj-holiday{background:linear-gradient(125deg,#261b20 0%,#51313a 58%,#302426 100%);color:#fff7eb}
.tbj-holiday-inner{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,4rem);align-items:center}
.tbj-holiday .tbj-eyebrow{color:#f0d5a0}
.tbj-holiday h2{color:#fff7eb;font-size:clamp(2rem,4vw,3.3rem);line-height:1.15;max-width:17ch}
.tbj-holiday p{max-width:62ch;line-height:1.65}
.tbj-holiday-tagline{font-weight:700;color:#f4dbad}
.tbj-holiday .tbj-button{background:#e9c985;color:#22171b}
.tbj-holiday .tbj-text-link{color:#fff7eb;text-decoration:underline;text-underline-offset:.2em}
.tbj-holiday .tbj-button:focus-visible,.tbj-holiday .tbj-text-link:focus-visible{outline:3px solid #fff;outline-offset:4px}
.tbj-holiday-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.tbj-holiday-products img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.18);border-radius:1rem}
@media(max-width:760px){.tbj-holiday-inner{grid-template-columns:1fr}.tbj-holiday h2{max-width:none}.tbj-holiday-products{max-width:480px}}

/* Cart entry remains visible while staging search indexing is disabled. */
.tbj-cart-link{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-width:44px;min-height:44px;color:var(--tbj-ink);text-decoration:none}
.tbj-cart-link:hover,.tbj-cart-link:focus-visible{text-decoration:underline}
.tbj-cart-count{font-size:.78rem;font-weight:700;min-width:1.2rem;text-align:center}

/* Compact WooCommerce cart: scoped to the cart page only. No checkout logic changes. */
body.woocommerce-cart .tbj-page-hero{padding-block:clamp(1.4rem,2.8vw,2.5rem)}
body.woocommerce-cart .tbj-page-title{font-size:clamp(2.2rem,4vw,3.6rem);margin:.2rem 0}
body.woocommerce-cart .tbj-page-hero .tbj-eyebrow{margin:0}
body.woocommerce-cart .tbj-page-layout{padding-block:clamp(1rem,2.5vw,2rem)}
body.woocommerce-cart .tbj-page-content{max-width:1000px;line-height:1.55}
body.woocommerce-cart .wp-block-woocommerce-cart{margin-block:0}
body.woocommerce-cart .wc-block-cart{margin-block:0}
body.woocommerce-cart .wc-block-cart__main{margin-top:0}
body.woocommerce-cart .wc-block-cart-items{margin-top:0}
body.woocommerce-cart .wc-block-cart-items__row{padding-block:1rem}
body.woocommerce-cart .wc-block-cart-item__image img{border-radius:9px}
body.woocommerce-cart .wc-block-components-product-name{font-weight:650}
body.woocommerce-cart .wc-block-cart__submit-button{min-height:48px;border-radius:8px;background:var(--tbj-deep);color:#fff}
body.woocommerce-cart .wc-block-cart__submit-button:hover{filter:brightness(.92)}
@media(max-width:700px){
  body.woocommerce-cart .tbj-page-hero{padding-block:1.15rem}
  body.woocommerce-cart .tbj-page-layout{padding-block:1rem}
  body.woocommerce-cart .wc-block-cart-items__row{padding-block:.75rem}
}
/* Premium design foundation, iteration 1: preserve TBJ's approved imagery and brand. */
:root{--tbj-luxe-ink:#24271f;--tbj-luxe-cream:#f8f5ee;--tbj-luxe-line:#ded8c9;--tbj-luxe-gold:#8b7045}
body{color:var(--tbj-luxe-ink);-webkit-font-smoothing:antialiased}
.site-header{border-bottom:1px solid var(--tbj-luxe-line)}
.site-nav a{font-weight:550;letter-spacing:.015em;transition:color .2s ease}
.site-nav a:hover{color:var(--tbj-luxe-gold)}
.tbj-eyebrow{letter-spacing:.16em;font-weight:700}
.tbj-hero h1{letter-spacing:-.048em;text-wrap:balance}
.tbj-hero-copy>p:not(.tbj-eyebrow){max-width:53ch}
.tbj-section h2,.tbj-wellness h2,.tbj-story h2{text-wrap:balance;letter-spacing:-.035em}
.tbj-product-card{transition:transform .22s ease,box-shadow .22s ease}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.tbj-product-card:hover{transform:translateY(-3px)}}
.tbj-product-card a:focus-visible,.tbj-button:focus-visible{outline:3px solid var(--tbj-luxe-gold);outline-offset:4px}
@media(prefers-reduced-motion:reduce){.tbj-product-card,.site-nav a{transition:none}}


/* Concept 6: AI Experience-First skin. Presentation only; no product or editor data changes. */
:root{--tbj-ai-night:#151512;--tbj-ai-charcoal:#25211f;--tbj-ai-cream:#f7f0e6;--tbj-ai-gold:#d6b56b;--tbj-ai-forest:#233e31}
body{background:#fcf9f3}
.site-header{background:#fbf8f2;border-bottom:1px solid #e6dece}
.site-header .tbj-wrap{min-height:76px}
.site-nav a{font-size:.84rem;font-weight:600;letter-spacing:.035em}
.tbj-ai-hero{background:radial-gradient(ellipse at 77% 30%,#3b302b 0%,#221b1b 43%,#161414 100%);color:#f8f2e7;position:relative;isolation:isolate}
.tbj-ai-hero:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.25;background:radial-gradient(circle at 25% 80%,#735837,transparent 46%)}
.tbj-ai-hero .tbj-hero-grid{width:min(1300px,calc(100% - 3rem));grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(2rem,5vw,6rem);min-height:680px;padding-block:5rem 5.5rem;position:relative}
.tbj-ai-hero .tbj-hero-copy{max-width:640px}
.tbj-ai-hero .tbj-ai-kicker{font-size:.73rem;letter-spacing:.2em;font-weight:750;color:var(--tbj-ai-gold);margin:0 0 1.4rem}
.tbj-ai-kicker span{padding-inline:.6rem;color:#9f937f}
.tbj-ai-hero .tbj-eyebrow{color:#c9bd9f;font-size:.72rem}
.tbj-ai-hero h1{font-size:clamp(3.15rem,5.5vw,6rem);line-height:1.04;letter-spacing:-.055em;margin:.5rem 0 1.7rem;font-weight:500}
.tbj-ai-hero .tbj-hero-copy>p:not(.tbj-eyebrow):not(.tbj-ai-kicker){color:#e5dbd1;line-height:1.75;font-size:1.09rem;max-width:52ch}
.tbj-ai-hero .tbj-button,.tbj-ai-experience .tbj-button{background:var(--tbj-ai-gold);color:#1e1a16;border-radius:6px;box-shadow:0 9px 22px #0002}
.tbj-ai-hero .tbj-button:hover,.tbj-ai-experience .tbj-button:hover{background:#efcf87}
.tbj-ai-hero .tbj-text-link{color:#f8f1e4}
.tbj-ai-points{display:flex;flex-wrap:wrap;gap:1.4rem;margin-top:3.2rem;padding-top:1.4rem;border-top:1px solid #ffffff3b}
.tbj-ai-points span{font-size:.72rem;letter-spacing:.08em;color:var(--tbj-ai-gold)}
.tbj-ai-points strong{font-size:.85rem;color:#fff;font-weight:500;margin-left:.35rem;letter-spacing:0}
.tbj-ai-hero-art{min-height:490px}
.tbj-ai-hero-art:before{content:"";position:absolute;inset:7% 5%;border:1px solid #d6b56b55;border-radius:45% 45% 18% 18%;pointer-events:none}
.tbj-ai-hero .tbj-hero-photo{width:88%;height:510px;object-fit:cover;border-radius:44% 44% 10px 10px;box-shadow:0 30px 90px #0007}
.tbj-ai-hero .tbj-hero-product-gallery{max-width:560px;transform:none;gap:.9rem}
.tbj-ai-hero .tbj-hero-product-photo{height:230px;background:#f5ede1;border-radius:10px;border:1px solid #c4ab7d77;box-shadow:0 12px 30px #0006}
.tbj-ai-hero .tbj-hero-product-photo:nth-child(even){transform:translateY(1.1rem)}
.tbj-ai-hero .tbj-hero-fallback{background:#332a24;color:#f7ecd9;border-color:#796449}
.tbj-trust-strip{background:#d6b56b;color:#221b17}
.tbj-trust-strip .tbj-wrap{justify-content:center;gap:1.4rem 4rem;font-size:.73rem;letter-spacing:.11em}
.tbj-ai-experience{background:#f8f1e8;padding:clamp(4rem,8vw,8rem) 0;overflow:hidden}
.tbj-ai-experience-grid{width:min(1200px,calc(100% - 3rem));display:grid;grid-template-columns:1fr .9fr;gap:clamp(3rem,7vw,7rem);align-items:center}
.tbj-ai-experience h2{font:500 clamp(2.6rem,4.7vw,4.7rem)/1.08 Georgia,serif;letter-spacing:-.045em;margin:.8rem 0 1.4rem;color:#28211b}
.tbj-ai-experience-copy>p:not(.tbj-eyebrow){font-size:1.06rem;line-height:1.8;max-width:54ch}
.tbj-ai-feature-list{margin:2rem 0 2.5rem;border-top:1px solid #d7cbbc}
.tbj-ai-feature-list>div{display:grid;grid-template-columns:2.5rem 1fr;gap:1rem;padding:1.2rem 0;border-bottom:1px solid #d7cbbc}
.tbj-ai-feature-list>div>span{font-size:.78rem;font-weight:700;color:#886e41;padding-top:.35rem}
.tbj-ai-feature-list h3{font:500 1.28rem Georgia,serif;margin:0 0 .35rem}
.tbj-ai-feature-list p{font-size:.92rem;line-height:1.55;margin:0;color:#60584d}
.tbj-ai-device-stage{min-height:550px;background:radial-gradient(circle at 50% 44%,#4c433d,#211d1c 67%);border-radius:24px;display:grid;place-items:center;padding:2rem;box-shadow:0 28px 65px #4a352326}
.tbj-ai-actual-screen{display:block;width:auto;max-width:100%;height:auto;max-height:530px;object-fit:contain;border-radius:18px;box-shadow:0 20px 45px #0007}
.tbj-ai-device-placeholder{width:min(290px,100%);min-height:480px;border:9px solid #090909;border-radius:40px;background:linear-gradient(145deg,#2d2825,#141414);color:#f8eee1;padding:4rem 1.3rem 2rem;text-align:center;box-shadow:0 24px 45px #0008;display:flex;flex-direction:column;justify-content:center;gap:1.4rem}
.tbj-ai-device-brand{font-size:.7rem;letter-spacing:.23em;color:var(--tbj-ai-gold)}
.tbj-ai-device-placeholder strong{font:500 2.2rem/1.1 Georgia,serif}
.tbj-ai-device-placeholder p{color:#d7c2a4}
.tbj-ai-screen-note{font-size:.7rem;line-height:1.5;color:#b9aa97}
.tbj-section h2,.tbj-wellness h2{letter-spacing:-.045em}
.tbj-benefits article{background:#f6f0e5;border:1px solid #e8ddca;border-radius:4px}
.tbj-collection{background:#f1eae0}
.tbj-product-card{border-radius:5px;box-shadow:none;border:1px solid #e3d8c6}
.tbj-product-image{background:#f8f3e9}
.tbj-product-info{background:#fffdf8}
.tbj-wellness{background:#1c2923}
.tbj-wellness-panel{border-radius:6px}
@media(max-width:900px){.tbj-ai-hero .tbj-hero-grid{grid-template-columns:1fr 1fr;gap:1.5rem}.tbj-ai-hero h1{font-size:clamp(2.7rem,5.2vw,4rem)}.tbj-ai-experience-grid{gap:2rem}.tbj-ai-device-stage{min-height:460px}}
@media(max-width:700px){.tbj-ai-hero .tbj-hero-grid,.tbj-ai-experience-grid{grid-template-columns:1fr}.tbj-ai-hero .tbj-hero-grid{padding-block:3rem;min-height:0;width:min(100% - 2rem,550px)}.tbj-ai-hero h1{font-size:clamp(2.8rem,11vw,4.5rem)}.tbj-ai-hero-art{min-height:280px}.tbj-ai-hero .tbj-hero-photo{height:320px}.tbj-ai-hero .tbj-hero-product-photo{height:160px}.tbj-ai-points{gap:.7rem 1.2rem;margin-top:2rem}.tbj-ai-experience{padding-block:3.5rem}.tbj-ai-experience-grid{width:min(100% - 2rem,550px)}.tbj-ai-device-stage{min-height:430px;padding:1rem}.tbj-ai-device-placeholder{min-height:400px}.tbj-trust-strip .tbj-wrap{gap:.5rem 1.5rem}}
@media(prefers-reduced-motion:reduce){.tbj-ai-hero .tbj-button,.tbj-ai-experience .tbj-button{transition:none}}

/* Seasonal hero v0.9: stable two-column composition, no collage or stretched images. */
.tbj-ai-hero .tbj-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(2rem,5vw,5rem);min-height:570px;padding-block:clamp(3rem,6vw,5.5rem)}
.tbj-ai-hero .tbj-hero-copy{grid-column:1;grid-row:1;position:relative;z-index:1}
.tbj-ai-hero .tbj-ai-hero-art{grid-column:2;grid-row:1;min-width:0;min-height:400px;display:flex;align-items:center;justify-content:center}
.tbj-ai-hero .tbj-ai-hero-art:before{inset:4%;border-radius:24px}
.tbj-ai-hero .tbj-hero-featured-image{display:block;max-width:min(100%,490px);max-height:510px;width:auto;height:auto;object-fit:contain;border-radius:18px;box-shadow:0 22px 65px #0007}
.tbj-ai-hero .tbj-hero-photo{display:block;width:100%;max-width:490px;height:auto;max-height:510px;object-fit:contain;border-radius:18px}
.tbj-ai-hero .tbj-ai-points{margin-top:2.4rem}
.tbj-ai-hero .tbj-hero-description{max-width:52ch}
.tbj-hero-variant-thanksgiving{background:radial-gradient(ellipse at 75% 35%,#795037,#34231e 55%,#211a18 100%)}
.tbj-hero-variant-thanksgiving .tbj-ai-kicker,.tbj-hero-variant-thanksgiving .tbj-ai-points span{color:#eac68a}
.tbj-hero-variant-christmas{background:radial-gradient(ellipse at 80% 35%,#325145,#132b27 57%,#101d1b 100%)}
.tbj-hero-variant-christmas:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.22;background-image:radial-gradient(circle,#fff6d8 1px,transparent 2px);background-size:83px 83px}
.tbj-hero-variant-christmas .tbj-ai-kicker,.tbj-hero-variant-christmas .tbj-ai-points span{color:#ead59b}
.tbj-hero-variant-christmas .tbj-button{background:#ead59b;color:#17251d}
@media(max-width:700px){
 .tbj-ai-hero .tbj-hero-grid{grid-template-columns:minmax(0,1fr);min-height:0;padding-block:3rem;gap:2rem}
 .tbj-ai-hero .tbj-hero-copy{grid-column:1;grid-row:1}
 .tbj-ai-hero .tbj-ai-hero-art{grid-column:1;grid-row:2;min-height:220px}
 .tbj-ai-hero .tbj-hero-featured-image,.tbj-ai-hero .tbj-hero-photo{max-height:330px;max-width:100%}
}

/* Brand-aligned hero: warm ivory, champagne gold and subtle botanical neutrals. */
.tbj-ai-hero.tbj-hero-variant-evergreen{background:radial-gradient(ellipse at 80% 35%,#f4e7d1 0%,#faf5eb 48%,#f5eee3 100%);color:#29251f}
.tbj-hero-variant-evergreen:before{opacity:.3;background:radial-gradient(circle at 25% 85%,#e5c992,transparent 45%)}
.tbj-hero-variant-evergreen .tbj-ai-kicker{color:#8a6331}
.tbj-hero-variant-evergreen .tbj-ai-kicker span{color:#a18b69}
.tbj-hero-variant-evergreen .tbj-eyebrow{color:#76603c}
.tbj-hero-variant-evergreen h1{color:#29251f}
.tbj-hero-variant-evergreen .tbj-hero-copy>p:not(.tbj-eyebrow):not(.tbj-ai-kicker){color:#50463c}
.tbj-hero-variant-evergreen .tbj-button{background:#d5b06a;color:#211b14;box-shadow:0 8px 22px #8b704522}
.tbj-hero-variant-evergreen .tbj-button:hover{background:#c8a05b}
.tbj-hero-variant-evergreen .tbj-text-link{color:#493a29}
.tbj-hero-variant-evergreen .tbj-ai-points{border-top-color:#cdbd9f}
.tbj-hero-variant-evergreen .tbj-ai-points span{color:#88653b}
.tbj-hero-variant-evergreen .tbj-ai-points strong{color:#342b23}
.tbj-hero-variant-evergreen .tbj-ai-hero-art:before{border-color:#bd9c6555}
.tbj-hero-variant-evergreen .tbj-hero-featured-image{box-shadow:0 22px 60px #58452b30}

/* Dedicated Nov 5-26 shopping hero, visually based on the approved holiday panel. */
.tbj-hero-variant-shopping{background:#452d35;color:#fff8ef}
.tbj-hero-variant-shopping:before{display:none}
.tbj-hero-variant-shopping .tbj-ai-kicker{color:#edcb83}
.tbj-hero-variant-shopping .tbj-eyebrow{color:#edcb83}
.tbj-hero-variant-shopping .tbj-hero-grid{min-height:530px}
.tbj-hero-variant-shopping h1{font-size:clamp(2.6rem,4.2vw,4.7rem);line-height:1.1}
.tbj-hero-variant-shopping .tbj-hero-description{color:#fff8ef}
.tbj-hero-variant-shopping .tbj-ai-points{display:none}
.tbj-hero-variant-shopping .tbj-button{border-radius:100px;background:#edcb83;color:#241b17}
.tbj-hero-variant-shopping .tbj-text-link{color:#fff8ef}
.tbj-hero-variant-shopping .tbj-ai-hero-art:before{display:none}
.tbj-shopping-gallery{width:100%;max-width:490px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:stretch}
.tbj-shopping-gallery img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#f6ecdb;border-radius:14px}
@media(max-width:700px){.tbj-shopping-gallery{max-width:420px;margin-inline:auto;gap:10px}.tbj-hero-variant-shopping h1{font-size:clamp(2.4rem,9vw,3.8rem)}}


/* Hero QA: sticky site navigation, compact hero and immediately adjacent trust strip. */
.site-header{position:sticky;top:0;z-index:1000;background:#fbf8f2}
body.admin-bar .site-header{top:32px}
@media(max-width:782px){body.admin-bar .site-header{top:46px}}
html{scroll-padding-top:110px}
.tbj-ai-hero .tbj-hero-grid{min-height:0;padding-block:clamp(1.5rem,3vw,2.75rem);gap:clamp(1rem,3vw,3rem)}
.tbj-ai-hero h1{font-size:clamp(2.7rem,4.6vw,4.7rem);margin:.3rem 0 1rem}
.tbj-ai-hero .tbj-ai-kicker{margin-bottom:.7rem;font-size:clamp(.75rem,1vw,.92rem)}
.tbj-ai-hero .tbj-hero-description{line-height:1.55;margin-bottom:1rem}
.tbj-ai-hero .tbj-ai-points{margin-top:1.2rem;padding-top:1rem;gap:1rem 1.5rem}
.tbj-ai-hero .tbj-ai-points span{font-size:1.05rem;font-weight:650;letter-spacing:0}
.tbj-ai-hero .tbj-ai-points strong{font-size:1.12rem;font-weight:700}
.tbj-ai-hero .tbj-ai-hero-art{min-height:0}
.tbj-ai-hero .tbj-ai-hero-art:before{display:none}
.tbj-ai-hero .tbj-shopping-gallery{max-width:560px;gap:clamp(.45rem,1.2vw,.85rem)}
.tbj-hero-oil-card{margin:0;min-width:0;border:1px solid #d7c5a7;border-radius:12px;overflow:hidden;background:#fffaf1;box-shadow:0 7px 18px #30241a16}
.tbj-hero-oil-card img{display:block;width:100%;height:clamp(110px,12vw,175px);aspect-ratio:auto;object-fit:contain;background:#fffaf1;border-radius:0}
.tbj-hero-oil-card figcaption{padding:.35rem .4rem;text-align:center;font-size:.78rem;font-weight:700;color:#352a1f}
.tbj-hero-oil-placeholder{height:clamp(110px,12vw,175px);display:grid;place-items:center;padding:1rem;text-align:center;color:#7e6948;font-size:.76rem;letter-spacing:.08em}
.tbj-hero-variant-shopping .tbj-hero-oil-card{border-color:#b8926c;background:#f9eedf}
.tbj-hero-variant-christmas .tbj-hero-oil-card{border-color:#c8ad7b}
.tbj-ai-hero .tbj-trust-strip{position:relative;z-index:1}
.tbj-ai-hero .tbj-trust-strip .tbj-wrap{min-height:52px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;padding-block:.55rem}
#tbj-consent-settings{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid #9a8154;background:#fffaf0;color:#29241e;box-shadow:0 3px 12px #0002;cursor:pointer}
#tbj-consent-settings svg{width:22px;height:22px}
@media(max-width:700px){
 .site-header{top:0}
 .tbj-ai-hero .tbj-hero-grid{padding-block:1.7rem;gap:1.2rem}
 .tbj-ai-hero h1{font-size:clamp(2.35rem,9vw,3.4rem)}
 .tbj-ai-hero .tbj-ai-points span{font-size:.93rem}
 .tbj-ai-hero .tbj-ai-points strong{font-size:1rem}
 .tbj-hero-oil-card img,.tbj-hero-oil-placeholder{height:clamp(125px,35vw,190px)}
 .tbj-ai-hero .tbj-trust-strip .tbj-wrap{gap:.5rem 1rem}
}


/* QA follow-up: remove decorative outline crossing product images and captions. */
.tbj-ai-hero .tbj-ai-hero-art,
.tbj-ai-hero .tbj-shopping-gallery{border:0;outline:0;box-shadow:none}
.tbj-ai-hero .tbj-ai-hero-art::before,
.tbj-ai-hero .tbj-ai-hero-art::after,
.tbj-ai-hero .tbj-shopping-gallery::before,
.tbj-ai-hero .tbj-shopping-gallery::after{content:none!important;display:none!important}
.tbj-ai-hero .tbj-hero-oil-card{position:relative;overflow:hidden}
.tbj-ai-hero .tbj-hero-oil-card figcaption{position:relative;z-index:1}
.tbj-ai-hero .tbj-ai-points{display:flex;align-items:center;gap:clamp(.65rem,1.7vw,1.6rem)}
.tbj-ai-hero .tbj-ai-points span{font-size:1rem;letter-spacing:0;white-space:nowrap}
.tbj-ai-hero .tbj-ai-points strong{font-size:1rem;font-weight:700;letter-spacing:0}
.tbj-ai-hero .tbj-ai-points strong span{font-size:1rem;margin-left:.25rem}
@media(max-width:700px){
 .tbj-ai-hero .tbj-ai-points{gap:.6rem 1rem}
 .tbj-ai-hero .tbj-ai-points span,.tbj-ai-hero .tbj-ai-points strong{font-size:1rem}
}

/* Product gallery: image fills each card edge-to-edge; caption remains below. */
.tbj-ai-hero .tbj-shopping-gallery .tbj-hero-oil-card img{display:block;width:100%;height:clamp(125px,12vw,190px);max-width:none;margin:0;padding:0;object-fit:cover;object-position:center;background:transparent;border:0;border-radius:0}
.tbj-ai-hero .tbj-shopping-gallery .tbj-hero-oil-card figcaption{margin:0;padding:.4rem .5rem;background:#fffaf1}
@media(max-width:700px){.tbj-ai-hero .tbj-shopping-gallery .tbj-hero-oil-card img{height:clamp(130px,36vw,210px)}}

/* App preview: compact champagne-gold frame lets the dark mobile UI stand out. */
.tbj-ai-experience .tbj-ai-device-stage{width:min(100%,390px);min-height:0;justify-self:center;margin-inline:auto;padding:clamp(.85rem,2vw,1.3rem);background:linear-gradient(145deg,#f6e9cf 0%,#e6cda0 100%);border:1px solid #caa86a;border-radius:24px;box-shadow:0 18px 45px #58452b25}
.tbj-ai-experience .tbj-ai-device-stage .tbj-ai-actual-screen{display:block;width:auto;max-width:100%;height:auto;max-height:510px;object-fit:contain;border:5px solid #211d1c;border-radius:25px;box-shadow:0 14px 32px #32271d40}
@media(max-width:700px){.tbj-ai-experience .tbj-ai-device-stage{width:min(100%,340px);padding:.8rem}.tbj-ai-experience .tbj-ai-device-stage .tbj-ai-actual-screen{max-height:480px}}

/* Keep complete promotional artwork visible: edge-to-edge width without cropping headlines. */
.tbj-ai-hero .tbj-shopping-gallery .tbj-hero-oil-card img{display:block;width:100%;height:auto;aspect-ratio:16/9;max-width:100%;object-fit:contain;object-position:center;margin:0;padding:0;background:#f6ecdb;border:0;border-radius:0}
@media(max-width:700px){.tbj-ai-hero .tbj-shopping-gallery .tbj-hero-oil-card img{height:auto;aspect-ratio:16/9}}

/* Customer reviews: warm ivory, restrained gold, accessible form and cards. */
.tbj-reviews-main{background:#fbf7ef;color:#28231d;padding-bottom:5rem}
.tbj-reviews-hero{background:linear-gradient(120deg,#f6ead3,#fcf8f0);padding:clamp(3rem,6vw,6rem) 0;border-bottom:1px solid #e1cfaa}
.tbj-reviews-hero h1{font-family:Georgia,serif;font-size:clamp(2.4rem,5vw,4.5rem);line-height:1.1;margin:.5rem 0 1rem}
.tbj-reviews-hero p:last-child{max-width:680px;line-height:1.7}
.tbj-reviews-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr);gap:clamp(2rem,4vw,4rem);padding-top:3rem;align-items:start}
.tbj-reviews-layout h2{font-family:Georgia,serif;font-size:clamp(1.6rem,3vw,2.3rem);margin:0 0 1.25rem}
.tbj-rating-summary{display:flex;flex-wrap:wrap;gap:.65rem 1rem;align-items:center;margin:0 0 1.5rem;padding:1rem 1.3rem;border:1px solid #d6b873;border-radius:12px;background:#fffaf0}
.tbj-rating-summary strong{font-size:1.5rem}.tbj-rating-summary span,.tbj-review-stars{color:#a87824;letter-spacing:.1em;font-size:1.25rem}
.tbj-rating-summary small{color:#5b5145}
.tbj-reviews-grid{display:grid;gap:1rem}
.tbj-review-card{background:#fffdf8;border:1px solid #e4d4b8;border-radius:16px;padding:1.5rem;box-shadow:0 8px 25px #5c452014}
.tbj-review-card blockquote{margin:1rem 0;line-height:1.7;overflow-wrap:anywhere}
.tbj-review-card footer{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;color:#615448;font-size:.9rem}
.tbj-review-form-panel{background:#fffdf8;border:1px solid #d7bc85;border-radius:18px;padding:clamp(1.25rem,3vw,2rem);box-shadow:0 14px 32px #6b4d1d18}
.tbj-review-form-panel label,.tbj-review-form-panel legend{display:block;font-weight:600;margin-bottom:.45rem}
.tbj-review-form-panel input[type=text],.tbj-review-form-panel input[type=email],.tbj-review-form-panel textarea{width:100%;max-width:100%;border:1px solid #cbbd9f;border-radius:8px;padding:.8rem;background:#fff;color:#26221c;font:inherit}
.tbj-review-form-panel input:focus-visible,.tbj-review-form-panel textarea:focus-visible{outline:3px solid #caa45a;outline-offset:2px}
.tbj-rating-input{border:0;padding:0;margin:1.5rem 0}.tbj-rating-options{display:flex;flex-wrap:wrap;gap:.5rem}
.tbj-rating-options label{cursor:pointer;margin:0}.tbj-rating-options span{display:inline-block;padding:.55rem .65rem;border:1px solid #c8af7c;border-radius:8px;color:#725019}
.tbj-rating-options input:checked+span{background:#cba85f;color:#21190e;border-color:#94702f}
.tbj-rating-options input:focus-visible+span{outline:3px solid #75521c;outline-offset:2px}
.tbj-review-honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.tbj-review-privacy{font-size:.9rem;color:#605345}.tbj-review-form-panel .form-submit{margin-top:1rem}
@media(max-width:850px){.tbj-reviews-layout{grid-template-columns:1fr}.tbj-review-form-panel{order:-1}}


/* Reviews experience: refined responsive ivory-and-gold cards and form. */
.tbj-reviews-main{background:#faf7f0;color:#24211d;min-height:75vh;padding-bottom:5rem}
.tbj-reviews-hero{background:linear-gradient(135deg,#f7efdf,#fffdf9);padding:4rem 0 3rem;border-bottom:1px solid #e6d7b6}
.tbj-reviews-hero h1{font-size:clamp(2.3rem,4.5vw,4.3rem);line-height:1.12;letter-spacing:-.035em;max-width:850px}
.tbj-reviews-hero p{max-width:760px;line-height:1.7}
.tbj-reviews-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.85fr);gap:clamp(2rem,5vw,5rem);padding-top:3.5rem;align-items:start}
.tbj-approved-reviews h2,.tbj-review-form-panel h2{font-size:clamp(1.6rem,2.5vw,2.25rem);margin:0 0 1rem}
.tbj-review-section-intro{color:#5f594e;line-height:1.65;margin-bottom:2rem}
.tbj-review-form-panel{background:#fff;border:1px solid #e5d8bf;border-radius:18px;box-shadow:0 12px 38px #6c54200d;padding:clamp(1.25rem,3vw,2.5rem)}
.tbj-review-form-panel .tbj-eyebrow{color:#9c792f;letter-spacing:.16em;font-size:.75rem;font-weight:700}
.tbj-review-form-panel p{line-height:1.55}
.tbj-review-form-panel .comment-form{display:flex;flex-direction:column;gap:1.15rem}
.tbj-review-form-panel .comment-form p{margin:0}
.tbj-review-form-panel label{display:block;font-weight:600;font-size:.92rem;margin-bottom:.4rem}
.tbj-review-form-panel input[type=text],.tbj-review-form-panel input[type=email],.tbj-review-form-panel textarea{width:100%;box-sizing:border-box;border:1px solid #cfc4af;background:#fffdfa;border-radius:9px;padding:.8rem 1rem;font:inherit;color:#24211d;min-height:46px}
.tbj-review-form-panel textarea{min-height:140px;resize:vertical}
.tbj-review-form-panel input:focus-visible,.tbj-review-form-panel textarea:focus-visible{outline:3px solid #c8a65e;outline-offset:2px}
.tbj-review-name-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.tbj-review-form-panel .tbj-rating-input{border:0;padding:0;margin:0}
.tbj-review-form-panel .tbj-rating-input legend{font-weight:700;margin-bottom:.8rem}
.tbj-review-form-panel .tbj-rating-options{display:flex;flex-wrap:wrap;gap:.5rem}
.tbj-review-form-panel .tbj-rating-options label{display:flex;align-items:center;flex-direction:column;gap:.2rem;cursor:pointer;background:#faf6ed;border:1px solid #e6d9bd;border-radius:10px;padding:.65rem .75rem;margin:0;min-width:60px}
.tbj-review-form-panel .tbj-rating-options label:has(input:checked){background:#f1e3bf;border-color:#ad8439;box-shadow:0 0 0 2px #ad843930}
.tbj-review-form-panel .tbj-rating-options input{accent-color:#9e782f}
.tbj-review-form-panel .tbj-rating-options span,.tbj-review-stars{color:#b88a32;letter-spacing:.02em}
.tbj-review-form-panel .tbj-rating-options small{color:#514737}
.tbj-review-form-panel .tbj-review-honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.tbj-review-form-panel .tbj-review-privacy{color:#6b6356;font-size:.85rem}
.tbj-review-form-panel .form-submit input{background:#28493a;color:white;border:1px solid #b99955;border-radius:100px;padding:.9rem 2.6rem;cursor:pointer;font-weight:700}
.tbj-review-form-panel .form-submit input:hover{background:#1b3529}
.tbj-reviews-grid{display:grid;gap:1.2rem}
.tbj-review-card{background:#fff;border:1px solid #e6d7b8;border-radius:15px;padding:1.6rem;box-shadow:0 6px 25px #4b3c1708}
.tbj-review-card blockquote{margin:1rem 0;color:#413b33;line-height:1.7}
.tbj-review-card footer{display:flex;justify-content:space-between;gap:1rem;align-items:center;border-top:1px solid #f0e8d9;padding-top:1rem}
.tbj-review-card time{color:#776c5d;font-size:.83rem}
.tbj-review-notice{background:#f5ead0;border:1px solid #b78c3e;border-left:5px solid #a67b2c;border-radius:12px;padding:1.1rem 1.3rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}
.tbj-review-notice p{margin:0!important}
.tbj-review-notice button{border:1px solid #886b34;border-radius:8px;padding:.5rem 1rem;background:white;cursor:pointer}
@media(max-width:900px){.tbj-reviews-layout{grid-template-columns:1fr}.tbj-review-form-panel{order:-1}}
@media(max-width:480px){.tbj-review-name-row{grid-template-columns:1fr}.tbj-review-form-panel .tbj-rating-options label{min-width:50px;padding:.5rem}.tbj-review-notice{align-items:flex-start;flex-direction:column}}

/* Floating community access, above the existing cookie preferences control. */
.tbj-community-float{position:fixed;right:12px;bottom:76px;z-index:99997;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:#294d3c;color:#fff;border:2px solid #c7a35d;box-shadow:0 4px 15px #0003;text-decoration:none;transition:transform .2s ease,background .2s ease}
.tbj-community-float:hover,.tbj-community-float:focus-visible{background:#1c382b;color:#fff;transform:translateY(-2px)}
.tbj-community-float:focus-visible{outline:3px solid #c7a35d;outline-offset:3px}
@media(max-width:600px){.tbj-community-float{bottom:76px;right:12px;width:44px;height:44px}}

/* Consent-first privacy preferences: elegant, accessible ivory-and-gold treatment. */
.tbj-consent-panel[hidden],.tbj-consent-settings[hidden]{display:none!important}
.tbj-consent-panel{position:fixed;bottom:0;left:0;right:0;z-index:99999;background:#fffdf8;color:#29261f;border-top:2px solid #b99650;box-shadow:0 -8px 35px #221a1024;padding:1.35rem clamp(1rem,4vw,3rem);font-family:inherit}
.tbj-consent-inner{max-width:1200px;margin:auto;display:flex;align-items:center;gap:1.3rem}
.tbj-consent-icon{flex:0 0 48px;height:48px;border-radius:50%;background:#f3e6c9;border:1px solid #d8bd83;display:grid;place-items:center;color:#96712b;font-size:1.5rem}
.tbj-consent-copy{flex:1;min-width:0}
.tbj-consent-copy h2{font-size:1.15rem;line-height:1.3;margin:0 0 .3rem;color:#29251c}
.tbj-consent-copy p{margin:0;font-size:.92rem;line-height:1.6;color:#625a4b}
.tbj-consent-actions{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}
.tbj-consent-actions button{cursor:pointer;border-radius:999px;padding:.8rem 1.2rem;font:inherit;font-size:.88rem;font-weight:700;min-height:44px;transition:background .2s ease}
#tbj-consent-accept{background:#294b3a;color:#fff;border:1px solid #294b3a}
#tbj-consent-decline{background:transparent;color:#403a30;border:1px solid #a89a80}
#tbj-consent-accept:hover{background:#1b3529}
#tbj-consent-decline:hover{background:#f1eadb}
.tbj-consent-actions button:focus-visible,.tbj-consent-settings:focus-visible{outline:3px solid #b99650;outline-offset:3px}
.tbj-consent-settings{position:fixed;bottom:12px;right:12px;z-index:99998;border:1px solid #b99650;border-radius:50%;width:48px;height:48px;background:#fffdf8;color:#294b3a;box-shadow:0 3px 12px #0002;cursor:pointer}
.tbj-consent-settings svg{width:24px;height:24px}
@media(max-width:750px){.tbj-consent-inner{align-items:flex-start;flex-wrap:wrap}.tbj-consent-icon{flex-basis:40px;height:40px}.tbj-consent-copy{flex-basis:calc(100% - 60px)}.tbj-consent-actions{width:100%}.tbj-consent-actions button{flex:1}}


/* Staging acceptance: keep full product artwork visible while filling card media area. */
.tbj-collection .tbj-product-image:has(.tbj-product-featured){display:flex;flex-direction:column;gap:0;overflow:hidden}
.tbj-collection .tbj-product-featured{width:100%;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;background:#f7f0e5;overflow:hidden}
.tbj-collection .tbj-product-featured img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.tbj-collection .tbj-product-thumbnails{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem;padding:.55rem;box-sizing:border-box;align-items:stretch}
.tbj-collection .tbj-product-thumbnails img{width:100%;height:100%;aspect-ratio:1/1;object-fit:contain;object-position:center;background:#fff;border:1px solid #e9dfcc}
.tbj-collection .tbj-product-card{display:flex;flex-direction:column}
.tbj-collection .tbj-product-info{flex:1}
.tbj-ai-hero .tbj-shopping-gallery .tbj-hero-oil-card img{height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;width:100%!important}
body.single-product #tab-reviews #reviews{background:#fffdf8;border:1px solid #e5d8bf;border-radius:16px;padding:clamp(1.2rem,3vw,2.6rem);box-shadow:0 12px 38px #6c54200d}
body.single-product #tab-reviews #reviews h2{font-size:clamp(1.4rem,2.4vw,2.1rem);color:#30271b}
body.single-product #tab-reviews #reviews .comment-form{display:grid;gap:1rem}
body.single-product #tab-reviews #reviews .comment-form p{margin:0}
body.single-product #tab-reviews #reviews .comment-form label{display:block;font-weight:600;margin-bottom:.4rem}
body.single-product #tab-reviews #reviews .comment-form input[type=text],body.single-product #tab-reviews #reviews .comment-form input[type=email],body.single-product #tab-reviews #reviews .comment-form textarea{width:100%;max-width:100%;box-sizing:border-box;padding:.85rem 1rem;border:1px solid #cfc4af;border-radius:9px;background:#fffdfa;font:inherit}
body.single-product #tab-reviews #reviews .comment-form textarea{min-height:135px}
body.single-product #tab-reviews #reviews .form-submit input{border:1px solid #b99955;border-radius:100px;background:#294b3a;color:#fff;padding:.9rem 2.5rem;cursor:pointer;font-weight:700}
body.single-product #tab-reviews #reviews .star-rating,body.single-product #tab-reviews #reviews p.stars a{color:#b88a32}
body.single-product #tab-reviews #reviews .commentlist li{border:1px solid #e9dcc3;background:white;border-radius:12px;padding:1rem;margin-bottom:1rem}
body.single-product #tab-reviews #reviews .comment-form-cookies-consent{display:none}


/* Product review identity fields follow the community review form layout. */
body.single-product #tab-reviews #reviews .tbj-review-name-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
body.single-product #tab-reviews #reviews .tbj-review-name-row p{min-width:0}
body.single-product #tab-reviews #reviews .tbj-review-privacy{color:#655c4e;font-size:.93rem;line-height:1.55}
@media(max-width:600px){body.single-product #tab-reviews #reviews .tbj-review-name-row{grid-template-columns:1fr}}

/* Shared editorial typography for published News articles. */
.tbj-news-single .entry-content{max-width:850px;margin-inline:auto;font-size:1.08rem;line-height:1.8;color:#302b24}
.tbj-news-single .entry-content p{margin:0 0 1.35em}
.tbj-news-single .entry-content .tbj-news-lead{font-size:clamp(1.2rem,2vw,1.45rem);line-height:1.65;color:#56452e}
.tbj-news-single .entry-content h2{font-family:Georgia,serif;font-size:clamp(1.5rem,2.5vw,2rem);line-height:1.3;margin:1.7em 0 .65em;color:#332a1f}
.tbj-news-single .entry-content img{max-width:100%;height:auto;border-radius:12px}
.tbj-news-single .entry-content figure{margin:1.5rem auto}
.tbj-news-single .entry-content a{overflow-wrap:anywhere;text-underline-offset:3px}
