:root {
  --White: #ffffff;
  --Black: #000000;
}

html {
  scroll-behavior: smooth;
}

body {
  width: 100%;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  background-color: #1c1c1c;
}

/* Header Styles */
.header {
  position: fixed;
  top: 35px;
  left: 0;
  width: 100%;
  z-index: 1002;
  transition: all 0.3s ease;
  background: transparent; /* dark theme header */
  box-shadow: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.header__container {
  max-width: 1440px;
  width: 90%;
  margin: 0 auto;
  padding: 0 64px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  align-items: center;
  gap: 40px;
  border-radius: 30px;
  background: rgba(31, 31, 31, 0.7);
  height: 65px;
  box-sizing: border-box;
}

/* Mobile trigger hidden on desktop */
.mobile-menu-trigger {
  display: none;
  width: 40px;
  height: 40px;
  border: 1px solid rgba(255, 255, 255, 0.45);
  border-radius: 10px;
  background: transparent;
  z-index: 1004;
}
.mobile-menu-trigger__line {
  display: block;
  width: 20px;
  height: 2px;
  background: #ffffff;
  margin: 6px auto;
}

/* Logo Column */
.header__logo {
  display: flex;
  align-items: center;
}

.header__logo-link {
  text-decoration: none;
  color: #ffffff;
}

.header__logo-text {
  font-family: "Montserrat", sans-serif;
  font-size: 24px;
  font-weight: 600;
  margin: 0;
}

.header__logo img {
  max-height: 55px;
  width: auto;
}

/* Navigation Column */
.header__nav {
  display: flex;
  justify-content: center;
}

.header__menu {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 40px;
  align-items: center;
}

.header__menu li {
  margin: 0;
}

.header__menu a {
  color: #ffffff;
  text-decoration: none;
  font-family: "Inter", sans-serif;
  font-size: 16px;
  font-weight: 400;
  transition: color 0.3s ease;
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
  padding-right: 10px;
}

/* Dropdown indicator for items with children */
.header__menu > .menu-item-has-children > a:after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 6px;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="6" viewBox="0 0 10 6" fill="none"><path d="M9.42292 0.878141L4.71146 5.5896L-2.05944e-07 0.878141L0.878125 1.56972e-05L4.71146 3.83335L8.54479 1.53621e-05L9.42292 0.878141Z" fill="white"/></svg>')
    no-repeat center center;
  font-size: 10px;
  position: absolute;
  right: -10px;
  top: 50%;
  transform: translateY(-50%);
  transition: transform 0.3s ease;
}

.header__menu > .menu-item-has-children > a:hover:after {
  transform: translateY(-50%) rotate(180deg);
}

/* Keep arrow rotated while submenu is open/hovered */
.header__menu > .menu-item-has-children:hover > a:after,
.header__menu > .menu-item-has-children:focus-within > a:after {
  transform: translateY(-50%) rotate(180deg);
}

.header__menu > li > a:hover {
  color: #019aac;
}

/* Keep parent link highlighted while hovering submenu */
.header__menu > li:hover > a,
.header__menu > li:focus-within > a {
  color: #019aac;
}

.header__menu > .menu-item-has-children > a:hover:after {
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="6" viewBox="0 0 10 6" fill="none"><path d="M9.42292 0.878141L4.71146 5.5896L-2.05944e-07 0.878141L0.878125 1.56972e-05L4.71146 3.83335L8.54479 1.53621e-05L9.42292 0.878141Z" fill="%23019aac"/></svg>')
    no-repeat center center;
}

/* Keep arrow aqua while submenu hovered */
.header__menu > .menu-item-has-children:hover > a:after,
.header__menu > .menu-item-has-children:focus-within > a:after {
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="6" viewBox="0 0 10 6" fill="none"><path d="M9.42292 0.878141L4.71146 5.5896L-2.05944e-07 0.878141L0.878125 1.56972e-05L4.71146 3.83335L8.54479 1.53621e-05L9.42292 0.878141Z" fill="%23019aac"/></svg>')
    no-repeat center center;
}

