:where(:root) {
  line-height: unset;
}

body {
  line-height: 1.5;
  font-family: "Lato", System, sans-serif;
  /* background-image: url('/img/bg-oj.svg'); */
  background-size: 100%;
  background-repeat: repeat-y;
  background-position: center top;
  overflow-x: hidden;
}
h1, h2, h3 {
  scroll-margin-top: 7rem;
}

table {
  width: unset;
}

/* Blue Light scheme (Default) */
/* Can be forced with data-theme="light" */
[data-theme="light"],
:root:not([data-theme="dark"]) {
  --pico-primary: #5FBB46;
  --pico-primary-hover: #5FBB46;
  --pico-secondary-hover: #5FBB46;
  --pico-primary-border: #5FBB46;
  --pico-primary-background: #5FBB46;
  --pico-primary-hover-border: #5FBB46;
  --pico-secondary-hover-border: #5FBB46;
  --pico-primary-hover-background: #5FBB46;
  --pico-primary-focus: rgba(30, 136, 229, 0.125);
  --pico-primary-inverse: #FFF;
  --pico-image-filter: none;
}

/* Blue Dark scheme (Auto) */
/* Automatically enabled if user has Dark mode enabled */
@media only screen and (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
  --pico-primary: #5FBB46;
  --pico-primary-hover: #5FBB46;
  --pico-secondary-hover: #5FBB46;
  --pico-primary-border: #5FBB46;
  --pico-primary-background: #5FBB46;
  --pico-primary-hover-border: #5FBB46;
  --pico-secondary-hover-border: #5FBB46;
  --pico-primary-hover-background: #5FBB46;
    --pico-primary-focus: rgba(30, 136, 229, 0.25);
    --pico-primary-inverse: #FFF;
    --pico-image-filter: brightness(0.8);
  }
}

.slides img {
  filter: var(--pico-image-filter);
}

/* Blue Dark scheme (Forced) */
/* Enabled if forced with data-theme="dark" */
[data-theme="dark"] {
  --pico-primary: #5FBB46;
  --pico-primary-hover: #5FBB46;
  --pico-secondary-hover: #5FBB46;
  --pico-primary-border: #5FBB46;
  --pico-primary-background: #5FBB46;
  --pico-primary-hover-border: #5FBB46;
  --pico-secondary-hover-border: #5FBB46;
  --pico-primary-hover-background: #5FBB46;
  --pico-primary-focus: rgba(30, 136, 229, 0.25);
  --pico-primary-inverse: #FFF;
  --pico-image-filter: brightness(0.75) saturate(0.75);
}


/* Blue (Common styles) */
:root {
  --pico-form-element-active-border-color: var(--pico-primary);
  --pico-form-element-focus-color: var(--pico-primary-focus);
  --pico-switch-color: var(--pico-primary-inverse);
  --pico-switch-checked-background-color: var(--pico-primary);
}

.hero {
  height: calc(100vh - 5em);
  background: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.9));
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
}

.hero::before {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: var(--pico-image);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  filter: var(--pico-image-filter);
}

.hero > * {
  display: block;
  padding: var(--pico-block-spacing-vertical) 0;
  width: 100%;
  margin: 0;
  position: absolute;
  left: 0;
  bottom: 0;
  background: rgba(0, 0, 0, .5);
  backdrop-filter: blur(5px) brightness(50%);
  -webkit-backdrop-filter: blur(5px) brightness(50%);
}


.hero .grid {
  grid-template-columns: repeat(auto-fit, minmax(15em, 1fr));
}

.hero .grid > * *:last-child {
  margin-bottom: 0;
}

.hero h1, .hero h2, .hero button, .hero a[role="button"] {
  margin: 0;
}

.mobile {
  display: none;
}

nav, #toc {
  user-select: none;
}

nav {
  position: sticky;
  top: 0;
  width: 100%;
  z-index: 5;
  background: #060606;
  color: #fff;

  /*  box-shadow: 0 0 3px 3px rgba(0, 0, 0, .4); */
/*  border-bottom: 1px solid rgba(225, 225, 225, .8); */
}

nav li > a {
  color: #fff;
}

nav li > b {
  letter-spacing: .1rem;
  font-weight: 200;
  color: #fff;
  text-transform: uppercase;
}

nav a[role="button"] {
  padding: .25em 1em;
  font-weight: 900;
  color: #000;
  background: var(--pico-background-color);
}


nav svg {
  display: block;
  color: var(--pico-primary);
}

