
.sb-legal-page{
  --sb-legal-yellow:#eedf17;
  --sb-legal-ink:#111;
  --sb-legal-text:#666;
  --sb-legal-max:1320px;
  width:100%;
  margin:0;
  padding:0;
  font-family:"Roboto Condensed",Arial,sans-serif;
  color:var(--sb-legal-text);
}
.sb-legal-page *{box-sizing:border-box}
.sb-legal-inner{
  width:min(var(--sb-legal-max), calc(100% - 48px));
  margin:0 auto;
}
.sb-legal-band{
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  background:var(--sb-legal-yellow);
  border-top:2px solid #111;
}
.sb-legal-band-inner{
  min-height:132px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding-top:28px;
  padding-bottom:28px;
}
.sb-legal-band-text{
  max-width:860px;
  font-size:15px;
  line-height:1.5;
  font-weight:400;
  text-transform:none;
  letter-spacing:0;
  color:#4f4f4f;
}
.sb-legal-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex:0 0 auto;
}
.sb-legal-action{
  appearance:none;
  width:46px;
  height:46px;
  border:1px solid #111;
  background:transparent;
  color:#111;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  border-radius:0;
  padding:0;
  transition:background .18s ease,color .18s ease,transform .18s ease;
}
.sb-legal-action:hover,
.sb-legal-action:focus{
  background:#111;
  color:#fff;
  transform:translateY(-1px);
}
.sb-legal-action svg{
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.sb-legal-document{
  width:100%;
  padding:72px 0 36px;
  background:transparent;
}
.sb-legal-document .sb-legal-inner{
  font-size:19px;
  line-height:31px;
  font-weight:300;
  color:rgb(102,102,102);
}
.sb-legal-document h1,
.sb-legal-document h2,
.sb-legal-document h3,
.sb-legal-document h4{
  font-family:"Roboto Condensed",Arial,sans-serif;
  color:#111;
  text-transform:none;
}
.sb-legal-document h2{
  margin:0 0 12px;
  font-size:30px;
  line-height:1.15;
  font-weight:700;
}
.sb-legal-document h3{
  margin:30px 0 14px;
  font-size:20px;
  line-height:1.25;
  font-weight:700;
}
.sb-legal-document p{
  margin:0 0 16px;
  font:inherit;
  color:inherit;
}
.sb-legal-document strong{font-weight:700;color:#555}
.sb-legal-document a{color:#e49a36;text-decoration:none}
.sb-legal-document a:hover{text-decoration:underline}
.sb-legal-document ul,
.sb-legal-document ol{margin:0 0 18px 24px}
.sb-legal-admin-missing{
  border:1px dashed #b6a300;
  background:#fff8c2;
  color:#574f00;
  padding:16px 18px;
  font-size:16px;
  line-height:1.5;
  font-weight:400;
}

@media (max-width:900px){
  .sb-legal-inner{width:min(var(--sb-legal-max), calc(100% - 32px))}
  .sb-legal-band-inner{
    min-height:0;
    align-items:flex-start;
    flex-direction:column;
    padding-top:24px;
    padding-bottom:24px;
  }
  .sb-legal-band-text{max-width:none}
  .sb-legal-actions{width:auto;flex-wrap:wrap}
  .sb-legal-document{padding-top:48px}
}
@media (max-width:520px){
  .sb-legal-inner{width:calc(100% - 24px)}
  .sb-legal-action{width:48px;height:48px}
}
@media print{
  body *{visibility:hidden!important}
  .sb-legal-page,
  .sb-legal-page *{visibility:visible!important}
  .sb-legal-page{position:absolute;left:0;top:0;width:100%}
  .sb-legal-actions{display:none!important}
  .sb-legal-band{width:100%!important;margin:0!important}
}


/* 0.1.2 — remove Divi host spacing around the LAST legal block only */
.et_pb_section.sb-legal-host-section,
.et_pb_row.sb-legal-host-row,
.et_pb_column.sb-legal-host-column,
.et_pb_module.sb-legal-host-module,
.et_pb_code.sb-legal-host-module,
.et_pb_code_inner.sb-legal-host-inner{
  margin-top:0!important;
  margin-bottom:0!important;
  padding-top:0!important;
  padding-bottom:0!important;
}

.et_pb_section.sb-legal-host-section{
  min-height:0!important;
}

.et_pb_row.sb-legal-host-row{
  width:100%!important;
  max-width:none!important;
}

/* Modern browsers: apply immediately, JS below is the fallback and builder-safe path */
.et_pb_section:has(.sb-legal-page),
.et_pb_row:has(.sb-legal-page),
.et_pb_column:has(.sb-legal-page),
.et_pb_module:has(.sb-legal-page),
.et_pb_code:has(.sb-legal-page),
.et_pb_code_inner:has(.sb-legal-page){
  margin-top:0!important;
  margin-bottom:0!important;
  padding-top:0!important;
  padding-bottom:0!important;
}


/* 0.1.3 — close the small Divi slit above the yellow band */
.sb-legal-page{
  display:block;
  position:relative;
}

.sb-legal-host-section > .et_pb_row,
.sb-legal-host-section > .et_pb_row > .et_pb_column,
.sb-legal-host-section > .et_pb_row > .et_pb_column > .et_pb_module,
.sb-legal-host-section > .et_pb_row > .et_pb_column > .et_pb_module > .et_pb_code_inner{
  margin-top:0!important;
  padding-top:0!important;
}

.sb-legal-host-inner .sb-legal-page,
.sb-legal-host-module .sb-legal-page,
.sb-legal-host-column .sb-legal-page,
.sb-legal-host-row .sb-legal-page,
.sb-legal-host-section .sb-legal-page{
  margin-top:-20px!important;
}

@supports selector(.et_pb_section:has(.sb-legal-page)){
  .et_pb_section:has(.sb-legal-page) .sb-legal-page,
  .et_pb_row:has(.sb-legal-page) .sb-legal-page,
  .et_pb_column:has(.sb-legal-page) .sb-legal-page,
  .et_pb_module:has(.sb-legal-page) .sb-legal-page,
  .et_pb_code_inner:has(.sb-legal-page) .sb-legal-page{
    margin-top:-20px!important;
  }
}