/* Dropdown container */
.header__menu .sub-menu::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -20px;
  width: 100%;
  height: 20px;
  background: transparent;
  z-index: 1003;
  pointer-events: none; /* disabled by default */
  display: none; /* hidden until menu is open/hovered */
}

/* Enable the hover bridge only when parent or submenu is active */
.header__menu > li:hover > .sub-menu::before,
.header__menu > li:focus-within > .sub-menu::before {
  display: block;
  pointer-events: auto;
}

.header__menu .sub-menu {
  position: absolute;
  left: 50%;
  top: calc(100% + 16px);
  background: #161616; /* dark dropdown */
  color: #fff;
  border-radius: 12px;
  padding: 14px 12px;
  min-width: 240px;
  display: block;
  opacity: 0;
  visibility: hidden;
  pointer-events: none; /* prevent "ghost hover" when hidden */
  transform: translate(-50%, -6px);
  transition: opacity 0.15s ease, transform 0.15s ease, visibility 0.15s ease;
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.3);
  z-index: 1003;
  list-style: none;
}
.header__menu > li {
  position: relative;
}
.header__menu > li:hover > .sub-menu,
.header__menu > li:focus-within > .sub-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate(-50%, 0);
}

/* First-level dropdown links */
.header__menu .sub-menu > li > a {
  padding: 8px 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  color: #fff;
  font-family: "DM Sans";
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  line-height: 150%; /* 30px */
}
/* hover accent */
.header__menu .sub-menu > li > a:hover {
  color: #019aac;
}

