@charset "UTF-8";
/*-----------------------------------------------------------------------------------
-----------------------------------------------------------------------------------*/
/* Variables
-----------------------------------------------------------------*/
:root {
  --base-color: #0011FF;
  --white: #ffffff;
  --black: #000000;
  --alt-black: #111111;
  --red: #dc3131;
  --light-red: #feedec;
  --light-yellow: #F9FFE3;
  --light-green: #D3F4DA;
  --green: #2ebb79;
  --crusoe-green: #AFFF54;
  --yellow: #F9DB57;
  --dark-gray: #232323;
  --medium-gray: #717580;
  --extra-medium-gray: #BEBEBE;
  --light-gray: #a8a8a8;
  --very-light-gray: #f7f7f7;
  --light-medium-gray: #eaeaeb;
  --charcoal-blue: #202329;
  --slate-blue: #262b35;
  --medium-slate-blue: #374162;
  --extra-medium-slate-blue: #23262d;
  --dark-slate-blue: #1f232c;
  --extra-dark-slate-blue: #121418;
  --extra-very-slate-blue: #1b1b1b;
  --tussock-yellow: #FDE133;
  --aluminium-grey:#80858F;
  --solitude-blue:#f0f4fd;
  --golden-yellow:#fd961e;
  --selago:#eaedff;
  --white-ice:#d8f5ef;
  --cornflower-blue:#445fed;
  --jade:#00AF6B;
  --orange: #ef991f;
  --majorelle-blue: #8088E6;
  --light-majorelle-blue: #f2edfe;
  --spring-wood: #f9f6f3;
  --tropical-blue: #2A51E6;
  --camarone: #85EE00;
  --seal-brown: #0e0708;
  --Wasabi: #8ea63a; }

/* ===================================
    03. Reset
====================================== */


html {
  font-size: 16px; 
}
  

body {
  

  
  /* Hlavný fix pre kývanie */
  overflow-x: hidden;
  /* Povolí len vertikálny pohyb (hore/dole) na dotykových displejoch */
  touch-action: pan-y;
  /* Fix pre iPhone - zakáže horizontálne odrážanie (bounce) */
  position: relative;
  width: 100%;
  margin: 0;
  padding: 0;
  /* Zabezpečí, že texty nebudú pretekať */
  word-wrap: break-word;
  font-family: "Poppins", sans-serif;
  font-size: 16px;
  line-height: 1.2;
  font-weight: 400;
  
  background: #0e0e0e;
  color: #e0e0e0;
  -moz-osx-font-smoothing: grayscale;
  word-break: break-word;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden !important; }
  body .sub-bg {
    background: #1f1f1f; }
  body.creative-agency {
    font-family: "Inter", sans-serif;
    color: #e0eeee; }
    body.creative-agency h1, body.creative-agency h2, body.creative-agency h3, body.creative-agency h4, body.creative-agency h5, body.creative-agency h6 {
      font-family: "Boldonse", system-ui;
      line-height: 1.7; }
    body.creative-agency p {
      color: #e0eeee; }
  body.design-agency .main-color, body.marketing-agency .main-color, body.creative-portfolio .main-color, body.freelancer .main-color {
    color: #FF6A3A; }
  body.design-agency .bg-main-color, body.marketing-agency .bg-main-color, body.creative-portfolio .bg-main-color, body.freelancer .bg-main-color {
    background: #FF6A3A; }
  body.creative-portfolio h1, body.creative-portfolio h2, body.creative-portfolio h3, body.creative-portfolio h4, body.creative-portfolio h5, body.creative-portfolio h6, body.freelancer h1, body.freelancer h2, body.freelancer h3, body.freelancer h4, body.freelancer h5, body.freelancer h6 {
    font-family: "Bricolage Grotesque", sans-serif; }
  body.design-agency, body.freelancer {
    font-family: "Sora", sans-serif; }
  body.startup-agency {
    font-family: "Unbounded", sans-serif; }
    body.startup-agency .main-color {
      color: #FF6A3A; }
    body.startup-agency .bg-main-color {
      background: #FF6A3A; }
    body.startup-agency .sm-title-dot:before {
      background: #FF6A3A; }
    body.startup-agency p {
      font-family: "Poppins", sans-serif; }
  body .lines {
    position: fixed;
    top: 0;
    height: 100%;
    width: 90%;
    left: 5%;
    border-right: 1px solid rgba(255, 255, 255, 0.1);
    border-left: 1px solid rgba(255, 255, 255, 0.1);
    opacity: .3; }
    body .lines:after, body .lines:before {
      content: '';
      position: absolute;
      top: 0;
      left: 20%;
      width: 20%;
      height: 100%;
      border-right: 1px solid rgba(255, 255, 255, 0.1);
      border-left: 1px solid rgba(255, 255, 255, 0.1);
      z-index: -1;
      pointer-events: none; }
    body .lines:before {
      left: auto;
      right: 20%; }
  body .blur-div {
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    bottom: 0;
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
    height: 100px;
    left: 0;
    -webkit-mask: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(black)) add;
    -webkit-mask: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, black 100%) add;
    mask: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(black)) add;
    mask: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, black 100%) add;
    overflow: visible;
    position: fixed;
    right: 0;
    pointer-events: none;
    z-index: 999; }

    body {
      /* Hlavný fix pre kývanie */
      overflow-x: hidden;
      /* Povolí len vertikálny pohyb (hore/dole) na dotykových displejoch */
      touch-action: pan-y;
      /* Fix pre iPhone - zakáže horizontálne odrážanie (bounce) */
      position: relative;
      width: 100%;
      margin: 0;
      padding: 0;
      /* Zabezpečí, že texty nebudú pretekať */
      word-wrap: break-word;
      font-family: "Poppins", sans-serif;
      font-size: 16px;
      line-height: 1.2;
      font-weight: 400;
      
      /* --- PRÉMIOVÝ TEMNÝ GRADIENT S FARBOU #FE002E --- */
      background-color: #050505; /* Hlboká čierna ako základ */
      background-image: 
        radial-gradient(ellipse at top left, rgba(254, 0, 46, 0.12) 0%, transparent 60%),
        radial-gradient(ellipse at bottom right, rgba(254, 0, 46, 0.08) 0%, transparent 50%);
      background-attachment: fixed; /* Zafixuje glow efekt na mieste pri scrollovaní */
      /* -------------------------------------- */
    
      color: #e0e0e0;
      -moz-osx-font-smoothing: grayscale;
      word-break: break-word;
      -webkit-font-smoothing: antialiased;
      overflow-x: hidden !important; 
    }

.play-text {
  font-family: "Playfair Display", serif;
  font-style: italic;
  font-weight: 400; }

section {
  padding-top: 100px;
  padding-bottom: 60px; }
  section.half-section {
    padding-top: 70px;
    padding-bottom: 70px; }
  section.big-section {
    padding-top: 140px;
    padding-bottom: 140px; }
  section.extra-big-section {
    padding-top: 160px;
    padding-bottom: 160px; }

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


ul li {
  list-style: none; }

ul.rest {
  margin: 0;
  padding: 0; }

video {
  background-size: cover;
  display: table-cell;
  vertical-align: middle;
  width: 100%; }

.accordion,
.accordion-item {
  color: inherit !important; }

:focus-visible {
  outline: none; }

.form-control.is-invalid, .was-validated .form-control:invalid {
  border-color: #dc3545 !important; }

.g-recaptcha.is-invalid iframe {
  border: 1px solid #dc3545 !important; }

@media (min-width: 1400px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    max-width: 1200px; } }

.social-icon-circle a:hover {
  background: #fff;
  color: #171717; }

/* ====================================================================================
    03. Loop - Padding, margin, position, font weight, min height, opacity and z-index
======================================================================================= */
/* Padding and margin */
.p-5px {
  padding: 5px !important; }

.p-10px {
  padding: 10px !important; }

.p-15px {
  padding: 15px !important; }

.p-20px {
  padding: 20px !important; }

.p-25px {
  padding: 25px !important; }

.p-30px {
  padding: 30px !important; }

.p-35px {
  padding: 35px !important; }

.p-40px {
  padding: 40px !important; }

.p-45px {
  padding: 45px !important; }

.p-50px {
  padding: 50px !important; }

.p-55px {
  padding: 55px !important; }

.p-60px {
  padding: 60px !important; }

.p-65px {
  padding: 65px !important; }

.p-70px {
  padding: 70px !important; }

.p-75px {
  padding: 75px !important; }

.p-80px {
  padding: 80px !important; }

.p-1 {
  padding: 1% !important; }

.p-2 {
  padding: 2% !important; }

.p-3 {
  padding: 3% !important; }

.p-4 {
  padding: 4% !important; }

.p-5 {
  padding: 5% !important; }

.p-6 {
  padding: 6% !important; }

.p-7 {
  padding: 7% !important; }

.p-8 {
  padding: 8% !important; }

.p-9 {
  padding: 9% !important; }

.p-10 {
  padding: 10% !important; }

.p-11 {
  padding: 11% !important; }

.p-12 {
  padding: 12% !important; }

.p-13 {
  padding: 13% !important; }

.p-14 {
  padding: 14% !important; }

.p-15 {
  padding: 15% !important; }

.p-16 {
  padding: 16% !important; }

.p-17 {
  padding: 17% !important; }

.p-18 {
  padding: 18% !important; }

.p-19 {
  padding: 19% !important; }

.p-20 {
  padding: 20% !important; }

.p-21 {
  padding: 21% !important; }

.p-22 {
  padding: 22% !important; }

.p-23 {
  padding: 23% !important; }

.p-24 {
  padding: 24% !important; }

.p-25 {
  padding: 25% !important; }

.p-26 {
  padding: 26% !important; }

.p-27 {
  padding: 27% !important; }

.p-28 {
  padding: 28% !important; }

.p-29 {
  padding: 29% !important; }

.p-30 {
  padding: 30% !important; }

.pt-5px {
  padding-top: 5px !important; }

.pt-10px {
  padding-top: 10px !important; }

.pt-15px {
  padding-top: 15px !important; }

.pt-20px {
  padding-top: 20px !important; }

.pt-25px {
  padding-top: 25px !important; }

.pt-30px {
  padding-top: 30px !important; }

.pt-35px {
  padding-top: 35px !important; }

.pt-40px {
  padding-top: 40px !important; }

.pt-45px {
  padding-top: 45px !important; }

.pt-50px {
  padding-top: 50px !important; }

.pt-55px {
  padding-top: 55px !important; }

.pt-60px {
  padding-top: 60px !important; }

.pt-65px {
  padding-top: 65px !important; }

.pt-70px {
  padding-top: 70px !important; }

.pt-75px {
  padding-top: 75px !important; }

.pt-80px {
  padding-top: 80px !important; }

.pt-1 {
  padding-top: 1% !important; }

.pt-2 {
  padding-top: 2% !important; }

.pt-3 {
  padding-top: 3% !important; }

.pt-4 {
  padding-top: 4% !important; }

.pt-5 {
  padding-top: 5% !important; }

.pt-6 {
  padding-top: 6% !important; }

.pt-7 {
  padding-top: 7% !important; }

.pt-8 {
  padding-top: 8% !important; }

.pt-9 {
  padding-top: 9% !important; }

.pt-10 {
  padding-top: 10% !important; }

.pt-11 {
  padding-top: 11% !important; }

.pt-12 {
  padding-top: 12% !important; }

.pt-13 {
  padding-top: 13% !important; }

.pt-14 {
  padding-top: 14% !important; }

.pt-15 {
  padding-top: 15% !important; }

.pt-16 {
  padding-top: 16% !important; }

.pt-17 {
  padding-top: 17% !important; }

.pt-18 {
  padding-top: 18% !important; }

.pt-19 {
  padding-top: 19% !important; }

.pt-20 {
  padding-top: 20% !important; }

.pt-21 {
  padding-top: 21% !important; }

.pt-22 {
  padding-top: 22% !important; }

.pt-23 {
  padding-top: 23% !important; }

.pt-24 {
  padding-top: 24% !important; }

.pt-25 {
  padding-top: 25% !important; }

.pt-26 {
  padding-top: 26% !important; }

.pt-27 {
  padding-top: 27% !important; }

.pt-28 {
  padding-top: 28% !important; }

.pt-29 {
  padding-top: 29% !important; }

.pt-30 {
  padding-top: 30% !important; }

.pr-5px {
  padding-right: 5px !important; }

.pr-10px {
  padding-right: 10px !important; }

.pr-15px {
  padding-right: 15px !important; }

.pr-20px {
  padding-right: 20px !important; }

.pr-25px {
  padding-right: 25px !important; }

.pr-30px {
  padding-right: 30px !important; }

.pr-35px {
  padding-right: 35px !important; }

.pr-40px {
  padding-right: 40px !important; }

.pr-45px {
  padding-right: 45px !important; }

.pr-50px {
  padding-right: 50px !important; }

.pr-55px {
  padding-right: 55px !important; }

.pr-60px {
  padding-right: 60px !important; }

.pr-65px {
  padding-right: 65px !important; }

.pr-70px {
  padding-right: 70px !important; }

.pr-75px {
  padding-right: 75px !important; }

.pr-80px {
  padding-right: 80px !important; }

.pr-1 {
  padding-right: 1% !important; }

.pr-2 {
  padding-right: 2% !important; }

.pr-3 {
  padding-right: 3% !important; }

.pr-4 {
  padding-right: 4% !important; }

.pr-5 {
  padding-right: 5% !important; }

.pr-6 {
  padding-right: 6% !important; }

.pr-7 {
  padding-right: 7% !important; }

.pr-8 {
  padding-right: 8% !important; }

.pr-9 {
  padding-right: 9% !important; }

.pr-10 {
  padding-right: 10% !important; }

.pr-11 {
  padding-right: 11% !important; }

.pr-12 {
  padding-right: 12% !important; }

.pr-13 {
  padding-right: 13% !important; }

.pr-14 {
  padding-right: 14% !important; }

.pr-15 {
  padding-right: 15% !important; }

.pr-16 {
  padding-right: 16% !important; }

.pr-17 {
  padding-right: 17% !important; }

.pr-18 {
  padding-right: 18% !important; }

.pr-19 {
  padding-right: 19% !important; }

.pr-20 {
  padding-right: 20% !important; }

.pr-21 {
  padding-right: 21% !important; }

.pr-22 {
  padding-right: 22% !important; }

.pr-23 {
  padding-right: 23% !important; }

.pr-24 {
  padding-right: 24% !important; }

.pr-25 {
  padding-right: 25% !important; }

.pr-26 {
  padding-right: 26% !important; }

.pr-27 {
  padding-right: 27% !important; }

.pr-28 {
  padding-right: 28% !important; }

.pr-29 {
  padding-right: 29% !important; }

.pr-30 {
  padding-right: 30% !important; }

.pb-5px {
  padding-bottom: 5px !important; }

.pb-10px {
  padding-bottom: 10px !important; }

.pb-15px {
  padding-bottom: 15px !important; }

.pb-20px {
  padding-bottom: 20px !important; }

.pb-25px {
  padding-bottom: 25px !important; }

.pb-30px {
  padding-bottom: 30px !important; }

.pb-35px {
  padding-bottom: 35px !important; }

.pb-40px {
  padding-bottom: 40px !important; }

.pb-45px {
  padding-bottom: 45px !important; }

.pb-50px {
  padding-bottom: 50px !important; }

.pb-55px {
  padding-bottom: 55px !important; }

.pb-60px {
  padding-bottom: 60px !important; }

.pb-65px {
  padding-bottom: 65px !important; }

.pb-70px {
  padding-bottom: 70px !important; }

.pb-75px {
  padding-bottom: 75px !important; }

.pb-80px {
  padding-bottom: 80px !important; }

.pb-1 {
  padding-bottom: 1% !important; }

.pb-2 {
  padding-bottom: 2% !important; }

.pb-3 {
  padding-bottom: 3% !important; }

.pb-4 {
  padding-bottom: 4% !important; }

.pb-5 {
  padding-bottom: 5% !important; }

.pb-6 {
  padding-bottom: 6% !important; }

.pb-7 {
  padding-bottom: 7% !important; }

.pb-8 {
  padding-bottom: 8% !important; }

.pb-9 {
  padding-bottom: 9% !important; }

.pb-10 {
  padding-bottom: 10% !important; }

.pb-11 {
  padding-bottom: 11% !important; }

.pb-12 {
  padding-bottom: 12% !important; }

.pb-13 {
  padding-bottom: 13% !important; }

.pb-14 {
  padding-bottom: 14% !important; }

.pb-15 {
  padding-bottom: 15% !important; }

.pb-16 {
  padding-bottom: 16% !important; }

.pb-17 {
  padding-bottom: 17% !important; }

.pb-18 {
  padding-bottom: 18% !important; }

.pb-19 {
  padding-bottom: 19% !important; }

.pb-20 {
  padding-bottom: 20% !important; }

.pb-21 {
  padding-bottom: 21% !important; }

.pb-22 {
  padding-bottom: 22% !important; }

.pb-23 {
  padding-bottom: 23% !important; }

.pb-24 {
  padding-bottom: 24% !important; }

.pb-25 {
  padding-bottom: 25% !important; }

.pb-26 {
  padding-bottom: 26% !important; }

.pb-27 {
  padding-bottom: 27% !important; }

.pb-28 {
  padding-bottom: 28% !important; }

.pb-29 {
  padding-bottom: 29% !important; }

.pb-30 {
  padding-bottom: 30% !important; }

.pl-5px {
  padding-left: 5px !important; }

.pl-10px {
  padding-left: 10px !important; }

.pl-15px {
  padding-left: 15px !important; }

.pl-20px {
  padding-left: 20px !important; }

.pl-25px {
  padding-left: 25px !important; }

.pl-30px {
  padding-left: 30px !important; }

.pl-35px {
  padding-left: 35px !important; }

.pl-40px {
  padding-left: 40px !important; }

.pl-45px {
  padding-left: 45px !important; }

.pl-50px {
  padding-left: 50px !important; }

.pl-55px {
  padding-left: 55px !important; }

.pl-60px {
  padding-left: 60px !important; }

.pl-65px {
  padding-left: 65px !important; }

.pl-70px {
  padding-left: 70px !important; }

.pl-75px {
  padding-left: 75px !important; }

.pl-80px {
  padding-left: 80px !important; }

.pl-1 {
  padding-left: 1% !important; }

.pl-2 {
  padding-left: 2% !important; }

.pl-3 {
  padding-left: 3% !important; }

.pl-4 {
  padding-left: 4% !important; }

.pl-5 {
  padding-left: 5% !important; }

.pl-6 {
  padding-left: 6% !important; }

.pl-7 {
  padding-left: 7% !important; }

.pl-8 {
  padding-left: 8% !important; }

.pl-9 {
  padding-left: 9% !important; }

.pl-10 {
  padding-left: 10% !important; }

.pl-11 {
  padding-left: 11% !important; }

.pl-12 {
  padding-left: 12% !important; }

.pl-13 {
  padding-left: 13% !important; }

.pl-14 {
  padding-left: 14% !important; }

.pl-15 {
  padding-left: 15% !important; }

.pl-16 {
  padding-left: 16% !important; }

.pl-17 {
  padding-left: 17% !important; }

.pl-18 {
  padding-left: 18% !important; }

.pl-19 {
  padding-left: 19% !important; }

.pl-20 {
  padding-left: 20% !important; }

.pl-21 {
  padding-left: 21% !important; }

.pl-22 {
  padding-left: 22% !important; }

.pl-23 {
  padding-left: 23% !important; }

.pl-24 {
  padding-left: 24% !important; }

.pl-25 {
  padding-left: 25% !important; }

.pl-26 {
  padding-left: 26% !important; }

.pl-27 {
  padding-left: 27% !important; }

.pl-28 {
  padding-left: 28% !important; }

.pl-29 {
  padding-left: 29% !important; }

.pl-30 {
  padding-left: 30% !important; }

.m-5px {
  margin: 5px !important; }

.m-10px {
  margin: 10px !important; }

.m-15px {
  margin: 15px !important; }

.m-20px {
  margin: 20px !important; }

.m-25px {
  margin: 25px !important; }

.m-30px {
  margin: 30px !important; }

.m-35px {
  margin: 35px !important; }

.m-40px {
  margin: 40px !important; }

.m-45px {
  margin: 45px !important; }

.m-50px {
  margin: 50px !important; }

.m-55px {
  margin: 55px !important; }

.m-60px {
  margin: 60px !important; }

.m-65px {
  margin: 65px !important; }

.m-70px {
  margin: 70px !important; }

.m-75px {
  margin: 75px !important; }

.m-80px {
  margin: 80px !important; }

.m-1 {
  margin: 1% !important; }

.m-2 {
  margin: 2% !important; }

.m-3 {
  margin: 3% !important; }

.m-4 {
  margin: 4% !important; }

.m-5 {
  margin: 5% !important; }

.m-6 {
  margin: 6% !important; }

.m-7 {
  margin: 7% !important; }

.m-8 {
  margin: 8% !important; }

.m-9 {
  margin: 9% !important; }

.m-10 {
  margin: 10% !important; }

.m-11 {
  margin: 11% !important; }

.m-12 {
  margin: 12% !important; }

.m-13 {
  margin: 13% !important; }

.m-14 {
  margin: 14% !important; }

.m-15 {
  margin: 15% !important; }

.m-16 {
  margin: 16% !important; }

.m-17 {
  margin: 17% !important; }

.m-18 {
  margin: 18% !important; }

.m-19 {
  margin: 19% !important; }

.m-20 {
  margin: 20% !important; }

.m-21 {
  margin: 21% !important; }

.m-22 {
  margin: 22% !important; }

.m-23 {
  margin: 23% !important; }

.m-24 {
  margin: 24% !important; }

.m-25 {
  margin: 25% !important; }

.m-26 {
  margin: 26% !important; }

.m-27 {
  margin: 27% !important; }

.m-28 {
  margin: 28% !important; }

.m-29 {
  margin: 29% !important; }

.m-30 {
  margin: 30% !important; }

.mt-5px {
  margin-top: 5px !important; }

.mt-10px {
  margin-top: 10px !important; }

  .mt-15px {
    margin-top: 35px !important;
  }
  
  /* 📱 Pre mobily (napr. do 768px šírky) */
  @media (max-width: 768px) {
    .mt-15px {
      margin-top: 40px !important;
      text-align: center; /* zarovná text */
      display: flex;
      justify-content: center; /* zarovná horizontálne */
      align-items: center; /* ak je výška, zarovná aj vertikálne */
    }
  }
  
.mt-20px {
  margin-top: 20px !important; }

.mt-25px {
  margin-top: 25px !important; }

.mt-30px {
  margin-top: 30px !important; }

.mt-35px {
  margin-top: 35px !important; }

.mt-40px {
  margin-top: 40px !important; }

.mt-45px {
  margin-top: 45px !important; }

.mt-50px {
  margin-top: 50px !important; }

.mt-55px {
  margin-top: 55px !important; }

.mt-60px {
  margin-top: 60px !important; }

.mt-65px {
  margin-top: 65px !important; }

.mt-70px {
  margin-top: 70px !important; }

.mt-75px {
  margin-top: 75px !important; }

.mt-80px {
  margin-top: 80px !important; }

.mt-1 {
  margin-top: 1% !important; }

.mt-2 {
  margin-top: 2% !important; }

.mt-3 {
  margin-top: 3% !important; }

.mt-4 {
  margin-top: 4% !important; }

.mt-5 {
  margin-top: 5% !important; }

.mt-6 {
  margin-top: 6% !important; }

.mt-7 {
  margin-top: 7% !important; }

.mt-8 {
  margin-top: 8% !important; }

.mt-9 {
  margin-top: 9% !important; }

.mt-10 {
  margin-top: 10% !important; }

.mt-11 {
  margin-top: 11% !important; }

.mt-12 {
  margin-top: 12% !important; }

.mt-13 {
  margin-top: 13% !important; }

.mt-14 {
  margin-top: 14% !important; }

.mt-15 {
  margin-top: 15% !important; }

.mt-16 {
  margin-top: 16% !important; }

.mt-17 {
  margin-top: 17% !important; }

.mt-18 {
  margin-top: 18% !important; }

.mt-19 {
  margin-top: 19% !important; }

.mt-20 {
  margin-top: 20% !important; }

.mt-21 {
  margin-top: 21% !important; }

.mt-22 {
  margin-top: 22% !important; }

.mt-23 {
  margin-top: 23% !important; }

.mt-24 {
  margin-top: 24% !important; }

.mt-25 {
  margin-top: 25% !important; }

.mt-26 {
  margin-top: 26% !important; }

.mt-27 {
  margin-top: 27% !important; }

.mt-28 {
  margin-top: 28% !important; }

.mt-29 {
  margin-top: 29% !important; }

.mt-30 {
  margin-top: 30% !important; }

.mr-5px {
  margin-right: 5px !important; }

.mr-10px {
  margin-right: 10px !important; }

.mr-15px {
  margin-right: 15px !important; }

.mr-20px {
  margin-right: 20px !important; }

.mr-25px {
  margin-right: 25px !important; }

.mr-30px {
  margin-right: 30px !important; }

.mr-35px {
  margin-right: 35px !important; }

.mr-40px {
  margin-right: 40px !important; }

.mr-45px {
  margin-right: 45px !important; }

.mr-50px {
  margin-right: 50px !important; }

.mr-55px {
  margin-right: 55px !important; }

.mr-60px {
  margin-right: 60px !important; }

.mr-65px {
  margin-right: 65px !important; }

.mr-70px {
  margin-right: 70px !important; }

.mr-75px {
  margin-right: 75px !important; }

.mr-80px {
  margin-right: 80px !important; }

.mr-1 {
  margin-right: 1% !important; }

.mr-2 {
  margin-right: 2% !important; }

.mr-3 {
  margin-right: 3% !important; }

.mr-4 {
  margin-right: 4% !important; }

.mr-5 {
  margin-right: 5% !important; }

.mr-6 {
  margin-right: 6% !important; }

.mr-7 {
  margin-right: 7% !important; }

.mr-8 {
  margin-right: 8% !important; }

.mr-9 {
  margin-right: 9% !important; }

.mr-10 {
  margin-right: 10% !important; }

.mr-11 {
  margin-right: 11% !important; }

.mr-12 {
  margin-right: 12% !important; }

.mr-13 {
  margin-right: 13% !important; }

.mr-14 {
  margin-right: 14% !important; }

.mr-15 {
  margin-right: 15% !important; }

.mr-16 {
  margin-right: 16% !important; }

.mr-17 {
  margin-right: 17% !important; }

.mr-18 {
  margin-right: 18% !important; }

.mr-19 {
  margin-right: 19% !important; }

.mr-20 {
  margin-right: 20% !important; }

.mr-21 {
  margin-right: 21% !important; }

.mr-22 {
  margin-right: 22% !important; }

.mr-23 {
  margin-right: 23% !important; }

.mr-24 {
  margin-right: 24% !important; }

.mr-25 {
  margin-right: 25% !important; }

.mr-26 {
  margin-right: 26% !important; }

.mr-27 {
  margin-right: 27% !important; }

.mr-28 {
  margin-right: 28% !important; }

.mr-29 {
  margin-right: 29% !important; }

.mr-30 {
  margin-right: 30% !important; }

.mb-5px {
  margin-bottom: 5px !important; }

.mb-10px {
  margin-bottom: 10px !important; }

.mb-15px {
  margin-bottom: 15px !important; }

.mb-20px {
  margin-bottom: 20px !important; }

.mb-25px {
  margin-bottom: 25px !important; }

.mb-30px {
  margin-bottom: 30px !important; }

.mb-35px {
  margin-bottom: 35px !important; }

.mb-40px {
  margin-bottom: 40px !important; }

.mb-45px {
  margin-bottom: 45px !important; }

.mb-50px {
  margin-bottom: 50px !important; }

.mb-55px {
  margin-bottom: 55px !important; }

.mb-60px {
  margin-bottom: 60px !important; }

.mb-65px {
  margin-bottom: 65px !important; }

.mb-70px {
  margin-bottom: 70px !important; }

.mb-75px {
  margin-bottom: 75px !important; }

.mb-80px {
  margin-bottom: 80px !important; }

.mb-1 {
  margin-bottom: 1% !important; }

.mb-2 {
  margin-bottom: 2% !important; }

.mb-3 {
  margin-bottom: 3% !important; }

.mb-4 {
  margin-bottom: 4% !important; }

.mb-5 {
  margin-bottom: 5% !important; }

.mb-6 {
  margin-bottom: 6% !important; }

.mb-7 {
  margin-bottom: 7% !important; }

.mb-8 {
  margin-bottom: 8% !important; }

.mb-9 {
  margin-bottom: 9% !important; }

.mb-10 {
  margin-bottom: 10% !important; }

.mb-11 {
  margin-bottom: 11% !important; }

.mb-12 {
  margin-bottom: 12% !important; }

.mb-13 {
  margin-bottom: 13% !important; }

.mb-14 {
  margin-bottom: 14% !important; }

.mb-15 {
  margin-bottom: 15% !important; }

.mb-16 {
  margin-bottom: 16% !important; }

.mb-17 {
  margin-bottom: 17% !important; }

.mb-18 {
  margin-bottom: 18% !important; }

.mb-19 {
  margin-bottom: 19% !important; }

.mb-20 {
  margin-bottom: 20% !important; }

.mb-21 {
  margin-bottom: 21% !important; }

.mb-22 {
  margin-bottom: 22% !important; }

.mb-23 {
  margin-bottom: 23% !important; }

.mb-24 {
  margin-bottom: 24% !important; }

.mb-25 {
  margin-bottom: 25% !important; }

.mb-26 {
  margin-bottom: 26% !important; }

.mb-27 {
  margin-bottom: 27% !important; }

.mb-28 {
  margin-bottom: 28% !important; }

.mb-29 {
  margin-bottom: 29% !important; }

.mb-30 {
  margin-bottom: 30% !important; }

.ml-5px {
  margin-left: 5px !important; }

.ml-10px {
  margin-left: 10px !important; }

.ml-15px {
  margin-left: 15px !important; }

.ml-20px {
  margin-left: 20px !important; }

.ml-25px {
  margin-left: 25px !important; }

.ml-30px {
  margin-left: 30px !important; }

.ml-35px {
  margin-left: 35px !important; }

.ml-40px {
  margin-left: 40px !important; }

.ml-45px {
  margin-left: 45px !important; }

.ml-50px {
  margin-left: 50px !important; }

.ml-55px {
  margin-left: 55px !important; }

.ml-60px {
  margin-left: 60px !important; }

.ml-65px {
  margin-left: 65px !important; }

.ml-70px {
  margin-left: 70px !important; }

.ml-75px {
  margin-left: 75px !important; }

.ml-80px {
  margin-left: 80px !important; }

.ml-1 {
  margin-left: 1% !important; }

.ml-2 {
  margin-left: 2% !important; }

.ml-3 {
  margin-left: 3% !important; }

.ml-4 {
  margin-left: 4% !important; }

.ml-5 {
  margin-left: 5% !important; }

.ml-6 {
  margin-left: 6% !important; }

.ml-7 {
  margin-left: 7% !important; }

.ml-8 {
  margin-left: 8% !important; }

.ml-9 {
  margin-left: 9% !important; }

.ml-10 {
  margin-left: 10% !important; }

.ml-11 {
  margin-left: 11% !important; }

.ml-12 {
  margin-left: 12% !important; }

.ml-13 {
  margin-left: 13% !important; }

.ml-14 {
  margin-left: 14% !important; }

.ml-15 {
  margin-left: 15% !important; }

.ml-16 {
  margin-left: 16% !important; }

.ml-17 {
  margin-left: 17% !important; }

.ml-18 {
  margin-left: 18% !important; }

.ml-19 {
  margin-left: 19% !important; }

.ml-20 {
  margin-left: 20% !important; }

.ml-21 {
  margin-left: 21% !important; }

.ml-22 {
  margin-left: 22% !important; }

.ml-23 {
  margin-left: 23% !important; }

.ml-24 {
  margin-left: 24% !important; }

.ml-25 {
  margin-left: 25% !important; }

.ml-26 {
  margin-left: 26% !important; }

.ml-27 {
  margin-left: 27% !important; }

.ml-28 {
  margin-left: 28% !important; }

.ml-29 {
  margin-left: 29% !important; }

.ml-30 {
  margin-left: 30% !important; }

/* Position */
.top-0px {
  top: 0px; }

.top-1px {
  top: 1px; }

.top-2px {
  top: 2px; }

.top-3px {
  top: 3px; }

.top-4px {
  top: 4px; }

.top-5px {
  top: 5px; }

.top-6px {
  top: 6px; }

.top-7px {
  top: 7px; }

.top-8px {
  top: 8px; }

.top-9px {
  top: 9px; }

.top-10px {
  top: 10px; }

.top-11px {
  top: 11px; }

.top-12px {
  top: 12px; }

.top-13px {
  top: 13px; }

.top-14px {
  top: 14px; }

.top-15px {
  top: 15px; }

.top-16px {
  top: 16px; }

.top-17px {
  top: 17px; }

.top-18px {
  top: 18px; }

.top-19px {
  top: 19px; }

.top-20px {
  top: 20px; }

.top-21px {
  top: 21px; }

.top-22px {
  top: 22px; }

.top-23px {
  top: 23px; }

.top-24px {
  top: 24px; }

.top-25px {
  top: 25px; }

.top-26px {
  top: 26px; }

.top-27px {
  top: 27px; }

.top-28px {
  top: 28px; }

.top-29px {
  top: 29px; }

.top-30px {
  top: 30px; }

.top-40px {
  top: 40px; }

.top-50px {
  top: 50px; }

.top-60px {
  top: 60px; }

.top-70px {
  top: 70px; }

.top-80px {
  top: 80px; }

.top-90px {
  top: 90px; }

.top-100px {
  top: 100px; }

.top-110px {
  top: 110px; }

.top-120px {
  top: 120px; }

.top-130px {
  top: 130px; }

.top-140px {
  top: 140px; }

.top-150px {
  top: 150px; }

.right-0px {
  right: 0px; }

.right-1px {
  right: 1px; }

.right-2px {
  right: 2px; }

.right-3px {
  right: 3px; }

.right-4px {
  right: 4px; }

.right-5px {
  right: 5px; }

.right-6px {
  right: 6px; }

.right-7px {
  right: 7px; }

.right-8px {
  right: 8px; }

.right-9px {
  right: 9px; }

.right-10px {
  right: 10px; }

.right-11px {
  right: 11px; }

.right-12px {
  right: 12px; }

.right-13px {
  right: 13px; }

.right-14px {
  right: 14px; }

.right-15px {
  right: 15px; }

.right-16px {
  right: 16px; }

.right-17px {
  right: 17px; }

.right-18px {
  right: 18px; }

.right-19px {
  right: 19px; }

.right-20px {
  right: 20px; }

.right-21px {
  right: 21px; }

.right-22px {
  right: 22px; }

.right-23px {
  right: 23px; }

.right-24px {
  right: 24px; }

.right-25px {
  right: 25px; }

.right-26px {
  right: 26px; }

.right-27px {
  right: 27px; }

.right-28px {
  right: 28px; }

.right-29px {
  right: 29px; }

.right-30px {
  right: 30px; }

.right-40px {
  right: 40px; }

.right-50px {
  right: 50px; }

.right-60px {
  right: 60px; }

.right-70px {
  right: 70px; }

.right-80px {
  right: 80px; }

.right-90px {
  right: 90px; }

.right-100px {
  right: 100px; }

.right-110px {
  right: 110px; }

.right-120px {
  right: 120px; }

.right-130px {
  right: 130px; }

.right-140px {
  right: 140px; }

.right-150px {
  right: 150px; }

.bottom-0px {
  bottom: 0px; }

.bottom-1px {
  bottom: 1px; }

.bottom-2px {
  bottom: 2px; }

.bottom-3px {
  bottom: 3px; }

.bottom-4px {
  bottom: 4px; }

.bottom-5px {
  bottom: 5px; }

.bottom-6px {
  bottom: 6px; }

.bottom-7px {
  bottom: 7px; }

.bottom-8px {
  bottom: 8px; }

.bottom-9px {
  bottom: 9px; }

.bottom-10px {
  bottom: 10px; }

.bottom-11px {
  bottom: 11px; }

.bottom-12px {
  bottom: 12px; }

.bottom-13px {
  bottom: 13px; }

.bottom-14px {
  bottom: 14px; }

.bottom-15px {
  bottom: 15px; }

.bottom-16px {
  bottom: 16px; }

.bottom-17px {
  bottom: 17px; }

.bottom-18px {
  bottom: 18px; }

.bottom-19px {
  bottom: 19px; }

.bottom-20px {
  bottom: 20px; }

.bottom-21px {
  bottom: 21px; }

.bottom-22px {
  bottom: 22px; }

.bottom-23px {
  bottom: 23px; }

.bottom-24px {
  bottom: 24px; }

.bottom-25px {
  bottom: 25px; }

.bottom-26px {
  bottom: 26px; }

.bottom-27px {
  bottom: 27px; }

.bottom-28px {
  bottom: 28px; }

.bottom-29px {
  bottom: 29px; }

.bottom-30px {
  bottom: 30px; }

.bottom-40px {
  bottom: 40px; }

.bottom-50px {
  bottom: 50px; }

.bottom-60px {
  bottom: 60px; }

.bottom-70px {
  bottom: 70px; }

.bottom-80px {
  bottom: 80px; }

.bottom-90px {
  bottom: 90px; }

.bottom-100px {
  bottom: 100px; }

.bottom-110px {
  bottom: 110px; }

.bottom-120px {
  bottom: 120px; }

.bottom-130px {
  bottom: 130px; }

.bottom-140px {
  bottom: 140px; }

.bottom-150px {
  bottom: 150px; }

.left-0px {
  left: 0px; }

.left-1px {
  left: 1px; }

.left-2px {
  left: 2px; }

.left-3px {
  left: 3px; }

.left-4px {
  left: 4px; }

.left-5px {
  left: 5px; }

.left-6px {
  left: 6px; }

.left-7px {
  left: 7px; }

.left-8px {
  left: 8px; }

.left-9px {
  left: 9px; }

.left-10px {
  left: 10px; }

.left-11px {
  left: 11px; }

.left-12px {
  left: 12px; }

.left-13px {
  left: 13px; }

.left-14px {
  left: 14px; }

.left-15px {
  left: 15px; }

.left-16px {
  left: 16px; }

.left-17px {
  left: 17px; }

.left-18px {
  left: 18px; }

.left-19px {
  left: 19px; }

.left-20px {
  left: 20px; }

.left-21px {
  left: 21px; }

.left-22px {
  left: 22px; }

.left-23px {
  left: 23px; }

.left-24px {
  left: 24px; }

.left-25px {
  left: 25px; }

.left-26px {
  left: 26px; }

.left-27px {
  left: 27px; }

.left-28px {
  left: 28px; }

.left-29px {
  left: 29px; }

.left-30px {
  left: 30px; }

.left-40px {
  left: 40px; }

.left-50px {
  left: 50px; }

.left-60px {
  left: 60px; }

.left-70px {
  left: 70px; }

.left-80px {
  left: 80px; }

.left-90px {
  left: 90px; }

.left-100px {
  left: 100px; }

.left-110px {
  left: 110px; }

.left-120px {
  left: 120px; }

.left-130px {
  left: 130px; }

.left-140px {
  left: 140px; }

.left-150px {
  left: 150px; }

.top-minus-0px {
  top: -0px; }

.top-minus-1px {
  top: -1px; }

.top-minus-2px {
  top: -2px; }

.top-minus-3px {
  top: -3px; }

.top-minus-4px {
  top: -4px; }

.top-minus-5px {
  top: -5px; }

.top-minus-6px {
  top: -6px; }

.top-minus-7px {
  top: -7px; }

.top-minus-8px {
  top: -8px; }

.top-minus-9px {
  top: -9px; }

.top-minus-10px {
  top: -10px; }

.top-minus-11px {
  top: -11px; }

.top-minus-12px {
  top: -12px; }

.top-minus-13px {
  top: -13px; }

.top-minus-14px {
  top: -14px; }

.top-minus-15px {
  top: -15px; }

.top-minus-16px {
  top: -16px; }

.top-minus-17px {
  top: -17px; }

.top-minus-18px {
  top: -18px; }

.top-minus-19px {
  top: -19px; }

.top-minus-20px {
  top: -20px; }

.top-minus-21px {
  top: -21px; }

.top-minus-22px {
  top: -22px; }

.top-minus-23px {
  top: -23px; }

.top-minus-24px {
  top: -24px; }

.top-minus-25px {
  top: -25px; }

.top-minus-26px {
  top: -26px; }

.top-minus-27px {
  top: -27px; }

.top-minus-28px {
  top: -28px; }

.top-minus-29px {
  top: -29px; }

.top-minus-30px {
  top: -30px; }

.top-minus-40px {
  top: -40px; }

.top-minus-50px {
  top: -50px; }

.top-minus-60px {
  top: -60px; }

.top-minus-70px {
  top: -70px; }

.top-minus-80px {
  top: -80px; }

.top-minus-90px {
  top: -90px; }

.top-minus-100px {
  top: -100px; }

.top-minus-110px {
  top: -110px; }

.top-minus-120px {
  top: -120px; }

.top-minus-130px {
  top: -130px; }

.top-minus-140px {
  top: -140px; }

.top-minus-150px {
  top: -150px; }

.right-minus-0px {
  right: -0px; }

.right-minus-1px {
  right: -1px; }

.right-minus-2px {
  right: -2px; }

.right-minus-3px {
  right: -3px; }

.right-minus-4px {
  right: -4px; }

.right-minus-5px {
  right: -5px; }

.right-minus-6px {
  right: -6px; }

.right-minus-7px {
  right: -7px; }

.right-minus-8px {
  right: -8px; }

.right-minus-9px {
  right: -9px; }

.right-minus-10px {
  right: -10px; }

.right-minus-11px {
  right: -11px; }

.right-minus-12px {
  right: -12px; }

.right-minus-13px {
  right: -13px; }

.right-minus-14px {
  right: -14px; }

.right-minus-15px {
  right: -15px; }

.right-minus-16px {
  right: -16px; }

.right-minus-17px {
  right: -17px; }

.right-minus-18px {
  right: -18px; }

.right-minus-19px {
  right: -19px; }

.right-minus-20px {
  right: -20px; }

.right-minus-21px {
  right: -21px; }

.right-minus-22px {
  right: -22px; }

.right-minus-23px {
  right: -23px; }

.right-minus-24px {
  right: -24px; }

.right-minus-25px {
  right: -25px; }

.right-minus-26px {
  right: -26px; }

.right-minus-27px {
  right: -27px; }

.right-minus-28px {
  right: -28px; }

.right-minus-29px {
  right: -29px; }

.right-minus-30px {
  right: -30px; }

.right-minus-40px {
  right: -40px; }

.right-minus-50px {
  right: -50px; }

.right-minus-60px {
  right: -60px; }

.right-minus-70px {
  right: -70px; }

.right-minus-80px {
  right: -80px; }

.right-minus-90px {
  right: -90px; }

.right-minus-100px {
  right: -100px; }

.right-minus-110px {
  right: -110px; }

.right-minus-120px {
  right: -120px; }

.right-minus-130px {
  right: -130px; }

.right-minus-140px {
  right: -140px; }

.right-minus-150px {
  right: -150px; }

.bottom-minus-0px {
  bottom: -0px; }

.bottom-minus-1px {
  bottom: -1px; }

.bottom-minus-2px {
  bottom: -2px; }

.bottom-minus-3px {
  bottom: -3px; }

.bottom-minus-4px {
  bottom: -4px; }

.bottom-minus-5px {
  bottom: -5px; }

.bottom-minus-6px {
  bottom: -6px; }

.bottom-minus-7px {
  bottom: -7px; }

.bottom-minus-8px {
  bottom: -8px; }

.bottom-minus-9px {
  bottom: -9px; }

.bottom-minus-10px {
  bottom: -10px; }

.bottom-minus-11px {
  bottom: -11px; }

.bottom-minus-12px {
  bottom: -12px; }

.bottom-minus-13px {
  bottom: -13px; }

.bottom-minus-14px {
  bottom: -14px; }

.bottom-minus-15px {
  bottom: -15px; }

.bottom-minus-16px {
  bottom: -16px; }

.bottom-minus-17px {
  bottom: -17px; }

.bottom-minus-18px {
  bottom: -18px; }

.bottom-minus-19px {
  bottom: -19px; }

.bottom-minus-20px {
  bottom: -20px; }

.bottom-minus-21px {
  bottom: -21px; }

.bottom-minus-22px {
  bottom: -22px; }

.bottom-minus-23px {
  bottom: -23px; }

.bottom-minus-24px {
  bottom: -24px; }

.bottom-minus-25px {
  bottom: -25px; }

.bottom-minus-26px {
  bottom: -26px; }

.bottom-minus-27px {
  bottom: -27px; }

.bottom-minus-28px {
  bottom: -28px; }

.bottom-minus-29px {
  bottom: -29px; }

.bottom-minus-30px {
  bottom: -30px; }

.bottom-minus-40px {
  bottom: -40px; }

.bottom-minus-50px {
  bottom: -50px; }

.bottom-minus-60px {
  bottom: -60px; }

.bottom-minus-70px {
  bottom: -70px; }

.bottom-minus-80px {
  bottom: -80px; }

.bottom-minus-90px {
  bottom: -90px; }

.bottom-minus-100px {
  bottom: -100px; }

.bottom-minus-110px {
  bottom: -110px; }

.bottom-minus-120px {
  bottom: -120px; }

.bottom-minus-130px {
  bottom: -130px; }

.bottom-minus-140px {
  bottom: -140px; }

.bottom-minus-150px {
  bottom: -150px; }

.left-minus-0px {
  left: -0px; }

.left-minus-1px {
  left: -1px; }

.left-minus-2px {
  left: -2px; }

.left-minus-3px {
  left: -3px; }

.left-minus-4px {
  left: -4px; }

.left-minus-5px {
  left: -5px; }

.left-minus-6px {
  left: -6px; }

.left-minus-7px {
  left: -7px; }

.left-minus-8px {
  left: -8px; }

.left-minus-9px {
  left: -9px; }

.left-minus-10px {
  left: -10px; }

.left-minus-11px {
  left: -11px; }

.left-minus-12px {
  left: -12px; }

.left-minus-13px {
  left: -13px; }

.left-minus-14px {
  left: -14px; }

.left-minus-15px {
  left: -15px; }

.left-minus-16px {
  left: -16px; }

.left-minus-17px {
  left: -17px; }

.left-minus-18px {
  left: -18px; }

.left-minus-19px {
  left: -19px; }

.left-minus-20px {
  left: -20px; }

.left-minus-21px {
  left: -21px; }

.left-minus-22px {
  left: -22px; }

.left-minus-23px {
  left: -23px; }

.left-minus-24px {
  left: -24px; }

.left-minus-25px {
  left: -25px; }

.left-minus-26px {
  left: -26px; }

.left-minus-27px {
  left: -27px; }

.left-minus-28px {
  left: -28px; }

.left-minus-29px {
  left: -29px; }

.left-minus-30px {
  left: -30px; }

.left-minus-40px {
  left: -40px; }

.left-minus-50px {
  left: -50px; }

.left-minus-60px {
  left: -60px; }

.left-minus-70px {
  left: -70px; }

.left-minus-80px {
  left: -80px; }

.left-minus-90px {
  left: -90px; }

.left-minus-100px {
  left: -100px; }

.left-minus-110px {
  left: -110px; }

.left-minus-120px {
  left: -120px; }

.left-minus-130px {
  left: -130px; }

.left-minus-140px {
  left: -140px; }

.left-minus-150px {
  left: -150px; }

/* Font weight */
.fw-100 {
  font-weight: 100 !important; }

.fw-200 {
  font-weight: 200 !important; }

.fw-300 {
  font-weight: 300 !important; }

.fw-400 {
  font-weight: 400 !important; }

.fw-500 {
  font-weight: 500 !important; }

.fw-600 {
  font-weight: 600 !important; }

.fw-700 {
  font-weight: 700 !important; }

.fw-800 {
  font-weight: 800 !important; }

.fw-900 {
  font-weight: 900 !important; }

/* Min height */
.min-h-100px {
  min-height: 100px !important; }

.min-h-150px {
  min-height: 150px !important; }

.min-h-200px {
  min-height: 200px !important; }

.min-h-250px {
  min-height: 250px !important; }

.min-h-300px {
  min-height: 300px !important; }

.min-h-350px {
  min-height: 350px !important; }

.min-h-400px {
  min-height: 400px !important; }

.min-h-450px {
  min-height: 450px !important; }

.min-h-500px {
  min-height: 500px !important; }

.min-h-550px {
  min-height: 550px !important; }

.min-h-600px {
  min-height: 600px !important; }

.min-h-650px {
  min-height: 650px !important; }

.min-h-700px {
  min-height: 700px !important; }

.min-h-750px {
  min-height: 750px !important; }

.min-h-800px {
  min-height: 800px !important; }

.min-h-850px {
  min-height: 850px !important; }

.min-h-900px {
  min-height: 900px !important; }

.min-h-950px {
  min-height: 950px !important; }

/* Opacity */
.opacity-0 {
  opacity: .0; }

.opacity-1 {
  opacity: .1; }

.opacity-2 {
  opacity: .2; }

.opacity-3 {
  opacity: .3; }

.opacity-4 {
  opacity: .4; }

.opacity-5 {
  opacity: .5; }

.opacity-6 {
  opacity: .6; }

.opacity-7 {
  opacity: .7; }

.opacity-8 {
  opacity: .8; }

.opacity-9 {
  opacity: .9; }

/* Z-index */
.z-index-0 {
  z-index: 0; }

.z-index-1 {
  z-index: 1; }

.z-index-2 {
  z-index: 2; }

.z-index-3 {
  z-index: 3; }

.z-index-4 {
  z-index: 4; }

.z-index-5 {
  z-index: 5; }

.z-index-6 {
  z-index: 6; }

.z-index-7 {
  z-index: 7; }

.z-index-8 {
  z-index: 8; }

.z-index-9 {
  z-index: 9; }

.z-index-minus-1 {
  z-index: -1; }

.z-index-minus-2 {
  z-index: -2; }

/* ===================================
    04. General
====================================== */
.rotate-circle {
  -webkit-animation-name: rotateCircle;
  animation-name: rotateCircle;
  -webkit-animation-duration: 20s;
  animation-duration: 20s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear; }

@-webkit-keyframes rotateCircle {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@keyframes rotateCircle {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

.text-light {
  color: #fff; }
  .text-light p {
    color: #c2c2c2; }

/* border line */
.line-top {
  border-top: 1px solid; }

.line-bottom {
  border-bottom: 1px solid; }

.line-right {
  border-right: 1px solid; }

.line-left {
  border-left: 1px solid; }

/* Separator line */
.separator-line-1px {
  height: 1px; }

.separator-line-2px {
  height: 2px; }

.separator-line-3px {
  height: 3px; }

.separator-line-4px {
  height: 4px; }

.separator-line-5px {
  height: 5px; }

/* Separator line size */
.separator-line-small {
  width: 35px;
  height: 1px;
  display: inline-block;
  margin-right: 7px; }

.separator-line-extra-small {
  width: 18px;
  height: 1px;
  display: inline-block;
  margin-right: 8px;
  vertical-align: middle; }

.separator-line-very-small {
  width: 12px;
  height: 1px;
  display: inline-block;
  margin-right: 9px;
  vertical-align: middle; }

/* Opacity */
.opacity-very-light, .opacity-light, .opacity-extra-medium, .opacity-medium, .opacity-full, .opacity-full-dark {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0; }

.opacity-very-light {
  opacity: 0.2; }

.opacity-light {
  opacity: 0.3; }

.opacity-extra-medium {
  opacity: 0.5; }

.opacity-medium {
  opacity: 0.75; }

.opacity-full {
  opacity: 0.8; }

.opacity-full-dark {
  opacity: 0.9; }

/* social-icon-circle */
.social-icon-circle a {
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  font-size: 12px; }

.social-icon-circle.border-dark a {
  border-color: rgba(0, 0, 0, 0.1); }

.social-icon-circle.vertical {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: mixed; }
  .social-icon-circle.vertical span {
    font-size: 12px;
    text-transform: uppercase;
    margin-top: 15px; }

/* social-icon-square */
.social-icon-square a {
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 2px;
  font-size: 12px; }

.social-icon-square.border-dark a {
  border-color: rgba(0, 0, 0, 0.1); }

/* section lines */
.lines-top {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
  transform: translateY(-100%); }
  .lines-top.bottom {
    -webkit-transform: translateY(100%) rotate(180deg);
    -ms-transform: translateY(100%) rotate(180deg);
    transform: translateY(100%) rotate(180deg);
    top: auto;
    bottom: 0; }
  .lines-top span {
    width: 100%;
    display: block;
    height: 2px;
    margin-bottom: 10px;
    background: #0f130f; }
    .lines-top span:nth-of-type(2) {
      height: 4px;
      margin-bottom: 8px; }
    .lines-top span:nth-of-type(3) {
      height: 6px;
      margin-bottom: 6px; }
    .lines-top span:nth-of-type(4) {
      height: 8px;
      margin-bottom: 4px; }
    .lines-top span:nth-of-type(5) {
      height: 10px;
      margin-bottom: 2px; }

/* Tabs */
.tab-content {
  display: none; }
  .tab-content.current {
    display: block; }

/* Accordion */
.accordion-item {
  border: 0;
  border-radius: 0; }

.accordion-button,
.accordion-button:not(.collapsed) {
  color: inherit;
  background: transparent;
  -webkit-box-shadow: none;
  box-shadow: none;
  width: 100%;
  padding: 0;
  border: 0;
  border-radius: 0; }
  .accordion-button .row,
  .accordion-button:not(.collapsed) .row {
    width: 100%; }
  .accordion-button:after,
  .accordion-button:not(.collapsed):after {
    display: none; }

/* Marquee */
.main-marq.standerd {
  position: relative; }
  .main-marq.standerd:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: -webkit-gradient(linear, left top, right top, from(#fff), color-stop(transparent), to(#fff));
    background: -webkit-linear-gradient(left, #fff, transparent, #fff);
    background: -o-linear-gradient(left, #fff, transparent, #fff);
    background: linear-gradient(to right, #fff, transparent, #fff); }
  .main-marq.standerd .item-marq {
    padding: 0 50px; }
    .main-marq.standerd .item-marq h2 {
      font-size: 100px; }

.list-dot {
  margin: 0;
  padding: 0; }
  .list-dot li {
    position: relative; }
    .list-dot li:before {
      content: '';
      position: relative;
      width: 5px;
      height: 5px;
      background: #0f130f;
      border-radius: 50%;
      margin-right: 10px;
      display: inline-block; }
  .list-dot.dark-style li:before {
    background: #fff; }

.nowrap {
  white-space: nowrap; }

.text-indent {
  text-indent: 15%; }

.o-hidden {
  overflow: hidden; }

.d-block {
  display: block; }

.d-inline {
  display: inline-block; }

.d-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.ml-auto {
  margin-left: auto; }

.invert-icon {
  -webkit-filter: invert(1);
  filter: invert(1); }

/* Skrollr */
.skrollr-parallax {
  position: relative;
  background-size: cover;
  background-attachment: fixed;
  -o-transition-timing-function: none;
  transition-timing-function: none;
  -webkit-transition-timing-function: none;
  -o-transition-duration: 0s;
  transition-duration: 0s;
  -webkit-transition-duration: 0s; }

.skrollr-zoom {
  -webkit-transition: none;
  -o-transition: none;
  transition: none; }

.blur-box {
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(3px); }

/* Transform */
.transform-origin-right {
  -webkit-transform-origin: right;
  -ms-transform-origin: right;
  transform-origin: right; }

.transform-origin-left {
  -webkit-transform-origin: left;
  -ms-transform-origin: left;
  transform-origin: left; }

/* Transition */
.transition {
  -webkit-transition: all 400ms cubic-bezier(0.37, 0, 0.63, 1);
  -o-transition: all 400ms cubic-bezier(0.37, 0, 0.63, 1);
  transition: all 400ms cubic-bezier(0.37, 0, 0.63, 1); }

.transition-inner-all * {
  -webkit-transition: all 400ms cubic-bezier(0.37, 0, 0.63, 1);
  -o-transition: all 400ms cubic-bezier(0.37, 0, 0.63, 1);
  transition: all 400ms cubic-bezier(0.37, 0, 0.63, 1); }

.no-transition {
  -webkit-transition: 0s;
  -o-transition: 0s;
  transition: 0s; }

/* Pointer events */
.pointer-events-none {
  pointer-events: none; }

.pointer-events-all {
  pointer-events: all; }

.underline {
  text-decoration: underline; }

/* Users */
.users-style1 .fit-img {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  overflow: hidden;
  margin-left: -15px;
 }
  .users-style1 .fit-img:first-of-type {
    margin-left: 0; }
  

.users-style1 h6 {
  font-size: 12px;
  text-transform: uppercase;
  padding: 12px 25px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.05);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  border-radius: 30px;
  margin-left: 15px; }

.users-style2 span, .users-style2 .fit-img {
  width: 40px;
  height: 40px !important;
  border-radius: 50%;
  overflow: hidden;
  margin-left: -15px;
  display: inline-block;
  border: 1px solid rgba(251, 251, 251, 0.5); }
  .users-style2 span:first-of-type, .users-style2 .fit-img:first-of-type {
    margin-left: 0; }
  .users-style2 span:last-of-type, .users-style2 .fit-img:last-of-type {
    color: #000;
    background: #fff;
    line-height: 40px;
    text-align: center;
    position: relative;
    z-index: 3; }

.users-style3 .users .fit-img, .users-style3 .users span {
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  border-radius: 5px;
  border: 1px solid #fff;
  overflow: hidden;
  margin-left: -25px; }
  .users-style3 .users .fit-img:first-of-type, .users-style3 .users span:first-of-type {
    margin-left: 0; }

.users-style3 .users .text {
  background: #141414;
  color: #fff;
  font-size: 12px; }

/* progress */
.progress-style1 .skill-progress {
  height: 8px;
  border-radius: 10px;
  background: rgba(111, 111, 111, 0.1); }
  .progress-style1 .skill-progress .progres {
    border-radius: 10px; }
    .progress-style1 .skill-progress .progres:after {
      padding: 5px 15px;
      border-radius: 30px;
      background: #141414;
      color: #fff;
      top: -40px;
      right: -20px; }

/* accordion */
.accordion-style1 .accordion-item {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  padding: 30px 0;
  background: transparent; }
  .accordion-style1 .accordion-item .icon-arrow {
    width: 40px;
    height: 40px;
    line-height: 40px;
    border: 1px solid transparent;
    border-radius: 50%;
    padding: 10px; }
  .accordion-style1 .accordion-item .accordion-button:not(.collapsed) .icon-arrow {
    border-color: rgba(0, 0, 0, 0.2); }

.accordion-style1 .accordion-header .tags a {
  padding: 10px 20px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 30px;
  margin: 0 -5px; }

.accordion-style1.bord-style2 .accordion-item {
  border-color: rgba(255, 255, 255, 0.1); }
  .accordion-style1.bord-style2 .accordion-item .accordion-button:not(.collapsed) .arrow {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg); }

.accordion-style1.bord-style2 .accordion-body {
  padding: 0; }

.accordion-style2 .accordion-item {
  padding: 25px;
  background: rgba(255, 255, 255, 0.5);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  border-radius: 15px;
  -webkit-box-shadow: 0px 10px 50px rgba(0, 0, 0, 0.03);
  box-shadow: 0px 10px 50px rgba(0, 0, 0, 0.03);
  border: 0; }
  .accordion-style2 .accordion-item .accordion-button:not(.collapsed) .arrow {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg); }
  .accordion-style2 .accordion-item.active h6 {
    font-weight: 600; }
  .accordion-style2 .accordion-item .accordion-body {
    padding: 15px 0 0; }

/* Overflow */
.overflow-visible {
  overflow: visible; }

.overflow-x-hidden {
  overflow-x: hidden; }

.overflow-y-hidden {
  overflow-y: hidden; }

/* Overlap section */
.overlap-section {
  position: relative; }

.overlap-height {
  -webkit-transition: .3s height;
  -o-transition: .3s height;
  transition: .3s height; }

/* Tags */
.tags-style1 {
  font-size: 14px; }
  .tags-style1 span, .tags-style1 a {
    padding: 12px 25px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 30px;
    margin-top: 5px; }

.lines-bg {
  background-image: -webkit-linear-gradient(315deg, transparent 45%, rgba(255, 255, 255, 0.1) 45%, rgba(255, 255, 255, 0.1) 55%, transparent 0);
  background-image: -o-linear-gradient(315deg, transparent 45%, rgba(255, 255, 255, 0.1) 45%, rgba(255, 255, 255, 0.1) 55%, transparent 0);
  background-image: linear-gradient(135deg, transparent 45%, rgba(255, 255, 255, 0.1) 45%, rgba(255, 255, 255, 0.1) 55%, transparent 0);
  background-size: 5px 5px; }

.v-align-between {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

/* CSS filter */
.filter-mix-100 {
  -webkit-filter: grayscale(100%) invert(100%);
  filter: grayscale(100%) invert(100%); }

.filter-grayscale-100 {
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%); }

/* Input */
input, select, textarea, .form-control, .form-select {
  padding: 12px 25px;
  width: 100%;
  max-width: 100%;
  resize: none;
  outline: none;
  font-size: 16px;
  border: 1px solid #e4e4e4;
  color: var(--medium-gray);
  line-height: inherit;
  word-break: normal; }

.form-select {
  color: var(--medium-gray); }
  .form-select:focus {
    border-color: #dfdfdf; }

input:focus, select:focus, textarea:focus, .form-control:focus {
  border: 1px solid #c2c2c2;
  -webkit-box-shadow: none;
  box-shadow: none;
  color: var(--medium-gray); }

.search-error {
  border-color: var(--red); }

/* Select */
.select {
  position: relative; }
  .select:after {
    content: "\e842";
    font-family: feather !important;
    right: 20px;
    top: 50%;
    height: 34px;
    position: absolute;
    pointer-events: none;
    font-size: 22px;
    margin-top: -15px; }

/* Input size */
.input-small,
.textarea-small,
.select-small {
  padding: 7px 15px;
  font-size: 12px; }

.input-medium,
.textarea-medium,
.select-medium {
  padding: 14px 28px; }

.input-large {
  padding: 16px 32px; }

.form-control.is-invalid:focus {
  -webkit-box-shadow: none;
  box-shadow: none; }

.main-marq {
  position: relative;
  padding: 0;
  overflow: hidden !important; }
  .main-marq .box h2, .main-marq .box h3, .main-marq .box h4, .main-marq .box h5 {
    white-space: nowrap; }
  .main-marq .slide-har {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .main-marq .box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }

.slide-har {
  position: relative; }
  .slide-har.st1 .box {
    position: relative;
    -webkit-animation: slide-har 80s linear infinite;
    animation: slide-har 80s linear infinite; }
  .slide-har.st2 .box {
    position: relative;
    -webkit-animation: slide-har-revers 80s linear infinite;
    animation: slide-har-revers 80s linear infinite; }

@-webkit-keyframes slide-har {
  0% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%); }
  100% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%); } }

@keyframes slide-har {
  0% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%); }
  100% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%); } }

@-webkit-keyframes slide-har-revers {
  100% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%); }
  0% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%); } }

@keyframes slide-har-revers {
  100% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%); }
  0% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%); } }

