/*
 * StepOut Global Service Footer v1.0.3
 * Isolated scope: .sogf only. No html/body/header/main/page-shell width rules.
 * Uses the exact production StepOut footer background: #111426.
 */
.sogf,
.sogf *{box-sizing:border-box}
.sogf{
  display:block;
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
  clear:both;
  color:#f6f7fb;
  background:#111426;
  border-top:1px solid rgba(255,255,255,.07)
}
.sogf-shell{
  width:min(1180px,calc(100% - 40px));
  max-width:1180px;
  margin:0 auto
}
.sogf-row{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(250px,.65fr);
  gap:36px;
  align-items:center
}
.sogf-row--reservation{padding:48px 0 34px}
.sogf-row--help{
  padding:28px 0 32px;
  border-top:1px solid rgba(255,255,255,.09)
}
.sogf-kicker{
  display:inline-flex;
  align-items:center;
  margin:0 0 11px;
  padding:5px 9px;
  border:1px solid rgba(125,142,255,.28);
  border-radius:999px;
  background:rgba(84,102,219,.10);
  color:#dce2ff;
  font-size:.70rem;
  font-weight:800;
  line-height:1.2;
  letter-spacing:.08em;
  text-transform:uppercase
}
.sogf-kicker--muted{
  border-color:rgba(255,255,255,.13);
  background:rgba(255,255,255,.025);
  color:#adb5c9
}
.sogf h2{
  max-width:780px;
  margin:0 0 12px;
  color:#fff;
  font-family:inherit;
  font-size:clamp(1.68rem,3vw,2.5rem);
  font-weight:800;
  line-height:1.1;
  letter-spacing:-.03em
}
.sogf-row--help h2{font-size:clamp(1.34rem,2.35vw,1.95rem)}
.sogf p{
  max-width:820px;
  margin:0;
  color:#bdc4d6;
  font-size:.92rem;
  line-height:1.62
}
.sogf-prices{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:15px
}
.sogf-prices span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 9px;
  border:1px solid rgba(127,143,231,.20);
  border-radius:999px;
  background:rgba(87,104,205,.07);
  color:#d8def4;
  font-size:.74rem;
  font-weight:750;
  line-height:1.2
}
.sogf .sogf-note{
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid rgba(255,255,255,.08);
  color:#98a2b9;
  font-size:.78rem;
  line-height:1.52
}
.sogf-actions{
  display:grid;
  gap:9px;
  width:100%;
  max-width:320px;
  justify-self:end
}
.sogf-button{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:9px 17px;
  border-radius:999px;
  text-decoration:none!important;
  font-size:.88rem;
  font-weight:800;
  text-align:center;
  transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease
}
.sogf-button--primary{
  border:1px solid rgba(255,255,255,.9);
  background:#f8f9ff;
  color:#111b75!important
}
.sogf-button--primary:hover,
.sogf-button--primary:focus{
  background:#fff;
  color:#060097!important;
  transform:translateY(-1px)
}
.sogf-button--secondary{
  border:1px solid rgba(190,198,225,.32);
  background:rgba(255,255,255,.02);
  color:#eef1ff!important
}
.sogf-button--secondary:hover,
.sogf-button--secondary:focus{
  border-color:rgba(212,218,239,.48);
  background:rgba(255,255,255,.055);
  color:#fff!important
}
.sogf + .site-footer{
  margin-top:0;
  border-top:1px solid rgba(255,255,255,.08)
}
@media(max-width:760px){
  .sogf-shell{width:calc(100% - 24px)}
  .sogf-row{grid-template-columns:1fr;gap:18px}
  .sogf-row--reservation{padding:34px 0 26px}
  .sogf-row--help{padding:24px 0 28px}
  .sogf h2{font-size:1.58rem}
  .sogf-row--help h2{font-size:1.32rem}
  .sogf p{font-size:.83rem;line-height:1.54}
  .sogf-actions{max-width:360px;justify-self:start}
}
