/* ============================================================
   Legal policy documents — Code of Conduct, Privacy, Refund
   Restrained, document-like. No marketing devices.
   ============================================================ */

.lg-page{background:var(--hb-cream)}

/* — masthead — */
.lg-masthead{padding:clamp(40px,5vw,68px) 0 clamp(28px,3.5vw,40px);
  background:linear-gradient(180deg,#FBF3E0,var(--hb-cream));
  border-bottom:1px solid var(--hb-border)}
.lg-badge{display:inline-flex;align-items:center;gap:9px;margin-bottom:14px;padding:8px 16px;
  border-radius:999px;font:700 10.5px/1 var(--hb-text);letter-spacing:.16em;text-transform:uppercase;
  color:#3F2F10;background:linear-gradient(180deg,#F0CE83,var(--hb-gold) 58%,#C89440);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45),inset 0 -2px 0 rgba(0,0,0,.2)}
.lg-badge img{width:16px;height:16px}
.lg-h1{margin:0 0 8px;font:800 clamp(28px,4vw,44px)/1.15 var(--hb-display);color:var(--hb-ink);
  letter-spacing:-.01em}
.lg-sub{margin:0 0 26px;font:500 14px/1.7 var(--hb-text);color:var(--hb-muted)}

/* — document control panel — */
.lg-control{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:0;
  border:1px solid var(--hb-border);border-radius:16px;overflow:hidden;
  background:#FFFDF6;box-shadow:0 18px 36px -26px rgba(29,22,28,.3)}
.lg-control>div{padding:14px 18px;border-right:1px solid var(--hb-border);
  border-bottom:1px solid var(--hb-border)}
.lg-control>div:nth-child(4n){border-right:0}
.lg-control dt{font:700 9.6px/1.3 var(--hb-text);letter-spacing:.15em;text-transform:uppercase;
  color:var(--hb-bronze);margin-bottom:6px}
.lg-control dd{margin:0;font:600 13px/1.55 var(--hb-text);color:var(--hb-ink)}

/* — layout — */
.lg-doc{padding:clamp(34px,4.5vw,56px) 0 clamp(50px,6vw,80px)}
.lg-grid{display:grid;grid-template-columns:266px 1fr;gap:44px;align-items:start}

/* — contents rail — */
.lg-aside{position:sticky;top:96px}
.lg-toc,.lg-sibs{padding:20px;border-radius:16px;border:1px solid var(--hb-border);
  background:#FFFDF6;box-shadow:0 16px 32px -24px rgba(29,22,28,.28)}
.lg-sibs{margin-top:16px}
.lg-toc h2,.lg-sibs h2{margin:0 0 12px;padding-bottom:10px;border-bottom:1px solid var(--hb-border);
  font:700 10.5px/1 var(--hb-text);letter-spacing:.16em;text-transform:uppercase;color:var(--hb-bronze)}
.lg-toc ol{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.lg-toc a{display:flex;gap:10px;align-items:flex-start;padding:8px 10px;border-radius:9px;
  text-decoration:none;font:500 12.8px/1.45 var(--hb-text);color:var(--hb-body);
  transition:background .15s ease,color .15s ease}
.lg-toc a:hover{background:rgba(226,177,93,.14);color:var(--hb-ink)}
.lg-toc .n{flex:none;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;
  font:800 10px/1 var(--hb-display);color:#3F2F10;
  background:radial-gradient(circle at 35% 30%,#F3D58C,var(--hb-gold) 55%,#B08542)}
.lg-sib{display:block;padding:10px 12px;border-radius:9px;text-decoration:none;margin-bottom:4px;
  font:600 12.8px/1.4 var(--hb-text);color:var(--hb-body);border:1px solid transparent}
.lg-sib:hover{background:rgba(226,177,93,.14)}
.lg-sib.is-current{color:#FCF7EA;border-color:#5A1F1A;
  background:linear-gradient(180deg,#8C3B32,var(--hb-burg) 58%,#5A1F1A)}

/* — document body — */
.lg-body{max-width:78ch;padding:34px 40px 36px;border-radius:20px;
  border:1px solid var(--hb-border);background:#FFFDF6;
  box-shadow:0 24px 48px -32px rgba(29,22,28,.3)}
.lg-body p{margin:0 0 15px;font:400 15.2px/1.85 var(--hb-text);color:var(--hb-body)}
.lg-body strong{font-weight:700;color:var(--hb-ink)}
.lg-body a{color:var(--hb-burg);font-weight:600;text-decoration:none;
  border-bottom:1px solid rgba(123,45,38,.36)}
.lg-body a:hover{border-color:var(--hb-burg)}

.lg-h2{display:flex;align-items:center;gap:14px;margin:38px 0 16px;padding-top:26px;
  border-top:1px solid var(--hb-border);
  font:800 20px/1.3 var(--hb-display);color:var(--hb-ink);scroll-margin-top:100px}
.lg-body>.lg-h2:first-child{margin-top:0;padding-top:0;border-top:0}
.lg-h2 .n{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;
  font:800 14px/1 var(--hb-display);color:#FCF7EA;
  background:radial-gradient(circle at 35% 30%,#8C3B32,var(--hb-burg) 55%,#5A1F1A);
  box-shadow:inset 0 1px 2px rgba(255,255,255,.28),inset 0 -2px 3px rgba(0,0,0,.32)}
.lg-h2--plain{color:var(--hb-burg)}
.lg-h3{margin:26px 0 10px;font:700 15.5px/1.4 var(--hb-display);color:var(--hb-ink)}

.lg-list{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:8px}
.lg-list li{position:relative;padding-left:26px;font:400 14.8px/1.75 var(--hb-text);color:var(--hb-body)}
.lg-list li::before{content:"";position:absolute;left:4px;top:.72em;width:8px;height:8px;
  border-radius:2px;transform:rotate(45deg);
  background:radial-gradient(circle at 35% 30%,#F3D58C,var(--hb-gold) 55%,#B08542)}

/* — callout — */
.lg-callout{margin:0 0 20px;padding:18px 22px;border-radius:14px;
  border:1px solid rgba(123,45,38,.26);border-left:4px solid var(--hb-burg);background:#FBF1EC}
.lg-callout .k{display:inline-block;margin-bottom:8px;padding:5px 12px;border-radius:999px;
  font:700 9.6px/1 var(--hb-text);letter-spacing:.15em;text-transform:uppercase;color:#FCF7EA;
  background:linear-gradient(180deg,#8C3B32,var(--hb-burg) 58%,#5A1F1A)}
.lg-callout p{margin:0;font:500 13.8px/1.75 var(--hb-text);color:#5A2620}

/* — policy tables — */
.lg-tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 0 22px}
.lg-table{width:100%;min-width:520px;border-collapse:separate;border-spacing:0;
  border:1px solid var(--hb-border);border-radius:14px;overflow:hidden}
.lg-table th{padding:13px 16px;text-align:left;font:700 12.5px/1.35 var(--hb-display);
  color:#FCF7EA;background:linear-gradient(180deg,#7E5F31,var(--hb-bronze) 58%,#57411E);
  vertical-align:top}
.lg-table th+th{border-left:1px solid rgba(255,255,255,.14)}
.lg-table td{padding:13px 16px;font:400 13.6px/1.7 var(--hb-text);color:var(--hb-body);
  border-top:1px solid var(--hb-border);background:#FFFDF6;vertical-align:top}
.lg-table td+td{border-left:1px solid var(--hb-border)}
.lg-table tbody tr:nth-child(even) td{background:#FBF6E8}
.lg-table td:first-child{font-weight:600;color:var(--hb-ink)}

@media (max-width:1020px){
  .lg-grid{grid-template-columns:1fr;gap:26px}
  .lg-aside{position:static}
  .lg-toc ol{grid-template-columns:1fr 1fr;display:grid}
  .lg-sibs{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
  .lg-sibs h2{width:100%;margin-bottom:8px}
  .lg-control{grid-template-columns:repeat(2,1fr)}
  .lg-control>div:nth-child(4n){border-right:1px solid var(--hb-border)}
  .lg-control>div:nth-child(2n){border-right:0}
}
@media (max-width:640px){
  .lg-body{padding:26px 22px 28px;border-radius:16px}
  .lg-toc ol{grid-template-columns:1fr}
  .lg-control{grid-template-columns:1fr}
  .lg-control>div{border-right:0!important}
  .lg-h2{font-size:18px;gap:11px}
  .lg-h2 .n{width:30px;height:30px;font-size:13px}
}
@media print{
  .lg-aside,.hb-header,.hb-footer,apply-modal,app-download-modal{display:none!important}
  .lg-grid{grid-template-columns:1fr}
  .lg-body{border:0;box-shadow:none;padding:0;max-width:none}
  .lg-page{background:#fff}
}
