/* Privacy Policy - scoped to the privacy-policy page only. */
.hv-privacy-page { background: #fbfaf8; color: #18243b; }
.hv-privacy-heading { background: linear-gradient(120deg,#0b1b36,#1a3a5f); color: #fff; padding: 118px 0 58px; }
.hv-privacy-heading h1 { color: #fff; margin: 12px 0 8px; font-size: clamp(32px,4vw,49px); font-weight: 600; letter-spacing: -.04em; }
.hv-privacy-heading p { margin: 0; color:#dce7f5; }
.hv-privacy-heading .eyebrow { color: #dfb992; }
.hv-privacy-layout { display:grid; grid-template-columns: 218px minmax(0,1fr); gap: 60px; align-items:start; padding-top: 66px; padding-bottom:110px; }
.hv-privacy-toc { position: sticky; top:30px; border:1px solid #e5e7eb; background:#fff; border-radius: 6px; padding:23px 21px; box-shadow:0 8px 28px rgba(11,27,54,.04); }
.hv-privacy-toc strong { display:block; margin-bottom:13px; font-size:14px; letter-spacing:.08em; color:#172d48; }
.hv-privacy-toc nav { display:grid; gap:0; }
.hv-privacy-toc a { text-decoration:none; display:block; font-size:12px; padding:8px 0; color:#58697b; border-bottom:1px solid #f0f1f2; }
.hv-privacy-toc a:hover,.hv-privacy-toc a:focus-visible { color:#a37554; text-decoration:underline; }
.hv-privacy-article { max-width:100%; min-width:0; padding:0 !important; }
.hv-policy-document { max-width:940px; margin:0; padding:0 0 40px; font-size:15px; line-height:1.9; word-break:keep-all; overflow-wrap:anywhere; color:#374354; }
.hv-policy-document .hv-policy-lead { margin:0 0 30px; font-size:16px; line-height:1.95; color:#24334a; }
.hv-policy-document h2 { scroll-margin-top:25px; margin:50px 0 15px; padding:0 0 12px; font-size:clamp(19px,2.1vw,23px); line-height:1.4; letter-spacing:-.04em; font-weight:650; color:#122647; border-bottom:1px solid #dddfe2; }
.hv-policy-document h2:first-child { margin-top:0; }
.hv-policy-document p { margin:12px 0 17px; }
.hv-policy-document ul { margin:10px 0 20px; padding-left:20px; }
.hv-policy-document li { margin:4px 0; }
.hv-policy-document a { color:#114e94; text-decoration:underline; text-underline-offset:3px; }
.hv-policy-document strong { color:#18283f; font-weight:650; }
.hv-policy-summary { display:grid; grid-template-columns:1fr 1fr; gap:14px; padding:24px; background:#fff; border:1px solid #e9e4df; border-top:3px solid #b78e76; border-radius:6px; }
.hv-policy-summary div { display:flex; flex-direction:column; gap:3px; }
.hv-policy-summary span { color:#8a6d59; font-size:12px; }
.hv-policy-summary strong { font-size:14px; line-height:1.6; }
.hv-policy-table-wrap { overflow-x:auto; margin:15px 0 20px; border:1px solid #dfe2e7; border-radius:5px; }
.hv-policy-table { width:100%; border-collapse:collapse; border-spacing:0; min-width:500px; background:#fff; font-size:13px; }
.hv-policy-table th,.hv-policy-table td { border-bottom:1px solid #e8ebef; padding:15px 14px; text-align:left; vertical-align:top; line-height:1.7; }
.hv-policy-table thead { background:#eef3f8; }
.hv-policy-table th { color:#203953; font-weight:650; }
.hv-policy-document .hv-policy-endnote { padding:15px 18px; border-left:3px solid #b78e76; background:#f4f0ec; font-size:13px; }
.hv-privacy-return { margin-top:25px; border-top:1px solid #e2e5e9; padding-top:27px; }
.hv-privacy-return a { display:inline-flex; gap:10px; align-items:center; border:1px solid #a37d61; padding:11px 19px; color:#744e35; text-decoration:none; }
.hv-privacy-return a:hover { background:#eee6df; }
@media (max-width:900px) { .hv-privacy-layout { grid-template-columns:1fr; gap:26px; padding-top:38px; padding-bottom:70px; } .hv-privacy-toc { position:static; padding:16px; } .hv-privacy-toc nav { grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 13px; } .hv-privacy-heading { padding:95px 0 40px; } }
@media (max-width:600px) { .hv-privacy-toc nav { grid-template-columns:repeat(2,minmax(0,1fr)); } .hv-policy-summary { grid-template-columns:1fr; padding:19px; } .hv-policy-document { font-size:14px; line-height:1.85; } .hv-policy-document h2 { margin-top:38px; font-size:19px; } .hv-privacy-heading { padding-top:90px; } }
