


@media (max-width: 1080px) {

  /* ---------------- MOBILE MENU ---------------- */
  .site-header .container {
    width: min(100% - 24px, 1220px) !important;
  }

  .nav-inner {
    min-height: 74px !important;
    gap: 14px !important;
  }

  .brand-logo {
    width: min(280px, 66vw) !important;
    margin-left: 0 !important;
  }

  .menu-toggle {
    width: 48px !important;
    height: 48px !important;
    flex: 0 0 48px !important;
    border: 1px solid rgba(20,60,114,.12) !important;
    border-radius: 14px !important;
    background: linear-gradient(145deg, var(--euroasia-white) 0%, #eef8fd 100%) !important;
    box-shadow: 0 8px 22px rgba(24,60,80,.10) !important;
  }

  .menu-toggle span {
    left: 13px !important;
    width: 22px !important;
    height: 2px !important;
    background: var(--euroasia-nav-blue) !important;
  }

  .menu-toggle span:nth-child(1) { top: 15px !important; }
  .menu-toggle span:nth-child(2) { top: 23px !important; }
  .menu-toggle span:nth-child(3) { top: 31px !important; }

  .menu-toggle.is-open span:nth-child(1),
  .menu-toggle.is-open span:nth-child(3) {
    top: 23px !important;
  }

  .main-nav {
    top: calc(100% + 1px) !important;
    left: 8px !important;
    right: 8px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
    border: 1px solid rgba(20,60,114,.09) !important;
    border-top: 0 !important;
    border-radius: 0 0 20px 20px !important;
    background: rgba(250,253,255,.985) !important;
    box-shadow: 0 22px 50px rgba(20,53,73,.18) !important;
  }

  .main-nav.is-open {
    max-height: calc(100dvh - 82px) !important;
    padding-top: 12px !important;
    padding-bottom: 18px !important;
  }

  .main-nav > a,
  .nav-item > button {
    min-height: 56px !important;
    margin: 3px 0 !important;
    padding: 0 15px !important;
    border-radius: 13px !important;
    background: var(--euroasia-white) !important;
    color: #233f4e !important;
    box-shadow: inset 0 0 0 1px rgba(31,70,92,.055) !important;
    font-size: 17px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
  }

  .main-nav > a.active,
  .nav-item.is-open > button {
    color: var(--euroasia-nav-blue) !important;
    background: rgba(17,147,212,.09) !important;
    box-shadow:
      inset 4px 0 0 var(--euroasia-accent),
      inset 0 0 0 1px rgba(17,147,212,.10) !important;
  }

  .main-nav > a.active::after {
    display: none !important;
  }

  .nav-item > button > span {
    display: grid !important;
    place-items: center !important;
    width: 32px !important;
    height: 32px !important;
    margin: 0 !important;
    border-radius: 50% !important;
    background: rgba(20,60,114,.06) !important;
    color: var(--euroasia-nav-blue) !important;
    font-size: 18px !important;
  }

  .nav-item.is-open > button > span {
    background: var(--euroasia-accent) !important;
    color: var(--euroasia-white) !important;
  }

  .dropdown {
    margin: 3px 0 8px !important;
    padding-left: 9px !important;
    padding-right: 2px !important;
    border-left: 2px solid rgba(17,147,212,.15) !important;
  }

  .nav-item.is-open > .dropdown {
    padding-top: 7px !important;
    padding-bottom: 9px !important;
  }

  .dropdown a {
    min-height: 48px !important;
    display: flex !important;
    align-items: center !important;
    margin: 2px 0 !important;
    padding: 10px 13px 10px 17px !important;
    border-radius: 11px !important;
    color: #536f7c !important;
    font-size: 15.5px !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
  }

  .dropdown a:hover,
  .dropdown a:focus-visible {
    color: var(--euroasia-nav-blue) !important;
    background: rgba(17,147,212,.10) !important;
    transform: none !important;
  }

  /* ---------------- HOME: WHAT WE DO ---------------- */

  .services-editorial-copy p {
    font-size: 16px !important;
    line-height: 1.62 !important;
  }

  /* MOBILE ARROW: deliberately different from desktop */
  .services-editorial-arrow {
    position: relative !important;
    display: grid !important;
    place-items: center !important;
    width: 42px !important;
    height: 42px !important;
    justify-self: end !important;
    border: 1px solid rgba(17,147,212,.18) !important;
    border-radius: 12px !important;
    background: var(--euroasia-nav-blue) !important;
    color: var(--euroasia-white) !important;
    box-shadow: 0 7px 18px rgba(20,60,114,.18) !important;
    font-size: 0 !important;
    line-height: 1 !important;
    transform: none !important;
  }

  .services-editorial-arrow::before {
    content: "→" !important;
    display: block !important;
    color: var(--euroasia-white) !important;
    font-family: Arial, sans-serif !important;
    font-size: 23px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
  }

  .services-editorial-arrow::after {
    content: "" !important;
    position: absolute !important;
    inset: -5px !important;
  }

  .services-editorial-item.is-active .services-editorial-arrow {
    background: var(--euroasia-accent) !important;
    border-color: var(--euroasia-accent) !important;
    transform: none !important;
  }

  /* ---------------- HOME: OUR SECTORS ---------------- */

  .sector-showcase-head p {
    font-size: 16px !important;
    line-height: 1.72 !important;
  }

  /* ---------------- WHO WE ARE OVERVIEW ---------------- */

  .who-index-excerpt {
    font-size: 16px !important;
    line-height: 1.72 !important;
  }

  /* ---------------- WHAT WE DO OVERVIEW ---------------- */

  .what-index-excerpt {
    font-size: 16px !important;
    line-height: 1.72 !important;
  }

  /* ---------------- OUR SECTORS OVERVIEW ---------------- */

  .sector-article-title {
    font-size: 17px !important;
    line-height: 1.48 !important;
  }

  /* ---------------- NEWS OVERVIEW ---------------- */

  .news-archive-item h2 {
    font-size: 17px !important;
    line-height: 1.45 !important;
  }

  /* ---------------- CONTACT ---------------- */

  .contact-intro p,
  .contact-details-top > p,
  .contact-form-heading p,
  .contact-info-item p,
  .contact-info-item a,
  .contact-bottom-strip p {
    font-size: 16px !important;
    line-height: 1.72 !important;
  }

  .contact-info-label,
  .contact-form label > span {
    font-size: 12px !important;
  }

  .contact-form input,
  .contact-form select,
  .contact-form textarea {
    font-size: 16px !important;
  }

  .contact-panel-footer,
  .contact-form-actions p,
  .contact-form-status {
    font-size: 13.5px !important;
    line-height: 1.55 !important;
  }

  .contact-submit {
    min-height: 50px !important;
    font-size: 15px !important;
  }

  /* ---------------- FOOTER ---------------- */

  .euro-footer-brand p {
    font-size: 15px !important;
    line-height: 1.72 !important;
  }

  .euro-footer-column h3 {
    font-size: 13px !important;
    letter-spacing: .10em !important;
  }

  .euro-footer-column a {
    font-size: 15px !important;
    line-height: 1.5 !important;
    margin-bottom: 13px !important;
  }

  .euro-footer-contact p {
    font-size: 15px !important;
    line-height: 1.68 !important;
  }

  .euro-footer-contact > span {
    font-size: 13px !important;
    line-height: 1.55 !important;
  }

  .euro-footer-bottom-inner {
    font-size: 12.5px !important;
    line-height: 1.5 !important;
  }

  .euro-footer-cta-link {
    font-size: 14px !important;
  }
}

/* Phones: retain the same changes and slightly tighten widths only. */
@media (max-width: 560px) {
  .main-nav {
    left: 4px !important;
    right: 4px !important;
  }

  .main-nav > a,
  .nav-item > button {
    font-size: 16.5px !important;
  }

  .services-editorial-copy p,
  .sector-showcase-head p,
  .who-index-excerpt,
  .what-index-excerpt {
    font-size: 15.5px !important;
  }

  .sector-article-title,
  .news-archive-item h2 {
    font-size: 16.5px !important;
  }
}


@media (max-width: 1080px) {
  .euroasia-feature-slider .feature-slide-copy {
    padding-top: 15px !important;
  }

  .euroasia-feature-slider .feature-slide-copy h2 {
    margin-top: 0 !important;
  }

  .main-nav {
    background: var(--euroasia-accent) !important;
    border-color: rgba(255,255,255,.16) !important;
    box-shadow: 0 22px 50px rgba(7,42,63,.28) !important;
  }

  .main-nav > a,
  .nav-item > button,
  .main-nav > a.active,
  .nav-item > button.active,
  .nav-item.is-open > button {
    background: transparent !important;
    color: var(--euroasia-white) !important;
    box-shadow: none !important;
    border: 0 !important;
  }

  .main-nav > a::after,
  .main-nav > a.active::after,
  .nav-item > button::after,
  .nav-item > button.active::after {
    display: none !important;
    content: none !important;
  }

  .main-nav > a:hover,
  .main-nav > a:focus-visible,
  .nav-item > button:hover,
  .nav-item > button:focus-visible {
    background: rgba(255,255,255,.10) !important;
    color: var(--euroasia-white) !important;
  }

  .nav-item > button > span {
    position: relative !important;
    width: 34px !important;
    height: 34px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,.12) !important;
    color: transparent !important;
    font-size: 0 !important;
    transition: background 180ms ease, transform 180ms ease !important;
  }

  .nav-item > button > span::before {
    content: "" !important;
    width: 8px !important;
    height: 8px !important;
    border-right: 2px solid var(--euroasia-white) !important;
    border-bottom: 2px solid var(--euroasia-white) !important;
    transform: rotate(45deg) translate(-1px,-1px) !important;
    transform-origin: center !important;
    transition: transform 180ms ease !important;
  }

  .nav-item.is-open > button > span {
    background: rgba(255,255,255,.22) !important;
  }

  .nav-item.is-open > button > span::before {
    transform: rotate(225deg) translate(-1px,-1px) !important;
  }

  .dropdown {
    border-left-color: rgba(255,255,255,.28) !important;
  }

  .dropdown a {
    color: rgba(255,255,255,.92) !important;
    background: rgba(255,255,255,.06) !important;
  }

  .dropdown a:hover,
  .dropdown a:focus-visible {
    color: var(--euroasia-white) !important;
    background: rgba(255,255,255,.14) !important;
  }
}


