/* Source: assets/css/reset.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}
*,
:after,
:before {
  box-sizing: border-box;
}
body {
  background-color: var(--color-text-light);
  color: #333;
  font-family:
    -apple-system,
    BlinkMacSystemFont,
    Segoe UI,
    Roboto,
    Helvetica Neue,
    Arial,
    Noto Sans,
    sans-serif,
    Apple Color Emoji,
    Segoe UI Emoji,
    Segoe UI Symbol,
    Noto Color Emoji;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  margin: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
h1,
h2,
h3,
h4 {
  color: inherit;
  font-family: inherit;
  font-weight: 500;
  line-height: 1.2;
  margin-block-end: 1rem;
  margin-block-start: 0.5rem;
}
h1 {
  font-size: 2.5rem;
}
h2 {
  font-size: 2rem;
}
h3 {
  font-size: 1.75rem;
}
h4 {
  font-size: 1.5rem;
}
p {
  margin-block-end: 0.9rem;
  margin-block-start: 0;
}
a {
  background-color: transparent;
  color: #c36;
  text-decoration: none;
}
a:active,
a:hover {
  color: #336;
}
b,
strong {
  font-weight: bolder;
}
img {
  border-style: none;
  height: auto;
  max-width: 100%;
}
@media print {
  *,
  :after,
  :before {
    background: transparent !important;
    box-shadow: none !important;
    color: #000 !important;
    text-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  a[href^="#"]:after {
    content: "";
  }
  img {
    -moz-column-break-inside: avoid;
    break-inside: avoid;
  }
  h2,
  h3,
  p {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    -moz-column-break-after: avoid;
    break-after: avoid;
  }
}
label {
  display: inline-block;
  line-height: 1;
  vertical-align: middle;
}
button,
input,
select,
textarea {
  font-family: inherit;
  font-size: 1rem;
  line-height: 1.5;
  margin: 0;
}
input[type="email"],
input[type="tel"],
input[type="text"],
select,
textarea {
  border: 1px solid #666;
  border-radius: 3px;
  padding: 0.5rem 1rem;
  transition: all 0.3s;
  width: 100%;
}
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="text"]:focus,
select:focus,
textarea:focus {
  border-color: #333;
}
button,
input {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
[type="submit"],
button {
  -webkit-appearance: button;
  width: auto;
  background-color: transparent;
  border: 1px solid #c36;
  border-radius: 3px;
  color: #c36;
  display: inline-block;
  font-size: 1rem;
  font-weight: 400;
  padding: 0.5rem 1rem;
  text-align: center;
  transition: all 0.3s;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  white-space: nowrap;
}
[type="submit"]:focus,
[type="submit"]:hover,
button:focus,
button:hover {
  background-color: #c36;
  color: var(--color-text-light);
  text-decoration: none;
}
textarea {
  overflow: auto;
  resize: vertical;
}
[type="checkbox"] {
  box-sizing: border-box;
  padding: 0;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
select {
  display: block;
}
li,
ol,
ul {
  background: transparent;
  border: 0;
  font-size: 100%;
  margin-block-end: 0;
  margin-block-start: 0;
  outline: 0;
  vertical-align: baseline;
}

/* Source: assets/css/variables.css */
:root {
  --color-primary: #1670b8;
  --color-secondary: #2e8bd6;
  --color-text: #141f2e;
  --color-accent: #c3d2e2;
  --heading-font-weight: 800;
  --body-font-weight: 400;
  --font-family: "Roboto";
  --action-font-weight: 600;
  --body-font-size: 16px;
  --body-line-height: 26px;
  --color-text-light: #fff;
  --color-section-bg: #f2f6fb;
  --color-border-muted: #5b6675;
  --color-muted-footer: #9db0c4;
  --color-topbar-text: #ffffff;
  --color-topbar-text2: #ffffff;
  --color-topbar-bg: #1670B8;
}

/* Source: assets/css/base.css */
.page-content a {
  text-decoration: underline;
}
.pagination {
  display: flex;
  justify-content: space-between;
  margin: 20px auto;
}
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}
.screen-reader-text:focus {
  background-color: #eee;
  clip: auto !important;
  clip-path: none;
  color: #333;
  display: block;
  font-size: 1rem;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 12px 24px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}
.post .entry-title a {
  text-decoration: none;
}
.page-header .entry-title,
body[data-page="archive"] .site-main {
  margin-inline-end: auto;
  margin-inline-start: auto;
  width: 100%;
}
@media (max-width: 575px) {
  .page-header .entry-title,
  body[data-page="archive"] .site-main {
    padding-inline-end: 10px;
    padding-inline-start: 10px;
  }
}
@media (min-width: 576px) {
  .page-header .entry-title,
  body[data-page="archive"] .site-main {
    max-width: 500px;
  }
}
@media (min-width: 768px) {
  .page-header .entry-title,
  body[data-page="archive"] .site-main {
    max-width: 600px;
  }
}
@media (min-width: 992px) {
  .page-header .entry-title,
  body[data-page="archive"] .site-main {
    max-width: 800px;
  }
}
@media (min-width: 1200px) {
  .page-header .entry-title,
  body[data-page="archive"] .site-main {
    max-width: 1140px;
  }
}