nav svg:hover {
  color: var(--pico-primary-hover);
}

h1, h2, h3 {
  font-family: "Lato", "AvenirNextCondensed-Bold", "Futura-CondensedExtraBold", HelveticaNeue-CondensedBold, "Ubuntu Condensed", "Liberation Sans Narrow", "Franklin Gothic Demi Cond", "Arial Narrow", sans-serif-condensed, Arial, "Trebuchet MS", "Lucida Grande", Tahoma, Verdana, sans-serif;
    line-height: 1;
    font-weight: 900;
    text-transform: none;
}

nav {
  padding-left: var(--pico-block-spacing-horizontal);
  padding-right: var(--pico-block-spacing-horizontal);
}

.container-hybrid {
  padding-left: var(--pico-block-spacing-horizontal);
  padding-right: var(--pico-block-spacing-horizontal);
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}

.container-fluid {
  padding-left: 0;
  padding-right: 0;
}

main.container-fluid,
main.container-hybrid {
  padding-top: 0rem;
}


.hero {
  margin: 0;
}

.carousel {
	scroll-snap-type: x mandatory;	
	display: flex;
	-webkit-overflow-scrolling: touch;
	overflow-x: scroll;
}

.carousel>* {
	scroll-snap-align: start;
}

.carousel .hero {
 	min-width: 100vw;
}

nav a:hover {
  text-decoration: underline;
}

.hero button, .hero a[role="button"] {
  max-width: 10em;
  padding-left: 2em;
  padding-right: 2em;
  max-height: 3em;
  margin: auto 0 auto auto;
}

nav h1 {
  font-size: 2rem;
  margin: 0;
}

#burger {
  cursor: pointer;
  height: 3rem;
  width: 4rem;
  margin: 0;
  padding: 0 1rem;
  right: 0;
  top: 0;
  position: absolute;
}

#burger>svg {
  width: 100%;
  display: block;
}

#mobilemenu {
  display: none;
  border-top: 1px solid var(--pico-muted-border-color);
  padding: .5rem 1rem;
}

#mobilemenu li a {
  font-size: 1.25rem;
}

.announce {
  background-color: var(--pico-contrast);
  color: var(--pico-background-color);
  padding: .5rem;
  text-align: center;
  font-weight: 700;
}

.announce a {
  text-decoration: underline;
}

.modal {
  position: fixed;
  z-index: 99;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, .5);
  backdrop-filter: blur(5px) brightness(50%);
  -webkit-backdrop-filter: blur(5px) brightness(50%);
}

.modal > * {
  margin: 0;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  contain: content;
  width: 100%;
  box-shadow: none;
}

icon {
  display: inline-block;
  height: 2em;
  width: 2em;
  background-position: center;
  background-size: 24px 24px;
  background-repeat: no-repeat;
  color: var(--pico-contrast);
  stroke: var(--pico-contrast);
  background-color: #666;
}

main ul {
	padding: 0 0 0 1rem;
}

main li {
  padding-left: .5rem;
}


main ul li {
  list-style: disc;
}

main ul ul li,
main ol ul li {
  font-weight: 400;
  /*list-style: circle;*/
}

main ol ol li,
main ul ul li,
main ul ol li,
main ol ul li {
  font-weight: 400;
}

main ul > li > *,
main ol > li > * {
  margin-top: 1rem;
}

.grid {
  grid-auto-rows: 1fr;
  grid-template-rows: 1fr min-content;
}

small {
  display: block;
  font-size: 0.8rem;
  color: var(--pico-secondary);
}

blockquote footer small {
  text-align: right;
}

hgroup>:last-child {
  --pico-color: var(--pico-muted-color);
  --pico-font-weight: unset;
  font-family: unset;
  margin-top: 0.5rem;
  line-height: 1;
}

hgroup>*:first-child {
  margin-bottom: 0;
}

.blendcardinfo {
  box-shadow: 0 0 10px 5px rgba(20, 20, 20, 1);
}

main {
  margin-bottom: 2rem;
}

body>footer {
  background: var(--pico-card-sectionning-background-color);
  padding-bottom: 0;
  background: #111;
  color: #dbdbdb;
}

footer p {
  color: #dbdbdb;
}

footer.container-hybrid {
  padding-top: 2rem;
  padding-bottom: 1rem;
}

body>footer ul {
  padding: 0;
  list-style: none;
}

body>footer li {
  display: block;
  margin-bottom: .5rem;
  font-weight: 900;
}

