:root{
  --site-bg:#eef4fb;
  --site-text:#0f172a;
  --site-muted:#64748b;
  --site-primary:#4f46e5;
  --site-accent:#818cf8;
  --site-card:rgba(255,255,255,.88);
  --site-card-border:rgba(255,255,255,.82);
  --site-line:rgba(148,163,184,.18);
  --site-shadow:0 18px 50px rgba(15,23,42,.08);
  --site-shadow-soft:0 14px 35px rgba(15,23,42,.06);
  --site-bg-image:none;
}
html,body{min-height:100%}
body:not(.adminBody){
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  color:var(--site-text);
  background:
    radial-gradient(circle at 0% 0%, rgba(99,102,241,.12), transparent 28%),
    radial-gradient(circle at 100% 10%, rgba(59,130,246,.10), transparent 24%),
    linear-gradient(180deg,#f8fbff 0%, var(--site-bg) 45%, #edf3fb 100%);
  position:relative;
}
body:not(.adminBody)::before{
  content:'';position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.24;
  background-image:var(--site-bg-image),radial-gradient(circle at 12% 18%, rgba(99,102,241,.16), transparent 28%),radial-gradient(circle at 88% 16%, rgba(129,140,248,.14), transparent 24%),radial-gradient(circle at 50% 100%, rgba(59,130,246,.10), transparent 30%);
  background-size:cover,720px 720px,620px 620px,760px 760px;
  background-position:center top,left top,right top,center bottom;
  background-repeat:no-repeat;
}
body:not(.adminBody) > *{position:relative;z-index:1}
body:not(.adminBody) a{color:var(--site-primary);text-decoration:none}
body:not(.adminBody) a:hover{color:#4338ca}
body:not(.adminBody) header,
body:not(.adminBody) nav,
body:not(.adminBody) .topbar,
body:not(.adminBody) .navbar,
body:not(.adminBody) .site-header,
body:not(.adminBody) .hero,
body:not(.adminBody) .heroCard,
body:not(.adminBody) .searchBar,
body:not(.adminBody) .toolbar,
body:not(.adminBody) .panel,
body:not(.adminBody) .card,
body:not(.adminBody) .listCard,
body:not(.adminBody) .tableWrap,
body:not(.adminBody) .validator,
body:not(.adminBody) .validation-card,
body:not(.adminBody) [class*="validator"],
body:not(.adminBody) [class*="verify"],
body:not(.adminBody) .result-card,
body:not(.adminBody) .content-card,
body:not(.adminBody) footer{
  background:var(--site-card) !important;
  border:1px solid var(--site-card-border) !important;
  border-radius:24px !important;
  box-shadow:var(--site-shadow-soft) !important;
  backdrop-filter:blur(14px);
}
body:not(.adminBody) header,
body:not(.adminBody) nav,
body:not(.adminBody) .navbar,
body:not(.adminBody) .site-header{margin:12px; box-shadow:var(--site-shadow)}
body:not(.adminBody) .container,
body:not(.adminBody) main,
body:not(.adminBody) .wrap,
body:not(.adminBody) .content,
body:not(.adminBody) .site-content{position:relative; z-index:1}
body:not(.adminBody) .sectionTitle h1,
body:not(.adminBody) .sectionTitle h2,
body:not(.adminBody) h1,
body:not(.adminBody) h2,
body:not(.adminBody) h3{letter-spacing:-.025em;color:var(--site-text)}
body:not(.adminBody) .muted,
body:not(.adminBody) .sub,
body:not(.adminBody) .subtitle,
body:not(.adminBody) small,
body:not(.adminBody) .help{color:var(--site-muted) !important}
body:not(.adminBody) .btn,
body:not(.adminBody) button,
body:not(.adminBody) input[type=submit],
body:not(.adminBody) input[type=button]{
  min-height:44px;border-radius:16px !important;border:1px solid transparent !important;font-weight:700;
}
body:not(.adminBody) .btn-primary,
body:not(.adminBody) .btn.primary,
body:not(.adminBody) button[type=submit],
body:not(.adminBody) input[type=submit]{
  background:linear-gradient(135deg,#4f46e5,#6366f1 55%,#818cf8) !important;
  color:#fff !important;
  box-shadow:0 12px 24px rgba(99,102,241,.22);
}
body:not(.adminBody) .btn-secondary,
body:not(.adminBody) .btn-light,
body:not(.adminBody) .btn-outline-secondary{
  background:rgba(255,255,255,.86) !important;color:#334155 !important;border-color:var(--site-line) !important;
}
body:not(.adminBody) input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]),
body:not(.adminBody) select,
body:not(.adminBody) textarea{
  min-height:46px;border-radius:16px !important;border:1px solid var(--site-line) !important;
  background:rgba(255,255,255,.94) !important;color:var(--site-text) !important;
  box-shadow:inset 0 1px 2px rgba(15,23,42,.03);
}
body:not(.adminBody) textarea{min-height:120px}
body:not(.adminBody) input:focus,
body:not(.adminBody) select:focus,
body:not(.adminBody) textarea:focus{outline:none;border-color:rgba(99,102,241,.42) !important;box-shadow:0 0 0 4px rgba(99,102,241,.10), inset 0 1px 2px rgba(15,23,42,.03) !important}
body:not(.adminBody) table{border-collapse:separate;border-spacing:0;overflow:hidden;border-radius:18px}
body:not(.adminBody) table thead th{background:rgba(248,250,252,.92);color:#334155;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--site-line)!important}
body:not(.adminBody) table td,body:not(.adminBody) table th{padding:14px 16px}
body:not(.adminBody) table tbody tr:hover{background:rgba(99,102,241,.035)}
body:not(.adminBody) .badge,
body:not(.adminBody) .pill,
body:not(.adminBody) .tag{border-radius:999px !important;padding:.42rem .72rem !important;font-weight:700}
body:not(.adminBody) .hero,
body:not(.adminBody) .heroCard,
body:not(.adminBody) [class*="hero"]{overflow:hidden}
body:not(.adminBody) .hero::after,
body:not(.adminBody) .heroCard::after,
body:not(.adminBody) [class*="hero"]::after{
  content:'';position:absolute;inset:auto -12% -30% auto;width:220px;height:220px;border-radius:999px;
  background:radial-gradient(circle, rgba(99,102,241,.18), transparent 68%);pointer-events:none;
}
::-webkit-scrollbar{width:11px;height:11px}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg, rgba(99,102,241,.45), rgba(59,130,246,.40));border-radius:999px;border:2px solid rgba(255,255,255,.65)}
::-webkit-scrollbar-track{background:rgba(148,163,184,.08);border-radius:999px}
@media (max-width:900px){
  body:not(.adminBody) header,
  body:not(.adminBody) nav,
  body:not(.adminBody) .navbar,
  body:not(.adminBody) .site-header{margin:10px}
}


