/* Country picker (in the dark footer) and the location suggestion.
   Flat brand geometry: no glows, blurs, gradients or drop shadows. */

.foot2-base .mkt-pick {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 12px;
  margin: 0 0 4px;
  font-family: Inter, system-ui, -apple-system, "Segoe UI", sans-serif;
  font-size: 13px;
  line-height: 1.5;
  color: #d3e3f3;
}

.foot2-base .mkt-pick-h {
  font-size: 13px;
  line-height: 1.5;
  color: #d3e3f3;
}

.foot2-base .mkt-pick-list {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 2px 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.foot2-base .mkt-pick a {
  color: #d3e3f3;
  font-size: 13px;
  line-height: 1.5;
  text-decoration: none;
  text-underline-offset: 4px;
}

.foot2-base .mkt-pick a:hover,
.foot2-base .mkt-pick a:focus {
  text-decoration-line: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}

.foot2-base .mkt-pick a[aria-current="page"] {
  color: #fff;
  text-decoration-line: underline;
  text-decoration-color: #FF762B;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}

.foot2-base .mkt-pick a[aria-current="page"]:hover,
.foot2-base .mkt-pick a[aria-current="page"]:focus {
  text-decoration-color: #FF762B;
  text-decoration-thickness: 2px;
}

.foot2-base .mkt-pick a:focus {
  outline: 2px solid #fff;
  outline-offset: 3px;
}

.foot2-base .mkt-pick a:focus:not(:focus-visible) {
  outline: none;
}

.foot2-base .mkt-pick a:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 3px;
}

@media (pointer: coarse) {
  .foot2-base .mkt-pick a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 0 2px;
  }
}

/* The location suggestion (S661, 20 Oct 2026): a card in the site's own geometry (rounded, even border,
   pill buttons, the display font for the line that matters). It rises once from the bottom edge. */
.mkt-suggest {
  position: fixed;
  z-index: 40;
  left: 0;
  right: 0;
  bottom: 20px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  gap: 14px;
  width: calc(100% - 32px);
  max-width: 760px;
  margin: 0 auto;
  padding: 12px 12px 12px 14px;
  background: #fff;
  border: 1px solid #dfe6ee;
  border-radius: 20px;
  box-shadow: 0 18px 40px -18px rgba(16, 45, 73, .38);
  color: #102d49;
  font-family: Inter, system-ui, -apple-system, "Segoe UI", sans-serif;
  font-size: 14px;
  line-height: 1.4;
  animation: mkt-rise .32s cubic-bezier(.2, .7, .2, 1) both;
}

@keyframes mkt-rise {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: none; }
}

.mkt-globe {
  flex: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 999px;
  background: #eaf3fc;
  color: #006bcb;
}

.mkt-globe svg { width: 20px; height: 20px; }

.mkt-suggest-text { flex: 1 1 auto; min-width: 0; }

.mkt-suggest-text strong {
  display: block;
  font-family: Montserrat, Inter, system-ui, sans-serif;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: -.01em;
  color: #102d49;
}

