html:not([data-site-theme]),
html[data-site-theme="light"]{
  --support-body-bg:
    radial-gradient(circle at 14% 10%, rgba(103,151,171,.14), transparent 24rem),
    radial-gradient(circle at 86% 0%, rgba(49,95,206,.08), transparent 20rem),
    linear-gradient(180deg, #fbfdff 0%, #f1f6fc 44%, #eaf1f8 100%);
  --support-ink:#142132;
  --support-muted:#4d6277;
  --support-link:#234fae;
  --support-link-hover:#1d459f;
  --support-line:rgba(17,31,49,.14);
  --support-line-strong:rgba(35,79,174,.24);
  --support-surface:#ffffff;
  --support-surface-soft:#f1f6fc;
  --support-surface-strong:#e7efff;
  --support-tint-line:rgba(96,140,166,.24);
  --support-tint-bg:rgba(109,156,184,.12);
  --support-warm-line:rgba(181,131,36,.28);
  --support-warm-bg:rgba(255,242,219,.9);
  --support-warm-text:#7d5410;
  --support-shadow:0 18px 40px rgba(17,31,49,.12);
  --support-header-bg:rgba(255,255,255,.92);
  --support-header-link:#132131;
  --support-header-muted:#42576c;
  --support-header-hover:#234fae;
  --support-table-head-bg:#eaf1fb;
  --support-table-head-ink:#142132;
}

html[data-site-theme="dark"]{
  --support-body-bg:
    radial-gradient(circle at top left, rgba(132,174,193,.12), transparent 24rem),
    radial-gradient(circle at 84% 0%, rgba(70,114,185,.08), transparent 20rem),
    linear-gradient(180deg, #0d1722 0%, #071017 100%);
  --support-ink:#edf3f7;
  --support-muted:#b0c2cf;
  --support-link:#dff4ff;
  --support-link-hover:#ffffff;
  --support-line:rgba(235,242,247,.14);
  --support-line-strong:rgba(235,242,247,.24);
  --support-surface:linear-gradient(180deg, rgba(16,24,33,.92), rgba(11,18,25,.9));
  --support-surface-soft:rgba(255,255,255,.05);
  --support-surface-strong:rgba(103,151,171,.16);
  --support-tint-line:rgba(128,170,190,.18);
  --support-tint-bg:rgba(128,170,190,.12);
  --support-warm-line:rgba(240,207,141,.22);
  --support-warm-bg:rgba(130,98,40,.14);
  --support-warm-text:#f0cf8d;
  --support-shadow:0 18px 44px rgba(0,0,0,.28);
  --support-header-bg:#09121b;
  --support-header-link:#edf3f7;
  --support-header-muted:#d2e2ed;
  --support-header-hover:#ffffff;
  --support-table-head-bg:#162534;
  --support-table-head-ink:#f3f8fb;
}

html:not([data-site-theme]),
html[data-site-theme="light"]{
  color-scheme:light;
}

html[data-site-theme="dark"]{
  color-scheme:dark;
}

body{
  background:var(--support-body-bg);
  color:var(--support-ink);
}

a{
  color:var(--support-link);
  text-decoration-color:var(--support-line-strong);
}

a:hover{
  color:var(--support-link-hover);
  text-decoration-color:currentColor;
}

.page{
  width:min(1120px, calc(100vw - 32px));
  padding:0 0 56px;
}

.topnavEnhanced{
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  padding:24px clamp(24px, 4vw, 56px);
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:22px 36px;
  border-bottom:1px solid var(--support-line);
  background:var(--support-header-bg);
  box-shadow:0 1px 0 rgba(17,31,49,.05), 0 10px 24px rgba(17,31,49,.04);
  backdrop-filter:blur(10px) saturate(118%);
  -webkit-backdrop-filter:blur(10px) saturate(118%);
}

.topnavEnhanced a:first-child::before{
  content:none;
}

.topnavEnhanced a:first-child{
  color:inherit;
  font-weight:inherit;
}

.topnavBrand{
  display:inline-flex;
  align-items:center;
  gap:12px;
  min-width:0;
  color:var(--support-header-link);
  text-decoration:none;
}

.topnavBrand img{
  width:auto;
  height:38px;
  max-width:174px;
  flex:0 0 auto;
}

.topnavBrandWordmark{
  display:none;
}

.topnavMain{
  min-width:0;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:14px 28px;
}

.topnavMenuLink{
  font-weight:650;
}

.topnavUtilities{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  min-height:22px;
  gap:14px;
  flex-wrap:wrap;
}

.topnavMenuLink,
.topnavUtilityLink,
.themeToggle{
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  min-height:22px;
  padding:4px 0;
  border:0;
  background:none;
  color:var(--support-header-link);
  font:inherit;
  font-size:16px;
  font-weight:600;
  line-height:1.2;
  text-decoration:none;
  cursor:pointer;
  transition:color .16s ease, opacity .16s ease;
}

.topnavUtilityLink,
.themeToggle,
.localeBadge{
  color:var(--support-header-muted);
}

.topnavMenuLink:hover,
.topnavMenuLink:focus-visible,
.topnavUtilityLink:hover,
.topnavUtilityLink:focus-visible,
.themeToggle:hover,
.themeToggle:focus-visible{
  color:var(--support-header-hover);
}

.themeToggle:hover,
.themeToggle:focus-visible{
  border-color:var(--support-line-strong);
  background:var(--support-surface-strong);
}

.topnavMenuLink.active,
.topnavUtilityLink.active{
  color:var(--support-link);
}

.topnavBack::before{
  content:"←";
  margin-right:6px;
}

.themeToggle{
  width:24px;
  height:24px;
  padding:0;
  justify-content:center;
  border:1px solid var(--support-line-strong);
  border-radius:999px;
  background:var(--support-surface-strong);
}

.themeToggleIcon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:14px;
  height:14px;
  line-height:1;
}

.themeToggleIcon svg{
  width:14px;
  height:14px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.themeToggleLabel{
  display:none;
}

.localeBadge{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  gap:8px;
  font-size:14px;
  font-weight:600;
  line-height:1;
}

.localeBadgeLabel{
  letter-spacing:.04em;
}

.localeFlag{
  width:22px;
  height:16px;
  display:inline-block;
  border-radius:4px;
  border:1px solid var(--support-line);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14), 0 2px 10px rgba(0,0,0,.08);
  flex:0 0 auto;
}

.localeFlag.ie{
  background:linear-gradient(90deg, #169b62 0 33.333%, #ffffff 33.333% 66.666%, #ff883e 66.666% 100%);
}

.breadcrumbs{
  margin:18px 0 20px;
  color:var(--support-muted);
}

.breadcrumbs li+li::before{
  color:var(--support-muted);
}

.breadcrumbs a{
  color:var(--support-muted);
}

.eyebrow,
.factLabel,
.kicker{
  color:var(--support-warm-text);
}

.lede,
.relatedCard p,
.note,
.footer{
  color:var(--support-muted);
}

.heroMetaItem,
.sectionNav a,
.factCard,
.relatedCard,
.tableWrap{
  border-color:var(--support-line);
  background:var(--support-surface-soft);
}

.heroMetaItem{
  color:var(--support-muted);
}

.sectionNav{
  border-bottom:1px solid var(--support-line);
}

.sectionNav a{
  color:var(--support-ink);
}

.card{
  border-color:var(--support-line);
  background:var(--support-surface);
  box-shadow:var(--support-shadow);
}

.card,
.card h2,
.card h3,
.relatedCard h3,
.factCard,
.factCard strong{
  color:var(--support-ink);
}

.buttonLink{
  border-color:var(--support-line-strong);
  background:var(--support-surface-strong);
  color:var(--support-ink);
  box-shadow:0 8px 18px rgba(17,31,49,.06);
  font-weight:650;
}

.buttonLink.secondary{
  border-color:var(--support-line);
  background:var(--support-surface);
  color:var(--support-header-link);
}

.buttonLink.warm{
  border-color:var(--support-warm-line);
  background:var(--support-warm-bg);
  color:var(--support-warm-text);
}

.callout{
  border-color:var(--support-tint-line);
  background:var(--support-tint-bg);
}

.callout.warm{
  border-color:var(--support-warm-line);
  background:var(--support-warm-bg);
}

.guideTable th{
  background:var(--support-table-head-bg);
  color:var(--support-table-head-ink);
}

.guideTable td strong{
  color:var(--support-ink);
}

.footer{
  border-top:1px solid var(--support-line);
}

html[data-site-theme="dark"] .topnavBrand img{
  filter:drop-shadow(0 8px 20px rgba(255,255,255,.05));
}

@media (max-width:900px){
  .topnavEnhanced{
    grid-template-columns:auto auto;
    align-items:flex-start;
    gap:18px 24px;
    padding:20px 24px;
  }

  .topnavMain{
    grid-column:1 / -1;
  }
}

@media (max-width:760px){
  .page{
    width:min(100vw - 20px, 1120px);
    padding-bottom:40px;
  }

  .topnavEnhanced{
    grid-template-columns:minmax(0,1fr);
    gap:14px;
    padding:16px;
  }

  .topnavUtilities{
    justify-content:flex-start;
    gap:10px 14px;
  }

  .topnavMenuLink,
  .topnavUtilityLink,
  .themeToggle{
    font-size:15px;
  }
}

.topnavEnhanced .topnavBack::before{
  content:"<-";
}
