﻿/* Homepage product banner slider — five product groups, one clear focal image. */
.home-page .tp-home-showcase{
  position:relative;
  height:620px;
  padding:10px;
  isolation:isolate;
  overflow:hidden;
  border:1px solid rgba(23,51,47,.09);
  border-radius:30px;
  background:linear-gradient(145deg,#eef5f2,#fff9ed);
  box-shadow:0 24px 60px rgba(18,54,48,.13),inset 0 1px 0 rgba(255,255,255,.9);
}
.home-page .tp-home-showcase:before{
  content:"";
  position:absolute;
  inset:-25%;
  z-index:-1;
  background:radial-gradient(circle at 18% 15%,rgba(255,255,255,.95),transparent 30%),radial-gradient(circle at 90% 85%,rgba(146,190,176,.28),transparent 38%);
}
.home-page .tp-slider-viewport{
  position:relative;
  width:100%;
  height:100%;
  overflow:hidden;
  border-radius:22px;
  background:#dce8e4;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.5);
  touch-action:pan-y;
}
.home-page .tp-product-slide{
  position:absolute;
  inset:0;
  display:block;
  overflow:hidden;
  color:#fff;
  text-decoration:none;
  opacity:0;
  visibility:hidden;
  transform:scale(1.025);
  transition:opacity .52s ease,visibility .52s ease,transform 1.35s cubic-bezier(.2,.7,.2,1);
}
.home-page .tp-product-slide.is-active{
  z-index:1;
  opacity:1;
  visibility:visible;
  transform:scale(1);
}
.home-page .tp-product-slide:focus-visible{outline:4px solid #f4792c;outline-offset:-7px}
.home-page .tp-product-slide img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(1.04) contrast(1.02);
  transition:transform 5s ease;
}
.home-page .tp-product-slide.is-active img{transform:scale(1.025)}
.home-page .tp-slide-shade{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(7,31,28,.78) 0%,rgba(7,31,28,.46) 38%,rgba(7,31,28,.08) 68%,rgba(7,31,28,.04) 100%),linear-gradient(0deg,rgba(7,31,28,.46),transparent 45%);
  pointer-events:none;
}
.home-page .tp-slide-content{
  position:absolute;
  left:34px;
  bottom:34px;
  z-index:2;
  display:block;
  width:min(430px,calc(100% - 190px));
  padding:22px 24px;
  border:1px solid rgba(255,255,255,.35);
  border-radius:20px;
  background:rgba(9,43,38,.78);
  box-shadow:0 18px 42px rgba(4,25,22,.25);
  backdrop-filter:blur(13px);
  -webkit-backdrop-filter:blur(13px);
  transform:translateY(12px);
  opacity:0;
  transition:opacity .42s ease .12s,transform .42s ease .12s;
}
.home-page .tp-product-slide.is-active .tp-slide-content{opacity:1;transform:translateY(0)}
.home-page .tp-slide-content small{
  display:block;
  margin-bottom:7px;
  color:#ffad76;
  font-size:10px;
  font-style:normal;
  font-weight:850;
  letter-spacing:.13em;
  line-height:1.25;
}
.home-page .tp-slide-content strong{
  display:block;
  color:#fff;
  font-size:29px;
  font-weight:850;
  line-height:1.08;
  letter-spacing:-.025em;
}
.home-page .tp-slide-content em{
  display:block;
  margin-top:9px;
  color:#dceae5;
  font-size:13px;
  font-style:normal;
  line-height:1.48;
}
.home-page .tp-slide-content b{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-top:16px;
  color:#fff;
  font-size:12px;
  font-weight:800;
}
.home-page .tp-slide-content b i{
  display:grid;
  place-items:center;
  width:31px;
  height:31px;
  border-radius:50%;
  background:#f4792c;
  color:#fff;
  font-size:14px;
  font-style:normal;
  transition:transform .22s ease,background .22s ease;
}
.home-page .tp-product-slide:hover .tp-slide-content b i{transform:translateX(3px);background:#ff8d45}
.home-page .tp-slider-badge{
  position:absolute;
  top:30px;
  left:30px;
  z-index:3;
  min-width:178px;
  padding:14px 17px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:17px;
  background:rgba(10,54,47,.91);
  color:#fff;
  box-shadow:0 15px 34px rgba(5,29,25,.25);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.home-page .tp-slider-badge span{display:block;color:#aed0c5;font-size:7px;font-weight:850;letter-spacing:.13em}
.home-page .tp-slider-badge strong{display:block;margin-top:5px;color:#fff;font-size:16px;line-height:1.15}
.home-page .tp-slider-badge small{display:block;margin-top:4px;color:#d4e5df;font-size:9px}
.home-page .tp-slider-controls{
  position:absolute;
  right:30px;
  bottom:30px;
  z-index:4;
  display:flex;
  align-items:center;
  gap:9px;
  padding:7px;
  border:1px solid rgba(255,255,255,.42);
  border-radius:999px;
  background:rgba(255,255,255,.9);
  box-shadow:0 13px 34px rgba(8,35,31,.2);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.home-page .tp-slider-arrow{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  padding:0;
  border:0;
  border-radius:50%;
  background:#e8f0ed;
  color:#143c35;
  font:700 22px/1 Arial,sans-serif;
  cursor:pointer;
  transition:background .2s ease,color .2s ease,transform .2s ease;
}
.home-page .tp-slider-arrow:hover{background:#143c35;color:#fff;transform:scale(1.04)}
.home-page .tp-slider-arrow:focus-visible,.home-page .tp-slider-dots button:focus-visible{outline:3px solid #f4792c;outline-offset:2px}
.home-page .tp-slider-dots{display:flex;align-items:center;gap:6px;padding:0 2px}
.home-page .tp-slider-dots button{
  width:7px;
  height:7px;
  padding:0;
  border:0;
  border-radius:99px;
  background:#aabbb5;
  cursor:pointer;
  transition:width .24s ease,background .24s ease;
}
.home-page .tp-slider-dots button.is-active{width:24px;background:#f4792c}
.home-page .tp-slider-progress{
  position:absolute;
  left:30px;
  right:30px;
  bottom:10px;
  z-index:4;
  height:3px;
  overflow:hidden;
  border-radius:99px;
  background:rgba(255,255,255,.28);
}
.home-page .tp-slider-progress span{display:block;width:100%;height:100%;border-radius:inherit;background:#f4792c;transform:scaleX(0);transform-origin:left center}
.home-page .tp-product-slider.is-running .tp-slider-progress span{animation:tpSliderProgress 1.5s linear forwards}
.home-page .tp-product-slider.is-paused .tp-slider-progress span{animation-play-state:paused}
@keyframes tpSliderProgress{to{transform:scaleX(1)}}
@media(min-width:1101px) and (max-width:1599px){body.home-page .tp-floating-contact{transform:translate(170px,-50%)}body.home-page .tp-floating-contact:hover,body.home-page .tp-floating-contact:focus-within{transform:translate(0,-50%)}}
@media(max-width:1120px){
  .home-page .tp-home-showcase{width:min(100%,780px);height:580px;margin-inline:auto}
  .home-page .tp-slide-content{width:min(430px,calc(100% - 170px))}
}
@media(max-width:680px){
  .home-page .tp-home-showcase{height:470px;padding:7px;border-radius:24px}
  .home-page .tp-slider-viewport{border-radius:18px}
  .home-page .tp-slide-shade{background:linear-gradient(0deg,rgba(7,31,28,.84) 0%,rgba(7,31,28,.34) 54%,rgba(7,31,28,.08) 100%)}
  .home-page .tp-product-slide img{object-position:center}
  .home-page .tp-slider-badge{top:19px;left:19px;min-width:145px;padding:11px 13px;border-radius:14px}
  .home-page .tp-slider-badge strong{font-size:13px}
  .home-page .tp-slider-badge small{font-size:8px}
  .home-page .tp-slide-content{left:19px;right:19px;bottom:78px;width:auto;padding:15px 16px;border-radius:15px}
  .home-page .tp-slide-content small{margin-bottom:5px;font-size:7.5px}
  .home-page .tp-slide-content strong{font-size:21px}
  .home-page .tp-slide-content em{margin-top:6px;font-size:11px;line-height:1.4}
  .home-page .tp-slide-content b{margin-top:10px;font-size:10px}
  .home-page .tp-slide-content b i{width:27px;height:27px}
  .home-page .tp-slider-controls{right:19px;bottom:20px;padding:5px;gap:7px}
  .home-page .tp-slider-arrow{width:30px;height:30px;font-size:19px}
  .home-page .tp-slider-dots{gap:5px}
  .home-page .tp-slider-dots button{width:6px;height:6px}
  .home-page .tp-slider-dots button.is-active{width:18px}
  .home-page .tp-slider-progress{left:19px;right:19px;bottom:8px}
}
@media(max-width:420px){
  .home-page .tp-home-showcase{height:430px}
  .home-page .tp-slide-content{bottom:72px}
  .home-page .tp-slide-content em{display:none}
  .home-page .tp-slide-content strong{font-size:20px}
}
@media(prefers-reduced-motion:reduce){
  .home-page .tp-product-slide,.home-page .tp-product-slide img,.home-page .tp-slide-content,.home-page .tp-slide-content b i{transition:none!important;animation:none!important}
  .home-page .tp-slider-progress{display:none}
}