.tk-footer {
  position: relative;
  overflow: hidden;
  background-color: var(--tk-footer-bg);
  background-image: var(--tk-footer-pattern);
  background-position: right top;
  background-repeat: no-repeat;
  background-size: auto 100%;
  color: var(--tk-footer-text);
  font-family: "Poppins", sans-serif;
  -webkit-font-smoothing: antialiased;
}

.tk-footer *,
.tk-footer *::before,
.tk-footer *::after {
  box-sizing: border-box;
}

.tk-footer :where(h2, p, ul, form) {
  margin: 0;
}

.tk-footer :where(ul) {
  padding: 0;
  list-style: none;
}

.tk-footer :where(a, button, input):focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}

.tk-footer__landscape {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 156px;
  object-fit: cover;
  object-position: center bottom;
  opacity: var(--tk-footer-landscape-o);
  pointer-events: none;
}

.tk-footer__bg-d,
.tk-footer__divider {
  display: none;
}

.tk-footer__inner {
  position: relative;
  padding: var(--tk-footer-pt) 10px 20px 22px;
}

.tk-footer__eyebrow,
.tk-footer__heading {
  color: var(--tk-footer-text);
  font-size: 7px;
  font-weight: 700;
  letter-spacing: 2px;
  line-height: 10px;
  text-transform: uppercase;
}

.tk-footer__title {
  margin-top: 4px;
  color: var(--tk-footer-text);
  font-size: 24px;
  font-weight: 600;
  line-height: 28px;
}

.tk-footer__signup-copy > :first-child {
  margin-top: 0;
}

.tk-footer__text {
  max-width: 262px;
  margin-top: 10px;
  color: var(--tk-footer-muted);
  font-size: 12px;
  line-height: 15px;
}

.tk-footer__form {
  max-width: 349px;
  margin-top: 9px;
}

.tk-footer__field {
  display: flex;
  height: 36px;
}

