/* =======================================================================
   VARIABLES & ROOT
   ======================================================================= */
:root {
  --h1-font-size: 58px;
  --h2-font-size: 45px;
  --h3-font-size: 35px;
  --h4-font-size: 30px;
  --h5-font-size: 24px;
  --h6-font-size: 20px;
}

/* =======================================================================
   RESET
   ======================================================================= */
*, *::before, *::after { box-sizing: border-box; }

/* =======================================================================
   TYPOGRAPHY
   ======================================================================= */
:where(h1, h2, h3, h4) { font-weight: 600; color: var(--color-primary); }
h1 { font-size: var(--h1-font-size); }
h2 { font-size: var(--h2-font-size); }
h3 { font-size: var(--h3-font-size); }
h4 { font-size: var(--h4-font-size); }
h5 { font-size: var(--h5-font-size); }
h6 { font-size: var(--h6-font-size); }

.section-heading h2,
.section-heading .h2 { font-size: var(--h2-font-size); font-weight: 600; }

a { font-weight: 600; color: var(--color-primary); }

/* =======================================================================
   SPACING UTILITIES
   ======================================================================= */
/* clear floats */
.margin-bottom-5,.margin-bottom-10,.margin-bottom-15,.margin-bottom-20,.margin-bottom-25,
.margin-bottom-30,.margin-bottom-35,.margin-bottom-40,.margin-bottom-45,.margin-bottom-50,
.margin-bottom-55,.margin-bottom-60,.margin-bottom-70,.margin-bottom-80,.margin-bottom-90,
.margin-bottom-100,.margin-top-5,.margin-top-10,.margin-top-15,.margin-top-20,.margin-top-25,
.margin-top-30,.margin-top-35,.margin-top-40,.margin-top-45,.margin-top-50,.margin-top-55,
.margin-top-60,.margin-top-70,.margin-top-80,.margin-top-90,.margin-top-100 { clear: both; }

/* mb (px) */
.margin-bottom-5{margin-bottom:5px}.margin-bottom-10{margin-bottom:10px}.margin-bottom-15{margin-bottom:15px}
.margin-bottom-20{margin-bottom:20px}.margin-bottom-25{margin-bottom:25px}.margin-bottom-30{margin-bottom:30px}
.margin-bottom-35{margin-bottom:35px}.margin-bottom-40{margin-bottom:40px}.margin-bottom-45{margin-bottom:45px}
.margin-bottom-50{margin-bottom:50px}.margin-bottom-55{margin-bottom:55px}.margin-bottom-60{margin-bottom:60px}
.margin-bottom-70{margin-bottom:70px}.margin-bottom-80{margin-bottom:80px}.margin-bottom-90{margin-bottom:90px}
.margin-bottom-100{margin-bottom:100px}

/* mt (px) */
.margin-top-5{margin-top:5px}.margin-top-10{margin-top:10px}.margin-top-15{margin-top:15px}
.margin-top-20{margin-top:20px}.margin-top-25{margin-top:25px}.margin-top-30{margin-top:30px}
.margin-top-35{margin-top:35px}.margin-top-40{margin-top:40px}.margin-top-45{margin-top:45px}
.margin-top-50{margin-top:50px}.margin-top-55{margin-top:55px}.margin-top-60{margin-top:60px}
.margin-top-70{margin-top:70px}.margin-top-80{margin-top:80px}.margin-top-90{margin-top:90px}
.margin-top-100{margin-top:100px}

/* ml/mr (px) */
.margin-left-5{margin-left:5px}.margin-left-10{margin-left:10px}
.margin-right-5{margin-right:5px}.margin-right-10{margin-right:10px}.margin-right-20{margin-right:20px}

/* padding utils */
.padding-sm{padding:40px}.padding-top-5{padding-top:5px}.padding-left-5{padding-left:5px}

/* rem scale */
.mt-1{margin-top:1rem!important}.mb-1{margin-bottom:1rem!important}
.mt-2{margin-top:2rem!important}.mb-2{margin-bottom:2rem!important}
.mt-3{margin-top:3rem!important}.mb-3{margin-bottom:3rem!important}
.mt-4{margin-top:4rem!important}.mb-4{margin-bottom:4rem!important}
.mt-5{margin-top:5rem!important}.mb-5{margin-bottom:5rem!important}
.mt-6{margin-top:6rem!important}.mb-6{margin-bottom:6rem!important}

/* =======================================================================
   MENU (header, nav, dropdown)
   ======================================================================= */
/* Container header */
#t4-header .container { width:96%; max-width:100%; padding:0; }

/* Header base */
#t4-header{
  background:linear-gradient(to bottom, rgb(0 0 0 / 50%) 0%, rgb(0 0 0 / 0%) 100%);
  z-index:999; transition:all .3s ease;
}
.not-at-top #t4-header{ background:var(--color-white)!important; box-shadow:0 0 10px rgb(0 0 0 / 50%); position:fixed!important; width:100%;}
.layout-bitstar #t4-header{ position:fixed!important; top:0!important; z-index:900; width:100%; border:none;}
.not-at-top #t4-header.t4-sticky{ box-shadow:0 5px 10px rgb(0 0 0 / 20%);}

/* Brand / logo */
.navbar-brand{position:absolute;}
.navbar-brand a{ color:var(--body-text-color); height:60px; display:block; }
.logo-image>a>img,.navbar-brand.logo-control img.logo-img{ max-width:none; max-height:100%; width:auto; height:100%; image-rendering:-webkit-optimize-contrast; }
.not-at-top .navbar-brand a{ color:var(--body-text-color); }

/* Navbar */
.t4-megamenu .navbar-nav{ align-items:center; }
.t4-navbar .nav-item{ position:relative; margin-left:1px; background:transparent; }

/* Link menu (base) */
.t4-megamenu .navbar-nav>li>a,
.t4-megamenu .navbar-nav>li>.nav-link{
  display:flex; align-items:flex-start; align-content:flex-start;
  height:80px; padding:20px .8rem; margin:0; line-height:30px; font-size:18px; font-weight:600;
  letter-spacing:.001em; color:var(--color-light); text-shadow:1px 1px 3px rgb(0 0 0 / 50%);
  border-top:5px solid transparent; border-bottom:0 solid transparent;
}

/* Link (not-at-top) */
.not-at-top .t4-megamenu .navbar-nav>li>a,
.not-at-top .t4-megamenu .navbar-nav>li>.nav-link{
  color:var(--color-dark); text-shadow:none; border-top:5px solid transparent; border-bottom:5px solid transparent;
}

/* Stati base */
.t4-megamenu .navbar-nav>li.active>a,
.t4-megamenu .navbar-nav>li.active>.nav-link,
.t4-megamenu .navbar-nav>li>a:hover,
.t4-megamenu .navbar-nav>li>a:focus,
.t4-megamenu .navbar-nav>li>a:active,
.t4-megamenu .navbar-nav>li>.nav-link:hover,
.t4-megamenu .navbar-nav>li>.nav-link:focus,
.t4-megamenu .navbar-nav>li>.nav-link:active,
.t4-megamenu .navbar-nav>li:last-child>a:hover,
.t4-megamenu .navbar-nav>li:last-child>.nav-link:hover{
  box-shadow:none; border-color:var(--color-primary);
  background:linear-gradient(to bottom, rgb(0 0 0 / 30%) 0%, rgb(0 0 0 / 0%) 100%);
  transition:all .1s ease; display:flex; align-items:flex-start; align-content:flex-start; border-bottom:0 solid rgb(0 0 0 / 5%);
}

/* Stati not-at-top */
.not-at-top .t4-megamenu .navbar-nav>li.active>a,
.not-at-top .t4-megamenu .navbar-nav>li.active>.nav-link,
.not-at-top .t4-megamenu .navbar-nav>li>a:hover,
.not-at-top .t4-megamenu .navbar-nav>li>a:focus,
.not-at-top .t4-megamenu .navbar-nav>li>a:active,
.not-at-top .t4-megamenu .navbar-nav>li>.nav-link:hover,
.not-at-top .t4-megamenu .navbar-nav>li>.nav-link:focus,
.not-at-top .t4-megamenu .navbar-nav>li>.nav-link:active,
.not-at-top .t4-megamenu .navbar-nav>li:last-child>a:hover,
.t4-megamenu .navbar-nav>li:last-child>.nav-link:hover{
  background:rgb(0 0 0 / 8%); color:var(--color-dark); border-bottom:5px solid var(--color-primary); border-top:5px solid transparent;
}