@media (min-width: 1081px) {
  .services-editorial-copy p {
    font-size: 14px !important;
    line-height: 1.62 !important;
  }

  .sector-showcase-head p {
    font-size: 16px !important;
    line-height: 1.72 !important;
  }

  .who-index-excerpt {
    font-size: 15px !important;
    line-height: 1.7 !important;
  }

  .what-index-excerpt {
    font-size: 15px !important;
    line-height: 1.7 !important;
  }

  .sector-article-title {
    font-size: 17px !important;
    line-height: 1.48 !important;
  }

  .euro-footer-brand p {
    font-size: 14px !important;
    line-height: 1.7 !important;
  }

  .euro-footer-column h3 {
    font-size: 12px !important;
  }

  .euro-footer-column a {
    font-size: 14px !important;
    line-height: 1.5 !important;
  }

  .euro-footer-contact p {
    font-size: 13.5px !important;
    line-height: 1.68 !important;
  }

  .euro-footer-contact > span {
    font-size: 11.5px !important;
    line-height: 1.5 !important;
  }

  .euro-footer-bottom-inner {
    font-size: 11.5px !important;
  }
}


@media (max-width: 1080px) {
  .nav-item > button > span {
    position: relative !important;
    display: block !important;
    width: 34px !important;
    height: 34px !important;
    flex: 0 0 34px !important;
    margin-left: 12px !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,.13) !important;
    color: transparent !important;
    font-size: 0 !important;
    transition: background 180ms ease !important;
  }

  .nav-item > button > span::before,
  .nav-item > button > span::after {
    content: "" !important;
    position: absolute !important;
    top: 16px !important;
    width: 8px !important;
    height: 2px !important;
    border: 0 !important;
    border-radius: 2px !important;
    background: var(--euroasia-white) !important;
    transform-origin: center !important;
    transition: transform 180ms ease !important;
  }

  .nav-item > button > span::before {
    left: 10px !important;
    transform: rotate(42deg) !important;
  }

  .nav-item > button > span::after {
    right: 10px !important;
    transform: rotate(-42deg) !important;
  }

  .nav-item.is-open > button > span {
    background: rgba(255,255,255,.25) !important;
  }

  .nav-item.is-open > button > span::before {
    transform: rotate(-42deg) !important;
  }

  .nav-item.is-open > button > span::after {
    transform: rotate(42deg) !important;
  }
}


