/* Practical reading surfaces in VivaNord's established ivory and forest palette. */
.knowledge-hub { max-width:1240px; margin:auto; padding:56px 24px 80px; }
.knowledge-hub h1 { max-width:17ch; font:400 clamp(38px,5vw,64px)/1.08 'DM Serif Display',Georgia,serif; letter-spacing:-.025em; text-wrap:balance; }
.knowledge-hub h2 { font:400 clamp(29px,3vw,38px)/1.18 'DM Serif Display',Georgia,serif; letter-spacing:-.02em; }
.knowledge-hub h3 { font:400 27px/1.25 'DM Serif Display',Georgia,serif; }
.knowledge-hub p { max-width:70ch; color:#465a4e; line-height:1.7; }
.knowledge-hub a { color:#234a39; text-underline-offset:.2em; }
.knowledge-hub a:not(.btn):hover { text-decoration-thickness:2px; }
.knowledge-intro { max-width:75ch; margin:22px 0 26px; font-size:18px; }
.knowledge-jumps { display:flex; flex-wrap:wrap; gap:8px 24px; margin:0 0 40px; }
.knowledge-jumps a { display:inline-flex; align-items:center; min-height:44px; }
.knowledge-start { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(260px,1fr); gap:56px; padding:32px 0 40px; border-top:1px solid #d5dcd5; border-bottom:1px solid #d5dcd5; }
.knowledge-start h2,.knowledge-start h3 { margin-bottom:16px; }
.knowledge-start .btn { margin-top:22px; color:#fff; }
.knowledge-products { display:grid; grid-template-columns:1fr 1fr; gap:0 20px; margin-top:14px; }
.knowledge-products a { display:flex; align-items:center; min-height:48px; border-bottom:1px solid #d5dcd5; }
.knowledge-section { margin-top:52px; scroll-margin-top:110px; }
.knowledge-section>p { margin:16px 0 24px; }
.knowledge-list { display:grid; grid-template-columns:1fr 1fr; gap:0 40px; list-style:none; padding:0; margin:0; }
.knowledge-list li { border-top:1px solid #d5dcd5; padding:22px 0; }
.knowledge-list a { display:inline-block; padding:5px 0; min-height:44px; font-size:20px; font-weight:600; line-height:1.4; }
.knowledge-list p { font-size:15px; margin:6px 0 0; }
.knowledge-article ol { margin:20px 0 26px 22px; }
.knowledge-article ol li { padding-left:6px; margin-bottom:16px; }
.knowledge-article .reading-steps strong { color:#234a39; }
.knowledge-article h3 { font:400 26px/1.25 'DM Serif Display',Georgia,serif; margin:0 0 14px; }
.label-tool { margin:28px 0; background:#eaf0e6; border-radius:12px; padding:26px; color:#18382b; }
.label-tool p { font-size:15px; line-height:1.65; }
.label-tool form { display:grid; gap:10px; margin:22px 0; }
.label-tool label { font-weight:600; }
.label-tool input,.label-tool select { width:100%; min-height:48px; padding:10px 12px; border:1px solid #768b78; border-radius:6px; background:#fff; color:#18382b; font:inherit; caret-color:#234a39; }
.label-tool input:focus-visible,.label-tool select:focus-visible { outline:3px solid #638061; outline-offset:3px; }
.label-tool input[aria-invalid] { border-color:#913d32; }
.label-tool #label-help { margin:0 0 8px; color:#3f5446; }
.label-tool button { justify-self:start; min-height:48px; }
.label-tool output { display:block; padding:16px 0 0; font-size:20px; font-weight:600; font-variant-numeric:tabular-nums; }
.label-tool ::selection,.knowledge-hub ::selection { background:#c8d8be; color:#18382b; }
@media(max-width:760px){
 .knowledge-hub { padding:34px 20px 56px; }
 .knowledge-start { grid-template-columns:1fr; gap:34px; padding:26px 0 32px; }
 .knowledge-list { grid-template-columns:1fr; }
 .knowledge-section { margin-top:40px; }
 .knowledge-jumps { gap:4px 20px; margin-bottom:24px; }
 .knowledge-intro { font-size:17px; }
 .label-tool { padding:20px; }
}
