@charset "UTF-8";:root{--f-button-width: 40px;--f-button-height: 40px;--f-button-border: 0;--f-button-border-radius: 0;--f-button-color: #374151;--f-button-bg: #f8f8f8;--f-button-shadow: none;--f-button-transition: all .15s ease;--f-button-transform: none;--f-button-outline-width: 1px;--f-button-outline-color: rgba(0, 0, 0, .7);--f-button-svg-width: 20px;--f-button-svg-height: 20px;--f-button-svg-stroke-width: 1.5;--f-button-svg-fill: none;--f-button-svg-filter: none;--f-button-svg-opacity: 1;--f-button-svg-disabled-opacity: .5;--f-button-svg-transition: opacity .15s ease;--f-button-svg-transform: none}.f-button{width:var(--f-button-width);height:var(--f-button-height);border:var(--f-button-border);border-radius:var(--f-button-border-radius);color:var(--f-button-color);background:var(--f-button-bg);box-shadow:var(--f-button-shadow);transform:var(--f-button-transform);transition:var(--f-button-transition);backdrop-filter:var(--f-button-backdrop-filter);display:flex;justify-content:center;align-items:center;box-sizing:content-box;position:relative;margin:0;padding:0;pointer-events:all;cursor:pointer;overflow:hidden}@media (hover: hover){.f-button:hover:not([aria-disabled]){color:var(--f-button-hover-color, var(--f-button-color));background-color:var(--f-button-hover-bg, var(--f-button-bg))}}.f-button:active:not([aria-disabled]){color:var(--f-button-active-color, var(--f-button-hover-color, var(--f-button-color)));background-color:var(--f-button-active-bg, var(--f-button-hover-bg, var(--f-button-bg)))}.f-button:focus{outline:none}.f-button:focus-visible{outline:var(--f-button-outline-width) solid var(--f-button-outline-color);outline-offset:var(--f-button-outline-offset)}.f-button svg{width:var(--f-button-svg-width);height:var(--f-button-svg-height);transform:var(--f-button-svg-transform);fill:var(--f-button-svg-fill);filter:var(--f-button-svg-filter);opacity:var(--f-button-svg-opacity, 1);transition:var(--f-button-svg-transition);stroke:currentColor;stroke-width:var(--f-button-svg-stroke-width);stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.f-button[aria-disabled]{cursor:default}.f-button[aria-disabled] svg{opacity:var(--f-button-svg-disabled-opacity)}[data-panzoom-action=toggleFS] g:first-child{display:flex}[data-panzoom-action=toggleFS] g:last-child{display:none}.in-fullscreen [data-panzoom-action=toggleFS] g:first-child{display:none}.in-fullscreen [data-panzoom-action=toggleFS] g:last-child{display:flex}[data-autoplay-action=toggle] svg g:first-child{display:flex}[data-autoplay-action=toggle] svg g:last-child{display:none}.has-autoplay [data-autoplay-action=toggle] svg g:first-child{display:none}.has-autoplay [data-autoplay-action=toggle] svg g:last-child{display:flex}:fullscreen [data-fullscreen-action=toggle] svg [data-fullscreen-action=toggle] svg g:first-child{display:none}:fullscreen [data-fullscreen-action=toggle] svg [data-fullscreen-action=toggle] svg g:last-child{display:flex}:root{--f-spinner-color-1: rgba(0, 0, 0, .1);--f-spinner-color-2: rgba(17, 24, 28, .8);--f-spinner-width: 50px;--f-spinner-height: 50px;--f-spinner-border-radius: 50%;--f-spinner-border-width: 4px}.f-spinner{position:absolute;top:50%;left:50%;margin:0;padding:0;width:var(--f-spinner-width);height:var(--f-spinner-height);translate:-50% -50%;border:var(--f-spinner-border-width) solid var(--f-spinner-color-1);border-top-color:var(--f-spinner-color-2);border-radius:var(--f-spinner-border-radius);animation:f-spinner .75s linear infinite,f-fadeIn .2s ease .2s both}@keyframes f-spinner{to{rotate:360deg}}.f-panzoom,.f-zoomable{position:relative;overflow:hidden;display:flex;align-items:center;flex-direction:column}.f-panzoom:before,.f-panzoom:after,.f-zoomable:before,.f-zoomable:after{display:block;content:""}.f-panzoom:not(.has-controls):before,.f-zoomable:not(.has-controls):before{margin-bottom:auto}.f-panzoom:after,.f-zoomable:after{margin-top:auto}.f-panzoom.in-fullscreen,.f-zoomable.in-fullscreen{position:fixed;top:0;left:0;margin:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;aspect-ratio:unset!important;z-index:9999}.f-panzoom__wrapper{position:relative;min-width:0;min-height:0;max-width:100%;max-height:100%}.f-panzoom__wrapper.will-zoom-out{cursor:zoom-out}.f-panzoom__wrapper.can-drag{cursor:move;cursor:grab}.f-panzoom__wrapper.will-zoom-in{cursor:zoom-in}.f-panzoom__wrapper.is-dragging{cursor:move;cursor:grabbing}.f-panzoom__wrapper.has-error{display:none}.f-panzoom__content{display:block;min-width:0;min-height:0;max-width:100%;max-height:100%}.f-panzoom__content.is-lazyloading,.f-panzoom__content.has-lazyerror{visibility:hidden}img.f-panzoom__content{width:auto;height:auto;vertical-align:top;object-fit:contain;transition:none;user-select:none}.f-panzoom__wrapper>.f-panzoom__content{visibility:hidden}.f-panzoom__viewport{display:block;position:absolute;top:0;left:0;width:100%;height:100%;z-index:10}.f-panzoom__viewport>.f-panzoom__content{width:100%;height:100%;object-fit:fill}picture.f-panzoom__content img{vertical-align:top;width:100%;height:auto;max-height:100%;object-fit:contain;transition:none;user-select:none}.f-panzoom__protected{position:absolute;inset:0;z-index:1;user-select:none}html.with-panzoom-in-fullscreen{overflow:hidden}.f-fadeIn{animation:var(--f-transition-duration, .2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeIn;z-index:2}.f-fadeOut{animation:var(--f-transition-duration, .2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeOut;z-index:1}@keyframes f-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes f-fadeOut{to{opacity:0}}.f-crossfadeIn{animation:var(--f-transition-duration, .2s) ease both f-crossfadeIn;z-index:2}.f-crossfadeOut{animation:calc(var(--f-transition-duration, .2s) * .2) ease calc(var(--f-transition-duration, .2s) * .8) both f-crossfadeOut;z-index:1}@keyframes f-crossfadeIn{0%{opacity:0}to{opacity:1}}@keyframes f-crossfadeOut{to{opacity:0}}.is-horizontal .f-slideIn.from-next{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-slideInNextX}.is-horizontal .f-slideIn.from-prev{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-slideInPrevX}.is-horizontal .f-slideOut.to-next{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-slideOutNextX}.is-horizontal .f-slideOut.to-prev{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-slideOutPrevX}@keyframes f-slideInPrevX{0%{transform:translate(calc(100% + var(--f-carousel-gap, 0)))}to{transform:translateZ(0)}}@keyframes f-slideInNextX{0%{transform:translate(calc(-100% - var(--f-carousel-gap, 0)))}to{transform:translateZ(0)}}@keyframes f-slideOutNextX{to{transform:translate(calc(-100% - var(--f-carousel-gap, 0)))}}@keyframes f-slideOutPrevX{to{transform:translate(calc(100% + var(--f-carousel-gap, 0)))}}.is-vertical .f-slideIn.from-next{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-slideInNextY}.is-vertical .f-slideIn.from-prev{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-slideInPrevY}.is-vertical .f-slideOut.to-next{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-slideOutNextY}.is-vertical .f-slideOut.to-prev{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-slideOutPrevY}@keyframes f-slideInPrevY{0%{transform:translateY(calc(100% + var(--f-carousel-gap, 0)))}to{transform:translateZ(0)}}@keyframes f-slideInNextY{0%{transform:translateY(calc(-100% - var(--f-carousel-gap, 0)))}to{transform:translateZ(0)}}@keyframes f-slideOutNextY{to{transform:translateY(calc(-100% - var(--f-carousel-gap, 0)))}}@keyframes f-slideOutPrevY{to{transform:translateY(calc(100% + var(--f-carousel-gap, 0)))}}.f-zoomInUp{animation:var(--f-transition-duration, .3s) ease both f-zoomInUp}.f-zoomOutDown{animation:var(--f-transition-duration, .3s) ease both f-zoomOutDown}@keyframes f-zoomInUp{0%{transform:scale(var(--f-zoomInUp-scale, .975)) translate3d(var(--f-zoomInUp-x, 0),var(--f-zoomInUp-y, 16px),0);opacity:var(--f-zoomInUp-opacity, 0)}to{transform:scale(1) translateZ(0);opacity:1}}@keyframes f-zoomOutDown{to{transform:scale(var(--f-zoomOutDown-scale, .975)) translate3d(var(--f-zoomOutDown-x, 0),var(--f-zoomOutDown-y, 16px),0);opacity:0}}.f-throwOutUp{animation:var(--f-throwOutUp-duration, .2s) ease-out both f-throwOutUp}.f-throwOutDown{animation:var(--f-throwOutDown-duration, .2s) ease-out both f-throwOutDown}@keyframes f-throwOutUp{to{transform:translate3d(0,calc(var(--f-throwOutUp-y, 150px) * -1),0);opacity:0}}@keyframes f-throwOutDown{to{transform:translate3d(0,var(--f-throwOutDown-y, 150px),0);opacity:0}}.has-iframe .f-html,.has-pdf .f-html,.has-gmap .f-html{width:100%;height:100%;min-height:1px;overflow:visible}.has-pdf .f-html,.has-gmap .f-html{padding:0}.f-html{position:relative;box-sizing:border-box;margin:var(--f-html-margin, 0);padding:var(--f-html-padding, 2rem);color:var(--f-html-color, currentColor);background:var(--f-html-bg)}.f-html.is-error{text-align:center}.f-iframe{display:block;margin:0;border:0;height:100%;width:100%}.f-caption{align-self:center;flex-shrink:0;margin:var(--f-caption-margin);padding:var(--f-caption-padding, 16px 8px);max-width:100%;max-height:calc(80vh - 100px);overflow:auto;overflow-wrap:anywhere;line-height:var(--f-caption-line-height);color:var(--f-caption-color);background:var(--f-caption-bg);font:var(--f-caption-font)}.has-html5video .f-html,.has-youtube .f-html,.has-vimeo .f-html{padding:0;width:100%;height:100%;min-height:1px;overflow:visible;max-width:var(--f-video-width, 960px);max-height:var(--f-video-height, 540px);aspect-ratio:var(--f-video-aspect-ratio);background:var(--f-video-bg, rgba(0, 0, 0, .9))}.f-html5video{border:0;display:block;height:100%;width:100%;background:transparent}.f-button.is-arrow{--f-button-width: var(--f-arrow-width, 46px);--f-button-height: var(--f-arrow-height, 46px);--f-button-svg-width: var(--f-arrow-svg-width, 24px);--f-button-svg-height: var(--f-arrow-svg-height, 24px);--f-button-svg-stroke-width: var(--f-arrow-svg-stroke-width, 1.75);--f-button-border-radius: var(--f-arrow-border-radius, unset);--f-button-bg: var(--f-arrow-bg, transparent);--f-button-hover-bg: var(--f-arrow-hover-bg, var(--f-arrow-bg));--f-button-active-bg: var(--f-arrow-active-bg, var(--f-arrow-hover-bg));--f-button-shadow: var(--f-arrow-shadow);--f-button-color: var(--f-arrow-color);--f-button-hover-color: var(--f-arrow-hover-color, var(--f-arrow-color));--f-button-active-color: var( --f-arrow-active-color, var(--f-arrow-hover-color) );overflow:visible}.f-button.is-arrow.is-prev,.f-button.is-arrow.is-next{position:absolute;transform:translate(0);z-index:20}.is-horizontal .f-button.is-arrow.is-prev,.is-horizontal .f-button.is-arrow.is-next{inset:50% auto auto;transform:translateY(-50%)}.is-horizontal.is-ltr .f-button.is-arrow.is-prev{left:var(--f-arrow-pos, 0)}.is-horizontal.is-ltr .f-button.is-arrow.is-next{right:var(--f-arrow-pos, 0)}.is-horizontal.is-rtl .f-button.is-arrow.is-prev{right:var(--f-arrow-pos, 0);transform:translateY(-50%) rotateY(180deg)}.is-horizontal.is-rtl .f-button.is-arrow.is-next{left:var(--f-arrow-pos, 0);transform:translateY(-50%) rotateY(180deg)}.is-vertical.is-ltr .f-button.is-arrow.is-prev,.is-vertical.is-rtl .f-button.is-arrow.is-prev{top:var(--f-arrow-pos, 0);right:auto;bottom:auto;left:50%;transform:translate(-50%)}.is-vertical.is-ltr .f-button.is-arrow.is-next,.is-vertical.is-rtl .f-button.is-arrow.is-next{top:auto;right:auto;bottom:var(--f-arrow-pos, 0);left:50%;transform:translate(-50%)}.is-vertical .f-button.is-arrow.is-prev svg,.is-vertical .f-button.is-arrow.is-next svg{transform:rotate(90deg)}.f-carousel__toolbar{display:grid;grid-template-columns:1fr auto 1fr;margin:var(--f-toolbar-margin, 0);padding:var(--f-toolbar-padding, 8px);line-height:var(--f-toolbar-line-height);background:var(--f-toolbar-bg, none);box-shadow:var(--f-toolbar-shadow, none);backdrop-filter:var(--f-toolbar-backdrop-filter);position:relative;z-index:20;color:var(--f-toolbar-color, currentColor);font-size:var(--f-toolbar-font-size, 17px);font-weight:var(--f-toolbar-font-weight, inherit);font-family:var(--f-toolbar-font, -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif);text-shadow:var(--f-toolbar-text-shadow);text-align:center;font-variant-numeric:tabular-nums;-webkit-font-smoothing:subpixel-antialiased;white-space:nowrap;pointer-events:none}.f-carousel__toolbar.is-absolute{position:absolute;top:0;left:0;right:0}.f-carousel__toolbar .f-button:focus-visible{position:relative;z-index:1}.f-carousel__toolbar__column{display:flex;flex-direction:row;flex-wrap:wrap;align-content:flex-start;gap:var(--f-toolbar-gap, 0)}.f-carousel__toolbar__column.is-left{display:flex;justify-self:flex-start;justify-content:flex-start}.f-carousel__toolbar__column.is-middle{display:flex;justify-content:center}.f-carousel__toolbar__column.is-right{display:flex;justify-self:flex-end;justify-content:flex-end;flex-flow:nowrap}.f-carousel__toolbar__column{pointer-events:none}.f-carousel__toolbar__column>*{pointer-events:all}.f-counter{position:relative;display:flex;flex-direction:row;cursor:default;user-select:none;margin:var(--f-counter-margin, 0);padding:var(--f-counter-padding, 4px);line-height:var(--f-counter-line-height);background:var(--f-counter-bg);border-radius:var(--f-counter-border-radius)}.f-counter span{padding:0 var(--f-counter-gap, 4px)}:root{--f-thumbs-gap: 8px;--f-thumbs-margin: 0;--f-thumbs-padding-x: 8px;--f-thumbs-padding-y: 8px;--f-thumbs-bg: transparent;--f-thumbs-transition: max-height .3s ease, max-width .3s ease, padding .3s ease;--f-thumbs-z-index: 1;--f-thumbs-viewport-padding-x: 0px;--f-thumbs-viewport-padding-y: 0px;--f-thumb-width: 94px;--f-thumb-height: 76px;--f-thumb-clip-width: 46px;--f-thumb-extra-gap: 16px;--f-thumb-opacity: 1;--f-thumb-transition: opacity .3s ease, transform .15s ease;--f-thumb-border: none;--f-thumb-border-radius: 4px;--f-thumb-shadow: none;--f-thumb-bg: linear-gradient(rgba(0, 0, 0, .1), rgba(0, 0, 0, .05));--f-thumb-focus-shadow: inset 0 0 0 .8px #222, inset 0 0 0 2.25px #fff;--f-thumb-selected-shadow: inset 0 0 0 .8px #222, inset 0 0 0 2.25px #fff;--f-thumb-border-transition: all .1s ease;--f-thumb-img-width: 100%;--f-thumb-img-height: 100%;--f-thumb-img-fit: cover;--f-thumb-img-position: 50% 20%}.f-thumbs{--f-carousel-slide-width: var(--f-thumb-width);--f-carousel-slide-height: var(--f-thumb-height);--f-carousel-gap: var(--f-thumbs-gap);position:relative;box-sizing:border-box;flex-shrink:0;margin:var(--f-thumbs-margin);padding:var(--f-thumbs-padding-y) var(--f-thumbs-padding-x);overflow:hidden;background:var(--f-thumbs-bg);-webkit-tap-highlight-color:transparent;user-select:none;transition:var(--f-thumbs-transition);z-index:var(--f-thumbs-z-index)}.f-thumbs.is-horizontal{max-height:calc(var(--f-carousel-slide-height) + var(--f-thumbs-padding-y) * 2)}.f-thumbs.is-horizontal.is-hidden{max-height:0;--f-thumbs-padding-y: 0}.f-thumbs.is-vertical{max-width:calc(var(--f-carousel-slide-width) + var(--f-thumbs-padding-x) * 2)}.f-thumbs.is-vertical.is-hidden{max-width:0;--f-thumbs-padding-x: 0}.f-thumbs.is-scrollable.is-hidden{max-height:0;--f-thumbs-padding-y: 0}.f-thumbs.is-ltr{direction:ltr}.f-thumbs.is-rtl{direction:rtl}.f-thumbs img{display:block;width:var(--f-thumb-img-width);height:var(--f-thumb-img-height);object-fit:var(--f-thumb-img-fit);object-position:var(--f-thumb-img-position);pointer-events:none;border-radius:inherit;color:transparent}.f-thumbs img[data-lazy-src]{visibility:hidden}.f-thumbs img.has-lazyerror{display:none}.f-thumbs__viewport{box-sizing:border-box;height:100%;padding:var(--f-thumbs-viewport-padding-y) var(--f-thumbs-viewport-padding-x);overflow:visible;display:grid}.f-thumbs__slide{position:relative;box-sizing:border-box;grid-area:1/1;width:var(--f-carousel-slide-width);height:var(--f-carousel-slide-height);margin:0;padding:0;display:flex;align-items:center;flex-direction:column;cursor:pointer;overflow:visible}.f-thumbs__slide:hover button{opacity:var(--f-thumb-hover-opacity, 1);transform:var(--f-thumb-hover-transform, none)}.f-thumbs__slide:hover button:after{border:var(--f-thumb-hover-border, none);box-shadow:var(--f-thumb-hover-shadow, var(--f-thumb-shadow))}.f-thumbs__slide button{all:unset;display:block;margin:auto;padding:0;position:relative;overflow:visible;width:100%;height:100%;outline:none;transition:var(--f-thumb-transition);border-radius:var(--f-thumb-border-radius);opacity:var(--f-thumb-opacity);transform:var(--f-thumb-transform);background:var(--f-thumb-bg)}.f-thumbs__slide button:after{content:"";position:absolute;inset:0;z-index:1;transition:var(--f-thumb-border-transition);border-radius:inherit;border:var(--f-thumb-border);box-shadow:var(--f-thumb-shadow)}.f-thumbs__slide button:focus-within{opacity:var(--f-thumb-focus-opacity, 1);transform:var(--f-thumb-focus-transform, none)}.f-thumbs__slide button:focus-within:after{border:var(--f-thumb-focus-border, none);box-shadow:var(--f-thumb-focus-shadow, var(--f-thumb-shadow))}.f-thumbs__slide:active{opacity:var(--f-thumb-active-opacity, 1);transform:var(--f-thumb-active-transform, none)}.f-thumbs__slide:active:after{border:var(--f-thumb-active-border, none);box-shadow:var(--f-thumb-active-shadow, var(--f-thumb-shadow))}.f-thumbs__slide.is-selected{z-index:2}.f-thumbs__slide.is-selected button{opacity:var(--f-thumb-selected-opacity, 1);transform:var(--f-thumb-selected-transform, none)}.f-thumbs__slide.is-selected button:after{border:var(--f-thumb-selected-border, none);box-shadow:var(--f-thumb-selected-shadow, var(--f-thumb-shadow))}.f-thumbs.is-modern{--f-carousel-slide-width: calc( var(--f-thumb-clip-width) + var(--f-thumbs-gap) );--f-carousel-slide-height: var(--f-thumb-height);--f-carousel-gap: 0;--width-diff: calc((var(--f-thumb-width) - var(--f-thumb-clip-width)))}.f-thumbs.is-modern .f-thumbs__viewport{width:calc(100% + var(--f-carousel-slide-width) * 2 + var(--f-thumbs-padding-x));margin-inline:calc((var(--f-carousel-slide-width) + var(--f-thumbs-padding-x)) * -1)}.f-thumbs.is-modern .f-thumbs__slide{--clip-shift: calc((var(--width-diff) * .5) * var(--progress));--clip-path: inset( 0 var(--clip-shift) round var(--f-thumb-border-radius, 0) );padding:0;overflow:visible;left:var(--shift, 0);will-change:left;transition:left var(--f-transition-duration) var(--f-transition-easing)}.f-thumbs.is-modern .f-thumbs__slide button{display:block;margin-inline:50%;width:var(--f-thumb-width);clip-path:var(--clip-path);border:none;box-shadow:none;transition:clip-path var(--f-transition-duration) var(--f-transition-easing),opacity var(--f-thumb-transition-duration, .2s) var(--f-thumb-transition-easing, ease)}.f-thumbs.is-modern .f-thumbs__slide button:after{display:none}.f-thumbs.is-modern .f-thumbs__slide:focus:not(:focus-visible){outline:none}.f-thumbs.is-modern .f-thumbs__slide:focus-within:not(.is-selected) button:before{content:"";position:absolute;z-index:1;top:0;left:var(--clip-shift);bottom:0;right:var(--clip-shift);transition:border var(--f-transition-duration) var(--f-transition-easing),box-shadow var(--f-transition-duration) var(--f-transition-easing);border-radius:inherit;border:var(--f-thumb-focus-border, none);box-shadow:var(--f-thumb-focus-shadow, none)}.f-thumbs.is-modern{--f-transition-duration: .25s;--f-transition-easing: ease-out}.f-thumbs.is-modern.is-syncing{--f-transition-duration: 0s}.f-thumbs.is-scrollable .f-thumbs__viewport{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--f-thumb-width),1fr));grid-auto-rows:var(--f-thumb-height);gap:var(--f-thumbs-gap);overflow:auto;overscroll-behavior:contain;user-select:none}.f-thumbs.is-scrollable .f-thumbs__viewport .f-thumbs__slide{grid-area:auto;display:block;position:relative;max-width:100%;width:var(--f-thumb-width);height:var(--f-thumb-height);cursor:pointer;outline:none}:root{--f-progressbar-height: 3px;--f-progressbar-color: var(--f-carousel-theme-color, #575ad6);--f-progressbar-opacity: 1;--f-progressbar-z-index: 30}.f-progressbar{position:absolute;top:0;left:0;right:0;z-index:var(--f-progressbar-z-index);height:var(--f-progressbar-height);transform:scaleX(0);transform-origin:0;opacity:var(--f-progressbar-opacity);background:var(--f-progressbar-color);user-select:none;pointer-events:none;animation-name:f-progressbar;animation-play-state:running;animation-timing-function:linear}.f-progressbar:empty{display:block}button>.f-progressbar{--f-progressbar-height: 100%;--f-progressbar-opacity: .2}@keyframes f-progressbar{0%{transform:scaleX(0)}to{transform:scaleX(1)}}[data-fullscreen-action=toggle] svg g:first-child{display:flex}[data-fullscreen-action=toggle] svg g:last-child{display:none}:fullscreen [data-fullscreen-action=toggle] svg g:first-child{display:none}:fullscreen [data-fullscreen-action=toggle] svg g:last-child{display:flex}.in-fullscreen-mode>.f-carousel{flex:1;min-width:0!important;min-height:0!important}html.with-fancybox{width:auto;overflow:visible;scroll-behavior:auto}html.with-fancybox body.hide-scrollbar{width:auto;margin-right:calc(var(--f-body-margin, 0px) + var(--f-scrollbar-compensate, 0px));overflow:hidden!important;overscroll-behavior-y:none}.fancybox__dialog{position:fixed;inset:0;z-index:1050;width:100%;height:100vh;max-height:unset;max-width:unset;padding:0;margin:0;border:0;overflow:hidden;background:transparent;touch-action:none;overscroll-behavior:contain}.fancybox__dialog:focus{outline:none}.fancybox__dialog::backdrop{opacity:0}@supports (height: 100dvh){.fancybox__dialog{height:100dvh}}.fancybox__dialog *:empty{display:block}.fancybox__container{--fancybox-color: #dbdbdb;--fancybox-backdrop-bg: rgba(24, 24, 27, .95);--f-toolbar-margin: 0;--f-toolbar-padding: 8px;--f-toolbar-gap: 0;--f-toolbar-color: #ddd;--f-toolbar-font-size: 16px;--f-toolbar-font-weight: 500;--f-toolbar-font: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif;--f-toolbar-line-height: var(--f-button-height);--f-toolbar-text-shadow: 1px 1px 1px rgba(0, 0, 0, .75);--f-toolbar-shadow: none;--f-toolbar-bg: none;--f-counter-margin: 0;--f-counter-padding: 0px 10px;--f-counter-gap: 4px;--f-counter-line-height: var(--f-button-height);--f-carousel-gap: 17px;--f-carousel-slide-width: 100%;--f-carousel-slide-height: 100%;--f-carousel-slide-padding: 0;--f-carousel-slide-bg: unset;--f-html-color: #222;--f-html-bg: #fff;--f-error-color: #fff;--f-error-bg: #333;--f-caption-margin: 0;--f-caption-padding: 16px 8px;--f-caption-color: var(--fancybox-color, #dbdbdb);--f-caption-bg: transparent;--f-caption-font: inherit;--f-caption-line-height: 1.375;--f-spinner-color-1: rgba(255, 255, 255, .2);--f-spinner-color-2: rgba(255, 255, 255, .8);--f-spinner-width: 50px;--f-spinner-height: 50px;--f-spinner-border-radius: 50%;--f-spinner-border-width: 4px;--f-progressbar-color: rgba(255, 255, 255);--f-button-width: 46px;--f-button-height: 46px;--f-button-color: #ddd;--f-button-hover-color: #fff;--f-button-outline-width: 1px;--f-button-outline-color: rgba(255, 255, 255, .75);--f-button-outline-offset: 0px;--f-button-bg: rgba(54, 54, 54, .75);--f-button-border: 0;--f-button-border-radius: 0;--f-button-shadow: none;--f-button-transition: all .2s ease;--f-button-transform: none;--f-button-svg-width: 24px;--f-button-svg-height: 24px;--f-button-svg-stroke-width: 1.75;--f-button-svg-filter: drop-shadow(1px 1px 1px rgba(24, 24, 27, .01)), drop-shadow(1px 2px 1px rgba(24, 24, 27, .05));--f-button-svg-fill: none;--f-button-svg-disabled-opacity: .5;--f-arrow-pos: 32px;--f-arrow-width: 50px;--f-arrow-height: 50px;--f-arrow-svg-width: 24px;--f-arrow-svg-height: 24px;--f-arrow-svg-stroke-width: 2.5;--f-arrow-border-radius: 50%;--f-arrow-bg: rgba(54, 54, 54, .65);--f-arrow-color: #ddd;--f-arrow-hover-color: #fff;--f-close-button-width: 30px;--f-close-button-height: 30px;--f-close-button-svg-width: 24px;--f-close-button-svg-height: 24px;--f-close-button-svg-stroke-width: 1.75;--f-close-border-radius: 4px;--f-close-button-color: #fff;--f-close-button-hover-color: #fff;--f-close-button-bg: transparent;--f-close-button-hover-bg: transparent;--f-close-button-active-bg: transparent;--f-thumbs-margin: 0px;--f-thumbs-padding-x: 8px;--f-thumbs-padding-y: 8px;--f-thumbs-bg: none;--f-thumb-transition: all .2s ease;--f-thumb-width: 94px;--f-thumb-height: 76px;--f-thumb-opacity: 1;--f-thumb-border: none;--f-thumb-shadow: none;--f-thumb-transform: none;--f-thumb-focus-opacity: 1;--f-thumb-focus-border: none;--f-thumb-focus-shadow: inset 0 0 0 2px rgba(255, 255, 255, .65);--f-thumb-focus-transform: none;--f-thumb-hover-opacity: 1;--f-thumb-hover-border: none;--f-thumb-hover-transform: none;--f-thumb-active-opacity: var(--f-thumb-hover-opacity);--f-thumb-active-border: var(--f-thumb-hover-border);--f-thumb-active-transform: var(--f-thumb-hover-transform);--f-thumb-selected-opacity: 1;--f-thumb-selected-border: none;--f-thumb-selected-shadow: inset 0 0 0 2px #fff;--f-thumb-selected-transform: none;--f-scrollbar-width: 7px;--f-scrollbar-track-bg: #444;--f-scrollbar-track-border-radius: 10px;--f-scrollbar-track-shadow: inset 0 0 6px rgba(0, 0, 0, .2);--f-scrollbar-thumb-bg: #ddd;--f-scrollbar-thumb-border-radius: 10px}.fancybox__container[theme=light]{--fancybox-color: #222;--fancybox-backdrop-bg: rgba(255, 255, 255, .97);--f-toolbar-color: var(--fancybox-color, #222);--f-toolbar-text-shadow: none;--f-toolbar-font-weight: 400;--f-html-color: var(--fancybox-color, #222);--f-html-bg: #fff;--f-error-color: #555;--f-error-bg: #fff;--f-video-bg: #fff;--f-caption-color: #333;--f-spinner-color-1: rgba(0, 0, 0, .2);--f-spinner-color-2: rgba(0, 0, 0, .8);--f-spinner-border-width: 3.5px;--f-progressbar-color: rgba(111, 111, 116);--f-button-color: #333;--f-button-hover-color: #000;--f-button-outline-color: rgba(0, 0, 0, .85);--f-button-bg: rgba(255, 255, 255, .85);--f-button-svg-stroke-width: 1.3;--f-button-svg-filter: none;--f-arrow-bg: rgba(255, 255, 255, .85);--f-arrow-color: #333;--f-arrow-hover-color: #000;--f-arrow-svg-stroke-width: 1.3;--f-close-button-color: #555;--f-close-button-hover-color: #000;--f-thumb-bg: linear-gradient(#ebeff2, #e2e8f0);--f-thumb-focus-shadow: 0 0 0 1.8px #fff, 0px 0px 0px 2.25px #888;--f-thumb-selected-shadow: 0 0 0 1.8px #fff, 0px 0px 0px 2.25px #000;--f-scrollbar-track-bg: #ddd;--f-scrollbar-thumb-bg: #444}.fancybox__container{position:absolute;inset:0;overflow:hidden;display:flex;flex-direction:column}.fancybox__container:focus{outline:none}.fancybox__container.has-vertical-thumbs{flex-direction:row-reverse}.fancybox__container.has-vertical-thumbs:not(.is-closing) .fancybox__viewport{overflow-x:clip;overflow-y:visible}.fancybox__container>*:not(.fancybox__carousel),.fancybox__container .fancybox__carousel>*:not(.fancybox__viewport),.fancybox__container .fancybox__carousel>.fancybox__viewport>.fancybox__slide:not(.is-selected),.fancybox__container .fancybox__carousel>.fancybox__viewport>.fancybox__slide.is-selected>*:not(.f-html,.f-panzoom__wrapper,.f-spinner){opacity:var(--f-drag-opacity, 1)}.fancybox__container:not(.is-ready,.is-hiding){visibility:hidden}.fancybox__container.is-revealing>*:not(.fancybox__carousel),.fancybox__container.is-revealing .fancybox__carousel>*:not(.fancybox__viewport),.fancybox__container.is-revealing .fancybox__carousel>.fancybox__viewport>.fancybox__slide:not(.is-selected),.fancybox__container.is-revealing .fancybox__carousel>.fancybox__viewport>.fancybox__slide.is-selected>*:not(.f-html,.f-panzoom__wrapper,.f-spinner){animation:var(--f-interface-enter-duration, .35s) ease none f-fadeIn}.fancybox__container.is-hiding>*:not(.fancybox__carousel),.fancybox__container.is-hiding .fancybox__carousel>*:not(.fancybox__viewport),.fancybox__container.is-hiding .fancybox__carousel>.fancybox__viewport>.fancybox__slide.is-selected>*:not(.f-html,.f-panzoom__wrapper){animation:var(--f-interface-exit-duration, .35s) ease forwards f-fadeOut}.fancybox__container.is-hiding .fancybox__carousel .fancybox__slide:not(.is-selected){opacity:0}.fancybox__container.is-hiding{pointer-events:none}.fancybox__container.is-idle .f-carousel__toolbar{pointer-events:none;opacity:0}.fancybox__container.is-idle .f-button.is-arrow{opacity:0}.fancybox__container.is-idle.is-ready .f-carousel__toolbar{pointer-events:none;animation:.15s ease-out both f-fadeOut}.fancybox__container.is-idle.is-ready .f-button.is-arrow{animation:.15s ease-out both f-fadeOut}.fancybox__backdrop{position:fixed;inset:0;z-index:-1;background:var(--fancybox-backdrop-bg)}.fancybox__carousel{flex:1;display:flex;flex-direction:column;min-height:0;min-width:0;position:relative;z-index:10;overflow-y:visible;overflow-x:clip}.fancybox__carousel.is-vertical{--f-carousel-slide-height: 100%}.fancybox__carousel.is-ltr{direction:ltr}.fancybox__carousel.is-rtl{direction:rtl}.fancybox__carousel>.f-button.is-arrow:before{position:absolute;content:"";inset:-30px;z-index:1}.fancybox__viewport{display:grid;flex:1;min-height:0;min-width:0;position:relative;overflow:visible;transform:translate3d(0,var(--f-drag-offset, 0),0)}.fancybox__viewport.is-draggable{cursor:move;cursor:grab}.fancybox__viewport.is-dragging{cursor:move;cursor:grabbing}.fancybox__viewport [data-selectable],.fancybox__viewport [contenteditable]{cursor:auto}.fancybox__slide{box-sizing:border-box;position:relative;grid-area:1/1;display:flex;align-items:center;flex-direction:column;width:var(--f-carousel-slide-width);height:var(--f-carousel-slide-height);min-width:0;min-height:0;max-width:100%;margin:0;padding:var(--f-carousel-slide-padding);background:var(--f-carousel-slide-bg);backface-visibility:hidden;transform:translateZ(0);will-change:transform}.fancybox__slide:before,.fancybox__slide:after{display:block;content:""}.fancybox__slide:before{margin-bottom:auto}.fancybox__slide:after{margin-top:auto}.fancybox__slide.is-selected{z-index:1}.fancybox__slide.f-zoomable{overflow:visible}.fancybox__slide.has-error{--f-html-color: var(--f-error-color, --f-html-color);--f-html-bg: var(--f-error-bg, --f-html-bg)}.fancybox__slide.has-html{overflow:auto;padding:8px}.fancybox__slide.has-close-btn{padding-top:34px}.fancybox__slide.has-controls:before{margin:0}.fancybox__slide .f-spinner{cursor:pointer}.fancybox__container.is-closing .f-caption,.fancybox__slide.is-loading .f-caption{visibility:hidden}.fancybox__container.is-closing .fancybox__carousel{overflow:visible}.f-button.is-close-button{--f-button-width: var(--f-close-button-width);--f-button-height: var(--f-close-button-height);--f-button-border-radius: var(--f-close-border-radius);--f-button-color: var(--f-close-button-color);--f-button-hover-color: var(--f-close-button-hover-color);--f-button-bg: var(--f-close-button-bg);--f-button-hover-bg: var(--f-close-button-hover-bg);--f-button-active-bg: var(--f-close-button-active-bg);--f-button-svg-width: var(--f-close-button-svg-width);--f-button-svg-height: var(--f-close-button-svg-height);--f-button-svg-stroke-width: var(--f-close-button-svg-stroke-width);position:absolute;top:calc((var(--f-button-height) + 2px) * -1);right:0;z-index:10}.fancybox__thumbs{flex:0 1 100%}.fancybox__thumbs.is-scrollable{--f-thumbs-cols: 1;--f-thumbs-gap: 8px;--f-thumbs-transition: none;--f-thumbs-padding-x: 4px;--f-thumbs-padding-y: 8px;--f-thumbs-viewport-padding-x: 4px;--f-thumbs-viewport-padding-y: 0px;max-width:calc(var(--f-thumb-width) * var(--f-thumbs-cols) + var(--f-thumbs-gap) * (var(--f-thumbs-cols) - 1) + var(--f-thumbs-padding-x) * 2 + var(--f-thumbs-viewport-padding-x) * 2)}.fancybox__thumbs.is-scrollable ::-webkit-scrollbar{width:var(--f-scrollbar-width)}.fancybox__thumbs.is-scrollable ::-webkit-scrollbar-track{background:var(--f-scrollbar-track-bg);border-radius:var(--f-scrollbar-track-border-radius);box-shadow:var(--f-scrollbar-track-shadow)}.fancybox__thumbs.is-scrollable ::-webkit-scrollbar-thumb{background:var(--f-scrollbar-thumb-bg);border-radius:var(--f-scrollbar-thumb-border-radius)}.fancybox__thumbs.is-scrollable.is-hidden{max-width:0;--f-thumbs-padding-x: 0;max-height:unset;--f-thumbs-padding-y: unset}.fancybox__thumbs.is-scrollable .f-thumbs__viewport{overflow-x:hidden!important;grid-template-columns:repeat(auto-fill,calc((100% - var(--f-thumbs-gap) * (var(--f-thumbs-cols) - 1)) / var(--f-thumbs-cols)))!important}
@font-face {
  font-family: 'Inter';
  src: url("../fonts/Inter-Variable.woff2") format("woff2-variations");
  font-weight: 100 1000;
  font-stretch: 75% 125%;
  font-style: normal;
  font-display: swap;
}
/* Icons */
@font-face {
	font-family: "iconfont";
  src: url("../fonts/iconfont.woff2") format("woff2");
	font-display: swap;
  font-weight: 400;
}

:root {
  --icon-youtube: "\f101";
  --icon-youtube-02: "\f102";
  --icon-x: "\f103";
  --icon-whatsapp: "\f104";
  --icon-twitter: "\f105";
  --icon-twitch: "\f106";
  --icon-tumblr: "\f107";
  --icon-share: "\f108";
  --icon-search: "\f109";
  --icon-plus: "\f10a";
  --icon-minus: "\f10b";
  --icon-map-pin: "\f10c";
  --icon-mail: "\f10d";
  --icon-linkedin: "\f10e";
  --icon-instagram: "\f10f";
  --icon-info: "\f110";
  --icon-facebook: "\f111";
  --icon-eye: "\f112";
  --icon-eye-off: "\f113";
  --icon-chevrons-up: "\f114";
  --icon-chevrons-right: "\f115";
  --icon-chevrons-left: "\f116";
  --icon-chevrons-down: "\f117";
  --icon-chevron-up: "\f118";
  --icon-chevron-right: "\f119";
  --icon-chevron-left: "\f11a";
  --icon-chevron-down: "\f11b";
  --icon-check: "\f11c";
  --icon-behance: "\f11d";
  --icon-at-sign: "\f11e";
  --icon-arrow-up: "\f11f";
  --icon-arrow-right: "\f120";
  --icon-arrow-left: "\f121";
  --icon-arrow-down: "\f122";
  --icon-alert-circle: "\f123";
}

[class*="icon-"] {
  display: inline-flex;
  align-items: center;
  font-style: normal;
}

[class*="icon-"]::before {
	font-family: iconfont;
  font-style: normal;
}

[class*="icon-youtube"]::before {
  content: "\f101";
}

[class*="icon-youtube-02"]::before {
  content: "\f102";
}

[class*="icon-x"]::before {
  content: "\f103";
}

[class*="icon-whatsapp"]::before {
  content: "\f104";
}

[class*="icon-twitter"]::before {
  content: "\f105";
}

[class*="icon-twitch"]::before {
  content: "\f106";
}

[class*="icon-tumblr"]::before {
  content: "\f107";
}

[class*="icon-share"]::before {
  content: "\f108";
}

[class*="icon-search"]::before {
  content: "\f109";
}

[class*="icon-plus"]::before {
  content: "\f10a";
}

[class*="icon-minus"]::before {
  content: "\f10b";
}

[class*="icon-map-pin"]::before {
  content: "\f10c";
}

[class*="icon-mail"]::before {
  content: "\f10d";
}

[class*="icon-linkedin"]::before {
  content: "\f10e";
}

[class*="icon-instagram"]::before {
  content: "\f10f";
}

[class*="icon-info"]::before {
  content: "\f110";
}

[class*="icon-facebook"]::before {
  content: "\f111";
}

[class*="icon-eye"]::before {
  content: "\f112";
}

[class*="icon-eye-off"]::before {
  content: "\f113";
}

[class*="icon-chevrons-up"]::before {
  content: "\f114";
}

[class*="icon-chevrons-right"]::before {
  content: "\f115";
}

[class*="icon-chevrons-left"]::before {
  content: "\f116";
}

[class*="icon-chevrons-down"]::before {
  content: "\f117";
}

[class*="icon-chevron-up"]::before {
  content: "\f118";
}

[class*="icon-chevron-right"]::before {
  content: "\f119";
}

[class*="icon-chevron-left"]::before {
  content: "\f11a";
}

[class*="icon-chevron-down"]::before {
  content: "\f11b";
}

[class*="icon-check"]::before {
  content: "\f11c";
}

[class*="icon-behance"]::before {
  content: "\f11d";
}

[class*="icon-at-sign"]::before {
  content: "\f11e";
}

[class*="icon-arrow-up"]::before {
  content: "\f11f";
}

[class*="icon-arrow-right"]::before {
  content: "\f120";
}

[class*="icon-arrow-left"]::before {
  content: "\f121";
}

[class*="icon-arrow-down"]::before {
  content: "\f122";
}

[class*="icon-alert-circle"]::before {
  content: "\f123";
}


/* stylelint-disable */
/* stylelint-disable */
:root {
  /* Viewport  */
  --viewport-height: 100dvh;
  --viewport-width: 100dvw;
  /* BASE (in px) */
  --base-font-size: 16px;
  /* Container Settings */
  --content-width: 80rem;
  --content-width-xs: 47.5rem;
  --content-width-sm: 68.75rem;
  --content-width-lg: 98.75rem;
  --container-padding: 0.5rem;
  --container: calc(var(--content-width) + 2 * var(--container-padding));
  --container-xs: calc(var(--content-width-xs) + 2 * var(--container-padding));
  --container-sm: calc(var(--content-width-sm) + 2 * var(--container-padding));
  --container-lg: calc(var(--content-width-lg) + 2 * var(--container-padding));
  /* Fonts */
  --font-family-poppins: "Poppins", sans-serif;
  --font-family-arial: "Arial", "Helvetica", sans-serif;
  --font-family-inter: "Inter", "Arial", sans-serif;
  --font-family-primary: var(--font-family-inter);
  --font-family-secondary: var(--font-family-arial);
  --font-icons: "iconfont";
  /* Fonts Body */
  --body-font-family: var(--font-family-primary);
  --body-font-size: 1rem;
  --body-font-weight: 400;
  --body-line-height: 1.42;
  --body-letter-spacing: 0;
  /* Fonts Display (Heading) */
  --display-font-family: var(--font-family-primary);
  --display-font-weight: 700;
  --display-line-height: 1.2;
  --display-letter-spacing: 0;
  --heading-anchor-offset: var(--header-height);
  --h1-font-size: clamp(2rem, 1.6rem + 2vw, 4rem);
  --h1-font-weight: var(--display-font-weight);
  --h1-line-height: var(--display-line-height);
  --h1-letter-spacing: var(--display-letter-spacing);
  --h2-font-size: clamp(1.5rem, 1.275rem + 1.125vw, 2.625rem);
  --h2-font-weight: var(--display-font-weight);
  --h2-line-height: var(--display-line-height);
  --h2-letter-spacing: var(--display-letter-spacing);
  --h3-font-size: clamp(1.25rem, 1.2rem + 0.25vw, 1.5rem);
  --h3-font-weight: var(--display-font-weight);
  --h3-line-height: var(--display-line-height);
  --h3-letter-spacing: var(--display-letter-spacing);
  --h4-font-size: clamp(1rem, 0.95rem + 0.25vw, 1.25rem);
  --h4-font-weight: var(--display-font-weight);
  --h4-line-height: var(--display-line-height);
  --h4-letter-spacing: var(--display-letter-spacing);
  --h5-font-size: clamp(1rem, 0.975rem + 0.125vw, 1.125rem);
  --h5-font-weight: var(--display-font-weight);
  --h5-line-height: var(--display-line-height);
  --h5-letter-spacing: var(--display-letter-spacing);
  --h6-font-size: clamp(0.875rem, 0.85rem + 0.125vw, 1rem);
  --h6-font-weight: var(--display-font-weight);
  --h6-line-height: var(--display-line-height);
  --h6-letter-spacing: var(--display-letter-spacing);
  /* Colors */
  --color-black: #000;
  --color-black-rgb: 0 0 0;
  --color-black-10: rgb(var(--color-black-rgb) / 10%);
  --color-black-15: rgb(var(--color-black-rgb) / 15%);
  --color-black-20: rgb(var(--color-black-rgb) / 20%);
  --color-black-30: rgb(var(--color-black-rgb) / 30%);
  --color-black-35: rgb(var(--color-black-rgb) / 35%);
  --color-black-40: rgb(var(--color-black-rgb) / 40%);
  --color-black-50: rgb(var(--color-black-rgb) / 50%);
  --color-black-60: rgb(var(--color-black-rgb) / 60%);
  --color-black-70: rgb(var(--color-black-rgb) / 70%);
  --color-black-80: rgb(var(--color-black-rgb) / 80%);
  --color-black-90: rgb(var(--color-black-rgb) / 90%);
  --color-black-eerie: #1a1a1a;
  --color-white: #fff;
  --color-white-rgb: 255 255 255;
  --color-white-10: rgb(var(--color-white-rgb) / 10%);
  --color-white-20: rgb(var(--color-white-rgb) / 20%);
  --color-white-30: rgb(var(--color-white-rgb) / 30%);
  --color-white-40: rgb(var(--color-white-rgb) / 40%);
  --color-white-50: rgb(var(--color-white-rgb) / 50%);
  --color-white-60: rgb(var(--color-white-rgb) / 60%);
  --color-white-70: rgb(var(--color-white-rgb) / 70%);
  --color-white-80: rgb(var(--color-white-rgb) / 80%);
  --color-white-90: rgb(var(--color-white-rgb) / 90%);
  --color-gray: #c8c8c8;
  --color-gray-sonic-silver: #757575;
  /* Semantic */
  --color-bg: var(--color-white);
  --color-surface: var(--color-white);
  --color-text: var(--color-black-eerie);
  --color-muted: var(--color-gray);
  --color-border: var(--color-gray);
  --color-success: #28a745;
  --color-warning: #ffc107;
  --color-danger: #dc3545;
  --color-info: #17a2b8;
  --color-primary: var(--color-black-eerie);
  /* Transitions */
  --transition-duration: 0.35s;
  --transition-duration-short: 0.25s;
  --transition-duration-long: 0.5s;
  --transition-duration-slow: 0.75s;
  --transition-primary: all var(--transition-duration) ease;
  /* Border Radius */
  --radius-4: 0.25rem;
  --radius-8: 0.5rem;
  --radius-12: 0.75rem;
  --radius-16: 1rem;
  --radius-20: 1.25rem;
  --radius-24: 1.5rem;
  --radius-32: 2rem;
  --radius-36: 2.25rem;
  /* Scrollbar */
  --scrollbar-border-radius: 0;
  --scrollbar-width: 0.5rem;
  --scrollbar-height: 0.5rem;
  --scrollbar-bg-color: var(--color-gray);
  --scrollbar-thumb-color: var(--color-primary);
  /* Selection */
  --selection-bg-color: var(--color-primary);
  --selection-text-color: var(--color-white);
  /* Button */
  --button-border-width: 1px;
  --button-border-style: solid;
  --button-border-color: var(--color-primary);
  --button-border-radius: 0.25rem;
  --button-height: 3rem;
  --button-px: 1rem;
  --button-py: 0.5rem;
  --button-font-size: 1rem;
  --button-font-weight: 400;
  --button-line-height: 1;
  --button-bg-color: var(--color-primary);
  --button-text-color: var(--color-white);
  /* Input */
  --input-border-width: 1px;
  --input-border-style: solid;
  --input-border-color: var(--color-black-15);
  --input-border-radius: 0.75rem;
  --input-height: 3rem;
  --input-px: 1rem;
  --input-py: 0.75rem;
  --input-font-size: 0.9375rem;
  --input-font-weight: 400;
  --input-line-height: 1;
  --input-bg-color: var(--color-white);
  --input-text-color: var(--color-black);
  --input-placeholder-color: var(--color-black-50);
  /* Select */
  --select-border-width: 1px;
  --select-border-style: solid;
  --select-border-color: var(--color-black-15);
  --select-border-radius: 0.75rem;
  --select-height: 3rem;
  --select-px: 1rem;
  --select-py: 0.5rem;
  --select-font-size: 0.9375rem;
  --select-font-weight: 400;
  --select-line-height: 1;
  --select-bg-color: var(--color-white);
  --select-text-color: var(--color-black);
  --select-placeholder-color: var(--color-black-50);
  --select-arrow-icon: var(--icon-chevron-down);
  --grid-1: repeat(1, minmax(0, 1fr));
  --grid-2: repeat(2, minmax(0, 1fr));
  --grid-3: repeat(3, minmax(0, 1fr));
  --grid-4: repeat(4, minmax(0, 1fr));
  --grid-5: repeat(5, minmax(0, 1fr));
  --grid-6: repeat(6, minmax(0, 1fr));
  --grid-7: repeat(7, minmax(0, 1fr));
  --grid-8: repeat(8, minmax(0, 1fr));
  --grid-9: repeat(9, minmax(0, 1fr));
  --grid-10: repeat(10, minmax(0, 1fr));
  --grid-11: repeat(11, minmax(0, 1fr));
  --grid-12: repeat(12, minmax(0, 1fr));
  --grid-1-2: minmax(0, 1fr) minmax(0, 2fr);
  --grid-1-3: minmax(0, 1fr) minmax(0, 3fr);
  --grid-2-1: minmax(0, 2fr) minmax(0, 1fr);
  --grid-2-3: minmax(0, 2fr) minmax(0, 3fr);
  --grid-3-1: minmax(0, 3fr) minmax(0, 1fr);
  --grid-3-2: minmax(0, 3fr) minmax(0, 2fr);
  /* Header */
  --header-height: 5rem;
  /* Section */
  --section-py: clamp(3rem, 2.2rem + 4vw, 7rem);
  /* Spacing scale (4pt) */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  /* z-index layers */
  --z-base: 0;
  --z-section-inner: 10;
  --z-header: 100;
  --z-header-inner: 110;
  --z-dropdown: 900;
  --z-sticky: 1000;
  --z-modal: 1100;
  --z-popover: 1200;
  --z-toast: 1300;
  /* focus ring */
  --focus-ring-offset: 0.125rem;
  --focus-ring-width: 0.125rem;
  --focus-ring-color: var(--color-primary);
  --focus-ring:
    0 0 0 var(--focus-ring-offset) var(--color-bg),
    0 0 0 calc(var(--focus-ring-offset) + var(--focus-ring-width)) var(--focus-ring-color);
}
@supports not (height: 100dvh) {
  :root {
    --viewport-height: 100vh;
    --viewport-width: 100vw;
  }
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --transition-duration: 0s;
  }
}
html {
  line-height: 1;
  -webkit-text-size-adjust: 100%;
  scrollbar-gutter: stable;
}

