/* insurance island \u2014 extra layout only; tokens come from /assets/style.css */
.ins-sub { display:flex; flex-wrap:wrap; gap:4px 18px; margin: 4px 0 8px; }
.ins-sub a { display:inline-flex; align-items:center; min-height:44px; font-weight:600; color:var(--ink); }
.ins-sub a[aria-current="page"] { color:var(--navy); text-decoration:underline; text-underline-offset:.14em; }
.ins-jobs, .ins-covers { margin: 16px 0 8px; border-top:1px solid var(--line); }
.ins-jobs a, .ins-covers a {
  display:grid; grid-template-columns: 3rem minmax(0,1fr) auto; gap:12px; align-items:center;
  min-height:64px; padding:12px 4px; border-bottom:1px solid var(--line); color:inherit; text-decoration:none;
}
.ins-covers a { grid-template-columns: minmax(0,1fr) auto auto; }
.ins-jobs a:hover, .ins-covers a:hover { background:var(--bg-soft); text-decoration:none; box-shadow: inset 3px 0 0 var(--amber); }
.ins-jobs .num { font-variant-numeric:tabular-nums; font-weight:700; color:#0b57a4; }
.ins-jobs b, .ins-covers b { display:block; color:var(--navy); font-size:1.05rem; }
.ins-jobs small, .ins-covers span.fit { display:block; color:var(--muted); font-weight:400; font-size:1rem; }
.ins-go { color:var(--navy); font-weight:700; white-space:nowrap; }
.ins-tools { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin: 28px 0 8px; }
.ins-tools a { display:block; background:var(--navy); color:#fff; padding:20px 22px; border-radius:var(--radius); text-decoration:none; min-height:44px; }
.ins-tools a:hover { background:var(--navy-2); color:#fff; text-decoration:none; }
.ins-tools b { display:block; color:#fff; font-size:1.05rem; }
.ins-tools span { display:block; color:#c7d5e6; margin-top:4px; }
.ins-row { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin: 16px 0; }
.ins-scenes { display:flex; flex-wrap:wrap; gap:8px; margin: 16px 0; }
.ins-scenes button {
  min-height:44px; padding:0 14px; border-radius:8px; border:1px solid var(--line);
  background:#fff; color:var(--ink); font:inherit; cursor:pointer;
}
.ins-scenes button[aria-pressed="true"], .ins-scenes button:hover { background:var(--navy); color:#fff; border-color:var(--navy); }
.ins-ask { width:100%; max-width:40rem; min-height:48px; border:0; border-bottom:1px solid var(--line); font:inherit; padding:8px 2px; background:transparent; }
.ins-ask:focus { outline:none; border-bottom-color:var(--navy); }
label.ins-check { display:flex; gap:12px; align-items:flex-start; margin:18px 0; max-width:40rem; }
label.ins-check input { width:18px; height:18px; margin-top:4px; accent-color:var(--navy); }
.btn[disabled] { opacity:.55; cursor:not-allowed; }
.ins-closed { margin: 12px 0 0; }
@media (max-width:700px) {
  .ins-tools { grid-template-columns:1fr; }
  .ins-jobs a { grid-template-columns: 2.4rem minmax(0,1fr); }
  .ins-jobs .ins-go, .ins-covers .pill { display:none; }
  .ins-covers a { grid-template-columns: minmax(0,1fr); }
}
