body {
  font-family: "Graphik Regular", Helvetica, Arial, sans-serif;
  margin: 0;
  scroll-behavior: smooth;
}

ul {
  padding: 0;
}

/* Header Styles */
.nav {
  background-color: #fff;
  color: #071531;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 24px 16px;
  margin: 0 auto;
  max-width: 1170px;
  position: relative;
  transition: 0.4s ease-in-out;
  z-index: 400;
}

/* Responsive widths */
@media (min-width: 768px) {
  .nav {
    width: 720px;
  }
}

@media (min-width: 992px) {
  .nav {
    width: 960px;
  }
}

@media (min-width: 1024px) {
  .nav {
    width: 1050px;
    padding: 24px 10px;
  }
}

@media (min-width: 1200px) {
  .nav {
    width: 1170px;
  }
}

.logo {
  color: currentColor;
  margin: 0; /* Remove right margin */
  padding-left: 0; /* Optional: remove extra spacing */
  transition: 0.4s ease-in-out;
  position: relative;
  z-index: 300;
  margin-left: 0; /* <-- Explicit, just in case! */
}

.logo svg {
  fill: currentColor;
  transition: 0.4s ease-in-out;
  height: 36px;
  width: 176px;
}

@media (min-width: 768px) {
  .logo svg {
    height: 45px;
    width: 220px;
  }
}

@media (min-width: 1024px) {
  .logo svg {
    height: 54px;
    width: 264px;
  }
}

@media (min-width: 1280px) {
  .logo svg {
    height: 64px;
    width: 313px;
  }
}

/* Body Styles */
.tnew {
  /* from body-lg mixin */
  font-family: "Graphik Regular", Helvetica, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0;
  /* Fix padding on page above footer */
  padding-bottom: 48px;

  --tn-btn-primary-bg: rgba(7, 21, 49, 1);
  --tn-btn-primary-border: rgba(7, 21, 49, 1);
  --tn-btn-primary-bg-focus: rgba(0, 56, 132, 1);
  --tn-btn-primary-border-focus: rgba(0, 56, 132, 1);
  --tn-btn-primary-bg-hover: rgba(0, 56, 132, 1);
  --tn-btn-primary-border-hover: rgba(0, 56, 132, 1);
  --tn-btn-primary-bg-active: rgba(0, 56, 132, 1);
  --tn-btn-primary-border-active: rgba(0, 56, 132, 1);
  --tn-btn-primary-bg-active-focus: rgba(0, 56, 132, 1);
}

@media (width >= 768px) {
  .tnew {
    font-size: 18px;
  }
}

@media (width >= 1024px) {
  .tnew {
    font-size: 20px;
  }
}

.tnew h1 {
  /* from headline2 mixin */
  font-family: var(--headline-font, "SangBleu", Georgia, serif);
  font-size: 50px;
  line-height: 1.07;
  letter-spacing: -0.6px;
}

@media (width >= 768px) {
  .tnew h1 {
    font-size: 55px;
  }
}

@media (width >= 1024px) {
  .tnew h1 {
    font-size: 60px;
  }
}

/* Footer Styles */
.footer {
  background-color: #071531; /* ny-navy */
  color: #ffffff; /* white */
  overflow: hidden;
  padding: 32px 0 0; /* spacer5-sm */
  border-bottom: 48px solid #f15b25; /* dutch-orange */
  margin-bottom: 64px; /* nav-height */
  color: #fff;
}

@media print {
  .footer {
    display: none;
  }
}

@media (min-width: 768px) {
  .footer {
    padding: 77px 0 0;
  }
}

@media (min-width: 1024px) {
  .footer {
    margin-bottom: 80px; /* nav-height-md */
  }
}

.footer a {
  text-decoration: none;
  color: #fff;
}

.footer a:hover {
  color: #f7f7f7; /* lighten snow by 20% */
}

.footer li {
  list-style: none;
}

.footer img {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 16px; /* spacer2 */
}

@media (min-width: 1024px) {
  .footer img {
    display: inline-block;
    max-width: 320px;
  }
}

.footer .container {
  display: block;
  row-gap: 0 !important;
  margin-left: auto;
  margin-right: auto;
  max-width: 1408px; /* Assuming $size + 2 * gutter = 1440px */
  width: 100%;
  padding-left: 16px; /* Assuming gutter = 16px */
  padding-right: 16px;
  grid-gap: 20px;
  grid-template-columns: repeat(12, 1fr);
}

@media (min-width: 768px) {
  .footer .container {
    max-width: 1440px; /* Assuming $size + 2 * gutter-md = 1440px */
    padding-left: 32px; /* Assuming gutter-md = 32px */
    padding-right: 32px;
    display: grid;
  }
}

.backToTop {
  font-family: "Graphik Medium", Helvetica, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.4;
  text-transform: uppercase;
  cursor: pointer;
  margin-bottom: 32px;
  display: flex;
  align-items: center;
  grid-column: 1/-1;
}

