.security-hero{
  padding-top:5rem;
  background:var(--hx-light);
}

.security-hero__grid{
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
  align-items:center;
  gap:var(--hx-space-5);
  padding-block:var(--hx-space-5);
}

.security-hero__content,
.security-hero__visual,
.security-hero__frame{
  min-width:0;
}

.security-hero__content h1{
  max-width:48rem;
  margin-bottom:var(--hx-space-3);
}

.security-hero__lead{
  max-width:43rem;
  margin-bottom:var(--hx-space-3);
  color:var(--hx-text);
  font-size:var(--hx-text-lg);
}

.security-hero__actions{
  margin-bottom:var(--hx-space-2);
}

.security-hero__boundary{
  max-width:43rem;
  margin-bottom:0;
  font-size:var(--hx-text-sm);
  overflow-wrap:anywhere;
}

.security-hero__frame{
  position:relative;
  overflow:hidden;
  border:1px solid var(--hx-line);
  border-radius:var(--hx-radius-lg);
  background:var(--hx-surface);
  padding:var(--hx-space-2);
  box-shadow:var(--hx-shadow);
}

.security-hero__frame img{
  width:100%;
  border-radius:var(--hx-radius-md);
}

.security-hero__panel{
  position:absolute;
  right:var(--hx-space-2);
  bottom:var(--hx-space-2);
  left:var(--hx-space-2);
  max-width:100%;
  border:1px solid var(--hx-line);
  border-radius:var(--hx-radius-md);
  background:var(--hx-surface);
  padding:var(--hx-space-2);
  box-shadow:var(--hx-shadow);
}

.security-hero__panel-head{
  display:flex;
  min-width:0;
  align-items:center;
  gap:var(--hx-space-1);
  padding-bottom:var(--hx-space-1);
  border-bottom:1px solid var(--hx-line);
}

.security-hero__panel-head strong{
  min-width:0;
  margin-right:auto;
  color:var(--hx-ink);
}

.security-status-dot{
  width:.65rem;
  height:.65rem;
  flex:0 0 auto;
  border-radius:var(--hx-radius-pill);
  background:var(--hx-primary);
}

.security-hero__checks{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--hx-space-1);
  margin:var(--hx-space-2) 0 0;
}

.security-hero__checks div{
  min-width:0;
}

.security-hero__checks dt{
  color:var(--hx-muted);
  font-size:var(--hx-text-xs);
}

.security-hero__checks dd{
  margin:0;
  color:var(--hx-ink);
  font-weight:700;
  overflow-wrap:anywhere;
}

.security-data-band{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border:1px solid var(--hx-line);
  border-radius:var(--hx-radius-md) var(--hx-radius-md) 0 0;
  background:var(--hx-surface);
}

.security-data-band div{
  min-width:0;
  padding:var(--hx-space-2) var(--hx-space-3);
  border-right:1px solid var(--hx-line);
}

.security-data-band div:last-child{
  border-right:0;
}

.security-data-band span,
.security-data-band strong{
  display:block;
}

.security-data-band span{
  color:var(--hx-muted);
  font-size:var(--hx-text-xs);
}

.security-data-band strong{
  color:var(--hx-ink);
  font-family:var(--hx-font-mono);
  font-variant-numeric:tabular-nums;
}

.security-boundary-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--hx-space-3);
}

.security-card > svg,
.security-observability-card > svg,
.security-report-card > svg{
  width:2rem;
  height:2rem;
  margin-bottom:var(--hx-space-2);
  color:var(--hx-primary);
}

.security-card h3,
.security-observability-card h3,
.security-report-card h3{
  margin-bottom:var(--hx-space-1);
}

.security-card p,
.security-observability-card p,
.security-report-card p{
  margin-bottom:var(--hx-space-2);
}

.security-card ul,
.security-observability-card ul{
  margin:0;
  padding-left:var(--hx-space-3);
  color:var(--hx-text);
}

.security-card li + li,
.security-observability-card li + li{
  margin-top:var(--hx-space-1);
}

.security-responsibility{
  align-items:flex-start;
  margin-top:var(--hx-space-3);
}

.security-responsibility > svg{
  width:1.75rem;
  height:1.75rem;
  flex:0 0 auto;
  color:var(--hx-primary);
}

.security-responsibility p{
  margin:var(--hx-space-1) 0 0;
}

.security-control-layout{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);
  align-items:start;
  gap:var(--hx-space-4);
}

.security-control-list{
  min-width:0;
  border-top:1px solid var(--hx-line-strong);
}

.security-control-item{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--hx-space-2);
  padding-block:var(--hx-space-3);
  border-bottom:1px solid var(--hx-line-strong);
}

.security-control-item__number{
  color:var(--hx-primary-hover);
  font-weight:750;
}

.security-control-item h3{
  margin-bottom:var(--hx-space-1);
}

.security-control-item p{
  margin-bottom:0;
}

.security-checklist{
  position:sticky;
  top:calc(var(--hx-header-height) + var(--hx-space-3));
}