@media (max-width: 1080px) {

  /* Slider: 15px breathing room between image and first text line */
  .euroasia-feature-slider .feature-slide-copy {
    padding-top: 15px !important;
  }

  .euroasia-feature-slider .feature-slide-copy > :first-child {
    margin-top: 0 !important;
  }

  /* Dropdown arrow: minimal white chevron, no circle */
  .nav-item > button > span {
    position: relative !important;
    display: block !important;
    width: 30px !important;
    height: 30px !important;
    flex: 0 0 30px !important;
    margin-left: 10px !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: transparent !important;
    font-size: 0 !important;
    transform: none !important;
  }

  .nav-item > button > span::after {
    content: none !important;
    display: none !important;
  }

  .nav-item > button > span::before {
    content: "" !important;
    position: absolute !important;
    left: 10px !important;
    top: 8px !important;
    width: 8px !important;
    height: 8px !important;
    border: 0 !important;
    border-right: 2px solid rgba(255,255,255,.96) !important;
    border-bottom: 2px solid rgba(255,255,255,.96) !important;
    border-radius: 1px !important;
    background: transparent !important;
    transform: rotate(45deg) !important;
    transform-origin: center !important;
    transition: transform 180ms ease, top 180ms ease !important;
  }

  .nav-item.is-open > button > span {
    background: transparent !important;
  }

  .nav-item.is-open > button > span::before {
    top: 12px !important;
    transform: rotate(225deg) !important;
  }
}