.logo {
  max-height: 1.5rem;
  /* display: block;
  margin: .25rem 0 0 0; */
  cursor: pointer;
}

footer .logo {
  max-height: 1.5rem;
}

.slides {
  margin-bottom: var(--pico-spacing);
}

.slides > img {
  width: 30em;
  margin: 0 10px 0 0;
	scroll-snap-align: center;
}

.slides > img:last-of-type {
  margin-right: 0;
}

.center {
  align-items: center;
}

img.round {
  border-radius: 5px;
}

.toggle {
  position: relative;
  height: 1rem;
  width: 1rem;
  cursor: pointer;
}

.toggle > * {
  transition: opacity 1s;
  position: absolute;
  width: 100%;
  height: 100%;
}

dd {
  margin: 0 0 var(--pico-spacing) 0;
}

dt {
  color: var(--pico-h2-color);
  font-weight: 700;
}

article.container-hybrid {
  border-radius: 0;
}

blockquote {
  font-weight: 400;
  font-style: italic;
  border-left: none;
  font-size: 1rem;
  /* border-left: 3px solid var(--pico-primary);
  border-right: 3px solid var(--pico-primary); */
  box-sizing: border-box;
  position: relative;
/*  border-radius: .5em; */
  line-height: 1.5;
/*  max-width: 30em; */
  /* margin-left: auto;
  margin-right: auto; */
  padding: 0 1.5rem;
  margin: 2rem 0;
}

blockquote::before, blockquote::after {
  font-family: "Arial", "Helvetica", sans-serif;
  font-size: 4rem;
  letter-spacing: -.25rem;
  position: absolute;
  font-style: normal;
  font-weight: 900;
  text-align: left;
  color: var(--pico-primary);
  hanging-punctuation: none;
}

blockquote::before {
  content: '‘‘';
  top: -1.75rem;
  left: -.5rem;
}

/* blockquote::after {
  content: '’’';
  bottom: -3.25rem;
  right: .25rem;
} */

blockquote footer {
  display: block;
  font-size: 0.8rem;
  margin-bottom: 2rem;
  margin-top: 1rem;
  font-style: italic;
  color: var(--pico-muted-color);
}

blockquote>*:last-child {
/*  margin-bottom: 0; */
}

blockquote:first-child {
  margin-top: 0;
}

blockquote.story {
  padding: 0;
  border: none;
  font-style: italic;
}

blockquote p {
  color: var(--pico-secondary);
  font-style: italic;
  margin-bottom: 2rem;
  line-height: 1.5;
}

blockquote, p, dt, h1, h2, h3, li {
  hanging-punctuation: first;
}

blockquote p:last-child {
  margin-bottom: 0;
}

.line-block {
  /* border-left: .5em double var(--pico-secondary); */
  padding: 1em;
  border: none;
  line-height: 1.25;
  border-radius: 5px;
  box-sizing: content-box;
  position: relative;
  font-weight: 300;
  color: var(--pico-muted-color);
  display: inline-block;
  background: var(--pico-muted-border-color);
}

.printonly {
  display: none;
}

@media only print {
  footer, nav, #toc {
    display: none;
  }

  .wow, .animate__ {
    visibility: visible;
  }

  img {
    visibility: visible;
    opacity: 1;
    max-height: 30em;
  }

  .slides {
    display: block;
  }

  .slides > * {
    margin-bottom: 2rem;
  }



  .printonly {
    display: block;
  }
}

.selected {
  /*color: var(--pico-primary);
  text-decoration: underline;*/
  /*background: var(--pico-background-secondary);*/
  color: var(--pico-mark-color);
  background: var(--pico-mark-background-color);
}

#toc ol {
  list-style: none;
}

#toc > ol li {
  line-height: 1;
  /*font-size: 80%;*/
  padding: 0;
}

/*
#toc > ol ol li {
  font-size: 75%;
}
*/

#toc li:hover {
  color: var(--pico-primary);
  cursor: pointer;
}

main.toc {
	display: grid;
	grid-template-columns: 1fr 8em;
  padding-top: 0rem;
}

.toc #content {
  margin-right: 2em;
}

#toc {
  display: block;
  position: sticky;
  top: calc(var(--pico-spacing) * 7);
  padding: 0;
  align-self: start;
  max-height: 66vh;
}

#toc > h3 {
  font-weight: 700;
  padding: 0 var(--pico-spacing);
  margin: 0 0 var(--pico-spacing) 0;
}

#toc svg {
  display: none;
}