.tk-footer__label {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.tk-footer .tk-footer__input,
.tk-footer .tk-footer__input:hover,
.tk-footer .tk-footer__input:focus {
  flex: 1;
  min-width: 0;
  height: 100%;
  margin: 0;
  padding: 0 14px;
  border: 1px solid var(--tk-footer-border);
  border-right: 0;
  border-radius: 2px 0 0 2px;
  background-color: transparent;
  box-shadow: none;
  color: var(--tk-footer-text);
  font: inherit;
  font-size: 12px;
  -webkit-appearance: none;
  appearance: none;
}

.tk-footer .tk-footer__input::placeholder {
  color: var(--tk-footer-placeholder);
  opacity: 1;
}

.tk-footer .tk-footer__input:-webkit-autofill {
  -webkit-text-fill-color: var(--tk-footer-text);
  box-shadow: inset 0 0 0 40px var(--tk-footer-bg);
}

.tk-footer .tk-footer__submit {
  display: flex;
  flex: none;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-width: 103px;
  height: 100%;
  margin: 0;
  padding: 0 14px;
  border: 0;
  border-radius: 0 2px 2px 0;
  box-shadow: none;
  background: var(--tk-footer-btn-bg);
  color: var(--tk-footer-btn-color);
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  transition: opacity 0.2s ease;
}

.tk-footer .tk-footer__submit:hover {
  opacity: 0.9;
}

.tk-footer__message {
  margin-top: 8px;
  color: var(--tk-footer-text);
  font-size: 12px;
  line-height: 16px;
}

.tk-footer__message--error {
  color: #ff9b8f;
}

.tk-footer__nav {
  display: grid;
  grid-template-columns: var(--tk-footer-cols);
  margin-top: 32px;
}

.tk-footer__divider:first-child + .tk-footer__nav {
  margin-top: 0;
}

.tk-footer__links {
  margin-top: 7px;
}

.tk-footer__links a {
  display: block;
  color: var(--tk-footer-link);
  font-size: 10px;
  line-height: 20px;
  text-decoration: none;
  white-space: nowrap;
}

.tk-footer__links a:hover {
  color: var(--tk-footer-text);
  text-decoration: underline;
}

.tk-footer__col--stack .tk-footer__links {
  margin-top: 5px;
}

.tk-footer__col--stack .tk-footer__links a {
  line-height: 18px;
}

.tk-footer__group + .tk-footer__group {
  margin-top: 9px;
}

.tk-footer__bottom {
  display: grid;
  grid-template-columns: 181px auto minmax(0, 1fr);
  grid-template-areas:
    "tagline tagline tagline"
    "logo social legal"
    "pay pay pay";
  align-items: center;
  margin-top: 0;
}

.tk-footer__brand,
.tk-footer__legal {
  display: contents;
}

.tk-footer__logo {
  grid-area: logo;
  display: block;
  margin-top: 24px;
  width: var(--tk-footer-logo-w);
  max-width: 100%;
  height: auto;
}

.tk-footer__logo--d {
  display: none;
}

.tk-footer__tagline {
  grid-area: tagline;
  margin: -17px 12px 0 0;
  padding-bottom: 6px;
  border-bottom: 1px solid var(--tk-footer-rule);
  color: var(--tk-footer-text);
  font-size: 8px;
  line-height: 12px;
}

.tk-footer__social {
  grid-area: social;
  display: flex;
  align-items: center;
  gap: 11px;
  margin-top: 24px;
}

.tk-footer__social a {
  display: flex;
  color: var(--tk-footer-text);
  transition: opacity 0.2s ease;
}

.tk-footer__social a:hover {
  opacity: 0.7;
}

.tk-footer__copyright {
  grid-area: legal;
  margin-top: 24px;
  margin-left: 19px;
  padding: 2px 0 2px 19px;
  border-left: 1px solid var(--tk-footer-rule);
  color: var(--tk-footer-muted);
  font-size: 7.5px;
  line-height: 10px;
}

.tk-footer__payments {
  grid-area: pay;
  justify-self: end;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 18px;
  color: var(--tk-footer-pay);
}

.tk-footer__payments li {
  display: flex;
  align-items: center;
}

.tk-footer__payments svg {
  display: block;
  width: auto;
  height: 12px;
}

.tk-footer--pay-store .tk-footer__payments {
  gap: 4px;
}

.tk-footer--pay-store .tk-footer__payments svg {
  height: 16px;
}

@media (min-width: 600px) and (max-width: 989px) {
  .tk-footer__inner {
    max-width: 560px;
    margin: 0 auto;
  }
}

@media (min-width: 990px) {
  .tk-footer {
    --u: min(calc(100vw / 2293), 1px);
    background-color: var(--tk-footer-bg-d);
    background-image: none;
  }

  .tk-footer__landscape {
    display: none;
  }

  .tk-footer__bg-d {
    display: block;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center bottom;
    opacity: var(--tk-footer-bg-d-o);
    pointer-events: none;
  }

  .tk-footer__inner {
    --tk-footer-bg: var(--tk-footer-bg-d);
    --tk-footer-text: var(--tk-footer-text-d);
    --tk-footer-muted: var(--tk-footer-text-d);
    --tk-footer-link: var(--tk-footer-text-d);
    --tk-footer-border: var(--tk-footer-border-d);
    --tk-footer-placeholder: var(--tk-footer-placeholder-d);
    --tk-footer-btn-bg: var(--tk-footer-text-d);
    --tk-footer-btn-color: var(--tk-footer-bg-d);
    --tk-footer-rule: var(--tk-footer-rule-d);
    --tk-footer-pay: var(--tk-footer-text-d);
    max-width: 2293px;
    margin: 0 auto;
    padding: 0 calc(159 * var(--u));
    color: var(--tk-footer-text-d);
  }

  .tk-footer__divider {
    display: block;
    position: relative;
    height: calc(31 * var(--u));
    margin: 0 calc(-159 * var(--u));
    color: var(--tk-footer-rule-d);
  }

  .tk-footer__divider::before {
    content: "";
    position: absolute;
    top: calc(14.5 * var(--u));
    right: 0;
    left: 0;
    border-top: 1px solid currentColor;
  }

  .tk-footer__slashes {
    position: absolute;
    top: 0;
    left: calc(50% + 47.5 * var(--u));
    width: calc(54 * var(--u));
    height: calc(31 * var(--u));
    transform: translateX(-50%);
    opacity: 0;
  }

  .tk-footer__signup {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: calc(40 * var(--u));
    padding: calc(56 * var(--u)) 0 calc(54 * var(--u));
  }

  .tk-footer__eyebrow {
    font-size: calc(20 * var(--u));
    font-weight: 400;
    letter-spacing: calc(2.6 * var(--u));
    line-height: calc(36 * var(--u));
  }

  .tk-footer__title {
    margin-top: calc(6 * var(--u));
    font-size: calc(41 * var(--u));
    line-height: calc(50 * var(--u));
  }

  .tk-footer__text {
    max-width: none;
    margin-top: calc(19 * var(--u));
    font-size: calc(18.5 * var(--u));
    line-height: calc(26 * var(--u));
  }

  .tk-footer__form {
    flex: 0 0 auto;
    width: calc(999 * var(--u));
    max-width: none;
    margin-top: calc(49 * var(--u));
  }

  .tk-footer__field {
    height: calc(81 * var(--u));
  }

  .tk-footer .tk-footer__input,
  .tk-footer .tk-footer__input:hover,
  .tk-footer .tk-footer__input:focus {
    padding: 0 calc(43 * var(--u));
    border: max(1px, calc(1.5 * var(--u))) solid var(--tk-footer-border);
    border-right: 0;
    border-radius: 0;
    font-size: calc(21.5 * var(--u));
  }

  .tk-footer .tk-footer__submit {
    gap: calc(37 * var(--u));
    min-width: calc(323 * var(--u));
    padding: 0 calc(20 * var(--u));
    border-radius: 0;
    font-size: calc(20 * var(--u));
    font-weight: 600;
  }

  .tk-footer .tk-footer__submit svg {
    width: calc(16 * var(--u));
    height: calc(16 * var(--u));
  }

  .tk-footer__message {
    font-size: calc(18 * var(--u));
    line-height: calc(24 * var(--u));
  }

  .tk-footer__nav {
    grid-template-columns: repeat(var(--tk-footer-groups), auto);
    justify-content: space-between;
    margin-top: 0;
    padding: calc(28 * var(--u)) 0 calc(41 * var(--u));
  }

  .tk-footer__col--stack {
    display: contents;
  }

  .tk-footer__group + .tk-footer__group {
    margin-top: 0;
  }

  .tk-footer__heading {
    font-size: calc(20 * var(--u));
    font-weight: 500;
    letter-spacing: calc(2.5 * var(--u));
    line-height: calc(36 * var(--u));
  }

  .tk-footer__links,
  .tk-footer__col--stack .tk-footer__links {
    margin-top: calc(39 * var(--u));
  }

  .tk-footer__links li + li {
    margin-top: calc(17 * var(--u));
  }

  .tk-footer__links a,
  .tk-footer__col--stack .tk-footer__links a {
    font-size: calc(19.5 * var(--u));
    line-height: calc(26 * var(--u));
  }

  .tk-footer__links a:hover {
    text-decoration: underline;
  }

  .tk-footer__bottom {
    display: flex;
    align-items: center;
    min-height: calc(150 * var(--u));
    margin-top: 0;
    padding: calc(7 * var(--u)) calc(76 * var(--u)) calc(33 * var(--u)) calc(79 * var(--u));
    border-top: 0;
    background-color: #ffffff;
  }

  .tk-footer__brand,
  .tk-footer__legal {
    display: flex;
    align-items: center;
  }

  .tk-footer__logo,
  .tk-footer__social,
  .tk-footer__copyright {
    margin-top: 0;
  }

  .tk-footer__logo {
    width: calc(213 * var(--u));
    max-width: none;
  }

  .tk-footer__logo--m {
    display: none;
  }

  .tk-footer__logo--d {
    display: block;
  }

  .tk-footer__logo--invert {
    filter: invert(1);
  }

  .tk-footer__tagline {
    align-self: center;
    margin: 0 0 0 calc(51 * var(--u));
    padding: calc(2 * var(--u)) 0 calc(2 * var(--u)) calc(39 * var(--u));
    border-bottom: 0;
    border-left: 1px solid var(--tk-footer-text-d);
    font-size: calc(19 * var(--u));
    line-height: calc(24 * var(--u));
  }

  .tk-footer__social {
    gap: calc(37 * var(--u));
    margin-left: auto;
  }

  .tk-footer__social svg {
    width: calc(23 * var(--u));
    height: calc(23 * var(--u));
  }

  .tk-footer__copyright {
    margin-left: calc(54 * var(--u));
    padding: calc(4 * var(--u)) 0 calc(4 * var(--u)) calc(43 * var(--u));
    border-left: 1px solid var(--tk-footer-text-d);
    font-size: calc(16 * var(--u));
    line-height: calc(21 * var(--u));
  }

  .tk-footer__payments {
    align-self: center;
    flex-wrap: nowrap;
    gap: calc(22 * var(--u));
    margin: 0 0 0 calc(38 * var(--u));
  }

  .tk-footer__payments svg {
    height: calc(18 * var(--u));
  }

  .tk-footer--pay-store .tk-footer__payments {
    gap: calc(10 * var(--u));
  }

  .tk-footer--pay-store .tk-footer__payments svg {
    height: calc(26 * var(--u));
  }
}
/* Mobile/tablet: same look as desktop (light background, dark text, desktop logo, divider lines). */
@media (max-width:989px){
.tk-footer{background-color:var(--tk-footer-bg-d);background-image:none}
.tk-footer__landscape{display:none}
.tk-footer__bg-d{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center bottom;opacity:var(--tk-footer-bg-d-o);pointer-events:none}
.tk-footer__inner{--tk-footer-bg:var(--tk-footer-bg-d);--tk-footer-text:var(--tk-footer-text-d);--tk-footer-muted:var(--tk-footer-text-d);--tk-footer-link:var(--tk-footer-text-d);--tk-footer-border:var(--tk-footer-border-d);--tk-footer-placeholder:var(--tk-footer-placeholder-d);--tk-footer-btn-bg:var(--tk-footer-text-d);--tk-footer-btn-color:var(--tk-footer-bg-d);--tk-footer-rule:var(--tk-footer-rule-d);--tk-footer-pay:var(--tk-footer-text-d);padding:0 20px;color:var(--tk-footer-text-d)}
.tk-footer__divider{display:block;height:1px;margin:0 -20px;background:var(--tk-footer-rule-d)}
.tk-footer__slashes{display:none}
.tk-footer__signup{padding:36px 0 32px}
.tk-footer__eyebrow{font-size:11px;font-weight:400;letter-spacing:2px;line-height:18px}
.tk-footer__title{margin-top:6px;font-size:26px;line-height:32px}
.tk-footer__text{max-width:none;margin-top:10px;font-size:14px;line-height:21px}
.tk-footer__form{max-width:none;margin-top:20px}
.tk-footer__field{height:50px}
.tk-footer .tk-footer__input,.tk-footer .tk-footer__input:hover,.tk-footer .tk-footer__input:focus{padding:0 16px;border-radius:0;font-size:16px}
.tk-footer .tk-footer__submit{min-width:118px;padding:0 16px;border-radius:0;font-size:14px}
.tk-footer__message{font-size:13px;line-height:18px}
.tk-footer__nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 20px;margin-top:0;padding:32px 0}
.tk-footer__heading{font-size:12px;font-weight:500;letter-spacing:2px;line-height:18px}
.tk-footer__links,.tk-footer__col--stack .tk-footer__links{margin-top:14px}
.tk-footer__links li+li{margin-top:4px}
.tk-footer__links a,.tk-footer__col--stack .tk-footer__links a{padding:4px 0;font-size:14px;line-height:20px;white-space:normal}
.tk-footer__group+.tk-footer__group{margin-top:30px}
.tk-footer__bottom{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"logo tagline" "social legal" "pay pay";gap:22px 0;margin:0 -20px;padding:26px 20px 30px;background-color:#fff}
.tk-footer__logo{margin-top:0;width:150px}
.tk-footer__logo--m{display:none}
.tk-footer__logo--d{display:block}
.tk-footer__logo--invert{filter:invert(1)}
.tk-footer__tagline{align-self:center;margin:0 0 0 18px;padding:2px 0 2px 18px;border-bottom:0;border-left:1px solid var(--tk-footer-text-d);font-size:11px;line-height:15px}
.tk-footer__social{gap:22px;margin-top:0}
.tk-footer__social a{padding:4px}
.tk-footer__social svg{width:20px;height:20px}
.tk-footer__copyright{margin:0 0 0 18px;padding:2px 0 2px 18px;border-left:1px solid var(--tk-footer-text-d);font-size:11px;line-height:15px}
.tk-footer__payments{justify-self:start;gap:16px;margin-top:0}
.tk-footer__payments svg{height:16px}
.tk-footer--pay-store .tk-footer__payments svg{height:24px}
}
@media (min-width:600px) and (max-width:989px){
.tk-footer__inner{max-width:none;padding:0 40px}
.tk-footer__divider{margin:0 -40px}
.tk-footer__nav{grid-template-columns:repeat(var(--tk-footer-groups),minmax(0,1fr))}
.tk-footer__bottom{margin:0 -40px;padding:26px 40px 30px;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"logo tagline social" "legal legal pay"}
.tk-footer__copyright{margin-left:0;padding-left:0;border-left:0}
.tk-footer__payments{justify-self:end}
}
@media (max-width:359px){
.tk-footer__tagline{display:none}
.tk-footer .tk-footer__submit{min-width:96px}
}

/* ---------- Footer menus as <details>: look like plain headings on larger screens ---------- */
.tk-footer summary.tk-footer__heading{display:block;list-style:none;cursor:default}
.tk-footer summary.tk-footer__heading::-webkit-details-marker{display:none}
.tk-footer__chev{display:none}

/* ---------- Phones: newsletter stack, slash dividers, accordion menus, centred brand ---------- */
@media (max-width:749px){
.tk-footer__inner{padding:0 20px}
.tk-footer__bg-d{display:none}

/* Newsletter */
.tk-footer__signup{padding:40px 6px 32px}
.tk-footer__eyebrow{font-size:13px;letter-spacing:3px;line-height:18px}
.tk-footer__title{margin-top:8px;font-size:30px;font-weight:700;line-height:36px}
.tk-footer__text{margin-top:10px;font-size:16px;line-height:24px;color:#3d3d3d}
.tk-footer__form{margin-top:24px}
.tk-footer__field{flex-direction:column;gap:12px;height:auto}
.tk-footer .tk-footer__input,.tk-footer .tk-footer__input:hover,.tk-footer .tk-footer__input:focus{flex:none;height:52px;padding:0 18px;border:1px solid #c9c9c9;border-radius:8px;font-size:16px}
.tk-footer .tk-footer__submit{width:100%;height:52px;min-width:0;gap:12px;border-radius:8px;background:#000;color:#fff;font-size:17px;font-weight:600}
.tk-footer .tk-footer__submit svg{width:16px;height:15px}

/* Slash dividers:  ———— // ———— */
.tk-footer__divider{display:flex;align-items:center;gap:6px;height:30px;margin:0;background:none;color:var(--tk-footer-rule-d)}
.tk-footer__divider::before,.tk-footer__divider::after{content:"";flex:1;height:1px;background:currentColor}
.tk-footer__slashes{display:block;flex:none;width:30px;height:30px}

/* Accordion menus */
.tk-footer__nav{grid-template-columns:1fr;gap:0;padding:12px 10px 24px}
.tk-footer__col{border-bottom:1px solid var(--tk-footer-rule-d)}
.tk-footer__col:last-child{border-bottom:0}
.tk-footer__group+.tk-footer__group{margin-top:0;border-top:1px solid var(--tk-footer-rule-d)}
.tk-footer summary.tk-footer__heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 2px;cursor:pointer;font-size:16px;font-weight:700;letter-spacing:3px;line-height:20px;text-transform:uppercase;-webkit-tap-highlight-color:transparent}
.tk-footer__chev{display:block;flex:none;width:18px;height:18px;transition:transform .25s ease}
.tk-footer__group[open] .tk-footer__chev{transform:rotate(180deg)}
.tk-footer__links,.tk-footer__col--stack .tk-footer__links{margin-top:-6px;padding:0 2px 18px}
.tk-footer__links li+li{margin-top:2px}
.tk-footer__links a,.tk-footer__col--stack .tk-footer__links a{padding:6px 0;font-size:15px;line-height:22px}

/* Brand, social, legal */
.tk-footer__bottom{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"brand brand" "social social" "legal pay";gap:0;margin:0 -20px;padding:0;background-color:#fff}
.tk-footer__brand{grid-area:brand;position:relative;display:flex;flex-direction:column;align-items:center;gap:12px;padding:36px 20px 72px;text-align:center;background:#fff var(--tk-footer-brand-img, none) center bottom / 100% auto no-repeat}
.tk-footer__logo{width:220px;margin:0 auto}
.tk-footer__tagline{display:block;margin:0;padding:0;border:0;font-size:16px;line-height:24px;color:#2b2b2b}
.tk-footer__social{grid-area:social;justify-content:center;gap:42px;margin:0 20px;padding:20px 0;border-bottom:1px solid var(--tk-footer-rule-d)}
.tk-footer__social a{padding:4px}
.tk-footer__social svg{width:30px;height:30px}
.tk-footer__legal{display:contents}
.tk-footer__copyright{grid-area:legal;align-self:center;margin:0;padding:22px 18px 26px 20px;border-left:0;color:#2b2b2b;font-size:13px;line-height:18px}
.tk-footer__payments{grid-area:pay;justify-self:stretch;align-self:center;justify-content:flex-end;gap:14px;margin:0 20px 0 0;padding:4px 0 4px 18px;border-left:1px solid var(--tk-footer-rule-d);color:#111}
.tk-footer__payments svg{height:18px}
.tk-footer--pay-store .tk-footer__payments svg{height:24px}
}
@media (max-width:749px) and (prefers-reduced-motion:reduce){
.tk-footer__chev{transition:none}
}
.tk-footer__payments{min-width:0}
@media (max-width:420px){
.tk-footer__copyright{padding-right:14px;font-size:12px;line-height:17px}
.tk-footer__payments{gap:10px;padding-left:14px}
.tk-footer__payments svg{height:15px}
}
@media (max-width:374px){
.tk-footer__social{gap:28px}
.tk-footer__payments{gap:8px}
.tk-footer__payments svg{height:13px}
}