.siteLiveBar{position:sticky;top:12px;z-index:9999;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px;border-radius:18px;background:rgba(15,23,42,.88);color:#fff;backdrop-filter:blur(10px);margin:0 0 16px}
.siteLiveBar .actions{display:flex;gap:10px;flex-wrap:wrap}
.siteBlockTools{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px}
[data-live-page][contenteditable="true"], [data-live-block-body][contenteditable="true"]{outline:2px dashed rgba(99,102,241,.28);outline-offset:6px;min-height:20px}
.blockFeature,.blockCta,.blockMedia,.blockStats{display:block}
.blockCta{display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap}
.blockMedia{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:center}
.blockStats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:14px}
.blockStats > div{padding:14px;border-radius:18px;background:rgba(255,255,255,.12)}
.blockStats b{display:block;font-size:28px}
@media (max-width:800px){.blockMedia{grid-template-columns:1fr}}


/* P373 public top hero */
.siteTop.siteTopHero{margin:0 0 14px !important}
.siteTop.siteTopHero .siteNavLinks > a{padding:10px 12px;border-radius:14px}
.siteTop.siteTopHero .siteNavRight .btn.primary{min-height:56px;border-radius:20px;padding:14px 22px}
.siteTop.siteTopHero .langDropdown{position:relative}
.siteTop.siteTopHero .langList{right:0;left:auto}
.hero .heroActions{display:none !important}


