/* Hale Marine: Learn & Videos, article pages, series band, product videos (theme-learn).
   Shares theme-core variables from stylesheet_hm.css; fallbacks below only apply if that file is missing. */
:root{--hl-navy:var(--navy,#002B66);--hl-navy2:var(--navy2,#0a3d86);--hl-sky2:var(--sky2,#eef3f9);--hl-ink:var(--ink,#1b2230);--hl-mute:var(--mute,#5b6576);--hl-line:var(--line,#d9dee7);--hl-red:var(--red,#d62b2b);--hl-green:#1f5a2c}

/* ---------- lazy YouTube block (used on learn pages, category band, product pages) ---------- */
.hm-video{position:relative;display:block;width:100%;aspect-ratio:16/9;background:#111;border-radius:8px;overflow:hidden;margin:14px 0}
@supports not (aspect-ratio:16/9){.hm-video{height:0;padding-bottom:56.25%}}
.hm-video .hm-vbtn,.hm-video iframe{position:absolute;inset:0;width:100%;height:100%;display:block;border:0}
.hm-video img{width:100%;height:100%;object-fit:cover;display:block;opacity:.92;transition:opacity .15s}
.hm-video .hm-vbtn:hover img,.hm-video .hm-vbtn:focus img{opacity:1}
.hm-play{position:absolute;left:50%;top:50%;width:64px;height:46px;margin:-23px 0 0 -32px;border-radius:12px;background:rgba(214,43,43,.95);z-index:2}
.hm-play:before{content:"";position:absolute;left:50%;top:50%;margin:-10px 0 0 -6px;border-left:18px solid #fff;border-top:10px solid transparent;border-bottom:10px solid transparent}
.hm-video-sm .hm-play,.hm-play-sm{width:44px;height:32px;margin:-16px 0 0 -22px;border-radius:9px}
.hm-video-sm .hm-play:before,.hm-play-sm:before{margin:-7px 0 0 -4px;border-left-width:13px;border-top-width:7px;border-bottom-width:7px}
.hm-vcap{position:absolute;left:0;right:0;bottom:0;padding:10px 12px;background:linear-gradient(0deg,rgba(0,0,0,.8),transparent);color:#fff;font-weight:700;font-size:15px;z-index:2;text-align:left}
.hm-video-sm{margin:0}

/* ---------- shared bits ---------- */
.hl,.hs-band,.hpv{color:var(--hl-ink)}
.hl a,.hs-band a,.hpv a{text-decoration:none}
.hl-vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hl-h{font-family:'Roboto Condensed',Arial,sans-serif;text-transform:uppercase;color:var(--hl-navy);margin:0 0 12px;letter-spacing:.5px;font-size:20px;display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:6px;line-height:1.2}
.hl-h a{font-family:'Source Sans 3',system-ui,sans-serif;text-transform:none;font-size:15px;letter-spacing:0;font-weight:700;color:var(--hl-navy)}
.hl-h a:hover{text-decoration:underline}
.hl-btn{display:inline-block;background:var(--hl-navy);color:#fff!important;font-weight:700;border-radius:6px;padding:10px 16px;font-size:15px;line-height:1.2}
.hl-btn:hover{background:var(--hl-navy2)}
.hl-crumbs{padding:14px 28px 0;font-size:14px;color:var(--hl-mute)}
.hl-crumbs a{color:var(--hl-navy);font-weight:600}
.hl-crumbs .hl-sep{margin:0 2px}
.hl-sec{padding:24px 28px 0}

/* cards (guides, problems, related) */
.hl-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.hl-card{border:1px solid var(--hl-line);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;background:#fff;color:var(--hl-ink)}
.hl-card:hover{border-color:var(--hl-navy);box-shadow:0 3px 12px rgba(0,30,80,.08)}
.hl-thumb{position:relative;display:block;aspect-ratio:16/7;background:#111;overflow:hidden}
.hl-thumb img{width:100%;height:100%;object-fit:cover;display:block;opacity:.92}
.hl-t{padding:12px 14px;display:block}
.hl-t small{display:block;font-family:'Roboto Condensed',Arial,sans-serif;text-transform:uppercase;letter-spacing:.5px;color:#2e6b3a;font-weight:700;font-size:12px}
.hl-t b{display:block;color:var(--hl-navy);font-size:17px;margin:2px 0 4px;line-height:1.25}
.hl-t span{display:block;color:var(--hl-mute);font-size:14.5px;line-height:1.4}

/* ---------- hub ---------- */
.hl-hero{background:linear-gradient(135deg,var(--hl-navy),#0d4a9c);color:#fff;padding:28px;margin-top:12px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:24px;align-items:center;position:relative}
.hl-hero h1{margin:0 0 6px;font-size:34px;line-height:1.1;color:#fff}
.hl-hero p{margin:0 0 16px;color:#d8e3f3;font-size:17px;line-height:1.5}
.hl-srch{display:flex;border:2px solid #fff;border-radius:8px;overflow:hidden;background:#fff;margin:0}
.hl-srch input{flex:1;min-width:0;border:0;padding:14px 16px;font-size:16px;font-family:inherit;outline:none;color:var(--hl-ink);background:#fff;-webkit-appearance:none;border-radius:0}
.hl-srch button{background:#fff;color:var(--hl-navy);border:0;border-left:1px solid var(--hl-line);font-weight:700;font-size:16px;padding:0 22px;font-family:inherit;cursor:pointer}
.hl-404 .hl-srch{border-color:var(--hl-navy)}
.hl-404 .hl-srch button{background:var(--hl-navy);color:#fff}
.hl-results{background:#fff;border:1px solid var(--hl-line);border-radius:8px;margin-top:8px;box-shadow:0 10px 30px rgba(0,20,60,.18);overflow:hidden;color:var(--hl-ink)}
.hl-results[hidden]{display:none}
.hl-results a{display:block;padding:10px 14px;border-bottom:1px solid var(--hl-line)}
.hl-results a:hover,.hl-results a:focus{background:var(--hl-sky2)}
.hl-results small{font-family:'Roboto Condensed',Arial,sans-serif;text-transform:uppercase;font-size:11.5px;color:#2e6b3a;font-weight:700;letter-spacing:.4px;display:block}
.hl-results b{color:var(--hl-navy);display:block;font-size:16px}
.hl-results span{color:var(--hl-mute);font-size:14px;display:block}
.hl-results .hl-rfoot{margin:0;padding:9px 14px;font-size:13.5px;color:var(--hl-mute)}
.hl-results .hl-rfoot b{display:inline;font-size:13.5px}
.hl-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hl-stats div{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);border-radius:8px;padding:10px 12px}
.hl-stats b{display:block;font-size:24px;line-height:1.2}
.hl-stats span{font-size:13px;color:#cdd8ea}
.hl-models{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.hl-model{border:1px solid var(--hl-line);border-top:4px solid var(--hl-navy);border-radius:6px;background:#fff;display:flex;flex-direction:column}
.hl-mm{display:block;padding:12px 14px 6px;flex:1}
.hl-mm b{display:block;color:var(--hl-navy);font-size:16.5px}
.hl-mm span{display:block;color:var(--hl-mute);font-size:13.5px}
.hl-mm em{display:block;font-style:normal;color:var(--hl-navy);font-weight:700;font-size:13.5px;margin-top:6px}
.hl-mm:hover b{text-decoration:underline}
.hl-mx{display:flex;justify-content:space-between;gap:8px;padding:0 14px 10px;font-size:13.5px}
.hl-mx a{color:var(--hl-navy);font-weight:600;text-decoration:underline}
.hl-mx i{font-style:normal;color:var(--hl-red);font-weight:700}
.hl-plist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 26px}
.hl-plist a{display:block;padding:10px 0;border-bottom:1px solid var(--hl-line)}
.hl-plist a b{display:block;color:var(--hl-navy);font-size:16px}
.hl-plist a span{display:block;color:var(--hl-mute);font-size:14px;line-height:1.4}
.hl-plist a:hover b{text-decoration:underline}
.hl-vgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.hl-vcard{font-size:14.5px;min-width:0}
.hl-vcard b{display:block;margin-top:6px;color:var(--hl-ink);line-height:1.3}
.hl-vcard>span{color:var(--hl-mute);font-size:13px}
.hl-tag{display:inline-block;font-family:'Roboto Condensed',Arial,sans-serif;font-weight:700;font-size:12px;background:var(--hl-sky2);color:var(--hl-navy);padding:1px 6px;border-radius:3px;margin-right:5px;vertical-align:1px}
.hl-chips{display:flex;flex-wrap:wrap;gap:8px}
.hl-chips a{border:1px solid var(--hl-line);background:#fff;border-radius:20px;padding:8px 14px;font-weight:600;font-size:15px;color:var(--hl-navy)}
.hl-chips a:hover{border-color:var(--hl-navy)}
.hl-ask{display:grid;grid-template-columns:1.3fr 1fr;gap:14px;margin:26px 28px 28px}
.hl-ask>div{border-radius:8px;padding:18px}
.hl-ask p{margin:0 0 8px;font-size:15.5px;line-height:1.5}
.hl-ask b{display:block;font-size:19px;margin-bottom:6px}
.hl-a1{background:var(--hl-navy);color:#fff}
.hl-a1 a{color:#fff;text-decoration:underline!important;font-weight:700}
.hl-a2{background:var(--hl-sky2);display:flex;gap:14px;align-items:flex-start}
.hl-a2 b{color:var(--hl-navy)}
.hl-qr{flex:none}
.hl-qr img{width:110px;height:110px;object-fit:contain;background:#fff;border-radius:6px;display:block}

/* ---------- article ---------- */
.hl-art{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:30px;padding:18px 28px 28px}
.hl-main h1{font-size:34px;line-height:1.15;color:var(--hl-navy);margin:6px 0 6px}
.hl-by{color:var(--hl-mute);font-size:14.5px;margin-bottom:16px}
.hl-answer{background:#e9f4ec;border:1px solid #bcdcc5;border-radius:8px;padding:14px 16px;font-size:18px;line-height:1.5;margin:6px 0 18px}
.hl-answer b{color:var(--hl-green)}
.hl-body h2,.hl-faq h2{font-size:23px;color:var(--hl-navy);margin:28px 0 8px;line-height:1.25;scroll-margin-top:12px}
.hl-body h3{font-size:19px;color:var(--hl-navy);margin:20px 0 6px}
.hl-body p,.hl-body li{font-size:17px;line-height:1.6}
.hl-body p{margin:0 0 14px}
.hl-body ul,.hl-body ol{padding-left:22px;margin:0 0 14px}
.hl-body a{color:var(--hl-navy);font-weight:600;text-decoration:underline}
.hl-body a.hm-vbtn{text-decoration:none}
.hl-body .hm-pprice{color:var(--hl-mute);font-size:.92em;white-space:nowrap}
.hl-body .hm-pprice s{margin-right:3px}
.hl-body table{width:100%;border-collapse:collapse;font-size:15.5px;margin:8px 0 16px;display:block;overflow-x:auto}
.hl-body table tbody,.hl-body table thead{width:100%}
.hl-body th{font-family:'Roboto Condensed',Arial,sans-serif;text-transform:uppercase;font-size:13px;color:var(--hl-mute);border-bottom:2px solid var(--hl-navy);padding:8px;text-align:left;vertical-align:bottom}
.hl-body td{padding:9px 8px;border-bottom:1px solid var(--hl-line);vertical-align:top}
.hl-body .hm-video{max-width:760px}
.hl-faq details{border:1px solid var(--hl-line);border-radius:8px;padding:10px 14px;margin:8px 0;background:#fff}
.hl-faq summary{font-weight:700;color:var(--hl-navy);cursor:pointer;font-size:16.5px}
.hl-faq details p{margin:8px 0 2px;font-size:16.5px;line-height:1.55}
.hl-side{min-width:0}
.hl-box{border:1px solid var(--hl-line);border-radius:8px;padding:14px;margin-bottom:14px;background:#fff}
.hl-box h4{margin:0 0 10px;color:var(--hl-navy);font-size:16px}
.hl-toc a{display:block;padding:4px 0;color:var(--hl-navy);font-weight:600;font-size:14.5px;line-height:1.35}
.hl-toc a:hover{text-decoration:underline}
.hl-toc a.hl-more{margin-top:6px;color:var(--hl-mute);font-weight:600}
.hl-pr{display:flex;gap:10px;align-items:center;padding:8px 0;border-top:1px solid var(--hl-line);font-size:14.5px;line-height:1.35}
.hl-box h4+.hl-pr{border-top:0}
.hl-pimg{flex:none}
.hl-pr img{width:52px;height:42px;object-fit:contain;display:block}
.hl-pr>div{flex:1;min-width:0}
.hl-pr b{color:var(--hl-navy)}
.hl-pm{font-family:'Roboto Condensed',Arial,sans-serif;color:var(--hl-mute)}
.hl-pr .hm-now{font-weight:800;color:var(--hl-navy)}
.hl-pr .hm-was{color:var(--hl-mute);font-size:12.5px}
.hl-add{flex:none;background:var(--hl-navy);color:#fff!important;font-weight:700;font-size:12.5px;padding:6px 10px;border-radius:4px}
.hl-add:hover{background:var(--hl-navy2)}
.hl-call{background:var(--hl-navy);color:#fff;border-color:var(--hl-navy)}
.hl-call h4{color:#fff}
.hl-call .hl-n a{font-size:24px;font-weight:800;color:#fff}
.hl-call p{margin:4px 0 0;font-size:14.5px;line-height:1.45}
.hl-call p a{color:#fff;text-decoration:underline}
.hl-shop .hl-btn{display:block;text-align:center}
.hl-404{padding:18px 28px 0}
.hl-404 h1{color:var(--hl-navy);font-size:32px;margin:6px 0 8px}
.hl-404 p{font-size:17px;line-height:1.5;max-width:720px}

/* ---------- series band on category pages ---------- */
.hs-band{background:#f7f8fb;border-top:1px solid var(--hl-line);margin-top:24px;clear:both}
.hs-in{padding:20px 28px 26px}
.hs-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:26px;align-items:start;margin-bottom:22px}
.hs-grid.hs-novid{grid-template-columns:minmax(0,1fr)}
.hs-grid .hm-video{margin:0}
.hs-txt p{font-size:17px;line-height:1.55;margin:0 0 12px}
.hs-txt a{color:var(--hl-navy)}
.hs-links{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.hs-alt{font-weight:700;text-decoration:underline!important}
.hs-h3{font-size:18px}

/* ---------- product videos ---------- */
.hpv{margin:26px 0 0;padding:0 28px}
.hpv-grid{grid-template-columns:repeat(3,minmax(0,1fr))}

/* ---------- responsive ---------- */
@media (max-width:860px){
  .hl-crumbs{padding:12px 14px 0}
  .hl-sec{padding:20px 14px 0}
  .hl-hero{grid-template-columns:minmax(0,1fr);padding:20px 14px}
  .hl-hero h1{font-size:28px}
  .hl-grid3,.hl-plist,.hl-ask,.hl-art,.hs-grid{grid-template-columns:minmax(0,1fr)}
  .hl-models,.hl-vgrid,.hpv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hl-ask{margin:22px 14px 22px}
  .hl-art{padding:14px 14px 24px;gap:10px}
  .hl-main h1,.hl-404 h1{font-size:28px}
  .hl-404{padding:14px 14px 0}
  .hs-in{padding:18px 14px 22px}
  .hpv{padding:0 14px}
  .hl-body p,.hl-body li{font-size:16.5px}
  .hl-card{flex-direction:row;align-items:stretch}
  .hl-thumb{flex:0 0 38%;aspect-ratio:auto;min-height:96px}
  .hl-t{padding:10px 12px}
  .hl-t b{font-size:16px}
  .hl-t span{font-size:14px}
}
@media (max-width:420px){
  .hl-stats b{font-size:20px}
  .hl-srch button{padding:0 14px}
  .hl-a2{flex-direction:column}
}
