/* Serum Oleum Limbic + Editorial Product Pages v0.8.0
   Goal: product page, not landing page.
   Palette: cool porcelain + serum oleum green. No yellow/taupe/brown cast. */
.sol-limbic-product,.sol-full-product{
  --sol-bg:#FDFDFC;
  --sol-bg-soft:#F7F8F6;
  --sol-bg-section:#F3F5F2;
  --sol-surface:#FFFFFF;
  --sol-gallery-bg:#F3F5F3;
  --sol-heading:#1D211E;
  --sol-text:#4B514C;
  --sol-muted:#777E78;
  --sol-green:#3F8052;
  --sol-green-dark:#316840;
  --sol-sage:#9CAF9F;
  --sol-border:rgba(29,33,30,.10);
  --sol-border-strong:rgba(29,33,30,.17);
  color:var(--sol-text);background:var(--sol-bg);
}
.sol-full-page-shell,.sol-full-product{width:100%;max-width:none!important;margin:0!important;padding:0!important}
body.sol-limbic-full-page,body.sol-limbic-full-page .website-wrapper,body.sol-limbic-full-page .main-page-wrapper,body.sol-limbic-full-page .site-content,body.sol-limbic-full-page #primary,.sol-full-page-shell{background:var(--sol-bg)!important}
body.sol-limbic-full-page .main-page-wrapper,body.sol-limbic-full-page .site-content{padding-top:0!important;margin-top:0!important}
.sol-full-product *{box-sizing:border-box}.sol-full-product img{max-width:100%;height:auto}.sol-full-product a:not(.button){color:inherit;text-underline-offset:3px}.sol-full-product a:not(.button):hover{color:var(--sol-green-dark)}

