/* Issue #673 — BeSafe safety-first hierarchy preview. */

body.besafe-preview{
  --safe-ink:#17131D;
  --safe-paper:#FBF9FC;
  --safe-lime:#D7FF5F;
  --safe-people:#7FE34A;
  --safe-property:#38BDF8;
  --safe-solo:#CFC3E6;
  --safe-warn:#F0C36A;
  color:var(--safe-ink);
  background:var(--safe-paper);
}
body.besafe-preview [id]{scroll-margin-top:96px}
body.besafe-preview .safe-display,
body.besafe-preview .safe-command,
body.besafe-preview .check-copy h3,
body.besafe-preview .warning-card h3,
body.besafe-preview .know-card h3,
body.besafe-preview .boundary-card h3,
body.besafe-preview .help-card h3{
  font-family:"Archivo Black","DM Sans",sans-serif;
  font-weight:400;
  letter-spacing:-.05em;
  text-transform:uppercase;
}

body.besafe-preview nav{
  color:#FFF;
  background:
    radial-gradient(circle at 8% -45%,rgba(127,227,74,.16),transparent 22rem),
    radial-gradient(circle at 82% -70%,rgba(56,189,248,.18),transparent 28rem),
    linear-gradient(108deg,#17131D 0%,#101827 58%,#10221E 100%);
  border-bottom:3px solid transparent;
  border-image:linear-gradient(90deg,var(--safe-lime),var(--safe-property),#A78BFA) 1;
  box-shadow:0 8px 0 rgba(23,19,29,.13);
}
body.besafe-preview .brand{color:#FFF}
body.besafe-preview .brand img{border-radius:50%}
body.besafe-preview .brand span{
  color:inherit;font-family:"Gill Sans","Avenir Next",sans-serif;font-size:31px;font-weight:500;
  line-height:.82;letter-spacing:-.035em;text-transform:lowercase;
}
body.besafe-preview .nav-links a{color:rgba(255,255,255,.72)}
body.besafe-preview .nav-links a:hover,
body.besafe-preview .nav-links a[aria-current="page"]{background:var(--safe-lime);color:var(--safe-ink)}
body.besafe-preview .nav-toggle{color:#FFF;border-color:rgba(255,255,255,.18);border-radius:12px;background:rgba(255,255,255,.07)}

body.besafe-preview .safe-shell{width:min(1180px,100%)}
body.besafe-preview .safe-hero{
  min-height:0;padding:142px 0 82px;color:var(--safe-ink);border-bottom:3px solid var(--safe-ink);
  background:
    radial-gradient(circle at 8% 8%,rgba(215,255,95,.48),transparent 25rem),
    radial-gradient(circle at 88% 18%,rgba(240,195,106,.5),transparent 31rem),
    repeating-linear-gradient(0deg,rgba(23,19,29,.025) 0 1px,transparent 1px 7px),
    var(--safe-paper);
}
body.besafe-preview .safe-hero .safe-kicker{
  width:max-content;max-width:100%;margin-bottom:28px;padding:8px 11px;border:2px solid var(--safe-ink);
  background:var(--safe-ink);color:#FFF;box-shadow:4px 4px 0 var(--safe-property);
}
body.besafe-preview .safe-hero h1{
  max-width:930px;color:var(--safe-ink);font-size:clamp(72px,10.5vw,142px);line-height:.84;
}
body.besafe-preview .safe-hero h1 span{
  display:inline-block;margin-left:.03em;padding:0 .08em .07em;border:3px solid var(--safe-ink);
  background:var(--safe-lime);box-shadow:8px 8px 0 var(--safe-ink);transform:rotate(-.7deg);
}
body.besafe-preview .safe-command{
  max-width:1010px;margin-top:42px;color:var(--safe-ink);font-size:clamp(30px,4vw,54px);line-height:.98;
}
body.besafe-preview .safe-intro{max-width:760px;margin-top:24px;color:rgba(23,19,29,.72);font-size:clamp(18px,2vw,22px);font-weight:700}
body.besafe-preview .safe-principles{
  gap:0;margin-top:44px;border:3px solid var(--safe-ink);background:#FFF;box-shadow:8px 8px 0 var(--safe-ink);
}
body.besafe-preview .safe-principle{
  min-height:130px;display:flex;flex-direction:column;justify-content:space-between;padding:20px;border:0;border-right:3px solid var(--safe-ink);
  border-radius:0;color:var(--safe-ink);background:var(--safe-solo);
}
body.besafe-preview .safe-principle:nth-child(2){border-color:var(--safe-ink);background:var(--safe-property)}
body.besafe-preview .safe-principle:nth-child(3){border-right:0;background:var(--safe-lime)}
body.besafe-preview .safe-principle span,
body.besafe-preview .safe-principle:nth-child(2) span,
body.besafe-preview .safe-principle:nth-child(3) span{color:var(--safe-ink);font-size:11px}
body.besafe-preview .safe-principle strong{color:var(--safe-ink);font-size:18px;line-height:1.25}

body.besafe-preview .safe-section{padding:92px 0;border-bottom:3px solid var(--safe-ink)}
body.besafe-preview .safe-section.light{
  color:var(--safe-ink);
  background:radial-gradient(circle at 92% 8%,rgba(56,189,248,.22),transparent 29rem),var(--safe-solo);
}
body.besafe-preview .safe-section.navy{
  color:var(--safe-ink);
  background:
    radial-gradient(circle at 90% 10%,rgba(240,195,106,.62),transparent 30rem),
    linear-gradient(90deg,rgba(23,19,29,.05) 1px,transparent 1px),
    linear-gradient(rgba(23,19,29,.05) 1px,transparent 1px),
    #F7E4B9;background-size:auto,28px 28px,28px 28px,auto;
}
body.besafe-preview .safe-section.blue{color:#FFF;background:radial-gradient(circle at 91% 9%,rgba(56,189,248,.22),transparent 30rem),var(--safe-ink)}
body.besafe-preview .safe-section.green{color:var(--safe-ink);background:radial-gradient(circle at 8% 90%,rgba(215,255,95,.32),transparent 29rem),#D8F4E9}
body.besafe-preview .safe-section.final{
  color:var(--safe-ink);
  background:
    radial-gradient(circle at 90% 12%,rgba(215,255,95,.4),transparent 27rem),
    radial-gradient(circle at 8% 88%,rgba(56,189,248,.2),transparent 30rem),
    repeating-linear-gradient(0deg,rgba(23,19,29,.025) 0 1px,transparent 1px 7px),
    var(--safe-paper);
}
body.besafe-preview .safe-head{gap:42px;align-items:end;margin-bottom:40px;padding-bottom:30px;border-bottom:3px solid currentColor}
body.besafe-preview .safe-head .safe-kicker{
  display:inline-block;margin-bottom:21px;padding:7px 10px;border:2px solid currentColor;
  background:var(--safe-property);color:var(--safe-ink);box-shadow:4px 4px 0 currentColor;
}
body.besafe-preview .navy .safe-head .safe-kicker{background:var(--safe-warn)}
body.besafe-preview .blue .safe-head .safe-kicker{border-color:#FFF;background:var(--safe-property);color:var(--safe-ink);box-shadow:4px 4px 0 #FFF}
body.besafe-preview .green .safe-head .safe-kicker{background:var(--safe-lime)}
body.besafe-preview .final .safe-head .safe-kicker{background:var(--safe-lime)}
body.besafe-preview .safe-title{max-width:790px;font-size:clamp(48px,6vw,78px);line-height:.91}
body.besafe-preview .safe-lede{padding:0 0 4px 22px;border-left:3px solid currentColor;color:rgba(23,19,29,.72);font-size:17px;font-weight:700}
body.besafe-preview .blue .safe-lede{color:rgba(255,255,255,.74);border-color:var(--safe-property)}

body.besafe-preview .checks-panel{padding:0;border:3px solid var(--safe-ink);border-radius:0;background:#FFF;box-shadow:9px 9px 0 var(--safe-property)}
body.besafe-preview .check-row{grid-template-columns:64px minmax(0,1fr) minmax(210px,.55fr);gap:20px;padding:24px;border-top:3px solid var(--safe-ink)}
body.besafe-preview .check-row:first-child{border-top:0}
body.besafe-preview .check-index{
  width:54px;height:54px;border:2px solid var(--safe-ink);border-radius:2px;background:var(--safe-solo);color:var(--safe-ink);font-size:12px;
}
body.besafe-preview .check-row:nth-child(2) .check-index,
body.besafe-preview .check-row:nth-child(7) .check-index{background:var(--safe-property);color:var(--safe-ink)}
body.besafe-preview .check-row:nth-child(3) .check-index{background:var(--safe-lime);color:var(--safe-ink)}
body.besafe-preview .check-row:nth-child(4) .check-index{background:var(--safe-solo);color:var(--safe-ink)}
body.besafe-preview .check-row:nth-child(5) .check-index{background:var(--safe-warn);color:var(--safe-ink)}
body.besafe-preview .check-row:nth-child(6) .check-index{background:var(--safe-people);color:var(--safe-ink)}
body.besafe-preview .check-copy h3{color:var(--safe-ink);font-size:clamp(23px,2.4vw,32px);line-height:.98}
body.besafe-preview .check-copy p{color:rgba(23,19,29,.7);font-size:15px;font-weight:600}
body.besafe-preview .check-source{color:rgba(23,19,29,.66);font-size:10px;font-weight:700;text-decoration-thickness:2px}
body.besafe-preview .check-source:hover{color:#0876A7}

body.besafe-preview .warning-grid{gap:18px}
body.besafe-preview .warning-card{
  min-height:260px;display:flex;flex-direction:column;padding:27px;border:3px solid var(--safe-ink);border-radius:2px;
  color:var(--safe-ink);background:var(--safe-warn);box-shadow:7px 7px 0 var(--safe-ink);
}
body.besafe-preview .warning-card:nth-child(2){border-color:var(--safe-ink);background:var(--safe-property);transform:translateY(8px) rotate(.35deg)}
body.besafe-preview .warning-card:nth-child(3){border-color:var(--safe-ink);background:var(--safe-solo);transform:rotate(-.35deg)}
body.besafe-preview .warning-card:nth-child(4){border-color:var(--safe-ink);background:var(--safe-lime);transform:translateY(8px)}
body.besafe-preview .warning-card .safe-kicker,
body.besafe-preview .warning-card:nth-child(2) .safe-kicker,
body.besafe-preview .warning-card:nth-child(3) .safe-kicker,
body.besafe-preview .warning-card:nth-child(4) .safe-kicker{color:var(--safe-ink)}
body.besafe-preview .warning-card h3{margin-top:auto;color:var(--safe-ink);font-size:clamp(32px,3.4vw,48px);line-height:.93}
body.besafe-preview .warning-card p{color:rgba(23,19,29,.72);font-size:15px;font-weight:700}

body.besafe-preview .know-grid{gap:0;border:3px solid #FFF;background:#FFF;box-shadow:8px 8px 0 var(--safe-property)}
body.besafe-preview .know-card{
  min-height:390px;display:flex;flex-direction:column;padding:27px;border:0;border-right:3px solid var(--safe-ink);border-radius:0;
  color:var(--safe-ink);background:#FFF;
}
body.besafe-preview .know-card:nth-child(2){border-color:var(--safe-ink);background:var(--safe-solo)}
body.besafe-preview .know-card:nth-child(3){border-right:0;background:var(--safe-lime)}
body.besafe-preview .know-card .safe-kicker,
body.besafe-preview .know-card:nth-child(2) .safe-kicker,
body.besafe-preview .know-card:nth-child(3) .safe-kicker{color:var(--safe-ink)}
body.besafe-preview .know-card h3{margin-top:30px;color:var(--safe-ink);font-size:clamp(31px,3vw,43px);line-height:.94}
body.besafe-preview .know-card p{color:rgba(23,19,29,.72);font-size:14px;font-weight:700}
body.besafe-preview .know-card a{margin-top:auto;padding-top:22px;color:var(--safe-ink);font-size:10px;text-decoration-thickness:2px}
body.besafe-preview .know-card a:hover{color:#0876A7}

body.besafe-preview .maison-boundary{gap:0;border:3px solid var(--safe-ink);box-shadow:8px 8px 0 var(--safe-property)}
body.besafe-preview .boundary-card{
  min-height:330px;display:flex;flex-direction:column;padding:30px;border:0;border-right:3px solid var(--safe-ink);border-radius:0;
  color:var(--safe-ink);background:var(--safe-property);
}
body.besafe-preview .boundary-card.student{border:0;background:var(--safe-lime)}
body.besafe-preview .boundary-card .safe-kicker,
body.besafe-preview .boundary-card.student .safe-kicker{color:var(--safe-ink)}
body.besafe-preview .boundary-card h3{margin-top:30px;color:var(--safe-ink);font-size:clamp(38px,4vw,56px);line-height:.92}
body.besafe-preview .boundary-list{margin-top:auto;padding-top:26px}
body.besafe-preview .boundary-list li{color:rgba(23,19,29,.72);font-size:15px;font-weight:700}
body.besafe-preview .boundary-list li::before,
body.besafe-preview .student .boundary-list li::before{color:var(--safe-ink);font-weight:700}

body.besafe-preview .final-grid{gap:42px}
body.besafe-preview .final-list{border:3px solid var(--safe-ink);background:#FFF;box-shadow:8px 8px 0 var(--safe-lime)}
body.besafe-preview .final-item{min-height:76px;padding:14px 18px;border-top:3px solid var(--safe-ink)}
body.besafe-preview .final-item:first-child{border-top:0}
body.besafe-preview .final-item:last-child{border-bottom:0}
body.besafe-preview .final-mark{border:2px solid var(--safe-ink);border-radius:2px;background:var(--safe-people);color:var(--safe-ink)}
body.besafe-preview .final-item strong{color:var(--safe-ink);font-size:15px}
body.besafe-preview .help-card{
  padding:29px;border:3px solid var(--safe-ink);border-radius:2px;background:var(--safe-solo);box-shadow:8px 8px 0 var(--safe-property);
}
body.besafe-preview .help-card .safe-kicker{color:var(--safe-ink)}
body.besafe-preview .help-card h3{color:var(--safe-ink);font-size:clamp(34px,3.5vw,48px);line-height:.94}
body.besafe-preview .help-card p{color:rgba(23,19,29,.7);font-weight:600}
body.besafe-preview .help-link{border-top:2px solid rgba(23,19,29,.25);color:var(--safe-ink)}
body.besafe-preview .help-link:last-child{border-bottom:2px solid rgba(23,19,29,.25)}
body.besafe-preview .help-link span:last-child{color:var(--safe-ink)}
body.besafe-preview .help-link:hover{color:#0876A7}
body.besafe-preview .safe-note{color:rgba(23,19,29,.6);font-weight:600}

body.besafe-preview footer{border-top:0}
body.besafe-preview .footer-brand>span:first-of-type{color:var(--safe-lime);font-weight:700}
body.besafe-preview .footer-links a{border-bottom:1px solid rgba(255,255,255,.22)}
body.besafe-preview .footer-links a:hover{color:var(--safe-lime)}

@media(max-width:960px){
  body.besafe-preview .nav-links{background:rgba(11,11,12,.98);border-color:rgba(255,255,255,.12);box-shadow:0 20px 50px rgba(0,0,0,.4)}
  body.besafe-preview .safe-head{grid-template-columns:1fr}
  body.besafe-preview .safe-head .safe-lede{max-width:720px}
  body.besafe-preview .check-row{grid-template-columns:64px minmax(0,1fr)}
  body.besafe-preview .check-source{grid-column:2}
  body.besafe-preview .know-grid{grid-template-columns:1fr}
  body.besafe-preview .know-card{min-height:0;border-right:0;border-bottom:3px solid var(--safe-ink)}
  body.besafe-preview .know-card:nth-child(3){border-bottom:0}
  body.besafe-preview .know-card a{margin-top:22px;padding-top:0}
}

@media(max-width:680px){
  body.besafe-preview .safe-hero{padding:112px 0 64px}
  body.besafe-preview .safe-hero .safe-kicker{margin-bottom:23px;font-size:9px}
  body.besafe-preview .safe-hero h1{font-size:clamp(59px,19vw,82px);line-height:.88}
  body.besafe-preview .safe-hero h1 span{margin:9px 7px 0 0;padding:0 .08em .08em;box-shadow:5px 5px 0 var(--safe-ink)}
  body.besafe-preview .safe-command{margin-top:34px;font-size:clamp(31px,10.4vw,44px)}
  body.besafe-preview .safe-intro{font-size:17px}
  body.besafe-preview .safe-principles{grid-template-columns:1fr;box-shadow:6px 6px 0 var(--safe-ink)}
  body.besafe-preview .safe-principle{min-height:112px;border-right:0;border-bottom:3px solid var(--safe-ink)}
  body.besafe-preview .safe-principle:nth-child(3){border-bottom:0}
  body.besafe-preview .safe-section{padding:76px 0}
  body.besafe-preview .safe-head{gap:20px;margin-bottom:30px;padding-bottom:25px}
  body.besafe-preview .safe-title{font-size:clamp(42px,13vw,57px)}
  body.besafe-preview .safe-lede{border-left:0;border-top:3px solid currentColor;padding:18px 0 0}
  body.besafe-preview .checks-panel{box-shadow:6px 6px 0 var(--safe-property)}
  body.besafe-preview .check-row{grid-template-columns:42px minmax(0,1fr);gap:14px;padding:20px 16px}
  body.besafe-preview .check-index{width:38px;height:38px}
  body.besafe-preview .check-source{grid-column:2}
  body.besafe-preview .warning-grid{gap:14px}
  body.besafe-preview .warning-card{min-height:235px;padding:22px;box-shadow:5px 5px 0 var(--safe-ink)}
  body.besafe-preview .warning-card:nth-child(2),
  body.besafe-preview .warning-card:nth-child(3),
  body.besafe-preview .warning-card:nth-child(4){transform:none}
  body.besafe-preview .know-grid,
  body.besafe-preview .maison-boundary{box-shadow:6px 6px 0 var(--safe-property)}
  body.besafe-preview .know-card{padding:23px}
  body.besafe-preview .maison-boundary{grid-template-columns:1fr}
  body.besafe-preview .boundary-card{min-height:310px;padding:25px 22px;border-right:0;border-bottom:3px solid var(--safe-ink)}
  body.besafe-preview .boundary-card.student{border-bottom:0}
  body.besafe-preview .final-grid{gap:30px}
  body.besafe-preview .final-list{box-shadow:6px 6px 0 var(--safe-lime)}
  body.besafe-preview .final-item{grid-template-columns:34px minmax(0,1fr);gap:12px;padding:14px 13px}
  body.besafe-preview .help-card{padding:24px 21px;box-shadow:6px 6px 0 var(--safe-property)}
}

@media(prefers-reduced-motion:reduce){
  body.besafe-preview *{animation:none!important;transition-duration:.01ms!important}
}
