@charset "UTF-8";
.app-installs {
  list-style-type: none;
  padding: 0;
  margin: 0;
  display: flex;
  gap: 2rem;
  margin-top: 1.5rem;
}
.app-installs img {
  filter: var(--badge-filter);
}
.app-installs .disabled img {
  filter: opacity(0.5);
  cursor: not-allowed;
}

@media screen and (max-width: 768px) {
  .app-installs {
    justify-content: space-between;
    align-self: end;
  }
  .app-installs .picture {
    max-width: unset;
    margin: 0;
  }
}
section.explanation {
  scroll-margin-top: 0;
  padding-top: 0;
  padding-bottom: 0;
  background: var(--color-bg-explanations) !important;
}
section.explanation article {
  min-height: unset;
}
section.explanation h4 {
  color: var(--color-brand);
  font-size: 1rem;
  margin-top: 0.667rem;
  margin-bottom: 0.667rem;
}
section.explanation p {
  font-size: 1rem;
  line-height: 1.39rem;
  margin-top: 0.667rem;
  margin-bottom: 0.667rem;
}
section.explanation ul.enumeration {
  font-size: 1rem;
  line-height: 1.39rem;
  padding-left: var(--p);
}
section.explanation ul.enumeration li {
  padding-bottom: 0;
  margin-top: 0.667rem;
  margin-bottom: 0.667rem;
}
section.explanation a {
  color: var(--color-explanation-link);
  text-decoration: none;
}

:root {
  --color-bg-explanations: var(--color-off-white-2);
  --color-explanation-link: #096DD9;
}

:root.theme-dark {
  --color-bg-explanations: var(--color-dgray-6);
  --color-explanation-link: #1377E3;
}

@media (prefers-color-scheme: dark) {
  :root.theme-auto {
    --color-bg-explanations: var(--color-dgray-6);
    --color-explanation-link: #1377E3;
  }
}
.flag {
  line-height: 0;
}
.flag > img {
  height: 1.2rem;
}

.flags {
  display: block;
  padding: 0.35rem 0 0 0.88rem;
  align-self: center;
  z-index: 5;
}
.flags input.spoilerInput + label {
  padding: 0;
}
.flags ul.flags-list.flags-list {
  color: var(--color-text);
  font-size: 0.94rem;
  font-weight: 500;
  background: var(--color-lang-box);
  position: absolute;
  list-style-type: none;
  margin: 0;
  margin-top: 1.76rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  border-radius: 5px;
  align-items: end;
  right: -0.52rem;
  height: unset;
  top: unset;
  visibility: initial;
  opacity: initial;
}
.flags ul.flags-list.flags-list > li {
  width: 100%;
  border-bottom: 1px solid var(--color-lang-border);
  line-height: initial;
}
.flags ul.flags-list.flags-list > li:last-of-type {
  border-bottom: unset;
}
.flags ul.flags-list.flags-list > li .name {
  padding-right: 2rem;
}
.flags ul.flags-list.flags-list > li a {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  padding: 0.56rem 0.52rem 0.56rem 0.64rem;
  margin: 0;
  align-items: end;
  color: inherit;
}

.line {
  background: var(--color-line);
  height: 1em;
}

.link-button {
  display: contents;
}

button {
  cursor: pointer;
  user-select: none;
  margin: 0 auto 0 0;
  border-radius: 9px;
  padding: 0.722rem 1.3rem 0.777rem 1.3rem;
  transition: background 0.5s;
  font-size: 1rem;
  font-weight: 700;
  background-image: linear-gradient(to right, var(--color-brand-gradient1) 0%, var(--color-brand-gradient2) 51%, var(--color-brand-gradient1) 100%);
  background-size: 200% auto;
  color: var(--color-text-on-button);
  border: none;
  margin-top: 1.7rem;
}
button:hover {
  background-position: right center;
}
button:disabled {
  pointer-events: none;
  background: var(--color-bg-disabled);
  color: var(--color-disabled);
}

.logo-link {
  user-select: none;
  display: inline-block;
  font-size: 0;
}
.logo-link img.logo {
  position: relative;
  width: 1.75rem;
  top: 0.5rem;
  filter: var(--logo-filter);
}
.logo-link a {
  padding-left: 1ex;
  margin-left: -0.11em;
}

