/* security.html's styles. Made by publish-site.py from the Design Lab draft security.html; don't edit it by hand. */
.hero{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(32px,4vw,72px);align-items:center;padding-block:72px 88px}
.hero h1{font:600 clamp(40px,4.6vw,72px)/1.05 var(--font-display);letter-spacing:-.025em;margin-top:18px}
.hero .lede{font-size:clamp(18px,1.45vw,22px);line-height:1.55;color:var(--text-secondary);margin-top:24px}
.hero .cta-row{margin-top:32px}

.console{margin:0;background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);overflow:hidden}
.app-top{display:flex;align-items:center;gap:14px;padding:10px 16px;border-bottom:1px solid var(--border-default);font-size:13px;color:var(--text-secondary)}
.app-top .dots{display:flex;gap:6px}
.app-top .dots i{width:10px;height:10px;border-radius:50%;background:var(--border-default)}
.app-top b{color:var(--text-primary);letter-spacing:.08em;font-family:"Albert Sans",var(--font-ui)}
.console h3{font:600 18px/26px var(--font-ui);padding:16px 20px 4px}
.console .sub{padding:0 20px 12px;font-size:13px;color:var(--text-muted);border-bottom:1px solid var(--border-subtle)}
.setting{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 14px;align-items:center;padding:12px 20px;border-bottom:1px solid var(--border-subtle);font-size:13.5px}
.setting:last-child{border-bottom:0}
.setting b{font-weight:600}
.setting small{grid-column:1;color:var(--text-muted);font-size:12.5px}
.setting .chip,.setting .actor{grid-row:span 2;justify-self:end}

.section{padding-block:96px}
.section-head{max-width:52em}
.section-head h2{font:600 clamp(30px,3.2vw,48px)/1.1 var(--font-ui);letter-spacing:-.02em}
.section-head p{margin-top:14px;color:var(--text-secondary);font-size:18px}
.band{background:var(--surface-sunken);border-block:1px solid var(--border-default)}

.apart{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,4vw,72px);align-items:start}
.apart h2{font:600 clamp(30px,3.2vw,48px)/1.1 var(--font-ui);letter-spacing:-.02em}
.apart .body{margin-top:14px;color:var(--text-secondary);font-size:18px}
.points{display:grid;gap:14px}
.points li{background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:18px 20px}
.points h3{font:600 17px/24px var(--font-ui)}
.points p{margin-top:6px;color:var(--text-secondary);font-size:15px}

.groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:48px}
.group{border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:24px;background:var(--surface-raised)}
.group h3{font:600 18px/26px var(--font-ui)}
.group ul{margin-top:12px;display:grid;gap:8px}
.group li{position:relative;padding-left:18px;font-size:14.5px;color:var(--text-secondary)}
.group li::before{content:"";position:absolute;left:2px;top:.6em;width:7px;height:7px;border-radius:2px;background:var(--text-brand)}
.group code{font:500 12.5px/18px var(--font-mono);color:var(--text-primary);background:var(--surface-sunken);padding:1px 5px;border-radius:4px}

.data{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(32px,4vw,72px);align-items:start}
.services{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--surface-raised);overflow:hidden}
.services div{display:grid;grid-template-columns:minmax(0,100px) minmax(0,1fr) minmax(0,150px);gap:16px;padding:16px 20px;border-bottom:1px solid var(--border-subtle);font-size:14.5px}
.services div:last-child{border-bottom:0}
.services .head{background:var(--surface-sunken);font:600 12px/16px var(--font-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);padding-block:10px}
.services b{font-weight:600}
.services span{color:var(--text-secondary)}
.ai{margin-top:28px;display:grid;gap:12px}
.ai blockquote{margin:0;padding:16px 20px;border-left:3px solid var(--text-brand);background:var(--surface-raised);border-radius:0 var(--radius-md) var(--radius-md) 0;font-size:17px;line-height:1.55}
.ai blockquote cite{display:block;margin-top:6px;font:400 13px/18px var(--font-ui);font-style:normal;color:var(--text-muted)}
.ai p{color:var(--text-secondary);font-size:15.5px}

.recovery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:40px}
.recovery li{border:1px solid var(--border-default);border-left:4px solid var(--text-brand);border-radius:var(--radius-md);padding:18px 20px;background:var(--surface-raised)}
.recovery h3{font:600 16.5px/24px var(--font-ui)}
.recovery p{margin-top:6px;color:var(--text-secondary);font-size:15px}

.closing{background:var(--surface-page);border-top:1px solid var(--border-default)}
.closing .wrap{padding-block:80px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:28px}
.closing h2{font:600 clamp(32px,3.4vw,52px)/1.1 var(--font-display);letter-spacing:-.02em}
.closing p{margin-top:12px;color:var(--text-secondary);font-size:17px;max-width:40em}

@media (max-width:1180px){.groups{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:960px){
  .hero,.apart,.data{grid-template-columns:minmax(0,1fr)}
  .hero{padding-block:48px 64px}
  .recovery{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
  .section{padding-block:64px}
  .groups{grid-template-columns:minmax(0,1fr)}
  .group{padding:20px}
  .setting,.console h3,.console .sub{padding-inline:16px}
  .services div{grid-template-columns:minmax(0,1fr);gap:2px;padding-inline:16px}
  .services .head{display:none}
}