/* Desktop caret: compact rounded-square chevron */
@media (min-width: 1081px) {
  .nav-item > button > span {
    position: relative !important;
    display: inline-block !important;
    width: 18px !important;
    height: 18px !important;
    margin: 0 0 0 3px !important;
    border-radius: 6px !important;
    background: rgba(20,60,114,.055) !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    transform: none !important;
    transition: background 170ms ease !important;
  }

  .nav-item > button > span::after {
    content: none !important;
    display: none !important;
  }

  .nav-item > button > span::before {
    content: "" !important;
    position: absolute !important;
    left: 6px !important;
    top: 5px !important;
    width: 5px !important;
    height: 5px !important;
    border: 0 !important;
    border-right: 1.5px solid #536f7c !important;
    border-bottom: 1.5px solid #536f7c !important;
    background: transparent !important;
    transform: rotate(45deg) !important;
    transform-origin: center !important;
    transition: transform 170ms ease, border-color 170ms ease !important;
  }

  .nav-item:hover > button > span,
  .nav-item:focus-within > button > span,
  .nav-item.is-open > button > span {
    background: rgba(17,147,212,.10) !important;
    transform: none !important;
  }

  .nav-item:hover > button > span::before,
  .nav-item:focus-within > button > span::before,
  .nav-item.is-open > button > span::before {
    border-color: var(--euroasia-accent) !important;
    transform: rotate(225deg) !important;
  }
}