/* Native WooCommerce purchase controls */
.sol-full-product .single_add_to_cart_button.button,.sol-sticky-buy .button{min-height:47px!important;padding:0 27px!important;border-radius:0!important;background:var(--sol-green)!important;border:1px solid var(--sol-green)!important;color:#fff!important;box-shadow:none!important;font-weight:600!important;letter-spacing:.01em}
.sol-full-product .single_add_to_cart_button.button:hover,.sol-sticky-buy .button:hover{background:var(--sol-green-dark)!important;border-color:var(--sol-green-dark)!important}
.sol-full-product button:focus-visible,.sol-full-product a:focus-visible,.sol-accordion-item summary:focus-visible{outline:2px solid var(--sol-green);outline-offset:3px}
.sol-full-product form.cart input.qty,.sol-full-product form.cart select{background:#fff!important;border:1px solid var(--sol-border-strong)!important;border-radius:0!important;color:var(--sol-text)!important}

/* Product head – quiet premium commerce */
.sol-hero-section{max-width:1380px;margin:0 auto!important;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);background:var(--sol-surface);border-bottom:1px solid var(--sol-border)}
.sol-hero-media{min-width:0;background:var(--sol-gallery-bg)}
.sol-gallery{display:flex;flex-direction:column;height:100%}.sol-gallery-main{display:flex;align-items:center;justify-content:center;min-height:610px;overflow:hidden;background:var(--sol-gallery-bg)}.sol-gallery-main-image{width:100%;height:100%!important;min-height:610px;object-fit:cover;object-position:center}.sol-gallery-placeholder img{max-width:65%;min-height:0;height:auto!important;object-fit:contain}
.sol-gallery-thumbs{display:flex;gap:1px;padding:1px;background:var(--sol-border);border-top:1px solid var(--sol-border)}.sol-gallery-thumb{appearance:none;border:0!important;background:#fff!important;padding:0!important;margin:0!important;width:82px;height:82px;cursor:pointer;opacity:.64}.sol-gallery-thumb img{width:100%;height:100%!important;object-fit:cover}.sol-gallery-thumb.is-active{opacity:1;box-shadow:inset 0 -2px 0 var(--sol-green)}
.sol-hero-panel{display:flex;align-items:center;padding:clamp(46px,5vw,76px);background:var(--sol-surface)}.sol-hero{width:100%;max-width:540px;margin:0 auto}
.sol-eyebrow{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--sol-green);margin:0 0 12px;font-weight:600}.sol-display-name{font-size:clamp(36px,3.6vw,52px)!important;line-height:1.05!important;letter-spacing:-.032em!important;font-weight:400!important;color:var(--sol-heading)!important;margin:0 0 13px!important;text-transform:none!important}.sol-rating{display:inline-flex;align-items:center;gap:9px;margin:0 0 21px;text-decoration:none!important;font-size:12px;color:var(--sol-muted)!important}.sol-rating .star-rating{margin:0!important;font-size:13px!important;color:var(--sol-green)!important}.sol-limbic-product .star-rating span::before{color:var(--sol-green)!important}
.sol-product-strapline{font-size:clamp(18px,1.6vw,23px);line-height:1.3;color:var(--sol-heading);margin:0 0 15px}.sol-hero-copy{font-size:15px;line-height:1.68;color:var(--sol-text);max-width:50ch}.sol-hero-copy p:last-child{margin-bottom:0}
.sol-benefits{list-style:none!important;margin:20px 0!important;padding:0!important;display:grid;gap:7px}.sol-benefits li{display:flex;gap:9px;align-items:flex-start;margin:0!important;font-size:13px;line-height:1.45}.sol-benefits li span{color:var(--sol-green);font-size:11px;line-height:1.7}.sol-purchase{margin-top:22px;padding-top:21px;border-top:1px solid var(--sol-border)}.sol-purchase .price{font-size:20px!important;color:var(--sol-heading)!important;margin:0 0 15px!important}.sol-purchase form.cart{margin:0 0 8px!important}.sol-microcopy{font-size:11px;line-height:1.5;color:var(--sol-muted);margin:10px 0 0}

/* Premium accordions directly under the product head */
.sol-product-info{background:var(--sol-bg);border-bottom:1px solid var(--sol-border)}.sol-product-info-inner{max-width:1260px;margin:0 auto;padding:38px 28px 56px}.sol-accordion-list{width:min(620px,100%);border-top:1px solid var(--sol-border-strong)}
.sol-accordion-item{margin:0;border-bottom:1px solid var(--sol-border-strong);background:transparent}.sol-accordion-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 0;color:var(--sol-heading);font-size:13px;letter-spacing:.01em}.sol-accordion-item summary::-webkit-details-marker{display:none}.sol-accordion-plus{width:15px;height:15px;position:relative;flex:0 0 15px}.sol-accordion-plus:before,.sol-accordion-plus:after{content:"";position:absolute;background:var(--sol-heading);left:2px;right:2px;top:7px;height:1px;transition:transform .18s ease}.sol-accordion-plus:after{transform:rotate(90deg)}.sol-accordion-item[open] .sol-accordion-plus:after{transform:rotate(0)}
.sol-accordion-content{padding:2px 0 25px;max-width:56ch}.sol-info-prose,.sol-inci-text{font-size:14px;line-height:1.75;color:var(--sol-text)}.sol-info-prose p{margin:0 0 13px}.sol-inci-text{overflow-wrap:anywhere;margin:0!important}.sol-application-kicker{font-size:16px;color:var(--sol-heading);margin:0 0 17px}.sol-steps{list-style:none;counter-reset:solstep;margin:0!important;padding:0!important;border-top:1px solid var(--sol-border)}.sol-steps li{counter-increment:solstep;display:grid;grid-template-columns:40px 1fr;gap:14px;padding:14px 0;border-bottom:1px solid var(--sol-border);font-size:14px;line-height:1.55}.sol-steps li:before{content:"0" counter(solstep);font-size:9px;letter-spacing:.13em;color:var(--sol-sage);padding-top:4px}