*,
*::after,
*::before {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

main,
header,
footer {
  display: block;
}

hr {
  overflow: visible;
  height: 0;
}

:where(ul[class]) {
  list-style: none;
}

:where(ul, ol):where([class]) {
  padding-left: 0;
}

a {
  display: inline-block;
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
}

b,
strong {
  font-weight: 700;
}

code,
kbd,
samp {
  font-family: monospace;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub,
sup {
  position: relative;
  vertical-align: baseline;
  font-size: 75%;
  line-height: 0;
}

img {
  vertical-align: middle;
  shape-margin: 1rem;
  height: auto;
  max-width: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  font-size: 0.75rem;
  font-style: italic;
}

video {
  max-width: 100%;
  height: auto;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

legend {
  display: table;
  max-width: 100%;
  white-space: normal;
  color: inherit;
}

textarea {
  overflow: auto;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

[hidden] {
  display: none;
}

[fill] {
  fill: currentColor;
}

[stroke] {
  stroke: currentColor;
}

svg * {
  transition-property: fill, stroke;
}

/**
  Видаляємо анімації і переходи якщо вони вимкнуті 
 */
@media (prefers-reduced-motion: reduce) {
  *,
  ::before,
  ::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
/* ========== UTILS ========== */
/* Avoid content moving on overflow: hidden */
.disable-scroll {
  position: fixed;
  left: 0;
  top: 0;
  overflow: hidden;
  width: 100%;
  height: 100vh;
}

/* Wrapper to prevent horizontal scroll */
/* if you want use position: sticky; - need to remove // overflow: hidden // !!! */
.wrapper {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  min-height: 100svh;
  padding-block-start: var(--header-height);
}
@media (min-width: 62rem) {
  .wrapper--visible {
    overflow: visible;
  }
}
.wrapper > main {
  flex-grow: 1;
}

/* Container */
.container {
  max-width: var(--container);
  margin-inline: auto;
  padding-inline: var(--container-padding);
}
.container--xs {
  max-width: var(--container-xs);
}
.container--sm {
  max-width: var(--container-sm);
}
.container--lg {
  max-width: var(--container-lg);
}
.container--fluid {
  --container: 100%;
}

/* Section offset, immit container */
.offset-container {
  padding-left: max(var(--container-padding), (100vw - var(--content-width)) / 2);
}
@media (max-width: 61rem) {
  .offset-container {
    padding: 0 var(--container-padding);
  }
}

/* Focus State */
:focus-visible {
  outline: 0.125rem dashed var(--color-primary);
  outline-offset: 0.25rem;
  transition-duration: 0s !important;
}

/* Hiding class, making content visible only to screen readers but not visually */
/* "sr" meaning "screen-reader" */
.sr-only:not(:focus, :active) {
  position: absolute;
  clip-path: inset(50%);
  overflow: hidden;
  width: 1px;
  height: 1px;
  white-space: nowrap;
  clip: rect(0 0 0 0);
}

/* будь-який елемент, клас якого містить базовий BEM-елемент `__img`,
  і всередині є <picture><img …></picture> → робимо picture безблочним */
@supports selector(:has(*)) {
  :where([class$=__img], [class*="__img "]) :has(> picture > img) > :where(picture) {
    display: contents;
  }
}
.text-primary {
  color: var(--color-primary);
}

.text-danger {
  color: var(--color-danger);
}

.text-warning {
  color: var(--color-warning);
}

.text-success {
  color: var(--color-success);
}

@media (max-width: 61rem) {
  .pc-only {
    display: none !important;
  }
}

@media (min-width: 62rem) {
  .mobile-only {
    display: none !important;
  }
}

/* ========== HEADER ========== */
.header {
  --header-py: clamp(0.75rem, 0.6rem + 0.75vw, 1.5rem);
  --header-logo-width: clamp(7.75rem, 6.725rem + 5.125vw, 12.875rem);
  position: fixed;
  z-index: var(--z-header);
  width: 100%;
  background-color: var(--color-surface);
  color: var(--color-text);
  transition: box-shadow var(--transition-duration), background-color var(--transition-duration), transform var(--transition-duration);
  inset-block-start: 0;
  inset-inline-start: 0;
}
@media (max-width: 61rem) {
  .header {
    --header-py: 0.75rem;
  }
}
.header._scrolled {
  background-color: var(--color-white);
}
.header._hidden {
  box-shadow: none;
  transform: translateY(-100%);
}
.header__wrap {
  position: relative;
  z-index: var(--z-section-inner);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(1rem, 0.9rem + 0.5vw, 1.5rem);
  padding-block: var(--header-py);
}
.header__logo {
  position: relative;
  z-index: var(--z-header-inner);
  flex: 0 0 var(--header-logo-width);
  transition: opacity var(--transition-duration);
  inline-size: var(--header-logo-width);
}
@media (any-hover: hover) {
  .header__logo:hover {
    opacity: 0.75;
  }
}
.header__logo:focus-visible, .header__logo:active {
  opacity: 0.75;
}
.header__logo picture {
  display: contents;
}
.header__logo img {
  display: block;
  object-fit: contain;
  block-size: auto;
  inline-size: 100%;
}
@media (min-width: 62rem) {
  .header__menu {
    flex: 1 0 auto;
  }
}

/* Adaptive Menu */
.menu {
  --menu-arrow-width: 3rem;
}
@media (min-width: 62rem) {
  .menu__btn {
    display: none;
  }
}
@media (max-width: 61rem) {
  .menu__btn {
    --btn-size: 2.75rem;
    --btn-height: calc(var(--btn-size) * 0.6);
    --btn-line-height: calc(var(--btn-size) * 0.05);
    position: relative;
    z-index: var(--z-header-inner);
    display: block;
    border: none;
    width: var(--btn-size);
    height: var(--btn-height);
    background: none;
    color: var(--color-black);
  }
}
.menu__btn span, .menu__btn::before, .menu__btn::after {
  position: absolute;
  left: 0;
  width: 100%;
  height: var(--btn-line-height);
  background-color: currentcolor;
  transform-origin: center;
}
.menu__btn::before, .menu__btn::after {
  content: "";
}
.menu__btn::before {
  top: 0;
  will-change: top, transform;
  transition: top var(--transition-duration), transform var(--transition-duration);
}
.menu__btn::after {
  bottom: 0;
  will-change: bottom, transform;
  transition: bottom var(--transition-duration), transform var(--transition-duration);
}
.menu__btn[aria-expanded=true]::before {
  top: calc(var(--btn-height) / 2 - var(--btn-line-height) / 2);
  transform: rotate(-45deg);
}
.menu__btn[aria-expanded=true]::after {
  bottom: calc(var(--btn-height) / 2 - var(--btn-line-height) / 2);
  transform: rotate(45deg);
}
.menu__btn[aria-expanded=true] span {
  transform: scale(0);
}
.menu__btn:not(:disabled) {
  cursor: pointer;
}
.menu__btn span {
  top: calc(var(--btn-height) / 2 - var(--btn-line-height) / 2);
  will-change: transform;
  transition: transform var(--transition-duration);
}
.menu__arrow {
  vertical-align: middle;
  border: none;
  background: none;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
  color: inherit;
}
@media (min-width: 62rem) {
  .menu__arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: color var(--transition-duration);
  }
}
@media (max-width: 61rem) {
  .menu__arrow {
    --arrow-width: var(--menu-arrow-width, 3rem);
    display: inline-flex;
    flex: 0 0 var(--arrow-width);
    align-items: center;
    align-self: stretch;
    justify-content: flex-end;
    width: var(--arrow-width);
    height: auto;
    padding-right: 0.5rem;
    font-size: calc(var(--menu-arrow-width) * 0.5);
  }
}
.menu__arrow::before {
  content: var(--icon-chevron-down);
  display: inline-block;
  font-family: var(--font-icons);
  font-size: 60%;
  will-change: transform;
  transition: transform var(--transition-duration);
}
.menu__arrow:not(:disabled) {
  cursor: pointer;
}
.menu__body {
  display: flex;
}
@media (min-width: 62rem) {
  .menu__body {
    align-items: center;
    justify-content: flex-end;
    gap: 0.75rem 2.25rem;
  }
}
@media (max-width: 61rem) {
  .menu__body {
    position: fixed;
    z-index: var(--z-header);
    left: -100%;
    top: 0;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    overflow: hidden auto;
    width: 100%;
    height: 100%;
    padding: calc(var(--header-height, 5rem) + 1.25rem) var(--container-padding) 1.5rem;
    background-color: var(--color-surface);
    color: var(--color-text);
    transition: left 0.5s;
  }
}
@media (max-width: 61rem) {
  .menu__body[data-state=open] {
    left: 0;
  }
}
@media (min-width: 62rem) {
  .menu__list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem 1.5rem;
  }
}
.menu__list > li {
  position: relative;
}
@media (min-width: 62rem) {
  .menu__list > li {
    white-space: nowrap;
  }
}
@media (min-width: 62rem) and (any-hover: hover) {
  .menu__list > li:hover > a {
    color: var(--color-primary);
  }
  .menu__list > li:hover > .menu__arrow {
    color: var(--color-primary);
  }
  .menu__list > li:hover > .menu__arrow::before {
    transform: rotateX(180deg);
  }
  .menu__list > li:hover > .menu__sublist {
    transform: translateY(0%);
    opacity: 1;
    visibility: visible;
    pointer-events: all;
  }
}
@media (max-width: 61rem) {
  .menu__list > li {
    display: flex;
    flex-wrap: wrap;
  }
}
@media (max-width: 61rem) {
  .menu__list > li._active > .menu__sublist {
    grid-template-rows: 1fr;
  }
  .menu__list > li._active > .menu__arrow::before {
    transform: rotateX(180deg);
  }
}
@media (max-width: 61rem) {
  .menu__list > li:not(:last-child) {
    border-block-end: 0.0625rem dashed var(--color-primary);
  }
}
@media (min-width: 62rem) {
  .menu__list > li > a {
    display: inline-block;
    padding: 0.125rem 0.25rem;
    font-size: 1.1875rem;
    font-weight: 600;
    line-height: 1.2;
    text-transform: capitalize;
    transition: opacity var(--transition-duration);
  }
}
@media (min-width: 62rem) and (any-hover: hover) {
  .menu__list > li > a:hover {
    opacity: 0.75;
  }
}
@media (min-width: 62rem) {
  .menu__list > li > a:focus-visible, .menu__list > li > a:active {
    opacity: 0.75;
  }
}
@media (max-width: 61rem) {
  .menu__list > li > a {
    flex: 0 0 calc(100% - var(--menu-arrow-width));
    width: calc(100% - var(--menu-arrow-width));
    padding: 0.75rem 0.25rem;
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.2;
    text-transform: capitalize;
    transition: color var(--transition-duration);
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
}
@media (max-width: 61rem) and (any-hover: hover) {
  .menu__list > li > a:hover {
    color: var(--color-primary);
  }
}
@media (max-width: 61rem) {
  .menu__list > li > a:focus-visible, .menu__list > li > a:active {
    color: var(--color-primary);
  }
}
@media (max-width: 61rem) {
  .menu__list:not(:last-child) {
    margin-block-end: 1.5rem;
  }
}
@media (min-width: 62rem) {
  .menu__sublist {
    position: absolute;
    z-index: var(--z-dropdown);
    left: 0;
    transform: translateY(10%);
    transition: visibility var(--transition-duration), opacity var(--transition-duration), transform var(--transition-duration);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }
}
@media (max-width: 61rem) {
  .menu__sublist {
    display: grid;
    flex: 0 0 100%;
    grid-template-rows: 0fr;
    transition: grid-template-rows var(--transition-duration);
  }
}
.menu__btn-box {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
}
@media (max-width: 61rem) {
  .menu__btn-box {
    flex-direction: column;
    align-items: stretch;
  }
}

/* Adaptive Menu Sublist */
@media (min-width: 62rem) {
  .menu-sublist {
    background-color: var(--color-white);
    box-shadow: 0 0 1rem rgba(0, 0, 0, 0.15);
  }
}
.menu-sublist__inner {
  overflow: hidden;
}
.menu-sublist__pad {
  padding: 0.5rem 0;
}
@media (max-width: 61rem) {
  .menu-sublist__pad {
    padding: 0.25rem 0 0.25rem 0.75rem;
  }
}
@media (max-width: 61rem) {
  .menu-sublist__list > li {
    border-top: 0.0625rem dashed var(--color-primary);
  }
}
.menu-sublist__list > li > a {
  display: block;
  width: 100%;
  min-width: 10rem;
  padding: 0.5rem 1rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.2;
  text-transform: capitalize;
  transition: color var(--transition-duration);
}
@media (any-hover: hover) {
  .menu-sublist__list > li > a:hover {
    color: var(--color-primary);
  }
}
@media (max-width: 61rem) {
  .menu-sublist__list > li > a {
    padding: 0.75rem 0.125rem;
    font-size: 1.25rem;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
}
.menu-sublist__list > li > a:focus-visible, .menu-sublist__list > li > a:active {
  color: var(--color-primary);
}

/* ========== FOOTER ========== */
.footer {
  position: relative;
  display: block;
  overflow: hidden;
  background-color: var(--color-surface);
  color: var(--color-text);
}
.footer__wrap {
  padding-block: clamp(3rem, 2.6rem + 2vw, 5rem);
}
.footer__top:not(:last-child) {
  margin-block-end: clamp(1.5rem, 1.2rem + 1.5vw, 3rem);
}

.footer-top__row {
  display: grid;
  align-items: center;
  gap: 1.5rem;
  grid-template-columns: 1fr auto 1fr;
}
@media (max-width: 61rem) {
  .footer-top__row {
    grid-template-columns: var(--grid-1);
  }
}
@media (max-width: 61rem) {
  .footer-top__logo {
    margin-inline: auto;
  }
}
.footer-top__soc {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: clamp(0.25rem, 0.2rem + 0.25vw, 0.5rem) clamp(0.5rem, 0.3rem + 1vw, 1.5rem);
}
@media (min-width: 62rem) {
  .footer-top__soc {
    justify-content: flex-end;
  }
}
.footer-top__soc > li > a {
  padding: 0.5rem clamp(0.25rem, 0.175rem + 0.375vw, 0.625rem);
  font-size: clamp(1rem, 0.9625rem + 0.1875vw, 1.1875rem);
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none;
  transition: color var(--transition-duration), opacity var(--transition-duration);
}
@media (any-hover: hover) {
  .footer-top__soc > li > a:hover {
    opacity: 0.75;
  }
}

.footer-bottom {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0.02em;
}
.footer-bottom__row {
  display: flex;
  flex-wrap: wrap-reverse;
  align-items: center;
  justify-content: space-between;
  gap: clamp(2.625rem, 2.55rem + 0.375vw, 3rem);
}
.footer-bottom__copyright {
  display: block;
  font-size: 100%;
  opacity: 0.85;
}
@media (max-width: 61rem) {
  .footer-bottom__copyright {
    flex: 0 0 100%;
    text-align: center;
  }
}
.footer-bottom__menu {
  display: flex;
  align-items: center;
  gap: 10ch;
}
@media (max-width: 61rem) {
  .footer-bottom__menu {
    flex: 0 0 100%;
    flex-direction: column;
    justify-self: stretch;
    gap: 1.5rem;
  }
}
.footer-bottom__menu > li > a {
  opacity: 0.85;
  transition: opacity var(--transition-duration);
}
@media (any-hover: hover) {
  .footer-bottom__menu > li > a:hover {
    opacity: 1;
  }
}

.scroll-top-btn {
  border: none;
  background: transparent;
  font-size: clamp(1rem, 0.9625rem + 0.1875vw, 1.1875rem);
  font-weight: 500;
  letter-spacing: 0.02em;
  color: inherit;
  transition: opacity var(--transition-duration), transform var(--transition-duration);
  text-align: center;
}
.scroll-top-btn:not(:disabled) {
  cursor: pointer;
}
@media (any-hover: hover) {
  .scroll-top-btn:not(:disabled):hover {
    opacity: 0.75;
    transform: translateY(-10%);
  }
}

/* Packery Gallery */
.packery-gallery {
  --grid-gap: 0.3125rem;
  --grid-cols-count: 1;
  --grid-item-height-base: clamp(15rem, 13.25rem + 8.75vw, 23.75rem);
  --grid-item-height: calc(var(--grid-item-height-base) * 1);
  margin: calc(var(--grid-gap) / 2 * -1);
}
@media (min-width: 30rem) {
  .packery-gallery {
    --grid-cols-count: 2;
  }
}
@media (min-width: 48rem) {
  .packery-gallery {
    --grid-cols-count: 3;
  }
}
@media (min-width: 62rem) {
  .packery-gallery {
    --grid-cols-count: 4;
  }
}
.packery-gallery__item {
  width: calc(100% / var(--grid-cols-count));
  height: var(--grid-item-height);
  padding: calc(var(--grid-gap) / 2);
}
@media (min-width: 62rem) {
  .packery-gallery__item--w-2x {
    --grid-cols-count: 2;
  }
}
@media (min-width: 48rem) {
  .packery-gallery__item--h-2x {
    --grid-item-height: calc(var(--grid-item-height-base) * 2);
  }
}
.packery-gallery__img {
  position: relative;
  display: block;
  overflow: hidden;
  cursor: zoom-in;
  block-size: 100%;
  inline-size: 100%;
}
@media (any-hover: hover) {
  .packery-gallery__img:hover img {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
    filter: brightness(0.93);
    transform: scale(1.004);
  }
}
.packery-gallery__img picture {
  display: contents;
}
.packery-gallery__img img {
  position: absolute;
  inset: 0;
  object-fit: cover;
  will-change: transform;
  transition: transform var(--transition-duration-slow), filter var(--transition-duration-slow), box-shadow var(--transition-duration-slow);
  block-size: 100%;
  inline-size: 100%;
}

/* ========== BUTTONS ========== */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  vertical-align: top;
  overflow: hidden;
  outline: none;
  border: var(--button-border-width) var(--button-border-style) var(--button-border-color);
  border-radius: var(--button-border-radius);
  min-height: var(--button-height);
  padding: var(--button-py) var(--button-px);
  background: none;
  background-color: var(--button-bg-color);
  font-size: var(--button-font-size, 1rem);
  font-weight: var(--button-font-weight, 400);
  line-height: var(--button-line-height, 1);
  white-space: nowrap;
  text-align: center;
  color: var(--button-text-color);
  transition: border-color var(--transition-duration), background-color var(--transition-duration), box-shadow var(--transition-duration), color var(--transition-duration);
}
a.btn {
  text-decoration: none;
}

button.btn {
  -webkit-appearance: none;
}

.btn:disabled, .btn._disabled {
  opacity: 0.75;
  cursor: default;
  pointer-events: none;
}
@media (any-hover: hover) {
  .btn--primary:hover {
    --button-border-color: var(--color-primary);
    --button-bg-color: transparent;
    --button-text-color: var(--color-primary);
  }
}
.btn--primary:active {
  --button-border-color: var(--color-primary);
  --button-bg-color: transparent;
  --button-text-color: var(--color-primary);
}
.btn:not(:disabled, ._disabled) {
  cursor: pointer;
}
.btn:not(:disabled, ._disabled):focus-visible {
  outline: 0.125rem dashed var(--color-primary);
  outline-offset: 0.25rem;
}
/* ========== INPUTS ========== */
.input input,
.input textarea {
  appearance: none;
  display: block;
  outline: none;
  border: var(--input-border-width) var(--input-border-style) var(--input-border-color);
  border-radius: var(--input-border-radius);
  width: 100%;
  min-height: var(--input-height);
  padding: var(--input-py) var(--input-px);
  background: none;
  background-color: var(--input-bg-color);
  font-size: var(--input-font-size, 1rem);
  font-weight: var(--input-font-weight, 400);
  line-height: var(--input-line-height, 1);
  color: var(--input-text-color);
  resize: none;
  transition: border-color var(--transition-duration), box-shadow var(--transition-duration);
}
.input input.placeholder,
.input textarea.placeholder {
  color: var(--input-placeholder-color);
}
.input input::placeholder,
.input textarea::placeholder {
  color: var(--input-placeholder-color);
}
.input input:placeholder,
.input textarea:placeholder {
  color: var(--input-placeholder-color);
}
.input input::placeholder,
.input textarea::placeholder {
  color: var(--input-placeholder-color);
}
.input input:input-placeholder,
.input textarea:input-placeholder {
  color: var(--input-placeholder-color);
}
.input input::input-placeholder,
.input textarea::input-placeholder {
  color: var(--input-placeholder-color);
}
.input input:disabled, .input input._disabled,
.input textarea:disabled,
.input textarea._disabled {
  opacity: 0.8;
  cursor: default;
}
.input input::-webkit-search-decoration, .input input::-webkit-search-cancel-button, .input input::-webkit-search-results-button, .input input::-webkit-search-results-decoration,
.input textarea::-webkit-search-decoration,
.input textarea::-webkit-search-cancel-button,
.input textarea::-webkit-search-results-button,
.input textarea::-webkit-search-results-decoration {
  display: none;
}
@media (any-hover: hover) {
  .input input:not(:disabled, ._disabled):hover,
  .input textarea:not(:disabled, ._disabled):hover {
    --input-border-color: var(--color-black-35);
  }
}
.input input:not(:disabled, ._disabled):focus-visible,
.input textarea:not(:disabled, ._disabled):focus-visible {
  box-shadow: 0 0 0 0.25rem rgba(0, 0, 0, 0.06);
}
.input input:not(:disabled, ._disabled):active,
.input textarea:not(:disabled, ._disabled):active {
  --input-border-color: var(--color-black-35);
}

/* ========== SELECT ========== */
.select select {
  display: block;
  outline: none;
  border: var(--select-border-width) var(--select-border-style) var(--select-border-color);
  border-radius: var(--select-border-radius);
  width: 100%;
  min-height: var(--select-height);
  padding: var(--select-py) var(--select-px);
  background: none;
  background-color: var(--select-bg-color);
  font-size: var(--select-font-size, 1rem);
  font-weight: var(--select-font-weight, 400);
  line-height: var(--select-line-height, 1);
  color: var(--select-text-color);
  transition: border-color var(--transition-duration);
}
.select select:disabled, .select select._disabled {
  opacity: 0.8;
  cursor: default;
}
@media (any-hover: hover) {
  .select select:not(:disabled, ._disabled):hover {
    --select-border-color: var(--color-black-35);
  }
}
.select select:not(:disabled, ._disabled):focus-visible {
  box-shadow: 0 0 0 0.25rem rgba(0, 0, 0, 0.06);
}
.select select:not(:disabled, ._disabled):active {
  --select-border-color: var(--color-black-35);
}
.select .choices {
  margin-block-end: 0;
  font-size: var(--select-font-size);
  font-weight: var(--select-font-weight);
  line-height: var(--select-line-height);
}
.select .choices[data-type*=select-one]::after {
  content: var(--select-arrow-icon);
  margin-top: 0;
  border: none;
  width: auto;
  height: auto;
  font-family: var(--font-icons);
  transform: translateY(-50%);
}
.select .choices[data-type*=select-one].is-open::after {
  margin-top: 0;
  border: none;
}
.select .choices.is-open .choices__inner {
  border-color: var(--color-primary);
  border-radius: var(--select-border-radius);
}
.select .choices.is-open .choices__list--dropdown {
  border-color: var(--color-primary);
}
.select .choices__inner {
  border: var(--select-border-width) solid var(--select-border-color);
  border-radius: var(--select-border-radius);
  min-height: var(--select-height);
  background-color: var(--select-bg-color);
  font-size: var(--select-font-size);
  font-weight: var(--select-font-weight);
  line-height: var(--select-line-height);
  transition: border-color var(--transition-duration);
}
.select .choices__list--dropdown, .select .choices__list[aria-expanded] {
  border: var(--select-border-width) solid var(--select-border-color);
  border-bottom-right-radius: var(--select-border-radius);
  border-bottom-left-radius: var(--select-border-radius);
  background-color: var(--select-bg-color);
  transition: border-color var(--transition-duration);
}
.select .choices__list--dropdown .choices__item, .select .choices__list[aria-expanded] .choices__item {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: var(--select-py) var(--select-px);
  font-size: var(--select-font-size);
  font-weight: var(--select-font-weight);
  line-height: var(--select-line-height);
  transition: color var(--transition-duration), background-color var(--transition-duration);
}
.select .choices__list--dropdown .choices__item--selectable.is-highlighted, .select .choices__list[aria-expanded] .choices__item--selectable.is-highlighted {
  background-color: var(--color-primary);
  color: var(--color-white);
}
.select .choices__input {
  background: none;
}
.select .choices__placeholder {
  color: var(--select-placeholder-color);
}

/* ========== CHECKBOX ========== */
.checkbox {
  --control-gap: 1rem;
  --control-mark-border-width: 0.0625rem;
  --control-mark-border-color: var(--color-black-15);
  --control-mark-border-radius: 0.25rem;
  --control-mark-size: 1.25rem;
  position: relative;
  display: flex;
  column-gap: var(--control-gap);
  user-select: none;
}
.checkbox.checkbox--sm {
  --control-gap: 0.75rem;
  --control-mark-size: 1.25rem;
}
.checkbox.checkbox--lg {
  --control-gap: 1.25rem;
  --control-mark-size: 1.75rem;
}
.checkbox input[type=checkbox] {
  position: absolute;
  clip-path: inset(50%);
  overflow: hidden;
  width: 1px;
  height: 1px;
  white-space: nowrap;
  clip: rect(0 0 0 0);
}
.checkbox input[type=checkbox]:disabled ~ .checkbox__mark,
.checkbox input[type=checkbox]:disabled ~ .checkbox__text {
  opacity: 0.75;
}
.checkbox input[type=checkbox]:not(:disabled):focus-visible ~ .checkbox__mark {
  outline: 0.125rem solid var(--color-primary);
  outline-offset: 0.125rem;
}
.checkbox input[type=checkbox]:not(:disabled) ~ .checkbox__mark,
.checkbox input[type=checkbox]:not(:disabled) ~ .checkbox__text {
  cursor: pointer;
}
.checkbox input[type=checkbox]:checked ~ .checkbox__mark::after {
  opacity: 1;
  visibility: visible;
  pointer-events: all;
}
.checkbox__mark {
  position: relative;
  display: block;
  flex: 0 0 var(--control-mark-size);
  border: var(--control-mark-border-width) solid var(--control-mark-border-color);
  border-radius: var(--control-mark-border-radius);
  width: var(--control-mark-size);
  height: var(--control-mark-size);
  min-width: var(--control-mark-size);
  transition: border-color var(--transition-duration);
}
.checkbox__mark::after {
  content: "";
  position: absolute;
  left: calc(var(--control-mark-size) * 0.31);
  top: calc(var(--control-mark-size) * 0.05);
  border: solid var(--color-black);
  border-width: 0 calc(var(--control-mark-size) * 0.083) calc(var(--control-mark-size) * 0.083) 0;
  width: calc(var(--control-mark-size) * 0.33);
  height: calc(var(--control-mark-size) * 0.625);
  transform: rotate(45deg);
  transition: visibility var(--transition-duration), opacity var(--transition-duration);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.checkbox__text {
  flex: 1 1 auto;
  align-self: center;
  min-width: 0;
}

/* ========== RADIO ========== */
.radio {
  --control-gap: 1rem;
  --control-mark-border-width: 0.0625rem;
  --control-mark-border-color: var(--color-black);
  --control-mark-size: 1.5rem;
  position: relative;
  display: flex;
  column-gap: var(--control-gap);
  user-select: none;
}
@media (any-hover: hover) {
  .radio:hover:has(input:not(:disabled)) {
    --control-mark-border-color: var(--color-primary);
  }
}
.radio.radio--sm {
  --control-gap: 0.75rem;
  --control-mark-size: 1.25rem;
}
.radio.radio--lg {
  --control-gap: 1.25rem;
  --control-mark-size: 1.75rem;
}
.radio input[type=radio] {
  position: absolute;
  clip-path: inset(50%);
  overflow: hidden;
  width: 1px;
  height: 1px;
  white-space: nowrap;
  clip: rect(0 0 0 0);
}
.radio input[type=radio]:disabled ~ .radio__mark,
.radio input[type=radio]:disabled ~ .radio__text {
  opacity: 0.75;
}
.radio input[type=radio]:not(:disabled):focus-visible ~ .radio__mark {
  outline: 0.125rem solid var(--color-primary);
  outline-offset: 0.125rem;
}
.radio input[type=radio]:not(:disabled) ~ .radio__mark,
.radio input[type=radio]:not(:disabled) ~ .radio__text {
  cursor: pointer;
}
.radio input[type=radio]:checked ~ .radio__mark::after {
  transform: translate(-50%, -50%) scale(1);
}
.radio__mark {
  position: relative;
  display: block;
  flex: 0 0 var(--control-mark-size);
  border: var(--control-mark-border-width) solid var(--control-mark-border-color);
  border-radius: var(--control-mark-size);
  width: var(--control-mark-size);
  height: var(--control-mark-size);
  min-width: var(--control-mark-size);
  background-color: var(--color-white);
  transition: border-color var(--transition-duration);
}
.radio__mark::after {
  --size: 60%;
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  border-radius: var(--size);
  width: var(--size);
  height: var(--size);
  background-color: var(--color-primary);
  transform: translate(-50%, -50%) scale(0);
  will-change: transform;
  transition: transform var(--transition-duration);
}
.radio__text {
  flex: 1 1 auto;
  align-self: center;
  min-width: 0;
}

/* Contact Form */
.contact-form {
  display: block;
}
.contact-form__body:not(:last-child) {
  margin-block-end: var(--space-6);
}
.contact-form__row {
  display: grid;
  gap: 1rem;
  grid-template-columns: var(--grid-2);
}
@media (max-width: 61rem) {
  .contact-form__row {
    grid-template-columns: var(--grid-1);
  }
}
.contact-form__col--full {
  grid-column: 1/-1;
}
.contact-form__label {
  display: block;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.2;
}
.contact-form__label:not(:last-child) {
  margin-block-end: 0.375rem;
}
.contact-form__checkboxes {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3) var(--space-8);
}

.section__wrap {
  position: relative;
  z-index: var(--z-section-inner);
  padding-block: var(--section-py);
}
.section__header {
  --mb: 1.25rem;
}
.section__header:not(:last-child) {
  margin-block-end: var(--mb);
}
.section__body {
  --mb: 2rem;
}
.section__body:not(:last-child) {
  margin-block-end: var(--mb);
}
.section__body > *:not(:last-child) {
  margin-block-end: 1rem;
}
.section__btn-box {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

/* ========== Section Hero ========== */
.hero {
  --hero-py: 3rem;
}
.hero__wrap {
  padding-block: var(--hero-py);
}
.hero__header {
  --mb: 1rem;
}
.hero__header:not(:last-child) {
  margin-block-end: var(--mb);
}
.hero__body {
  --mb: 1.5rem;
}
.hero__body:not(:last-child) {
  margin-block-end: var(--mb);
}
.hero__btn-box {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

/* Section Clients */
.section-clients {
  position: relative;
  overflow: hidden;
}
.section-clients__wrap {
  padding-block: var(--section-py);
}
.section-clients__header:not(:last-child) {
  margin-block-end: clamp(2.5rem, 2.2rem + 1.5vw, 4rem);
}
.section-clients__title {
  font-size: clamp(1.25rem, 1.1875rem + 0.3125vw, 1.5625rem);
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0.2px;
}
@media (max-width: 61rem) {
  .section-clients__title {
    text-align: center;
  }
}
.section-clients__list {
  display: grid;
  place-items: center center;
  gap: clamp(1.5rem, 1.35rem + 0.75vw, 2.25rem);
  grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
}
@media (any-hover: hover) {
  .section-clients__img:hover img {
    opacity: 1;
    filter: grayscale(0%);
    transform: scale(1.05);
  }
}
.section-clients__img img {
  display: block;
  object-fit: contain;
  opacity: 0.8;
  filter: grayscale(100%);
  will-change: transform, filter;
  transition: opacity var(--transition-duration), transform var(--transition-duration);
  block-size: auto;
  inline-size: auto;
  max-block-size: 4rem;
  max-inline-size: 9.375rem;
}

/* Section Contact */
.section-contact__wrap {
  padding-block: clamp(2rem, 1.6rem + 2vw, 4rem);
}
.section-contact__row {
  --col-width: 100%;
  --col-gap: clamp(1.5rem, 1.4rem + 0.5vw, 2rem);
  display: flex;
  flex-wrap: wrap;
  margin-inline: calc(var(--col-gap) / 2 * -1);
  row-gap: var(--col-gap);
}
@media (min-width: 62rem) {
  .section-contact__row {
    --col-width: 50%;
  }
}
.section-contact__col {
  flex: 0 0 var(--col-width);
  max-width: var(--col-width);
  padding-inline: calc(var(--col-gap) / 2);
}
.section-contact__img {
  position: relative;
  overflow: hidden;
  padding-block-end: 56%;
  min-block-size: 100%;
}
.section-contact__img picture {
  display: contents;
}
.section-contact__img img {
  position: absolute;
  inset: 0;
  object-fit: cover;
  block-size: 100%;
  inline-size: 100%;
}

/* Typography */
a[x-apple-data-detectors] {
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  text-decoration: none !important;
  color: inherit !important;
}

a:not(.menu__btn)[aria-label],
button:not(.menu__btn)[aria-label] {
  position: relative;
}
a:not(.menu__btn)[aria-label]::after,
button:not(.menu__btn)[aria-label]::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: 2.75rem;
  height: 2.75rem;
}

picture {
  display: inline-block;
}
picture img {
  vertical-align: middle;
}

code {
  border: 1px dashed #999;
  border-radius: 0.2rem;
  padding: 0.1rem 0.3rem 0.2rem;
  background: #fff3f4;
  box-decoration-break: clone;
  word-wrap: break-word;
}

:where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6) {
  font-family: var(--display-font-family);
  text-wrap: balance;
}
:where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6)[id] {
  scroll-margin-top: var(--heading-anchor-offset);
}

:where(h1, .h1) {
  font-size: var(--h1-font-size);
  font-weight: var(--h1-font-weight);
  line-height: var(--h1-line-height);
  letter-spacing: var(--h1-letter-spacing);
}

:where(h2, .h2) {
  font-size: var(--h2-font-size);
  font-weight: var(--h2-font-weight);
  line-height: var(--h2-line-height);
  letter-spacing: var(--h2-letter-spacing);
}

:where(h3, .h3) {
  font-size: var(--h3-font-size);
  font-weight: var(--h3-font-weight);
  line-height: var(--h3-line-height);
  letter-spacing: var(--h3-letter-spacing);
}

:where(h4, .h4) {
  font-size: var(--h4-font-size);
  font-weight: var(--h4-font-weight);
  line-height: var(--h4-line-height);
  letter-spacing: var(--h4-letter-spacing);
}

:where(h5, .h5) {
  font-size: var(--h5-font-size);
  font-weight: var(--h5-font-weight);
  line-height: var(--h5-line-height);
  letter-spacing: var(--h5-letter-spacing);
}

:where(h6, .h6) {
  font-size: var(--h6-font-size);
  font-weight: var(--h6-font-weight);
  line-height: var(--h6-line-height);
  letter-spacing: var(--h6-letter-spacing);
}

@supports not (text-wrap: balance) {
  :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6) {
    overflow-wrap: anywhere;
  }
}
/* Description Text */
.desc-text {
  --text-font-size: 1rem;
  --text-font-weight: var(--body-font-weight);
  --text-line-height: var(--body-line-height);
  --text-letter-spacing: var(--body-letter-spacing);
  --text-flow-spacing: 1em;
  --text-paragraph-spacing: 1em;
  --text-list-spacing: 1em;
  --text-list-indent-spacing: 1.25em;
  --text-list-item-spacing: 0.25em;
  --text-blockquote-indent-spacing: 1em;
  overflow-wrap: anywhere;
  font-size: var(--text-font-size);
  font-weight: var(--text-font-weight);
  line-height: var(--text-line-height);
  letter-spacing: var(--text-letter-spacing);
  hyphens: auto;
}
.desc-text--lg {
  --text-font-size: clamp(1rem, 0.975rem + 0.125vw, 1.125rem);
}
.desc-text > :is(ul, ol) {
  margin-block: var(--text-list-spacing);
  padding-inline-start: var(--text-list-indent-spacing);
}
.desc-text :is(ul, ol) > li + li {
  margin-block-start: var(--text-list-item-spacing);
}
.desc-text a:not([class]) {
  text-decoration: underline;
}
@media (any-hover: hover) {
  .desc-text a:not([class]):hover {
    text-decoration: none;
  }
}
.desc-text span[style*=font-weight] {
  font-weight: inherit !important;
}
.desc-text blockquote {
  border-inline-start: 0.125rem solid var(--color-primary);
  padding-inline-start: var(--text-blockquote-indent-spacing);
}
.desc-text strong,
.desc-text b {
  font-weight: 700;
}
.desc-text em,
.desc-text i {
  font-style: italic;
}
:where(.desc-text) > :where(* + *) {
  margin-block-start: var(--text-flow-spacing);
}

/* stylelint-disable declaration-no-important */
/* ========== GLOBALS ========== */
/* Body */
body {
  background-color: var(--color-bg);
  font-family: var(--body-font-family);
  font-size: var(--body-font-size);
  font-weight: var(--body-font-weight);
  line-height: var(--body-line-height);
  color: var(--color-text);
}
body:has(.preloader) {
  overflow: hidden;
}

/* Scrollbars */
*::-webkit-scrollbar {
  border-radius: var(--scrollbar-border-radius);
  width: var(--scrollbar-width);
  height: var(--scrollbar-width);
}
*::-webkit-scrollbar-thumb {
  background: var(--scrollbar-thumb-color);
  border-radius: var(--scrollbar-border-radius);
}
*::-webkit-scrollbar-track {
  border-radius: var(--scrollbar-border-radius);
  background: var(--scrollbar-bg-color);
}
* {
  scrollbar-face-color: var(--scrollbar-thumb-color);
  scrollbar-track-color: var(--scrollbar-bg-color);
}

/* Selection */
::selection {
  background-color: var(--selection-bg-color);
  color: var(--selection-text-color);
}

/* Scrolling Target */
:target {
  scroll-margin-top: var(--header-height);
}

/* Pages List */
.pages-list {
  --list-indent-spacing: 2em;
  --list-item-spacing: 0.5rem;
  padding-inline-start: var(--list-indent-spacing);
}
.pages-list > li:not(:last-child) {
  margin-block-end: var(--list-item-spacing);
}
.pages-list > li > a {
  text-decoration: underline;
  transition: color var(--transition-duration);
}
@media (any-hover: hover) {
  .pages-list > li > a:hover {
    color: var(--color-primary);
  }
}

/* ========== HERO HOME ========== */
.hero-home {
  --hero-py: clamp(4rem, 3rem + 5vw, 9rem);
  position: relative;
  overflow: hidden;
  background-color: var(--color-surface);
}
.hero-home__wrap {
  display: grid;
  align-items: center;
  gap: clamp(2rem, 1.5rem + 2.5vw, 4rem);
  padding-block-start: 0;
  padding-block-end: var(--hero-py);
  grid-template-columns: 1fr;
}
@media (min-width: 62rem) {
  .hero-home__wrap {
    grid-template-columns: 1fr 1.1fr;
  }
}
.hero-home__content {
  position: relative;
  z-index: 2;
}
.hero-home__header:not(:last-child) {
  margin-block-end: clamp(1.5rem, 1.2rem + 1.5vw, 3rem);
}
.hero-home__title {
  font-size: clamp(2.5rem, 1.8rem + 3.5vw, 6rem);
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -0.03em;
  text-transform: uppercase;
}
.hero-home__title-line {
  display: block;
}
.hero-home__title-line--accent {
  color: var(--color-gray-sonic-silver);
  font-weight: 300;
  font-style: italic;
}
.hero-home__body:not(:last-child) {
  margin-block-end: clamp(1.5rem, 1.2rem + 1.5vw, 2.5rem);
}
.hero-home__text {
  max-width: 32ch;
  font-size: clamp(1rem, 0.95rem + 0.25vw, 1.25rem);
  font-weight: 400;
  line-height: 1.6;
  color: var(--color-gray-sonic-silver);
}
.hero-home__footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1.5rem 2.5rem;
}
.hero-home__scroll-link {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  font-size: 0.9375rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--color-gray-sonic-silver);
  transition: color var(--transition-duration);
}
@media (any-hover: hover) {
  .hero-home__scroll-link:hover {
    color: var(--color-primary);
  }
  .hero-home__scroll-link:hover .hero-home__scroll-icon {
    transform: translateY(25%);
  }
}
.hero-home__scroll-icon {
  position: relative;
  display: block;
  width: 1px;
  height: 2rem;
  background-color: currentColor;
  transition: transform var(--transition-duration);
}
.hero-home__scroll-icon::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  width: 0.5rem;
  height: 0.5rem;
  border-right: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
}
.hero-home__visual {
  position: relative;
}
.hero-home__img {
  position: relative;
  overflow: hidden;
  aspect-ratio: 4/3;
}
@media (min-width: 62rem) {
  .hero-home__img {
    aspect-ratio: auto;
    height: clamp(25rem, 20rem + 25vw, 45rem);
  }
}
.hero-home__img picture {
  display: contents;
}
.hero-home__img img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hero-home__stats {
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  gap: 0;
  background-color: var(--color-white);
}
@media (max-width: 61rem) {
  .hero-home__stats {
    position: relative;
    margin-top: 1rem;
    justify-content: center;
  }
}
.hero-home__stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: clamp(1rem, 0.8rem + 1vw, 1.5rem) clamp(1.25rem, 1rem + 1.25vw, 2rem);
  border-right: 1px solid var(--color-black-10);
}
.hero-home__stat:last-child {
  border-right: none;
}
.hero-home__stat-value {
  font-size: clamp(1.5rem, 1.3rem + 1vw, 2.5rem);
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.02em;
}
.hero-home__stat-label {
  margin-top: 0.25rem;
  font-size: 0.75rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--color-gray-sonic-silver);
}

