/* Video discovery uses compact covers; watching has its own uninterrupted frame. */
body main#content :is(.dnv-hub,.dnv-watch) { width:calc(100% - 80px);max-width:1200px;margin-inline:auto;padding:38px 0 72px; }
body main#content .dnv-hub-head { max-width:820px;margin-bottom:40px; }
body main#content :is(.dnv-hub-head,.dnv-watch-head) h1 { font-size:54px!important;line-height:1.06!important;letter-spacing:-.045em!important;font-weight:600!important;margin:14px 0 20px; }
body main#content :is(.dnv-hub-head,.dnv-watch-head)>p:last-child { font-size:19px;line-height:1.6;color:#5c6b72;max-width:700px; }
body main#content .dnv-label { font-size:11px!important;line-height:1.4!important;letter-spacing:.1em!important;text-transform:uppercase;font-weight:600!important;color:#617078!important;margin:0 0 10px!important; }
body main#content .dnv-library-bar { display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 28px;padding-bottom:24px;border-bottom:1px solid #dde2e4; }
body main#content .dnv-filters { display:flex;flex-wrap:wrap;gap:8px; }
body main#content .dnv-filters[hidden],body main#content .dnv-card[hidden] { display:none; }
body main#content .dnv-filters button { appearance:none;border:1px solid transparent;border-radius:99px;padding:11px 16px;background:#f0f2f3;color:#20343e;font:inherit;font-size:14px;font-weight:600;cursor:pointer;min-height:44px; }
body main#content .dnv-filters button[aria-pressed=true] { background:#18303d;color:white; }
body main#content .dnv-count { flex:none;color:#6e797e;font-size:13px;margin:0; }
body main#content .dnv-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px; }
body main#content .dnv-card { min-width:0;display:flex;flex-direction:column;background:#f4f5f6;border:1px solid #e8ebed;border-radius:18px;overflow:hidden;margin:0;padding:0; }
body main#content .dnv-cover { display:block;position:relative;aspect-ratio:4/3;overflow:hidden;background:#dfe6e9;text-decoration:none;border:0; }
body main#content .dnv-cover img { width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;object-position:var(--dn-poster-position,50% 50%)!important;border:0!important;border-radius:0!important;padding:0!important;margin:0!important;transition:transform .25s ease; }
body main#content .dnv-play { position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:48px;height:48px;padding-left:3px;border:1px solid #ffffffa0;border-radius:50%;background:#ffffffeb;color:#172e3a;font-size:17px;box-shadow:0 3px 16px #16304020; }
body main#content .dnv-duration { position:absolute;bottom:12px;right:12px;background:#16303ddb;color:white;border-radius:6px;padding:4px 7px;font-size:12px;line-height:1.4;font-variant-numeric:tabular-nums; }
body main#content .dnv-new { position:absolute;top:12px;left:12px;background:#fff;color:#233c49;font-size:11px;font-weight:600;padding:5px 9px;border-radius:99px; }
body main#content .dnv-card-copy { display:flex;flex-direction:column;flex:1;padding:22px 22px 20px; }
body main#content .dnv-card-copy h3 { font-size:22px!important;line-height:1.2!important;letter-spacing:-.025em!important;font-weight:600!important;margin:0 0 12px!important; }
body main#content .dnv-card-copy h3 a { color:inherit;text-decoration:none;border:0; }
body main#content .dnv-card-copy>p:not(.dnv-label) { color:#617078;font-size:15px;line-height:1.55;margin:0 0 24px; }
body main#content .dnv-watch-link { display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;font-size:14px;font-weight:600;text-decoration:none;border:0;color:#17313e; }
body main#content .dnv-watch-link span { font-size:21px;font-weight:400; }
body main#content .dnv-home { width:calc(100% - 80px);padding-block:64px;max-width:1200px;margin-inline:auto; }
body main#content .dnv-section-head { display:flex;justify-content:space-between;gap:32px;align-items:end;margin-bottom:28px; }
body main#content .dnv-section-head h2 { font-size:36px!important;line-height:1.1!important;letter-spacing:-.035em!important;margin:0 0 14px!important; }
body main#content .dnv-section-head p:not(.dnv-label) { max-width:600px;color:#617078;font-size:17px;margin:0; }
body main#content .dnv-section-head>a { white-space:nowrap;font-size:14px;font-weight:600;color:#17313e;text-underline-offset:5px; }
body main#content .dnv-back { display:flex;gap:20px;font-size:13px;color:#78848a;margin-bottom:30px; }
body main#content .dnv-back a { color:#365361;text-decoration:none; }
body main#content .dnv-watch-head { margin-bottom:32px;max-width:920px; }
body main#content .dnv-watch-layout { display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:48px;align-items:center; }
body main#content .dnv-player { display:flex;justify-content:center;align-items:center;height:540px;background:#172934;border-radius:18px;overflow:hidden; }
body main#content .dnv-player video { display:block;width:100%!important;height:100%!important;max-width:100%!important;max-height:540px!important;object-fit:contain!important;background:transparent; }
body main#content .dnv-observations h2 { font-size:27px!important;letter-spacing:-.025em!important;margin:0 0 24px!important; }
body main#content .dnv-observations ol { margin:0 0 30px;padding-left:24px; }
body main#content .dnv-observations li { padding-left:10px;margin:0 0 18px;color:#50636d;font-size:17px;line-height:1.55; }
body main#content .dnv-observations li::marker { color:#a96b13;font-size:14px;font-weight:600; }
body main#content .dnv-button { display:flex;justify-content:space-between;gap:18px;align-items:center;background:#f4aa45;color:#17313e;border-radius:10px;padding:15px 18px;text-decoration:none;font-size:15px;font-weight:600; }
body main#content .dnv-secondary { display:inline-block;margin-top:20px;color:#17313e;font-size:15px;font-weight:600;text-underline-offset:5px; }
body main#content .dnv-support-links { display:flex;flex-direction:column;align-items:start; }
body main#content .dnv-note { display:grid;grid-template-columns:1.2fr 1fr;gap:48px;margin-top:32px;padding:28px 0;border-bottom:1px solid #dde2e4; }
body main#content .dnv-note h2 { font-size:17px!important;letter-spacing:0!important;margin:0 0 10px!important; }
body main#content .dnv-note p { font-size:14px;color:#63727a;line-height:1.6;margin:0 0 10px; }
body main#content .dnv-note details { align-self:start;padding:16px 18px;background:#f4f5f6;border-radius:12px; }
body main#content .dnv-note summary { cursor:pointer;color:#17313e;font-size:14px;font-weight:600; }
body main#content .dnv-note details[open] summary { margin-bottom:16px; }
body main#content .dnv-note a { font-size:14px; }
body main#content .dnv-related { margin-top:52px; }
body main#content .dnv-related>h2 { margin-bottom:28px!important;font-size:30px!important; }
body main#content .dnv-inline { display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:32px;align-items:center;background:#f4f5f6;border-radius:18px;padding:24px;margin:36px 0; }
body main#content .dnv-inline .dnv-card { border:0;background:none; }
body main#content .dnv-inline .dnv-card-copy { display:none; }
body main#content .dnv-inline .dnv-cover { border-radius:12px; }
body main#content .dnv-inline h2 { font-size:28px!important;line-height:1.15!important;letter-spacing:-.025em!important;margin:0 0 16px!important; }
body main#content .dnv-inline p:not(.dnv-label) { font-size:16px;color:#63727a;line-height:1.6; }
body main#content .dnv-more { margin-top:52px;padding:28px 30px;background:#f4f5f6;border-radius:16px;display:flex;justify-content:space-between;gap:28px;align-items:center; }
body main#content .dnv-more h2 { font-size:24px!important;margin:0 0 8px!important; }
body main#content .dnv-more p { font-size:16px;color:#63727a;margin:0; }
body main#content .dnv-more a { flex:none;font-size:15px;font-weight:600; }
body main#content .dnv-hub .dnsv-faq { margin-top:56px; }
body main#content .dnv-hub .dnsv-faq h2 { font-size:30px!important; }
body main#content .dnv-hub .dnsv-faq summary { font-size:16px; }
body main#content :is(.dnv-filters button,.dnv-card a,.dnv-button,.dnv-secondary):focus-visible { outline:3px solid #9d6013;outline-offset:4px; }
body main#content .dnv-cover:focus-visible { outline-offset:-4px; }
@media(hover:hover) { body main#content .dnv-card:hover .dnv-cover img { transform:scale(1.035); } }
@media(max-width:1050px) {
 body main#content .dnv-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 body main#content .dnv-featured .dnv-card:last-child { grid-column:1/-1;max-width:calc(50% - 12px); }
 body main#content .dnv-watch-layout { gap:28px; }
 body main#content .dnv-player { height:480px; }
}
@media(max-width:760px) {
 body main#content :is(.dnv-hub,.dnv-watch) { width:calc(100% - 40px);padding:24px 0 48px; }
 body main#content :is(.dnv-hub-head,.dnv-watch-head) h1 { font-size:36px!important;line-height:1.08!important; }
 body main#content :is(.dnv-hub-head,.dnv-watch-head)>p:last-child { font-size:17px;line-height:1.6; }
 body main#content .dnv-library-bar { display:block;padding-bottom:20px; }
 body main#content .dnv-filters { gap:8px; }
 body main#content .dnv-filters button { font-size:12px;padding:10px 13px; }
 body main#content .dnv-count { margin-top:16px; }
 body main#content .dnv-grid { grid-template-columns:1fr;gap:24px; }
 body main#content .dnv-featured .dnv-card:last-child { max-width:none;grid-column:auto; }
 body main#content .dnv-card-copy { padding:20px; }
 body main#content .dnv-card-copy h3 { font-size:23px!important; }
 body main#content .dnv-cover { aspect-ratio:4/3; }
 body main#content .dnv-home { width:calc(100% - 40px);padding:48px 0; }
 body main#content .dnv-section-head { display:block; }
 body main#content .dnv-section-head h2 { font-size:30px!important; }
 body main#content .dnv-section-head>a { display:inline-block;margin-top:20px; }
 body main#content .dnv-watch-layout { grid-template-columns:1fr;gap:28px; }
 body main#content .dnv-player { height:440px;max-height:70svh; }
 body main#content .dnv-observations h2 { font-size:25px!important; }
 body main#content .dnv-observations li { font-size:16px; }
 body main#content .dnv-note { grid-template-columns:1fr;gap:20px;margin-top:26px; }
 body main#content .dnv-inline { grid-template-columns:1fr;padding:18px;gap:20px; }
 body main#content .dnv-inline h2 { font-size:26px!important; }
 body main#content .dnv-more { display:block;padding:24px; }
 body main#content .dnv-more a { display:inline-block;margin-top:16px; }
}
@media(prefers-reduced-motion:reduce) { body main#content .dnv-cover img { transition:none; } }


/* Keep the horizontal workshop recording at its native viewing ratio. */
body main#content .dnv-player:has(video[data-dnv-video="roller-bit-positioning-tack-welding"]){height:auto;max-height:none;aspect-ratio:16/9}
body main#content .dnv-watch-layout:has(video[data-dnv-video="roller-bit-positioning-tack-welding"]){align-items:start}
