/* ProcureCaribbean — shared styles for policy pages and 404 (matches index.html) */
:root{
  --ink:#15110D;--ink-soft:#2A241D;--ink-mute:#5C5347;
  --paper:#F0E7D5;--paper-warm:#E8DDC6;--paper-cool:#F5EFE3;
  --rust:#B14A20;--rust-dark:#8E3815;--gold:#C99A3D;
  --hairline:rgba(21,17,13,.18);--hairline-strong:rgba(21,17,13,.35);
  --font-display:'Fraunces','Times New Roman',serif;
  --font-body:'Schibsted Grotesk',system-ui,sans-serif;
  --font-mono:'JetBrains Mono','Courier New',monospace;
  --max:1240px;--gutter:clamp(20px,4vw,56px);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}
::selection{background:var(--rust);color:var(--paper)}

/* masthead */
.masthead{background:var(--ink);color:var(--paper);padding:12px 0;border-bottom:1px solid rgba(240,231,213,.15)}
.masthead-row{display:flex;justify-content:space-between;align-items:center;gap:24px;font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.masthead-row span{opacity:.7}
.hide-mobile{display:inline}
@media(max-width:600px){.hide-mobile{display:none}}

/* nav */
.nav{padding:28px 0 0}
.nav-row{display:flex;justify-content:space-between;align-items:baseline;gap:24px;padding-bottom:24px;border-bottom:1px solid var(--hairline-strong)}
.wordmark{font-family:var(--font-display);font-weight:500;font-variation-settings:'opsz'144,'SOFT'0;font-size:clamp(26px,4vw,40px);letter-spacing:-.025em;line-height:.95}
.wordmark em{font-style:italic;font-variation-settings:'opsz'144,'SOFT'60;color:var(--rust)}
.nav-links{display:flex;gap:28px;font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;align-items:baseline}
.nav-links a{transition:color .2s}
.nav-links a:hover{color:var(--rust)}
.nav-links a.cta{background:var(--ink);color:var(--paper);padding:10px 18px;border-radius:2px}
.nav-links a.cta:hover{background:var(--rust)}
@media(max-width:640px){.nav-links{gap:14px}.nav-links a:not(.cta){display:none}}

/* policy body */
.policy{padding:64px 0 88px}
.policy-col{max-width:760px;margin:0 auto}
.policy .eyebrow{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:18px}
.policy h1{font-family:var(--font-display);font-weight:400;font-variation-settings:'opsz'144,'SOFT'20;font-size:clamp(34px,6vw,56px);line-height:1.04;letter-spacing:-.02em;margin-bottom:16px}
.policy .updated{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--ink-mute);padding-bottom:28px;margin-bottom:36px;border-bottom:1px solid var(--hairline-strong)}
.policy h2{font-family:var(--font-display);font-weight:500;font-variation-settings:'opsz'40,'SOFT'30;font-size:21px;letter-spacing:-.01em;margin:34px 0 12px}
.policy p{color:var(--ink-soft);line-height:1.72;margin-bottom:18px}
.policy p.lead{font-size:19px;color:var(--ink);margin-bottom:28px}
.policy a:not(.btn):not(.wordmark){color:var(--rust);text-decoration:underline;text-underline-offset:2px}
.policy a:not(.btn):not(.wordmark):hover{color:var(--rust-dark)}
.policy .backhome{display:inline-flex;align-items:center;gap:8px;margin-top:40px;font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--rust);text-decoration:none}
.policy .backhome:hover{color:var(--rust-dark)}
.policy .contact-line{margin-top:28px;padding-top:20px;border-top:1px solid var(--hairline);font-family:var(--font-mono);font-size:13px;color:var(--ink-mute)}

/* subscribe form */
.sub-form{margin:36px 0 24px}
.sub-form .field{margin-bottom:18px}
.sub-form label{display:block;margin-bottom:8px;font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute)}
.sub-form input{display:block;width:100%;box-sizing:border-box;font-family:var(--font-body);font-size:16px;color:var(--ink);background:var(--paper-cool);border:1px solid var(--hairline-strong);border-radius:3px;padding:14px 15px;transition:border-color .15s,box-shadow .15s}
.sub-form input:focus{outline:none;border-color:var(--rust);box-shadow:0 0 0 3px rgba(177,74,32,.12)}
.sub-form .form-error{color:var(--rust-dark);font-family:var(--font-body);font-size:14px;font-weight:500;letter-spacing:0;text-transform:none;margin:0 0 16px}
.sub-form .btn{display:block;width:100%;justify-content:center;text-align:center;cursor:pointer;border:none;font-size:16px;padding:16px 26px;margin-top:4px}

/* 404 */
.nf{min-height:46vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:80px 0}
.nf .code{font-family:var(--font-display);font-variation-settings:'opsz'144,'SOFT'0;font-size:clamp(80px,16vw,160px);line-height:.9;color:var(--rust);letter-spacing:-.04em}
.nf h1{font-family:var(--font-display);font-weight:500;font-size:clamp(24px,4vw,34px);margin:12px 0 14px;letter-spacing:-.01em}
.nf p{color:var(--ink-soft);margin-bottom:28px;max-width:460px}
.btn{font-family:var(--font-body);font-weight:500;font-size:15px;padding:15px 26px;border-radius:2px;display:inline-flex;align-items:center;gap:10px;border:1px solid transparent;transition:all .18s}
.btn-primary{background:var(--rust);color:var(--paper)}
.btn-primary:hover{background:var(--rust-dark)}

/* footer (matches index.html) */
footer{background:var(--ink);color:rgba(240,231,213,.6);padding:64px 0 32px;border-top:1px solid rgba(240,231,213,.1);font-size:13px}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:48px;margin-bottom:48px}
@media(max-width:760px){.footer-grid{grid-template-columns:1fr;gap:32px}}
.footer-wordmark{font-family:var(--font-display);font-variation-settings:'opsz'60,'SOFT'20;font-weight:500;font-size:26px;color:var(--paper);margin-bottom:12px;letter-spacing:-.02em}
.footer-wordmark em{font-style:italic;color:var(--gold);font-variation-settings:'opsz'60,'SOFT'80}
footer h4{font-family:var(--font-mono);font-size:11px;color:rgba(240,231,213,.4);letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px;font-weight:500}
footer ul{list-style:none}
footer ul li{padding:4px 0}
footer ul a{transition:color .15s}
footer ul a:hover{color:var(--gold)}
.footer-social{display:flex;gap:10px;margin-top:22px}
.footer-social a{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(240,231,213,.18);border-radius:2px;color:rgba(240,231,213,.55);transition:color .18s,border-color .18s,background .18s}
.footer-social a:hover{color:var(--ink);background:var(--gold);border-color:var(--gold)}
.footer-fineprint{border-top:1px solid rgba(240,231,213,.1);padding-top:32px;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;font-family:var(--font-mono);font-size:11px;color:rgba(240,231,213,.4);letter-spacing:.04em}
.footer-fineprint p{max-width:720px;line-height:1.5}
.footer-policy{display:flex;gap:18px;flex-wrap:wrap}
.footer-policy a{transition:color .15s}
.footer-policy a:hover{color:var(--gold)}