#toc > ol {
  max-height: calc(66vh - 1rem);
  overflow-y: auto;
}

#toc li {
  padding-left: 0;
}

#toc > ol::-webkit-scrollbar-track
{
  border-radius: .5em;
  border: 1px solid var(--pico-muted-color);
}

#toc > ol::-webkit-scrollbar
{
  width: .5rem;
}

#toc > ol::-webkit-scrollbar-thumb
{
  border-radius: .5em;
	background-color: var(--pico-muted-color);
}


nav a.disabled {
  color: var(--pico-contrast);
  text-decoration: none;
}

p svg, a svg, li svg {
  vertical-align: text-bottom;
}

mark,[data-tooltip]:not(a):not(button):not(input) {
  padding: 0;
  background: none;
  color: inherit;
  vertical-align: inherit;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-decoration-style: dotted;
  text-underline-offset: 2px;
  cursor: help;
  border-bottom: none;
}

mark:hover {
  color: var(--pico-contrast);
}

@media (max-width: 768px) {
  body {
    overflow-x: hidden;
  }

  footer.container-hybrid {
    padding-bottom: 0;
  }

  footer.container-hybrid li > a {
    display: block;
    line-height: 2rem;
  }

  main.toc {
    display: block;
    overflow-x: hidden;
  }

  .container-hybrid {
    padding-left: 1rem;
    padding-right: 1rem;
    /*width: 100%;*/
  }

  .container-hybrid .container-hybrid {
    padding-left: 0;
    padding-right: 0;
  }

  .toc #content {
    margin-right: 0;
  }
  
  #toc {
    box-shadow: 0 0 3px 3px rgba(0, 0, 0, .4);
    position: fixed;
    bottom: 0;
    top: unset;
    left: 0;
    right: 0;
    transition: transform 0.3s ease-in-out;
    transform-origin: top left;
    transform: translateY(calc(100% - 4rem));
    background: var(--pico-background-color);
    padding: 0;
    height: 47vh;
    overflow-y: unset;
  }

  #toc > ol {
    margin: 0;
    padding: 1rem;
    max-height: calc(100% - 4rem);
    overflow-y: auto;
  }

  #toc li {
    padding: 0;
  }

  #toc > h3 {
    display: block;
    line-height: 4rem;
    padding: 0;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: .1rem;
    margin: 0;
    text-align: center;
    background: var(--pico-color);
    color: var(--pico-background-color);
    margin: 0;
    cursor: pointer;
    position: relative;
  }

  #toc > svg {
    display: block;
    height: 1.5em;
    width: 1.5em;
    position: absolute;
    top: 1.25rem;
    right: 2rem;
    transition: opacity .4s ease-in-out;
    color: var(--pico-background-color);
    pointer-events: none;
    /*stroke: var(--pico-background-color);*/
  }

  #toc > svg:first-of-type {
    opacity: 1;
  }
  #toc > svg:last-of-type {
    opacity: 0;
  }

  #toc ol > li {
    margin: 0;
    padding: .5em 0;
  }

  #toc > ol::-webkit-scrollbar-track
  {
    border-radius: none;
    border: 1px solid var(--pico-muted-color);
  }
  
  #toc > ol::-webkit-scrollbar
  {
    width: .5rem;
  }
  
  #toc > ol::-webkit-scrollbar-thumb
  {
    border-radius: none;
    background-color: var(--pico-muted-color);
  }
  
  #toc.open {
    transform: translateY(0);
  }
  #toc.open svg:first-of-type {
    opacity: 0;
  }
  #toc.open svg:last-of-type {
    opacity: 1;
  }

  #content {
    margin-right: 0;
  }
}

.doc img, .doc svg {
  max-height: 25vh;
  margin-right: var(--pico-spacing);
}

.doc img:last-of-type {
  margin-right: 0;
}

.doc {
  margin-bottom: 2rem;
}

#content h1, #content h2, #content h3, #content dt {
}

#content h1, #content h2 {
  line-height: 1.1;
}

#content h1 {
  text-align: left;
  width: 100%;
  font-size: 3rem;
  margin-top: 2rem;
  margin-bottom: 2rem;
  color: var(--pico-secondary);
}


h1, h2, h3, dt {
  scroll-margin-top: 7rem;
}

