:root {
  --ic: #00917e;
  --black: #111;
  --white: #fff;
  --gray: #eee;
  --gray-dark: #666;
  --text-color: var(--black);
  --color-link: var(--ic);
  --color-selection: rgba(255, 255, 0, 0.25);
  --color-highlight: #ff8500;
  --font-family: system-ui, sans-serif;
  --text-indent: 3rem;
  --link-anotation-color: var(--ic);
  --link-anotation-opacity: 0.1;
  --icon-stroke-width: 3;
  --pointer-border-w: 0.2rem;
  --pointer-r: 1.8rem;
  --pointer-video-r: 2rem;
  --pointer-motion-duration: 1.6s;
  --thumb-border-w: 0.16rem;
  --field-bg-color: transparent;
  --field-bd-color-focus: var(--black);
  --button-hover-color: rgba(221, 222, 223, 0.6);
  --toggled-btn-bg-color: rgba(0, 0, 0, 0.1);
  --counter-bg-color: #e00;
  --finder-h: 3.8rem;
  --toolbar-h: 2.5rem;
  --modal-bg-color: #000000;
  --modal-bg-opacity: 0.5;
  --modal-web-w: calc(100vw - 4rem);
  --modal-web-w-max: 44rem;
  --modal-web-cover-bg-color: var(--gray);
  --modal-cart-w-max: 25rem;
  --hr: 0.8rem;
  --vr: 1rem;
  --viewport-pad: var(--hr);
  --text-width-max: 44rem;
  --motion-move: 10vmin;
  --motion-scale: 0.1;
  --motion-perspective: 50vmin;
  --motion-curve: cubic-bezier(0.5, 0, 0, 1);
  --motion-duration: 0.3;
  --action-duration: 0.1;
  --event-click-y: 0.1;
}
@media (min-width: 30rem) {
  :root {
    --hr: 1.2rem;
    --vr: 1.1rem;
  }
}
@media (min-width: 80rem) {
  :root {
    --hr: 1.4rem;
    --vr: 1.2rem;
  }
}
@media (prefers-color-scheme: dark) {
  :root {
    --field-bg-color: transparent;
    --field-bd-color-focus: var(--white);
    --toggled-btn-bg-color: rgba(0, 0, 0, 0.4);
    --button-hover-color: rgba(32, 32, 33, 0.6);
  }
}
@font-face {
  font-family: 'vaillant-book';
  src: url('../fonts/Vaillant16-Book.eot');
  src: url('../fonts/Vaillant16-Book.woff2') format('woff2'), url('../fonts/Vaillant16-Book.woff') format('woff'), url('../fonts/Vaillant16-Book.otf') format('otf'), url('../fonts/Vaillant16-Book.ttf') format('truetype'), url('../fonts/Vaillant16-Book.svg') format('svg');
}
/* @font-face {
  font-family: 'vaillant-light';
  src: url('fonts/Vaillant16-Light.eot');
  src: url('fonts/Vaillant16-Light.woff2') format('woff2'),
       url('fonts/Vaillant16-Light.woff') format('woff'),
       url('fonts/Vaillant16-Light.otf') format('otf'),
       url('fonts/Vaillant16-Light.ttf') format('truetype'),
       url('fonts/Vaillant16-Light.svg') format('svg');
} */
/* @font-face {
  font-family: 'vaillant-demi';
  src: url('fonts/Vaillant16-Demi.eot');
  src: url('fonts/Vaillant16-Demi.woff2') format('woff2'),
       url('fonts/Vaillant16-Demi.woff') format('woff'),
       url('fonts/Vaillant16-Demi.otf') format('otf'),
       url('fonts/Vaillant16-Demi.ttf') format('truetype'),
       url('fonts/Vaillant16-Demi.svg') format('svg');
} */
h1,
h2,
h3,
h4 {
  font-family: 'vaillant-book', serif;
  font-weight: normal;
  font-style: normal;
}
h1,
.h1,
h2,
.h2 {
  letter-spacing: -0.02em;
}
body {
  margin: 0;
  padding: 0;
  min-height: 100vh;
  min-height: 100svh;
  display: flex;
  flex-direction: column;
}
img {
  max-width: 100%;
  height: auto;
}
hr {
  background-color: currentColor;
  border: 0 none;
  margin: calc(var(--vr) * 3) var(--hr);
  max-width: 3rem;
  height: 2px;
}
a {
  cursor: pointer;
}
.pdfi_modal {
  font: 100%/1.6 var(--font-family);
  color: var(--text-color);
}
.pdfi_modal h1,
.pdfi_modal h2,
.pdfi_modal h3,
.pdfi_modal h4 {
  line-height: 1.25;
}
.pdfi_modal h1 a,
.pdfi_modal h2 a,
.pdfi_modal h3 a,
.pdfi_modal h4 a {
  text-decoration: none;
}
.pdfi_modal h1,
.pdfi_modal .h1 {
  font-size: clamp(2rem, 5vw, 3rem);
  font-weight: 300;
}
.pdfi_modal h2,
.pdfi_modal .h2 {
  font-size: 1.5em;
}
.pdfi_modal h3,
.pdfi_modal .h3 {
  font-size: 1em;
}
.pdfi_modal h3 {
  text-transform: uppercase;
}
.pdfi_modal h4,
.pdfi_modal .h4 {
  font-size: 0.9em;
}
.pdfi_modal p {
  font-size: 1em;
}
.pdfi_modal ul,
.pdfi_modal ol {
  list-style: none;
}
.pdfi_modal a {
  color: inherit;
  text-decoration: underline;
}
.pdfi_modal small {
  font-size: 0.75em;
}
html .linkAnnotation a:not(.pointer):not(.underline):hover {
  background-color: var(--link-anotation-color) !important;
  box-shadow: 0 2px 10px var(--link-anotation-color) !important;
  opacity: var(--link-anotation-opacity) !important;
}
@media (hover: hover) {
  [data-title].underline:hover,
  .highlight [data-title]:hover {
    transform: none !important;
    z-index: 999;
  }
  [data-title].underline:hover:before,
  .highlight [data-title]:hover:before {
    visibility: hidden;
  }
  [data-title].underline:hover:after,
  .highlight [data-title]:hover:after {
    background-color: #fff;
    border: var(--black) solid var(--pointer-border-w);
    border-radius: var(--pointer-r);
    color: var(--black);
    content: '' attr(data-title);
    font-size: 0.92rem !important;
    margin: auto;
    padding: 0.4em 0.6em;
    max-width: 20em;
    left: 50%;
    top: 50%;
    position: absolute;
    transform: translate(-50%, -50%);
    transition-duration: 0s;
    overflow: hidden;
  }
}
.underline {
  position: relative !important;
  opacity: 1 !important;
  cursor: pointer !important;
}
.underline:before {
  background-color: var(--color-link);
  color: var(--white);
  content: '';
  height: 0.16em;
  min-height: 2px;
  display: block;
  left: 0;
  right: 0;
  bottom: -0.3em;
  position: absolute;
  z-index: 1;
  cursor: pointer;
  opacity: 0.69;
}
.pdfi_modal ~ #outerContainer .underline:before {
  opacity: 0 !important;
}
.pointer {
  display: inline-block;
  position: relative;
  opacity: 1 !important;
  transition-duration: 0s !important;
  cursor: pointer !important;
}
.pointer:before {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3e %3cline x1='0' y1='16' x2='32' y2='16' stroke='%23ffffff' stroke-width='4' stroke-linecap='round' /%3e%3cline x1='16' y1='0' x2='16' y2='32' stroke='%23ffffff' stroke-width='4' stroke-linecap='round' /%3e%3c/svg%3e");
  background-color: var(--color-link);
  background-size: 50%;
  background-repeat: no-repeat;
  background-position: center;
  border: var(--white) solid var(--pointer-border-w);
  border-radius: 100%;
  color: var(--white);
  content: '';
  margin-right: calc(var(--pointer-r) * -0.75);
  margin-top: calc(var(--pointer-r) * -0.5);
  width: var(--pointer-r);
  height: var(--pointer-r);
  display: block;
  right: 0;
  top: 0;
  position: absolute;
  z-index: 1;
  cursor: pointer;
  animation-name: beat;
  animation-duration: var(--pointer-motion-duration);
  animation-iteration-count: infinite;
}
.highlight .pointer:before {
  border-radius: 0;
  margin: 0;
  width: auto;
  height: auto;
  left: 0;
  bottom: 0;
  opacity: 0 !important;
  animation-name: none;
}
.pdfi_modal ~ #outerContainer .pointer {
  opacity: 0 !important;
}
@media (hover: hover) {
  .pointer:hover {
    background-color: transparent !important;
    box-shadow: none !important;
  }
  .pointer:hover:before {
    background-color: var(--white);
    background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3e %3cline x1='0' y1='16' x2='32' y2='16' stroke='%23000' stroke-width='4' stroke-linecap='round' /%3e%3cline x1='16' y1='0' x2='16' y2='32' stroke='%23000' stroke-width='4' stroke-linecap='round' /%3e%3c/svg%3e");
    border-color: var(--black);
    transform: scale(1);
    animation-name: none;
    opacity: 0.9;
  }
}
.pointer.video {
  /* 
		// Halo animado
		@media (hover: hover) {
			&:hover {
				background-color: rgba(0, 0, 0, .1);
				background-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' \xmlns='http://www.w3.org/2000/svg'%3e %3Cstyle type='text/css'%3E %23el%7B animation:x 1s linear infinite%7D %40keyframes x%7B from%7Bstroke-dashoffset:0%7D to%7Bstroke-dashoffset:-36%7D %7D %3C/style%3E %3crect width='100%' height='100%' fill='none' rx='0' ry='0' stroke='rgba(0,145,126,.33)' stroke-width='3' stroke-linecap='round' /%3e%3crect id='el' width='100%' height='100%' fill='none' rx='0' ry='0' stroke='%23ffffff' stroke-width='3' stroke-dasharray='6,12' stroke-dashoffset='0' stroke-linecap='round' /%3e%3c/svg%3e");
			}
		} */
}
.pointer.video:before {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3e %3cpolygon points='6,2 30,16 6,30' fill='%23ffffff' /%3e%3c/svg%3e");
  margin-left: calc(var(--pointer-video-r) * -0.5);
  margin-top: calc(var(--pointer-video-r) * -0.5);
  width: var(--pointer-video-r);
  height: var(--pointer-video-r);
  left: 50%;
  top: 50%;
}
@media (hover: hover) {
  .pointer.video:hover:before {
    background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3e %3cpolygon points='6,2 30,16 6,30' fill='%23000000' /%3e%3c/svg%3e");
  }
}
button,
.button {
  background-color: var(--color-link);
  color: var(--white);
  border-radius: 1.5rem;
  border: 0 none;
  font-weight: 500;
  text-decoration: none;
  padding: calc(var(--vr) * 0.5) calc(var(--hr) * 1.5);
  display: inline-block;
  position: relative;
  cursor: pointer;
}
button *,
.button * {
  pointer-events: none;
}
/* button#download {
	color: #fff;
	padding: 1.2em 1.6em 2.2em 3.6em;
	width: auto;
	&:before {
		left: 2.2em;
	}
	span {
		font-weight: bold;
		width: auto;
		height: auto;
	}
} */
[data-counter]:after {
  background-color: var(--counter-bg-color);
  border-radius: 1em;
  color: #fff;
  content: attr(data-counter);
  font-size: 0.86em;
  line-height: 1;
  vertical-align: middle;
  font-weight: bold;
  text-align: center;
  margin-left: 0.25em;
  padding: 0.3em;
  min-width: 1.2em;
  display: inline-block;
}
[data-counter="0"]:after {
  display: none !important;
}
#toolbarContainer .toolbarButton[data-counter]:after {
  font-size: 0.75rem;
  margin: 0;
  left: 50%;
  top: 100%;
  position: absolute;
  transform: translate(-50%, -50%);
}
#toolbarContainer .dropdownToolbarButton {
  background-color: transparent;
}
#toolbarContainer .dropdownToolbarButton select {
  background-color: transparent;
}
#toolbarContainer .toolbarButton.cartOpen {
  background-color: var(--color-link);
  /* .pdfi:not([data-cart]) & {
				.hidden;
			} */
}
#toolbarContainer .toolbarButton.cartOpen:before {
  background-color: #fff;
  mask-image: url(../images/toolbarButton-cart.svg);
  opacity: 1;
}
#toolbarContainer .toolbarButton.cartOpen span {
  color: transparent;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  position: absolute;
  z-index: -1;
  opacity: 0.5;
}
.toolbarHorizontalGroup {
  /* .pdfi_finder:not(.hidden) ~ & {
		--ty: var(--finder-h);
	} */
}
.toolbarHorizontalGroup .left,
.toolbarHorizontalGroup .right {
  height: 100%;
}
.pdfi_modal {
  width: 100vw;
  height: 100vh;
  left: 0;
  top: 0;
  position: absolute;
  z-index: 99999;
  display: flex;
  animation-name: fade-in;
}
.pdfi_modal iframe {
  border: 0 none;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  position: absolute;
}
.pdfi_modal.remove {
  animation-name: fade-out;
}
.pdfi_modal_close {
  cursor: pointer;
}
.pdfi_modal_close:active:before {
  transform: translateY(calc(var(--vr) * var(--event-click-y)));
}
.pdfi_modal_close.bg {
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  position: absolute;
  z-index: -1;
}
.pdfi_modal_close.bg:before {
  background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg"><circle cx="16" cy="16" r="16" fill="white"/><path d="m22 10-12 12m0-12 12 12" fill="none" stroke="black" stroke-linecap="round" stroke-width="2"/></svg>');
  background-repeat: no-repeat;
  background-position: left top;
  background-size: auto 100%;
  content: '';
  width: 2.2rem;
  height: 2.2rem;
  max-width: var(--modal-web-w-max);
  top: var(--viewport-pad);
  left: var(--viewport-pad);
  position: absolute;
  z-index: 1;
  opacity: 0.7;
}
@media (prefers-color-scheme: dark) {
  .pdfi_modal_close.bg:before {
    background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg"><circle cx="16" cy="16" r="16"/><path d="m22 10-12 12m0-12 12 12" fill="none" stroke="white" stroke-linecap="round" stroke-width="2"/></svg>');
  }
}
.pdfi_modal_close.bg:after {
  background-color: var(--modal-bg-color);
  content: '';
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  position: absolute;
  opacity: var(--modal-bg-opacity);
}
.pdfi_modal_content {
  overflow-x: hidden;
  overflow-y: auto;
}
.pdfi_modal_content.web,
.pdfi_modal_content.cart {
  background-color: var(--white);
  width: var(--modal-web-w);
  height: 100%;
  right: 0;
  top: 0;
  position: absolute;
  animation-name: from-right;
}
.remove .pdfi_modal_content.web,
.remove .pdfi_modal_content.cart {
  animation-name: to-left;
}
.pdfi_modal_content.web {
  max-width: var(--modal-web-w-max);
}
.pdfi_modal_content.cart {
  max-width: var(--modal-cart-w-max);
}
.pdfi_modal_content.video {
  background-color: #000;
  margin: auto;
  width: 100%;
  aspect-ratio: 16 / 9;
  position: relative;
  animation-name: from-back;
}
@media (orientation: landscape) {
  .pdfi_modal_content.video {
    max-width: 120vmin;
  }
}
.cart {
  background-color: #333;
  font-size: 0.9rem;
  line-height: 1.5;
  display: flex;
  flex-flow: column nowrap;
  align-items: stretch;
  justify-content: stretch;
  scroll-behavior: smooth;
}
.cart button[data-action="more"],
.cart button[data-action="less"],
.cart button[data-action="remove"] {
  background-color: var(--gray);
  color: var(--gray-dark);
  line-height: 1.5;
  font-weight: bold;
  padding: 0;
  width: 1.6rem;
  height: 1.6rem;
  overflow: hidden;
}
.cart button[data-action="more"] .icon,
.cart button[data-action="less"] .icon {
  font-size: 1.25em;
  line-height: 0.5;
}
.cart button[data-action="remove"] .icon {
  font-size: 2em;
  line-height: 0.25;
}
.cart button[data-action="checkout"] {
  font-size: 1rem;
  padding: var(--vr) var(--hr);
  width: 100%;
}
.cart button[data-action="checkout"] .icon {
  font-size: 1.25em;
  line-height: 0.75;
}
.cart .item {
  border: #fff solid 0.1rem;
  border-top-color: var(--gray);
  font-size: 0.9rem;
  padding-top: var(--vr);
  padding-bottom: var(--vr);
  position: relative;
}
.cart .item .title,
.cart .item .ref {
  margin: 0;
  padding-right: 2rem;
}
.cart .item .title {
  font-size: 1.1em;
  text-transform: none;
  margin: 0 0 0.3em;
  position: relative;
}
.cart .item .title button {
  right: 0;
  top: -0.25rem;
  position: absolute;
}
.cart .item .ref {
  font-size: 1em;
  margin: 0 0 1em;
  display: block;
}
.cart .item .units {
  font-size: 1em;
}
.cart .item .units p,
.cart .item .units strong {
  line-height: 1.2;
  text-align: right;
  margin: 0;
  padding: 0.25em;
  min-width: 2em;
}
.cart .item .price {
  font-size: 1em;
  padding: 0.25em;
}
.cart .item .combo {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}
.cart .item:hover {
  border-color: var(--gray-dark);
}
.cart .item.highlight {
  border-color: var(--color-highlight);
  background-image: linear-gradient(rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.96)), linear-gradient(var(--color-highlight), var(--color-highlight));
}
.cart .total {
  text-align: right;
  padding-bottom: var(--vr);
}
.cart .header {
  margin: 0;
  padding-top: calc(var(--vr) * 2);
  padding-bottom: var(--vr);
  flex: 0 0 auto;
}
.cart .header h2 {
  color: var(--gray-dark);
  font-size: 0.82em;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin: 0;
}
.cart .header a {
  color: var(--gray-dark);
  font-size: 0.82em;
  line-height: 1;
}
.cart .header .content {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
.cart .items {
  flex: 1 0 auto;
}
.cart .footer {
  border-top: var(--gray) solid 1px;
  background-color: rgba(255, 255, 255, 0.8);
  padding-top: var(--vr);
  padding-bottom: calc(var(--vr) * 2);
  flex: 0 0 auto;
  bottom: 0;
  position: sticky;
}
.cart h2 + .footer {
  display: none !important;
}
.textLayer {
  opacity: 1;
}
.textLayer ::selection {
  background-color: var(--color-selection);
}
.textLayer .highlight {
  background-color: transparent !important;
  outline: var(--black) solid 0.1rem;
  border: var(--color-highlight) solid 0.16rem;
  margin: 0 -0.2rem;
  padding: 0.1rem 0.2rem;
  position: relative;
}
.textLayer .highlight:after {
  background-color: var(--color-highlight);
  content: '';
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  position: absolute;
  opacity: 0.1;
}
.textLayer span:hover {
  z-index: 999;
}
#viewerContainer {
  /* top: var(--toolbar-h) !important;
	.pdfi_finder:not(.hidden) ~ & {
		top: calc(var(--finder-h) + var(--toolbar-h)) !important;
	} */
}
#viewerContainer .spread .page {
  box-shadow: 0 0 6vmin rgba(0, 0, 0, 0.1);
  border: 0 none;
  margin: 0 !important;
}
#viewerContainer .spread + .spread {
  margin-top: 1vmin;
}
.content {
  padding-left: calc(var(--hr) * 1.5);
  padding-right: calc(var(--hr) * 1.5);
  max-width: var(--content-width-max);
  margin-left: auto;
  margin-right: auto;
  flex: 1 1 auto;
}
@media (min-width: 30rem) {
  .content {
    padding-left: calc(var(--hr) * 2);
    padding-right: calc(var(--hr) * 2);
  }
}
.section {
  --content-width-max: var(--modal-web-w-max);
  animation-name: fade-in;
}
.section + .section {
  animation-name: fade-in, from-bottom;
  animation-delay: calc((var(--motion-duration) * 0.3) * 1s);
}
.section + .section + .section {
  animation-delay: calc((var(--motion-duration) * 0.6) * 1s);
}
.section + .section + .section + .section {
  animation-delay: calc((var(--motion-duration) * 0.9) * 1s);
}
.section + .section + .section + .section + .section {
  animation-delay: calc((var(--motion-duration) * 1.2) * 1s);
}
.section h3 {
  font-size: 0.82em;
  margin-bottom: calc(var(--vr) * 0.5);
  opacity: 0.6;
}
.section .mosaic {
  display: flex;
  gap: 0.1em;
  flex-flow: row wrap;
  justify-content: center;
  align-content: flex-start;
  align-items: stretch;
}
.section .mosaic > * {
  min-width: 6em;
  line-height: 0;
  flex: 1 1 21%;
}
.section .mosaic > *:last-child {
  flex-basis: 100%;
}
.section .mosaic > *:last-child:nth-child(n+3) img {
  aspect-ratio: 16/9;
}
.section.cover {
  background-color: var(--modal-web-cover-bg-color);
  line-height: 0;
}
.section.cover img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.section.cover.item img {
  margin: 0.3rem;
  width: calc(100% - 0.6rem);
  height: calc(33vh - 0.6rem);
  object-fit: contain;
}
.section.content {
  padding-top: calc(var(--vr) * 0.5);
  padding-bottom: calc(var(--vr) * 0.5);
}
.section.content:first-child {
  padding-top: calc(var(--vr) * 2);
}
.section.content:last-child {
  padding-bottom: calc(var(--vr) * 2);
}
.section.description {
  font-size: 1.2em;
  line-height: 1.4;
}
.section.documents ul {
  background-color: rgba(0, 0, 0, 0.02);
  border-radius: 0.3em;
  margin: 0;
  padding: 0;
  overflow: hidden;
}
.section.documents li {
  list-style: none;
  margin: 0;
}
.section.documents a {
  text-decoration: none;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  padding: calc(var(--vr) * 0.75) 0.5em calc(var(--vr) * 0.75) 3.2em;
  display: block;
  position: relative;
  opacity: 0.75;
}
.section.documents a:before {
  background-color: var(--white);
  box-shadow: 0 0 0.3em rgba(0, 0, 0, 0.3);
  border: currentColor solid 1px;
  content: 'PDF';
  font-size: 0.4em;
  padding: 1.2em 0.3em 0.1em;
  left: 1.5em;
  position: absolute;
}
@media (hover: hover) {
  .section.documents a:hover {
    background-color: rgba(0, 0, 0, 0.03);
    opacity: 1;
  }
}
.section.documents input#pdfs-list:not(:checked) ~ ul li.more,
.section.documents input#pdfs-list:not(:checked) ~ .pdfs-less {
  display: none !important;
}
.section.documents input#pdfs-list:checked ~ .pdfs-more {
  display: none !important;
}
.section.documents label.pdfs-more,
.section.documents label.pdfs-less {
  color: var(--color-link);
  font-size: 0.86em;
  padding: calc(var(--vr) * 0.5);
  display: inline-block;
  cursor: pointer;
}
.section.videos .video img {
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.section.images {
  padding-top: var(--vr);
  padding-bottom: var(--vr);
}
.section.images a {
  line-height: 0;
}
.section.images a.item {
  background-color: var(--gray);
}
.section.images a.item img {
  margin: 1rem;
  width: calc(100% - 2rem);
  height: calc(100% - 2rem);
  object-fit: contain;
}
.section.images img {
  width: 100%;
  height: 100%;
  aspect-ratio: 1;
  object-fit: cover;
}
.section.images .thumb {
  line-height: 0;
  display: block;
  position: relative;
}
@media (hover: hover) {
  .section.images .thumb:hover:after {
    box-shadow: inset 0 0 0 var(--thumb-border-w) var(--black);
    content: '';
    left: 0;
    top: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    display: block;
    z-index: 1;
  }
}
.section.link {
  padding-bottom: calc(var(--vr) * 2);
}
*,
*:after,
*:before {
  transition-timing-function: var(--motion-curve);
  transition-duration: calc(var(--motion-duration) * 1s);
  transition-property: opacity,
		transform,
		filter;
  animation-name: var(--motion-name);
  animation-timing-function: var(--motion-curve);
  animation-duration: calc(var(--motion-duration) * 1s);
  animation-fill-mode: both;
}
a,
a:after,
a:before,
.button,
.button:after,
.button:before {
  transition-duration: calc(var(--action-duration) * 1s);
}
@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade-out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes to-left {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(var(--motion-move));
  }
}
@keyframes from-right {
  0% {
    transform: translateX(var(--motion-move));
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes from-back {
  0% {
    transform: perspective(var(--motion-perspective)) translateZ(calc(var(--motion-move) * -1));
  }
  100% {
    transform: perspective(var(--motion-perspective)) translateZ(0);
  }
}
@keyframes beat {
  0% {
    transform: scale(1.2);
    opacity: 1;
  }
  50%,
  100% {
    transform: scale(1);
    opacity: 0.85;
  }
}
@media (hover: hover) {
  a:not(.button):hover {
    text-decoration: none;
  }
}
a:not(.button):active {
  text-decoration: none;
}
@media (hover: hover) {
  input:hover,
  textarea:hover,
  select:hover {
    background-image: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1));
  }
}
@media (hover: hover) {
  button:hover,
  .button:hover {
    background-image: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1));
  }
}
button:active,
.button:active {
  transform: translateY(calc(var(--vr) * var(--event-click-y)));
}
.hidden {
  display: none !important;
}
.waiting:before {
  background-color: currentColor;
  mask-image: url('data:image/svg+xml;utf8, \
		%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"%3e \
			%3Ccircle fill="none" stroke="currentColor" stroke-width="4" stroke-dasharray="52" cx="16" cy="16" r="12"%3e \
				%3CanimateTransform attributeName="transform" attributeType="XML" type="rotate" from="0 16 16" to="360 16 16" dur="400ms" repeatCount="indefinite"/%3e \
			%3C/circle%3e \
		%3C/svg%3e');
  content: '';
  margin-top: -0.1em;
  margin-bottom: -0.1em;
  width: 1.1em;
  height: 1.1em;
  display: inline-block;
  pointer-events: none;
}
.waiting .icon {
  display: none !important;
}