/* Second-level (third depth) menu - smaller text and leading icon */
.header__menu .sub-menu .sub-menu {
  position: relative; /* render inside the main dropdown, not as flyout */
  left: auto;
  top: auto;
  display: grid;
  gap: 6px;
  padding: 0 0 0 12px; /* slight indent under the parent */
  min-width: unset;
  background: transparent;
  box-shadow: none;
  opacity: 1;
  visibility: hidden; /* avoid hidden hitbox when parent dropdown is closed */
  transform: none;
  pointer-events: none;
  z-index: 1; /* ensure nested links sit above any sibling hit areas */
}
.header__menu > li:hover > .sub-menu .sub-menu,
.header__menu > li:focus-within > .sub-menu .sub-menu {
  visibility: visible;
  pointer-events: auto;
}
.header__menu .sub-menu .sub-menu li a {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  color: #cecece;
}
.header__menu .sub-menu .sub-menu li a:hover {
  color: #019aac;
}
.header__menu .sub-menu .sub-menu li a:before {
  content: "";
  width: 12px;
  height: 12px;
  display: inline-block;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="738" height="739" viewBox="0 0 738 739" fill="none"><path opacity="0.99" fill-rule="evenodd" clip-rule="evenodd" d="M368.6 0C369.1 0 396.5 27.1 429.6 60.2C462.6 93.3 545.6 176.5 613.8 245C682.1 313.4 737.9 369.9 737.9 370.5C738 371 655.4 454 554.4 555C453.5 655.9 370.4 738.6 369.7 738.8C369 738.9 323.7 694.2 268.9 639.4C214.2 584.6 131.3 501.5 84.7 454.8C38.1 408.2 0 369.5 0 369C0.1 368.5 82.9 285.3 183.9 184C285 82.8 368.1 0 368.6 0ZM326.4 119.1C359 150.7 368.9 159.9 369.5 159.9C370.1 159.9 379.6 150.8 390.7 139.7L410.9 119.5C379.2 87.7 369.5 78.3 368.7 78.2C368 78.1 358.2 87.2 346.9 98.5L326.4 119.1ZM431.4 182.4L409.4 204C437.3 232 447.2 241.6 449.3 243.3L453.1 246.5C485.5 213.9 494.9 204.2 494.9 203.7C494.9 203.3 485.6 193.5 474.2 182L453.4 160.9L431.4 182.4ZM242.4 204C275.8 236.5 285.7 246 285.9 246C286.2 246 295.9 236.6 307.4 225L328.4 204.1C295.9 171.5 286 162.1 285.4 162.1C284.9 162.1 275 171.5 263.4 183L242.4 204ZM514.6 266.9L492.9 288.5L536.4 331.9L580.4 289.1C577.3 285.6 573.5 281.7 569.9 278.2C566.4 274.7 557.3 265.8 549.9 258.5L536.4 245.3L514.6 266.9ZM159.4 289L201.8 330.5L245.4 287.9C212.9 255.4 203.2 246.1 202.9 246.2C202.6 246.3 192.7 255.9 180.9 267.7L159.4 289ZM324.7 288.5C354.1 317.2 363.9 326.7 365.5 328.2L368.4 330.9C401.3 298.8 410.9 289 410.9 288.5C410.9 287.9 401.6 278.2 390.2 266.8C378.7 255.4 369.1 246 368.6 246C368.2 246 358.2 255.5 346.3 267.2L324.7 288.5ZM576.9 370.5C576.9 371.1 586.5 380.8 598.2 392.2L619.4 412.8C652.3 380.4 661.9 370.9 661.9 370.8C661.9 370.6 652.5 361 640.9 349.3C629.4 337.6 619.8 328.1 619.6 328.1C619.5 328.1 609.8 337.5 598.2 348.8C586.5 360.2 576.9 370 576.9 370.5ZM76.9 370.5L118.4 411.9L161.4 370C129 338.7 119.4 329.4 119 329.3C118.6 329.1 109 338.4 97.6 349.8L76.9 370.5ZM242.9 370.5C275.1 402.6 284.6 412 284.9 412C285.2 412 294.9 402.8 306.4 391.4L327.4 370.9C294.9 338.4 285.2 329 284.9 329C284.6 329 275.1 338.3 263.7 349.7L242.9 370.5ZM410.4 371.1C442.5 402.8 452.2 412 452.6 412C453 412 462.5 402.9 473.6 391.8C484.7 380.6 493.9 371.1 493.9 370.5C493.9 370 484.7 360.4 473.4 349.3C462.1 338.1 452.7 329 452.6 329C452.5 329 442.9 338.5 431.3 350.1L410.4 371.1ZM160.4 453.9C192.2 485.7 201.8 494.9 202.2 494.7C202.6 494.6 212.1 485.3 223.4 474L244 453.5C212.6 422.1 203.2 413 202.9 413C202.7 413 193 422.2 181.4 433.4L160.4 453.9ZM493.9 454.6L535.4 495.9L577.4 454C552.6 429.6 543.1 420.5 540.4 418.1L535.4 413.6L493.9 454.6ZM328.1 455.6C336.2 464.1 345.4 473.3 353.8 481.6L369 496.6C400.8 464.8 410 455.2 410 454.8C410 454.4 401 445.1 390 434.1C379 423.1 369.9 414.1 369.8 414.1C369.6 414.1 360.2 423.4 348.8 434.8L328.1 455.6ZM242.8 537.6C242.9 538.2 252.5 548.1 264 559.6C275.5 571.2 285.2 580.4 285.4 580.1C285.7 579.8 295.4 570.3 307 558.9L328.1 538.1C295 504.8 285.2 495.1 284.9 495.1C284.7 495.1 275.1 504.5 263.6 515.9C252 527.3 242.7 537.1 242.8 537.6ZM432.3 516.6C420.6 528.2 411.1 538.1 411 538.6C411 539.2 420.3 548.6 431.6 559.6C442.9 570.6 452.5 579.7 452.9 579.9C453.3 580 463.1 570.5 474.8 558.9L496.1 537.6L453.6 495.6L432.3 516.6ZM326.9 620.6L368.5 662.1L411 620.6C378.8 588.5 369.3 579.1 369 579.1C368.7 579.1 359.1 588.5 347.7 599.9L326.9 620.6Z" fill="%23009CAE"/></svg>')
    no-repeat center center;
  background-size: contain;
}

.header__menu a:active {
  font-weight: 700;
}

.header__menu-icon {
  width: 20px;
  height: 20px;
  object-fit: contain;
  flex-shrink: 0;
  display: block;
}