.toc h1:not(.title) {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.toc h2 {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.toc hgroup>*:last-child {
  --pico-color: var(--pico-muted-color);
  --pico-font-weight: unset;
  font-family: unset;
  margin-top: .5rem;
  margin-bottom: 2rem;
  line-height: 1;
}

.toc hgroup>*:first-child {
  margin-bottom: 0;
}

.buttons {
  display: flex;
  margin-top: 2rem;
  margin-bottom: 2.5rem;
  text-align: center;
  clear: both;
}

.buttons a {
  align-content: center;
  width: auto;
  flex: auto;
  max-width: 100%;
  margin-right: 1em;
  margin-bottom: 1rem;
}

.buttons a:last-child {
  margin-right: 0;
}

img.bign {
  border-radius: 5px;
  margin-bottom: 2rem;
}

b, strong {
  font-weight: 800;
}

div.line-block + p {
  margin-top: 2rem;
}

p:last-of-type {
  margin-bottom: var(--pico-spacing);
}

section>*:last-child {
  margin-bottom: 0;
}

section:last-of-type {
  margin-bottom: 0;
}

img.illustration {
  max-width: 50%;
  float: right;
  margin: 0 0 2rem 2rem;
  border-radius: 5px;
}

@media (max-width: 640px) {
  img.illustration {
    max-width: 100%;
    margin: 0 0 2rem 0;
  }

  .buttons {
    display: block;
  }
  .buttons a {
    flex: unset;
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 0 0 1rem 0;
  }

  .buttons a:last-child {
    margin-bottom: .5rem;
  }
}

/* later

.toc h1:not(.title),
h1:not(.title) {
  margin-bottom: 0;
}

h1+p {
  margin-top: 2rem;
}

h1+p:has(>em) {
  margin-top: 0;
}

h1+p>em {
  font-style: normal;


*/

nav ol:last-of-type,
nav ul:last-of-type {
  margin-right: 0;
}

#nav ul > li:last-of-type {
  padding-right: 0;
}

button {
  font-weight: 900;
}

button.secondary {
  font-weight: 700;
}

a[role=button] {
  color: #000;
  font-weight: 900;
  border-width: 2px;
  border-radius: var(--pico-border-radius);
  padding-left: calc(var(--pico-spacing) * 1.5);
  padding-right: calc(var(--pico-spacing) * 1.5);
}

a[role=button].secondary {
  font-weight: 400;
  border-color: var(--pico-primary);
  color: var(--pico-primary);
  background: transparent;
}

a[role=button]:hover {
  transition: transform .1s ease-in-out;
  transform: scale(1.05);
}

.cta {
  text-align: center;
  margin: 2rem 0 3rem 0;
  display: block;
}

.cta a {
  display: block;
  width: fit-content;
  margin: 0 auto 1rem auto;
}

input::placeholder {
  color: var(--pico-muted-color);
  opacity: .25;
}


main.container-fluid,
main.container-hybrid {
  padding-bottom: 2rem;
}

.grid {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin: 0;
}

.grid3 {
  grid-template-columns: 1fr 1fr 1fr;
}

ul, ol {
  margin-bottom: 1rem;
  padding-inline-start: 1rem;
}

li p {
  margin-top: 0;
  margin-bottom: 0;
}

ul > li, ol > li {
  margin-top: 0;
  margin-bottom: 1rem;
}

nav ul > li,
nav ol > li {
  margin: 0;
}

td, th {
  padding: 1rem;
}

thead > tr > th,
thead > tr > td {
  padding-top: 0;
}

tbody > tr:last-child > th,
tbody > tr:last-child > td {
  padding-bottom: 0;
  border: none;
}

td:first-child,
th:first-child {
  padding-left: 0;
}

td:last-child,
th:last-child {
  padding-right: 0;
}


#mobilemenu {
  padding-bottom: 1rem;
  padding-top: 1rem;
}

#mobilemenu li {
  text-align: left;
  font-size: 1.25rem;
  padding-bottom: .5rem;
}

@media (max-width: 576px) {
  .mobile {
    display: block;
  }

  .desktop {
    display: none;
  }

  .container-hybrid {
    /*max-width: 510px;*/
    padding-right: 1rem;
    padding-left: 1rem;
  }

  #content h1 {
    font-size: 3rem;
    margin-top: 2rem;
    margin-bottom: 2rem;
  }

  a[role=button] {
    padding-left: calc(var(--pico-spacing) * 1.0);
    padding-right: calc(var(--pico-spacing) * 1.0);
    margin-bottom: 1em;
    display: block;
  } 

  .buttons a {
    margin-right: 0;
  }

  nav a[role=button] {
    display: inline;
  }

  body>footer li {
    display: block;
    padding: 0.5rem 0;
  }
  
  .grid {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    display: grid;
    grid-template-columns: 1fr;
    margin: 0 0 1rem 0;
  }

}

