/* A lighter product experience; commerce and Elementor content stay intact. */
body.single-product #main.ri-single-product{max-width:1240px;margin:auto;padding:40px 28px 72px!important;background:#fafaf8!important}
body.single-product #main h1,body.single-product #main h2,body.single-product #main h3{font-family:"Nunito Sans",Arial,sans-serif!important;letter-spacing:-.035em!important;color:#203f30!important}
body.single-product #main .elementor-top-section:first-child>.elementor-container{align-items:center;gap:40px}
body.single-product #main .elementor-top-section:first-child>.elementor-container>.elementor-column{width:calc(50% - 20px)}
body.single-product #main .elementor-widget-wrap{padding:0!important}
body.single-product #main .ri-elementor-product-image{height:540px;padding:28px;margin:0;background:#fff!important;border:1px solid #203f3012;border-radius:36px!important;box-shadow:0 16px 48px #203f3005;overflow:visible}
body.single-product #main .ri-elementor-product-image img{height:100%!important;width:100%!important;object-fit:contain!important;filter:drop-shadow(0 18px 12px #203f3014);transition:transform .4s ease}
body.single-product #main .ri-part-title h1{font-size:clamp(38px,4.5vw,64px)!important;font-weight:800!important;line-height:1.06!important;margin:0 0 10px!important}
body.single-product #main .ri-part-description{font-size:21px!important;line-height:1.5!important;color:#52665b}
body.single-product #main .ri-part-description p{margin:0!important}
body.single-product #main .summary .elementor-widget{margin-bottom:20px!important}
body.single-product #main .ri-part-price{margin:8px 0!important}
body.single-product #main .ri-part-price .price{color:#203f30!important;font-size:34px!important;font-weight:750;line-height:1.4}
body.single-product #main .ri-part-price .woocommerce-price-suffix{font-size:13px!important;font-weight:400;white-space:nowrap;color:#52665b}
body.single-product #main .ri-part-price .ri-uvp,body.single-product #main .ri-part-price .ri-unit-price{font-size:13px!important;font-weight:400!important;line-height:1.7;color:#52665b;margin-top:3px}
body.single-product #main .ri-part-cart form.cart{margin:0!important;padding:0!important}
body.single-product #main .variations{margin:0 0 22px!important;width:auto!important}
body.single-product #main .ri-size-options{padding:5px!important;gap:5px!important;background:#fff!important;border:1px solid #203f3020!important;border-radius:99px!important}
body.single-product #main .ri-size-options button{font-family:inherit!important;font-size:15px!important;font-weight:700!important;min-width:88px;min-height:44px;padding:10px 20px!important;border:0!important;border-radius:99px!important;background:transparent!important;color:#203f30!important}
body.single-product #main .ri-size-options button[aria-pressed="true"]{background:#cefa73!important}
body.single-product #main .woocommerce-variation-add-to-cart{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
body.single-product #main .ri-part-cart .quantity{float:none!important;margin:0!important}
body.single-product #main .quantity input.qty{height:54px!important;min-height:54px!important;width:76px!important;border:1px solid #203f3030!important;background:#fff!important;border-radius:16px!important;font-size:17px!important;color:#203f30!important}
body.single-product #main .single_add_to_cart_button{float:none!important;min-height:54px!important;padding:15px 28px!important;border:0!important;border-radius:16px!important;font-family:inherit!important;font-weight:800!important;font-size:16px!important;letter-spacing:0!important;box-shadow:none!important;transition:box-shadow .2s,transform .2s}
body.single-product #main .single_add_to_cart_button:hover{box-shadow:0 6px 20px #203f3015!important;transform:translateY(-2px)}
body.single-product #main button:focus-visible,body.single-product #main a:focus-visible{outline:2px solid #203f30!important;outline-offset:4px}
body.single-product #main .e5-product-story{margin:56px 0 40px!important;padding:32px!important;gap:40px;border:0!important;background:#fff!important;border-radius:32px!important;grid-template-columns:240px 1fr}
body.single-product #main .e5-product-story figure img{max-height:220px;object-fit:contain!important;border-radius:22px}
body.single-product #main .e5-product-story h2{font-size:clamp(27px,3vw,38px)!important;font-weight:750!important;line-height:1.17!important;margin:8px 0 16px!important}
body.single-product #main .e5-product-story a{border:0!important;border-radius:99px;background:#cefa73!important;padding:12px 20px!important;color:#203f30!important;font-weight:700}
body.single-product #main .ri-information-nav{margin:0 0 28px!important;gap:10px!important}
body.single-product #main .ri-information-nav a{border:1px solid #203f3025!important;border-radius:99px!important;background:#fff!important;padding:12px 24px!important;font-size:15px!important}
body.single-product #main .ri-information-v2 h2{font-size:clamp(27px,3vw,36px)!important;font-weight:800!important;line-height:1.2!important}
body.single-product #main .ri-information-v2 h3{font-size:22px!important;font-weight:750!important;line-height:1.35!important}
body.single-product #main .ri-composition{background:#fff!important;border:1px solid #203f3015!important;border-radius:28px!important;padding:32px!important;margin-bottom:48px!important}
body.single-product #main .ri-analytic-list{gap:0 28px!important}
body.single-product #main .ri-analytic-list li{padding:12px 0!important;border-bottom:1px solid #203f3012!important}
body.single-product #main .ri-why-use ul{list-style:none;padding:0!important;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px!important;max-width:none}
body.single-product #main .ri-why-use li{padding:22px!important;background:#fff;border:1px solid #203f3015;border-radius:20px;line-height:1.55;font-size:17px}
body.single-product #main .ri-why-use li::before{content:"✓";display:block;color:#203f30;background:#cefa73;width:30px;height:30px;border-radius:50%;text-align:center;line-height:30px;margin-bottom:14px;font-weight:800}
body.single-product #main .ri-application-band{background:#cefa73!important;color:#203f30!important;padding:32px!important;border-radius:28px!important;border:0!important}
body.single-product #main .ri-application-band :is(h2,strong,p,span){color:#203f30!important}
body.single-product #main .ri-dose-item{border-color:#203f3025!important}
body.single-product #main .ri-dose-item strong{font-family:"Nunito Sans",Arial,sans-serif!important;font-weight:800!important}
body.single-product #main .ri-light-note{background:#fff!important;border:1px solid #203f3015!important;border-radius:20px!important}
@media(max-width:767px){
 body.single-product #main.ri-single-product{padding:22px 18px 44px!important}
 body.single-product #main .elementor-top-section:first-child>.elementor-container{gap:28px;flex-wrap:wrap}
 body.single-product #main .elementor-top-section:first-child>.elementor-container>.elementor-column{width:100%!important}
 body.single-product #main .ri-elementor-product-image{height:350px;padding:20px;border-radius:28px!important}
 body.single-product #main .ri-part-title h1{font-size:40px!important}
 body.single-product #main .ri-part-description{font-size:18px!important}
 body.single-product #main .summary .elementor-widget{margin-bottom:16px!important}
 body.single-product #main .ri-part-price .price{font-size:30px!important}
 body.single-product #main .e5-product-story{grid-template-columns:1fr;padding:24px!important;gap:22px;margin-top:36px!important}
 body.single-product #main .e5-product-story figure img{max-height:180px}
 body.single-product #main .ri-composition,body.single-product #main .ri-application-band{padding:22px!important;border-radius:24px!important}
 body.single-product #main .ri-why-use ul{grid-template-columns:1fr}
 body.single-product #main .ri-why-use li{display:flex;gap:14px;align-items:flex-start;padding:18px!important}
 body.single-product #main .ri-why-use li::before{flex:0 0 30px;margin:0}
}
@media(prefers-reduced-motion:reduce){body.single-product #main *{transition:none!important}}

/* Application icons must contrast with the lime panel. */
body.single-product #main .ri-application-band .ri-fact-icon{display:block!important;background-color:#203f30!important;width:48px!important;height:48px!important;min-width:48px;flex-shrink:0;margin-bottom:18px!important}
@media(max-width:680px){body.single-product #main .ri-application-band .ri-fact-icon{width:40px!important;height:40px!important;min-width:40px;margin:0!important}}