/* Right column buttons */
.header__buttons {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  align-items: center;
}
.header__button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 40px;
  padding: 0 16px;
  border-radius: 30px;
  text-decoration: none;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  font-weight: 600;
}
.header__button--secondary {
  background: transparent;
  color: #ffffff;
  border: 1px solid rgba(255, 255, 255, 0.45);
}
.header__button--secondary:hover {
  border-color: #ffffff;
  color: #000;
  background: #fff;
}
.header__button--primary {
  background: #019aac;
  color: #fff;
  border: 1px solid #019aac;
}
.header__button--primary:hover {
  background: #006a76;
  border-color: #006a76;
}
.header__button-icon {
  width: 18px;
  height: 18px;
  object-fit: contain;
  display: block;
}

/* 404 Page */
.error-404 {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: calc(100vh - 115px);
  background-color: #1c1c1c; /* match figma 404 bg */
  color: #fff;
}

.error-404__wrap {
  max-width: 1280px;
  padding: 120px 0;
  margin: 0 auto;
  width: 90%;
  box-sizing: border-box;
}

.error-404__content {
  text-align: center;
}

.error-404__code {
  font-family: "Inter", sans-serif;
  font-size: 168px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: -1.68px;
  margin: 0 0 24px 0;
  color: #fff;
}

.error-404__heading {
  font-family: "Inter", sans-serif;
  font-size: 28px;
  font-weight: 600;
  margin: 0 0 8px 0;
}

.error-404__message {
  font-family: "Inter", sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.5;
  max-width: 998px;
  margin: 0 auto 32px auto;
  color: #ffffff;
  text-align: center;
}

.error-404__actions {
  display: inline-flex;
  gap: 16px;
}

/* 404 responsiveness (desktop unchanged) */
@media (max-width: 1200px) {
  .error-404__wrap {
    padding: 96px 48px;
  }
  .error-404__code {
    font-size: 140px;
  }
}
@media (max-width: 900px) {
  .error-404__wrap {
    padding: 72px 24px;
  }
  .error-404__code {
    font-size: 112px;
  }
  .error-404__heading {
    font-size: 24px;
  }
  .error-404__message {
    font-size: 18px;
    max-width: 720px;
    margin: 0 auto 24px auto;
  }
  .error-404__actions {
    gap: 12px;
  }
}
@media (max-width: 600px) {
  .error-404 {
    min-height: auto;
  }
  .error-404__wrap {
    padding: 56px 20px;
  }
  .error-404__code {
    font-size: 88px;
    margin-bottom: 16px;
  }
  .error-404__heading {
    font-size: 22px;
  }
  .error-404__message {
    font-size: 16px;
    margin: 0 auto 20px auto;
    padding: 0 4px;
  }
  .error-404__actions {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 10px;
  }
  .error-404__actions .btn {
    width: 100%;
    justify-content: center;
  }
}
/* Buttons (primary + line) */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 48px;
  padding: 0 20px;
  border-radius: 30px;
  font-family: "Inter", sans-serif;
  font-weight: 600;
  font-size: 16px;
  text-decoration: none;
  transition: all 0.2s ease-in-out;
}

.btn--primary {
  background: #019aac;
  color: #fff;
  border: 1px solid #019aac;
  box-sizing: border-box;
}
.btn--primary:hover {
  background: #006a76;
  border-color: #006a76;
}

.btn--line {
  background: transparent;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.45);
  box-sizing: border-box;
}
.btn--line:hover {
  background: #fff;
  color: #000;
  border-color: #fff;
}