@media (max-width: 800px) {
  body {
    background-size: 800px;
  }
}

@media (min-width: 768px) {
  .container-hybrid {
    padding-right: calc(50% - 370px);
    padding-left: calc(50% - 370px);
    /*max-width: 700px;*/
  }
}

@media (min-width: 992px) {
  .container-hybrid {
    padding-right: calc(50% - 480px);
    padding-left: calc(50% - 480px);
    /*max-width: 920px;*/
  }
}

@media (min-width: 1200px) {
  .container-hybrid {
    padding-left: calc(50% - 480px);
    padding-right: calc(50% - 480px);
    /*max-width: 1130px;*/
  }
}

th {
  font-weight: 700;
}

h1 > * {
  margin-top: 0;
}

hr {
  border-top: 1rem solid var(--pico-muted-border-color);
  margin: 0;
}

p {
  margin-bottom: 1rem;
}

ol > li > p:last-of-type,
ul > li > p:last-of-type {
  margin: 0;
}

hgroup {
  margin-bottom: 2rem;
}

h1 b, h2 b, h3 b,
h1 em, h2 em, h3 em {
  font-weight: inherit;
  color: #04C1F1;
  font-style: normal;
  background: unset;
}

#content {
  min-height: 50vh;
}

.comparison {
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: auto;
  margin: 3rem 0;
}
/*.comparison>article:nth-child(3) {
  grid-column: unset;
}
.comparison>article:nth-child(3) ul {
  columns: unset;
  column-gap: unset;
}

*/

@media (max-width: 1199px) {
  .comparison {
    grid-template-columns: 1fr 1fr;
  }

  .comparison>article:nth-child(3) {
    grid-column: span 2;
  }

  .comparison>article:nth-child(3) ul {
    columns: 2;
    column-gap: 4rem;
  }

  .logo {
    max-height: 1.5rem;
  }
}


@media (max-width: 639px) {
  .comparison {
    grid-template-columns: 1fr;
  }

  .comparison>article:nth-child(3) {
    grid-column: unset;
  }

  .comparison>article:nth-child(3) ul {
    columns: unset;
  }

  .logo {
    max-height: 1.5rem;
    margin-top: .5rem;
    margin-bottom: .5rem;
  }

  #burger {
    height: 3.5rem;
    width: 3.5rem;
  }
}




.comparison>article {
  position: relative;
  align-self: stretch;
  align-content: stretch;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr;
  box-shadow: none;
}

.comparison>article>ul {
  margin: 1rem 1rem 0 1rem;
  align-self: start;
  justify-self: left;
}

.comparison>article ul>li {
  list-style-image: url('/svg/check.svg');
}

main ul>li:last-child {
  margin-bottom: 0;
}

.comparison article>footer,
.comparison article>header {
  margin: 0;
  padding: 1rem;
  text-align: center;
  align-self: start;
}

.comparison article>header {
  display: grid;
  grid-template-columns: 1fr 1fr;
  font-weight: 700;
  font-size: 1.5rem;
}

.comparison article>header>*:first-child {
  text-align: left;
}

.comparison article>header>*:last-child {
  text-align: right;
}


.comparison article>footer {
  width: 100%;
  margin: 0;
  margin-top: auto;
  background: var(--pico-background);
  border: none;
}

article {
  border: 1px solid var(--pico-muted-border-color);
}

.comparison>article p {
  margin: 0;
  text-align: center;
  width: 100%;
}

.comparison>article a {
  margin: 0;
  font-size: 1rem;
 /*width: 100%;*/
}

.comparison>article sup {
  font-size: 50%;
  position: relative;
  top: -.5rem;
}

.comparison>article sub {
  font-size: 50%;
  position: relative;
  bottom: 0;
}

em {
  font-style: normal;
  font-weight: 700;
}

article.news h2 {
  margin-bottom: 0;
}

article.news h3 {
  margin-top: .5rem;
  font-size: 1rem;
  margin-bottom: 1rem;
}

#content li {
  margin-bottom: 1rem;
}

.icons {
  text-align: center;
  margin: 2rem 0;
  padding: 0 0 1rem 0;
}

.icons p {
  margin: 0;
  padding: 0;
}

#content .icons img {
  max-width: 1.5cm;
  max-height: 1.5cm;
  margin: 1rem 1rem 0 1rem;
}

