/* Intentionally scoped to the existing COS front-page layout. No remote fonts. */
body.home #pl-4341 {
  --cos-home-ink:#16354b; --cos-home-muted:#526675; --cos-home-blue:#1766a8;
  font-family:Arial,Helvetica,sans-serif; font-size:16px; line-height:1.65;
  color:var(--cos-home-ink); padding-top:14px;
}
body.home #pl-4341 :is(h2,h3,h4,p,input,select,textarea,button),
body.home #pl-4341 :is(.cosps,.cosg,.cos-spotlight) {
  font-family:Arial,Helvetica,sans-serif;
}
body.home #pl-4341 :is(h2,h3,h4) { color:var(--cos-home-ink); letter-spacing:-.02em; }
body.home #pl-4341 > .panel-grid { margin-bottom:40px; }
body.home #pl-4341 #pg-4341-0 { display:none; }
body.home #pl-4341 #pg-4341-1 { margin-bottom:32px; }
body.home #pl-4341 #pg-4341-1 > .panel-row-style { padding:10px 0 0; gap:32px; }
body.home #pl-4341 #pg-4341-1 .panel-grid-cell { min-width:0; flex:1; }
body.home #pl-4341 #panel-4341-1-0-0 .widget-title {
  font-size:clamp(28px,3.1vw,38px); line-height:1.18; font-weight:700;
  margin:0 0 14px; max-width:590px; text-wrap:balance;
}
body.home #pl-4341 #panel-4341-1-0-0 p { margin:0; font-size:17px; line-height:1.65; color:var(--cos-home-muted); }
body.home #pl-4341 #panel-4341-1-0-0 em { font-style:normal; }
body.home #pl-4341 .search-form { margin:0; width:100%; }
body.home #pl-4341 .search-form input[type=search] {
  width:100%; min-height:50px; border:1px solid #c9d6e0; border-radius:9px;
  background:#fff; padding:12px 48px 12px 16px; font-size:16px; box-shadow:none;
}
body.home #pl-4341 :is(.cos-spotlight,.cosps.cp-home) { margin:0; padding:30px; border:1px solid #dce5ec; border-radius:14px; box-shadow:none; }
body.home #pl-4341 .cos-spotlight { background:#f0f4f7; }
body.home #pl-4341 :is(.cos-spotlight h2,.cp-home h2,.cosg-heading) {
  font-size:clamp(25px,2.5vw,30px); font-weight:700; line-height:1.25; margin:0 0 12px;
}
body.home #pl-4341 .cos-spotlight-intro { margin:0 0 24px; font-size:16px; color:var(--cos-home-muted); max-width:900px; }
body.home #pl-4341 .cos-spotlight-grid { gap:20px; }
body.home #pl-4341 a.cos-spotlight-card { padding:24px; border-radius:10px; border-top:3px solid #1766a8; }
body.home #pl-4341 .cos-spotlight h3 { font-size:21px; line-height:1.35; font-weight:700; letter-spacing:-.01em; }
body.home #pl-4341 .cos-spotlight-summary { font-size:16px; line-height:1.65; color:var(--cos-home-muted); }
body.home #pl-4341 .cos-spotlight-topic { font-size:11px; letter-spacing:.09em; }
/* The editor currently wraps this shortcode in code tags. Neutralize those
   wrappers, including empty tags recreated by the HTML parser. */