@media (min-width: 1024px) {
  .backToTop {
    font-size: 14px;
    padding-left: 65px;
  }
}

@media (min-width: 768px) {
  .backToTop {
    font-size: 14px;
    letter-spacing: 0.08em;
    line-height: 1.4;
    margin-bottom: 64px;
  }
}

@media (min-width: 480px) {
  .backToTop {
    font-size: 14px;
    letter-spacing: 0.08em;
    line-height: 1.4;
  }
}

.backToTop svg {
  stroke: currentColor;
  margin-left: 8px;
}

.main {
  display: flex;
  flex-flow: column;
  justify-content: space-between;
  grid-column: 1/-1;
}

@media (min-width: 1024px) {
  .main {
    flex-flow: row;
    padding: 0 33px;
  }
}

.bottom_row2 {
  display: flex;
  flex-direction: column;
  position: relative;
  padding-top: 31px;
}

@media (min-width: 1024px) {
  .bottom_row2 {
    flex-flow: row;
    grid-column: 1 / -1;
    align-items: flex-end;
    justify-content: space-between;
    padding: 48px 65px;
    gap: 16px;
  }
}

.bottom_row2::after {
  content: "";
  height: 0.5px;
  width: calc(100% + 2rem);
  background-color: #bbbcc0;
  display: block;
  position: absolute;
  bottom: 0;
  left: -1rem;
}

@media (min-width: 768px) {
  .bottom_row2::after {
    width: 100%;
    left: 0;
  }
}

.bottom_row2 .logo {
  width: 100%;
  max-width: 416px;
  height: 81px;
  margin-bottom: 54px;
}

@media (min-width: 1024px) {
  .bottom_row2 .logo {
    margin-bottom: 0;
  }
}

.bottom_row2 .icon svg {
  fill: currentColor;
  width: 210px;
  height: 114px;
}

.bottom_row2 .socials {
  color: #fffcf7;
  margin-bottom: 31px;
  position: relative;
  left: -1rem;
}

@media (min-width: 1024px) {
  .bottom_row2 .socials {
    margin-bottom: 0;
    left: 0;
  }
}

.SocialIcons_list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

@media (min-width: 768px) {
  .SocialIcons_list {
    justify-content: space-around;
    flex-wrap: nowrap;
  }
}

.SocialIcons_list {
  opacity: 1;
  transition: opacity 0.2s ease-in-out;
  white-space: nowrap;
}

.SocialIcons_list:hover {
  opacity: 0.9;
}

.socials li,
.additionalLinks li {
  padding: 8px 16px;
}

.socials li:last-of-type,
.additionalLinks li:last-of-type {
  padding-right: 0;
}

.bottom,
.socials {
  font-family: "Graphik Regular", Helvetica, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0;
}

@media (min-width: 480px) {
  .bottom,
  .socials {
    font-size: 14px;
    letter-spacing: 0;
    line-height: 1.5;
  }
}

@media (min-width: 768px) {
  .bottom,
  .socials {
    font-size: 13px;
    letter-spacing: 0;
    line-height: 1.5;
  }
}

@media (min-width: 1024px) {
  .bottom,
  .socials {
    font-size: 12px;
  }
}

.bottom {
  display: flex;
  justify-content: space-between;
  grid-column: 1/-1;
  flex-flow: column;
  background: transparent;
  color: currentColor;
  padding: 0;
}

@media (min-width: 768px) {
  .bottom {
    flex-flow: row;
    font-weight: 500;
    flex-wrap: wrap;
    gap: 16px;
  }
}

@media (min-width: 1024px) {
  .bottom {
    background: transparent;
    color: currentColor;
    padding: 48px 65px;
  }
}

.bottom .additionalLinks {
  color: #f7f7f7;
  display: flex;
  flex-flow: row;
  flex-wrap: wrap;
  margin: 31px 0;
}

@media (min-width: 1024px) {
  .bottom .additionalLinks {
    flex-wrap: nowrap;
    margin: 0;
  }
}

.bottom .additionalLinks li {
  padding-left: 0;
}

@media (min-width: 768px) {
  .bottom .additionalLinks li:not(:first-of-type) {
    padding-left: 16px;
  }
}

.bottom .copyright {
  color: #bbbcc0;
  font-weight: 700;
  margin-bottom: 31px;
}

@media (min-width: 1024px) {
  .bottom .copyright {
    font-weight: 500;
    margin-bottom: 0;
    padding: 8px 0;
  }
}

/* Fix padding around buttons */
main .btn {
  margin-bottom: 8px;
}

/* Fix buttons in modals */
.btn-primary {
  color: #ffffff; /* white */
  background-color: #071531; /* ny-navy */
  border-color: #071531; /* ny-navy */
}
