/*
Theme Name: Salient Child Theme
Description: This is a custom child theme for Salient
Theme URI:   https://themeforest.net/item/salient-responsive-multipurpose-theme/4363266
Author: ThemeNectar
Author URI:  https://themeforest.net/user/themenectar
Template: salient
Version: 1.0
*/
@import "fonts/fonts.css";
@import "includes/css/forms.css";
:root{
    --theme-color:#00b300;
    --extra-color-01:#004a00;
    --extra-color-02:#217ba8;
    --extra-color-03:;

}
/*** body gradient radial ***/

body.single-portfolio:before,
body.gradient-bg:before {
    content:'';
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    opacity: 0.65;
    background: #0085A6;
    background: radial-gradient(circle, rgba(0, 133, 166, 1) 0%, rgba(3, 16, 36, 1) 100%);
}

body.single-portfolio .container-wrap,
body.single-portfolio .main-content,
body.material.single-portfolio .ocm-effect-wrap,
body.gradient-bg .container-wrap,
body.gradient-bg .main-content,
body.material.gradient-bg .ocm-effect-wrap {
    background-color: transparent !important;
}


/*** generic helpfull ***/

.multiply{
    mix-blend-mode: multiply !important;
}
.rotate-38{
    transform: rotate(38deg) !important;
}
.opacity-05{
    opacity: .05 !important;
}
.opacity-25{
    opacity: .25 !important;
}
.fw-3{
    font-weight: 300 !important;
}
.fw-4{
    font-weight: 400 !important;
}
.op-19{
    opacity: 0.19;
}

/*** footer copyright ***/

#footer-outer #copyright[data-layout="centered"]{
    padding:10px 0;
}

/*** colors ***/

.theme-color{
    color:var(--theme-color) !important;
}
.extra-color-01{
    color: var(--extra-color-01) !important;
}
.black-color{
    color:#000;
}
.white-color{
    color:#FFF;
}

/*** bg transparent rotation ***/

body.home,
body.home.material .ocm-effect-wrap,
.container-wrap{
    background-color: transparent !important;
}

/*** justify title ***/

.title-hp h1{
  position: relative;
  display: block;
  width: 100%;
  min-height: 1em;
  line-height: 1;
  overflow: hidden;
  --title-span-gap: clamp(0.5rem, 1.2vw, 2rem);
  --letters-count: 8;
  --span-width: calc((100% - var(--title-span-gap) * (var(--letters-count) - 1)) / var(--letters-count));
  --span-step: calc(var(--span-width) + var(--title-span-gap));
  --letter-duration: .3s;
  --letter-delay-step: var(--letter-duration);
}

.title-hp h1 span{
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  flex: 0 0 var(--span-width);
  width: var(--span-width);
  min-width: 0;
  opacity: 0;
  --order: 0;
  --rev-order: calc(var(--letters-count) - 1 - var(--order));
  --order-distance: calc(var(--order) * var(--span-step));
  z-index: calc(var(--letters-count) - var(--order));
  left: var(--order-distance);

  animation: coverTitle var(--letter-duration) cubic-bezier(0.77, 0, 0.19, 1) forwards;
  animation-delay: calc(var(--rev-order) * var(--letter-delay-step));
}

.title-hp h1 span:nth-child(2){ --order: 1; }
.title-hp h1 span:nth-child(3){ --order: 2; }
.title-hp h1 span:nth-child(4){ --order: 3; }
.title-hp h1 span:nth-child(5){ --order: 4; }
.title-hp h1 span:nth-child(6){ --order: 5; }
.title-hp h1 span:nth-child(7){ --order: 6; }
.title-hp h1 span:nth-child(8){ --order: 7; }
.title-hp h1 span:nth-child(9){ --order: 8; }
.title-hp h1 span:nth-child(10){ --order: 9; }
.title-hp h1 span:nth-child(11){ --order: 10; }
.title-hp h1 span:nth-child(12){ --order: 11; }

.title-hp h1 span:first-child{
  justify-content: flex-start;
}

.title-hp h1 span:last-child{
  justify-content: flex-end;
}

@keyframes coverTitle{
  0%{
    opacity: 0;
    transform: translateX(calc(-1 * var(--order-distance))) scale(0.9);
  }
  35%{
    opacity: 1;
    transform: translateX(calc(-0.35 * var(--order-distance))) scale(1.02);
  }
  60%{
    opacity: 1;
    transform: translateX(calc(0.05 * var(--order-distance))) scale(0.98);
  }
  100%{
    opacity: 1;
    transform: translateX(0) scale(1);
  }
}

/*** custom flex ***/
.flex-custom h4{
    margin-bottom: 0 !important;
    align-self: flex-end;
}
.flex-custom .wpb_text_column.wpb_content_element{
    align-self: flex-end;
}

/*** tags ***/
.tags {
  display: flex;
  gap: 10px;
  align-items: center;
}
.tags h4{
  margin-bottom: 0 !important;
}
.tags .tag-portfolio a{
  background-color:rgba(255,255,255,0.5);
  padding:5px 10px;
  color:#FFF;
  transition: all 0.3s ease-in-out;
}
.tags .tag-portfolio a:hover{
  background-color:#FFF;
  color:#00121D;
  transition: all 0.3s ease-in-out;
}

/*** Portfolio Category Shortcode ***/
.category-portfolio-wrapper {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-right: 15px;
}

.category-indicator {
    display: inline-block;
    width: 20px;
    height: 20px;
    background-color: #E42313;
    flex-shrink: 0;
}

.category-portfolio {
    font-weight: 700;
    color: #FFF;
    font-size: 18px;
    line-height: 1; /* Adjust alignment */
}

/*** list boxed ***/
.list-boxed .nectar-fancy-ul{
  background-color:rgba(255,255,255,.15);
  padding: 25px 20px;
  margin-bottom: 10px;
}
.list-boxed.darker .nectar-fancy-ul{
  background-color:rgba(255,255,255,.55);
  width: calc(50% - 10px);
  min-height: 90px;
  display: flex;
  align-items: center;
}
.list-boxed .nectar-fancy-ul ul,
.list-boxed .nectar-fancy-ul ul li,
.list-boxed .nectar-fancy-ul ul li h5{
  margin-bottom: 0 !important;
}

.list-boxed .nectar-fancy-ul ul li .icon-default-style[class^=icon-]{
  font-size: 25px;
}

/*** two column list ***/

.two-column-list ul {
    column-count: 2;
    column-gap: 40px; /* Spazio tra le colonne */
    width: 100%;
}

.two-column-list ul li {
    break-inside: avoid; /* Evita che un punto elenco venga spezzato a metà */
    page-break-inside: avoid;
    display: block;
    width: 100%;
}

/* Fallback per mobile: torna a una colonna */
@media (max-width: 768px) {
    .two-column-list ul {
        column-count: 1;
    }
}