/* Stroke Text */
.stroke-light {
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke-width: .5px;
  -webkit-text-stroke-color: #fff; }

.stroke {
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke-width: .5px;
  -webkit-text-stroke-color: #000; }

/* Swiper controls */
.swiper-contr-style1 {
  position: relative;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  display: inline-block;
  padding: 5px 15px;
  border-radius: 40px;
  background: rgba(0, 0, 0, 0.02);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px); }
  .swiper-contr-style1 .swiper-pagination {
    position: static;
    margin: -4px 15px 0; }
    .swiper-contr-style1 .swiper-pagination span {
      margin: 0 8px;
      width: 6px;
      height: 6px;
      border-radius: 50%; }
    .swiper-contr-style1 .swiper-pagination .swiper-pagination-bullet-active {
      background: #111; }
  .swiper-contr-style1 .swiper-button-prev,
  .swiper-contr-style1 .swiper-button-next {
    position: static;
    margin: 0;
    width: auto;
    height: auto;
    display: inline-block;
    color: inherit; }
    .swiper-contr-style1 .swiper-button-prev:after,
    .swiper-contr-style1 .swiper-button-next:after {
      font-size: 13px; }

.swiper-contr-style2 {
  position: relative;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  display: inline-block;
  padding: 8px 15px;
  border-radius: 40px;
  border: 1px solid rgba(0, 0, 0, 0.2); }
  .swiper-contr-style2 .swiper-pagination {
    position: static;
    margin: 0px 15px 0;
    font-size: 14px; }
    .swiper-contr-style2 .swiper-pagination span {
      margin: 0 8px;
      width: 6px;
      height: 6px;
      border-radius: 50%; }
    .swiper-contr-style2 .swiper-pagination .swiper-pagination-bullet-active {
      background: #111; }
    .swiper-contr-style2 .swiper-pagination .swiper-pagination-current {
      position: relative;
      padding-right: 30px; }
      .swiper-contr-style2 .swiper-pagination .swiper-pagination-current:after {
        content: '/';
        position: absolute;
        right: 0;
        top: -1px; }
  .swiper-contr-style2 .swiper-button-prev,
  .swiper-contr-style2 .swiper-button-next {
    position: static;
    margin: 0;
    width: auto;
    height: auto;
    display: inline-block;
    color: inherit; }
    .swiper-contr-style2 .swiper-button-prev:after,
    .swiper-contr-style2 .swiper-button-next:after {
      font-size: 13px; }

.swiper-contr-style3 {
  position: relative; }
  .swiper-contr-style3 .swiper-pagination {
    position: static;
    margin: -4px 15px 0; }
    .swiper-contr-style3 .swiper-pagination span {
      margin: 0 8px;
      width: 6px;
      height: 6px;
      border-radius: 50%; }
    .swiper-contr-style3 .swiper-pagination .swiper-pagination-bullet-active {
      background: #111; }
  .swiper-contr-style3 .swiper-button-prev,
  .swiper-contr-style3 .swiper-button-next {
    position: static;
    margin: 0;
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.1);
    display: inline-block;
    color: inherit; }
    .swiper-contr-style3 .swiper-button-prev:after,
    .swiper-contr-style3 .swiper-button-next:after {
      font-size: 13px; }
    .swiper-contr-style3 .swiper-button-prev:hover,
    .swiper-contr-style3 .swiper-button-next:hover {
      background: #fff;
      color: #0f130f; }

/* Swiper width auto */
.swiper-width-auto .swiper-slide {
  width: auto; }

/* Full screen */
.full-screen {
  height: 100vh; }

.full-screen.top-space-margin {
  height: calc(100vh - 96px); }

.pattern-overlay {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  pointer-events: none; }

/* Will change */
.will-change-transform * {
  will-change: transform; }

.will-change-inherit * {
  will-change: inherit; }

.animation-rotation {
  -webkit-animation: rotation 8s infinite linear; }

@-webkit-keyframes rotation {
  from {
    -webkit-transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(359deg); } }

/* Float animation */
.animation-float {
  -webkit-animation: float 2000ms linear 500ms infinite alternate both;
  animation: float 2000ms linear 500ms infinite alternate both; }

@-webkit-keyframes float {
  0% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px); }
  50% {
    -webkit-transform: translateY(15px);
    transform: translateY(15px); }
  100% {
    -webkit-transform: translateY(30px);
    transform: translateY(30px); } }

@keyframes float {
  0% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px); }
  50% {
    -webkit-transform: translateY(15px);
    transform: translateY(15px); }
  100% {
    -webkit-transform: translateY(30px);
    transform: translateY(30px); } }

.animation-float-small {
  -webkit-animation: float 2000ms linear 500ms infinite alternate both;
  animation: float 2000ms linear 500ms infinite alternate both; }

@keyframes float {
  0% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px); }
  50% {
    -webkit-transform: translateY(5px);
    transform: translateY(5px); }
  100% {
    -webkit-transform: translateY(10px);
    transform: translateY(10px); } }

/* Zoom animation */
.animation-zoom {
  -webkit-animation: zoom-in-zoom-out 2000ms linear 500ms infinite alternate both;
  animation: zoom-in-zoom-out 2000ms linear 500ms infinite alternate both; }

@-webkit-keyframes zoom-in-zoom-out {
  0% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1); }
  50% {
    -webkit-transform: scale(1.2, 1.2);
    transform: scale(1.2, 1.2); }
  100% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1); } }

@keyframes zoom-in-zoom-out {
  0% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1); }
  50% {
    -webkit-transform: scale(1.2, 1.2);
    transform: scale(1.2, 1.2); }
  100% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1); } }

/* ===================================
    06. Background and border
====================================== */
/* Background color */
.bg-base-color {
  background-color: var(--base-color); }

.bg-dark-gray,
.bg-dark-gray:focus {
  background-color: var(--dark-gray); }

