/* R9: responsive catalogue refinement. Existing CMS fields and photographs retained. */
:root{--r9-ink:#173d3c;--r9-green:#087f72}
html{scroll-padding-top:100px}
#main-header .header-language{flex-shrink:0}
:where(a,button,input,select,textarea):focus-visible{outline:3px solid #087f72;outline-offset:4px}
main{overflow-wrap:break-word}
.hero-section-wide .hero-overlay{background:linear-gradient(90deg,rgba(5,24,31,.80),rgba(5,24,31,.24))!important}
.ingredient-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px!important;align-items:start!important}
.ingredient-card{min-width:0;height:auto!important;transform:none!important;border-color:#dde6e1!important;box-shadow:none!important}
.ingredient-card .ingredient-sample{height:280px!important;aspect-ratio:auto!important;background:#eef1ed!important}
.ingredient-card .ingredient-sample>div:first-child{padding:20px!important;background:none!important}
.ingredient-card .ingredient-sample img{height:100%!important;max-height:240px!important;width:auto!important;max-width:100%!important;object-fit:contain!important;transform:none!important}
.ingredient-card .ingredient-sample>.pointer-events-none{display:none!important}
.ingredient-card .ingredient-title{min-height:0!important;margin-bottom:18px!important}
.ingredient-card .ingredient-title h3{font-size:25px!important;line-height:1.35!important;word-break:normal!important;overflow-wrap:anywhere!important}
.ingredient-card>.flex{padding:26px!important}
.ingredient-card .ingredient-summary{min-height:0!important;background:#f6f8f6!important}
.ingredient-card .ingredient-summary p{line-height:1.75!important}
.ingredient-card button,.ingredient-card a{white-space:normal;line-height:1.45;min-height:48px}
.ingredient-full-copy{padding:12px 0 20px}.ingredient-full-copy h4{font-size:15px;font-weight:700;color:#087f72;margin:18px 0 6px}.ingredient-full-copy p{white-space:normal;line-height:1.85}
@media(min-width:1100px){
 .ingredient-grid:has(>article:first-child:nth-last-child(3)){grid-template-columns:repeat(3,minmax(0,1fr))!important}
 .ingredient-grid:has(>article:first-child:nth-last-child(odd)):not(:has(>article:first-child:nth-last-child(3)))>article:last-child{grid-column:1/-1;display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr)}
 .ingredient-grid:has(>article:first-child:nth-last-child(odd)):not(:has(>article:first-child:nth-last-child(3)))>article:last-child .ingredient-sample{height:100%!important;min-height:300px}
 .ingredient-grid:has(>article:first-child:nth-last-child(odd)):not(:has(>article:first-child:nth-last-child(3)))>article:last-child .ingredient-sample img{max-height:330px!important}
}
.r9-product-dialog{border:0;padding:0;border-radius:4px;width:min(920px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 32px);color:#173d3c;background:white;box-shadow:0 24px 100px #061d2950;overflow:auto}
.r9-product-dialog::backdrop{background:rgba(8,27,32,.68)}
.r9-dialog-bar{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 24px;border-bottom:1px solid #dfe8e3;background:#fff}
.r9-dialog-bar p{font-size:12px;letter-spacing:.08em;color:#52706a}
.r9-dialog-close{min-height:44px;padding:8px 16px;background:#eef3f0;border:1px solid #d4e0da;color:#173d3c;cursor:pointer}
.r9-dialog-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:28px;padding:28px}
.r9-dialog-photo{width:100%;max-height:340px;object-fit:contain;background:#eef1ed}
.r9-dialog-content{min-width:0}.r9-dialog-content h2{font-size:28px;line-height:1.35;margin:0 0 16px;overflow-wrap:anywhere}.r9-dialog-content p{overflow-wrap:anywhere}
.r9-dialog-content [class*="line-clamp"]{-webkit-line-clamp:unset;display:block;overflow:visible}
.r9-dialog-actions{display:flex;gap:16px;flex-wrap:wrap;border-top:1px solid #dde7e1;padding-top:24px;margin-top:24px}
.r9-dialog-actions a{display:inline-flex;align-items:center;min-height:48px;padding:12px 20px;background:#087f72;color:white;font-weight:600}
.r9-dialog-actions a+ a{background:#eef3f0;color:#17665c}
.r9-dialog-note{font-size:13px;color:#5f716a;line-height:1.75;margin-top:18px}
@media(max-width:767px){
 main>section:not(:first-child){padding-top:48px!important;padding-bottom:48px!important}
 main h2{font-size:28px!important;line-height:1.4!important}
 .ingredient-grid{grid-template-columns:minmax(0,1fr)!important;gap:24px!important}
 .ingredient-card .ingredient-sample{height:250px!important}
 .ingredient-card .ingredient-sample img{max-height:210px!important}
 .ingredient-card>.flex{padding:22px!important}
 main[class$="-page"]>section:first-child h1{font-size:34px!important;line-height:1.3!important;overflow-wrap:anywhere}
 main[class$="-page"]>section:first-child [class*="h-[420px]"]{height:260px!important}
 main[class$="-page"]>section:first-child [class*="py-24"]{padding-top:44px!important;padding-bottom:36px!important}
 .r9-product-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px)}
 .r9-dialog-bar{padding:10px 16px}.r9-dialog-layout{grid-template-columns:1fr;gap:20px;padding:20px}
 .r9-dialog-photo{height:210px}.r9-dialog-content h2{font-size:25px!important}
 .r9-dialog-actions{flex-direction:column;gap:10px}.r9-dialog-actions a{justify-content:center}
 .chemical-index{flex-wrap:wrap!important;overflow:visible!important}
 .contact-refined input,.contact-refined select,.contact-refined textarea{font-size:16px!important;min-width:0}
 .mobile-page-hero .w-4\/5{width:100%}
}
@media(max-width:360px){#main-header .header-language{gap:4px!important}#main-header .header-language a{font-size:11px!important}#main-header #sidebar-toggle{padding-left:12px!important;padding-right:12px!important}#main-header a img{max-width:115px!important;height:auto!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.ingredient-card,.ingredient-card img{transition:none!important}}
.r9-dialog-close{white-space:nowrap;flex-shrink:0;font-size:14px}
.r9-dialog-content [style*="line-clamp"]{display:block!important;-webkit-line-clamp:unset!important;overflow:visible!important}