/* ========== ABOUT HOME ========== */
.about-home {
  --about-py: clamp(4rem, 3rem + 5vw, 8rem);
  position: relative;
  overflow: hidden;
  background-color: var(--color-black-eerie);
  color: var(--color-white);
}
.about-home__wrap {
  padding-block: var(--about-py);
}
.about-home__row {
  display: grid;
  gap: clamp(2.5rem, 2rem + 2.5vw, 5rem);
  grid-template-columns: 1fr;
}
@media (min-width: 62rem) {
  .about-home__row {
    grid-template-columns: 1fr 1fr;
    align-items: start;
  }
}
.about-home__col--content {
  position: relative;
  z-index: 2;
}
@media (min-width: 62rem) {
  .about-home__col--content {
    padding-block: 2rem;
  }
}
.about-home__header:not(:last-child) {
  margin-block-end: clamp(1.5rem, 1.2rem + 1.5vw, 2.5rem);
}
.about-home__label {
  display: inline-block;
  margin-block-end: 1rem;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  color: var(--color-white-60);
}
.about-home__title {
  font-size: clamp(1.75rem, 1.4rem + 1.75vw, 3.5rem);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -0.02em;
}
.about-home__body:not(:last-child) {
  margin-block-end: clamp(2rem, 1.6rem + 2vw, 3.5rem);
}
.about-home__body.desc-text {
  --text-font-size: clamp(0.9375rem, 0.9rem + 0.1875vw, 1.0625rem);
  --text-line-height: 1.7;
  color: var(--color-white-70);
}
.about-home__features {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.about-home__feature {
  display: flex;
  align-items: flex-start;
  gap: 1.25rem;
  padding-block: 1rem;
  border-top: 1px solid var(--color-white-20);
}
.about-home__feature-icon {
  flex-shrink: 0;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1;
  color: var(--color-white-40);
}
.about-home__feature-content {
  flex: 1;
  min-width: 0;
}
.about-home__feature-title {
  margin-block-end: 0.375rem;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.3;
}
.about-home__feature-text {
  font-size: 0.875rem;
  line-height: 1.5;
  color: var(--color-white-60);
}
.about-home__col--media {
  position: relative;
  display: grid;
  gap: 1rem;
  grid-template-columns: 1fr;
}
@media (max-width: 61rem) {
  .about-home__col--media {
    order: -1;
  }
}
.about-home__img {
  position: relative;
  overflow: hidden;
}
.about-home__img picture {
  display: contents;
}
.about-home__img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.about-home__img--main {
  aspect-ratio: 1;
}
@media (max-width: 61rem) {
  .about-home__img--main {
    aspect-ratio: 5/4;
  }
}
.about-home:not(:last-child) {
  margin-block-end: clamp(3rem, 2.4rem + 3vw, 6rem);
}

/* ========== SECTION GALLERY ========== */
.section-gallery__header {
  padding-block: clamp(3rem, 2.4rem + 3vw, 5rem);
  text-align: center;
}
.section-gallery__label {
  display: inline-block;
  margin-block-end: 0.75rem;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  color: var(--color-gray-sonic-silver);
}
.section-gallery__title {
  font-size: clamp(2rem, 1.6rem + 2vw, 4rem);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.02em;
}
.section-gallery__title:not(:last-child) {
  margin-block-end: clamp(0.75rem, 0.6rem + 0.75vw, 1.5rem);
}
.section-gallery__text {
  max-width: 50ch;
  margin-inline: auto;
  font-size: clamp(1rem, 0.95rem + 0.25vw, 1.125rem);
  line-height: 1.6;
  color: var(--color-gray-sonic-silver);
}