.mkt-suggest-text span { display: block; color: #2b4460; }

.mkt-suggest-actions {
  flex: none;
  display: flex;
  align-items: center;
  gap: 6px;
}

.mkt-go,
.mkt-stay {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  height: 40px;
  margin: 0;
  padding: 0 18px;
  border: 0;
  border-radius: 999px;
  font-family: inherit;
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  text-decoration: none;
  cursor: pointer;
  transition: background-color .15s ease, color .15s ease;
}

.mkt-go { background: #006bcb; color: #fff; }
.mkt-go:hover, .mkt-go:focus { background: #004e99; color: #fff; }

.mkt-stay { background: transparent; color: #2b4460; box-shadow: inset 0 0 0 1.5px #dfe6ee; }
.mkt-stay:hover, .mkt-stay:focus { color: #102d49; box-shadow: inset 0 0 0 1.5px #006bcb; }

.mkt-close {
  position: relative;
  flex: none;
  width: 36px;
  height: 36px;
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 999px;
  color: #2b4460;
  cursor: pointer;
}

.mkt-close:hover { background: rgba(16, 45, 73, .06); color: #102d49; }

.mkt-close::before,
.mkt-close::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 12px;
  height: 1.75px;
  border-radius: 2px;
  background: currentColor;
}

.mkt-close::before { transform: translate(-50%, -50%) rotate(45deg); }
.mkt-close::after { transform: translate(-50%, -50%) rotate(-45deg); }

.mkt-go:focus,
.mkt-stay:focus,
.mkt-close:focus,
.mkt-here-btn:focus,
.mkt-here-menu a:focus {
  outline: 2px solid #006bcb;
  outline-offset: 2px;
}

.mkt-go:focus:not(:focus-visible),
.mkt-stay:focus:not(:focus-visible),
.mkt-close:focus:not(:focus-visible),
.mkt-here-btn:focus:not(:focus-visible),
.mkt-here-menu a:focus:not(:focus-visible) {
  outline: none;
}

@media (max-width: 720px) {
  .mkt-suggest {
    flex-wrap: wrap;
    bottom: 12px;
    width: calc(100% - 24px);
    padding: 14px;
    border-radius: 18px;
  }
  .mkt-suggest-text { flex: 1 1 calc(100% - 100px); }
  .mkt-close { order: 3; margin: -6px -6px 0 0; align-self: flex-start; }
  .mkt-suggest-actions { order: 4; flex: 1 1 100%; }
  .mkt-go, .mkt-stay { flex: 1 1 0; padding: 0 12px; }
}

@media (max-width: 390px) {
  .mkt-suggest-actions { flex-direction: column; align-items: stretch; }
  .mkt-go, .mkt-stay { flex: none; width: 100%; }
}

/* Which site this is, in the header (S661): the region's name beside Sign in, opening the same three sites
   the footer lists. It follows the header's light or dark tone like the other header links. */
.mkt-here { position: relative; }

.mkt-here-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 36px;
  margin: 0;
  padding: 0 12px;
  background: transparent;
  border: 0;
  border-radius: 999px;
  font: 500 14.5px/1 var(--font-body, Inter, system-ui, sans-serif);
  cursor: pointer;
  transition: background-color .15s ease, color .15s ease;
}

.mkt-here-btn svg { width: 17px; height: 17px; flex: none; }
.mkt-here-btn .mkt-chev { width: 14px; height: 14px; opacity: .7; }

.nav[data-tone="dark"] .mkt-here-btn { color: rgba(236, 244, 252, .86); }
.nav[data-tone="dark"] .mkt-here-btn:hover,
.nav[data-tone="dark"] .mkt-here-btn[aria-expanded="true"] { color: #fff; background: rgba(191, 227, 255, .1); }
.nav[data-tone="light"] .mkt-here-btn { color: var(--ink-2, #2b4460); }
.nav[data-tone="light"] .mkt-here-btn:hover,
.nav[data-tone="light"] .mkt-here-btn[aria-expanded="true"] { color: var(--ink, #102d49); background: rgba(16, 45, 73, .06); }

.mkt-here-menu {
  position: absolute;
  z-index: 60;
  top: calc(100% + 8px);
  right: 0;
  box-sizing: border-box;
  min-width: 240px;
  margin: 0;
  padding: 8px;
  background: #fff;
  border: 1px solid #dfe6ee;
  border-radius: 16px;
  box-shadow: 0 18px 40px -18px rgba(16, 45, 73, .38);
  list-style: none;
}

.mkt-here-menu[hidden] { display: none; }

.mkt-here-menu a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border-radius: 10px;
  color: #102d49;
  font: 500 14.5px/1.2 var(--font-body, Inter, system-ui, sans-serif);
  text-decoration: none;
}

.mkt-here-menu a:hover { background: #f2f6fa; }
.mkt-here-menu a small { display: block; margin-top: 3px; color: #2b4460; font-size: 12.5px; font-weight: 400; }
.mkt-here-menu a[aria-current="page"] { color: #006bcb; font-weight: 600; }
.mkt-here-menu a svg { width: 16px; height: 16px; flex: none; color: #006bcb; }

@media (max-width: 640px) {
  .mkt-here-btn .mkt-here-name { display: none; }
  .mkt-here-btn { padding: 0 10px; }
}

@media (prefers-reduced-motion: reduce) {
  .mkt-suggest,
  .mkt-suggest * {
    transition: none;
    animation: none;
  }
}

/* A market that sells three plans (na, intl: no Business, decision I-09) fills the row with them. Keyed on the
   number of cards, not on the market, so a market that keeps all four is untouched. Below 900px the v5 pricing
   CSS turns the grid into a swipe row, where columns do not apply. */
.pr-grid:has(> .plan:nth-child(3):last-child) {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

/* Plan cards outside South Africa lead with the free trial (S604). */
.price .mkt-free {
  flex-basis: 100%;
  font: 600 13px/1.4 Inter, system-ui, -apple-system, "Segoe UI", sans-serif;
  letter-spacing: 0;
  color: #C2410C;
}
.pr-price-slot .mkt-free-lead {
  margin: 0 0 4px;
  font: 600 13px/18px Inter, system-ui, -apple-system, "Segoe UI", sans-serif;
  color: #C2410C;
}
.surface-dawn .pr-price-slot .mkt-free-lead,
.plan-highlight .pr-price-slot .mkt-free-lead {
  color: #fff;
}

/* The "Why KuduDoc" section on the International and Europe home pages (S603c).
   Same type scale and card surface as the plan cards above it. */
html[data-market] .why { position: relative; padding: 140px 0 0; }
html[data-market] .why .h2 { color: var(--ink); }
html[data-market] .why .lead { color: var(--slate); max-width: 640px; }
html[data-market] .why-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 54px 0 0; padding: 0; list-style: none; }
html[data-market] .why-card {
  display: flex; flex-direction: column; padding: 28px 24px 24px; border-radius: 22px; color: var(--slate);
  background: linear-gradient(180deg, #ffffff, #fdfcf9); box-shadow: inset 0 0 0 1px rgba(16,45,73,.07), 0 1px 2px rgba(16,45,73,.05), 0 16px 40px -22px rgba(16,45,73,.3);
}
html[data-market] .why-card h3 { font: 700 21px/1.2 var(--font-display); letter-spacing: -.02em; color: var(--ink); }
html[data-market] .why-card p { margin-top: 10px; font-size: 15px; line-height: 1.55; color: var(--ink-2); }
html[data-market] .why-card .tlink { margin-top: auto; padding-top: 18px; }
@media (max-width: 1180px) { html[data-market] .why-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 720px) {
  html[data-market] .why { padding-top: 96px; }
  html[data-market] .why-grid { grid-template-columns: minmax(0, 1fr); margin-top: 36px; }
}
