/* Shared editorial, accessibility and responsive refinements. */
:root{--c-bg:#fafaf8;--c-bg-warm:#f4f1e9;--c-ink-mute:#68758a;--b-gold-deep:#876d37}
body{font-feature-settings:"cv02","cv03","cv04","cv11";text-rendering:optimizeLegibility}
[hidden]{display:none!important}
.skip-link{position:fixed;top:10px;left:18px;z-index:1000;padding:12px 20px;background:#172c47;color:#fff;border-radius:4px;transform:translateY(-160%)}
.skip-link:focus{transform:translateY(0)}
main:focus{outline:none}
.site-header{background:rgba(255,255,255,.96);border-bottom:1px solid rgba(26,47,78,.07)}
.site-header .brand-mark{object-position:left center}
.nav-list a{min-height:44px}
.lang-switch a{min-width:34px;min-height:36px;display:inline-flex;align-items:center;justify-content:center}
.dropdown{border-radius:6px;border-color:#e6e2d9;box-shadow:0 18px 40px rgba(21,39,64,.10)}
.dropdown a{border-radius:3px;line-height:1.5}
.btn{min-height:48px;border-radius:4px;line-height:1.4;justify-content:center}
.btn-primary{box-shadow:none}
.page-hero{padding:160px 0 68px;background:#f4f2ed;border-bottom:1px solid #e3e0d7}
.page-hero:before{display:none}
.page-hero-grid{gap:48px;align-items:center}
.page-hero h1{font-size:clamp(2.6rem,4.4vw,4.2rem);line-height:1.08;letter-spacing:-.035em}
.page-hero .lead{font-size:17px;line-height:1.8;margin:0;max-width:58ch}
.breadcrumb{flex-wrap:wrap;gap:5px 10px;color:#697587;line-height:1.5;margin-bottom:26px;font-size:12px}
.breadcrumb a{text-decoration:underline;text-decoration-color:#c5b999;text-underline-offset:4px}
.eyebrow{font-size:11px;letter-spacing:.15em;line-height:1.65}
.eyebrow:before{flex-shrink:0}
.section-head{max-width:820px}
.lead{font-size:17px}
.two-col,.ingredient-detail-grid,.contact-grid,.page-hero-grid{min-width:0}
.two-col>* ,.ingredient-detail-grid>* ,.contact-grid>* ,.page-hero-grid>*{min-width:0}
.reveal{opacity:1;transform:none;transition:none}
.ingredient-card,.product-card,.study-card{border-radius:6px;box-shadow:none}
.ingredient-card:hover,.product-card:hover,.study-card:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(21,39,64,.055)}
.product-card{display:flex;flex-direction:column}
.product-card .pc-bottom{margin-top:auto;gap:12px;flex-wrap:wrap}
.product-card .pc-comp{line-height:1.75}
.product-card .pc-form{color:#617085}
.product-card .text-link{min-height:40px;display:inline-flex;align-items:center}
.cat-tabs{gap:6px;margin-bottom:30px;border-bottom:0}
.cat-tab{border:1px solid #dedfdc;border-radius:4px;padding:12px 17px;min-height:46px;margin:0;font-size:13px;background:#fff}
.cat-tab.active{color:#fff;background:#1a2f4e;border-color:#1a2f4e}
.catalog-tools{display:flex;justify-content:space-between;align-items:end;gap:24px;margin:0 0 24px}
.catalog-search-field{max-width:520px;width:100%}
.catalog-search-field label{display:block;margin-bottom:8px;font-size:13px;font-weight:600;color:#273b56}
.catalog-search-field input{width:100%;min-height:50px;border:1px solid #d8d9d5;border-radius:5px;background:#fff;padding:12px 16px;font:inherit;font-size:16px;color:#1a2f4e}
.catalog-search-field input:focus{outline:2px solid #a48a54;outline-offset:2px}
#catalog-results-status{font-size:13px;line-height:1.6;color:#5a6879;margin:0;padding-bottom:12px}
.catalog-empty{padding:28px;border:1px solid #dedfdc;background:#f4f2ed;border-radius:6px;line-height:1.8}
.table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;margin:20px 0}
.table-scroll:focus-visible{outline:2px solid #a48a54;outline-offset:3px}
.table-scroll table{width:100%;border-collapse:collapse;margin:0}
.table-scroll.wide-table table{min-width:580px}
.table-scroll td,.table-scroll th{overflow-wrap:anywhere}
.mono-side .table-scroll{margin:0}
.mono-side{border-radius:7px!important}
.contact-form{border-radius:8px;box-shadow:0 15px 45px rgba(21,39,64,.055);border:1px solid #e2e1da}
.contact-form .form-lead{font-size:14px;line-height:1.8}
.form-field input,.form-field select,.form-field textarea{font-size:16px;border-radius:4px}
.form-field.select-field{padding-top:22px}
.form-field.select-field>label{position:absolute;top:0;left:0;transform:none;font-size:12px;font-weight:600;pointer-events:auto;color:#536276}
.form-consent{font-size:12px;line-height:1.7;align-items:flex-start}
.form-consent input[type=checkbox]{min-width:20px;min-height:20px}
.contact-info-card a{overflow-wrap:anywhere}
details>summary{cursor:pointer;min-height:44px;line-height:1.6}
details>summary:focus-visible{outline:2px solid #a48a54;outline-offset:5px}
.site-footer{padding-top:64px;background:#14263e}
.footer-grid{grid-template-columns:1.5fr .8fr .9fr 1fr;gap:36px}
.footer-brand .brand-mark{height:auto;max-height:60px;max-width:210px;border-radius:4px;padding:10px 14px}
.footer-brand p{max-width:36ch;line-height:1.85;font-size:13px}
.footer-col a{display:inline-block;padding:3px 0;line-height:1.6}
.footer-col h5{font-family:var(--font-sans);font-size:11px;font-weight:600;letter-spacing:.13em}
.footer-bottom{line-height:1.7;gap:15px}
.footer-disclaimer{line-height:1.8}
.cta-banner{background:#1a2f4e}
.cta-banner:before{opacity:.25}
.back-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;font-size:13px;font-weight:600}
.error-page{padding:170px 0 100px;min-height:75vh;background:#f4f2ed}
.error-page h1{max-width:650px;margin:20px 0}
.error-page p{max-width:55ch;color:#5b6878;line-height:1.8}
.error-links{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
@media(min-width:969px){.nav{min-height:88px}.nav-contact-link{min-height:42px!important}}
@media(max-width:1080px){.page-hero-grid{gap:28px}.page-hero .lead{max-width:72ch}.footer-grid{grid-template-columns:1.5fr 1fr;gap:36px}.page-hero h1{max-width:900px}}
@media(max-width:968px){.nav{min-height:78px}.nav-list.mobile-open{top:78px;max-height:calc(100dvh - 78px);padding-bottom:28px}.nav-list.mobile-open>li>a{min-height:54px}.nav-list.mobile-open .dropdown a{min-height:44px}.nav-list.mobile-open .has-dropdown>.dropdown{display:none}.nav-list.mobile-open .has-dropdown.is-open>.dropdown{display:flex}.site-header .nav-contact-link{border-radius:4px!important}.footer-grid{grid-template-columns:1fr 1fr!important;gap:30px!important}.footer-brand{grid-column:1/-1}.footer-brand p{max-width:65ch}.page-hero{padding-top:130px}.cat-tabs{overflow-x:auto;flex-wrap:nowrap;padding:3px 2px 10px;scrollbar-width:thin;scrollbar-color:#b5aa91 #ece9e2}.cat-tab{flex-shrink:0;white-space:nowrap}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){section{padding:62px 0}.container,.container-narrow{width:calc(100% - 40px)}.page-hero{padding:119px 0 40px}.page-hero-grid{gap:22px}.page-hero h1{font-size:clamp(2.3rem,9vw,3.25rem);overflow-wrap:anywhere}.page-hero .lead{font-size:15px;line-height:1.8}.breadcrumb{font-size:11px;margin-bottom:22px}.eyebrow{font-size:10px;letter-spacing:.13em}.lead{font-size:15px}.section-head{margin-bottom:30px}.two-col,.two-col.reverse,.ingredient-detail-grid,.contact-grid{gap:30px}.product-grid,.ingredients-grid,.study-grid{grid-template-columns:1fr}.product-card{padding:25px 23px}.catalog-tools{align-items:stretch;flex-direction:column;gap:10px}.catalog-search-field{max-width:none}#catalog-results-status{padding:0}.cat-tab{font-size:12px;padding:10px 15px}.cat-tabs{margin-bottom:24px}.contact-form{padding:28px 20px}.contact-form .form-row{gap:20px}.form-field input,.form-field textarea,.form-field select{padding-left:14px;padding-right:14px}.form-field label{left:14px}.form-field.select-field>label{left:0}.footer-grid{gap:28px 22px!important}.footer-col:last-child{grid-column:1/-1}.footer-bottom{flex-direction:column;align-items:flex-start}.footer-legal{flex-wrap:wrap;gap:10px 18px}.footer-brand p{font-size:13px}.cta-actions{gap:12px}.table-scroll{font-size:13px}.id-stats{gap:16px}.bl-figure,.bl-cutaway{min-width:0}}
@media(max-width:359px){.site-header .container{padding-left:16px;padding-right:16px}.site-header .brand-mark{max-width:122px}.lang-switch a{min-width:28px}.footer-grid{grid-template-columns:1fr!important}.footer-brand,.footer-col:last-child{grid-column:auto}.page-hero h1{font-size:2.15rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media print{.skip-link,.site-header,.site-footer{display:none}.page-hero{padding:20px 0}.table-scroll{overflow:visible}.reveal{opacity:1;transform:none}}
/* Keep long scientific terms within narrow cards; tables own their scroll area. */
.table-scroll{position:relative;min-width:0}
.study-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.study-card{min-width:0;overflow-wrap:anywhere}
.study-card .sc-meta{flex-wrap:wrap;gap:8px 16px}
@media(max-width:700px){.study-grid{grid-template-columns:minmax(0,1fr)}.study-card{padding:26px 22px}.study-card .sc-meta{letter-spacing:.08em}}
