:root{
  --navy: #16273f;
  --navy-deep: #0e1a2c;
  --gold: #f5a623;
  --gold-deep: #c9820f;
  --cream: #f5f0e8;
  --cream-line: #e3dccd;
  --red: #b22222;
  --ink: #1a1a1a;
  --white: #ffffff;
  --paper: #fffdf8;
}
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:'Archivo', sans-serif; background:var(--cream); color:var(--ink); line-height:1.65;}
.serif{font-family:'Fraunces', serif;}
a{color:var(--navy);}
.wrap{max-width:860px; margin:0 auto; padding:0 24px;}
.banner{background:var(--gold); color:var(--navy-deep); font-size:13px; font-weight:600; text-align:center; padding:11px 18px; line-height:1.5; border-bottom:2px solid var(--gold-deep);}
header{background:var(--cream); border-bottom:1px solid var(--cream-line);}
.nav{display:flex; align-items:center; justify-content:space-between; padding:16px 24px; max-width:1180px; margin:0 auto;}
.logo{display:flex; align-items:center; gap:10px;}
.logo-mark{width:38px; height:38px; border-radius:8px; background:var(--navy); display:flex; align-items:center; justify-content:center; color:var(--gold); font-family:'Fraunces',serif; font-weight:700; font-size:19px;}
.logo-text .name{font-family:'Fraunces',serif; font-weight:600; font-size:18px; color:var(--navy);}
.logo-text .tag{font-size:10.5px; letter-spacing:.06em; text-transform:uppercase; color:#6b7280;}
.btn-back{font-size:13px; font-weight:600; color:var(--navy); border:1.5px solid var(--navy); padding:9px 16px; border-radius:6px; text-decoration:none;}
.btn-back:hover{background:var(--navy); color:#fff;}
.page-hero{background:var(--navy); color:#fff; padding:50px 0 36px;}
.page-hero h1{font-family:'Fraunces',serif; font-size:clamp(28px,4vw,40px); font-weight:600;}
.page-hero .updated{margin-top:8px; font-size:13px; color:#9fb0c4; font-family:'JetBrains Mono', monospace;}
main{padding:48px 0 70px; background:#fff;}
main h2{font-family:'Fraunces',serif; color:var(--navy); font-size:22px; margin:32px 0 12px; font-weight:600;}
main h2:first-child{margin-top:0;}
main p{margin-bottom:14px; color:#3d3a35; font-size:15px;}
main ul{margin:0 0 16px 22px; color:#3d3a35; font-size:15px;}
main li{margin-bottom:8px;}
main table{width:100%; border-collapse:collapse; margin:18px 0; font-size:14px;}
main table th, main table td{border:1px solid var(--cream-line); padding:10px 12px; text-align:left;}
main table th{background:var(--cream); color:var(--navy); font-family:'Fraunces',serif;}
.callout{background:var(--cream); border:1px solid var(--cream-line); border-left:4px solid var(--gold-deep); padding:16px 18px; border-radius:4px; margin:20px 0; font-size:14px;}
footer{background:var(--navy-deep); color:#a9b6c8; padding:34px 0; text-align:center; font-size:12.5px;}
footer a{color:#94a4b9;}
footer .links{margin-bottom:10px;}
footer .links a{margin:0 10px;}

/* floating WhatsApp icon — shown site-wide for instant reply */
.wa-float{
  position:fixed; bottom:24px; right:24px; z-index:60;
  width:58px; height:58px; border-radius:50%;
  background:#25D366; display:flex; align-items:center; justify-content:center;
  box-shadow:0 10px 24px -8px rgba(0,0,0,.4);
  transition:transform .18s ease;
}
.wa-float:hover{transform:scale(1.08);}
.wa-float svg{width:28px; height:28px; fill:#fff;}