/* One sensory image moment + one founder trust moment */
.sol-editorial-split{max-width:1380px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(340px,.82fr);min-height:520px;border-bottom:1px solid var(--sol-border);background:var(--sol-surface)}.sol-editorial-media{min-height:520px;background:var(--sol-gallery-bg);overflow:hidden}.sol-editorial-media img{display:block;width:100%;height:100%!important;min-height:520px;object-fit:cover;object-position:center}.sol-editorial-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(46px,5.8vw,84px);background:var(--sol-bg-soft)}.sol-editorial-copy h2{font-size:clamp(29px,3vw,42px);font-weight:400;line-height:1.12;letter-spacing:-.028em;color:var(--sol-heading);margin:0 0 19px}.sol-editorial-text{font-size:15px;line-height:1.72;max-width:46ch;color:var(--sol-text)}.sol-editorial-text p:last-child{margin-bottom:0}
.sol-founder{grid-template-columns:minmax(340px,.86fr) minmax(0,1.14fr)}.sol-founder .sol-editorial-copy{background:var(--sol-bg)}.sol-founder-quote{border:0!important;margin:0 0 21px!important;padding:0!important}.sol-founder-quote p{font-size:clamp(24px,2.6vw,38px);line-height:1.18;letter-spacing:-.026em;color:var(--sol-heading);margin:0!important}.sol-founder-signature{display:flex;flex-direction:column;margin:25px 0 0;font-size:12px;color:var(--sol-muted)}.sol-founder-signature strong{font-size:13px;color:var(--sol-green);font-weight:600;margin-bottom:2px}

/* Shared product sections */
.sol-section{width:100%;padding:clamp(54px,6vw,82px) max(24px,calc((100vw - 1320px)/2))}.sol-section-inner{max-width:1320px;margin:0 auto}.sol-section-heading{max-width:720px;margin:0 0 32px}.sol-section h2{font-size:clamp(29px,3vw,40px);line-height:1.13;letter-spacing:-.027em;font-weight:400;color:var(--sol-heading);margin:0}

/* Reason to believe */
.sol-ingredients{background:var(--sol-bg-section);border-bottom:1px solid var(--sol-border)}.sol-ingredient-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--sol-border);border:1px solid var(--sol-border)}.sol-ingredient-card{background:var(--sol-surface);min-width:0}.sol-ingredient-image{aspect-ratio:4/3;overflow:hidden;background:var(--sol-gallery-bg)}.sol-ingredient-image img{display:block;width:100%;height:100%!important;object-fit:cover}.sol-ingredient-body{padding:26px 27px 31px}.sol-index{display:block;font-size:9px;letter-spacing:.15em;color:var(--sol-sage);margin-bottom:24px}.sol-ingredient-card h3{font-size:clamp(20px,1.7vw,25px);font-weight:400;color:var(--sol-heading);margin:0 0 8px}.sol-ingredient-promise{font-size:12px;font-weight:600;color:var(--sol-green);margin:0 0 13px}.sol-ingredient-card .sol-ingredient-body>div{font-size:13px;line-height:1.65;color:var(--sol-muted)}.sol-ingredient-card .sol-ingredient-body>div p{margin:0}

/* Results only when evidence exists */
.sol-results{background:var(--sol-surface);border-bottom:1px solid var(--sol-border)}.sol-results-compact{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:clamp(50px,8vw,110px);align-items:start}.sol-results-list{border-top:1px solid var(--sol-border-strong)}.sol-result-item{display:grid;grid-template-columns:minmax(92px,.28fr) 1fr;gap:22px;padding:18px 0;border-bottom:1px solid var(--sol-border);align-items:start}.sol-result-item strong{font-size:clamp(25px,2.4vw,34px);font-weight:400;color:var(--sol-green);line-height:1.1}.sol-result-item p{margin:3px 0 0;font-size:14px;line-height:1.6;color:var(--sol-text)}

