/* Privacy policy page. Converted 1:1 from the design export: each class is
   the inline style it replaced, so the rendering matches the design. */

/* Page-wide rules from the design */
html,body{margin:0;min-height:100%;background:#f8e7c9;color-scheme:light}
body{font-family:Arial,Helvetica,sans-serif;color:#0b0f0d;font-size:16px;-webkit-font-smoothing:antialiased}
a{color:#0b0f0d;text-decoration:underline;text-decoration-color:rgba(6,78,59,.45);text-underline-offset:3px}
a:hover{color:#064e3b;text-decoration-color:#064e3b}
html{scroll-behavior:smooth}

/* Former inline styles */
.page { min-height:100vh; position:relative; background:radial-gradient(ellipse at 50% -10%,#e6e5c6 0%,#f3e5c7 32%,#f8e7c9 70%); }
.frame { position:fixed; inset:18px; border:1px solid rgba(6,78,59,.14); pointer-events:none; z-index:3; }
.site-header { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:47px 58px 0; flex-wrap:wrap; }
.brand { display:flex; align-items:center; gap:13px; color:#0b0f0d; text-decoration:none; }
.brand-logo { display:block; height:64px; width:auto; }
.brand-caption { font-size:10px; text-transform:uppercase; letter-spacing:2.3px; color:#3f6b57; }
.doc { max-width:720px; margin:0 auto; padding:96px 28px 80px; position:relative; z-index:1; }
.kicker { font-size:10px; letter-spacing:3.5px; color:#2f6b50; text-transform:uppercase; margin:0 0 18px; }
.doc-title { font-family:Georgia,'Times New Roman',serif; font-size:clamp(34px,4.2vw,54px); font-weight:400; letter-spacing:-1.4px; line-height:1.12; margin:0; text-wrap:pretty; }
.doc-intro { font-size:16px; color:#2e4a3d; line-height:1.7; margin:20px 0 0; max-width:560px; text-wrap:pretty; }
.doc-meta { margin:30px 0 0; padding:18px 0 0; border-top:1px solid rgba(6,78,59,.18); font-size:12px; letter-spacing:.6px; color:#3f6b57; line-height:1.8; }
.doc-meta-note { font-style:italic; color:#2f6b50; margin-top:6px; }
.ink { color:#0b0f0d; font-weight:400; }
.toc { margin:56px 0 0; padding:28px 0 32px; border-top:1px solid rgba(6,78,59,.18); border-bottom:1px solid rgba(6,78,59,.18); }
.toc-list { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:9px 32px; font-size:14px; line-height:1.5; }
.toc-item { display:flex; gap:12px; align-items:baseline; }
.toc-n { font-family:Georgia,serif; font-size:12px; color:#2f6b50; min-width:18px; }
.toc-link { color:#0b0f0d; text-decoration:none; }
.policy { margin-top:56px; font-size:16px; line-height:1.75; color:#1d2622; text-wrap:pretty; }
.policy-lead { margin:0; color:#0b0f0d; }
.hl { color:#064e3b; font-weight:400; }
.sec { margin-top:64px; scroll-margin-top:40px; }
.sec-title { font-family:Georgia,'Times New Roman',serif; font-size:28px; font-weight:400; letter-spacing:-.6px; line-height:1.2; margin:0 0 18px; color:#064e3b; display:flex; gap:16px; align-items:baseline; }
.sec-n { font-size:13px; letter-spacing:2px; color:#2f6b50; font-family:Arial,Helvetica,sans-serif; }
.m-0 { margin:0; }
.mt-16 { margin:16px 0 0; }
.mt-20 { margin:20px 0 0; }
.list { margin:16px 0 0; padding:0 0 0 22px; display:grid; gap:10px; }
.list-flush { margin:0; padding:0 0 0 22px; display:grid; gap:10px; }
.note { margin:28px 0 0; padding:22px 24px; border:1px solid rgba(6,78,59,.18); background:rgba(6,78,59,.07); }
.note-strong { padding:22px 24px; border:1px solid rgba(6,78,59,.4); background:rgba(6,78,59,.07); }
.note-label { font-size:10px; letter-spacing:3px; color:#2f6b50; text-transform:uppercase; margin:0 0 10px; }
.note-label-strong { font-size:10px; letter-spacing:3px; color:#064e3b; text-transform:uppercase; margin:0 0 10px; }
.note-text { margin:0; font-size:15px; color:#1d2622; }
.uses { width:100%; border-collapse:collapse; font-size:15px; line-height:1.6; margin:8px 0 0; }
.uses-th { text-align:left; font-weight:400; font-size:10px; letter-spacing:3px; text-transform:uppercase; color:#2f6b50; padding:0 16px 12px 0; border-bottom:1px solid rgba(6,78,59,.3); }
.uses-th-last { text-align:left; font-weight:400; font-size:10px; letter-spacing:3px; text-transform:uppercase; color:#2f6b50; padding:0 0 12px; border-bottom:1px solid rgba(6,78,59,.3); }
.uses-purpose { vertical-align:top; padding:14px 16px 14px 0; color:#064e3b; border-bottom:1px solid rgba(6,78,59,.14); }
.uses-detail { vertical-align:top; padding:14px 0; border-bottom:1px solid rgba(6,78,59,.14); }
.contact-address { margin:20px 0 0; font-style:normal; line-height:1.75; color:#064e3b; padding-left:20px; border-left:1px solid rgba(6,78,59,.3); }
.to-top { display:inline-block; margin-top:72px; font-size:10px; letter-spacing:3px; text-transform:uppercase; color:#2f6b50; text-decoration:none; }
.site-footer { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:0 58px 43px; flex-wrap:wrap; }
.footer-copy { font-size:11px; letter-spacing:.4px; color:#3f6b57; }
.footer-links { display:flex; gap:28px; font-size:11px; letter-spacing:.4px; }
.footer-link { color:#3f6b57; text-decoration:none; }
.footer-link-current { color:#064e3b; text-decoration:none; }
.uses-purpose-w { width:38%; }

/* Link hover states (inline styles used to outrank a:hover) */
a.brand:hover { color:#0b0f0d; text-decoration:none; }
a.toc-link:hover { color:#0b0f0d; text-decoration:none; }
a.to-top:hover { color:#064e3b; text-decoration:none; }
a.footer-link:hover { color:#064e3b; text-decoration:none; }
a.footer-link-current:hover { color:#064e3b; text-decoration:none; }
