/* Security portal (/security): main-site header/footer + a sticky side menu for the page's sections. */
.sp-hero{padding-bottom:56px}
.sp-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.sp-badges span{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:500;padding:8px 14px;border-radius:var(--radius-pill);background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-xs)}
.sp-badges svg{width:16px;height:16px;stroke:var(--brand-primary);stroke-width:1.8}

.sp-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:64px;align-items:start;padding-top:24px;padding-bottom:96px}
.sp-side{position:sticky;top:100px;display:flex;flex-direction:column;gap:22px}
.sp-nav{display:flex;flex-direction:column;border-left:1px solid var(--line)}
.sp-nav-lbl{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--grey-300);padding:0 0 10px 16px}
.sp-nav a{font-size:14px;color:var(--muted);padding:8px 0 8px 16px;margin-left:-1px;border-left:2px solid transparent;transition:color var(--duration-base) var(--ease-standard),border-color var(--duration-base) var(--ease-standard)}
.sp-nav a:hover{color:var(--ink)}
.sp-nav a.on{color:var(--brand-primary);font-weight:600;border-left-color:var(--brand-primary)}
.sp-contact{align-self:flex-start}

.sp-sec{padding:40px 0 56px;border-top:1px solid var(--line);scroll-margin-top:90px}
.sp-sec:first-child{border-top:0;padding-top:8px}
.sp-sec .sec-head{margin-bottom:32px;max-width:40em}
.sp-sec .sec-head .serif-h{font-size:clamp(28px,3.4vw,38px)}
.sp-narr{display:flex;flex-direction:column;gap:14px;font-size:16.5px;color:var(--muted);max-width:44em;margin-bottom:32px}
.sp-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.sp-cards .card{padding:22px}
.sp-cards .cap .cico,.sp-item .cico{width:38px;height:38px;border-radius:var(--radius-md);background:var(--blue-50);display:flex;align-items:center;justify-content:center;margin-bottom:14px;flex:0 0 auto}
.sp-cards .cap .cico svg,.sp-item .cico svg{width:19px;height:19px;stroke:var(--brand-primary);stroke-width:1.7}
.sp-cards h3{font-size:16.5px;margin-bottom:6px}
.sp-cards p{font-size:14px;color:var(--muted);margin:0}

.sp-comp{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.sp-comp-card{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:22px}
.sp-comp-card img{width:64px;height:64px;margin:4px 0}
.sp-comp-card h3{font-size:17px}
.sp-comp-card p{font-size:14px;color:var(--muted);flex:1}
.sp-status{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--green-300);background:var(--status-success-bg);padding:3px 10px;border-radius:var(--radius-pill)}
.sp-status i{width:6px;height:6px;border-radius:50%;background:var(--green-200)}
.sp-meta{font-size:12.5px;color:var(--grey-300);padding-top:10px;border-top:1px solid var(--line)}

.sp-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px;border-top:1px solid var(--line)}
.sp-item{display:flex;gap:14px;padding:20px 0;border-bottom:1px solid var(--line)}
.sp-item .cico{margin-bottom:0}
.sp-item h3{font-size:15.5px;margin-bottom:4px}
.sp-item p{font-size:14px;color:var(--muted)}
.sp-item p a{color:var(--brand-primary);font-weight:600}

.sp-docs{border-top:1px solid var(--line)}
.sp-doc{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 0;border-bottom:1px solid var(--line)}
.sp-doc h3{font-size:15.5px;margin-bottom:2px}
.sp-doc p{font-size:14px;color:var(--muted)}
.sp-doc-btn{padding:8px 16px;font-size:14px;flex:0 0 auto;min-width:118px}
.sp-doc-btn svg{width:15px;height:15px}
.sp-doc-btn.is-mail:hover svg{transform:none}

#faq .faq-a a{color:var(--brand-primary);font-weight:600}

@media(max-width:1000px){.sp-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){
  .sp-layout{grid-template-columns:1fr;gap:8px}
  .sp-side{position:static}
  .sp-nav{flex-direction:row;flex-wrap:wrap;border-left:0;gap:6px}
  .sp-nav-lbl{width:100%;padding-left:0}
  .sp-nav a{border:1px solid var(--line);border-radius:var(--radius-pill);padding:6px 12px;margin:0;font-size:13px}
  .sp-nav a.on{border-color:var(--blue-100);background:var(--blue-50)}
  .sp-contact{display:none}
}
@media(max-width:640px){.sp-cards,.sp-comp,.sp-list{grid-template-columns:1fr}.sp-doc{flex-direction:column;align-items:flex-start;gap:10px}}