.security-checklist h3{
  margin-bottom:var(--hx-space-2);
}

.security-checklist ul{
  margin:0 0 var(--hx-space-3);
  padding-left:var(--hx-space-3);
}

.security-checklist li + li{
  margin-top:var(--hx-space-1);
}

.security-lifecycle{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  overflow:hidden;
  border:1px solid var(--hx-line);
  border-radius:var(--hx-radius-lg);
  background:var(--hx-surface);
}

.security-lifecycle__step{
  min-width:0;
  padding:var(--hx-space-3);
  border-right:1px solid var(--hx-line);
}

.security-lifecycle__step:last-child{
  border-right:0;
}

.security-lifecycle__step > span{
  display:block;
  margin-bottom:var(--hx-space-2);
  color:var(--hx-primary-hover);
  font-weight:750;
}

.security-lifecycle__step h3{
  margin-bottom:var(--hx-space-1);
}

.security-lifecycle__step p{
  margin-bottom:0;
}

.security-data-table{
  margin-top:var(--hx-space-3);
}

.security-data-table caption{
  padding:var(--hx-space-2);
  color:var(--hx-ink);
  font-weight:700;
  text-align:left;
}

.security-observability-grid{
  align-items:stretch;
}

.security-observability-card{
  height:100%;
}

.sla-meter{
  overflow:hidden;
  border:1px solid var(--hx-line);
  border-radius:var(--hx-radius-lg);
  background:var(--hx-surface);
  box-shadow:var(--hx-shadow);
}

.sla-meter__summary{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);
  gap:var(--hx-space-4);
  padding:var(--hx-space-4);
  background:var(--hx-dark);
}

.sla-meter__summary span{
  color:var(--hx-accent);
  font-size:var(--hx-text-sm);
  font-weight:700;
}

.sla-meter__summary strong{
  display:block;
  margin-block:var(--hx-space-1);
  color:var(--hx-surface);
  font-size:clamp(3.5rem,8vw,6rem);
  line-height:1;
  letter-spacing:-.06em;
}

.sla-meter__summary p{
  max-width:42rem;
  margin-bottom:0;
  color:var(--hx-accent);
}

.sla-meter__facts{
  min-width:0;
  align-self:center;
}

.sla-meter__facts dl{
  margin:0;
  border:1px solid var(--hx-text);
  border-radius:var(--hx-radius-md);
}

.sla-meter__facts div{
  display:flex;
  min-width:0;
  justify-content:space-between;
  gap:var(--hx-space-2);
  padding:var(--hx-space-2);
  border-bottom:1px solid var(--hx-text);
}

.sla-meter__facts div:last-child{
  border-bottom:0;
}

.sla-meter__facts dt{
  color:var(--hx-accent);
}

.sla-meter__facts dd{
  margin:0;
  color:var(--hx-surface);
  font-weight:700;
  text-align:right;
}

.sla-meter__chart{
  padding:var(--hx-space-4);
}

.sla-meter__chart-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--hx-space-2);
  margin-bottom:var(--hx-space-2);
}

.sla-meter__chart-head > strong{
  color:var(--hx-ink);
}

.sla-meter__legend{
  display:flex;
  flex-wrap:wrap;
  gap:var(--hx-space-2);
  color:var(--hx-muted);
  font-size:var(--hx-text-xs);
}

.sla-meter__legend span{
  display:flex;
  align-items:center;
  gap:var(--hx-space-1);
}

.sla-meter__legend i{
  display:block;
  width:.7rem;
  height:.7rem;
  border-radius:var(--hx-radius-sm);
}

.sla-meter__legend .is-healthy{
  background:var(--hx-success);
}

.sla-meter__legend .is-incident{
  background:var(--hx-warning);
}

.sla-days{
  display:grid;
  grid-template-columns:repeat(90,minmax(2px,1fr));
  gap:2px;
  min-height:5.5rem;
  align-items:end;
}

.sla-days span{
  display:block;
  height:100%;
  min-height:3rem;
  border-radius:var(--hx-radius-sm);
  background:var(--hx-success);
}

.sla-days span:nth-child(3n){
  height:86%;
}

.sla-days span:nth-child(5n){
  height:72%;
}

.sla-days span:nth-child(7n){
  height:92%;
}

.sla-meter__axis{
  display:flex;
  justify-content:space-between;
  gap:var(--hx-space-1);
  margin-top:var(--hx-space-1);
  color:var(--hx-muted);
  font-size:var(--hx-text-xs);
}

.sla-meter__credit{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:var(--hx-space-2);
  padding:var(--hx-space-3) var(--hx-space-4);
  border-top:1px solid var(--hx-line);
  background:var(--hx-primary-soft);
}

.sla-meter__credit > svg{
  width:2rem;
  height:2rem;
  color:var(--hx-primary);
}

.sla-meter__credit h3{
  margin-bottom:var(--hx-space-1);
}

