/* Editable logo lockup based on the approved bold wordmark reference. */
.brandCustom {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 385px;
}

.brandWords {
  display: flex;
  flex-direction: column;
  line-height: 1;
  min-width: 0;
}

.brandWords strong,
.brandWords span {
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif !important;
  text-transform: uppercase;
}

.brandWords strong {
  color: #090909 !important;
  font-size: 26px !important;
  font-weight: 800 !important;
  letter-spacing: 0.01em !important;
}

.brandWords span {
  margin-top: 6px !important;
  color: #8f8b7c !important;
  font-size: 10.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.29em !important;
}

.brandLeaf,
.brandStar {
  width: 48px !important;
  height: 50px !important;
  flex-basis: 48px !important;
}

.brandLeaf img,
.brandStar img {
  width: 48px !important;
  height: 48px !important;
  max-width: 48px !important;
  max-height: 48px !important;
  object-fit: contain;
}

.navlinks {
  align-items: center;
}

.navlinks > a[href="canada-all-pathways.html"] {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 9px 15px;
  border-radius: 6px;
  background: var(--navy);
  color: #fff !important;
  box-shadow: 0 6px 18px rgba(7, 47, 82, .18);
}

.navlinks > a[href="canada-all-pathways.html"]:hover,
.navlinks > a[href="canada-all-pathways.html"]:focus-visible {
  background: #0d466f;
  color: #fff !important;
}

.allVisasPersistent {
  display: none;
}

.topbarContact {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 9px;
  flex-wrap: wrap;
}

.topbarContact a {
  transition: opacity .2s ease, color .2s ease;
}

.topbarContact a:hover,
.topbarContact a:focus-visible {
  opacity: .78;
}

.whatsappDirect {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--navy);
  font-weight: 900;
}

.waIcon {
  display: inline-grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #25d366;
  color: #fff;
  font-size: 13px;
  line-height: 1;
  box-shadow: 0 3px 8px rgba(8, 123, 67, .24);
}

/* Use the recognizable WhatsApp mark instead of a phone glyph. */
.waIcon {
  font-size: 0;
  background: transparent;
  box-shadow: none;
}

.waIcon::before {
  content: "";
  display: block;
  width: 22px;
  height: 22px;
  background: url("assets/whatsapp-mark.svg") center / contain no-repeat;
}

.navlinks .contactNav {
  background: var(--red);
  color: #fff;
  padding: 11px 17px;
  border-radius: 6px;
  box-shadow: 0 6px 18px rgba(201, 37, 44, 0.22);
}

.navlinks .contactNav:hover,
.navlinks .contactNav:focus-visible {
  background: #aa1e25;
  color: #fff;
}

/* Keep generated testimonial cards as full image cards, not inline text boxes. */
.testimonialVideo {
  width: 100%;
  padding: 0;
  overflow: hidden;
  text-align: left;
  font: inherit;
}

.testimonialVideo .thumb,
.testimonialVideo .videoBody {
  display: block;
}

@media (max-width: 980px) {
  .navin {
    gap: 14px;
  }

  .brandCustom {
    min-width: 330px;
  }

  .allVisasPersistent {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: auto;
    min-height: 42px;
    padding: 10px 16px;
    border-radius: 6px;
    background: var(--red);
    color: #fff;
    font-size: 14px;
    font-weight: 900;
    line-height: 1;
    white-space: nowrap;
    box-shadow: 0 6px 18px rgba(201, 37, 44, .22);
  }

  .allVisasPersistent:hover,
  .allVisasPersistent:focus-visible {
    background: #aa1e25;
    color: #fff;
  }

  .mobile {
    margin-left: 0;
    width: 42px;
    min-width: 42px;
    height: 42px;
    padding: 0;
    border-radius: 6px;
    line-height: 1;
    cursor: pointer;
  }

  .navlinks {
    top: 86px;
    z-index: 100;
    gap: 4px;
    padding: 16px 4vw 22px;
    border-top: 1px solid #dce5ea;
    border-bottom: 3px solid var(--red);
    box-shadow: 0 18px 36px rgba(4,31,56,.18);
  }

  .navlinks.open {
    display: grid;
  }

  .navlinks > a {
    padding: 11px 13px;
    border-radius: 6px;
  }

  .navlinks > a[href="canada-all-pathways.html"] {
    width: max-content;
    background: var(--navy);
  }

  .brandWords strong {
    font-size: 22px !important;
  }

  .brandWords span {
    font-size: 9px !important;
  }

  .brandLeaf,
  .brandStar {
    width: 42px !important;
    height: 44px !important;
    flex-basis: 42px !important;
  }

  .brandLeaf img,
  .brandStar img {
    width: 42px !important;
    height: 42px !important;
    max-width: 42px !important;
    max-height: 42px !important;
  }

  .navlinks .contactNav {
    display: inline-block;
    width: max-content;
  }
}