.mid img {
  display: block;
  margin: 0;
  padding: 2rem;
}

.thumb article {
  margin-bottom: 0;
}

.thumb img {
  display: block;
  margin: 0 auto 2rem auto;
  max-width: 3cm;
  max-height: 3cm;
}

.thumb h2, .thumb h3 {
  margin-top: .25rem;
}

#content article h1 {
  margin-top: 0;
  text-align: center;
}

#content article h2, #content article h3 {
  text-align: left;
}

#content article {
  padding-top: 2rem;
  padding-bottom: 1rem;
}

#content div.focus>p {
  max-width: 20rem;
  margin: 0 auto 2rem auto;
}

:root {
  --animate-duration: 500ms;
  --animate-delay: .5s;
}

article {
  margin: 0 0 3rem 0;
}

article:last-of-type {
  margin-bottom: 0;
}

article.news {
  margin-bottom: 3rem;
}

.videoContainer {
  width: 100%; /*now it is 100% of viewport (window) width.*/
  display: inline-block;
  position: relative;
}

.videoContainer::after {
  padding-top: 56.25%; /* 16:9 ratio - divide height by width and multiply by 100 */
  display: block;
  content: '';
}

.videoContainer>iframe{
  display:block;
  width:100%;
  height:100%;
  position:absolute;
  top:0;
  left:0;
}

button.sub {
  padding-left: 1rem;
  padding-right: 1rem;
}

input::placeholder {
  color: #ccc;
}

form {
  margin: 0;
  padding: 0;
}

body > footer div.site-desc {
  text-align: left;
  margin-right: 2rem;
}

body > footer div.site-desc p {
  color: var(--pico-secondary);
}

body > footer div p:last-of-type {
  margin-bottom: .75rem;
}

body > footer div ul > li > a {
  color: var(--pico-color);
  font-weight: 400;
}

body > footer div ul > li > a:hover {
  color: var(--pico-color);
}

body > footer div.site-desc > img {
  max-width: 50%;
}


.article ul {
  margin-bottom: 0;
}


#content article.blogline h3 {
  text-align: left;
  /* color: var(--pico-heading-color); */
  margin-bottom: .5rem;
}

#content article.blogline h3 a {
  color: var(--pico-heading-color);
}

#content article.blogline h3 a:hover {
  color: var(--pico-primary);
}

#content article.blogline small,
body.blog small {
  color: var(--pico-muted-color);
}


body.blog #content h1 {
  text-align: left;
  margin-bottom: .6rem
}

img.blog {
  border-radius: 5px;
  display: block;
  min-width: 100%;
  max-height: 100%;
  margin: auto 0 auto 0;
  /* height: auto; */
  /* max-height: 38vw; */

  /* border: 1px solid var(--pico-background-secondary); */
}

div.img-frame {
  object-fit: contain;
  object-position: center center;

  align-content: center;
  margin: 3rem 0 2rem 0;
  width: 100%;
  border-radius: 5px;
  /* background: var(--pico-background-alpha); */
  aspect-ratio: 16 / 9;
}

@media (max-width: 576px) {
  body > footer div.grid div.grid {
    grid-template-columns: 1fr 1fr;
  }

  #content article {
    padding-top: 1.5rem;
    padding-bottom: 1rem;
  }

  .article ul {
    margin-bottom: 0;
  }

  /* img.blog {
    max-height: unset;
    object-fit: unset;
  } */
  
  #content article h2 {
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 768px) {
  /* img.blog {
    max-height: 60vw;
  } */

  body > footer > div.grid {
    display: block;
  }

  body > footer div.site-desc {
    margin-bottom: 2rem;
    margin-right: 0;
  }

  body > footer div.site-desc p {
    display: inline;
  }

  body > footer div ul li {
    padding: 0;
  }

}

@media (max-width: 1200px) {
  /* img.blog {
    max-height: 48vw;
  } */
}

/* Tag functionality styles */
.tag-link {
  color: var(--pico-primary);
  text-decoration: none;
  background-color: inherit;
  font-size: inherit;
  padding: 0;
  border: none;
  border-radius: 0;
  transition: inherit;
}

.tag-link:hover {
  color: var(--pico-primary);
  text-decoration: underline;
  background-color: inherit;
}

.tag-filter-indicator {
  background-color: var(--pico-background-color);
  border: 1px solid var(--pico-muted-border-color);
  border-radius: var(--pico-border-radius);
  padding: var(--pico-spacing);
  margin: var(--pico-spacing) 0;
}