a {
  text-decoration: none;
  color: var(--color-link);
}
a:hover {
  color: var(--color-link-hover);
}
a.brand {
  color: var(--color-brand);
}
a.underline {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.email-form {
  display: flex;
  flex-direction: column;
  margin-top: 1rem;
  justify-items: start;
}
.email-form input[type=email] {
  background-color: var(--color-dgray4);
  color: var(--color-text);
  border: 1px solid var(--color-lgray-5);
  min-height: 2.5rem;
  min-width: 400px;
  font-size: 18px;
  text-indent: 0.3rem;
  margin-bottom: 1rem;
  border-radius: 9px;
  min-height: 3rem;
  min-height: 2.777rem;
}
.email-form input[type=email]:disabled {
  pointer-events: none;
  background: var(--color-bg-disabled);
  color: var(--color-disabled);
}
.email-form label {
  user-select: none;
}

@media screen and (max-width: 768px) {
  .email-form input[type=email] {
    min-width: unset;
    width: 100%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .email-form input[type=email] {
    min-width: 300px;
  }
}
.home-link {
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  padding-left: 1ex;
  margin-left: -0.11em;
}

ul[aria-label=submenu] {
  background: inherit;
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: row;
  align-items: baseline;
  position: relative;
  line-height: 0;
}
ul[aria-label=submenu] > li {
  line-height: initial;
  white-space: nowrap;
  /* Submenus */
}
ul[aria-label=submenu] > li ul {
  visibility: hidden;
  opacity: 0;
  padding-top: var(--m);
  display: none;
}
ul[aria-label=submenu] > li:hover {
  color: var(--color-menu-hover);
}
ul[aria-label=submenu] > li:hover > ul, ul[aria-label=submenu] > li ul:hover {
  visibility: visible;
  opacity: 1;
  display: block;
}

.burger {
  display: none;
  content: var(--burger);
}

@media screen and (max-width: 768px) {
  /*ul[aria-label="submenu"]:has(a.highlighted) {
      display: block;
      opacity: 1;
      visibility: visible;
  }*/
  input.spoilerInput.menuspoiler + label .burger {
    width: 2.22rem;
  }
  body > ul[aria-label=submenu] {
    padding-left: 0 !important;
  }
  ul[aria-label=submenu] li.alwaysHighlighted.alwaysHighlighted {
    font-size: unset;
  }
}
@media screen and (min-width: 769px) {
  nav > .logo-link {
    display: none;
  }
  ul[aria-label=submenu] > li ul[aria-label=submenu] {
    position: absolute;
    left: 0;
  }
  input.spoilerInput.menuspoiler + label {
    background: var(--color-link-hover);
    display: none;
  }
  input.spoilerInput.menuspoiler + label + .spoiler {
    display: unset;
    height: auto;
    opacity: 1;
  }
}
ul[aria-label=submenu] > li {
  margin: 0;
  padding: 1rem 0.5rem;
  display: block;
  position: relative;
  background: inherit;
}
ul[aria-label=submenu] > li.alwaysHighlighted {
  flex: auto;
  font-size: 0;
  padding-right: 2.1rem;
  padding-top: 1.03rem;
  padding-bottom: 0.9rem;
}
ul[aria-label=submenu] > li.alwaysHighlighted a {
  font-size: 1.333rem;
  font-weight: 700;
  letter-spacing: 0.01em;
}
ul[aria-label=submenu] > li a:hover {
  cursor: pointer;
}
ul[aria-label=submenu] > li {
  /* Submenus */
}
ul[aria-label=submenu] > li ul > li {
  clear: both;
  width: 100%;
}

@media screen and (min-width: 769px) {
  ul[aria-label=submenu] > li {
    padding: 1.3rem 1.222rem 1rem 0.917rem;
  }
  ul[aria-label=submenu] > li.flags {
    padding: 0.88rem 0 0 0.95rem;
  }
  ul[aria-label=submenu] > li:first-of-type {
    margin-left: -0.88rem;
  }
}
/* Contact pill styling lives in page-content/style.scss, scoped to the direct
   `> a` so it doesn't bleed into the dropdown links. */
nav {
  background: inherit;
}

@media screen and (max-width: 768px) {
  nav.burgerable {
    display: grid;
    grid-template-columns: 1fr max-content;
    align-items: center;
    margin: 0 var(--p);
  }
  nav.burgerable .flags {
    position: relative;
    margin-top: unset;
  }
  nav.burgerable .spoiler > ul[aria-label=submenu] {
    background: var(--color-header);
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    height: 100vh;
    display: unset;
    flex-direction: column;
  }
  nav.burgerable .spoiler > ul[aria-label=submenu] > li {
    border-bottom: 1px solid var(--color-lang-border);
    width: 100%;
    text-align: start;
    padding: 0;
  }
  nav.burgerable .spoiler > ul[aria-label=submenu] > li:last-of-type {
    border-bottom: unset;
  }
  nav.burgerable .spoiler > ul[aria-label=submenu] > li a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 1rem var(--p);
  }
  nav.burgerable .spoiler .logo-link {
    display: none;
  }
  nav.burgerable .spoiler .flags {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  nav > ul {
    display: flex;
  }
  nav > .flags {
    display: none;
  }
}
:root {
  --mb: 10rem;
  --mt: 2.88rem;
}

@media screen and (min-width: 769px) {
  :root {
    --mb: 14vw;
    --mt: 3rem;
  }
}
.manual-wrap {
  line-break: strict;
  line-break: after-white-space;
  white-space: nowrap;
}

h1 {
  font-size: 1.33rem;
  color: var(--color-headline);
  margin-top: 1.278rem;
  margin-bottom: 0.39rem;
  scroll-margin-top: 1.278rem;
  scroll-snap-align: start;
}

h2 {
  display: block;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

h3 {
  display: block;
  margin-block-start: 1.33em;
  margin-block-end: 1.33em;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

.small-fill {
  flex: 1 0 auto;
}

div.fill {
  flex: 3 0 auto;
}

/* ---- deep●news wordmark logo (HTML: scales, theme-aware, dot can't overlap) ---- */
.home-link.wordmark {
  display: inline-flex;
  align-items: center;
  gap: 0.167em; /* 4px @ 24px, like the reference */
  font-size: 24px;
  font-weight: 700;
  letter-spacing: -0.04em; /* reference tracking */
  line-height: 1;
  color: var(--color-text-on-header);
  text-decoration: none;
  /* squircle: matches the Framer reference — 0.54em, gradient, sat low on the
     lowercase letters (reference wrapper pads it ~0.1em down from centre) */
}
.home-link.wordmark .wm-dot {
  width: 0.54em;
  height: 0.54em;
  border-radius: 0.18em;
  background: linear-gradient(225deg, #FF8500 10%, #FF4E00 90%);
  box-shadow: inset 0 0.5px 2px rgba(255, 255, 255, 0.18);
  flex: 0 0 auto;
  align-self: center;
  position: relative;
  top: 0.1em;
}

/* logo left + Contact right, at all widths (no hamburger for a one-item header) */
header nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-left: clamp(1.25rem, 4vw, 4rem);
  padding-right: clamp(1.25rem, 4vw, 4rem);
}

/* ---- Contact pill + dropdown (LinkedIn + mail) ---- */
header nav ul[aria-label=submenu] > li.alwaysHighlighted {
  position: relative;
}
header nav ul[aria-label=submenu] > li.alwaysHighlighted > a { /* the pill (direct link only) */
  display: inline-block;
  background: var(--color-brand);
  color: var(--color-white);
  padding: 0.55rem 1.2rem;
  border-radius: 999px;
  text-decoration: none;
  font-size: 16px;
  font-weight: 700;
}
header nav ul[aria-label=submenu] > li.alwaysHighlighted .spoiler .bg {
  display: none;
}
header nav ul[aria-label=submenu] > li.alwaysHighlighted { /* kill fullscreen overlay */ }
header nav ul[aria-label=submenu] > li.alwaysHighlighted .spoiler > input, header nav ul[aria-label=submenu] > li.alwaysHighlighted .spoiler > label {
  display: none;
}
header nav ul[aria-label=submenu] > li.alwaysHighlighted { /* kill any nested burger */ }
header nav ul[aria-label=submenu] > li.alwaysHighlighted .spoiler ul[aria-label=submenu] {
  position: absolute;
  top: 100%;
  right: 1.75rem; /* sit further left, below the button */
  margin-top: 0.6rem;
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 6px;
  min-width: 190px;
  list-style: none;
  background: var(--menu-surface);
  border-radius: 16px;
  box-shadow: 0 18px 44px rgba(10, 12, 20, 0.28), 0 3px 10px rgba(10, 12, 20, 0.12);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  transform-origin: top right;
  transition: opacity 0.16s ease, transform 0.16s ease;
  z-index: 10;
  /* invisible bridge across the gap so the panel doesn't close while the
     cursor travels from the pill down to it */
}
header nav ul[aria-label=submenu] > li.alwaysHighlighted .spoiler ul[aria-label=submenu]::before {
  content: "";
  position: absolute;
  top: -0.7rem;
  left: 0;
  right: 0;
  height: 0.75rem;
}
header nav ul[aria-label=submenu] > li.alwaysHighlighted .spoiler ul[aria-label=submenu] li {
  margin: 0;
  padding: 0;
  white-space: nowrap;
}
header nav ul[aria-label=submenu] > li.alwaysHighlighted .spoiler ul[aria-label=submenu] a {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  padding: 0.65rem 1rem 0.65rem 0.7rem;
  border-radius: 11px;
  font-size: 15px;
  font-weight: 600;
  color: var(--menu-fg);
  text-decoration: none;
  transition: background-color 0.13s ease;
  /* icon via mask so it takes the link colour */
}
header nav ul[aria-label=submenu] > li.alwaysHighlighted .spoiler ul[aria-label=submenu] a::before {
  content: "";
  flex: 0 0 auto;
  width: 1.15rem;
  height: 1.15rem;
  background-color: currentColor;
  -webkit-mask: var(--ic) center/contain no-repeat;
  mask: var(--ic) center/contain no-repeat;
}
header nav ul[aria-label=submenu] > li.alwaysHighlighted .spoiler ul[aria-label=submenu] a:hover {
  background-color: var(--menu-hover-bg);
}
header nav ul[aria-label=submenu] > li.alwaysHighlighted .spoiler ul[aria-label=submenu] a[href*=linkedin] {
  --ic: url(/assets/icon-linkedin.svg);
}
header nav ul[aria-label=submenu] > li.alwaysHighlighted .spoiler ul[aria-label=submenu] a[href^=mailto] {
  --ic: url(/assets/icon-mail.svg);
}
header nav ul[aria-label=submenu] > li.alwaysHighlighted:hover .spoiler ul[aria-label=submenu], header nav ul[aria-label=submenu] > li.alwaysHighlighted:focus-within .spoiler ul[aria-label=submenu] {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* ---- Landing (deepnews.com home): centered column, generous whitespace ---- */
body.page-home section {
  padding-top: 0;
  padding-bottom: 0;
  background: transparent;
}
body.page-home section article {
  min-height: unset;
}
body.page-home {
  /* centered content stage — wide enough for the 64px headline on one line */
}
body.page-home > h1, body.page-home > section {
  width: 100%;
  max-width: 960px;
  margin-left: auto;
  margin-right: auto;
}
body.page-home h1 {
  margin-top: 15vh;
  margin-bottom: 1.8rem;
  font-size: clamp(2.2rem, 5.4vw, 64px); /* 64px on desktop, one line */
  line-height: 1.05;
  letter-spacing: -0.015em;
  overflow-wrap: break-word;
}
body.page-home {
  /* body copy — matches the Framer reference */
}
body.page-home p {
  font-size: 28px;
  line-height: 1.2;
  letter-spacing: -0.04em;
  font-weight: 500;
  max-width: 850px;
}
body.page-home {
  /* the inline deepTrust link in brand orange */
}
body.page-home section a {
  color: var(--color-brand);
}
body.page-home .app-installs {
  margin-top: 2.4rem;
  gap: 1.5rem;
}
body.page-home section + section {
  margin-top: 3.25rem;
}
body.page-home {
  /* push the Imprint link to the bottom-right */
}
body.page-home div.fill {
  flex: 1 0 auto;
}
body.page-home footer {
  text-align: right;
  padding-bottom: 1.4rem;
  padding-right: clamp(1.5rem, 4vw, 4rem) !important;
  font-size: 16px;
}
body.page-home footer nav, body.page-home footer ul {
  justify-content: flex-end;
}

@media screen and (max-width: 768px) {
  body.page-home h1 {
    margin-top: 6rem;
    font-size: 1.85rem;
  }
  body.page-home p {
    font-size: 19px;
    line-height: 1.35;
  }
  body.page-home .app-installs {
    justify-content: flex-start;
    gap: 1.25rem;
  }
  .home-link.wordmark {
    font-size: 1.25rem;
  }
}
/* ============ Imprint ============ */
body.page-imprint header {
  --color-text-on-header: #fff;
}

/* designed warm banner */
body.page-imprint h1 {
  background: radial-gradient(130% 150% at 88% 18%, rgba(255, 178, 70, 0.95) 0%, rgba(255, 120, 20, 0.55) 32%, rgba(16, 14, 26, 0) 68%), linear-gradient(102deg, #0A1219 0%, #18121f 42%, #5e2c0c 74%, #d96a12 100%);
  color: #fff;
  margin: 0; /* border-box already spans the viewport — negative margins caused horizontal scroll */
  padding-top: 7.5rem;
  padding-bottom: 3.5rem;
  padding-left: clamp(1.25rem, 4vw, 4rem) !important;
  padding-right: clamp(1.25rem, 4vw, 4rem) !important;
  font-size: clamp(2.6rem, 5vw, 3.8rem);
  letter-spacing: -0.015em;
  scroll-margin-top: 0;
}

/* imprint body: comfortable column + readable typography */
body.page-imprint section {
  padding-top: 3.5rem;
  padding-bottom: 0;
}

body.page-imprint section article {
  min-height: unset;
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}

body.page-imprint h3 {
  font-size: 1.45rem;
  margin-top: 0;
  margin-bottom: 1.5rem;
}

body.page-imprint p {
  font-size: 1.05rem;
  line-height: 2;
}

/* footer identical to the landing: Imprint link bottom-right */
body.page-imprint div.fill {
  flex: 1 0 auto;
}

body.page-imprint footer {
  text-align: right;
  padding-bottom: 1.4rem;
  padding-right: clamp(1.5rem, 4vw, 4rem) !important;
  font-size: 16px;
}
body.page-imprint footer nav, body.page-imprint footer ul {
  justify-content: flex-end;
}

html {
  font-size: 18px;
  scroll-behavior: smooth;
  background: var(--color-bg);
}

@media screen and (min-width: 1300px) {
  html {
    scroll-snap-type: y mandatory;
  }
}
@supports (font: -apple-system-body) and (-webkit-appearance: none) {
  html {
    scroll-snap-type: unset !important;
  }
}
@media screen and (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}
body {
  --p: 1.9rem;
  background: var(--color-bg);
  color: var(--color-text);
  margin: 0;
  padding: 0;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
body > * {
  padding-left: var(--p) !important;
  padding-right: var(--p) !important;
}
body header {
  --color-header: var(--color-footer);
  background: var(--color-header);
  border-bottom: var(--border-header);
  color: var(--color-text-on-header);
  margin: 1rem 0;
  position: absolute;
  left: 0;
  right: 0;
  z-index: 3;
}
body header.hasHero {
  --color-header: transparent;
}
body header a {
  color: var(--color-text-on-header);
}
body header.sticky {
  position: fixed;
  top: -1rem;
}
body footer {
  background: var(--color-footer);
  flex-shrink: 0;
}
body footer a {
  color: var(--color-text-on-footer);
}
body footer a:hover {
  color: var(--color-menu-hover);
}
body header, body footer {
  font-size: 1rem;
  font-weight: 500;
}

@media screen and (max-width: 768px) {
  body > header, body > footer {
    padding-right: 0 !important;
    padding-left: 0 !important;
    font-size: 0.85rem;
  }
  body > header ul[aria-label=submenu] > li:first-of-type, body > footer ul[aria-label=submenu] > li:first-of-type {
    padding-left: var(--p);
  }
  body {
    --p: 1.11rem;
  }
}
@media screen and (min-width: 500px) and (max-width: 768px) {
  body {
    --p: 2rem;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  body {
    --p: 3rem;
  }
}
@media screen and (min-width: 1024px) {
  body {
    --p: 10vw;
  }
}
body.fixed-margins {
  --p: 1.11rem !important;
}

section {
  scroll-margin-top: -1px;
  scroll-snap-align: start;
  padding-top: calc(3 * var(--m));
  padding-bottom: calc(3 * var(--m));
}
section.collapsible {
  transform: scaleY(0);
  transition: transform 0.5s ease-in-out;
  transform-origin: top;
}
section.hero img {
  object-position: left;
}
section.hero article .box {
  margin-top: 4.444rem;
}
section:nth-child(odd), section.odd {
  background: var(--color-bg-odd);
}
section.half-bg {
  background-size: 100%;
  background-size: 51% 100%;
  background-repeat: no-repeat;
}
section.bg-dark-grey {
  background: var(--color-bg-dark-grey);
}
section.bg-dark-grey p, section.bg-dark-grey h2, section.bg-dark-grey h3, section.bg-dark-grey ul.enumeration, section.bg-dark-grey a, section.bg-dark-grey div.caption {
  color: var(--color-off-white-3);
}
section.bg-custom p, section.bg-custom h2, section.bg-custom h3, section.bg-custom ul.enumeration, section.bg-custom a, section.bg-custom div.caption {
  color: var(--color-white);
}
section.bg-blue {
  background-image: linear-gradient(to top right, var(--color-bg-blue1), var(--color-bg-blue2));
}
section.bg-blue p, section.bg-blue h2, section.bg-blue h3, section.bg-blue ul.enumeration, section.bg-blue a, section.bg-blue div.caption {
  color: var(--color-off-white-3);
}
section.bg-grey {
  background-image: linear-gradient(to top right, var(--color-bg-grad-grey1), var(--color-bg-grad-grey2));
}
section.bg-grey p, section.bg-grey h2, section.bg-grey h3, section.bg-grey ul.enumeration, section.bg-grey a, section.bg-grey div.caption {
  color: var(--color-off-white-3);
}
section.bg-orange {
  background-image: linear-gradient(to top right, var(--color-bg-orange1), var(--color-bg-orange2));
}
section.bg-orange p, section.bg-orange h2, section.bg-orange h3, section.bg-orange ul.enumeration, section.bg-orange a, section.bg-orange div.caption {
  color: var(--color-off-white-3);
}
section.even {
  background: unset;
}
section.columnar article {
  min-height: unset;
}
section article {
  --full: min(743px, 100vh);
  display: grid;
  position: relative;
  z-index: 1;
  min-height: var(--full);
}
section article.single {
  display: block;
}
section article.side {
  gap: 0;
}
section article.side h3, section article.side p {
  margin-right: 2.222rem;
}
section article.bottom {
  min-height: unset;
}
section article.bottom {
  display: grid;
  grid-template-columns: 1fr;
  margin-bottom: calc(-3 * var(--m));
}
section article p, section article ul.enumeration {
  font-size: 1.333rem;
  line-height: 1.167;
  font-weight: 400;
  letter-spacing: 0.009em;
  text-align: start;
  line-break: strict;
  grid-column: 1;
  margin-top: 0.25rem;
  margin-bottom: 0.33rem;
}
section article p.subline {
  margin-top: 2rem;
  margin-bottom: 0rem;
  font-size: 1.333rem;
  line-height: 1.8rem;
  font-weight: 400;
  letter-spacing: 0.009em;
  text-align: start;
  line-break: strict;
  grid-column: 1;
}
section.blend-into-footer {
  background: var(--color-footer);
}
section h2 {
  margin-bottom: 0rem;
  margin-top: 6.2rem;
  font-size: 3rem;
  line-height: 1.074;
  font-weight: 700;
  letter-spacing: -0.01em;
  grid-row: 1;
}
section h3 {
  margin-top: 3.666rem;
  margin-bottom: 3rem;
  font-size: 2rem;
  line-height: 1.26315789;
  font-weight: 700;
  letter-spacing: -0.006em;
  grid-row: 1;
}
section .center {
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
section h3.center {
  max-width: 550px;
  text-align: center;
}
section h3.center.wide {
  max-width: 860px;
  margin-top: 0;
  margin-bottom: 12%;
}
section p.center {
  max-width: 700px;
}
section .picture.bottom {
  max-width: 500px;
  margin-top: 2.5rem;
}

@media screen and (max-width: 768px) {
  section {
    padding-bottom: 3rem;
    padding-top: 4rem;
  }
  section.half-bg {
    background-size: unset;
    background-repeat: unset;
  }
  section.hero article .box {
    display: grid;
    height: calc(100% - 4.444rem);
  }
  section.hero article .box p.subline {
    grid-row: unset;
    align-self: end;
  }
  section article {
    --full: max(743px, 100vh);
  }
  section article.side, section article.fill {
    min-height: calc(var(--full) - 7rem);
  }
  section article.bottom {
    margin-bottom: -3rem;
    grid-gap: 0.7rem;
  }
  section article h3 {
    grid-row: 1;
    margin-bottom: 1rem;
  }
  section article .center {
    max-width: unset;
    margin-bottom: 0;
  }
  section article h2 {
    margin-bottom: 1.5rem;
    font-size: 2rem;
    line-height: 1.222;
    margin-top: 2rem;
  }
  section article p, section article ul.enumeration {
    grid-row: unset;
    font-size: 1.0555rem;
    margin-top: 0.25rem;
    margin-bottom: 0.33rem;
  }
  section article p.subline {
    grid-row: 3;
    margin: 0 auto 0 0;
    margin-top: 0rem;
    margin-bottom: 0rem;
    font-size: 1rem;
  }
  section article button {
    grid-row: 4;
    margin: 1rem auto 1rem auto;
  }
  section article .picture {
    grid-row: 2;
    margin: 1rem auto 1rem auto;
    max-width: 80%;
  }
  section article .picture.fill img {
    height: calc(100% + 7rem);
    top: -4rem;
  }
  section article .picture.side img {
    border-radius: 8%;
  }
  section article .picture.side {
    position: static;
    margin: 1rem 0 3rem;
    margin-bottom: 3rem;
    max-width: unset;
  }
  section article .picture.side img {
    position: relative;
    width: 100%;
    height: unset;
  }
  section.no-title {
    padding-top: 0;
  }
  section.no-title:first-of-type {
    padding-top: 4.4rem;
  }
  section h3 {
    font-size: 1.777rem;
    margin-top: 0;
  }
  section h3.center.wide {
    margin-bottom: 24%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1300px) {
  section h2 {
    margin-top: 1rem;
  }
  section h3 {
    font-size: 1.68rem;
  }
  section .picture {
    margin-top: 1rem;
  }
  section h3.center {
    max-width: 450px;
  }
  section h3.center.wide {
    max-width: 630px;
  }
  section p.center {
    max-width: 550px;
  }
  section .picture.bottom {
    max-width: 400px;
  }
}
@media screen and (min-width: 769px) {
  section article {
    --c1: 55fr;
    --c2: 53fr;
    grid-template-columns: var(--c1) var(--c2);
    gap: 0 3.333rem;
  }
  section article .picture {
    grid-column: 2;
    grid-row: 1/50;
  }
  section article .picture.left {
    grid-column: 1;
  }
  section article p.subline {
    white-space: pre-wrap;
  }
  section article.fill.sub {
    display: flex;
  }
  section article.left {
    grid-template-columns: var(--c2) var(--c1);
  }
  section article.left h2, section article.left h3, section article.left p, section article.left ul.enumeration, section article.left .box {
    grid-column: 2;
  }
}
section.columnar {
  padding-top: calc(1.111rem + 3 * var(--m));
}
section.columnar article.persons {
  gap: 0;
  margin-top: 3.666rem;
  grid-template-columns: 1fr 1fr;
}
section.columnar article.persons .picture {
  display: unset;
  justify-content: unset;
  text-align: center;
}
section.columnar article.texts {
  grid-template-columns: 1fr 1fr;
  margin-bottom: 2rem;
}
section.columnar article.texts > p {
  grid-row: 2;
  grid-column: unset;
}
section.columnar article.pictures {
  gap: 0;
  grid-template-columns: 33.333% 33.333% 33.333%;
}
section.columnar article.pictures .caption {
  grid-row: 1;
  grid-column: unset;
  text-align: center;
  font-size: 1.3rem;
  margin: 0 1.1rem 0 1.1rem;
}
section.columnar article.pictures .picture {
  grid-row: 2;
  grid-column: unset;
  margin: 3rem 1.2rem 0 1.2rem;
}
section.columnar article h2 {
  grid-row: 1;
}
section.columnar article h3 {
  grid-row: 1;
}

@media screen and (max-width: 768px) {
  section.columnar article.pictures, section.columnar article.texts {
    display: block;
  }
  section.columnar article.texts p {
    margin-bottom: 2rem;
  }
  section.columnar article.pictures .picture {
    margin: 3rem auto;
    max-width: 78%;
  }
  section.columnar article.pictures .caption {
    margin: 0 0.5rem 0 0.5rem;
  }
  section article.single.sub {
    min-height: unset;
  }
  section article.single.sub h3 {
    margin-top: 6rem;
  }
}
@media screen and (max-width: 1300px) {
  section.columnar article.persons {
    margin-top: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}
@media screen and (min-width: 769px) {
  section.columnar article .picture {
    grid-column: 2;
    grid-row: 1/5;
  }
  section.columnar article .picture.left {
    grid-column: 1;
  }
  section.columnar article.single {
    display: block;
  }
  section.columnar article.left {
    grid-template-columns: var(--c2) var(--c1);
  }
  section.columnar article.left h2, section.columnar article.left h3, section.columnar article.left p, section.columnar article.left ul.enumeration, section.columnar article.left button, section.columnar article.left sl {
    grid-column: 2;
  }
}
@media screen and (min-width: 1100px) {
  section.columnar article {
    gap: 0 3.333rem;
  }
}
.picture {
  display: flex;
  justify-content: center;
  align-items: center;
}
.picture a {
  display: contents;
}
.picture img {
  user-select: none;
  width: auto;
  max-width: 100%;
  max-height: 650px;
}
.picture.side, .picture.fill {
  margin-top: 0;
  position: relative;
}
.picture.side img, .picture.fill img {
  position: absolute;
  max-width: unset;
  max-height: unset;
  object-fit: cover;
}
.picture.side img {
  width: calc(100% + var(--p));
  height: calc(100% + 6 * var(--m) + 1px);
}
.picture.fill {
  display: contents;
  top: 0;
}
.picture.fill img {
  z-index: -10;
  width: 100vw;
  left: calc(-1 * var(--p));
  top: calc(-3 * var(--m));
  height: calc(100% + 6 * var(--m));
}
.picture.right img {
  left: 0;
}
.picture.left img {
  right: 0;
}
.picture.bottom {
  grid-column: 1;
  grid-row: 3;
  margin: 0 auto;
}

.triangle {
  --size: 5px;
  width: 0;
  height: 0;
  border-left: var(--size) solid var(--color-line);
  border-bottom: var(--size) solid transparent;
  border-top: var(--size) solid transparent;
  position: absolute;
  left: 0;
  bottom: calc(50% - var(--size));
}

@media screen and (min-width: 769px) {
  .triangle {
    bottom: 0;
    left: calc(50% - var(--size));
    border-left: var(--size) solid transparent;
    border-right: var(--size) solid transparent;
    border-bottom: var(--size) solid var(--color-line);
  }
}
input.spoilerInput {
  position: absolute;
  left: -9999px;
}
input.spoilerInput + label {
  display: block;
  color: var(--color-text);
  text-align: center;
  cursor: pointer;
  width: fit-content;
  padding: 0.44rem 0.33rem 0.22rem 0.33rem;
  line-height: 1rem;
  user-select: none;
}
input.spoilerInput:checked + label {
  filter: var(--filter-checked);
}
input.spoilerInput:checked + label.hideOnCheck {
  display: none;
}
input.spoilerInput:checked + label + .spoiler {
  height: auto;
  opacity: 1;
}
input.spoilerInput:checked ~ .spoiler {
  display: contents;
}
input.spoilerInput:checked ~ .spoiler .alwaysHighlighted {
  display: none;
}
input.spoilerInput:checked ~ .spoiler .bg {
  background: var(--color-dgray-6);
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -3;
}
input.spoilerInput ~ .spoiler {
  display: none;
  height: 0;
  opacity: 0;
}

.person {
  display: grid;
  grid-template-columns: 1fr 2fr;
  column-gap: 1.76rem;
  row-gap: 1.41rem;
  margin-bottom: 1.41rem;
  height: fit-content;
}
.person .picture {
  width: 100%;
}
.person .picture img {
  min-width: 150px;
  max-width: 200px;
}
.person .left {
  grid-column: 1;
}
.person h2 {
  margin: 0;
  padding: 0;
  font-size: 1.7rem;
  font-weight: 700;
  color: var(--color-name);
}
.person h3 {
  margin: 0.5rem 0 0 0;
  padding: 0;
  color: var(--color-field) !important;
  font-size: 1rem;
  font-weight: 400;
}
.person p {
  line-height: 1.333;
  font-size: 1rem;
}
.person p:first-of-type {
  margin-top: 0.8rem;
}

@media screen and (max-width: 1300px) {
  .person {
    display: block;
    margin-top: 1.666rem;
    margin-bottom: 2.333rem;
    text-align: center;
  }
  .person p {
    font-size: 0.95rem;
  }
  .person .picture {
    grid-row: 1;
  }
}
ul.enumeration.dot {
  list-style-type: disc;
}
ul.enumeration.numbers {
  list-style-type: decimal;
}
ul.enumeration li {
  padding-bottom: 1rem;
}

* {
  box-sizing: border-box;
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
}

:root {
  --m: 1.4rem;
  --logo-filter: none;
  --deep-blue: #0A1219;
  --color-brand: #FF6600;
  --color-brand-dark: #FF580A;
  --color-brand-gradient1: #FF4E00;
  --color-brand-gradient2: #FF8500;
  --color-black: #000;
  --color-cream: #F2F1EC;
  --color-dgray-6: var(--deep-blue);
  --color-dgray-5: var(--deep-blue);
  --color-dgray-4: var(--deep-blue);
  --color-dgray-1: #8E8E93;
  --color-gray-1: #c7c7cc;
  --color-lgray-5: #E5E5EA;
  --color-lgray-1: #F5F5F7;
  --color-white: #fff;
  --color-off-white: #DEDEE3;
  --color-off-white-2: #FDFCFC;
  --color-off-white-3: #F6F4F1;
  /* ---- Framer light palette (default) ---- */
  --color-headline: #0A1219;
  --color-text: #86868B;
  --color-text-strong: #0A1219;
  --color-h1: #1A1A1A;
  --color-line: var(--color-brand);
  --color-name: var(--color-brand);
  --color-link: #1A1A1A;
  --color-bg: var(--color-cream);
  --color-bg-odd: var(--color-off-white-3);
  --color-bg-dark-grey: var(--color-cream);
  --color-bg-grad-grey1: var(--color-cream);
  --color-bg-grad-grey2: var(--color-cream);
  --color-bg-blue1: #096dd9;
  --color-bg-blue2: #15a6ee;
  --color-bg-orange1: var(--color-brand-gradient1);
  --color-bg-orange2: var(--color-brand-gradient2);
  --color-field: #C7C7CE;
  --color-button: var(--color-brand);
  --color-text-on-button: var(--color-white);
  --color-bg-disabled: var(--color-gray-1);
  --color-disabled: var(--color-text);
  --border-header: none;
  --color-header: transparent;
  --color-text-on-header: var(--color-headline);
  --color-footer: transparent;
  --color-text-on-footer: var(--color-dgray-1);
  --color-menu-hover: var(--color-lgray-5);
  --color-link-hover: var(--color-lgray-5);
  --color-lang-border: var(--color-gray-1);
  --color-lang-box: var(--color-lgray-5);
  /* Contact dropdown surface (themed) */
  --menu-surface: #ffffff;
  --menu-fg: #16181d;
  --menu-hover-bg: #f1efe9;
  --burger: url(/assets/burger_dark.svg);
  --filter-checked: contrast(0.6) brightness(0.8);
  /* App-store badges ship as white SVGs; invert to black for light mode. */
  --badge-filter: invert(1);
}

/* ---- Aligned dark variant ---- */
:root.theme-dark {
  --logo-filter: brightness(0) invert(1);
  --color-brand: var(--color-brand-dark);
  --color-headline: var(--color-off-white-2);
  --color-text: var(--color-lgray-5);
  --color-text-strong: var(--color-off-white-2);
  --color-h1: var(--color-brand);
  --color-link: var(--color-off-white-2);
  --color-bg: var(--color-dgray-6);
  --color-bg-odd: var(--color-dgray-6);
  --color-bg-dark-grey: var(--color-dgray-6);
  --color-bg-grad-grey1: var(--color-dgray-5);
  --color-bg-grad-grey2: var(--color-dgray-4);
  --color-bg-blue1: #1377E3;
  --color-bg-blue2: #0F44A7;
  --color-button: var(--color-off-white-2);
  --color-text-on-button: var(--color-white);
  --color-text-on-header: var(--color-white);
  --menu-surface: #1c232b;
  --menu-fg: #f3f1ec;
  --menu-hover-bg: rgba(255, 255, 255, 0.08);
  --color-bg-disabled: var(--color-dgray-1);
  --color-disabled: var(--color-dgray-4);
  --color-lang-border: var(--color-dgray-5);
  --color-lang-box: var(--color-dgray-6);
  --badge-filter: none;
}

@media (prefers-color-scheme: dark) {
  :root.theme-auto {
    --logo-filter: brightness(0) invert(1);
    --color-brand: var(--color-brand-dark);
    --color-headline: var(--color-off-white-2);
    --color-text: var(--color-lgray-5);
    --color-text-strong: var(--color-off-white-2);
    --color-h1: var(--color-brand);
    --color-link: var(--color-off-white-2);
    --color-bg: var(--color-dgray-6);
    --color-bg-odd: var(--color-dgray-6);
    --color-bg-dark-grey: var(--color-dgray-6);
    --color-bg-grad-grey1: var(--color-dgray-5);
    --color-bg-grad-grey2: var(--color-dgray-4);
    --color-bg-blue1: #1377E3;
    --color-bg-blue2: #0F44A7;
    --color-button: var(--color-off-white-2);
    --color-text-on-button: var(--color-white);
    --color-text-on-header: var(--color-white);
    --menu-surface: #1c232b;
    --menu-fg: #f3f1ec;
    --menu-hover-bg: rgba(255, 255, 255, 0.08);
    --color-bg-disabled: var(--color-dgray-1);
    --color-disabled: var(--color-dgray-4);
    --color-lang-border: var(--color-dgray-5);
    --color-lang-box: var(--color-dgray-6);
    --badge-filter: none;
  }
}
html {
  background: var(--color-bg);
}

@media screen and (min-width: 769px) {
  :root {
    --hero: url(/assets/deep-news-hero-3.jpg);
  }
}
p strong {
  color: var(--color-text-strong);
}