.bg-black {
  background-color: var(--black);
  color: #fff; }

.bg-alt-black {
  background-color: var(--alt-black);
  color: #fff; }

.bg-medium-gray {
  background-color: var(--medium-gray); }

.bg-light-medium-gray {
  background-color: var(--light-medium-gray); }

.bg-extra-medium-gray {
  background-color: var(--extra-medium-gray); }

.bg-light-gray {
  background-color: var(--light-gray); }

.bg-very-light-gray {
  background-color: var(--very-light-gray); }

.bg-red {
  background-color: var(--red); }

.bg-light-red {
  background-color: var(--light-red); }

.bg-light-yellow {
  background-color: var(--light-yellow); }

.bg-light-green {
  background-color: var(--light-green); }

.bg-green {
  background-color: var(--green); }

.bg-crusoe-green {
  background-color: var(--crusoe-green); }

.bg-yellow {
  background-color: var(--yellow); }

.bg-charcoal-blue {
  background-color: var(--charcoal-blue); }

.bg-slate-blue {
  background-color: var(--slate-blue); }

.bg-medium-slate-blue {
  background-color: var(--medium-slate-blue); }

.bg-extra-medium-slate-blue {
  background-color: var(--extra-medium-slate-blue); }

.bg-dark-slate-blue {
  background-color: var(--dark-slate-blue); }

.bg-extra-dark-slate-blue {
  background-color: var(--extra-dark-slate-blue); }

.bg-extra-very-slate-blue {
  background-color: var(--extra-very-slate-blue);
  color: #fff; }

.bg-tussock-yellow {
  background-color: var(--tussock-yellow); }

.bg-solitude-blue {
  background-color: var(--solitude-blue); }

.bg-aluminium-grey {
  background-color: var(--aluminium-grey); }

.bg-selago {
  background-color: var(--selago); }

.bg-white-ice {
  background-color: var(--white-ice); }

.bg-golden-yellow {
  background-color: var(--golden-yellow); }

.bg-jade {
  background-color: var(--jade); }

.bg-orange {
  background-color: var(--orange); }

.bg-light-majorelle-blue {
  background-color: var(--light-majorelle-blue); }

.bg-majorelle-blue {
  background-color: var(--majorelle-blue); }

.bg-spring-wood {
  background-color: var(--spring-wood); }

.bg-tropical-blue {
  background-color: var(--tropical-blue); }

.bg-cornflower-blue {
  background-color: var(--cornflower-blue); }

.bg-camarone {
  background-color: var(--camarone); }

.bg-seal-brown {
  background-color: var(--seal-brown); }

.bg-Wasabi {
  background-color: var(--Wasabi); }

.bg-dark-gray-transparent {
  background-color: rgba(35, 35, 35, 0.8); }

.bg-dark-gray-transparent-light {
  background-color: rgba(35, 35, 35, 0.2); }

.bg-dark-gray-transparent-medium {
  background-color: rgba(35, 35, 35, 0.4); }

.bg-medium-gray-transparent {
  background-color: rgba(111, 111, 111, 0.1); }

.bg-light-gray-transparent {
  background-color: #fbfbfb; }

.bg-medium-gray-transparent {
  background-color: rgba(136, 136, 136, 0.3); }

.bg-black-transparent-light {
  background-color: rgba(0, 0, 0, 0.2); }

.bg-black-transparent-medium {
  background-color: rgba(0, 0, 0, 0.5); }

.bg-black-transparent {
  background-color: rgba(0, 0, 0, 0.8); }

.bg-white-transparent-extra-light,
.bg-white-transparent-extra-light:focus {
  background-color: rgba(255, 255, 255, 0.1); }

.bg-white-transparent-very-light {
  background-color: rgba(255, 255, 255, 0.2); }

.bg-white-transparent-light {
  background-color: rgba(255, 255, 255, 0.4); }

.bg-white-transparent {
  background-color: rgba(255, 255, 255, 0.7); }

/* Background image */
.bg-img {
  background-size: cover !important; }

.contain-background {
  background-size: contain !important; }

.cover-background {
  background-repeat: no-repeat;
  background-size: cover;
  overflow: hidden;
  background-position: center center; }

.fix-background {
  position: relative;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: fixed; }

.fit-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
border-radius: 12px; }

.background-size-inherit {
  background-size: inherit; }

.background-attachment-inherit {
  background-attachment: inherit; }

.background-position-left {
  background-position: left center; }

.background-position-left-bottom {
  background-position: left bottom; }

.background-position-left-center {
  background-position: left center; }

.background-position-right {
  background-position: right center; }

.background-position-right-top {
  background-position: right top; }

.background-position-center-top {
  background-position: center top; }

.background-position-left-top {
  background-position: left top; }

.background-position-right-bottom {
  background-position: right bottom; }

.background-position-center-bottom {
  background-position: center bottom; }

.background-repeat {
  background-repeat: repeat; }

.background-no-repeat {
  background-repeat: no-repeat; }

.background-no-repeat-y {
  background-repeat-y: no-repeat; }

.background-position-center {
  background-position: center; }

/* Background size */
.background-size-100 {
  background-size: 100%; }

.background-size-auto-100 {
  background-size: auto 100%; }

/* Border style */
.border-dotted {
  border-style: dotted; }

.border-dashed {
  border-style: dashed; }

.border-solid {
  border-style: solid; }

.border-double {
  border-style: double; }

.border-groove {
  border-style: groove; }

.border-ridge {
  border-style: ridge; }

.border-inset {
  border-style: inset; }

.border-outset {
  border-style: outset; }

.border-none {
  border-style: none; }

.border-hidden {
  border-style: hidden; }

/* Border color */
.border-color-base-color {
  border-color: var(--base-color); }

.border-color-white {
  border-color: var(--white); }

.border-color-dark-gray {
  border-color: var(--dark-gray); }

.border-color-medium-gray {
  border-color: var(--medium-gray); }

.border-color-light-gray {
  border-color: var(--light-gray); }

.border-color-very-light-gray {
  border-color: var(--very-light-gray); }

.border-color-light-medium-gray {
  border-color: var(--light-medium-gray); }

.border-color-extra-medium-gray {
  border-color: var(--extra-medium-gray); }

.border-color-yellow {
  border-color: var(--yellow); }

.border-color-orange {
  border-color: var(--orange); }

.border-color-red {
  border-color: var(--red); }

.border-color-transparent-dark-very-light {
  border-color: rgba(35, 35, 35, 0.1); }

.border-color-transparent-dark-light {
  border-color: rgba(35, 35, 35, 0.2); }

.border-color-transparent-white-very-light {
  border-color: rgba(255, 255, 255, 0.3); }

.border-color-transparent-white-light {
  border-color: rgba(255, 255, 255, 0.1); }

.border-color-transparent-white {
  border-color: rgba(255, 255, 255, 0.6); }

.border-color-transparent {
  border-color: transparent; }

.border-color-transparent-on-hover:hover {
  border-color: transparent; }

/* Border radius */
.border-radius-0px {
  border-radius: 0; }

.border-radius-1px {
  border-radius: 1px; }

.border-radius-2px {
  border-radius: 2px; }

.border-radius-3px {
  border-radius: 3px; }

.border-radius-4px {
  border-radius: 4px; }

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

.border-radius-6px {
  border-radius: 6px; }

.border-radius-7px {
  border-radius: 7px; }

.border-radius-8px {
  border-radius: 8px; }

.border-radius-9px {
  border-radius: 9px; }

.border-radius-10px {
  border-radius: 10px; }

.border-radius-15px {
  border-radius: 15px; }

.border-radius-18px {
  border-radius: 18px; }

.border-radius-20px {
  border-radius: 20px; }

.border-radius-22px {
  border-radius: 22px; }

.border-radius-24px {
  border-radius: 24px; }

.border-radius-26px {
  border-radius: 26px; }

.border-radius-30px {
  border-radius: 30px; }

.border-radius-40px {
  border-radius: 40px; }

.border-radius-50px {
  border-radius: 50px; }

.border-radius-80px {
  border-radius: 80px; }

.border-radius-100px {
  border-radius: 100px; }

.border-radius-50 {
  border-radius: 50%; }

.border-radius-100 {
  border-radius: 100%; }

.no-border-radius {
  border-radius: 0; }

.border-radius-top-left {
  border-radius: 10px 0 0 10px; }

/* Parallax background */
.parallax {
  position: relative;
  background-size: cover;
  overflow: hidden;
  background-attachment: fixed;
  -o-transition-timing-function: none;
  transition-timing-function: none;
  -webkit-transition-timing-function: none;
  -o-transition-duration: 0s;
  transition-duration: 0s;
  -webkit-transition-duration: 0s; }

/* ===================================
    07. Width
====================================== */
.w-1px {
  width: 1px; }

.w-2px {
  width: 2px; }

.w-3px {
  width: 3px; }

.w-4px {
  width: 4px; }

.w-5px {
  width: 5px; }

.w-6px {
  width: 6px; }

.w-7px {
  width: 7px; }

.w-8px {
  width: 8px; }

.w-9px {
  width: 9px; }

.w-10px {
  width: 10px; }

.w-15px {
  width: 15px; }

.w-20px {
  width: 20px; }

.w-25px {
  width: 25px; }

.w-30px {
  width: 30px; }

.w-35px {
  width: 35px; }

.w-40px {
  width: 40px; }

.w-45px {
  width: 45px; }

.w-50px {
  width: 50px; }

.w-55px {
  width: 55px; }

.w-60px {
  width: 60px; }

.w-65px {
  width: 65px; }

.w-70px {
  width: 70px; }

.w-75px {
  width: 75px; }

.w-80px {
  width: 80px; }

.w-85px {
  width: 85px; }

.w-90px {
  width: 90px; }

.w-95px {
  width: 95px; }

.w-100px {
  width: 100px; }

.w-110px {
  width: 110px; }

.w-120px {
  width: 120px; }

.w-130px {
  width: 130px; }

.w-140px {
  width: 140px; }

.w-150px {
  width: 150px; }

.w-160px {
  width: 160px; }

.w-170px {
  width: 170px; }

.w-180px {
  width: 180px; }

.w-190px {
  width: 190px; }

.w-200px {
  width: 200px; }

.w-210px {
  width: 210px; }

.w-220px {
  width: 220px; }

.w-230px {
  width: 230px; }

.w-240px {
  width: 240px; }

.w-250px {
  width: 250px; }

.w-260px {
  width: 260px; }

.w-270px {
  width: 270px; }

.w-280px {
  width: 280px; }

.w-290px {
  width: 290px; }

.w-300px {
  width: 300px; }

.w-310px {
  width: 310px; }

.w-320px {
  width: 320px; }

.w-330px {
  width: 330px; }

.w-340px {
  width: 340px; }

.w-350px {
  width: 350px; }

.w-360px {
  width: 360px; }

.w-370px {
  width: 370px; }

.w-380px {
  width: 380px; }

.w-390px {
  width: 390px; }

.w-400px {
  width: 400px; }

.w-450px {
  width: 450px; }

.w-500px {
  width: 500px; }

.w-550px {
  width: 550px; }

.w-600px {
  width: 600px; }

.w-650px {
  width: 650px; }

.w-700px {
  width: 700px; }

.w-750px {
  width: 750px; }

.w-800px {
  width: 800px; }

.w-850px {
  width: 850px; }

.w-900px {
  width: 900px; }

.w-950px {
  width: 950px; }

.w-1000px {
  width: 1000px; }

.w-10 {
  width: 10%; }

.w-15 {
  width: 15%; }

.w-20 {
  width: 20%; }

.w-25 {
  width: 25%; }

.w-30 {
  width: 30%; }

.w-35 {
  width: 35%; }

.w-40 {
  width: 40%; }

.w-45 {
  width: 45%; }

.w-50 {
  width: 50%; }

.w-55 {
  width: 55%; }

.w-60 {
  width: 60%; }

.w-65 {
  width: 65%; }

.w-70 {
  width: 70%; }

.w-75 {
  width: 75%; }

.w-80 {
  width: 80%; }

.w-85 {
  width: 85%; }

.w-90 {
  width: 90%; }

.w-95 {
  width: 95%; }

.w-100 {
  width: 100%; }

.w-auto {
  width: auto; }

/* ===================================
    08. Height
====================================== */
.h-1px {
  height: 1px; }

.h-2px {
  height: 2px; }

.h-3px {
  height: 3px; }

.h-4px {
  height: 4px; }

.h-5px {
  height: 5px; }

.h-6px {
  height: 6px; }

.h-7px {
  height: 7px; }

.h-8px {
  height: 8px; }

.h-9px {
  height: 9px; }

.h-10px {
  height: 10px; }

.h-11px {
  height: 11px; }

.h-12px {
  height: 12px; }

.h-13px {
  height: 13px; }

.h-14px {
  height: 14px; }

.h-15px {
  height: 15px; }

.h-20px {
  height: 20px; }

.h-25px {
  height: 25px; }

.h-30px {
  height: 30px; }

.h-35px {
  height: 35px; }

.h-40px {
  height: 40px; }

.h-42px {
  height: 42px; }

.h-45px {
  height: 45px; }

.h-50px {
  height: 50px; }

.h-55px {
  height: 55px; }

.h-60px {
  height: 60px; }

.h-65px {
  height: 65px; }

.h-70px {
  height: 70px; }

.h-75px {
  height: 75px; }

.h-80px {
  height: 80px; }

.h-85px {
  height: 85px; }

.h-90px {
  height: 90px; }

.h-95px {
  height: 95px; }

.h-100px {
  height: 100px; }

.h-110px {
  height: 110px; }

.h-120px {
  height: 120px; }

.h-130px {
  height: 130px; }

.h-140px {
  height: 140px; }

.h-150px {
  height: 150px; }

.h-160px {
  height: 160px; }

.h-170px {
  height: 170px; }

.h-180px {
  height: 180px; }

.h-190px {
  height: 190px; }

.h-200px {
  height: 200px; }

.h-210px {
  height: 210px; }

.h-220px {
  height: 220px; }

.h-230px {
  height: 230px; }

.h-240px {
  height: 240px; }

.h-250px {
  height: 250px; }

.h-260px {
  height: 260px; }

.h-270px {
  height: 270px; }

.h-280px {
  height: 280px; }

.h-290px {
  height: 290px; }

.h-300px {
  height: 300px; }

.h-350px {
  height: 350px; }

.h-400px {
  height: 400px; }

.h-450px {
  height: 450px; }

.h-480px {
  height: 480px; }

.h-500px {
  height: 500px; }

.h-550px {
  height: 550px; }

.h-580px {
  height: 580px; }

.h-600px {
  height: 600px; }

.h-650px {
  height: 650px; }

.h-700px {
  height: 700px; }

.h-750px {
  height: 750px; }

.h-800px {
  height: 800px; }

.h-850px {
  height: 850px; }

.h-auto {
  height: auto; }

/* Screen height */
.extra-very-small-screen {
  height: 250px; }

.extra-small-screen {
  height: 300px; }

.small-screen {
  height: 400px; }

.one-half-screen {
  height: 600px; }

.one-third-screen {
  height: 700px; }

.one-fourth-screen {
  height: 800px; }

.one-fifth-screen {
  height: 900px; }

.one-sixth-screen {
  height: 1000px; }

.one-seventh-screen {
  height: 1200px; }

@media (prefers-reduced-motion: no-preference) {
  :root {
    scroll-behavior: auto; } }

/* overlay dark&light */
[data-overlay-dark],
[data-overlay-light] {
  position: relative; }

[data-overlay-dark] .container,
[data-overlay-dark] .container-xxl,
[data-overlay-light] .container-xxl,
[data-overlay-light] .container {
  position: relative;
  z-index: 7; }

[data-overlay-dark]:before,
[data-overlay-light]:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  pointer-events: none; }

[data-overlay-dark]:before {
  background: #141414; }

[data-overlay-light]:before {
  background: #fff; }

[data-overlay-dark],
[data-overlay-dark] h1,
[data-overlay-dark] h2,
[data-overlay-dark] h3,
[data-overlay-dark] h4,
[data-overlay-dark] h5,
[data-overlay-dark] h6,
[data-overlay-dark] span,
.bg-dark h1,
.bg-dark h2,
.bg-dark h3,
.bg-dark h4,
.bg-dark h5,
.bg-dark h6,
.bg-dark span,
.bg-color h1,
.bg-color h2,
.bg-color h3,
.bg-color h4,
.bg-color h5,
.bg-color h6,
.bg-color span {
  color: #fff; }

[data-overlay-dark="0"]:before,
[data-overlay-light="0"]:before {
  opacity: 0; }

[data-overlay-dark="1"]:before,
[data-overlay-light="1"]:before {
  opacity: .1; }

[data-overlay-dark="2"]:before,
[data-overlay-light="2"]:before {
  opacity: .2; }

[data-overlay-dark="3"]:before,
[data-overlay-light="3"]:before {
  opacity: .3; }

[data-overlay-dark="4"]:before,
[data-overlay-light="4"]:before {
  opacity: .4; }

[data-overlay-dark="5"]:before,
[data-overlay-light="5"]:before {
  opacity: .5; }

[data-overlay-dark="6"]:before,
[data-overlay-light="6"]:before {
  opacity: .6; }

[data-overlay-dark="7"]:before,
[data-overlay-light="7"]:before {
  opacity: .7; }

[data-overlay-dark="8"]:before,
[data-overlay-light="8"]:before {
  opacity: .8; }

[data-overlay-dark="9"]:before,
[data-overlay-light="9"]:before,
[data-overlay-color="9"]:before {
  opacity: .9; }

[data-overlay-dark="10"]:before,
[data-overlay-light="10"]:before {
  opacity: 1; }

/* Grid */
.row.sm-marg {
  margin-left: -5px;
  margin-right: -5px; }
  .row.sm-marg > * {
    padding-left: 5px;
    padding-right: 5px; }

.row.stand-marg {
  margin-left: -20px;
  margin-right: -20px; }
  .row.stand-marg > * {
    padding-left: 20px;
    padding-right: 20px; }

.row.md-marg {
  margin-left: -25px;
  margin-right: -25px; }
  .row.md-marg > * {
    padding-left: 25px;
    padding-right: 25px; }

.row.lg-marg {
  margin-left: -40px;
  margin-right: -40px; }
  .row.lg-marg > * {
    padding-left: 40px;
    padding-right: 40px; }

.row.xlg-marg {
  margin-left: -50px;
  margin-right: -50px; }
  .row.xlg-marg > * {
    padding-left: 50px;
    padding-right: 50px; }

.row.xxlg-marg {
  margin-left: -80px;
  margin-right: -80px; }
  .row.xxlg-marg > * {
    padding-left: 80px;
    padding-right: 80px; }

.container-xxl {
  max-width: 1440px; }

.container {
  max-width: 1320px; }

/* ===================================
    06. Typography
====================================== */
/* Heading */
h1, .h1 {
  font-size: 64px; }

h2, .h2 {
  font-size: 48px; }

h3, .h3 {
  font-size: 36px; }

h4 {
  font-size: 32px; }

h5 {
  font-size: 28px; }

h6 {
  font-size: 22px; }
  h6.regular {
    font-size: 18px; }

.lg-text {
  font-size: 96px; }

.md-text {
  font-size: 54px; }

.sm-text {
  font-size: 20px; }

.h1 .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0;
  line-height: 1.2;
  font-weight: 500; }

p {
  color: #a8a8a8;
  font-size: 17px;
  line-height: 1.5;
  margin-bottom: 0; }

span, a {
  display: inline-block; }

a {
  text-decoration: none;
  color: inherit; }
  a:hover, a:focus, a:active {
    color: inherit; }

/* Font custom */
.font-style-italic {
  font-style: italic; }

.hover-text {
  display: none; }

b, strong {
  font-weight: 700; }

.text-white-space-nowrap {
  white-space: nowrap; }

.text-white-space-normal {
  white-space: normal; }

.text-transform-none {
  text-transform: none !important; }

.text-uppercase-inherit {
  text-transform: inherit !important; }

.text-uppercase {
  text-transform: uppercase; }

.word-break-normal {
  word-break: normal; }

.vertical-align-top {
  vertical-align: top; }

.text-align-left {
  text-align: left; }

.text-align-right {
  text-align: right; }

.text-align-center {
  text-align: center; }

/* Font size */
.fs-0 {
  font-size: 0 !important; }

.fs-9 {
  font-size: 9px !important; }

.fs-10 {
  font-size: 10px !important; }

.fs-11 {
  font-size: 11px !important; }

.fs-12 {
  font-size: 12px !important; }

.fs-13 {
  font-size: 13px !important; }

.fs-14 {
  font-size: 14px !important; }

.fs-15 {
  font-size: 15px !important; }

.fs-16 {
  font-size: 16px !important; }

.fs-17 {
  font-size: 17px !important; }

.fs-18 {
  font-size: 18px !important; }

.fs-19 {
  font-size: 19px !important; }

.fs-20 {
  font-size: 20px !important; }

.fs-22 {
  font-size: 22px !important; }

.fs-24 {
  font-size: 24px !important;
  line-height: 32px; }

.fs-26 {
  font-size: 26px !important; }

.fs-28 {
  font-size: 28px !important; }

.fs-30 {
  font-size: 30px !important; }

.fs-32 {
  font-size: 32px !important; }

.fs-40 {
  font-size: 40px !important; }

.fs-45 {
  font-size: 45px !important; }

.fs-50 {
  font-size: 50px !important; }

.fs-55 {
  font-size: 55px !important; }

.fs-60 {
  font-size: 60px !important; }

.fs-65 {
  font-size: 65px !important; }

.fs-70 {
  font-size: 70px !important; }

.fs-75 {
  font-size: 75px !important; }

.fs-80 {
  font-size: 80px !important; }

.fs-85 {
  font-size: 85px !important; }

.fs-90 {
  font-size: 90px !important; }

.fs-95 {
  font-size: 95px !important; }

.fs-100 {
  font-size: 100px !important; }

.fs-110 {
  font-size: 6.875rem; }

.fs-120 {
  font-size: 7.5rem; }

.fs-130 {
  font-size: 8.125rem; }

.fs-140 {
  font-size: 8.75rem; }

.fs-150 {
  font-size: 9.375rem; }

.fs-160 {
  font-size: 10rem; }

.fs-170 {
  font-size: 10.625rem; }

.fs-180 {
  font-size: 11.25rem; }

.fs-190 {
  font-size: 11.875rem; }

.fs-200 {
  font-size: 12.5rem; }

.fs-225 {
  font-size: 14.063rem; }

.fs-250 {
  font-size: 15.625rem; }

.fs-275 {
  font-size: 17.188rem; }

.fs-300 {
  font-size: 18.75rem; }

.fs-350 {
  font-size: 21.875rem; }

.fs-400 {
  font-size: 25rem; }

/* Line height */
.lh-0px {
  line-height: 0px; }

.lh-10 {
  line-height: 10px; }

.lh-11 {
  line-height: 11px; }

.lh-12 {
  line-height: 12px; }

.lh-13 {
  line-height: 13px; }

.lh-14 {
  line-height: 14px; }

.lh-15 {
  line-height: 15px; }

.lh-16 {
  line-height: 16px; }

.lh-18 {
  line-height: 18px; }

.lh-19 {
  line-height: 19px; }

.lh-20 {
  line-height: 20px; }

.lh-22 {
  line-height: 22px; }

.lh-24 {
  line-height: 24px; }

.lh-26 {
  line-height: 26px; }

.lh-28 {
  line-height: 28px; }

.lh-30 {
  line-height: 30px; }

.lh-32 {
  line-height: 2rem; }

.lh-34 {
  line-height: 2.125rem; }

.lh-36 {
  line-height: 2.25rem; }

.lh-38 {
  line-height: 2.375rem; }

.lh-40 {
  line-height: 2.5rem; }

.lh-42 {
  line-height: 2.625rem; }

.lh-44 {
  line-height: 2.75rem; }

.lh-46 {
  line-height: 2.875rem; }

.lh-48 {
  line-height: 3rem; }

.lh-50 {
  line-height: 3.125rem; }

.lh-55 {
  line-height: 3.438rem; }

.lh-60 {
  line-height: 3.75rem; }

.lh-65 {
  line-height: 4.063rem; }

.lh-70 {
  line-height: 4.375rem; }

.lh-75 {
  line-height: 4.688rem; }

.lh-80 {
  line-height: 5rem; }

.lh-85 {
  line-height: 5.313rem; }

.lh-90 {
  line-height: 5.625rem; }

.lh-95 {
  line-height: 5.938rem; }

.lh-100 {
  line-height: 6.25rem; }

.lh-105 {
  line-height: 6.563rem; }

.lh-110 {
  line-height: 6.875rem; }

.lh-115 {
  line-height: 7.188rem; }

.lh-120 {
  line-height: 7.5rem; }

.lh-0 {
  line-height: 0; }

.lh-normal {
  line-height: normal; }

.lh-initial {
  line-height: initial; }

.lh-inherit {
  line-height: inherit; }

/* Text stroke width */
.text-outline-width-1px {
  -webkit-text-stroke-width: 1px; }

.text-outline-width-2px {
  -webkit-text-stroke-width: 2px; }

.text-outline-width-3px {
  -webkit-text-stroke-width: 3px; }

.text-outline-width-4px {
  -webkit-text-stroke-width: 4px; }

.text-outline-width-5px {
  -webkit-text-stroke-width: 5px; }

/* Letter spacing */
.ls-0px {
  letter-spacing: 0px !important; }

.ls-05px {
  letter-spacing: .5px !important; }

.ls-1px {
  letter-spacing: 1px !important; }

.ls-2px {
  letter-spacing: 2px !important; }

.ls-3px {
  letter-spacing: 3px !important; }

.ls-4px {
  letter-spacing: 4px !important; }

.ls-5px {
  letter-spacing: 5px !important; }

.ls-6px {
  letter-spacing: 6px !important; }

.ls-7px {
  letter-spacing: 7px !important; }

.ls-8px {
  letter-spacing: 8px !important; }

.ls-9px {
  letter-spacing: 9px !important; }

.ls-10px {
  letter-spacing: 10px !important; }

.ls-minus-05px {
  letter-spacing: -0.50px !important; }

.ls-minus-1px {
  letter-spacing: -1px !important; }

.ls-minus-2px {
  letter-spacing: -2px !important; }

.ls-minus-3px {
  letter-spacing: -3px !important; }

.ls-minus-4px {
  letter-spacing: -4px !important; }

.ls-minus-5px {
  letter-spacing: -5px !important; }

.ls-minus-6px {
  letter-spacing: -6px !important; }

.ls-minus-7px {
  letter-spacing: -7px !important; }

.ls-minus-8px {
  letter-spacing: -8px !important; }

.ls-minus-9px {
  letter-spacing: -9px !important; }

.ls-minus-10px {
  letter-spacing: -10px !important; }

/* Icon size */
.icon-extra-double-large {
  font-size: 80px; }

.icon-double-large {
  font-size: 60px; }

.icon-extra-large {
  font-size: 50px; }

.icon-large {
  font-size: 42px; }

.icon-medium {
  font-size: 34px; }

.icon-very-medium {
  font-size: 28px; }

.icon-extra-medium {
  font-size: 24px; }

.icon-small {
  font-size: 18px; }

.icon-very-small {
  font-size: 14px; }

/* ===================================
    Buttons
====================================== */
.butn {
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s; }
  .butn.butn-md {
    padding: 15px 35px; }
  .butn.butn-lg {
    padding: 18px 40px; }
  .butn.butn-full {
    padding: 14px 30px;
    width: 100%;
    text-align: center; }
  .butn.bg-light {
    background: #fff;
    border: 1px solid transparent;
    color: #000; }
    .butn.bg-light:hover {
      background: transparent !important;
      border-color: rgba(255, 255, 255, 0.5);
      color: inherit; }
  .butn.butn-line-light {
    padding: 0 0 10px;
    border-bottom: 1px solid #fff;
    width: 100%; }
  .butn.butn-line-dark {
    padding: 0 0 10px;
    border-bottom: 1px solid #666;
    width: 100%; }
    .butn.butn-line-dark img {
      -webkit-filter: invert(1);
      filter: invert(1); }
  .butn.butn-line {
    padding: 0 0 10px;
    border-bottom: 1px solid #000;
    width: 100%; }
  .butn.butn-circle-md {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    line-height: 70px;
    text-align: center; }
    .butn.butn-circle-md img {
      width: 20px; }
  .butn.bord-light {
    border: 1px solid #fff; }
  .butn.bord-gray {
    border: 1px solid #999 !important; }
  .butn.hover-light:hover {
    background: #fff;
    border-color: #fff;
    color: #1d1d1d; }
  .butn.hover-light2:hover {
    background: #eee;
    border-color: #eee;
    color: #1d1d1d; }
  .butn.hover-dark:hover {
    background: #1d1d1d;
    border-color: #1d1d1d;
    color: #fff; }
  .butn.butn-blur {
    color: #fff;
    background: rgba(0, 0, 0, 0.03);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    padding: 10px 15px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 30px;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s; }
    .butn.butn-blur:hover {
      background: #fff;
      color: #1d1d1d; }
      .butn.butn-blur:hover span {
        color: #1d1d1d; }
      .butn.butn-blur:hover img {
        -webkit-filter: invert(1);
        filter: invert(1); }
  .butn.bord-icon {
    border: 1px solid rgba(0, 0, 0, 0.1);
    padding: 7px 10px 7px 20px;
    border-radius: 30px; }
    .butn.bord-icon .icon {
      padding: 8px 10px;
      border-radius: 5px;
      background: rgba(0, 0, 0, 0.03);
      margin-left: 10px; }
    .butn.bord-icon.light-bord {
      border-color: rgba(255, 255, 255, 0.1); }
      .butn.bord-icon.light-bord .icon {
        background: rgba(255, 255, 255, 0.05); }
  .butn.butn-cirle-lg-icon > div {
    display: inline-block;
    width: 160px;
    height: 160px;
    line-height: 170px;
    text-align: center;
    border: 1px solid #1d1d1d;
    border-radius: 50%;
    margin: 0 -10px;
    font-size: 22px;
    text-transform: uppercase;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s; }
    .butn.butn-cirle-lg-icon > div span {
      line-height: 1.2; }
    .butn.butn-cirle-lg-icon > div:last-of-type {
      background: #1d1d1d; }
  .butn.butn-cirle-lg-icon:hover > div {
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%);
    margin: 0 10px; }
    .butn.butn-cirle-lg-icon:hover > div:last-of-type {
      -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
      transform: translateX(-100%); }
  .butn.butn-arrow {
    padding: 10px 20px;
    background: #1d1d1d;
    border-radius: 30px;
    color: #fff; }
    .butn.butn-arrow span {
      margin: 0 3px; }
    .butn.butn-arrow img {
      width: 15px; }
    .butn.butn-arrow.bord {
      background: transparent;
      border: 1px solid rgba(0, 0, 0, 0.5);
      color: inherit; }
  .butn.standerd {
    padding: 14px 30px; }

.butn-arrow {
  width: 60px;
  height: 60px;
  line-height: 60px;
  text-align: center;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%; }
  .butn-arrow:hover {
    background: #fff;
    color: #000; }
    .butn-arrow:hover img {
      -webkit-filter: invert(1);
      filter: invert(1); }

.circle-button {
  position: relative;
  display: inline-block; }
  .circle-button .icon {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%); }
  .circle-button svg {
    width: 250px;
    fill: inherit; }

.butn-circle {
  width: 180px;
  height: 180px;
  border: 1px solid #141414;
  border-radius: 50%;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s; }
  .butn-circle.butn-dark {
    color: #fff;
    background: #141414; }
  .butn-circle.butn-light {
    color: #fff;
    border-color: rgba(255, 255, 255, 0.2); }
    .butn-circle.butn-light:hover {
      background: #fff;
      color: #141414; }
      .butn-circle.butn-light:hover .text {
        color: #141414; }
      .butn-circle.butn-light:hover svg path {
        stroke: #141414; }
  .butn-circle svg path {
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s; }
  .butn-circle:hover {
    background: #141414;
    color: #fff; }
    .butn-circle:hover svg path {
      stroke: #fff; }
    .butn-circle:hover .text-dark {
      color: #fff !important; }

.more-arrow {
  overflow: hidden; }
  .more-arrow span {
    text-indent: -110px;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s; }
  .more-arrow:hover span {
    text-indent: 0; }

.butn-bord-space {
  height: 45px;
  width: 120px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 40px;
  position: relative; }
  .butn-bord-space span {
    position: absolute;
    height: 45px;
    width: 45px;
    line-height: 40px;
    text-align: center;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 50%;
    top: 0;
    right: 0;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s; }
  .butn-bord-space:hover span {
    right: calc(100% - 45px); }

    .butn-arrow-circle {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 12px 30px;
      border: 1.5px solid rgba(255, 255, 255, 0.6);
      border-radius: 50px;
      background: rgba(255, 255, 255, 0.08);
      color: #fff;
      font-family: 'Montserrat', sans-serif;
      font-weight: 600;
      letter-spacing: 0.5px;
      text-transform: uppercase;
      transition: all 0.3s ease;
      backdrop-filter: blur(6px);
    }
    
    .butn-arrow-circle .icon {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 34px;
      height: 34px;
      margin-left: 14px;
      border-radius: 50%;
      background-color: #fe002fc3;/* firemná zelená */
      color: #fff;
      transition: all 0.3s ease;
    }
    
    .butn-arrow-circle:hover {
      background: #fe002f38;
      border-color: #fe002fb9;
      color: #fff;
      transform: translateY(-2px);
      box-shadow: 0 4px 14px rgba(255, 255, 255, 0.25);
    }
    
    .butn-arrow-circle:hover .icon {
      background: #fff;
      color: #fe002fb9;
      transform: rotate(45deg);
    }

    .butn-arrow-circle.small {
      font-size: 12px;       /* menší text */
      padding: 6px 14px;     /* menej výplne */
    }
    
    .butn-arrow-circle.small .icon {
      width: 26px;           /* menší kruh */
      height: 26px;
      margin-left: 10px;     /* menší odstup */
    }
    
    
    
.butn-icon-circle span {
  width: 35px;
  height: 35px;
  line-height: 35px;
  text-align: center;
  border-radius: 50%;
  background: #000; }

.butn-icon-circle.icon-light span {
  background: #fff; }

.view-all {
  text-decoration: underline; }

/* Cursor
-----------------------------------------------------------------*/
.hover-this .hover-anim {
  pointer-events: none;
  -webkit-transition: -webkit-transform 0.2s linear;
  transition: -webkit-transform 0.2s linear;
  -o-transition: transform 0.2s linear;
  transition: transform 0.2s linear;
  transition: transform 0.2s linear, -webkit-transform 0.2s linear; }

.cursor {
  pointer-events: none;
  position: fixed;
  padding: 0.3rem;
  background-color: #fff;
  border-radius: 50%;
  mix-blend-mode: difference;
  -webkit-transition: opacity 0.4s ease, -webkit-transform 0.3s ease;
  transition: opacity 0.4s ease, -webkit-transform 0.3s ease;
  -o-transition: transform 0.3s ease, opacity 0.4s ease;
  transition: transform 0.3s ease, opacity 0.4s ease;
  transition: transform 0.3s ease, opacity 0.4s ease, -webkit-transform 0.3s ease;
  z-index: 99999; }

.cursor-active {
  -webkit-transform: translate(-50%, -50%) scale(8);
  -ms-transform: translate(-50%, -50%) scale(8);
  transform: translate(-50%, -50%) scale(8);
  opacity: .1; }

.rolling-text {
  display: inline-block;
  overflow: hidden;
  line-height: 50px;
  height: 50px; }
  .rolling-text.butn {
    padding: 0 35px; }

.social-text .rolling-text {
  line-height: 30px;
  height: 30px; }

.rolling-text:hover .letter,
.rolling-text.play .letter {
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
  transform: translateY(-100%); }

.rolling-text .letter {
  display: inline-block;
  -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.76, 0, 0.24, 1);
  transition: -webkit-transform 0.5s cubic-bezier(0.76, 0, 0.24, 1);
  -o-transition: transform 0.5s cubic-bezier(0.76, 0, 0.24, 1);
  transition: transform 0.5s cubic-bezier(0.76, 0, 0.24, 1);
  transition: transform 0.5s cubic-bezier(0.76, 0, 0.24, 1), -webkit-transform 0.5s cubic-bezier(0.76, 0, 0.24, 1); }

.letter:nth-child(1) {
  -webkit-transition-delay: 0s;
  -o-transition-delay: 0s;
  transition-delay: 0s; }

.letter:nth-child(2) {
  -webkit-transition-delay: 0.015s;
  -o-transition-delay: 0.015s;
  transition-delay: 0.015s; }

.letter:nth-child(3) {
  -webkit-transition-delay: 0.03s;
  -o-transition-delay: 0.03s;
  transition-delay: 0.03s; }

.letter:nth-child(4) {
  -webkit-transition-delay: 0.045s;
  -o-transition-delay: 0.045s;
  transition-delay: 0.045s; }

.letter:nth-child(5) {
  -webkit-transition-delay: 0.06s;
  -o-transition-delay: 0.06s;
  transition-delay: 0.06s; }

.letter:nth-child(6) {
  -webkit-transition-delay: 0.075s;
  -o-transition-delay: 0.075s;
  transition-delay: 0.075s; }

.letter:nth-child(7) {
  -webkit-transition-delay: 0.09s;
  -o-transition-delay: 0.09s;
  transition-delay: 0.09s; }

.letter:nth-child(8) {
  -webkit-transition-delay: 0.105s;
  -o-transition-delay: 0.105s;
  transition-delay: 0.105s; }

.letter:nth-child(9) {
  -webkit-transition-delay: 0.12s;
  -o-transition-delay: 0.12s;
  transition-delay: 0.12s; }

.letter:nth-child(10) {
  -webkit-transition-delay: 0.135s;
  -o-transition-delay: 0.135s;
  transition-delay: 0.135s; }

.letter:nth-child(11) {
  -webkit-transition-delay: 0.15s;
  -o-transition-delay: 0.15s;
  transition-delay: 0.15s; }

.letter:nth-child(12) {
  -webkit-transition-delay: 0.165s;
  -o-transition-delay: 0.165s;
  transition-delay: 0.165s; }

.letter:nth-child(13) {
  -webkit-transition-delay: 0.18s;
  -o-transition-delay: 0.18s;
  transition-delay: 0.18s; }

.letter:nth-child(14) {
  -webkit-transition-delay: 0.195s;
  -o-transition-delay: 0.195s;
  transition-delay: 0.195s; }

.letter:nth-child(15) {
  -webkit-transition-delay: 0.21s;
  -o-transition-delay: 0.21s;
  transition-delay: 0.21s; }

.letter:nth-child(16) {
  -webkit-transition-delay: 0.225s;
  -o-transition-delay: 0.225s;
  transition-delay: 0.225s; }

.letter:nth-child(17) {
  -webkit-transition-delay: 0.24s;
  -o-transition-delay: 0.24s;
  transition-delay: 0.24s; }

.letter:nth-child(18) {
  -webkit-transition-delay: 0.255s;
  -o-transition-delay: 0.255s;
  transition-delay: 0.255s; }

.letter:nth-child(19) {
  -webkit-transition-delay: 0.27s;
  -o-transition-delay: 0.27s;
  transition-delay: 0.27s; }

.letter:nth-child(20) {
  -webkit-transition-delay: 0.285s;
  -o-transition-delay: 0.285s;
  transition-delay: 0.285s; }

.letter:nth-child(21) {
  -webkit-transition-delay: 0.3s;
  -o-transition-delay: 0.3s;
  transition-delay: 0.3s; }

.progress-wrap {
  position: fixed;
  bottom: 30px;
  right: 30px;
  height: 44px;
  width: 44px;
  cursor: pointer;
  display: block;
  border-radius: 50px;
  z-index: 100;
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(20px);
  -ms-transform: translateY(20px);
  transform: translateY(20px);
  -webkit-transition: all 400ms linear;
  -o-transition: all 400ms linear;
  transition: all 400ms linear;
  mix-blend-mode: difference; }

.progress-wrap.active-progress {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0); }

.progress-wrap::after {
  position: absolute;
  font-family: 'Font Awesome 5 Free';
  content: '\f077';
  text-align: center;
  line-height: 44px;
  font-size: 13px;
  font-weight: 900;
  color: #ccc;
  left: 0;
  top: 0;
  height: 44px;
  width: 44px;
  cursor: pointer;
  display: block;
  z-index: 1;
  -webkit-transition: all 400ms linear;
  -o-transition: all 400ms linear;
  transition: all 400ms linear; }

.progress-wrap svg path {
  fill: none; }

.progress-wrap svg.progress-circle path {
  stroke: #ccc;
  stroke-width: 4;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 400ms linear;
  -o-transition: all 400ms linear;
  transition: all 400ms linear; }

/* Extra
-----------------------------------------------------------------*/
.d-rotate {
  -webkit-perspective: 1000px;
  perspective: 1000px; }
  .d-rotate .rotate-text {
    display: block;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-transition: all .8s;
    -o-transition: all .8s;
    transition: all .8s;
    -webkit-transform-origin: 50% 0%;
    -ms-transform-origin: 50% 0%;
    transform-origin: 50% 0%;
    -webkit-transform: translate3d(0px, 50px, -50px) rotateX(-45deg) scale(0.95);
    transform: translate3d(0px, 50px, -50px) rotateX(-45deg) scale(0.95);
    opacity: 0;
    -webkit-transition-delay: .5s;
    -o-transition-delay: .5s;
    transition-delay: .5s; }
  .d-rotate.animated .rotate-text {
    -webkit-transform: translate3d(0px, 0px, 0px) rotateX(0deg) scale(1);
    transform: translate3d(0px, 0px, 0px) rotateX(0deg) scale(1);
    opacity: 1; }

.d-slideup .sideup-text {
  overflow: hidden;
  display: block; }
  .d-slideup .sideup-text:first-of-type .up-text {
    -webkit-transition-delay: .2s;
    -o-transition-delay: .2s;
    transition-delay: .2s; }
  .d-slideup .sideup-text:nth-of-type(2) .up-text {
    -webkit-transition-delay: .6s;
    -o-transition-delay: .6s;
    transition-delay: .6s; }
  .d-slideup .sideup-text:nth-of-type(3) .up-text {
    -webkit-transition-delay: 1s;
    -o-transition-delay: 1s;
    transition-delay: 1s; }
  .d-slideup .sideup-text:nth-of-type(4) .up-text {
    -webkit-transition-delay: 1.4s;
    -o-transition-delay: 1.4s;
    transition-delay: 1.4s; }
  .d-slideup .sideup-text:nth-of-type(5) .up-text {
    -webkit-transition-delay: 1.8s;
    -o-transition-delay: 1.8s;
    transition-delay: 1.8s; }
  .d-slideup .sideup-text .up-text {
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%);
    -webkit-transition: all .8s;
    -o-transition: all .8s;
    transition: all .8s; }

.d-slideup.animated .up-text {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0); }

.main-marq {
  position: relative;
  padding: 0; }
  .main-marq:after {
    position: absolute;
    top: -30px;
    bottom: -30px;
    left: -30px;
    right: -30px;
    pointer-events: none;
    background: -webkit-linear-gradient(right, #181818, rgba(255, 255, 255, 0) 220px, rgba(255, 255, 255, 0) calc(100% - 220px), #181818);
    background: -o-linear-gradient(right, #181818, rgba(255, 255, 255, 0) 220px, rgba(255, 255, 255, 0) calc(100% - 220px), #181818);
    background: linear-gradient(to left, #181818, rgba(255, 255, 255, 0) 220px, rgba(255, 255, 255, 0) calc(100% - 220px), #181818); }
  .main-marq.md-text .box .item h4 {
    font-size: 40px; }
  .main-marq.lrg .box .item h4 {
    font-size: 5vw; }
  .main-marq.xlrg .box .item {
    padding: 0 30px; }
    .main-marq.xlrg .box .item h4 {
      font-size: 10vw; }
  .main-marq .slide-har {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .main-marq .strok .item h4 {
    color: transparent !important;
    -webkit-text-stroke: 0.5px #fff; }
    .main-marq .strok .item h4 a {
      color: transparent !important;
      -webkit-text-stroke: 0.5px #fff; }
  .main-marq .non-strok .item h4 {
    color: #fff !important;
    -webkit-text-stroke: 0 !important; }
    .main-marq .non-strok .item h4 a {
      color: #fff !important;
      -webkit-text-stroke: 0 !important; }
  .main-marq .box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .main-marq .box .item {
      padding: 0 30px; }
      .main-marq .box .item h4 {
        white-space: nowrap;
        margin: 0; }
        .main-marq .box .item h4 .icon {
          margin-bottom: -15px; }
      .main-marq .box .item h2 {
        margin: 0; }
      .main-marq .box .item:nth-of-type(even) h4 {
        color: transparent;
        -webkit-text-stroke: 0.5px #fff; }
        .main-marq .box .item:nth-of-type(even) h4 a {
          color: transparent;
          -webkit-text-stroke: 0.5px #fff; }
    .main-marq .box:last-of-type .item:nth-of-type(even) h4 {
      color: #fff;
      -webkit-text-stroke: 0; }
      .main-marq .box:last-of-type .item:nth-of-type(even) h4 a {
        color: #fff;
        -webkit-text-stroke: 0; }
    .main-marq .box:last-of-type .item:nth-of-type(odd) h4 {
      color: transparent;
      -webkit-text-stroke: 1px #fff; }
      .main-marq .box:last-of-type .item:nth-of-type(odd) h4 a {
        color: transparent;
        -webkit-text-stroke: 1px #fff; }

.slide-har {
  position: relative; }
  .slide-har.st1 .box {
    position: relative;
    -webkit-animation: slide-har 100s linear infinite;
    animation: slide-har 100s linear infinite; }
  .slide-har.st2 .box {
    position: relative;
    -webkit-animation: slide-har-revers 100s linear infinite;
    animation: slide-har-revers 100s linear infinite; }

@keyframes slide-har {
  0% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%); }
  100% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%); } }

@keyframes slide-har-revers {
  100% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%); }
  0% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%); } }

.imago {
  -webkit-clip-path: polygon(0 0, 0% 0, 0% 100%, 0 100%);
  clip-path: polygon(0 0, 0% 0, 0% 100%, 0 100%);
  -webkit-transform: scale(1.2);
  -ms-transform: scale(1.2);
  transform: scale(1.2);
  -webkit-filter: blur(5px);
  filter: blur(5px);
  -webkit-transition: -webkit-clip-path .8s ease-in-out .3s, -webkit-transform .8s ease-in-out 1.1s, -webkit-filter .5s ease-in-out 1.1s;
  transition: -webkit-clip-path .8s ease-in-out .3s, -webkit-transform .8s ease-in-out 1.1s, -webkit-filter .5s ease-in-out 1.1s;
  -o-transition: clip-path .8s ease-in-out .3s, transform .8s ease-in-out 1.1s, filter .5s ease-in-out 1.1s;
  transition: clip-path .8s ease-in-out .3s, transform .8s ease-in-out 1.1s, filter .5s ease-in-out 1.1s;
  transition: clip-path .8s ease-in-out .3s, transform .8s ease-in-out 1.1s, filter .5s ease-in-out 1.1s, -webkit-clip-path .8s ease-in-out .3s, -webkit-transform .8s ease-in-out 1.1s, -webkit-filter .5s ease-in-out 1.1s;
  position: relative; }
  .imago.animated {
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    -webkit-filter: blur(0px);
    filter: blur(0px); }
  .imago.simpl {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    -webkit-filter: blur(0px);
    filter: blur(0px); }

/* Preloader
-----------------------------------------------------------------*/
body.loaded {
  overflow: hidden !important;
  height: 100% !important; }

.loader-wrap {
  position: fixed;
  z-index: 10;
  height: 100vh;
  width: 100%;
  left: 0;
  top: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background: transparent;
  z-index: 99999999999999; }

.loader-wrap svg {
  position: absolute;
  top: 0;
  width: 100vw;
  height: 110vh;
  fill: #1d1d1d; }

.loader-wrap .loader-wrap-heading .load-text {
  font-size: 60px;
  font-weight: 200;
  letter-spacing: 5px;
  text-transform: uppercase;
  z-index: 20; }

  

.load-text span {
  -webkit-animation: loading 1s infinite alternate;
  animation: loading 1s infinite alternate; }

.load-text span:nth-child(1) {
  -webkit-animation-delay: 0s;
  animation-delay: 0s; }

.load-text span:nth-child(2) {
  -webkit-animation-delay: 0.1s;
  animation-delay: 0.1s; }

.load-text span:nth-child(3) {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s; }

.load-text span:nth-child(4) {
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s; }

.load-text span:nth-child(5) {
  -webkit-animation-delay: 0.4s;
  animation-delay: 0.4s; }

.load-text span:nth-child(6) {
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s; }

.load-text span:nth-child(7) {
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s; }

@-webkit-keyframes loading {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

@keyframes loading {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

/* ====================== [ Start Overlay ] ====================== */
[data-overlay-dark],
[data-overlay-light] {
  position: relative; }

[data-overlay-dark] .container,
[data-overlay-dark] .container-xxl,
[data-overlay-light] .container-xxl,
[data-overlay-light] .container {
  position: relative;
  z-index: 7; }

[data-overlay-dark]:before,
[data-overlay-light]:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  pointer-events: none; }

[data-overlay-dark]:before {
  background: #1d1d1d; }

[data-overlay-light]:before {
  background: #fff; }

[data-overlay-dark],
[data-overlay-dark] h1,
[data-overlay-dark] h2,
[data-overlay-dark] h3,
[data-overlay-dark] h4,
[data-overlay-dark] h5,
[data-overlay-dark] h6,
[data-overlay-dark] span,
.bg-dark h1,
.bg-dark h2,
.bg-dark h3,
.bg-dark h4,
.bg-dark h5,
.bg-dark h6,
.bg-dark span,
.bg-color h1,
.bg-color h2,
.bg-color h3,
.bg-color h4,
.bg-color h5,
.bg-color h6,
.bg-color span {
  color: #fff; }

[data-overlay-dark="0"]:before,
[data-overlay-light="0"]:before {
  opacity: 0; }

[data-overlay-dark="1"]:before,
[data-overlay-light="1"]:before {
  opacity: .1; }

[data-overlay-dark="2"]:before,
[data-overlay-light="2"]:before {
  opacity: .2; }

[data-overlay-dark="3"]:before,
[data-overlay-light="3"]:before {
  opacity: .3; }

[data-overlay-dark="4"]:before,
[data-overlay-light="4"]:before {
  opacity: .4; }

[data-overlay-dark="5"]:before,
[data-overlay-light="5"]:before {
  opacity: .5; }

[data-overlay-dark="6"]:before,
[data-overlay-light="6"]:before {
  opacity: .6; }

[data-overlay-dark="7"]:before,
[data-overlay-light="7"]:before {
  opacity: .7; }

[data-overlay-dark="8"]:before,
[data-overlay-light="8"]:before {
  opacity: .8; }

[data-overlay-dark="9"]:before,
[data-overlay-light="9"]:before,
[data-overlay-color="9"]:before {
  opacity: .9; }

[data-overlay-dark="10"]:before,
[data-overlay-light="10"]:before {
  opacity: 1; }

/* ====================== [ End Overlay ] ====================== */
/* Menu
-----------------------------------------------------------------*/
.navbar {
  position: absolute;
  left: 0;
  top: 0;
  padding: 0;
  margin: 0;
  width: 100%;
  background: transparent;
  border-bottom: 2px solid transparent;
  z-index: 999; }
  .navbar.static {
    position: relative; }
  .navbar.bord {
    border-color: rgba(255, 255, 255, 0.05); }
  .navbar.blur {
    background-color: rgba(0, 0, 0, 0.1);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px); }
  .navbar.nav-scroll {
    border-color: rgba(255, 255, 255, 0.05);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    border-color: rgba(255, 255, 255, 0.05);
    padding: 0;
    position: fixed;
    top: -80px;
    -webkit-transition: -webkit-transform .8s;
    transition: -webkit-transform .8s;
    -o-transition: transform .8s;
    transition: transform .8s;
    transition: transform .8s, -webkit-transform .8s;
    -webkit-transform: translateY(80px);
    -ms-transform: translateY(80px);
    transform: translateY(80px); }
  .navbar .icon-bar {
    color: #fff; }
  .navbar .navbar-nav .nav-link {
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 14px;
    font-weight: 500;
    color: #fff;
    padding: 20px 10px 15px 10px;
    margin: 0 15px; }
    .navbar .navbar-nav .nav-link .rolling-text {
      height: 30px;
      line-height: 30px; }
  .navbar .navbar-nav .dropdown-menu {
    padding: 10px 5px;
    border: 1px solid #393939; }
  .navbar .dropdown-menu {
    display: block;
    position: absolute;
    top: 75px;
    opacity: 0;
    visibility: hidden;
    border-radius: 0;
    color: #fff;
    background: #252424;
    border: 1px solid #222121;
    border-radius: 5px;
    min-width: 255px;
    -webkit-transform: translateY(20px);
    -ms-transform: translateY(20px);
    transform: translateY(20px);
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s; }
    .navbar .dropdown-menu.show {
      opacity: 1;
      visibility: visible;
      -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
      transform: translateY(0); }
    .navbar .dropdown-menu.show-left .dropdown-item .dropdown-side {
      left: auto;
      right: 248px; }
    .navbar .dropdown-menu .dropdown-item {
      font-size: 14px;
      color: #fff;
      -webkit-transition: all .4s;
      -o-transition: all .4s;
      transition: all .4s;
      padding: 10px 25px;
      position: relative; }
      .navbar .dropdown-menu .dropdown-item .dropdown-side {
        position: absolute;
        left: 248px;
        top: -15px;
        display: block;
        opacity: 0;
        visibility: hidden;
        border: 1px solid #393939;
        border-radius: 5px;
        background: #252424;
        width: 240px;
        padding: 20px 0px;
        -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
        transform: translateY(20px);
        -webkit-transition: all .4s;
        -o-transition: all .4s;
        transition: all .4s; }
        .navbar .dropdown-menu .dropdown-item .dropdown-side.show {
          opacity: 1;
          visibility: visible;
          -webkit-transform: translateY(0);
          -ms-transform: translateY(0);
          transform: translateY(0); }
      .navbar .dropdown-menu .dropdown-item .icon-arrow {
        position: absolute;
        right: 15px; }
      .navbar .dropdown-menu .dropdown-item:after {
        content: '';
        width: 0px;
        height: 1px;
        background: #fff;
        position: absolute;
        left: 10px;
        top: 18px;
        -webkit-transition: all .4s;
        -o-transition: all .4s;
        transition: all .4s; }
      .navbar .dropdown-menu .dropdown-item:hover {
        padding-left: 30px;
        background: transparent; }
        .navbar .dropdown-menu .dropdown-item:hover:after {
          width: 10px; }
  .navbar .no-relative {
    position: static; }
  .navbar .dropdown {
    position: static; }
  .navbar .mega-menu {
    width: 100%;
    position: absolute;
    left: 0;
    top: 75px;
    overflow: hidden;
    padding: 0 !important;
    border: 0 !important;
    background: transparent; }
    .navbar .mega-menu .container {
      padding: 40px !important;
      border: 1px solid #393939;
      background: #252424;
      border-radius: 5px; }
    .navbar .mega-menu .title {
      margin-bottom: 20px; }
      .navbar .mega-menu .title .sub-title {
        font-weight: 600; }
    .navbar .mega-menu .item-img .img {
      border-radius: 5px;
      overflow: hidden;
      border: 1px solid rgba(255, 255, 255, 0.05); }
  .navbar .logo {
    position: relative; }
  .navbar .contact-button {
    position: relative; }
    .navbar .contact-button .butn {
      background: #fff;
      color: #222121;
      border: 1px solid rgba(255, 255, 255, 0.1);
      padding: 12px 25px;
      -webkit-transition: all .4s;
      -o-transition: all .4s;
      transition: all .4s; }
      .navbar .contact-button .butn:hover {
        background: transparent;
        color: #fff; }
  .navbar .menu-icon {
    padding: 25px 30px; }
  .navbar .dropdown-toggle:after {
    margin-left: 5px;
    vertical-align: 12px; }

/* Titles
-----------------------------------------------------------------*/
.sec-head {
  padding-bottom: 60px;
  position: relative; }
  .sec-head:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    border-left: 1px solid #fff;
    height: 40px;
    opacity: .3; }

.sm-title-dot {
  position: relative; }
  .sm-title-dot:before {
    content: '';
    position: relative;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #fff;
    display: inline-block;
    margin-right: 20px; }

.sm-title-numb {
  color: #888;
  font-weight: 300; }
  .sm-title-numb span {
    position: relative;
    padding-right: 60px; }
    .sm-title-numb span:after {
      content: '';
      width: 20px;
      border-bottom: 1px solid #888;
      position: absolute;
      left: 30px;
      top: 50%; }

.sec-head-line {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1); }
  .sec-head-line span {
    padding: 14px 30px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 30px;
    background: #171717;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    z-index: 3; }

/* About Intro
-----------------------------------------------------------------*/
.intro-style1 .container-full {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }

.intro-style1 .rectangle {
  background: #d2d7d3;
  height: 500px;
  width: 25%;
  border-radius: 15px;
  margin: 0 5px; }

.intro-style2 .fs-250 {
  position: relative;
  display: inline-block;
  line-height: 1; }
  .intro-style2 .fs-250 span {
    position: absolute;
    top: 40px;
    right: -30px;
    font-size: 30px; }

.img-bord-color {
  border-bottom: 10px solid #FF6A3A; }

.skills .sub-bg {
  padding: 20px 10px;
  text-align: center; }

.skills .tag {
  padding: 5px 10px;
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.05);
  font-size: 12px;
  margin: 4px 0; }

/* Blog
-----------------------------------------------------------------*/
.blog-style1 .item {
  position: relative; }
  .blog-style1 .item:hover .date {
    opacity: 0; }
  .blog-style1 .item:hover .icon span {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1); }
  .blog-style1 .item .fit-img {
    position: relative; }
  .blog-style1 .item .date {
    position: absolute;
    bottom: -6px;
    right: -6px;
    width: 90px;
    height: 90px;
    padding: 15px;
    color: #fff;
    z-index: 4;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s; }
    .blog-style1 .item .date div {
      width: 60px;
      height: 60px;
      text-align: center;
      background: rgba(255, 255, 255, 0.05);
      border-radius: 50%;
      font-size: 12px; }
      .blog-style1 .item .date div i {
        display: block;
        font-size: 18px;
        font-weight: 500; }
  .blog-style1 .item .icon {
    position: absolute;
    bottom: -6px;
    right: -6px;
    width: 90px;
    height: 90px;
    background: #171717;
    border-top-left-radius: 50%;
    padding: 15px; }
    .blog-style1 .item .icon:before {
      position: absolute;
      content: "";
      bottom: 6px;
      left: -20px;
      background: transparent;
      width: 20px;
      height: 20px;
      border-bottom-right-radius: 20px;
      -webkit-box-shadow: 6px 6px 0 6px #171717;
      box-shadow: 6px 6px 0 6px #171717; }
    .blog-style1 .item .icon:after {
      position: absolute;
      content: "";
      top: -20px;
      right: 6px;
      background: transparent;
      width: 20px;
      height: 20px;
      border-bottom-right-radius: 20px;
      -webkit-box-shadow: 6px 6px 0 6px #171717;
      box-shadow: 6px 6px 0 6px #171717; }
    .blog-style1 .item .icon span {
      width: 60px;
      height: 60px;
      line-height: 60px;
      text-align: center;
      background: #fff;
      border-radius: 50%;
      opacity: 0;
      -webkit-transform: scale(0);
      -ms-transform: scale(0);
      transform: scale(0);
      -webkit-transition: all .4s;
      -o-transition: all .4s;
      transition: all .4s; }
      .blog-style1 .item .icon span svg {
        width: 15px;
        fill: #000; }
    .blog-style1 .item .icon:hover span {
      background: rgba(255, 255, 255, 0.2); }
      .blog-style1 .item .icon:hover span svg {
        fill: #5fff66; }
  .blog-style1 .item .text {
    padding: 30px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1); }
  .blog-style1 .item .date-show {
    position: absolute;
    top: 20px;
    right: 20px;
    background: #fff;
    color: #171717;
    text-align: center;
    padding: 15px 10px;
    border-radius: 5px; }
    .blog-style1 .item .date-show span {
      font-size: 30px;
      font-weight: 500;
      display: block; }

.blog-style2 .item .text {
  padding-left: 30px;
  border-left: 1px solid rgba(255, 255, 255, 0.1); }

.sidebar .search-box {
  position: relative; }
  .sidebar .search-box input {
    color: #fff;
    padding: 15px;
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 5px;
    width: 100%;
    background: transparent; }
    .sidebar .search-box input:focus {
      border-color: #fff; }
  .sidebar .search-box .icon {
    position: absolute;
    top: 50%;
    right: 15px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%); }

.sidebar .widget {
  margin-bottom: 30px;
  padding: 30px;
  border: 1px solid rgba(255, 255, 255, 0.05); }
  .sidebar .widget .title-widget {
    margin-bottom: 30px;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 17px; }
  .sidebar .widget.catogry li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 15px;
    padding: 10px 20px;
    border-radius: 30px; }
    .sidebar .widget.catogry li:last-of-type {
      margin-bottom: 0; }
    .sidebar .widget.catogry li:hover {
      background: rgba(255, 255, 255, 0.02); }
  .sidebar .widget.last-post-thum .item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 30px; }
    .sidebar .widget.last-post-thum .item:last-of-type {
      margin-bottom: 0; }
    .sidebar .widget.last-post-thum .item:hover .img a .date {
      opacity: 1; }
    .sidebar .widget.last-post-thum .item .img {
      width: 90px;
      height: 100px;
      border-radius: 5px;
      overflow: hidden; }
      .sidebar .widget.last-post-thum .item .img a {
        width: 100%;
        height: 100%;
        position: relative; }
        .sidebar .widget.last-post-thum .item .img a .date {
          position: absolute;
          top: 50%;
          left: 50%;
          font-size: 12px;
          width: 60px;
          height: 60px;
          text-align: center;
          background: rgba(0, 0, 0, 0.1);
          -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
          border-radius: 50%;
          -webkit-transform: translateX(-50%) translateY(-50%);
          -ms-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
          z-index: 3;
          opacity: 0;
          -webkit-transition: all .4s;
          -o-transition: all .4s;
          transition: all .4s; }
          .sidebar .widget.last-post-thum .item .img a .date span {
            position: absolute;
            top: 50%;
            left: 50%;
            -webkit-transform: translateX(-50%) translateY(-50%);
            -ms-transform: translateX(-50%) translateY(-50%);
            transform: translateX(-50%) translateY(-50%);
            line-height: 1; }
      .sidebar .widget.last-post-thum .item .img img {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover; }
    .sidebar .widget.last-post-thum .item .cont {
      padding-left: 25px; }
      .sidebar .widget.last-post-thum .item .cont h6 {
        font-size: 17px; }
      .sidebar .widget.last-post-thum .item .cont .tag {
        font-size: 12px;
        padding: 5px 15px;
        border-radius: 30px;
        background: rgba(255, 255, 255, 0.03);
        margin-bottom: 10px; }
  .sidebar .widget.tags a {
    padding: 8px 15px;
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.02);
    margin: 2px 0;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s; }
    .sidebar .widget.tags a:hover {
      background: #6250EB; }

.blog-main .item .content {
  margin-top: 40px; }
  .blog-main .item .content .post-date {
    padding: 7px 15px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 30px;
    font-size: 12px;
    color: #ddd;
    text-transform: uppercase;
    margin-right: 15px; }

.blog-header .tag a {
  padding: 8px 20px;
  background: #6250EB;
  border-radius: 30px; }

.blog-header .background {
  height: 400px; }

.main-post .spec-letter {
  font-size: 60px;
  line-height: 50px;
  padding-right: 10px;
  float: left; }

.main-post .post-qoute {
  position: relative;
  padding: 40px;
  padding-left: 120px;
  border: 1px solid rgba(255, 255, 255, 0.15); }
  .main-post .post-qoute h6 {
    position: relative; }
    .main-post .post-qoute h6:before {
      content: '“';
      position: absolute;
      top: 80px;
      left: -100px;
      font-size: 180px;
      font-family: Poppins;
      line-height: 0; }

.main-post .iner-img {
  height: 400px; }
  .main-post .iner-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center; }

.main-post .unorder-list li,
.main-post .order-list li {
  margin-top: 10px;
  opacity: .7;
  padding-left: 15px;
  position: relative; }
  .main-post .unorder-list li:before,
  .main-post .order-list li:before {
    content: '';
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #ccc;
    position: absolute;
    left: 0;
    top: 10px; }

.main-post .order-list li {
  padding-left: 0; }
  .main-post .order-list li:before {
    display: none; }
  .main-post .order-list li span {
    font-size: 13px; }

.main-post .info-area {
  border-top: 1px solid rgba(255, 255, 255, 0.1); }
  .main-post .info-area .tags span,
  .main-post .info-area .share-icon span {
    font-size: 14px;
    margin-right: 5px;
    opacity: .7; }
  .main-post .info-area .tags a,
  .main-post .info-area .share-icon a {
    padding: 7px 20px;
    font-size: 13px;
    background: rgba(255, 255, 255, 0.02);
    border-radius: 30px;
    margin-right: 5px;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s; }
    .main-post .info-area .tags a:hover,
    .main-post .info-area .share-icon a:hover {
      background: #6250EB;
      color: #fff; }
  .main-post .info-area .share-icon a {
    width: 35px;
    height: 35px;
    line-height: 35px;
    font-size: 11px;
    text-align: center;
    padding: 0; }

.main-post .author-area {
  padding: 40px;
  background: rgba(255, 255, 255, 0.02);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px); }
  .main-post .author-area .author-img .img {
    width: 100px;
    height: 100px;
    border-radius: 10px;
    overflow: hidden; }

.main-post .next-prv-post .thumb-post {
  width: 100%;
  padding: 40px;
  position: relative;
  overflow: hidden;
  z-index: 2; }
  .main-post .next-prv-post .thumb-post:after {
    content: '';
    background: #1a1a1a;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: 1px solid rgba(255, 255, 255, 0.1);
    z-index: -1;
    opacity: .7;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s; }
  .main-post .next-prv-post .thumb-post:first-of-type {
    margin-right: 15px; }
  .main-post .next-prv-post .thumb-post:last-of-type {
    margin-left: 15px; }

.comments-post .item-box {
  position: relative; }
  .comments-post .item-box p {
    font-size: 14px;
    width: 80%; }
  .comments-post .item-box.replayed {
    margin-left: 30px; }
  .comments-post .item-box .replay-butn {
    position: absolute;
    top: 15px;
    right: 15px; }
    .comments-post .item-box .replay-butn a {
      font-size: 13px;
      padding: 8px 20px;
      border: 1px solid rgba(255, 255, 255, 0.2);
      border-radius: 30px;
      -webkit-transition: all .4s;
      -o-transition: all .4s;
      transition: all .4s; }
      .comments-post .item-box .replay-butn a:hover {
        background: var(--maincolor);
        color: #1d1d1d; }

.comments-from input,
.comments-from textarea {
  width: 100%;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 5px;
  background: transparent;
  color: #fff;
  padding: 15px;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s; }
  .comments-from input:focus,
  .comments-from textarea:focus {
    border-color: #fff; }

.comments-from textarea {
  min-height: 180px; }

.comments-from button {
  padding: 15px 35px;
  width: 100%;
  background: rgba(255, 255, 255, 0.02);
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  color: #fff;
  text-transform: uppercase;
  font-size: 13px;
  letter-spacing: 1px;
  position: relative;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 5px;
  overflow: hidden;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s; }
  .comments-from button .text {
    position: relative;
    z-index: 4; }
  .comments-from button:hover {
    color: #1d1d1d;
    background: #fff; }

/* Clients
-----------------------------------------------------------------*/
.clients-ds .item {
  position: relative;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 80px;
  height: 100%;
  padding: 50px 30px; }
  .clients-ds .item .text-center {
    width: 100%; }
  .clients-ds .item .img {
    max-width: 100px;
    margin: auto;
    opacity: .5; }
  .clients-ds .item p {
    margin-top: 30px; }
  .clients-ds .item:hover .img {
    opacity: 1; }

.marq-brand .item-marq {
  padding: 0;
  text-align: center; }
  .marq-brand .item-marq a {
    width: 320px;
    height: 180px;
    line-height: 180px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid transparent;
    border-radius: 10px;
    margin: 5px;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s; }
    .marq-brand .item-marq a img {
      vertical-align: middle;
      max-width: 120px;
      opacity: .5;
      -webkit-transition: all .5s;
      -o-transition: all .5s;
      transition: all .5s; }
    .marq-brand .item-marq a:hover {
      background: transparent;
      border-color: rgba(255, 255, 255, 0.1); }
      .marq-brand .item-marq a:hover img {
        opacity: 1; }

.marq-brand .item {
  padding: 0 50px !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.marq-brand a:hover img {
  opacity: 1; }

.marq-brand a img {
  vertical-align: middle;
  max-width: 100px;
  opacity: .5;
  -webkit-transition: all .5s;
  -o-transition: all .5s;
  transition: all .5s; }

/* Contact
-----------------------------------------------------------------*/
.contact input,
.contact textarea {
  width: 100%;
  border: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  background: transparent;
  color: #fff;
  padding: 15px 0;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s; }
  .contact input:focus,
  .contact textarea:focus {
    border-color: #fff; }

.contact textarea {
  min-height: 300px; }

.contact button {
  border-radius: 30px;
  border: 0;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s; }
  .contact button:hover {
    background: #FF6A3A;
    color: #fff; }

.contact .info-box {
  padding: 80px 40px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 30px;
  position: relative;
  overflow: hidden; }
  .contact .info-box:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url(../imgs/map.png);
    background-size: cover;
    opacity: .3;
    z-index: -1; }
  .contact .info-box .phone {
    color: #FF6A3A; }

.contact .form2 input,
.contact .form2 textarea {
  padding: 15px 30px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 30px; }

.google-map {
  height: 450px;
  width: 100%;
  position: relative;
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%); }
  .google-map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

/* Pricing
-----------------------------------------------------------------*/
.price-style1 .item {
  padding: 40px;
  border: 1px solid rgba(255, 255, 255, 0.1); }
  .price-style1 .item .info {
    padding-bottom: 40px;
    margin-bottom: 40px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1); }
    .price-style1 .item .info span {
      opacity: .7; }
  .price-style1 .item ul {
    padding: 0; }
  .price-style1 .item li {
    position: relative;
    margin: 15px 0;
    padding-left: 30px; }
    .price-style1 .item li:before {
      content: '';
      position: absolute;
      top: 40%;
      left: 0;
      width: 5px;
      height: 5px;
      background: #fff;
      border-radius: 50%; }

.price-style1 .butn {
  background: #fff;
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #000;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s; }
  .price-style1 .butn.active {
    background: #FF6A3A;
    color: #fff; }
  .price-style1 .butn:hover {
    background: transparent;
    color: #fff; }

/* Footer
-----------------------------------------------------------------*/
.call-action-style2 {
  position: relative; }
  .call-action-style2:hover .butn-call {
    opacity: 1; }
  .call-action-style2 .butn-call {
    background: #FF6A3A;
    width: 200px;
    height: 200px;
    line-height: 200px;
    text-align: center;
    border-radius: 50%;
    position: absolute;
    top: -50px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s;
    opacity: 0; }
  .call-action-style2 .lg-text .item-marq {
    padding: 0 50px; }
    .call-action-style2 .lg-text .item-marq:nth-of-type(odd) h2 {
      -webkit-text-fill-color: #fff; }
  .call-action-style2 .lg-text h2 {
    font-size: 8vw;
    color: #fff;
    -webkit-text-fill-color: transparent;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #fff;
    width: 120%;
    text-align: center; }

.footer-style1 {
  padding-top: 120px; }
  .footer-style1 .links a {
    margin-right: 30px; }
    .footer-style1 .links a:last-of-type {
      margin-right: 0; }
  .footer-style1 .email-contact,
  .footer-style1 .links a {
    opacity: .7; }
    .footer-style1 .email-contact:hover,
    .footer-style1 .links a:hover {
      opacity: 1; }
  .footer-style1 .social-line .item {
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    width: 100%;
    position: relative; }
    .footer-style1 .social-line .item:after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      width: 0;
      border-bottom: 1px solid #fff;
      -webkit-transition: all .4s;
      -o-transition: all .4s;
      transition: all .4s; }
    .footer-style1 .social-line .item:hover:after {
      width: 100%; }
  .footer-style1 .lg-text {
    overflow: hidden;
    text-align: center;
    margin-top: 80px; }
    .footer-style1 .lg-text h2 {
      font-size: 30vw;
      text-transform: uppercase;
      line-height: 1;
      margin-bottom: -200px; }

.footer-style2 {
  position: relative; }
  .footer-style2 .bg-gr {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    pointer-events: none; }
  .footer-style2 .social-icon-circle a:hover {
    background: #fff;
    color: #000; }
  .footer-style2 .call-action-style2 .butn-call {
    background: #fff; }

footer .social-icon-circle.hover-light a:hover {
  background: #fff;
  color: #000; }

.digital-agency .call-action-style2 .butn-call {
  background: #2d03ff; }

.digital-agency .social-icon-circle a:hover {
  background: #2d03ff; }

/* Headers
-----------------------------------------------------------------*/
.hero-style1 {
  position: relative;
  padding: 200px 0 120px;
  z-index: 10; }
  .hero-style1 .lg-text h1 {
    font-size: 15vw;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: -.8rem;
    line-height: .8; }
  .hero-style1 .wrapper-imgs {
    position: relative;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    z-index: 9; }
    .hero-style1 .wrapper-imgs .fit-img {
      width: 80px;
      height: 350px;
      border-radius: 60px;
      margin: 0 5px;
      overflow: hidden;
      -webkit-box-flex: 1;
      -ms-flex-positive: 1;
      flex-grow: 1; }
      .hero-style1 .wrapper-imgs .fit-img .info {
        position: absolute;
        left: 10px;
        bottom: 10px;
        border-radius: 10px;
        width: calc(100% - 20px);
        padding: 20px 30px;
        background: rgba(0, 0, 0, 0.1);
        -webkit-backdrop-filter: blur(10px);
        backdrop-filter: blur(10px);
        z-index: 5;
        opacity: 0; }
  .hero-style1 .cards-wrapper {
    position: relative;
    height: 350px; }
    .hero-style1 .cards-wrapper .fit-img {
      height: 450px;
      overflow: hidden;
      position: relative; }
      .hero-style1 .cards-wrapper .fit-img .info {
        position: absolute;
        left: 10px;
        bottom: 10px;
        border-radius: 10px;
        width: calc(100% - 20px);
        padding: 20px 30px;
        background: rgba(0, 0, 0, 0.1);
        -webkit-backdrop-filter: blur(10px);
        backdrop-filter: blur(10px);
        z-index: 5; }

.hero-style2 {
  padding: 175px 0 0;
  position: relative; }
  .hero-style2:before {
    content: '';
    position: absolute;
    top: 0;
    left: -6%;
    height: 600px;
    width: 600px;
    -webkit-filter: blur(70px);
    filter: blur(70px);
    display: inline-block;
    background-color: rgba(254,0,46,0.7);
    border-radius: 30%;
    pointer-events: none; }

.hero-style3 {
  padding: 120px 0 120px; }
  .hero-style3 .caption {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1); }
  .hero-style3 .container {
    border-left: 1px solid rgba(255, 255, 255, 0.1);
    border-right: 1px solid rgba(255, 255, 255, 0.1);
    position: relative; }
    .hero-style3 .container:after, .hero-style3 .container:before {
      content: '';
      width: 5px;
      height: 5px;
      border-radius: 50%;
      background: #fff;
      position: absolute;
      top: 0;
      left: -2px; }
    .hero-style3 .container:after {
      top: auto;
      bottom: 0; }
  .hero-style3 h1 {
    font-size: 90px; }
  .hero-style3 .exp {
    margin-right: 80px;
    width: 100%; }
    .hero-style3 .exp h2 {
      font-size: 300px;
      line-height: 1;
      white-space: nowrap;
      position: relative; }
      .hero-style3 .exp h2 span {
        font-size: 14px;
        padding: 14px 30px;
        border-radius: 30px;
        background: #FF6A3A;
        color: #000;
        position: absolute;
        bottom: 60px;
        right: -20px;
        -webkit-transform: rotate(10deg);
        -ms-transform: rotate(10deg);
        transform: rotate(10deg); }
  .hero-style3 .box1,
  .hero-style3 .box2,
  .hero-style3 .box3,
  .hero-style3 .box4 {
    border-right: 1px solid rgba(255, 255, 255, 0.1);
    position: relative; }
    .hero-style3 .box1:after, .hero-style3 .box1:before,
    .hero-style3 .box2:after,
    .hero-style3 .box2:before,
    .hero-style3 .box3:after,
    .hero-style3 .box3:before,
    .hero-style3 .box4:after,
    .hero-style3 .box4:before {
      content: '';
      width: 5px;
      height: 5px;
      border-radius: 50%;
      background: #fff;
      position: absolute;
      top: 0;
      right: -2px; }
    .hero-style3 .box1:after,
    .hero-style3 .box2:after,
    .hero-style3 .box3:after,
    .hero-style3 .box4:after {
      top: auto;
      bottom: 0; }
  .hero-style3 .box3:after {
    right: auto;
    left: -2px;
    bottom: auto;
    top: 0; }
  .hero-style3 .box4:before {
    right: auto;
    left: -2px;
    top: auto;
    bottom: 0; }
  .hero-style3 .box2,
  .hero-style3 .box4 {
    border-right: 0; }
  .hero-style3 .box3,
  .hero-style3 .box4 {
    border-top: 1px solid rgba(255, 255, 255, 0.1); }
  .hero-style3 .lg-text {
    font-size: 22vw;
    line-height: .8;
    position: relative; }
    .hero-style3 .lg-text .img1 {
      width: 160px;
      height: 220px;
      border-radius: 15px;
      position: absolute;
      top: 0;
      left: 15%;
      -webkit-transform: rotate(-10deg);
      -ms-transform: rotate(-10deg);
      transform: rotate(-10deg);
      z-index: -1;
      overflow: hidden; }
    .hero-style3 .lg-text .img2 {
      width: 160px;
      height: 220px;
      border-radius: 15px;
      position: absolute;
      bottom: 0;
      right: 10%;
      -webkit-transform: rotate(30deg);
      -ms-transform: rotate(30deg);
      transform: rotate(30deg);
      overflow: hidden; }
    .hero-style3 .lg-text .img3 {
      width: 160px;
      height: 220px;
      border-radius: 15px;
      position: absolute;
      top: -100px;
      left: 50%;
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      transform: translateX(-50%);
      overflow: hidden;
      z-index: -1;
      -webkit-filter: blur(10px);
      filter: blur(10px); }

.hero-style4 {
  padding: 220px 0 60px;
  position: relative; }
  .hero-style4 h1 {
    font-size: 10vw;
    letter-spacing: -4px; }
  .hero-style4.f-style:after {
    content: '';
    width: 750px;
    height: 750px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    z-index: -1; }

.hero-style5 {
  padding: 200px 0 0; }
  .hero-style5 .links > div {
    position: relative;
    overflow: hidden;
    padding: 10px 0; }
    .hero-style5 .links > div:after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      height: 100%;
      width: 0;
      background: #FF6A3A;
      z-index: -1;
      -webkit-transition: all .4s;
      -o-transition: all .4s;
      transition: all .4s; }
    .hero-style5 .links > div:hover:after {
      width: 100%; }
    .hero-style5 .links > div:hover a {
      -webkit-transform: scale(1.4);
      -ms-transform: scale(1.4);
      transform: scale(1.4);
      -webkit-transform-origin: 0%;
      -ms-transform-origin: 0%;
      transform-origin: 0%; }
  .hero-style5 .links a {
    font-size: 80px;
    line-height: .8;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s; }
  .hero-style5 .caption h1 {
    font-size: 7.8vw;
    text-transform: uppercase;
    letter-spacing: -2px; }

.hero-style6 {
  padding: 200px 0 60px; }
  .hero-style6 .tags li {
    display: inline-block; }
  .hero-style6 .tags a {
    padding: 14px 30px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 30px;
    margin: 4px 2px;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s; }
    .hero-style6 .tags a:hover {
      background: #fff;
      color: #000; }
  .hero-style6 .circle-button svg {
    fill: #fff; }

.content__img {
  width: 225px;
  height: 170px;
  border-radius: 10px;
  position: absolute;
  top: 170px;
  left: 0px;
  opacity: 0;
  overflow: hidden;
  will-change: transform, filter; }

.content__img-inner {
  background-position: 50% 50%;
  width: calc(100% + 20px);
  height: calc(100% + 20px);
  background-size: cover;
  position: absolute;
  top: calc(-1 * 20px / 2);
  left: calc(-1 * 20px / 2); }

.pg-hero {
  padding: 200px 0 0; }
  .pg-hero h1 {
    letter-spacing: -2px; }
  .pg-hero .main-marq {
    margin-bottom: -50px; }
    .pg-hero .main-marq h4 {
      text-transform: uppercase;
      line-height: 1;
      font-size: 12vw !important;
      font-weight: 500; }

/* Faqs
-----------------------------------------------------------------*/
.faq-style1 .accordion-item {
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 30px;
  padding: 30px; }
  .faq-style1 .accordion-item h6 {
    font-weight: 300; }
  .faq-style1 .accordion-item .arrow {
    -webkit-filter: invert(1);
    filter: invert(1); }
  .faq-style1 .accordion-item.active {
    background: rgba(255, 255, 255, 0.02); }
    .faq-style1 .accordion-item.active h6 {
      font-weight: 500; }

/* Portfolio
-----------------------------------------------------------------*/
.work-style1 .item .fit-img img {
  height: 100%; }

.work-style2 {
  position: relative;
  padding-top: 240px !important;
  z-index: 4; }
  .work-style2 .sec-head-crev {
    position: absolute;
    top: 0;
    width: 100%;
    z-index: -1; }

.work-style3 .item:hover img {
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1); }

.work-style3 .item:hover .fit-img .icon-arrow {
  opacity: 1; }

.work-style3 .item img {
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s; }

.work-style3 .item .fit-img {
  position: relative; }
  .work-style3 .item .fit-img .icon-arrow {
    width: 150px;
    height: 150px;
    line-height: 170px;
    text-align: center;
    background: rgba(0, 0, 0, 0.05);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s;
    opacity: 0; }
    .work-style3 .item .fit-img .icon-arrow svg {
      width: 40px; }

.portfolio-crev .work-boxs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.portfolio-crev .item {
  width: 33.333%;
  max-height: 90vh;
  height: 600px;
  margin: 0 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  cursor: pointer;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s; }
  .portfolio-crev .item .bg-img {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center center;
    position: relative;
    border-radius: 10px;
    overflow: hidden; }
    .portfolio-crev .item .bg-img .cont {
      position: absolute;
      left: 30px;
      bottom: 30px;
      right: 30px;
      padding: 20px;
      border-radius: 10px;
      background: #fff;
      color: #0f0f0f;
      opacity: 0;
      visibility: hidden;
      -webkit-transition: all .4s;
      -o-transition: all .4s;
      transition: all .4s; }
      .portfolio-crev .item .bg-img .cont.dark-st h5,
      .portfolio-crev .item .bg-img .cont.dark-st span {
        background: #0f0f0f; }
      .portfolio-crev .item .bg-img .cont h5,
      .portfolio-crev .item .bg-img .cont span {
        -webkit-transform: translateY(15px);
        -ms-transform: translateY(15px);
        transform: translateY(15px);
        opacity: 0;
        -webkit-transition: all .4s;
        -o-transition: all .4s;
        transition: all .4s;
        -webkit-transition-delay: 0;
        -o-transition-delay: 0;
        transition-delay: 0; }
      .portfolio-crev .item .bg-img .cont h5 {
        text-decoration: underline;
        margin-bottom: 10px; }
      .portfolio-crev .item .bg-img .cont span {
        color: #494949; }
  .portfolio-crev .item.active {
    width: calc(100vw - 140px*3); }
    .portfolio-crev .item.active .bg-img .cont {
      opacity: 1;
      visibility: visible; }
      .portfolio-crev .item.active .bg-img .cont h5,
      .portfolio-crev .item.active .bg-img .cont span {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        opacity: 1; }
      .portfolio-crev .item.active .bg-img .cont h5 {
        -webkit-transition-delay: .3s;
        -o-transition-delay: .3s;
        transition-delay: .3s; }
      .portfolio-crev .item.active .bg-img .cont span {
        -webkit-transition-delay: .6s;
        -o-transition-delay: .6s;
        transition-delay: .6s; }

/* --- Mobile: text skrytý, zobrazí sa len po potiahnutí --- */
@media (max-width: 768px) {
  .portfolio-crev .item .bg-img .cont {
    opacity: 1 !important;
    visibility: visible !important;
  }
  .portfolio-crev .item .bg-img .cont h5,
  .portfolio-crev .item .bg-img .cont span {
    transform: none !important;
    opacity: 1 !important;
  }
}


.portfolio-elegant .work-boxs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.portfolio-elegant .item {
  width: 25%;
  max-height: 70vh;
  height: 500px;
  margin: 0 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  cursor: pointer;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s; }
  .portfolio-elegant .item .bg-img {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center center;
    position: relative;
    overflow: hidden; }
  .portfolio-elegant .item .cont {
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s; }
    .portfolio-elegant .item .cont h6 {
      font-size: 18px; }
    .portfolio-elegant .item .cont span {
      opacity: 0;
      -webkit-transition: all .4s;
      -o-transition: all .4s;
      transition: all .4s;
      color: #ccc; }
  .portfolio-elegant .item.active {
    width: calc(100vw - 140px*3); }
    .portfolio-elegant .item.active .cont span {
      opacity: 1; }

.parallax-slider-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh; }
  .parallax-slider-wrapper .parallax-sliders {
    position: absolute;
    top: 0;
    left: 0;
    width: 3800px;
    height: 100%; }
  .parallax-slider-wrapper .parallax-slider-inner {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    height: 80%;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 30px;
    left: 70px;
    margin-top: 15px; }
  .parallax-slider-wrapper .parallax-item {
    position: relative;
    width: 500px;
    height: 100%;
    overflow: hidden; }
    .parallax-slider-wrapper .parallax-item:hover .parallax-content {
      bottom: 0;
      opacity: 1;
      visibility: visible; }
    .parallax-slider-wrapper .parallax-item:hover .parallax-img::after {
      opacity: 1;
      height: 100%;
      visibility: visible; }
  .parallax-slider-wrapper .parallax-content {
    position: absolute;
    bottom: -100px;
    left: 0;
    z-index: 55;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    margin: 40px 40px 30px 35px;
    -webkit-transition: .4s;
    -o-transition: .4s;
    transition: .4s; }
    .parallax-slider-wrapper .parallax-content span {
      font-size: 18px;
      text-transform: uppercase;
      line-height: 1;
      display: block;
      margin-bottom: 10px; }
    .parallax-slider-wrapper .parallax-content h4 {
      font-size: 40px;
      line-height: 1;
      padding-bottom: 10px;
      letter-spacing: -2px; }
  .parallax-slider-wrapper .parallax-img {
    position: absolute;
    height: 100%;
    width: 800px;
    background-size: cover;
    background-position: center;
    margin-left: -100px; }
    .parallax-slider-wrapper .parallax-img::after {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 100%;
      content: '';
      opacity: 0;
      visibility: hidden;
      -webkit-transition: .4s;
      -o-transition: .4s;
      transition: .4s;
      background-color: rgba(0, 0, 0, 0.3); }

.showcase-full {
  position: relative; }
  .showcase-full .parallax-slider-full .caption {
    position: relative; }
    .showcase-full .parallax-slider-full .caption h1 {
      font-size: 110px;
      position: relative;
      line-height: 1.2; }
  .showcase-full .parallax-slider-full .swiper-slide-active .caption .discover {
    opacity: 1;
    -webkit-transition: all .7s;
    -o-transition: all .7s;
    transition: all .7s; }
  .showcase-full .swiper-slide {
    position: relative;
    overflow: hidden;
    width: 100%;
    min-height: 100vh;
    padding: 80px 0; }
    .showcase-full .swiper-slide .bg-img {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background-size: cover;
      background-position: center center; }
  .showcase-full .caption h6 {
    font-size: 20px;
    font-weight: 400; }
  .showcase-full .slider-contro {
    position: absolute;
    bottom: 60px;
    left: 80px;
    width: calc(100% - 160px); }
    .showcase-full .slider-contro i {
      margin: 0 10px;
      color: #fff; }
    .showcase-full .slider-contro span {
      color: #fff;
      white-space: nowrap; }
  .showcase-full .dots {
    bottom: 50px;
    z-index: 1; }
    .showcase-full .dots span {
      background: #fff;
      width: 5px;
      height: 5px;
      margin: 0 7px !important;
      border-radius: 50% !important; }
      .showcase-full .dots span.swiper-pagination-bullet-active {
        position: relative; }
        .showcase-full .dots span.swiper-pagination-bullet-active:after {
          content: '';
          position: absolute;
          top: -5px;
          left: -5px;
          right: -5px;
          bottom: -5px;
          border: 1px solid #fff;
          border-radius: 50%; }
  .showcase-full .swiper-button-next:after,
  .showcase-full .swiper-button-prev:after {
    display: none; }

.inter-links-center {
  position: relative;
  min-height: 100vh;
  padding: 120px 0;
  overflow: auto; }
  .inter-links-center::-webkit-scrollbar {
    width: 0; }
  .inter-links-center::-webkit-scrollbar-track {
    background: transparent; }
  .inter-links-center::-webkit-scrollbar-thumb {
    background: #999;
    border-radius: 10px; }
  .inter-links-center::-webkit-scrollbar-thumb:hover {
    background: #555; }
  .inter-links-center .links-text li {
    padding: 30px 0;
    position: relative;
    z-index: 9; }
    .inter-links-center .links-text li .text {
      -webkit-transition: all .4s;
      -o-transition: all .4s;
      transition: all .4s;
      -webkit-text-stroke: 1px transparent; }
    .inter-links-center .links-text li.no-active {
      opacity: .3; }
      .inter-links-center .links-text li.no-active .text {
        color: transparent;
        -webkit-text-stroke: 1px #fff; }
    .inter-links-center .links-text li h2 {
      font-weight: 700;
      font-size: 80px; }
      .inter-links-center .links-text li h2 a .tag {
        font-size: 14px;
        display: block;
        font-weight: 400; }
      .inter-links-center .links-text li h2 .num {
        font-size: 14px;
        font-weight: 600;
        opacity: .7;
        margin-right: 15px; }
  .inter-links-center .links-img {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    overflow: hidden; }
    .inter-links-center .links-img:after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.1); }
    .inter-links-center .links-img .img {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      opacity: 0;
      -webkit-transform: scale(1.1, 1.1);
      -ms-transform: scale(1.1, 1.1);
      transform: scale(1.1, 1.1);
      -webkit-transition: all .7s;
      -o-transition: all .7s;
      transition: all .7s; }
      .inter-links-center .links-img .img.current {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
        opacity: 1; }
      .inter-links-center .links-img .img img {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover; }

.link-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

/* Services
-----------------------------------------------------------------*/
.serv-style1 .item {
  padding-bottom: 50px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05); }
  .serv-style1 .item .img {
    -webkit-clip-path: polygon(0.057% 7.915%, 0.057% 7.915%, 0.016% 6.68%, 0.093% 5.491%, 0.278% 4.367%, 0.561% 3.328%, 0.933% 2.394%, 1.384% 1.586%, 1.906% 0.922%, 2.489% 0.423%, 3.122% 0.109%, 3.798% 0%, 96.169% 0%, 96.169% 0%, 96.847% 0.11%, 97.484% 0.427%, 98.068% 0.93%, 98.591% 1.599%, 99.043% 2.414%, 99.415% 3.354%, 99.696% 4.4%, 99.878% 5.531%, 99.951% 6.726%, 99.905% 7.966%, 92.486% 94.172%, 92.486% 94.172%, 92.361% 95.151%, 92.165% 96.067%, 91.903% 96.911%, 91.582% 97.673%, 91.208% 98.344%, 90.786% 98.915%, 90.323% 99.375%, 89.825% 99.716%, 89.298% 99.927%, 88.749% 100%, 10.856% 100%, 10.856% 100%, 10.303% 99.927%, 9.774% 99.713%, 9.274% 99.369%, 8.809% 98.904%, 8.386% 98.328%, 8.011% 97.65%, 7.691% 96.881%, 7.43% 96.03%, 7.236% 95.107%, 7.115% 94.122%, 0.057% 7.915%);
    clip-path: polygon(0.057% 7.915%, 0.057% 7.915%, 0.016% 6.68%, 0.093% 5.491%, 0.278% 4.367%, 0.561% 3.328%, 0.933% 2.394%, 1.384% 1.586%, 1.906% 0.922%, 2.489% 0.423%, 3.122% 0.109%, 3.798% 0%, 96.169% 0%, 96.169% 0%, 96.847% 0.11%, 97.484% 0.427%, 98.068% 0.93%, 98.591% 1.599%, 99.043% 2.414%, 99.415% 3.354%, 99.696% 4.4%, 99.878% 5.531%, 99.951% 6.726%, 99.905% 7.966%, 92.486% 94.172%, 92.486% 94.172%, 92.361% 95.151%, 92.165% 96.067%, 91.903% 96.911%, 91.582% 97.673%, 91.208% 98.344%, 90.786% 98.915%, 90.323% 99.375%, 89.825% 99.716%, 89.298% 99.927%, 88.749% 100%, 10.856% 100%, 10.856% 100%, 10.303% 99.927%, 9.774% 99.713%, 9.274% 99.369%, 8.809% 98.904%, 8.386% 98.328%, 8.011% 97.65%, 7.691% 96.881%, 7.43% 96.03%, 7.236% 95.107%, 7.115% 94.122%, 0.057% 7.915%);
    height: 250px;
    overflow: hidden; }
  .serv-style1 .item ul {
    margin: 0; }
    .serv-style1 .item ul li {
      margin-bottom: 20px; }

.serv-style2 {
  background-color: #171717; }
  .serv-style2 h3 {
    position: relative;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content; }
    .serv-style2 h3 .fit-img {
      position: absolute;
      top: 50%;
      height: 70px;
      right: -130px;
      width: 0;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%);
      -webkit-transition: all .4s;
      -o-transition: all .4s;
      transition: all .4s; }
  .serv-style2 .item:hover h3 .fit-img {
    width: 100px; }

.serv-style3 .accordion-item {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  padding: 50px 0 0;
  background: transparent; }
  .serv-style3 .accordion-item .icon-arrow {
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    border: 1px solid transparent;
    border-radius: 50%; }
  .serv-style3 .accordion-item.active .icon-arrow {
    border-color: rgba(255, 255, 255, 0.5); }

.serv-style3 .accordion-header h6 {
  color: #FF6A3A; }

.serv-style3 .accordion-collapse {
  border-radius: 0; }

.serv-style3 .accordion-body {
  padding: 0; }

.serv-style3 .tags a {
  display: block;
  margin-bottom: 10px; }

.serv-style4 {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1); }
  .serv-style4 .item {
    padding: 80px 40px;
    border-right: 1px solid rgba(255, 255, 255, 0.1); }
    .serv-style4 .item:last-of-type {
      border-right: 0; }
    .serv-style4 .item .text {
      opacity: 0;
      -webkit-transform: translateY(50px);
      -ms-transform: translateY(50px);
      transform: translateY(50px);
      -webkit-transition: all .4s;
      -o-transition: all .4s;
      transition: all .4s; }
    .serv-style4 .item:hover .text {
      opacity: 1;
      -webkit-transform: translate(0);
      -ms-transform: translate(0);
      transform: translate(0); }

.serv-style5 .item {
  padding: 60px 40px 0; }
  .serv-style5 .item .img {
    border-radius: 15px 15px 0 0;
    overflow: hidden; }

.process .item {
  padding: 40px 30px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 15px;
  height: 100%; }
  .process .item span {
    color: #FF6A3A; }
  .process .item h6 {
    font-size: 26px; }

/* Team
-----------------------------------------------------------------*/
.team-mp .item {
  background: #1f1f1f;
  border-radius: 15px;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s; }
  .team-mp .item:hover {
    background: #2d03ff; }
  .team-mp .item .img {
    width: 420px;
    height: 170px;
    overflow: hidden; }
    .team-mp .item .img img {
      -webkit-filter: grayscale(1);
      filter: grayscale(1); }
  .team-mp .item .cont {
    padding: 30px 0 0 50px; }
    .team-mp .item .cont span {
      font-size: 14px;
      color: #b1b1b1;
      margin-top: 15px; }
  .team-mp .item .social-icon {
    padding: 30px 30px 0 0; }
    .team-mp .item .social-icon a {
      width: 45px;
      height: 45px;
      line-height: 45px;
      text-align: center;
      border: 1px solid rgba(255, 255, 255, 0.2);
      border-radius: 50%;
      font-size: 14px;
      margin: 0 5px; }
      .team-mp .item .social-icon a:hover {
        background: #fff;
        color: #212121;
        -webkit-transition: all .4s;
        -o-transition: all .4s;
        transition: all .4s; }

.team-mp.style2 .item:hover {
  background: #FF6A3A; }

.team-style1 .item {
  position: relative;
  z-index: 3; }
  .team-style1 .item:after {
    content: '';
    width: 100vw;
    height: 70px;
    background: rgba(255, 255, 255, 0.1);
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s;
    z-index: -1;
    opacity: 0; }
  .team-style1 .item .fit-img {
    position: absolute;
    top: -50px;
    left: 100px;
    width: 200px;
    height: 220px;
    -webkit-transform: translateY(40px);
    -ms-transform: translateY(40px);
    transform: translateY(40px);
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s;
    opacity: 0; }
  .team-style1 .item:hover .fit-img {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); }
  .team-style1 .item:hover:after {
    opacity: 1; }

.team-style2 .caption h2 {
  font-size: 12vw;
  line-height: 1; }

.team-style2 .gallery__item {
  margin-top: -225px;
  position: relative; }
  .team-style2 .gallery__item a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.team-style2 .item .fit-img {
  position: relative; }
  .team-style2 .item .fit-img:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#1f1f1f));
    background: -webkit-linear-gradient(transparent, #1f1f1f);
    background: -o-linear-gradient(transparent, #1f1f1f);
    background: linear-gradient(transparent, #1f1f1f);
    opacity: 0;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s; }
  .team-style2 .item .fit-img .cont {
    position: absolute;
    bottom: 40px;
    left: 0;
    width: 100%;
    text-align: center;
    z-index: 3;
    opacity: 0;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s; }
  .team-style2 .item .fit-img:hover:after,
  .team-style2 .item .fit-img:hover .cont {
    opacity: 1; }

.team-style3 {
  position: relative;
  padding-top: 340px !important;
  z-index: 4; }
  .team-style3.no-pad {
    padding-top: 120px !important; }
  .team-style3 .sec-head-crev {
    position: absolute;
    top: 120px;
    width: 100%;
    z-index: -1; }
    .team-style3 .sec-head-crev h2 {
      letter-spacing: -4px; }
  .team-style3 .item {
    width: 100%;
    position: relative;
    overflow: hidden; }
    .team-style3 .item.mt-mins {
      margin-top: -100px; }
    .team-style3 .item:after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#1f1f1f));
      background: -webkit-linear-gradient(transparent, #1f1f1f);
      background: -o-linear-gradient(transparent, #1f1f1f);
      background: linear-gradient(transparent, #1f1f1f);
      opacity: 0;
      -webkit-transition: all .4s;
      -o-transition: all .4s;
      transition: all .4s; }
    .team-style3 .item .cont {
      position: absolute;
      bottom: 40px;
      left: 0;
      width: 100%;
      text-align: center;
      z-index: 3;
      opacity: 0;
      -webkit-transition: all .4s;
      -o-transition: all .4s;
      transition: all .4s; }
    .team-style3 .item:hover:after,
    .team-style3 .item:hover .cont {
      opacity: 1; }

/* Testimonials
-----------------------------------------------------------------*/
.testimonials-ds .qoute-icon {
  position: relative;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content; }
  .testimonials-ds .qoute-icon .text {
    width: 240px; }
  .testimonials-ds .qoute-icon .icon {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    width: 100px; }

.testimonials-ds .item .info {
  border-top: 1px solid rgba(255, 255, 255, 0.1); }
  .testimonials-ds .item .info .img-author {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    overflow: hidden; }
  .testimonials-ds .item .info .info-text {
    padding-left: 20px; }
    .testimonials-ds .item .info .info-text p {
      font-size: 14px;
      color: #BBBBBB;
      margin-top: 5px; }

.testimonials-ds .swiper {
  position: relative; }
  .testimonials-ds .swiper .swiper-pagination {
    position: absolute;
    bottom: 0;
    right: 0;
    left: auto !important;
    width: -webkit-max-content !important;
    width: -moz-max-content !important;
    width: max-content !important;
    padding: 5px 15px;
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.1); }
    .testimonials-ds .swiper .swiper-pagination .swiper-pagination-bullet {
      margin: 0 7px;
      background: #BBBBBB; }
      .testimonials-ds .swiper .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
        background: #2d03ff; }

.box-lyars {
  background: #1f1f1f;
  border-radius: 15px;
  padding: 100px 80px;
  position: relative; }
  .box-lyars .layers {
    position: absolute;
    top: 5px;
    left: 30px;
    right: 30px;
    bottom: -10px;
    background: #1f1f1f;
    border-radius: 15px;
    opacity: .7;
    z-index: -1; }
    .box-lyars .layers:after {
      content: '';
      position: absolute;
      top: 5px;
      left: 20px;
      right: 20px;
      bottom: -10px;
      background: #1f1f1f;
      border-radius: 15px;
      opacity: .7;
      z-index: -1; }

.testim-style1 {
  position: relative; }
  .testim-style1 .testim-sliders {
    position: relative; }
    .testim-style1 .testim-sliders .main-slider {
      position: relative;
      overflow: hidden; }
      .testim-style1 .testim-sliders .main-slider .swiper-pagination {
        position: absolute;
        bottom: 0;
        right: 0;
        left: auto;
        width: auto;
        font-size: 14px; }
        .testim-style1 .testim-sliders .main-slider .swiper-pagination span {
          margin: 0 8px;
          width: 6px;
          height: 6px;
          border-radius: 50%; }
        .testim-style1 .testim-sliders .main-slider .swiper-pagination .swiper-pagination-bullet-active {
          background: #111; }
    .testim-style1 .testim-sliders .thumb-slider {
      position: relative;
      overflow: hidden; }
  .testim-style1 .thumb-side {
    text-align: center; }
    .testim-style1 .thumb-side .swiper-button-prev,
    .testim-style1 .thumb-side .swiper-button-next {
      position: static;
      margin: 0 5px;
      display: inline-block;
      color: inherit;
      width: 50px;
      height: 50px;
      line-height: 50px;
      text-align: center;
      border: 1px solid rgba(255, 255, 255, 0.5);
      border-radius: 50%; }
      .testim-style1 .thumb-side .swiper-button-prev:after,
      .testim-style1 .thumb-side .swiper-button-next:after {
        font-size: 13px; }
      .testim-style1 .thumb-side .swiper-button-prev:hover,
      .testim-style1 .thumb-side .swiper-button-next:hover {
        background: #fff;
        color: #000; }

.testim-style2 .swiper-slide {
  padding: 20px 20px 30px;
  background: #1f1f1f;
  position: relative;
  -webkit-transform: rotate(-5deg);
  -ms-transform: rotate(-5deg);
  transform: rotate(-5deg);
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s; }
  .testim-style2 .swiper-slide:hover {
    z-index: 3;
    -webkit-transform: rotate(0) !important;
    -ms-transform: rotate(0) !important;
    transform: rotate(0) !important; }
  .testim-style2 .swiper-slide:nth-of-type(even) {
    -webkit-transform: rotate(5deg);
    -ms-transform: rotate(5deg);
    transform: rotate(5deg); }

.testim-style2 .bg-light,
.testim-style2 .bg-main-color {
  color: #000; }
  .testim-style2 .bg-light p,
  .testim-style2 .bg-main-color p {
    color: #4d4d4d; }

.testim-style3 .testim-swiper {
  padding: 0 120px;
  position: relative; }

.testim-style3 .swiper-slide {
  padding: 50px;
  border-radius: 15px;
  background: #252525;
  position: relative;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s; }

.testim-style3 .bg-light,
.testim-style3 .bg-main-color {
  color: #000; }
  .testim-style3 .bg-light p,
  .testim-style3 .bg-main-color p {
    color: #4d4d4d; }

.testim-style3 .swiper-controls {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 4; }

/* Awards
-----------------------------------------------------------------*/
.award-style1 .item {
  padding: 30px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s; }
  .award-style1 .item:last-of-type {
    border-bottom: 1px solid rgba(255, 255, 255, 0.05); }
  .award-style1 .item:hover {
    padding: 30px;
    background: rgba(255, 255, 255, 0.05); }

.thecontainer {
  width: 300%;
  height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap; }

.panel {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative; }

/* ====================== [ Start Responsive ] ====================== */
@media screen and (max-width: 992px) {
  .md-mb10 {
    margin-bottom: 10px; }
  .md-mb15 {
    margin-bottom: 15px; }
  .md-mb20 {
    margin-bottom: 20px; }
  .md-mb30 {
    margin-bottom: 30px; }
  .md-mb40 {
    margin-bottom: 40px; }
  .md-mb50 {
    margin-bottom: 50px !important; }
  .md-mb80 {
    margin-bottom: 80px; }
  .md-no-mrg {
    margin: 0 !important; }
  .md-pb10 {
    padding-bottom: 10px; }
  .md-pb20 {
    padding-bottom: 20px; }
  .md-pb30 {
    padding-bottom: 30px; }
  .md-pb40 {
    padding-bottom: 40px; }
  .md-pb50 {
    padding-bottom: 50px; }
  .md-pb60 {
    padding-bottom: 60px; }
  .md-pb70 {
    padding-bottom: 70px; }
  .md-pb80 {
    padding-bottom: 80px; }
  .md-pt80 {
    padding-top: 80px !important; }
  .md-no-pad {
    padding: 0 !important; }
  .md-center {
    text-align: center !important; }
  .md-order-1 {
    -webkit-box-ordinal-group: 2 !important;
    -ms-flex-order: 1 !important;
    order: 1 !important; }
  .md-order-2 {
    -webkit-box-ordinal-group: 3 !important;
    -ms-flex-order: 2 !important;
    order: 2 !important; }
  .md-order-3 {
    -webkit-box-ordinal-group: 4 !important;
    -ms-flex-order: 3 !important;
    order: 3 !important; }
  .md-order-4 {
    -webkit-box-ordinal-group: 5 !important;
    -ms-flex-order: 4 !important;
    order: 4 !important; }
  .md-hide {
    display: none; }
  .justify-end {
    -webkit-box-pack: start !important;
    -ms-flex-pack: start !important;
    justify-content: flex-start !important; }
    .justify-end .vew-all {
      margin-left: 25px;
      margin-top: 25px; }
    .justify-end .swiper-controls {
      margin-top: 30px; }
    .justify-end .ml-auto {
      margin-left: 0;
      margin-top: 30px; }
  .row.sm-marg {
    margin-left: -15px;
    margin-right: -15px; }
    .row.sm-marg > * {
      padding-left: 15px;
      padding-right: 15px; }
  .row.stand-marg {
    margin-left: -15px;
    margin-right: -15px; }
    .row.stand-marg > * {
      padding-left: 15px;
      padding-right: 15px; }
  .row.md-marg {
    margin-left: -15px;
    margin-right: -15px; }
    .row.md-marg > * {
      padding-left: 15px;
      padding-right: 15px; }
  .row.lg-marg {
    margin-left: -15px;
    margin-right: -15px; }
    .row.lg-marg > * {
      padding-left: 15px;
      padding-right: 15px; }
  .row.xlg-marg {
    margin-left: -15px;
    margin-right: -15px; }
    .row.xlg-marg > * {
      padding-left: 15px;
      padding-right: 15px; }
  .row.xxlg-marg {
    margin-left: -15px;
    margin-right: -15px; }
    .row.xxlg-marg > * {
      padding-left: 15px;
      padding-right: 15px; }
  h1 {
    font-size: 50px; }
  h2 {
    font-size: 40px; }
  h3 {
    font-size: 30px; }
  h4 {
    font-size: 28px; }
  h5 {
    font-size: 23px; }
  h6 {
    font-size: 20px; }
  .fz-120 {
    font-size: 90px !important; }
  .fz-80 {
    font-size: 60px !important; }
  .fz-70 {
    font-size: 50px !important; }
  .navbar .logo:after {
    display: none; }
  .navbar .contact-button {
    display: none; }
  .navbar .mega-menu .item-img .img {
    display: none; }
  .navbar {
    padding-top: 15px;
    padding-bottom: 15px; }
    .navbar .navbar-collapse {
      max-height: 440px;
      overflow: auto; }
      .navbar .navbar-collapse::-webkit-scrollbar {
        display: none; }
    .navbar.nav-scroll {
      padding-top: 15px;
      padding-bottom: 15px; }
    .navbar .container {
      padding: 0;
      width: 100%;
      max-width: 100%; }
    .navbar .mega-menu .container {
      padding: 20px 10px !important; }
    .navbar .logo {
      max-width: 80px !important;
      margin-left: 30px; }
    .navbar .navbar-collapse {
      border-top: 1px solid rgba(255, 255, 255, 0.1);
      margin-top: 15px; }
    .navbar .navbar-toggler {
      font-size: 20px;
      border-radius: 0;
      padding: 0;
      margin-right: 30px; }
      .navbar .navbar-toggler:focus {
        -webkit-box-shadow: none;
        box-shadow: none;
        border: 0;
        outline: none; }
    .navbar .dropdown-menu {
      display: none; }
      .navbar .dropdown-menu.show {
        display: block;
        position: static; }
    .navbar .dropdown-menu .dropdown-item .dropdown-side {
      display: none;
      position: static;
      width: 100%;
      margin-top: 15px; }
      .navbar .dropdown-menu .dropdown-item .dropdown-side.show {
        display: block; }
    .navbar .navbar-nav .nav-link {
      padding: 15px 30px 10px;
      margin: 0;
      border-bottom: 1px solid rgba(255, 255, 255, 0.1); }
    .navbar .navbar-nav .nav-item:last-of-type .nav-link {
      padding-bottom: 0;
      border-bottom: 0; }
    .navbar .navbar-nav .mega-menu {
      width: auto;
      position: static;
      padding: 0; }
      .navbar .navbar-nav .mega-menu .item-img {
        font-size: 14px;
        color: #fff;
        -webkit-transition: all .4s;
        -o-transition: all .4s;
        transition: all .4s;
        padding: 10px 25px;
        position: relative; }
        .navbar .navbar-nav .mega-menu .item-img .mt-15 {
          margin-top: 0 !important; }
        .navbar .navbar-nav .mega-menu .item-img:after {
          content: '';
          width: 0px;
          height: 1px;
          background: #fff;
          position: absolute;
          left: 10px;
          top: 18px;
          -webkit-transition: all .4s;
          -o-transition: all .4s;
          transition: all .4s; }
        .navbar .navbar-nav .mega-menu .item-img:hover {
          padding-left: 30px;
          background: transparent; }
          .navbar .navbar-nav .mega-menu .item-img:hover:after {
            width: 10px; }
  .blur-div {
    display: none; }
  .intro-style1 {
    display: none; }
  .hero-style2 .fs-80 {
    font-size: 60px !important; }
  .cards-wrapper {
    height: auto !important; }
  .hero-style1 {
    padding-bottom: 0; }
  .hero-style4 {
    padding: 160px 0 0; }
    .hero-style4 .fs-20 {
      font-size: 16px !important; }
    .hero-style4 h1 {
      letter-spacing: normal; }
  .hero-style5 .links a {
    font-size: 40px; }
  .hero-style5 .caption h1 {
    font-size: 8.8vw; }
  .hero-style3 .container:after,
  .hero-style3 .container:before,
  .hero-style3 .box1:after,
  .hero-style3 .box1:before,
  .hero-style3 .box2:after,
  .hero-style3 .box2:before,
  .hero-style3 .box3:after,
  .hero-style3 .box3:before,
  .hero-style3 .box4:after,
  .hero-style3 .box4:before,
  .hero-style3 .box4 {
    display: none !important; }
  .hero-style3 .lg-text .img1,
  .hero-style3 .lg-text .img2,
  .hero-style3 .lg-text .img3 {
    width: 100px;
    height: 150px; }
  .portfolio-elegant .work-boxs,
  .portfolio-crev .work-boxs {
    display: block !important; }
  .portfolio-elegant .item,
  .portfolio-elegant .item.active,
  .portfolio-crev .item,
  .portfolio-crev .item.active {
    width: 100%;
    height: 400px;
    min-height: 400px;
    margin-bottom: 15px; }
  .portfolio-elegant .item,
  .portfolio-elegant .item.active {
    height: auto;
    min-height: auto;
    margin: 0 0 50px !important; }
    .portfolio-elegant .item .bg-img,
    .portfolio-elegant .item.active .bg-img {
      height: 400px; }
  .team-mp .item .img {
    width: 280px; }
  .team-mp .item h2 {
    font-size: 30px;
    line-height: 1.2; }
  .team-style2 {
    padding: 120px 0 !important; }
    .team-style2 .gallery-wrap {
      display: none !important; }
  .team-style3 .item.mt-mins {
    margin-top: 40px !important; }
  .sec-head-crev .fs-75 {
    font-size: 50px !important; }
  .serv-style1 .item ul li {
    display: inline-block;
    margin: 10px !important; }
  .serv-style4 {
    border-bottom: 0; }
    .serv-style4 .item {
      border-bottom: 1px solid rgba(255, 255, 255, 0.1); }
  .testim-style3 .swiper-controls {
    top: auto;
    bottom: -30px;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none; }
  .showcase-full .parallax-slider-full .caption h1 {
    font-size: 80px; }
  .parallax-slider-wrapper .parallax-slider-inner {
    left: 40px; }
  .slider .parallax-slider-full .swiper-slide .bg-img {
    background-position: center center !important; }
  .inter-links-center .links-text li h2 {
    font-size: 64px; }
  .pg-hero .fs-100 {
    font-size: 80px !important; }
  footer .social-icon-circle,
  footer .item {
    margin-bottom: 50px; }
  .footer-style1 .lg-text h2 {
    margin-bottom: 0; }
  .footer-style1 .links a {
    margin-right: 15px; }
  .footer-style1 .justify-content-end {
    -webkit-box-pack: start !important;
    -ms-flex-pack: start !important;
    justify-content: flex-start !important;
    margin-top: 30px; } }

@media screen and (max-width: 768px) {
  .sm-mb10 {
    margin-bottom: 10px; }
  .sm-mb20 {
    margin-bottom: 20px; }
  .sm-mb30 {
    margin-bottom: 30px; }
  .sm-mb40 {
    margin-bottom: 40px; }
  .sm-mb50 {
    margin-bottom: 50px; }
  .sm-mb80 {
    margin-bottom: 80px; }
  .sm-pb10 {
    padding-bottom: 10px; }
  .sm-pb20 {
    padding-bottom: 20px; }
  .sm-pb30 {
    padding-bottom: 30px; }
  .sm-pb40 {
    padding-bottom: 40px; }
  .sm-pb50 {
    padding-bottom: 50px; }
  .sm-pb60 {
    padding-bottom: 60px; }
  .sm-pb70 {
    padding-bottom: 70px; }
  .sm-pb80 {
    padding-bottom: 80px; }
  .sm-hide {
    display: none; }
  .fz-70 {
    font-size: 40px !important; }
  h1 {
    font-size: 46px; }
  h2 {
    font-size: 30px; }
  h3 {
    font-size: 24px; }
  h4 {
    font-size: 22px; }
  h5 {
    font-size: 20px; }
  h6 {
    font-size: 18px; }
  .progress-wrap {
    display: none; }
  .loader-wrap .loader-wrap-heading .load-text {
    font-size: 20px; }
  .hamenu .logo {
    left: 25px; }
  .hamenu .close-menu {
    top: 25px;
    right: 25px; }
  .hamenu .menu-links .main-menu > li .link {
    font-size: 30px; }
  .hamenu .menu-links .main-menu > li .sub-dmenu {
    font-size: 24px; }
  .hamenu .menu-links .main-menu .sub-menu li,
  .hamenu .menu-links .main-menu .sub-menu2 li {
    font-size: 20px; }
  .hero-style2 .fs-80 {
    font-size: 35px !important; }
  .hero-style1 .fs-80 {
    font-size: 45px !important; }
  .hero-style3 {
    padding-bottom: 80px; }
    .hero-style3 .p-40px {
      padding: 30px 20px !important; }
  .hero-style3 h1 {
    font-size: 50px; }
  .hero-style3 .box3 {
    display: block !important; }
  .hero-style3 .exp {
    margin: 0;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content; }
    .hero-style3 .exp h2 {
      font-size: 220px; }
  .hero-style6 .fs-90 {
    font-size: 50px !important; }
  .sec-head-crev .fs-75 {
    font-size: 30px !important; }
  .sec-head-modern .fs-60 {
    font-size: 40px !important; }
  .sec-head-crev .fs-75 {
    font-size: 50px !important; }
  .sec-head-crev .fs-65 {
    font-size: 40px !important; }
  .sec-head-stand .fs-65 {
    font-size: 40px !important; }
  .sec-head-stand .fs-50 {
    font-size: 34px !important; }
  .img-bord-color .h-600px {
    height: 400px; }
  .work-style2 {
    padding-top: 120px !important; }
  .intro-style6 .h-600px,
  .work-style3 .item .fit-img {
    height: 400px !important; }
  .box-lyars {
    padding: 100px 20px; }
  .testimonials-ds .qoute-icon .text {
    width: 160px; }
  .testim-style1 .info-text {
    display: block !important; }
  .intro-style2 .fs-60,
  .intro-style3 .fs-60 {
    font-size: 34px !important; }
  .team-mp .item {
    padding: 30px; }
    .team-mp .item .d-flex {
      display: block !important; }
    .team-mp .item .img {
      width: auto;
      height: auto;
      background: rgba(255, 255, 255, 0.1);
      border-radius: 15px;
      overflow: hidden; }
    .team-mp .item .cont {
      padding: 30px 0 0;
      text-align: center; }
    .team-mp .item .ml-auto {
      width: -webkit-max-content;
      width: -moz-max-content;
      width: max-content;
      margin: auto !important; }
    .team-mp .item .social-icon {
      padding: 0;
      margin-top: 30px; }
  .testim-style2 .swiper-slide {
    -webkit-transform: rotate(0) !important;
    -ms-transform: rotate(0) !important;
    transform: rotate(0) !important; }
  .testim-style3 .testim-swiper {
    padding: 0; }
  .testim-style3 .swiper-slide {
    padding: 50px 30px; }
  .award-style1 .d-flex {
    display: block !important; }
  .marq-brand .item-marq a {
    width: 200px;
    height: 130px;
    line-height: 130px; }
  .skills .item {
    -webkit-box-align: center !important;
    -ms-flex-align: center !important;
    align-items: center !important; }
  .bg-img.h-600px {
    height: 480px; }
  footer .call-action-style2 .butn-call {
    width: 100px;
    height: 100px;
    line-height: 100px; }
    footer .call-action-style2 .butn-call img {
      width: 30px !important; }
  footer .mt-80px {
    text-align: center;
    margin-top: 30px !important; }
    footer .mt-80px p {
      margin-bottom: 15px; }
  .showcase-full .parallax-slider-full .caption h1 {
    font-size: 45px; }
  .showcase-full .dots {
    display: none; }
  .parallax-slider-wrapper .parallax-slider-inner {
    left: 20px; }
  .inter-links-center .links-text li h2 {
    font-size: 30px; }
  .pg-hero .fs-100 {
    font-size: 50px !important; }
  .blog-header .fz-55 {
    font-size: 30px !important; }
  .blog-header .info {
    display: block !important; }
  .blog-header .date {
    margin-left: 30px !important; }
  .blog-header .right-info {
    margin: 30px 0 0; }
  .main-post .fz-60 {
    display: none; }
  .main-post .post-qoute {
    padding: 30px 15px; }
    .main-post .post-qoute h6:before {
      position: relative;
      left: 0; }
  .main-post .info-area {
    display: block !important; }
    .main-post .info-area .tags {
      margin-bottom: 30px; }
  .main-post .author-area .flex {
    display: block; }
  .main-post .author-area .author-img {
    margin: 0 0 30px 0; }
    .main-post .author-area .author-img .img {
      width: 80px;
      height: 80px; }
  .main-post .next-prv-post {
    display: block; }
    .main-post .next-prv-post .thumb-post {
      margin: 0 !important; }
    .main-post .next-prv-post .text-right {
      text-align: left;
      margin-top: 30px !important; }
  .comments-post .item-box .flex {
    display: block; }
  .comments-post .item-box .user-img {
    margin: 0 0 15px 0; }
  .comments-post .item-box .replay-post {
    margin: 15px 0 0 0; }
  .comments-post .item-box.replayed {
    margin-left: 0; }
  .main-post .post-qoute h6:before {
    top: 70px; }
  .pg-project .fs-60 {
    font-size: 28px !important; } }


    .btn-custom {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 10px 20px;
      font-size: 14px;
      border: 2px solid #ffffff;
      border-radius: 30px;
      text-decoration: none;
      color: #ffffff;
      transition: all 0.3s ease;
      margin-right: 10px;
      box-shadow: 0 0 10px rgba(255, 255, 255, 0.6); /* svieti bielym */
      
  }
  
  .btn-custom .icon {
      transition: transform 0.3s ease;
  }
  
  .btn-custom:hover {

      color: #ffffff;
      box-shadow: 0 0 30px rgba(255, 255, 255, 0.9); /* silnejší glow pri hover */
  }
  
  .btn-custom:hover .icon {
      transform: translateX(5px);
  }
  
  .btn-custom.second {
      border-color: #FE002E;
      color: #FE002E;
      box-shadow: 0 0 5px rgba(254,0,46,0.6); /* červený glow */
  }
  
  .btn-custom.second:hover {
      background-color: #0077ff;
      color: #fff;
      box-shadow: 0 0 px rgba(0,119,255,0.9); /* modrý glow pri hover */
  }

  @media (max-width: 768px) {
    .logo img {
        max-width: 200px; /* menšie logo pre mobily */
    }
}


/* logo je skryté defaultne */
.logo-top {
  display: none;
}

/* na mobiloch (šírka do 768px) sa zobrazí */
@media (max-width: 768px) {
  .logo-top {
      display: block;
  }
  .logo-top-img {
      max-width: px;  /* veľkosť loga na mobile */
      height: auto;
      margin: 0 auto;
  }
}


.fit-img {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
}

.bg-img {
  background-image: url('assets/imgs/serv/jakub-zerdzicki-Sj2Z2WVhhfc-unsplash.jpg');
  background-size: cover;


  /* 👉 tu sa deje posun */
  background-position: left 10px bottom -600px;

  width: 100%;
  height: 550px;
}

@media (max-width: 768px) {
  .bg-img {
    /* Prispôsobenie pre mobil */
    background-position: center bottom -150px; /* jemnejší posun */
    height: 400px; /* nižší obrázok pre mobil */
  }
}

/* 📱 Extra malé zariadenia (napr. do 480px) */
@media (max-width: 480px) {
  .bg-img {
    background-position: center bottom -45px;
    height: 200px;
    border-radius: 5px;
  }
}


.butn {
  position: relative;
  display: inline-block;
  padding: 10px 28px; /* menší celkový rozmer */
  border: 1.5px solid rgba(254, 0, 46, 0.3);
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 1px;
  text-transform: uppercase;
  overflow: hidden;
  transition: all 0.4s ease;
  border-radius: 40px;
  background: transparent;
  backdrop-filter: blur(6px);
  box-shadow: 0 0 8px rgba(254, 0, 46, 0.3); /* jemné žiarenie */
}



ul.rest li {
  margin-bottom: 12px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  line-height: 1.6;
  color: #ddd;
  transition: all 0.3s ease;
}

ul.rest li:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

ul.rest li:hover {
  color: #fff;
  letter-spacing: 0.5px;
}


ul.rest li {
  position: relative;
  margin-bottom: 14px;
  padding-left: 28px;
  line-height: 1.7;
  color: #eee;
}

ul.rest li::before {
  content: "•";
  position: absolute;
  left: 0;
  top: 0;
  color: #FE002E;; /* môžeš zmeniť na farbu brandu */
  font-size: 20px;
  line-height: 1;
}

.glow-number {
  color: #ffffff;
  text-shadow:
    0 0 6px rgba(255, 255, 255, 0.25),
    0 0 9px rgba(255, 255, 255, 0.15);
  transition: text-shadow 0.3s ease, transform 0.3s ease;
}

.glow-number:hover {
  text-shadow:
    0 0 5px rgba(255, 255, 255, 0.35),
    0 0 3px rgba(255, 255, 255, 0.25);
  transform: scale(1.01);
}


.butn {
  position: relative;
  display: inline-block;
  padding: 12px 34px; /* ➕ väčší button */
  border: 1.5px solid rgba(254,0,46,.7);
  color: #fff;
  font-size: 14px; /* ➕ väčší text */
  font-weight: 800;
  letter-spacing: 1px;
  text-transform: uppercase;
  border-radius: 40px;
  background: transparent;
  transition: all .35s ease;
  overflow: hidden;
  box-shadow: 0 0 8px rgba(254,0,46,.25);
}

.butn span {
  position: relative;
  z-index: 2;
}

.butn2 {
  position: relative;
  display: inline-block;
  padding: 12px 34px;
  border: 1.2px solid rgba(254, 0, 46, 0.5);
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  border-radius: 40px;
  background: rgba(254, 0, 46, 0.08);
  transition: all 0.4s ease;
  overflow: hidden;
  box-shadow: 0 0 10px rgba(254, 0, 46, 0.15); /* ✨ jemný glow */
  backdrop-filter: blur(6px);
}

.butn2 span {
  position: relative;
  z-index: 2;
}

/* decentný svetelný prechod */
.butn2::before {
  content: "";
  position: absolute;
  inset: 0;
  left: -120%;
  background: linear-gradient(
    90deg,
    rgba(254, 0, 46, 0.1),
    rgba(254, 0, 46, 0.25),
    rgba(254, 0, 46, 0.1)
  );
  transform: skewX(-20deg);
  transition: left 0.7s ease;
}

/* 🌟 Hover – jemný lesk, nie výrazná farba */
.butn2:hover {
  border-color: rgba(254, 0, 46, 0.8);
  background: linear-gradient(
    90deg,
    rgba(254, 0, 46, 0.2),
    rgba(254, 0, 46, 0.35)
  );
  color: #fff;
  box-shadow: 0 0 15px rgba(254, 0, 46, 0.3);
  transform: translateY(-1px);
}

.butn2:hover::before {
  left: 120%;
}

.h-320px{ height: 500px; }


.form-card{
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.10);
}

.gap-10{ gap: 10px; }
.gap-15{ gap: 15px; }

.form-label{
  display: block;
  font-size: 14px;
  opacity: .75;
  margin-bottom: 8px;
}

.form-input{
  width: 100%;
  border-radius: 12px;
  padding: 12px 14px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(0,0,0,.18);
  color: #fff;
  outline: none;
  transition: border-color .2s ease, box-shadow .2s ease, transform .1s ease;
}

.form-input::placeholder{ color: rgba(255,255,255,.55); }

.form-input:focus{
  border-color: rgba(255,255,255,.28);
  box-shadow: 0 0 0 4px rgba(255,255,255,.08);
}

.form-input select, select.form-input{
  appearance: none;
}

.checks{ margin-top: 10px; }

.check-row{
  display: flex;
  align-items: flex-start;
  gap: 12px;
  cursor: pointer;
  user-select: none;
  margin: 12px 0;
}

.check-row input{
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.check-ui{
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  border-radius: 6px;
  border: 1px solid rgba(255,255,255,.20);
  background: rgba(0,0,0,.18);
  margin-top: 2px;
  position: relative;
}

.check-row input:checked + .check-ui{
  border-color: rgba(255,255,255,.35);
  background: rgba(255,255,255,.12);
}

.check-row input:checked + .check-ui::after{
  content: "";
  position: absolute;
  left: 6px;
  top: 2px;
  width: 6px;
  height: 12px;
  border: solid rgba(255,255,255,.9);
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.check-text{
  opacity: .85;
  line-height: 1.45;
}

.check-text a{
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
  opacity: .95;
}

.form-error{
  margin-left: 10px;
  font-size: 14px;
  color: #ffb3b3;
  opacity: .95;
}

@media (max-width: 768px){
  .form-card{ padding: 22px !important; }
}

.split-view-container {
  position: relative;
  width: 100%;
  height: 450px;
  overflow: hidden;
  cursor: ew-resize;
  /* ZABRÁNI SCROLOVANIU NA MOBILE PRI ŤAHANÍ */
  touch-action: none; 
  user-select: none;
}

.split-img-item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
}

.before-img {
  z-index: 2;
  /* Počiatočné orezanie */
  clip-path: inset(0 50% 0 0);
}

.split-handle {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 2px;
  background: #fff;
  z-index: 5;
  pointer-events: none;
}

.handle-circle {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 40px;
  height: 40px;
  background: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #000;
  font-size: 14px;
  box-shadow: 0 0 10px rgba(0,0,0,0.3);
}



/* ====================== [ End Responsive ] ====================== */

.estavio-flow-divider {
    padding: 60px 0;
    background: #0d0d0d;
    overflow: hidden;
}

.divider-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.divider-info {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 25px;
}

.section-number {
    font-size: 11px;
    font-weight: 900;
    color: #fe002e;
    letter-spacing: 2px;
    border: 1px solid rgba(254, 0, 46, 0.4);
    padding: 3px 7px;
    border-radius: 3px;
}

.section-name {
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 6px;
    color: #fff;
    font-weight: 700;
}

.divider-main-line {
    position: relative;
    width: 100%;
    height: 1px;
    background: rgba(255, 255, 255, 0.08); /* Statický podklad čiary */
    overflow: hidden;
}

.line-infinite-glow {
    position: absolute;
    top: 0;
    left: -100%;
    width: 40%; /* Dĺžka svetelného lúča */
    height: 100%;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(254, 0, 46, 0.8) 50%, 
        transparent 100%
    );
    /* Nekonečné opakovanie každé 3 sekundy */
    animation: flowLight 3s infinite ease-in-out;
}

/* Pridáme jemné pulzovanie názvu sekcie */
.section-name {
    animation: textPulse 4s infinite ease-in-out;
}

/* Definícia pohybov */
@keyframes flowLight {
    0% { left: -50%; }
    100% { left: 120%; }
}

@keyframes textPulse {
    0%, 100% { opacity: 0.7; transform: scale(1); }
    50% { opacity: 1; transform: scale(1.02); color: #fe002e; }
}

.divider-tag {
    margin-top: 15px;
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: 3px;
    color: rgba(255, 255, 255, 0.2);
}


/* Základná lišta */
.nav-estavio-pro {
  background: rgba(10, 10, 10, 0.8) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  padding: 15px 0;
  position: fixed;
  width: 100%;
  top: 0;
  z-index: 9999;
}

/* Linky v menu */
.nav-link {
  color: rgba(255, 255, 255, 0.7) !important;
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  padding: 10px 20px !important;
  transition: 0.3s;
}

.nav-link:hover, .nav-link.active {
  color: #fe002e !important; /* Estavio Red */
}

/* Dropdown styling */
.dropdown-menu {
  background: #111 !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: 0;
  padding: 10px;
}

.dropdown-item {
  color: #fff !important;
  font-size: 12px;
  padding: 12px 20px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.dropdown-item span {
  color: #fe002e;
  margin-right: 10px;
  font-weight: 800;
}

.dropdown-item:hover {
  background: rgba(254, 0, 46, 0.1) !important;
}

/* Mobilné zobrazenie */
@media (max-width: 991px) {
  .navbar-collapse {
      background: #000; /* Čistá čierna pre stabilitu */
      height: 100vh;
      padding-top: 50px;
      text-align: center;
  }

  .nav-mobile-details {
      margin-top: 40px;
      padding: 20px;
  }

  .nav-contact-card {
      background: rgba(255, 255, 255, 0.03);
      border: 1px solid rgba(254, 0, 46, 0.2);
      padding: 30px;
      display: flex;
      flex-direction: column;
      gap: 10px;
  }

  .nav-contact-card small { color: #fe002e; text-transform: uppercase; letter-spacing: 2px; }
  .nav-contact-card a { color: #fff; font-size: 20px; font-weight: 700; text-decoration: none; }
}

/* Tlačidlo */
.btn-pro {
  background: #fe002e;
  color: #fff;
  padding: 12px 25px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 2px;
  text-decoration: none;
  transition: 0.3s;
}

.btn-pro:hover {
  background: #fff;
  color: #000;
}

/* ============================================================
   ESTAVIO PREMIUM NAVIGATION - ULTRA GLASS DESIGN
   ============================================================ */

/* 1. ZÁKLADNÁ LIŠTA - Priehľadnosť a Blur ako na stránke */
.nav-estavio-ultra-glass {
  background: rgba(15, 15, 15, 0.4) !important; /* Jemne priehľadné tmavé pozadie */
  backdrop-filter: blur(20px) saturate(180%);
  -webkit-backdrop-filter: blur(20px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
  padding: 12px 0;
  transition: all 0.4s ease;
  position: fixed;
  width: 100%;
  top: 0;
  z-index: 9999;
}

/* 2. NOVÝ HOVER EFEKT - Žiariaca línia a pohyb textu */
.nav-anim-link {
  position: relative;
  padding: 10px 20px !important;
  display: inline-block;
  text-decoration: none !important;
}

/* Text v menu */
.nav-anim-link .link-text {
  display: inline-block;
  color: #ffffff !important;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), color 0.3s ease;
}

/* Skrytá žiariaca čiara pod textom */
.nav-anim-link .link-glow-line {
  position: absolute;
  bottom: 5px;
  left: 20px;
  right: 20px;
  height: 2px;
  background: #fe002e; /* Estavio Red */
  transform: scaleX(0); /* Čiara je stiahnutá */
  transform-origin: right; /* Smer sťahovania */
  transition: transform 0.4s cubic-bezier(0.65, 0.05, 0.36, 1);
  box-shadow: 0 0 10px rgba(254, 0, 46, 0.8), 0 0 5px rgba(254, 0, 46, 0.4);
}

/* Aktivácia hoveru (len pre desktopy) */
@media (min-width: 992px) {
  .nav-anim-link:hover .link-text {
      transform: translateY(-3px); /* Jemný výskok textu */
      color: #fe002e !important;
  }

  .nav-anim-link:hover .link-glow-line {
      transform: scaleX(1); /* Čiara sa vysunie */
      transform-origin: left; /* Smer vysúvania */
  }
}

/* 3. ČERVENÉ IKONKY V DROPDOWNE (SLUŽBY) */
.icon-red {
  color: #fe002e !important;
  margin-right: 12px;
  font-size: 14px;
  filter: drop-shadow(0 0 5px rgba(254, 0, 46, 0.4));
  transition: all 0.3s ease;
}

.dropdown-menu {
  background: rgba(10, 10, 10, 0.95) !important;
  backdrop-filter: blur(15px);
  border: 1px solid rgba(254, 0, 46, 0.2) !important;
  border-radius: 12px !important;
  padding: 10px !important;
  margin-top: 15px !important;
}

.dropdown-item {
  color: #fff !important;
  font-size: 12px !important;
  padding: 12px 20px !important;
  transition: 0.3s ease;
}

.dropdown-item:hover {
  background: rgba(254, 0, 46, 0.08) !important;
  color: #fe002e !important;
  padding-left: 25px !important; /* Jemné posunutie doprava */
}

.dropdown-item:hover .icon-red {
  filter: drop-shadow(0 0 8px rgba(254, 0, 46, 0.9));
  transform: scale(1.2);
}

/* 4. MOBILNÝ DIZAJN (Priehľadnosť + Kontakty) */
@media (max-width: 991px) {
  .navbar-collapse {
      background: rgba(12, 12, 12, 0.98) !important; /* Viac krycie kvôli čitateľnosti */
      padding: 50px 30px !important;
      border-radius: 0 0 30px 30px;
      border-bottom: 2px solid #fe002e;
  }

  .m-contact-box {
      margin-top: 40px;
      padding: 25px;
      background: rgba(255, 255, 255, 0.03);
      border: 1px solid rgba(255, 255, 255, 0.05);
      border-radius: 20px;
      text-align: center;
  }

  .m-label {
      display: block;
      font-size: 10px;
      text-transform: uppercase;
      letter-spacing: 3px;
      color: #fe002e;
      margin-bottom: 20px;
      font-weight: 800;
  }

  /* Červené tlačidlo na volanie */
  .m-call-btn {
      display: flex;
      align-items: center;
      justify-content: center;
      background: #fe002e !important;
      color: #fff !important;
      padding: 15px;
      border-radius: 12px;
      font-weight: 800;
      font-size: 17px;
      text-decoration: none !important;
      margin-bottom: 15px;
      box-shadow: 0 10px 20px rgba(254, 0, 46, 0.3);
  }

  /* Mail tlačidlo s obrysom */
  .m-mail-btn {
      display: flex;
      align-items: center;
      justify-content: center;
      background: transparent;
      color: #fff !important;
      padding: 14px;
      border: 1px solid rgba(255, 255, 255, 0.15);
      border-radius: 12px;
      font-weight: 600;
      font-size: 14px;
      text-decoration: none !important;
  }

  .m-icon-circle {
      margin-right: 12px;
      font-size: 16px;
  }
}

/* --- FINÁLNY TESNÝ ESTAVIO FLOW DIVIDER --- */
.estavio-flow-divider {
  padding: 20px 0; /* Primeraný odstup od sekcií */
  background: transparent;
  overflow: hidden;
}

.divider-container {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px; /* EXTRÉMNE TESNÉ: čiara je skoro prilepená k textu */
  max-width: 100%;
  padding: 0 30px;
}

/* --- Číslo a názov (Mierne zväčšené a natlačené na seba) --- */
.divider-info {
  display: flex;
  align-items: center;
  gap: 5px; /* Číslo a text sú tesne pri sebe */
  white-space: nowrap;
}

.section-number {
  font-size: 13px; /* Väčšie pismo pre lepšiu čitateľnosť */
  font-weight: 900;
  color: #fe002e; /* Estavio Red */
  letter-spacing: 0.5px;
  line-height: 1;
}

.section-name {
  font-family: "Poppins", sans-serif; 
  font-size: 13px; /* Väčšie pismo pre názov */
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1.2px;
  color: rgba(255, 255, 255, 0.85); /* Jasnejšia biela */
  line-height: 1;
}

/* --- Čiara (Subtílna a nadväzujúca) --- */
.divider-main-line {
  flex-grow: 1;
  height: 1px;
  background: rgba(255, 255, 255, 0.1);
  position: relative;
}

/* OPRAVENÁ ANIMÁCIA: Svetelný lúč */
.line-infinite-glow {
  position: absolute;
  top: 0;
  left: -150px; /* Štartovacia pozícia mimo obrazovky */
  width: 120px;
  height: 100%;
  background: linear-gradient(90deg, transparent, #fe002e, transparent); /* Červený efekt */
  animation: flowLineAnim 4s infinite linear; /* Plynulý prechod */
}

/* KLĽÚČOVÉ SNÍMKY PRE ANIMÁCIU (Toto ti chýbalo) */
@keyframes flowLineAnim {
  0% { left: -150px; opacity: 0; }
  10% { opacity: 1; }
  90% { opacity: 1; }
  100% { left: 100%; opacity: 0; }
}

/* --- Tag na konci (Minimalistický) --- */
.divider-tag {
  font-size: 10px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: rgba(255, 255, 255, 0.25);
  white-space: nowrap;
}

/* --- RESPONSIVE: MOBIL (Optimalizované zväčšenie) --- */
@media (max-width: 768px) {
  .divider-container {
      padding: 0 15px;
      gap: 6px; /* Na mobile ešte tesnejšie */
  }

  .section-number, .section-name {
      font-size: 12px; /* Dobre čitateľné pismo aj na malom displeji */
  }

  .divider-tag {
      display: none; /* Skryté pre čistotu */
  }
}

/* --- VÝBER SLUŽIEB S IKONAMI --- */
.text-red {
  color: #fe002e;
}

.service-icon-grid {
  display: grid;
  /* Na PC 5 stĺpcov vedľa seba (auto-fit prispôsobí veľkosť) */
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  gap: 12px;
}

.service-radio input {
  display: none; /* Skryjeme štandardné rádio gombíky */
}

.service-radio .sr-content {
  background: #0f0f0f; /* Tmavé vnútro ako v inputoch */
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 10px;
  padding: 15px 10px;
  text-align: center;
  cursor: pointer;
  transition: all 0.3s ease;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.service-radio .sr-content i {
  font-size: 20px;
  color: rgba(255, 255, 255, 0.4);
  margin-bottom: 8px;
  transition: 0.3s;
}

.service-radio .sr-content span {
  font-size: 12px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.7);
  line-height: 1.2;
}

/* Hover efekt */
.service-radio:hover .sr-content {
  border-color: rgba(255, 255, 255, 0.3);
  background: #151515;
}

/* Zvýraznená "Komplexná služba" */
.service-radio.highlighted .sr-content {
  border: 1px solid rgba(254, 0, 46, 0.3);
  background: rgba(254, 0, 46, 0.02);
}
.service-radio.highlighted .sr-content i {
  color: #fe002e;
}

/* AKTÍVNY STAV (Po kliknutí) */
.service-radio input:checked + .sr-content {
  border-color: #fe002e;
  background: rgba(254, 0, 46, 0.05);
}

.service-radio input:checked + .sr-content i {
  color: #fe002e;
  transform: scale(1.1);
}

.service-radio input:checked + .sr-content span {
  color: #fff;
}

/* --- RESPONZIVITA (MOBIL) --- */
@media (max-width: 768px) {
  .service-icon-grid {
      /* Na mobile to rozdelíme pekne na 2 stĺpce vedľa seba */
      grid-template-columns: repeat(2, 1fr);
  }
  
  /* Komplexnú službu na mobile roztiahneme na celú šírku, aby bola neprehliadnuteľná */
  .service-radio.highlighted {
      grid-column: span 2;
  }

  .service-radio .sr-content {
      padding: 12px;
  }

  .service-radio .sr-content i {
      font-size: 18px; /* Jemne menšie ikony na mobile */
  }
}

/* --- Typografia a farby --- */
.estavio-gradient-text {
  background: linear-gradient(90deg, #FE002E 0%, #B30021 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* --- Štatistiky --- */
.tech-stat-card {
  position: relative;
  padding-bottom: 30px;
}

.stat-number {
  font-size: 70px;
  font-weight: 900;
  margin-bottom: 10px;
  color: #fff;
}

.stat-number.glow-red {
  text-shadow: 0 0 20px rgba(254, 0, 46, 0.3);
  color: #fe002e;
}

.stat-desc {
  font-size: 14px;
  line-height: 1.6;
  opacity: 0.6;
  max-width: 250px;
}

.stat-line {
  width: 100%;
  height: 1px;
  background: rgba(255, 255, 255, 0.1);
  margin-top: 20px;
  position: relative;
}

.stat-line.active::after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 40px;
  height: 2px;
  background: #fe002e;
  box-shadow: 0 0 10px #fe002e;
}

/* --- Zoznam s ikonami --- */
.tech-list li {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 18px;
  font-weight: 500;
}

.check-icon {
  width: 24px;
  height: 24px;
  background: rgba(254, 0, 46, 0.1);
  border: 1px solid rgba(254, 0, 46, 0.3);
  color: #fe002e;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
}

/* --- Glass Box (Pravá strana) --- */
.process-glass-box {
  background: rgba(255, 255, 255, 0.03);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  padding: 40px;
  border-radius: 20px;
  box-shadow: 0 30px 60px rgba(0,0,0,0.3);
}

.box-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.badge-red {
  background: #fe002e;
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  padding: 5px 12px;
  border-radius: 50px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.step-item {
  padding: 20px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.step-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
}

.step-title {
  font-weight: 700;
  color: #fff;
  font-size: 15px;
}

.step-label {
  font-size: 11px;
  color: rgba(255,255,255,0.4);
  background: rgba(255,255,255,0.05);
  padding: 4px 10px;
  border-radius: 5px;
}

.step-item p {
  font-size: 13px;
  opacity: 0.6;
  margin: 0;
}

/* --- ZÁKLAD A NADPISY --- */
.estavio-results-section {
  background-color: transparent; /* Zdedí tmavé pozadie z body/wrapu */
}

.section-dot-title {
  color: #fff;
  font-size: 13px;
  display: flex;
  align-items: center;
  gap: 15px;
}

.section-dot-title .dot {
  width: 4px;
  height: 4px;
  background-color: #fff;
  border-radius: 50%;
  display: inline-block;
}

.results-main-title {
  font-size: 40px;
  font-weight: 800; /* Extra tučné */
  line-height: 1.05;
  color: #fff;
  letter-spacing: -2px; /* Stiahnutie medzier pre masívny efekt */
}

/* Gradient text, elegantne vyriešený v CSS namiesto inline štýlu */
.gradient-text-red {
  background: linear-gradient(90deg, #FE002E 0%, #B30021 70%, #660013 90%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

.results-description {
  color: rgba(255, 255, 255, 0.6);
  font-size: 15px;
  line-height: 1.6;
  max-width: 95%;
}

/* --- TABUĽKOVÝ ZOZNAM VÝSLEDKOV --- */
.results-list {
  border-top: 1px solid rgba(255, 255, 255, 0.1); /* Vrchná čiara */
}

.result-row {
  border-bottom: 1px solid rgba(255, 255, 255, 0.1); /* Oddeľovač pod každým riadkom */
  padding: 25px 0;
  transition: background 0.3s ease;
}

/* Jemný hover efekt, ak by cez to užívateľ prešiel myšou */
.result-row:hover {
  background: rgba(255, 255, 255, 0.02);
}

.result-metric {
  font-size: 15px;
  font-weight: 700;
  color: #fff; /* Čísla sú biele, nie červené */
}

.result-text {
  font-size: 14px;
  color: rgba(255, 255, 255, 0.8);
  line-height: 1.5;
  display: block;
}

.result-label {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.4); /* Najmenej výrazný prvok */
}

.results-disclaimer {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.3);
  line-height: 1.6;
}

/* --- RESPONZIVITA PRE MOBIL --- */
@media (max-width: 991px) {
  .results-main-title {
      font-size: 45px;
      letter-spacing: -1px;
  }
}

@media (max-width: 768px) {
  .results-main-title {
      font-size: 38px;
  }
  
  .result-row {
      padding: 20px 0;
  }
  
  /* Na mobile zväčšíme medzery, aby sa to lepšie čítalo a skryjeme tretí stĺpec (typicky, bežne atď.), 
     pretože na malom displeji zaberá zbytočne miesto. */
  .result-text {
      font-size: 13px;
  }
}

/* --- Typografia a farby (Z image_64019e.png) --- */
.estavio-pro-testim-section {
  position: relative;
  overflow: hidden;
}

.sub-bg { background-color: #0c0c0c; } /* Jemne tmavšie ako body */
.border-radius-50px { border-radius: 50px; }

.section-dot-title-center {
  color: #fff;
  font-size: 13px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
}

.section-dot-title-center .dot {
  width: 4px;
  height: 4px;
  background-color: #fff;
  border-radius: 50%;
}

.huge-number {
  font-size: 80px;
  font-weight: 800;
  line-height: 1;
  color: #fff;
  letter-spacing: -3px;
}

.stars-pro {
  color: #fe002e; /* Akcentová červená */
  font-size: 14px;
  letter-spacing: 3px;
}

.gradient-text-red {
  background: linear-gradient(90deg, #FE002E 0%, #B30021 70%, #660013 90%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

/* --- KARTA RECENZIE (Minimalizmus a layering) --- */
.pro-testim-card {
  background: rgba(255, 255, 255, 0.03); /* Čisté, priehľadné pozadie */
  border: 1px solid rgba(255, 255, 255, 0.05);
  padding: 60px 50px;
  border-radius: 30px;
  height: 100%;
  position: relative;
  transition: 0.4s;
  box-shadow: 0 20px 50px rgba(0,0,0,0.1);
}

.review-card-pro:hover {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(254, 0, 46, 0.2);
  transform: translateY(-5px);
}

.quote-icon {
  font-size: 30px;
  color: #fe002e; /* Červená ikona */
  margin-bottom: 30px;
  opacity: 0.6;
}

.testim-body {
  font-size: 19px;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.9);
  font-weight: 400;
  margin-bottom: 40px;
}

/* --- FOOTER KARTY --- */
.testim-author {
  display: flex;
  align-items: center;
  gap: 20px;
}

.client-avatar {
  width: 50px;
  height: 50px;
  background: #0f0f0f;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 14px;
  color: #fe002e; /* Červený text v iniciálach */
}

.author-meta h6 {
  font-size: 16px;
  color: #fff;
  margin-bottom: 3px;
  font-weight: 600;
}

.author-meta span {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.4);
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* Deliaca čiara */
.full-divider-red {
  width: 100%;
  height: 1px;
  background: rgba(255, 255, 255, 0.1);
  position: relative;
}

.full-divider-red::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 80px;
  height: 1px;
  background: #fe002e;
  box-shadow: 0 0 10px #fe002e;
}

/* --- NAVIGÁCIA (FUNKČNÉ ŠÍPKY NA PC AJ MOBIL) --- */
.custom-nav-pro {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: calc(100% + 120px); /* Pre PC: šípky plávajú po stranách */
  left: -60px;
  display: flex;
  justify-content: space-between;
  pointer-events: none; /* Klikanie prepúšťame na šípky */
}

.custom-nav-pro .custom-nav-prev,
.custom-nav-pro .custom-nav-next {
  width: 55px;
  height: 55px;
  background: #111;
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 50%;
  position: relative !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  pointer-events: auto; /* Tieto prvky sú klikateľné */
  transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
}

/* Ikony v šípkach */
.custom-nav-prev::after { content: '\f060'; }
.custom-nav-next::after { content: '\f061'; }

.custom-nav-prev::after,
.custom-nav-next::after {
  font-family: 'Font Awesome 6 Free';
  font-weight: 900;
  font-size: 16px;
  color: rgba(255,255,255,0.4);
}

.custom-nav-prev:hover,
.custom-nav-next:hover {
  border-color: #fe002e;
  background: rgba(254, 0, 46, 0.1);
  box-shadow: 0 0 20px rgba(254, 0, 46, 0.3);
}

.custom-nav-prev:hover::after,
.custom-nav-next:hover::after {
  color: #fff;
  transform: scale(1.1);
}

/* --- RESPONZIVITA (MOBIL) --- */
@media (max-width: 991px) {
  .testim-swiper-pro-holder {
      width: 100%;
      max-width: 600px;
      margin: 0 auto;
  }

  .pro-testim-card {
      padding: 40px 30px;
  }

  .testim-body {
      font-size: 17px;
  }

  /* Na mobile presunieme šípky POD kartu */
  .custom-nav-pro {
      position: relative;
      top: 0;
      transform: none;
      width: 100%;
      left: 0;
      margin-top: 40px;
      justify-content: center;
      gap: 20px;
  }

  .custom-nav-pro .custom-nav-prev,
  .custom-nav-pro .custom-nav-next {
      width: 50px;
      height: 50px;
      background: #0f0f0f;
  }
}

@media (max-width: 768px) {
  .huge-number {
      font-size: 60px;
  }

  .testim-body {
      font-size: 16px;
  }
}

/* --- CHECKBOXY --- */
.custom-check-container {
  display: flex;
  align-items: flex-start;
  position: relative;
  padding-left: 35px;
  cursor: pointer;
  font-size: 14px;
  color: rgba(255, 255, 255, 0.6);
  user-select: none;
  line-height: 1.4;
}

.custom-check-container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}

/* Štvorček checkboxu */
.custom-checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 20px;
  width: 20px;
  background-color: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 6px;
  transition: all 0.3s ease;
}

.custom-check-container:hover input ~ .custom-checkmark {
  border-color: rgba(254, 0, 46, 0.5);
}

/* Stav pri zakliknutí */
.custom-check-container input:checked ~ .custom-checkmark {
  background-color: #fe002e;
  border-color: #fe002e;
}

.custom-checkmark:after {
  content: "\f00c";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  display: none;
  font-size: 11px;
  color: white;
  left: 4px;
  top: 1px;
}

.custom-check-container input:checked ~ .custom-checkmark:after {
  display: block;
}

.link-red {
  color: #fe002e;
  text-decoration: underline;
  transition: 0.3s;
}

.link-red:hover {
  color: #fff;
}

/* --- TLAČIDLO (High-end štýl) --- */
.estavio-submit-btn {
  display: inline-flex;
  align-items: center;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.2);
  padding: 10px 10px 10px 30px;
  border-radius: 50px;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.5px;
  transition: all 0.4s ease;
  cursor: pointer;
  outline: none;
}

.btn-icon-circle {
  width: 45px;
  height: 45px;
  background: #fe002e; /* Výrazná červená */
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 20px;
  transition: all 0.4s ease;
}

.btn-icon-circle i {
  font-size: 16px;
  transform: rotate(0deg);
  transition: 0.4s;
}

/* Hover efekty */
.estavio-submit-btn:hover {
  border-color: #fe002e;
  background: rgba(254, 0, 46, 0.05);
}

.estavio-submit-btn:hover .btn-icon-circle {
  transform: scale(1.1);
  box-shadow: 0 0 20px rgba(254, 0, 46, 0.4);
}

.estavio-submit-btn:hover i {
  transform: rotate(15deg) translate(2px, -2px);
}

.form-note {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.3);
}

/* --- MOBILNÁ OPTIMALIZÁCIA --- */
@media (max-width: 768px) {
  .estavio-submit-btn {
      width: 100%;
      justify-content: space-between;
  }
}

/* --- Celkové nastavenie --- */
.estavio-footer-main {
  color: #fff;
}

.footer-title {
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 700;
  color: #fe002e; /* Brandová červená */
}

/* --- Sociálne siete --- */
.social-icon-circle-flex {
  display: flex;
  gap: 15px;
}

.social-link {
  width: 45px;
  height: 45px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.3s ease;
  color: #fff;
}

.social-link:hover {
  background: #fe002e;
  border-color: #fe002e;
  transform: translateY(-3px);
}

/* --- Odkazy a texty --- */
.footer-contact-link {
  color: #fff;
  text-decoration: none;
  transition: 0.3s;
}

.footer-contact-link:hover {
  color: #fe002e;
}

.legal-link {
  display: block;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.5);
  text-decoration: underline !important;
  margin-top: 8px;
  transition: 0.3s;
}

.legal-link:hover {
  color: #fff;
}

.opacity-7 { opacity: 0.7; }

/* --- Spodná lišta --- */
.border-top-1 {
  border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.copyright-text {
  color: rgba(255, 255, 255, 0.4);
  font-size: 12px;
  letter-spacing: 0.5px;
}

.wetrixo-link {
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  font-weight: 600;
}

.footer-bottom-nav a {
  color: rgba(255, 255, 255, 0.5);
  text-decoration: none;
  margin-left: 25px;
  transition: 0.3s;
}

.footer-bottom-nav a:hover {
  color: #fe002e;
}

/* --- Responzivita pre mobil --- */
@media (max-width: 768px) {
  .footer-bottom-nav {
      display: flex;
      flex-wrap: wrap;
      gap: 15px;
  }
  .footer-bottom-nav a {
      margin-left: 0;
      margin-right: 15px;
  }
}

/* --- Vylepšenia sekcie Práce (Estavio) --- */

/* Hover efekt pre statické obrázky a videá */
.hover-zoom-img {
  transition: transform 0.5s ease;
}
.fit-img:hover .hover-zoom-img, 
.fit-img:hover video {
  transform: scale(1.05);
}

/* Štýlovanie spodnej časti (Texty a šípka) */
.work-info-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding-top: 20px;
  padding-bottom: 20px;
}
.work-info-texts h6 {
  margin-bottom: 5px;
  font-size: 1.1rem;
  transition: color 0.3s ease;
}
.work-info-texts a {
  text-decoration: none;
  color: inherit;
}
.work-info-texts a:hover h6 {
  color: #e50914; /* Zmeň na farbu tvojej značky (napr. červená/oranžová) */
}
.work-info-category {
  font-size: 0.85rem;
  letter-spacing: 1px;
}

/* Elegantná ikona prekliku namiesto tlačidla */
.work-link-icon {
  width: 45px;
  height: 45px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  text-decoration: none;
  transition: all 0.3s ease;
  flex-shrink: 0;
  margin-left: 15px;
}
.work-link-icon:hover {
  background-color: #fff;
  color: #000;
  transform: translateX(5px);
}

/* Optimalizácia pre mobily */
@media (max-width: 768px) {
  /* Zmenšenie výšky obrázkov a videí na mobiloch pre lepšiu prehľadnosť */
  .h-450px, .h-320px, .split-view-container {
      height: 280px !important; 
  }
  .mt-60px {
      margin-top: 30px !important;
  }
  .work-info-texts h6 {
      font-size: 1rem;
  }
  .work-link-icon {
      width: 35px;
      height: 35px;
  }
}

/* --- ELITE DESIGN PORTFÓLIA (Glassmorphism) --- */

.elite-card {
  position: relative;
  border-radius: 20px; /* Ešte modernejšie zaoblenie */
  overflow: hidden;
  height: 450px;
  box-shadow: 0 15px 35px rgba(0,0,0,0.3);
  transition: all 0.5s cubic-bezier(0.25, 1, 0.5, 1);
  margin-top: 40px;
  background: #111;
}

/* Jemný glow (žiara) efekt pri prejdení myšou */
.elite-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 20px 40px rgba(255, 255, 255, 0.08); 
}

/* Obrázky a videá v pozadí */
.elite-card .media-bg {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.8s ease;
}

.elite-card:hover .media-bg {
  transform: scale(1.05); /* Pomalé luxusné priblíženie */
}

/* Fix pre Split View (Pred/Po) aby fungoval na 100% */
.elite-card .split-view-container {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0; left: 0;
}

/* Sklenený panel s textom (Glassmorphism) */
.glass-info {
  position: absolute;
  bottom: 20px;
  left: 20px;
  right: 20px;
  background: rgba(20, 20, 20, 0.5); /* Polopriehľadná čierna */
  backdrop-filter: blur(15px); /* Rozmazanie (efekt skla) */
  -webkit-backdrop-filter: blur(15px); /* Pre Safari */
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 15px;
  padding: 20px;
  z-index: 10;
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: all 0.4s ease;
  
  /* TOTO JE ZÁCHRANA PRE POSUVNÍK: Prepustí kliknutia cez panel */
  pointer-events: none; 
}

/* Reakcia skla na prejdenie myšou */
.elite-card:hover .glass-info {
  background: rgba(20, 20, 20, 0.75);
  border-color: rgba(255, 255, 255, 0.25);
}

/* Všetky linky v sklenenom paneli musia byť klikateľné */
.glass-info a {
  pointer-events: auto; 
  text-decoration: none;
}

/* Texty vnútri skla */
.glass-texts {
  display: flex;
  flex-direction: column;
}

.glass-cat {
  font-size: 0.75rem;
  color: #b3b3b3;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 5px;
}

.glass-title {
  color: #ffffff;
  font-size: 1.25rem;
  font-weight: 600;
  margin: 0;
  transition: color 0.3s ease;
}

.glass-title:hover {
  color: #FE002E; 
}

/* Moderná animovaná šípka */
.glass-btn {
  width: 45px;
  height: 45px;
  border-radius: 50%;
  background: #fff;
  color: #000;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  transition: all 0.4s ease;
  opacity: 0;
  transform: translateX(-15px) rotate(-45deg); /* Efekt príchodu zľava */
}

.elite-card:hover .glass-btn {
  opacity: 1;
  transform: translateX(0) rotate(0);
}

.glass-btn:hover {
  background: #FE002E; 
  color: #fff; /* Biela šípka, aby dobre kontrastovala s červenou */
  border: 1px solid #FE002E; /* Aby aj okraj tlačidla bol červený */
}

/* Mobile */
@media(max-width: 768px) {
  .elite-card { height: 350px; margin-top: 25px; }
  .glass-info {
      bottom: 10px; left: 10px; right: 10px;
      padding: 15px;
  }
  .glass-title { font-size: 1.05rem; }
  .glass-btn {
      opacity: 1;
      transform: translateX(0) rotate(0);
      width: 38px; height: 38px;
  }
}

/* --- Odznak pre garanciu dodania (namiesto šípky) --- */
.guarantee-badge {
  display: flex;
  align-items: center;
  gap: 8px;
  background: rgba(254, 0, 46, 0.15); /* Veľmi jemné červené pozadie */
  border: 1px solid #FE002E; /* Tvoja prémiová červená */
  color: #fff;
  padding: 8px 16px;
  border-radius: 30px;
  font-size: 0.85rem;
  font-weight: 600;
  letter-spacing: 0.5px;
  white-space: nowrap;
  transition: all 0.4s ease;
  pointer-events: auto; /* Aby sa cez to dalo klikať */
}

/* Ikonka v odznaku */
.guarantee-badge i {
  color: #FE002E; 
  font-size: 1rem;
  transition: color 0.4s ease;
}

/* Hover efekt pre odznak - po prejdení myšou na kartu sa odznak zaleje červenou */
.elite-card:hover .guarantee-badge {
  background: #FE002E;
  color: #fff;
  box-shadow: 0 5px 15px rgba(254, 0, 46, 0.4); /* Jemná červená žiara */
}

.elite-card:hover .guarantee-badge i {
  color: #fff;
}

/* Malý doplňujúci text pod nadpisom */
.glass-subtext {
  display: block;
  color: #cccccc;
  font-size: 0.8rem;
  margin-top: 5px;
  font-weight: 300;
}

/* Optimalizácia rozloženia pre mobily */
@media (max-width: 768px) {
  .glass-info {
      flex-direction: column;
      align-items: flex-start; /* Na mobile zarovnáme všetko doľava */
      gap: 12px;
  }
  .guarantee-badge {
      padding: 6px 14px;
      font-size: 0.8rem;
  }
}

/* --- Optimalizácia pre mobily (Text pod obrázkom, nie na ňom) --- */
@media (max-width: 768px) {
  /* Umožníme karte prispôsobiť svoju výšku obsahu */
  .elite-card { 
      height: auto; 
      margin-top: 30px; 
      background: transparent; /* Zrušíme čierne pozadie karty */
      box-shadow: none; /* Odstránime tieň celej karty na mobile */
  }

  /* Obal pre samotný obrázok/slider, aby mal pevnú výšku */
  .split-view-container, 
  .media-bg {
      position: relative !important; /* Dôležité: presunieme z absolute na relative */
      height: 300px !important; /* Výška samotného obrázka na mobile */
      border-radius: 15px; /* Necháme pekné zaoblenie obrázka */
      box-shadow: 0 10px 20px rgba(0,0,0,0.2); /* Tieň len pre obrázok */
  }

  /* Panel s textom presunieme pod obrázok */
  .glass-info {
      position: relative; /* Zrušíme prekrývanie (absolute) */
      bottom: 0; left: 0; right: 0;
      background: transparent; /* Zrušíme sklenené pozadie na mobile */
      backdrop-filter: none; /* Zrušíme rozmazanie */
      -webkit-backdrop-filter: none;
      border: none; /* Zrušíme biely okraj */
      padding: 20px 5px 5px 5px; /* Priestor pod obrázkom */
      flex-direction: column;
      align-items: flex-start;
      gap: 15px;
  }

  /* Tlačidlo posuvníka (split-handle) sa na mobile často stráca, trochu ho zviditeľníme */
  .split-handle .handle-circle {
      width: 35px;
      height: 35px;
      font-size: 14px;
  }

  /* Zarovnanie odznaku vľavo */
  .guarantee-badge {
      padding: 6px 14px;
      font-size: 0.8rem;
      align-self: flex-start;
  }
  
  /* Zväčšíme trochu texty pre lepšiu čitateľnosť na mobile */
  .glass-title { font-size: 1.15rem; }
  .glass-subtext { font-size: 0.85rem; line-height: 1.4; color: #a0a0a0; }
}

/* --- PRÉMIOVÁ SEKCIA SLUŽIEB (Editorial Overlap) --- */

.service-editorial-wrap {
    position: relative;
    margin-bottom: 120px;
    display: flex;
    align-items: center;
}

/* Veľký obrázok služby */
.service-editorial-img {
    width: 65%;
    height: 500px;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(0,0,0,0.4);
    position: relative;
    z-index: 1;
}

.service-editorial-img img {
    width: 100%; 
    height: 100%; 
    object-fit: cover;
    transition: transform 0.8s ease;
}

.service-editorial-wrap:hover .service-editorial-img img {
    transform: scale(1.05); /* Pomalé priblíženie obrázka */
}

/* Sklenený panel s textom, ktorý prekrýva obrázok */
.service-editorial-content {
    width: 50%;
    background: rgba(15, 15, 15, 0.7);
    backdrop-filter: blur(25px);
    -webkit-backdrop-filter: blur(25px);
    border: 1px solid rgba(255, 255, 255, 0.05);
    border-top: 2px solid #FE002E; /* Tvoja červená línia navrchu */
    border-radius: 24px;
    padding: 50px;
    position: absolute;
    right: 0;
    box-shadow: 0 30px 60px rgba(0,0,0,0.6);
    z-index: 2;
    transition: transform 0.4s ease;
}

.service-editorial-wrap:hover .service-editorial-content {
    transform: translateY(-5px); /* Jemné nadvihnutie textu */
}

/* Pre párne riadky prehodíme strany (Cik-cak efekt) */
.service-editorial-wrap.reverse {
    justify-content: flex-end;
}
.service-editorial-wrap.reverse .service-editorial-content {
    left: 0;
    right: auto;
}

/* Obrovské vodoznakové číslo v pozadí textu */
.service-watermark {
    position: absolute;
    top: -15px;
    right: 20px;
    font-size: 8rem;
    font-weight: 900;
    color: rgba(255, 255, 255, 0.03);
    line-height: 1;
    pointer-events: none;
    z-index: -1;
}

/* Nadpis a text v paneli */
.service-editorial-content h3 {
    font-size: 2.2rem;
    color: #fff;
    margin-bottom: 15px;
}

.service-editorial-content p {
    color: #b3b3b3;
    font-size: 1.05rem;
    line-height: 1.6;
    margin-bottom: 30px;
}

/* Moderné pilulky (Tagy) namiesto odrážkového zoznamu */
.service-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.service-tag {
    background: rgba(254, 0, 46, 0.1); /* Veľmi jemné červené pozadie */
    border: 1px solid rgba(254, 0, 46, 0.3);
    color: #fff;
    padding: 8px 18px;
    border-radius: 50px;
    font-size: 0.85rem;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.3s ease;
}

.service-tag i {
    color: #FE002E; /* Červené ikonky */
    transition: color 0.3s ease;
}

/* Hover na pilulku */
.service-tag:hover {
    background: #FE002E;
    border-color: #FE002E;
}
.service-tag:hover i {
    color: #fff; /* Ikonka zbelie, keď na tag prejdeš myšou */
}

/* Optimalizácia pre mobily */
@media (max-width: 991px) {
    .service-editorial-wrap, .service-editorial-wrap.reverse {
        flex-direction: column;
        margin-bottom: 80px;
    }
    .service-editorial-img {
        width: 100%;
        height: 350px;
    }
    .service-editorial-content {
        position: relative;
        width: 90%;
        margin-top: -60px; /* Panel sa vysunie hore a prekryje obrázok na mobile */
        left: auto !important; right: auto !important;
        padding: 30px;
    }
    .service-watermark { font-size: 5rem; top: 0; }
    .service-editorial-content h3 { font-size: 1.8rem; }
}

/* --- CINEMATIC HEADER (Estavio Hero Sekcia) --- */

.estavio-hero {
    position: relative;
    min-height: 100vh; /* Roztiahne sa na celú výšku obrazovky */
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
    padding-top: 100px; /* Priestor pre menu, ak tam nejaké máš */
    padding-bottom: 80px;
    background: #050505; /* Úplne temné pozadie pre kontrast */
}

/* Animovaný červený Glow v pozadí (Ten z tvojho obrázka) */
.hero-glow-bg {
    position: absolute;
    top: -10%; left: -10%;
    width: 60vw; height: 60vw;
    background: radial-gradient(circle, rgba(254, 0, 46, 0.15) 0%, rgba(5, 5, 5, 0) 70%);
    z-index: 0;
    pointer-events: none;
    animation: pulseGlow 8s infinite alternate ease-in-out;
}

@keyframes pulseGlow {
    0% { transform: scale(1) translate(0, 0); opacity: 0.8; }
    100% { transform: scale(1.1) translate(20px, 20px); opacity: 1; }
}

.hero-content {
    position: relative;
    z-index: 2;
    text-align: center;
    margin-bottom: 60px;
}

/* Hlavný dramatický nadpis */
.hero-title {
    font-size: 6rem;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -2px;
    text-transform: uppercase;
    color: #ffffff;
    margin-bottom: 20px;
}

/* Zvýraznenie časti nadpisu (Gradient) */
.hero-title-highlight {
    background: linear-gradient(90deg, #fff 0%, #a0a0a0 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.hero-subtitle-text {
    font-size: 1.25rem;
    color: #cccccc;
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.6;
    font-weight: 300;
}

/* Informačná mriežka na spodku (Dock štýl) */
.hero-dock {
    position: relative;
    z-index: 2;
    background: rgba(20, 20, 20, 0.4);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 255, 255, 0.05);
    border-radius: 24px;
    padding: 40px;
    margin-top: auto; /* Potlačí dock úplne nadol, ak je priestor */
}

.dock-col {
    padding: 0 20px;
}

.dock-col:not(:last-child) {
    border-right: 1px solid rgba(255, 255, 255, 0.1);
}

/* Zoznam služieb v headri */
.hero-services-list {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.hero-services-list li {
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #a0a0a0;
}

.hero-services-list li::before {
    content: "•";
    color: #FE002E;
    margin-right: 8px;
}

/* Štatistiky / Roky */
.hero-stats h6 {
    font-size: 1rem;
    color: #FE002E;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 5px;
}
.hero-stats p {
    font-size: 1.5rem;
    color: #fff;
    font-weight: 600;
    margin: 0;
}

/* Prémiové CTA Tlačidlo */
.hero-cta-btn {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    background: transparent;
    border: 1px solid #FE002E;
    color: #fff;
    padding: 12px 24px;
    border-radius: 50px;
    font-size: 0.9rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-decoration: none;
    transition: all 0.4s ease;
    overflow: hidden;
    position: relative;
    width: 100%;
}

.hero-cta-btn .icon {
    background: #FE002E;
    color: #fff;
    width: 35px; height: 35px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: transform 0.4s ease;
}

.hero-cta-btn:hover {
    background: rgba(254, 0, 46, 0.1);
    box-shadow: 0 10px 20px rgba(254, 0, 46, 0.2);
    color: #fff;
}
.hero-cta-btn:hover .icon {
    transform: translateX(5px); /* Šípka sa posunie doprava */
}

/* Optimalizácia pre menšie obrazovky a mobily */
@media (max-width: 1200px) { .hero-title { font-size: 5rem; } }
@media (max-width: 991px) {
    .hero-title { font-size: 4rem; }
    .dock-col { border-right: none !important; border-bottom: 1px solid rgba(255, 255, 255, 0.1); padding: 20px 0; }
    .dock-col:last-child { border-bottom: none; }
    .hero-dock { padding: 20px; }
}
@media (max-width: 768px) {
    .estavio-hero { min-height: auto; padding-top: 120px; padding-bottom: 40px; }
    .hero-title { font-size: 2.8rem; letter-spacing: -1px; }
    .hero-subtitle-text { font-size: 1rem; }
}

/* --- MINIMALIST GUARANTEE SECTION --- */

.guarantee-sec-minimal {
    padding-top: 0;
    padding-bottom: 40px; /* Menší priestor dole, aby to pekne nadviazalo na portfólio */
}

/* Elegantné oddelenie časových údajov */
.time-stat-block {
    padding: 30px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.time-stat-block h2 {
    font-weight: 900;
    letter-spacing: -2px;
    margin-bottom: 5px;
    line-height: 1;
}

/* Vzdušná mriežka pre tvoje 4 body */
.feature-grid-2x2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
}

.minimal-feature {
    position: relative;
}

.minimal-feature .icon {
    color: #FE002E; /* Tvoja červená farba */
    font-size: 24px;
    margin-bottom: 15px;
    text-shadow: 0 0 15px rgba(254, 0, 46, 0.4); /* Jemná červená žiara */
}

.minimal-feature h4 {
    color: #fff;
    font-size: 1.15rem;
    font-weight: 700;
    margin-bottom: 8px;
    letter-spacing: 0.5px;
}

.minimal-feature p {
    color: rgba(255, 255, 255, 0.6);
    font-size: 0.9rem;
    line-height: 1.5;
    margin: 0;
}

/* Optimalizácia pre mobily */
@media (max-width: 991px) {
    .feature-grid-2x2 { gap: 30px; }
}

@media (max-width: 768px) {
    .feature-grid-2x2 { grid-template-columns: 1fr; gap: 25px; }
    
    .time-stat-block { 
        border-bottom: none; 
        padding: 20px 0;
        text-align: center;
    }
    .time-stat-block:last-child {
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    }
    /* Zrušenie bočných čiar na mobile pre Dnes / 24h / 72h */
    .time-stat-center { border-left: none !important; border-right: none !important; }
}

/* --- ELITE BADGE SEPARATOR (Ultra-Minimalist) --- */

.elite-section-transition {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 120px 0; /* Veľký priestor (negatívny priestor) je znakom luxusu */
  opacity: 0.9;
}

/* Extrémne tenká a jemná línia (žiadne divoké farby) */
.transition-line {
  flex-grow: 1;
  height: 1px;
  background: rgba(255, 255, 255, 0.05); /* Len 5% viditeľnosť */
}

/* Luxusná "pilulka" v strede */
.transition-badge {
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 10px 30px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 100px;
  background: #030303; /* Takmer čistá čierna farba pozadia */
  margin: 0 30px;
  transition: all 0.4s ease;
}

.transition-badge:hover {
  border-color: rgba(254, 0, 46, 0.3); /* Pri prejdení myšou sa okraj jemne zafarbí tvojou červenou */
}

/* Typografia vnútri pilulky */
.transition-badge span {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 4px;
  color: #888; /* Jemná šedá, aby to neťahalo oči */
  font-weight: 500;
}

/* Jemná svietiaca bodka vo farbe tvojej značky */
.pulsing-dot {
  width: 6px;
  height: 6px;
  background-color: #FE002E;
  border-radius: 50%;
  box-shadow: 0 0 8px #FE002E;
  animation: eliteDotPulse 2s infinite alternate ease-in-out;
}

@keyframes eliteDotPulse {
  0% { box-shadow: 0 0 2px rgba(254, 0, 46, 0.3); opacity: 0.6; }
  100% { box-shadow: 0 0 12px rgba(254, 0, 46, 0.9); opacity: 1; }
}

/* Mobilná optimalizácia */
@media (max-width: 768px) {
  .elite-section-transition { padding: 80px 0; }
  .transition-badge { padding: 10px 20px; margin: 0 15px; gap: 10px; }
  .transition-badge span { font-size: 0.65rem; letter-spacing: 2px; }
}

/* --- PREMIUM SALES TIMELINE --- */

.sales-timeline-wrapper {
  position: relative;
  z-index: 10;
  margin-top: -30px; /* Jemné posunutie hore */
}

/* Základný vzhľad každej karty */
.timeline-card {
  background: #0a0a0a; /* Veľmi tmavá farba pre luxusný kontrast */
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 16px;
  padding: 40px 30px;
  height: 100%;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  position: relative;
  overflow: hidden;
}

/* Hover efekt - karta vyskočí a zasvieti */
.timeline-card:hover {
  transform: translateY(-10px);
  border-color: rgba(254, 0, 46, 0.4);
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.6);
}

/* Špeciálne zvýraznenie strednej karty (tvoj hlavný predajný ťahák) */
.timeline-card.premium-step {
  background: linear-gradient(145deg, rgba(254, 0, 46, 0.08) 0%, rgba(10, 10, 10, 1) 100%);
  border-color: rgba(254, 0, 46, 0.3);
}

/* Malý štítok s číslom fázy */
.timeline-step-badge {
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: #FE002E; /* Tvoja červená */
  font-weight: 700;
  margin-bottom: 25px;
  display: inline-block;
  padding: 5px 12px;
  background: rgba(254, 0, 46, 0.1);
  border-radius: 50px;
}

/* Obrovský časový údaj */
.timeline-time {
  font-size: 3.5rem;
  font-weight: 900;
  line-height: 1;
  color: #ffffff;
  margin-bottom: 15px;
  letter-spacing: -2px;
}

/* Zvýraznený čas na červeno */
.timeline-time.highlight {
  color: #FE002E;
  text-shadow: 0 0 25px rgba(254, 0, 46, 0.4);
}

/* Nadpis a popis výhody */
.timeline-title {
  font-size: 1.15rem;
  color: #ffffff;
  font-weight: 600;
  margin-bottom: 10px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.timeline-desc {
  font-size: 0.95rem;
  color: #888888;
  line-height: 1.6;
  margin: 0;
}

/* Optimalizácia pre mobily */
@media (max-width: 991px) {
  .timeline-card { padding: 30px 20px; }
  .timeline-time { font-size: 3rem; }
}

@media (max-width: 768px) {
  .sales-timeline-wrapper { margin-top: 20px; }
  .timeline-card { margin-bottom: 15px; } /* Medzera medzi kartami na mobile */
}
/* --- ELITE PORTFOLIO CARDS (Fotky sú CELÉ viditeľné) --- */

.elite-card {
  background: #111111; /* Tmavé elegantné pozadie celej karty */
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.05);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  margin-top: 30px;
  transition: transform 0.4s ease, box-shadow 0.4s ease;
  height: 100%; /* Udrží karty v riadku rovnako vysoké */
}

.elite-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 15px 35px rgba(254, 0, 46, 0.15); /* Jemný červený tieň */
}

/* 1. Obal pre média - ŽIADNA PEVNÁ VÝŠKA, žiadne orezanie */
.card-media-wrapper {
  width: 100%;
  position: relative;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

/* Pre bežné obrázky a videá - zobrazené na 100% */
.card-media-wrapper .media-bg {
  width: 100%;
  height: auto !important; /* Toto zaručí, že fotka ukáže celú svoju výšku */
  display: block;
}

/* Pre Pred/Po slidery - Použijeme pomer strán, aby sa fotky neorezali */
.card-media-wrapper .split-view-container {
  width: 100%;
  aspect-ratio: 3 / 2; /* Štandardný pomer fotiek. Ak máš iné, zmeň na 4 / 3 alebo 16 / 9 */
  position: relative;
}

.split-img-item {
  background-size: cover;
  background-position: center;
}

/* Zabezpečí preklik na celú kartu pre bežné fotky */
.media-link {
  position: absolute;
  inset: 0;
  z-index: 10;
}

/* 2. Textová časť pod fotkou */
.card-text-wrapper {
  padding: 25px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-grow: 1; /* Ak sú karty inak vysoké, natiahne textový box */
  gap: 15px;
}

.text-content {
  display: flex;
  flex-direction: column;
}

.card-cat {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #777;
  margin-bottom: 6px;
}

.card-title {
  font-size: 1.15rem;
  color: #ffffff;
  font-weight: 600;
  margin-bottom: 8px;
  text-decoration: none;
  line-height: 1.3;
  transition: color 0.3s ease;
}

.card-title:hover {
  color: #FE002E;
}

.card-desc {
  font-size: 0.85rem;
  color: #999;
  line-height: 1.5;
  margin: 0;
}

/* Odznak na pravej strane */
.card-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(254, 0, 46, 0.1);
  border: 1px solid rgba(254, 0, 46, 0.3);
  color: #fff;
  padding: 6px 14px;
  border-radius: 30px;
  font-size: 0.75rem;
  font-weight: 600;
  white-space: nowrap;
  flex-shrink: 0;
  transition: all 0.3s ease;
}

.card-badge i { color: #FE002E; }

.elite-card:hover .card-badge {
  background: #FE002E;
  border-color: #FE002E;
}
.elite-card:hover .card-badge i { color: #fff; }

/* Menšia šípka pre karty bez 24h garancie */
.card-btn {
  width: 40px; height: 40px;
  border-radius: 50%;
  background: #222;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  transition: all 0.3s ease;
}

.card-btn:hover { background: #FE002E; }

/* Responzivita pre mobil */
@media (max-width: 768px) {
  .card-text-wrapper {
      flex-direction: column; /* Na mobile sa odznak presunie pod text */
      padding: 20px;
  }
  .card-badge {
      margin-top: 10px;
  }
}

/* --- AESTHETIC FOUNDER SECTION --- */

.estavio-founder-pro {
  position: relative;
  padding: 120px 0;
  background: #030303; /* Hlboká čierna */
  overflow: hidden;
  border-top: 1px solid rgba(255, 255, 255, 0.03);
}

/* Jemná, rozptýlená aura za fotkou */
.founder-glow-bg {
  position: absolute;
  right: 0%;
  top: 50%;
  transform: translateY(-50%);
  width: 45vw;
  height: 45vw;
  background: radial-gradient(circle, rgba(254, 0, 46, 0.08) 0%, rgba(3,3,3,0) 60%);
  filter: blur(100px);
  pointer-events: none;
  z-index: 0;
}

.founder-content-wrap {
  position: relative;
  z-index: 2;
}

/* Drobné detaily - Nadpisy */
.founder-subtitle {
  color: #FE002E;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 4px;
  font-weight: 700;
  display: block;
  margin-bottom: 25px;
}

.founder-name-gradient {
  /* clamp zabezpečí plynulé zmenšovanie na mobile */
  font-size: clamp(3rem, 6vw, 5rem); 
  font-weight: 900;
  line-height: 1;
  margin-bottom: 5px;
  text-transform: uppercase;
  letter-spacing: -2px;
  color: #ffffff;
}

.founder-role {
  font-size: clamp(2rem, 4vw, 3.5rem);
  color: transparent;
  -webkit-text-stroke: 1px rgba(255, 255, 255, 0.4); /* Jemnejší obrys */
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: -1px;
  margin-bottom: 35px;
}

.founder-bio-text {
  font-size: 1.05rem;
  color: #a0a0a0; /* Jemnejšia šedá pre estetickejšie čítanie */
  line-height: 1.8;
  margin-bottom: 40px;
  font-weight: 300;
  max-width: 95%;
}

/* Estetický Glassmorphism pre Štatistiky */
.founder-glass-stats {
  background: rgba(255, 255, 255, 0.02); /* Veľmi jemné presvitanie */
  backdrop-filter: blur(25px);
  -webkit-backdrop-filter: blur(25px);
  border: 1px solid rgba(255, 255, 255, 0.05); /* Tenučký biely okraj */
  border-radius: 20px;
  padding: 35px 40px;
  display: flex;
  justify-content: space-between;
  margin-bottom: 40px;
  box-shadow: 0 20px 40px rgba(0,0,0,0.5);
}

.f-stat-box { text-align: center; }

.f-stat-box h3 {
  font-size: clamp(2rem, 3vw, 2.8rem);
  font-weight: 900;
  color: #fff;
  margin-bottom: 8px;
  line-height: 1;
}

.f-stat-box p {
  font-size: 0.7rem;
  color: #888;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin: 0;
}

/* Skupina akčných prvkov (Tlačidlo + Siete) */
.founder-action-group {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap; /* Na mobile sa zalomia */
}

/* Elegantné CV tlačidlo */
.aesthetic-cv-btn {
  display: inline-flex;
  align-items: center;
  gap: 15px;
  background: #ffffff;
  color: #000000;
  padding: 10px 10px 10px 25px;
  border-radius: 50px;
  font-size: 0.85rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  text-decoration: none;
  transition: all 0.4s ease;
}

.aesthetic-cv-btn .arrow-circle {
  width: 35px; height: 35px;
  background: #FE002E;
  color: #fff;
  border-radius: 50%;
  display: flex; justify-content: center; align-items: center;
  transition: transform 0.4s ease;
}

.aesthetic-cv-btn:hover {
  box-shadow: 0 10px 25px rgba(255,255,255,0.1);
}
.aesthetic-cv-btn:hover .arrow-circle {
  transform: translateX(3px);
}

/* Krúžky pre sociálne siete */
.aesthetic-social {
  width: 45px; height: 45px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: #fff;
  display: flex; justify-content: center; align-items: center;
  text-decoration: none;
  font-size: 1.1rem;
  transition: all 0.3s ease;
}

.aesthetic-social:hover {
  background: #FE002E;
  border-color: #FE002E;
  color: #fff;
  transform: translateY(-3px);
}

/* Pravá strana: Fotka s estetickým štítkom */
.founder-img-wrapper {
  position: relative;
  z-index: 2;
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 30px 60px rgba(0,0,0,0.4);
}

.founder-img-wrapper img {
  width: 100%;
  display: block;
  object-fit: cover;
  border-radius: 24px;
  filter: contrast(1.05) brightness(0.95); /* Jemný cinematic look */
}

/* Plávajúci štítok (Badge) */
.aesthetic-float-badge {
  position: absolute;
  bottom: 30px;
  left: -15px; /* Jemne prekrýva okraj fotky pre 3D efekt */
  background: rgba(10, 10, 10, 0.7);
  backdrop-filter: blur(15px);
  -webkit-backdrop-filter: blur(15px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-left: 2px solid #FE002E; /* Akcentová línia */
  padding: 12px 24px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  gap: 12px;
  box-shadow: 0 15px 30px rgba(0,0,0,0.5);
}

.aesthetic-float-badge i { color: #FE002E; font-size: 1.1rem; }
.aesthetic-float-badge span { color: #fff; font-size: 0.75rem; font-weight: 600; letter-spacing: 2px; text-transform: uppercase; }

/* Responzivita pre Mobil a Tablet */
@media (max-width: 991px) {
  .founder-img-wrapper { margin-top: 60px; }
  .founder-glass-stats { padding: 25px; }
}

@media (max-width: 768px) {
  .estavio-founder-pro { padding: 70px 0; }
  .founder-bio-text { max-width: 100%; }
  
  /* Na mobile preusporiadame štatistiky */
  .founder-glass-stats { flex-direction: column; gap: 30px; }
  
  /* Centrovanie na mobile */
  .founder-action-group { justify-content: flex-start; }
  .aesthetic-float-badge { left: 15px; bottom: 15px; } /* Štítok posunieme dovnútra */
}


.elite-profile-sec {
  padding: 100px 0;
}

/* Hlavná karta - DNA tvojho webu */
.elite-profile-card {
  background: #0d0d0d;
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 24px;
  display: flex;
  overflow: hidden;
  box-shadow: 0 20px 50px rgba(0,0,0,0.4);
  transition: all 0.5s ease;
}

.elite-profile-card:hover {
  box-shadow: 0 25px 60px rgba(254, 0, 46, 0.15);
  border-color: rgba(254, 0, 46, 0.2);
  transform: translateY(-5px);
}

/* ĽAVÁ STRANA: Fotografia */
.epc-image {
  width: 45%;
  position: relative;
}

.epc-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}

/* Plynulý prechod fotky do tmavej farby karty (vyzerá to extrémne profi) */
.epc-image::after {
  content: '';
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  background: linear-gradient(to right, transparent 50%, #0d0d0d 100%);
}

/* PRAVÁ STRANA: Informácie */
.epc-content {
  width: 55%;
  padding: 60px 60px 60px 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  z-index: 2;
}

.epc-label {
  color: #FE002E;
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 700;
  margin-bottom: 15px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.epc-label i { font-size: 1rem; }

.epc-name {
  font-size: clamp(2.5rem, 4vw, 3.5rem);
  color: #ffffff;
  font-weight: 800;
  margin-bottom: 5px;
  line-height: 1.1;
  letter-spacing: -1px;
}

.epc-role {
  font-size: 1.1rem;
  color: #888;
  font-weight: 500;
  margin-bottom: 30px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.epc-bio {
  color: #b3b3b3;
  font-size: 1.05rem;
  line-height: 1.7;
  margin-bottom: 40px;
}

/* Štatistiky priamo v karte */
.epc-stats {
  display: flex;
  gap: 40px;
  margin-bottom: 40px;
  padding-bottom: 40px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.epc-stat-item h4 {
  color: #ffffff;
  font-size: 2.5rem;
  font-weight: 900;
  margin-bottom: 5px;
  line-height: 1;
}

.epc-stat-item h4 span { color: #FE002E; }

.epc-stat-item p {
  color: #666;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin: 0;
}

/* Tlačidlá a Siete - Zladené s tvojím dizajnom */
.epc-actions {
  display: flex;
  align-items: center;
  gap: 15px;
  flex-wrap: wrap;
}

.epc-btn {
  background: rgba(254, 0, 46, 0.1);
  border: 1px solid rgba(254, 0, 46, 0.3);
  color: #ffffff;
  padding: 12px 25px;
  border-radius: 50px;
  font-weight: 600;
  font-size: 0.9rem;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  transition: all 0.3s ease;
}

.epc-btn i { color: #FE002E; transition: color 0.3s ease; }

.epc-btn:hover {
  background: #FE002E;
  border-color: #FE002E;
}
.epc-btn:hover i { color: #ffffff; }

.epc-social {
  width: 45px; height: 45px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.05);
  display: flex; justify-content: center; align-items: center;
  color: #ffffff;
  text-decoration: none;
  transition: all 0.3s ease;
}

.epc-social:hover {
  background: #FE002E;
  border-color: #FE002E;
  color: #ffffff;
  transform: translateY(-3px);
}

/* Responzivita pre Tablet a Mobil */
@media (max-width: 991px) {
  .elite-profile-card { flex-direction: column; }
  .epc-image { width: 100%; height: 500px; }
  /* Prechod sa na mobile otočí zhora nadol */
  .epc-image::after { background: linear-gradient(to bottom, transparent 50%, #0d0d0d 100%); }
  .epc-content { width: 100%; padding: 40px; }
}

@media (max-width: 768px) {
  .elite-profile-sec { padding: 60px 0; }
  .epc-image { height:800px; }
  .epc-content { padding: 30px 20px; }
  .epc-stats { gap: 20px; flex-wrap: wrap; }
  .epc-stat-item h4 { font-size: 2rem; }
  .epc-actions { justify-content: flex-start; }
}

/* --- PREMIUM TECH SECTION --- */

.tech-section-glass {
  position: relative;
  overflow: hidden;
  border-top: 1px solid rgba(255, 255, 255, 0.03);
}

/* Jemná žiara na pozadí pre tech feel */
.tech-section-glass::before {
  content: '';
  position: absolute;
  left: -10%;
  top: 30%;
  width: 50vw;
  height: 50vw;
  pointer-events: none;
}

/* 1. TOP Štatistiky (4K, RAW, 100%) */
.tech-stat-wrap {
  display: flex;
  flex-direction: column;
  padding-bottom: 25px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  position: relative;
  transition: all 0.4s ease;
}

/* Aktívna červená čiara naspodku */
.tech-stat-wrap::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 0;
  height: 1px;
  background: #FE002E;
  transition: width 0.5s ease;
  box-shadow: 0 0 10px #FE002E;
}

.tech-stat-wrap:hover::after,
.tech-stat-wrap.active::after {
  width: 100%;
}

.t-num {
  font-size: clamp(3rem, 5vw, 4.5rem);
  font-weight: 900;
  color: #fff;
  line-height: 1;
  margin-bottom: 10px;
  letter-spacing: -2px;
}

.t-num.glow-red {
  color: #FE002E;
  text-shadow: 0 0 20px rgba(254, 0, 46, 0.3);
}

.t-desc {
  color: #888;
  font-size: 0.85rem;
  line-height: 1.5;
  margin: 0;
  max-width: 90%;
}

/* 2. Ľavý Stĺpec (Prečo garantujeme...) */
.tech-left-title {
  font-size: clamp(2rem, 3vw, 2.5rem);
  font-weight: 800;
  color: #fff;
  line-height: 1.2;
  margin-bottom: 20px;
}

.tech-check-list {
  margin-top: 30px;
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.tech-check-item {
  display: flex;
  align-items: center;
  gap: 12px;
  color: #fff;
  font-size: 1.05rem;
  font-weight: 600;
}

.tech-check-item i {
  color: #FE002E;
  background: rgba(254, 0, 46, 0.1);
  width: 24px; height: 24px;
  display: flex; justify-content: center; align-items: center;
  border-radius: 50%;
  font-size: 0.7rem;
}

/* 3. Pravý Stĺpec (Glass Box Zázemie) */
.tech-glass-panel {
  background: rgba(15, 15, 15, 0.6);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 20px;
  padding: 40px;
  box-shadow: 0 30px 60px rgba(0,0,0,0.5);
}

.tg-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 35px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.tg-header h3 {
  font-size: 1.5rem;
  font-weight: 800;
  color: #fff;
  margin: 0;
}

.tg-badge {
  background: #FE002E;
  color: #fff;
  font-size: 0.65rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 6px 12px;
  border-radius: 4px;
}

/* Kroky vnútri panelu */
.tg-step-grid {
  display: flex;
  flex-direction: column;
  gap: 25px;
}

.tg-step {
  padding-left: 20px;
  border-left: 2px solid rgba(255, 255, 255, 0.1);
  transition: all 0.3s ease;
}

.tg-step:hover {
  border-left-color: #FE002E;
}

.tg-step-top {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 8px;
  flex-wrap: wrap; /* Zalomí sa na mobile */
  gap: 10px;
}

.tg-step-title {
  font-size: 1.1rem;
  color: #fff;
  font-weight: 700;
}

.tg-step-label {
  font-size: 0.65rem;
  color: #888;
  text-transform: uppercase;
  letter-spacing: 2px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  padding: 3px 8px;
  border-radius: 4px;
}

.tg-step p {
  font-size: 0.9rem;
  color: #999;
  line-height: 1.6;
  margin: 0;
}

/* Responzivita */
@media (max-width: 991px) {
  .tech-stat-wrap { margin-bottom: 30px; }
  .tech-glass-panel { padding: 30px; margin-top: 50px; }
}

@media (max-width: 768px) {
  .tech-section-glass { padding: 80px 0; }
  .tech-left-title { font-size: 1.8rem; }
  .tg-header { flex-direction: column; align-items: flex-start; gap: 15px; }
  .tg-step-top { flex-direction: column; align-items: flex-start; gap: 5px; }
}


/* --- CLEAN AIR CONTACT FORM (High Readability) --- */

.elite-form-box {
  background: #0a0a0a; /* Jemne svetlejšia čierna ako okolie */
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 20px;
  padding: 60px;
  position: relative;
  /* Odstránené ťažké tiene a glowing efekty pre čistý look */
}

/* 1. Názvy polí (Labels) - Normálne a vysoko čitateľné */
.elite-label {
  display: block;
  font-size: 0.9rem;
  color: #cccccc; /* Svetlejší text pre ľahké čítanie */
  text-transform: none; /* Vypnuté verzálky (uppercase) */
  letter-spacing: 0.5px; /* Normálne medzery */
  margin-bottom: 8px;
  font-weight: 600;
}

.elite-label span {
  color: #FF0033;
}

/* 2. Vstupné polia (Inputs) - Svetlejšie a kontrastnejšie */
.elite-input-wrap {
  margin-bottom: 25px;
}

.elite-input {
  width: 100%;
  background: rgba(255, 255, 255, 0.05); /* Viac svetla vnútri poľa */
  border: 1px solid rgba(255, 255, 255, 0.1); /* Viditeľnejší okraj */
  border-radius: 8px;
  padding: 16px 20px;
  color: #ffffff;
  font-size: 1.05rem; /* Väčší text pri písaní */
  font-weight: 400;
  transition: all 0.3s ease;
}

.elite-input::placeholder {
  color: #777; /* Kontrastnejší placeholder */
  font-weight: 300;
}

.elite-input:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.2);
}

.elite-input:focus {
  background: rgba(255, 255, 255, 0.08);
  border-color: #FF0033;
  box-shadow: 0 0 0 3px rgba(255, 0, 51, 0.1); /* Jemnejší focus ring */
  outline: none;
}

/* 3. Výber Služieb (Vzdušné pilulky namiesto ťažkých boxov) */
.elite-service-grid {
  display: flex;
  flex-wrap: wrap; /* Zalamovanie podľa šírky */
  gap: 12px;
  margin-bottom: 30px;
}

.elite-service-tile {
  cursor: pointer;
  flex-grow: 1; /* Roztiahnu sa, aby vyplnili priestor */
}

.elite-service-tile input { display: none; }

.es-content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 14px 20px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50px; /* Oblé "pilulky" sú oveľa príjemnejšie */
  color: #aaaaaa;
  transition: all 0.3s ease;
}

.es-content i { font-size: 1.1rem; }
.es-content span { font-size: 0.9rem; font-weight: 600; }

.elite-service-tile:hover .es-content {
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
}

/* Aktívny stav pilulky */
.elite-service-tile input:checked + .es-content {
  background: rgba(255, 0, 51, 0.1);
  border-color: #FF0033;
  color: #ffffff;
}

.elite-service-tile input:checked + .es-content i { color: #FF0033; }

/* 4. Textarea a Select */
textarea.elite-input {
  resize: vertical; /* Dovolí užívateľovi zväčšiť pole, ak potrebuje */
  height: 120px;
  font-family: inherit;
}

.elite-select {
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23aaaaaa%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: right 15px top 50%;
  background-size: 12px auto;
}
.elite-select option { background: #111; color: #fff; }

/* 5. Checkboxy */
.elite-checkbox-row {
  display: flex;
  flex-direction: column;
  gap: 15px;
  margin-bottom: 30px;
}

.elite-check {
  display: flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  font-size: 0.9rem;
  color: #999;
}

.elite-check input {
  appearance: none;
  width: 22px; height: 22px;
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 4px;
  background: transparent;
  display: grid; place-content: center;
  transition: all 0.2s;
  flex-shrink: 0;
}

.elite-check input::before {
  content: "\f00c"; font-family: "Font Awesome 6 Free"; font-weight: 900;
  font-size: 12px; color: #fff; transform: scale(0); transition: transform 0.2s;
}

.elite-check input:checked { background: #FF0033; border-color: #FF0033; }
.elite-check input:checked::before { transform: scale(1); }
.elite-check a { color: #FF0033; text-decoration: none; border-bottom: 1px solid transparent; transition: border-color 0.3s; }
.elite-check a:hover { border-bottom-color: #FF0033; }

/* 6. Čisté Tlačidlo Odoslať */
.elite-submit-btn {
  width: 100%;
  background: #FF0033;
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 18px;
  font-size: 1.05rem; /* Väčšie, sebavedomejšie písmo */
  font-weight: 700;
  letter-spacing: 1px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  transition: all 0.3s ease;
  /* Odstránený neónový tieň pre čistejší dojem */
}

.elite-submit-btn:hover {
  background: #e6002e;
  transform: translateY(-2px);
  box-shadow: 0 10px 20px rgba(255, 0, 51, 0.2);
}

.elite-submit-btn i { transition: transform 0.3s; }
.elite-submit-btn:hover i { transform: translateX(5px); }

/* Responzivita */
@media (max-width: 768px) {
  .elite-form-box { padding: 40px 20px; }
  .elite-service-grid { flex-direction: column; } /* Na mobile pilulky pod seba */
}



/* --- CONTACT SPLIT SECTION (Form + Map) --- */

.contact-split-section {
  padding: 100px 0;
  position: relative;
}



/* Obal pre mapu */
.elite-map-wrapper {
  height: 100%;
  min-height: 400px;
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: #0a0a0a;
  position: relative;
  box-shadow: 0 30px 60px rgba(0,0,0,0.5);
}

/* Magický filter pre Dark Mode mapu */
.elite-map-wrapper iframe {
  width: 100%;
  height: 100%;
  border: 0;
  /* Tento filter otočí farby mapy a spraví z nej luxusnú tmavú verziu */
  filter: grayscale(100%) invert(100%) contrast(1.2) opacity(0.85);
  transition: all 0.5s ease;
}

/* Keď klient prejde myšou na mapu, mierne sa rozjasní */
.elite-map-wrapper:hover iframe {
  filter: grayscale(80%) invert(100%) contrast(1.1) opacity(1);
}

/* Plávajúci štítok na mape (Voliteľné, ale vyzerá to super) */
.map-floating-card {
  position: absolute;
  bottom: 30px;
  left: 30px;
  background: rgba(10, 10, 10, 0.85);
  backdrop-filter: blur(15px);
  -webkit-backdrop-filter: blur(15px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  padding: 20px;
  border-radius: 12px;
  box-shadow: 0 15px 30px rgba(0,0,0,0.5);
  z-index: 2;
}

.map-floating-card h6 {
  color: #fff;
  font-size: 0.9rem;
  font-weight: 800;
  margin-bottom: 5px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.map-floating-card p {
  color: #aaa;
  font-size: 0.85rem;
  margin: 0;
}

.map-floating-card i {
  color: #FF0033;
  margin-right: 8px;
}

/* Responzivita pre mapu */
@media (max-width: 991px) {
  .elite-map-wrapper { min-height: 450px; margin-top: 40px; }
}

.estavio-results-section {
  padding: 120px 0;
  position: relative;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
}

/* Hlavička sekcie */
.results-header-wrap {
  text-align: center;
  margin-bottom: 70px;
}

.section-dot-title {
  color: #FE002E;
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 3px;
  font-weight: 700;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.section-dot-title .dot {
  width: 6px; height: 6px;
  background: #FE002E;
  border-radius: 50%;
  box-shadow: 0 0 10px #FE002E;
}

.results-main-title {
  font-size: clamp(2.5rem, 5vw, 4rem);
  font-weight: 900;
  color: #fff;
  line-height: 1.1;
  letter-spacing: -1px;
  text-transform: uppercase;
}

.gradient-text-red {
  background: linear-gradient(90deg, #FE002E 0%, #B30021 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.results-description {
  color: #888;
  font-size: 1.05rem;
  max-width: 700px;
  margin: 25px auto 0;
  line-height: 1.6;
}

/* Mriežka výsledkov (Bento Box štýl) */
.results-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-bottom: 40px;
}

.result-card {
  background: #080808;
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 20px;
  padding: 40px 30px;
  text-align: center;
  transition: all 0.4s ease;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.result-card:hover {
  background: rgba(255, 255, 255, 0.03);
  border-color: rgba(254, 0, 46, 0.2);
  transform: translateY(-5px);
  box-shadow: 0 15px 30px rgba(0,0,0,0.5);
}

.r-label-top {
  font-size: 0.65rem;
  color: #555;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 700;
  margin-bottom: 15px;
}

.r-metric {
  font-size: clamp(2.5rem, 4vw, 3.5rem);
  font-weight: 900;
  color: #ffffff;
  line-height: 1;
  margin-bottom: 15px;
  letter-spacing: -2px;
}

/* Špeciálne sfarbenie pre pridanú hodnotu (+) */
.r-metric.positive { color: #FE002E; }

.r-text {
  font-size: 0.9rem;
  color: #aaa;
  line-height: 1.5;
  margin: 0;
}

/* Ak chceme niektoré karty natiahnuť (napr. tie s textom miesto % čísel) */
.result-card.wide {
  grid-column: span 3;
  flex-direction: row;
  align-items: center;
  text-align: left;
  gap: 30px;
  padding: 30px 40px;
}

.result-card.wide .r-metric { margin-bottom: 0; font-size: 2rem; white-space: nowrap; }
.result-card.wide .r-text { font-size: 1rem; }

.results-disclaimer {
  text-align: center;
  font-size: 0.75rem;
  color: #444;
  line-height: 1.5;
  max-width: 800px;
  margin: 0 auto;
}

/* Responzivita */
@media (max-width: 991px) {
  .results-grid { grid-template-columns: repeat(2, 1fr); }
  .result-card.wide { grid-column: span 2; flex-direction: column; text-align: center; }
  .result-card.wide .r-metric { margin-bottom: 15px; }
}

@media (max-width: 768px) {
  .estavio-results-section { padding: 80px 0; }
  .results-grid { grid-template-columns: 1fr; }
  .result-card.wide { grid-column: span 1; }
  .results-main-title { font-size: 2.5rem; }
}

/* --- PREMIUM ARCHITECTURAL FOOTER --- */

.estavio-footer-main {
  position: relative;
  overflow: hidden;
  color: #a0a0a0;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
}

/* 1. Bežiaci text (Marquee) */
.call-action-style2 {
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  padding: 30px 0;
}

.main-marq h2 {
  font-size: clamp(4rem, 8vw, 8rem);
  font-weight: 900;
  letter-spacing: -2px;
  color: transparent;
  -webkit-text-stroke: 1px rgba(255, 255, 255, 0.15); /* Jemný obrys */
  text-transform: uppercase;
  margin: 0 30px;
  transition: all 0.4s ease;
}

.main-marq h2:hover {
  color: #fff;
  -webkit-text-stroke: 0px;
  text-shadow: 0 0 30px rgba(255, 255, 255, 0.5);
}

/* 2. Štruktúra Footeru (Vertikálne čiary) */
.footer-grid-row {
  position: relative;
}

.footer-col {
  padding: 20px 40px;
  position: relative;
}

/* Pridanie jemných čiar medzi stĺpce na desktope */
@media (min-width: 992px) {
  .footer-col:not(:last-child)::after {
      content: '';
      position: absolute;
      right: 0;
      top: 0;
      height: 100%;
      width: 1px;
      background: linear-gradient(to bottom, rgba(255,255,255,0.05) 0%, rgba(255,255,255,0.1) 50%, rgba(255,255,255,0.05) 100%);
  }
}

/* 3. Nadpisy a Texty */
.footer-title {
  color: #FE002E; /* Ostrá červená pre dôležité nadpisy */
  font-size: 0.85rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 3px;
  margin-bottom: 25px;
}

.footer-info-text {
  font-size: 0.95rem;
  color: #cccccc;
  line-height: 1.8;
  margin-bottom: 8px;
}

.footer-contact-link {
  color: #fff;
  text-decoration: none;
  font-weight: 600;
  font-size: 1.1rem;
  transition: color 0.3s ease;
  display: inline-block;
  margin-bottom: 10px;
}

.footer-contact-link:hover {
  color: #FE002E;
}

/* 4. Sociálne Siete */
.footer-socials {
  display: flex;
  gap: 15px;
  margin-top: 10px;
}

.f-social-icon {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.1);
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 1.2rem;
  text-decoration: none;
  transition: all 0.4s ease;
}

.f-social-icon:hover {
  background: #FE002E;
  border-color: #FE002E;
  transform: translateY(-5px);
  box-shadow: 0 10px 20px rgba(254, 0, 46, 0.3);
}

/* 5. Právne Odkazy */
.legal-links-wrap {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 25px;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.legal-link {
  color: #888;
  font-size: 0.8rem;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 1px;
  transition: color 0.3s ease;
}

.legal-link:hover {
  color: #FE002E;
}

/* 6. Spodný riadok (Copyright a Menu) */
.footer-bottom-bar {
  border-top: 1px solid rgba(255, 255, 255, 0.05);
  padding: 30px 0;
  margin-top: 60px;
}

.copyright-text {
  font-size: 0.8rem;
  color: #666;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin: 0;
}

.copyright-text span { color: #fff; font-weight: 700; }
.copyright-text .wetrixo-link { color: #FE002E; text-decoration: none; transition: color 0.3s; }
.copyright-text .wetrixo-link:hover { color: #fff; }

.footer-nav {
  display: flex;
  gap: 30px;
  justify-content: flex-end;
}

.footer-nav a {
  color: #a0a0a0;
  text-decoration: none;
  font-size: 0.85rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 2px;
  transition: color 0.3s ease;
}

.footer-nav a:hover {
  color: #FE002E;
}

/* Tlačidlo Scroll Top */
.footer-scroll-top {
  position: absolute;
  right: 40px;
  bottom: 30px;
  width: 40px; height: 40px;
  border-radius: 50%;
  background: rgba(255,255,255,0.05);
  color: #fff;
  display: flex; justify-content: center; align-items: center;
  text-decoration: none;
  border: 1px solid rgba(255,255,255,0.1);
  transition: all 0.3s ease;
}

.footer-scroll-top:hover {
  background: #FE002E;
  border-color: #FE002E;
  color: #fff;
}

/* Responzivita pre Tablet a Mobil */
@media (max-width: 991px) {
  .footer-col { padding: 30px 15px; border-bottom: 1px solid rgba(255,255,255,0.05); }
  .footer-col:last-child { border-bottom: none; }
  .footer-nav { justify-content: flex-start; flex-wrap: wrap; gap: 15px; margin-top: 20px; }
  .footer-scroll-top { right: 20px; bottom: auto; top: -20px; } /* Na mobile presunieme hore */
}

/* --- ULTRA-PREMIUM GLASS NAVBAR --- */

.nav-estavio-ultra-glass {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1030;
  background: rgba(5, 5, 5, 0.75); /* Tmavé polopriesvitné pozadie */
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  padding: 15px 0;
  transition: all 0.4s ease;
}

/* Zmenšenie pri scrollovaní (Vyžaduje JS, ale CSS pripravíme) */
.nav-estavio-ultra-glass.scrolled {
  padding: 10px 0;
  background: rgba(5, 5, 5, 0.9);
  box-shadow: 0 10px 30px rgba(0,0,0,0.5);
}

/* Úprava Loga */
.nav-estavio-ultra-glass .logo img {
  width: auto;
  transition: all 0.3s ease;
}

/* Navigačné Linky (Desktop) */
.nav-estavio-ultra-glass .navbar-nav {
  display: flex;
  align-items: center;
  gap: 30px;
}

.nav-estavio-ultra-glass .nav-link {
  color: #ffffff;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2px;
  padding: 10px 5px !important;
  position: relative;
  transition: color 0.3s ease;
}

.nav-estavio-ultra-glass .nav-link:hover,
.nav-estavio-ultra-glass .nav-link:focus {
  color: #FE002E;
}

/* Červená čiarka pod aktívnym linkom */
.link-glow-line {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 2px;
  background: #FE002E;
  transition: width 0.3s ease;
  box-shadow: 0 0 10px rgba(254, 0, 46, 0.5);
}

.nav-estavio-ultra-glass .nav-link:hover .link-glow-line {
  width: 100%;
}

/* --- DROPDOWN MENU (Služby) --- */
.nav-estavio-ultra-glass .dropdown-menu {
  background: rgba(15, 15, 15, 0.95);
  backdrop-filter: blur(25px);
  -webkit-backdrop-filter: blur(25px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 16px;
  padding: 20px;
  margin-top: 15px;
  box-shadow: 0 20px 50px rgba(0,0,0,0.5);
  min-width: 260px;
  display: block;
  opacity: 0;
  visibility: hidden;
  transform: translateY(15px);
  transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.nav-estavio-ultra-glass .dropdown:hover .dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.nav-estavio-ultra-glass .dropdown-item {
  color: #a0a0a0;
  font-size: 0.8rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 12px 15px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  gap: 15px;
  transition: all 0.3s ease;
}

.nav-estavio-ultra-glass .dropdown-item i {
  color: #FE002E;
  font-size: 1.1rem;
  width: 24px;
  text-align: center;
  transition: transform 0.3s ease;
}

.nav-estavio-ultra-glass .dropdown-item:hover {
  background: rgba(255, 255, 255, 0.05);
  color: #ffffff;
  transform: translateX(5px);
}
.nav-estavio-ultra-glass .dropdown-item:hover i {
  transform: scale(1.1);
}

/* Pravé Tlačidlo "Kontaktujte Nás" */
.top-contact-btn {
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #ffffff;
  padding: 10px 24px;
  border-radius: 50px;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  text-decoration: none;
  transition: all 0.3s ease;
}

.top-contact-btn:hover {
  background: #FE002E;
  border-color: #FE002E;
  color: #ffffff;
  box-shadow: 0 5px 15px rgba(254, 0, 46, 0.3);
}

/* --- MOBILNÉ MENU (Fullscreen Experience) --- */
.navbar-toggler {
  border: none;
  color: #fff;
  font-size: 1.5rem;
}

.navbar-toggler:focus {
  box-shadow: none;
  outline: none;
}

@media (max-width: 991px) {
  .nav-estavio-ultra-glass .navbar-collapse {
      position: fixed;
      top: 66px; /* Výška headeru */
      left: 0;
      width: 100%;
      height: calc(100vh - 66px);
      background: #050505;
      padding: 40px 20px;
      overflow-y: auto;
      border-top: 1px solid rgba(255,255,255,0.05);
  }

  .nav-estavio-ultra-glass .navbar-nav {
      flex-direction: column;
      align-items: flex-start;
      gap: 0;
  }

  /* Obrovské nadpisy na mobile */
  .nav-estavio-ultra-glass .nav-link {
      font-size: 2rem;
      padding: 15px 0 !important;
      letter-spacing: 0;
      border-bottom: 1px solid rgba(255,255,255,0.05);
      width: 100%;
  }

  .nav-estavio-ultra-glass .nav-link .link-glow-line { display: none; } /* Vypneme čiary na mobile */

  /* Dropdown na mobile */
  .nav-estavio-ultra-glass .dropdown-menu {
      position: static;
      box-shadow: none;
      background: transparent;
      border: none;
      padding: 10px 0 10px 20px;
      margin: 0;
      opacity: 1; visibility: visible; transform: none;
      display: none; /* Riešené cez Bootstrap JS collapse */
  }
  .nav-estavio-ultra-glass .dropdown.show .dropdown-menu { display: block; }

  .nav-estavio-ultra-glass .dropdown-item {
      font-size: 1rem;
      padding: 10px 0;
  }

  /* Rýchly kontakt dole na mobile */
  .m-contact-box {
      margin-top: 50px;
      background: rgba(25, 25, 25, 0.5);
      border: 1px solid rgba(255,255,255,0.05);
      border-radius: 16px;
      padding: 30px 20px;
      width: 100%;
      text-align: center;
  }

  .m-label {
      display: block;
      color: #FE002E;
      font-size: 0.7rem;
      text-transform: uppercase;
      letter-spacing: 2px;
      font-weight: 700;
      margin-bottom: 20px;
  }

  .m-call-btn {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 12px;
      background: #FE002E;
      color: #fff;
      padding: 18px;
      border-radius: 12px;
      font-size: 1.1rem;
      font-weight: 800;
      text-decoration: none;
      margin-bottom: 15px;
      box-shadow: 0 10px 20px rgba(254, 0, 46, 0.3);
  }

  .m-mail-btn {
      display: block;
      color: #a0a0a0;
      font-size: 0.9rem;
      text-decoration: none;
  }
}

/* --- PREMIUM GRID DROPDOWN (Zaradené na Stred na Desktope) --- */

.nav-estavio-ultra-glass .dropdown-menu {
  background: rgba(15, 15, 15, 0.95);
  backdrop-filter: blur(25px);
  -webkit-backdrop-filter: blur(25px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 16px;
  padding: 25px;
  margin-top: 15px;
  box-shadow: 0 20px 50px rgba(0,0,0,0.5);
  min-width: 440px; /* Širší panel pre grid */
  
  /* Grid Layout - 2 stĺpce */
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  
  /* Absolútne vycentrovanie dropdownu pod nadpisom na desktope */
  position: absolute;
  left: 50%;
  transform: translateX(-50%) translateY(15px);
  
  /* Animácia zobrazenia */
  opacity: 0;
  visibility: hidden;
  transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.nav-estavio-ultra-glass .dropdown:hover .dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

/* Zmena položky na kartičku s ikonou (Ikonka navrchu, text pod) */
.nav-estavio-ultra-glass .dropdown-item {
  color: #a0a0a0;
  font-size: 0.8rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 18px 15px; /* Vzdušnejšie */
  border-radius: 12px;
  display: flex;
  flex-direction: column; /* Ikonka navrchu */
  align-items: center;
  justify-content: center;
  gap: 12px;
  text-align: center;
  transition: all 0.3s ease;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.05);
}

.nav-estavio-ultra-glass .dropdown-item i {
  color: #FE002E;
  font-size: 1.5rem; /* Masívnejšia ikonka */
  transition: transform 0.3s ease;
}

.nav-estavio-ultra-glass .dropdown-item:hover {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(254, 0, 46, 0.3);
  color: #ffffff;
  transform: translateY(-2px);
  box-shadow: 0 10px 20px rgba(0,0,0,0.4);
}
.nav-estavio-ultra-glass .dropdown-item:hover i {
  transform: scale(1.1);
}

/* --- MOBILNÝ DROPDOWN (Vypnutie Gridu) --- */
@media (max-width: 991px) {
  /* Vypneme grid na mobile */
  .nav-estavio-ultra-glass .dropdown-menu {
      display: none; /* Riešené cez Bootstrap JS collapse */
      width: 100%;
      min-width: 0;
      grid-template-columns: 1fr; /* Jeden stĺpec */
      gap: 0;
      padding: 0 0 0 25px; /* Odsadenie pre pod-menu */
  }
  .nav-estavio-ultra-glass .dropdown.show .dropdown-menu { display: block; }

  /* Zmena kartičiek späť na tenký zoznam na mobile */
  .nav-estavio-ultra-glass .dropdown-item {
      padding: 10px 0;
      flex-direction: row; /* Ikonka naľavo */
      align-items: center;
      justify-content: flex-start;
      gap: 10px;
      text-align: left;
      background: transparent;
      border: none;
  }

  .nav-estavio-ultra-glass .dropdown-item i {
      font-size: 1.1rem;
      width: 24px;
  }
}

/* --- PREMIUM CLIENT REVIEWS (Solid Dark Style) --- */

.estavio-pro-testim-section {
  padding: 120px 0;
  position: relative;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
  overflow: hidden;
}

/* Jemná žiara na pozadí pre prémiový pocit */
.estavio-pro-testim-section::before {
  content: '';
  position: absolute;
  top: -10%; left: 50%;
  transform: translateX(-50%);
  width: 60vw; height: 60vw;
  background: radial-gradient(circle, rgba(254, 0, 46, 0.05) 0%, transparent 90%);
  filter: blur(80px);
  pointer-events: none;
}

/* Hlavička sekcie */
.section-dot-title-center {
  color: #888;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 3px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-bottom: 25px;
}

.section-dot-title-center .dot {
  width: 6px; height: 6px;
  background: #FE002E;
  border-radius: 50%;
  box-shadow: 0 0 10px #FE002E;
}

.results-main-title {
  font-size: 40px;
  font-weight: 900;
  color: #ffffff;
  line-height: 1.1;
  letter-spacing: -2px;
  text-transform: uppercase;
}

/* Hodnotenie (5.0) */
.rating-box-inline {
  margin-top: 40px;
}

.huge-number {
  font-size: 5rem;
  font-weight: 900;
  color: #ffffff;
  line-height: 1;
  letter-spacing: -3px;
}

.stars-pro {
  color: #FE002E;
  font-size: 1.2rem;
  letter-spacing: 2px;
}

.stars-text {
  font-size: 0.75rem;
  color: #666;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 600;
  margin-top: 5px;
}

/* --- ELITE/PRO FAQ ACCORDION --- */

.faq-section-elite {
  padding: 120px 0;
  background: #000000;
}

/* Hlavný kontajner akordeónu */
.elite-accordion {
  --elite-red: #FE002E; /* Tvoja červená farba */
}

/* Štýl jedného boxu (Item) */
.elite-accordion .accordion-item {
  background: #0d0d0d; /* Hlboká čierna pre boxy */
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 12px; /* Jemne zaoblené hrany pre moderný look */
  margin-bottom: 15px;
  overflow: hidden;
  transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}

/* Hover efekt pre neaktívny box */
.elite-accordion .accordion-item:not(.active):hover {
  background: rgba(255, 255, 255, 0.02);
  border-color: rgba(255, 255, 255, 0.1);
}

/* AKTÍVNY STAV BOXU - Jemné podsvietenie a línia naľavo */
.elite-accordion .accordion-item.active {
  border-color: rgba(254, 0, 46, 0.3);
  box-shadow: 0 10px 30px rgba(254, 0, 46, 0.1);
  background: rgba(254, 0, 46, 0.02);
}

/* Hlavička tlačidla (Button) */
.elite-accordion .accordion-button {
  background: transparent;
  color: #ffffff;
  padding: 22px 25px;
  font-size: 1.05rem;
  font-weight: 700;
  border: none;
  box-shadow: none;
  transition: color 0.3s ease;
  width: 100%;
  text-align: left;
  display: flex;
  align-items: center;
}

/* Odstránenie default Bootstrap šípky */
.elite-accordion .accordion-button::after {
  display: none;
}

/* Červené čísla namiesto emoji */
.elite-accordion .faq-number {
  color: var(--elite-red);
  font-weight: 900;
  margin-right: 15px;
  font-size: 1.1rem;
  opacity: 1;
}

/* Nová moderná šípka napravo (Chevron) */
.elite-accordion .faq-arrow {
  margin-left: auto;
  font-size: 0.9rem;
  color: #666;
  transition: all 0.3s ease;
}

/* Aktívny stav tlačidla */
.elite-accordion .accordion-button:not(.collapsed) {
  color: #FE002E;
}

/* Otočenie a zafarbenie šípky pri otvorení */
.elite-accordion .accordion-button:not(.collapsed) .faq-arrow {
  transform: rotate(180deg);
  color: #FE002E;
}

/* Telo textu (Body) */
.elite-accordion .accordion-body {
  padding: 0 25px 30px 58px; /* Odskrutkujeme text, aby bol zarovnaný k otázke */
  color: #a0a0a0;
  line-height: 1.7;
  font-weight: 300;
  font-size: 0.95rem;
}

/* Odstránenie spodných medzier v texte */
.elite-accordion .accordion-body p {
  margin: 0;
}

/* Responzivita */
@media (max-width: 768px) {
  .elite-accordion .accordion-button { padding: 18px 20px; font-size: 0.95rem; }
  .elite-accordion .accordion-body { padding: 0 20px 25px 50px; font-size: 0.9rem; }
}

/* --- ELITE PAGE HERO HEADER --- */

.elite-pg-hero {
  position: relative;
  padding: 200px 0 120px; /* Nahrádza ten nebezpečný margin-bottom: 300px */
  background-color: #030303; /* Hlboká čierna */
  overflow: hidden;
  border-bottom: 1px solid rgba(255, 255, 255, 0.03);
}

/* Jemná žiara vychádzajúca zhora */
.elite-pg-hero::before {
  content: '';
  position: absolute;
  top: -100px; left: 50%;
  transform: translateX(-50%);
  width: 70vw; height: 500px;
  background: radial-gradient(ellipse at top, rgba(254, 0, 46, 0.08) 0%, transparent 70%);
  pointer-events: none;
  z-index: 1;
}

/* Zabezpečenie, aby bol obsah nad pozadím */
.elite-pg-hero .container {
  position: relative;
  z-index: 2;
}

/* Ľavý štítok s červenou bodkou */
.hero-dot-label {
  color: #888;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 3px;
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 25px; /* Zarovnanie k hornému okraju veľkého textu */
}

.hero-dot-label .dot {
  width: 6px; height: 6px;
  background: #FE002E;
  border-radius: 50%;
  box-shadow: 0 0 10px #FE002E;
}

/* Obrovský hlavný nadpis */
.hero-main-title {
  font-weight: 900;
  color: #ffffff;
  line-height: 0.9; /* Veľmi natlačené riadky na seba pre moderný look */
  letter-spacing: -3px; /* Stlačené písmená */
  text-transform: uppercase;
  margin: 0;
}

/* Responzivita pre Tablet a Mobil */
@media (max-width: 991px) {
  .elite-pg-hero { padding: 150px 0 80px; }
  .hero-dot-label { margin-top: 0; margin-bottom: 30px; }
}

@media (max-width: 768px) {
  .elite-pg-hero { padding: 120px 0 60px; }
  .hero-main-title { font-size: 3.5rem; letter-spacing: -1.5px; line-height: 1; }
}

/* Keď je v poli chyba */
.elite-input.has-error {
  border-color: #FF0033 !important;
  background: rgba(255, 0, 51, 0.05) !important;
  animation: shakeError 0.4s ease-in-out;
}

@keyframes shakeError {
  0%, 100% { transform: translateX(0); }
  20%, 60% { transform: translateX(-5px); }
  40%, 80% { transform: translateX(5px); }
}

/* Úspešná obrazovka */
.form-success-overlay {
  position: absolute;
  top: 0; left: 0; 
  width: 100%; height: 100%;
  background: rgba(10, 10, 10, 0.95);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  z-index: 100;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 40px;
  opacity: 0;
  visibility: hidden;
  transition: all 0.5s ease;
}

.form-success-overlay.active {
  opacity: 1;
  visibility: visible;
}

/* Ikona fajky */
.success-icon-wrap {
  width: 80px; height: 80px;
  background: rgba(255, 0, 51, 0.1);
  color: #FF0033;
  border-radius: 50%;
  display: flex; justify-content: center; align-items: center;
  font-size: 2.5rem;
  margin-bottom: 20px;
  transform: scale(0);
  transition: transform 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.form-success-overlay.active .success-icon-wrap {
  transform: scale(1);
  transition-delay: 0.2s;
}

.success-title { 
  color: #fff; 
  font-size: 2rem; 
  font-weight: 800; 
  margin-bottom: 10px; 
  text-transform: uppercase;
  letter-spacing: -1px;
}

.success-text { 
  color: #aaa; 
  font-size: 1rem; 
  line-height: 1.6;
}

.split-view-container {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    /* TOTO JE KĽÚČOVÉ: Zabráni scrollovaniu stránky, keď ťaháš slider */
    touch-action: none; 
    /* Zabráni označovaniu textu alebo obrázkov pri ťahaní */
    user-select: none;
    -webkit-user-drag: none;
}

@media (max-width: 991px) {
    
  /* 1. Mágia, ktorá zabije akékoľvek lietanie mimo obrazovky */
  .nav-estavio-ultra-glass .navbar-nav .dropdown-menu {
      position: static !important;
      transform: none !important; /* TOTO zabíja inline štýly z JS */
      float: none !important;
      clear: both !important;
      width: 100% !important;
      background: transparent !important;
      border: none !important;
      box-shadow: none !important;
      margin: 0 !important;
      padding: 10px 0 15px 25px !important; /* Odsadí to pekne pod úroveň "Služby" */
      top: auto !important;
      left: auto !important;
      right: auto !important;
      bottom: auto !important;
      display: none !important; /* V predvolenom stave schované */
  }

  /* Keď sa to otvorí, ukáže sa to ako stĺpec */
  .nav-estavio-ultra-glass .navbar-nav .dropdown-menu.show {
      display: flex !important;
      flex-direction: column !important;
      align-items: flex-start !important;
  }

  /* 2. Samotné položky (Foto, Dron...) stiahnuté späť do lúče */
  .nav-estavio-ultra-glass .navbar-nav .dropdown-menu .dropdown-item {
      position: relative !important;
      display: flex !important;
      align-items: center !important;
      justify-content: flex-start !important;
      padding: 12px 0 !important;
      color: #aaaaaa !important; /* Sivá farba, aby nekričali */
      font-size: 1rem !important;
      background: transparent !important;
      border: none !important;
      transform: none !important;
      left: 0 !important;
      width: 100% !important;
      text-transform: uppercase !important;
      letter-spacing: 2px !important;
      font-weight: 500 !important;
  }

  /* Vypnutie akýchkoľvek efektov na pozadí pri klikaní */
  .nav-estavio-ultra-glass .navbar-nav .dropdown-menu .dropdown-item:hover,
  .nav-estavio-ultra-glass .navbar-nav .dropdown-menu .dropdown-item:active,
  .nav-estavio-ultra-glass .navbar-nav .dropdown-menu .dropdown-item:focus {
      background: transparent !important;
      color: #ffffff !important;
      outline: none !important;
  }
}

/* --- ELITE COMPACT VIDEO CARD (Estetické a Menšie) --- */

/* Obal videa - má pevnú výšku, takže sa nenafúkne do obrovských rozmerov */
.compact-video-wrapper {
  position: relative;
  width: 100%;
  height: 380px; /* Pevná, elegantná výška na PC */
  background: radial-gradient(circle, #1a1a1a 0%, #030303 100%); /* Tmavé luxusné pozadie okolo videa */
  border-radius: 12px;
  display: flex;
  justify-content: center; /* Vycentruje video presne do stredu */
  align-items: center;
  overflow: hidden;
  box-shadow: inset 0 0 20px rgba(0,0,0,0.8);
}

/* Samotné vertikálne video (vyzerá ako obrazovka mobilu) */
.elite-vertical-video {
  height: 90%; /* Bude mať malý estetický okraj zhora aj zdola */
  aspect-ratio: 9/16; /* Udrží presný formát mobilu */
  object-fit: cover;
  border-radius: 12px;
  box-shadow: 0 15px 35px rgba(0,0,0,0.8); /* Silný tieň, aby video "vystúpilo" z pozadia */
  z-index: 2;
  transition: transform 0.4s ease;
}

/* Prekryvná vrstva s Play ikonou */
.compact-video-wrapper .video-overlay {
  position: absolute;
  z-index: 3;
  display: flex;
  justify-content: center;
  align-items: center;
  pointer-events: none; /* Aby neblokovala kliknutie na link */
}

.compact-video-wrapper .video-overlay i {
  font-size: 2.5rem; /* Menšia, vkusnejšia ikonka */
  color: rgba(255, 255, 255, 0.6);
  text-shadow: 0 0 20px rgba(254, 0, 46, 0.9);
  transition: all 0.3s ease;
}

/* --- HOVER EFEKTY (Keď na to prejdeš myšou) --- */
.elite-compact-video-card:hover .elite-vertical-video {
  transform: scale(1.05); /* Video sa jemne priblíži */
}

.elite-compact-video-card:hover .video-overlay i {
  color: #FE002E; /* Ikona sa rozsvieti na červeno */
  transform: scale(1.1);
}

/* --- RESPONZIVITA PRE MOBILY (Ešte menšie) --- */
@media (max-width: 768px) {
  .compact-video-wrapper {
      height: 300px; /* Na mobile to zmenšíme, aby to nezabralo celú obrazovku */
  }
  
  .elite-vertical-video {
      height: 95%; /* Na mobile môže byť video trochu väčšie v rámci obalu */
  }
}
/* --- ELITE PORTFOLIO ANIMÁCIA (Fade-Up) --- */

.portfolio-anim-wrap {
  opacity: 0;
  transform: translateY(60px);
  transition: opacity 0.8s cubic-bezier(0.165, 0.84, 0.44, 1),
              transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.portfolio-anim-wrap.is-revealed {
  opacity: 1;
  transform: translateY(0);
}

/* ==========================================
   ANIMÁCIE PRE SEKCIU SLUŽBY (Pocit luxusu)
   ========================================== */

/* 1. Animácia pre NADPIS SEKCIE (Scale + Fade) */
.serv-header-anim-wrap {
  opacity: 0;
  transform: scale(0.95); /* Začne mierne zmenšený */
  transition: opacity 1.2s cubic-bezier(0.215, 0.61, 0.355, 1),
              transform 1.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  will-change: transform, opacity;
}

.serv-header-anim-wrap.is-revealed {
  opacity: 1;
  transform: scale(1); /* Rozbalí sa do plnej veľkosti */
}


/* 2. Animácia pre BLOKY SLUŽIEB (Soft Fade-Up) */
.service-anim-wrap {
  opacity: 0;
  transform: translateY(40px); /* Vynára sa zospodu, menšia vzdialenosť pre mäkší efekt */
  transition: opacity 1.0s cubic-bezier(0.165, 0.84, 0.44, 1), /* Drahé zakrivenie pohybu */
              transform 1.0s cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: transform, opacity;
}

.service-anim-wrap.is-revealed {
  opacity: 1;
  transform: translateY(0);
}

/* ==========================================
   ANIMÁCIE PRE SEKCIU GARANCIE (Sebaisté a úderné)
   ========================================== */

/* 1. Základný Fade-Up pre karty (Fáza 01, 02, 03) */
.guarantee-fade-up {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.8s cubic-bezier(0.165, 0.84, 0.44, 1),
              transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: transform, opacity;
}

.guarantee-fade-up.is-revealed {
  opacity: 1;
  transform: translateY(0);
}

/* 2. Fade-Right pre druhý nadpis (objaví sa zľava doprava) */
.guarantee-fade-right {
  opacity: 0;
  transform: translateX(-40px);
  transition: opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1),
              transform 1s cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: transform, opacity;
}

.guarantee-fade-right.is-revealed {
  opacity: 1;
  transform: translateX(0);
}

/* 3. Jemný Scale-Up pre malé ikony (vyskakujú do priestoru) */
.guarantee-scale-up {
  opacity: 0;
  transform: scale(0.9);
  transition: opacity 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275), /* Jemný "bounce" efekt */
              transform 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  will-change: transform, opacity;
}

.guarantee-scale-up.is-revealed {
  opacity: 1;
  transform: scale(1);
}

/* ==========================================
   ANIMÁCIE PRE PROFIL ZAKLADATEĽA (Elite Profile)
   ========================================== */

/* 1. Fotka prichádza zľava */
.epc-image-anim {
  opacity: 0;
  transform: translateX(-40px);
  transition: opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1),
              transform 1s cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: transform, opacity;
}

.epc-image-anim.is-revealed {
  opacity: 1;
  transform: translateX(0);
}

/* 2. Texty prichádzajú zdola (Fade-up) */
.epc-fade-up {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.8s cubic-bezier(0.165, 0.84, 0.44, 1),
              transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: transform, opacity;
}

.epc-fade-up.is-revealed {
  opacity: 1;
  transform: translateY(0);
}

/* 3. Štatistiky vyskakujú (Scale-up Bounce) */
.epc-scale-up {
  opacity: 0;
  transform: scale(0.8);
  transition: opacity 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275),
              transform 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  will-change: transform, opacity;
}

.epc-scale-up.is-revealed {
  opacity: 1;
  transform: scale(1);
}

/* ==========================================
   ANIMÁCIE PRE SEKCIU TECHNIKA (High-Tech Feel)
   ========================================== */

/* 1. Pop-up efekt pre vrchné parametre (4K, RAW...) */
.tech-anim-pop {
  opacity: 0;
  transform: scale(0.8) translateY(20px);
  transition: opacity 0.7s cubic-bezier(0.175, 0.885, 0.32, 1.275),
              transform 0.7s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  will-change: transform, opacity;
}

.tech-anim-pop.is-revealed {
  opacity: 1;
  transform: scale(1) translateY(0);
}

/* 2. Slide-Right pre ľavý text a odrážky */
.tech-anim-right {
  opacity: 0;
  transform: translateX(-40px);
  transition: opacity 0.8s cubic-bezier(0.165, 0.84, 0.44, 1),
              transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: transform, opacity;
}

.tech-anim-right.is-revealed {
  opacity: 1;
  transform: translateX(0);
}

/* 3. Slide-Up pre sklenený panel a jeho vnútro */
.tech-anim-up {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.8s cubic-bezier(0.165, 0.84, 0.44, 1),
              transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: transform, opacity;
}

.tech-anim-up.is-revealed {
  opacity: 1;
  transform: translateY(0);
}

/* ==========================================
   ANIMÁCIE PRE KONTAKTNÚ SEKCIU A FORMULÁR
   ========================================== */

/* 1. Kaskádový Fade-Up pre políčka formulára */
.contact-anim-up {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.6s cubic-bezier(0.165, 0.84, 0.44, 1),
              transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: transform, opacity;
}

.contact-anim-up.is-revealed {
  opacity: 1;
  transform: translateY(0);
}

/* 2. Slide-In z pravej strany pre Mapu */
.contact-anim-side {
  opacity: 0;
  transform: translateX(60px);
  transition: opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1),
              transform 1s cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: transform, opacity;
}

.contact-anim-side.is-revealed {
  opacity: 1;
  transform: translateX(0);
}

/* 3. Pop-Up Bounce pre plávajúcu kartičku na mape */
.contact-anim-pop {
  opacity: 0;
  transform: scale(0.7);
  transition: opacity 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275),
              transform 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  will-change: transform, opacity;
}

.contact-anim-pop.is-revealed {
  opacity: 1;
  transform: scale(1);
}

/* ==========================================
   ANIMÁCIE PRE SEKCIU VÝSLEDKY (Presné a Dynamické)
   ========================================== */

/* 1. Animácia pre NADPIS SEKCIE (Fade-Up) */
.results-header-anim-wrap {
  opacity: 0;
  transform: translateY(30px); /* Začne mierne posunutý dole */
  transition: opacity 1.0s cubic-bezier(0.215, 0.61, 0.355, 1),
              transform 1.0s cubic-bezier(0.215, 0.61, 0.355, 1);
  will-change: transform, opacity;
}

.results-header-anim-wrap.is-revealed {
  opacity: 1;
  transform: translateY(0); /* Rozbalí sa do plnej veľkosti */
}


/* 2. Kaskádová animácia pre KARTY VÝSLEDKOV (Fast Fade-Up) */
.result-card-anim-wrap {
  opacity: 0;
  transform: translateY(40px); /* Vynára sa zospodu */
  transition: opacity 0.7s cubic-bezier(0.165, 0.84, 0.44, 1), /* Rýchle zakrivenie pohybu */
              transform 0.7s cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: transform, opacity;
}

.result-card-anim-wrap.is-revealed {
  opacity: 1;
  transform: translateY(0);
}

/* 3. Animácia pre DISCLAIMER (Slow Fade-In) */
.results-disclaimer-anim-wrap {
  opacity: 0;
  transition: opacity 1.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  will-change: opacity;
}

.results-disclaimer-anim-wrap.is-revealed {
  opacity: 1;
}

/* ==========================================
   ANIMÁCIE PRE REFERENCIE (Dôveryhodné a Mäkké)
   ========================================== */

/* 1. Rozsvietenie a zväčšenie nadpisu a ratingu (Fade + Scale) */
.testim-header-anim-wrap {
  opacity: 0;
  transform: scale(0.95); /* Začne jemne zmenšený */
  transition: opacity 1.2s cubic-bezier(0.23, 1, 0.32, 1),
              transform 1.2s cubic-bezier(0.23, 1, 0.32, 1);
  will-change: transform, opacity;
}

.testim-header-anim-wrap.is-revealed {
  opacity: 1;
  transform: scale(1);
}

/* 2. Luxusné vynorenie slidera zospodu (Mäkký Fade-Up) */
.testim-holder-anim-wrap {
  opacity: 0;
  transform: translateY(50px); /* Dlhší dojazd pre pocit luxusu */
  transition: opacity 1.5s cubic-bezier(0.19, 1, 0.22, 1), /* Mimoriadne plynulá krivka */
              transform 1.5s cubic-bezier(0.19, 1, 0.22, 1);
  will-change: transform, opacity;
}

.testim-holder-anim-wrap.is-revealed {
  opacity: 1;
  transform: translateY(0);
}

/* --- ESTAVIO VIDEO MODAL STYLES --- */
.estavio-modal {
  display: none; /* V základe je okno skryté */
  position: fixed;
  z-index: 99999; /* Aby bolo nad všetkým na webe */
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.9); /* Tmavé pozadie */
  align-items: center;
  justify-content: center;
}

.estavio-modal-content {
  width: 100%;
  max-width: 900px; /* Maximálna šírka videa */
  padding: 20px;
}

.estavio-modal-content video {
  width: 100%;
  height: auto;
  max-height: 85vh; /* Aby video nevybehlo z obrazovky */
  border-radius: 12px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.5);
  outline: none;
}

.estavio-close {
  position: absolute;
  top: 20px;
  right: 35px;
  color: #f1f1f1;
  font-size: 40px;
  font-weight: bold;
  cursor: pointer;
  transition: 0.3s;
  z-index: 100000;
}

.estavio-close:hover,
.estavio-close:focus {
  color: #ff0055; /* Môžeš zmeniť na tvoju firemnú farbu Estavio */
  text-decoration: none;
}

/* ==========================================
   OPRAVA PRE VERTIKÁLNE VIDEO V PORTFÓLIU
   ========================================== */

   .compact-video-wrapper {
    position: relative !important;
    width: 100% !important;
    height: 400px !important; /* Prispôsob si výšku, aby lícovala s kartou naľavo */
    padding: 0 !important; /* Zruší horizontálne nastavenia šablóny */
    background: radial-gradient(circle, #1a1a1a 0%, #050505 100%) !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    overflow: hidden !important;
    border-radius: 12px !important;
}

/* Samotné vertikálne video */
.elite-vertical-video {
    position: relative !important;
    height: 90% !important; /* Bude mať jemný čierny okraj zhora aj zdola */
    width: auto !important; /* Šírka sa prispôsobí automaticky k výške */
    aspect-ratio: 9/16 !important; /* Zabezpečí čistý vertikálny formát */
    object-fit: cover !important;
    border-radius: 10px !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.8) !important;
    top: auto !important;
    left: auto !important;
    transform: none !important;
}

/* Hover efekty pre ikonu a video */
.elite-compact-video-card:hover .elite-vertical-video {
    transform: scale(1.03) !important;
}

.compact-video-wrapper .video-overlay i {
    color: rgba(255, 255, 255, 0.7);
    font-size: 3rem;
    text-shadow: 0 0 20px #FE002E;
    transition: transform 0.3s ease, color 0.3s ease;
}

.elite-compact-video-card:hover .video-overlay i {
    transform: scale(1.1);
    color: #FE002E;
}

/* Responzivita pre mobil */
@media (max-width: 768px) {
    .compact-video-wrapper {
        height: 350px !important; /* Na mobile trochu menšie */
    }
}