body.home #pl-4341 #panel-4341-3-0-0 code {
  display:contents; font:inherit; white-space:normal; background:transparent;
  color:inherit; border:0; padding:0; box-shadow:none;
}
body.home #pl-4341 #panel-4341-3-0-0 .textwidget > p:empty { display:none; }
body.home #pl-4341 .cosps.cp-home,
body.home #pl-4341 .cp-home :is(h2,p,span,strong,label,select,option,button,a) {
  font-family:Arial,Helvetica,sans-serif !important; white-space:normal;
}
body.home #pl-4341 .cosps.cp-home { background:#fff; border-top:4px solid var(--cos-home-blue); color:var(--cos-home-ink); }
body.home #pl-4341 .cp-home .cp-kicker { display:block; color:var(--cos-home-blue); font-size:11px; font-weight:700; letter-spacing:.12em; margin-bottom:10px; background:none; }
body.home #pl-4341 .cp-home > p { font-size:16px; line-height:1.65; max-width:850px; color:var(--cos-home-muted); margin:0; }
body.home #pl-4341 .cp-home-stats { display:flex; gap:16px; margin:24px 0 18px; }
body.home #pl-4341 .cp-home-stats > div { flex:0 1 220px; min-width:0; background:#edf4fa; border:0; border-radius:10px; padding:18px 22px; }
body.home #pl-4341 .cp-home-stats strong { font-size:34px; line-height:1.15; letter-spacing:-.025em; color:#103d60; font-weight:700; }
body.home #pl-4341 .cp-home-stats span { font-size:14px; line-height:1.5; margin-top:6px; }
body.home #pl-4341 .cp-home-types { gap:9px; margin:0 0 24px; }
body.home #pl-4341 .cp-home-types a { font-size:14px; padding:8px 13px; line-height:1.4; }
body.home #pl-4341 .cp-home-types a span { font-size:12px; }
body.home #pl-4341 .cp-home form { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto; align-items:end; gap:16px; margin:0; }
body.home #pl-4341 .cp-home form label { min-width:0; font-size:14px; font-weight:700; gap:7px; }
body.home #pl-4341 .cp-home :is(select,button) { min-height:48px; font-size:16px; line-height:1.4; border-radius:8px; }
body.home #pl-4341 .cp-home select { width:100%; font-weight:400; background:#fff; }
body.home #pl-4341 .cp-home form button { font-weight:700; white-space:normal; padding:12px 20px; }
body.home #pl-4341 :is(.cosg-heading,.widget-title) { line-height:1.3; }
body.home #pl-4341 .cosg-heading { margin-bottom:22px; }
body.home #pl-4341 .cosg-title { font-size:21px; line-height:1.4; font-weight:700; margin:14px 0 8px; }
body.home #pl-4341 .cosg-title a { color:var(--cos-home-ink); text-decoration:none; }
body.home #pl-4341 .cosg-title a:hover { color:var(--cos-home-blue); text-decoration:underline; text-underline-offset:3px; }
body.home #pl-4341 .cosg-meta { font-size:13px; line-height:1.5; color:var(--cos-home-muted); }
body.home #pl-4341 .cosg-excerpt { font-size:16px; line-height:1.65; color:var(--cos-home-muted); }
body.home #pl-4341 .cosg-media { border-radius:10px; overflow:hidden; }
body.home #pl-4341 :is(a,button,input,select,textarea):focus-visible { outline:3px solid #dd9e28; outline-offset:3px; }
@media(max-width:900px) {
 body.home #pl-4341 .cp-home form { grid-template-columns:repeat(2,minmax(0,1fr)); }
 body.home #pl-4341 .cp-home form button { grid-column:1/-1; }
}
@media(max-width:780px) {
 body.home #pl-4341 { padding-top:0; }
 body.home #pl-4341 > .panel-grid { margin-bottom:30px; }
 body.home #pl-4341 #pg-4341-1 > .panel-row-style { gap:20px; padding:8px 0 0; }
 body.home #pl-4341 #pgc-4341-1-0 { margin-bottom:0; }
 body.home #pl-4341 #pg-4341-1 .panel-grid-cell { flex:auto; width:100%; }
 body.home #pl-4341 :is(.cos-spotlight,.cosps.cp-home) { padding:22px; }
 body.home #pl-4341 .cos-spotlight-grid { grid-template-columns:1fr; gap:16px; }
 body.home #pl-4341 a.cos-spotlight-card { padding:22px; }
}
@media(max-width:520px) {
 body.home #pl-4341 :is(.cos-spotlight,.cosps.cp-home) { padding:20px; border-radius:12px; }
 body.home #pl-4341 .cp-home-stats { gap:10px; }
 body.home #pl-4341 .cp-home-stats > div { flex:1; padding:16px 12px; }
 body.home #pl-4341 .cp-home-stats strong { font-size:30px; }
 body.home #pl-4341 .cp-home-stats span { font-size:13px; }
 body.home #pl-4341 .cp-home form { grid-template-columns:1fr; }
 body.home #pl-4341 .cp-home-types a { font-size:13px; }
 body.home #pl-4341 .cosg-title { font-size:20px; }
}
body.home #pl-4341 .search-form { position:relative; display:block; }
body.home #pl-4341 .search-form button[type=submit] {
 position:absolute; right:0; top:0; width:48px; height:50px;
 padding:0; border:0; border-radius:0 9px 9px 0; background:transparent;
 color:var(--cos-home-muted); box-shadow:none;
}
body.home #pl-4341 .search-form button[type=submit]:hover { color:var(--cos-home-blue); background:#edf4fa; }
