.pt-legal-page { margin:0; color:#252523; background:#faf9f6; font-family:Inter,Arial,sans-serif; font-size:17px; line-height:1.7; }
.pt-legal-page * { box-sizing:border-box; }
.pt-legal-page a { color:inherit; text-underline-offset:.2em; }
.pt-legal-header,.pt-legal-footer { display:flex; align-items:center; justify-content:space-between; gap:28px; max-width:1200px; margin:auto; padding:28px 32px; }
.pt-legal-header { border-bottom:1px solid #deddd8; }
.pt-legal-brand { font-size:27px; font-weight:750; letter-spacing:-1px; text-decoration:none; white-space:nowrap; }
.pt-legal-brand span { color:#596e56; }
.pt-legal-nav,.pt-legal-footer nav { display:flex; flex-wrap:wrap; gap:24px; }
.pt-legal-nav a,.pt-legal-footer a { text-decoration:none; }
.pt-legal-page main { max-width:850px; margin:auto; padding:64px 32px 88px; }
.pt-legal-page h1 { font-size:clamp(32px,5vw,48px); line-height:1.15; letter-spacing:-1.4px; margin:0 0 32px; }
.pt-legal-page h2 { font-size:26px; line-height:1.35; margin:44px 0 18px; letter-spacing:-.5px; }
.pt-legal-page h3 { font-size:20px; line-height:1.4; margin:28px 0 12px; }
.pt-legal-page p { margin:0 0 20px; }
.pt-legal-page ul { padding-left:25px; margin:0 0 22px; }
.pt-legal-page li { padding-left:4px; margin:8px 0; }
.pt-legal-page code { font-family:inherit; font-size:inherit; overflow-wrap:anywhere; }
.pt-legal-page article a { overflow-wrap:anywhere; }
.pt-legal-footer { border-top:1px solid #deddd8; font-size:15px; }
.pt-legal-menu { display:none; position:relative; }
.pt-legal-menu summary { cursor:pointer; padding:10px; }
.pt-legal-menu nav { position:absolute; right:0; min-width:160px; padding:16px; display:flex; flex-direction:column; gap:14px; background:#faf9f6; border:1px solid #deddd8; z-index:5; }
.pt-skip { position:absolute; top:-100px; left:12px; background:white; padding:10px; z-index:10; }
.pt-skip:focus { top:8px; }
@media(max-width:600px) { .pt-legal-header,.pt-legal-footer { padding:20px; } .pt-legal-nav { display:none; } .pt-legal-menu { display:block; } .pt-legal-page main { padding:40px 22px 56px; } .pt-legal-footer { align-items:flex-start; flex-direction:column; } .pt-legal-footer nav { gap:12px 20px; } }
@media print { .pt-legal-header,.pt-legal-footer,.pt-legal-menu,.pt-skip { display:none; } .pt-legal-page main { max-width:none; padding:0; } .pt-legal-page { background:white; color:black; } }