/* Source: assets/css/components.css */
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
:root {
  --direction-multiplier: 1;
}
.screen-reader-text {
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  top: -10000em;
  width: 1px;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.clearfix:after {
  clear: both;
  content: "";
  display: block;
  height: 0;
  width: 0;
}
.site-surface *,
.site-surface :after,
.site-surface :before {
  box-sizing: border-box;
}
.site-surface a {
  box-shadow: none;
  text-decoration: none;
}
.site-surface img {
  border: none;
  border-radius: 0;
  box-shadow: none;
  height: auto;
  max-width: 100%;
}
.site-surface video {
  border: none;
  line-height: 1;
  margin: 0;
  max-width: 100%;
  width: 100%;
}
@media (max-width: 767px) {
  .mobile-align-center {
    text-align: center;
  }
}
:root {
  --page-title-display: block;
}
h1.entry-title {
  display: var(--page-title-display);
}
.content-block {
  position: relative;
}
.content-block:not(:last-child) {
  margin-block-end: 0;
}
.form-column {
  display: flex;
  min-height: 1px;
  position: relative;
}
@media (min-width: 768px) {
  .form-column.col-50 {
    width: 50%;
  }
  .form-column.col-100 {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .form-column {
    width: 100%;
  }
}
@media (prefers-reduced-motion: no-preference) {
  html {
    scroll-behavior: smooth;
  }
}
.form-fields-wrapper {
  display: flex;
  flex-wrap: wrap;
}
.form-fields-wrapper.labels-above .form-field .form-subgroup,
.form-fields-wrapper.labels-above .form-field > .select-wrapper,
.form-fields-wrapper.labels-above .form-field > input,
.form-fields-wrapper.labels-above .form-field > textarea {
  flex-basis: 100%;
  max-width: 100%;
}
.form-field {
  align-items: center;
  flex-wrap: wrap;
}
.form-field.form-type-submit {
  align-items: flex-end;
}
.form-field .form-textual {
  background-color: transparent;
  border: 1px solid #69727d;
  color: #1f2124;
  flex-grow: 1;
  max-width: 100%;
  vertical-align: middle;
  width: 100%;
}
.form-field .form-textual:focus {
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1);
  outline: 0;
}
.form-field .form-textual::-moz-placeholder {
  color: inherit;
  font-family: inherit;
  opacity: 0.6;
}
.form-field .form-textual::placeholder {
  color: inherit;
  font-family: inherit;
  opacity: 0.6;
}
.form-field .select-wrapper {
  display: flex;
  position: relative;
  width: 100%;
}
.form-field .select-wrapper select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  color: inherit;
  flex-basis: 100%;
  font-family: inherit;
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  padding-inline-end: 20px;
  text-transform: inherit;
}
.form-field .select-wrapper:before {
  content: "\e92a";
  font-family: eicons;
  font-size: 15px;
  inset-block-start: 50%;
  inset-inline-end: 10px;
  pointer-events: none;
  position: absolute;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
  transform: translateY(-50%);
}
.form-subgroup {
  display: flex;
  flex-wrap: wrap;
}
.form-subgroup .form-option label {
  display: inline-block;
}
.form-subgroup .form-option {
  flex-basis: 100%;
}
.form-type-acceptance .form-subgroup .form-option input,
.form-type-acceptance .form-subgroup .form-option label {
  display: inline;
}
.form-label {
  cursor: pointer;
}
.form-textual {
  border-radius: 3px;
  font-size: 15px;
  line-height: 1.4;
  min-height: 40px;
  padding: 5px 14px;
}
.button-align-stretch .form-type-submit .button {
  flex-basis: 100%;
}
.contact-form .button {
  border: none;
  padding-block-end: 0;
  padding-block-start: 0;
}
.contact-form .button-content-wrapper,
.contact-form .button > span {
  display: flex;
  flex-direction: row;
  gap: 5px;
  justify-content: center;
}
.contact-form .button.size-md {
  min-height: 47px;
}
.heading {
  line-height: 1;
  margin: 0;
  padding: 0;
}
.button {
  background-color: #69727d;
  border-radius: 3px;
  display: inline-block;
  fill: var(--color-text-light);
  font-size: 15px;
  line-height: 1;
  padding: 12px 24px;
  text-align: center;
  transition: all 0.3s;
}
.button,
.button:focus,
.button:hover,
.button:visited {
  color: var(--color-text-light);
}
.button-content-wrapper {
  display: flex;
  flex-direction: row;
  gap: 5px;
  justify-content: center;
}
.button-text {
  display: inline-block;
}
.button.size-md {
  border-radius: 4px;
  font-size: 16px;
  padding: 15px 30px;
}
.button span {
  text-decoration: inherit;
}
.view-stacked .icon {
  background-color: #69727d;
  color: var(--color-text-light);
  fill: var(--color-text-light);
  padding: 0.5em;
}
.view-framed .icon {
  background-color: transparent;
  border: 3px solid #69727d;
  color: #69727d;
  padding: 0.5em;
}
.icon {
  display: inline-block;
  font-size: 50px;
  line-height: 1;
  text-align: center;
  transition: all 0.3s;
}
.icon,
.icon:hover {
  color: #69727d;
}
.icon svg {
  display: block;
  height: 1em;
  position: relative;
  width: 1em;
}
.icon svg:before {
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
}
.shape-square .icon {
  border-radius: 0;
}
@media (prefers-reduced-motion: reduce) {
  html * {
    transition-delay: 0s !important;
    transition-duration: 0s !important;
  }
}
@media (max-width: 767px) {
  .site-surface .hide-mobile {
    display: none;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .site-surface .hide-tablet {
    display: none;
  }
}
.accordion {
  text-align: start;
}
.accordion .accordion-item {
  border: 1px solid #d5d8dc;
}
.accordion .accordion-item + .accordion-item {
  border-block-start: none;
}
.accordion .accordion-trigger {
  cursor: pointer;
  font-weight: 700;
  line-height: 1;
  margin: 0;
  outline: none;
  padding: 15px 20px;
}
.accordion .accordion-trigger .accordion-icon {
  display: inline-block;
  width: 1.5em;
}
.accordion .accordion-trigger .accordion-icon svg {
  height: 1em;
  width: 1em;
}
.accordion .accordion-trigger .accordion-icon.accordion-icon-left {
  float: left;
  text-align: left;
}
.accordion .accordion-trigger .accordion-icon .accordion-icon-closed {
  display: block;
}
.accordion .accordion-trigger .accordion-icon .accordion-icon-opened,
.accordion .accordion-trigger.is-active .accordion-icon-closed {
  display: none;
}
.accordion .accordion-trigger.is-active .accordion-icon-opened {
  display: block;
}
.accordion .accordion-panel {
  border-block-start: 1px solid #d5d8dc;
  display: none;
  padding: 15px 20px;
}
@media (max-width: 767px) {
  .accordion .accordion-trigger {
    padding: 12px 15px;
  }
  .accordion .accordion-trigger .accordion-icon {
    width: 1.2em;
  }
  .accordion .accordion-panel {
    padding: 7px 15px;
  }
}
.layout > .faq-block {
  width: initial;
  flex-grow: initial;
}
.contact-detail .icon-box-wrapper {
  display: flex;
  flex-direction: column;
  text-align: center;
}
.contact-detail .icon-box-icon {
  display: inline-block;
  flex: 0 0 auto;
  line-height: 0;
}
.contact-detail .icon-box-content {
  flex-grow: 1;
  width: 100%;
}
.contact-detail .icon-box-description {
  margin: 0;
}
.contact-detail.position-inline-start .icon-box-wrapper {
  flex-direction: row;
  text-align: start;
}
@media (max-width: 767px) {
  .contact-detail.mobile-position-block-start .icon-box-wrapper {
    align-items: unset !important;
    flex-direction: column;
    text-align: center;
  }
}
.content-block .icon-list-items.inline-items {
  display: flex;
  flex-wrap: wrap;
  margin-inline: -8px;
}
.content-block .icon-list-items.inline-items .inline-item {
  word-break: break-word;
}
.content-block .icon-list-items.inline-items .icon-list-item {
  margin-inline: 8px;
}
.content-block .icon-list-items.inline-items .icon-list-item:after {
  border-width: 0;
  border-inline-start-width: 1px;
  border-style: solid;
  height: 100%;
  inset-inline-end: -8px;
  inset-inline-start: auto;
  position: relative;
  width: auto;
}
.content-block .icon-list-items {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.content-block .icon-list-item {
  margin: 0;
  padding: 0;
  position: relative;
}
.content-block .icon-list-item:after {
  inset-block-end: 0;
  position: absolute;
  width: 100%;
}
.content-block .icon-list-item,
.content-block .icon-list-item a {
  align-items: var(--icon-vertical-align, center);
  display: flex;
  font-size: inherit;
}
.content-block .icon-list-icon + .icon-list-text {
  align-self: center;
  padding-inline-start: 5px;
}
.content-block .icon-list-icon {
  display: flex;
  inset-block-start: var(--icon-vertical-offset, initial);
  position: relative;
}
.content-block .icon-list-icon svg {
  height: var(--list-icon-size, 1em);
  width: var(--list-icon-size, 1em);
}
.content-block.icon-list .icon-list-icon {
  text-align: var(--list-icon-align);
}
.content-block.icon-list .icon-list-icon svg {
  margin: var(--list-icon-margin, 0 calc(var(--list-icon-size, 1em) * 0.25) 0 0);
}
.content-block.list-item-link-full_width a {
  width: 100%;
}
.content-block .icon-list-item:after {
  inset-inline-start: 0;
}
.content-block .icon-list-item:after {
  inset-inline-end: 0;
}
@media (min-width: -1) {
  .content-block .icon-list-item:after {
    inset-inline-start: 0;
  }
  .content-block .icon-list-item:after {
    inset-inline-end: 0;
  }
}
@media (max-width: -1) {
  .content-block .icon-list-item:after {
    inset-inline-start: 0;
  }
  .content-block .icon-list-item:after {
    inset-inline-end: 0;
  }
  .content-block .icon-list-item:after {
    inset-inline-start: 0;
  }
  .content-block .icon-list-item:after {
    inset-inline-end: 0;
  }
}
@media (max-width: 1024px) {
  .content-block .icon-list-item:after {
    inset-inline-start: 0;
  }
  .content-block .icon-list-item:after {
    inset-inline-end: 0;
  }
}
@media (max-width: -1) {
  .content-block .icon-list-item:after {
    inset-inline-start: 0;
  }
  .content-block .icon-list-item:after {
    inset-inline-end: 0;
  }
}
@media (max-width: 767px) {
  .content-block.mobile-align-center .icon-list-item,
  .content-block.mobile-align-center .icon-list-item a {
    justify-content: center;
  }
  .content-block.mobile-align-center .icon-list-item:after {
    margin: auto;
  }
  .content-block.mobile-align-center .inline-items {
    justify-content: center;
  }
  .content-block .icon-list-item:after {
    inset-inline-start: 0;
  }
  .content-block .icon-list-item:after {
    inset-inline-end: 0;
  }
}
.image-block {
  text-align: center;
}
.image-block a,
.image-block img {
  display: inline-block;
}
.image-block img {
  vertical-align: middle;
}
.video-block:not(:has(.container)) {
  overflow: hidden;
  transform: translateZ(0);
}
.video-block .wrapper {
  aspect-ratio: var(--video-aspect-ratio);
}
.layout > .video-block {
  width: initial;
  flex-grow: initial;
}
.is-sticky {
  z-index: 99;
}
.layout.is-sticky {
  z-index: var(--z-index, 99);
}
.form-type-tel input {
  direction: inherit;
}
.contact-form .button .button-content-wrapper {
  align-items: center;
}
.contact-form .button .button-text {
  white-space: normal;
}
.contact-form .button .button-content-wrapper {
  gap: 5px;
}
.contact-form .button .button-text {
  flex-grow: unset;
  order: unset;
}
.select-wrapper .select-caret-down-wrapper {
  font-size: 11px;
  inset-inline-end: 10px;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.select-wrapper .select-caret-down-wrapper svg {
  aspect-ratio: unset;
  display: unset;
  fill: currentColor;
  overflow: visible;
  width: 1em;
}
.select-wrapper.remove-before:before {
  content: "" !important;
}
.rich-text {
  font-size: var(--body-font-size);
  font-weight: var(--body-font-weight);
  line-height: var(--body-line-height);
  letter-spacing: inherit;
  word-spacing: inherit;
  color: var(--color-text);
}
.heading-block.heading,
.rich-text {
  font-family: var(--font-family), Sans-serif;
}
.heading-block.heading {
  font-size: inherit;
  font-weight: var(--heading-font-weight);
  line-height: inherit;
  letter-spacing: inherit;
  word-spacing: inherit;
  color: var(--color-primary);
}
@media (max-width: 1024px) {
  .heading-block.heading {
    font-size: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    word-spacing: inherit;
  }
  .button-block .button {
    font-size: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    word-spacing: inherit;
  }
}
@media (max-width: 767px) {
  .heading-block.heading {
    font-size: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    word-spacing: inherit;
  }
  .button-block .button {
    font-size: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    word-spacing: inherit;
  }
}
.icon-block.view-stacked .icon {
  background-color: var(--color-primary);
}
.icon-block.view-default .icon {
  color: var(--color-primary);
  border-color: var(--color-primary);
}
.icon-block.view-default .icon svg {
  fill: var(--color-primary);
}
.button-block .button {
  font-family: var(--font-family), Sans-serif;
  font-size: inherit;
  font-weight: var(--action-font-weight);
  line-height: inherit;
  letter-spacing: inherit;
  word-spacing: inherit;
  background-color: var(--color-accent);
}
@media (max-width: 1024px) {
  .rich-text {
    font-size: var(--body-font-size);
    line-height: var(--body-line-height);
    letter-spacing: inherit;
    word-spacing: inherit;
  }
}
@media (max-width: 767px) {
  .rich-text {
    font-size: var(--body-font-size);
    line-height: var(--body-line-height);
    letter-spacing: inherit;
    word-spacing: inherit;
  }
}
.form-block .form-field > label,
.form-block .form-subgroup label {
  color: var(--color-text);
}
.form-block .form-field > label {
  font-family: var(--font-family), Sans-serif;
  font-size: var(--body-font-size);
  font-weight: var(--body-font-weight);
  line-height: var(--body-line-height);
  letter-spacing: inherit;
  word-spacing: inherit;
}
.form-block .form-field .field {
  color: var(--color-text);
}
.form-block .form-field .field,
.form-block .form-subgroup label {
  font-family: var(--font-family), Sans-serif;
  font-size: var(--body-font-size);
  font-weight: var(--body-font-weight);
  line-height: var(--body-line-height);
  letter-spacing: inherit;
  word-spacing: inherit;
}
.form-block .button {
  font-family: var(--font-family), Sans-serif;
  font-size: inherit;
  font-weight: var(--action-font-weight);
  line-height: inherit;
  letter-spacing: inherit;
  word-spacing: inherit;
}
.form-block .button[type="submit"] {
  background-color: var(--color-accent);
}
.contact-detail.view-framed .icon {
  fill: var(--color-primary);
  color: var(--color-primary);
  border-color: var(--color-primary);
}
.contact-detail .icon-box-title {
  font-family: var(--font-family), Sans-serif;
  font-size: inherit;
  font-weight: var(--heading-font-weight);
  line-height: inherit;
  letter-spacing: inherit;
  word-spacing: inherit;
  color: var(--color-primary);
}
.contact-detail .icon-box-description {
  font-family: var(--font-family), Sans-serif;
  font-size: var(--body-font-size);
  font-weight: var(--body-font-weight);
  line-height: var(--body-line-height);
  letter-spacing: inherit;
  word-spacing: inherit;
  color: var(--color-text);
}
@media (max-width: 1024px) {
  .form-block .form-field .field,
  .form-block .form-field > label,
  .form-block .form-subgroup label {
    font-size: var(--body-font-size);
    line-height: var(--body-line-height);
    letter-spacing: inherit;
    word-spacing: inherit;
  }
  .form-block .button {
    font-size: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    word-spacing: inherit;
  }
  .contact-detail .icon-box-title {
    font-size: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    word-spacing: inherit;
  }
  .contact-detail .icon-box-description {
    font-size: var(--body-font-size);
    line-height: var(--body-line-height);
    letter-spacing: inherit;
    word-spacing: inherit;
  }
}
@media (max-width: 767px) {
  .form-block .form-field .field,
  .form-block .form-field > label,
  .form-block .form-subgroup label {
    font-size: var(--body-font-size);
    line-height: var(--body-line-height);
    letter-spacing: inherit;
    word-spacing: inherit;
  }
  .form-block .button {
    font-size: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    word-spacing: inherit;
  }
  .contact-detail .icon-box-title {
    font-size: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    word-spacing: inherit;
  }
  .contact-detail .icon-box-description {
    font-size: var(--body-font-size);
    line-height: var(--body-line-height);
    letter-spacing: inherit;
    word-spacing: inherit;
  }
}
.icon-list .icon-list-item:not(:last-child):after {
  border-color: var(--color-text);
}
.icon-list .icon-list-icon svg {
  fill: var(--color-primary);
}
.icon-list .icon-list-item > .icon-list-text,
.icon-list .icon-list-item > a {
  font-family: var(--font-family), Sans-serif;
  font-size: var(--body-font-size);
  font-weight: var(--body-font-weight);
  line-height: var(--body-line-height);
  letter-spacing: inherit;
  word-spacing: inherit;
}
.icon-list .icon-list-text {
  color: var(--color-secondary);
}
@media (max-width: 1024px) {
  .icon-list .icon-list-item > .icon-list-text,
  .icon-list .icon-list-item > a {
    font-size: var(--body-font-size);
    line-height: var(--body-line-height);
    letter-spacing: inherit;
    word-spacing: inherit;
  }
}
.site-footer:before,
.site-header:before {
  content: "";
  display: table;
  clear: both;
}
@media (max-width: 1024px) {
  .button-block .button {
    font-size: inherit;
    letter-spacing: inherit;
    word-spacing: inherit;
  }
  .button-block .button {
    line-height: inherit;
  }
}
@media (max-width: 767px) {
  .icon-list .icon-list-item > .icon-list-text,
  .icon-list .icon-list-item > a {
    font-size: var(--body-font-size);
    line-height: var(--body-line-height);
    letter-spacing: inherit;
    word-spacing: inherit;
  }
  .button-block .button {
    font-size: inherit;
    letter-spacing: inherit;
    word-spacing: inherit;
  }
  .button-block .button {
    line-height: inherit;
  }
}
.faq-block .accordion-icon,
.faq-block .accordion-title {
  color: var(--color-primary);
}
.faq-block .accordion-icon svg {
  fill: var(--color-primary);
}
.faq-block .is-active .accordion-icon,
.faq-block .is-active .accordion-title {
  color: var(--color-primary);
}
.faq-block .is-active .accordion-icon svg {
  fill: var(--color-primary);
}
.faq-block .accordion-title {
  font-family: var(--font-family), Sans-serif;
  font-size: inherit;
  font-weight: var(--heading-font-weight);
  line-height: inherit;
  letter-spacing: inherit;
  word-spacing: inherit;
}
.faq-block .accordion-panel {
  color: var(--color-text);
  font-family: var(--font-family), Sans-serif;
  font-size: var(--body-font-size);
  font-weight: var(--body-font-weight);
  line-height: var(--body-line-height);
  letter-spacing: inherit;
  word-spacing: inherit;
}
@media (max-width: 1024px) {
  .faq-block .accordion-title {
    font-size: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    word-spacing: inherit;
  }
  .faq-block .accordion-panel {
    font-size: var(--body-font-size);
    line-height: var(--body-line-height);
    letter-spacing: inherit;
    word-spacing: inherit;
  }
}
@media (max-width: 767px) {
  .faq-block .accordion-title {
    font-size: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    word-spacing: inherit;
  }
  .faq-block .accordion-panel {
    font-size: var(--body-font-size);
    line-height: var(--body-line-height);
    letter-spacing: inherit;
    word-spacing: inherit;
  }
}

/* Retain the spacing of decorative icon slots without loading an icon font. */
.icon-list-icon:empty::before {
  content: "";
  width: calc(var(--list-icon-size, 14px) * 1.25);
}

.icon:empty::before {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
}

.faq-block .accordion-trigger[aria-expanded="true"],
.faq-block .accordion-trigger[aria-expanded="true"] .accordion-title { color: #1670b8; }

/* Source: assets/css/layout.css */
.layout {
  display: flex;
  flex-direction: column;
  flex: 0 1 auto;
  position: relative;
  width: 100%;
  min-width: 0;
  padding: 10px;
  gap: 20px;
  transition:
    background 0.3s,
    border 0.3s,
    box-shadow 0.3s,
    transform 0.4s;
}
.layout.section-shell {
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: normal;
  align-content: normal;
  justify-content: normal;
  gap: 0;
  padding-block: 0;
}
.container {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  width: 100%;
  height: 100%;
  max-width: min(100%, 1140px);
  margin: 0 auto;
  padding-block: 10px;
  gap: 20px;
}
.site-surface > .layout {
  margin-inline: auto;
  max-width: 100%;
}
.content-block {
  position: relative;
  min-width: 0;
  max-width: 100%;
  margin-block-end: 0;
  transition:
    background 0.3s,
    border 0.3s,
    border-radius 0.3s,
    box-shadow 0.3s,
    transform 0.4s;
}
.video-block {
  width: 100%;
}
main .rich-text,
main .heading {
  overflow-wrap: anywhere;
}
.video-block .wrapper > iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}
@media (max-width: 1024px) {
  .container {
    max-width: min(100%, 1024px);
  }
}
@media (max-width: 767px) {
  .container,
  .layout {
    flex-wrap: wrap;
  }
  .container {
    max-width: min(100%, 767px);
  }
}

/* Mobile service cards follow the reference: wide cards and compact leading icons. */
@media (max-width: 767px) {
  .site-surface .layout.mobile-card-section {
    padding-inline: 8px;
  }
  .site-surface .mobile-card-section .rich-text {
    overflow-wrap: anywhere;
    hyphens: auto;
  }
  .site-surface .layout.card-badge {
    align-self: flex-start;
    flex-shrink: 0;
    width: 56px;
  }
  .site-surface .layout.card-badge:not(.card-badge-step) {
    height: 56px;
    min-height: 56px;
    align-items: center;
    justify-content: center;
    padding: 0;
    gap: 0;
    border-radius: 14px;
  }
  .site-surface .layout.card-badge .icon-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 0;
  }
  .site-surface .layout.card-badge .icon {
    display: block;
    padding: 0;
    font-size: 26px;
    line-height: 1;
  }
  .site-surface .layout.card-badge .icon svg {
    width: 1em;
    height: 1em;
  }
  .site-surface .layout.card-badge-step {
    width: 46px;
  }
}

/* Source: assets/css/home.css */
.home {
  --home-gutter: clamp(24px, 5vw, 140px);
}
.home .home-hero {
  display: flex;
  padding-left: var(--home-gutter);
  padding-right: var(--home-gutter);
}
.home .home-hero > .container {
  flex-direction: column;
  padding-top: 140px;
  padding-bottom: 140px;
}
.home .home-hero {
  background-image: url("../../images/nlm-analytics.jpg");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
}
.home .home-hero-inner {
  display: flex;
  flex-direction: row;
  row-gap: 0;
  column-gap: 0;
  flex-wrap: wrap;
  padding: 0;
}
.home .home-hero-content {
  display: flex;
  flex-direction: column;
  row-gap: 0;
  column-gap: 0;
  padding: 0;
}
.home .home-seo-agentur-stuttgart-seit-2001-text {
  margin: 0 0 16px;
  font-family: Roboto, Sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 22px;
  letter-spacing: 0.3px;
  color: var(--color-secondary);
}
.home .home-hero-heading {
  display: flex;
}
.home .home-hero-heading > .container {
  flex-direction: row;
  align-items: center;
  row-gap: 18px;
  column-gap: 18px;
  flex-wrap: wrap;
}
.home .home-hero-title.heading {
  font-family: Roboto, Sans-serif;
  font-size: 64px;
  font-weight: 800;
  line-height: 68px;
  letter-spacing: -1.28px;
  color: var(--color-text-light);
}
.home .home-wir-sorgen-dafur-dass-ihre-webseite-text {
  font-family: Roboto, Sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
  color: #b9c9db;
}
.home .home-jetzt-kostenfrei-anfragen-referenzen-ansehen-group {
  display: flex;
  flex-direction: row;
  row-gap: 14px;
  column-gap: 14px;
  flex-wrap: wrap;
  padding: 0;
}
.home .home-jetzt-kostenfrei-anfragen-action .button {
  letter-spacing: 0.16px;
  padding: 16px 34px;
}
.home .home-jetzt-kostenfrei-anfragen-action .button,
.home .home-referenzen-ansehen-action .button {
  font-family: Roboto, Sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 26px;
  fill: var(--color-text-light);
  color: var(--color-text-light);
  border-radius: 999px 999px 999px 999px;
}
.home .home-referenzen-ansehen-action .button {
  letter-spacing: 0.5px;
  padding: 16px 30px;
}
.home .home-suchmaschinenoptimierung-suchmaschinenwerbung-content-marketing-social-media-text {
  font-family: Roboto, Sans-serif;
  font-size: 15px;
  font-weight: 500;
  line-height: 24px;
  color: var(--color-text-light);
}
.home .home-hero-results {
  display: flex;
  min-height: 424px;
  flex-direction: column;
  row-gap: 16px;
  column-gap: 0;
  padding: 0;
}
.home .home-ranking-card {
  display: flex;
  flex-direction: column;
  row-gap: 10px;
  column-gap: 10px;
  border-radius: 22px 22px 22px 22px;
  padding: 24px 26px;
}
.home .home-ranking-card {
  background-color: hsla(0, 0%, 100%, 0.09);
}
.home .home-google-ranking-seo-stuttgart-text {
  font-family: Roboto, Sans-serif;
  font-size: 13px;
  font-weight: 600;
  line-height: 20px;
  color: #afc4da;
}
.home .home--text {
  font-family: Roboto, Sans-serif;
  font-size: 44px;
  font-weight: 400;
  line-height: 64px;
  color: #5bd98a;
}
.home .home-platz-1-3-positionen-text {
  font-family: Roboto, Sans-serif;
  font-size: 26px;
  font-weight: 800;
  line-height: 32px;
  color: var(--color-text-light);
}
.home .home-traffic-card {
  display: flex;
  flex-direction: column;
  row-gap: 6px;
  column-gap: 6px;
  border-radius: 22px 22px 22px 22px;
  padding: 20px 22px;
}
.home .home-traffic-card {
  background-color: hsla(0, 0%, 100%, 0.09);
}
.home .home-organischer-traffic-text {
  font-family: Roboto, Sans-serif;
  font-size: 13px;
  font-weight: 600;
  line-height: 20px;
  color: #afc4da;
}
.home .home-187-text {
  font-family: Roboto, Sans-serif;
  font-size: 30px;
  font-weight: 800;
  line-height: 36px;
  color: var(--color-text-light);
}
.home .home--text-organischer-traffic-187 {
  font-family: Roboto, Sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 22px;
  color: #5bd98a;
}
.home .home-about {
  display: flex;
  flex-direction: column;
  padding: 120px var(--home-gutter) 0;
}
.home .home-about {
  background-color: var(--color-text-light);
  container-type: inline-size;
  overflow: clip;
}
.home .home-seo-sea-responsive-webdesign-online-marketing-section {
  display: flex;
  padding-left: 0;
  padding-right: 0;
}
.home .home-seo-sea-responsive-webdesign-online-marketing-section > .container {
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  row-gap: 40px;
  column-gap: 40px;
  flex-wrap: wrap;
  padding-top: 0;
  padding-bottom: 0;
}
.home .home-seo-sea-responsive-webdesign-online-marketing-group {
  display: flex;
  flex-direction: column;
  row-gap: 0;
  column-gap: 0;
  padding: 0;
}
.home .home-newlight-media-text {
  margin: 0 0 8px;
  font-family: Roboto, Sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
  color: var(--color-border-muted);
}
.home .home-seo-sea-responsive-webdesign-online-marketing-title {
  margin: 0 0 16px;
}
.home .home-seo-sea-responsive-webdesign-online-marketing-title.heading {
  font-family: Roboto, Sans-serif;
  font-size: 44px;
  font-weight: 800;
  line-height: 49px;
  letter-spacing: -0.8832px;
  color: var(--color-text);
}
.home .home-seit-dem-jahr-2001-realisiert-newlight-text {
  margin: 0 0 14px;
  font-family: Roboto, Sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
  color: var(--color-border-muted);
}
.home .home-wir-verstehen-ihre-ziele-und-die-text {
  margin: 0 0 24px;
  font-family: Roboto, Sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
  color: var(--color-border-muted);
}
.home .home-mehr-zur-agentur-section {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  padding: 0;
}
.home .home-mehr-zur-agentur-action .button {
  font-family: Roboto, Sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 26px;
  letter-spacing: 0.16px;
  fill: var(--color-text-light);
  color: var(--color-text-light);
  border-radius: 999px 999px 999px 999px;
  padding: 16px 34px;
}
.home .home-newlight-media-seo-sea-responsive-webdesign-section {
  display: flex;
  flex-direction: column;
  row-gap: 0;
  column-gap: 0;
  padding: 0;
}
.home .home-blb-image {
  padding: 1px;
  text-align: center;
}
.home .home-blb-image img {
  width: 346px;
}
.home .home-services {
  display: flex;
  flex-direction: column;
  padding: 100px var(--home-gutter);
}
.home .home-services {
  background-color: var(--color-section-bg);
}
.home .home-alles-fur-ihren-digitalen-erfolg-aus-section {
  display: flex;
  padding-left: 0;
  padding-right: 0;
}
.home .home-alles-fur-ihren-digitalen-erfolg-aus-section > .container {
  flex-direction: column;
  row-gap: 32px;
  column-gap: 32px;
  padding-top: 0;
  padding-bottom: 0;
}
.home .home-alles-fur-ihren-digitalen-erfolg-aus-group {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 0;
  column-gap: 0;
  padding: 0;
}
.home .home-unsere-leistungen-text {
  margin: 0 0 8px;
  text-align: center;
  font-family: Roboto, Sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
  color: var(--color-border-muted);
}
.home .home-alles-fur-ihren-digitalen-erfolg-aus-title {
  margin: 0 0 14px;
  text-align: center;
}
.home .home-alles-fur-ihren-digitalen-erfolg-aus-title.heading {
  font-family: Roboto, Sans-serif;
  font-size: 44px;
  font-weight: 800;
  line-height: 49px;
  letter-spacing: -0.8832px;
  color: var(--color-text);
}
.home .home-von-der-sichtbarkeit-bei-google-bis-text {
  text-align: center;
  font-family: Roboto, Sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
  color: var(--color-border-muted);
}
.home .home-services-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 22px;
  padding: 0;
}
/* Leave room for the longest service heading, including the card padding. */
@media (min-width: 640px) {
  .home .home-services-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 1280px) {
  .home .home-services-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
.home .home-services-grid .heading,
.home .home-blog-grid .heading {
  overflow-wrap: anywhere;
  hyphens: auto;
}
.home .home-service-seo {
  display: flex;
  flex-direction: column;
  row-gap: 12px;
  column-gap: 12px;
  border-radius: 24px 24px 24px 24px;
  padding: 30px;
}
.home .home-service-seo {
  background-color: var(--color-text-light);
}
.home .home-suchmaschinen-optimierung-wir-sorgen-dafur-dass-icon .icon-wrapper {
  text-align: center;
}
.home .home-suchmaschinen-optimierung-wir-sorgen-dafur-dass-icon.view-stacked .icon {
  background-color: var(--color-text-light);
  color: var(--color-primary);
}
.home .home-suchmaschinen-optimierung-wir-sorgen-dafur-dass-icon.view-stacked .icon svg {
  fill: var(--color-primary);
}
.home .home-suchmaschinen-optimierung-wir-sorgen-dafur-dass-icon .icon {
  font-size: 48px;
  padding: 10px;
}
.home .home-suchmaschinen-optimierung-wir-sorgen-dafur-dass-icon .icon svg {
  height: 48px;
}
.home .home-suchmaschinen-optimierung-title.heading {
  font-family: Roboto, Sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 32px;
  color: var(--color-text);
}
.home .home-wir-sorgen-dafur-dass-ihre-webseite-text-suchmaschinen-optimierung {
  font-family: Roboto, Sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
  color: var(--color-border-muted);
}
.home .home-service-sea {
  display: flex;
  flex-direction: column;
  row-gap: 12px;
  column-gap: 12px;
  border-radius: 24px 24px 24px 24px;
  padding: 30px;
}
.home .home-service-sea {
  background-color: var(--color-text-light);
}
.home .home-suchmaschinen-werbung-wir-richten-ihre-google-icon .icon-wrapper {
  text-align: center;
}
.home .home-suchmaschinen-werbung-wir-richten-ihre-google-icon.view-stacked .icon {
  background-color: var(--color-text-light);
  color: var(--color-primary);
}
.home .home-suchmaschinen-werbung-wir-richten-ihre-google-icon.view-stacked .icon svg {
  fill: var(--color-primary);
}
.home .home-suchmaschinen-werbung-wir-richten-ihre-google-icon .icon {
  font-size: 48px;
  padding: 10px;
}
.home .home-suchmaschinen-werbung-wir-richten-ihre-google-icon .icon svg {
  height: 48px;
}
.home .home-suchmaschinen-werbung-title.heading {
  font-family: Roboto, Sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 32px;
  color: var(--color-text);
}
.home .home-wir-richten-ihre-google-bing-ads-text {
  font-family: Roboto, Sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
  color: var(--color-border-muted);
}
.home .home-service-content {
  display: flex;
  flex-direction: column;
  row-gap: 12px;
  column-gap: 12px;
  border-radius: 24px 24px 24px 24px;
  padding: 30px;
}
.home .home-service-content {
  background-color: var(--color-text-light);
}
.home .home-content-marketing-wir-erstellen-hochwertigen-content-icon .icon-wrapper {
  text-align: center;
}
.home .home-content-marketing-wir-erstellen-hochwertigen-content-icon.view-stacked .icon {
  background-color: var(--color-text-light);
  color: var(--color-primary);
}
.home .home-content-marketing-wir-erstellen-hochwertigen-content-icon.view-stacked .icon svg {
  fill: var(--color-primary);
}
.home .home-content-marketing-wir-erstellen-hochwertigen-content-icon .icon {
  font-size: 48px;
  padding: 10px;
}
.home .home-content-marketing-wir-erstellen-hochwertigen-content-icon .icon svg {
  height: 48px;
}
.home .home-content-marketing-title.heading {
  font-family: Roboto, Sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 32px;
  color: var(--color-text);
}
.home .home-wir-erstellen-hochwertigen-content-um-ihre-text {
  font-family: Roboto, Sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
  color: var(--color-border-muted);
}
.home .home-service-social {
  display: flex;
  flex-direction: column;
  row-gap: 12px;
  column-gap: 12px;
  border-radius: 24px 24px 24px 24px;
  padding: 30px;
}
.home .home-service-social {
  background-color: var(--color-text-light);
}
.home .home-social-media-marketing-professionelle-accounts-bei-icon .icon-wrapper {
  text-align: center;
}
.home .home-social-media-marketing-professionelle-accounts-bei-icon.view-stacked .icon {
  background-color: var(--color-text-light);
  color: var(--color-primary);
}
.home .home-social-media-marketing-professionelle-accounts-bei-icon.view-stacked .icon svg {
  fill: var(--color-primary);
}
.home .home-social-media-marketing-professionelle-accounts-bei-icon .icon {
  font-size: 48px;
  padding: 10px;
}
.home .home-social-media-marketing-professionelle-accounts-bei-icon .icon svg {
  height: 48px;
}
.home .home-social-media-marketing-title.heading {
  font-family: Roboto, Sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 32px;
  color: var(--color-text);
}
.home .home-professionelle-accounts-bei-facebook-instagram-youtube-text {
  font-family: Roboto, Sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
  color: var(--color-border-muted);
}
.home .home-partners {
  display: flex;
  flex-direction: column;
  padding: 80px var(--home-gutter);
}
.home .home-partners {
  background-color: var(--color-text-light);
}
.home .home-zertifiziert-ausgezeichnet-section {
  display: flex;
  padding-left: 0;
  padding-right: 0;
}
.home .home-zertifiziert-ausgezeichnet-section > .container {
  flex-direction: column;
  row-gap: 24px;
  column-gap: 24px;
  padding-top: 0;
  padding-bottom: 0;
}
.home .home-zertifiziert-ausgezeichnet-text {
  text-align: center;
  font-family: Roboto, Sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
  color: var(--color-border-muted);
}
.home .home-consultation {
  display: flex;
  flex-direction: column;
  padding: 100px var(--home-gutter);
}
.home .home-consultation {
  background-color: transparent;
  background-image: linear-gradient(120deg, #0f5490, var(--color-primary));
}
.home .home-2001-section {
  display: flex;
  padding-left: 0;
  padding-right: 0;
}
.home .home-2001-section > .container {
  flex-direction: column;
  row-gap: 32px;
  column-gap: 32px;
  padding-top: 0;
  padding-bottom: 0;
}
.home .home-2001-group {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  row-gap: 32px;
  column-gap: 32px;
  flex-wrap: wrap;
  padding: 0;
}
.home .home-2001-group-2001 {
  display: flex;
  flex-direction: column;
  row-gap: 0;
  column-gap: 0;
  padding: 0;
}
.home .home-2001-title {
  margin: 0 0 12px;
}
.home .home-2001-title.heading {
  font-family: Roboto, Sans-serif;
  font-size: 48px;
  font-weight: 700;
  line-height: 56px;
  color: var(--color-text-light);
}
.home .home-gegrundet-in-stuttgart-text {
  font-family: Roboto, Sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
  color: var(--color-text-light);
}
.home .home-20-group {
  display: flex;
  flex-direction: column;
  row-gap: 0;
  column-gap: 0;
  padding: 0;
}
.home .home-20-title {
  margin: 0 0 12px;
}
.home .home-20-title.heading {
  font-family: Roboto, Sans-serif;
  font-size: 48px;
  font-weight: 700;
  line-height: 56px;
  color: var(--color-text-light);
}
.home .home-jahre-online-marketing-text {
  font-family: Roboto, Sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
  color: var(--color-text-light);
}
.home .home-4-group {
  display: flex;
  flex-direction: column;
  row-gap: 0;
  column-gap: 0;
  padding: 0;
}
.home .home-4-title {
  margin: 0 0 12px;
}
.home .home-4-title.heading {
  font-family: Roboto, Sans-serif;
  font-size: 48px;
  font-weight: 700;
  line-height: 56px;
  color: var(--color-text-light);
}
.home .home-kernleistungen-text {
  font-family: Roboto, Sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
  color: var(--color-text-light);
}
.home .home-individuelle-beratung-massgeschneidertes-angebot-group {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  row-gap: 0;
  column-gap: 0;
  padding: 0;
}
.home .home-individuelle-beratung-massgeschneidertes-angebot-title {
  margin: 0 0 24px;
}
.home .home-individuelle-beratung-massgeschneidertes-angebot-title.heading {
  font-family: Roboto, Sans-serif;
  font-size: 31px;
  font-weight: 800;
  line-height: 34px;
  letter-spacing: -0.6112px;
  color: var(--color-text-light);
}
.home .home-jetzt-kostenfrei-unverbindlich-anfragen-action .button {
  background-color: var(--color-text-light);
  font-family: Roboto, Sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 26px;
  letter-spacing: 0.5px;
  fill: var(--color-primary);
  color: var(--color-primary);
  border-radius: 999px 999px 999px 999px;
  padding: 16px 34px;
}
.home .home-blog {
  display: flex;
  flex-direction: column;
  padding: 100px var(--home-gutter);
}
.home .home-blog {
  background-color: var(--color-text-light);
}
.home .home-wissen-das-ihr-marketing-weiterbringt-section {
  display: flex;
  padding-left: 0;
  padding-right: 0;
}
.home .home-wissen-das-ihr-marketing-weiterbringt-section > .container {
  flex-direction: column;
  row-gap: 44px;
  column-gap: 44px;
  padding-top: 0;
  padding-bottom: 0;
}
.home .home-wissen-das-ihr-marketing-weiterbringt-group {
  display: flex;
  flex-direction: column;
  row-gap: 0;
  column-gap: 0;
  padding: 0;
}
.home .home-aus-dem-blog-text {
  margin: 0 0 8px;
  font-family: Roboto, Sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
  color: var(--color-border-muted);
}
.home .home-wissen-das-ihr-marketing-weiterbringt-title.heading {
  font-family: Roboto, Sans-serif;
  font-size: 44px;
  font-weight: 800;
  line-height: 49px;
  letter-spacing: -0.8832px;
  color: var(--color-text);
}
.home .home-blog-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
  gap: 24px;
  padding: 0;
}
.home .home-5-tipps-fur-eine-schnelle-website-group {
  display: flex;
  flex-direction: column;
  row-gap: 0;
  column-gap: 0;
  border-radius: 24px 24px 24px 24px;
  padding: 0;
}
.home .home-5-tipps-fur-eine-schnelle-website-group {
  background-color: var(--color-text-light);
}
.home .home-nlm-blog-perf-image img {
  width: 100%;
}
.home .home-5-tipps-fur-eine-schnelle-website-group-5-tipps-fur-eine {
  display: flex;
  flex-direction: column;
  row-gap: 8px;
  column-gap: 8px;
  padding: 22px 22px 26px;
}
.home .home-blog-webdesign-text {
  font-family: Roboto, Sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
  color: var(--color-border-muted);
}
.home .home-5-tipps-fur-eine-schnelle-website-title.heading {
  font-family: Roboto, Sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 32px;
  color: var(--color-text);
}
.home .home-social-media-fur-unternehmen-4-tipps-group {
  display: flex;
  flex-direction: column;
  row-gap: 0;
  column-gap: 0;
  border-radius: 24px 24px 24px 24px;
  padding: 0;
}
.home .home-social-media-fur-unternehmen-4-tipps-group {
  background-color: var(--color-text-light);
}
.home .home-nlm-blog-social-image img {
  width: 100%;
}
.home .home-social-media-fur-unternehmen-4-tipps-group-social-media-fur-unternehmen {
  display: flex;
  flex-direction: column;
  row-gap: 8px;
  column-gap: 8px;
  padding: 22px 22px 26px;
}
.home .home-blog-online-marketing-text {
  font-family: Roboto, Sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
  color: var(--color-border-muted);
}
.home .home-social-media-fur-unternehmen-4-tipps-title.heading {
  font-family: Roboto, Sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 32px;
  color: var(--color-text);
}
.home .home-datenschutz-grundverordnung-welche-anderungen-sind-wichtig-group {
  display: flex;
  flex-direction: column;
  row-gap: 0;
  column-gap: 0;
  border-radius: 24px 24px 24px 24px;
  padding: 0;
}
.home .home-datenschutz-grundverordnung-welche-anderungen-sind-wichtig-group {
  background-color: var(--color-text-light);
}
.home .home-nlm-blog-dsgvo-image img {
  width: 100%;
}
.home
  .home-datenschutz-grundverordnung-welche-anderungen-sind-wichtig-group-datenschutz-grundverordnung-welche-anderungen {
  display: flex;
  flex-direction: column;
  row-gap: 8px;
  column-gap: 8px;
  padding: 22px 22px 26px;
}
.home .home-blog-datenschutz-text {
  font-family: Roboto, Sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
  color: var(--color-border-muted);
}
.home .home-datenschutz-grundverordnung-welche-anderungen-sind-wichtig-title.heading {
  font-family: Roboto, Sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 32px;
  color: var(--color-text);
}
.home .home-seo {
  display: flex;
  flex-direction: column;
  padding: 96px var(--home-gutter);
}
.home .home-seo {
  background-color: var(--color-section-bg);
}
.home .home-wie-wichtig-ist-ihnen-das-wachstum-section {
  display: flex;
  padding-left: 0;
  padding-right: 0;
}
.home .home-wie-wichtig-ist-ihnen-das-wachstum-section > .container {
  flex-direction: row;
  align-items: flex-start;
  row-gap: 48px;
  column-gap: 48px;
  flex-wrap: wrap;
  padding-top: 0;
  padding-bottom: 0;
}
.home .home-wie-wichtig-ist-ihnen-das-wachstum-group {
  display: flex;
  flex-direction: column;
  row-gap: 0;
  column-gap: 0;
  padding: 0;
}
.home .home-ihre-seo-agentur-fur-stuttgart-text {
  margin: 0 0 13px;
  font-family: Roboto, Sans-serif;
  font-size: 13px;
  font-weight: 700;
  line-height: 20px;
  letter-spacing: 1.792px;
  color: var(--color-primary);
}
.home .home-wie-wichtig-ist-ihnen-das-wachstum-title {
  margin: 0 0 26px;
}
.home .home-wie-wichtig-ist-ihnen-das-wachstum-title.heading {
  font-family: Roboto, Sans-serif;
  font-size: 44px;
  font-weight: 800;
  line-height: 49px;
  letter-spacing: -0.8832px;
  color: var(--color-text);
}
.home .home-setzen-sie-alle-notwendigen-instrumente-ein-title {
  margin: 0 0 10px;
}
.home .home-setzen-sie-alle-notwendigen-instrumente-ein-title.heading {
  font-family: Roboto, Sans-serif;
  font-size: 18px;
  font-weight: 700;
  line-height: 26px;
  color: var(--color-primary);
}
.home .home-newlight-media-ist-mit-uber-20-text {
  margin: 0 0 26px;
  font-family: Roboto, Sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
  color: var(--color-border-muted);
}
.home .home-unsere-seo-agentur-fur-stuttgart-title {
  margin: 0 0 10px;
}
.home .home-unsere-seo-agentur-fur-stuttgart-title.heading {
  font-family: Roboto, Sans-serif;
  font-size: 18px;
  font-weight: 700;
  line-height: 26px;
  color: var(--color-primary);
}
.home .home-zuerst-wird-das-suchpotenzial-analysiert-dann-text {
  margin: 0 0 26px;
  font-family: Roboto, Sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
  color: var(--color-border-muted);
}
.home .home-suchmaschinenoptimierung-stuttgart-title {
  margin: 0 0 10px;
}
.home .home-suchmaschinenoptimierung-stuttgart-title.heading {
  font-family: Roboto, Sans-serif;
  font-size: 18px;
  font-weight: 700;
  line-height: 26px;
  color: var(--color-primary);
}
.home .home-wir-legen-grossen-wert-auf-eine-text {
  margin: 0 0 26px;
  font-family: Roboto, Sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
  color: var(--color-border-muted);
}
.home .home-unsere-leistungen-group {
  display: flex;
  flex-direction: column;
  row-gap: 0;
  column-gap: 0;
  padding: 0;
}
.home .home-unsere-leistungen-title {
  margin: 0 0 14px;
}
.home .home-unsere-leistungen-title.heading {
  font-family: Roboto, Sans-serif;
  font-size: 18px;
  font-weight: 700;
  line-height: 25px;
  color: var(--color-text);
}
.home
  .home-suchmaschinenoptimierung-ki-seo-ai-seo-geo-links
  .icon-list-items:not(.inline-items)
  .icon-list-item:not(:last-child) {
  padding-block-end: 5px;
}
.home
  .home-suchmaschinenoptimierung-ki-seo-ai-seo-geo-links
  .icon-list-items:not(.inline-items)
  .icon-list-item:not(:first-child) {
  margin-block-start: 5px;
}
.home .home-suchmaschinenoptimierung-ki-seo-ai-seo-geo-links .icon-list-icon svg {
  transition: fill 0.3s;
}
.home .home-suchmaschinenoptimierung-ki-seo-ai-seo-geo-links {
  --list-icon-size: 14px;
  --icon-vertical-offset: 0px;
}
.home .home-suchmaschinenoptimierung-ki-seo-ai-seo-geo-links .icon-list-text {
  color: var(--color-text);
  transition: color 0.3s;
}
@media (max-width: 1024px) {
  .home .home-hero > .container {
    padding-top: 100px;
    padding-bottom: 100px;
  }
  .home .home-hero-inner {
    flex-direction: column;
  }
  .home .home-hero-title.heading {
    font-size: 44px;
  }
  .home .home-about {
    padding: 80px var(--home-gutter) 60px;
  }
  .home .home-seo-sea-responsive-webdesign-online-marketing-title.heading {
    font-size: 36px;
  }
  .home .home-services {
    padding: 80px var(--home-gutter);
  }
  .home .home-alles-fur-ihren-digitalen-erfolg-aus-title.heading {
    font-size: 36px;
  }
  .home .home-partners {
    padding: 60px var(--home-gutter);
  }
  .home .home-blog,
  .home .home-consultation {
    padding: 80px var(--home-gutter);
  }
  .home .home-wissen-das-ihr-marketing-weiterbringt-title.heading {
    font-size: 36px;
  }
  .home .home-seo {
    padding: 80px var(--home-gutter);
  }
  .home .home-wie-wichtig-ist-ihnen-das-wachstum-title.heading {
    font-size: 36px;
  }
}
@media (max-width: 767px) {
  .home .home-hero > .container {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .home .home-hero-inner {
    flex-direction: column;
    row-gap: 32px;
  }
  .home .home-hero-content {
    width: 100%;
  }
  .home .home-hero-title.heading {
    font-size: 40px;
  }
  .home .home-jetzt-kostenfrei-anfragen-referenzen-ansehen-group {
    flex-direction: column;
  }
  .home .home-hero-results {
    width: 100%;
    min-height: 0;
  }
  .home .home-about {
    padding: 60px var(--home-gutter) 40px;
  }
  .home .home-seo-sea-responsive-webdesign-online-marketing-group {
    width: 100%;
  }
  .home .home-seo-sea-responsive-webdesign-online-marketing-title.heading {
    font-size: 32px;
  }
  .home .home-newlight-media-seo-sea-responsive-webdesign-section {
    width: 100%;
  }
  .home .home-services {
    padding: 60px var(--home-gutter);
  }
  .home .home-alles-fur-ihren-digitalen-erfolg-aus-title.heading {
    font-size: 32px;
  }
  .home .home-service-seo {
    width: 100%;
  }
  .home .home-suchmaschinen-optimierung-title.heading {
    font-size: 20px;
  }
  .home .home-service-sea {
    width: 100%;
  }
  .home .home-suchmaschinen-werbung-title.heading {
    font-size: 20px;
  }
  .home .home-service-content {
    width: 100%;
  }
  .home .home-content-marketing-title.heading {
    font-size: 20px;
  }
  .home .home-service-social {
    width: 100%;
  }
  .home .home-social-media-marketing-title.heading {
    font-size: 20px;
  }
  .home .home-partners {
    padding: 60px var(--home-gutter);
  }
  .home .home-consultation {
    padding: 80px var(--home-gutter);
  }
  .home .home-2001-group {
    flex-direction: column;
  }
  .home .home-2001-group-2001 {
    width: 100%;
  }
  .home .home-2001-title.heading {
    font-size: 40px;
  }
  .home .home-20-group {
    width: 100%;
  }
  .home .home-20-title.heading {
    font-size: 40px;
  }
  .home .home-4-group {
    width: 100%;
  }
  .home .home-4-title.heading {
    font-size: 40px;
  }
  .home .home-individuelle-beratung-massgeschneidertes-angebot-title.heading {
    font-size: 28px;
  }
  .home .home-blog {
    padding: 80px var(--home-gutter);
  }
  .home .home-wissen-das-ihr-marketing-weiterbringt-title.heading {
    font-size: 32px;
  }
  .home .home-5-tipps-fur-eine-schnelle-website-group {
    width: 100%;
  }
  .home .home-5-tipps-fur-eine-schnelle-website-title.heading {
    font-size: 20px;
  }
  .home .home-social-media-fur-unternehmen-4-tipps-group {
    width: 100%;
  }
  .home .home-social-media-fur-unternehmen-4-tipps-title.heading {
    font-size: 20px;
  }
  .home .home-datenschutz-grundverordnung-welche-anderungen-sind-wichtig-group {
    width: 100%;
  }
  .home .home-datenschutz-grundverordnung-welche-anderungen-sind-wichtig-title.heading {
    font-size: 20px;
  }
  .home .home-seo {
    padding: 60px var(--home-gutter);
  }
  .home .home-wie-wichtig-ist-ihnen-das-wachstum-group {
    width: 100%;
  }
  .home .home-wie-wichtig-ist-ihnen-das-wachstum-title.heading {
    font-size: 32px;
  }
  .home .home-unsere-leistungen-group {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .home .home-hero > .container {
    max-width: 1240px;
  }
  .home .home-hero-inner {
    width: 100%;
  }
  .home .home-hero-content,
  .home .home-hero-results {
    width: 50%;
  }
  .home .home-seo-sea-responsive-webdesign-online-marketing-section > .container {
    max-width: 1160px;
  }
  .home .home-seo-sea-responsive-webdesign-online-marketing-group {
    width: 55%;
  }
  .home .home-newlight-media-seo-sea-responsive-webdesign-section {
    width: 33%;
  }
  .home .home-alles-fur-ihren-digitalen-erfolg-aus-section > .container {
    max-width: 1160px;
  }
  .home .home-2001-section > .container,
  .home .home-zertifiziert-ausgezeichnet-section > .container {
    max-width: 1160px;
  }
  .home .home-20-group,
  .home .home-2001-group-2001,
  .home .home-4-group {
    width: 30%;
  }
  .home .home-wissen-das-ihr-marketing-weiterbringt-section > .container {
    max-width: 1160px;
  }
  .home .home-wie-wichtig-ist-ihnen-das-wachstum-section > .container {
    max-width: 1160px;
  }
  .home .home-wie-wichtig-ist-ihnen-das-wachstum-group {
    width: 700px;
  }
  .home .home-unsere-leistungen-group {
    width: 412px;
  }
}
@media (max-width: 1024px) and (min-width: 768px) {
  .home .home-hero-content,
  .home .home-hero-results,
  .home .home-newlight-media-seo-sea-responsive-webdesign-section,
  .home .home-seo-sea-responsive-webdesign-online-marketing-group {
    width: 100%;
  }
  .home .home-unsere-leistungen-group,
  .home .home-wie-wichtig-ist-ihnen-das-wachstum-group {
    width: 100%;
  }
}
.home .home-seo-agentur-stuttgart-seit-2001-text p {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(46, 139, 214, 0.12);
  border: 1px solid rgba(46, 139, 214, 0.35);
  border-radius: 999px;
  padding: 6px 16px 6px 14px;
  margin: 0;
}

.home .home-wir-sorgen-dafur-dass-ihre-webseite-text {
  margin-top: 22px;
}
.home .home-jetzt-kostenfrei-anfragen-action .button {
  white-space: nowrap;
  background-image: linear-gradient(
    135deg,
    var(--color-secondary),
    var(--color-primary) 55%,
    #0d4f86
  ) !important;
  box-shadow: 0 12px 26px -10px rgba(22, 112, 184, 0.6) !important;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}
.home .home-jetzt-kostenfrei-anfragen-action .button:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 34px -12px rgba(22, 112, 184, 0.78) !important;
}
.home .home-referenzen-ansehen-action .button {
  white-space: nowrap;
  transition:
    transform 0.2s ease,
    background-color 0.2s ease,
    border-color 0.2s ease;
  background-color: hsla(0, 0%, 100%, 0.08) !important;
  border: 1px solid hsla(0, 0%, 100%, 0.25) !important;
}
.home .home-referenzen-ansehen-action .button:hover {
  transform: translateY(-3px);
  background-color: hsla(0, 0%, 100%, 0.16) !important;
  border-color: hsla(0, 0%, 100%, 0.5) !important;
}
.home .home-jetzt-kostenfrei-anfragen-referenzen-ansehen-group {
  margin-top: 30px;
}
.home .home-suchmaschinenoptimierung-suchmaschinenwerbung-content-marketing-social-media-text {
  margin-top: 24px;
}
.home .home-suchmaschinenoptimierung-suchmaschinenwerbung-content-marketing-social-media-text p {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0;
}
.home .home-suchmaschinenoptimierung-suchmaschinenwerbung-content-marketing-social-media-text span {
  background: hsla(0, 0%, 100%, 0.09);
  border: 1px solid hsla(0, 0%, 100%, 0.16);
  border-radius: 999px;
  padding: 7px 14px;
}
.home .home--text p {
  letter-spacing: 6px;
  margin: 0;
}
.home .home-platz-1-3-positionen-text p {
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin: 0;
}
.home .home-platz-1-3-positionen-text span {
  font-size: 14px;
  font-weight: 600;
  color: #5bd98a;
}
.home .home-ranking-card {
  position: absolute !important;
  left: 11px;
  top: 37px;
  width: 451px;
  max-width: calc(100% - 11px);
  border: 1px solid hsla(0, 0%, 100%, 0.16);
  backdrop-filter: blur(6px);
  transition:
    transform 0.25s ease,
    background-color 0.25s ease,
    border-color 0.25s ease;
}
.home .home-ranking-card:hover {
  transform: translateY(-4px);
  background-color: hsla(0, 0%, 100%, 0.14) !important;
  border-color: hsla(0, 0%, 100%, 0.3) !important;
}
@media (max-width: 767px) {
  .home .home-ranking-card {
    position: relative !important;
    left: 0;
    top: 0;
    width: 100%;
    max-width: 100%;
  }
  .home .home--text {
    font-size: clamp(28px, 8vw, 44px);
  }
}
.home .home--text-organischer-traffic-187 {
  letter-spacing: 3px;
}
.home .home-traffic-card {
  position: absolute !important;
  left: clamp(0px, calc(100% - 236px), 301px);
  top: 246px;
  width: 236px;
  max-width: 100%;
  border: 1px solid hsla(0, 0%, 100%, 0.16);
  backdrop-filter: blur(6px);
  transition:
    transform 0.25s ease,
    background-color 0.25s ease,
    border-color 0.25s ease;
}
.home .home-traffic-card:hover {
  transform: translateY(-4px);
  background-color: hsla(0, 0%, 100%, 0.14) !important;
  border-color: hsla(0, 0%, 100%, 0.3) !important;
}
@media (max-width: 767px) {
  .home .home-traffic-card {
    position: relative !important;
    left: 0;
    top: 0;
    width: 100%;
  }
}
.home .home-hero {
  background-image:
    linear-gradient(
      155deg,
      rgba(8, 20, 34, 0.86),
      rgba(12, 32, 54, 0.81) 46%,
      rgba(18, 58, 94, 0.74)
    ),
    url(../../images/nlm-analytics.jpg) !important;
}
.home .home-seo-sea-responsive-webdesign-online-marketing-title {
  min-width: 0;
}
.home .home-mehr-zur-agentur-action .button {
  white-space: nowrap;
  background-image: linear-gradient(
    135deg,
    var(--color-secondary),
    var(--color-primary) 55%,
    #0d4f86
  ) !important;
  box-shadow: 0 12px 26px -10px rgba(22, 112, 184, 0.6) !important;
}
.home .home-seo-sea-responsive-webdesign-online-marketing-group {
  position: relative;
}
.home .home-blb-image img {
  border-radius: 0;
  filter: none;
  transform-origin: right center;
  transition: transform 0.4s ease;
}
.home .home-blb-image img:hover {
  transform: scale(1.04);
}
.home .home-blb-image {
  margin: 0 !important;
  padding: 0;
  text-align: right;
  right: calc(-1 * (var(--home-gutter) + max(0px, (100cqw - 1160px) / 2)));
}
.home .home-newlight-media-seo-sea-responsive-webdesign-section {
  position: relative;
}
.home .home-service-seo {
  box-shadow: 0 18px 40px -24px rgba(11, 26, 43, 0.08);
  position: relative;
  overflow: hidden;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}
.home .home-service-seo:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(135deg, var(--color-secondary), var(--color-primary) 55%, #0d4f86);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.45s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.home .home-service-seo:hover:after {
  transform: scaleX(1);
}
.home .home-service-seo:hover {
  box-shadow:
    0 26px 50px -22px rgba(11, 26, 43, 0.34),
    0 50px 100px -46px rgba(11, 26, 43, 0.55);
  transform: translateY(-8px);
}
.home .home-service-sea {
  box-shadow: 0 18px 40px -24px rgba(11, 26, 43, 0.08);
  position: relative;
  overflow: hidden;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}
.home .home-service-sea:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(135deg, var(--color-secondary), var(--color-primary) 55%, #0d4f86);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.45s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.home .home-service-sea:hover:after {
  transform: scaleX(1);
}
.home .home-service-sea:hover {
  box-shadow:
    0 26px 50px -22px rgba(11, 26, 43, 0.34),
    0 50px 100px -46px rgba(11, 26, 43, 0.55);
  transform: translateY(-8px);
}
.home .home-service-content {
  box-shadow: 0 18px 40px -24px rgba(11, 26, 43, 0.08);
  position: relative;
  overflow: hidden;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}
.home .home-service-content:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(135deg, var(--color-secondary), var(--color-primary) 55%, #0d4f86);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.45s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.home .home-service-content:hover:after {
  transform: scaleX(1);
}
.home .home-service-content:hover {
  box-shadow:
    0 26px 50px -22px rgba(11, 26, 43, 0.34),
    0 50px 100px -46px rgba(11, 26, 43, 0.55);
  transform: translateY(-8px);
}
.home .home-service-social {
  box-shadow: 0 18px 40px -24px rgba(11, 26, 43, 0.08);
  position: relative;
  overflow: hidden;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}
.home .home-service-social:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(135deg, var(--color-secondary), var(--color-primary) 55%, #0d4f86);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.45s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.home .home-service-social:hover:after {
  transform: scaleX(1);
}
.home .home-service-social:hover {
  box-shadow:
    0 26px 50px -22px rgba(11, 26, 43, 0.34),
    0 50px 100px -46px rgba(11, 26, 43, 0.55);
  transform: translateY(-8px);
}
.home .home-20-title.heading,
.home .home-2001-title.heading,
.home .home-4-title.heading {
  background: linear-gradient(120deg, var(--color-text-light), #bfe3ff);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media (max-width: 767px) {
  .home .home-jetzt-kostenfrei-unverbindlich-anfragen-action .button {
    white-space: normal !important;
    width: 100%;
    text-align: center;
  }
}
.home .home-jetzt-kostenfrei-unverbindlich-anfragen-action .button {
  white-space: nowrap;
}
.home .home-5-tipps-fur-eine-schnelle-website-group,
.home .home-datenschutz-grundverordnung-welche-anderungen-sind-wichtig-group,
.home .home-social-media-fur-unternehmen-4-tipps-group {
  overflow: hidden;
  box-shadow: 0 18px 40px -24px rgba(11, 26, 43, 0.08);
}
.home .home-suchmaschinenoptimierung-ki-seo-ai-seo-geo-links .icon-list-icon {
  display: none !important;
}
body.page-home .rich-text p {
  margin: 0;
}
.home .home-hero {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
  background-image: url("../../images/nlm-analytics.jpg") !important;
  background-size: cover !important;
  background-position: 50% !important;
}
.home .home-hero .nlm-hero-video {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  transform: translate(-50%, -50%) !important;
  object-fit: cover !important;
  object-position: center center !important;
  z-index: 0 !important;
  display: block !important;
  pointer-events: none !important;
}
.home .home-hero .nlm-hero-overlay {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  background: linear-gradient(
    155deg,
    rgba(8, 20, 34, 0.86),
    rgba(12, 32, 54, 0.81) 46%,
    rgba(18, 58, 94, 0.74)
  ) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}
.home .home-hero > .container {
  position: relative !important;
  z-index: 2 !important;
}
@media (max-width: 767px) {
  .home .home-hero .nlm-hero-video {
    object-position: center center !important;
  }
}
.home .hero-visibility-chart svg {
  display: block;
  width: 100%;
  height: 80px;
}
.home .hero-visibility-caption {
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
}
.home .hero-visibility-caption p {
  margin: 0;
}
.home .hero-visibility-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}
.home .hero-visibility-summary .home--text {
  font-size: 36px;
}
.home .hero-visibility-summary .home--text p {
  letter-spacing: 3px;
  white-space: nowrap;
}
.home .hero-visibility-label {
  display: flex;
  flex-direction: column;
  gap: 3px;
  color: #fff;
  line-height: 1.25;
}
.home .hero-visibility-label span {
  font-size: 14px;
  color: #afc4da;
}
.home .hero-visibility-label strong {
  font-size: 21px;
  font-weight: 600;
}
@media (max-width: 400px) {
  .home .hero-visibility-summary { gap: 10px; }
  .home .hero-visibility-summary .home--text { font-size: 27px; }
  .home .hero-visibility-summary .home--text p { letter-spacing: 1px; }
  .home .hero-visibility-label strong { font-size: 17px; }
}
.home .hero-inquiry-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  margin-bottom: 5px;
  border-radius: 10px;
  background: rgba(91, 217, 138, .12);
  color: #5bd98a;
}
.home .hero-inquiry-icon svg { width: 24px; height: 24px; }
.home .hero-inquiry-title {
  margin: 0;
  font-size: 19px;
  font-weight: 600;
  line-height: 1.3;
  color: #fff;
}
.home .hero-inquiry-caption {
  margin: 2px 0 0;
  font-size: 13px;
  line-height: 1.5;
  color: #afc4da;
}
/* Layered diagonal transitions inspired by the original site. */
.home .home-hero::before,
.home .home-hero::after,
.home .home-about::before,
.home .home-about::after {
  content: "";
  position: absolute;
  inset: auto 0 -1px;
  height: clamp(32px, 4.5vw, 76px);
  pointer-events: none;
  z-index: 3;
}
.home .home-hero::before {
  background: #d9dde2;
  clip-path: polygon(0 76%, 100% 0, 100% 100%, 0 100%);
}
.home .home-hero::after {
  background: #fff;
  clip-path: polygon(0 100%, 100% 26%, 100% 100%);
}
.home .home-about {
  position: relative;
  padding-bottom: 0;
}
.home .home-about::before {
  background: #1670b8;
  clip-path: polygon(0 0, 100% 76%, 100% 100%, 0 100%);
}
.home .home-about::after {
  background: var(--color-section-bg);
  clip-path: polygon(0 26%, 100% 100%, 0 100%);
}
@media (max-width: 767px) {
  .home .home-about { padding-bottom: 0; }
}
/* A distinct editorial heading for the partner and certification strip. */
.home .home-partners-heading {
  text-align: center;
  margin-bottom: 22px;
}
.home .home-partners-eyebrow {
  margin: 0 0 14px;
  color: #1670b8;
  font-size: 12px;
  line-height: 1.5;
  font-weight: 700;
  letter-spacing: 2.2px;
  text-transform: uppercase;
}
.home .home-partners-heading h2 {
  margin: 0;
  color: #142b40;
  font-size: clamp(28px, 3.2vw, 42px);
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: -1px;
  text-wrap: balance;
}
.home .home-partners-heading h2 span { color: #1670b8; }
.home .home-partners-heading::after {
  content: "";
  display: block;
  width: 64px;
  height: 4px;
  margin: 24px auto 0;
  background: linear-gradient(90deg, #1670b8 0 72%, #93c8ec 72%);
  transform: skewX(-25deg);
}
@media (max-width: 767px) {
  .home .home-partners-heading { margin-bottom: 12px; }
  .home .home-partners-heading h2 { letter-spacing: -.5px; }
}
/* Magazine-style news: one lead story and two supporting articles. */
.home .home-blog { background: #f6f9fc; }
.news-shell { width: 100%; max-width: 1160px; margin-inline: auto; }
.news-header { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; margin-bottom: 36px; }
.news-eyebrow { color: #1670b8; font-size: 12px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; margin: 0 0 12px; }
.news-header h2 { font-size: clamp(30px, 3.5vw, 46px); line-height: 1.15; letter-spacing: -1px; color: #142b40; margin: 0; }
.news-header h2 span { color: #1670b8; }
.news-all { display: inline-flex; align-items: center; gap: 20px; padding: 12px 0; border-bottom: 2px solid #1670b8; font-size: 15px; font-weight: 600; color: #142b40; text-decoration: none; white-space: nowrap; }
.news-all span { color: #1670b8; font-size: 22px; }
.news-grid { display: grid; grid-template-columns: 1.1fr 1fr; grid-template-rows: repeat(2, minmax(220px, auto)); gap: 24px; }
.news-card { min-width: 0; overflow: hidden; background: #fff; border: 1px solid #e1e9f1; border-radius: 18px; transition: box-shadow .2s, border-color .2s; }
.news-card:hover { border-color: #99c4e5; box-shadow: 0 14px 32px -20px #1670b866; }
.news-card-link { display: flex; height: 100%; text-decoration: none; color: #142b40; }
.news-featured { grid-row: 1 / 3; }
.news-featured .news-card-link { flex-direction: column; }
.news-image { overflow: hidden; min-width: 0; }
.news-image img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .35s; }
.news-card-link:hover img { transform: scale(1.035); }
.news-featured .news-image { height: 265px; }
.news-copy { display: flex; flex-direction: column; align-items: flex-start; padding: 26px; gap: 14px; flex: 1; min-width: 0; }
.news-category { font-size: 11px; line-height: 1.4; font-weight: 700; text-transform: uppercase; letter-spacing: 1.2px; color: #1670b8; }
.news-copy h3 { margin: 0; font-size: 23px; line-height: 1.3; font-weight: 650; hyphens: none; overflow-wrap: normal; word-break: normal; }
.news-featured h3 { font-size: 29px; }
.news-read { display: flex; align-items: center; gap: 14px; margin-top: auto; padding-top: 8px; color: #1670b8; font-size: 13px; font-weight: 600; }
.news-compact .news-image { flex: 0 0 36%; }
.news-card-link:focus-visible, .news-all:focus-visible { outline: 3px solid #1670b8; outline-offset: -3px; }
@media (max-width: 1024px) {
 .news-grid { gap: 18px; grid-template-columns: 1fr 1fr; }
 .news-compact .news-image { flex-basis: 28%; }
 .news-copy { padding: 20px; }
 .news-copy h3 { font-size: 20px; }
 .news-featured h3 { font-size: 25px; }
}
@media (max-width: 767px) {
 .news-header { align-items: flex-start; flex-direction: column; gap: 14px; margin-bottom: 26px; }
 .news-grid { grid-template-columns: 1fr; grid-template-rows: auto; }
 .news-featured { grid-row: auto; }
 .news-featured .news-image { height: 220px; }
 .news-compact .news-image { flex-basis: 30%; }
 .news-copy { padding: 20px 16px; }
 .news-copy h3 { font-size: 19px; }
 .news-featured h3 { font-size: 25px; }
 .news-category { font-size: 10px; letter-spacing: .7px; }
}
@media (prefers-reduced-motion: reduce) {
 .news-image img, .news-card { transition: none; }
}
/* Closing section: a clear three-step collaboration process. */
.home-process { position: relative; background: #fff; padding: 96px var(--home-gutter) 120px; overflow: hidden; }
.process-shell { max-width: 1160px; margin: 0 auto; }
.process-eyebrow { margin: 0 0 18px; color: #1670b8; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 2px; }
.process-heading h2 { margin: 0; font-size: clamp(34px,4vw,52px); line-height: 1.1; letter-spacing: -1.3px; color: #142b40; }
.process-heading h2 span { color: #1670b8; }
.process-intro { max-width: 540px; margin: 22px 0 0; color: #586b7d; font-size: 17px; line-height: 1.7; }
.process-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); list-style: none; padding: 0; margin: 54px 0 44px; gap: 34px; }
.process-steps li { min-width: 0; position: relative; }
.process-step-top { display: flex; justify-content: space-between; align-items: center; padding-bottom: 22px; border-bottom: 2px solid #d5e6f4; position: relative; }
.process-step-top::after { content: ''; position: absolute; bottom: -4px; left: 0; width: 6px; height: 6px; border-radius: 50%; background: #1670b8; }
.process-number { font-size: 56px; line-height: 1; font-weight: 700; letter-spacing: -2px; color: #1670b8; }
.process-step-top svg { width: 32px; height: 32px; color: #1670b8; }
.process-steps h3 { font-size: 22px; line-height: 1.3; color: #142b40; margin: 24px 0 14px; hyphens: none; }
.process-steps p { font-size: 15px; line-height: 1.75; color: #586b7d; margin: 0; }
.process-contact { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 28px 32px; background: #f0f6fb; border-left: 3px solid #1670b8; border-radius: 0 16px 16px 0; }
.process-contact p { font-size: 23px; font-weight: 600; color: #142b40; margin: 0 0 7px; }
.process-contact div > span { font-size: 15px; line-height: 1.6; color: #586b7d; }
.process-contact a { display: inline-flex; align-items: center; gap: 28px; padding: 16px 24px; border-radius: 999px; background: #1670b8; color: #fff; font-size: 15px; font-weight: 600; text-decoration: none; white-space: nowrap; }
.process-contact a:hover { background: #105b97; }
.process-contact a:focus-visible { outline: 3px solid #1670b8; outline-offset: 4px; }
.home-process::before,.home-process::after { content: ''; position: absolute; inset: auto 0 -1px; height: clamp(30px,4vw,66px); pointer-events: none; }
.home-process::before { background: #d9dde2; clip-path: polygon(0 75%,100% 0,100% 100%,0 100%); }
.home-process::after { background: #0b1a2b; clip-path: polygon(0 100%,100% 25%,100% 100%); }
@media(max-width:767px) {
 .home-process { padding-top: 64px; padding-bottom: 80px; }
 .process-heading h2 { letter-spacing: -.7px; }
 .process-steps { grid-template-columns: 1fr; gap: 32px; margin-top: 36px; }
 .process-step-top { padding-bottom: 14px; }
 .process-number { font-size: 42px; }
 .process-steps h3 { margin-top: 18px; }
 .process-contact { flex-direction: column; align-items: flex-start; padding: 24px; }
}
/* Match the established Roboto typography throughout the new sections. */
.home .home-blog,
.home .home-process,
.home .news-header h2,
.home .news-copy h3,
.home .process-heading h2,
.home .process-steps h3 {
  font-family: var(--font-family), sans-serif;
}
.home .news-header h2,
.home .process-heading h2 {
  font-size: 44px;
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: -.8832px;
}
.home .news-copy h3,
.home .process-steps h3 {
  font-weight: 700;
}
@media (max-width: 1024px) {
  .home .news-header h2,
  .home .process-heading h2 { font-size: 36px; }
}
@media (max-width: 767px) {
  .home .news-header h2,
  .home .process-heading h2 { font-size: 32px; }
}
/* Experience band: strong date, restrained details, generous spacing. */
.home-experience { position: relative; overflow: hidden; padding: 82px var(--home-gutter); font-family: var(--font-family), sans-serif; color: #fff; background: linear-gradient(115deg, #0e3f69, #1670b8); }
.home-experience::after { content: ''; position: absolute; width: 470px; height: 470px; right: -225px; top: -210px; border: 1px solid #ffffff20; border-radius: 50%; box-shadow: 0 0 0 55px #ffffff05, 0 0 0 110px #ffffff04; pointer-events: none; }
.experience-shell { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr 1.25fr; gap: 70px; align-items: center; max-width: 1160px; margin-inline: auto; }
.experience-eyebrow { margin: 0 0 16px; font-size: 12px; font-weight: 600; letter-spacing: 3px; color: #b7d8f1; }
.experience-history h2 { margin: 0 0 20px; font-family: var(--font-family), sans-serif; font-size: clamp(64px,7vw,94px); font-weight: 800; line-height: 1; letter-spacing: -4px; color: #fff; }
.experience-history h2 > span:first-child { display: block; font-size: 24px; font-weight: 400; letter-spacing: 0; margin-bottom: 8px; }
.experience-dot { color: #83c9ff; }
.experience-history > p:last-child { margin: 0; font-size: 18px; line-height: 1.6; color: #d6e7f5; }
.experience-benefits { border-left: 1px solid #ffffff30; padding-left: 52px; }
.experience-benefit { display: flex; gap: 22px; align-items: flex-start; }
.experience-benefit + .experience-benefit { margin-top: 30px; padding-top: 30px; border-top: 1px solid #ffffff25; }
.experience-icon { display: flex; flex: 0 0 48px; width: 48px; height: 48px; align-items: center; justify-content: center; border: 1px solid #ffffff30; border-radius: 14px; background: #ffffff09; color: #b7e0ff; }
.experience-icon svg { width: 27px; height: 27px; }
.experience-benefit h3 { font-family: var(--font-family), sans-serif; font-size: 23px; font-weight: 700; line-height: 1.25; color: #fff; margin: 0 0 10px; }
.experience-benefit p { font-size: 15px; line-height: 1.7; color: #d6e7f5; margin: 0; max-width: 380px; }
@media(max-width:767px) {
 .home-experience { padding-block: 56px; }
 .experience-shell { grid-template-columns: 1fr; gap: 34px; }
 .experience-history h2 { letter-spacing: -2px; }
 .experience-benefits { border-left: 0; border-top: 1px solid #ffffff30; padding: 30px 0 0; }
 .experience-benefit { gap: 16px; }
 .experience-benefit h3 { font-size: 21px; }
 .experience-icon { flex-basis: 42px; width: 42px; height: 42px; }
}

/* One calm, unified result card in the hero. */
.home .home-hero-results { justify-content: center; }
.home .hero-results-card {
  width: 100%; max-width: 451px; margin-left: auto;
  padding: 30px; box-sizing: border-box;
  border: 1px solid rgba(255,255,255,.18); border-radius: 22px;
  background: rgba(255,255,255,.09); backdrop-filter: blur(6px);
}
.home .hero-results-chart { display: grid; gap: 14px; }
.home .hero-results-inquiries {
  margin-top: 26px; padding-top: 24px;
  border-top: 1px solid rgba(255,255,255,.18);
  display: grid; grid-template-columns: 36px 1fr; column-gap: 14px; row-gap: 4px;
  align-items: center;
}
.home .hero-results-inquiries .hero-inquiry-icon { grid-row: 1 / 3; margin: 0; }
.home .hero-results-inquiries .hero-inquiry-caption { grid-column: 2; }
@media(max-width:767px) {
  .home .home-hero-results { min-height: 0; }
  .home .hero-results-card { max-width: 100%; margin: 0; padding: 24px; }
}

/* Brand blue for the hero visibility chart. */
.home .hero-visibility-summary .home--text{color:#56ACF0}

/* Equal baseline for all seven visibility bars. */
.home .hero-bar-chart{display:flex;align-items:flex-end;gap:5px;width:160px;height:64px;padding:0;margin:0}
.home .hero-bar-chart span{display:block;flex:1;height:var(--bar-height);background:#56ACF0;border-radius:2px 2px 0 0}
@media(max-width:400px){.home .hero-bar-chart{width:120px;height:54px;gap:4px}}




/* Original NEWLIGHT bulb with crisp, opaque contours. */
.home .hero-chart-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0}
.home .hero-logo-light{position:relative;display:block;width:44px;flex:0 0 44px}
.home .hero-logo-light img{display:block;width:44px;height:auto;position:relative;z-index:1;opacity:1;filter:url(#hero-bulb-solid);animation:none}
/* A single blue edge glow highlights the whole card; its contents stay still. */
.home .hero-results-card{position:relative}
.home .hero-results-card::after{content:"";position:absolute;inset:-1px;border-radius:inherit;pointer-events:none;border:1px solid #56acf0;box-shadow:0 0 20px rgba(86,172,240,.65),0 0 42px rgba(86,172,240,.3),inset 0 0 20px rgba(86,172,240,.14);opacity:0;animation:hero-card-glow 1.5s ease-in-out 2.8s 1 both}
@keyframes hero-card-glow{0%,100%{opacity:0}35%,50%{opacity:1}}
@media(prefers-reduced-motion:reduce){.home .hero-results-card::after{animation:none}}

.home .hero-visibility-summary{gap:12px}
.home .hero-visibility-summary .hero-bar-chart{width:clamp(100px,12vw,145px)}
@media(max-width:400px){.home .hero-visibility-summary{gap:8px}.home .hero-visibility-summary .hero-logo-light{width:32px;flex-basis:32px}.home .hero-visibility-summary .hero-logo-light img{width:32px}.home .hero-visibility-summary .hero-bar-chart{width:100px}}

.home .hero-inquiry-icon{color:#56ACF0;background:rgba(86,172,240,.12)}

.home .hero-chart-heading{flex-direction:column;align-items:flex-start;gap:5px}
.home .hero-chart-heading .hero-chart-tagline{font-size:15px;font-weight:400;line-height:1.45;letter-spacing:0;text-transform:none}

.home .hero-chart-heading > span:first-child{font-size:20px;font-weight:700;line-height:1.3;letter-spacing:0;color:#fff}

/* Source: assets/css/site-header.css */
.site-header .header-topbar {
  display: flex;
  padding-left: 5px;
  padding-right: 5px;
}
.site-header .header-topbar > .container {
  flex-direction: row;
  row-gap: 0;
  column-gap: 0;
  flex-wrap: wrap;
  padding-top: 5px;
  padding-bottom: 5px;
}
.site-header .header-topbar {
  background-color: var(--color-topbar-bg);
}
.site-header .header-contact {
  display: flex;
  justify-content: center;
  padding: 5px;
}
.site-header .header-contact-links .icon-list-items.inline-items .icon-list-item {
  margin-inline: 10px;
}
.site-header .header-contact-links .icon-list-items.inline-items {
  margin-inline: -10px;
}
.site-header .header-contact-links .icon-list-items.inline-items .icon-list-item:after {
  inset-inline-end: -10px;
}
.site-header .header-contact-links .icon-list-icon svg {
  fill: var(--color-topbar-text);
  transition: fill 0.3s;
}
.site-header .header-contact-links {
  --list-icon-size: 13px;
  --list-icon-align: center;
  --list-icon-margin: 0 calc(var(--list-icon-size, 1em) * 0.125);
  --icon-vertical-offset: 0px;
}
.site-header .header-contact-links .icon-list-icon {
  padding-inline-end: 2px;
}
.site-header .header-contact-links .icon-list-text {
  color: var(--color-topbar-text);
  transition: color 0.3s;
}
.site-header .header-details {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  padding: 5px;
}
.site-header .header-opening-hours .icon-list-items.inline-items .icon-list-item {
  margin-inline: 10px;
}
.site-header .header-opening-hours .icon-list-items.inline-items {
  margin-inline: -10px;
}
.site-header .header-opening-hours .icon-list-items.inline-items .icon-list-item:after {
  inset-inline-end: -10px;
}
.site-header .header-opening-hours .icon-list-icon svg {
  fill: var(--color-topbar-text2);
  transition: fill 0.3s;
}
.site-header .header-opening-hours {
  margin-inline-start: auto;
  text-align: right;
  --list-icon-size: 13px;
  --list-icon-align: center;
  --list-icon-margin: 0 calc(var(--list-icon-size, 1em) * 0.125);
  --icon-vertical-offset: 0px;
}
.site-header .header-opening-hours .icon-list-icon {
  padding-inline-end: 4px;
}
.site-header .header-opening-hours .icon-list-text {
  color: var(--color-topbar-text2);
  transition: color 0.3s;
}
/* Shared header layout and disclosure navigation. */
.site-header .header-bar {
  position: relative;
  padding: 0;
  gap: 0;
  background: var(--color-text-light);
  box-shadow: 0 1px 0 #e2e9f1;
  z-index: 999;
}
.site-header .header-bar.is-sticky {
  position: fixed;
  inset: 0 0 auto;
  width: 100%;
}
.sticky-placeholder {
  display: none;
}
.sticky-placeholder.is-active {
  display: block;
}
.site-header .header-inner {
  position: static;
  min-height: 86px;
  padding-inline: 24px;
}
.site-header .header-inner > .container {
  position: static;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 24px;
  max-width: 1240px;
  min-height: inherit;
  height: auto;
  padding: 0;
}
.site-header .header-logo,
.site-header .header-cta {
  flex: 0 0 auto;
  align-self: center;
}
.site-header .header-logo a {
  display: block;
}
.site-header .header-logo img {
  display: block;
  width: clamp(240px, 20vw, 285px);
}
.site-header .header-cta .button {
  font:
    600 15px/24px Roboto,
    sans-serif;
  letter-spacing: 0.5px;
  color: var(--color-text-light);
  border-radius: 999px;
  padding: 14px 30px;
  background-image: linear-gradient(
    135deg,
    var(--color-secondary),
    var(--color-primary) 55%,
    #0d4f86
  );
  box-shadow: 0 14px 28px -12px rgba(22, 112, 184, 0.78);
  white-space: nowrap;
}
.site-header .main-navigation {
  position: static;
  display: flex;
  flex: 1 1 auto;
  font-family: Roboto, sans-serif;
}
.main-navigation .nav-list,
.main-navigation .submenu {
  list-style: none;
  margin: 0;
  padding: 0;
}
.main-navigation li {
  position: relative;
}
.main-navigation a {
  display: flex;
  align-items: center;
  border-radius: 10px;
  color: var(--color-text);
  text-decoration: none;
  transition:
    background-color 0.18s ease,
    color 0.18s ease;
}
.main-navigation .nav-link {
  padding: 10px 7px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.25;
}
.main-navigation .submenu-link {
  padding: 11px 12px;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
}
.main-navigation a:hover,
.main-navigation a:focus-visible,
.main-navigation a.is-current,
.main-navigation .submenu-arrow:hover,
.main-navigation .submenu-arrow[aria-expanded="true"] {
  background: rgba(22, 112, 184, 0.09);
  color: var(--color-text);
}
.main-navigation a:focus-visible,
.main-navigation button:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 3px;
}
.main-navigation .submenu-arrow,
.main-navigation .menu-toggle {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 10px;
  padding: 0;
  color: var(--color-text);
  background: transparent;
  cursor: pointer;
  letter-spacing: normal;
  text-transform: none;
}
.main-navigation .submenu-arrow {
  width: 28px;
  height: 40px;
}
.main-navigation .submenu-arrow .icon-svg {
  width: 12px;
  height: 12px;
  fill: currentColor;
  transition: transform 0.18s ease;
}
.main-navigation .submenu-arrow[aria-expanded="true"] .icon-svg {
  transform: rotate(180deg);
}
.main-navigation .submenu[hidden],
.main-navigation .nav-panel[aria-hidden="true"] {
  display: none;
}
.main-navigation .has-submenu {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}
.main-navigation .submenu {
  grid-column: 1 / -1;
}
.main-navigation .menu-toggle {
  width: 44px;
  height: 44px;
  align-self: center;
  background: rgba(0, 0, 0, 0.05);
}
.main-navigation .menu-toggle:hover {
  background: rgba(22, 112, 184, 0.09);
}
.main-navigation .menu-toggle .icon-svg {
  width: 22px;
  height: 22px;
  fill: currentColor;
}
.menu-toggle .menu-toggle-close,
.menu-toggle.is-active .menu-toggle-open {
  display: none;
}
.menu-toggle.is-active .menu-toggle-close {
  display: block;
}

@media (min-width: 1200px) {
  .main-navigation .menu-toggle,
  .main-navigation > .nav-dropdown {
    display: none;
  }
  .main-navigation .desktop-nav {
    display: flex;
    flex: 1;
  }
  .desktop-nav > .nav-list {
    display: flex;
    flex: 1;
    justify-content: center;
    gap: clamp(4px, 0.7vw, 12px);
  }
  .desktop-nav > .nav-list > li {
    display: flex;
    align-items: center;
  }
  .desktop-nav .nav-link {
    white-space: nowrap;
    color: var(--color-border-muted);
  }
  .desktop-nav .has-submenu > a {
    padding-right: 0;
  }
  .desktop-nav .submenu {
    --submenu-gap: 8px;
    position: absolute;
    top: calc(100% + var(--submenu-gap));
    left: var(--submenu-x, 0px);
    width: min(540px, calc(100vw - 32px));
    padding: 16px;
    border: 1px solid #e2e9f1;
    border-radius: 18px;
    background: var(--color-text-light);
    box-shadow: 0 30px 70px -34px rgba(11, 26, 43, 0.5);
    z-index: 2;
  }
  .desktop-nav .submenu:not([hidden]) {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(3, auto);
    grid-auto-flow: column;
    gap: 2px 8px;
  }
  /* Bridge the small gap below the trigger without covering adjacent links. */
  .desktop-nav > .nav-list > li > .submenu::before {
    content: "";
    position: absolute;
    inset: calc(-1 * var(--submenu-gap) - 1px) 0 100%;
  }
  .desktop-nav .submenu .submenu {
    top: 0;
    width: 266px;
    padding: 10px;
    border-radius: 16px;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: none;
    grid-auto-flow: row;
  }
  .desktop-nav .submenu .submenu::before {
    content: "";
    position: absolute;
    inset: 0 100% 0 auto;
    width: var(--submenu-gap);
  }
  .desktop-nav .submenu .submenu[data-side="left"]::before {
    inset: 0 auto 0 100%;
  }
  .desktop-nav .submenu .submenu-link {
    min-height: 42px;
  }
  .desktop-nav .submenu .submenu .submenu-link {
    font-size: 14px;
  }
  .desktop-nav .submenu > .has-submenu > .submenu-arrow .icon-svg {
    transform: rotate(-90deg);
  }
  .desktop-nav .submenu > .has-submenu:has(> [data-side="left"]) > .submenu-arrow .icon-svg {
    transform: rotate(90deg);
  }
}
@media (max-width: 1199px) {
  .main-navigation .desktop-nav {
    display: none;
  }
  .site-header .main-navigation {
    order: 3;
    flex: 0 0 auto;
  }
  .site-header .header-cta {
    order: 2;
    margin-inline-start: auto;
  }

  .main-navigation > .nav-dropdown {
    position: absolute;
    inset: 100% 0 auto;
    max-height: var(--menu-available-height, 75dvh);
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 16px 24px 24px;
    border-top: 1px solid #e2e9f1;
    background: var(--color-text-light);
    box-shadow: 0 20px 40px -20px rgba(11, 26, 43, 0.25);
  }
  .main-navigation > .nav-dropdown > .nav-list {
    max-width: 1240px;
    margin-inline: auto;
  }
  .main-navigation .nav-list > li {
    border-bottom: 1px solid rgba(20, 31, 46, 0.07);
  }
  .main-navigation .nav-list > li:last-child {
    border-bottom: 0;
  }
  .main-navigation .nav-link {
    min-height: 52px;
    padding: 14px;
    font-size: 17px;
  }
  .main-navigation .submenu-arrow {
    width: 44px;
    height: 44px;
  }
  .main-navigation .submenu {
    position: static;
    margin: 4px 0 10px;
    padding: 8px;
    border-radius: 14px;
    background: var(--color-section-bg);
  }
  .main-navigation .submenu-link {
    min-height: 44px;
    overflow-wrap: anywhere;
  }
  .main-navigation .has-submenu > a {
    padding-right: 0;
  }
  .main-navigation .submenu .submenu {
    background: var(--color-text-light);
  }
  .main-navigation .submenu .submenu .submenu-link {
    font-size: 14.5px;
    font-weight: 500;
    color: #3e4c5e;
  }
}
@media (max-width: 1024px) {
  .site-header .header-topbar > .container {
    flex-direction: column;
  }
  .site-header .header-contact {
    align-items: center;
    width: 100%;
  }
}
@media (min-width: 768px) {
  .site-header .header-topbar > .container {
    max-width: 1240px;
  }
  .site-header .header-details {
    width: 50%;
  }
}
@media (min-width: 1025px) {
  .site-header .header-contact {
    width: 50%;
  }
}
@media (max-width: 767px) {
  .site-header .header-contact-links .icon-list-items.inline-items .icon-list-item {
    margin-inline: 7.5px;
  }
  .site-header .header-contact-links .icon-list-items.inline-items {
    margin-inline: -7.5px;
  }
  .site-header .header-contact-links .icon-list-items.inline-items .icon-list-item:after {
    inset-inline-end: -7.5px;
  }
  .site-header .header-contact-links {
    --list-icon-size: 12px;
  }
  .site-header .header-contact-links .icon-list-item > a {
    font-size: 14px;
  }
  .site-header .header-inner {
    min-height: 66px;
    padding-inline: 18px;
  }
  .site-header .header-inner > .container {
    gap: 12px;
  }
  .site-header .header-logo img {
    width: 240px;
  }
  .site-header .header-cta {
    display: none;
  }
  .site-header .header-inner > .container .main-navigation {
    margin-inline-start: auto;
  }
  .main-navigation > .nav-dropdown {
    padding-inline: 18px;
  }
}
@media (max-width: 359px) {
  .site-header .header-inner {
    padding-inline: 12px;
  }
}
/* Service navigation: consistent icons and concise explanations. */
.main-navigation .submenu-link:has(.nav-service-icon) {
  gap: 13px;
  align-items: flex-start;
  padding: 15px 12px;
}
.main-navigation .nav-service-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: #edf5fc;
  color: #1670b8;
  transition: background-color .18s ease, color .18s ease;
}
.main-navigation .nav-service-icon svg {
  width: 24px;
  height: 24px;
}
.main-navigation .nav-service-copy {
  display: flex;
  flex-direction: column;
  gap: 5px;
  min-width: 0;
}
.main-navigation .nav-service-title {
  font-size: 15px;
  font-weight: 600;
  line-height: 1.35;
  color: #172c41;
}
.main-navigation .nav-service-description {
  font-size: 13px;
  line-height: 1.5;
  font-weight: 400;
  color: #586b7d;
}
.main-navigation .submenu-link:hover .nav-service-icon,
.main-navigation .submenu-link:focus-visible .nav-service-icon {
  color: #fff;
  background: #1670b8;
}
@media (min-width: 1200px) {
  .desktop-nav #desktop-marketing-menu {
    width: min(760px, calc(100vw - 32px));
    padding: 18px;
    border-top: 3px solid #1670b8;
    border-radius: 0 0 20px 20px;
    box-shadow: 0 24px 64px -20px rgba(16, 42, 67, .28);
  }
  .desktop-nav #desktop-marketing-menu:not([hidden]) {
    display: block;
    columns: 2;
    column-gap: 16px;
  }
  .desktop-nav #desktop-marketing-menu > li {
    break-inside: avoid;
    margin-bottom: 6px;
  }
  .desktop-nav #desktop-marketing-menu > li:nth-child(4) {
    break-before: column;
  }
  .desktop-nav #desktop-seo-menu,
  .desktop-nav #desktop-ki-menu {
    position: static;
    width: 100%;
    margin: 0 0 8px;
    padding: 6px;
    background: #f6f9fc;
    border: 1px solid #e4ecf3;
    border-radius: 12px;
    box-shadow: none;
  }
  .desktop-nav #desktop-seo-menu::before,
  .desktop-nav #desktop-ki-menu::before {
    display: none;
  }
  .desktop-nav #desktop-marketing-menu {
    max-height: calc(100dvh - 160px);
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .desktop-nav #desktop-marketing-menu > .has-submenu > .submenu-arrow .icon-svg {
    transform: rotate(0deg);
  }
  .desktop-nav #desktop-marketing-menu > .has-submenu > .submenu-arrow[aria-expanded="true"] .icon-svg {
    transform: rotate(180deg);
  }
  .desktop-nav #desktop-seo-menu .nav-service-icon {
    flex-basis: 34px;
    width: 34px;
    height: 34px;
    border-radius: 9px;
  }
  .desktop-nav #desktop-marketing-menu > .has-submenu > .submenu-arrow {
    align-self: start;
    margin-top: 16px;
  }
}
@media (max-width: 1199px) {
  .main-navigation #mobile-marketing-menu {
    background: #f6f9fc;
    padding: 6px;
  }
  .main-navigation #mobile-marketing-menu > li {
    border-bottom: 1px solid #e4ecf3;
  }
  .main-navigation #mobile-marketing-menu > li:last-child {
    border-bottom: 0;
  }
  .main-navigation #mobile-marketing-menu .submenu-link {
    padding: 13px 8px;
    gap: 10px;
  }
  .main-navigation #mobile-marketing-menu .nav-service-title {
    font-size: 14px;
    overflow-wrap: anywhere;
  }
  .main-navigation #mobile-marketing-menu .nav-service-icon {
    flex-basis: 34px;
    width: 34px;
    height: 34px;
    border-radius: 9px;
  }
}
/* Compact hours and a distinct news link at the end of the top bar. */
.site-header .header-opening-hours .icon-list-items.inline-items {
  align-items: center;
  gap: 22px;
  margin-inline: 0;
}
.site-header .header-opening-hours .icon-list-items.inline-items .icon-list-item {
  margin-inline: 0;
}

.site-header .header-opening-hours .header-news {
  border-inline-start: 1px solid rgba(255, 255, 255, .35);
  padding-inline-start: 22px;
}
.site-header .header-news a {
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
}
.site-header .header-news a:hover,
.site-header .header-news a:focus-visible {
  text-decoration: underline;
  text-underline-offset: 4px;
}
.site-header .header-news a:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 4px;
}
.site-header .header-news .icon-list-text > span {
  margin-inline-start: 5px;
}
/* Platform logos and industry symbols in the KI-SEO disclosure. */
.main-navigation :is(#desktop-ki-menu, #mobile-ki-menu) .submenu-link {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px;
  font-size: 14px;
  line-height: 1.4;
}
.main-navigation .ki-platform-logo {
  flex: 0 0 72px;
  width: 72px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 4px;
  background: #fff;
  border-radius: 7px;
}
.main-navigation .ki-platform-logo img {
  display: block;
  width: 64px;
  height: 26px;
  object-fit: contain;
}
.main-navigation :is(#desktop-ki-menu, #mobile-ki-menu) .nav-service-icon {
  flex: 0 0 34px;
  width: 34px;
  height: 34px;
  border-radius: 9px;
}
.main-navigation .ki-menu-label { min-width: 0; }
.main-navigation .ki-platform-logo {
  flex-basis: 34px;
  width: 34px;
  height: 34px;
  padding: 6px;
  background: #edf5fc;
  border-radius: 9px;
}
.main-navigation .ki-platform-logo img {
  width: 22px;
  height: 22px;
}

/* Active navigation: text accent and fine underline. */
.main-navigation a:hover,
.main-navigation a:focus-visible,
.main-navigation a.is-current {
  background: transparent;
  color: #1670B8;
}
.main-navigation a.is-current {
  position: relative;
}
.main-navigation a.is-current::after {
  content: "";
  position: absolute;
  left: 7px;
  right: 7px;
  bottom: 3px;
  height: 2px;
  border-radius: 2px;
  background: #1670B8;
  pointer-events: none;
}
.main-navigation .submenu-arrow:hover,
.main-navigation .submenu-arrow[aria-expanded="true"] {
  background: transparent;
  color: #1670B8;
}

/* Mobile navigation: airy panel and clear accordion levels. */
@media (max-width: 1199px) {
  .main-navigation .menu-toggle { width: 46px; height: 46px; border: 1px solid #dbe6ef; border-radius: 14px; color: #1670b8; background: #f6f9fc; }
  .main-navigation > .nav-dropdown { inset: 100% 10px auto; padding: 20px 16px 24px; border: 1px solid #e3eaf1; border-radius: 0 0 22px 22px; box-shadow: 0 22px 45px #18334d24; background: #fff; scrollbar-width: thin; }
  .main-navigation > .nav-dropdown > .nav-list > li { border-bottom: 1px solid #edf1f5; }
  .main-navigation .nav-link { min-height: 60px; padding: 18px 10px; font-size: 19px; font-weight: 500; letter-spacing: -.3px; }
  .main-navigation .submenu-arrow { width: 44px; height: 44px; border-radius: 50%; color: #1670b8; background: #f3f7fb; }
  .main-navigation .submenu-arrow[aria-expanded="true"] { background: #eaf3fa; }
  .main-navigation #mobile-marketing-menu { margin: 4px 0 18px; padding: 6px 10px; border: 1px solid #e5edf4; border-radius: 16px; background: #f8fafc; }
  .main-navigation #mobile-marketing-menu > li { border-bottom: 1px solid #e7edf3; }
  .main-navigation #mobile-marketing-menu .submenu-link { min-height: 56px; padding: 14px 4px; gap: 12px; }
  .main-navigation #mobile-marketing-menu .nav-service-title { font-size: 15px; line-height: 1.4; font-weight: 600; overflow-wrap: normal; }
  .main-navigation #mobile-marketing-menu .nav-service-description { display: none; }
  .main-navigation #mobile-marketing-menu .nav-service-icon { flex-basis: 36px; width: 36px; height: 36px; border-radius: 11px; background: #eaf2f9; color: #1670b8; }
  .main-navigation .submenu .submenu { margin: 0 0 12px 8px; padding: 2px 8px 2px 12px; border-left: 2px solid #d6e7f4; border-radius: 0 10px 10px 0; background: #fff; }
  .main-navigation .submenu .submenu .submenu-link { font-size: 14px; min-height: 48px; }
  .main-navigation a.is-current::after { left: 10px; right: auto; width: 28px; bottom: 8px; }
}

@media (max-width: 1199px) {
  .main-navigation #mobile-marketing-menu .submenu-link { align-items: center; }
  .main-navigation #mobile-marketing-menu .nav-service-copy { justify-content: center; gap: 0; }
  .main-navigation #mobile-marketing-menu .nav-service-icon,
  .main-navigation #mobile-marketing-menu .ki-platform-logo { align-self: center; }
  .main-navigation #mobile-marketing-menu .has-submenu { align-items: center; }
  .main-navigation #mobile-marketing-menu .submenu-arrow { align-self: center; margin-block: 0; }
  .main-navigation #mobile-marketing-menu .nav-service-title { margin: 0; }
}

.mobile-menu-backdrop, .mobile-drawer-close { display: none; }
@media (max-width:1199px) {
 html.mobile-drawer-open, html.mobile-drawer-open body { overflow: hidden; }
 .main-navigation .mobile-menu-backdrop { display:block; position:fixed; inset:0; z-index:1000; background:rgba(13,29,44,.42); opacity:0; visibility:hidden; transition:opacity .28s ease, visibility .28s; }
 .mobile-drawer-open .main-navigation .mobile-menu-backdrop { opacity:1; visibility:visible; }
 .main-navigation > #mobile-navigation { display:block; position:fixed; inset:0 auto 0 0; width:80vw; height:100dvh; max-height:100dvh; box-sizing:border-box; padding:76px 16px 28px; padding-bottom:max(28px,env(safe-area-inset-bottom)); border:0; border-radius:0 22px 22px 0; z-index:1001; transform:translateX(0); visibility:visible; transition:transform .3s ease, visibility .3s; }
 .main-navigation > #mobile-navigation[aria-hidden="true"] { display:block; transform:translateX(-100%); visibility:hidden; pointer-events:none; }
 .main-navigation .mobile-drawer-close { display:flex; position:absolute; right:16px; top:18px; align-items:center; justify-content:center; width:44px; height:44px; border:1px solid #e1e8ef; border-radius:50%; background:#f6f9fc; color:#1670b8; cursor:pointer; }
 .mobile-drawer-close svg { width:22px; height:22px; }
 .main-navigation #mobile-marketing-menu .nav-service-title { overflow-wrap:anywhere; }
 .main-navigation #mobile-marketing-menu .nav-service-icon { flex-basis:30px; width:30px; height:30px; }
 .main-navigation #mobile-marketing-menu .submenu-link { gap:8px; }
 .mobile-drawer-open .nl-contact-widget { visibility:hidden; }
}
@media (prefers-reduced-motion: reduce) {
 .main-navigation > #mobile-navigation, .main-navigation .mobile-menu-backdrop { transition:none; }
}

.mobile-drawer-logo { display: none; }
@media (max-width:1199px) {
 .main-navigation .mobile-drawer-logo { display:block; position:absolute; left:16px; top:25px; width:calc(100% - 88px); max-width:240px; height:30px; object-fit:contain; object-position:left center; }
}

.mobile-drawer-call { display:none; }
@media (max-width:1199px) {
 .main-navigation .mobile-drawer-call { display:block; margin-top:28px; padding-top:18px; border-top:1px solid #e5edf4; }
 .main-navigation .mobile-drawer-call a { display:flex; align-items:center; justify-content:center; gap:10px; min-height:50px; padding:14px 12px; border-radius:12px; background:#1670b8; color:#fff; font-size:16px; font-weight:600; }
 .main-navigation .mobile-drawer-call a:hover, .main-navigation .mobile-drawer-call a:focus-visible { background:#125e9b; color:#fff; }
 .mobile-drawer-call svg { width:20px; height:20px; flex:0 0 20px; }
}

.mobile-drawer-hours { margin:0 0 12px; text-align:center; font-size:13px; line-height:1.5; color:#586b7d; }

@media (max-width:1199px) {
 .main-navigation .mobile-drawer-call a.mobile-drawer-mail { margin-top:10px; border:1px solid #ccdfee; background:#fff; color:#1670b8; }
 .main-navigation .mobile-drawer-call a.mobile-drawer-mail:hover,
 .main-navigation .mobile-drawer-call a.mobile-drawer-mail:focus-visible { background:#edf5fc; color:#125e9b; }
}
/* Keep expanded disclosures in their column and scroll the whole menu vertically. */
@media (min-width: 1200px) {
  .desktop-nav #desktop-marketing-menu:not([hidden]) {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    columns: auto;
    gap: 6px 16px;
    align-items: start;
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: #82b8df #f2f7fb;
    scrollbar-gutter: stable;
  }
  .desktop-nav #desktop-marketing-menu > li {
    min-width: 0;
    break-inside: auto;
    margin-bottom: 0;
  }
  .desktop-nav #desktop-marketing-menu > li:nth-child(4) {
    break-before: auto;
  }
  .desktop-nav #desktop-marketing-menu > li > .submenu {
    min-width: 0;
  }
}

/* Monochrome brand symbols in desktop and mobile submenus. */
.main-navigation .ki-platform-logo{position:relative}
.main-navigation .ki-platform-logo img{opacity:0}
.main-navigation .ki-platform-logo::before{content:"";position:absolute;inset:6px;background:#1670b8;-webkit-mask:var(--nav-brand-mask) center/contain no-repeat;mask:var(--nav-brand-mask) center/contain no-repeat}
.main-navigation .ki-platform-logo:has(img[src*="/google-icon.svg"]){--nav-brand-mask:url("/images/ki-seo/google-icon.svg")}
.main-navigation .ki-platform-logo:has(img[src*="/openai-icon.svg"]){--nav-brand-mask:url("/images/ki-seo/openai-icon.svg")}
.main-navigation .ki-platform-logo:has(img[src*="/claude-icon.svg"]){--nav-brand-mask:url("/images/ki-seo/claude-icon.svg")}
.main-navigation .ki-platform-logo:has(img[src*="/copilot-icon.svg"]){--nav-brand-mask:url("/images/ki-seo/copilot-icon.svg")}
.main-navigation .ki-platform-logo:has(img[src*="/perplexity-icon.svg"]){--nav-brand-mask:url("/images/ki-seo/perplexity-icon.svg")}

/* Center the mobile contact row horizontally and vertically. */
@media(max-width:767px){
 .site-header .header-topbar > .container{align-items:center;justify-content:center}
 .site-header .header-contact{justify-content:center;align-items:center}
 .site-header .header-contact-links{width:100%}
 .site-header .header-contact-links .icon-list-items.inline-items{display:flex;align-items:center;justify-content:center;gap:8px 15px;margin:0;padding:0}
 .site-header .header-contact-links .icon-list-items.inline-items .icon-list-item{margin:0}
}

@media(max-width:767px){.site-header .header-details{display:none}}

/* Source: assets/css/site-footer.css */
/* Shared footer: one column on phones, two on tablets, four on wide screens. */
.site-footer {
  background-color: #0b1a2b;
  color: var(--color-muted-footer);
  font-family: var(--font-family), sans-serif;
  font-size: 15px;
  line-height: 25px;
}
.site-footer .site-footer-leistungen-group,
.site-footer .site-footer-leistungen-section {
  padding: 0;
  gap: 0;
}
.site-footer .site-footer-leistungen-section > .container {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
  gap: 36px;
  width: 100%;
  height: auto;
  max-width: 1240px;
  margin-inline: auto;
  padding: 48px 22px;
}
.site-footer .site-footer-leistungen-section > .container > .layout {
  width: auto;
  min-width: 0;
  padding: 0;
  gap: 16px;
}
.site-footer .content-block,
.site-footer p,
.site-footer .heading {
  margin: 0;
}
.site-footer .rich-text {
  color: var(--color-muted-footer);
  font-family: inherit;
  font-size: 15px;
  line-height: 25px;
}
.site-footer .heading {
  color: var(--color-text-light);
  font-size: 17px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: 0.01em;
}
.site-footer .site-footer-nlm-logo-white-300x52-image img {
  display: block;
  width: 250px;
  max-width: 100%;
  height: auto;
}
.site-footer .icon-list-items {
  margin: 0;
  padding: 0;
  list-style: none;
}
.site-footer .icon-list-item {
  min-width: 0;
  margin: 0;
  padding: 0;
}
.site-footer .icon-list-item::after {
  display: none;
}
.site-footer .icon-list-item > a,
.site-footer .icon-list-item > .icon-list-text {
  min-width: 0;
  min-height: 44px;
  padding-block: 9px;
  font-size: 16px;
  line-height: 26px;
}
.site-footer .icon-list-text {
  min-width: 0;
  color: var(--color-accent);
  overflow-wrap: anywhere;
}
.site-footer .icon-list-icon + .icon-list-text {
  padding-inline-start: 0;
}
.site-footer
  .site-footer-suchmaschinenoptimierung-suchmaschinenwerbung-content-marketing-social-media-links
  .icon-list-icon {
  display: none;
}
.site-footer .site-footer-49-261-39410783-info-newlight-de-links .icon-list-item,
.site-footer .site-footer-49-261-39410783-info-newlight-de-links .icon-list-item > a {
  gap: 12px;
}
.site-footer .site-footer-49-261-39410783-info-newlight-de-links .icon-list-icon {
  flex: 0 0 16px;
  align-items: center;
  justify-content: center;
}
.site-footer .site-footer-49-261-39410783-info-newlight-de-links .icon-list-icon svg {
  width: 14px;
  height: 14px;
  margin: 0;
  fill: var(--color-accent);
}
.site-footer a {
  text-decoration: none;
  text-underline-offset: 4px;
}
.site-footer a:focus-visible {
  outline: 2px solid var(--color-text-light);
  outline-offset: 4px;
  border-radius: 3px;
}
.site-footer a:hover .icon-list-text,
.site-footer a:focus-visible .icon-list-text {
  color: var(--color-text-light);
  text-decoration: underline;
}
.site-footer .site-footer-kostenlos-anfragen-action {
  margin-top: 4px;
}
.site-footer .site-footer-kostenlos-anfragen-action .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 48px;
  max-width: 100%;
  padding: 12px 22px;
  border-radius: 999px;
  background: var(--color-primary);
  color: var(--color-text-light);
  font-family: inherit;
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  text-align: center;
  white-space: normal;
  transition: background-color 0.2s ease;
}
@media (hover: hover) {
  .site-footer .site-footer-kostenlos-anfragen-action .button:hover {
    background-color: #0d4f86;
  }
}
.site-footer .site-footer-kostenlos-anfragen-action .button:active {
  background-color: #0d4f86;
}
.site-footer .site-footer-2026-newlight-media-seo-online-marketing-group {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  width: 100%;
  max-width: 1240px;
  margin-inline: auto;
  padding: 20px 22px;
  border-top: 1px solid #26394f;
}
.site-footer .site-footer-2026-newlight-media-seo-online-marketing-text {
  font-size: 14px;
  line-height: 22px;
}
.site-footer .site-footer-impressum-datenschutz-links .icon-list-items {
  display: flex;
  flex-wrap: wrap;
  gap: 0 24px;
  margin: 0;
}
.site-footer .site-footer-impressum-datenschutz-links .inline-items .icon-list-item {
  margin: 0;
}
.site-footer .site-footer-impressum-datenschutz-links .icon-list-item > a,
.site-footer .site-footer-impressum-datenschutz-links .icon-list-item > .icon-list-text {
  font-size: 14px;
  line-height: 26px;
}
.site-footer .site-footer-impressum-datenschutz-links .icon-list-text {
  color: var(--color-muted-footer);
}
@media (min-width: 768px) {
  .site-footer .site-footer-leistungen-section > .container {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 40px 48px;
    padding: 56px 32px;
  }
  .site-footer .site-footer-kostenlos-anfragen-action .button {
    width: auto;
  }
  .site-footer .site-footer-2026-newlight-media-seo-online-marketing-group {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    column-gap: 24px;
    padding-inline: 32px;
  }
}
@media (min-width: 1200px) {
  .site-footer .site-footer-leistungen-section > .container {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 32px;
    padding: 64px 44px 48px;
  }
  .site-footer .site-footer-2026-newlight-media-seo-online-marketing-group {
    padding-inline: 44px;
  }
}
@media (min-width: 1200px) and (pointer: fine) {
  .site-footer .icon-list-item > a,
  .site-footer .icon-list-item > .icon-list-text {
    min-height: 36px;
    padding-block: 5px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .site-footer .site-footer-kostenlos-anfragen-action .button {
    transition: none;
  }
}
/* Circular markers for every linked service in the footer. */
.site-footer .site-footer-suchmaschinenoptimierung-suchmaschinenwerbung-content-marketing-social-media-links a {
  display: flex;
  align-items: center;
  gap: 8px;
}
.site-footer .site-footer-suchmaschinenoptimierung-suchmaschinenwerbung-content-marketing-social-media-links a::before {
  content: "";
  display: block;
  flex: 0 0 14px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background-color: #1670b8;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m10 7 5 5-5 5'/%3E%3C/svg%3E");
  background-size: 10px;
  background-position: center;
  background-repeat: no-repeat;
  transition: background-color .18s ease;
}
.site-footer .site-footer-suchmaschinenoptimierung-suchmaschinenwerbung-content-marketing-social-media-links a:hover::before,
.site-footer .site-footer-suchmaschinenoptimierung-suchmaschinenwerbung-content-marketing-social-media-links a:focus-visible::before {
  background-color: #2588d6;
}
@media (min-width: 768px) {
  .site-footer .site-footer-leistungen-group-leistungen {
    transform: translateX(16px);
  }
}

/* Source: assets/css/marquee.css */
.nlm-logo-marquee {
  overflow: hidden;
  width: 100%;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
}
.nlm-logo-track {
  display: flex;
  align-items: center;
  gap: 28px;
  width: max-content;
  animation: nlmLogoMarquee 28s linear infinite;
}
.nlm-logo-marquee:hover .nlm-logo-track {
  animation-play-state: paused;
}
.nlm-logo-item {
  flex: 0 0 228px;
  width: 228px;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 88px;
  padding: 0 28px;
  background: var(--color-text-light);
  border: 1px solid #e2e9f1;
  border-radius: 14px;
  box-shadow: 0 12px 34px -18px rgba(16, 42, 68, 0.28);
}
.nlm-logo-item img {
  height: 56px;
  width: auto;
  max-width: 170px;
  object-fit: contain;
  filter: grayscale(1);
  opacity: 0.6;
  transition:
    filter 0.35s ease,
    opacity 0.35s ease,
    transform 0.35s ease;
}
.nlm-logo-item:hover img {
  filter: grayscale(0);
  opacity: 1;
  transform: translateY(-2px);
}
@keyframes nlmLogoMarquee {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(calc(-50% - 14px));
  }
}
@media (prefers-reduced-motion: reduce) {
  .nlm-logo-track {
    animation: none;
    flex-wrap: wrap;
    width: 100%;
    justify-content: center;
  }
}

/* Source: assets/css/ai-carousel.css */
/* Share the certification carousel's logo cards, edge fade, and hover styles. */
.home .home-ai-platforms {
  padding: 30px var(--home-gutter);
  background: var(--color-text-light);
}
.home-ai-platforms .ai-carousel-shell {
  display: flex;
  align-items: center;
  max-width: 1320px;
  margin-inline: auto;
}
.home-ai-platforms .ai-carousel-viewport {
  flex: 1;
  min-width: 0;
  overflow-x: auto;
  scrollbar-width: none;
  scroll-snap-type: x mandatory;
}
.home-ai-platforms .ai-carousel-viewport::-webkit-scrollbar {
  display: none;
}
.home-ai-platforms.is-enhanced .ai-carousel-viewport {
  overflow: hidden;
  touch-action: pan-y;
  cursor: grab;
}
.home-ai-platforms .ai-carousel-track {
  display: flex;
  align-items: center;
  gap: 28px;
  padding: 16px 0;
  margin: 0;
  list-style: none;
}
.home-ai-platforms .ai-carousel-slide {
  box-sizing: border-box;
  flex: 0 0 228px;
  width: 228px;
  scroll-snap-align: start;
}
.home-ai-platforms .ai-carousel-slide img {
  display: block;
  width: 170px;
  user-select: none;
  -webkit-user-drag: none;
}
.home-ai-platforms .ai-carousel-viewport:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 4px;
}
@media (max-width: 767px) {
  .home .home-ai-platforms {
    padding-block: 22px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .home-ai-platforms .ai-carousel-track {
    flex-wrap: wrap;
    justify-content: center;
    transform: none !important;
  }
  .home-ai-platforms .ai-carousel-slide img {
    transition: none;
  }
  .home-ai-platforms .ai-carousel-viewport {
    overflow: visible;
    -webkit-mask-image: none;
    mask-image: none;
  }
}
.home-ai-platforms .ai-carousel-slide img[alt="Claude"] {
  width: 115px;
}
@media (max-width: 767px) {
  .home-ai-platforms .ai-carousel-slide img[alt="Claude"] { width: 100px; }
}

/* Source: assets/css/navigation.css */
.site-header .header-bar.is-elevated {
  box-shadow: 0 12px 32px -16px rgba(11, 26, 43, 0.12);
}
.desktop-nav .nav-list {
  position: relative;
  --pill-x: 0px;
  --pill-y: 0px;
  --pill-w: 0px;
  --pill-h: 0px;
  --pill-opacity: 0;
}
.desktop-nav .nav-list:after {
  content: "";
  position: absolute;
  top: var(--pill-y);
  left: var(--pill-x);
  width: var(--pill-w);
  height: var(--pill-h);
  border-radius: 10px;
  background-color: rgba(22, 112, 184, 0.09);
  opacity: var(--pill-opacity);
  pointer-events: none;
  transition:
    top 0.25s cubic-bezier(0.4, 0, 0.2, 1),
    left 0.25s cubic-bezier(0.4, 0, 0.2, 1),
    width 0.25s cubic-bezier(0.4, 0, 0.2, 1),
    height 0.25s cubic-bezier(0.4, 0, 0.2, 1),
    opacity 0.15s ease;
  z-index: 0;
}
.desktop-nav .nav-list > li {
  z-index: 1;
}
.header-cta .button {
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}
.site-header .header-cta .button:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 34px -10px rgba(22, 112, 184, 0.9);
}
.header-logo a {
  display: inline-block;
  transition: transform 0.2s ease;
}
.header-logo a:hover {
  transform: scale(1.03);
}

/* Source: assets/css/interactions.css */
.accordion-trigger {
  display: block;
  width: 100%;
  border: 0;
  border-radius: 0;
  text-align: left;
  font: inherit;
}
.accordion-trigger,
.accordion-trigger:focus,
.accordion-trigger:hover {
  color: inherit;
  background: transparent;
}
.accordion-trigger:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 3px;
}
.accordion-panel.is-active {
  display: block;
}
.form-notice {
  margin-top: 12px;
  padding: 12px 16px;
  border-radius: 4px;
  font-size: 14px;
  line-height: 1.5;
  background: #fff4e5;
  color: #7a4f01;
  border: 1px solid #ffd8a8;
}
.form-notice.is-success {
  background: #e8f5e9;
  color: #1b5e20;
  border-color: #a5d6a7;
}
.reveal.is-entering {
  animation: section-reveal 0.65s cubic-bezier(0.2, 0.7, 0.2, 1) both;
}
[data-reveal="up"].is-entering {
  animation: fadeInUp 1.25s both;
}
[data-reveal="fade"].is-entering {
  animation: fadeIn 1.25s both;
}
@keyframes section-reveal {
  0% {
    opacity: 0;
    transform: translateY(28px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto !important;
  }
  *,
  :after,
  :before {
    animation: none !important;
    transition: none !important;
  }
  .reveal,
  [data-reveal] {
    opacity: 1;
    transform: none;
  }
}
.accordion-trigger {
  white-space: normal;
}
.accordion-trigger .accordion-title {
  color: inherit;
}
.home .home-seo {
  padding-bottom: 116px;
}
@media (max-width: 1024px) {
  .home .home-seo {
    padding-bottom: 100px;
  }
}
@media (max-width: 767px) {
  .home .home-seo {
    padding-bottom: 80px;
  }
}

/* Source: assets/css/home-services-cards.css */

.home .nl-services{display:block;background:#090d15;padding:80px 28px 88px;color:#fff;position:relative}
.nl-services-shell{max-width:1440px;margin:0 auto}.nl-services-heading{display:grid;grid-template-columns:180px 1fr;gap:32px;margin-bottom:52px}.nl-services-kicker{font:700 11px/1.5 Roboto,sans-serif;letter-spacing:1.5px;margin:12px 0;color:#c8d1df}.nl-services-heading h2{font:800 clamp(32px,3.6vw,54px)/1.12 Roboto,sans-serif;letter-spacing:-1.2px;color:#fff;margin:0 0 18px}.nl-services-heading>div>p{font:400 16px/1.7 Roboto,sans-serif;color:#aeb8c8;max-width:750px;margin:0}.nl-services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.nl-service-card{display:flex;flex-direction:column;position:relative;overflow:hidden;padding:30px 24px 24px;border:1px solid #2b3343;border-radius:22px;background:radial-gradient(ellipse at 100% 0%,#174c9b 0%,transparent 38%),linear-gradient(150deg,#121a29,#0b1019);text-decoration:none;color:#fff;transition:transform .2s,border-color .2s;min-width:0}.nl-service-card:hover{transform:translateY(-5px);border-color:#659aff}.nl-service-card:focus-visible{outline:3px solid #91b9ff;outline-offset:5px}.nl-service-orb{width:104px;height:104px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 28px;border:1px solid #497bd0;background:radial-gradient(circle at 35% 30%,#203f79,#101b36 75%);box-shadow:0 0 34px #2379ee20;color:#73a7ff}.nl-service-orb svg{width:49px;height:49px;filter:drop-shadow(0 0 9px #286fec70)}.nl-service-card h3{font:800 30px/1.1 Roboto,sans-serif;letter-spacing:-.7px;color:#fff;margin:0 0 9px}.nl-service-name{font:500 14px/1.5 Roboto,sans-serif;color:#9cc4ff;margin:0 0 16px}.nl-service-copy{font:400 15px/1.65 Roboto,sans-serif;color:#bcc5d4;margin:0 0 34px;min-height:125px}.nl-service-card ul{list-style:none;padding:0;margin:auto 0 0}.nl-service-card li{border-top:1px solid #303744;padding:11px 0;font:500 11px/1.5 Roboto,sans-serif;text-transform:uppercase;letter-spacing:.45px;color:#c7cdd7}.nl-service-link{display:flex;align-items:center;justify-content:space-between;padding-top:21px;font:500 13px/1.4 Roboto,sans-serif;color:#99bcff}.nl-service-link span{font-size:22px}@media(max-width:1100px){.nl-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nl-services-heading{grid-template-columns:1fr;gap:14px}.nl-service-copy{min-height:74px}}@media(max-width:600px){.home .nl-services{padding:52px 20px 60px}.nl-services-grid{grid-template-columns:1fr}.nl-services-heading{margin-bottom:30px}.nl-service-card{padding:28px 24px}.nl-service-copy{min-height:0;margin-bottom:28px}.nl-services-heading h2{letter-spacing:-.7px}}@media(prefers-reduced-motion:reduce){.nl-service-card{transition:none}.nl-service-card:hover{transform:none}}

/* NEWLIGHT palette: light surfaces, brand blue and silver dividers. */
.home .nl-services{background:#f2f6fb;color:#172c40}
.nl-services-kicker{color:#1670b8}
.nl-services-heading h2{color:#172c40}
.nl-services-heading>div>p{color:#5c6b7a}
.nl-service-card{background:radial-gradient(ellipse at 100% 0%,#dcecfb 0%,transparent 46%),#fff;border-color:#d8e2ec;color:#172c40;box-shadow:0 12px 30px rgba(25,64,99,.06)}
.nl-service-card:hover{border-color:#1670b8;box-shadow:0 16px 34px rgba(22,112,184,.12)}
.nl-service-orb{background:radial-gradient(circle at 35% 30%,#fff,#e4f0fc 75%);border-color:#bdd6ed;box-shadow:0 6px 22px rgba(22,112,184,.08);color:#1670b8}
.nl-service-orb svg{filter:none}
.nl-service-card h3{color:#172c40}
.nl-service-name{color:#1670b8}
.nl-service-copy{color:#5c6b7a}
.nl-service-card li{border-color:#dce3ea;color:#506174}
.nl-service-link{color:#1670b8}

.nl-ai-symbols{display:grid;grid-template-columns:repeat(2,24px);gap:12px;align-items:center;justify-items:center}.nl-service-orb .nl-ai-symbols svg{display:block;width:24px;height:24px;fill:currentColor}.nl-service-orb .nl-ai-symbols svg:last-child{fill:currentColor}

.nl-services-more{margin-top:30px;display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap}.nl-services-more p{margin:0;color:#5c6b7a;font-size:15px}.nl-services-more>div{display:flex;gap:24px;flex-wrap:wrap;justify-content:center}.nl-services-more a{color:#1670b8;font-weight:600;text-decoration:none}.nl-services-more a:hover{text-decoration:underline}.nl-services-more a span{margin-left:6px}

.nl-sea-symbols{display:flex;align-items:center;justify-content:center;gap:10px}.nl-service-orb .nl-sea-symbols svg{width:32px;height:36px}

.hero-service-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:52px;padding-top:26px;border-top:1px solid rgba(255,255,255,.16);position:relative;z-index:4}
.hero-service-strip>a{display:flex;align-items:center;justify-content:center;gap:14px;color:#fff;text-decoration:none;font:600 17px/1.4 Roboto,sans-serif;animation:hero-service-enter .65s both;animation-delay:var(--hero-service-delay)}
.hero-service-strip>a:hover{color:#9ccfff}.hero-service-strip>a:focus-visible{outline:2px solid #9ccfff;outline-offset:7px;border-radius:4px}
.hero-service-symbol{display:flex;align-items:center;justify-content:center;width:50px;height:50px;flex:0 0 50px;color:#73baff}.hero-service-symbol>svg{width:38px;height:38px}.hero-service-symbol .nl-sea-symbols{gap:5px}.hero-service-symbol .nl-sea-symbols svg{width:23px;height:28px}.hero-service-symbol .nl-ai-symbols{grid-template-columns:repeat(2,19px);gap:5px}.hero-service-symbol .nl-ai-symbols svg{width:19px;height:19px;fill:currentColor}
@keyframes hero-service-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:650px){.hero-service-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px;margin-top:32px}.hero-service-strip>a{justify-content:flex-start;font-size:15px;gap:10px}}
@media(prefers-reduced-motion:reduce){.hero-service-strip>a{animation:none}}

@keyframes hero-service-fly-in{from{opacity:0;transform:translate(-34px,24px)}to{opacity:1;transform:translate(0,0)}}
@media(prefers-reduced-motion:no-preference){.hero-service-strip>a{animation:hero-service-fly-in .7s cubic-bezier(.22,1,.36,1) both;animation-delay:var(--hero-service-delay)}}

/* Larger service symbols and labels in the hero. */
.hero-service-strip>a{font-size:21px;gap:18px}
.hero-service-symbol{width:64px;height:64px;flex-basis:64px}
.hero-service-symbol>svg{width:50px;height:50px}
.hero-service-symbol .nl-sea-symbols{gap:6px}
.hero-service-symbol .nl-sea-symbols svg{width:29px;height:36px}
.hero-service-symbol .nl-ai-symbols{grid-template-columns:repeat(2,25px);gap:6px}
.hero-service-symbol .nl-ai-symbols svg{width:25px;height:25px}
@media(max-width:650px){
 .hero-service-strip>a{font-size:18px;gap:10px}
 .hero-service-symbol{width:54px;height:54px;flex-basis:54px}
 .hero-service-symbol>svg{width:44px;height:44px}
 .hero-service-symbol .nl-sea-symbols svg{width:24px;height:30px}
 .hero-service-symbol .nl-ai-symbols{grid-template-columns:repeat(2,22px);gap:5px}
 .hero-service-symbol .nl-ai-symbols svg{width:22px;height:22px}
}

/* Glossy finish across the full service icon discs. */
.nl-service-orb{
 position:relative;isolation:isolate;overflow:hidden;
 background:linear-gradient(145deg,#ffffff 0%,#f4faff 28%,#d8eafb 58%,#edf7ff 82%,#cce3f7 100%);
 border-color:#bad4eb;
 box-shadow:inset 0 2px 3px rgba(255,255,255,.95),inset 0 -3px 7px rgba(22,112,184,.13),0 7px 22px rgba(22,112,184,.13);
}
.nl-service-orb::before{
 content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
 background:linear-gradient(125deg,transparent 12%,rgba(255,255,255,.15) 24%,rgba(255,255,255,.85) 36%,rgba(255,255,255,.25) 45%,transparent 57%);
}
.nl-service-orb>svg,.nl-service-orb>span{position:relative;z-index:1}

/* Moving light sweep across each complete icon circle. */
.nl-service-orb::before{
 inset:-35%;border-radius:0;z-index:2;
 background:linear-gradient(110deg,transparent 36%,rgba(255,255,255,.25) 43%,rgba(255,255,255,.9) 50%,rgba(255,255,255,.25) 57%,transparent 64%);
 transform:translateX(-110%);
 animation:service-orb-shine 4.8s ease-in-out infinite;
}
.nl-service-card:nth-child(2) .nl-service-orb::before{animation-delay:.35s}
.nl-service-card:nth-child(3) .nl-service-orb::before{animation-delay:.7s}
.nl-service-card:nth-child(4) .nl-service-orb::before{animation-delay:1.05s}
@keyframes service-orb-shine{
 0%,12%{transform:translateX(-110%)}
 40%,100%{transform:translateX(110%)}
}
@media(prefers-reduced-motion:reduce){
 .nl-service-orb::before{animation:none;transform:none;opacity:.3}
}

.nl-services-more a{display:inline-flex;align-items:center;gap:6px}.nl-services-more .nl-extra-arrow{width:17px;height:17px;flex-shrink:0}

/* Source: assets/css/home-spacing.css */
/* Consistent breathing room between homepage sections. */
.home{--section-air:clamp(88px,8vw,132px)}
.home .home-ai-platforms{padding-top:48px;padding-bottom:48px}
.home .home-about{padding-top:var(--section-air);padding-bottom:80px}
.home .nl-services,.home .home-partners,.home .home-blog,.home .home-experience{padding-top:var(--section-air);padding-bottom:var(--section-air)}
.home .home-process{padding-top:var(--section-air);padding-bottom:calc(var(--section-air) + 40px)}
.home .nl-services-heading{margin-bottom:64px}
.home .home-partners-heading{margin-bottom:36px}
.home .news-header{margin-bottom:48px}
.home .process-steps{margin-top:64px;margin-bottom:56px}
.home .nl-services-more{margin-top:40px}
@media(max-width:767px){
.home{--section-air:72px}
.home .home-ai-platforms{padding-top:32px;padding-bottom:32px}
.home .home-about{padding-bottom:56px}
.home .nl-services-heading{margin-bottom:36px}
.home .home-partners-heading{margin-bottom:26px}
.home .news-header{margin-bottom:32px}
.home .process-steps{margin-top:40px;margin-bottom:36px}
.home .nl-services-more{margin-top:30px}
}

/* Clean transition below the bulb section. */
.home .home-about::before,
.home .home-about::after{content:none;display:none}

.home .home-about{padding-bottom:0}
.home .home-blb-image img{display:block;margin-left:auto}

/* Source: assets/css/contact-widget.css */
.nl-contact-widget{position:fixed;right:24px;bottom:24px;z-index:9000;font:400 15px/1.5 Roboto,sans-serif;color:#243746}.nl-contact-widget button,.nl-contact-widget input,.nl-contact-widget textarea{font:inherit}.nl-contact-toggle{display:flex;align-items:center;gap:10px;margin-left:auto;border:1px solid #56acf0;border-radius:50px;padding:14px 22px;background:#1670b8;color:white;box-shadow:0 8px 28px #103c6630;cursor:pointer}.nl-contact-toggle svg{width:24px;height:24px}.nl-contact-widget section{position:absolute;right:0;bottom:72px;width:360px;max-height:calc(100dvh - 120px);overflow:auto;background:white;border:1px solid #d9e4ee;border-radius:20px;box-shadow:0 16px 60px #142e4933}.nl-contact-widget [hidden]{display:none!important}.nl-contact-widget header{display:flex;justify-content:space-between;align-items:center;padding:22px;background:#1670b8;color:white}.nl-contact-widget small{font-size:10px;letter-spacing:1.5px}.nl-contact-widget h2{font-size:23px;line-height:1.3;margin:5px 0 0;color:white}.nl-contact-close{border:0;background:transparent;color:white;font-size:28px!important;cursor:pointer;padding:8px}.nl-contact-widget form{padding:22px}.nl-contact-widget label{display:block;font-size:13px;font-weight:500;margin-bottom:6px}.nl-contact-widget input,.nl-contact-widget textarea{display:block;box-sizing:border-box;width:100%;border:1px solid #c8d7e3;border-radius:8px;background:#f8fafc;color:#152a3d;padding:10px 12px;margin-bottom:14px;min-width:0}.nl-contact-widget textarea{resize:vertical}.nl-contact-note,.nl-contact-status{font-size:12px;line-height:1.5;margin:10px 0;color:#546679}.nl-contact-submit{width:100%;padding:12px;border:0;border-radius:8px;background:#1670b8;color:white;cursor:pointer}.nl-contact-bottom{display:flex;justify-content:space-between;gap:12px;margin-top:16px;font-size:12px}.nl-contact-bottom a{color:#1670b8}.nl-contact-widget :focus-visible{outline:3px solid #56acf0;outline-offset:3px}@media(max-width:480px){.nl-contact-widget{right:12px;bottom:max(12px,env(safe-area-inset-bottom))}.nl-contact-widget section{width:calc(100vw - 24px);max-height:calc(100dvh - 100px)}.nl-contact-toggle{padding:12px 18px}.nl-contact-widget input,.nl-contact-widget textarea{font-size:16px}}

/* Keep widget interactions in the NEWLIGHT blue palette. */
.nl-contact-widget .nl-contact-toggle:hover,.nl-contact-widget .nl-contact-toggle:focus,
.nl-contact-widget .nl-contact-submit:hover,.nl-contact-widget .nl-contact-submit:focus{background:#125f9d!important;color:#fff!important;border-color:#56acf0!important}
.nl-contact-widget .nl-contact-close:hover,.nl-contact-widget .nl-contact-close:focus{background:rgba(255,255,255,.14)!important;color:#fff!important}
.nl-contact-widget a:hover,.nl-contact-widget a:focus{color:#125f9d!important;background:transparent!important}

.nl-contact-widget .nl-contact-toggle{padding:12px 18px;gap:9px;font-weight:500}

.nl-contact-widget .nl-contact-consent{display:flex;align-items:flex-start;gap:9px;margin:4px 0 14px;font-size:12px;line-height:1.5;font-weight:400}
.nl-contact-widget .nl-contact-consent input{width:16px;height:16px;min-width:16px;flex:0 0 16px;margin:2px 0 0;padding:0;accent-color:#1670b8}
.nl-contact-widget .nl-contact-consent a{color:#1670b8;text-decoration:underline}

.nl-contact-phone-area{padding:20px 22px 24px;border-top:1px solid #dce6ef;background:#f3f7fb;text-align:center}
.nl-contact-phone-area p{margin:0 0 12px;font-size:14px;font-weight:500;color:#243746}
.nl-contact-widget .nl-contact-phone-button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:10px;border:1px solid #1670b8;border-radius:9px;background:#fff;color:#1670b8;text-decoration:none;font-size:17px;font-weight:600}
.nl-contact-widget .nl-contact-phone-button:hover,.nl-contact-widget .nl-contact-phone-button:focus-visible{background:#e7f1fa!important;color:#125e9b!important}
.nl-contact-phone-button svg{width:20px;height:20px;flex-shrink:0}
.nl-contact-phone-hours{display:block;margin-top:10px;font-size:12px;color:#586b7d}

/* Source: assets/css/cookie-consent.css */
.nl-consent{border:1px solid #dae5ee;border-radius:22px;padding:0;width:min(600px,calc(100vw - 28px));max-height:calc(100dvh - 32px);overflow:auto;color:#243746;background:#fff;box-shadow:0 24px 90px #102c4940;font:400 15px/1.6 Roboto,Arial,sans-serif;margin:auto}.nl-consent::backdrop{background:rgba(16,34,51,.48);backdrop-filter:blur(3px)}.nl-consent-top{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:24px 28px;border-bottom:1px solid #e4ecf2;background:#f6f9fc}.nl-consent-top img{width:190px;height:auto}.nl-consent-top>span{font-size:9px;letter-spacing:1.2px;color:#64788b}.nl-consent-content{padding:24px 28px}.nl-consent h2{font-size:27px;font-weight:500;line-height:1.2;margin:0 0 16px;color:#172c41}.nl-consent-intro{margin:0 0 22px;font-size:14px;line-height:1.65;color:#536678}.nl-consent-categories{border:1px solid #dfe8ef;border-radius:12px;overflow:hidden}.nl-consent-category{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px}.nl-consent-category+.nl-consent-category{border-top:1px solid #e2eaf1}.nl-consent-category strong,.nl-consent-category label{font-size:15px;font-weight:600;color:#243746}.nl-consent-category p{font-size:12px;line-height:1.5;color:#617486;margin:4px 0 0}.nl-consent-required{font-size:11px;white-space:nowrap;color:#627587}.nl-consent input[type=checkbox]{appearance:none;flex:0 0 44px;width:44px;height:26px;margin:0;border:1px solid #a6b6c4;border-radius:20px;background:#dae3eb;position:relative;cursor:pointer}.nl-consent input[type=checkbox]::after{content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0002;transition:transform .15s}.nl-consent input:checked{background:#1670b8;border-color:#1670b8}.nl-consent input:checked::after{transform:translateX(18px)}.nl-consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0 10px}.nl-consent-actions button{min-height:48px;border:1px solid #1670b8;border-radius:8px;background:#1670b8;color:#fff;font:500 14px Roboto,Arial,sans-serif;padding:12px;cursor:pointer;letter-spacing:normal;text-transform:none}.nl-consent-actions button:hover{background:#125e9b;color:#fff}.nl-consent .nl-consent-save{width:100%;min-height:44px;padding:10px;border:1px solid #c5d7e6;border-radius:8px;background:#fff;color:#1670b8;font:500 14px Roboto,Arial,sans-serif;cursor:pointer;text-transform:none;letter-spacing:normal}.nl-consent .nl-consent-save:hover{background:#edf5fb}.nl-consent-footer{font-size:11px;text-align:center;color:#677c8e;margin:18px 0 0;line-height:1.8}.nl-consent-footer a{color:#1670b8}.nl-cookie-settings{display:block;margin:16px auto;padding:10px 14px;border:1px solid #7d93a8;border-radius:7px;background:transparent;color:#829eb7;font:400 12px Roboto,Arial,sans-serif;cursor:pointer;letter-spacing:normal;text-transform:none}.nl-cookie-settings:hover{background:#edf5fb;color:#1670b8}.nl-consent :focus-visible,.nl-cookie-settings:focus-visible{outline:3px solid #56acf0;outline-offset:3px}@media(max-width:480px){.nl-consent-top{padding:18px}.nl-consent-top img{width:165px}.nl-consent-top>span{display:none}.nl-consent-content{padding:20px 18px}.nl-consent h2{font-size:24px}.nl-consent-category{padding:14px;gap:12px}.nl-consent-actions{gap:8px}.nl-consent-actions button{font-size:13px}}
.nl-cookie-settings{position:fixed;left:20px;bottom:20px;z-index:9001;display:flex;align-items:center;justify-content:center;width:46px;height:46px;margin:0;padding:10px;border:1px solid #d6e4ef;border-radius:50%;background:#fff;color:#1670b8;box-shadow:0 4px 18px #173f6424;transition:background .15s,color .15s}
.nl-cookie-settings svg{width:25px;height:25px;display:block}
.nl-cookie-settings:hover{background:#1670b8;color:#fff}
@media(max-width:480px){.nl-cookie-settings{left:12px;bottom:max(12px,env(safe-area-inset-bottom));width:44px;height:44px}}

button.nl-cookie-settings:hover,
button.nl-cookie-settings:focus,
button.nl-cookie-settings:active {
 background:#1670b8 !important;
 color:#fff !important;
 border-color:#1670b8 !important;
}
button.nl-cookie-settings:focus-visible {
 outline:3px solid #56acf0;
 outline-offset:3px;
}

.nl-consent-details summary{cursor:pointer;color:#1670b8;font-size:14px;font-weight:500;padding:12px 0;line-height:1.5}
.nl-consent-details[open] summary{margin-bottom:8px}
.nl-consent-details summary:focus-visible{outline:3px solid #56acf0;outline-offset:3px}

.nl-consent input[type=checkbox]{appearance:auto;flex:0 0 22px;width:22px;height:22px;border-radius:3px;accent-color:#1670b8;cursor:pointer}
.nl-consent input[type=checkbox]::after{content:none}
.nl-consent input[type=checkbox]:disabled{cursor:default;opacity:1}

.nl-consent-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.nl-consent-category{align-items:flex-start;gap:10px;padding:14px}
.nl-consent-category+.nl-consent-category{border-top:0;border-left:1px solid #e2eaf1}
.nl-consent-category input[type=checkbox]{margin-top:2px}
@media(max-width:480px){.nl-consent-category{padding:12px;gap:8px}.nl-consent-category strong,.nl-consent-category label{font-size:14px}}

.nl-consent-categories{border:0;border-radius:0;overflow:visible}
.nl-consent-category,.nl-consent-category+.nl-consent-category{border:0;padding:10px 0;align-items:center;justify-content:flex-start;gap:12px}
.nl-consent-category input[type=checkbox]{margin-top:0}

.nl-consent [hidden]{display:none!important}
.nl-consent .nl-consent-back{border:0;background:transparent;color:#1670b8;padding:8px 0;margin:0 0 16px;font:500 13px Roboto,Arial,sans-serif;cursor:pointer;text-transform:none;letter-spacing:normal}
.nl-consent-detail-view .nl-consent-categories{grid-template-columns:1fr}
.nl-consent-detail-view .nl-consent-category{align-items:flex-start;padding:18px 0}
.nl-consent-detail-view .nl-consent-category+.nl-consent-category{border-top:1px solid #e2eaf1}
.nl-consent-detail-view .nl-consent-category>div{flex:1;min-width:0}
.nl-consent-detail-view .nl-consent-category input{margin-top:3px}
.nl-consent .nl-consent-explanation p{font-size:13px;line-height:1.65;color:#536678;margin:10px 0 0}
.nl-consent-explanation a{color:#1670b8;text-decoration:underline}

/* Smaller checkmark, unchanged checkbox size. */
.nl-consent input[type=checkbox]{appearance:none;background:#fff;border:1px solid #9badbd;position:relative;border-radius:3px}
.nl-consent input[type=checkbox]:checked{background:#1670b8;border-color:#1670b8}
.nl-consent input[type=checkbox]:checked::after{content:"";position:absolute;left:7px;top:3px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;border-radius:0;background:transparent;box-shadow:none;transform:rotate(45deg)}
.nl-consent input[type=checkbox]:disabled{background:#e0e7ed;border-color:#bdcad5}
.nl-consent input[type=checkbox]:disabled:checked::after{border-color:#687e91}

/* The heading receives programmatic focus; interactive controls retain their focus ring. */
.nl-consent #nl-consent-title:focus,.nl-consent #nl-consent-title:focus-visible{outline:none;box-shadow:none}
