
/* SoberGroup custom welcome page — MyNew Technologies LLC */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700&family=DM+Sans:wght@300;400;500;600&display=swap');

html, body {
  background: #0D1B2A !important;
  font-family: 'DM Sans', system-ui, sans-serif !important;
  color: #F5F0E8 !important;
}
#layout { background: #0D1B2A !important; min-height: 100vh !important; }

/* ── Header ── */
#header {
  background: #0a1520 !important;
  border-bottom: 1px solid rgba(29,158,117,0.25) !important;
  padding: 0 !important;
}
#header .wrap {
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding: 12px 24px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  background: transparent !important;
}
#header #logo, #header .logospace .v-center, #header .menuspace { display: none !important; }
#header .logospace { flex: 1 !important; background: transparent !important; }
.show-for-large { display: none !important; }

/* ── Footer ── */
#foot, #foot footer, #footer {
  background: #060f1a !important;
  border-top: 1px solid rgba(29,158,117,0.15) !important;
}
#foot footer .wrap { max-width: 1100px !important; margin: 0 auto !important; }
#foot footer .copyrights { display: none !important; }
#foot footer .logo-footer-space { display: none !important; }

/* ── Content wrappers ── */
#portalmenu, #portalcontent {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}
#content .wrap { max-width: none !important; padding: 0 !important; }
main { background: #0D1B2A !important; }

/* ── Brand header ── */
.sg-hb { display: flex !important; align-items: center !important; gap: 14px !important; }
.sg-hb img { height: 42px !important; width: auto !important; display: block !important; }
.sg-ht {
  font-family: 'Playfair Display', serif !important;
  font-size: 17px !important; font-weight: 600 !important;
  color: #F5F0E8 !important; line-height: 1.2 !important;
}
.sg-hs {
  font-size: 11px !important; color: #5DCAA5 !important;
  font-weight: 400 !important; letter-spacing: .06em !important;
  text-transform: uppercase !important;
}
.sg-hbadge {
  display: flex !important; align-items: center !important; gap: 7px !important;
  background: rgba(29,158,117,.12) !important;
  border: 1px solid rgba(29,158,117,.3) !important;
  border-radius: 20px !important; padding: 5px 14px !important;
  font-size: 12px !important; color: #5DCAA5 !important;
  font-weight: 500 !important; white-space: nowrap !important;
}

/* ── Hero ── */
.sg-hero {
  background: #0a1520 !important;
  border-bottom: 1px solid rgba(29,158,117,.15) !important;
  padding: 52px 24px 44px !important;
  text-align: center !important;
}
.sg-eyebrow {
  display: inline-flex !important; align-items: center !important; gap: 8px !important;
  font-size: 11px !important; font-weight: 600 !important;
  letter-spacing: .12em !important; text-transform: uppercase !important;
  color: #5DCAA5 !important; margin-bottom: 18px !important;
}
.sg-eyebrow::before, .sg-eyebrow::after {
  content: '' !important; display: block !important;
  width: 32px !important; height: 1px !important;
  background: rgba(93,202,165,.4) !important;
}
.sg-hero h1 {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(26px,4vw,42px) !important;
  font-weight: 700 !important; color: #F5F0E8 !important;
  line-height: 1.2 !important; margin-bottom: 14px !important;
}
.sg-hero h1 span { color: #5DCAA5 !important; }
.sg-hdesc {
  font-size: 15px !important; color: rgba(245,240,232,.6) !important;
  max-width: 580px !important; margin: 0 auto !important; line-height: 1.7 !important;
}

/* ── Main ── */
.sg-main { max-width: 1100px !important; margin: 0 auto !important; padding: 48px 24px 24px !important; }

.sg-sl {
  font-size: 11px !important; font-weight: 600 !important;
  letter-spacing: .12em !important; text-transform: uppercase !important;
  color: #5DCAA5 !important; margin-bottom: 20px !important;
  display: flex !important; align-items: center !important; gap: 10px !important;
}
.sg-sl::after {
  content: '' !important; flex: 1 !important;
  height: 1px !important; background: rgba(29,158,117,.2) !important;
}

/* ── IP card ── */
.sg-ipc {
  background: #0f2236 !important;
  border: 1px solid rgba(29,158,117,.22) !important;
  border-radius: 12px !important; padding: 28px 32px !important;
  margin-bottom: 48px !important; position: relative !important; overflow: hidden !important;
}
.sg-ipc::before {
  content: '' !important; position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 2px !important;
  background: linear-gradient(90deg,#1D9E75,#5DCAA5,#1D9E75) !important;
}
.sg-ipg {
  display: grid !important; grid-template-columns: 1fr 1fr !important;
  gap: 24px !important; align-items: start !important;
}
@media(max-width:680px) { .sg-ipg { grid-template-columns: 1fr !important; } }
.sg-iph { display: flex !important; align-items: center !important; gap: 12px !important; margin-bottom: 20px !important; }
.sg-ipico {
  width: 40px !important; height: 40px !important;
  background: rgba(29,158,117,.15) !important;
  border: 1px solid rgba(29,158,117,.3) !important;
  border-radius: 8px !important; display: flex !important;
  align-items: center !important; justify-content: center !important; flex-shrink: 0 !important;
}
.sg-ipl { font-size: 11px !important; font-weight: 600 !important; letter-spacing: .1em !important; text-transform: uppercase !important; color: #5DCAA5 !important; }
.sg-ipt { font-size: 15px !important; font-weight: 500 !important; color: #F5F0E8 !important; margin-top: 2px !important; }
.sg-ipf { display: flex !important; flex-direction: column !important; gap: 4px !important; margin-bottom: 14px !important; }
.sg-ipfl { font-size: 11px !important; font-weight: 600 !important; letter-spacing: .08em !important; text-transform: uppercase !important; color: rgba(245,240,232,.4) !important; }
.sg-ipfv { font-size: 15px !important; font-weight: 500 !important; color: #F5F0E8 !important; min-height: 22px !important; }
.sg-addr { font-size: 22px !important; font-weight: 600 !important; color: #5DCAA5 !important; letter-spacing: .04em !important; }
.sg-pulse {
  display: inline-block !important; width: 80px !important; height: 12px !important;
  background: rgba(245,240,232,.08) !important; border-radius: 6px !important;
  animation: sgp 1.5s ease-in-out infinite !important;
}
@keyframes sgp { 0%,100%{opacity:.4} 50%{opacity:1} }
.sg-mapc {
  border-radius: 8px !important; overflow: hidden !important;
  border: 1px solid rgba(29,158,117,.2) !important;
  height: 220px !important; background: #0a1520 !important; position: relative !important;
}
.sg-mapc iframe { width: 100% !important; height: 100% !important; border: none !important; display: block !important; }
.sg-mapph {
  position: absolute !important; inset: 0 !important;
  display: flex !important; flex-direction: column !important;
  align-items: center !important; justify-content: center !important;
  gap: 10px !important; font-size: 13px !important; color: rgba(245,240,232,.4) !important;
}
.sg-wp {
  display: inline-flex !important; align-items: center !important; gap: 6px !important;
  background: rgba(201,151,74,.12) !important; border: 1px solid rgba(201,151,74,.3) !important;
  border-radius: 20px !important; padding: 4px 12px !important;
  font-size: 11px !important; font-weight: 600 !important; color: #C9974A !important;
  letter-spacing: .06em !important; text-transform: uppercase !important; margin-top: 16px !important;
}
.sg-maplbl { font-size: 11px !important; font-weight: 600 !important; letter-spacing: .08em !important; text-transform: uppercase !important; color: rgba(245,240,232,.4) !important; margin-bottom: 10px !important; }
.sg-mapdesc { font-size: 11px !important; color: rgba(245,240,232,.3) !important; margin-top: 8px !important; line-height: 1.5 !important; }

/* ── Legal card ── */
.sg-lc {
  background: rgba(201,151,74,.07) !important;
  border: 1px solid rgba(201,151,74,.25) !important;
  border-radius: 12px !important; padding: 28px 32px !important; margin-bottom: 48px !important;
}
.sg-lh { display: flex !important; align-items: flex-start !important; gap: 14px !important; margin-bottom: 18px !important; }
.sg-lico {
  width: 42px !important; height: 42px !important; flex-shrink: 0 !important;
  background: rgba(201,151,74,.15) !important; border: 1px solid rgba(201,151,74,.3) !important;
  border-radius: 8px !important; display: flex !important; align-items: center !important; justify-content: center !important;
}
.sg-lhd { font-family: 'Playfair Display', serif !important; font-size: 17px !important; font-weight: 600 !important; color: #F5F0E8 !important; margin-bottom: 4px !important; }
.sg-lhs { font-size: 12px !important; color: #C9974A !important; font-weight: 500 !important; letter-spacing: .06em !important; text-transform: uppercase !important; }
.sg-lb { font-size: 13.5px !important; line-height: 1.75 !important; color: rgba(245,240,232,.72) !important; border-top: 1px solid rgba(201,151,74,.18) !important; padding-top: 18px !important; }
.sg-lb strong { color: #F5F0E8 !important; font-weight: 600 !important; }
.sg-lbp { margin-top: 14px !important; font-size: 13.5px !important; line-height: 1.75 !important; color: rgba(245,240,232,.72) !important; display: block !important; }
.sg-lbpf { margin-top: 14px !important; font-size: 12px !important; color: rgba(245,240,232,.45) !important; display: block !important; }

/* ── Agency cards ── */
.sg-ag { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 24px !important; margin-bottom: 0 !important; }
@media(max-width:600px) { .sg-ag { grid-template-columns: 1fr !important; } }
.sg-ac {
  background: #0f2236 !important; border: 1px solid rgba(29,158,117,.2) !important;
  border-radius: 12px !important; padding: 28px 24px 24px !important;
  display: flex !important; flex-direction: column !important;
}
.sg-ac:hover { border-color: rgba(29,158,117,.4) !important; }
.sg-asw {
  width: 72px !important; height: 72px !important; border-radius: 12px !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  margin-bottom: 18px !important; flex-shrink: 0 !important;
}
.sg-asw.fbi { background: rgba(10,30,60,.8) !important; border: 1px solid rgba(29,76,153,.4) !important; }
.sg-asw.doj { background: rgba(40,20,5,.8) !important; border: 1px solid rgba(201,151,74,.3) !important; }
.sg-an { font-family: 'Playfair Display', serif !important; font-size: 18px !important; font-weight: 700 !important; color: #F5F0E8 !important; margin-bottom: 4px !important; }
.sg-af { font-size: 12px !important; font-weight: 500 !important; letter-spacing: .06em !important; text-transform: uppercase !important; color: #5DCAA5 !important; margin-bottom: 18px !important; }
.sg-ad { height: 1px !important; background: rgba(29,158,117,.12) !important; margin-bottom: 18px !important; }
.sg-ar { display: flex !important; align-items: flex-start !important; gap: 10px !important; margin-bottom: 10px !important; }
.sg-art { font-size: 13px !important; color: rgba(245,240,232,.65) !important; line-height: 1.5 !important; }
.sg-art strong { color: rgba(245,240,232,.9) !important; font-weight: 500 !important; }
.sg-al { display: inline-flex !important; align-items: center !important; gap: 5px !important; margin-top: 14px !important; font-size: 12px !important; font-weight: 600 !important; color: #5DCAA5 !important; text-decoration: none !important; letter-spacing: .04em !important; }

/* ── Custom footer ── */
.sg-foot {
  text-align: center !important; padding: 20px 24px !important;
  font-size: 12px !important; color: rgba(245,240,232,.35) !important; line-height: 1.7 !important;
}
.sg-foot a { color: rgba(93,202,165,.6) !important; text-decoration: none !important; }
.sg-foot strong { color: rgba(245,240,232,.55) !important; }