.tag-filter-indicator .filter-content {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
}

.tag-filter-indicator .filter-label {
  font-size: 0.9em;
  color: var(--pico-muted-color);
}

.tag-filter-indicator .tag-pills {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}

.tag-filter-indicator .tag-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  background-color: transparent;
  color: var(--pico-color);
  border: 1px solid var(--pico-secondary);
  padding: 0.25rem 0.5rem;
  padding-right: 1.75rem;
  border-radius: 1rem;
  font-size: 0.85em;
  font-weight: 500;
  cursor: default;
  user-select: none;
  position: relative;
}

.tag-filter-indicator .tag-remove {
  background: none;
  border: none;
  color: var(--pico-primary);
  font-size: 1.2em;
  line-height: 1;
  padding: 0.5rem;
  margin: 0;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s, color 0.2s;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 1.75rem;
  outline: none;
}

.tag-filter-indicator .tag-remove:hover {
  transform: scale(1.3);
  color: var(--pico-primary-hover);
}

.tag-filter-indicator .tag-remove:focus {
  outline: none;
}

.tag-filter-indicator .filter-count {
  font-size: 0.9em;
  color: var(--pico-muted-color);
}

.tag-filter-indicator .clear-filter {
  color: var(--pico-primary);
  text-decoration: none;
  font-size: 0.9em;
  font-weight: normal;
  margin-left: auto;
}

.tag-filter-indicator .clear-filter:hover {
  color: var(--pico-primary-hover);
  text-decoration: underline;
}


/* Best Value Badge */
.best {
  position: relative;
}

.best::before {
  content: "Best Value";
  position: absolute;
  top: -.825rem;
  left: 50%;
  transform: translateX(-50%);
  background: #d5db10;
  color: #000;
  font-size: 0.75rem;
  font-weight: 700;
  padding: .125rem .5rem;
  border-radius: 3px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  /* box-shadow: 0 2px 8px --pico-button-box-shadow; */
  z-index: 2;
  white-space: nowrap;
  /* border: 2px solid var(--pico-background-color); */
}

/* Dark theme adjustments */
@media only screen and (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .best::before {
    box-shadow: 0 2px 8px rgba(56, 142, 60, 0.4);
    border-color: var(--pico-background-color);
  }
}

[data-theme="dark"] .best::before {
  box-shadow: 0 2px 8px rgba(56, 142, 60, 0.4);
  border-color: var(--pico-background-color);
}

table {
  background: transparent;
}

table th, table td {
  background-color: transparent;
}

/* table tr:nth-child(odd) {
  background: var(--pico-background-secondary);
} */

table th {
  font-size: 1.5rem;
  font-weight: 900;
  color: var(--pico-color);
}

table th em {
  font-weight: inherit;
  color: #04C1F1;
  font-style: normal;
  background: unset;
}

#content article.left h2, #content article.left h3 {
  text-align: left;
}

div+h2 {
  margin-top: 2rem;
}

div.grid > article {
  margin: 0;
}

#content h2+p>small {
  margin-top: -1rem;
  margin-bottom: 2rem;
  display: block;
  color: var(--pico-muted-color);
  font-weight: 400;
}

.nowrap {
  white-space: nowrap;
}

nbsp, nowrap {
  white-space: nowrap;
}

img.photo {
  display: block;
  margin: 0;
  max-width: 4rem;
  border-radius: 5px;
}

.center {
  text-align: center;
}

.photos {
  margin-bottom: 2rem;
  display: flex;
  gap: 2rem;
  flex-wrap: nowrap;
}

.photos > * {
  align-content: center;
}

.photos h2, .photos h3 {
  margin: 0;
}

#content article .photos h2,
#content article .photos div h3 {
  text-align: left;
}

input[type=checkbox] {
  border-radius: 2px;
}

a {
  text-decoration: underline;
  text-underline-offset: 4px;
  text-decoration-thickness: 1px;
  text-decoration-style: dotted;
  transition: color .3s ease-in-out;
}

a:hover {
  text-decoration-style: solid;
}

@media print {
  .wow {
    /* Set opacity to 1 to make elements fully visible */
    visibility: visible !important;
    opacity: 1 !important;
    /* Reset animations to their initial state */
    animation-name: none !important;
    /* Optional: Ensure normal element display behavior */
    display: block !important;
  }

  article {
    page-break-inside: avoid;
    box-shadow: none;
  }

  body {
    background: #fff;
  }

  /* a[role=button] {
    background: var(--pico-primary) !important;
  } */
}