/* Mobile: no underline anywhere on parent/dropdown links + new caret */
@media (max-width: 1080px) {

  .nav-item > button,
  .nav-item > button:link,
  .nav-item > button:hover,
  .nav-item > button:focus,
  .nav-item > button:focus-visible,
  .nav-item > button:active,
  .nav-item > button.active,
  .nav-item.is-open > button,
  .dropdown a,
  .dropdown a:link,
  .dropdown a:visited,
  .dropdown a:hover,
  .dropdown a:focus,
  .dropdown a:focus-visible,
  .dropdown a:active {
    text-decoration: none !important;
    text-decoration-line: none !important;
    border-bottom: 0 !important;
  }

  .nav-item > button::before,
  .nav-item > button::after,
  .nav-item > button.active::before,
  .nav-item > button.active::after {
    content: none !important;
    display: none !important;
    border: 0 !important;
    background: none !important;
  }

  .nav-item > button > span {
    position: relative !important;
    display: block !important;
    width: 32px !important;
    height: 32px !important;
    flex: 0 0 32px !important;
    margin-left: 10px !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    border-radius: 9px !important;
    background: rgba(255,255,255,.10) !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    transform: none !important;
    transition: background 170ms ease, border-color 170ms ease !important;
  }

  .nav-item > button > span::after {
    content: none !important;
    display: none !important;
  }

  .nav-item > button > span::before {
    content: "" !important;
    position: absolute !important;
    left: 11px !important;
    top: 9px !important;
    width: 7px !important;
    height: 7px !important;
    border: 0 !important;
    border-right: 2px solid var(--euroasia-white) !important;
    border-bottom: 2px solid var(--euroasia-white) !important;
    border-radius: 1px !important;
    background: transparent !important;
    transform: rotate(45deg) !important;
    transform-origin: center !important;
    transition: transform 170ms ease !important;
  }

  .nav-item.is-open > button > span {
    background: rgba(255,255,255,.22) !important;
    border-color: rgba(255,255,255,.30) !important;
  }

  .nav-item.is-open > button > span::before {
    top: 13px !important;
    transform: rotate(225deg) !important;
  }
}

/* Homepage Our Sectors links: absolutely no browser/link underline */
a.sector-showcase-card,
a.sector-showcase-card:link,
a.sector-showcase-card:visited,
a.sector-showcase-card:hover,
a.sector-showcase-card:focus,
a.sector-showcase-card:focus-visible,
a.sector-showcase-card:active {
  text-decoration: none !important;
  text-decoration-line: none !important;
  text-decoration-thickness: 0 !important;
  border-bottom: 0 !important;
}

a.sector-showcase-card .sector-card-title,
a.sector-showcase-card .sector-card-title *,
a.sector-showcase-card:hover .sector-card-title,
a.sector-showcase-card:hover .sector-card-title * {
  text-decoration: none !important;
  text-decoration-line: none !important;
  border-bottom: 0 !important;
}


@media (max-width: 1080px) {
  .main-nav .nav-item > button[data-href="who-we-are.html"],
  .main-nav .nav-item > button[data-href="who-we-are.html"]:hover,
  .main-nav .nav-item > button[data-href="who-we-are.html"]:focus,
  .main-nav .nav-item > button[data-href="who-we-are.html"]:focus-visible,
  .main-nav .nav-item > button[data-href="who-we-are.html"]:active,
  .main-nav .nav-item > button[data-href="who-we-are.html"].active,
  .main-nav .nav-item.is-open > button[data-href="who-we-are.html"] {
    text-decoration: none !important;
    text-decoration-line: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    background-image: none !important;
  }

  .main-nav .nav-item > button[data-href="who-we-are.html"]::before,
  .main-nav .nav-item > button[data-href="who-we-are.html"]::after,
  .main-nav .nav-item > button[data-href="who-we-are.html"].active::before,
  .main-nav .nav-item > button[data-href="who-we-are.html"].active::after {
    content: none !important;
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    border: 0 !important;
    background: none !important;
  }
}

