/* Home-page service copy and contact access; shared typography lives in style.css. */
.language-picker { min-width: 126px; }
.language-picker select { width: 90px; max-width: none; padding-inline-end: 16px; }
.dialogtop>.iconbutton[data-action="close"] { grid-column: 3; justify-self: end; }
.card-version-note { display: flex; flex-direction: column; gap: 5px; }
.catalog-heading h2 { margin-top: 0; }
.catalog-path-other button.active,
.catalog-nav-item.active,
.brandtab.active {
  border-color: #145df5;
  background: #145df5;
  color: #fff;
  box-shadow: none;
}
.catalog-path-other button.active:hover,
.catalog-nav-item.active:hover,
.brandtab.active:hover { border-color: #074ad5; background: #074ad5; color: #fff; }
.catalog-nav-item.active small { background: #ffffff24; color: #fff; }
.brandtab.active { border: 1px solid #145df5; border-radius: 8px; }
.brandtab:not(.active) { border: 1px solid transparent; }
.brandtab:not(.active):hover { border-color: #bdd1f0; background: #eef4ff; color: #145df5; }

/* Ambient motion stays behind the original robot photograph. */
.heroart::before {
  content: "";
  position: absolute;
  inset: -10%;
  z-index: 0;
  border-radius: 50%;
  background: radial-gradient(ellipse at 56% 52%, #a9c9ff65 0%, #d5e6ff32 38%, #ffffff00 70%);
  pointer-events: none;
  animation: hero-ambient-glow 18s ease-in-out infinite alternate;
}
.heroart .orbit1 { border-color: #bad0ee99; animation: hero-orbit-one 28s ease-in-out infinite alternate; }
.heroart .orbit2 { border-color: #c2d7f0a6; animation: hero-orbit-two 34s ease-in-out infinite alternate; }
@keyframes hero-ambient-glow {
  0% { transform: translate(-3%, -1%) scale(.96); opacity: .42; }
  50% { opacity: .75; }
  100% { transform: translate(4%, 3%) scale(1.08); opacity: .95; }
}
@keyframes hero-orbit-one {
  0% { transform: rotate(-35deg) translateY(0); opacity: .55; }
  100% { transform: rotate(-17deg) translateY(7px); opacity: .95; }
}
@keyframes hero-orbit-two {
  0% { transform: rotate(38deg) translateY(0); opacity: .85; }
  100% { transform: rotate(17deg) translateY(-8px); opacity: .5; }
}
@media (hover: hover) {
  .promise>div { transition: transform .25s ease; }
  .promise>div b,
  .promise>div small,
  .promise>div .icon { transition: color .25s ease; }
  .promise>div:hover { transform: translateY(-2px); }
  .promise>div:hover b,
  .promise>div:hover .icon { color: #145df5; }
  .promise>div:hover small { color: #426da9; }
}
.video-showcase .video-showcase-link {
  min-height: 50px;
  padding: 13px 21px;
  border-color: #145df5;
  background: #145df5;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
}
.video-showcase .video-showcase-link>span { font-size: inherit; }
.video-showcase .video-showcase-link:hover { border-color: #074ad5; background: #074ad5; color: #fff; }
.video-showcase>.selection-banner { margin-top: 52px; background: #15181f; }
.video-showcase>.selection-banner .banner-grid { background-image: linear-gradient(#ffffff12 1px,transparent 1px),linear-gradient(90deg,#ffffff12 1px,transparent 1px); }
.video-showcase>.selection-banner .eyebrow { color: #fff; font-size: 13px; }
.video-showcase>.selection-banner p { color: #fff; }
.video-showcase>.selection-banner .white { color: #15181f; }
.video-showcase>.selection-banner .white:hover { background: #fff; color: #15181f; }
.selection-banner .button { gap: 20px; padding-inline: 22px; }
.selection-banner .button>span {
  display: grid;
  place-items: center;
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  font-size: 22px;
  line-height: 1;
  transition: transform .24s ease;
}
/* The chevron has the same optical inset as the field text. */
.card-version-field>.card-version-select { display: block; position: relative; font-weight: inherit; }
.card-version-select::after {
  content: "";
  position: absolute;
  inset-inline-end: 17px;
  top: 50%;
  width: 7px;
  height: 7px;
  border-inline-end: 1.7px solid #23436e;
  border-bottom: 1.7px solid #23436e;
  transform: translateY(-70%) rotate(45deg);
  pointer-events: none;
}
html[dir="rtl"] .card-version-select::after { transform: translateY(-70%) rotate(-45deg); }
.card-version-field select { appearance: none; -webkit-appearance: none; padding-inline: 15px 43px; }
.cardbottom>.price { flex: 1 1 auto; }
.card-price-request {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  min-height: 44px;
  padding: 10px 13px;
  border: 1px solid #145df5;
  border-radius: 8px;
  background: #145df5;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: -.015em;
  text-align: center;
  overflow-wrap: anywhere;
}
.card-price-request:not(:disabled):hover { background: #074ad5; border-color: #074ad5; color: #fff; }
.button,
.card-price-request,
.cardcompare,
.cardbottom>.round { transition: background .22s, color .22s, border-color .22s, transform .22s, box-shadow .22s; }
@media (hover: hover) {
  .button:not(:disabled):hover,
  .card-price-request:hover,
  .cardcompare:not(:disabled):hover { transform: translateY(-2px); box-shadow: 0 7px 18px #145df526; }
  .selection-banner .button:hover { box-shadow: 0 8px 22px #062c8d45; }
  .selection-banner .button:hover>span { transform: translate(2px,-2px); }
  .cardcompare:not(:disabled):hover { color: #fff; border-color: #145df5; background: #145df5; }
  .cardbottom>.round:hover { color: #fff; border-color: #145df5; background: #145df5; transform: translate(1px,-2px); box-shadow: 0 5px 14px #145df526; }
  .card-version-select:has(select:hover) select { border-color: #145df5; background: #f6f9ff; }
}
.button:not(:disabled):active,
.card-price-request:active,
.cardcompare:not(:disabled):active { transform: translateY(0); box-shadow: 0 2px 7px #145df51a; }
.hero .hero-service-line {
  max-width: 35em;
  margin-top: 22px;
  color: #253e5c;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.6;
}
.hero .hero-service-detail {
  max-width: 39em;
  margin-top: 13px;
  color: #5b6d82;
  font-size: 17px;
  line-height: 1.75;
}
.hero .heroactions { margin-top: 27px; gap: 12px; flex-wrap: wrap; }
.hero .hero-catalog-description { max-width: 40em; margin-top: 22px; color: #63758a; font-size: 18px; font-weight: 400; line-height: 1.75; }
.hero-catalog-description>span { display: block; }
.desktopnav a { color: #142030; }
.desktopnav a:hover,
.desktopnav a:focus-visible { color: #145df5; }
.hero .hero-guide {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: 44px;
  margin-top: 9px;
  color: #526b88;
  font-size: 15px;
  font-weight: 500;
  background: linear-gradient(currentColor,currentColor) left calc(100% - 7px) / 0 1px no-repeat;
  transition: color .22s, background-size .25s;
}
.hero .hero-guide>span { display: inline-block; transition: transform .25s cubic-bezier(.22,.61,.36,1); }
.hero .hero-guide:hover,
.hero .hero-guide:focus-visible { color: #145df5; background-size: 100% 1px; }
.hero .hero-guide:hover>span,
.hero .hero-guide:focus-visible>span { transform: translateX(4px); }
html[dir="rtl"] .hero .hero-guide:hover>span,
html[dir="rtl"] .hero .hero-guide:focus-visible>span { transform: translateX(-4px); }
.hero .herofacts { margin-top: 29px; margin-bottom: 20px; }
.hero .herofacts b,
.hero .herofacts>div:last-child b { display: flex; align-items: center; min-height: 43px; line-height: 1.25; }
@media(min-width:961px) {
  .hero .herofacts { margin-bottom: 21px; }
}
@media(min-width:641px) and (max-width:960px) {
  .hero .herofacts { margin-bottom: 5px; }
}
.hero .heroactions .button.secondary { color: #15181f; background: #fff; border-color: #d9e3ef; }
.hero .heroactions .button.secondary:not(:disabled):hover,
.hero .heroactions .button.secondary:focus-visible { color: #15181f; background: #fff; border-color: #d9e3ef; box-shadow: 0 7px 18px #172b4d1a; }
.hero .heroactions .button.secondary:not(:disabled):active { color: #15181f; background: #fff; border-color: #d9e3ef; box-shadow: 0 2px 7px #172b4d14; }
.hero .floatnote .mini-dot { position: relative; flex: 0 0 auto; }
.hero .floatnote .mini-dot::before,
.hero .floatnote .mini-dot::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid #145df566;
  border-radius: 50%;
  background: #145df514;
  pointer-events: none;
  animation: idea-signal 2.8s cubic-bezier(.2,.65,.3,1) infinite;
}
.hero .floatnote .mini-dot::after { animation-delay: -1.4s; }
.hero-model .round { display: grid; place-items: center; width: 44px; height: 44px; flex: 0 0 44px; padding: 0; line-height: 1; color: #15181f; background: transparent; border-color: #dce4ef; overflow: hidden; box-shadow: none; }
.hero-model .round .hero-model-arrow { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.hero-model .round:hover,
.hero-model .round:focus-visible { color: #15181f; border-color: #dce4ef; background: transparent; box-shadow: none; }
.hero-model .round:focus-visible { outline-color: #747f8e; }
.hero-model .round:hover .hero-model-arrow,
.hero-model .round:focus-visible .hero-model-arrow { animation: hero-arrow 1.25s cubic-bezier(.25,.65,.3,1) infinite; }
@keyframes idea-signal {
  0% { transform: scale(1); opacity: .8; }
  75%, 100% { transform: scale(3.8); opacity: 0; }
}
@keyframes hero-arrow {
  0%, 15% { transform: translate(0,0); opacity: 1; }
  40% { transform: translate(10px,-10px); opacity: 0; }
  41% { transform: translate(-10px,10px); opacity: 0; }
  68%, 100% { transform: translate(0,0); opacity: 1; }
}
.contact-access { position: relative; flex-shrink: 0; }
.contact-trigger {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  min-width: 44px;
  min-height: 44px;
  padding: 10px 13px;
  border: 1px solid #dce5f0;
  border-radius: 9px;
  background: #fff;
  color: #244364;
  font-size: 14px;
  font-weight: 600;
  white-space: nowrap;
}
.contact-trigger:hover,
.contact-trigger[aria-expanded="true"] { background: #f1f6ff; border-color: #acc9ef; color: #145df5; }
.contact-trigger svg,
.contact-popover svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }
.contact-popover {
  position: absolute;
  top: calc(100% + 16px);
  inset-inline-end: 0;
  z-index: 50;
  width: 348px;
  padding: 21px;
  border: 1px solid #dce5f0;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 20px 60px #193d6a24;
  text-align: start;
}
.contact-popover-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; }
.contact-popover-heading h2 { max-width: 15em; padding-top: 5px; font-size: 21px; font-weight: 600; line-height: 1.35; letter-spacing: -.025em; }
.contact-popover-close { display: grid; place-items: center; min-width: 36px; min-height: 36px; margin: -3px -4px 0 0; border-radius: 8px; color: #62758a; }
.contact-popover-close:hover { background: #edf3fb; }
.contact-channel { display: flex; align-items: center; gap: 13px; margin-top: 20px; padding: 15px 13px; border: 1px solid #dce7f5; border-radius: 11px; background: #f7faff; color: #1c3a60; }
.contact-channel + .contact-channel { margin-top: 10px; }
.contact-channel:hover { border-color: #a7c5ee; background: #edf4ff; }
.contact-channel-icon { display: grid; place-items: center; width: 40px; height: 40px; flex-shrink: 0; border-radius: 50%; background: #e7f0ff; color: #145df5; }
.contact-channel-icon svg { width: 24px; height: 24px; }
.contact-channel b { display: block; font-size: 16px; font-weight: 600; line-height: 1.45; }
.contact-channel small { display: block; margin-top: 4px; color: #61738a; font-size: 14px; }
.contact-channel .contact-channel-arrow { width: 17px; height: 17px; margin-inline-start: auto; color: #145df5; }
.contact-all { display: flex; justify-content: space-between; align-items: center; gap: 16px; min-height: 44px; margin-top: 10px; color: #526b88; font-size: 15px; font-weight: 500; }
/* Restore the original, compact support section shown in the reference. */
#help { padding-top: 55px; padding-bottom: 75px; }
#help .sectionhead { display: flex; align-items: flex-end; margin-bottom: 38px; }
#help .sectionhead .eyebrow { font-size: 12px; }
#help .sectionhead h2 { max-width: none; font-size: 35px; font-weight: 550; line-height: 1.12; }
#help .sectionhead>.textbutton { margin-top: 0; font-size: 15px; }
#help .helpgrid { grid-template-columns: minmax(0,1fr) minmax(0,1.5fr); gap: 85px; }
#help .helpintro h3 { font-size: 27px; font-weight: 550; line-height: 1.25; }
#help .helpintro p { margin: 16px 0 25px; font-size: 14px; line-height: 1.8; color: #8d97a6; }
#help .help-link { min-height: 39px; padding: 9px 0; gap: 11px; font-size: 14px; }
#help .help-link>span:last-child { margin-left: 0; margin-inline-start: auto; }
#help .help-link .icon { width: 16px; height: 16px; }
#homefaq details { padding: 18px 0; }
#homefaq details:first-child { padding-top: 0; }
#homefaq summary { padding: 0; font-size: 16px; font-weight: 400; line-height: 1.55; }
@media(max-width:1150px) {
  #help .helpgrid { gap: 50px; }
}
@media(max-width:960px) {
  #help .helpgrid { gap: 38px; }
}
@media(max-width:640px) {
  #help { padding-top: 43px; padding-bottom: 45px; }
  #help .sectionhead { display: block; margin-bottom: 30px; }
  #help .sectionhead h2 { font-size: 33px; line-height: 1.18; }
  #help .sectionhead>.textbutton { margin-top: 20px; font-size: 16px; }
  #help .helpgrid { grid-template-columns: minmax(0,1fr); gap: 32px; }
  #help .helpintro h3 { font-size: 29px; }
  #help .helpintro p { font-size: 17px; color: #5c718a; }
  #help .help-link { min-height: 48px; font-size: 16px; }
  #homefaq details { padding: 0; }
  #homefaq summary { min-height: 50px; padding: 14px 0; font-size: 17px; line-height: 1.6; }
  #homefaq details[open] { padding-bottom: 18px; }
  #homefaq p { margin-top: 0; }
}
@media (max-width: 1180px) {
  .hero .hero-service-line { font-size: 19px; }
}
@media (prefers-reduced-motion: reduce) {
  .hero .hero-guide, .hero .hero-guide>span { transition: none; }
  .hero .hero-guide:hover>span, .hero .hero-guide:focus-visible>span { transform: none; }
  .button, .card-price-request, .cardcompare, .cardbottom>.round, .selection-banner .button>span { transition: none; }
  .button:not(:disabled):hover, .card-price-request:hover, .cardcompare:not(:disabled):hover, .cardbottom>.round:hover, .selection-banner .button:hover>span { transform: none; }
  .heroart::before,
  .heroart .orbit1,
  .heroart .orbit2 { animation: none; }
  .heroart::before { opacity: .55; }
  .promise>div,
  .promise>div:hover { transform: none; transition: none; }
  .hero .floatnote .mini-dot::before,
  .hero .floatnote .mini-dot::after { animation: none; opacity: 0; }
  .hero-model .round:hover .hero-model-arrow,
  .hero-model .round:focus-visible .hero-model-arrow { animation: none; }
}
@media (max-width: 640px) {
  .hero .herofacts b, .hero .herofacts>div:last-child b { min-height: 40px; }
  .dialogtop>.iconbutton[data-action="close"] { grid-column: 2; }
  .header .logo { gap: 7px; }
  .header .logo .newway-mark { width: 36px; }
  .header .logo b { font-size: 16px; }
  .header .logo small { font-size: 8px; }
  .header .logo em { display: none; }
  .header .navwrap { gap: 6px; padding-inline: 16px; }
  .header .navtools { gap: 2px; }
  .header .mobilemenu .language-picker { width: 100%; max-width: none; min-height: 48px; margin: 9px 0 5px; padding-inline: 14px; }
  .header .mobilemenu .language-picker select { width: 100%; max-width: none; font-size: 16px; }
  .contact-trigger { padding: 10px; border-color: transparent; }
  .contact-trigger>span { display: none; }
  .contact-popover { position: fixed; top: 82px; inset-inline: 16px; width: auto; max-height: calc(100dvh - 100px); overflow-y: auto; padding: 20px; }
  .contact-popover-heading h2 { font-size: 22px; }
  .contact-popover-close { min-width: 44px; min-height: 44px; margin-top: -5px; }
  .hero .hero-service-line { margin-top: 20px; font-size: 19px; }
  .hero .hero-service-detail { margin-top: 12px; font-size: 16px; line-height: 1.75; }
  .hero .hero-catalog-description { font-size: 16px; line-height: 1.75; }
  .hero .heroactions { display: grid; grid-template-columns: 1fr; gap: 10px; }
  .hero .heroactions>.button { width: 100%; }
  .hero .hero-guide { font-size: 15px; }
}
