/* HAUZ Research Library, guide, and news presentation — reads existing WordPress data only. */
.hauz-research-library,
.hauz-article-page { background: var(--hauz-cream); color: var(--hauz-espresso); }

/* ── Research Library ─────────────────────────────────────────────────── */
.hauz-library-intro { border-bottom: 1px solid rgba(61,46,38,.10); padding: 3.3rem 0 2.8rem; }
.hauz-library-intro .hauz-section-label { margin-bottom: .8rem; }
.hauz-library-intro h1 { font-size: clamp(2.6rem, 5.1vw, 4rem); margin: 0; }
.hauz-library-intro h1 em,
.hauz-library-catalog-cta h2 em { font-style: italic; }
.hauz-library-body { padding-bottom: 4.2rem; padding-top: 3rem; }
.hauz-library-body > section + section { margin-top: 3.8rem; }
.hauz-library-featured > .hauz-section-label,
.hauz-library-general > .hauz-section-label { margin-bottom: 1.35rem; }
.hauz-library-feature-card { background: var(--hauz-terracotta); border-radius: 10px; min-height: 15.4rem; overflow: hidden; position: relative; }
.hauz-library-feature-card::after { background: radial-gradient(circle at 88% 10%, rgba(255,255,255,.15), transparent 43%); content: ""; inset: 0; pointer-events: none; position: absolute; }
.hauz-library-feature-link { color: #fff; display: block; height: 100%; padding: 1.55rem 1.65rem 1.65rem; position: relative; text-decoration: none; z-index: 1; }
.hauz-library-feature-link:hover, .hauz-library-feature-link:focus-visible { color: #fff; }
.hauz-library-card-meta { align-items: center; color: var(--hauz-faint); display: flex; font-size: .58rem; gap: .7rem; justify-content: space-between; line-height: 1; }
.hauz-library-feature-card .hauz-library-card-meta { color: rgba(255,255,255,.68); margin-bottom: 1.65rem; }
.hauz-library-feature-chip { background: #fff; border-radius: 999px; color: var(--hauz-terracotta); font-size: .54rem; font-weight: 600; letter-spacing: .09em; padding: .38rem .56rem; text-transform: uppercase; }
.hauz-library-feature-card h2 { color: #fff; font-size: clamp(1.75rem, 3vw, 2.35rem); line-height: 1.07; margin: 0 0 .9rem; max-width: 850px; }
.hauz-library-feature-card p { color: rgba(255,255,255,.78); font-size: .71rem; line-height: 1.6; margin: 0 0 1.45rem; max-width: 620px; }
.hauz-library-read-link { align-items: center; color: var(--hauz-terracotta); display: inline-flex; font-size: .65rem; font-weight: 500; gap: .4rem; line-height: 1; }
.hauz-library-feature-card .hauz-library-read-link { color: #fff; }
.hauz-library-read-link span { transition: transform 180ms var(--hauz-ease); }
.hauz-library-card-link:hover .hauz-library-read-link span, .hauz-library-card-link:focus-visible .hauz-library-read-link span { transform: translateX(4px); }
.hauz-library-grid { display: grid; gap: .75rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.hauz-library-card, .hauz-guide-card { background: #fff; border: 1px solid rgba(61,46,38,.10); border-radius: 9px; min-width: 0; transition: border-color 180ms var(--hauz-ease), box-shadow 180ms var(--hauz-ease), transform 180ms var(--hauz-ease); }
.hauz-library-card:hover, .hauz-library-card:focus-within, .hauz-guide-card:hover, .hauz-guide-card:focus-within { border-color: rgba(196,98,45,.48); box-shadow: 0 12px 28px rgba(30,20,16,.08); transform: translateY(-2px); }
.hauz-library-card-link { color: inherit; display: block; height: 100%; padding: 1.05rem 1rem .95rem; text-decoration: none; }
.hauz-library-card-link:hover, .hauz-library-card-link:focus-visible { color: inherit; }
.hauz-library-card .hauz-library-card-meta, .hauz-guide-card .hauz-library-card-meta { margin-bottom: .9rem; }
.hauz-library-card .hauz-badge--category, .hauz-guide-card .hauz-badge--category { font-size: .48rem; letter-spacing: .06em; padding: .29rem .42rem; }
.hauz-library-card h2, .hauz-guide-card h2 { font-size: 1.08rem; line-height: 1.12; margin: 0 0 .75rem; }
.hauz-library-card p, .hauz-guide-card p { color: var(--hauz-muted); display: -webkit-box; font-size: .63rem; -webkit-box-orient: vertical; -webkit-line-clamp: 4; line-height: 1.58; margin: 0 0 1.1rem; overflow: hidden; }
.hauz-library-card .hauz-library-read-link, .hauz-guide-card .hauz-library-read-link { font-size: .59rem; }
.hauz-library-card.is-hauz-hidden { display: none; }
.hauz-library-grid.is-hauz-expanded .hauz-library-card.is-hauz-hidden { display: block; }
.hauz-library-show-all { display: flex; justify-content: center; margin-top: 1.5rem; }
.hauz-library-show-all .hauz-button { font-size: .65rem; min-height: 37px; padding: .65rem 1rem; }
.hauz-library-guides-heading { align-items: center; display: flex; justify-content: space-between; margin-bottom: 1.3rem; }
.hauz-scroll-controls { display: flex; gap: .45rem; }
.hauz-scroll-button { align-items: center; background: #fff; border: 1px solid rgba(61,46,38,.10); border-radius: 50%; color: var(--hauz-muted); display: inline-flex; font-family: "Cormorant Garamond", Georgia, serif; font-size: 1.45rem; height: 31px; justify-content: center; line-height: 1; min-height: 31px; padding: 0 0 .16rem; width: 31px; }
.hauz-scroll-button:hover, .hauz-scroll-button:focus-visible { background: #fff; border-color: var(--hauz-terracotta); color: var(--hauz-terracotta); }
.hauz-guide-rail { display: grid; gap: .75rem; grid-auto-columns: minmax(230px, 1fr); grid-auto-flow: column; grid-template-rows: repeat(2, minmax(156px, auto)); overflow-x: auto; overscroll-behavior-inline: contain; padding: 0 0 .35rem; scroll-behavior: smooth; scrollbar-width: none; }
.hauz-guide-rail::-webkit-scrollbar { display: none; }
.hauz-guide-card { width: 100%; }
.hauz-library-catalog-cta { background: #1e1410 url('../images/research/catalog-vial-cluster.webp') 74% center/cover no-repeat; border-radius: 10px; min-height: 17rem; overflow: hidden; position: relative; }
.hauz-library-catalog-cta::before { background: linear-gradient(90deg, rgba(30,20,16,.98) 0%, rgba(30,20,16,.90) 36%, rgba(30,20,16,.53) 64%, rgba(30,20,16,.12) 100%); content: ""; inset: 0; position: absolute; }
.hauz-library-catalog-copy { padding: 2.5rem; position: relative; width: min(100%, 550px); z-index: 1; }
.hauz-library-catalog-copy > p:first-child { color: var(--hauz-terracotta); font-size: .57rem; font-weight: 600; letter-spacing: .18em; margin: 0 0 .7rem; text-transform: uppercase; }
.hauz-library-catalog-copy h2 { color: var(--hauz-cream); font-size: clamp(2rem, 3.8vw, 3rem); line-height: 1; margin: 0 0 .9rem; }
.hauz-library-catalog-description { color: rgba(248,244,238,.65); font-size: .67rem; line-height: 1.7; margin: 0 0 1.55rem; max-width: 320px; }
.hauz-library-catalog-copy .hauz-button { background: var(--hauz-terracotta); border-color: var(--hauz-terracotta); font-size: .64rem; min-height: 39px; padding: .7rem 1rem; }
.hauz-library-catalog-copy .hauz-button:hover, .hauz-library-catalog-copy .hauz-button:focus-visible { background: var(--hauz-terracotta-hover); border-color: var(--hauz-terracotta-hover); }

/* ── Research guide and news article pages ────────────────────────────── */
.hauz-article-shell { margin-inline: auto; max-width: 700px; padding-inline: 0; }
.hauz-article-breadcrumb { border-bottom: 1px solid rgba(61,46,38,.10); color: var(--hauz-muted); font-size: .61rem; padding: .62rem 0; }
.hauz-article-breadcrumb a { color: inherit; text-decoration: none; }
.hauz-article-breadcrumb a:hover, .hauz-article-breadcrumb a:focus-visible { color: var(--hauz-terracotta); }
.hauz-article-header { padding-bottom: 1.6rem; padding-top: 2.1rem; }
.hauz-article-labels { align-items: center; display: flex; flex-wrap: wrap; gap: .45rem; margin-bottom: 1rem; }
.hauz-article-primary-label, .hauz-article-category-label { border-radius: 999px; font-size: .52rem; font-weight: 600; letter-spacing: .09em; line-height: 1; padding: .4rem .6rem; text-transform: uppercase; }
.hauz-article-primary-label { background: var(--hauz-terracotta); color: #fff; }
.hauz-article-category-label { border: 1px solid rgba(196,98,45,.55); color: var(--hauz-terracotta); }
.hauz-article-header h1 { font-size: clamp(2.25rem, 5.3vw, 3.7rem); line-height: 1.04; margin: 0 0 .95rem; }
.hauz-article-subheadline { color: var(--hauz-muted); font-size: .91rem; line-height: 1.55; margin-bottom: 1.25rem; }
.hauz-article-subheadline > * { margin: 0; }
.hauz-article-byline { align-items: center; border-bottom: 1px solid rgba(61,46,38,.10); color: var(--hauz-muted); display: flex; flex-wrap: wrap; font-size: .62rem; gap: .45rem; padding-bottom: 1.3rem; }
.hauz-article-ruo-label { background: rgba(196,98,45,.08); border-radius: 3px; color: var(--hauz-muted); font-family: "JetBrains Mono", monospace; font-size: .5rem; letter-spacing: .02em; padding: .18rem .34rem; }
.hauz-article-notice { background: rgba(196,98,45,.045); border-left: 3px solid var(--hauz-terracotta); color: var(--hauz-muted); font-size: .63rem; line-height: 1.55; margin-bottom: 1.9rem; padding: .8rem .9rem; }
.hauz-article-notice strong { color: var(--hauz-terracotta); font-weight: 600; }
.hauz-article-body { color: var(--hauz-dark); font-size: .86rem; line-height: 1.78; padding-bottom: 1rem; }
.hauz-article-body > *:first-child { margin-top: 0; }
.hauz-article-body p { margin: 0 0 1.25rem; }
.hauz-article-body h2, .hauz-article-body h3 { font-size: 1.8rem; line-height: 1.1; margin: 2.1rem 0 .8rem; }
.hauz-article-body ul, .hauz-article-body ol { margin: 0 0 1.25rem 1.25rem; }
.hauz-article-related-topics, .hauz-article-related { border-top: 1px solid rgba(61,46,38,.12); margin-top: 2.1rem; padding-top: 1.7rem; }
.hauz-article-related-topics h2, .hauz-article-related h2 { color: var(--hauz-espresso); font-family: "DM Sans", sans-serif; font-size: .63rem; font-weight: 600; letter-spacing: .16em; line-height: 1.2; margin: 0 0 .9rem; text-transform: uppercase; }
.hauz-topic-list { display: flex; flex-wrap: wrap; gap: .45rem; }
.hauz-topic-list span { background: #fff; border: 1px solid rgba(61,46,38,.12); border-radius: 999px; color: var(--hauz-muted); font-size: .59rem; padding: .35rem .6rem; }
.hauz-article-related-grid { display: grid; gap: .7rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.hauz-article-compound-card, .hauz-article-related-card { background: #fff; border: 1px solid rgba(61,46,38,.12); border-radius: 8px; min-width: 0; transition: border-color 180ms var(--hauz-ease), transform 180ms var(--hauz-ease); }
.hauz-article-compound-card:hover, .hauz-article-related-card:hover, .hauz-article-compound-card:focus-within, .hauz-article-related-card:focus-within { border-color: rgba(196,98,45,.55); transform: translateY(-2px); }
.hauz-article-compound-card a, .hauz-article-related-card a { color: inherit; display: block; padding: .95rem; text-decoration: none; }
.hauz-article-compound-card h3, .hauz-article-related-card h3 { font-size: 1.1rem; line-height: 1.13; margin: 0 0 .35rem; }
.hauz-article-compound-card .hauz-cas { color: var(--hauz-muted); font-size: .53rem; margin: 0 0 .45rem; }
.hauz-article-compound-card p:not(.hauz-cas) { color: var(--hauz-muted); font-size: .58rem; line-height: 1.45; margin: 0 0 .55rem; }
.hauz-article-compound-card span { color: var(--hauz-terracotta); font-size: .58rem; }
.hauz-article-related-card .hauz-badge--category { font-size: .48rem; padding: .3rem .45rem; }
.hauz-article-related-card h3 { margin-top: .7rem; }
.hauz-article-related-card p { color: var(--hauz-muted); font-size: .55rem; margin: 0; }
.hauz-article-return { border-top: 1px solid rgba(61,46,38,.12); margin-top: 2.4rem; padding: 1.7rem 0 3.2rem; }
.hauz-article-return a { color: var(--hauz-terracotta); font-size: .68rem; font-weight: 500; text-decoration: none; }
.hauz-article-return a:hover, .hauz-article-return a:focus-visible { color: var(--hauz-terracotta-hover); }

/* Requested v1.3.0 companion refinement: product price uses site display serif. */
.hauz-product-price, .hauz-product-price .price, .hauz-product-price .woocommerce-Price-amount { font-family: "Cormorant Garamond", Georgia, serif; }
.hauz-product-price .price { color: var(--hauz-espresso); font-size: 2.05rem; font-weight: 500; letter-spacing: -.035em; line-height: 1; }
.hauz-product-price small { font-family: "DM Sans", sans-serif; font-size: .59rem; font-weight: 400; letter-spacing: 0; }

@media (max-width: 767px) {
	.hauz-library-intro { padding: 2.25rem 0 2rem; }
	.hauz-library-body { padding-bottom: 2.75rem; padding-top: 2rem; }
	.hauz-library-body > section + section { margin-top: 2.7rem; }
	.hauz-library-grid { grid-template-columns: 1fr; }
	.hauz-library-feature-link { padding: 1.3rem; }
	.hauz-library-feature-card { min-height: 14.2rem; }
	.hauz-library-feature-card h2 { font-size: 1.75rem; }
	.hauz-library-catalog-cta { background-position: 66% center; }
	.hauz-library-catalog-copy { padding: 2rem 1.35rem; }
	.hauz-guide-rail { grid-auto-columns: minmax(225px, 80vw); grid-template-rows: none; }
	.hauz-article-shell { padding-inline: 1.25rem; }
	.hauz-article-breadcrumb .hauz-article-shell { padding-inline: 1.25rem; }
	.hauz-article-header { padding-top: 1.65rem; }
	.hauz-article-header h1 { font-size: 2.22rem; }
	.hauz-article-subheadline { font-size: .84rem; }
	.hauz-article-body { font-size: .79rem; line-height: 1.74; }
	.hauz-article-related-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
	.hauz-library-card, .hauz-guide-card, .hauz-article-compound-card, .hauz-article-related-card, .hauz-library-read-link span { transition: none; }
}

/* v2.17.0 "The short version" article summary */
.hauz-article-summary{background:#fff;border:1px solid var(--hauz-border);border-top:3px solid var(--hauz-terracotta);border-radius:12px;padding:1.3rem 1.35rem 1.1rem;margin:0 0 1.9rem}
.hauz-article-summary-kicker{color:var(--hauz-terracotta);font-size:.6rem;font-weight:600;letter-spacing:.16em;margin:0 0 .35rem;text-transform:uppercase}
.hauz-article-summary h2{font-family:"Cormorant Garamond",Georgia,serif;font-size:1.65rem;font-weight:500;line-height:1.05;margin:0 0 .85rem}
.hauz-article-summary ul{list-style:none;margin:0;padding:0}
.hauz-article-summary li{border-top:1px solid #F1ECE4;color:#3D2E26;font-size:.72rem;line-height:1.55;padding:.62rem 0 .62rem 1.15rem;position:relative}
.hauz-article-summary li:first-child{border-top:0;padding-top:.2rem}
.hauz-article-summary li:before{background:var(--hauz-terracotta);border-radius:50%;content:"";height:6px;left:0;position:absolute;top:1.05rem;width:6px}
.hauz-article-summary li:first-child:before{top:.62rem}
.hauz-article-summary a{color:var(--hauz-terracotta)}
@media(min-width:1000px){
.hauz-article-shell.is-wide{max-width:1060px}
.hauz-article-header.is-wide>*{max-width:700px}
.hauz-article-columns{display:grid;grid-template-columns:minmax(0,700px) 300px;gap:3.6rem;align-items:start}
.hauz-article-columns .hauz-article-main{grid-column:1;grid-row:1;min-width:0}
.hauz-article-columns .hauz-article-summary{grid-column:2;grid-row:1;position:sticky;top:96px;margin:0}
.hauz-article-shell.is-wide>section,.hauz-article-shell.is-wide>.hauz-article-return{max-width:700px}
}
.hauz-article-body table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--hauz-border);border-radius:12px;overflow:hidden;margin:0 0 1.4rem;font-size:.7rem;line-height:1.5}
.hauz-article-body th{background:#1E1410;color:#F8F4EE;font-size:.56rem;font-weight:600;letter-spacing:.13em;padding:.75rem .9rem;text-align:left;text-transform:uppercase}
.hauz-article-body td{border-top:1px solid #F1ECE4;color:#3D2E26;padding:.7rem .9rem;vertical-align:top}
.hauz-article-body tbody tr:nth-child(even) td{background:#FBF8F4}
.hauz-article-body td:first-child{white-space:nowrap;color:var(--hauz-terracotta);font-weight:600}
.hauz-article-body td:nth-child(2){font-weight:600;color:#1E1410}
@media(max-width:640px){.hauz-article-body table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.hauz-article-body th,.hauz-article-body td{min-width:120px}.hauz-article-body td:first-child,.hauz-article-body th:first-child{min-width:0}}