/* Social proof */
.sol-proof{background:var(--sol-bg-soft);border-bottom:1px solid var(--sol-border)}.sol-review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.sol-review-card{margin:0!important;padding:25px;background:#fff;border:1px solid var(--sol-border)!important;min-height:190px;display:flex;flex-direction:column;box-shadow:none}.sol-review-stars{font-size:12px;letter-spacing:.07em;margin-bottom:17px;color:var(--sol-green)}.sol-review-card p{font-size:14px;line-height:1.65;margin:0 0 18px!important;flex:1;color:var(--sol-text)}.sol-review-card footer{font-size:11px;color:var(--sol-muted)}.sol-text-link{display:inline-block;margin-top:18px;color:var(--sol-green)!important;text-decoration:underline;text-decoration-color:rgba(63,128,82,.32)}

/* Hand-picked routine */
.sol-recommendations{background:var(--sol-bg);border-top:1px solid var(--sol-border)}.sol-recommendation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--sol-border);border:1px solid var(--sol-border)}.sol-recommendation-card{background:#fff}.sol-recommendation-image{display:block;aspect-ratio:1/1;background:var(--sol-gallery-bg);overflow:hidden}.sol-recommendation-image img{display:block;width:100%;height:100%!important;object-fit:cover;transition:transform .3s ease}.sol-recommendation-card:hover .sol-recommendation-image img{transform:scale(1.012)}.sol-recommendation-body{padding:19px 19px 23px}.sol-recommendation-body h3{font-size:17px;line-height:1.25;font-weight:400;color:var(--sol-heading);margin:0 0 7px}.sol-recommendation-body h3 a{text-decoration:none}.sol-recommendation-price{font-size:13px;color:var(--sol-text)}.sol-recommendation-body .sol-text-link{margin-top:12px;font-size:12px}

/* Sticky mobile buy */
.sol-sticky-buy{position:fixed;z-index:9998;left:16px;right:16px;bottom:16px;background:rgba(253,253,252,.98);backdrop-filter:blur(12px);box-shadow:0 10px 32px rgba(29,33,30,.10);border:1px solid var(--sol-border);padding:10px 12px 10px 15px;display:none;align-items:center;justify-content:space-between;gap:12px;transform:translateY(140%);opacity:0;transition:.25s ease}.sol-sticky-buy.is-visible{transform:translateY(0);opacity:1}.sol-sticky-copy{display:flex;flex-direction:column;min-width:0}.sol-sticky-copy strong{font-size:13px;color:var(--sol-heading);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sol-sticky-copy span{font-size:12px;color:var(--sol-muted)}

@media(max-width:1000px){
  .sol-hero-section{grid-template-columns:1fr}.sol-gallery-main,.sol-gallery-main-image{min-height:520px}.sol-hero-panel{padding:46px 28px 56px}
  .sol-editorial-split,.sol-founder{grid-template-columns:1fr}.sol-editorial-media,.sol-editorial-media img{min-height:470px}.sol-editorial-copy{padding:48px 28px 54px}
  .sol-ingredient-grid,.sol-review-grid{grid-template-columns:1fr}.sol-results-compact{grid-template-columns:1fr;gap:25px}.sol-recommendation-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:768px){
  .sol-gallery-main,.sol-gallery-main-image{min-height:420px}.sol-gallery-thumb{width:70px;height:70px}.sol-product-info-inner{padding:28px 22px 42px}.sol-accordion-list{width:100%}
  .sol-editorial-media,.sol-editorial-media img{min-height:390px}.sol-section{padding-left:22px;padding-right:22px}.sol-recommendation-grid{grid-template-columns:1fr}.sol-result-item{grid-template-columns:82px 1fr}.sol-sticky-buy{display:flex}
}
@media(prefers-reduced-motion:reduce){.sol-sticky-buy,.sol-gallery-thumb,.sol-recommendation-image img,.sol-full-product .button,.sol-accordion-plus:after{transition:none!important}}