/* Footer */
.footer {
  background: #161616;
  color: #ffffff;
  border-top-left-radius: 30px;
  border-top-right-radius: 30px;
  padding: 80px 64px;
}
.footer__container {
  max-width: 1280px;
  width: 100%;
  margin: 0 auto;
  display: grid;
  gap: 80px;
}
.footer__content {
  display: grid;
  grid-template-columns: 500px 1fr;
  gap: 128px;
}
.footer__brand {
  display: grid;
  gap: 24px;
}
.footer__logo {
  width: 147px;
  height: auto;
  margin-bottom: 24px;
}
.footer__hours {
  display: grid;
  gap: 10px;
  padding-left: 10px;
}
.footer__hoursText {
  font-family: "Inter", sans-serif;
  font-size: 14px;
  line-height: 1;
}
.footer__links {
  display: grid;
  grid-template-columns: repeat(3, 1fr) 120px;
  gap: 40px;
}
.footer__colTitle {
  font-family: "Inter", sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  color: #019aac;
  margin-bottom: 10px;
}
.footer__linkList {
  list-style: none;
  margin: 0;
  padding: 0;
}
.footer__linkList li {
  padding: 8px 0;
}
.footer__linkList a {
  color: #ffffff;
  text-decoration: none;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  line-height: 1.5;
}
.footer__linkList a:hover,
.footer__linkList a:focus {
  color: #019aac;
  outline: none;
}
.footer__address {
  color: #ffffff;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  line-height: 1.5;
}
.footer__linkRow {
  display: inline-flex;
  gap: 5px;
  align-items: flex-start;
}
.footer__icon {
  display: inline-flex;
  width: 14px;
  height: 14px;
  color: #ffffff;
  margin-top: 5px;
}
.social-icon {
  width: 22px;
  height: 22px;
  margin-top: 0px;
  object-fit: contain;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 7px;
}
.footer__linkRow:hover .footer__icon,
.footer__linkRow:focus-within .footer__icon {
  color: #019aac;
}
.footer__col--badges {
  display: grid;
  gap: 23px;
  align-content: start;
}
.footer__badge {
  width: 92px;
  height: 85px;
  object-fit: contain;
}
.footer__pills {
  display: grid;
  gap: 10px;
}
.footer__pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 3px 14px;
  border-radius: 30px;
  background: #009bae;
  color: #ffffff;
  text-decoration: none;
  font-family: "Roboto", sans-serif;
  font-size: 12px;
  line-height: 1.5;
  width: fit-content;
}
.footer__pill:hover,
.footer__pill:focus {
  background: #00b6c8;
  outline: none;
}
.footer__pillIcon {
  display: inline-flex;
  margin-left: 5px;
}
.footer__divider {
  height: 1px;
  width: 100%;
  background: #019aac;
}
.footer__credits {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.footer__copy {
  font-family: "Inter", sans-serif;
  font-size: 14px;
  line-height: 1.5;
}
.footer__bottomLinks {
  display: inline-flex;
  gap: 24px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.footer__bottomLinks a {
  color: #ffffff;
  text-decoration: none;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  line-height: 1.5;
}
.footer__bottomLinks a:hover,
.footer__bottomLinks a:focus {
  color: #019aac;
  outline: none;
}

@media (max-width: 1100px) {
  .footer__content {
    grid-template-columns: 1fr;
    gap: 48px;
  }
  .footer__links {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 800px) {
  .footer {
    padding: 64px 24px;
  }
  .footer__links {
    grid-template-columns: 1fr 1fr;
  }
  .footer__credits {
    flex-direction: column;
    gap: 16px;
    align-items: flex-start;
  }
}

/* Tablet tweaks without changing desktop */
@media (max-width: 1024px) {
  .footer__content {
    gap: 64px;
  }
  .footer__links {
    gap: 24px;
  }
}

/* Mobile-first refinements */
@media (max-width: 680px) {
  .footer {
    padding: 48px 20px;
  }
  .footer__container {
    gap: 48px;
  }
  .footer__content {
    gap: 40px;
  }
  .footer__logo {
    width: 120px;
    margin-bottom: 12px;
  }
  .footer__links {
    grid-template-columns: 1fr 1fr;
    gap: 24px;
  }
  .footer__hours {
    padding-left: 0;
  }
  .footer__hoursText {
    line-height: 1.5;
  }
  .footer__colTitle {
    font-size: 15px;
  }
  .footer__linkList li {
    padding: 6px 0;
  }
  .footer__linkList a {
    font-size: 15px;
  }
  .footer__pills {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }
  .footer__pill {
    justify-content: center;
    padding: 6px 12px;
  }
  .footer__credits {
    gap: 12px;
  }
  .footer__bottomLinks {
    gap: 12px;
    flex-wrap: wrap;
  }
}

@media (max-width: 480px) {
  .footer {
    padding: 40px 16px;
  }
  .footer__colTitle {
    font-size: 14px;
  }
  .footer__linkList a,
  .footer__copy,
  .footer__bottomLinks a {
    font-size: 13px;
  }
  .footer__pills {
    grid-template-columns: 1fr;
  }
  .footer__pill {
    padding: 6px 10px;
  }
}

/* Off-canvas mobile menu */
.mobile-menu {
  position: fixed;
  top: 0;
  right: 0;
  height: 100vh;
  width: 88vw;
  max-width: 420px;
  background: #161616;
  color: #fff;
  transform: translateX(100%);
  transition: transform 0.25s ease;
  z-index: 1003;
  padding: 90px 20px 24px;
  overflow-y: auto;
}
.mobile-menu.active {
  transform: translateX(0);
}
.mobile-menu__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
}
.mobile-menu__list a {
  color: #fff;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 8px;
  font-family: "Inter", sans-serif;
  font-size: 16px;
}
/* Remove anchor pseudo-arrow in mobile to avoid duplication; arrow lives on .submenu-toggle */
/* .mobile-menu__list .menu-item-has-children > a:after { */
/*   content: "\25BE"; */
/* } */
.mobile-menu__list .sub-menu {
  list-style: none;
  margin: 0;
  padding: 6px 0 6px 12px;
  display: none;
}
.mobile-menu__list .menu-item-has-children.active > .sub-menu {
  display: block;
}
.mobile-menu__list .sub-menu .sub-menu {
  padding-left: 12px;
}

.mobile-menu__close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 40px;
  height: 40px;
  border: 1px solid rgba(255, 255, 255, 0.45);
  border-radius: 10px;
  background: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.mobile-menu__close .mobile-menu-trigger__line {
  width: 18px;
  height: 2px;
  background: #fff;
  margin: 0;
  transform-origin: center;
}
.mobile-menu__close .mobile-menu-trigger__line:first-child {
  transform: rotate(45deg);
  position: absolute;
}
.mobile-menu__close .mobile-menu-trigger__line:last-child {
  transform: rotate(-45deg);
  position: absolute;
}

.mobile-menu__list li {
  position: relative;
}
/* Normalize anchor rows in mobile menu so arrow aligns with the link row */
.mobile-menu__list a {
  display: block;
  padding: 12px 52px 12px 8px;
  line-height: 1.3;
  min-height: 44px;
}
/* Toggle sits at the top row height, not centered in the whole li */
.mobile-menu__list .submenu-toggle {
  position: absolute;
  right: 0;
  top: 0;
  width: 44px;
  height: 44px;
  border: 0;
  background: transparent;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.mobile-menu__list .submenu-toggle:after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 6px;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="6" viewBox="0 0 10 6" fill="none"><path d="M9.42292 0.878141L4.71146 5.5896L-2.05944e-07 0.878141L0.878125 1.56972e-05L4.71146 3.83335L8.54479 1.53621e-05L9.42292 0.878141Z" fill="white"/></svg>')
    no-repeat center center;
  transition: transform 0.25s ease;
}
.mobile-menu__list .menu-item-has-children.active > .submenu-toggle:after {
  transform: rotate(180deg);
}
.mobile-menu__list > li {
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.mobile-menu__list > li:last-child {
  border-bottom: 0;
}
.mobile-menu__list .sub-menu li {
  border-bottom: 0;
}
.mobile-menu__list > li > a {
  padding-right: 52px;
}

/* Responsive header layout */
@media (max-width: 1100px) {
  .header {
    top: 18px;
  }
  .header__logo img {
    max-height: 30px;
  }
  .header__container {
    grid-template-columns: 1fr auto;
    gap: 16px;
    padding: 0 24px;
  }
  .header__nav {
    display: none;
  }
  .header__buttons {
    display: none;
  }
  .mobile-menu-trigger {
    display: inline-block;
  }
}
