/* =====================================================================
   BHROMI — "Privacy Policy" page (route /privacy)
   Re-uses the About page card (.bab / .bab-card / .bab-sec / .bab-dash),
   so type, spacing, radii and the blue accent lines are identical.
   Only long-text differences are handled here: paragraphs wrap normally
   (About uses hand-broken lines), plus bullet lists and sub-headings.
   ===================================================================== */
.bpv .bab-card .bab-b p,
.bpv .bab-card .bpv-intro p { white-space: normal; overflow-wrap: anywhere; }
.bpv .bab-sec.bab-b { margin-left: 0; margin-right: 0; }

.bpv .bab-card p.bpv-upd { margin-top: calc(10 * var(--u)); font-size: max(12px, calc(33.4 * var(--u))); line-height: calc(49.4 * var(--u)); color: var(--body); }
.bpv .bpv-intro { margin-top: calc(6 * var(--u)); }
.bpv .bpv-intro p { font-size: max(12px, calc(36 * var(--u))); line-height: calc(54 * var(--u)); }

.bpv .bab-card .bab-b p { margin-top: calc(24 * var(--u)); }
.bpv .bab-card .bab-b h2 + p { margin-top: calc(14 * var(--u)); }

/* sub-headings (e.g. "Personal and Contact Information") */
.bpv .bpv-sub { margin: calc(34 * var(--u)) 0 0; font-family: inherit; font-size: max(14px, calc(37 * var(--u))); line-height: calc(52 * var(--u)); font-weight: 800; letter-spacing: -.02em; color: var(--navy); }
.bpv .bpv-sub + p, .bpv .bpv-sub + ul { margin-top: calc(10 * var(--u)); }

/* bullet lists — same colour / size as About body text, blue dot accent */
.bpv .bpv-ul { list-style: none; margin: calc(18 * var(--u)) 0 0; padding: 0; }
.bpv .bpv-ul li { position: relative; padding-left: calc(46 * var(--u)); margin-top: calc(12 * var(--u)); font-size: max(12px, calc(33.4 * var(--u))); line-height: calc(49.4 * var(--u)); font-weight: 400; color: var(--body); overflow-wrap: anywhere; }
.bpv .bpv-ul li:first-child { margin-top: 0; }
.bpv .bpv-ul li::before { content: ""; position: absolute; left: calc(8 * var(--u)); top: calc(18 * var(--u)); width: calc(14 * var(--u)); height: calc(14 * var(--u)); min-width: 5px; min-height: 5px; border-radius: 50%; background: var(--blue); }

@media (min-width: 768px) { .bpv .bab-sec.bab-b { margin-left: 0; margin-right: 0; } }

/* numbered list (Cancellation page) + bold lead-in labels */
.bpv .bpv-ol { counter-reset: bpvn; }
.bpv .bpv-ol li { counter-increment: bpvn; padding-left: max(29px, calc(84 * var(--u))); }
.bpv .bpv-ol li::before { content: counter(bpvn); left: 0; top: calc(2 * var(--u)); width: calc(40 * var(--u)); height: calc(40 * var(--u)); min-width: 17px; min-height: 17px; display: flex; align-items: center; justify-content: center; font-size: max(12px, calc(24 * var(--u))); font-weight: 800; color: #fff; line-height: 1; }
.bpv .bpv-k { font-weight: 700; color: var(--navy); }

/* ---------- Contact page rows ---------- */
.bpv .bct-list { margin-top: calc(24 * var(--u)); display: flex; flex-direction: column; gap: calc(18 * var(--u)); }
.bpv .bct-row { display: flex; align-items: center; gap: calc(34 * var(--u)); padding: calc(30 * var(--u)) calc(34 * var(--u)); background: #f4f9fe; border: calc(2.5 * var(--u)) solid var(--line); border-radius: calc(36 * var(--u)); text-decoration: none; color: var(--navy); -webkit-tap-highlight-color: transparent; transition: background .15s, border-color .15s; }
.bpv .bct-row:active, .bpv .bct-row:hover { background: #eaf3fd; border-color: #cfe2f8; }
.bpv .bct-ic { flex: none; width: max(34px, calc(100 * var(--u))); height: max(34px, calc(100 * var(--u))); border-radius: 50%; background: var(--blue); color: #fff; display: inline-flex; align-items: center; justify-content: center; }
.bpv .bct-ic svg { width: 52%; height: 52%; }
.bpv .bct-tx { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.bpv .bct-tx b { font-size: max(12px, calc(38 * var(--u))); line-height: calc(50 * var(--u)); font-weight: 800; letter-spacing: -.02em; color: var(--navy); }
.bpv .bct-tx small { font-size: max(12px, calc(32 * var(--u))); line-height: calc(46 * var(--u)); color: var(--body); overflow-wrap: anywhere; }
.bpv .bct-go { flex: none; font-size: calc(60 * var(--u)); line-height: 1; color: var(--blue); font-weight: 700; }

/* ---------- Help Centre FAQ accordion ---------- */
.bpv .bhc-faq { margin-top: calc(22 * var(--u)); display: flex; flex-direction: column; gap: calc(16 * var(--u)); }
.bpv .bhc-q { background: #f4f9fe; border: calc(2.5 * var(--u)) solid var(--line); border-radius: calc(36 * var(--u)); overflow: hidden; }
.bpv .bhc-q summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: calc(26 * var(--u)); padding: calc(30 * var(--u)) calc(34 * var(--u)); font-size: max(12px, calc(35 * var(--u))); line-height: calc(48 * var(--u)); font-weight: 800; letter-spacing: -.01em; color: var(--navy); -webkit-tap-highlight-color: transparent; }
.bpv .bhc-q summary::-webkit-details-marker { display: none; }
.bpv .bhc-q summary i { flex: none; width: max(8px, calc(22 * var(--u))); height: max(8px, calc(22 * var(--u))); border-right: max(2px, calc(5 * var(--u))) solid var(--blue); border-bottom: max(2px, calc(5 * var(--u))) solid var(--blue); transform: rotate(45deg); margin-bottom: calc(8 * var(--u)); transition: transform .2s; }
.bpv .bhc-q[open] summary i { transform: rotate(-135deg); margin-bottom: calc(-8 * var(--u)); }
.bpv .bhc-q[open] { background: #fff; border-color: #cfe2f8; }
.bpv .bab-card .bab-b .bhc-q p { margin: 0; padding: 0 calc(34 * var(--u)) calc(32 * var(--u)); white-space: normal; }

/* in-text links between the legal / help pages */
.bpv a.bpv-lk { color: var(--blue); font-weight: 600; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 2px; }