/* Ultimo elemento (pill) */
.t4-megamenu .navbar-nav>li:last-child>a,
.t4-megamenu .navbar-nav>li:last-child>.nav-link{ color:var(--color-light)!important; background:transparent; border:2px solid var(--color-light)!important; }
.not-at-top .t4-megamenu .navbar-nav>li:last-child>.nav-link{ color:var(--color-primary)!important; border:2px solid var(--color-primary)!important; }

/* CTA Booking */
.t4-megamenu .navbar-nav>li>a.booking{
  background:var(--color-primary); color:#fff; border:none!important; border-radius:20px;
  padding:0 20px!important; line-height:36px!important; height:auto; text-shadow:none;
}
.t4-megamenu .navbar-nav>li>a.booking:hover,
.t4-megamenu .navbar-nav>li>a.booking:focus{ background:var(--color-light)!important; color:var(--color-dark)!important; }
.not-at-top .t4-megamenu .navbar-nav>li>a.booking:hover,
.t4-megamenu .navbar-nav>li>a.booking:hover,
.t4-megamenu .navbar-nav>li>a.booking:focus{
  background:var(--color-secondary)!important; color:var(--color-light)!important; line-height:40px;
  border:2px solid var(--color-secondary)!important;
}

/* Stato show */
.t4-megamenu .navbar-nav>li.show>a,
.t4-megamenu .navbar-nav>li.show>.nav-link{ color:var(--mainnav-link-hover-color); border-top:5px solid var(--color-primary); }
.not-at-top .t4-megamenu .navbar-nav>li.show>a,
.not-at-top .t4-megamenu .navbar-nav>li.show>.nav-link{
  color:var(--color-dark); background:rgb(0 0 0 / 5%); border-bottom:5px solid var(--color-primary); border-top:5px solid transparent;
}

/* Caret (lasciato invariato) */
.t4-megamenu .nav>.dropdown>.dropdown-toggle .item-caret{ border-top:0 solid var(--color-light)!important; }
.t4-megamenu .nav>.dropdown>.dropdown-toggle .item-caret{
  border-top:4px solid var(--color-light); border-left:4px solid transparent; border-right:4px solid transparent;
  width:10px; margin:5px 0 0 4px;
}
.t4-megamenu .dropdown-toggle .item-caret::before{ border-top:4px solid var(--color-light); }
.not-at-top .t4-megamenu .dropdown-toggle .item-caret::before{ border-top:4px solid var(--color-dark); }

/* Dropdown */
.t4-megamenu .dropdown-menu{ margin-top:5%; padding:0; border-radius:0; box-shadow:none; background:transparent; }
.t4-megamenu .dropdown-menu-inner{
  background:#fff; color:var(--mainnav-text-color); padding:10px; border-radius:10px;
  border:1px solid #00000026; box-shadow:0 6px 12px rgb(0 0 0 / 20%);
}
.t4-megamenu .dropdown-menu li>a,
.t4-megamenu .dropdown-menu li>.nav-link,
.t4-megamenu .dropdown-menu li .dropdown-item{
  padding:8px 20px; font-size:14px; font-weight:600; color:var(--color-dark); border-bottom:1px solid #ddd;
}
.t4-megamenu .dropdown-menu li>a:hover,
.t4-megamenu .dropdown-menu li>a:focus,
.t4-megamenu .dropdown-menu li>a:active,
.t4-megamenu .dropdown-menu li>.nav-link:hover,
.t4-megamenu .dropdown-menu li>.nav-link:focus,
.t4-megamenu .dropdown-menu li>.nav-link:active,
.t4-megamenu .dropdown-menu li .dropdown-item:hover,
.t4-megamenu .dropdown-menu li .dropdown-item:focus,
.t4-megamenu .dropdown-menu li .dropdown-item:active{
  color:var(--mainnav-link-color); background:rgb(0 0 0 / 7%);
}
.t4-megamenu .dropdown-menu li.active>a{ color:var(--mainnav-link-color); background:rgb(0 0 0 / 7%); }
.t4-megamenu.animate.slide .dropdown .dropdown-menu>div{ min-width:300px; }
.t4-megamenu.animate.slide .dropdown>.dropdown-menu{ padding:0; z-index:-11; margin-top:35%; }
.t4-megamenu.animate.slide .dropdown.show.animating>.dropdown-menu{ margin-top:0; border-top:10px solid transparent; z-index:1; }

/* Lang box / flags */
.lang-box{ position:relative; margin:auto; z-index:999; top:10px; width:96%; opacity:1; }
.lang{ position:absolute; right:30px; top:15px; z-index:99; }
.lang a{ padding:0; line-height:1; margin-right:4px; }
.lang li{ display:inline-block; }
.lang img{ background:transparent; border-radius:3px; height:20px; box-shadow:none; }
.lang img:hover{ opacity:1; }

