/* Support and legal pages (pages/*.html). Hero sits under the site nav, so less top padding than the CMS version. */
body { margin:0; }
.fp-legal { --fp-navy:#131e29; --fp-gold:#d3bc8d; --fp-cream:#f8f6f1; --fp-line:#e6e1d6;
  font-family:Montserrat,sans-serif; color:var(--fp-navy); font-size:17px; line-height:1.6; background:#fff; }
.fp-legal *, .fp-legal *::before { box-sizing:border-box; }
.fp-legal .fp-hero { background:#000 linear-gradient(180deg,rgba(0,0,0,.7) 0,rgba(0,0,0,.75) 100%); color:#fff;
  padding:160px 20px 75px; min-height:420px; display:flex; align-items:flex-end; }
.fp-legal .fp-hero-inner, .fp-legal .fp-body { max-width:1180px; margin:0 auto; width:100%; }
.fp-legal .fp-eyebrow { font-size:14px; font-weight:700; text-transform:uppercase; letter-spacing:4.48px; line-height:1.1; color:var(--fp-gold); margin:0 0 20px; }
.fp-legal .fp-hero h1 { font-size:48px; font-weight:700; text-transform:uppercase; letter-spacing:3.2px; line-height:1.1; color:#fff; margin:0 0 20px; max-width:660px; }
.fp-legal .fp-hero p { font-size:16px; font-weight:500; line-height:26.4px; color:rgba(255,255,255,.94); max-width:643px; margin:0 0 10px; }
.fp-legal .fp-hero .fp-meta { font-size:14px; color:rgba(255,255,255,.75); margin-top:16px; }
.fp-legal .fp-body { padding:75px 20px; }
.fp-legal .fp-summary { background:var(--fp-cream); padding:20px 24px; margin:0 0 40px; font-size:16px; }
.fp-legal .fp-summary strong:first-child { display:block; font-size:14px; font-weight:800; text-transform:uppercase; letter-spacing:1px; margin-bottom:9px; }
.fp-legal h2 { font-size:28px; font-weight:700; line-height:1.3; color:var(--fp-navy); margin:48px 0 14px; }
.fp-legal h3 { font-size:18px; font-weight:700; line-height:1.2; color:var(--fp-navy); margin:28px 0 10px; }
.fp-legal p { margin:0 0 14px; }
.fp-legal ul { list-style:none; padding:0; margin:0 0 18px; }
.fp-legal ul > li { position:relative; padding-left:30px; margin:0 0 10px; }
.fp-legal ul > li::before { content:""; position:absolute; left:0; top:5px; width:18px; height:18px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23D3BC8D' d='M504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zM227 387l184-184c6-6 6-16 0-23l-23-23c-6-6-16-6-23 0L216 308l-70-70c-6-6-16-6-23 0l-23 23c-6 6-6 16 0 23l104 104c6 6 16 6 23 0z'/%3E%3C/svg%3E") no-repeat center/contain; }
.fp-legal table { border-collapse:collapse; width:100%; margin:14px 0 22px; font-size:15.5px; line-height:1.5; }
.fp-legal th, .fp-legal td { border:1px solid var(--fp-line); padding:12px 14px; text-align:left; vertical-align:top; }
.fp-legal th { background:var(--fp-cream); font-size:13px; font-weight:800; text-transform:uppercase; letter-spacing:1px; }
.fp-legal a { color:var(--fp-navy); text-decoration:underline; text-decoration-color:var(--fp-gold); text-underline-offset:3px; }
.fp-legal a:hover { color:#8a7448; }
@media (max-width:767px) {
  .fp-legal .fp-hero { padding:120px 20px 50px; min-height:0; }
  .fp-legal .fp-hero h1 { font-size:30px; line-height:1.4; }
  .fp-legal h2 { font-size:23px; }
  .fp-legal .fp-body { padding:50px 20px; }
  .fp-legal table, .fp-legal tbody, .fp-legal tr, .fp-legal td { display:block; width:100%; border:0; }
  .fp-legal tr.fp-thead { display:none; }
  .fp-legal tr { background:var(--fp-cream); padding:14px 16px; margin:0 0 12px; }
  .fp-legal td { padding:4px 0; }
  .fp-legal td[data-label]:not([data-label=""])::before { content:attr(data-label); display:block; font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:1px; color:#5b6670; margin-top:6px; }
}
.fp-legal ol > li { padding-left:6px; } .fp-legal ol > li::before { content:none; display:none; }
.fp-legal .fp-hero { background:#131E29; padding:64px 0 56px; min-height:0; }
.fp-legal .fp-hero-inner, .fp-legal .fp-body { max-width:1100px; padding-left:24px; padding-right:24px; }
.fp-legal .fp-body { padding-top:56px; padding-bottom:64px; }
.fp-legal .fp-body > :first-child { margin-top:0; }
@media (max-width:767px) { .fp-legal .fp-hero { padding:44px 0 40px; } .fp-legal .fp-body { padding-top:40px; padding-bottom:44px; } }
