/* Editorial discovery layer. All figures are formulation / reading concepts. */
body.discovery-page { --dv-navy:#183d53; --dv-rule:#c3d2d9; --dv-wash:#eaf1f3; }
body.discovery-page .directory { padding-top:44px; }
body.discovery-page .concern-heading { margin-bottom:23px; }
body.discovery-page .concern-heading :is(h2,h3),
body.discovery-page .discovery-results-heading h2 { font-size:31px; letter-spacing:.035em; }
body.discovery-page .concern-tile { min-height:170px; border-radius:0; padding:23px 18px 17px; border-top:2px solid #b8cbd6; background:#fff; }
body.discovery-page .concern-tile::before { content:''; display:block; width:22px; height:2px; background:#688da1; margin-bottom:12px; }
body.discovery-page .concern-tile[aria-pressed=true]::before { width:42px; background:#244d65; }
body.discovery-page .concern-tile-title { font-size:20px; }
body.discovery-page .discovery-options { background:#f0f4f5; }
body.discovery-page .discovery-results-heading { margin-top:46px; padding-bottom:12px; }
body.discovery-page .dv-concept-note { margin:0 0 25px; padding:12px 0 16px; border-bottom:1px solid var(--dv-rule); color:#5c7180; font-size:11px; line-height:1.85; }
body.discovery-page .dv-concept-note > span { margin-right:10px; color:#294d64; font-size:13px; }
body.discovery-page .discovery-view-tools { padding-bottom:12px; }
body.discovery-page #ingredient-grid { gap:34px 25px; }
body.discovery-page #ingredient-grid .ingredient-card { overflow:hidden; border:0; border-radius:0; background:transparent; }
body.discovery-page #ingredient-grid .ingredient-card:hover { border:0; background:transparent; }
body.discovery-page #ingredient-grid .card-content { padding:20px 5px 0; border-top:0; }
body.discovery-page #ingredient-grid h3 { font-size:25px; line-height:1.55; }
body.discovery-page #ingredient-grid h3 > a { text-decoration:none; }
body.discovery-page #ingredient-grid h3 > a:hover { text-decoration:underline; text-underline-offset:6px; }
body.discovery-page #ingredient-grid .card-summary { font-size:13px; margin-top:12px; line-height:1.9; }
body.discovery-page #ingredient-grid .card-actions { padding-top:17px; }
body.discovery-page #ingredient-grid .card-actions > a { background:transparent; border:0; border-bottom:1px solid #899fac; justify-content:space-between; border-radius:0; padding-inline:0; }
body.discovery-page #ingredient-grid .compare-toggle { background:#fff; border-color:#b5c6cf; border-radius:2px; }
body.discovery-page #ingredient-grid .compare-toggle[aria-pressed=true] { background:#244b62; border-color:#244b62; color:white; }
body.discovery-page #ingredient-grid .scalable-thumb.dv-card-visual { position:relative; height:238px; padding:17px 18px 15px; border:0; border-radius:0; background:#eef3f4; isolation:isolate; }
body.discovery-page #ingredient-grid .dv-card-visual::after { background:linear-gradient(110deg,#eef3f4 0%,#eef3f4ee 50%,#eef3f488 100%); z-index:-1; }
body.discovery-page #ingredient-grid .dv-photo { position:absolute; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; opacity:.5; filter:saturate(.4); }
body.discovery-page .dv-visual-eyebrow { display:block; margin:0; font-size:11px; line-height:1.65; letter-spacing:.06em; color:#486a7e; }
body.discovery-page .dv-concept-diagram { display:block; width:100%; height:auto; min-height:0; overflow:visible; flex:1; color:#31576d; }
body.discovery-page .dv-concept-diagram text { fill:#294c62; stroke:none; font:400 13px/1.3 var(--sans); }
body.discovery-page .dv-concept-diagram .dv-label-small { font-size:12px; }
body.discovery-page .dv-concept-diagram .dv-label-serif { font:400 16px var(--serif); }
body.discovery-page .dv-token { fill:#fffffff2; stroke:#8aa7b7; stroke-width:1.2; }
body.discovery-page .dv-token-soft { fill:#e3ecef; }
body.discovery-page .dv-vessel { fill:#fff9; stroke:#66899d; stroke-width:1.5; }
body.discovery-page .dv-paper { fill:#ffffffe6; stroke:#9bb1be; stroke-width:1; }
body.discovery-page .dv-hairline { fill:none; stroke:#a4bac6; stroke-width:1; }
body.discovery-page .dv-connector { fill:none; stroke:#668da3; stroke-width:1.2; }
body.discovery-page .dv-separator { stroke:#8ca8b7; stroke-width:1; stroke-dasharray:3 5; }
body.discovery-page .dv-visual-caption { display:block; flex:none; border-top:1px solid #9db1bd70; padding-top:9px; font-size:11px; line-height:1.65; color:#45667b; letter-spacing:.015em; }
body.discovery-page .dv-card-visual[data-dv-concept=scope] { background:#f0f1ee; }
body.discovery-page .dv-card-visual[data-dv-concept=chain] { background:#eaf1ed; }
body.discovery-page .dv-card-visual[data-dv-concept=conditions] .dv-token { fill:#f9fbfc; }
body.discovery-page .dv-revealed .dv-connector { animation:dv-connector-reveal .7s ease-out 1; animation-play-state:paused; }
body.discovery-page .dv-revealed.dv-in-view .dv-connector { animation-play-state:running; }
body.discovery-page .dv-finished .dv-connector { animation:none; }
@keyframes dv-connector-reveal { from { stroke-opacity:.1; } to { stroke-opacity:1; } }
body.discovery-page #comparison-section { margin-top:45px; padding-top:30px; border-top:2px solid #284f65; }
body.discovery-page #comparison-title { font-size:32px; }
body.discovery-page .comparison-eyebrow { letter-spacing:.12em; font-size:11px; }
body.discovery-page #comparison-note { max-width:65em; }
body.discovery-page #comparison-desktop { border:0; border-collapse:separate; border-spacing:0; margin-top:23px; }
body.discovery-page #comparison-desktop :is(th,td) { padding:23px 24px; border:0; border-bottom:1px solid #cddbe2; border-right:1px solid #d8e2e7; }
body.discovery-page #comparison-desktop tr > :first-child { width:145px; padding-left:0; border-right:1px solid #c7d6de; }
body.discovery-page #comparison-desktop tr > :last-child { border-right:0; }
body.discovery-page #comparison-desktop thead th { background:#f1f5f6; padding:15px 23px 23px; vertical-align:bottom; font:400 24px/1.65 var(--serif); }
body.discovery-page #comparison-desktop thead th:first-child { font:400 12px/1.8 var(--sans); background:transparent; padding-left:0; }
body.discovery-page #comparison-desktop tbody th { background:transparent; color:#375a71; font-size:13px; }
body.discovery-page #comparison-desktop tbody tr:nth-child(2) td { background:#f7f8f6; }
body.discovery-page #comparison-desktop tbody tr:nth-child(3) td { background:#f4f7f8; }
body.discovery-page .dv-comparison-visual { display:block; padding:0 0 12px; margin:0 0 6px; border-bottom:1px solid #cad8e0; }
body.discovery-page .dv-comparison-visual svg { width:100%; max-width:300px; height:120px; margin:auto; }
body.discovery-page .dv-comparison-visual > span { display:block; font:400 11px/1.8 var(--sans); color:#587286; }
body.discovery-page .comparison-caption { padding-bottom:16px; font-size:12px; }
body.discovery-page #comparison-section .comparison-cell-summary { font-size:13px; line-height:2; }
body.discovery-page #comparison-section th a { text-decoration:none; }
body.discovery-page #comparison-section th a:hover { text-decoration:underline; }
body.discovery-page #comparison-section .comparison-evidence-links > button { background:#fff; }
body.discovery-page .visual-map-intro { border-top:2px solid #2b5269; padding-top:30px; }
body.discovery-page .visual-map-plot { border-radius:0; background:linear-gradient(145deg,#fff,#edf3f5); box-shadow:none; }
body.discovery-page .visual-map-region { border-radius:0; }
body.discovery-page .visual-map-point { box-shadow:0 4px 12px #1d43570a; }
body.discovery-page .visual-map-result { border-radius:0; box-shadow:none; background:#fff; }
body.discovery-page .visual-map-unreviewed { border-radius:0; background:#f0f4f5; }
body.discovery-page .visual-map-axis-controls select { border-radius:2px; }
body.discovery-page .comparison-scope-note { border-top:1px solid #c9d7df; padding-top:16px; }
@media (min-width:761px) and (max-width:1050px) {
 body.discovery-page #ingredient-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 body.discovery-page #comparison-desktop :is(th,td) { padding-inline:15px; }
 body.discovery-page #comparison-desktop tr > :first-child { width:105px; }
 body.discovery-page #comparison-desktop thead th { font-size:20px; }
}
@media (max-width:760px) {
 body.discovery-page .directory { padding-top:27px; }
 body.discovery-page .concern-heading :is(h2,h3),body.discovery-page .discovery-results-heading h2 { font-size:27px; }
 body.discovery-page .concern-tile { min-height:151px; padding:17px 13px 14px; }
 body.discovery-page .concern-tile::before { margin-bottom:10px; width:18px; }
 body.discovery-page .concern-tile-title { font-size:19px; }
 body.discovery-page .discovery-results-heading { margin-top:31px; }
 body.discovery-page .dv-concept-note { margin-bottom:20px; font-size:11px; }
 body.discovery-page .dv-concept-note > span { display:block; margin-bottom:4px; }
 body.discovery-page #ingredient-grid { gap:33px; }
 body.discovery-page #ingredient-grid .scalable-thumb.dv-card-visual { height:235px; padding:17px 19px 15px; }
 body.discovery-page #ingredient-grid .card-content { padding:18px 2px 0; }
 body.discovery-page #ingredient-grid h3 { font-size:26px; }
 body.discovery-page #ingredient-grid .card-summary { font-size:14px; }
 body.discovery-page #comparison-title { font-size:27px; }
 body.discovery-page .comparison-mobile-card { padding:23px 20px; border:0; border-top:2px solid #65869a; border-radius:0; background:#f0f5f6; }
 body.discovery-page .dv-comparison-visual { margin-top:10px; padding:0 0 15px; }
 body.discovery-page .dv-comparison-visual svg { height:123px; max-width:290px; }
 body.discovery-page .comparison-mobile-facet { display:inline-block; padding:4px 9px; border-left:2px solid #446a80; margin-top:12px; }
 body.discovery-page #comparison-section .comparison-cell-summary { font-size:14px; line-height:1.95; }
}
@media (max-width:360px) {
 body.discovery-page #ingredient-grid .scalable-thumb.dv-card-visual { height:224px; padding-inline:13px; }
 body.discovery-page .dv-visual-eyebrow { font-size:10px; }
 body.discovery-page #ingredient-grid h3 { font-size:23px; }
 body.discovery-page .dv-visual-caption { font-size:10px; }
}
@media (prefers-reduced-motion:reduce) { body.discovery-page .dv-revealed .dv-connector { animation:none; } }
@media (forced-colors:active) { body.discovery-page .dv-concept-diagram * { fill:Canvas; stroke:CanvasText; } body.discovery-page .dv-concept-diagram text { fill:CanvasText; stroke:none; } }