/* Final active menu state: solid accent background with no underline. */
.main-nav > a.active,
.nav-item > button.active {
  background: #1193D4 !important;
  background-image: none !important;
  color: #ffffff !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

.main-nav > a.active::before,
.main-nav > a.active::after,
.nav-item > button.active::before,
.nav-item > button.active::after {
  content: none !important;
  display: none !important;
  border: 0 !important;
  background: none !important;
}

.nav-item > button.active > span {
  color: #ffffff !important;
}


@media (max-width: 980px) {
  .euroasia-feature-slider .feature-slide-copy {
    justify-content: center !important;
    padding-top: 15px !important;
    padding-bottom: 15px !important;
  }
}


/* First slider slide — mobile-only simplification */
.euroasia-feature-slider .first-slide-desc-mobile {
  display: none;
}

@media (max-width: 1080px) {
  .euroasia-feature-slider .feature-slide:first-of-type .feature-kicker,
  .euroasia-feature-slider .feature-slide:first-of-type .feature-meta {
    display: none !important;
  }

  .euroasia-feature-slider .feature-slide:first-of-type .first-slide-desc-desktop {
    display: none !important;
  }

  .euroasia-feature-slider .feature-slide:first-of-type .first-slide-desc-mobile {
    display: inline !important;
  }
}


/* Second slider slide — mobile-only simplification */
.euroasia-feature-slider .second-slide-desc-mobile {
  display: none;
}

@media (max-width: 1080px) {
  .euroasia-feature-slider .feature-slide:nth-of-type(2) .feature-kicker,
  .euroasia-feature-slider .feature-slide:nth-of-type(2) .feature-meta {
    display: none !important;
  }

  .euroasia-feature-slider .feature-slide:nth-of-type(2) .second-slide-desc-desktop {
    display: none !important;
  }

  .euroasia-feature-slider .feature-slide:nth-of-type(2) .second-slide-desc-mobile {
    display: inline !important;
  }
}


/* Third slider slide — mobile-only simplification */
.euroasia-feature-slider .third-slide-desc-mobile {
  display: none;
}

@media (max-width: 1080px) {
  .euroasia-feature-slider .feature-slide:nth-of-type(3) .feature-kicker,
  .euroasia-feature-slider .feature-slide:nth-of-type(3) .feature-meta {
    display: none !important;
  }

  .euroasia-feature-slider .feature-slide:nth-of-type(3) .third-slide-desc-desktop {
    display: none !important;
  }

  .euroasia-feature-slider .feature-slide:nth-of-type(3) .third-slide-desc-mobile {
    display: inline !important;
  }
}


/* Fourth slider slide — mobile-only simplification */
.euroasia-feature-slider .fourth-slide-desc-mobile {
  display: none;
}

@media (max-width: 1080px) {
  .euroasia-feature-slider .feature-slide:nth-of-type(4) .feature-kicker,
  .euroasia-feature-slider .feature-slide:nth-of-type(4) .feature-meta {
    display: none !important;
  }

  .euroasia-feature-slider .feature-slide:nth-of-type(4) .fourth-slide-desc-desktop {
    display: none !important;
  }

  .euroasia-feature-slider .feature-slide:nth-of-type(4) .fourth-slide-desc-mobile {
    display: inline !important;
  }
}


/* Fifth slider slide — mobile-only simplification */
.euroasia-feature-slider .fifth-slide-desc-mobile {
  display: none;
}

@media (max-width: 1080px) {
  .euroasia-feature-slider .feature-slide:nth-of-type(5) .feature-kicker,
  .euroasia-feature-slider .feature-slide:nth-of-type(5) .feature-meta {
    display: none !important;
  }

  .euroasia-feature-slider .feature-slide:nth-of-type(5) .fifth-slide-desc-desktop {
    display: none !important;
  }

  .euroasia-feature-slider .feature-slide:nth-of-type(5) .fifth-slide-desc-mobile {
    display: inline !important;
  }
}


/* Mobile article frame — reduce external gap from section above */
@media (max-width: 1080px) {
  .article-page .article-content {
    padding-top: 16px !important;
  }
}

/* Subtle separators between top-level mobile navigation items. */
@media (max-width: 1080px) {
  .site-header .main-nav > a:not(:first-child),
  .site-header .main-nav > .nav-item:not(:first-child) {
    border-top: 1px solid rgba(255, 255, 255, .16) !important;
  }
}

/* Mobile nested dropdown panel. */
@media (max-width: 1080px) {
  .site-header .main-nav .dropdown {
    background: #16417A !important;
  }
}