/* Numero verde */
.numero-verde{ position:relative; display:block; height:50px; padding-left:46px; margin:0; font-weight:700; color:#4CAF50; }
.numero-verde:hover,.numero-verde:focus{ text-decoration:none; color:#36963a; }
.numero-verde i{ position:absolute; left:0; font-size:46px; }
.numero-verde span{ position:absolute; left:54px; top:30px; line-height:1; font-size:16px; }
.numero-verde p{ margin:0; padding:0; line-height:1; font-size:30px; }

/* Offcanvas header */
.t4-offcanvas .t4-off-canvas-header{ background-color:var(--color-light); }
.t4-offcanvas .t4-off-canvas-header .close span{ line-height:32px; font-size:26px; font-family:Arial; }
.t4-offcanvas .t4-off-canvas-header a img{ max-height:25px; outline:none; image-rendering:-webkit-optimize-contrast; }

/* Utility UK */
.uk-scope .uk-inline-clip{ overflow:hidden; border-radius:10px; }

/* =======================================================================
   COMPONENTS
   ======================================================================= */
/* Tabs */
.uk-scope .uk-tab>.uk-active>a{ color:#333; border-color:var(--color-primary)!important; border-width:3px; }

/* UIkit headings (scope) */
.uk-scope .uk-h1,.uk-scope .uk-h2,.uk-scope .uk-h3,.uk-scope .uk-h4,.uk-scope .uk-h5,.uk-scope .uk-h6,
.uk-scope .uk-heading-2xlarge,.uk-scope .uk-heading-large,.uk-scope .uk-heading-medium,
.uk-scope .uk-heading-small,.uk-scope .uk-heading-xlarge,
.uk-scope h1,.uk-scope h2,.uk-scope h3,.uk-scope h4,.uk-scope h5,.uk-scope h6{
  font-family:var(--heading-font-family)!important; font-weight:bold!important;
}
.uk-scope .uk-h3,.uk-scope h3{ margin:0!important; text-shadow:none; }

/* UK grid (scope) */
.uk-scope .uk-grid{ display:flex; flex-wrap:wrap; justify-content:center; margin:0; padding:0; list-style:none; }

/* =======================================================================
   HEADER VIDEO
   ======================================================================= */
.header-video-wrapper{ display:flex; align-items:center; position:relative; overflow:hidden; z-index:9; min-height:100vh; margin:0 auto; }
.vid-text-desktop{position:absolute;top: 0;/* left:50%; */transform:translate(-50%,-50%);z-index:99;font-size:3em;text-shadow:1px 1px 5px hsl(0 0% 0% / 30%);width: 80%;height: 100%;display: flex;flex-direction: column;align-content: center;justify-content: center;align-items: center;flex-wrap: nowrap;/* margin: auto; */}
.vid-text-desktop p{ color:#fff; font-weight:600; line-height:1.1; text-align:center!important; }
.vid-text-desktop small{font-size:2rem;font-weight:700;opacity:.8;text-align: center;}
.video-background{position:fixed;inset:0;z-index:0;background:var(--color-primary);}
.vidtop-overlay{ position:absolute; inset:0; width:100%; height:100%; opacity:.2; background-color:var(--color-dark); }
.vid-info{position:absolute;top:50%;left:50%;color:#fff;text-align:center;text-shadow:3px 3px 6px rgb(0 0 0 / 30%);transform:translate(-50%,-50%);filter: brightness(2);}
.vid-info img{ width:40vw; max-width:550px; opacity:.25; }
.vid-info a{ display:block; margin:1rem auto; color:#fff; text-align:center; text-decoration:none; background:rgb(0 0 0 / 50%); transition:background .6s; }
#vidtop-content {display: flex;justify-content: center;}

/* cover video */

  .video-background {/* position: relative; *//* overflow: hidden; */}
  .video-foreground { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }



/* =======================================================================
   PALETTES / BACKGROUNDS
   ======================================================================= */
.bg-primary{ background-color:var(--color-primary)!important; filter:saturate(1.5); }
.bg-secondary{ background-color:var(--color-secondary)!important; }
.bg-light{ background-color:rgb(255 255 255 / 25%)!important; }
.t4-palette-bottom_a{ background-color:var(--color-secondary); color:#fff; }
.t4-palette-dark{ background-color:var(--color-secondary); color:#ffffffb8; }
.t4-palette-dark a:hover{ color:#fff; }
.t4-palette-blue{ background-color:var(--color-primary); }

/* =======================================================================
   PARALLAX / PANELS
   ======================================================================= */
.t4-parallax .uk-panel>:last-child{ border-radius:0!important; overflow:hidden; }
.t4-section{ padding:0; transition:all .3s ease; }
#t4-js{ height:0; }
.t4-parallax-call iframe{ margin-bottom:-10px; }

.block-parallax,.block-parallax21{
  position:relative; top:0; left:0; display:block; overflow:hidden; height:100%; padding:180px 0;
  text-align:center; color:#fff; background:50% 50% / cover no-repeat fixed; font-size:18px; font-weight:500;
}
.block-parallax h2{ color:#fff; font-size:38px; font-weight:500; }
.block-overlay{ background:rgb(0 0 0 / 20%); padding:6rem 0; }

.block-parallax21{ background:var(--mainnav-link-active-color); }
.block-parallax21-cont{ color:#fff; z-index:9; }
.block-parallax21 h2{ color:#fff; font-size:3em; z-index:9; }
.block-parallax21 img{
  position:absolute; top:50%; left:50%; min-width:100%; min-height:100%; width:auto; object-fit:cover;
  transform:translate(-50%,-50%); z-index:0;
}
.block-overlay-21{ position:absolute; top:0; z-index:8; display:block; width:100%; height:100%; background:rgb(0 0 0 / 40%); }
.uk-scope .uk-overlay-primary{ background:rgba(34,34,34,.2)!important; }

/* =======================================================================
   BLOG / NEWS / CARDS (generic)
   ======================================================================= */
p.readmore .btn,
p.readmore .blog-list .item-readmore a,
.blog-list .item-readmore p.readmore a{ background-color:var(--color-primary); }
p.readmore .btn:hover,
p.readmore .blog-list .item-readmore a:hover,
.blog-list .item-readmore p.readmore a:hover,
p.readmore .btn:active,
p.readmore .blog-list .item-readmore a:active,
.blog-list .item-readmore p.readmore a:active,
p.readmore .btn:focus,
p.readmore .blog-list .item-readmore a:focus,
.blog-list .item-readmore p.readmore a:focus{ background-color:var(--color-secondary); color:#fff; }

.item-image img{ border-radius:10px; }

.blog-list .item-image img{
  position:absolute; top:50%; left:50%;
  min-width:100%; min-height:100%; width:auto; object-fit:cover;
  transform:translate(-50%,-50%) scale(1);
  transition:opacity .3s ease-out, transform .3s ease-out, filter .3s ease-out;
}
.shadow-sm,.categories-list .com-content-categories__items .com-content-categories__item img{
  box-shadow:0 0.125rem 0.5rem rgb(0 0 0 / 20%)!important;
}

.home-frame{ background:#f5f5f5; margin:0; }
.text-frame{ padding:40px; }
.text-frame ul{ padding-bottom:15px; }
.text-frame li{ font-size:16px; }
.text-frame h3{ margin:0 0 20px; font-size:28px; line-height:1; }
.text-frame p{ margin:0 0 20px; font-size:18px; }
.text-frame a.button,.button{ background:var(--color-primary); color:#fff; font-weight:600; font-size:18px; line-height:1; padding:10px 20px; text-shadow:none; }
.text-frame a.button:hover,.button:hover,.btn-main:hover{ background:var(--color-secondary); color:#fff; text-decoration:none; }
.image-frame{ display:block; width:100%; padding-top:80%; background-position:center; background-size:cover; border:1px solid #ddd; }

.home-item{
  position:relative; display:block; overflow:hidden; margin:0 0 30px; padding:0 0 20px; text-align:center;
  background:#fff; border-radius:15px; box-shadow:0 0 10px rgb(0 0 0 / 20%);
}
.home-item img{ display:block; max-width:100%; height:auto; }
.home-item span{
  position:absolute; top:20px; right:-10px; padding:8px 30px 8px 10px; color:#fff; line-height:1; font-size:16px;
  background:#4caf50; border-radius:8px; box-shadow:1px 1px 5px #0000003d;
}
.home-item:hover{
  color:#fff; text-decoration:none; transform:scale(1.05); background:#f5f5f5; box-shadow:0 0 20px rgb(0 0 0 / 30%); z-index:10;
}
.home-item h4{ margin:30px 0 10px; color:var(--color-primary); font-size:18px; font-weight:700; }
.home-item p{ color:#444; font-weight:400; padding:0 15px; }
.home-item:hover h4{ color:var(--color-secondary); }

/* Video ratio */
.video-yt{ position:relative; width:100%!important; height:auto!important; padding-top:25px; padding-bottom:56.25%; border:1px solid #ddd; }
.video-yt iframe{ position:absolute; inset:0; width:100%; height:100%; }

/* =======================================================================
   BUTTONS / LINKS / TRANSITIONS
   ======================================================================= */
.btn,.blog-list .item-readmore a{
  height:auto; line-height:40px!important; padding:0 22px!important; border:none!important; border-radius:25px;
  color:#fff; font-weight:700; text-decoration:none!important;
}
.btn.btn-secondary,.btn.btn-secondary:hover{ color:var(--color-light); }
.transition, a, button{ transition:all .3s ease; }

/* Shop button */
.social-list-side-top li a.shop-btn{
  position:relative; top:0; margin:0; padding:0 16px!important; line-height:38px!important; color:var(--color-primary)!important;
  font-weight:700; font-size:17px!important; text-shadow:none; background:#fff; border:none!important; border-radius:25px;
  box-shadow:1px 1px 5px rgb(0 0 0 / 50%);
}

/* Offcanvas toggle */
.t4-offcanvas-toggle{ color:var(--color-light); padding:0!important; margin:0 0 -5px; }
.not-at-top .t4-offcanvas-toggle{ color:var(--color-primary); }

/* Breadcrumbs */
.t4-section.t4-breadcrumbs{ border-top:0 solid #e9ecef; }

/* RevSlider */
.tp-caption.title-big,.title-big,.rev_slider .tp-caption,.rev_slider .caption,.tp-caption.large_text,.large_text{ text-shadow:none!important; }
.tp-caption{ font-family:var(--heading-font-family)!important; }

/* =======================================================================
   TEXT COLORS
   ======================================================================= */
.text-primary{color:var(--color-primary)!important}.text-secondary{color:var(--color-secondary)!important}
.text-success{color:var(--color-success)!important}.text-info{color:var(--color-info)!important}
.text-warning{color:var(--color-warning)!important}.text-danger{color:var(--color-danger)!important}
.text-light{color:var(--color-light)!important}.text-dark{color:var(--color-dark)!important}

/* =======================================================================
   SLIDESHOW / HEADER PIC 2
   ======================================================================= */
.t4-slideshow .uk-slideshow-items.uk-transition-active{ height:100vh; }
.full-width-art .t4-slideshow{ margin-top:-115px; }
.t4-slideshow{ margin-top:-115px; }
.home .t4-slideshow{ margin-top:0; }

.header-pic2{ position:relative; top:0; left:0; display:block; height:100%; padding:180px 0 130px; text-align:center; }
.header-pic2 h2{
  position:absolute; z-index:998; width:100%; margin:0; padding:0; color:#fff; font-size:3em; font-weight:500; line-height:0;
  letter-spacing:1px; text-shadow:1px 1px 5px rgb(0 0 0 / 70%); border:none;
}
.header-pic2 img{
  position:absolute; top:50%; left:50%; min-width:100%; min-height:100%; width:auto; object-fit:cover;
  transform:translate(-50%,-50%); filter:grayscale(1);
}

/* Port gallery badge */
.port-gal .uk-h3{
  display:block; margin:0!important; padding:7px 10px; color:var(--mainnav-link-color)!important; font-size:16px!important; font-weight:600!important;
  line-height:1!important; letter-spacing:1px; background:var(--mainnav-link-active-color); border-radius:5px; box-shadow:0 0 5px rgb(0 0 0 / 50%)!important;
}

/* Small HR */
.small-hr{ position:relative; left:50%; margin:80px 0 80px -50px; width:100px; height:5px!important; background-color:var(--color-primary); border:none; }

/* Scoped badges */
.uk-scope span img{ position:absolute; top:-20px; right:-20px; }

/* Parallax helpers */
.para-content{ height:500px; }
.paralax-image{ position:relative; overflow:hidden; height:200px; }
.paralax-image img{ position:absolute; height:100vh; min-width:100%; }

/* =======================================================================
   FOOTER
   ======================================================================= */
.copy{ text-align:center; margin:30px 0 0; font-size:13px; line-height:1.7; }
.t4-footer a,.t4-footnav a{ color:var(--color-light); }
.t4-footer a:hover,.t4-footnav a:hover{ color:var(--color-light); opacity:.7; }
.t4-footer{ background:var(--color-primary); color:#fff; padding:40px 0 80px; font-size:14px; border-bottom:10px solid var(--color-secondary); }
.social-bot{ margin:30px 0 0; text-align:center; }
.social-bot a{ margin:5px 10px; color:var(--mainnav-link-active-color)!important; font-size:24px; line-height:1; opacity:1; text-shadow:1px 1px 5px #000; }
.social-bot a:hover{ opacity:.5; }
.social-bot img{ display:block; margin:auto; max-width:250px; }
.uk-scope .uk-slider-container{ overflow:hidden; }
.uk-scope .uk-panel>:last-child{ border-radius:10px; overflow:hidden; }
.uk-scope .uk-panel a{ text-shadow:1px 1px 0 #000; }

/* Footer nav */
.t4-footnav .moduletable{ margin:1rem auto; padding:0; border:none; border-radius:.25rem; }
.t4-footnav .navbar-nav a{ display:flex; color:var(--footer-link-color); font-weight:600; font-size:14px; background:transparent; }
.t4-footnav .navbar-nav a:hover{ color:var(--footer-link-hover-color); margin-left:10px; }
.t4-footnav .dropdown-item{ white-space:inherit; }
.t4-footnav .t4-module .module-title span{font-size:1.5em;font-weight:600!important;text-transform: none;}

.social-list li a {
    background-color: var(--color-secondary);
    color: var(--color-light);
}


/* =======================================================================
   FORMS
   ======================================================================= */
.form-control{
  min-height:50px; padding:15px; color:#111; font-size:16px; line-height:1.5;
  background-color:rgb(0 0 0 / 7%); border:none; border-radius:.3rem;
}
.formControls{ margin:0 0 25px; }
.control-label{ text-align:right!important; font-weight:600; }
.formRequired{ position:relative; top:-5px; color:var(--color-danger); font-size:12px; line-height:1; }
.rsform-submit-button{ background:var(--mainnav-link-active-color); color:#fff; font-size:18px; font-weight:600; line-height:1; padding:10px 20px; text-shadow:none; border-radius:20px; }
.rsform-submit-button:hover{ background:var(--body-link-color); color:#fff; text-decoration:none; }

.grey-box {background: rgb(0 0 0 / 7%);padding: 30px 40px;/* border: 1px solid #ddd; */border-radius: 0.3rem;}
.grey-box h3 {margin: 0 0 30px;}

/* =======================================================================
   PAGINATION
   ======================================================================= */
.page-item.active .page-link{ z-index:3; color:var(--color-light); background-color:var(--color-primary); border-color:var(--color-secondary); }
.page-link{ color:var(--color-primary); }
.page-link:hover{ z-index:2; color:var(--color-primary); background-color:#e9ecef; border-color:#dee2e6; }

/* =======================================================================
   NAV / SUBNAV / SOCIAL SIDE
   ======================================================================= */
.nav-link{ font-size:1rem; }
.uk-scope .uk-subnav>.uk-active>a,
.uk-scope .uk-subnav>*>a:focus,
.uk-scope .uk-subnav>*>a:hover{ color:var(--mainnav-link-color)!important; }

.social-list-side-top{ display:flex; align-items:center; margin:0 0 0 10px; padding:0; list-style:none; }
.social-list-side-top li{ position:relative; display:inline-block; padding-left:.35rem; }
.social-list-side-top li a{
  display:block; color:var(--mainnav-link-active-color); font-size:26px; line-height:80px; opacity:1; transition:all .2s ease-in-out;
}
.social-list-side-top li a:hover,.social-list li a:focus,.social-list li a:active{
  color:var(--mainnav-link-active-color); opacity:.8; transform:scale(1.1);
}

/* =======================================================================
   MISC
   ======================================================================= */
.myvid{
  position:fixed; right:0; bottom:-20%; z-index:-1; width:auto; height:auto; min-width:100%; min-height:100%;
  margin:0 auto; transform:scale(1.1);
}

/* =======================================================================
   SERVIZI
   ======================================================================= */
.servizi-hotel{
  position:relative; display:flex; flex-direction:column; flex-wrap:nowrap; justify-content:flex-start; align-items:center; align-content:center;
  width:100%; height:auto; margin:0 0 30px; padding:0;
}
.serv-icon{ display:flex; align-items:center; align-content:center; text-align:center; margin:0 0 10px; }
.serv-icon span{ font-size:60px; }
.serv-icon i{ width:60px; font-size:40px; line-height:40px; color:var(--color-dark); }
.serv-txt{ box-sizing:border-box; text-align:center; }
.serv-txt h4{ margin:0!important; font-size:25px!important; font-weight:500; color:var(--body-link-dark); }
.serv-txt p{ width:100%; margin:0!important; font-size:16px; line-height:1.3; color:#999; }

/* =======================================================================
   NAVBAR TWEAK
   ======================================================================= */
ul.navbar-nav{ line-height:2; }

/* =======================================================================
   TIMELINE
   ======================================================================= */
.timeline{ position:relative; width:100%; max-width:1140px; margin:0 auto; padding:15px 0; }
.timeline::after{ content:''; position:absolute; top:0; bottom:0; left:50%; width:2px; margin-left:-1px; background:#006E51; }
.t-container{ position:relative; width:50%; padding:15px 30px; background:inherit; }
.t-container.t-left{ left:0; } .t-container.t-right{ left:50%; }
.t-container::after{
  content:''; position:absolute; top:calc(50% - 8px); right:-8px; width:16px; height:16px; background:#fff;
  border:2px solid var(--color-primary); border-radius:16px; z-index:1;
}
.t-container.t-right::after{ left:-8px; right:auto; }
.t-container::before{ content:''; position:absolute; top:calc(50% - 1px); right:8px; width:50px; height:2px; background:#006E51; z-index:1; }
.t-container.t-right::before{ left:8px; right:auto; }
.t-container .date{
  position:absolute; top:calc(50% - 8px); z-index:1; display:inline-block; font-size:14px; font-weight:700; letter-spacing:1px;
  color:var(--color-primary); text-transform:uppercase; text-align:center;
}
.t-container.t-left .date{ right:-75px; } .t-container.t-right .date{ left:-75px; }
.t-container .icon{
  position:absolute; top:calc(50% - 20px); z-index:1; width:40px; height:40px; padding:9px 0; font-size:18px; text-align:center;
  color:var(--color-primary); background:var(--mainnav-link-active-color); border:2px solid var(--color-primary); border-radius:40px;
}
.t-container.t-left .icon{ right:56px; } .t-container.t-right .icon{ left:56px; }
.t-container .t-content{ position:relative; padding:30px 90px 30px 30px; background:var(--mainnav-link-active-color); border-radius:0 500px 500px 0; }
.t-container.t-right .t-content{ padding:30px 30px 30px 90px; border-radius:500px 0 0 500px; }
.t-container .t-content h2{ margin:0 0 10px; font-size:18px; color:var(--color-primary); }
.t-container .t-content p{ margin:0; font-size:16px; line-height:22px; color:#000; }

/* =======================================================================
   TESTO / INTRO
   ======================================================================= */
.footer-4 p{ color:var(--color-dark); }
p,.item-intro{ text-align:justify!important; }
.item-intro{ margin-bottom:0; }

/* =======================================================================
   HOME BOX (cover cards)
   ======================================================================= */
.home-box{
  position:relative; overflow:hidden; height:400px; margin:0 0 15px; background-position:center; background-size:cover;
  border-radius:15px; box-shadow:1px 1px 5px #00000030;
}
.home-box a{ position:absolute; top:0; bottom:0; display:table; width:100%; height:100%; color:#fff; text-decoration:none; text-shadow:1px 1px 1px rgb(0 0 0 / 50%); }
.home-box a:focus,.home-box a:hover{ color:#fff; }
.home-box span{
  position:absolute; inset:0; display:flex; justify-content:center; align-items:center; flex-direction:column; gap:0; padding:40px;
  width:100%; line-height:1; background:rgb(0 0 0 / 40%);
}
.home-box a:hover span{ background:rgb(0 0 0 / 70%); opacity:1; }
.home-box a:hover p{ opacity:1; }
.home-box h5{ position:relative; margin:0; font-size:2em; color:#fff; transition:all .3s ease; }
.home-box h5::after{ position:absolute; left:50%; bottom:-15px; width:50px; height:2px; margin-left:-25px; background:#fff; opacity:0; content:''; }
.home-box a:hover h5::after{ opacity:1; }
.home-box p{ max-width:80%; padding:0; line-height:1.3; font-weight:500; }
.home-box a span .btn-default{ color:#fff; background-color:transparent; border:2px solid #fff; font-weight:600; }
.home-box a:hover span .btn-default{ color:#b91111; background-color:#fff; border-color:#fff; }
.bs-quote{ padding:50px 0; }
.btn-outline-light{ color:var(--color-light); border:2px solid var(--color-light)!important; }
.btn.btn-outline-light:hover{ color:#000!important; }

/* =======================================================================
   BLOG / NEWS (lists)
   ======================================================================= */
.blog-news .item-image{
  position:relative; display:block; overflow:hidden; height:100%;
  border-radius:10px; box-shadow:0 0.125rem 0.5rem rgb(0 0 0 / 20%)!important;
}
.blog-news .item-image a{ position:relative; display:block; overflow:hidden; height:100%; padding:50%; }
.blog-news .item-image img{
  position:absolute; top:50%; left:50%; min-width:100%; min-height:100%; width:auto; object-fit:cover;
  transform:translate(-50%,-50%) scale(1); transition:opacity .3s ease-out, transform .3s ease-out, filter .3s ease-out;
}
.blog-list .blog-item a.item-image{
  position:relative; display:block; overflow:hidden; padding:50%;
  height:auto; top:auto; left:auto; border-radius:.5rem!important; box-shadow:0 0.125rem 0.5rem rgb(0 0 0 / 20%)!important;
}
.blog-list .blog-item a img,.blog-items a img{ opacity:1; transition:all .3s ease; }
.blog-list .blog-item a:hover img,.blog-items a:hover img{ opacity:.6; transition:opacity .3s ease-out; }
.blog-list .item-readmore a{ background:var(--color-primary); }
.blog-list .item-readmore a:hover{ background:var(--color-secondary); color:#fff!important; }

.item-image::after{ position:absolute; top:0; left:0; bottom:0; width:100%; opacity:.2; pointer-events:none; content:''; }
.item-pageblog-news{ max-width:800px; margin:auto; }
.item-pageblog-news .item-image{ width:100%; padding:30% 25%; }
.item-pageblog-news .item-image::after{ opacity:0; }

/* =======================================================================
   CONTENT WRAPPER
   ======================================================================= */
.t4-content{ overflow:hidden; background-image:none; background-repeat:no-repeat; background-position:center; background-size:cover; background-attachment:scroll; }

/* =======================================================================
   TEAM / PORTFOLIO
   ======================================================================= */
.team-item{ position:relative; }
.team-item img{ margin:0 0 15px; border-radius:50%; }
.team-item span img{ position:absolute; top:-10px; right:-10px; }
.team-item .social-list{ display:flex; justify-content:center; }
.portfolio-list{ list-style:none; padding-left:0; }
.portfolio-list li{ display:inline-flex; align-items:center; width:100%; padding-bottom:15px; }
.portfolio-list li span{ margin-right:15px; font-size:35px; color:var(--body-link-color); }

/* =======================================================================
   HEADER PIC 3
   ======================================================================= */
.header-pic3{
  position:relative; z-index:9; display:flex; align-items:center; margin:0 auto; min-height:500px; overflow:hidden;
}
.header-pic3 h1,.header-pic3 h2{
  width:100%; margin:0; padding:0; font-size:3em; letter-spacing:1px; text-align:center; text-shadow:1px 1px 5px rgb(0 0 0 / 70%);
}
.header-pic3 p{
  width:100%; margin:0; padding:0; font-size:1.3em; font-weight:500; letter-spacing:1px; text-align:center; text-shadow:1px 1px 5px rgb(0 0 0 / 70%);
}
.header-pic3 img{ position:absolute; top:50%; left:50%; min-width:100%; min-height:100%; width:auto; object-fit:cover; transform:translate(-50%,-50%); }
.overlay21{ position:absolute; top:0; z-index:98; display:block; width:100%; height:100%; background:rgb(0 0 0 / 20%); }

/* =======================================================================
   HEADER FLEX / PRELOADER
   ======================================================================= */
.header-flexbox{
  position:relative; z-index:99; display:flex; flex-direction:column; flex-wrap:nowrap; align-items:center; align-content:center; justify-content:center;
  width:100%; height:auto; color:#fff; text-align:center;
}
#preloader{ position:fixed; inset:0; z-index:9999; display:flex; justify-content:center; align-items:center; background:var(--color-primary); }
.loader{ width:60px; height:60px; border:8px solid #ffffff61; border-top:8px solid var(--color-light); border-radius:50%; animation:spin 1s linear infinite; }
@keyframes spin{ to{ transform:rotate(360deg); } }

/* =======================================================================
   FEATURES (ACM)
   ======================================================================= */
.acm-features.style-1.bg-ratio-2{background:var(--color-light);background-image: url(/images/www/pattern/t7.svg);background-size: contain;}
.acm-features.style-1.bg-ratio-3{background:var(--color-primary);background-image: url(/images/www/pattern/t7a.svg);background-size: contain;}
.acm-features.style-1 .intro-img{ position:relative; height:100%; min-height:450px; }
.acm-features.style-1 .intro-img img{ position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; object-position:cover; }
.acm-features.style-1 .align-right .features-media{ order:2; }
.t4-section>.acm-features.style-1 .info-wrap{ padding:200px; background:transparent!important; color:#555; }
.t4-section>.acm-features.style-1 .align-right .inner{ max-width:660px; margin-left:auto; }
.section-title-wrap{ max-width:640px; margin-bottom:30px; }
.lead,.t4-masthead .t4-masthead-description{ font-size:1.2rem; font-weight:400; }
.t4-module .nav li a{ width:100%; }
.bs-container-portfolio{ padding:1em; }

/* =======================================================================
   CTA FISSE / BACK TO TOP
   ======================================================================= */
.not-at-top .bs-cta a{ opacity:1; right:0; }
.bs-cta{
  position:fixed!important; right:0; bottom:40px; z-index:9999; display:flex; flex-direction:column; align-items:flex-end; align-content:flex-start;
  color:#fff; width:auto;
}
.bs-cta a{
  position:relative; right:-10px!important; width:40px; height:40px; margin-bottom:10px; padding:0 30px 0 40px; line-height:40px;
  font-weight:700; font-size:16px; color:#fff; border-radius:18px 0 0 18px; box-shadow:1px 1px 15px rgb(0 0 0 / 50%); opacity:0;
}
.bs-cta i{ position:absolute; left:12px; font-size:20px; line-height:40px; }
.bs-cta a:hover,.bs-cta a:focus{ color:var(--color-light); text-decoration:none; filter:saturate(2); right:0!important; }
.wp{background:#1c9821}.em{background:#e41f11}.ph{background:#0d78cd}.book-btn{background:var(--color-primary)}
#back-to-top{ right:auto; left:1em; z-index:9999; opacity:0; border-radius:50%; background-color:var(--color-secondary); }
#back-to-top i{ color:#fff; line-height:40px; font-size:22px; }
.not-at-top #back-to-top{ opacity:1; }

/* =======================================================================
   UIKIT / CARDS / DIVIDERS
   ======================================================================= */
.uk-scope .uk-grid-divider{
  position:relative; left:50%; margin:80px 0 80px -50px; width:100px; height:5px!important;
  background-color:var(--color-primary); border:none; content:'';
}
.uk-scope .uk-h5,.uk-scope h5{ font-weight:700!important; }
.uk-scope .uk-card-default{ border-radius:10px; overflow:hidden; }
.uk-scope .uk-card-body{
  display:flex!important; flex-direction:column; align-items:center; align-content:center; justify-content:center; height:auto; padding:30px; text-align:center;
}
.uk-scope .uk-transition-fade,.uk-scope [class*=uk-transition-scale],.uk-scope [class*=uk-transition-slide]{ transition:.2s ease-out!important; }

/* =======================================================================
   LINGUE (header ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€¦Ã¢â‚¬Å“lang2ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€šÃ‚Â)
   ======================================================================= */
.lang2{ list-style:none; margin:0; padding:0 0 0 10px; }
.lang2 li{ display:inline-block; line-height:80px; }
.lang2 a{ position:relative; display:inline-block; margin-left:5px; padding:0; color:var(--color-dark); text-decoration:none; opacity:1; }
.lang2 a:hover,.lang2 a:focus{ z-index:9999; opacity:.7; }
.lang2 img{ width:25px; box-shadow:none; }

/* =======================================================================
   COUNTERS / CONTATTI / IMMAGINI
   ======================================================================= */
.counter-bs{ color:#fff; text-shadow:1px 1px 5px #00000057; }
.counter-bs i{ font-size:42px; line-height:46px; }
.counter-bs span{ font-weight:700; }
.contatti-bot{ font-size:16px; font-weight:400; line-height:20px; text-align:center; }
.contatti-bot i{ margin-right:5px; font-size:20px; line-height:20px; }
.pic-team{ width:100%; border-radius:10px; box-shadow:0 5px 15px rgb(0 0 0 / 8%); }

/* =======================================================================
   CONTAINER ROUNDED
   ======================================================================= */
.container-rounded{
  padding:60px; color:var(--color-light); background:var(--color-primary); border-radius:15px; box-shadow:0 0 20px rgb(0 0 0 / 20%);
}
.container-rounded p{ opacity:.8; }
.container-rounded h2,.container-rounded h4{ color:var(--color-light); }

/* =======================================================================
   PARALLAX 21 ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã…â€œ LOGO CTA
   ======================================================================= */
.block-parallax21 img.logo-cta{
  position:unset; width:200px; min-width:auto; min-height:auto; transform:none; filter:invert(1); z-index:99; margin:0 0 20px;
}

/* =======================================================================
   VARIE
   ======================================================================= */
a.glink img{ width:25px!important; }
.eb-4 .eb-dialog{ --eb-background-color:var(--color-secondary)!important; padding:5px 25px!important; }

/* =======================================================================
   LAYOUT / SECTION / CONTAINERS
   ======================================================================= */
.t4-section.sec-spacing-lg .t4-section-inner{ /* padding-bottom:0; */ }
.t4-main-body{ background-color:#fff; }
.full-width-row{ position:relative!important; left:50%; right:50%; width:100vw; margin-left:-50vw; }
.full-width-art .t4-main-body .container{ width:100%; max-width:100%; padding-right:0; padding-left:0; }
.bs-container{
  margin:0 auto; padding-top:6rem; padding-bottom:6rem;
  padding-right:var(--t4-gutter-x,1rem); padding-left:var(--t4-gutter-x,1rem);
}

/* =======================================================================
   IMAGE STACK
   ======================================================================= */
.image-stack::after{ content:''; display:table; clear:both; }
.image-stack_item--front img,.image-stack_item--top img,.image-stack_item--bottom img{ box-shadow:1px 1px 3px hsl(0 0% 0% / 30%); }
.image-stack_item--front{ position:relative; z-index:2; float:right; width:50%; margin-left:-100%; margin-right:15%; padding-top:50%; }
.image-stack_item--top{ position:relative; z-index:1; float:left; width:66%; margin-right:-100%; padding-top:15%; }
.image-stack_item--bottom{ float:right; width:75%; }

/* =======================================================================
   LOGO SWITCH (top / sticky)
   ======================================================================= */
.logo-a{ display:block; opacity:1; } .logo-b{ display:none; opacity:0; }
.not-at-top .logo-a{ display:none; opacity:0; } .not-at-top .logo-b{ display:block; opacity:1; }
.logo-a img,.logo-b img{ height:55px; }

/* =======================================================================
   PALETTE / TITOLI
   ======================================================================= */
.t4-palette-dark h1,.t4-palette-dark h2,.t4-palette-dark h3,.t4-palette-dark h4,
.t4-palette-dark h1 a,.t4-palette-dark h2 a,.t4-palette-dark h3 a,.t4-palette-dark h4 a{ color:var(--color-white); }
.t4-footnav .t4-module .module-title{ color:var(--color-secondary); }
span.highlight-primary,span.highlight-secondary{ display:inline-block; line-height:1; height:auto; padding:0; }
span.highlight-primary{ color:var(--color-primary); } span.highlight-secondary{ color:var(--color-secondary); }
.t4-palette-gray{background-color:#f5f5f5;/* background-image: url(/images/www/pattern/t9.svg); */background-size: 20px;}

/* =======================================================================
   TIPOGRAFIA / FOCUS / SMALL
   ======================================================================= */
.btn:focus,.btn.focus,.blog-list .item-readmore a:focus,.blog-list .item-readmore a.focus{ color:var(--color-light); }
h1 small,h2 small{ display:block; font-size:60%; opacity:.8; }

/* =======================================================================
   BANNER BOX
   ======================================================================= */
.ban-box{
  position:relative; width:100%; height:100%; min-height:350px; overflow:hidden; border-radius:10px;
}
.ban-box a{ position:absolute; inset:0; background:#000; z-index:0; }
.ban-box img{
  position:absolute; top:50%; left:50%; min-width:100%; min-height:100%; width:auto; object-fit:cover; z-index:0;
  transform:translate(-50%,-50%); transition:transform .2s ease-in-out, opacity .2s ease-in-out;
}
.ban-box a:hover img{ transform:translate(-50%,-50%) scale(1.05); opacity:.7; }
.ban-box span{ position:absolute; bottom:0; z-index:999; width:100%; padding:40px 20px 20px; text-align:center;
  background:linear-gradient(to top, rgb(0 0 0 / 45%) 0%, rgb(0 0 0 / 0%) 100%); }
.ban-box h5{ color:#fff; font-weight:700; text-shadow:1px 1px 3px rgb(0 0 0 / 50%); }

/* =======================================================================
   TITLE SECTION
   ======================================================================= */
.titleSection_subtitleHolder{ display:flex; align-items:center; justify-content:center; flex-wrap:nowrap; margin-bottom:48px; }
.titleLine{ width:80px; height:2px; }
.titleSection_subtitleHolder .titleLine{ background-color:var(--color-light); }
.titleSection_subtitle{
  padding:0 10px; text-align:center; font-size:24px; line-height:40px; letter-spacing:0; font-weight:600; font-style:normal; color:var(--color-light);
}
.t4-palette-gray .titleSection_subtitleHolder .titleLine{ background-color:var(--color-dark); }
.t4-palette-gray .titleSection_subtitle{ color:var(--color-dark); }

/* =======================================================================
   WELCOME ABSOLUTE
   ======================================================================= */
.welcome-absolute{ position:absolute; top:-80px; display:flex; align-items:center; align-content:center; width:100%; min-height:600px; }
.welcome-absolute-l{ position:absolute; left:0; bottom:0; width:150px; }
.welcome-absolute-r{ position:absolute; right:0; bottom:0; width:200px; }
.bs-welcome{ position:relative; padding:80px 0; }
.bs-welcome .row{ padding-right:calc(var(--t4-gutter-x)/2); padding-left:calc(var(--t4-gutter-x)/2); }

/* =======================================================================
   OFFCANVAS (body)
   ======================================================================= */
.t4-offcanvas .t4-off-canvas-body .t4-module{ position:absolute; width:100%; margin:0; }
.t4-offcanvas .t4-off-canvas-body .t4-module .module-inner{ padding:0; }
.off-social-box{ bottom:0; padding:0 30px; }

/* =======================================================================
   OVERLAY / NAV CUSTOM
   ======================================================================= */
.uk-scope .uk-overlay-primary h2,.uk-scope .uk-overlay-primary h4{ text-shadow:rgba(0,0,0,.5) 0 2px 5px!important; }
.t4-navbar>.custom{ display:flex; align-items:center; justify-content:space-between; }

/* =======================================================================
   BUTTONS (BS style)
   ======================================================================= */
.btn-bs{
  background-color:var(--color-primary); color:#fff!important; padding:10px 20px; border:2px solid var(--color-primary);
  border-radius:25px; transition:.3s;
}
.btn-bs .material-symbols-outlined, .btn-bs-alt .material-symbols-outlined {
    position: relative;
    bottom: -6px;
}
.btn-bs:hover{ background-color:transparent; color:var(--color-secondary)!important; border-color:var(--color-secondary); }

.btn-bs-alt,.btn-bs-alt-black{
  background-color:#fff; color:var(--color-primary)!important; padding:10px 20px; border:2px solid #fff; border-radius:25px; transition:.3s; text-shadow:none;
}
.btn-bs-alt-black{ color:#212529!important; }
.btn-bs-alt:hover,.btn-bs-alt-black:hover{ background-color:transparent; color:#fff!important; border-color:#fff; }

.btn-bs-black{
  background-color:transparent; color:#fff!important; padding:10px 20px; border:2px solid #fff; border-radius:25px; transition:.3s; font-size:var(--body-font-size);
}
.btn-bs-black:hover{background-color:#fff;color:#212529!important;text-decoration:none!important;text-shadow: none;}

/* success/info/danger hover */
.btn.btn-success,.btn.btn-info,.btn.btn-danger{ transition:all .3s ease; }
.btn.btn-success:hover,.btn.btn-info:hover,.btn.btn-danger:hover{ opacity:1; filter:saturate(2); color:#fff; transition:all .2s ease; }

/* =======================================================================
   UTILITIES VARIE
   ======================================================================= */
.rounded-img{ border-radius:25px; }
.certificati{ padding:2%; text-align:center; }
#emailform{ cursor:pointer; }

/* Slide overlay (UIkit slideshow) */
.slide-overlay.uk-overlay-primary{ background:rgba(34,34,34,.2)!important; }
.slide-overlay>.uk-position-relative>.uk-slideshow-items>li>.uk-overlay>div{ width:80%; text-align:left!important; }

/* Headings hero */
.uk-h1{
  font-size:50px!important; line-height:55px!important; font-style:italic; font-weight:600!important;
  text-shadow:rgba(0,0,0,.5) 0 2px 5px!important;
}
.uk-margin{ font-size:1.2rem!important; font-weight:400!important; color:#fff; text-shadow:rgba(0,0,0,.5) 0 2px 5px!important; }
.home-serv-slider h3{ font-size:2.5rem!important; line-height:4rem!important; font-weight:600!important; text-shadow:1px 1px 3px hsl(0 0% 0% / 35%)!important; }

/* Cover media offset */
.uk-scope [data-uk-cover]:where(img,video), .uk-scope [uk-cover]:where(img,video){ object-position:68%!important; }

/* Mappe */
.mappa-responsive{ position:relative; padding-bottom:73.9%; height:0; overflow:hidden; }
.mappa-responsive iframe{ position:absolute; top:0; left:0; width:100%; height:600px; }

/* Icon list */
.camere-icons{ display:flex; flex-wrap:wrap; justify-content:center; gap:1rem; list-style:none; padding:0; }
.camere-icons li,.info-full{ display:flex; align-items:center; gap:.4rem; }

/* CTA block */
.wa-cta{ padding:5%; text-align:center; font-size:22px; background-color:#2290763b; border-radius:15px; }
.icon-logos{ font-size:50px!important; }

/* Reviews */
.review-text{ color:#000; text-shadow:none; } .review-star{ color:#ffc107; text-shadow:none; }
.wk-shadow>.uk-position-relative>ul>li>.uk-panel>div{ background-color:#eaeaea; }
.wk-shadow .uk-inline-clip{ mix-blend-mode:multiply; border-radius:20px; }

/* servizi full (fix) */
.full-servizi{ max-height:60%; }

/* Dotnav */
.uk-scope .uk-dotnav>.uk-active>*{ background-color:rgb(255 255 255 / 60%)!important; }
.uk-scope .uk-dotnav>*>*{ border:1px solid rgb(255 255 255 / 40%)!important; }
.uk-scope .uk-dotnav>*>:hover{ background-color:rgb(255 255 255 / 60%)!important; }

/* Footer HR variant */
.t4-footer .small-hr{ background-color:var(--color-light)!important; }

/* =======================================================================
   LANDING
   ======================================================================= */
.info-wrap-landing,.info-wrap-landing-blue,.info-wrap-landing-white,.info-wrap-landing-border,.info-wrap-landing-transparent{
  padding:30px; height:100%;
}
.info-wrap-landing{ background:#ff1fa5!important; color:#fff; }
.info-wrap-landing-blue{ background:var(--color-primary); color:var(--color-light); }
.info-wrap-landing-white{ background:#fff; color:var(--color-primary); }
.info-wrap-landing-border{ border:2px solid var(--color-primary); }
.info-wrap-landing-transparent{ background:var(--footer-bg-color); color:var(--color-dark); }
.info-wrap-landing-transparent i{ font-size:32px; }
.info-wrap-landing-transparent h3,.info-wrap-landing h3,.info-wrap-landing-blue h3,.info-wrap-landing-white h3{ font-weight:600; color:var(--color-dark); }

/* =======================================================================
   RSEVENTS
   ======================================================================= */
.rsepro-new-layout-image img{ width:100%; }
.rsepro-new-layout-item{ background:#eee; }
#rsepro-event-image{ width:100%; }
#rsepro-event-image a{
  position:relative; z-index:9; display:flex; align-items:center; width:100%; min-height:300px; margin:0 auto;
  overflow:hidden; border-radius:10px;
}
#rsepro-event-image img{
  position:absolute; top:50%; left:50%; min-width:100%; min-height:100%; width:auto; object-fit:cover; transform:translate(-50%,-50%);
}
#rsepro-event-details-right{ float:none; width:100%; margin:0 0 20px; }
#rsepro-event-details-left{ width:49%; }
#rs_event_show{ max-width:800px; margin:auto; }
#rs_event_show hr{
  width:100px; height:5px!important; margin:80px auto; background-color:var(--color-primary); border:none;
}
.venduto{ font-size:20px; font-weight:700; color:#fff; background-color:var(--body-link-color); padding:10px; }
.course-icons span,.course-icons-total span{ color:#000; border-radius:50px; }
.course-icons span{ padding:10px; }
.course-icons-total span{ padding:20px; font-size:50px; margin:0 10px; }
.industria{background-color:#71dcff}.commercio{background-color:#fdff99}.cantieri{background-color:#fcb040}
.agricoltura{background-color:#c1fe7c}.alimentari{background-color:#dfbfff}.amministrazioni{background-color:#ffd0c0}

/* =======================================================================
   CUSTOM: FULL WIDTH BANNER (one line)
   ======================================================================= */
.full-width-banner-one-line{ display:flex; align-items:center; justify-content:space-between; }
.full-width-banner-one-line h2{ text-align:left; }

/* =======================================================================
   REVIEW CARDS
   ======================================================================= */
.card-review-header{ display:flex; flex-wrap:nowrap; }
.platform-icon{ position:absolute; top:30px; right:30px; }
.card-review-img{ margin-right:10px; }
.card-review-img span{ font-size:40px; }
.card-details{ text-align:left; }

/* =======================================================================
   BANNER CONTAINED
   ======================================================================= */
.banner-contained{
  position:relative; overflow:hidden; display:flex; align-items:center; justify-content:space-between; margin:0 auto; height:10rem;
  border:2px solid var(--color-primary); border-radius:14px; background:#fff;
}
.banner-contained-info{ display:flex; width:70%; }
.banner-contained-icon{ width:137px; min-width:137px; height:100%; overflow:hidden; z-index:2; }
.banner-contained-icon::before{
  content:''; position:absolute; top:-60px; left:-137px; width:274px; height:274px; border-radius:100%;
  background-color:var(--color-primary);
}
.banner-contained-icon span{ position:absolute; top:50%; left:62px; width:54px; height:54px; margin-top:-27px; color:#fff; font-size:60px; }
.banner-contained-text{ margin-left:20px; }
.banner-contained-cta{ margin-right:30px; }

/* =======================================================================
   CARDS (colored, split, white)
   ======================================================================= */
.card{ border:none; height:100%; }
.card.bg-photo{ position:relative; height:500px; padding:40px; overflow:hidden; }
.card.bg-photo::after{ content:''; position:absolute; inset:0; opacity:.5; mix-blend-mode:screen; background:url('/images/www/pattern/card-overlay.png') center/cover no-repeat; }
.card.bg-photo img{
  position:absolute; top:50%; left:50%; min-width:100%; min-height:100%; width:auto; object-fit:cover; z-index:0; transform:translate(-50%,-50%);
}
.bg-photo .card-body{ z-index:2; display:flex; flex-direction:column; justify-content:space-between; padding-bottom:30px; }
.card-label div{ position:absolute; padding:2px 16px; font-size:16px; line-height:2; font-weight:700; text-transform:uppercase; background-color:rgb(255 255 255 / 80%); border-radius:8px; }
.card-title{ margin-bottom:2rem!important; font-size:35px; font-weight:600; line-height:1; }
.bg-photo .card-title{ text-shadow:1px 1px 3px #00000073; }
.card.split-card{ flex-direction:row; overflow:hidden; height:400px; }
.card.split-card .card-body{ width:60%; padding:40px 0 40px 40px; }
.card-image{
  width:380px; z-index:0; background:url('/images/www/pic.png') center/cover no-repeat;
  clip-path:polygon(110px 0, 100% 0, 100% 100%, 0 100%);
}
.card-white{ height:100%; background:#fff; }
.card-icon span{ font-size:50px; }
.t4-section-5{ background-color:#fff; }
.t4-palette-light h2{ color:var(--color-primary); }

/* =======================================================================
   PARALLAX FULL HEIGHT
   ======================================================================= */
.block-parallax25-full-height{
  position:relative; top:0; left:0; display:flex; justify-content:center; align-items:center; min-height:100vh; overflow:hidden; padding:180px 0;
  background:var(--mainnav-link-active-color);
}
.block-parallax25-full-height img{
  position:absolute; top:50%; left:50%; min-width:100%; min-height:100%; width:auto; object-fit:cover; z-index:0; transform:translate(-50%,-50%);
}

/* =======================================================================
   GTRANSLATE WIDGET
   ======================================================================= */
.gtranslate_wrapper{
  padding-left:5px; padding-bottom:3px; margin-bottom:10px; opacity:0; background:#fff; border-radius:18px 0 0 18px;
  box-shadow:1px 1px 15px rgb(0 0 0 / 50%);
}
.not-at-top .gtranslate_wrapper{ opacity:1; }
.gtranslate_wrapper a{ padding:0 5px; right:0!important; box-shadow:none; }

/* =======================================================================
   VIDEO HOME BUTTON
   ======================================================================= */
.vid-button-desktop{ z-index:9; display:block; margin-top:30px; font-size:16px; text-align:center; }
.vid-button-mobile{ display:none; }

/* =======================================================================
   MAP (bottom)
   ======================================================================= */
.map-bot iframe{ position:relative; z-index:99; width:100%; height:500px; box-shadow:0 0 5px hsl(0 0% 0% / 20%); }

/* =======================================================================
   ICON REPLACER (UIkit overlay ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ Font Awesome Brands)
   ======================================================================= */
span.uk-icon.uk-overlay-icon svg{ display:none; }
span.uk-icon.uk-overlay-icon::before{
  font-family:"Font Awesome 6 Brands"; content:"\f16d"; font-size:50px; line-height:1; display:inline-block; color:inherit; text-shadow:none;
}
  #t4-footer .t4-section-inner{ padding-top:6rem; }
/* Recaptcha badge (unificato) */
.grecaptcha-badge{ transform:scale(.5); right:-160px!important; bottom:-5px!important; }

/* Sticky + slider logo */
.sticky{ position:-webkit-sticky; position:sticky; top:80px; }
.slider-logo{ width:40vw; opacity:.5; }

/* =======================================================================
   RESPONSIVE (min-width ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â ÃƒÂ¢Ã¢â€šÂ¬Ã‹Å“ poi max-width ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â ÃƒÂ¢Ã¢â€šÂ¬Ã…â€œ)
   ======================================================================= */

/* >=768px */
@media (min-width:768px){
  .t4-section.sec-spacing-lg .t4-section-inner{ padding-top:6rem; }

  .item-102 .t4-section.sec-spacing-lg .t4-section-inner,
  .item-115 .t4-section.sec-spacing-lg .t4-section-inner,
  .item-116 .t4-section.sec-spacing-lg .t4-section-inner{ padding-top:6rem; padding-bottom:6rem; }
  .bs-container{ max-width:720px; }

  
}

/* >=992px */
@media (min-width:992px){
  .full-width-banner-one-line .section-button{ text-align:right; }
  .bs-container{ max-width:960px; }
}

/* >=1200px */
@media (min-width:1200px){ .bs-container{ max-width:1140px; } }

/* >=1400px */
@media (min-width:1400px){
  .uk-scope .uk-card-body{ padding:20px; }
  #t4-header .container-xxl,#t4-header .container-xl,#t4-header .container-lg,#t4-header .container-md,
  #t4-header .container,#t4-header .t4-masthead .t4-masthead-detail,.container-sm{ max-width:96%; }
  .bs-container{ max-width:1320px; }
}

/* <=1199px */
@media (max-width:1199px){
  .card.split-card{ flex-direction:column-reverse; height:100%; }
  .card.split-card .card-body{ width:100%; padding:10px 40px 50px; }
  .card-image{ width:100%; height:250px; clip-path:polygon(0 0, 100% 0, 100% 100%, 0 190px); }
  .banner-contained{ height:8rem; }
  .banner-contained-text h4{ font-size:20px; }
}

/* <=768px */
@media (max-width:768px){
  #back-to-top{ display:none!important; }
  .vid-info .acronym{ display:none; }
  .uk-h1{ font-size:36px!important; line-height:40px!important; }

  /* banner contained */
  .banner-contained{ flex-direction:column; height:auto; padding:30px 10px 40px; }
  .banner-contained-info{ display:block; width:100%; text-align:center; }
  .banner-contained-text{ margin-left:0; margin-bottom:30px; text-align:center; }
  .banner-contained-cta{ margin-right:0; }
  .banner-contained-icon{ width:100%; }
  .banner-contained-icon::before{ display:none; }
  .banner-contained-icon span{ position:relative; top:0; left:0; margin-top:0; width:100%; color:var(--color-primary); font-size:60px; }

  /* colonne invertite */
  .col-direction{ flex-direction:column-reverse; }

  /* header / navbar */
  .navbar-brand a{ height:45px; margin:0; }
  .t4-header-r{ position:absolute; right:30px; }

  /* slideshow / header pic */
  .home .slideshow{ margin-top:0; top:0; }
  .header-pic3{ min-height:400px; }
  .home .header-pic3{ min-height:600px; }
  .header-flexbox{ margin:0 0 -60px; }
  .welcome-absolute{ display:none; }

  /* moduli */
  .control-label{ text-align:left!important; }

  /* container t- */
  .t-container.t-left .t-content,.t-container.t-right .t-content{ border-radius:0; }

  /* features */
  .t4-section>.acm-features.style-1 .info-wrap{ padding:32px; }
  .acm-features.style-1.bg-ratio-2 div{ flex-direction:column-reverse; }

  /* home box */
  .home-box h5{ margin-top:0; font-size:2.5em; }

  /* contatti */
  .contatti-bot{ flex-direction:column; }
  .contatti-bot>div{ margin-bottom:20px; }

  /* lingue alt */
  .lang2{ list-style:none; margin:0; padding:0; line-height:1; }
  .lang2 img{ width:30px; height:auto; }
  .lang2 a{ margin:3px; padding:0; }
  .lang2 li{ margin:0; padding:0; line-height:40px; }

  /* social footer */
  .social-bot img{ display:block; margin:auto; max-width:200px; }

  /* CTA welcome */
  .buttons-welcome{ display:flex; flex-direction:column; }
  .buttons-welcome a{ margin-bottom:10px; }

  /* Video overlay CTA */
  .vid-button-mobile{
    display:block; position:absolute; top:52%; left:50%; transform:translate(-50%,-50%);
    z-index:999; width:80vw; text-align:center;
  }
  .vid-text-desktop{ width:100%; }
  .vid-info img{ width:80vw; max-width:550px; opacity:.25; }

  /* fullwidth slider fix */
  .fullwidthslider .uk-transition-active{ aspect-ratio:16 / 16!important; }

  /* varie */
  .logo-a img,.logo-b img{ height:40px; width:100%; }
  #rsepro-event-details-right,#rsepro-event-details-left{ float:none; width:100%; padding:10px; }
  .article-aside{ margin-bottom:0; }
  .slider-logo{ width:80vw; }

  /* timeline mobile */
  .timeline::after{ left:90px; }
  .t-container{ width:100%; padding-left:120px; padding-right:30px; }
  .t-container.t-right{ left:0; }
  .t-container.t-left::after,.t-container.t-right::after{ left:82px; }
  .t-container.t-left::before,.t-container.t-right::before{ left:100px; border-color:transparent #006E51 transparent transparent; }
  .t-container.t-left .date,.t-container.t-right .date{ left:15px; right:auto; }
  .t-container.t-left .icon,.t-container.t-right .icon{ left:146px; right:auto; }
  .t-container.t-left .t-content,.t-container.t-right .t-content{ padding:30px 30px 30px 90px; border-radius:500px 0 0 500px; }
}

/* =======================================================================
   END RESPONSIVE
   ======================================================================= */


