@font-face {
  font-family: "Museo Sans";
  src: url(/fonts/museosans/museosans_900-webfont.woff) format("woff");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Museo Sans";
  src: url(/fonts/museosans/museosans_700-webfont.woff) format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Museo Sans";
  src: url(/fonts/museosans/museosans_500-webfont.woff) format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Museo Sans";
  src: url(/fonts/museosans/museosans_300-webfont.woff) format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Museo Sans";
  src: url(/fonts/museosans/museosans_100-webfont.woff) format("woff");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Museo Sans";
  src: url(/fonts/museosans/museosans_900_italic-webfont.woff) format("woff");
  font-weight: 900;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Museo Sans";
  src: url(/fonts/museosans/museosans_700_italic-webfont.woff) format("woff");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Museo Sans";
  src: url(/fonts/museosans/museosans_500_italic-webfont.woff) format("woff");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Museo Sans";
  src: url(/fonts/museosans/museosans_300_italic-webfont.woff) format("woff");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Museo Sans";
  src: url(/fonts/museosans/museosans_100_italic-webfont.woff) format("woff");
  font-weight: 100;
  font-style: italic;
  font-display: swap;
}
body,
html,
input {
  font-family: "Museo Sans", Univers, Calibri, Arial, sans-serif;
  font-size: 14pt;
  font-size: 12pt;
  font-weight: 300;
  color: #58595b;
}
a {
  color: #0076c0;
}
a:active,
a:hover {
  text-decoration: underline;
}
a:focus {
  outline: 1px solid;
}
::selection {
  color: #fff;
  background: #25b4b1;
}
.container {
  max-width: 1170px;
  width: 100%;
  padding-left: 1rem;
  padding-right: 1rem;
}
header .container {
  display: flex;
  flex-direction: column;
  max-width: 1170px;
}
header img.logo {
  display: block;
  margin: 1rem auto;
  max-width: 100%;
  width: 588px;
  height: auto;
}
header form.search {
  margin: 1em auto;
  padding: 0 0.5em;
  max-width: 400px; 
  width: 100%;
  background: #fff;
  display: flex;
  align-items: center;
}
header form.search input#search-input {
  box-sizing: border-box;
  display: block;
  border-radius: 0.5em;
  border: 1px solid #b5b5b5;
  height: auto;
  padding: 0.5em 1em;
  font-size: 0.95rem;
  width: 100%;
  background: #fff;
}
p {
  text-align: left;
}
.has-text-align-left,
p.has-text-align-left {
  text-align: left !important;
}
.has-text-align-center,
p.has-text-align-center {
  text-align: center !important;
}
.has-text-align-right,
p.has-text-align-right {
  text-align: right !important;
}
li {
  text-align: left;
}
p.small-print {
  font-weight: 300;
  font-size: 12pt;
  line-height: 1.5;
}
input:not([type]):focus:not([readonly]),
input[type="date"]:not(.browser-default):focus:not([readonly]),
input[type="datetime-local"]:not(.browser-default):focus:not([readonly]),
input[type="datetime"]:not(.browser-default):focus:not([readonly]),
input[type="email"]:not(.browser-default):focus:not([readonly]),
input[type="number"]:not(.browser-default):focus:not([readonly]),
input[type="password"]:not(.browser-default):focus:not([readonly]),
input[type="search"]:not(.browser-default):focus:not([readonly]),
input[type="tel"]:not(.browser-default):focus:not([readonly]),
input[type="text"]:not(.browser-default):focus:not([readonly]),
input[type="time"]:not(.browser-default):focus:not([readonly]),
input[type="url"]:not(.browser-default):focus:not([readonly]),
textarea.materialize-textarea:focus:not([readonly]) {
  box-shadow: none;
}
nav.primary-nav {
  background: #0076c0;
  position: relative;
}
nav.primary-nav ul a:active,
nav.primary-nav ul a:hover {
  background-color: #0084db;
  text-decoration: none;
}
nav.primary-nav a.dropdown-trigger i {
  margin: 5px 0 0;
}
nav.primary-nav li.indented {
  padding-left: 0.25em;
}
nav.primary-nav li.indented a:before {
  content: "- ";
}
ul.disc li {
  list-style: disc;
  margin-left: 16px;
}
ul.spaced li {
  margin-bottom: 1em;
}
ul.triangle li {
  background-image: url(/img/arrowbullet-teledyne-blue.png);
  background-repeat: no-repeat;
  margin-left: 0;
  padding-left: 1.5rem;
  background-position: 0 0.25em;
  line-height: 20pt;
}
.hero {
  background-position: center center;
  background-size: cover;
  background-color: #58595b;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 300px;
  padding: 20px 0;
  padding: 5vh 0;
  text-align: center;
}
.hero h1 {
  margin: 20px auto;
  margin: 5vh auto;
}
.hero .container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 0 auto;
}
.hero h1 span {
  display: block;
}
.home-spotlight {
  color: #58595b;
  margin-top: 2rem;
}
.home-icon-nav .container,
.home-spotlight {
  max-width: 1000px;
}
.home-spotlight .wp-block-column {
  padding: 0 0.25rem;
}
.home-spotlight h2 {
  font-size: 2rem;
  font-size: calc(2rem + 0.5vw);
}
.home-spotlight h2 {
  font-size: 2rem;
  font-weight: 300;
  margin-top: 14px;
}
.home-spotlight p {
  text-align: left;
}
ul.upcoming-events.triangle li {
  font-size: 12pt;
  line-height: 1.5;
  margin-bottom: 1em;
}
ul.upcoming-events.triangle span {
  display: block;
}
.home-spotlight ul.upcoming-events {
  list-style-type: none;
}
.home-spotlight ul.upcoming-events li {
  background-image: url(/img/arrow-icon.png);
  background-repeat: no-repeat;
  font-size: 12pt;
  line-height: 1.333333333;
  margin-bottom: 1em;
  padding-left: 2rem;
  text-align: left;
}
.home-spotlight ul.upcoming-events .event-title {
  font-weight: 700;
}
.home-spotlight ul.upcoming-events .event-location,
.home-spotlight ul.upcoming-events .event-title {
  display: block;
}
.home-icon-nav {
  width: 100%;
  max-width: unset;
  padding: 1em 0;
  margin: 0;
}
.home-icon-nav {
  background: #0076c0;
  width: 100%;
  text-align: center;
  font-size: 20pt;
}
.home-icon-nav .wp-block-columns {
  max-width: 1000px;
  margin: auto;
  display: flex;
  flex-wrap: wrap;
}
.home-icon-nav .wp-block-column {
  margin-bottom: 0;
  word-break: keep-all;
  overflow-wrap: normal;
}
.home-icon-nav a {
  color: #fff;
  display: block;
}
.home-icon-nav img {
  display: block;
  max-height: 75px;
  width: auto;
  display: block;
  margin: auto;
}
.home-icon-nav figcaption {
  font-size: 20pt;
}
footer.primary-footer {
  background-color: #58595b;
  border-top: 1px solid #58595b;
  color: #b5b5b5;
  font-size: 11pt;
  line-height: 1.46;
}
footer.primary-footer .container {
  padding: 1rem;
  max-width: 1170px;
}
footer.primary-footer .footer-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-areas: "nav1 nav2" "nav3 nav4" "misc address" "social social" "copyright copyright";
  grid-gap: 1rem;
}
.footer-nav-1 {
  grid-area: nav1;
}
.footer-nav-2 {
  grid-area: nav2;
}
.footer-nav-3 {
  grid-area: nav3;
}
.footer-nav-4 {
  grid-area: nav4;
}
.footer-grid div[class*="footer-nav-"] li {
  text-align: left;
}
.footer-nav-misc {
  grid-area: misc;
}
.footer-grid div[class*="footer-nav-misc"] ul {
  margin: 0;
}
.footer-grid div[class*="footer-nav-misc"] li {
  list-style-type: none;
  display: inline-block;
  margin: 0;
  padding: 0;
}
.footer-grid div[class*="footer-nav-misc"] li:not(:last-child):after {
  content: "|";
  margin: 0 0.75em;
}
.footer-grid div[class*="footer-nav-misc"] li a {
  color: #b5b5b5;
}
.footer-item-address {
  grid-area: address;
}
.footer-item-social {
  grid-area: social;
  text-align: center;
  padding: 1em 0 2em;
  margin: 0 3em;
}
.footer-item-social .social-links {
  display: flex;
  justify-content: space-around;
  width: 80%;
  margin: auto;
}
.footer-item-social .social-links img {
  max-width: 50px;
}
.footer-item-social h5 {
  padding-bottom: 1em;
  margin-bottom: 1em;
  border-bottom: 1px solid;
}
.footer-item-copyright {
  grid-area: copyright;
  text-align: center;
}
footer.primary-footer h5 {
  font-weight: 300;
  font-size: 20pt;
  line-height: 0.7;
}
footer.primary-footer li.menu-heading {
  display: block;
  font-size: 20pt;
  font-weight: 300;
  line-height: 0.7;
  margin: 1.0933333333rem 0 0.656rem 0;
  padding: 0;
}
footer.primary-footer li {
  margin-left: 1.25rem;
  padding-left: 0;
  list-style-type: disc;
}
footer.primary-footer a {
  color: #fff;
}
.secondary-nav {
  background: #58595b;
  margin: -7px auto 1rem;
  color: #fff;
}
.secondary-nav .secondary-nav-align {
  display: flex;
}
.secondary-nav .secondary-nav-align.align-center {
  justify-content: space-evenly;
}
.secondary-nav .secondary-nav-align.align-left {
  justify-content: flex-start;
}
.secondary-nav .secondary-nav-align.align-right {
  justify-content: flex-end;
}
.secondary-nav .product-name {
  color: #fff;
  font-size: 13pt;
  font-weight: 900;
  padding: 1em;
  margin-top: 1em;
}
.secondary-nav ul {
  font-size: 13pt;
  line-height: 20pt;
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.secondary-nav.multichannel ul {
  grid-template-columns: 1fr 1fr;
  flex-grow: 1;
}
.secondary-nav ul li {
  padding: 1em;
  text-align: center;
}
.secondary-nav ul li a {
  color: #eee;
}
.is-style-outline .wp-block-button__link {
  border-radius: 0.5em;
}
.learn-more-link a {
  border-bottom: 1px solid;
  padding-bottom: 0.0125em;
}
.learn-more-link a:before {
  content: "> ";
}
.learn-more-link a:hover {
  text-decoration: none;
}
h2 {
  font-size: 30pt;
  font-weight: 300;
}
h3 {
  font-size: 20pt;
  font-weight: 300;
}
h4 {
  font-size: 18pt;
  font-weight: 300;
}
h5 {
  font-size: 16pt;
  font-weight: 300;
}
h6 {
  font-size: 14pt;
  font-weight: 700;
}
body.product section {
  margin-top: 2rem;
}
body.product h1 {
  line-height: 1;
  font-size: 160px;
  font-size: calc(1rem + 11.37vw);
  font-size: 13.5vw;
  font-weight: 700;
}
body.product h1 span {
  font-size: 72px;
  font-size: calc(1rem + 4.37vw);
  font-size: 6vw;
  font-weight: 100;
  display: block;
}
body.product {
  font-size: 14pt;
  font-size: 12pt;
  line-height: 20pt;
  color: #58595b;
}
body.product h2 {
  text-align: center;
  color: #58595b;
}
body.product .entry-content .container {
  max-width: 1000px;
}
body.product p {
  text-align: left;
}
body.product .product-intro {
  display: flex;
  flex-direction: column;
}
body.product .product-intro > * {
  max-width: 80%;
  margin: auto;
}
body.product .product-intro .wp-block-image img {
  display: block;
  margin: auto;
}
body.product .product-intro ul {
  list-style-type: circle;
  padding-left: 1em;
}
body.product .product-intro ul li {
  font-size: 14pt;
  font-size: 12pt;
  line-height: 24pt;
  list-style-type: disc;
}
.hero h1,
.hero h1 span {
  font-size: 36px;
}
body.product .product-key-features a {
  text-decoration: underline;
}
body.product .product-key-features h2 {
  font-weight: 700;
  font-size: 40pt;
  text-align: center;
}
body.product .product-key-features h3 {
  font-weight: 300;
  font-size: 26pt;
}
body.product .product-key-features.container {
  padding: 0;
}
body.product .product-key-features .row {
  align-content: center;
  align-items: center;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 4rem;
}
body.product .product-family-specs {
  background-color: #dfdfdf;
  border: 1px solid #dfdfdf;
  font-size: 18pt;
  line-height: 36pt;
}
body.product .product-family-specs .container {
  margin-top: 1em;
  margin-bottom: 2em;
}
body.product .product-family-specs h2 {
  font-weight: 300;
  font-size: 30pt;
}
body.product .product-family-specs .table-wrapper {
  display: table;
  margin: auto;
}
body.product .product-family-specs table {
  width: auto;
  min-width: 75%;
  margin-bottom: 1em;
}
body.product .product-family-specs tr {
  border-bottom-color: #58595b;
}
body.product .product-family-specs tr:last-child {
  border-bottom: none;
}
body.product .product-family-specs th {
  padding-right: 1em;
}
body.product .product-family-specs td,
body.product .product-family-specs th {
  vertical-align: top;
}
body.product .product-models {
  font-size: 16pt;
  margin-bottom: 100px;
}
body.product .product-models h2 {
  font-weight: 300;
  font-size: 30pt;
  margin: 2em auto;
}
body.product .product-models .row.heading {
  font-weight: 700;
  font-size: 16pt;
  margin-bottom: 0;
}
body.product .product-models .row:last-of-type {
  margin-bottom: 4em;
}
body.product .product-models .row .col.heading {
  font-weight: 700;
  font-size: 20pt;
  margin-bottom: 1em;
}
body.product .product-models .row .col,
body.product .product-models .row .col p {
  text-align: left !important;
}
body.product .product-models .row .col p,
body.product .product-models .row .col.heading p {
  margin-top: 0;
  margin-bottom: 0;
}
body.product .product-models .divider {
  margin: 1em 0;
  background-color: #58595b;
}
body.product .product-gallery {
  background-color: #0076c0;
}
body.product .product-gallery h2 {
  font-size: 20pt;
  font-weight: 300;
  color: #fff;
  margin-bottom: 0;
  padding: 1em;
  background: #0076c0;
  background: linear-gradient(
    0deg,
    rgba(0, 118, 192, 1) 0,
    rgba(0, 118, 192, 1) 48%,
    rgba(255, 255, 255, 1) 50%,
    rgba(0, 118, 192, 1) 52%,
    rgba(0, 118, 192, 1) 100%
  );
}
body.product .product-gallery h2 span {
  background: #0076c0;
  padding: 0 1em;
}
body.product .product-applications h2 {
  font-size: 30pt;
  font-weight: 300;
}
body.product .product-applications .app-carousel {
  display: flex;
}
body.product .product-applications .carousel-item {
  max-width: 30%;
  padding: 1em;
  margin: 1em;
}
body.product .product-applications .carousel-item h3 {
  font-size: 16pt;
  font-weight: 700;
  margin-top: 0;
}
body.product .product-applications .carousel-item .ref-name {
  font-size: 14pt;
  font-size: 12pt;
  font-weight: 700;
  display: block;
}
body.product .product-applications .carousel-item .ref-quote {
  margin: 1em 0;
  text-align: left;
}
.product-downloads {
  background-color: #e5e5e5;
  border-top: 1px solid #e5e5e5;
}
.product-downloads .container {
  padding-bottom: 1em;
  max-width: 1000px;
}
.product-downloads h2 {
  margin-top: 1em;
  font-size: 30pt;
  font-weight: 300;
}
.product-downloads {
  font-size: 16pt;
  font-weight: 300;
}
.product-downloads .resource-category {
  font-size: 30pt;
  font-weight: 300;
  margin-top: 1em;
}
.product-downloads .resource-label {
  font-weight: 700;
}
.product-downloads .doctype {
  text-align: right;
}
.product-downloads .divider {
  background-color: #58595b;
}
.product-downloads a {
  text-decoration: none;
  background: -moz-linear-gradient(left, #0076c0, #0076c0 100%);
  background: -ms-linear-gradient(left, #0076c0, #0076c0 100%);
  background: -o-linear-gradient(left, #0076c0, #0076c0 100%);
  background: -webkit-gradient(linear, 0 0, 100% 0, from(#0076c0), to(#0076c0));
  background: -webkit-linear-gradient(left, #0076c0, #0076c0 100%);
  background: linear-gradient(left, #0076c0, #0076c0 100%);
  background-position: 0 100%;
  background-size: 10px 1px;
  background-repeat: repeat-x;
}
.product-downloads .doctype a {
  text-decoration: none;
  background: 0 0;
}
.product-related {
  margin-bottom: 4em;
}
.product-related h2 {
  font-size: 30pt;
  font-weight: 300;
}
.product-related a {
  color: #58595b;
  white-space: nowrap;
}
.product-related a:hover {
  color: #0076c0;
}
.product-related .row {
  align-items: center;
  display: flex;
  flex-direction: column;
}
.product-related .row > div {
  width: 300px;
}
.product-related figure.wp-block-image {
  margin-bottom: 0;
  height: 200px;
}
.product-related .card-panel {
  font-size: 20pt;
  font-weight: 300;
  text-align: center;
}
.product-related .product-name {
  margin-bottom: 1em;
}
body.product .product-contact-us {
  background: #e5e5e5;
  padding: 50px 0;
}
body.product .product-contact-us h2 {
  font-weight: 300;
  font-size: 30pt;
  margin-bottom: 50px;
}
.product-contact-us .cta {
  text-align: center;
}
body.product .products-overview h2,
body.pvcam-overview h2 {
  font-size: 30pt;
  font-weight: 300;
  text-align: left;
  margin-bottom: 0;
}
body.product .products-overview h2 + p {
  font-size: 20pt;
  font-weight: 700;
  margin-top: 0;
}
body.product .products-overview .innerblocks-wrap,
body.product .products-overview .wp-block-columns,
body.pvcam-overview .innerblocks-wrap {
  align-items: center;
}
body.pvcam-overview strong {
  font-weight: 700;
}
body.pvcam-overview .cta p {
  text-align: center !important;
  padding: 1em 0;
  font-size: 1.1em;
}
a.button.button-design,
a.button.button-sales {
  background: #fff;
  border: 2px solid;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  font-size: 20pt;
  justify-content: center;
  margin: 1em;
  padding: 0.5em 1em;
}
a.button.button-design:hover,
a.button.button-sales:hover {
  border-color: transparent;
  color: #fff;
  text-decoration: none;
}
a.button.button-sales {
  color: #25b4b1;
}
a.button.button-sales:hover {
  background-color: #25b4b1;
}
a.button.button-design {
  color: #8ec89a;
}
a.button.button-design:hover {
  background-color: #8ec89a;
}
.nowrap {
  white-space: nowrap !important;
}
body main ul.bulleted {
  list-style-type: circle;
  padding-left: 1em;
}
body main ul.bulleted li {
  list-style-type: disc;
}
main.site-main {
  border-bottom: 1px solid #58595b;
  background: #fff;
}
body.imaging-topics .product-contact-us {
  margin-top: 100px;
}
body.imaging-topics .product-contact-us h2 {
  text-align: center;
}
body.imaging-topics .container.indented {
  padding: 0 2em;
}
.container.applications-overview-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
  margin: 50px auto;
  max-width: 1200px;
}
.applications-overview-buttons > * {
  margin-bottom: 1em;
}
.container.applications-overview-buttons .button.find-out-more {
  align-items: center;
  display: flex;
  flex-direction: column;
  width: 33%;
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-items: center;
  justify-content: space-around;
}
.container.applications-overview-buttons .button.find-out-more a {
  flex-grow: 1;
  width: 80%;
  word-break: normal;
  display: grid;
  align-self: center;
  justify-self: stretch;
  align-content: center;
}
body.learn h3 {
  margin-top: 2em;
}
body.learn h3,
body.learn p.heading {
  border-bottom: 1px solid;
  font-size: 30pt;
  line-height: 1.25;
  margin-bottom: 0;
  padding-bottom: 0.5em;
  text-align: left !important;
}
body.learn main.site-main {
  padding-bottom: 2em;
}
body.appnotes h2,
body.technotes h2 {
  margin-top: 2em;
}
body.appnotes h2,
body.appnotes p.heading,
body.technotes h2,
body.technotes p.heading {
  border-bottom: 1px solid;
  font-size: 30pt;
  line-height: 1.25;
  margin-bottom: 0;
  padding-bottom: 0.5em;
  text-align: left !important;
}
body.appnotes main.site-main,
body.technotes main.site-main {
  padding-bottom: 2em;
}
body.camera-technology h2 {
  font-size: 36pt;
  color: #0076c0;
}
body.camera-technology p {
  font-size: 16pt;
  line-height: 1.25;
}
body.careers .entry-content .container {
  max-width: 1200px;
}
body.careers h2 {
  font-weight: 300;
  font-size: 30pt;
  margin-top: 1em;
  margin-bottom: 1em;
}
body.careers h2.postings {
  color: #0076c0;
  font-weight: 700;
}
body.careers h3 {
  color: #0076c0;
  font-weight: 900;
  font-size: 14pt;
  font-size: 12pt;
  margin-bottom: 0.25em;
}
body.careers p {
  line-height: 1.428571429;
}
body.careers h3 + p {
  margin-top: 0;
}
body.careers .wp-block-button {
  margin: 3em auto;
  text-align: center;
}
body.careers a.wp-block-button__link {
  background: #0076c0;
  border: 2px solid transparent;
  border-radius: 10px;
  color: #fff;
  font-weight: 700;
  text-decoration: none;
  width: auto;
}
body.careers a.wp-block-button__link:hover {
  background: #fff;
  color: #0076c0;
  border: 2px solid;
}
body.about p {
  font-size: 12pt;
  line-height: 1.333333;
}
body.about figure.company-headquarters {
  display: block;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
body.customer-stories-index main {
  background: #eee;
}
body.customer-stories-index .secondary-nav {
  background: #535353;
}
body.customer-stories-index .boxes {
  display: flex;
  flex-wrap: wrap;
  padding: 10px;
  justify-content: space-around;
  margin: 0 auto;
}
body.customer-stories-index .boxes .item {
  text-align: center;
  background: #fff;
  display: flex;
  flex-direction: column;
  padding: 10px;
  margin: 20px;
}
body.customer-stories-index .boxes .item * {
  color: #58595b;
  font-weight: 700;
  font-size: 14pt;
  font-size: 12pt;
  line-height: 1;
  margin: 0 auto 10px;
}
body.customer-stories-index .boxes .loc,
body.customer-stories-index .boxes .name {
  display: block;
  line-height: 1.25;
  margin: 0;
}
body.customer-stories-index .boxes .read-more {
  font-weight: 300;
  font-size: 16pt;
  text-decoration: none;
  color: #0076c0;
  border: 1px solid;
  display: block;
  padding: 0.125em 0.75em 0.25em;
  margin: 1em auto;
  border-radius: 5px;
  line-height: 1.25;
  margin: 0 auto;
}
body.customer-research .entry-content .container {
  max-width: 1000px;
}
body.customer-research .customer,
body.customer-research .customer p {
  font-size: 30pt;
  font-weight: 300;
  line-height: 1;
  margin-bottom: 0;
}
body.customer-research .location,
body.customer-research .location p {
  font-size: 20pt;
  line-height: 1;
  margin-top: 0;
}
body.customer-research h2 {
  color: #0076c0;
  font-size: 30pt;
  font-weight: 700;
  border-bottom: 4px solid;
  padding-bottom: 5px;
}
body.customer-research figcaption {
  font-size: 14pt;
  font-size: 12pt;
  font-weight: 300;
  line-height: 1.428571429;
  text-align: left;
}
body.customer-research .camera-used figcaption {
  font-size: 18pt;
  font-weight: 700;
  margin: 0 auto;
  text-align: center;
}
body.customer-research .solution {
  display: flex;
  flex-direction: column;
  align-items: center;
}
body.customer-research .solution .product-photo {
  max-width: 100%;
  height: auto;
  margin: 2rem auto;
  display: block;
}
body.customer-research .solution .button.find-out-more {
  margin: 1rem auto;
}
.customer-quote {
  margin: 1rem auto;
}
.customer-quote blockquote {
  border: 0.25em solid #585961;
  font-size: 100%;
  line-height: 1.5;
  padding: 1em 1.25em;
  position: relative;
}
.customer-quote blockquote:after,
.customer-quote blockquote:before {
  background: transparent url(/wp-content/themes/teleprin/img/tpi-quote.png)
    center/80% no-repeat;
  border-radius: 50%;
  content: "";
  display: block;
  position: absolute;
  height: 3em;
  width: 3em;
}
.customer-quote blockquote:before {
  transform: rotate(180deg);
  top: -1.25em;
  left: -1.25em;
}
.customer-quote blockquote:after {
  bottom: -1.25em;
  right: -1.25em;
}
body.support h2 {
  font-size: 30pt;
  font-weight: 300;
}
body.support .container {
  max-width: 1000px;
}
body.support.software h2 {
  margin-top: 2em;
}
body.support.software h3 {
  color: #0076c0;
  font-size: 20pt;
  font-weight: 500;
  border-bottom: 1px solid;
  padding: 0 0.25em;
}
body.support.software h4 {
  font-size: 16pt;
  font-weight: 700;
  margin-top: 0;
}
body.support.software .container.software-block {
  padding: 0 2em;
  margin: 2em auto;
}
body.support.software .container.software-block ul {
  margin-left: 1em;
}
body.support.software .entry-content li,
body.support.software .entry-content p {
  max-width: 70ch;
}
body.support.software .entry-content ul li {
  text-align: left !important;
}
body.support.support-form .dropdown-trigger {
  outline: 0 !important;
}
.dropdown-content.mega {
  box-sizing: border-box !important;
  min-width: 800px !important;
  color: #fff !important;
  background: #fff !important;
  font-size: 11pt !important;
  font-weight: 300 !important;
  line-height: 18pt !important;
  position: relative !important;
  left: auto !important;
  right: auto !important;
  width: 80% !important;
  margin: 0 auto !important;
  max-width: 1170px !important;
}
.dropdown-content.narrow {
  width: auto !important;
  box-sizing: border-box !important;
  color: #fff !important;
  background: #fff !important;
  font-size: 11pt !important;
  font-weight: 300 !important;
  line-height: 18pt !important;
  margin: 0 auto !important;
}
.dropdown-content.narrow .col {
  width: 100%;
}
.dropdown-content.mega > .row,
.dropdown-content.narrow > .row {
  margin: 0 !important;
}
.dropdown-content.mega .mega-heading,
.dropdown-content.narrow .mega-heading {
  color: #0076c0 !important;
  font-size: 20pt !important;
  display: block !important;
  border-bottom: 1px solid !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.dropdown-content.mega .mega-primary,
.dropdown-content.mega .mega-spotlight,
.dropdown-content.narrow .mega-primary {
  padding: 2em !important;
}
.dropdown-content.mega .mega-secondary {
  padding: 2em 0 !important;
}
.dropdown-content.mega .mega-spotlight {
  margin-top: 24px;
}
.dropdown-content.mega .mega-spotlight a:hover {
  background: 0 0 !important;
}
.dropdown-content li {
  margin: 0;
  padding: 0;
  line-height: 1;
}
.dropdown-content.mega .mega-primary ul,
.dropdown-content.narrow .mega-primary ul {
  margin-top: 10px;
}
.dropdown-content.mega .mega-primary li,
.dropdown-content.narrow .mega-primary li {
  min-height: auto !important;
}
.dropdown-content.mega .mega-primary a,
.dropdown-content.narrow .mega-primary a {
  color: #0076c0 !important;
  font-size: 11pt !important;
  font-weight: 300 !important;
  line-height: 1.4;
  margin: 0;
  padding: 5px 0;
}
.dropdown-content.mega .mega-primary a:hover,
.dropdown-content.narrow .mega-primary a:hover {
  font-weight: 700 !important;
  text-decoration: none !important;
  background-color: #eee !important;
  color: #004899 !important;
}
.dropdown-content.mega .mega-primary li.label,
.dropdown-content.narrow .mega-primary li.label {
  color: #0076c0 !important;
  cursor: auto;
  font-size: 11pt !important;
  font-weight: 300 !important;
  line-height: 1.4;
  margin: 0;
  padding: 5px 0;
  background-color: #fff !important;
}
.dropdown-content.mega .mega-blurb {
  color: #58595b !important;
  line-height: 1.4 !important;
  text-align: left;
}
.dropdown-content.mega .mega-change-view {
  font-weight: 700 !important;
  font-size: 11pt !important;
  display: inline-block;
  margin-top: 2em;
}
.mega-secondary-container:not(:first-child) {
  display: none;
}
.mega-secondary-container {
  color: #58595b;
  background: #fff;
  display: none;
}
.dropdown-content.mega .mega-secondary-container .mega-heading {
  margin-bottom: 1em !important;
}
.mega-secondary-container.active {
  display: block;
}
.dropdown-content.mega .mega-secondary ul {
  margin: 1em 0 2em;
}
.dropdown-content.mega .mega-secondary li {
  min-height: auto !important;
}
.dropdown-content.mega .mega-secondary a {
  font-size: 11pt !important;
  font-weight: 300 !important;
  color: #0076c0 !important;
  padding: 0 !important;
}
.dropdown-content.mega .mega-secondary a:active,
.dropdown-content.mega .mega-secondary a:hover {
  background-color: #fff !important;
  color: #004899 !important;
}
.padded-1 {
  padding: 1rem;
}
.padded-top-1 {
  padding-top: 1rem;
}
.w33 {
  width: 33%;
}
.w30 {
  width: 30%;
}
.margin-bottom-0 {
  margin-bottom: 0;
}
.mw-1000 {
  max-width: 1000px !important;
}
.mw-1200 {
  max-width: 1200px !important;
}
div#nav-dropdown-container {
  width: 100%;
  position: absolute;
  height: 0 !important;
  background: 0 0 !important;
  top: 100%;
  left: 0;
}
.pure-button-primary {
  background: #0076c0 !important;
}
.has-darkblue-color {
  color: #004899 !important;
}
.has-teledyneblue-color {
  color: #0076c0 !important;
}
.has-medblue-color {
  color: #0084db !important;
}
.has-strongcyan-color {
  color: #25b4b1 !important;
}
.has-limegreen-color {
  color: #8ec89a !important;
}
.has-white-color {
  color: #fff !important;
}
.has-verylightgrey-color {
  color: #f4f3f3 !important;
}
.has-lightgrey-color {
  color: #eee !important;
}
.has-grey-color {
  color: #e5e5e5 !important;
}
.has-teledynegrey-color {
  color: #58595b !important;
}
.has-verydarkgrey-color {
  color: #434343 !important;
}
.has-black-color {
  color: #000 !important;
}
.has-darkblue-background-color {
  background-color: #004899 !important;
}
.has-teledyneblue-background-color {
  background-color: #0076c0 !important;
}
.has-medblue-background-color {
  background-color: #0084db !important;
}
.has-strongcyan-background-color {
  background-color: #25b4b1 !important;
}
.has-limegreen-background-color {
  background-color: #8ec89a !important;
}
.has-white-background-color {
  background-color: #fff !important;
}
.has-verylightgrey-background-color {
  background-color: #f4f3f3 !important;
}
.has-lightgrey-background-color {
  background-color: #eee !important;
}
.has-grey-background-color {
  background-color: #e5e5e5 !important;
}
.has-teledynegrey-background-color {
  background-color: #58595b !important;
}
.has-verydarkgrey-background-color {
  background-color: #434343 !important;
}
.has-black-background-color {
  background-color: #000 !important;
}
.c-left {
  clear: left !important;
}
.ta-justify {
  text-align: justify !important;
}
.fw-100 {
  font-weight: 100 !important;
}
.fw-300 {
  font-weight: 300 !important;
}
.fw-500 {
  font-weight: 500 !important;
}
.fw-700 {
  font-weight: 700 !important;
}
.fw-900 {
  font-weight: 900 !important;
}
.fs-30pt {
  font-size: 30pt !important;
}
.fs-38pt {
  font-size: 38pt !important;
}
.fs-50pt {
  font-size: 50pt !important;
}
.fs-54pt {
  font-size: 54pt !important;
}
.fs-90pt {
  font-size: 90pt !important;
}
.fs-120pt {
  font-size: 120pt !important;
}
.d-flex {
  display: flex;
}
.d-flex .s4 {
  width: 33%;
}
.fd-column {
  flex-direction: column;
}
.p-1 {
  padding: 1rem !important;
}
.p-1e {
  padding: 1em !important;
}
.p-2 {
  padding: 2rem !important;
}
.p-3 {
  padding: 3rem !important;
}
.p-4 {
  padding: 4rem !important;
}
.mt-0 {
  margin-top: 0 !important;
}
.mt-1 {
  margin-top: 1rem !important;
}
.mt-2 {
  margin-top: 2rem !important;
}
.mt-3 {
  margin-top: 3rem !important;
}
.mt-4 {
  margin-top: 4rem !important;
}
.mb-0 {
  margin-bottom: 0 !important;
}
.mtb-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.mb-1 {
  margin-bottom: 1rem !important;
}
.mb-2 {
  margin-bottom: 2rem !important;
}
.mb-3 {
  margin-bottom: 3rem !important;
}
.mb-4 {
  margin-bottom: 4rem !important;
}
.jc-flexend {
  justify-content: flex-end;
}
.jc-flexstart {
  justify-content: flex-start;
}
.fg-1 {
  flex-grow: 1;
}
.df-column {
  flex-direction: column;
}
.jc-spacebetween {
  justify-content: space-between;
}
.as-center {
  align-self: center;
}
.ai-center {
  align-items: center;
}
.fs-10pt {
  font-size: 10pt !important;
}
.fs-12pt {
  font-size: 12pt !important;
}
.fs-14pt {
  font-size: 14pt !important;
}
.fs-16pt {
  font-size: 16pt !important;
}
.fs-18pt {
  font-size: 18pt !important;
}
.fs-24pt {
  font-size: 24pt !important;
}
.lh-12pt {
  line-height: 12pt;
}
.lh-14pt {
  line-height: 14pt;
}
.lh-18pt {
  line-height: 18pt;
}
.lh-20pt {
  line-height: 20pt;
}
a.button.find-out-more {
  border: 1px solid;
  border-radius: 10px;
  padding: 0.5rem 1rem;
  font-size: 1.125rem;
}
div.is-style-outline.button.find-out-more a,
div.is-style-outline.wp-block-button.find-out-more a {
  background: #fff;
  color: #0076c0;
  text-decoration: none;
  padding: 0.5rem 1rem;
  text-transform: capitalize;
  font-size: 1.125rem;
}
div.is-style-outline.button.find-out-more a:hover,
div.is-style-outline.wp-block-button.find-out-more a:hover {
  color: #fff;
  background: #0076c0;
}
.wp-block-button.is-style-outline.find-out-more.large a {
  font-size: 1.5rem;
  display: block;
  padding: 0.75em;
}
div.wp-block-button.find-out-more.no-text-transform a {
  text-transform: none !important;
}
.d-block {
  display: block;
}
.d-inlineblock {
  display: inline-block;
}
.d-table {
  display: table;
}
.m-auto {
  margin: auto;
}
.ta-center {
  text-align: center !important;
}
.ta-left {
  text-align: left !important;
}
.center-vertical {
  display: flex;
  align-items: center;
  justify-content: center;
}
.container.global-offices h2 {
  color: #0076c0 !important;
  font-size: 30pt;
  font-weight: 700;
  text-align: left;
}
.container.global-offices h3 {
  color: #58595b;
  font-size: 20pt;
  font-weight: 700;
}
.container.instrument-designer {
  max-width: 1200px;
}
.container.instrument-designer .wp-block-themeisle-blocks-advanced-column {
  text-align: center;
}
.instrument-designer h2 {
  font-size: 24pt;
  font-weight: 700;
  text-align: left;
}
body.third-party-software .container {
  max-width: 1200px;
}
body.third-party-software h2 {
  font-size: 30pt;
  font-weight: 300;
}
body.third-party-software h3 {
  border-bottom: 1px solid #58595b;
  color: #0076c0;
  font-size: 14pt;
  font-weight: 700;
  padding: 0.25rem 0.5rem;
}
body.third-party-software h4 {
  font-size: 12pt;
  font-weight: 700;
  margin-left: 0.5rem;
  margin-top: 0;
  margin-bottom: 0;
}
body.third-party-software strong {
  font-weight: 700;
}
body.third-party-software h3 ~ p {
  margin: 1em 1em 1em 0.5rem;
}
body.third-party-software h4 ~ ul {
  margin-left: 0.5rem;
  margin-top: 0;
}
body.third-party-software ul li {
  text-align: left !important;
}
ol.termsofsale {
  counter-reset: termsofsalecounter;
  line-height: 1.7;
  list-style: none;
  list-style-position: inside;
  padding-left: 0;
  text-align: left;
}
ol.termsofsale li:before {
  content: counter(termsofsalecounter, decimal) ". ";
  counter-increment: termsofsalecounter;
  font-weight: 700;
}
ol.termsofsale strong {
  font-weight: 700;
}
ol.termsofsale li {
  margin-bottom: 0.5rem;
}
ol.termsofsale li p {
  font-weight: 300;
  display: inline;
}
ol.termsofsale p:before {
  content: " ";
  text-decoration: none;
}
ol.termsofsale ul.bulleted {
  font-weight: 300;
}
p.centered {
  text-align: center !important;
}
form input,
form label {
  font-family: "Museo Sans", Univers, Calibri, Arial, sans-serif !important;
  font-size: 12pt;
  font-weight: 300;
  color: #58595b;
}
input {
  border-color: #e5e5e5 !important;
}
select {
  margin: 0.25em auto !important;
}
[type="checkbox"]:checked,
[type="checkbox"]:not(:checked),
[type="radio"]:checked,
[type="radio"]:not(:checked) {
  position: relative;
  opacity: 1;
  pointer-events: inherit;
}
#accepted_privacy_policy,
#contact_consent {
  position: static !important;
  opacity: 1 !important;
  pointer-events: all !important;
}
input#submit-form {
  margin-top: 1em;
  color: #fff;
  padding: 1em;
}
.downloadform {
  margin: 2em auto;
}
.downloadform label.required:after {
  content: "*";
  color: #0076c0;
}
body.ocular .entry-content .container {
  max-width: 1170px;
}
body.ocular h2 {
  font-size: 30pt;
  font-weight: 300;
  line-height: 0.6;
}
body.ocular h2.secondary {
  color: #0076c0;
  font-weight: 700;
}
body.ocular h3 {
  font-size: 24pt;
  font-weight: 700;
  line-height: 0.85;
  margin-bottom: 0;
}
body.ocular .resource-links {
  column-width: 400px;
}
.youtube-responsive-container {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}
.youtube-responsive-container embed,
.youtube-responsive-container iframe,
.youtube-responsive-container object {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#loading {
  position: fixed;
  top: 50%;
  left: 50%;
}
body.legacy-products h2 {
  font-size: 30pt;
  font-weight: 300;
  text-align: left;
}
.legacy-product {
  border-top: 1px solid;
  margin-top: 1em;
}
.legacy-product h3.legacy-product-name {
  color: #0076c0;
  font-size: 20pt;
  margin: 0.5em 0 0 0;
  font-weight: 700;
}
.legacy-product .legacy-product-details {
  align-items: center;
  display: flex;
  flex-direction: column;
}
.legacy-product .legacy-product-img-container {
  float: left;
  width: 180px;
  margin-right: 2em;
}
.legacy-product .legacy-product-text {
  overflow: auto;
}
.legacy-product:after {
  content: " ";
  display: block;
  clear: both;
}
body.search-results .container {
  max-width: 1200px;
}
body.search-no-results h1,
body.search-results h1 {
  font-size: 32pt;
  font-weight: 700;
}
body.search-results h2 {
  font-size: 20pt;
  font-weight: 300;
  margin-bottom: 0;
}
body.search-results article.page {
  margin-bottom: 3em;
  max-width: 70ch;
}
body.camera-courses .container {
  max-width: 1200px;
}
body.camera-courses h3 {
  color: #0076c0;
  font-size: 20pt;
  font-weight: 700;
}
body.camera-courses .benefits h3 {
  border-bottom: 1px solid;
  color: #0076c0;
  font-size: 20pt;
  font-weight: 700;
  padding-bottom: 0.5em;
}
body.camera-courses .benefits ul li {
  font-size: 12pt;
  font-weight: 700;
  text-align: left;
}
body.camera-courses .quotes-container {
  margin: 1em auto;
}
body.camera-courses .camera-courses-gallery {
  position: relative;
  margin: 0 auto;
  top: 0;
  left: 0;
  width: 750px;
  height: 675px;
  overflow: hidden;
  visibility: hidden;
}
body.camera-courses .camera-courses-gallery .slides {
  cursor: default;
  position: relative;
  top: 0;
  left: 0;
  width: 750px;
  height: 675px;
  overflow: hidden;
}
body.camera-courses .camera-courses-gallery .slides .slide-container {
  background-color: #fff;
}
body.camera-courses .camera-courses-gallery .slides .slide-container img {
  position: absolute;
  top: 0;
  left: 0;
  width: 750px;
  height: 443px;
  border: 6px solid #0076c0;
  box-sizing: border-box;
}
body.camera-courses
  .camera-courses-gallery
  .slides
  .slide-container
  .attribution,
body.camera-courses
  .camera-courses-gallery
  .slides
  .slide-container
  .testimonial {
  color: #4d4d4d;
  font-family: "Museo Sans", Univers, Calibri, Arial, sans-serif;
  line-height: 1.5;
  position: absolute;
}
body.camera-courses
  .camera-courses-gallery
  .slides
  .slide-container
  .testimonial {
  border-top: 3px solid #0076c0;
  font-size: 22px;
  font-style: italic;
  padding: 0.5em 1em 0 1em;
  text-align: left;
  top: 470px;
  width: 100%;
}
body.camera-courses
  .camera-courses-gallery
  .slides
  .slide-container
  .attribution {
  border-bottom: 3px solid #0076c0;
  bottom: 0;
  font-size: 20px;
  text-align: right;
  right: 0;
  padding: 0 1em 0.5em;
  width: 100%;
}
body.camera-courses .camera-courses-gallery .navigator {
  position: absolute;
  top: 410px;
}
body.camera-courses .camera-courses-gallery .prototype {
  height: 16px;
  width: 16px;
}
body.camera-courses .camera-courses-gallery svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
body.camera-courses .camera-courses-gallery .arrowleft,
body.camera-courses .camera-courses-gallery .arrowright {
  width: 55px;
  height: 55px;
  top: 200px;
}
body.camera-courses .camera-courses-gallery .arrowleft {
  left: 25px;
}
body.camera-courses .camera-courses-gallery .arrowright {
  right: 25px;
}
body.camera-courses .future-courses h3 {
  margin-bottom: 0;
}
body.camera-courses .future-courses h3 + ul {
  margin: 0 auto 2em 2em;
}
body.camera-courses h3.previous-course-header {
  color: #58595b;
  margin: 0;
  font-size: 18pt;
  font-weight: 100;
}
body.camera-courses h3.previous-course-header:before {
  content: "+ ";
}
body.camera-courses .collapsible {
  border-top: 1px solid #0076c0;
  border-bottom: 1px solid #0076c0;
  border-right: none;
  border-left: none;
  margin: 0.5rem 0 1rem 0;
  box-shadow: none;
}
body.camera-courses .collapsible-header {
  padding: 0.75em 0.5em;
}
body.camera-courses .active .collapsible-header {
  border-bottom: 1px solid #0076c0;
}
body.camera-courses .active .collapsible-header:focus,
body.camera-courses .keyboard-focused .collapsible-header:focus {
  background-color: #fff !important;
}
body.camera-courses .collapsible-body {
  border: none;
  padding-top: 0.25em;
  padding-bottom: 0.25em;
}
.jssorl-009-spin img {
  animation-name: jssorl-009-spin;
  animation-duration: 1.6s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}
@keyframes jssorl-009-spin {
  from {
    transform: rotate(0);
  }
  to {
    transform: rotate(360deg);
  }
}
.jssorb051 .i {
  position: absolute;
  cursor: pointer;
}
.jssorb051 .i .b {
  fill: #fff;
  fill-opacity: 0.5;
}
.jssorb051 .i:hover .b {
  fill-opacity: 0.7;
}
.jssorb051 .iav .b {
  fill-opacity: 1;
}
.jssorb051 .i.idn {
  opacity: 0.3;
}
.jssora051 {
  display: block;
  position: absolute;
  cursor: pointer;
}
.jssora051 .a {
  fill: none;
  stroke: #fff;
  stroke-width: 360;
  stroke-miterlimit: 10;
}
.jssora051:hover {
  opacity: 0.8;
}
.jssora051.jssora051dn {
  opacity: 0.5;
}
.jssora051.jssora051ds {
  opacity: 0.3;
  pointer-events: none;
}
.cookie-bar {
  align-items: center;
  border-top: 2px solid #ccc;
  box-sizing: border-box;
  color: #fff;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding: 0.5em 1em;
  position: fixed;
  bottom: -200px;
  left: 0;
  width: 100%;
  z-index: 99999;
}
.cookie-bar .notice {
  padding-right: 150px;
}
.cookie-bar a {
  color: inherit;
  font-weight: bolder;
  text-decoration: underline;
  padding-left: 0.25em;
}
.cookie-bar button {
  background-color: #efefef;
  border: 1px solid transparent;
  color: #999;
  cursor: pointer;
  line-height: 1;
  margin-left: 1em;
  padding: 0.5em 0.45em 0.3em 0.45em;
  text-shadow: 1px 1px 2px #fff;
  white-space: nowrap;
}
.cookie-bar button:hover {
  background-color: #fff;
  color: #333;
  text-shadow: 1px 1px 2px #efefef;
}
.button-cta {
  display: block;
  color: #0076c0;
  background-color: #fff;
  border: 2px solid #0076c0;
  border-radius: 10px;
  font-size: 20pt;
  justify-content: center;
  margin: 1em;
  padding: 0.5em 1em;
  text-align: center;
}
.button.button-cta:hover {
  text-decoration: none;
}
form.yikes-easy-mc-form button[type="submit"] {
  background: #0076c0;
  color: #fff;
  font-size: 1em;
  font-weight: 300;
  padding: 0.5em 1em;
  height: auto;
}
body.camera-tech-workshops figure.workshop-lineart {
  margin: 0 auto;
  text-align: center;
}
body.camera-tech-workshops figure.workshop-lineart + h3 {
  border-bottom: 1px solid;
  padding-bottom: 0.5em;
}
body.camera-tech-workshops .topics figure {
  margin: 0 auto;
  text-align: center;
}
body.camera-tech-workshops .topics .wp-block-image.has-border figure {
  border: 1px solid #e5e5e5;
  background: #fff;
  border-bottom: none;
}
body.camera-tech-workshops .topics h3 {
  color: inherit;
  font-size: 2em;
  font-weight: 300;
  margin: 0 auto;
}
body.camera-tech-workshops .topics p {
  font-size: 1.25em;
  font-weight: 300;
  padding: 0 1em;
  text-align: center !important;
}
body.camera-tech-workshops hr.wp-block-separator {
  border-top: 1px solid;
}
figure.wp-block-image {
  margin: 0;
}
.application-cta-section,
.current-research-section {
  margin: 50px auto;
  padding: 50px 0;
  width: 100%;
}
.application-cta-items,
.current-research-items {
  display: flex;
  flex-wrap: wrap;
  box-sizing: border-box;
  flex-direction: row;
  justify-content: space-between;
  align-items: stretch;
}
.application-cta-item,
.current-research-item {
  align-items: center;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin: 2em 10px;
  width: 300px;
}
.application-cta-item img,
.current-research-item img {
  max-width: 100%;
}
.application-cta-item .application-cta-photo,
.current-research-item .current-research-photo {
  display: block;
  margin: auto;
}
.application-cta-item .application-cta-text,
.current-research-item .current-research-text {
  align-items: center;
  display: flex;
  flex-direction: column;
}
.application-cta-item ol,
.application-cta-item ul,
.current-research-item ol,
.current-research-item ul {
  display: inline-block;
  margin-left: 1em;
  padding-left: 0;
  width: 80%;
}
.application-cta-item ol li,
.application-cta-item ul li,
.current-research-item ol li,
.current-research-item ul li {
  list-style: disc;
  text-align: left !important;
}
.wp-block-image img {
  max-width: 100%;
  height: auto;
}
.ta-justify {
  -webkit-hyphens: auto;
  -webkit-hyphenate-limit-before: 3;
  -webkit-hyphenate-limit-after: 3;
  -webkit-hyphenate-limit-chars: 6 3 3;
  -webkit-hyphenate-limit-lines: 2;
  -webkit-hyphenate-limit-last: always;
  -webkit-hyphenate-limit-zone: 8%;
  -moz-hyphens: auto;
  -moz-hyphenate-limit-chars: 6 3 3;
  -moz-hyphenate-limit-lines: 2;
  -moz-hyphenate-limit-last: always;
  -moz-hyphenate-limit-zone: 8%;
  -ms-hyphens: auto;
  -ms-hyphenate-limit-chars: 6 3 3;
  -ms-hyphenate-limit-lines: 2;
  -ms-hyphenate-limit-last: always;
  -ms-hyphenate-limit-zone: 8%;
  hyphens: auto;
  hyphenate-limit-chars: 6 3 3;
  hyphenate-limit-lines: 2;
  hyphenate-limit-last: always;
  hyphenate-limit-zone: 8%;
}

@counter-style enclosed-lower-alpha {
  system: alphabetic;
  fallback: alpha;
  speak-as: auto;
  symbols: "ａ" "ｂ" "ｃ" "ｄ" "ｅ" "ｆ" "ｇ" "ｈ" "ｉ" "ｊ" "ｋ" "ｌ" "ｍ" "ｎ" "ｏ" "ｐ" "ｑ" "ｒ" "ｓ" "ｔ" "ｕ
" "ｖ" "ｗ" "ｘ" "ｙ" "ｚ";
  prefix: "(";
  suffix: ") ";
}

.terms-of-service .legal-text {
  line-height:1.7;
  max-width:90ch;
}
.terms-of-service .legal-text h2 {
  font-size:1.875rem;
  margin:1em 0 .5em;
}
.terms-of-service .legal-text > ol {
  list-style-type: enclosed-lower-alpha;
}

.terms-of-service .legal-text li {
  padding-bottom:.5em;
}



@media only screen and (max-width: 1000px) {
  .application-cta-items.container {
    justify-content: center;
  }
}
.product-family {
  display: flex;
  flex-wrap: wrap;
  box-sizing: border-box;
  margin: auto;
  justify-content: center;
  justify-content: space-evenly;
  align-items: stretch;
}
.product-family-item {
  align-items: center;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin: 2em 10px;
  width: 300px;
}
.product-family-item img {
  max-width: 100%;
}
.product-family-item .product-photo.portrait {
  display: block;
  margin: auto;
}
.product-family-text {
  align-items: center;
  display: flex;
  flex-direction: column;
}
.product-family ul {
  display: inline-block;
  margin-left: 1em;
  max-width: 80%;
}
.product-family .product-family-item ul li {
  list-style: disc;
  text-align: left;
}
.choose-software-accessories {
  background: 0 0;
  margin: 2em auto;
  max-width: 1000px;
}
.choose-software-accessories table tr {
  border-bottom: none;
}
.choose-software-accessories table tr td:nth-child(2) {
  padding-left: 1em;
  border-left: 2px solid;
}
.choose-software-accessories table tr:nth-child(odd) {
  background: #efefef;
}
.choose-software-accessories table tr:first-of-type {
  background: 0 0;
  border-bottom: 2px solid;
}
.home-spotlight img {
  display: block;
  height: 230px;
  object-fit: cover;
  object-position: center;
  width: 100%;
}
.product-family.bottom-triangle {
  border-bottom: 18px solid #e8e8e8;
  margin-bottom: 50px;
  position: relative;
}
.product-family.bottom-triangle::after {
  content: "";
  position: absolute;
  left: 50%;
  left: calc(50% - 25px);
  top: 100%;
  width: 0;
  height: 0;
  border-left: 50px solid transparent;
  border-right: 50px solid transparent;
  border-top: 50px solid #e8e8e8;
  clear: both;
}
.secondary-nav .product-name {
  margin-top: unset;
  align-items: center;
}
.secondary-nav .secondary-nav-align.align-center,
.secondary-nav ul {
  align-items: center;
}
.tps-page .tps-intro .innerblocks-wrap {
  align-items: center;
}
.tps-page .software-details h3 {
  text-align: center;
  margin-top: 2em;
  font-size: 2.5rem;
}
.tps-page .software-details h4 {
  color: #0076c0;
  border-bottom: 2px solid #e5e5e5;
}
.tps-page .software-details h4,
.tps-page .software-details p {
  padding-left: 1rem;
  padding-right: 1rem;
}
body.calculators h2 {
  text-align: left;
  border-bottom: 1px solid;
}
body.calculators .entry-content .container:not(:nth-child(1)) h2 {
  margin-top: 2em;
}
body.calculators .find-out-more {
  display: block;
  width: 100%;
}
body.calculators .find-out-more a {
  width: 100%;
}
body.products-home h3 {
  margin: 2em auto 0 auto;
  font-size: 28pt;
  font-size: 24pt;
  border-bottom: 1px solid;
  line-height: 1.25;
  padding-left: 0.5rem;
}
body.applications-home h2,
body.learn-home h2 {
  font-weight: 300 !important;
}
body.applications-home .entry-content .container,
body.learn-home .entry-content .container,
body.raman-family .entry-content .container {
  margin: 1em auto 2em;
}
body.applications-home
  .entry-content
  .container
  .wp-block-buttons
  .find-out-more,
body.learn-home .entry-content .container .wp-block-buttons .find-out-more,
body.raman-family .entry-content .container .wp-block-buttons .find-out-more {
  display: block;
}
body.applications-home
  .entry-content
  .container
  .wp-block-buttons
  .find-out-more
  a,
body.learn-home .entry-content .container .wp-block-buttons .find-out-more a,
body.raman-family .entry-content .container .wp-block-buttons .find-out-more a {
  width: 100%;
  display: flex;
  height: 100%;
  justify-content: center;
  align-items: center;
}
.news-page .container {
  max-width: 1000px;
}
.news-archive-year-buttons {
  display: flex;
  margin: 1em auto;
  justify-content: center;
  background: #d3d3d3;
  padding: 1em;
  margin: 0;
  min-height: 5rem;
}
@media only screen and (min-width: 500px) {
  body.applications-home .entry-content .container .wp-block-buttons,
  body.learn-home .entry-content .container .wp-block-buttons,
  body.raman-family .entry-content .container .wp-block-buttons {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-evenly;
  }
  body.applications-home
    .entry-content
    .container
    .wp-block-buttons
    .find-out-more,
  body.learn-home .entry-content .container .wp-block-buttons .find-out-more,
  body.raman-family .entry-content .container .wp-block-buttons .find-out-more {
    min-width: 30%;
    flex-basis: 0;
  }
}
@media only screen and (min-width: 600px) {
  body.calculators .find-out-more a {
    width: 50%;
  }
}
@media only screen and (min-width: 900px) {
  body.calculators .find-out-more a {
    width: 33%;
  }
}
@media only screen and (max-width: 850px) {
  body.third-party-software .anchor-navigation {
    padding: 0 80px;
  }
}
body.third-party-software .anchor-navigation {
  margin: 2em auto;
}
body.third-party-software .anchor-navigation ul {
  column-width: 400px;
}
body.third-party-software .anchor-navigation ul li {
  line-height: 2;
}
body.third-party-software .anchor-navigation a {
  text-decoration: underline;
}
@media only screen and (max-width: 600px) {
  .mobile-reverse.has-mobile-collapsedRows-layout .innerblocks-wrap {
    flex-direction: column-reverse;
  }
  body.camera-technology h2 {
    font-size: 24pt;
  }
  body.camera-technology p {
    font-size: 16pt;
    line-height: 1.25;
  }
  .container.applications-overview-buttons {
    display: flex;
    flex-direction: column;
  }
  .container.applications-overview-buttons .button.find-out-more {
    flex-direction: unset;
    width: auto;
  }
}
@media only screen and (min-width: 320px) {
  .hero h1 span.fs-xsmall,
  .hero h1.fs-xsmall {
    font-size: 16pt;
  }
  .hero h1 span.fs-small,
  .hero h1.fs-small {
    font-size: 18pt;
  }
  .hero h1 span.fs-medium,
  .hero h1.fs-medium {
    font-size: 24pt;
  }
  .hero h1 span.fs-large,
  .hero h1.fs-large {
    font-size: 38pt;
  }
  .hero h1 span.fs-xlarge,
  .hero h1.fs-xlarge {
    font-size: 50pt;
  }
}
@media only screen and (min-width: 480px) {
  .hero h1 span.fs-xsmall,
  .hero h1.fs-xsmall {
    font-size: 18pt;
  }
  .hero h1 span.fs-small,
  .hero h1.fs-small {
    font-size: 24pt;
  }
  .hero h1 span.fs-medium,
  .hero h1.fs-medium {
    font-size: 38pt;
  }
  .hero h1 span.fs-large,
  .hero h1.fs-large {
    font-size: 50pt;
  }
  .hero h1 span.fs-xlarge,
  .hero h1.fs-xlarge {
    font-size: 70pt;
  }
}
@media only screen and (min-width: 568px) {
  .legacy-products .legacy-product-details {
    flex-direction: row;
    align-items: flex-start;
  }
  .legacy-products .legacy-product-img-container {
    flex-shrink: 0;
  }
}
@media only screen and (min-width: 601px) {
  .home-spotlight .col > :first-child {
    margin-top: 0;
  }
  .secondary-nav ul {
    font-size: 13pt;
    line-height: 20pt;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
  }
  body.product .product-key-features h3 {
    margin-top: 0;
  }
  body.product .product-models .row .col.heading {
    background-image: url(/img/arrow-icon.png);
    background-repeat: no-repeat;
    background-position: 0.25em 0.2em;
    font-weight: 700;
    font-size: 20pt;
  }
  body.product .product-models .row .col:first-of-type {
    padding-left: 3rem;
  }
  body.product .product-models .divider {
    margin: 1em;
  }
  .product-related .row {
    flex-direction: row;
    justify-content: center;
  }
  .product-related .row > div {
    width: 25%;
    padding: 1em;
  }
  .product-contact-us h2 {
    margin-bottom: 0;
  }
  .product-contact-us .cta {
    display: flex;
    justify-content: center;
    margin: 50px auto;
    flex-wrap: wrap;
  }
  .product-contact-us .cta .button.button-cta {
    width: 25%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
  .product-contact-us .cta .button.button-cta:nth-last-child(2):first-child,
  .product-contact-us
    .cta
    .button.button-cta:nth-last-child(2):first-child
    ~ .button.button-cta,
  .product-contact-us .cta .button.button-cta:nth-last-child(4):first-child,
  .product-contact-us
    .cta
    .button.button-cta:nth-last-child(4):first-child
    ~ .button.button-cta {
    width: 40%;
  }
  a.button.button-design,
  a.button.button-sales {
    display: inline-block;
    width: auto;
    width: 35%;
  }
  body.careers a.wp-block-button__link {
    font-size: 20pt;
    padding: 0.25em 0.5em;
  }
  body.about figure.company-headquarters {
    float: right;
    margin-left: 2em;
  }
  .customer-quote {
    margin: auto;
  }
}
@media only screen and (min-width: 700px) {
  body.product .product-intro {
    flex-direction: row-reverse;
  }
  body.product .product-intro.image-left {
    flex-direction: row;
  }
  body.product .product-intro > * {
    width: 45%;
  }
  header .container {
    flex-direction: row;
    margin-bottom: 0.5em;
    justify-content: space-between;
  }
  header img.logo {
    max-width:50vw;
  }
  header form.search {
    width: auto;
    padding-left: 20px;
    margin: 0;
    padding: 0;
  }
  header form.search input#search-input {
    width: 400px;
    max-width: 30vw; 
    margin: 0 1rem 0 auto;
  }
  nav.primary-nav .container ul {
    width: 100%;
  }
  nav.primary-nav li:last-child {
    float: right;
  }
  nav.primary-nav li:last-child a {
    font-size: 0.9em;
  }
  .secondary-nav ul {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    flex-grow: 1;
  }
  body.customer-research .solution {
    flex-direction: row;
    align-items: flex-start;
  }
  body.customer-research .solution > div {
    flex-basis: 50%;
  }
  body.customer-research .solution > div:last-child {
    padding: 40px 0 0 2rem;
  }
  body.customer-research .solution .button.find-out-more {
    margin: 1rem;
  }
}
@media only screen and (min-width: 768px) {
  .hero h1 span.fs-xsmall,
  .hero h1.fs-xsmall {
    font-size: 24pt;
  }
  .hero h1 span.fs-small,
  .hero h1.fs-small {
    font-size: 38pt;
  }
  .hero h1 span.fs-medium,
  .hero h1.fs-medium {
    font-size: 50pt;
  }
  .hero h1 span.fs-large,
  .hero h1.fs-large {
    font-size: 70pt;
  }
  .hero h1 span.fs-xlarge,
  .hero h1.fs-xlarge {
    font-size: 90pt;
  }
}
@media only screen and (min-width: 961px) {
  .legacy-product .legacy-product-text .blurb {
    width: 75%;
  }
  .customer-quote blockquote {
    font-size: 150%;
    font-weight: 100;
  }
  .home-spotlight .col {
    padding: 0 1.5rem;
  }
  .secondary-nav ul {
    display: flex;
    flex-grow: 1;
    justify-content: space-evenly;
  }
  footer.primary-footer .footer-grid {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-template-areas: "nav1 nav2 nav3 nav4 social social" "nav1 nav2 nav3 nav4 address address" "nav1 nav2 nav3 nav4 address address" "misc  copyright copyright copyright copyright . ";
    grid-gap: 1rem;
  }
  .footer-item-address {
    width: auto;
    margin: 0 auto;
  }
  .footer-item-social {
    text-align: center;
    padding: 1em 0 2em;
    margin: 0;
  }
  .footer-item-social .social-links {
    justify-content: space-evenly;
    width: 100%;
  }
  .footer-item-social .social-links img {
    max-width: 30px;
  }
  .footer-item-social h5 {
    padding-bottom: 1em;
    margin-top: 0;
    margin-bottom: 1em;
    border-bottom: 1px solid;
  }
  .footer-nav-misc {
    white-space: nowrap;
  }
}
@media only screen and (min-width: 1001px) {
  .container {
    padding-left: 0;
    padding-right: 0;
  }
  a.button.button-design,
  a.button.button-sales {
    width: 35%;
    display: block;
  }
}
@media only screen and (min-width: 1200px) {
  .hero h1 span.fs-xsmall,
  .hero h1.fs-xsmall {
    font-size: 38pt;
  }
  .hero h1 span.fs-small,
  .hero h1.fs-small {
    font-size: 50pt;
  }
  .hero h1 span.fs-medium,
  .hero h1.fs-medium {
    font-size: 70pt;
  }
  .hero h1 span.fs-large,
  .hero h1.fs-large {
    font-size: 90pt;
  }
  .hero h1 span.fs-xlarge,
  .hero h1.fs-xlarge {
    font-size: 120pt;
  }
}
