/* Shared styles for the simple inner pages (privacy, subscribe). Colours match index.html and the logo. */
:root{
  --bg-dark:#0A1440;
  --bg-dark-panel:#152A66;
  --blue:#0841C6;
  --blue-bright:#265AFB;
  --pink:#E81095;
  --paper:#F5F6FB;
  --paper-dim:#E7EAF5;
  --ink:#10162B;
  --slate:#545E75;
  --steel-light:#C3CBE3;
}
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:'Inter',sans-serif;background:var(--paper);color:var(--ink);line-height:1.65;-webkit-font-smoothing:antialiased;}
h1,h2,h3{font-family:'Space Grotesk',sans-serif;letter-spacing:-0.01em;line-height:1.2;}
a{color:var(--blue);}
.wrap{max-width:820px;margin:0 auto;padding:0 24px;}

header{background:#fff;border-bottom:1px solid var(--paper-dim);}
nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px;max-width:1140px;margin:0 auto;}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;}
.brand img{width:32px;height:auto;}
.brand-name{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:15px;color:var(--blue);}
.brand-name span{display:block;font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--slate);font-weight:400;letter-spacing:0.06em;margin-top:2px;}
.back{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--slate);text-decoration:none;}
.back:hover{color:var(--pink);}

.page-hero{background:var(--bg-dark);color:var(--paper);padding:64px 0 52px;position:relative;overflow:hidden;}
.page-hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(36,91,245,0.28) 1px,transparent 1px),linear-gradient(90deg,rgba(36,91,245,0.28) 1px,transparent 1px);background-size:56px 56px;opacity:0.25;pointer-events:none;}
.page-hero .wrap{position:relative;}
.eyebrow{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:0.14em;color:var(--pink);text-transform:uppercase;margin-bottom:14px;}
.page-hero h1{font-size:clamp(2rem,4vw,2.8rem);font-weight:600;}
.page-hero p{margin-top:12px;color:var(--steel-light);max-width:560px;}

main{padding:56px 0 72px;}
main h2{font-size:1.3rem;margin:36px 0 10px;}
main h2:first-child{margin-top:0;}
main p,main li{color:#2B3350;font-size:15.5px;}
main p+p{margin-top:12px;}
main ul{margin:10px 0 0 20px;display:grid;gap:6px;}

.card{background:#fff;border:1px solid var(--paper-dim);padding:32px;}
label{display:block;font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:0.08em;text-transform:uppercase;color:var(--slate);margin-bottom:8px;}
input[type=text],input[type=email]{width:100%;border:1px solid #CBD2E6;padding:12px 14px;font-family:'Inter',sans-serif;font-size:15px;color:var(--ink);background:#fff;transition:border-color .2s ease,box-shadow .2s ease;}
input:focus{outline:none;border-color:var(--pink);box-shadow:0 0 0 4px rgba(232,16,149,0.15);}
.field{margin-bottom:18px;}
.consent{display:flex;gap:12px;align-items:flex-start;font-size:14px;color:#2B3350;margin:6px 0 22px;}
.consent input{margin-top:4px;width:18px;height:18px;accent-color:var(--pink);flex-shrink:0;}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
button.primary{width:100%;background:var(--pink);color:#fff;border:1px solid var(--pink);padding:14px;font-weight:600;font-size:15px;font-family:'Inter',sans-serif;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;}
button.primary:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(232,16,149,0.3);}
button.primary:disabled{opacity:.6;cursor:wait;transform:none;box-shadow:none;}
.msg{margin-top:16px;font-size:14.5px;padding:12px 14px;display:none;}
.msg.ok{display:block;background:#E8F8EF;color:#14633A;border:1px solid #B9E7CC;}
.msg.err{display:block;background:#FDECF5;color:#9B0D62;border:1px solid #F6BFDD;}
.small{font-size:13px;color:var(--slate);margin-top:16px;}

footer{background:#080F33;color:var(--steel-light);padding:32px 0;font-size:13px;}
footer .wrap{max-width:1140px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;}
footer a{color:var(--steel-light);text-decoration:none;margin-left:18px;}
footer a:first-child{margin-left:0;}
footer a:hover{color:var(--pink);}