@media (max-width: 650px) {
  .topbarContact {
    justify-content: center;
    margin-top: 4px;
  }

  .brandCustom {
    min-width: 0;
    gap: 6px;
  }

  .navin {
    min-height: 74px;
    gap: 8px;
  }

  .navlinks {
    top: 74px;
  }

  .allVisasPersistent {
    min-height: 38px;
    padding: 9px 12px;
    font-size: 13px;
  }

  .mobile {
    width: 38px;
    min-width: 38px;
    height: 38px;
  }

  .brandWords strong {
    font-size: 17px !important;
  }

  .brandWords span {
    margin-top: 3px !important;
    font-size: 8px !important;
    letter-spacing: 0.18em !important;
  }

  .brandLeaf,
  .brandStar {
    width: 34px !important;
    height: 36px !important;
    flex-basis: 34px !important;
  }

  .brandLeaf img,
  .brandStar img {
    width: 34px !important;
    height: 34px !important;
    max-width: 34px !important;
    max-height: 34px !important;
  }
}

@media (max-width: 460px) {
  .brandStar {
    display: none !important;
  }

  .brandWords span {
    display: none;
  }

  .brandWords strong {
    font-size: 16px !important;
  }

  .brandLeaf,
  .brandLeaf img {
    width: 31px !important;
    height: 31px !important;
    flex-basis: 31px !important;
  }
}

/* Equal primary actions stay together outside the collapsible navigation. */
.navin{gap:20px}
.navlinks{gap:clamp(12px,1.5vw,25px);min-width:0}
.navlinks>a{white-space:nowrap}
.navActions{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.navActions>a{display:inline-flex!important;align-items:center;justify-content:center;box-sizing:border-box;width:104px;min-height:44px;padding:11px 17px!important;border-radius:6px;font:800 14px/1.2 "Source Sans 3",Arial,sans-serif;white-space:nowrap;color:#fff!important;text-decoration:none;flex:0 0 auto}
.navActions .allVisasNav{background:#082f52;box-shadow:0 6px 18px rgba(7,47,82,.18)}
.navActions .contactNav{background:#c9252c;box-shadow:0 6px 18px rgba(201,37,44,.22)}
.navActions .allVisasNav:hover{background:#0d466f}
.navActions .contactNav:hover{background:#aa1e25}
.navActions>a:focus-visible{outline:3px solid #aa7500;outline-offset:3px}
@media(max-width:1200px){
 .navin{position:relative;gap:14px}
 .navlinks{display:none;position:absolute;top:100%!important;left:0;right:0;margin:0;background:#fff;z-index:100;gap:4px;padding:16px 4vw 22px;border-top:1px solid #dce5ea;border-bottom:3px solid #c9252c;box-shadow:0 18px 36px rgba(4,31,56,.18)}
 .navlinks.open{display:grid}
 .navlinks>a{padding:11px 13px}
 .navActions{margin-left:auto;order:2}
 .mobile{display:block;order:3;margin-left:0;width:44px;min-width:44px;height:44px;cursor:pointer}
 .brandCustom{order:0}
}
@media(max-width:650px){
 .navin{flex-wrap:wrap;padding-top:12px;padding-bottom:12px;gap:10px}
 .brandCustom{flex:1 1 calc(100% - 60px)}
 .mobile{order:1}
 .navActions{order:2;width:100%;margin-left:0;justify-content:flex-end}
 .navActions>a{width:104px;font-size:14px;min-height:44px}
}