.sla-meter__credit p{
  margin-bottom:0;
}

.security-response-steps{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--hx-space-3);
  list-style:none;
  margin:0;
  padding:0;
}

.security-response-steps li{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--hx-space-2);
  min-width:0;
  border:1px solid var(--hx-line);
  border-radius:var(--hx-radius-md);
  background:var(--hx-surface);
  padding:var(--hx-space-3);
}

.security-response-steps__number{
  display:grid;
  width:2.8rem;
  height:2.8rem;
  place-items:center;
  border-radius:var(--hx-radius-pill);
  background:var(--hx-primary-soft);
  color:var(--hx-primary-hover);
  font-weight:750;
}

.security-response-steps h3{
  margin-bottom:var(--hx-space-1);
}

.security-response-steps p{
  margin-bottom:var(--hx-space-1);
}

.security-response-steps strong{
  color:var(--hx-text);
  font-size:var(--hx-text-sm);
}

.security-report-grid{
  align-items:stretch;
}

.security-report-card{
  display:flex;
  min-width:0;
  flex-direction:column;
  align-items:flex-start;
}

.security-report-card .c-btn{
  margin-top:auto;
  overflow-wrap:anywhere;
}

.security-evidence{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:var(--hx-space-3);
  margin-top:var(--hx-space-3);
  border:1px solid var(--hx-line);
  border-radius:var(--hx-radius-lg);
  padding:var(--hx-space-3);
}

.security-evidence h3{
  margin-bottom:var(--hx-space-2);
}

.security-evidence ul{
  margin:0;
  padding-left:var(--hx-space-3);
}

.security-evidence li + li{
  margin-top:var(--hx-space-1);
}

.security-evidence__warning{
  border-radius:var(--hx-radius-md);
  background:var(--hx-primary-soft);
  padding:var(--hx-space-3);
}

.security-evidence__warning strong{
  display:block;
  margin-bottom:var(--hx-space-1);
  color:var(--hx-ink);
}

.security-evidence__warning p{
  margin-bottom:0;
}

.security-final-section{
  padding-top:0;
}

@media(max-width:768px){
  .security-hero__grid,
  .security-control-layout,
  .sla-meter__summary{
    grid-template-columns:1fr;
  }

  .security-boundary-grid{
    grid-template-columns:1fr;
  }

  .security-lifecycle{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .security-lifecycle__step{
    border-bottom:1px solid var(--hx-line);
  }

  .security-lifecycle__step:nth-child(2){
    border-right:0;
  }

  .security-lifecycle__step:nth-child(3),
  .security-lifecycle__step:nth-child(4){
    border-bottom:0;
  }

  .security-checklist{
    position:static;
  }

  .sla-meter__credit{
    grid-template-columns:auto minmax(0,1fr);
  }

  .sla-meter__credit .c-btn{
    grid-column:1/-1;
    justify-self:start;
  }

  .security-response-steps,
  .security-evidence{
    grid-template-columns:1fr;
  }
}

@media(max-width:640px){
  .security-hero{
    padding-top:var(--hx-space-3);
  }

  .security-hero__grid{
    gap:var(--hx-space-3);
    padding-block:var(--hx-space-4);
  }

  .security-hero__lead{
    font-size:var(--hx-text-md);
  }

  .security-hero__panel{
    position:static;
    margin-top:var(--hx-space-2);
    box-shadow:none;
  }

  .security-data-band{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .security-data-band div:nth-child(2){
    border-right:0;
  }

  .security-data-band div:nth-child(-n+2){
    border-bottom:1px solid var(--hx-line);
  }

  .security-lifecycle{
    grid-template-columns:1fr;
  }

  .security-lifecycle__step{
    border-right:0;
    border-bottom:1px solid var(--hx-line);
  }

  .security-lifecycle__step:nth-child(3){
    border-bottom:1px solid var(--hx-line);
  }

  .sla-meter__summary,
  .sla-meter__chart{
    padding:var(--hx-space-3);
  }

  .sla-meter__chart-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .sla-days{
    min-width:38rem;
  }

  .sla-meter__chart{
    overflow-x:auto;
  }

  .sla-meter__axis{
    min-width:38rem;
  }

  .sla-meter__credit{
    grid-template-columns:1fr;
    padding:var(--hx-space-3);
  }

  .sla-meter__credit .c-btn{
    grid-column:auto;
    width:100%;
  }
}

@media(max-width:390px){
  .security-hero__actions,
  .security-hero__actions .c-btn,
  .security-report-card .c-btn{
    width:100%;
  }

  .security-hero__checks{
    grid-template-columns:1fr;
  }

  .security-hero__checks div{
    padding-top:var(--hx-space-1);
    border-top:1px solid var(--hx-line);
  }

  .security-control-item,
  .security-response-steps li{
    grid-template-columns:1fr;
  }

  .security-data-band div{
    padding:var(--hx-space-2);
  }

  .security-evidence{
    padding:var(--hx-space-2);
  }
}