/* P374 public hero full-screen + language dropdown fix */
html,body{overflow-x:hidden}
body.site{overflow-x:hidden}
.siteTop.siteTopHero{
  position:relative !important;
  top:0 !important;
  max-width:none !important;
  width:100% !important;
  min-height:100vh !important;
  margin:0 !important;
  border-radius:0 0 32px 32px !important;
  padding:24px 28px 32px !important;
  overflow:visible !important;
}
.siteTop.siteTopHero .siteTopInner{
  width:100%;
  min-height:calc(100vh - 56px);
  align-items:flex-start;
}
.siteTop.siteTopHero .siteTopMedia{
  background-size:cover !important;
  background-position:center center !important;
}
.siteTop.siteTopHero .siteNav{
  flex:1 1 auto;
  min-width:0;
}
.siteTop.siteTopHero .siteNavLinks{
  width:100% !important;
  justify-content:space-between !important;
  align-items:flex-start !important;
}
.siteTop.siteTopHero .siteNavLinks > a{
  color:#fff !important;
  text-shadow:0 2px 12px rgba(0,0,0,.32);
}
.siteTop.siteTopHero .siteNavRight{
  margin-left:auto !important;
  justify-content:flex-end !important;
  align-items:flex-start !important;
}
.siteTop.siteTopHero .langDropdown{
  position:relative !important;
  z-index:9999 !important;
}
.siteTop.siteTopHero .langBtn{
  min-width:280px;
  justify-content:space-between;
}
.siteTop.siteTopHero .langFlag,
.siteTop .langFlag,
.langDropdown .langFlag{
  width:20px !important;
  height:14px !important;
  min-width:20px !important;
  min-height:14px !important;
  max-width:20px !important;
  max-height:14px !important;
  object-fit:cover !important;
  border-radius:3px !important;
  display:inline-block !important;
  vertical-align:middle !important;
  box-shadow:0 0 0 1px rgba(255,255,255,.12);
}
.siteTop.siteTopHero .langList{
  position:absolute !important;
  top:calc(100% + 10px) !important;
  right:0 !important;
  left:auto !important;
  width:280px !important;
  min-width:280px !important;
  max-width:280px !important;
  display:none;
  overflow:hidden !important;
  z-index:10000 !important;
}
.siteTop.siteTopHero .langList.open{
  display:block !important;
}
.siteTop.siteTopHero .langList a{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  width:100% !important;
  box-sizing:border-box !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  padding:10px 12px !important;
}
.siteContainer{
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}
.siteContainer > [data-live-page]{
  margin:0 !important;
}
.hero{
  margin:0 !important;
  border-radius:0 !important;
  min-height:0 !important;
}
.hero .left,.hero .right{
  padding-top:22px;
}
@media (max-width: 980px){
  .siteTop.siteTopHero{
    min-height:72vh !important;
    padding:16px 16px 22px !important;
  }
  .siteTop.siteTopHero .siteTopInner{
    min-height:calc(72vh - 38px);
  }
  .siteTop.siteTopHero .siteNavLinks{
    justify-content:flex-start !important;
    gap:12px !important;
  }
  .siteTop.siteTopHero .siteNavRight{
    width:auto !important;
  }
}
@media (max-width: 760px){
  .siteTop.siteTopHero{
    min-height:64vh !important;
  }
  .siteTop.siteTopHero .siteTopInner{
    min-height:calc(64vh - 28px);
  }
  .siteTop.siteTopHero .siteNavRight{
    width:100% !important;
    justify-content:flex-start !important;
  }
  .siteTop.siteTopHero .langBtn,
  .siteTop.siteTopHero .langList{
    min-width:240px !important;
    width:min(100%, 280px) !important;
  }
}


/* P379 public menu/dropdown layering */
.siteTop,.siteTop *{position:relative}
.siteTop{z-index:1000}
.siteTop .langDropdown{z-index:10050 !important}
.siteTop .langList{z-index:10060 !important}
.siteTop .siteNavLinks,.siteTop .siteNavRight,.siteTop .siteNavCenter{z-index:1001}
.card,.panel,.tableWrap,table,.section,.siteContainer,[data-live-page]{position:relative;z-index:1}
